Example #1
0
    public static StoryContainer parseStory(TextAsset storyText)
    {
        StoryContainer container = new StoryContainer();

        string[] msgObjs = storyText.text.Split(msgObjSepar, System.StringSplitOptions.RemoveEmptyEntries);
        string[] msgData;
        string[] instrData;
        string   background = null;
        string   portrait   = null;

        for (int i = 0; i < msgObjs.Length; i++)
        {
            msgData = msgObjs[i].Split(instSepar, System.StringSplitOptions.None);
            if (msgData[0] != null && msgData[0].Length > 0)
            {
                instrData = msgData[0].Split(instrDataSepar, System.StringSplitOptions.RemoveEmptyEntries);
                for (int j = 0; j < instrData.Length; j++)
                {
                    if (instrData[j].StartsWith("prt"))
                    {
                        portrait = Vars.EROTIC? instrData[j].Substring(4): null;
                    }
                    else if (instrData[j].StartsWith("bg"))
                    {
                        background = instrData[j].Substring(3);
                    }
                }
            }
            container.addStoryObject(new StoryContainer.StoryObject(msgData[1], background, portrait));
        }

        return(container);
    }
Example #2
0
    public override void _Ready()
    {
        // Retrieve or create some Nodes we know we'll need quite often
        story     = GetNode <InkStory>("Story");
        container = GetNode <StoryContainer>("Container");

        timer           = new Timer();
        timer.Autostart = false;
        timer.WaitTime  = 0.3f;
        timer.OneShot   = true;
        AddChild(timer);
    }
Example #3
0
    public void playNextChapter()
    {
        planetSurface.setVisible(false);
        Vars.chapter++;
        switch (Vars.chapter)
        {
        case Chapter.INTRODUCTION: storyContainer = StoryParser.parseStory(introduction); break;

        default: Debug.Log("Unknown chapter: " + Vars.chapter); break;
        }
        UserInterface.showInterface = false;
        gameObject.SetActive(true);
        forward();
    }