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.MapRenderer;
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.ReadyData;
import netwerkprog.game.util.data.connection.TeamData;
@@ -400,6 +402,16 @@ public class MainGame extends Game implements ClientCallback {
this.enemyReady = true;
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 netwerkprog.game.client.MainGame;
import netwerkprog.game.client.game.GAMESTATE;
import netwerkprog.game.util.data.Data;
import netwerkprog.game.util.data.connection.ReadyData;
import netwerkprog.game.util.data.connection.TeamData;
import netwerkprog.game.util.game.Faction;
import netwerkprog.game.util.data.character.DamageData;
import netwerkprog.game.util.data.character.MoveData;
import netwerkprog.game.util.game.GameCharacter;
import java.util.ArrayList;
@@ -156,7 +154,7 @@ public class GameInputProcessor implements InputProcessor {
gameTile.visit(mainGame.getSelectedCharacter());
mainGame.mapRenderer.setSurroundedTilesOfCurrentCharacter(col, row);
mainGame.increaseTurn();
mainGame.send(new Data("move"));
mainGame.send(new MoveData(mainGame.getUsername(),mainGame.getSelectedCharacter().getName(),gameTile));
}
}
// clicking on enemy
@@ -164,7 +162,7 @@ public class GameInputProcessor implements InputProcessor {
if (mainGame.mapRenderer.getSurroundedTilesOfCurrentCharacter().contains(gameTile)) {
gameTile.getCharacter().damage(10);
mainGame.increaseTurn();
mainGame.send(new DamageData(gameTile.getCharacter().getName()));
}
}
}

View File

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

View File

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