Merge branch 'master' of https://github.com/SemvdH/netwerk-programming-eindopdracht
This commit is contained in:
@@ -219,6 +219,7 @@ public class MainGame extends Game implements ClientCallback {
|
|||||||
} else if (this.team.isDead()) {
|
} else if (this.team.isDead()) {
|
||||||
text += "Too bad! You lost!";
|
text += "Too bad! You lost!";
|
||||||
}
|
}
|
||||||
|
text += "\nPress ESC to exit the game";
|
||||||
renderString(text, Gdx.graphics.getWidth() / 2f, Gdx.graphics.getHeight() / 2f);
|
renderString(text, Gdx.graphics.getWidth() / 2f, Gdx.graphics.getHeight() / 2f);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -317,6 +318,12 @@ public class MainGame extends Game implements ClientCallback {
|
|||||||
return map.getWidth();
|
return map.getWidth();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void exit() {
|
||||||
|
client.disconnect();
|
||||||
|
dispose();
|
||||||
|
Gdx.app.exit();
|
||||||
|
}
|
||||||
|
|
||||||
public void setSelectedCharacter(GameCharacter character) {
|
public void setSelectedCharacter(GameCharacter character) {
|
||||||
if (!character.isDead()) {
|
if (!character.isDead()) {
|
||||||
this.selectedCharacter = character;
|
this.selectedCharacter = character;
|
||||||
|
|||||||
@@ -10,29 +10,54 @@ public class Team {
|
|||||||
this.members = new BST<>();
|
this.members = new BST<>();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* create a new team with the given characters
|
||||||
|
* @param characters the characters
|
||||||
|
*/
|
||||||
public Team(BST<GameCharacter> characters) {
|
public Team(BST<GameCharacter> characters) {
|
||||||
this.members = characters;
|
this.members = characters;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* add new member
|
||||||
|
* @param gameCharacter the member to add
|
||||||
|
*/
|
||||||
public void addMember(GameCharacter gameCharacter) {
|
public void addMember(GameCharacter gameCharacter) {
|
||||||
if (this.members.getSize() != 6)
|
if (this.members.getSize() != 6)
|
||||||
this.members.insert(gameCharacter);
|
this.members.insert(gameCharacter);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* get members
|
||||||
|
* @return the members
|
||||||
|
*/
|
||||||
public BST<GameCharacter> getMembers() {
|
public BST<GameCharacter> getMembers() {
|
||||||
return this.members;
|
return this.members;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* set members
|
||||||
|
* @param members the members to set
|
||||||
|
*/
|
||||||
public void setMembers(BST<GameCharacter> members) {
|
public void setMembers(BST<GameCharacter> members) {
|
||||||
this.members = members;
|
this.members = members;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* add members
|
||||||
|
* @param characters the members to add
|
||||||
|
*/
|
||||||
public void addMember(GameCharacter... characters) {
|
public void addMember(GameCharacter... characters) {
|
||||||
for (GameCharacter gameCharacter : characters) {
|
for (GameCharacter gameCharacter : characters) {
|
||||||
this.members.insert(gameCharacter);
|
this.members.insert(gameCharacter);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* get the specific character
|
||||||
|
* @param character the character to get
|
||||||
|
* @return the character, null if it doesnt exist
|
||||||
|
*/
|
||||||
public GameCharacter get(GameCharacter character) {
|
public GameCharacter get(GameCharacter character) {
|
||||||
for (GameCharacter cur : this.members) {
|
for (GameCharacter cur : this.members) {
|
||||||
if (cur.equals(character)) {
|
if (cur.equals(character)) {
|
||||||
@@ -42,6 +67,11 @@ public class Team {
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* get the character with the specified username
|
||||||
|
* @param username the username of the character
|
||||||
|
* @return the character, null if it doesnt exist
|
||||||
|
*/
|
||||||
public GameCharacter get(String username) {
|
public GameCharacter get(String username) {
|
||||||
for (GameCharacter cur : this.members) {
|
for (GameCharacter cur : this.members) {
|
||||||
if (cur.getName().equals(username)) {
|
if (cur.getName().equals(username)) {
|
||||||
@@ -51,6 +81,11 @@ public class Team {
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* get the character at the specified position
|
||||||
|
* @param position the position of the character
|
||||||
|
* @return the character, null if it can't be found
|
||||||
|
*/
|
||||||
public GameCharacter get(int position) {
|
public GameCharacter get(int position) {
|
||||||
if (position >= this.members.getSize()) {
|
if (position >= this.members.getSize()) {
|
||||||
throw new IndexOutOfBoundsException("position out of range");
|
throw new IndexOutOfBoundsException("position out of range");
|
||||||
@@ -63,12 +98,20 @@ public class Team {
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* update all characters
|
||||||
|
* @param deltaTime the time between the last frame
|
||||||
|
*/
|
||||||
public void update(double deltaTime) {
|
public void update(double deltaTime) {
|
||||||
for (GameCharacter character : this.members) {
|
for (GameCharacter character : this.members) {
|
||||||
character.update(deltaTime);
|
character.update(deltaTime);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* check if all players are dead
|
||||||
|
* @return true if all players are dead
|
||||||
|
*/
|
||||||
public boolean isDead() {
|
public boolean isDead() {
|
||||||
int dead = 0;
|
int dead = 0;
|
||||||
for (GameCharacter character : this.members) {
|
for (GameCharacter character : this.members) {
|
||||||
|
|||||||
@@ -128,6 +128,10 @@ public class GameInputProcessor implements InputProcessor {
|
|||||||
mainGame.chooseHacker();
|
mainGame.chooseHacker();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
} else if (mainGame.getGamestate() == GAMESTATE.ENDED) {
|
||||||
|
if (keycode == Input.Keys.ESCAPE) {
|
||||||
|
mainGame.exit();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,8 +5,8 @@ public abstract class AbstractTree<E> implements Tree<E> {
|
|||||||
public void inorder() {
|
public void inorder() {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override /* Postorder traversal from the root */
|
@Override /* Post order traversal from the root */
|
||||||
public void postorder() {
|
public void postOrder() {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override /* Preorder traversal from the root */
|
@Override /* Preorder traversal from the root */
|
||||||
|
|||||||
@@ -141,7 +141,7 @@ public class BST<E extends Comparable<E>> extends AbstractTree<E> {
|
|||||||
* Post order traversal from the root
|
* Post order traversal from the root
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public void postorder() {
|
public void postOrder() {
|
||||||
postorder(root);
|
postorder(root);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ public interface Tree<E> extends Iterable<E> {
|
|||||||
public void inorder();
|
public void inorder();
|
||||||
|
|
||||||
/** Postorder traversal from the root */
|
/** Postorder traversal from the root */
|
||||||
public void postorder();
|
public void postOrder();
|
||||||
|
|
||||||
/** Preorder traversal from the root */
|
/** Preorder traversal from the root */
|
||||||
public void preorder();
|
public void preorder();
|
||||||
|
|||||||
Reference in New Issue
Block a user