示例#1
0
    /// <summary>
    /// 必要リソースの読み込み
    /// </summary>
    private void Load()
    {
        //WAVEデータ読み込み
        this.waveDataHandle = AssetManager.Load<FishWaveData>(SharkDefine.GetFishWaveDataPath(this.stageData.key), (asset) =>
        {
            //WAVE準備
            this.waveDataController = new FishWaveDataController(new Fish.ID(), asset, 0f);
            this.waveDataController.onFinished = this.OnAllWaveFinished;

            //背景リソース読み込み
            this.loader.Add<Sprite>(SharkDefine.GetBattleBgSpritePath(this.worldData.key));

            //WAVE必要リソース読み込み
            this.loader.AddRange(this.waveDataController.loader);

            //バトルアイテムアイコンリソース読み込み
            this.battleItemIconManager.Set(
                userItemDatas: new UserItemData[]{
                    new UserItemData{ itemType = ItemType.BattleItem, itemId = this.stageData.itemId1, stockCount = this.stageData.amount1 },
                    new UserItemData{ itemType = ItemType.BattleItem, itemId = this.stageData.itemId2, stockCount = this.stageData.amount2 },
                },
                onClick: this.OnClickItemIcon
            );
            this.battleItemIconManager.LoadIfNeed();

            //BGM読み込み
            this.loader.Add<BgmClipData>(SharkDefine.GetBgmClipPath(this.worldData.bgmName));

            //SE読み込み
            this.loader.Add<AudioClip>(SharkDefine.GetSeClipPath(SeName.CAPTURE_SINGLE));
            this.loader.Add<AudioClip>(SharkDefine.GetSeClipPath(SeName.FVATTACK_OK));
            this.loader.Add<AudioClip>(SharkDefine.GetSeClipPath(SeName.FVATTACK_START));

            //砲台リソース読み込み
            this.loader.AddRange(this.turret.loader);

            //ロード
            this.loader.Load();

            //ロード完了待ち
            StartCoroutine(new WaitWhile(AssetManager.IsLoading).AddCallback(() =>
            {
                //ローディング表示消す
                SharedUI.Instance.HideSceneChangeAnimation();

                //BGM再生
                this.bgmTrack = SoundManager.Instance.PlayBgm(this.worldData.bgmName);

                //背景
                this.bgImage.sprite = this.loader[SharkDefine.GetBattleBgSpritePath(this.worldData.key)].handle.asset as Sprite;

                //バトルWAVEセットアップ
                this.waveDataController.Setup();

                //アイテムアイコンセットアップ
                this.battleItemIconManager.Setup();

                //砲台セットアップ
                this.turret.Setup();

                //FVアタックゲージセットアップ
                this.uiFvAttackGauge.Setup();

                //魚ゲージセットアップ
                this.uiFishGauge.Setup(this.waveDataController.master);

                //準備完了したらバトル開始
                this.stateManager.ChangeState<BattleStartState>();
            }));
        });
    }