Пример #1
0
    static public void NovelEvent(NovelWindowParts novelWindowParts, string context, EventSpriteRenderer characterSprite = null)
    {
        AllEventManager allEventMgr = AllEventManager.GetInstance();
        AllSceneManager allSceneMgr = AllSceneManager.GetInstance();

        //ウィンドウの表示
        allEventMgr.UpdateGameObjectSet(novelWindowParts.GetUpdateGameObject());
        allEventMgr.UpdateGameObjectsActiveSetExecute(true);

        if (characterSprite)
        {
            //スプライトの変更
            characterSprite.GetSpriteRenderer().sprite = EnemyTrainerData.GetInstance().GetSprite();

            //キャラクターの表示
            allEventMgr.EventSpriteRendererSet(
                characterSprite
                , null
                , new Color32(255, 255, 255, 255)
                );;
            allEventMgr.EventSpriteRenderersUpdateExecuteSet(EventSpriteRendererEventManagerExecute.ChangeColor);
            allEventMgr.AllUpdateEventExecute(0.3f);

            //ウェイト
            allEventMgr.EventWaitSet(allSceneMgr.GetEventWaitTime());
        }

        List <string> contexts = t13.Utility.ContextSlice(context, "\r\n\r\n");

        for (int i = 0; i < contexts.Count; ++i)
        {
            //文字列の処理
            allEventMgr.EventTextSet(novelWindowParts.GetNovelWindowEventText(), contexts[i]);
            allEventMgr.EventTextsUpdateExecuteSet(EventTextEventManagerExecute.CharaUpdate);
            allEventMgr.AllUpdateEventExecute(0.6f);

            //Blinkの開始
            allEventMgr.EventSpriteRendererSet(novelWindowParts.GetNovelBlinkIconParts().GetNovelBlinkIconEventSprite());
            allEventMgr.EventSpriteRenderersUpdateExecuteSet(EventSpriteRendererEventManagerExecute.BlinkStart);
            allEventMgr.AllUpdateEventExecute();

            //Enterの押下待ち
            allEventMgr.EventTriggerSet();

            //SE
            allEventMgr.SEAudioPlayOneShotEventSet(ResourcesSoundsLoader.GetInstance().GetSounds(SoundsPathSupervisor.GetInstance().GetPathNovelNext()));

            //Blinkの終了
            allEventMgr.EventSpriteRendererSet(novelWindowParts.GetNovelBlinkIconParts().GetNovelBlinkIconEventSprite());
            allEventMgr.EventSpriteRenderersUpdateExecuteSet(EventSpriteRendererEventManagerExecute.BlinkEnd);
            allEventMgr.AllUpdateEventExecute();
        }

        //ウィンドウの初期化
        allEventMgr.EventTextSet(novelWindowParts.GetNovelWindowEventText(), "");
        allEventMgr.EventTextsUpdateExecuteSet(EventTextEventManagerExecute.CharaUpdate);
        allEventMgr.AllUpdateEventExecute();

        if (characterSprite)
        {
            //キャラクターの非表示
            allEventMgr.EventSpriteRendererSet(
                characterSprite
                , null
                , new Color32(255, 255, 255, 0)
                );;
            allEventMgr.EventSpriteRenderersUpdateExecuteSet(EventSpriteRendererEventManagerExecute.ChangeColor);
            allEventMgr.AllUpdateEventExecute();
        }

        //ウィンドウの非表示
        allEventMgr.UpdateGameObjectSet(novelWindowParts.GetUpdateGameObject());
        allEventMgr.UpdateGameObjectsActiveSetExecute(false);
    }