Exemple #1
0
        private static TextComponent PopulateComponent(TextComponent component, JsonElement root)
        {
            if (root.TryGetProperty("color", out var colorElement))
            {
                var color = colorElement.GetString();
                component.Color = TextComponentHelper.GetColorFromName(color);
            }

            var styles = TextComponentHelper.Styles;

            foreach (var style in styles)
            {
                var styleName = style.GetStyleName();
                if (!root.TryGetProperty(styleName, out var styleElement))
                {
                    continue;
                }

                var hasStyle = styleElement.GetBoolean();
                if (hasStyle)
                {
                    component.Style |= style;
                }
                else
                {
                    component.Style &= ~style;
                }
            }

            if (!root.TryGetProperty("extra", out var extraElement))
            {
                return(component);
            }

            var enumerator = extraElement.EnumerateArray();

            foreach (var element in enumerator)
            {
                var child          = BuildComponent(element);
                var populatedChild = PopulateComponent(child, element);
                component.Children.Add(populatedChild);
            }

            return(component);
        }
Exemple #2
0
    void Start()
    {
        //Debug.Log("".IndexOf());
        // 初期データのインスタンスがない場合は、データを再ロードする。
        isDataReady = TextFileHelper.IsExist(Const.Path.MasterData.escapeInput) && ScenarioRepository.Count != 0;
        if (!isDataReady && TextFileHelper.IsExist(Const.Path.MasterData.escapeInput))
        {
            GameController.Instance.Init();
            isDataReady = true;
        }
        viewController  = GameObject.FindObjectOfType <StorySceneViewController>();
        scenarioManager = GameObject.FindObjectOfType <ScenarioManager>();
        escapeManager   = GameObject.FindObjectOfType <EscapeManager>();
        viewController.Init();
        scenarioManager.Init();
        textHelper = new TextComponentHelper(viewController.contentText);

        if (isDataReady)
        {
            scenarioManager.Next();
        }
    }