public void SystemGuildSend(ChatType chatType, string content)
        {
            string guildID = string.Empty;

            if (chatType == ChatType.Whisper)
            {
                return;
            }
            if (!string.IsNullOrEmpty(_user.MercenariesID))
            {
                guildID = _user.MercenariesID;
            }
            var chat = new ChatData
            {
                Version      = NextVersion,
                FromUserID   = LanguageManager.GetLang().SystemUserId,
                FromUserName = LanguageManager.GetLang().KingName,
                FromUserVip  = 0,
                ToUserID     = 0,
                ToUserName   = string.Empty,
                ToUserVip    = 0,
                ChatType     = chatType,
                Content      = content,
                SendDate     = DateTime.Now,
                GuildID      = guildID
            };

            Send(chat);
        }
    void DoOpen()
    {
        if (socket == null)
        {
            socket = IO.Socket(serverURL);
            socket.On(Socket.EVENT_CONNECT, () => {
                lock (chatLog)
                {
                    // Access to Unity UI is not allowed in a background thread, so let's put into a shared variable
                    chatLog.Add("Socket.IO connected.");
                }
            });
            socket.On("chat", (data) => {
                string str = data.ToString();

                ChatData chat     = JsonConvert.DeserializeObject <ChatData>(str);
                string strChatLog = "user#" + chat.id + ": " + chat.msg;

                // Access to Unity UI is not allowed in a background thread, so let's put into a shared variable
                lock (chatLog)
                {
                    chatLog.Add(strChatLog);
                }
            });
        }
    }
Exemple #3
0
 /// <summary>
 /// 初始化初值
 /// </summary>
 public override void initDefault()
 {
     this.showData = new RoleSimpleShowData();
     this.showData.initDefault();
     this.chatData = new ChatData();
     this.chatData.initDefault();
 }
    private void OnChat(ChatData data)
    {
        // Parse the chat message into an array of strings and look for a "/gravity" command
        var cmds = data.Message.Split(new Char[] { ' ' });

        if (cmds[0] == "/gravity")
        {
            if (cmds.Length > 1)
            {
                // Attempt to interpret the text after the command as a number
                float value;
                if (float.TryParse(cmds[1], out value))
                {
                    ScenePrivate.Chat.MessageAllUsers("Attempting to set gravity to: " + value);
                    ScenePrivate.SetGravity(value);  // Assign the scene's gravity to the number
                }
                // Otherwise reset the scene to default gravity if specified
                else if (cmds[1] == "default")
                {
                    ScenePrivate.Chat.MessageAllUsers("Setting gravity back to default.");
                    ScenePrivate.SetGravity(ScenePrivate.DefaultGravity);
                }
            }
            // If no additional parameter was specified, print out the scene's current gravity
            else
            {
                ScenePrivate.Chat.MessageAllUsers("Gravity is set to: " + ScenePrivate.GetGravity());
            }
        }
    }
Exemple #5
0
        private static void APIConnection_OutputData(object sender, OutputEventArgs e)
        {
            if (e.Data == null)
            {
                return;
            }

            if (e.Data.IndexOf(chatTag) == 0)
            {
                ChatData?.Invoke(sender, new OutputEventArgs(e.Data.Substring(chatTag.Length)));
            }
            else if (e.Data.IndexOf(srvDataTagPlayer) == 0)
            {
                String             result = e.Data.Substring(srvDataTagPlayer.Length);
                PlayerActivityEnum act    = PlayerActivityEnum.Join;

                if (Regex.Match(result, "[A-Za-z0-9\\-]+" + srvPlayerJoin).Success)
                {
                    act    = PlayerActivityEnum.Join;
                    result = result.Remove(result.Length - srvPlayerJoin.Length, srvPlayerJoin.Length);
                }
                if (Regex.Match(result, "[A-Za-z0-9\\-]+" + srvPlayerLeave).Success)
                {
                    act    = PlayerActivityEnum.Leave;
                    result = result.Remove(result.Length - srvPlayerLeave.Length, srvPlayerLeave.Length);
                }

                PlayerData?.Invoke(sender, new PlayerEventArgs(result, act));
            }


            ConsoleData?.Invoke(sender, e);
        }
        public void SelectChannel(string channelName, MessageReceiver channelType)
        {
            Channel newSelected;

            if (channelType == MessageReceiver.Channel)
            {
                newSelected = ChatData.GetInstance().Channels.Where(channel => channel.Name == channelName).First();
            }
            else if (channelType == MessageReceiver.User)
            {
                newSelected = ChatData.GetInstance().Users.Where(channel => channel.Name == channelName).First();
            }
            else
            {
                throw new Exception($"Unknown MessageType: {channelType}");
            }
            SetSelectedChannel(newSelected);

            ChannelType.Text   = newSelected.ChannelType.ToString();
            TargetChannel.Text = newSelected.Name;

            bool isTargetChannelFrozen = newSelected.ChannelType == MessageReceiver.User;

            TargetChannel.IsReadOnly = isTargetChannelFrozen;

            selected = newSelected;
        }
Exemple #7
0
    private void updateUserChatData(ChatData chatData)
    {
        var user = Client.UserData;

        _databaseRef.Child(DB_NODE_USERS).Child(user.Id).Child("ChatCount").SetValueAsync(++user.ChatCount);
        _databaseRef.Child(DB_NODE_USERS).Child(user.Id).Child("ActiveChats").Child(chatData.Uuid).SetValueAsync(chatData.ChatName);
    }
    void DoOpen()
    {
        if (socket == null)
        {
            string URL = "ws://" + SettingStat.ServerURL;
            Quobject.SocketIoClientDotNet.Client.IO.Options OPT = new Quobject.SocketIoClientDotNet.Client.IO.Options();
            //OPT.Reconnection = true;
            //OPT.ForceNew = false;
            //OPT.AutoConnect = true;
            //OPT.Timeout = 3000;
            OPT.Transports   = ImmutableList.Create(new string[] { WebSocket.NAME, Polling.NAME });
            OPT.Reconnection = true;

            socket = IO.Socket(URL, OPT);
            socket.On(Socket.EVENT_CONNECT, () => {
                Debug.Log("Socket connected");
            });
            socket.On("chat", (data) => {
                string str = data.ToString();

                ChatData chat     = JsonConvert.DeserializeObject <ChatData>(str);
                string strChatLog = chat.msg;  //receive the signal from server which is triggered by localhost3000

                order = strChatLog;
            });
            socket.On(Socket.EVENT_DISCONNECT, () => {
                Debug.Log("user PC disconnected");
            });
        }
    }
Exemple #9
0
        private void OnChat(ChatData data)
        {
            AgentPrivate agent = ScenePrivate.FindAgent(data.SourceId);

            string[] argv = data.Message.Split(' ');

            if (agent == null)
            {
                return;
            }

            if (argv[0] == "/register")
            {
                RegisterSG(agent, true);
            }
            else if (argv[0] == "/deregister")
            {
                RegisterSG(agent, false);
            }
            else if (argv[0] == "/dial")
            {
                if (argv.Length < 2)
                {
                    ScenePrivate.Chat.MessageAllUsers("Error - need a valid address.");
                    return;
                }
                Dial(argv[1]);
            }
            else if (argv[0] == "/disconnect")
            {
                Disconnect();
            }
        }
Exemple #10
0
        public void SaveChatData(List <BaseNode> nodes, Texture BG, int chatID, string describe)
        {
            //bool needAdd = true;
            string bgName = string.Empty;

            if (BG != null)
            {
                bgName = BG.name + ".png";
            }
            ChatData chatData = GetChatDataByNodes(nodes, bgName, chatID);

            if (chatGroup.m_chats.ContainsKey(chatID))
            {
                chatGroup.m_chats[chatID] = chatData;
            }
            else
            {
                chatGroup.m_chats.Add(chatID, chatData);
            }

            string chatContent = fastJSON.JSON.ToJSON(chatGroup);

            CreateJson(PATH, chatContent);

            string editorbgName = string.Empty;

            if (BG != null)
            {
                editorbgName = UnityEditor.AssetDatabase.GetAssetPath(BG);
            }
            SaveEditorChatData(nodes, editorbgName, chatID, describe);
        }
    private void onChat(ChatData data)
    {
        var cmds = data.Message.Split(new Char[] { ' ' });

        if (DebugLogging)
        {
            Log.Write("Chat command " + cmds[0]);
        }

        AgentPrivate agent  = ScenePrivate.FindAgent(data.SourceId);
        string       handle = agent.AgentInfo.Handle.ToLower();

        if (handle == ScenePrivate.SceneInfo.AvatarId.ToLower())
        {
            if (cmds[0] == _resetChatCommand)
            {
                onReset();
            }
        }
        else
        {
            if (DebugLogging)
            {
                Log.Write("You must be the owner of the scene");
            }
        }
    }
Exemple #12
0
        public override bool Invoke(ChatData chatData)
        {
            StringBuilder msg = new StringBuilder();

            MyTexts.LanguageDescription languageRu = MyTexts.Languages[MyLanguagesEnum.Russian];
            MyTexts.Clear();
            MyTexts.LoadTexts(Path.Combine(MyAPIGateway.Utilities.GamePaths.ContentPath, "Data", "Localization"), languageRu.CultureName, languageRu.SubcultureName);
            msg.AppendLine($"Server Culture: {languageRu.Name}: {languageRu.CultureName}-{languageRu.SubcultureName}");
            msg.AppendLine($@"Server Localized string: ""{Localize.GetResource(Localize.WorldSaved, MyAPIGateway.Session.Name)}""");
            msg.AppendLine($@"Server Localized string: ""{Localize.GetResource("DisplayName_Item_GoldIngot")}""");
            msg.AppendLine();

            MyTexts.LanguageDescription languageEn = MyTexts.Languages[MyLanguagesEnum.German];
            MyTexts.Clear();
            MyTexts.LoadTexts(Path.Combine(MyAPIGateway.Utilities.GamePaths.ContentPath, "Data", "Localization"), languageEn.CultureName, languageRu.SubcultureName);
            msg.AppendLine($"Server Culture: {languageEn.Name}: {languageEn.CultureName}-{languageEn.SubcultureName}");
            msg.AppendLine($@"Server Localized string: ""{Localize.GetResource(Localize.WorldSaved, MyAPIGateway.Session.Name)}""");
            msg.AppendLine($@"Server Localized string: ""{Localize.GetResource("DisplayName_Item_GoldIngot")}""");
            msg.AppendLine();

            MyTexts.LanguageDescription languageOriginal = MyTexts.Languages[MyAPIGateway.Session.Config.Language];
            MyTexts.Clear();
            MyTexts.LoadTexts(Path.Combine(MyAPIGateway.Utilities.GamePaths.ContentPath, "Data", "Localization"), languageOriginal.CultureName, languageOriginal.SubcultureName);
            msg.AppendLine($"Server Culture: {languageOriginal.Name}: {languageOriginal.CultureName}-{languageOriginal.SubcultureName}");
            msg.AppendLine($@"Server Localized string: ""{Localize.GetResource(Localize.WorldSaved, MyAPIGateway.Session.Name)}""");
            msg.AppendLine($@"Server Localized string: ""{Localize.GetResource("DisplayName_Item_GoldIngot")}""");
            msg.AppendLine();

            MyAPIGateway.Utilities.SendMissionScreen(chatData.SenderSteamId, "/Test03", null, " ", msg.ToString(), null, "OK");

            return(true);
        }
Exemple #13
0
        public IActionResult Index()
        {
            string username = HttpContext.User.Identities.ToArray()[0].Claims.ToArray()[0].Value;
            var    data     = new ChatData(username, _onlineUsers, _communicationWithDB);

            return(View(data));
        }
Exemple #14
0
    /// <summary>
    /// 读取字节流(完整版)
    /// </summary>
    protected override void toReadBytesFull(BytesReadStream stream)
    {
        base.toReadBytesFull(stream);

        stream.startReadObj();

        BaseData dataT = stream.readDataFullNotNull();

        if (dataT != null)
        {
            if (dataT is ChatData)
            {
                this.data = (ChatData)dataT;
            }
            else
            {
                this.data = new ChatData();
                if (!(dataT.GetType().IsAssignableFrom(typeof(ChatData))))
                {
                    stream.throwTypeReadError(typeof(ChatData), dataT.GetType());
                }
                this.data.shadowCopy(dataT);
            }
        }
        else
        {
            this.data = null;
        }

        stream.endReadObj();
    }
        public override bool Invoke(ChatData chatData)
        {
            StringBuilder msg = new StringBuilder();

            msg.AppendLine($"Client Culture {MyAPIGateway.Session.Config.Language}");

            MyTexts.LanguageDescription clientLanguage = MyTexts.Languages[MyAPIGateway.Session.Config.Language];

            msg.AppendLine($"Client Culture {clientLanguage.CultureName}-{clientLanguage.SubcultureName}");
            msg.AppendLine($@"Client Localized string: ""{Localize.GetResource(Localize.WorldSaved, MyAPIGateway.Session.Name)}""");
            msg.AppendLine($@"Client Localized string: ""{Localize.GetResource("DisplayName_Item_GoldIngot")}""");
            msg.AppendLine($@"Client Substitute string: ""{MyTexts.SubstituteTexts("{LOC:DisplayName_Item_GoldIngot}")}""");
            msg.AppendLine($@"Client Substitute strings: ""{Localize.SubstituteTexts("{LOC:DisplayName_Item_GoldIngot}{LOC:DisplayName_Item_SilverIngot}")}""");
            msg.AppendLine($@"Client Substitute strings: ""{Localize.SubstituteTexts("Some {LOC:DisplayName_Item_GoldIngot} and {LOC:DisplayName_Item_SilverIngot}.")}""");
            int count1 = 10;
            int count2 = 20;
            int count3 = 30;
            int count4 = 40;

            msg.AppendResourceLine(@"Client Substitute strings: ""{0}x {LOC:DisplayName_Item_PlatinumIngot}. {1}x {LOC:DisplayName_Item_GoldIngot}. {2}x {LOC:DisplayName_Item_SilverIngot}. {3}x {LOC:DisplayName_Item_IronIngot}.""", count1, count2, count3, count4);
            msg.AppendResourceLine(@"Client Substitute strings: ""{LOC:NotificationHintTurnPowerOff}""", "XXX");

            MyAPIGateway.Utilities.SendMissionScreen(chatData.SenderSteamId, "/Test01", null, " ", msg.ToString(), null, "OK");

            return(true);
        }
    // 获取数值表
    public void getNetFile()
    {
        // 优先使用热更新的代码
        if (ILRuntimeUtil.getInstance().checkDllClassHasFunc("GetNetEntityFile_hotfix", "getNetFile"))
        {
            ILRuntimeUtil.getInstance().getAppDomain().Invoke("HotFix_Project.GetNetEntityFile_hotfix", "getNetFile", null, null);
            return;
        }

        Invoke("onInvoke", 6);

        // 恢复初始状态
        {
            for (int i = 0; i < m_fileList.Count; i++)
            {
                m_fileList[i].m_fileGetState = FileInfo.FileGetState.FileGetState_NoStart;
            }
        }

        // 拉取数值表
        {
            NetLoading.getInstance().Show();

            NetConfig.reqNetConfig();
            PropData.getInstance().reqNet();
            ChatData.getInstance().reqNet();
            HuDongData.getInstance().reqNet();
            if (SensitiveWordUtil.WordsDatas == null || SensitiveWordUtil.WordsDatas.Length == 0)
            {
                SensitiveWordUtil.reqNet();
            }
            VipData.reqNet();
        }
    }
Exemple #17
0
 /// <summary>
 /// 回池
 /// </summary>
 protected override void toRelease(DataPool pool)
 {
     this.showData  = null;
     this.chatData  = null;
     this.time      = 0L;
     this.sendIndex = 0;
 }
    private void OnChat(ChatData data)
    {
        // Try to parse the message as a chat command and ignore it if it is not a known command
        var tokens = data.Message.Split(new char[] { ' ' });

        if (CheckCommand(tokens, CommandAgentMediaUrl, 2))
        {
            string       url   = tokens[1];
            AgentPrivate agent = ScenePrivate.FindAgent(data.SourceId);
            agent.OverrideMediaSource(url);
        }
        else if (CheckCommand(tokens, CommandAgentMediaSizeAndUrl, 4))
        {
            Int32        width  = Int32.Parse(tokens[1]);
            Int32        height = Int32.Parse(tokens[2]);
            string       url    = tokens[3];
            AgentPrivate agent  = ScenePrivate.FindAgent(data.SourceId);
            agent.OverrideMediaSource(url, width, height);
        }
        else if (CheckCommand(tokens, CommandSceneMediaUrl, 2))
        {
            string url = tokens[1];
            ScenePrivate.OverrideMediaSource(url);
        }
        else if (CheckCommand(tokens, CommandSceneMediaSizeAndUrl, 4))
        {
            Int32  width  = Int32.Parse(tokens[1]);
            Int32  height = Int32.Parse(tokens[2]);
            string url    = tokens[3];
            ScenePrivate.OverrideMediaSource(url, width, height);
        }
    }
Exemple #19
0
        public String UserMessage(String data)
        {
            data = data.Replace("'", "''");

            String temp  = Guid.NewGuid().ToString();
            String temp1 = String.Join("", temp.Take(5));
            String temp2 = String.Join("", temp.Skip(5).Take(5));

            ChatData d = new ChatData();

            d.Users.Add("*****@*****.**");
            d.Users.Add("*****@*****.**");

            ChatMessageModel cm = new ChatMessageModel();

            cm.MessageText = data + temp1;
            cm.UserEmail   = "1234";

            ChatMessageModel cm2 = new ChatMessageModel();

            cm2.MessageText = data + temp2;
            cm2.UserEmail   = "5678";

            d.Messages.AddRange(new [] { cm, cm2 });

            return(JsonConvert.SerializeObject(d));
        }
    void FetchData(ChatData data)
    {
        string str = JsonUtility.ToJson(data);

        byte[] bytes = System.Text.Encoding.UTF8.GetBytes(str);

        HttpWebRequest req = (HttpWebRequest)WebRequest.Create("http://localhost:2021");

        req.Method        = "POST";
        req.ContentType   = "application/json";
        req.ContentLength = bytes.Length;

        using (var stream = req.GetRequestStream()) {
            stream.Write(bytes, 0, bytes.Length);
            stream.Flush();
            stream.Close();
        }

        HttpWebResponse res    = (HttpWebResponse)req.GetResponse();
        StreamReader    reader = new StreamReader(res.GetResponseStream());
        string          json   = reader.ReadToEnd();
        ChatData        result = JsonUtility.FromJson <ChatData>(json);

        print(result);
    }
        public override bool HandlePacket(IPacket packet)
        {
            var response = packet.ReadShort();

            if (response != TALK_NOTFOUND)
            {
                return(false);
            }

            var from = packet.ReadEndString();

            from = char.ToUpper(from[0]) + from.Substring(1).ToLower();
            var sysMessage = _localizedStringFinder.GetString(EOResourceID.SYS_CHAT_PM_PLAYER_COULD_NOT_BE_FOUND);
            var message    = $"{@from} {sysMessage}";

            var chatData = new ChatData(string.Empty, message, ChatIcon.Error, ChatColor.Error);

            _chatRepository.AllChat[ChatTab.System].Add(chatData);

            foreach (var notifier in _chatEventNotifiers)
            {
                notifier.NotifyPrivateMessageRecipientNotFound(from);
            }

            return(true);
        }
Exemple #22
0
    private void OnChat(ChatData data)
    {
        // ignore any messages that are not from an agent
        if (data.SourceId != SessionId.Invalid)
        {
            AgentPrivate agent = ScenePrivate.FindAgent(data.SourceId);
            if (agent == null)
            {
                Log.Write(LogLevel.Warning, "Unable to find the agent who was talking.");
                return;
            }
            if (data.Message.StartsWith(Trigger))
            {
                string command = data.Message.Substring(Trigger.Length).Trim();

                if (chatHandlers.ContainsKey(command))
                {
                    chatHandlers[command](agent);
                }
                else
                {
                    chatHandlers["help"](agent);
                }
            }
        }
    }
Exemple #23
0
        private void ViewChatFromHistory(object match)
        {
            Console.WriteLine("STATUS: Getting chat from history");
            ChatData chatData = ChatHistoryList.Single(chat => chat.SearchString == (string)match);

            OnlineViewModel.LoadChatAsHistory(chatData);
        }
    public void loadChat()
    {
        // 优先使用热更新的代码
        if (ILRuntimeUtil.getInstance().checkDllClassHasFunc("ChatPanelScript_hotfix", "loadChat"))
        {
            ILRuntimeUtil.getInstance().getAppDomain().Invoke("HotFix_Project.ChatPanelScript_hotfix", "loadChat", null, null);
            return;
        }

        {
            m_tab_bg.transform.localPosition = new Vector3(-83, 0, 0);
            CommonUtil.setImageSpriteByAssetBundle(m_button_chat.transform.Find("Image").GetComponent <Image>(), "game.unity3d", "btn_chat_xuanze");
            CommonUtil.setImageSpriteByAssetBundle(m_button_biaoqing.transform.Find("Image").GetComponent <Image>(), "game.unity3d", "btn_emogi_weixuanze");
        }

        m_ListViewScript_chat.clear();

        GameUtil.showGameObject(m_listView_chat);
        GameUtil.hideGameObject(m_listView_emoji);

        for (int i = 0; i < ChatData.getInstance().getChatTextList().Count; i++)
        {
            GameObject prefab = Resources.Load("Prefabs/UI/Item/Item_chat_List") as GameObject;
            GameObject obj    = MonoBehaviour.Instantiate(prefab);
            obj.GetComponent <Item_chat_List_Script>().m_parentScript = this;
            obj.GetComponent <Item_chat_List_Script>().setChatData(ChatData.getInstance().getChatTextList()[i]);

            m_ListViewScript_chat.addItem(obj);
        }

        m_ListViewScript_chat.addItemEnd();
    }
        public void sendChatData(string sourceName, string text)
        {
            //チャットデータをシリアライズ
            var sendData = new ChatData()
            {
                Name = sourceName,
                Text = text
            };
            var jsonString  = Util.Serialize(sendData);
            var sendToBytes = System.Text.Encoding.UTF8.GetBytes(jsonString);

            //独自パケット作成
            var mergedArray = Util.MergeByteArrays(new List <byte[]>
            {
                Util.ToBigEndianArray((ulong)sendToBytes.Length + 1, 4),
                new byte[] { Util.TypeChat },
                sendToBytes
            });

            //全てのクライアントに送信
            lock (SyncClientSockets_)
            {
                foreach (var name in clinetList_.Keys)
                {
                    if (name != sourceName)
                    {
                        clinetList_[name].Send(mergedArray);
                    }
                }
            }
        }
Exemple #26
0
    void SVR_onFriendChat(string _msg)
    {
        Proto.FriendChatMsg msg = JsonUtility.FromJson <Proto.FriendChatMsg>(_msg);
        ChatData            tmp = new ChatData();

        tmp.info = msg.info;
        int friendUid = 0;

        if (msg.from == PlayerInfo.uid)
        {
            friendUid = msg.to;
            tmp.isMe  = true;
        }
        else
        {
            friendUid = msg.from;
            tmp.isMe  = false;
        }
        PlayerInfo.friends[friendUid].chatInfo.Add(tmp);

        ChatInfoTmp tmpMsg = new ChatInfoTmp();

        tmpMsg.friendUid = friendUid;
        tmpMsg.info      = tmp.info;
        tmpMsg.isMe      = tmp.isMe;
        if (commonCb.ContainsKey(CommonHandlerCb.onFriendChat))
        {
            commonCb[CommonHandlerCb.onFriendChat]?.Invoke(tmpMsg);
        }
    }
    public void netDataDown()
    {
        // 优先使用热更新的代码
        if (ILRuntimeUtil.getInstance().checkDllClassHasFunc("LoginScript_hotfix", "netDataDown"))
        {
            ILRuntimeUtil.getInstance().getAppDomain().Invoke("HotFix_Project.LoginScript_hotfix", "netDataDown", null, null);
            return;
        }

        // 拉取数值表
        {
            NetLoading.getInstance().Show();

            NetConfig.reqNetConfig();
            PropData.getInstance().reqNet();
            ChatData.getInstance().reqNet();
            HuDongData.getInstance().reqNet();
            SensitiveWordUtil.reqNet();
            VipData.reqNet();
        }

        if (OtherData.s_isTest)
        {
            ToastScript.createToast("这是测试包");
        }
        else
        {
            LogUtil.Log("这是正式包");
        }
    }
Exemple #28
0
    /// <summary>
    /// 复制(深拷贝)
    /// </summary>
    protected override void toCopy(BaseData data)
    {
        if (!(data is RoleChatData))
        {
            return;
        }

        RoleChatData mData = (RoleChatData)data;

        if (mData.showData != null)
        {
            this.showData = (RoleSimpleShowData)mData.showData.clone();
        }
        else
        {
            this.showData = null;
            nullObjError("showData");
        }

        if (mData.chatData != null)
        {
            this.chatData = (ChatData)mData.chatData.clone();
        }
        else
        {
            this.chatData = null;
            nullObjError("chatData");
        }

        this.time = mData.time;

        this.sendIndex = mData.sendIndex;
    }
        private void HandleMessage(ChatData data)
        {
            var message = Mapper.Map <ChatData, Message> (data);

            switch (data.ChatChannel)
            {
            case ChatChannel.Guild:
                if (GuildChatReceived != null)
                {
                    GuildChatReceived(this, message);
                }
                break;

            case ChatChannel.Officer:
                if (OfficerChatReceived != null)
                {
                    OfficerChatReceived(this, message);
                }
                break;

            case ChatChannel.Whisper:
                if (WhisperReceived != null)
                {
                    WhisperReceived(this, message);
                }
                break;
            }

            Debug.WriteLine("{0}\t{1}: {2}", DateTime.Now.ToShortTimeString(), message.Sender.Name, message.Text);
        }
        public void Send(ChatType chatType, string content)
        {
            string guildID = string.Empty;

            if (chatType == ChatType.Guild)
            {
                guildID = _user.MercenariesID;
            }
            var chat = new ChatData
            {
                Version      = NextVersion,
                FromUserID   = _user.UserID.ToInt(),
                FromUserName = _user.NickName,
                FromUserVip  = (short)_user.VipLv,
                ToUserID     = 0,
                ToUserName   = string.Empty,
                ToUserVip    = 0,
                ChatType     = chatType,
                Content      = FilterMessage(content),
                SendDate     = DateTime.Now,
                GuildID      = guildID,
            };

            if (chatType == ChatType.World)
            {
                _user.ChatDate = DateTime.Now;
            }
            Send(chat);
        }
        public void WriteMessage(ChatData cd)
        {
            string s = string.Format(
                "{0} -> {1} ({2:T})\r\n{3}",
                cd.SenderName,
                cd.RecieverName,
                cd.SendingTime,
                cd.Message);

            tbHistory.AppendText(s);
            tbHistory.AppendText(Environment.NewLine);
        }
Exemple #32
0
	public float SetChatData(ChatData chatData) {
		return SetChatData(chatData, chatData.text);
	}
		private void HandleMessage(ChatData data)
		{
			var message = Mapper.Map<ChatData, Message> (data);

			switch (data.ChatChannel)
			{
			case ChatChannel.Guild:
				if (GuildChatReceived != null)
					GuildChatReceived(this, message);
				break;
			case ChatChannel.Officer:
				if (OfficerChatReceived != null)
					OfficerChatReceived(this, message);
				break;
			case ChatChannel.Whisper:
				if (WhisperReceived != null)
					WhisperReceived(this, message);
				break;
			}

			Debug.WriteLine("{0}\t{1}: {2}", DateTime.Now.ToShortTimeString(), message.Sender.Name, message.Text);
		}
    void Update()
    {
        if (Remove_OnTime)
         {
             //Remove chat message after timer reach 0
             for (int i = 0; i < messages.Count; i++)
             {
                 ChatData MInfo = messages[i];
                 MInfo.timer -= Time.deltaTime;
                 if (MInfo.timer > 0)
                 {
                     messages[i] = new ChatData(MInfo.name, MInfo.text, MInfo.color, MInfo.timer);
                 }
                 else
                 {
                     messages.RemoveAt(i);
                 }
             }
         }
         if (!Apply_alpha || !Network.isClient && !Network.isServer)
             return;

         if (m_alpha > 0.0f)
         {
             m_alpha -= Time.deltaTime;
         }
         if (m_isEnabled)
             m_alpha = m_Time_To_Fade;
    }
Exemple #35
0
	public void AddChatData(ChatData data) {
		AddChatData(data, true);
	}
Exemple #36
0
	public float SetChatData(ChatData chatData, string text) {
		this.chatData = chatData;
		return SetText(text);
	}
Exemple #37
0
	private void SendVoice(Byte[] voiceData) {
		float time = Director.GetInstance().scheduler.UnSchedulerCSFun(_recordKey);

		ChatData data = new ChatData(_playName, "#999", enumChatType.CHANEL_SYSTEM, enumSysInfoType.INFO_TYPE_CHAT, voiceData, 0, 1);
		ChatDataManager.GetInstance().AddChatData(data);
		RefreshChatPanel();

		_isVoicePressed = false;
		_voiceOn.SetActive(false);
	}
 private void incomingChatData(ChatData chatdata)
 {
     GameWorld.GetInstance.newEffect.Add(new ChatBalloon(chatdata.Name, chatdata.Text, ResourceManager.GetInstance.Content.Load<SpriteFont>(@"font\Arial_12px")));
     ScreenManager.Instance.actionScreen.hud.chatbarInput.updateTextlog(chatdata.Name, chatdata.Text);
 }
Exemple #39
0
        /// <summary>
        /// Handles message receiving and decryption of incoming messages.
        /// </summary>
        /// <param name="msg"></param>
        public void Receive(Message msg)
        {
            foreach (SharedComponents.Client c in _onlineClients.Values)
            {
                if (c.Name == msg.Sender)
                {
                    string output = "";
                    switch (_viewModel.SelectedCypher)
                    {
                        case (int)Cyphers.SimpleEncryption:
                            var cypher1 = new SimpleEncryption();
                            output = msg.Sender + " : " + cypher1.DecryptMessage(msg.Content, _viewModel.Key);
                            break;
                        case (int)Cyphers.Rijndael:
                            var cypher2 = new Rijndael();
                            output = msg.Sender + " : " + cypher2.DecryptMessage(msg.Content, _viewModel.Key);
                            break;
                    }
                    ListBoxItem item = MakeItem(c.AvatarID, output);
                    _viewModel.ChatMsgs.Add(item);
                    _messages.Add(msg.Content);
                    using (var terr = new ChatDataContainer())
                    {
                        var sender = terr.ChatUsersSet.Where(s => s.Username == msg.Sender).ToList();
                        var curUser = terr.ChatUsersSet.Where(s => s.Username == _viewModel.Name).ToList();
                        ChatData temp = new ChatData
                        {
                            Id = curUser[0].Id,
                            Sender = sender[0].Id,
                            Message = msg.Content,
                            RecTime = msg.Time,
                            ChatUsers = curUser[0]
                        };
                        _msgIds.Add(msg.Sender);
                        try
                        {
                            terr.ChatDataSet.Add(temp);
                            terr.SaveChanges();
                        }
                        catch (Exception e)
                        {
                            _viewModel.Name = e.ToString();
                        }

                    }
                }
            }
            _viewModel.ScrollDown();
        }
Exemple #40
0
	public void AddChatData(ChatData data,bool isRefresh) {
		if (mChatDataList.Count == MAX_CHAT_DATA_COUNT) {
			mChatDataList.RemoveAt(0);
		}
		mChatDataList.Add(data);
		List<ChatData> sortData;
		if (!mChatDataDict.TryGetValue(data.chatType, out sortData)) {
			sortData = new List<ChatData>();
			mChatDataDict[data.chatType] = sortData;
		}
		sortData.Add(data);
		if (isRefresh) {
			mDispatcher.Notify(EnumEventDispathcer.ChatViewRefreshPanel);
		}
	}
Exemple #41
0
	public void SendMessage(string text, enumChatType chatType) {
		ChatData data = new ChatData(playName, text, chatType, enumSysInfoType.INFO_TYPE_CHAT, null, 0, 1);
		ChatDataManager.GetInstance().AddChatData(data);
	}