/// <summary> /// <para>name : CheckIgnoreText</para> /// <para>parameter : string</para> /// <para>return : string</para> /// <para>describe : Return (string)text, if contains ignore word - change null.</para> /// </summary> public bool CheckIgnoreText(string text) { UIMessage errorMessage = new UIMessage(); string[] ignoreList = { "{", "}", "\\" }; for (int i = 0; i < ignoreList.Length; i++) { if (text.Contains(ignoreList[i])) { errorMessage.type = SendMessageType.Type_ErrorMessage; errorMessage.message = MagiStringUtil.GetString(10005028); if (ClientDataManager.Instance.SelectSceneMode.Equals(ClientDataManager.SceneMode.Lobby)) { LobbySceneScriptManager.Instance.m_ChatEvent.AddUserMessage(errorMessage); } else if (ClientDataManager.Instance.SelectSceneMode.Equals(ClientDataManager.SceneMode.Dungeon)) { DungeonSceneScriptManager.Instance.m_ChatEvent.AddUserMessage(errorMessage); } return(true); } } return(false); }
/// <summary> /// <para>name : GetItemNameText</para> /// <para>parameter : int</para> /// <para>return : string</para> /// <para>describe : Return (string)item name text from (int)parameter type.</para> /// </summary> public string GetItemNameText(int itemID) { CharacterTableManager.CTable characterTable; ItemTableManager.STable itemTable; string itemName = ""; if (CharacterTableManager.Instance.FindTable(itemID, out characterTable)) { itemName = MagiStringUtil.GetReplaceString(10005029, "#@Star@#", characterTable.grade.ToString(), "#@Name@#", MagiStringUtil.GetString(characterTable.destString)); } else if (ItemTableManager.Instance.FindTable(itemID, out itemTable)) { itemName = MagiStringUtil.GetReplaceString(10005029, "#@Star@#", itemTable.grade.ToString(), "#@Name@#", MagiStringUtil.GetString(itemTable.descString)); } return(itemName); }
/// <summary> /// <para>name : CheckErrorCode</para> /// <para>parameter : int</para> /// <para>return : bool</para> /// <para>describe : Check error code - (int)parameter.</para> /// </summary> bool CheckErrorCode(int errorCode) { UIMessage uiMessage = new UIMessage(); uiMessage.type = SendMessageType.Type_None; SendMessageErrorType errorType = (SendMessageErrorType)errorCode; switch (errorType) { case SendMessageErrorType.RES_NOT_LOGIN: return(false); case SendMessageErrorType.RES_ROOM_NO_ERROR: uiMessage.message = MagiStringUtil.GetString(10005003); AddErrorMessage(uiMessage); return(false); case SendMessageErrorType.RES_ROOM_FULL: uiMessage.message = MagiStringUtil.GetString(10005004); AddErrorMessage(uiMessage); return(false); case SendMessageErrorType.RES_MSG_REPEAT: uiMessage.message = MagiStringUtil.GetString(10005005); AddErrorMessage(uiMessage); return(false); case SendMessageErrorType.RES_NOT_EXIST_MSG: case SendMessageErrorType.RES_NOT_EXIST_NICK: case SendMessageErrorType.RES_NOT_EXIST_ACCID: case SendMessageErrorType.RES_NOT_EXIST_FROM: case SendMessageErrorType.RES_NOT_EXIST_WHAT: case SendMessageErrorType.RES_FAIL: return(false); case SendMessageErrorType.RES_SESSION_CHECK_FAIL: uiMessage.message = MagiStringUtil.GetString(10005027); AddErrorMessage(uiMessage); CloseSocket(); return(false); case SendMessageErrorType.RES_CONNECT_RETRY: uiMessage.message = MagiStringUtil.GetString(10005025); AddErrorMessage(uiMessage); return(false); case SendMessageErrorType.RES_RECEIVE_RETRY: uiMessage.message = MagiStringUtil.GetString(10005026); AddErrorMessage(uiMessage); return(false); case SendMessageErrorType.RES_SEND_RETRY: uiMessage.message = MagiStringUtil.GetString(10005027); AddErrorMessage(uiMessage); return(false); default: return(true); } }
/// <summary> /// <para>name : ShowMessage</para> /// <para>parameter : Hashtable</para> /// <para>return : void</para> /// <para>describe : Parsing (Hashtable)parameter and show message.</para> /// </summary> void ShowMessage(Hashtable resultHash) { int pno = 0; if (resultHash.ContainsKey("pno")) { int.TryParse(resultHash["pno"].ToString(), out pno); } SendMessageType messageType = (SendMessageType)pno; switch (messageType) { case SendMessageType.Type_UserConnect: case SendMessageType.Type_ChangeChannel: { if (resultHash.ContainsKey("roomNo")) { int.TryParse(resultHash["roomNo"].ToString(), out channel); switch (ClientDataManager.Instance.SelectSceneMode) { case ClientDataManager.SceneMode.Lobby: if (LobbySceneScriptManager.Instance == null) { break; } if (LobbySceneScriptManager.Instance.m_ChatEvent != null) { LobbySceneScriptManager.Instance.m_ChatEvent.ChangeChannel(channel); } break; case ClientDataManager.SceneMode.Dungeon: if (DungeonSceneScriptManager.Instance == null) { break; } if (DungeonSceneScriptManager.Instance.m_ChatEvent != null) { DungeonSceneScriptManager.Instance.m_ChatEvent.ChangeChannel(channel); } break; } } } break; case SendMessageType.Type_GetMessage: { string szMessage = ""; string nickName = ""; if (resultHash.ContainsKey("Msg")) { szMessage = resultHash["Msg"].ToString(); } if (resultHash.ContainsKey("Nickname")) { nickName = resultHash["Nickname"].ToString(); } UIMessage uiMessage = new UIMessage(); uiMessage.type = messageType; uiMessage.message = MagiStringUtil.GetReplaceString(nickName.Equals(ClientDataManager.Instance.OwnName) ? 10005006 : 10005007, "#@Name@#", nickName, "#@Message@#", MagiUtil.MessageCutByte(szMessage, 80)); switch (ClientDataManager.Instance.SelectSceneMode) { case ClientDataManager.SceneMode.Lobby: if (LobbySceneScriptManager.Instance == null) { break; } if (LobbySceneScriptManager.Instance.m_ChatEvent != null) { LobbySceneScriptManager.Instance.m_ChatEvent.AddUserMessage(uiMessage); } else { AddMessage(uiMessage); } if (LobbySceneScriptManager.Instance.m_LobbyEvent != null && LobbySceneScriptManager.Instance.m_LobbyEvent.GetLobbyMenuFrame != null) { uiMessage.message = MagiStringUtil.GetReplaceString(nickName.Equals(ClientDataManager.Instance.OwnName) ? 10005006 : 10005007, "#@Name@#", nickName, "#@Message@#", MagiUtil.MessageCutByte(szMessage, 35)); LobbySceneScriptManager.Instance.m_LobbyEvent.GetLobbyMenuFrame.UpdateLobbyChat(uiMessage); } break; case ClientDataManager.SceneMode.Dungeon: if (DungeonSceneScriptManager.Instance == null) { break; } if (DungeonSceneScriptManager.Instance.m_ChatEvent != null) { DungeonSceneScriptManager.Instance.m_ChatEvent.AddUserMessage(uiMessage); } else { AddMessage(uiMessage); } if (DungeonSceneScriptManager.Instance.m_DungeonPlayEvent != null) { uiMessage.message = MagiStringUtil.GetReplaceString(nickName.Equals(ClientDataManager.Instance.OwnName) ? 10005006 : 10005007, "#@Name@#", nickName, "#@Message@#", MagiUtil.MessageCutByte(szMessage, 25)); DungeonSceneScriptManager.Instance.m_DungeonPlayEvent.UpdateInGameChat(uiMessage); } break; default: AddMessage(uiMessage); break; } } break; case SendMessageType.Type_GetItemMessage: { int from = 0; int what = 0; string nickName = ""; if (resultHash.ContainsKey("From")) { int.TryParse(resultHash["From"].ToString(), out from); } if (resultHash.ContainsKey("What")) { int.TryParse(resultHash["What"].ToString(), out what); } if (resultHash.ContainsKey("Nickname")) { nickName = resultHash["Nickname"].ToString(); } UIMessage uiMessage = new UIMessage(); uiMessage.type = messageType; uiMessage.message = MagiStringUtil.GetReplaceString(10005010, "#@Name@#", nickName, "#@Where@#", GetFromTypeText(from), "#@ItemName@#", GetItemNameText(what)); switch (ClientDataManager.Instance.SelectSceneMode) { case ClientDataManager.SceneMode.Lobby: if (LobbySceneScriptManager.Instance == null) { break; } if (LobbySceneScriptManager.Instance.m_ChatEvent != null) { LobbySceneScriptManager.Instance.m_ChatEvent.AddMessage(uiMessage); } else { AddMessage(uiMessage); } break; case ClientDataManager.SceneMode.Dungeon: if (DungeonSceneScriptManager.Instance == null) { break; } if (DungeonSceneScriptManager.Instance.m_ChatEvent != null) { DungeonSceneScriptManager.Instance.m_ChatEvent.AddMessage(uiMessage); } else { AddMessage(uiMessage); } break; default: AddMessage(uiMessage); break; } } break; case SendMessageType.Type_GetNoticeMessage: { string szMessage = ""; if (resultHash.ContainsKey("Msg")) { szMessage = resultHash["Msg"].ToString(); } UIMessage uiMessage = new UIMessage(); uiMessage.type = messageType; uiMessage.message = MagiStringUtil.GetReplaceString(10005009, "#@Message@#", MagiUtil.MessageCutByte(szMessage, 80)); switch (ClientDataManager.Instance.SelectSceneMode) { case ClientDataManager.SceneMode.Lobby: if (LobbySceneScriptManager.Instance == null) { break; } if (LobbySceneScriptManager.Instance.m_ChatEvent != null) { LobbySceneScriptManager.Instance.m_ChatEvent.AddUserMessage(uiMessage); } else { AddMessage(uiMessage); } if (LobbySceneScriptManager.Instance.m_LobbyEvent != null && LobbySceneScriptManager.Instance.m_LobbyEvent.GetLobbyMenuFrame != null) { uiMessage.message = MagiStringUtil.GetReplaceString(10005009, "#@Message@#", MagiUtil.MessageCutByte(szMessage, 35)); LobbySceneScriptManager.Instance.m_LobbyEvent.GetLobbyMenuFrame.UpdateLobbyChat(uiMessage); } break; case ClientDataManager.SceneMode.Dungeon: if (DungeonSceneScriptManager.Instance == null) { break; } if (DungeonSceneScriptManager.Instance.m_ChatEvent != null) { DungeonSceneScriptManager.Instance.m_ChatEvent.AddUserMessage(uiMessage); } else { AddMessage(uiMessage); } if (DungeonSceneScriptManager.Instance.m_DungeonPlayEvent != null) { uiMessage.message = MagiStringUtil.GetReplaceString(10005009, "#@Message@#", MagiUtil.MessageCutByte(szMessage, 25)); DungeonSceneScriptManager.Instance.m_DungeonPlayEvent.UpdateInGameChat(uiMessage); } break; default: AddMessage(uiMessage); break; } } break; } }
/// <summary> /// <para>name : GetFromTypeText</para> /// <para>parameter : int</para> /// <para>return : string</para> /// <para>describe : Return (string)text from (int)parameter type.</para> /// </summary> public string GetFromTypeText(int type) { return(MagiStringUtil.GetString(type + 10005011)); }