예제 #1
0
    public void OnSetupNextLine(ActorScene scene, ActorSceneComponent part)
    {
        if (part is ActorCompleteMinigame || part is ActorShowQuestParchment || part is ActorPosition)
        {
            Debug.Log("Note: We are not saving progress for type:" + part.GetType().ToString());
            return;
        }
        var questPartNotification = new QuestPartNotification(scene as Quest, part);

        SendMessage("OnStartedQuestPart", questPartNotification);
    }
예제 #2
0
    void PlayNextLine()
    {
        gotoNextLine = false;

        if (SceneIsDone())
        {
            CompletedScene();
            return;
        }

        if (activeLine != null)
        {
            activeLine.Dispose();
            activeLine = null;
        }

        Debug.Log($"play next line {lineIndex} ");
        activeLine = lines[lineIndex];
        if (activeLine)
        {
            Debug.Log("Actorscene " + name + " sets line: " + activeLine.name + " _________________________________________");
        }
        else
        {
            Debug.Log("Actorscene " + name + " has a missing line with index: " + lineIndex + " _________________________________________!!");
        }


#if UNITY_EDITOR
        debugString = name + ": " + activeLine.name;
#endif

        DebugUtilities.Assert(activeLine != null, "Active Line is null");
        lineIndex++;

        if (activeLineNotification != null)
        {
            activeLineNotification(this, activeLine);
        }

        DebugUtilities.Assert(activeLine != null, "Active Line is null before act");
        Debug.Log("ACT: scene: " + activeLine.name + " " + activeLine.GetType());

        activeLine.OnComponentDone   += OnComponentDone;
        activeLine.OnComponentFailed += OnComponentFailed;
        activeLine.OnComponentQuit   += OnComponentQuit;

        activeLine.ActInScene(this);

        SetupMoveAndInteraction();

        isResuming = false;
    }