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