void Safe_Source_OnNewMessagesArrived(List <Core.ChatMessage> NewMessages)
        {
            for (int j = 0; j < NewMessages.Count; ++j)
            {
                VisualMessage vm = new VisualMessage(Source, Manager.SmilesDataDase, NewMessages[j]);

                if (ChatDataSource.Count > 0)
                {
                    int prevId = ChatDataSource.Count - 1;
                    vm.DoubleName = vm.Data.Name == ChatDataSource[prevId].Data.Name;
                    if (vm.DoubleName)
                    {
                        if (ChatDataSource[prevId].Sequence == 0)
                        {
                            ChatDataSource[prevId].Sequence = 1;
                        }
                        else
                        {
                            ChatDataSource[prevId].Sequence = 2;
                        }
                        vm.Sequence = 3;
                    }
                    else
                    {
                        vm.Sequence = 0;
                    }
                }

                ChatDataSource.Add(vm);
            }



            if (ChatDataSource.Count > 100)
            {
                while (ChatDataSource.Count > 40)
                {
                    ChatDataSource.RemoveAt(0);
                }
            }

            //if (ChatDataSource.Count > 0) {
            //    for (int j = 1; j < ChatDataSource.Count; ++j) {
            //        if( ChatDataSource[j-1].Data.Name == ChatDataSource[j-1].Data.Name
            //    }
            //}
        }
        void PART_Messages_MouseDown(object sender, System.Windows.Input.MouseButtonEventArgs e)
        {
            //var sex = PART_Messages.InputHitTest(e.GetPosition(PART_Messages));


            var hitTestResult = VisualTreeHelper.HitTest(this.PART_Messages, e.GetPosition(PART_Messages));
            var selectedItem  = hitTestResult.VisualHit;

            while (selectedItem != null)
            {
                if (selectedItem is ListBoxItem)
                {
                    break;
                }
                selectedItem = VisualTreeHelper.GetParent(selectedItem);
            }

            ListBoxItem item = selectedItem != null ? ((ListBoxItem)selectedItem) : null;

            if (item != null)
            {
                var sex = item.Content as VisualMessage;
                if (sex != null)
                {
                    //fuckUserContextMenu.Tag = sex;
                    currentMessage     = sex;
                    userMenu.Header    = "F**k the " + sex.Data.Name;
                    userMenu.IsEnabled = true;
                }
            }
            else
            {
                currentMessage     = null;
                userMenu.Header    = "Nothing to f**k";
                userMenu.IsEnabled = false;
            }
        }
Exemple #3
0
    private void SendVisualMessage()
    {
        if (PlayerController.currentScreen == Screens.GLASS)
        {
            if (isFirstTime) //TODO: HERE SHOULD BE THE TUTORIAL OR SOMETHING SIMILAR
            {
                ProcessMessage("3313");
                isFirstTime = false;
                VisualCommunicationController.flagCodes.TryGetValue("3313", out VisualMessage val);
                lastSendedMessage = val;
            }
            else
            {
                List <string> totalTypes = new List <string>();
                foreach (var d in VisualCommunicationController.flagCodes)
                {
                    if (d.Value.type == GameManager.currentEnemyTension || d.Value.type == GameManager.currentEnemyTension + 1 || d.Value.type == GameManager.currentEnemyTension - 1)
                    {
                        totalTypes.Add(d.Key);
                    }
                }

                Random.InitState(System.DateTime.Now.Millisecond);
                int randomMessage = Random.Range(0, totalTypes.Count - 1);
                ProcessMessage(totalTypes[randomMessage]);

                VisualCommunicationController.flagCodes.TryGetValue(totalTypes[randomMessage], out VisualMessage val);
                lastSendedMessage = val;
            }
        }
        else //Give the player a little bit of time to go to the screen of the communications
        {
            waitingForPlayer = true;
            timerEnterRoom   = Time.realtimeSinceStartup;
            goalScreen       = Screens.GLASS;
        }
    }
        void Safe_Source_OnNewMessagesArrived( List<Core.ChatMessage> NewMessages )
        {
            for (int j = 0; j < NewMessages.Count; ++j) {
                VisualMessage vm = new VisualMessage(Source, Manager.SmilesDataDase, NewMessages[j]);

                if (ChatDataSource.Count > 0) {
                    int prevId = ChatDataSource.Count - 1;
                    vm.DoubleName = vm.Data.Name == ChatDataSource[prevId].Data.Name;
                    if (vm.DoubleName) {
                        if( ChatDataSource[prevId].Sequence == 0 )
                            ChatDataSource[prevId].Sequence = 1;
                        else
                            ChatDataSource[prevId].Sequence = 2;
                        vm.Sequence = 3;
                    } else {
                        vm.Sequence = 0;
                    }
                }

                ChatDataSource.Add(vm);
            }

            if (ChatDataSource.Count > 100) {
                while (ChatDataSource.Count > 40)
                    ChatDataSource.RemoveAt(0);
            }

            //if (ChatDataSource.Count > 0) {
            //    for (int j = 1; j < ChatDataSource.Count; ++j) {
            //        if( ChatDataSource[j-1].Data.Name == ChatDataSource[j-1].Data.Name
            //    }
            //}
        }
        void PART_Messages_MouseDown( object sender, System.Windows.Input.MouseButtonEventArgs e )
        {
            //var sex = PART_Messages.InputHitTest(e.GetPosition(PART_Messages));

            var hitTestResult = VisualTreeHelper.HitTest(this.PART_Messages, e.GetPosition(PART_Messages));
            var selectedItem = hitTestResult.VisualHit;
            while (selectedItem != null) {
                if (selectedItem is ListBoxItem) {
                    break;
                }
                selectedItem = VisualTreeHelper.GetParent(selectedItem);
            }

            ListBoxItem item = selectedItem != null ? ((ListBoxItem)selectedItem) : null;
            if (item != null) {
                var sex = item.Content as VisualMessage;
                if (sex != null) {
                    //fuckUserContextMenu.Tag = sex;
                    currentMessage = sex;
                    userMenu.Header = "F**k the " + sex.Data.Name;
                    userMenu.IsEnabled = true;
                }
            } else {
                currentMessage = null;
                userMenu.Header = "Nothing to f**k";
                userMenu.IsEnabled = false;
            }
        }
Exemple #6
0
        void Safe_Source_OnNewMessagesArrived( List<Core.ChatMessage> NewMessages )
        {
            for (int j = 0; j < NewMessages.Count; ++j) {
                VisualMessage vm = new VisualMessage(Source.StreamerNick, Manager.SmilesDataDase, NewMessages[j]);
                if (ChatDataSource.Count > 0)
                    vm.DoubleName = vm.Data.Name == ChatDataSource[ChatDataSource.Count - 1].Data.Name;
                ChatDataSource.Add(vm);
            }

            if (ChatDataSource.Count > 100) {
                while (ChatDataSource.Count > 40)
                    ChatDataSource.RemoveAt(0);
            }
        }