diff --git a/src/server/ServerGame.java b/src/server/ServerGame.java index 9c8d9a1..906c182 100644 --- a/src/server/ServerGame.java +++ b/src/server/ServerGame.java @@ -3,7 +3,6 @@ import java.io.DataInputStream; import java.io.DataOutputStream; import java.io.IOException; -import java.io.InputStream; import java.net.ServerSocket; import java.net.Socket; import java.util.ArrayList; @@ -68,7 +67,9 @@ System.out.println("Initalizing game..."); init(); System.out.println("Sending game to clients"); - sendToAll(MOVE_UPDATE, toJson().toString()); + String msg = toJson().toString(); + sendToAll(MOVE_UPDATE, msg); + addToHistory(msg); } @Override @@ -79,6 +80,8 @@ movesLeft = -1; createPlayers(); currentPlayer = 0; + createDeck(); + createTrash(); // shuffleCards(); // TODO use this instead of addCards() addCards(); dealCards(); @@ -151,14 +154,12 @@ // resetMoveValues(); // } - protected void receive(Socket socket) { - DataInputStream inStream = null; + protected void receive(DataInputStream inStream) { byte[] magic = new byte[4]; byte proto = 0; byte msgType = 0; byte[] useless = new byte[2]; try { - inStream = new DataInputStream(socket.getInputStream()); inStream.read(magic); proto = inStream.readByte(); msgType = inStream.readByte(); @@ -302,12 +303,6 @@ //FIXME no endless do-while... private void addCards() { cards = new ArrayList<>(); - deck = new Card[COLORS][5]; - deckCounter = new int[5]; - for (int i = 0; i < 5; ++i) { - deckCounter[i] = 0; - } - trash = new ArrayList<>(); int[] dist = new int[] { 3, 2, 2, 2, 1 }; int[][] tmp_cards = new int[][] { dist.clone(), dist.clone(), dist.clone(), dist.clone(), dist.clone() }; for (int i = 0; i < N_CARDS; ++i) { @@ -422,11 +417,6 @@ flashs++; } - @Override - protected void createUI() { - // TODO Auto-generated method stub - } - /** * Stores the current state of the game in the history * @@ -439,15 +429,10 @@ protected JSONObject toJson(){ JSONObject root = new JSONObject(); - root.put("movesLeft", movesLeft); root.put("cardsInDeck", cardsInDeck); root.put("hints", hints); root.put("flashs", flashs); root.put("movesLeft", movesLeft); - root.put("movesLeft", movesLeft); - root.put("movesLeft", movesLeft); - root.put("movesLeft", movesLeft); - root.put("movesLeft", movesLeft); JSONArray trashArray = new JSONArray(); for(Card c : trash){ trashArray.put(c.toJson()); @@ -458,10 +443,19 @@ for(int i=0; i(); } + + @Override + protected void createTrash() { + trash = new ArrayList<>(); + } }