diff --git a/core/src/ru/deadsoftware/cavedroid/game/objects/Player.java b/core/src/ru/deadsoftware/cavedroid/game/objects/Player.java
index 5fd04f902f2a99feee334803aad4c338849dd067..11863b7c7122aa794d3d7a2714ce3347e16c79f1 100644 (file)
package ru.deadsoftware.cavedroid.game.objects;
import com.badlogic.gdx.graphics.g2d.SpriteBatch;
package ru.deadsoftware.cavedroid.game.objects;
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 com.badlogic.gdx.math.Rectangle;
import com.badlogic.gdx.math.Vector2;
-import ru.deadsoftware.cavedroid.game.GameItems;
import ru.deadsoftware.cavedroid.game.mobs.Mob;
import ru.deadsoftware.cavedroid.misc.Assets;
import ru.deadsoftware.cavedroid.game.mobs.Mob;
import ru.deadsoftware.cavedroid.misc.Assets;
public class Player extends Mob implements Serializable {
public class Player extends Mob implements Serializable {
- public int[] inv;
- public int invSlot;
- public int gameMode;
+ public final int[] inventory;
+ public int slot;
+ public final int gameMode;
public boolean swim;
public Player(int gameMode) {
public boolean swim;
public Player(int gameMode) {
- super(0, 0, 4, 30, 1, true);
+ super(0, 0, 4, 30, 1);
this.gameMode = gameMode;
this.gameMode = gameMode;
- inv = new int[9];
- pos = getSpawnPoint().cpy();
+ inventory = new int[9];
swim = false;
}
swim = false;
}
GP.world.setForeMap(x, y, 1);
break;
}
GP.world.setForeMap(x, y, 1);
break;
}
- if (GP.world.getForeMap(x, y) > 0 && GameItems.getBlock(GP.world.getForeMap(x, y)).hasCollision()) break;
+ if (GP.world.hasForeAt(x, y) && GP.world.getForeMapBlock(x, y).hasCollision()) break;
}
}
- return new Vector2(x * 16 + 8 - (float) getWidth() / 2, (float) y * 16 - getHeight());
+ return new Vector2(x * 16 + 8 - getWidth() / 2, (float) y * 16 - getHeight());
}
public void setDir(int dir) {
}
public void setDir(int dir) {
- if (dir != getDir()) switchDir();
+ if (dir != getDirection()) switchDir();
}
@Override
}
@Override
@Override
public void draw(SpriteBatch spriteBatch, float x, float y) {
@Override
public void draw(SpriteBatch spriteBatch, float x, float y) {
- if (mov.x != 0 || Assets.plSprite[0][2].getRotation() != 0) {
- Assets.plSprite[0][2].rotate(animDelta);
- Assets.plSprite[1][2].rotate(-animDelta);
- Assets.plSprite[0][3].rotate(-animDelta);
- Assets.plSprite[1][3].rotate(animDelta);
+ if (mov.x != 0 || Assets.playerSprite[0][2].getRotation() != 0) {
+ Assets.playerSprite[0][2].rotate(animDelta);
+ Assets.playerSprite[1][2].rotate(-animDelta);
+ Assets.playerSprite[0][3].rotate(-animDelta);
+ Assets.playerSprite[1][3].rotate(animDelta);
} else {
} else {
- Assets.plSprite[0][2].setRotation(0);
- Assets.plSprite[1][2].setRotation(0);
- Assets.plSprite[0][3].setRotation(0);
- Assets.plSprite[1][3].setRotation(0);
+ Assets.playerSprite[0][2].setRotation(0);
+ Assets.playerSprite[1][2].setRotation(0);
+ Assets.playerSprite[0][3].setRotation(0);
+ Assets.playerSprite[1][3].setRotation(0);
}
}
- if (Assets.plSprite[0][2].getRotation() >= 60 || Assets.plSprite[0][2].getRotation() <= -60)
+ if (Assets.playerSprite[0][2].getRotation() >= 60 || Assets.playerSprite[0][2].getRotation() <= -60)
animDelta = -animDelta;
//back hand
animDelta = -animDelta;
//back hand
- Assets.plSprite[1][2].setPosition(x - 6, y);
- Assets.plSprite[1][2].draw(spriteBatch);
+ Assets.playerSprite[1][2].setPosition(x - 6, y);
+ Assets.playerSprite[1][2].draw(spriteBatch);
//back leg
//back leg
- Assets.plSprite[1][3].setPosition(x - 6, y + 10);
- Assets.plSprite[1][3].draw(spriteBatch);
+ Assets.playerSprite[1][3].setPosition(x - 6, y + 10);
+ Assets.playerSprite[1][3].draw(spriteBatch);
//front leg
//front leg
- Assets.plSprite[0][3].setPosition(x - 6, y + 10);
- Assets.plSprite[0][3].draw(spriteBatch);
+ Assets.playerSprite[0][3].setPosition(x - 6, y + 10);
+ Assets.playerSprite[0][3].draw(spriteBatch);
//head
//head
- spriteBatch.draw(Assets.plSprite[getDir()][0], x - 2, y - 2);
+ spriteBatch.draw(Assets.playerSprite[getDirection()][0], x - 2, y - 2);
//body
//body
- spriteBatch.draw(Assets.plSprite[getDir()][1], x - 2, y + 8);
- //item in hand
- if (inv[invSlot] > 0) {
- float handRotation = MathUtils.degRad * Assets.plSprite[0][2].getRotation();
- switch (GameItems.getItem(inv[invSlot]).getType()) {
- case 0:
- Assets.blockTex[GameItems.getItem(inv[invSlot]).getTex()].setPosition(
- x - 8 * MathUtils.sin(handRotation),
- y + 6 + 8 * MathUtils.cos(handRotation));
- Assets.blockTex[GameItems.getItem(inv[invSlot]).getTex()].draw(spriteBatch);
- break;
- default:
- Assets.itemTex[GameItems.getItem(inv[invSlot]).getTex()].flip((getDir() == 0), false);
- Assets.itemTex[GameItems.getItem(inv[invSlot]).getTex()].setRotation(
- -45 + getDir() * 90 + Assets.plSprite[0][2].getRotation());
- Assets.itemTex[GameItems.getItem(inv[invSlot]).getTex()].setPosition(
- x - 10 + (12 * getDir()) - 8 * MathUtils.sin(handRotation),
- y + 2 + 8 * MathUtils.cos(handRotation));
- Assets.itemTex[GameItems.getItem(inv[invSlot]).getTex()].draw(spriteBatch);
- Assets.itemTex[GameItems.getItem(inv[invSlot]).getTex()].flip((getDir() == 0), false);
- break;
- }
- }
+ spriteBatch.draw(Assets.playerSprite[getDirection()][1], x - 2, y + 8);
//front hand
//front hand
- Assets.plSprite[0][2].setPosition(x - 6, y);
- Assets.plSprite[0][2].draw(spriteBatch);
+ Assets.playerSprite[0][2].setPosition(x - 6, y);
+ Assets.playerSprite[0][2].draw(spriteBatch);
}
@Override
}
@Override