/// <summary>
        /// Sets the answer on the given index.
        /// </summary>
        /// <param name="index"></param>
        /// <param name="outputName"></param>
        /// <param name="text"></param>
        public void SetAnswer(int index, TextAnswerData answerData)
        {
            if (_answers.Count <= index)
            {
                if (DynamicAnswerNumber)
                {
                    var a = Instantiate(_answers[0]);
                    a.transform.SetParent(_answers[0].transform.parent, false);
                    a.Init(_controller);
                    _answers.Add(a);

                    BindKeyToAnswer(index, a);
                }
                else
                {
                    RunemarkDebug.Error("Can't show the {0}. answer, becouse the skin has less answer slots and it's not set to dynamical",
                                        index);
                }
            }

            var answer = _answers[index];

            answer.gameObject.SetActive(answerData.OutputName != "");
            answer.AnswerID = answerData.OutputName;
            answer.Set <string>(answerData.Text);
            answer.Index = index + 1;
        }
        public void SetCustomAnswer(string ID, TextAnswerData answerData)
        {
            var answer = _customAnswers[ID];

            answer.gameObject.SetActive(answerData.OutputName != "");
            answer.AnswerID = answerData.OutputName;
            answer.Set(answerData);
        }
示例#3
0
        public override void Set <T>(T value)
        {
            TextAnswerData data = value as TextAnswerData;

            if (data == null)
            {
                Debug.LogError(value + " is not a TextAnswerData!"); return;
            }
            if (data.UIElementName != ElementID)
            {
                return;
            }

            isGlobal     = data.IsGlobal;
            variableName = data.VariableName;
            UnityUIUtility.SetText(Label, data.Text);
        }