/************************************************************************************/ public bool TryClose(string strID) { TabDesc ThisDesc = null; if (!m_TabDictionary.TryGetValue(strID, out ThisDesc)) { return(false); } return(ThisDesc.m_MdiChild.TryClose()); }
/************************************************************************************/ public T GetChild(string strID) { TabDesc ThisDesc = null; if (m_TabDictionary.TryGetValue(strID, out ThisDesc)) { return(ThisDesc.m_MdiChild); } return(default(T)); }
/************************************************************************************/ public void Add(T NewChild) { if (m_TabDictionary.ContainsKey(NewChild.ID)) { return; } TabDesc NewDesc = new TabDesc(); NewDesc.m_MdiChild = NewChild; NewDesc.m_Tab = new CloseableTabItem(); NewDesc.m_Tab.CloseTab += new System.Windows.RoutedEventHandler(NewDesc.OnCloseTab); NewDesc.m_Tab.Content = NewChild.Control; NewDesc.m_Tab.Tag = NewDesc; m_TabDictionary.Add(NewChild.ID, NewDesc); m_wndTabs.Items.Add(NewDesc.m_Tab); return; }
void Start() { QualitySettings.vSyncCount = 0; Application.targetFrameRate = 30; GameObjectPool.Instance.Clear(); System.GC.Collect(); Const.HideLoadingGUI(); Const.CHEAT_MODE = m_cheat; m_spawn = GameObject.Find("Dungeon/Spawn").GetComponent<Spawn>(); GPlusPlatform.Instance.InitAnalytics(GameObject.Find("GAv3").GetComponent<GoogleAnalyticsV3>()); GPlusPlatform.Instance.AnalyticsTrackScreen("SettingGUI"); if (m_cheat == true) { #if UNITY_EDITOR if (Warehouse.Instance.InvenSize == 0) { Warehouse.Instance.PushItem(new ItemGoldData(m_cheatGold)); Warehouse.Instance.PushItem(new ItemGoldMedalData(1000)); Warehouse.Instance.PushItem(new ItemGemData(m_cheatGem)); Warehouse.Instance.PushItem(new ItemWeaponDNAData(0)); Warehouse.Instance.PushItem(new ItemWeaponData(Const.ChampTapRefItemId)); Warehouse.Instance.PushItem(new ItemWeaponData(Const.ChampGunRefItemId)); //Warehouse.Instance.PushItem(new ItemWeaponData(Const.ChampLightningLauncherRefItemId)); //Warehouse.Instance.PushItem(new ItemWeaponData(Const.ChampFiregunRefItemId)); Warehouse.Instance.PushItem(new ItemWeaponData(Const.ChampGuidedRocketLauncherRefItemId)); //Warehouse.Instance.PushItem(new ItemWeaponData(Const.ChampRocketLauncherRefItemId)); //Warehouse.Instance.PushItem(new ItemWeaponData(Const.ChampBoomerangLauncherRefItemId)); Warehouse.Instance.PushItem(new ItemFollowerData(Const.FollowerGunMarineRefItemId)); Warehouse.Instance.PushItem(new ItemFollowerData(Const.FollowerFireMarineRefItemId)); Warehouse.Instance.PushItem(new ItemFollowerData(Const.FollowerLightningMarineRefItemId)); Warehouse.Instance.PushItem(new ItemFollowerData(Const.FollowerRocketMarineRefItemId)); Warehouse.Instance.PushItem(new ItemFollowerData(Const.FollowerBoomerangMarineRefItemId)); Warehouse.Instance.PushItem(new ItemFollowerData(Const.FollowerGrenadeMarineRefItemId)); Warehouse.Instance.PushItem(new ItemFollowerData(Const.FollowerMeleeRefItemId)); Warehouse.Instance.PushItem(new ItemFollowerData(Const.FollowerPetRefItemId)); Warehouse.Instance.PushItem(new ItemCheatData(Const.EngineeringBayRefItemId)); Warehouse.Instance.PushItem(new ItemCheatData(Const.AcademyRefItemId)); Warehouse.Instance.PushItem(new ItemStatData(2001)); Warehouse.Instance.PushItem(new ItemStatData(2002)); //Warehouse.Instance.PushItem(new ItemStatData(2003)); //Warehouse.Instance.PushItem(new ItemStatData(2004)); Warehouse.Instance.PushItem(new ItemStatData(2006)); Warehouse.Instance.PushItem(new ItemStatData(2008)); Warehouse.Instance.PushItem(new ItemStatData(2005)); Warehouse.Instance.PushItem(new ItemWeaponDNAData(0)); Warehouse.Instance.PushItem(new ItemSkillData(21)); Warehouse.Instance.PushItem(new ItemSkillData(22)); Warehouse.Instance.PushItem(new ItemSkillData(23)); Warehouse.Instance.PushItem(new ItemSkillData(24)); Warehouse.Instance.PushItem(new ItemSkillData(25)); Warehouse.Instance.PushItem(new ItemWeaponPartsData(3001)); Warehouse.Instance.PushItem(new ItemWeaponPartsData(3004)); Warehouse.Instance.PushItem(new ItemWeaponPartsData(3003)); Warehouse.Instance.PushItem(new ItemWeaponPartsData(3002)); Warehouse.Instance.PushItem(new ItemWeaponPartsData(3005)); Warehouse.Instance.FindItem(Const.ChampTapRefItemId).Item.Level = 9; Warehouse.Instance.FindItem(Const.ChampGunRefItemId).Item.Lock = false; Warehouse.Instance.FindItem(Const.ChampGunRefItemId).Item.Level = 9; Warehouse.Instance.FindItem(Const.FollowerGunMarineRefItemId).Item.Lock = false; Warehouse.Instance.FindItem(Const.FollowerGunMarineRefItemId).Item.Level = 900; Warehouse.Instance.FindItem(Const.FollowerFireMarineRefItemId).Item.Lock = false; Warehouse.Instance.FindItem(Const.FollowerFireMarineRefItemId).Item.Level = 900; Warehouse.Instance.FindItem(Const.FollowerLightningMarineRefItemId).Item.Lock = false; Warehouse.Instance.FindItem(Const.FollowerLightningMarineRefItemId).Item.Level = 900; Warehouse.Instance.FindItem(Const.FollowerRocketMarineRefItemId).Item.Lock = false; Warehouse.Instance.FindItem(Const.FollowerRocketMarineRefItemId).Item.Level = 900; Warehouse.Instance.FindItem(Const.FollowerBoomerangMarineRefItemId).Item.Lock = false; Warehouse.Instance.FindItem(Const.FollowerBoomerangMarineRefItemId).Item.Level = 900; Warehouse.Instance.FindItem(Const.FollowerGrenadeMarineRefItemId).Item.Lock = false; Warehouse.Instance.FindItem(Const.FollowerGrenadeMarineRefItemId).Item.Level = 900; Warehouse.Instance.FindItem(Const.FollowerMeleeRefItemId).Item.Lock = false; Warehouse.Instance.FindItem(Const.FollowerMeleeRefItemId).Item.Level = 900; Warehouse.Instance.FindItem(Const.FollowerPetRefItemId).Item.Lock = false; Warehouse.Instance.FindItem(Const.FollowerPetRefItemId).Item.Level = 9; Warehouse.Instance.FindItem(21).Item.Lock = false; Warehouse.Instance.FindItem(21).Item.Level = 9; Warehouse.Instance.FindItem(22).Item.Lock = false; Warehouse.Instance.FindItem(22).Item.Level = 9; Warehouse.Instance.FindItem(23).Item.Lock = false; Warehouse.Instance.FindItem(23).Item.Level = 9; Warehouse.Instance.FindItem(24).Item.Lock = false; Warehouse.Instance.FindItem(24).Item.Level = 9; Warehouse.Instance.FindItem(25).Item.Lock = false; Warehouse.Instance.FindItem(25).Item.Level = 1; Warehouse.Instance.FindItem(2001).Item.Lock = false; Warehouse.Instance.FindItem(2001).Item.Level = 900; Warehouse.Instance.FindItem(2002).Item.Lock = false; Warehouse.Instance.FindItem(2002).Item.Level = 900; Warehouse.Instance.FindItem(2006).Item.Lock = false; Warehouse.Instance.FindItem(2006).Item.Level = 900; Warehouse.Instance.FindItem(2008).Item.Lock = false; Warehouse.Instance.FindItem(2008).Item.Level = 900; Warehouse.Instance.FindItem(2005).Item.Lock = false; Warehouse.Instance.FindItem(2005).Item.Level = 900; if (m_eqipedAllItem == true) { Warehouse.Instance.FindItem(3001).Item.Lock = false; Warehouse.Instance.FindItem(3001).Item.Level = 900; Warehouse.Instance.FindItem(3002).Item.Lock = false; Warehouse.Instance.FindItem(3002).Item.Level = 900; Warehouse.Instance.FindItem(3003).Item.Lock = false; Warehouse.Instance.FindItem(3003).Item.Level = 900; Warehouse.Instance.FindItem(3004).Item.Lock = false; Warehouse.Instance.FindItem(3004).Item.Level = 900; Warehouse.Instance.FindItem(3005).Item.Lock = false; Warehouse.Instance.FindItem(3005).Item.Level = 900; } } Warehouse.Instance.GameTutorial.m_unlockedWeaponTab = true; Warehouse.Instance.GameTutorial.m_unlockedStatTab = true; Warehouse.Instance.GameTutorial.m_unlockedSkillTab = true; Warehouse.Instance.GameTutorial.m_unlockedFollowerTab = true; #endif } else { //Load(); if (Warehouse.Instance.InvenSize == 0) { Warehouse.Instance.PushItem(new ItemGoldData(0)); Warehouse.Instance.PushItem(new ItemGoldMedalData(0)); Warehouse.Instance.PushItem(new ItemGemData(0)); Warehouse.Instance.PushItem(new ItemWeaponDNAData(0)); Warehouse.Instance.PushItem(new ItemWeaponData(Const.ChampTapRefItemId)); Warehouse.Instance.PushItem(new ItemWeaponData(Const.ChampGunRefItemId)); //Warehouse.Instance.PushItem(new ItemWeaponData(Const.ChampLightningLauncherRefItemId)); //Warehouse.Instance.PushItem(new ItemWeaponData(Const.ChampFiregunRefItemId)); Warehouse.Instance.PushItem(new ItemWeaponData(Const.ChampGuidedRocketLauncherRefItemId)); Warehouse.Instance.PushItem(new ItemFollowerData(Const.FollowerGunMarineRefItemId)); Warehouse.Instance.PushItem(new ItemFollowerData(Const.FollowerFireMarineRefItemId)); Warehouse.Instance.PushItem(new ItemFollowerData(Const.FollowerLightningMarineRefItemId)); Warehouse.Instance.PushItem(new ItemFollowerData(Const.FollowerRocketMarineRefItemId)); Warehouse.Instance.PushItem(new ItemFollowerData(Const.FollowerBoomerangMarineRefItemId)); Warehouse.Instance.PushItem(new ItemFollowerData(Const.FollowerGrenadeMarineRefItemId)); Warehouse.Instance.PushItem(new ItemFollowerData(Const.FollowerMeleeRefItemId)); Warehouse.Instance.PushItem(new ItemFollowerData(Const.FollowerPetRefItemId)); //Warehouse.Instance.PushItem(new ItemFollowerData(Const.FollowerRedMarineRefItemId)); Warehouse.Instance.PushItem(new ItemCheatData(Const.EngineeringBayRefItemId)); Warehouse.Instance.PushItem(new ItemCheatData(Const.AcademyRefItemId)); Warehouse.Instance.PushItem(new ItemStatData(2001)); Warehouse.Instance.PushItem(new ItemStatData(2002)); //Warehouse.Instance.PushItem(new ItemStatData(2003)); //Warehouse.Instance.PushItem(new ItemStatData(2004)); Warehouse.Instance.PushItem(new ItemStatData(2006)); Warehouse.Instance.PushItem(new ItemStatData(2008)); Warehouse.Instance.PushItem(new ItemStatData(2005)); Warehouse.Instance.PushItem(new ItemWeaponDNAData(0)); Warehouse.Instance.PushItem(new ItemSkillData(21)); Warehouse.Instance.PushItem(new ItemSkillData(22)); Warehouse.Instance.PushItem(new ItemSkillData(23)); Warehouse.Instance.PushItem(new ItemSkillData(24)); Warehouse.Instance.PushItem(new ItemSkillData(25)); Warehouse.Instance.PushItem(new ItemWeaponPartsData(3001)); Warehouse.Instance.PushItem(new ItemWeaponPartsData(3004)); Warehouse.Instance.PushItem(new ItemWeaponPartsData(3003)); Warehouse.Instance.PushItem(new ItemWeaponPartsData(3002)); Warehouse.Instance.PushItem(new ItemWeaponPartsData(3005)); } } for(int i = 0; i < m_equipedAccessories.Length; ++i) { m_equipedAccessories[i] = new EquippedContext(); } m_tabs[0] = new TabDesc(0, MultiLang.ID.Weapon, new ItemData.Type[]{ItemData.Type.Weapon, ItemData.Type.WeaponParts}, new YGUISystem.GUIButton(transform.Find("WeaponTab").gameObject, ()=>{return Warehouse.Instance.GameTutorial.m_unlockedWeaponTab && m_champ != null && m_champ.gameObject.activeSelf;})); m_tabs[1] = new TabDesc(1, MultiLang.ID.Skill, new ItemData.Type[]{ItemData.Type.Skill}, new YGUISystem.GUIButton(transform.Find("SkillTab").gameObject, ()=>{return Warehouse.Instance.GameTutorial.m_unlockedSkillTab && m_champ != null && m_champ.gameObject.activeSelf;})); m_tabs[2] = new TabDesc(2, MultiLang.ID.Follower, new ItemData.Type[]{ItemData.Type.Follower}, new YGUISystem.GUIButton(transform.Find("FollowerTab").gameObject, ()=>{return Warehouse.Instance.GameTutorial.m_unlockedFollowerTab && m_champ != null && m_champ.gameObject.activeSelf;})); m_tabs[3] = new TabDesc(3, MultiLang.ID.Stat, new ItemData.Type[]{ItemData.Type.Stat, ItemData.Type.WeaponDNA}, new YGUISystem.GUIButton(transform.Find("StatTab").gameObject, ()=>{return Warehouse.Instance.GameTutorial.m_unlockedStatTab && m_champ != null && m_champ.gameObject.activeSelf;})); m_weaponPanel = settingItemList(m_tabs[0], "WeaponPanel"); m_statPanel = settingItemList(m_tabs[3], "StatPanel"); m_followerPanel = settingItemList(m_tabs[2], "FollowerPanel"); m_skillPanel = settingItemList(m_tabs[1], "SkillPanel"); m_generalInfoPanel = transform.Find("GeneralInfoPanel/ScrollView").gameObject.GetComponent<GeneralInfoPanel>(); OnClickStart(); }
GameObject settingItemList(TabDesc tab, string panel) { RectTransform rectScrollView = transform.Find(panel + "/ScrollView").gameObject.GetComponent<RectTransform>(); GameObject contentsObj = transform.Find(panel+ "/ScrollView/Contents").gameObject; RectTransform rectInventoryObj = contentsObj.GetComponent<RectTransform>(); GameObject prefGUIInventorySlot = Resources.Load<GameObject>("Pref/GUIInventorySlot"); RectTransform rectGUIInventorySlot = prefGUIInventorySlot.GetComponent<RectTransform>(); int itemAddedCount = 0; int itemIndex = 0; int maxCount = 0; foreach(ItemData.Type itemType in tab.m_itemTypes) maxCount += Warehouse.Instance.Items[itemType].Count; int equipItemIndex = 0; foreach(ItemData.Type itemType in tab.m_itemTypes) { foreach(ItemObject item in Warehouse.Instance.Items[itemType]) { GameObject obj = Instantiate(prefGUIInventorySlot) as GameObject; GUIInventorySlot invSlot = obj.GetComponent<GUIInventorySlot>(); obj.transform.parent = contentsObj.transform; obj.transform.localScale = prefGUIInventorySlot.transform.localScale; obj.transform.localPosition = new Vector3(0f, rectGUIInventorySlot.rect.height/2*(maxCount-1)-rectGUIInventorySlot.rect.height*itemAddedCount, 0); invSlot.Init(tab.m_tab.Button.gameObject, item); invSlot.PriceButton0.EnableChecker = ()=>{return false;}; int capturedItemIndex = itemIndex; if (item.Item.Lock == true) { if (item.Item.RefItem.type == ItemData.Type.WeaponParts) { if (item.Item.RefItem.levelup != null) { SetButtonRole(Const.ButtonRole.Levelup, invSlot, invSlot.PriceButton0, item); } } else { if (item.Item.RefItem.unlock != null) { SetButtonRole(Const.ButtonRole.Unlock, invSlot, invSlot.PriceButton0, item); } } } else { if (item.Item.RefItem.maxLevel == item.Item.Level) { if (item.Item.RefItem.evolution != null) { SetButtonRole(Const.ButtonRole.Evolution, invSlot, invSlot.PriceButton0, item); } } else { if (item.Item.RefItem.levelup != null) { SetButtonRole(Const.ButtonRole.Levelup, invSlot, invSlot.PriceButton0, item); } } } ++itemAddedCount; } } Vector2 rectContents = new Vector2( rectInventoryObj.rect.width, rectGUIInventorySlot.rect.height*itemAddedCount); rectInventoryObj.sizeDelta = rectContents; //rectInventoryObj.position = new Vector3(rectInventoryObj.position.x, -(rectContents.y/2-rectScrollView.rect.height/2), rectInventoryObj.position.z); rectInventoryObj.localPosition = new Vector3(0, -(rectContents.y/2-rectScrollView.rect.height/2-rectGUIInventorySlot.rect.height*equipItemIndex), 0); return transform.Find(panel).gameObject; }
bool checkAvailableItem(TabDesc tab) { bool check = false; foreach(ItemData.Type itemType in tab.m_itemTypes) { foreach(ItemObject itemObj in Warehouse.Instance.Items[itemType]) { if (itemObj.Item.Lock == true) { if (itemObj.Item.RefItem.unlock != null) check = Const.CheckAvailableItem(itemObj.Item.RefItem.unlock.conds, 1f); } else { if (itemObj.Item.RefItem.maxLevel == itemObj.Item.Level) { if (itemObj.Item.RefItem.evolution != null) check = Const.CheckAvailableItem(itemObj.Item.RefItem.evolution.conds, Const.GetItemLevelupWorth(itemObj.Item.Evolution, itemObj.Item.RefItem.evolution)); } else { if (itemObj.Item.RefItem.levelup != null) check = Const.CheckAvailableItem(itemObj.Item.RefItem.levelup.conds, Const.GetItemLevelupWorth(itemObj.Item.Level, itemObj.Item.RefItem.levelup)); } } if (check == true) { tab.m_checked.SetActive(true); return true; } } } tab.m_checked.SetActive(false); return false; }