Beispiel #1
0
        public void SetupEquip()
        {
            treasureMain.m_prefIconInventry.SetActive(false);
            treasureMain.equip_treasure_list.Clear();
            MonoBehaviourEx.DeleteObjects <IconInventry>(treasureMain.m_rootSettingTreasure);
            for (int i = 0; i < 3; i++)
            {
                IconInventry icon = PrefabManager.Instance.MakeScript <IconInventry>(treasureMain.m_prefIconInventry, treasureMain.m_rootSettingTreasure);

                DataTreasureParam equip_data = DataManager.Instance.dataTreasure.list.Find(p => p.equip == i + 1);
                if (equip_data != null)
                {
                    MasterTreasureParam master = DataManager.Instance.masterTreasure.list.Find(p => p.treasure_id == equip_data.treasure_id);
                    icon.Initialize(equip_data, master);
                }
                else
                {
                    equip_data             = new DataTreasureParam();
                    equip_data.equip       = i + 1;
                    equip_data.treasure_id = 0;
                    icon.Initialize(equip_data, null);
                }

                treasureMain.equip_treasure_list.Add(icon);
                icon.OnClickTreasure.AddListener(OnSelectEquipBase);
            }
            treasureMain.SelectEquip(0);
        }
Beispiel #2
0
        public override void OnEnter()
        {
            base.OnEnter();

            int iNum = DataManager.Instance.dataWeaponAlbum.list.Count;

            main.m_txtListTitle.text = string.Format("武器アルバム({0}/{1})", iNum, DataManager.Instance.masterWeapon.list.Count);

            main.m_btnEquip.gameObject.SetActive(false);
            main.m_btnAlbum.gameObject.SetActive(false);
            main.m_btnBuy.gameObject.SetActive(false);
            main.m_btnGradeup.gameObject.SetActive(false);
            main.m_btnBulk.gameObject.SetActive(false);

            main.m_btnList.gameObject.SetActive(true);
            main.m_btnList.onClick.AddListener(() =>
            {
                Finish();
            });

            main.weapon_list.Clear();
            MonoBehaviourEx.DeleteObjects <IconInventry>(main.m_goListContents);
            foreach (DataWeaponParam data in DataManager.Instance.dataWeaponAlbum.list)
            {
                IconInventry icon = PrefabManager.Instance.MakeScript <IconInventry>(
                    main.m_prefIconInventry,
                    main.m_goListContents);
                MasterWeaponParam master = DataManager.Instance.masterWeapon.list.Find(p => p.weapon_id == data.weapon_id);

                icon.Initialize(data, master);
                main.weapon_list.Add(icon);

                icon.OnClickWeapon.AddListener(OnSelectListWeapon);
            }
        }
        private static IBindingData BindRealAssetService(Container container, AssetServiceConfig config,
                                                         MonoBehaviourEx mb)
        {
            container.BindSingleton <IAssetLoadingTaskImpl, AssetLoadingTaskImpl>();
            container.BindSingleton <ISimpleFactory <IAssetLoadingTaskImpl>, AssetLoadingTaskImplFactory>();
            container.BindSingleton <ISimpleFactory <IResourceLoadingTaskImpl>, ResourceLoadingTaskImplFactory>();
            container.BindInstance <IAssetIndexForInstallerLoader>(new AssetIndexForInstallerLoader(mb));

            return(container.BindSingleton <IAssetService, AssetService>()
                   .OnPreInit(serviceInstance =>
            {
                var assetService = (AssetService)serviceInstance;
                assetService.UpdateIsEnabled = config.UpdateIsEnabled;
                assetService.DownloadRetryCount = config.DownloadRetryCount;
                assetService.ConcurrentAssetLoaderCount = config.ConcurrentAssetLoaderCount;
                assetService.ConcurrentResourceLoaderCount = config.ConcurrentResourceLoaderCount;
                assetService.AssetCachePoolCapacity = config.AssetCachePoolCapacity;
                assetService.ResourceCachePoolCapacity = config.ResourceCachePoolCapacity;
                assetService.AssetAccessorPoolCapacity = config.AssetAccessorPoolCapacity;
                assetService.UpdateRelativePathFormat = config.UpdateRelativePathFormat;
                assetService.ReadWritePath = Path.Combine(Application.persistentDataPath, config.ReadWriteRelativePath);
                assetService.InstallerPath = Path.Combine(Application.streamingAssetsPath, config.InstallerRelativePath);
                assetService.ResourceDestroyer = new ResourceDestroyer();
                assetService.BundleVersion = Application.version;
                assetService.ReleaseResourceInterval = config.ReleaseResourceInterval;
                assetService.UpdateSizeBeforeSavingReadWriteIndex = config.UpdateSizeBeforeSavingReadWriteIndex;
                assetService.RunningPlatform = GetRunningPlatform(config);
                foreach (var url in config.UpdateServerRootUrls)
                {
                    assetService.AddUpdateServerRootUrl(url);
                }
            }).OnPostShutdown(() => { AssetBundle.UnloadAllAssetBundles(true); }));
        }
Beispiel #4
0
        public override void OnEnter()
        {
            base.OnEnter();
            treasureMain.m_txtListTitle.text = string.Format("おたから図鑑({0}/{1})",
                                                             DataManager.Instance.dataTreasureAlbum.list.Count,
                                                             DataManager.Instance.masterTreasure.list.Count);

            treasureMain.m_btnBack.gameObject.SetActive(true);
            treasureMain.m_btnBuy.gameObject.SetActive(false);
            treasureMain.m_btnGradeup.gameObject.SetActive(false);

            SetupEquip();

            treasureMain.m_btnBack.onClick.AddListener(() =>
            {
                Fsm.Event("back");
            });

            treasureMain.treasure_list.Clear();
            MonoBehaviourEx.DeleteObjects <IconInventry>(treasureMain.m_goListContents);
            foreach (DataTreasureParam treasure in DataManager.Instance.dataTreasureAlbum.list)
            {
                IconInventry        icon   = PrefabManager.Instance.MakeScript <IconInventry>(treasureMain.m_prefIconInventry, treasureMain.m_goListContents);
                MasterTreasureParam master = DataManager.Instance.masterTreasure.list.Find(p => p.treasure_id == treasure.treasure_id);

                icon.Initialize(treasure, master);
                treasureMain.treasure_list.Add(icon);

                icon.OnClickTreasure.AddListener(OnSelectListTreasure);
            }
        }
Beispiel #5
0
        public override void OnEnter()
        {
            base.OnEnter();

            DataCharaParam   data_chara   = DataManager.Instance.dataChara.list.Find(p => p.status == DataChara.STATUS.USING.ToString());
            MasterCharaParam master_chara = DataManager.Instance.masterChara.list.Find(p => p.chara_id == data_chara.chara_id);

            armorMain.m_imgChara.sprite = armorMain.m_spriteAtlasChara.GetSprite(master_chara.GetIconName());

            armorMain.icon_armor_list.Clear();
            armorMain.m_prefArmorIcon.SetActive(false);
            MonoBehaviourEx.DeleteObjects <IconArmor>(armorMain.m_goRootLeft);
            MonoBehaviourEx.DeleteObjects <IconArmor>(armorMain.m_goRootRight);

            for (int i = 0; i < 4; i++)
            {
                IconArmor script = PrefabManager.Instance.MakeScript <IconArmor>(armorMain.m_prefArmorIcon, armorMain.m_goRootLeft);
                armorMain.icon_armor_list.Add(script);
            }
            for (int i = 0; i < 4; i++)
            {
                IconArmor script = PrefabManager.Instance.MakeScript <IconArmor>(armorMain.m_prefArmorIcon, armorMain.m_goRootRight);
                armorMain.icon_armor_list.Add(script);
            }

            for (int i = 0; i < MasterArmor.ArmorPositionArr.Length; i++)
            {
                DataArmorParam data = DataManager.Instance.dataArmor.list.Find(p => p.position == MasterArmor.ArmorPositionArr[i]);

                armorMain.icon_armor_list[i].Initialize(data, DataManager.Instance.masterArmor.list);
            }
            position.Value = "helmet";
            Finish();
        }
Beispiel #6
0
        public AssetIndexForInstallerLoader(MonoBehaviourEx behaviour)
        {
            if (behaviour == null)
            {
                throw new ArgumentNullException(nameof(behaviour));
            }

            m_MonoBehaviour = behaviour;
        }
    protected T ParentComponent <T>(ref T m_cache, bool skipSelf = false)
        where T : class
    {
        if (null != m_cache)
        {
            if (m_cache is IValidable validableObject && validableObject.Valid)
            {
                return(m_cache);
            }

            if (m_cache is Component component && component)
            {
                return(m_cache);
            }
        }

        if (typeof(IValidable).IsAssignableFrom(typeof(T)))
        {
            MonoBehaviourEx parentIt = null;
            if (skipSelf)
            {
                if (transform.parent && transform.parent.GetComponentInParent <MonoBehaviourEx>() is MonoBehaviourEx parent)
                {
                    parentIt = parent;
                }
            }
            else
            {
                parentIt = this;
            }

            while (parentIt)
            {
                if (parentIt.OwnComponent(ref m_cache) is IValidable validable && validable.Valid)
                {
                    return(m_cache);
                }

                if (parentIt.transform.parent is Transform parent)
                {
                    parentIt = parent.GetComponentInParent <MonoBehaviourEx>();
                }
                else
                {
                    parentIt = null;
                }
            }
        }
        else if (typeof(Component).IsAssignableFrom(typeof(T)))
        {
            m_cache = GetComponentInParent <T>();
            return(m_cache);
        }

        return(m_cache);
    }
Beispiel #8
0
    public void Initialize(int _iFloorId, int _iTime)
    {
        m_txtClearMessage.text = string.Format("{0}F Clear!!", _iFloorId);
        m_txtClearTime.text    = string.Format("{0:D2}:{1:D2}", _iTime / 60, _iTime % 60);

        m_prefPrizeIcon.SetActive(false);

        MonoBehaviourEx.DeleteObjects <IconResultPrize>(m_goPrizeRoot);
        foreach (DataItemParam data in DataManager.Instance.dataGetItem.list)
        {
            IconResultPrize script = PrefabManager.Instance.MakeScript <IconResultPrize>(m_prefPrizeIcon, m_goPrizeRoot);
            script.Initialize(data);
        }
    }
Beispiel #9
0
    public void ShowFloorList(int _iStage, Action <int> _action)
    {
        m_prefFloor.SetActive(false);
        MonoBehaviourEx.DeleteObjects <BannerFloor>(m_goFloorRoot);

        foreach (MasterFloorParam master in DataManager.Instance.masterFloor.list.FindAll(p => p.stage_id == _iStage))
        {
            BannerFloor script = PrefabManager.Instance.MakeScript <BannerFloor>(m_prefFloor, m_goFloorRoot);
            script.Initialize(DataManager.Instance.dataFloor.list.Find(f => f.floor_id == master.floor_id), master);
            script.m_btn.onClick.AddListener(() =>
            {
                _action.Invoke(script.floor_id);
            });
        }
    }
Beispiel #10
0
    public void GachaTenSample()
    {
        Debug.Log("ten");
        m_goBackground.SetActive(true);
        m_goPanelTen.SetActive(true);

        m_prefChest.SetActive(false);

        open_count = 0;
        m_btnCloseTen.interactable = false;
        m_btnBulkOpen.interactable = true;
        chest_list.Clear();
        MonoBehaviourEx.DeleteObjects <GachaChest>(m_goPanelTen);

        for (int i = 0; i < 10; i++)
        {
            GachaChest chest = PrefabManager.Instance.MakeScript <GachaChest>(m_prefChest, m_goTenChestRoot);
            chest.Initialize(m_sprAtlasIcons.GetSprite("chest_t_01"), m_sprAtlasWeapon.GetSprite("150_t"), 1);
            m_btnCloseOne.onClick.RemoveAllListeners();
            chest.OnChestOpen.AddListener(() =>
            {
                open_count += 1;
                Debug.Log(open_count);
                if (10 <= open_count)
                {
                    m_btnCloseTen.interactable = true;
                    m_btnBulkOpen.interactable = false;
                }
            });
            chest_list.Add(chest);
        }

        m_btnCloseTen.onClick.RemoveAllListeners();
        m_btnCloseTen.onClick.AddListener(() =>
        {
            Debug.Log("m_btnCloseTen.onClick");
            OnGachaFinished.Invoke();
        });

        m_btnBulkOpen.onClick.AddListener(() =>
        {
            foreach (GachaChest chest in chest_list)
            {
                chest.m_btnChest.onClick.Invoke();
            }
        });
    }
Beispiel #11
0
        public override void OnEnter()
        {
            base.OnEnter();
            skillMain.m_charaView.Initialize();

            skillMain.m_prefBannerSkill.SetActive(false);



            skillMain.m_goViewSkill_Setting.SetActive(true);
            skillMain.m_goViewSkill_List.SetActive(false);

            skillMain.skill_banner_list.Clear();
            MonoBehaviourEx.DeleteObjects <BannerSkill>(skillMain.m_goSettingSkillRoot);
            for (int i = 0; i < 3; i++)
            {
                DataSkillParam data = DataManager.Instance.dataSkill.list.Find(p => p.position == i + 1);
                if (data == null)
                {
                    data = new DataSkillParam(0, i + 1);
                }
                BannerSkill script = PrefabManager.Instance.MakeScript <BannerSkill>(skillMain.m_prefBannerSkill, skillMain.m_goSettingSkillRoot);
                skillMain.skill_banner_list.Add(script);
                MasterSkillParam master = DataManager.Instance.masterSkill.list.Find(p => p.skill_id == data.skill_id);
                script.Initialize(data, master);
            }



            skillMain.AllButtonClose();
            skillMain.m_btnEdit.gameObject.SetActive(true);
            skillMain.m_btnShop.gameObject.SetActive(true);
            skillMain.m_btnList.gameObject.SetActive(true);
            skillMain.m_btnEdit.onClick.AddListener(() =>
            {
                Fsm.Event("edit");
            });
            skillMain.m_btnShop.onClick.AddListener(() =>
            {
                Fsm.Event("shop");
            });
            skillMain.m_btnList.onClick.AddListener(() =>
            {
                Fsm.Event("list");
            });
        }
Beispiel #12
0
    public void GachaMulti(List <ChestData> _list)
    {
        m_goBackground.SetActive(true);
        m_goPanelTen.SetActive(true);

        m_prefChest.SetActive(false);

        open_count = 0;
        m_btnCloseTen.interactable = false;
        m_btnBulkOpen.interactable = true;
        chest_list.Clear();
        MonoBehaviourEx.DeleteObjects <GachaChest>(m_goPanelTen);

        foreach (ChestData data in _list)
        {
            GachaChest chest = PrefabManager.Instance.MakeScript <GachaChest>(m_prefChest, m_goTenChestRoot);
            chest.Initialize(data.spr_chest, data.spr_item, data.rarity);
            m_btnCloseOne.onClick.RemoveAllListeners();
            chest.OnChestOpen.AddListener(() =>
            {
                open_count += 1;
                if (_list.Count <= open_count)
                {
                    m_btnCloseTen.interactable = true;
                    m_btnBulkOpen.interactable = false;
                }
            });
            chest_list.Add(chest);
        }

        m_btnCloseTen.onClick.RemoveAllListeners();
        m_btnCloseTen.onClick.AddListener(() =>
        {
            Debug.Log("m_btnCloseTen.onClick");
            OnGachaFinished.Invoke();
        });

        m_btnBulkOpen.onClick.AddListener(() =>
        {
            foreach (GachaChest chest in chest_list)
            {
                chest.m_btnChest.onClick.Invoke();
            }
        });
    }
Beispiel #13
0
        public override void OnEnter()
        {
            base.OnEnter();

            charaMain.m_prefIconChara.SetActive(false);

            charaMain.icon_chara_list.Clear();
            MonoBehaviourEx.DeleteObjects <IconCharaList>(charaMain.m_goIconRoot);
            foreach (MasterCharaParam chara in DataManager.Instance.masterChara.list)
            {
                IconCharaList script = PrefabManager.Instance.MakeScript <IconCharaList>(charaMain.m_prefIconChara, charaMain.m_goIconRoot);
                script.Initialize(chara, DataManager.Instance.dataChara.list.Find(p => p.chara_id == chara.chara_id));
                charaMain.icon_chara_list.Add(script);
            }

            chara_id.Value = DataManager.Instance.dataChara.list.Find(p => p.status == DataChara.STATUS.USING.ToString()).chara_id;
            Finish();
        }
Beispiel #14
0
        public override void OnEnter()
        {
            base.OnEnter();
            select_skill_id.Value     = 0;
            skillMain.m_txtPrice.text = "0";

            skillMain.m_charaView.Initialize();

            skillMain.m_goViewSkill_Setting.SetActive(false);
            skillMain.m_goViewSkill_List.SetActive(true);

            skillMain.skill_banner_list.Clear();
            MonoBehaviourEx.DeleteObjects <BannerSkill>(skillMain.m_goListContentsRoot);
            foreach (MasterSkillParam master in DataManager.Instance.masterSkill.list.FindAll(p => 0 < p.skill_id && p.usable))
            {
                DataSkillParam check_data = DataManager.Instance.dataSkill.list.Find(p => p.skill_id == master.skill_id);
                if (check_data == null)
                {
                    BannerSkill script = PrefabManager.Instance.MakeScript <BannerSkill>(skillMain.m_prefBannerSkill, skillMain.m_goListContentsRoot);
                    script.gameObject.GetComponent <RectTransform>().sizeDelta = new Vector2(0, 90);

                    DataSkillParam data = new DataSkillParam(master.skill_id, 0);
                    script.Initialize(data, master);
                    script.OnClickBanner.AddListener(OnSkillBanner);
                    skillMain.skill_banner_list.Add(script);
                }
            }

            skillMain.AllButtonClose();
            skillMain.m_btnBuy.gameObject.SetActive(true);
            skillMain.m_btnBack.gameObject.SetActive(true);
            skillMain.m_btnBuy.interactable = false;
            skillMain.m_btnBuy.onClick.AddListener(() =>
            {
                Fsm.Event("buy");
            });
            skillMain.m_btnBack.onClick.AddListener(() =>
            {
                Fsm.Event("back");
            });
        }
Beispiel #15
0
        public override void OnEnter()
        {
            base.OnEnter();
            other.m_goVolumeSetting.SetActive(false);
            other.m_goHelpRoot.SetActive(true);

            other.m_prefBannerHelp.SetActive(false);
            MonoBehaviourEx.DeleteObjects <BannerHelp>(other.m_goBannerRoot);
            foreach (MasterHelpParam param in DataManager.Instance.masterHelp.list)
            {
                BannerHelp banner = PrefabManager.Instance.MakeScript <BannerHelp>(other.m_prefBannerHelp, other.m_goBannerRoot);
                banner.m_txtTitle.text = param.title;
                banner.m_masterParam   = param;
                banner.m_btn.onClick.AddListener(() =>
                {
                    //Debug.Log(banner.m_masterParam.help_id);
                    other.m_txtHelpOutline.text = banner.m_masterParam.message;
                });
            }
            other.m_txtHelpOutline.text = "-----";
        }
        public void Init()
        {
            if (initialized)
            {
                return;
            }

            screens = MonoBehaviourEx.GetComponentsOfDirectChildren <UIScreen>(this, true);
            foreach (UIScreen screen in screens)
            {
                screen.Initialize(this);
            }

            if (InitialScreen != null)
            {
                menuStack.Push(InitialScreen);
                InitialScreen.Show();
            }

            initialized = true;
        }
Beispiel #17
0
    public void Initialize(Action <int> _actionFloor)
    {
        m_prefStage.SetActive(false);
        MonoBehaviourEx.DeleteObjects <IconStage>(m_goStageRoot);

        int iStage = 0;

        foreach (DataStageParam data_stage in DataManager.Instance.dataStage.list.FindAll(p => 0 < p.status))
        {
            if (iStage == 0)
            {
                iStage = data_stage.stage_id;
            }
            IconStage script = PrefabManager.Instance.MakeScript <IconStage>(m_prefStage, m_goStageRoot);
            script.Initialize(data_stage, DataManager.Instance.masterStage.list.Find(p => p.stage_id == data_stage.stage_id));
            script.m_btn.onClick.AddListener(() =>
            {
                ShowFloorList(data_stage.stage_id, _actionFloor);
            });
        }
        ShowFloorList(iStage, _actionFloor);
    }
Beispiel #18
0
        public override void OnEnter()
        {
            base.OnEnter();

            skillMain.m_charaView.Initialize();

            skillMain.m_goViewSkill_Setting.SetActive(false);
            skillMain.m_goViewSkill_List.SetActive(true);

            MonoBehaviourEx.DeleteObjects <BannerSkill>(skillMain.m_goListContentsRoot);
            foreach (DataSkillParam data in DataManager.Instance.dataSkill.list)
            {
                BannerSkill script = PrefabManager.Instance.MakeScript <BannerSkill>(skillMain.m_prefBannerSkill, skillMain.m_goListContentsRoot);
                script.gameObject.GetComponent <RectTransform>().sizeDelta = new Vector2(0, 90);
                MasterSkillParam master = DataManager.Instance.masterSkill.list.Find(p => p.skill_id == data.skill_id);
                script.Initialize(data, master);
            }



            skillMain.AllButtonClose();
            skillMain.m_btnEdit.gameObject.SetActive(true);
            skillMain.m_btnShop.gameObject.SetActive(true);
            skillMain.m_btnBack.gameObject.SetActive(true);
            skillMain.m_btnEdit.onClick.AddListener(() =>
            {
                Fsm.Event("edit");
            });
            skillMain.m_btnShop.onClick.AddListener(() =>
            {
                Fsm.Event("shop");
            });
            skillMain.m_btnBack.onClick.AddListener(() =>
            {
                Fsm.Event("back");
            });
        }
Beispiel #19
0
        public override void OnEnter()
        {
            base.OnEnter();

            treasure_serial.Value = 0;

            int iNum = DataManager.Instance.dataTreasure.list.Count;

            treasureMain.m_txtListTitle.text = string.Format("所持おたから一覧({0}/{1})", iNum, Defines.TREASURE_NUM_LIMIT);

            treasureMain.m_goBuyWindow.SetActive(false);

            treasureMain.m_treasureInfo.Setup(new DataTreasureParam(0, 0), null);
            treasureMain.m_btnBuy.gameObject.SetActive(true);
            treasureMain.m_btnGradeup.gameObject.SetActive(true);

            treasureMain.m_btnGradeup.onClick.AddListener(() =>
            {
                DataTreasureParam data     = DataManager.Instance.dataTreasure.list.Find(p => p.serial == treasure_serial.Value);
                MasterTreasureParam master = DataManager.Instance.masterTreasure.list.Find(p => p.treasure_id == data.treasure_id);

                DataManager.Instance.UseCoin(MasterTreasure.GetGradeupPrice(data, master));
                data.level += 1;
                treasureMain.m_treasureInfo.Setup(data, master);

                foreach (IconInventry icon in treasureMain.treasure_list)
                {
                    if (icon.m_dataTreasure.serial == data.serial)
                    {
                        icon.Initialize(data, master);
                        icon.SelectTreasure(data.serial);
                    }
                }
                foreach (IconInventry icon in treasureMain.equip_treasure_list)
                {
                    if (icon.m_dataTreasure.serial == data.serial)
                    {
                        icon.Initialize(data, master);
                        icon.SelectTreasure(data.serial);
                    }
                }

                DataManager.Instance.dataTreasure.Save();
                DataManager.Instance.user_data.Save();
            });
            treasureMain.m_btnBuy.onClick.AddListener(() =>
            {
                Fsm.Event("buy");
            });



            treasureMain.m_btnEdit.gameObject.SetActive(true);
            treasureMain.m_btnAlbum.gameObject.SetActive(true);

            treasureMain.m_btnEdit.onClick.AddListener(() =>
            {
                Fsm.Event("edit");
            });
            treasureMain.m_btnAlbum.onClick.AddListener(() =>
            {
                Fsm.Event("album");
            });

            treasureMain.m_btnMenuBulk.gameObject.SetActive(true);
            treasureMain.m_btnMenuBulk.onClick.AddListener(() =>
            {
                Fsm.Event("bulk");
            });

            SetupEquip();

            treasureMain.treasure_list.Clear();
            MonoBehaviourEx.DeleteObjects <IconInventry>(treasureMain.m_goListContents);
            foreach (DataTreasureParam treasure in DataManager.Instance.dataTreasure.list)
            {
                IconInventry        icon   = PrefabManager.Instance.MakeScript <IconInventry>(treasureMain.m_prefIconInventry, treasureMain.m_goListContents);
                MasterTreasureParam master = DataManager.Instance.masterTreasure.list.Find(p => p.treasure_id == treasure.treasure_id);

                icon.Initialize(treasure, master);
                treasureMain.treasure_list.Add(icon);

                icon.OnClickTreasure.AddListener(OnSelectListTreasure);
            }
        }
Beispiel #20
0
        public override void OnEnter()
        {
            base.OnEnter();

            icon_position   = 0;
            banner_skill_id = 0;

            foreach (IconSkill skill in skillMain.m_charaView.m_iconSkillList)
            {
                skill.OnClickIcon.AddListener(OnSkillIcon);
            }

            skillMain.m_goViewSkill_Setting.SetActive(false);
            skillMain.m_goViewSkill_List.SetActive(true);

            skillMain.skill_banner_list.Clear();
            MonoBehaviourEx.DeleteObjects <BannerSkill>(skillMain.m_goListContentsRoot);
            foreach (DataSkillParam data in DataManager.Instance.dataSkill.list)
            {
                BannerSkill script = PrefabManager.Instance.MakeScript <BannerSkill>(skillMain.m_prefBannerSkill, skillMain.m_goListContentsRoot);
                script.gameObject.GetComponent <RectTransform>().sizeDelta = new Vector2(0, 90);
                MasterSkillParam master = DataManager.Instance.masterSkill.list.Find(p => p.skill_id == data.skill_id);
                script.Initialize(data, master);
                script.OnClickBanner.AddListener(OnSkillBanner);
                skillMain.skill_banner_list.Add(script);
            }

            skillMain.AllButtonClose();
            skillMain.m_btnSet.gameObject.SetActive(true);
            skillMain.m_btnSet.interactable = false;

            skillMain.m_btnSet.onClick.AddListener(() =>
            {
                // セットしたいスキル
                DataSkillParam target_data = DataManager.Instance.dataSkill.list.Find(p => p.skill_id == banner_skill_id);

                // セット済みのスキル
                DataSkillParam icon_skill_data = DataManager.Instance.dataSkill.list.Find(p => p.position == icon_position);

                //DataSkillParam exchange_data = null;

                int temp_icon_position = skillMain.m_charaView.GetSkillPosition(target_data.skill_id);
                Debug.Log(temp_icon_position);

                // 本命
                target_data.position = icon_position;


                // セットしたいスキルがすでにセット済みの場合
                if (temp_icon_position != 0)
                {
                    // 入れ替えないとだめ
                    if (icon_skill_data != null)
                    {
                        icon_skill_data.position = temp_icon_position;
                    }
                }
                else
                {
                    if (icon_skill_data != null)
                    {
                        icon_skill_data.position = 0;
                    }
                }

                skillMain.m_charaView.Initialize();

                banner_skill_id = 0;
                icon_position   = 0;

                skillMain.SkillBannerSelect(0);
                skillMain.m_charaView.SkillSelect(0);
                DataManager.Instance.dataSkill.Save();
            });

            skillMain.m_btnBack.gameObject.SetActive(true);
            skillMain.m_btnBack.onClick.AddListener(() =>
            {
                Fsm.Event("back");
            });
        }
Beispiel #21
0
        public override void OnEnter()
        {
            base.OnEnter();
            //weapon_serial.Value = 0;

            int iNum = DataManager.Instance.dataWeapon.list.Count;

            main.m_txtListTitle.text = string.Format("所持武器一覧({0}/{1})", iNum, Defines.WEAPON_NUM_LIMIT);
            main.m_goBulkBuyWindow.SetActive(false);

            if (weapon_serial.Value == 0)
            {
                main.m_weaponInfo.Setup(new DataWeaponParam(0, 0), null);
            }
            else
            {
                DataWeaponParam   data   = DataManager.Instance.dataWeapon.list.Find(p => p.serial == weapon_serial.Value);
                MasterWeaponParam master = DataManager.Instance.masterWeapon.list.Find(p => p.weapon_id == data.weapon_id);
                main.m_weaponInfo.Setup(data, master);
            }
            main.m_btnList.gameObject.SetActive(false);

            main.m_btnBulk.gameObject.SetActive(true);
            main.m_btnBulk.onClick.AddListener(() =>
            {
                weapon_serial.Value = 0;
                Fsm.Event("bulk");
            });

            main.m_btnBuy.gameObject.SetActive(true);
            main.m_btnBuy.onClick.AddListener(() =>
            {
                Fsm.Event("buy");
            });
            main.m_btnGradeup.gameObject.SetActive(true);
            main.m_btnGradeup.onClick.AddListener(() =>
            {
                DataWeaponParam data     = DataManager.Instance.dataWeapon.list.Find(p => p.serial == weapon_serial.Value);
                MasterWeaponParam master = DataManager.Instance.masterWeapon.list.Find(p => p.weapon_id == data.weapon_id);
                DataManager.Instance.UseCoin(MasterWeapon.GetGradeupPrice(data, master));

                data.level += 1;
                main.m_weaponInfo.Setup(data, master);

                foreach (IconInventry icon in main.weapon_list)
                {
                    if (icon.m_dataWeapon.serial == data.serial)
                    {
                        icon.Initialize(data, master);
                        icon.SelectTreasure(data.serial);
                    }
                }

                DataManager.Instance.dataWeapon.Save();
                DataManager.Instance.user_data.Save();
            });

            main.m_btnEquip.gameObject.SetActive(true);
            main.m_btnEquip.interactable = false;
            main.m_btnEquip.onClick.AddListener(() =>
            {
                DataWeaponParam data_equip_pre = DataManager.Instance.dataWeapon.list.Find(p => 0 < p.equip);
                data_equip_pre.equip           = 0;
                DataWeaponParam data_equip     = DataManager.Instance.dataWeapon.list.Find(p => p.serial == weapon_serial.Value);
                data_equip.equip         = 1;
                MasterWeaponParam master = DataManager.Instance.masterWeapon.list.Find(p => p.weapon_id == data_equip.weapon_id);

                main.m_weaponInfo.Setup(data_equip, master);

                foreach (IconInventry icon in main.weapon_list)
                {
                    if (icon.m_dataWeapon.serial == data_equip_pre.serial)
                    {
                        icon.m_goEquip.SetActive(false);
                    }
                    if (icon.m_dataWeapon.serial == data_equip.serial)
                    {
                        icon.m_goEquip.SetActive(true);
                    }
                }
                main.m_btnEquip.interactable = false;

                DataManager.Instance.dataWeapon.Save();
            });

            main.m_btnAlbum.gameObject.SetActive(true);
            main.m_btnAlbum.onClick.AddListener(() =>
            {
                Fsm.Event("album");
            });

            main.weapon_list.Clear();
            MonoBehaviourEx.DeleteObjects <IconInventry>(main.m_goListContents);
            foreach (DataWeaponParam data in DataManager.Instance.dataWeapon.list)
            {
                IconInventry icon = PrefabManager.Instance.MakeScript <IconInventry>(
                    main.m_prefIconInventry,
                    main.m_goListContents);
                MasterWeaponParam master = DataManager.Instance.masterWeapon.list.Find(p => p.weapon_id == data.weapon_id);

                icon.Initialize(data, master);
                main.weapon_list.Add(icon);

                icon.OnClickWeapon.AddListener(OnSelectListWeapon);
            }
            main.SelectListData(weapon_serial.Value);
        }
Beispiel #22
0
        public override void OnEnter()
        {
            base.OnEnter();

            float fAutoPotionRate = DataManager.Instance.user_data.ReadFloat(Defines.KEY_AUTOPOTION_RATE);

            gamemain.m_btnAuto.Initialize(DataManager.Instance.user_data.ReadInt(Defines.KEY_USE_AUTOMOVE) != 0);
            gamemain.m_btnAutoPotion.Initialize(
                DataManager.Instance.user_data.ReadInt(Defines.KEY_USE_AUTOPOTION) != 0,
                fAutoPotionRate);

            gamemain.player_chara.gameObject.SetActive(true);

            gamemain.m_panelPauseMenu.m_soundvolumeBGM.SetVolume(DataManager.Instance.user_data.ReadFloat(Defines.KEY_SOUNDVOLUME_BGM));
            BGMControl.Instance.Play("anime_06_loop");

            gamemain.m_panelPauseMenu.m_soundvolumeSE.SetVolume(DataManager.Instance.user_data.ReadFloat(Defines.KEY_SOUNDVOLUME_SE));
            //Debug.Log( string.Format("floor_id={0}", DataManager.Instance.game_data.ReadInt("floor_id")));

            int floor_id = DataManager.Instance.game_data.ReadInt("floor_id");

            gamemain.m_txtFloor.text = string.Format("{0}", floor_id);

            gamemain.master_floor_param = DataManager.Instance.masterFloor.list.Find(p => p.floor_id == floor_id);
            gamemain.master_stage_param = DataManager.Instance.masterStage.list.Find(p => p.stage_id == gamemain.master_floor_param.stage_id);

            gamemain.background.spr_renderer.sprite = gamemain.m_spriteAtlasBackground.GetSprite(gamemain.master_stage_param.bg_name);

            //gamemain.player_chara.Damage(10);


            DataPotionParam   data_potion   = DataManager.Instance.dataPotion.list.Find(p => p.is_use == true);
            MasterPotionParam master_potion = DataManager.Instance.masterPotion.list.Find(p => p.potion_id == data_potion.potion_id);

            gamemain.icon_potion.InitializeGame(data_potion, master_potion);

            gamemain.icon_skill_arr = gamemain.m_goIconRoot.GetComponentsInChildren <IconSkill>();
            for (int i = 0; i < gamemain.icon_skill_arr.Length; i++)
            {
                int            position = i + 1;
                DataSkillParam data     = DataManager.Instance.dataSkill.list.Find(p => p.position == position);
                if (data == null)
                {
                    data = new DataSkillParam(0, position);
                }
                MasterSkillParam master = DataManager.Instance.masterSkill.list.Find(p => p.skill_id == data.skill_id);
                gamemain.icon_skill_arr[i].InitializeGame(data, master);
            }

            #region 敵
            gamemain.m_prefEnemy.gameObject.SetActive(false);
            //gamemain.m_prefEnemyHpBar.gameObject.SetActive(false);

            foreach (GameObject zako_pos in gamemain.zako_position)
            {
                MonoBehaviourEx.DeleteObjects <Transform>(zako_pos);
                create_enemy(
                    gamemain.master_floor_param.enemy_id,
                    gamemain.master_floor_param.enemy_level,
                    zako_pos, false);
            }
            MonoBehaviourEx.DeleteObjects <Transform>(gamemain.boss_position);
            create_enemy(
                gamemain.master_floor_param.boss_enemy_id,
                gamemain.master_floor_param.boss_level,
                gamemain.boss_position, true);


            #endregion
        }
Beispiel #23
0
        public override void OnEnter()
        {
            base.OnEnter();

            main.m_btnQuest.onClick.RemoveAllListeners();
            main.m_btnQuest.onClick.AddListener(() =>
            {
                Fsm.Event("quest");
            });

            // charaview
            main.m_charaView.Initialize();

            // weapon
            DataWeaponParam   data_equip   = DataManager.Instance.dataWeapon.list.Find(p => 0 < p.equip);
            MasterWeaponParam master_equip = DataManager.Instance.masterWeapon.list.Find(p => p.weapon_id == data_equip.weapon_id);

            main.m_weaponInfo.Setup(data_equip, master_equip);

            // treasure
            main.m_prefIconTreasure.SetActive(false);
            main.treasure_list.Clear();
            MonoBehaviourEx.DeleteObjects <IconInventry>(main.m_goTreasureRoot);
            for (int i = 0; i < 3; i++)
            {
                IconInventry      icon       = PrefabManager.Instance.MakeScript <IconInventry>(main.m_prefIconTreasure, main.m_goTreasureRoot);
                DataTreasureParam equip_data = DataManager.Instance.dataTreasure.list.Find(p => p.equip == i + 1);
                if (equip_data != null)
                {
                    MasterTreasureParam master = DataManager.Instance.masterTreasure.list.Find(p => p.treasure_id == equip_data.treasure_id);
                    icon.Initialize(equip_data, master);
                }
                else
                {
                    equip_data             = new DataTreasureParam();
                    equip_data.equip       = i + 1;
                    equip_data.treasure_id = 0;
                    icon.Initialize(equip_data, null);
                }
                main.treasure_list.Add(icon);
            }

            // armor
            main.icon_armor_list.Clear();
            main.m_prefIconArmor.SetActive(false);
            MonoBehaviourEx.DeleteObjects <IconArmor>(main.m_goArmorLeft);
            MonoBehaviourEx.DeleteObjects <IconArmor>(main.m_goArmorRight);
            for (int i = 0; i < 4; i++)
            {
                IconArmor script = PrefabManager.Instance.MakeScript <IconArmor>(main.m_prefIconArmor, main.m_goArmorLeft);
                main.icon_armor_list.Add(script);
            }
            for (int i = 0; i < 4; i++)
            {
                IconArmor script = PrefabManager.Instance.MakeScript <IconArmor>(main.m_prefIconArmor, main.m_goArmorRight);
                main.icon_armor_list.Add(script);
            }

            for (int i = 0; i < MasterArmor.ArmorPositionArr.Length; i++)
            {
                DataArmorParam data = DataManager.Instance.dataArmor.list.Find(p => p.position == MasterArmor.ArmorPositionArr[i]);
                main.icon_armor_list[i].Initialize(data, DataManager.Instance.masterArmor.list);
            }
            main.m_panelStage.gameObject.SetActive(false);
            ShowParamsTotal();
            Finish();
        }
        public static IBindingData Bind(Container container, AssetServiceConfig config, MonoBehaviourEx mb)
        {
            Guard.RequireNotNull <ArgumentNullException>(container, $"Invalid '{nameof(container)}'.");
            Guard.RequireNotNull <ArgumentNullException>(config, $"Invalid '{nameof(config)}'.");
            Guard.RequireNotNull <ArgumentNullException>(mb, $"Invalid '{nameof(mb)}'.");
            IBindingData bindingData;

#if UNITY_EDITOR
            bindingData = config.EditorMode ? container.BindSingleton <IAssetService, EditorModeAssetService>() : BindRealAssetService(container, config, mb);
#else
            bindingData = BindRealAssetService(container, config, mb);
#endif
            return(bindingData);
        }
Beispiel #25
0
        public override void OnEnter()
        {
            base.OnEnter();

            int iNum = DataManager.Instance.dataTreasure.list.Count;

            treasureMain.m_txtListTitle.text = string.Format("おたから編集({0}/{1})", iNum, Defines.TREASURE_NUM_LIMIT);

            equip_position  = -1;
            treasure_serial = -1;

            SetupEquip();

            treasureMain.m_btnBuy.gameObject.SetActive(false);
            treasureMain.m_btnGradeup.gameObject.SetActive(false);
            treasureMain.m_btnGradeup.onClick.AddListener(() =>
            {
                DataTreasureParam data     = DataManager.Instance.dataTreasure.list.Find(p => p.serial == treasure_serial);
                MasterTreasureParam master = DataManager.Instance.masterTreasure.list.Find(p => p.treasure_id == data.treasure_id);

                DataManager.Instance.UseCoin(MasterTreasure.GetGradeupPrice(data, master));
                data.level += 1;
                treasureMain.m_treasureInfo.Setup(data, master);

                foreach (IconInventry icon in treasureMain.treasure_list)
                {
                    if (icon.m_dataTreasure.serial == data.serial)
                    {
                        icon.Initialize(data, master);
                        icon.SelectTreasure(data.serial);
                    }
                }
                foreach (IconInventry icon in treasureMain.equip_treasure_list)
                {
                    if (icon.m_dataTreasure.serial == data.serial)
                    {
                        icon.Initialize(data, master);
                        icon.SelectTreasure(data.serial);
                    }
                }
                DataManager.Instance.dataTreasure.Save();
                DataManager.Instance.user_data.Save();
            });



            treasureMain.m_btnSet.gameObject.SetActive(true);
            treasureMain.m_btnBack.gameObject.SetActive(true);

            treasureMain.m_btnSet.interactable = false;

            treasureMain.m_btnSet.onClick.AddListener(() =>
            {
                DataTreasureParam temp_data   = DataManager.Instance.dataTreasure.list.Find(p => p.serial == treasure_serial);
                DataTreasureParam preset_data = DataManager.Instance.dataTreasure.list.Find(p => p.equip == equip_position);

                if (temp_data != null)
                {
                    if (preset_data != null)
                    {
                        int temp_position = temp_data.equip;
                        preset_data.equip = temp_position;
                    }
                    temp_data.equip = equip_position;
                }
                else
                {
                    if (preset_data != null)
                    {
                        preset_data.equip = 0;
                    }
                }



                /*
                 * if(preset_data != null && temp_data != null)
                 * {
                 *      if( preset_data.serial == temp_data.serial)
                 *      {
                 *              // なにもしない
                 *      }
                 *      else if(temp_data.equip != 0)
                 *      {
                 *              int temp_position = temp_data.equip;
                 *              temp_data.equip = preset_data.equip;
                 *              preset_data.equip = temp_position;
                 *      }
                 *      else
                 *      {
                 *              temp_data.equip = equip_position;
                 *      }
                 * }
                 * else if( temp_data != null)
                 * {
                 *      temp_data.equip = equip_position;
                 * }
                 * else if(preset_data != null && temp_data == null)
                 * {
                 *      // 外す
                 *      preset_data.equip = 0;
                 * }
                 * else
                 * {
                 *      // 入らないんじゃない?
                 * }
                 */
                DataManager.Instance.dataTreasure.Save();
                Fsm.Event("equip");
            });
            treasureMain.m_btnBack.onClick.RemoveAllListeners();
            treasureMain.m_btnBack.onClick.AddListener(() =>
            {
                Fsm.Event("back");
            });
            treasureMain.treasure_list.Clear();
            MonoBehaviourEx.DeleteObjects <IconInventry>(treasureMain.m_goListContents);
            IconInventry remove_icon = PrefabManager.Instance.MakeScript <IconInventry>(treasureMain.m_prefIconInventry, treasureMain.m_goListContents);

            remove_icon.Initialize(new DataTreasureParam(0, 0), null);
            remove_icon.m_txtNotInventry.text = "はずす";
            remove_icon.OnClickTreasure.AddListener(OnSelectListTreasure);
            treasureMain.treasure_list.Add(remove_icon);
            foreach (DataTreasureParam treasure in DataManager.Instance.dataTreasure.list)
            {
                IconInventry        icon   = PrefabManager.Instance.MakeScript <IconInventry>(treasureMain.m_prefIconInventry, treasureMain.m_goListContents);
                MasterTreasureParam master = DataManager.Instance.masterTreasure.list.Find(p => p.treasure_id == treasure.treasure_id);

                icon.Initialize(treasure, master);
                treasureMain.treasure_list.Add(icon);

                icon.OnClickTreasure.AddListener(OnSelectListTreasure);
            }
        }