public void Heartbeat() { // Package HeartbeatMsg HeartbeatMsg heartbeatMsg = new HeartbeatMsg(); heartbeatMsg.GameFrameNum = _gameFrameNum; if (_dPadMsgFromClient.Count > 0) { ControlManager.DPadInfo dPadMsg = _dPadMsgFromClient[_dPadMsgFromClient.Count - 1]; if (dPadMsg != null) { heartbeatMsg.HasDpadMsg = true; dPadMsg.FrameNum = _gameFrameNum; heartbeatMsg.DPadMsgList.Add(dPadMsg); } //foreach (ControlManager.DPadInfo dPadMsg in _dPadMsgFromClient) //{ // dPadMsg.FrameNum = _gameFrameNum; // heartbeatMsg.DPadMsgList.Add(dPadMsg); //} _dPadMsgFromClient.Clear(); } // Send HeartbeatMsg SendHeartbeatMsgToClient(heartbeatMsg); _gameFrameNum++; }
private void SendHeartbeatMsgToClient(HeartbeatMsg heartbeatMsg) { // Send to Client // .. // Assume Client receive msg immediately ControlManager.GetInstance().ReceiveHeartbeatMsgFromServer(heartbeatMsg); }