public void Init() { GameObject aoYiItemPrb = PrefabLoader.loadFromPack("WHY/pbUIAoYiItem") as GameObject; if (aoYiSlotList.Count < 5) { for (int i = 0; i < 5; i++) { GameObject aoYiItemObj = Instantiate(aoYiItemPrb) as GameObject; AoYiSlot aoYiSlot = aoYiItemObj.GetComponent <AoYiSlot> (); aoYiSlot.transform.parent = aoYiSlotListTransform; aoYiSlot.transform.localPosition = Vector3.zero; aoYiSlot.transform.localScale = Vector3.one; aoYiSlot.SelectedDelegate = showSelectAoYiList; aoYiSlot.curAoYiType = AoYiSlot.ParentType.isNormal; aoYiSlotList.Add(aoYiSlot); } } }
static public int SortByTransform(AoYiSlot a, AoYiSlot b) { if (a.transform.localPosition.x >= b.transform.localPosition.x) { return(1); } else { return(-1); } }
public void selectedAoYi(AoYi aoYi) { AoYiSlot[] aoYiSlots = aoYiGrid.GetComponentsInChildren <AoYiSlot>(); for (int i = 0; i < aoYiSlots.Length; i++) { AoYiSlot aoYiSlotTemp = aoYiSlots[i]; if (aoYi.AoYiDataConfig.ID == aoYiSlotTemp.aoYi.AoYiDataConfig.ID) { selectedAoYiSlot(aoYiSlotTemp); return; } } }
public void setAoYiSlot(int index, AoYi aoYi) { if (aoYi == null) { return; } AoYiSlot aoYiSlot = aoYiSlotList[index]; if (aoYiSlot.lockType != AoYiSlot.LockType.NoBuy) { aoYiSlot.aoYi = aoYi; aoYiSlot.setAoYi(); } }
public void buyAoYiSlotCompleted(int slot) { Core.Data.dragonManager.buyAoYiSlotCompletedDelegate = null; slot = slot - 1; if (slot >= aoYiSlotList.Count) { return; } Core.Data.playerManager.RTData.aislt[slot] = 1; AoYiSlot aoYiSlot = aoYiSlotList[slot]; aoYiSlot.lockIconAnimation(true); sortAoYiSlot(); DBUIController.mDBUIInstance.RefreshUserInfoWithoutShow(); //DBUIController.mDBUIInstance.RefreshUserInfo(); }
public void sortAoYiSlot() { float x = -370; List <AoYiSlot> isBuyAoYiSlot = new List <AoYiSlot>(); List <AoYiSlot> noBuyAoYiSlot = new List <AoYiSlot>(); for (int i = 0; i < aoYiSlotList.Count; i++) { AoYiSlot aoYiSlot = aoYiSlotList[i]; if (aoYiSlot.lockType == AoYiSlot.LockType.NoLock) { isBuyAoYiSlot.Add(aoYiSlot); } else { noBuyAoYiSlot.Add(aoYiSlot); } } for (int i = 0; i < isBuyAoYiSlot.Count; i++) { AoYiSlot aoYiSlot = isBuyAoYiSlot[i]; aoYiSlot.gameObject.transform.localPosition = new Vector3(x, -300, 0); x += 195; } for (int i = 0; i < noBuyAoYiSlot.Count; i++) { AoYiSlot aoYiSlot = noBuyAoYiSlot[i]; aoYiSlot.gameObject.transform.localPosition = new Vector3(x, -300, 0); x += 195; } }
public void selectedAoYiSlot(AoYiSlot aoYiSlot) { // Debug.Log("---------------------------selectedAoYiSlot------------------------"); AoYiSlot[] aoYiSlots = aoYiGrid.GetComponentsInChildren <AoYiSlot>(); string dragonType = ""; for (int i = 0; i < aoYiSlots.Length; i++) { AoYiSlot aoYiSlotTemp = aoYiSlots[i]; //Debug.Log(aoYiSlotTemp.aoYiName.text +" "+aoYiSlot.aoYiName.text); if (aoYiSlotTemp.selectedBackground.activeSelf && aoYiSlotTemp != aoYiSlot) { aoYiSlotTemp.selectedBackground.SetActive(false); } else if (aoYiSlotTemp == aoYiSlot) { aoYiSlotTemp.selectedBackground.SetActive(true); StartCoroutine(RefreshDiaObj(true)); } } if (lblAoyiDesp != null) { int index = 0; if (aoYiSlot.aoYi.RTAoYi != null) { index = aoYiSlot.aoYi.RTAoYi.lv - 1; if (index < 0) { index = 0; } } float[] formatList = aoYiSlot.aoYi.AoYiDataConfig.full_effect(index); object[] format = new object[formatList.Length]; for (int i = 0; i < formatList.Length; i++) { format[i] = formatList[i]; } lblAoyiDesp.text = aoYiSlot.aoYi.AoYiDataConfig.name + ": " + string.Format(aoYiSlot.aoYi.AoYiDataConfig.description, format); } if (aoYiDesLabel != null) { int index = 0; if (aoYiSlot.aoYi.RTAoYi != null) { index = aoYiSlot.aoYi.RTAoYi.lv - 1; if (index < 0) { index = 0; } } float[] formatList = aoYiSlot.aoYi.AoYiDataConfig.full_effect(index); object[] format = new object[formatList.Length]; for (int i = 0; i < formatList.Length; i++) { format[i] = formatList[i]; } if (aoYiSlot.aoYi.AoYiDataConfig.dragonType == 1) //地球 { dragonType = Core.Data.stringManager.getString(7374); } else { dragonType = Core.Data.stringManager.getString(7375); } aoYiDesLabel.text = Core.Data.stringManager.getString(6113) + dragonType + ": " + string.Format(aoYiSlot.aoYi.AoYiDataConfig.description, format); // aoYiDesLabel.text = Core.Data.stringManager.getString(6113) + string.Format(aoYiSlot.aoYi.AoYiDataConfig.description, format); } }
public void setAoYiItem(List <AoYi> aoYiList, bool isDragonType, DragonManager.DragonType successdType = DragonManager.DragonType.None) { if (aoYiItemPrb == null) { aoYiItemPrb = PrefabLoader.loadFromPack("WHY/pbUIAoYiItem") as GameObject; } while (this.aoYiGrid.transform.childCount > 0) { GameObject g = this.aoYiGrid.transform.GetChild(0).gameObject; g.transform.parent = null; Destroy(g); } //------------ 把未解锁的奥义放到后面 ------------- List <AoYi> aoYiListTemp = new List <AoYi>(); foreach (AoYi aoYi in aoYiList) { short dragonType = aoYi.AoYiDataConfig.dragonType; if (aoYi.AoYiDataConfig.unlockLevel > Core.Data.dragonManager.DragonList[dragonType - 1].RTData.lv) { aoYiListTemp.Add(aoYi); } } foreach (AoYi aoYi in aoYiListTemp) { aoYiList.Remove(aoYi); int index = aoYiList.Count; aoYiList.Insert(index, aoYi); } //------------ End 把未解锁的奥义放到后面 ------------- foreach (AoYi aoYi in aoYiList) { short dragonType = aoYi.AoYiDataConfig.dragonType; if (isDragonType && dragonType != ((short)successdType + 1)) { continue; } GameObject aoYiItemObj = Instantiate(aoYiItemPrb) as GameObject; AoYiSlot aoYiSlot = aoYiItemObj.GetComponent <AoYiSlot>(); List_AoYiSlots.Add(aoYiSlot); aoYiSlot.transform.parent = aoYiGrid.transform; aoYiSlot.transform.localPosition = Vector3.zero; aoYiSlot.transform.localScale = Vector3.one; aoYiSlot.aoYi = aoYi; if (this.currentSelectAoYiAlertType == SelectAoYiAlertType.SelectLearnAoYi) { aoYiSlot.curAoYiType = AoYiSlot.ParentType.isLearnAoYi; } else if (this.currentSelectAoYiAlertType == SelectAoYiAlertType.SelectEquipAoYi) { aoYiSlot.curAoYiType = AoYiSlot.ParentType.isEquipAoYi; } aoYiSlot.SelectedDelegate = selectedAoYiSlot; if (/*aoYi.AoYiDataConfig.unlockLevel <= Core.Data.dragonManager.DragonList[dragonType - 1].RTData.lv &&*/ aoYi.ID != 0) // 已经学习解锁 { aoYiSlot.setUnLock(false); if (aoYi.Pos != -1) { aoYiSlot.stateRoot.SetActive(true); aoYiSlot.stateIcon.gameObject.SetActive(false); aoYiSlot.stateInfo.text = Core.Data.stringManager.getString(6111); } } else { aoYiSlot.aoYiIcon.atlas = aoYiSlot.aoYiAtlas; aoYiSlot.aoYiIcon.spriteName = aoYi.AoYiDataConfig.ID.ToString(); //aoYiSlot.aoYiIcon.MakePixelPerfect(); aoYiSlot.aoYiIcon.color = Color.gray; aoYiSlot.aoYiName.text = aoYi.AoYiDataConfig.name; if (/*aoYi.AoYiDataConfig.unlockLevel <= Core.Data.dragonManager.DragonList[dragonType - 1].RTData.lv && */ aoYi.ID == 0) // 没学习 add by wxl { aoYiSlot.lockRoot.SetActive(false); aoYiSlot.stateRoot.SetActive(true); aoYiSlot.stateIcon.gameObject.SetActive(false); aoYiSlot.stateInfo.text = Core.Data.stringManager.getString(6112); } // else if(aoYiSlot.aoYi.AoYiDataConfig.unlockLevel > Core.Data.dragonManager.DragonList[dragonType - 1].RTData.lv && aoYiSlot.aoYi.ID == 0) // 没解锁 解锁功能 取消 by wxl // { // aoYiSlot.lockRoot.SetActive(true); // aoYiSlot.info.text = Core.Data.stringManager.getString(6099).Replace("#", aoYi.AoYiDataConfig.unlockLevel.ToString()); // } } } aoYiGrid.Reposition(); // aoYiGrid.GetComponentInParent<UIGrid> ().repositionNow = true; SpringPanel.Begin(aoYiGrid.transform.parent.gameObject, new Vector3(-451, -279, 0), 13); }
void showSelectAoYiList(AoYiSlot aoYiSlot) { StartCoroutine(aoYiSlot.showSelectedBackground()); int index = -1; for (int i = 0; i < this.aoYiSlotList.Count; i++) { AoYiSlot aoYiSlotTemp = this.aoYiSlotList[i]; if (aoYiSlot == aoYiSlotTemp) { index = i; break; } } if (index == -1) { RED.LogError("UIDragonAltar Not AoYiSlot"); return; } currentEquipPos = index; if (aoYiSlot.lockType == AoYiSlot.LockType.NoLock) { List <AoYi> noPosAoYiList = Core.Data.dragonManager.getNoPosAoYi(); if (noPosAoYiList.Count == 0) { SQYAlertViewMove.CreateAlertViewMove(Core.Data.stringManager.getString(6070)); return; } if (selectAoYiPrb == null) { selectAoYiPrb = PrefabLoader.loadFromPack("WHY/pbUISelectAoYiPanel") as GameObject; } GameObject selectAoYiAlertObj = Instantiate(selectAoYiPrb) as GameObject; selectAoYiAlertObj.transform.parent = DBUIController.mDBUIInstance._bottomRoot.transform;; selectAoYiAlertObj.transform.localPosition = Vector3.zero; selectAoYiAlertObj.transform.localPosition = this.transform.localPosition + Vector3.back * 10; selectAoYiAlertObj.transform.localScale = Vector3.one; //wxl change // RED.TweenShowDialog(selectAoYiAlertObj); selectAoYiAlert = selectAoYiAlertObj.GetComponent <UISelectAoYiAlert>(); selectAoYiAlert.currentSelectAoYiAlertType = UISelectAoYiAlert.SelectAoYiAlertType.SelectEquipAoYi; selectAoYiAlert.selectAoYiCompletedDelegate = equipAoYiCompleted; selectAoYiAlert.setAoYiItem(Core.Data.dragonManager.getAllAoYi(), false); if (aoYiSlot.aoYi != null) { selectAoYiAlert.selectedAoYi(aoYiSlot.aoYi); } } else if (aoYiSlot.lockType == AoYiSlot.LockType.NoBuy) { string info = ""; if (DragonLockData.PLAYER_LEVEL_TYPE == aoYiSlot.dragonLockData.type) { info = Core.Data.stringManager.getString(6067).Replace("#", aoYiSlot.dragonLockData.price.ToString()); } else if (DragonLockData.DIAMOND_TYPE == aoYiSlot.dragonLockData.type) { info = Core.Data.stringManager.getString(6068).Replace("#", aoYiSlot.dragonLockData.price.ToString()); } buyAoYiSlot = aoYiSlot; UIInformation.GetInstance().SetInformation( info, Core.Data.stringManager.getString(6057), Core.Data.stringManager.getString(6069), buyAoYiSlotCallBack); } else if (aoYiSlot.lockType == AoYiSlot.LockType.Lock) { SQYAlertViewMove.CreateAlertViewMove(Core.Data.stringManager.getString(6066)); } }
//传 index 奥义槽编号 aoyi 奥义 public void setAoYiSlot(int index, DragonLockData dragonLockData, AoYi aoYi, bool isAnimation = false) { AoYiSlot aoYiSlot = aoYiSlotList[index]; aoYiSlot.dragonLockData = dragonLockData; bool isBuy = Core.Data.playerManager.RTData.aislt[dragonLockData.dragonSlot - 1] == 1; if (aoYi == null) { aoYiSlot.unLock(); aoYiSlot.aoYiName.text = ""; if (index != 0) { if (isBuy) { aoYiSlot.setAoYiSlotNoLockNoAoYi(); } else { aoYiSlot.lockRoot.SetActive(true); aoYiSlot.priceRoot.SetActive(true); // aoYiSlot.lockIconAnimation(true); if (DragonLockData.PLAYER_LEVEL_TYPE == dragonLockData.type) { if (Core.Data.playerManager.RTData.curLevel < dragonLockData.num) { aoYiSlot.lockType = AoYiSlot.LockType.Lock; aoYiSlot.setInfo(Core.Data.stringManager.getString(6053) + dragonLockData.num, "common-0013", dragonLockData.price.ToString()); } else { aoYiSlot.lockType = AoYiSlot.LockType.NoBuy; aoYiSlot.setInfo(Core.Data.stringManager.getString(6065), "common-0013", dragonLockData.price.ToString()); } } else if (DragonLockData.DIAMOND_TYPE == dragonLockData.type) { aoYiSlot.lockType = AoYiSlot.LockType.NoBuy; aoYiSlot.setInfo(Core.Data.stringManager.getString(6065), "common-0014", dragonLockData.price.ToString()); } } } else if (index == 0) { aoYiSlot.setAoYiSlotNoLockNoAoYi(); } } else { //wxl change //判定此位置是否装备已装备的奥义 如果装备已装备的奥义 则自动换位;如果此位置为空,则添加当前奥义 如果这个奥义 还有存再于其他位置 这 那个位置 为空; if (aoYi.Pos == -1) //未装备的奥义 { aoYiSlot.aoYi = aoYi; aoYiSlot.setUnLock(isAnimation); } else if (aoYi.Pos != -1) //已装备的奥义 { if (aoYiSlot.aoYi != null) //当前槽中有奥义 { if (orgAYPos != -1) { aoYiSlot.aoYi.RTAoYi.wh = orgAYPos + 1; aoYiSlotList [orgAYPos].aoYi = aoYiSlot.aoYi; } aoYiSlot.aoYi = aoYi; if (orgAYPos != -1) { aoYiSlotList [orgAYPos].setUnLock(isAnimation); orgAYPos = -1; } aoYiSlot.setUnLock(isAnimation); } else { //当前槽中 无奥义 if (aoYi.Pos != -1) { if (orgAYPos != -1) { AoYi aoyi = null; aoYiSlotList [orgAYPos].aoYi = aoyi; // aoYiSlotList [orgAYPos].setUnLock (false); aoYiSlotList [orgAYPos].SetVoidPos(); orgAYPos = -1; } aoYiSlot.aoYi = aoYi; aoYi.RTAoYi.wh = aoYiSlot.aoYi.Pos + 1; aoYiSlot.setUnLock(isAnimation); } } } } }