Compare commits

...

2 Commits

Author SHA1 Message Date
Asecave
4e6e4198f4 Merge branch 'master' of https://git.ngb.schule/Tim/Zoelda 2021-06-25 22:58:20 +02:00
Asecave
39e7e91dd4 death fix 2021-06-25 22:57:31 +02:00
5 changed files with 46 additions and 49 deletions

View File

@@ -1,15 +1,7 @@
package main;
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.Map01;
import main.maps.Map02;
import main.maps.TestMap;
import main.maps.TutorialMap;
/**
@@ -26,31 +18,8 @@ public class World extends Knoten {
// Map initialisieren
currentMap = new TutorialMap();
// Map zu EA hinzuf<EFBFBD>gen
// Map zu EA hinzufügen
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() {

View File

@@ -48,7 +48,6 @@ public abstract class LivingEntity extends Entity {
velX = 0;
velY = 0;
if (actionFigur.aktuelleFigur().aktuellesBild() == actionFigur.aktuelleFigur().animation().length - 1) {
System.out.println("adasd");
deleteEntity();
}
}

View File

@@ -1,5 +1,7 @@
package main.entities.player;
import java.util.ArrayList;
import ea.Taste;
import ea.Vektor;
import main.Main;
@@ -7,9 +9,6 @@ import main.SheetLoader;
import main.entities.Entity;
import main.entities.LivingEntity;
import java.awt.event.ActionListener;
import java.util.ArrayList;
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 });
@@ -107,7 +106,7 @@ public class Player extends LivingEntity {
if ((toE.x > 0 && !side) || (toE.x <= 0 && side)) {
le.setVelX(le.getVelX() + toE.x * 0.05f);
le.setVelY(le.getVelY() + toE.y * 0.05f);
le.takeDamage(0.1f, this);
le.takeDamage(0.4f, this);
}
}
}

View File

@@ -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) {
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() {
for (int i = 0; i < entities.size(); i++) {
Entity e = entities.get(i);
if (e instanceof LivingEntity) {
if (e.isReadyToDelete()) {
if (e instanceof LivingEntity) {
entfernen(((LivingEntity) e).actionFigur);
}
Main.instance.manager.abmelden(e);
entities.remove(e);
}
}
}
}
public int getWidth() {
return map.length;
@@ -69,4 +71,10 @@ public abstract class Map extends Knoten implements Ticker {
public void setPlayer(Player player) {
this.player = player;
}
public void registerEntities() {
for (Entity e : getEntities()) {
Main.instance.manager.anmelden(e, 20);
}
}
}

View File

@@ -1,6 +1,9 @@
package main.maps;
import main.Tile;
import main.entities.Snake;
import main.entities.Spider;
import main.entities.player.Player;
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();
}
}