FRÜHJAHRESGEPUTZT:

Entity.java
Package entities
MainMenu.java
master
GammelJan 6 years ago
parent a663709746
commit fd009e8539

@ -41,80 +41,59 @@ public abstract class Entity {
}
public void rdmMove(float xPlayer, float yPlayer){
if(xPlayer == xPos){
if(yPlayer == yPos){}
else if(yPlayer > yPos){movementY = -1f;}
else if(yPlayer < yPos){movementY = 1f;}
}
else if(yPlayer == yPos){
if(xPlayer == xPos){}
else if(xPlayer > xPos){movementX = 1f;}
else if(xPlayer < xPos){movementX = -1f;}
}
else if(xPlayer > xPos){
if(yPlayer > yPos){ //archer ist im Quadrant III
if((yPos - yPlayer) > (xPos - xPlayer)){
movementY = 1f;
}
else{
movementX = 1f;
}
}
else if(yPlayer < yPos){ //archer ist im Quadrant IV
if((yPos - yPlayer) > (xPlayer - xPos)){
movementX = 1f;
}
else{
movementY = -1f;
}
}
}
else if(xPlayer < xPos){
if(yPlayer < yPos){ //archer ist im Quadrant II
if((yPlayer - yPos) > (xPlayer - xPos)){
movementX = -1f;
}
else{
movementY = 1f;
}
}
else if(yPlayer > yPos){ //archer ist im Quadrant I
if((yPlayer - yPos) > (xPos - xPlayer)){
movementY = -1;
}
else{
movementX = -1;
}
if(xPlayer == xPos){ //PLAYER auf X-Achse von Archer
if(yPlayer == yPos){} // //PLAYER pos = Archer pos
else if(yPlayer > yPos){movementY = -1f;} // //PLAYER über Archer
else if(yPlayer < yPos){movementY = 1f;} // //PLAYER unter Archer
} //
else if(yPlayer == yPos){ //PLAYER auf Y-Achse von Archer
if(xPlayer == xPos){} // //PLAYER pos = Archer pos
else if(xPlayer > xPos){movementX = 1f;} // //PLAYER rechts von Archer
else if(xPlayer < xPos){movementX = -1f;} // //PLAYER links von Archer
} //
else if(xPlayer > xPos){ //PLAYER rechts von Archer
if(yPlayer > yPos){ // //PLAYER ist im Quadrant I
if((yPlayer - yPos) > (xPlayer - xPos)){ // // //Weg zu PLAYER x kürzer als zu PLAYER y
movementX = 1f; // // //
} // // //
else{ // // //Weg zu PLAYER y kürzer als zu PLAYER x
movementY = 1f; // //
} // //
} // //
else if(yPlayer < yPos){ // //PLAYER ist im Quadrant II
if((yPos - yPlayer) > (xPlayer - xPos)){ // //Weg zu PLAYER x kürzer als zu PLAYER y
movementX = 1f; // //
} // //
else{ // //Weg zu PLAYER y kürzer als zu PLAYER y
movementY = -1f; //
} //
} //
} //
else if(xPlayer < xPos){ //PLAYER links von Archer
if(yPlayer < yPos){ // //PLAYER ist im Quadrant III
if((yPlayer - yPos) > (xPlayer - xPos)){ // // //Weg zu PLAYER x kürzer als zu PLAYER y
movementX = -1f; // // //
} // // //
else{ // // //Weg zu PLAYER y kürzer als zu PLAYER x
movementY = -1f; // //
} // //
} // //
else if(yPlayer > yPos){ // //PLAYER ist im Quadrant IV
if((yPlayer - yPos) > (xPos - xPlayer)){ // //Weg zu PLAYER x kürzer als zu PLAYER y
movementX = -1; // //
} // //
else{ // //Weg zu PLAYER y kürzer als zu PLAYER x
movementY = 1; //
} ////////////
}
}
move();
/*
switch((int) (Math.random() * 5)){
case 0: //left
setMovementX(-3);
move();
break;
case 1: //right
setMovementX(3);
move();
break;
case 2: //up
setMovementY(3);
move();
break;
case 3: //down
setMovementY(-3);
move();
break;
}
*/
}
public int direction(){
if(movementX < 0f){
public int direction(){ // returns direction the entity is facing depending on its movement
if(movementX < 0f){ // TIS IS SHIT - NEED REWORK
return 3;
}
else if(movementX < 3f){
@ -129,6 +108,8 @@ public abstract class Entity {
return -1;
}
// GETTER + SETTER
public float getxPos() {
return xPos;
}

@ -26,12 +26,7 @@ public class MainMenu{
Sprite cursor;
float CursorMoveX;
float CursorMoveY;
/*
//PLAYER
Texture p;
Sprite player;
TextureRegion[][] regions;
*/
public MainMenu() {
//MENU-SCREEN
float w = Gdx.graphics.getWidth();
@ -78,7 +73,7 @@ public class MainMenu{
public void moveCursor(int direction){
switch(direction){
switch(direction){ //starts the directional movement of the cursor in one direction depending on the pressed key
case 0:
CursorMoveY = 10f; break;
case 1:
@ -89,7 +84,7 @@ public class MainMenu{
CursorMoveX = -10f; break;
}
}
public void stopCursor(int direction){
public void stopCursor(int direction){ //stops the directional movement of the cursor in one direction depending on the released key
switch(direction){
case 0:
CursorMoveY = 0f; break;
@ -101,12 +96,12 @@ public class MainMenu{
CursorMoveX = 0f; break;
}
}
public int click(){
public int click(){ // prüft ob cursor mit button (START) überlappt
Rectangle rectangleCursor = cursor.getBoundingRectangle();
Rectangle rectangleButton = button.getBoundingRectangle();
boolean overlapsPlay = rectangleCursor.overlaps(rectangleButton);
if(overlapsPlay == true){
return 0;
return 0; // ints weil für mehr buttons eine ID festgelegt werden kann. 0 = START - -1 = kein button
}
else{return -1;}
}

@ -20,8 +20,6 @@ public class View {
Sprite player;
TextureRegion[][] regions;
//ENTITIES
Texture[] entityTextures;
Sprite[] entitySprites;
@ -31,13 +29,10 @@ public class View {
//MAP
Map m;
TiledMapRenderer tmr;
TiledMap test;
TiledMap tm;
OrthographicCamera camera;
public View(Dungeon d) {
float w = Gdx.graphics.getWidth();
float h = Gdx.graphics.getHeight();
float wc = w/2;
//PLAYER
p = new Texture("Player.png");
@ -49,12 +44,11 @@ public class View {
//ENTITIES
entityTextures = new Texture[5];
entitySprites = new Sprite[5];
archerTexture = new Texture("archer.png");
archerRegions = TextureRegion.split(archerTexture, 64, 64);
//MAP
float w = Gdx.graphics.getWidth();
float h = Gdx.graphics.getHeight();
m = new Map();
camera = new OrthographicCamera(1, h/w);
@ -64,40 +58,43 @@ public class View {
m.setMaps(maps);
mg.ichWillSpielen(m.getMaps());
test = new TiledMap();
tmr = new OrthogonalTiledMapRenderer(test);
tm = new TiledMap();
tmr = new OrthogonalTiledMapRenderer(tm);
}
public void render (SpriteBatch batch, Player p, Entity[] e, int[] tile, int level, int[] posRoom) {
Gdx.gl.glClearColor(0, 0, 0, 1);
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
//setzt player Sprite auf richtige Position
player.setX(p.getxPos());
player.setY(p.getyPos());
int xPosRoom = posRoom[0];
int yPosRoom = posRoom[1];
test = m.getMaps()[level][xPosRoom][yPosRoom];
tm = m.getMaps()[level][xPosRoom][yPosRoom];
if(test == null){
if(tm == null){
System.out.println("Dein scheiß geht net");
}
else{
tmr = new OrthogonalTiledMapRenderer(test);
tmr = new OrthogonalTiledMapRenderer(tm);
}
if(p.getMovementX() == 3){
// dreht SpielerSprite je nach Bewegungsrichtung
if(p.getMovementX() == 3){ //RECHTS
player.setRegion(regions[0][1]);
}
if(p.getMovementX() == -3){
if(p.getMovementX() == -3){ //LINKS
player.setRegion(regions[0][3]);
}
if(p.getMovementY() == 3){
if(p.getMovementY() == 3){ //OBEN
player.setRegion(regions[0][0]);
}
if(p.getMovementY() == -3){
if(p.getMovementY() == -3){ //UNTEN
player.setRegion(regions[0][2]);
}
@ -112,40 +109,40 @@ public class View {
//BATCH
batch.begin();
//BATCH
batch.begin();
player.draw(batch);
//DRAW'T JEDES ENTITY - prüft vorher ob vorhanden
for(int i = 0; i < e.length; i++){
if(entitySprites[i] != null){
entitySprites[i].setX(e[i].getxPos());
entitySprites[i].setY(e[i].getyPos());
switch(e[i].direction()){
case -1:
break;
case 0:
entitySprites[i].setRegion(archerRegions[0][0]);
break;
case 1:
entitySprites[i].setRegion(archerRegions[0][1]);
break;
case 2:
entitySprites[i].setRegion(archerRegions[0][2]);
break;
case 3:
entitySprites[i].setRegion(archerRegions[0][3]);
break;
if(entitySprites[i] != null){
entitySprites[i].setX(e[i].getxPos());
entitySprites[i].setY(e[i].getyPos());
switch(e[i].direction()){
case -1:
break;
case 0:
entitySprites[i].setRegion(archerRegions[0][0]);
break;
case 1:
entitySprites[i].setRegion(archerRegions[0][1]);
break;
case 2:
entitySprites[i].setRegion(archerRegions[0][2]);
break;
case 3:
entitySprites[i].setRegion(archerRegions[0][3]);
break;
}
entitySprites[i].draw(batch);
}
}
batch.end();
batch.end();
}
public void newEntity(int i,Entity e, int x, int y){
if(e.getId() == 0){
if(e.getId() == 0){ //nimmt entity ID -> 0 = Archer || 1 = Swordsman
entityTextures[i] = new Texture("archer.png");
entitySprites[i] = new Sprite(archerRegions[0][2]);
entitySprites[i].setX(x);
@ -159,18 +156,13 @@ public class View {
}
}
//GETTER
public float getPlayerSpriteX(){
return player.getX();
}
public float getPlayerSpriteY(){
return player.getY();
}
public void setPlayerSpriteX(float x){
player.setX(x);
}
public void setPlayerSpriteY(float y){
player.setY(y);
}
public float getEntitySpriteX(int i){
return entitySprites[i].getX();
@ -178,6 +170,15 @@ public class View {
public float getEntitySpriteY(int i){
return entitySprites[i].getY();
}
//SETTER
public void setPlayerSpriteX(float x){
player.setX(x);
}
public void setPlayerSpriteY(float y){
player.setY(y);
}
public void setEntitySpriteX(int i,float x){
entitySprites[i].setX(x);
}

Loading…
Cancel
Save