X-Git-Url: http://deadsoftware.ru/gitweb?a=blobdiff_plain;f=core%2Fsrc%2Fru%2Fdeadsoftware%2Fcavedroid%2Fgame%2Fmobs%2FMob.java;h=4ad04e8538affb3b49e3bbf2eb0f80a796ce4510;hb=e7a1e15a93abaafa8e2e0435336483a198cc697c;hp=0f765925bc1679bed83830f29011a5f0bd88def8;hpb=97fa700baa58d95bd4b655366a35bcdac4bcaac9;p=cavedroid.git diff --git a/core/src/ru/deadsoftware/cavedroid/game/mobs/Mob.java b/core/src/ru/deadsoftware/cavedroid/game/mobs/Mob.java index 0f76592..4ad04e8 100644 --- a/core/src/ru/deadsoftware/cavedroid/game/mobs/Mob.java +++ b/core/src/ru/deadsoftware/cavedroid/game/mobs/Mob.java @@ -4,7 +4,7 @@ import com.badlogic.gdx.graphics.g2d.SpriteBatch; import com.badlogic.gdx.math.MathUtils; import com.badlogic.gdx.math.Rectangle; import com.badlogic.gdx.math.Vector2; -import ru.deadsoftware.cavedroid.game.GameWorld; +import ru.deadsoftware.cavedroid.game.world.GameWorld; import java.io.Serializable; @@ -13,6 +13,8 @@ import java.io.Serializable; */ public abstract class Mob extends Rectangle implements Serializable { + protected static int ANIMATION_SPEED = 360; + public enum Type { MOB, SAND, @@ -24,10 +26,10 @@ public abstract class Mob extends Rectangle implements Serializable { RIGHT } - protected Vector2 mMove; + protected Vector2 mVelocity; protected Type mType; - protected int mAnimDelta = 6; - protected int mAnim; + protected int mAnimDelta = ANIMATION_SPEED; + protected float mAnim; private Direction mDirection; private boolean mDead; @@ -43,7 +45,7 @@ public abstract class Mob extends Rectangle implements Serializable { */ protected Mob(float x, float y, float width, float height, Direction mDirection, Type type) { super(x, y, width, height); - mMove = new Vector2(0, 0); + mVelocity = new Vector2(0, 0); mCanJump = false; mDead = false; this.mDirection = mDirection; @@ -120,7 +122,7 @@ public abstract class Mob extends Rectangle implements Serializable { return mDead; } - public final int getAnim() { + public final float getAnim() { return mAnim; } @@ -131,13 +133,13 @@ public abstract class Mob extends Rectangle implements Serializable { mDead = true; } - public final void move() { - x += mMove.x; - y += mMove.y; + public final void move(float delta) { + x += mVelocity.x * delta; + y += mVelocity.y * delta; } - public final Vector2 getMove() { - return mMove; + public final Vector2 getVelocity() { + return mVelocity; } public final boolean canJump() { @@ -169,9 +171,9 @@ public abstract class Mob extends Rectangle implements Serializable { } } - public abstract void draw(SpriteBatch spriteBatch, float x, float y); + public abstract void draw(SpriteBatch spriteBatch, float x, float y, float delta); - public abstract void ai(GameWorld gameWorld); + public abstract void ai(GameWorld gameWorld, float delta); public abstract void changeDir(); }