コード例 #1
0
ファイル: Scene.cs プロジェクト: request-time-out/A-Scripts
 public IEnumerator LoadBaseSceneCoroutine(Scene.Data data)
 {
     // ISSUE: object of a compiler-generated type is created
     return((IEnumerator) new Scene.\u003CLoadBaseSceneCoroutine\u003Ec__Iterator1()
     {
         data = data,
         \u0024this = this
     });
 }
コード例 #2
0
ファイル: Scene.cs プロジェクト: request-time-out/A-Scripts
 private IEnumerator LoadSet(Scene.Data data)
 {
     // ISSUE: object of a compiler-generated type is created
     return((IEnumerator) new Scene.\u003CLoadSet\u003Ec__Iterator0()
     {
         data = data,
         \u0024this = this
     });
 }
コード例 #3
0
ファイル: Scene.cs プロジェクト: request-time-out/A-Scripts
        public bool UnLoad()
        {
            bool flag = false;

            if (this.sceneStack.Count <= 1)
            {
                return(false);
            }
            Scene.Data     scene          = this.sceneStack.Peek();
            AsyncOperation asyncOperation = scene.Unload();

            this.sceneStack.Pop();
            Scene.Data.UnloadType unloadType = Scene.Data.UnloadType.Success;
            if (asyncOperation != null)
            {
                if (this.NowSceneNames.Any <string>((Func <string, bool>)(s => s == scene.levelName)))
                {
                    unloadType = Scene.Data.UnloadType.Loaded;
                }
            }
            else
            {
                unloadType = Scene.Data.UnloadType.Fail;
            }
            switch (unloadType)
            {
            case Scene.Data.UnloadType.Fail:
                if (this.AddSceneName.IsNullOrEmpty())
                {
                    this.StartCoroutine(this.LoadStart(this.sceneStack.Pop(), true));
                    break;
                }
                flag = true;
                break;

            case Scene.Data.UnloadType.Loaded:
                flag = true;
                break;
            }
            if (flag)
            {
                do
                {
                    this.loadStack.Push(this.sceneStack.Pop());
                }while (this.loadStack.Peek().isAdd);
                while (this.loadStack.Any <Scene.Data>())
                {
                    Scene.Data data    = this.loadStack.Pop();
                    bool       isAsync = data.isAsync;
                    data.isAsync = false;
                    this.sceneStack.Push(data);
                    data.isAsync = isAsync;
                }
            }
            return(true);
        }
コード例 #4
0
ファイル: Scene.cs プロジェクト: request-time-out/A-Scripts
 public IEnumerator LoadStart(Scene.Data data, bool isLoadingImageDraw = true)
 {
     // ISSUE: object of a compiler-generated type is created
     return((IEnumerator) new Scene.\u003CLoadStart\u003Ec__Iterator8()
     {
         data = data,
         isLoadingImageDraw = isLoadingImageDraw,
         \u0024this = this
     });
 }
コード例 #5
0
ファイル: Scene.cs プロジェクト: request-time-out/A-Scripts
 protected override void Awake()
 {
     if (!this.CheckInstance())
     {
         Object.Destroy((Object)((Component)this).get_gameObject());
     }
     else
     {
         Object.DontDestroyOnLoad((Object)((Component)this).get_gameObject());
         GameObject asset = AssetBundleManager.LoadAsset("scene/scenemanager.unity3d", "scenemanager", typeof(GameObject), (string)null).GetAsset <GameObject>();
         this.manager = (GameObject)Object.Instantiate <GameObject>((M0)asset, ((Component)this).get_transform(), false);
         ((Object)this.manager).set_name(((Object)asset).get_name());
         this.nowLoadingImage   = ((IEnumerable <Image>) this.manager.GetComponentsInChildren <Image>(true)).FirstOrDefault <Image>((Func <Image, bool>)(p => ((Object)p).get_name() == "NowLoading"));
         this.progressSlider    = ((IEnumerable <Slider>) this.manager.GetComponentsInChildren <Slider>(true)).FirstOrDefault <Slider>((Func <Slider, bool>)(p => ((Object)p).get_name() == "Progress"));
         this.loadingAnimeImage = ((IEnumerable <Image>) this.manager.GetComponentsInChildren <Image>(true)).FirstOrDefault <Image>((Func <Image, bool>)(p => ((Object)p).get_name() == "LoadingAnime"));
         this.nowLoadingImage.SafeProc <Image>((Action <Image>)(t => ((Component)t).get_gameObject().SetActive(false)));
         this.progressSlider.SafeProc <Slider>((Action <Slider>)(t => ((Component)t).get_gameObject().SetActive(false)));
         this.loadingAnimeImage.SafeProc <Image>((Action <Image>)(t => ((Component)t).get_gameObject().SetActive(false)));
         this.loadingPanel = (LoadingPanel)this.manager.GetComponentInChildren <LoadingPanel>(true);
         this.loadingPanel.SafeProc <LoadingPanel>((Action <LoadingPanel>)(t => ((Component)t).get_gameObject().SetActive(false)));
         this.sceneFade       = (SceneFade)this.manager.GetComponentInChildren <SceneFade>(true);
         this.initFadeColor   = this.sceneFade._Color;
         this.sceneFade._Fade = SimpleFade.Fade.Out;
         this.sceneFade.ForceEnd();
         AssetBundleManager.UnloadAssetBundle("scene/scenemanager.unity3d", false, (string)null, false);
         Scene.Data data1       = new Scene.Data();
         Scene.Data data2       = data1;
         Scene      activeScene = Scene.ActiveScene;
         string     name        = ((Scene) ref activeScene).get_name();
         data2.levelName = name;
         data1.isAdd     = false;
         this.sceneStack = new Scene.SceneStack <Scene.Data>(data1);
         this.loadStack  = new Stack <Scene.Data>();
         this.CreateSpace();
         Application.add_wantsToQuit(new Func <bool>(this.CanQuit));
         this.isGameEndCheck = true;
         this.isSkipGameExit = false;
     }
 }
コード例 #6
0
ファイル: Scene.cs プロジェクト: request-time-out/A-Scripts
 public void LoadReserve(Scene.Data data, bool isLoadingImageDraw)
 {
     this.StartCoroutine(this.LoadStart(data, isLoadingImageDraw));
 }
コード例 #7
0
ファイル: Scene.cs プロジェクト: request-time-out/A-Scripts
 public void LoadBaseScene(Scene.Data data)
 {
     this.StartCoroutine(this.LoadBaseSceneCoroutine(data));
 }