Example #1
0
    /// <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);
    }
Example #2
0
    /// <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);
    }
Example #3
0
    /// <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);
        }
    }
Example #4
0
    /// <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;
        }
    }
Example #5
0
 /// <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));
 }