public void timerDing() { if (clientState == state.connectToServer) { client = new ClientSocket(serverPort, 2, clientPort, clientIP, serverIP); clientState = state.getNewPort; } if (clientState == state.getNewPort) { byte[] storage = null; storage = client.pollAndReceiveData(client.Server, 2); if (storage.Count() > 2) { sendAcknowledgement(); string tempString = GetString(storage); currGameState = Newtonsoft.Json.JsonConvert.DeserializeObject<gameState>(tempString); serverPort = currGameState._serverPort; myPlayerNum = currGameState._myPlayerNum; numOfPlayers = currGameState._numOfPlayers; numOfPlayersConnected = currGameState._numOfPlayersConnected; playerNames = currGameState._playerNames; beginGame = currGameState._beginGame; initializeDisplay(); client.stop(); Thread.Sleep(100); client = new ClientSocket(serverPort, 2, clientPort, clientIP, serverIP); storage = GetBytes(myName); client.sendData(storage); if (beginGame) { clientState = state.beginGame; } else { clientState = state.waitForOthers; } } } if (clientState == state.waitForOthers) { myDisplay.Prompt.Content = "Waiting on " + (numOfPlayers - numOfPlayersConnected) + " more players..."; byte[] storage = null; storage = client.pollAndReceiveData(client.Server, 2); if (storage.Count() > 2) { sendAcknowledgement(); string tempString = GetString(storage); currGameState = Newtonsoft.Json.JsonConvert.DeserializeObject<gameState>(tempString); numOfPlayersConnected = currGameState._numOfPlayersConnected; playerNames = currGameState._playerNames; beginGame = currGameState._beginGame; } if (beginGame) { clientState = state.beginGame; } } if (clientState == state.beginGame) { byte[] storage = null; storage = client.pollAndReceiveData(client.Server, 2); if (storage.Count() > 2) { sendAcknowledgement(); string tempString = GetString(storage); currGameState = Newtonsoft.Json.JsonConvert.DeserializeObject<gameState>(tempString); AllHands = currGameState._AllHands; AllTableMoney = currGameState._AllTableMoney; AllTableProperties = currGameState._AllTableProperties; myDisplay.button1.Content = currGameState._button1Text; myDisplay.button1.Visibility = currGameState._button1Visibility; myDisplay.button2.Content = currGameState._button2Text; myDisplay.button2.Visibility = currGameState._button2Visibility; myDisplay.button3.Content = currGameState._button3Text; myDisplay.button3.Visibility = currGameState._button3Visibility; myDisplay.buttonBack.Content = currGameState._buttonBackText; myDisplay.buttonBack.Visibility = currGameState._buttonBackVisibility; myDisplay.Prompt.Content = currGameState._individualPrompt; myDisplay.universalPrompt.Text += currGameState._newUniversalPrompt; numCardsInDeck = currGameState._numCardsInDeck; playNum = currGameState._playNum; playerNum = currGameState._playerNum; playerNames = currGameState._playerNames; showFullDisplay(); clientState = state.transmit; } } if (clientState == state.transmit) { byte[] storage = null; storage = client.pollAndReceiveData(client.Server, 2); if (storage.Count() > 2) { sendAcknowledgement(); string tempString = GetString(storage); currGameState = Newtonsoft.Json.JsonConvert.DeserializeObject<gameState>(tempString); AllHands = currGameState._AllHands; AllTableMoney = currGameState._AllTableMoney; AllTableProperties = currGameState._AllTableProperties; myDisplay.button1.Content = currGameState._button1Text; myDisplay.button1.Visibility = currGameState._button1Visibility; myDisplay.button2.Content = currGameState._button2Text; myDisplay.button2.Visibility = currGameState._button2Visibility; myDisplay.button3.Content = currGameState._button3Text; myDisplay.button3.Visibility = currGameState._button3Visibility; myDisplay.buttonBack.Content = currGameState._buttonBackText; myDisplay.buttonBack.Visibility = currGameState._buttonBackVisibility; myDisplay.Prompt.Content = currGameState._individualPrompt; myDisplay.universalPrompt.Text += currGameState._newUniversalPrompt; numCardsInDeck = currGameState._numCardsInDeck; playNum = currGameState._playNum; playerNum = currGameState._playerNum; playerNames = currGameState._playerNames; showTable(currGameState._updateCards); } } aTimer.Enabled = true; }
public void timerDing() { if (clientState == state.connectToServer) { client = new ClientSocket(serverPort, 2, clientPort, clientIP, serverIP); clientState = state.getNewPort; } if (clientState == state.getNewPort) { byte[] storage = null; storage = client.pollAndReceiveData(client.Server, 2); if (storage.Count() > 2) { //sendAcknowledgement(); string tempString = GetString(storage); currGameState = Newtonsoft.Json.JsonConvert.DeserializeObject<gameState>(tempString); serverPort = currGameState._serverPort; myPlayerNum = currGameState._myPlayerNum; numOfPlayers = currGameState._numOfPlayers; numOfPlayersConnected = currGameState._numOfPlayersConnected; playerNames = currGameState._playerNames; beginGame = currGameState._beginGame; initializeDisplay(); client.stop(); Thread.Sleep(100); client = new ClientSocket(serverPort, 2, clientPort, clientIP, serverIP); storage = GetBytes(myName); client.sendData(storage); if (beginGame) { clientState = state.beginGame; } else { clientState = state.waitForOthers; } } } if (clientState == state.waitForOthers) { myDisplay.Prompt.Content = "Waiting on " + (numOfPlayers - numOfPlayersConnected) + " more players..."; byte[] storage = null; storage = client.pollAndReceiveData(client.Server, 2); if (storage.Count() > 2) { //sendAcknowledgement(); string tempString = GetString(storage); currGameState = Newtonsoft.Json.JsonConvert.DeserializeObject<gameState>(tempString); numOfPlayersConnected = currGameState._numOfPlayersConnected; playerNames = currGameState._playerNames; beginGame = currGameState._beginGame; } if (beginGame) { clientState = state.beginGame; } } if (clientState == state.beginGame) { byte[] storage = null; storage = client.pollAndReceiveData(client.Server, 2); if (storage.Count() > 2) { //sendAcknowledgement(); string tempString = GetString(storage); currGameState = Newtonsoft.Json.JsonConvert.DeserializeObject<gameState>(tempString); AllHands = currGameState._AllHands; AllTableMoney = currGameState._AllTableMoney; AllTableProperties = currGameState._AllTableProperties; myDisplay.button1.Content = currGameState._button1Text; myDisplay.button1.Visibility = currGameState._button1Visibility; myDisplay.button2.Content = currGameState._button2Text; myDisplay.button2.Visibility = currGameState._button2Visibility; myDisplay.button3.Content = currGameState._button3Text; myDisplay.button3.Visibility = currGameState._button3Visibility; myDisplay.buttonBack.Content = currGameState._buttonBackText; myDisplay.buttonBack.Visibility = currGameState._buttonBackVisibility; myDisplay.Prompt.Content = currGameState._individualPrompt; myDisplay.universalPrompt.Text += currGameState._newUniversalPrompt; numCardsInDeck = currGameState._numCardsInDeck; playNum = currGameState._playNum; playerNum = currGameState._playerNum; playerNames = currGameState._playerNames; showFullDisplay(); clientState = state.transmit; } } if (clientState == state.transmit) { byte[] storage = null; storage = client.pollAndReceiveData(client.Server, 2); if (storage.Count() > 2) { //sendAcknowledgement(); string tempString = GetString(storage); currGameState = Newtonsoft.Json.JsonConvert.DeserializeObject<gameState>(tempString); if (currGameState._messageNumber > messageNum) { messageNum = currGameState._messageNumber; eventHappened = false; clearEvents(); AllHands = currGameState._AllHands; AllTableMoney = currGameState._AllTableMoney; AllTableProperties = currGameState._AllTableProperties; myDisplay.button1.Content = currGameState._button1Text; myDisplay.button1.Visibility = currGameState._button1Visibility; myDisplay.button2.Content = currGameState._button2Text; myDisplay.button2.Visibility = currGameState._button2Visibility; myDisplay.button3.Content = currGameState._button3Text; myDisplay.button3.Visibility = currGameState._button3Visibility; myDisplay.buttonBack.Content = currGameState._buttonBackText; myDisplay.buttonBack.Visibility = currGameState._buttonBackVisibility; myDisplay.Prompt.Content = currGameState._individualPrompt; myDisplay.universalPrompt.Text = currGameState._newUniversalPrompt; numCardsInDeck = currGameState._numCardsInDeck; playNum = currGameState._playNum; playerNum = currGameState._playerNum; playerNames = currGameState._playerNames; string bob = currGameState._stage; stage = currGameState._turnStage; //Other player needs to choose cards if ((stage == turnStage.acknowledgeAttack1) || (stage == turnStage.acknowledgeAttack2)) { if (playerNum == myPlayerNum) { allowEvents = false; } else { allowEvents = true; } } else //Playernum needs to choose cards { if (playerNum == myPlayerNum) { allowEvents = true; } else { allowEvents = false; } } showTable(currGameState._updateCards); } else if(eventHappened) { TimeSpan duration = DateTime.Now - lastSend; if (duration.Milliseconds > 5000) { resendClientEvent(); lastSend = DateTime.Now; } } } } aTimer.Enabled = true; }