added team class that uses a tree

This commit is contained in:
Sem van der Hoeven
2020-06-02 23:35:28 +02:00
parent 42d88e434f
commit 087c3a7193
2 changed files with 56 additions and 7 deletions

View File

@@ -11,13 +11,13 @@ import com.badlogic.gdx.graphics.g2d.SpriteBatch;
import com.badlogic.gdx.graphics.g2d.TextureRegion;
import netwerkprog.game.client.game.characters.Hacker;
import netwerkprog.game.client.game.characters.Team;
import netwerkprog.game.client.game.characters.abilities.BodySwap;
import netwerkprog.game.client.game.map.Map;
import netwerkprog.game.client.game.map.MapRenderer;
import netwerkprog.game.client.game.map.GameInputProcessor;
import netwerkprog.game.util.game.GameCharacter;
import netwerkprog.game.util.graphics.FrameRate;
import netwerkprog.game.util.tree.BST;
public class MainGame extends ApplicationAdapter {
SpriteBatch batch;
@@ -28,11 +28,11 @@ public class MainGame extends ApplicationAdapter {
private OrthographicCamera camera;
private GameInputProcessor gameInputProcessor;
private GameCharacter selectedCharacter;
private Team team;
private Map map;
public MapRenderer mapRenderer;
private BST<GameCharacter> tree;
public GameCharacter testCharacter;
private static MainGame INSTANCE;
@@ -80,7 +80,6 @@ public class MainGame extends ApplicationAdapter {
camera.viewportWidth = screenWidth / 2;
camera.viewportHeight = screenHeight / 2;
camera.update();
this.tree = new BST<>();
initCharacters();
// this.tree.insert(new Hacker(,new BodySwap()));
@@ -99,6 +98,7 @@ public class MainGame extends ApplicationAdapter {
this.setSelectedCharacter(testCharacter);
mapRenderer.getGameTiles()[1][1].visit(testCharacter);
mapRenderer.getGameTiles()[1][2].visit(character2);
this.team = new Team();
}
@@ -180,10 +180,6 @@ public class MainGame extends ApplicationAdapter {
return map.getWidth();
}
public BST<GameCharacter> getTree() {
return tree;
}
public void setSelectedCharacter(GameCharacter character) {
this.selectedCharacter = character;
System.out.println("selected character set to : " + character);

View File

@@ -0,0 +1,53 @@
package netwerkprog.game.client.game.characters;
import netwerkprog.game.util.game.GameCharacter;
import netwerkprog.game.util.tree.BST;
import java.util.ArrayList;
import java.util.Iterator;
public class Team {
private BST<GameCharacter> members;
public Team() {
this.members = new BST<>();
}
public Team(BST<GameCharacter> characters) {
this.members = characters;
}
public void addMember(GameCharacter gameCharacter) {
if (this.members.getSize() != 6)
this.members.insert(gameCharacter);
}
public BST<GameCharacter> getMembers() {
return this.members;
}
public void setMembers(BST<GameCharacter> members) {
this.members = members;
}
public GameCharacter get(GameCharacter character) {
for (GameCharacter cur : this.members) {
if (cur.equals(character)) {
return cur;
}
}
return null;
}
public GameCharacter get(int position) {
if (position >= this.members.getSize()) {
throw new IndexOutOfBoundsException("position out of range");
}
int i = 0;
for (GameCharacter cur : this.members) {
if (i == position) return cur;
i++;
}
return null;
}
}