예제 #1
0
    void advanceDialog()
    {
        Debug.Assert(currentItem != null);
        var next = currentItem.next(this);

        while (next != null && next != currentItem)
        {
            Debug.Log("advance dialog " + next);
            next.enter(this);
            currentItem = next;
            next        = currentItem.next(this);
        }
        ;

        if (next == null)
        {
            Debug.Log("end conversation");
            currentItem = null;
            Debug.Assert(player != null);
            player.GetComponent <Actor>().SetState(EActorState.Walking);
            endDialog.Invoke();
        }
    }