Merge branch 'develop' into issue38_irregular_key_event_packets

# Conflicts:
#	src/main/java/seng302/gameServer/GameState.java
#	src/main/java/seng302/gameServer/ServerPacketParser.java
#	src/main/java/seng302/gameServer/ServerToClientThread.java
#	src/main/java/seng302/visualiser/ClientToServerThread.java
#	src/main/java/seng302/visualiser/GameClient.java
This commit is contained in:
Calum
2017-08-13 18:44:34 +12:00
25 changed files with 951 additions and 452 deletions
@@ -5,8 +5,12 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
import seng302.gameServer.server.messages.BoatAction;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import seng302.gameServer.server.messages.BoatActionType;
import seng302.model.Player;
import seng302.model.Yacht;
import seng302.model.mark.MarkOrder;
/**
* A Static class to hold information about the current state of the game (model)
@@ -14,7 +18,10 @@ import seng302.model.Yacht;
*/
public class GameState implements Runnable {
private Logger logger = LoggerFactory.getLogger(MarkOrder.class);
private static Integer STATE_UPDATES_PER_SECOND = 60;
public static Integer MAX_PLAYERS = 8;
private static Long previousUpdateTime;
public static Double windDirection;
@@ -25,6 +32,7 @@ public class GameState implements Runnable {
private static Map<Integer, Yacht> yachts;
private static Boolean isRaceStarted;
private static GameStages currentStage;
private static MarkOrder markOrder;
private static long startTime;
private static Map<Player, String> playerStringMap = new HashMap<>();
@@ -51,8 +59,10 @@ public class GameState implements Runnable {
isRaceStarted = false;
//set this when game stage changes to prerace
previousUpdateTime = System.currentTimeMillis();
yachts = new HashMap<>();
markOrder = new MarkOrder(); //This could be instantiated at some point with a select map?
new Thread(this).start();
new Thread(this).start(); //Run the auto updates on the game state
}
public static String getHostIpAddress() {
@@ -99,6 +109,10 @@ public class GameState implements Runnable {
GameState.currentStage = currentStage;
}
public static MarkOrder getMarkOrder() {
return markOrder;
}
public static long getStartTime(){
return startTime;
}