master
Jonathan Hager 6 years ago
parent 8ebb0e3101
commit b8248eae65

Binary file not shown.

Before

Width:  |  Height:  |  Size: 644 B

After

Width:  |  Height:  |  Size: 769 B

@ -18,6 +18,7 @@ public abstract class Entity {
protected int direction;
protected Inventory inv;
protected boolean toDelete;
private double angle;
@ -153,4 +154,18 @@ public abstract class Entity {
return this.toDelete;
}
/**
* @return the angle
*/
public double getAngle() {
return angle;
}
/**
* @param angle the angle to set
*/
public void setAngle(double angle) {
this.angle = angle;
}
}

@ -108,6 +108,7 @@ public class Archer extends Entity{
a.setMovementX(movementX);
a.setMovementY(movementY);
a.setAngle(alpha);
return a;
}

@ -27,7 +27,7 @@ public class EntitySprite {
// 0: links, 1: rechts
private int direction;
public EntitySprite(Texture[] textures){
public EntitySprite(Texture[] textures, int width, int height){
sprites = new Sprite[1];
regions = new TextureRegion[1][][];
@ -36,12 +36,12 @@ public class EntitySprite {
direction = 0;
attackState = 0;
for(int i = 0; i < regions.length; i++){
regions[i] = TextureRegion.split(textures[i], 64, 64);
for(int i = 0; i < sprites.length; i++){
regions[i] = TextureRegion.split(textures[i], width, height);
sprites[i] = new Sprite(regions[i][0][0]);
collisionSprite = new Rectangle(0, 0, 32, 16);
}
collisionSprite = new Rectangle(0, 0, 32, 16);
fullCollisionSprite = sprites[0].getBoundingRectangle();
}
@ -84,7 +84,7 @@ public class EntitySprite {
frames[0]++;
}
sprites[0].setRegion(regions[0][0][frames[0]]);
sprites[0].setRegion(regions[0][2][frames[0]]);
updateFlip();
}
@ -99,7 +99,7 @@ public class EntitySprite {
frames[1]++;
}
sprites[0].setRegion(regions[0][2][frames[1]]);
sprites[0].setRegion(regions[0][0][frames[1]]);
updateFlip();
}

@ -83,7 +83,7 @@ public class GameScreen {
playerTexture[2] = new Texture(Gdx.files.internal("sprites/player.png"));
playerTexture[3] = new Texture(Gdx.files.internal("sprites/player.png"));
player = new EntitySprite(playerTexture);
player = new EntitySprite(playerTexture, 64, 64);
player.update(200, 200);
@ -279,16 +279,22 @@ public class GameScreen {
Texture[] tx = new Texture[1];
if(e.getId() == 0){ //nimmt entity ID -> 0 = Archer || 1 = Swordsman || 2 = Arrow
tx[0] = new Texture("sprites/archer.png");
entitySprites[i] = new EntitySprite(tx, 64, 64);
}
if(e.getId() == 1){
tx[0] = new Texture("sprites/swordsman.png");
entitySprites[i] = new EntitySprite(tx, 64, 64);
}
if(e.getId() == 2){
tx[0] = new Texture("sprites/player.png");
tx[0] = new Texture("sprites/arrow.png");
entitySprites[i] = new EntitySprite(tx, 18, 9);
}
entitySprites[i] = new EntitySprite(tx);
entitySprites[i].update((int) e.getxPos(), (int) e.getyPos());
if(e.getId() == 2){
entitySprites[i].getSprites()[0].setRotation((float) Math.toDegrees(e.getAngle() + Math.PI));
}
}
}

Loading…
Cancel
Save