Esempio n. 1
0
        public void TextSetter_EnabledSetter_Change()
        {
            //given
            MapperConfiguration.Configure();
            string targetText = "test";
            var    textSetter = new TextSetter(TextSetterType.Note)
            {
                IsChecked = true, Value = targetText
            };
            var command  = TextSetterCommand.Create(textSetter);
            var expected = Mapper.Map <Transaction[]>(Mapper.Map <CashManager.Data.DTO.Transaction[]>(_transactions));

            foreach (var transaction in expected)
            {
                transaction.Notes = new TrulyObservableCollection <Note> {
                    new Note(targetText)
                }
            }
            ;

            //when
            var result = command.Execute(_transactions);

            //then
            Assert.Equal(expected.Select(x => x.Notes), result.Select(x => x.Notes));
        }
Esempio n. 2
0
 protected override void Init()
 {
     if (outputTextSetter == null)
     {
         outputTextSetter = GetComponent <TextSetter>();
     }
 }
Esempio n. 3
0
    protected void l(j A_0)
    {
        global::u.c("handleSetInputText +" + A_0.c);
        TextSetter textSetter = JsonParser.Deserialization <TextSetter>(A_0);

        try
        {
            GameObject gameObject = GameObjectManager.INSTANCE.FindGameObjectGlobal(textSetter.instance);
            if (null == gameObject)
            {
                A_0.f = ResponseStatus.GAMEOBJ_NOT_EXIST;
                A_0.b = "GameObject " + global::m.b + " is not exists";
                global::o.a(A_0);
                return;
            }
            string text = this.o.a(gameObject, textSetter.content);
            A_0.b = text;
        }
        catch (Exception ex)
        {
            global::u.a(ex.Message + " " + ex.StackTrace);
            A_0.f = ResponseStatus.UN_KNOW_ERROR;
            A_0.b = ex.Message + " " + ex.StackTrace;
        }
        global::o.a(A_0);
    }
 protected virtual void Awake()
 {
     setter = GetComponent <TextSetter>();
     if (setter != null)
     {
         setter.SecondsBetweenCharacters = 1 / speed;
     }
 }
Esempio n. 5
0
    public static void SetTextByTime(Text obj, string text, float time, ButtonScript.ToDo onEnd)
    {
        TextSetter ts = obj.gameObject.AddComponent <TextSetter> ();

        ts.textObject = obj;
        ts.rawData    = text;
        ts.time       = time;
        ts.onEnd      = onEnd;
        ts.Init();
    }
Esempio n. 6
0
    public void SetNodeCorner(DialogNode node, RectTransform buttonsParent, Text actor, StalkerBehaviour stalker, GameObject bpo)
    {
        AudioClip c = node.actorReplic.sourceClip;

        bpo.SetActive(false);
        dialogCharacter = stalker;
        TextSetter.SetTextByTime(actor, node.actorReplic.sourceText, c.length, delegate {
            PrepareNode(node, buttonsParent, actor, stalker, bpo);
        });
        stalker.PlaySound(c, GetVoice(node.actorReplic.actor));
    }
Esempio n. 7
0
        public void TextSetter_DisabledSetter_NoChange()
        {
            //given
            var textSetter = new TextSetter(TextSetterType.Note);
            var command    = TextSetterCommand.Create(textSetter);

            //when
            var result = command.Execute(_positions);

            //then
            Assert.Equal(_positions.Select(x => x.Parent.Notes), result.Select(x => x.Parent.Notes));
        }
Esempio n. 8
0
        public void TextSetter_DisabledSetter_NoChange()
        {
            //given
            var textSetter = new TextSetter(TextSetterType.Title);
            var command    = TextSetterCommand.Create(textSetter);

            //when
            var result = command.Execute(_transactions);

            //then
            Assert.Equal(_transactions.Select(x => x.Title), result.Select(x => x.Title));
        }
Esempio n. 9
0
    public void PrepareNode(DialogNode node, RectTransform buttonsParent, Text actor, StalkerBehaviour stalker, GameObject bpo)
    {
        bpo.SetActive(true);

        Button[] bt = buttonsParent.GetComponentsInChildren <Button> ();

        foreach (var b in bt)
        {
            GameObject.Destroy(b.gameObject);
        }

        if (node.playerReplics.Length < 1)
        {
            CloseDialog();
            return;
        }

        GameObject buttonPrefab = Resources.Load <GameObject> ("Prefabs/DialogSlot");

        int collumns = 2;

        if (node.playerReplics.Length < 2)
        {
            collumns = 1;
        }

        TextSetter.SetText(actor, node.actorReplic.sourceText);

        float[] sizes = new float[collumns];

        for (int i = 0; i < node.playerReplics.Length; i++)
        {
            int           c     = i % collumns;
            RectTransform trans = GameObject.Instantiate(buttonPrefab, buttonsParent).GetComponent <RectTransform> ();
            trans.anchoredPosition = new Vector2((buttonsParent.rect.width / collumns) * c, sizes [c]);
            trans.SetSizeWithCurrentAnchors(RectTransform.Axis.Horizontal, (buttonsParent.rect.width / collumns));
            Text t = trans.GetComponentInChildren <Text> ();
            TextSetter.SetText(t, node.playerReplics [i].replic.shortText);
            trans.SetSizeWithCurrentAnchors(RectTransform.Axis.Vertical, t.rectTransform.rect.height + 30);
            sizes [c] += trans.rect.height;
            DialogButton cur = node.playerReplics [i];
            trans.GetComponent <Button> ().onClick.AddListener(delegate {
                SayReplic(cur, stalker, buttonsParent, actor, bpo);
            });
        }

        buttonsParent.SetSizeWithCurrentAnchors(RectTransform.Axis.Vertical, sizes.OrderByDescending((float arg) => arg).ToArray() [0]);
    }
Esempio n. 10
0
        public void TextSetter_EnabledSetter_Change()
        {
            //given
            MapperConfiguration.Configure();
            string targetText = "title";
            var    textSetter = new TextSetter(TextSetterType.Title)
            {
                IsChecked = true, Value = targetText
            };
            var command  = TextSetterCommand.Create(textSetter);
            var expected = new[] { targetText, targetText, targetText, targetText };

            //when
            var result = command.Execute(GetPositions());

            //then
            Assert.Equal(expected, result.Select(x => x.Parent.Title));
        }
Esempio n. 11
0
        public void TextSetter_EnabledSetterAppend_Appended()
        {
            //given
            MapperConfiguration.Configure();
            string targetText = "test";
            var    textSetter = new TextSetter(TextSetterType.Note)
            {
                IsChecked = true, Value = targetText, AppendMode = true
            };
            var command  = TextSetterCommand.Create(textSetter);
            var expected = new[] { "Note 1test", "Note 2test", "Note 3test" };

            //when
            var result = command.Execute(_positions);

            //then
            Assert.Equal(expected, result.SelectMany(x => x.Parent.Notes.Select(y => y.Value)));
        }
        public void TextSetter_EnabledSetterAppend_Appended()
        {
            //given
            MapperConfiguration.Configure();
            string targetText = "test";
            var    textSetter = new TextSetter(TextSetterType.PositionTitle)
            {
                IsChecked = true, Value = targetText, AppendMode = true
            };
            var command  = TextSetterCommand.Create(textSetter);
            var expected = new[] { _positions[0].Title + targetText, _positions[1].Title + targetText, _positions[2].Title + targetText };

            //when
            var result = command.Execute(_positions);

            //then
            Assert.Equal(expected, result.Select(x => x.Title));
        }
Esempio n. 13
0
    public void SayReplic(DialogButton button, StalkerBehaviour stalker, RectTransform bp, Text actor, GameObject bpo)
    {
        StalkerControl.player.PlaySound(button.replic.sourceClip, GetVoice(button.replic.actor));

        AudioClip c = button.replic.sourceClip;

        bpo.SetActive(false);
        TextSetter.SetTextByTime(actor, button.replic.sourceText, c.length, delegate {
            if (button.nextNodeIndex < 0)
            {
                CloseDialog();
            }
            else
            {
                currentDialogIndex = button.nextNodeIndex;
                SetNodeCorner(currentNode, bp, actor, stalker, bpo);
            }
        });
    }
Esempio n. 14
0
        public void TextSetter_EnabledSetterAppend_Appended()
        {
            //given
            MapperConfiguration.Configure();
            string targetText = "title";
            var    textSetter = new TextSetter(TextSetterType.Title)
            {
                IsChecked = true, Value = targetText, AppendMode = true
            };
            var command   = TextSetterCommand.Create(textSetter);
            var positions = GetPositions();
            var expected  = positions.Select(x => $"{x.Parent.Title}{targetText}").ToArray();

            //when
            var result = command.Execute(positions);

            //then
            Assert.Equal(expected, result.Select(x => x.Parent.Title));
        }
Esempio n. 15
0
        public void TextSetter_EnabledSetterReplaceMatch_OnlyMatchReplaced()
        {
            //given
            MapperConfiguration.Configure();
            string targetText   = "title";
            var    textSelector = new TextSelector(TextSelectorType.Title)
            {
                IsChecked = true, Value = "it"
            };
            var textSetter = new TextSetter(TextSetterType.Title)
            {
                IsChecked = true, Value = targetText, ReplaceMatch = true
            };
            var command  = TextSetterCommand.Create(textSetter, textSelector);
            var expected = new[] { "Ttitlele 1", "Ttitlele 2", "Ttitlele 3" };

            //when
            var result = command.Execute(_transactions);

            //then
            Assert.Equal(expected, result.Select(x => x.Title));
        }
Esempio n. 16
0
        public void TextSetter_EnabledSetterReplaceRegexMatch_OnlyMatchReplaced()
        {
            //given
            MapperConfiguration.Configure();
            string targetText   = "X";
            var    textSelector = new TextSelector(TextSelectorType.Note)
            {
                IsChecked = true, Value = @"\d", IsRegex = true
            };
            var textSetter = new TextSetter(TextSetterType.Note)
            {
                IsChecked = true, Value = targetText, ReplaceMatch = true
            };
            var command  = TextSetterCommand.Create(textSetter, textSelector);
            var expected = new[] { "Note X", "Note X", "Note X" };

            //when
            var result = command.Execute(_transactions);

            //then
            Assert.Equal(expected, result.SelectMany(x => x.Notes.Select(y => y.Value)));
        }
Esempio n. 17
0
        public void TextSetter_EnabledSetterAppend_Appended()
        {
            //given
            MapperConfiguration.Configure();
            string targetText = "title";
            var    textSetter = new TextSetter(TextSetterType.Title)
            {
                IsChecked = true, Value = targetText, AppendMode = true
            };
            var command  = TextSetterCommand.Create(textSetter);
            var expected = Mapper.Map <Transaction[]>(Mapper.Map <CashManager.Data.DTO.Transaction[]>(_transactions));

            foreach (var transaction in expected)
            {
                transaction.Title += targetText;
            }

            //when
            var result = command.Execute(_transactions);

            //then
            Assert.Equal(expected.Select(x => x.Title), result.Select(x => x.Title));
        }
Esempio n. 18
0
 public static TextSetterCommand Create(TextSetter setter, TextSelector selector = null)
 => new TextSetterCommand(setter, selector);
Esempio n. 19
0
 private TextSetterCommand(TextSetter textSetter, TextSelector selector)
 {
     _textSetter = textSetter;
     _selector   = selector;
 }