Merge remote-tracking branch 'origin/master'

This commit is contained in:
Sem van der Hoeven
2020-06-07 15:49:34 +02:00
4 changed files with 34 additions and 19 deletions

View File

@@ -24,6 +24,8 @@ import netwerkprog.game.client.game.map.GameTile;
import netwerkprog.game.client.game.map.Map; import netwerkprog.game.client.game.map.Map;
import netwerkprog.game.client.game.map.MapRenderer; import netwerkprog.game.client.game.map.MapRenderer;
import netwerkprog.game.util.data.Data; import netwerkprog.game.util.data.Data;
import netwerkprog.game.util.data.character.DamageData;
import netwerkprog.game.util.data.character.MoveData;
import netwerkprog.game.util.data.connection.NameData; import netwerkprog.game.util.data.connection.NameData;
import netwerkprog.game.util.data.connection.ReadyData; import netwerkprog.game.util.data.connection.ReadyData;
import netwerkprog.game.util.data.connection.TeamData; import netwerkprog.game.util.data.connection.TeamData;
@@ -400,6 +402,16 @@ public class MainGame extends Game implements ClientCallback {
this.enemyReady = true; this.enemyReady = true;
System.out.println("enemy is ready"); System.out.println("enemy is ready");
} }
} else if (data instanceof MoveData) {
MoveData moveData = (MoveData) data;
if (moveData.getUsername().equals(this.username)) {
moveData.getTile().visit(team.get(moveData.getCharacterName()));
} else {
moveData.getTile().visit(enemyTeam.get(moveData.getCharacterName()));
}
} else if (data instanceof DamageData) {
DamageData damageData = (DamageData) data;
team.get(damageData.getName()).damage(10);
} }
} }

View File

@@ -9,10 +9,8 @@ import com.badlogic.gdx.math.Vector3;
import com.badlogic.gdx.utils.TimeUtils; import com.badlogic.gdx.utils.TimeUtils;
import netwerkprog.game.client.MainGame; import netwerkprog.game.client.MainGame;
import netwerkprog.game.client.game.GAMESTATE; import netwerkprog.game.client.game.GAMESTATE;
import netwerkprog.game.util.data.Data; import netwerkprog.game.util.data.character.DamageData;
import netwerkprog.game.util.data.connection.ReadyData; import netwerkprog.game.util.data.character.MoveData;
import netwerkprog.game.util.data.connection.TeamData;
import netwerkprog.game.util.game.Faction;
import netwerkprog.game.util.game.GameCharacter; import netwerkprog.game.util.game.GameCharacter;
import java.util.ArrayList; import java.util.ArrayList;
@@ -156,7 +154,7 @@ public class GameInputProcessor implements InputProcessor {
gameTile.visit(mainGame.getSelectedCharacter()); gameTile.visit(mainGame.getSelectedCharacter());
mainGame.mapRenderer.setSurroundedTilesOfCurrentCharacter(col, row); mainGame.mapRenderer.setSurroundedTilesOfCurrentCharacter(col, row);
mainGame.increaseTurn(); mainGame.increaseTurn();
mainGame.send(new Data("move")); mainGame.send(new MoveData(mainGame.getUsername(),mainGame.getSelectedCharacter().getName(),gameTile));
} }
} }
// clicking on enemy // clicking on enemy
@@ -164,7 +162,7 @@ public class GameInputProcessor implements InputProcessor {
if (mainGame.mapRenderer.getSurroundedTilesOfCurrentCharacter().contains(gameTile)) { if (mainGame.mapRenderer.getSurroundedTilesOfCurrentCharacter().contains(gameTile)) {
gameTile.getCharacter().damage(10); gameTile.getCharacter().damage(10);
mainGame.increaseTurn(); mainGame.increaseTurn();
mainGame.send(new DamageData(gameTile.getCharacter().getName()));
} }
} }
} }

View File

@@ -10,4 +10,8 @@ public class DamageData extends Data {
super.setPayload(this); super.setPayload(this);
this.name = name; this.name = name;
} }
public String getName() {
return name;
}
} }

View File

@@ -1,29 +1,30 @@
package netwerkprog.game.util.data.character; package netwerkprog.game.util.data.character;
import netwerkprog.game.client.game.map.GameTile;
import netwerkprog.game.util.data.Data; import netwerkprog.game.util.data.Data;
public class MoveData extends Data { public class MoveData extends Data {
private final String name; private final String username;
private final int x; private final String characterName;
private final int y; private final GameTile tile;
public MoveData(String name, int x, int y) { public MoveData(String username, String characterName, GameTile tile) {
super("Move"); super("Move");
super.setPayload(this); super.setPayload(this);
this.name = name; this.username = username;
this.x = x; this.characterName = characterName;
this.y = y; this.tile = tile;
} }
public String getName() { public String getUsername() {
return name; return username;
} }
public int getX() { public String getCharacterName() {
return x; return characterName;
} }
public int getY() { public GameTile getTile() {
return y; return tile;
} }
} }