Exemplo n.º 1
0
    // Start is called before the first frame update
    void Start()
    {
        mCurrentDungeonData  = defaultDungeonData;
        mCurrentDungeonFloor = 1;

        cinematicDirector.LoadCinematicFromResource("Cinematics/characters");

        mActionSet = new BasicActionSet();
    }
Exemplo n.º 2
0
    public override IEnumerator PlayInternal(CinematicDirector player)
    {
        Typewriter target = player.objectMap.GetObjectByName(mTarget).GetComponent <Typewriter>();

        if (!mWaitForInteraction)
        {
            yield return(target.ShowTextCoroutine(mText, 1f));
        }
        else
        {
            target.ShowText(mText, 1f);

            // Provide a little lag time
            yield return(new WaitForSeconds(0.25f));

            bool           keepWaiting = true;
            BasicActionSet actionSet   = Game.instance.actionSet;
            while (keepWaiting)
            {
                if (target.isAnimating)
                {
                    if (actionSet.Activate.WasPressed || actionSet.Spell.WasPressed)
                    {
                        target.ForceFinish();
                    }
                }
                else
                {
                    if (actionSet.Activate.WasPressed || actionSet.Spell.WasPressed)
                    {
                        keepWaiting = false;

                        if (!mKeepOpen)
                        {
                            target.HideText();
                        }
                    }
                }

                yield return(null);
            }
        }
        yield break;
    }