void client_PlayerPublicChatSendEvent(object sender, PlayerPublicChatSendEventArgs arg) { PDPublicChat pd = new PDPublicChat(arg.ThisPlayer.PlayerID, arg.ThisPlayer.Login, arg.Message); foreach (var item in m_clients) { try { item.Value.SocketClient.sendPacket(pd); } catch (System.Exception ex) { #if DEBUG System.Console.WriteLine(ex.StackTrace); #endif } } }
public void StartPanel_ChatClicked(object sender, EventArgs arg) { PublicChatEvent larg = arg as PublicChatEvent; PDPublicChat pd = new PDPublicChat((uint)MainForm.GetInstance().LocalPlayer.Id, MainForm.GetInstance().LocalPlayer.Login, larg.message); MainForm.GetInstance().SudokuClient.sendPacket(pd); }
public static PD createPd(byte[] data) { int pdType = 0x000000FF & (int)data[0]; E_PD_TYPE pdTypeEnum = (E_PD_TYPE)pdType; PD pd = null; MemoryStream ms = new MemoryStream(data); BinaryReader br = new BinaryReader(ms); switch (pdTypeEnum) { case E_PD_TYPE.AUTHENTIFICATION_RESP: pd = new PDAuthentificationResp(); pd.unmarshal(br); break; case E_PD_TYPE.AUTHENTIFICATION: pd = new PDAuthentification(); pd.unmarshal(br); break; case E_PD_TYPE.DELETEPLAYER: pd = new PDDeletePlayer(); pd.unmarshal(br); break; case E_PD_TYPE.DELETETABLE: pd = new PDDeleteTable(); pd.unmarshal(br); break; case E_PD_TYPE.INSERTPLAYER: pd = new PDInsertPlayer(); pd.unmarshal(br); break; case E_PD_TYPE.INSERTTABLE: pd = new PDInsertTable(); pd.unmarshal(br); break; case E_PD_TYPE.UPDATEPPLAYERSTATE: pd = new PDUpdatePlayerState(); pd.unmarshal(br); break; case E_PD_TYPE.UPDATETABLESTATE: pd = new PDUpdateTableState(); pd.unmarshal(br); break; case E_PD_TYPE.UPDATECELL: pd = new PDUpdateCell(); pd.unmarshal(br); break; case E_PD_TYPE.UPDATECELLREQUEST: pd = new PDUpdateCellRequest(); pd.unmarshal(br); break; case E_PD_TYPE.UPDATEPPLAYERTABLESTATE: pd = new PDUpdatePlayerTableState(); pd.unmarshal(br); break; case E_PD_TYPE.PUBLICCHAT: pd = new PDPublicChat(); pd.unmarshal(br); break; case E_PD_TYPE.PRIVATECHAT: pd = new PDPrivateChat(); pd.unmarshal(br); break; case E_PD_TYPE.NEWTABLE: pd = new PDNewTable(); pd.unmarshal(br); break; case E_PD_TYPE.JOINTABLE: pd = new PDJoinTable(); pd.unmarshal(br); break; case E_PD_TYPE.JOINTABLERESPONSE: pd = new PDJoinTableResponse(); pd.unmarshal(br); break; case E_PD_TYPE.EXITTABLE: pd = new PDExitTable(); pd.unmarshal(br); break; case E_PD_TYPE.STARTTABLEGAME: pd = new PDStartTableGame(); pd.unmarshal(br); break; case E_PD_TYPE.GAMEFINISH: pd = new PDGameFinish(); pd.unmarshal(br); break; case E_PD_TYPE.LISTOFPLAYERREQUEST: pd = new PDListOfPlayerRequest(); pd.unmarshal(br); break; case E_PD_TYPE.LISTOFTABLEREQUEST: pd = new PDListOfPlayerRequest(); pd.unmarshal(br); break; case E_PD_TYPE.ERROR: pd = new PDError(); pd.unmarshal(br); break; } br.Close(); return pd; }
private void PlayerPublicChatReceived(PDPublicChat pdReceived) { #if DEBUG Console.WriteLine("PlayerPublicChatReceived " + m_player.Login + ":" + pdReceived.Msg); #endif if (PlayerPublicChatSendEvent != null) { PlayerPublicChatSendEvent(this, new PlayerPublicChatSendEventArgs(m_player, pdReceived.Msg)); } }