22903876fd393dd01469d1cad38355927e8c66a2
1 package ru
.deadsoftware
.cavedroid
.game
.mobs
;
3 import com
.badlogic
.gdx
.graphics
.g2d
.Sprite
;
4 import com
.badlogic
.gdx
.graphics
.g2d
.SpriteBatch
;
5 import com
.badlogic
.gdx
.math
.MathUtils
;
6 import com
.badlogic
.gdx
.math
.Vector2
;
7 import ru
.deadsoftware
.cavedroid
.game
.GamePhysics
;
8 import ru
.deadsoftware
.cavedroid
.game
.world
.GameWorld
;
9 import ru
.deadsoftware
.cavedroid
.misc
.Assets
;
10 import ru
.deadsoftware
.cavedroid
.misc
.utils
.SpriteUtilsKt
;
12 import static ru
.deadsoftware
.cavedroid
.misc
.Assets
.pigSprite
;
14 public class Pig
extends Mob
{
16 public Pig(float x
, float y
) {
17 super(x
, y
, 25, 18, randomDir(), Type
.MOB
);
18 mVelocity
= new Vector2((looksLeft() ?
-1 : 1) * GamePhysics
.PL_SPEED
, 0);
22 public void changeDir() {
24 mVelocity
.x
= (-1 + 2 * dirMultiplier()) * GamePhysics
.PL_SPEED
;
28 public void ai(GameWorld gameWorld
, float delta
) {
29 if (MathUtils
.randomBoolean(delta
)) {
30 if (mVelocity
.x
!= 0f) {
39 public void draw(SpriteBatch spriteBatch
, float x
, float y
, float delta
) {
40 updateAnimation(delta
);
42 final Sprite frontLeg
= pigSprite
[0][1];
43 final Sprite backLeg
= pigSprite
[1][1];
44 final Sprite body
= pigSprite
[dirMultiplier()][0];
46 SpriteUtilsKt
.draw(spriteBatch
, backLeg
, x
+ (9 - dirMultiplier() * 9), y
+ 12, -mAnim
);
47 SpriteUtilsKt
.draw(spriteBatch
, backLeg
, x
+ 21 - (9 * dirMultiplier()), y
+ 12, -mAnim
);
48 SpriteUtilsKt
.draw(spriteBatch
, body
, x
, y
);
49 SpriteUtilsKt
.draw(spriteBatch
, frontLeg
, x
+ (9 - dirMultiplier() * 9), y
+ 12, mAnim
);
50 SpriteUtilsKt
.draw(spriteBatch
, frontLeg
, x
+ 21 - (9 * dirMultiplier()), y
+ 12, mAnim
);