death fix
This commit is contained in:
@@ -1,13 +1,7 @@
|
|||||||
package main;
|
package main;
|
||||||
|
|
||||||
import ea.Knoten;
|
import ea.Knoten;
|
||||||
import main.entities.Entity;
|
|
||||||
import main.entities.Snake;
|
|
||||||
import main.entities.Spider;
|
|
||||||
import main.maps.Corridor;
|
|
||||||
import main.entities.player.Player;
|
|
||||||
import main.maps.Map;
|
import main.maps.Map;
|
||||||
import main.maps.TestMap;
|
|
||||||
import main.maps.TutorialMap;
|
import main.maps.TutorialMap;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -24,31 +18,8 @@ public class World extends Knoten {
|
|||||||
|
|
||||||
// Map initialisieren
|
// Map initialisieren
|
||||||
currentMap = new TutorialMap();
|
currentMap = new TutorialMap();
|
||||||
// Map zu EA hinzuf<EFBFBD>gen
|
// Map zu EA hinzufügen
|
||||||
add(currentMap);
|
add(currentMap);
|
||||||
|
|
||||||
// und Entities auch
|
|
||||||
Player player = new Player();
|
|
||||||
add(player.actionFigur);
|
|
||||||
currentMap.getEntities().add(player);
|
|
||||||
|
|
||||||
// und Spinnen auch
|
|
||||||
Spider spider = new Spider();
|
|
||||||
add(spider.actionFigur);
|
|
||||||
currentMap.getEntities().add(spider);
|
|
||||||
|
|
||||||
//und
|
|
||||||
Snake snake = new Snake();
|
|
||||||
add(snake.actionFigur);
|
|
||||||
currentMap.getEntities().add(snake);
|
|
||||||
|
|
||||||
currentMap.setPlayer(player);
|
|
||||||
|
|
||||||
|
|
||||||
// Alle Entities als ticker registrieren (triggert dann die update methoden)
|
|
||||||
for (Entity e : currentMap.getEntities()) {
|
|
||||||
Main.instance.manager.anmelden(e, 20);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public Map getCurrentMap() {
|
public Map getCurrentMap() {
|
||||||
|
|||||||
@@ -48,7 +48,6 @@ public abstract class LivingEntity extends Entity {
|
|||||||
velX = 0;
|
velX = 0;
|
||||||
velY = 0;
|
velY = 0;
|
||||||
if (actionFigur.aktuelleFigur().aktuellesBild() == actionFigur.aktuelleFigur().animation().length - 1) {
|
if (actionFigur.aktuelleFigur().aktuellesBild() == actionFigur.aktuelleFigur().animation().length - 1) {
|
||||||
System.out.println("adasd");
|
|
||||||
deleteEntity();
|
deleteEntity();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,7 @@
|
|||||||
package main.entities.player;
|
package main.entities.player;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
|
||||||
import ea.Taste;
|
import ea.Taste;
|
||||||
import ea.Vektor;
|
import ea.Vektor;
|
||||||
import main.Main;
|
import main.Main;
|
||||||
@@ -7,9 +9,6 @@ import main.SheetLoader;
|
|||||||
import main.entities.Entity;
|
import main.entities.Entity;
|
||||||
import main.entities.LivingEntity;
|
import main.entities.LivingEntity;
|
||||||
|
|
||||||
import java.awt.event.ActionListener;
|
|
||||||
import java.util.ArrayList;
|
|
||||||
|
|
||||||
public class Player extends LivingEntity {
|
public class Player extends LivingEntity {
|
||||||
|
|
||||||
private static SheetLoader loader = new SheetLoader("/res/images/player_sprite_sheet.png", 64, 32, new int[] { 5, 8, 7, 6, 2, 5, 4, 7 });
|
private static SheetLoader loader = new SheetLoader("/res/images/player_sprite_sheet.png", 64, 32, new int[] { 5, 8, 7, 6, 2, 5, 4, 7 });
|
||||||
@@ -107,7 +106,7 @@ public class Player extends LivingEntity {
|
|||||||
if ((toE.x > 0 && !side) || (toE.x <= 0 && side)) {
|
if ((toE.x > 0 && !side) || (toE.x <= 0 && side)) {
|
||||||
le.setVelX(le.getVelX() + toE.x * 0.05f);
|
le.setVelX(le.getVelX() + toE.x * 0.05f);
|
||||||
le.setVelY(le.getVelY() + toE.y * 0.05f);
|
le.setVelY(le.getVelY() + toE.y * 0.05f);
|
||||||
le.takeDamage(0.1f, this);
|
le.takeDamage(0.4f, this);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -28,7 +28,8 @@ public abstract class Map extends Knoten implements Ticker {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Gibt das Tile-Objekt an der gegebenen Koordinate zurück. (nur wenn es existiert)
|
* Gibt das Tile-Objekt an der gegebenen Koordinate zurück. (nur wenn es
|
||||||
|
* existiert)
|
||||||
*/
|
*/
|
||||||
public Tile getTile(int x, int y) {
|
public Tile getTile(int x, int y) {
|
||||||
if (x >= 0 && x < map.length && y >= 0 && y < map[0].length) {
|
if (x >= 0 && x < map.length && y >= 0 && y < map[0].length) {
|
||||||
@@ -41,14 +42,15 @@ public abstract class Map extends Knoten implements Ticker {
|
|||||||
public void tick() {
|
public void tick() {
|
||||||
for (int i = 0; i < entities.size(); i++) {
|
for (int i = 0; i < entities.size(); i++) {
|
||||||
Entity e = entities.get(i);
|
Entity e = entities.get(i);
|
||||||
if (e instanceof LivingEntity) {
|
|
||||||
if (e.isReadyToDelete()) {
|
if (e.isReadyToDelete()) {
|
||||||
|
if (e instanceof LivingEntity) {
|
||||||
|
entfernen(((LivingEntity) e).actionFigur);
|
||||||
|
}
|
||||||
Main.instance.manager.abmelden(e);
|
Main.instance.manager.abmelden(e);
|
||||||
entities.remove(e);
|
entities.remove(e);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
public int getWidth() {
|
public int getWidth() {
|
||||||
return map.length;
|
return map.length;
|
||||||
@@ -69,4 +71,10 @@ public abstract class Map extends Knoten implements Ticker {
|
|||||||
public void setPlayer(Player player) {
|
public void setPlayer(Player player) {
|
||||||
this.player = player;
|
this.player = player;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void registerEntities() {
|
||||||
|
for (Entity e : getEntities()) {
|
||||||
|
Main.instance.manager.anmelden(e, 20);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
package main.maps;
|
package main.maps;
|
||||||
|
|
||||||
import main.Tile;
|
import main.Tile;
|
||||||
|
import main.entities.Snake;
|
||||||
|
import main.entities.Spider;
|
||||||
|
import main.entities.player.Player;
|
||||||
|
|
||||||
public class TutorialMap extends Map {
|
public class TutorialMap extends Map {
|
||||||
|
|
||||||
@@ -25,5 +28,24 @@ public class TutorialMap extends Map {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Player player = new Player();
|
||||||
|
add(player.actionFigur);
|
||||||
|
getEntities().add(player);
|
||||||
|
|
||||||
|
// und Spinnen auch
|
||||||
|
Spider spider = new Spider();
|
||||||
|
add(spider.actionFigur);
|
||||||
|
getEntities().add(spider);
|
||||||
|
|
||||||
|
//und
|
||||||
|
Snake snake = new Snake();
|
||||||
|
add(snake.actionFigur);
|
||||||
|
getEntities().add(snake);
|
||||||
|
|
||||||
|
setPlayer(player);
|
||||||
|
|
||||||
|
// Alle Entities als ticker registrieren (triggert dann die update methoden)
|
||||||
|
registerEntities();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user