Android Open Source - killingspree Game Screen From Project Back to project page killingspree .
License The source code is released under:
MIT License
If you think the Android project killingspree listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.
Java Source Code package com.sillygames.killingSpree.screens;
/ / w w w . j a v a 2 s . c o m
import java.io.IOException;
import com.badlogic.gdx.Gdx;
import com.badlogic.gdx.graphics.GL20;
import com.esotericsoftware.kryonet.Client;
import com.esotericsoftware.kryonet.Server;
import com.sillygames.killingSpree.KillingSpree;
import com.sillygames.killingSpree.managers.WorldManager;
import com.sillygames.killingSpree.managers.WorldRenderer;
import com.sillygames.killingSpree.networking.NetworkRegisterer;
import com.sillygames.killingSpree.networking.messages.ClientDetailsMessage;
import com.sillygames.killingSpree.screens.settings.Constants;
public class GameScreen extends AbstractScreen {
private WorldManager world;
private WorldRenderer renderer;
private boolean isServer;
private Server server;
private Client client;
private float currentTime;
private final float frameTime = 1 / 60.0f;
public GameScreen(KillingSpree game) {
super (game);
show();
}
@Override
public void render(float delta) {
Gdx.gl.glClearColor(0.1f, 0.1f, 0.2f, 1);
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
if (isServer) {
// currentTime += delta;
// while (currentTime >= frameTime) {
// currentTime -= frameTime;
// world.update(frameTime);
world.update(delta);
// }
}
renderer.render(delta);
if (renderer.stateProcessor.disconnected) {
game.platformServices.toast("server disconnected" );
game.setScreen(new MainMenuScreen(game));
}
}
@Override
public void resize(int width, int height) {
renderer.resize(width, height);
}
@Override
public void show() {
currentTime = 0;
}
public void startServer(boolean lonely) {
isServer = true;
if (!lonely) {
server = new Server();
NetworkRegisterer.register(server);
server.start();
try {
server.bind(Constants.GAME_TCP_PORT,
Constants.GAME_UDP_PORT);
} catch (Exception e) {
e.printStackTrace();
}
}
}
public boolean loadLevel(String level, String host, String name) {
if (isServer) {
world = new WorldManager(server);
if (server == null)
world.loader.platformServices = game.platformServices;
} else {
client = new Client();
NetworkRegisterer.register(client);
client.start();
try {
client.connect(Constants.TIMEOUT, host,
Constants.GAME_TCP_PORT,
Constants.GAME_UDP_PORT);
} catch (IOException e) {
game.platformServices.toast("Server not found" );
e.printStackTrace();
game.setScreen(new ClientDiscoveryScreen(game));
return false;
}
}
renderer = new WorldRenderer(world, client, game);
renderer.loadLevel(level, isServer, name);
return true;
}
@Override
public void hide() {
}
@Override
public void pause() {
}
@Override
public void resume() {
}
@Override
public void dispose() {
if (isServer) {
world.dispose();
}
if (renderer != null)
renderer.dispose();
}
}
Java Source Code List com.sillygames.killingSpree.AndroidLauncher.java com.sillygames.killingSpree.KillingSpree.java com.sillygames.killingSpree.PlatformServices.java com.sillygames.killingSpree.categories.EnemyCategory.java com.sillygames.killingSpree.categories.ExplodingWeaponCategory.java com.sillygames.killingSpree.categories.LivingCategory.java com.sillygames.killingSpree.categories.NonExplodingWeaponCategory.java com.sillygames.killingSpree.clientEntities.ClientArrow.java com.sillygames.killingSpree.clientEntities.ClientBlob.java com.sillygames.killingSpree.clientEntities.ClientBomb.java com.sillygames.killingSpree.clientEntities.ClientBullet.java com.sillygames.killingSpree.clientEntities.ClientEntity.java com.sillygames.killingSpree.clientEntities.ClientFly.java com.sillygames.killingSpree.clientEntities.ClientFrog.java com.sillygames.killingSpree.clientEntities.ClientPlayer.java com.sillygames.killingSpree.clientEntities.ClientTestPlayer.java com.sillygames.killingSpree.controls.InputController.java com.sillygames.killingSpree.controls.onScreenControls.java com.sillygames.killingSpree.desktop.DesktopLauncher.java com.sillygames.killingSpree.desktop.DesktopServices.java com.sillygames.killingSpree.helpers.EntityUtils.java com.sillygames.killingSpree.helpers.Event.java com.sillygames.killingSpree.helpers.MyButton.java com.sillygames.killingSpree.helpers.MyConnection.java com.sillygames.killingSpree.helpers.Utils.java com.sillygames.killingSpree.managers.LevelLoader.java com.sillygames.killingSpree.managers.WorldBodyUtils.java com.sillygames.killingSpree.managers.WorldManager.java com.sillygames.killingSpree.managers.WorldRenderer.java com.sillygames.killingSpree.managers.physics.Body.java com.sillygames.killingSpree.managers.physics.CollisionProcessor.java com.sillygames.killingSpree.managers.physics.Ray.java com.sillygames.killingSpree.managers.physics.WorldDebugRenderer.java com.sillygames.killingSpree.managers.physics.World.java com.sillygames.killingSpree.networking.ControlsSender.java com.sillygames.killingSpree.networking.NetworkRegisterer.java com.sillygames.killingSpree.networking.StateProcessor.java com.sillygames.killingSpree.networking.messages.AudioMessage.java com.sillygames.killingSpree.networking.messages.ClientDetailsMessage.java com.sillygames.killingSpree.networking.messages.ConnectMessage.java com.sillygames.killingSpree.networking.messages.ControlsMessage.java com.sillygames.killingSpree.networking.messages.EntityState.java com.sillygames.killingSpree.networking.messages.GameStateMessage.java com.sillygames.killingSpree.networking.messages.PlayerNamesMessage.java com.sillygames.killingSpree.networking.messages.ServerStatusMessage.java com.sillygames.killingSpree.pool.AssetLoader.java com.sillygames.killingSpree.pool.EntityPool.java com.sillygames.killingSpree.pool.MessageObjectPool.java com.sillygames.killingSpree.pool.Pool.java com.sillygames.killingSpree.pool.Poolable.java com.sillygames.killingSpree.renderers.HUDRenderer.java com.sillygames.killingSpree.screens.AbstractScreen.java com.sillygames.killingSpree.screens.ClientDiscoveryScreen.java com.sillygames.killingSpree.screens.GameScreen.java com.sillygames.killingSpree.screens.LobbyScreen.java com.sillygames.killingSpree.screens.MainMenuScreen.java com.sillygames.killingSpree.screens.OptionsScreen.java com.sillygames.killingSpree.screens.SplashScreen.java com.sillygames.killingSpree.screens.settings.Constants.java com.sillygames.killingSpree.serverEntities.ServerArrow.java com.sillygames.killingSpree.serverEntities.ServerBlob.java com.sillygames.killingSpree.serverEntities.ServerBomb.java com.sillygames.killingSpree.serverEntities.ServerBullet.java com.sillygames.killingSpree.serverEntities.ServerEntity.java com.sillygames.killingSpree.serverEntities.ServerFly.java com.sillygames.killingSpree.serverEntities.ServerFrog.java com.sillygames.killingSpree.serverEntities.ServerPlayer.java com.sillygames.killingSpree.sound.SFXPlayer.java