Android Open Source - killingspree Client Entity 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.clientEntities;
/ / f r o m w w w . j a v a 2 s . c o m
import com.badlogic.gdx.graphics.g2d.Sprite;
import com.badlogic.gdx.graphics.g2d.SpriteBatch;
import com.badlogic.gdx.math.Vector2;
import com.sillygames.killingSpree.managers.WorldRenderer;
import com.sillygames.killingSpree.networking.messages.EntityState;
public abstract class ClientEntity {
public short id;
protected final Vector2 previousPosition;
protected final Vector2 position;
protected EntityState currentState;
protected float angle;
public boolean destroy;
public boolean remove;
protected float vX, vY;
protected short extra;
protected WorldRenderer renderer;
private Vector2 tempVector;
public ClientEntity(short id, float x, float y, WorldRenderer renderer){
position = new Vector2(x, y);
previousPosition = new Vector2(x, y);
tempVector = new Vector2();
currentState = new EntityState();
this.id = id;
destroy = false;
remove = false;
this.renderer = renderer;
}
public abstract void render(float delta, SpriteBatch batch);
public abstract void dispose();
public void processState(EntityState nextState, float alpha) {
previousPosition.set(position);
if (position.x - nextState.x > 20) {
position.x -= WorldRenderer.VIEWPORT_WIDTH / 10;
}
else if (position.x - nextState.x < -20) {
position.x += WorldRenderer.VIEWPORT_WIDTH / 10;
}
if (position.y - nextState.y > 20) {
position.y -= WorldRenderer.VIEWPORT_HEIGHT / 10;
}
else if (position.y - nextState.y < -20) {
position.y += WorldRenderer.VIEWPORT_HEIGHT / 10;
}
tempVector.set((float )nextState.x, (float )nextState.y);
if (position.dst2(tempVector) > 60) {
position.set(tempVector);
} else {
position.lerp(tempVector, alpha);
}
angle = nextState.angle;
vX = nextState.vX;
vY = nextState.vY;
extra = nextState.extra;
}
public void drawAll(Sprite sprite, SpriteBatch batch, float x, float y) {
sprite.setPosition(x, y);
sprite.draw(batch);
if (x > WorldRenderer.VIEWPORT_WIDTH / 2) {
sprite.setPosition(x - WorldRenderer.VIEWPORT_WIDTH, y);
} else {
sprite.setPosition(x + WorldRenderer.VIEWPORT_WIDTH, y);
}
sprite.draw(batch);
if (position.y > WorldRenderer.VIEWPORT_HEIGHT / 2) {
sprite.setPosition(x, y - WorldRenderer.VIEWPORT_HEIGHT);
} else {
sprite.setPosition(x, y + WorldRenderer.VIEWPORT_HEIGHT);
}
sprite.draw(batch);
}
}
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