public void OnGetEquipment(ItemEquipment equip) { if (MogoWorld.thePlayer.level <= 1) { return; } if (!MogoWorld.inCity) { m_equipQueue.Enqueue(equip); return; } if (InventoryManager.Instance.IsEquipmentBetter(equip.templateId)) { //uint timerId = TimerHeap.AddTimer(TIME_LENGTH, 0, () => { TipUIManager.Instance.Hide(TIP_TYPE_EQUIP); }); TipViewData viewData = GetTipViewDataByEquip(equip); TipUIManager.Instance.AddTipViewData(viewData); } else if (InventoryManager.Instance.EquipmentInBagList.Count >= 10 && InventoryManager.Instance.IsRubbish((equip.templateId), 4)) { //uint timerId = TimerHeap.AddTimer(TIME_LENGTH, 0, () => { TipUIManager.Instance.Hide(TIP_TYPE_EQUIP); }); TipViewData viewData = GetTipViewDataByEquipToDecompose(equip); TipUIManager.Instance.AddTipViewData(viewData); } }
public void AddItem(ItemEquipment newItem) { item = newItem; icon.sprite = item.icon; icon.enabled = true; button.interactable = true; }
/// <summary> /// Removes the item from the inventory /// </summary> /// <param name="itemToRemove">desired item to be removed</param> /// <returns>If removal was successful</returns> public bool RemoveItem(ItemBase itemToRemove) { ItemSlot slot = _itemSlotsMap[itemToRemove]; // did not find the item if (slot == null) { return(false); } // unequiping from owner if (itemToRemove.properties.IsTypeEquipment()) { ItemEquipment equip = (ItemEquipment)itemToRemove; equip.Unequip(); } // remove owner reference itemToRemove.owner = null; // remove item reference itemRows[slot.row].items[slot.col] = null; // remove from map _itemSlotsMap.Remove(itemToRemove); itemToRemove.OnDisposal -= DisposeItemEventListener; if (OnItemRemoved != null) { OnItemRemoved(slot); } return(true); }
private TipViewData GetTipViewDataByEquipToDecompose(ItemEquipment equip) { TipViewData viewData = new TipViewData() { priority = TIP_TYPE_ENHANCE, itemId = equip.templateId, tipText = LanguageData.GetContent(3028) + "\n" + LanguageData.GetContent(3029), btnName = LanguageData.GetContent(3030), btnAction = () => { //TimerHeap.DelTimer(timerId); TipUIManager.Instance.HideAll(TIP_TYPE_ENHANCE); ItemParent temp = InventoryManager.Instance.GetItemByItemID(equip.templateId); if (temp == null) { MogoMsgBox.Instance.ShowFloatingText(LanguageData.GetContent(472)); } else { MogoWorld.thePlayer.StopMove(); MogoUIManager.Instance.SwitchDecomposeUI(); } } }; return(viewData); }
public void SetData(int strength, int intellect, int agility, int stamina, EquipmentType et, int id, string name, ItemQuality quality, ItemType type, string description, int amount, int capacity, int buyprice, int sellprice) { ItemEquipment dataTmp = new ItemEquipment(); dataTmp.SetData(strength, intellect, agility, stamina, et, id, name, quality, type, description, amount, capacity, buyprice, sellprice); data = dataTmp; }
public void ClearSlot() { item = null; icon.sprite = null; icon.enabled = false; button.interactable = false; }
public void AddItem(ItemEquipment item) { equippedItem = item; itemIcon.sprite = equippedItem.image; button.interactable = true; itemIcon.gameObject.SetActive(true); }
void UpdateEquipmentSprite(ItemEquipment newItem, ItemEquipment oldItem) { if (newItem != null) { if (newItem.equipSlot == slot) { if (newItem.parts != null) { for (int i = 0; i < newItem.parts.Length; i++) { if (newItem.parts[i].part == part) { equipmentSprite.sprite = newItem.parts[i].image; return; } } } } return; } if (oldItem != null) { if (oldItem.equipSlot == slot) { equipmentSprite.sprite = null; } return; } }
private TipViewData GetTipViewDataByEquip(ItemEquipment equip) { TipViewData viewData = new TipViewData() { priority = TIP_TYPE_EQUIP, itemId = equip.templateId, tipText = LanguageData.GetContent(3020) + "\n" + equip.name, btnName = LanguageData.GetContent(3021), btnAction = () => { //TimerHeap.DelTimer(timerId); TipUIManager.Instance.Hide(TIP_TYPE_EQUIP); ItemParent temp = InventoryManager.Instance.GetItemByItemID(equip.templateId); if (temp == null) { MogoMsgBox.Instance.ShowFloatingText(LanguageData.GetContent(472)); } else { MogoWorld.thePlayer.RpcCall("ExchangeEquipment", temp.id, (byte)temp.gridIndex); } } }; return(viewData); }
/// <summary> /// Unequips the weapon and removes the bonuses /// </summary> public void UnequipWeapon() { if (weapon != null) { weapon.RemoveBonusStats(); weapon = null; } }
public void ClearSlot() { itemIcon.sprite = null; itemIcon.gameObject.SetActive(false); button.interactable = false; equippedItem = null; }
public void GetItem(int ID, ItemEquipmentSelect itemEquip) { ItemEquipment item = GameManager.Instance.lsItemEquip[ID]; item.objOpen.SetActive(true); item.iconHero.sprite = itemEquip.iconHero.sprite; item.iconEquip.sprite = itemEquip.iconEquip.sprite; item.txtPercent.text = itemEquip.txtPercent.text; itemEquip.btnEquip.image.sprite = arrImgBtnEquip[2]; }
/// <summary> /// 解析装备 /// </summary> private void ParseEquipment() { var jsonData = SerializeTool.JsonDeserialize(Contract.Instance.equipmentDataPath); for (int i = 0; i < jsonData.Count; i++) { var equipmentData = new ItemEquipment(); equipmentData.SetData(jsonData[i]); allItems.Add(equipmentData.id, equipmentData);//向物品管理器中添加该数据 } }
/// <summary> /// Attempts to automaticly equip the item /// </summary> /// <param name="equipment"></param> public void Equip(ItemEquipment equipment) { switch (equipment.properties.type) { case ItemProperties.Type.EQUIPMENT_WEAPON: EquipWeapon(equipment); break; default: break; } }
/// <summary> /// Equips the give weapon and replaces the old one if any /// </summary> /// <param name="wpn"></param> public void EquipWeapon(ItemEquipment wpn) { Debug.Assert(wpn.properties.type == ItemProperties.Type.EQUIPMENT_WEAPON, wpn.properties.name + " is not a weapon?"); if (weapon != null) { weapon.RemoveBonusStats(); } weapon = wpn; wpn.AddBonusStats(); }
// unequips the specified item, returns true if successful public bool UnequipItem(int itemID) { ItemEquipment item = Equipment.SingleOrDefault(ie => ie.ID == itemID); if (item != null) { Equipment.Remove(item); AddItemToInventory(itemID); RecalculateStats(); return(true); } return(false); }
public void ShowRespInfo(int errorId, int slot = 0) { if (errorId == 5 && slot != 0 && InventoryManager.Instance.EquipOnDic.ContainsKey(slot)) { ItemEquipment equip = InventoryManager.Instance.EquipOnDic.Get(slot); MogoMsgBox.Instance.ShowFloatingText(LanguageData.GetContent(1385, ItemParentData.GetItem(equip.GetEnhantMaterialId()).Name)); } else if (errorId != 0) { MogoMsgBox.Instance.ShowFloatingText(LanguageData.GetContent(errorId + 1380)); } }
public void MarkOccupied(ItemWeaponBase weaponItem) { itemIcon.sprite = weaponItem.image; button.interactable = false; itemIcon.gameObject.SetActive(true); var iconColor = itemIcon.color; iconColor.a = 0.5f; itemIcon.color = iconColor; equippedItem = null; }
public void Unequip(int slotIndex) { if (currentEquipment[slotIndex] != null) { ItemEquipment oldItem = currentEquipment[slotIndex]; PlayerInventory.instance.AddItem(oldItem); currentEquipment[slotIndex] = null; if (onEquipmentChanged != null) { onEquipmentChanged.Invoke(null, oldItem); } } }
void OnEquipmentChanged(ItemEquipment newItem, ItemEquipment oldItem) { if (newItem != null) { armour.AddModifier(newItem.armorModifier); damage.AddModifier(newItem.damageModifier); } if (oldItem != null) { armour.RemoveModifier(oldItem.armorModifier); damage.RemoveModifier(oldItem.damageModifier); } }
public void InitView(ItemModel[] models) { GameObject go; for (int i = 0; i < models.Length; i++) { go = Instantiate(ItemEquipment); go.transform.SetParent(GridEquipment); go.transform.localScale = Vector3.one; ItemEquipment item = go.GetComponent <ItemEquipment>(); item.InitView(models[i]); m_ItemDict.Add(item.ItemId, item); } }
//----------------------------------------------------------------------------- // Overridden methods //----------------------------------------------------------------------------- public override void Update() { base.Update(); // Equip equipment. if (Controls.A.IsPressed()) { if (currentSlotGroup.CurrentSlotIndex >= currentSlotGroup.NumSlots - 6) { AudioSystem.PlaySound(GameData.SOUND_MENU_SELECT); ItemEquipment selectedItem = currentSlotGroup.CurrentSlot.SlotItem as ItemEquipment; GameControl.Inventory.EquipEquipment(selectedItem); } } }
public void Unequip(ItemEquipment equipment) { switch (equipment.properties.type) { case ItemProperties.Type.EQUIPMENT_WEAPON: // if that equipment is actually equiped if (weapon != null && weapon.Equals(equipment)) { UnequipWeapon(); } break; default: break; } }
public JobMusician() { JobName = "Musician"; AbilityPoints = 0; ItemEquipment baseChest = new ItemEquipment("Dirty T-Shirt"); baseChest.Defense = 2; baseChest.EnergyRegen = 0; baseChest.SmartsMod = 0; baseChest.SwiftMod = 0; baseChest.AwesomeMod = 1; baseChest.GutsMod = 1; baseChest.Damage = 0; baseChest.MaxHealthMod = 0; ItemEquipment baseWeapon = new ItemEquipment("Broken Guitar"); baseWeapon.Defense = 0; baseWeapon.EnergyRegen = 0; baseWeapon.SmartsMod = 0; baseWeapon.SwiftMod = 0; baseWeapon.AwesomeMod = 0; baseWeapon.GutsMod = 0; baseWeapon.Damage = 2; baseWeapon.MaxHealthMod = 0; ItemEquipment baseAccessory = new ItemEquipment("Red Bandana"); baseAccessory.Defense = 0; baseAccessory.EnergyRegen = 1; baseAccessory.SmartsMod = 0; baseAccessory.SwiftMod = 0; baseAccessory.AwesomeMod = 1; baseAccessory.GutsMod = 0; baseAccessory.Damage = 0; baseAccessory.MaxHealthMod = 2; ItemChest = baseChest; ItemWeapon = baseWeapon; ItemAccessory = baseAccessory; AddAbility(new BaseAbilityClass("Single Attack")); AddAbility(new BaseAbilityClass("Area Attack")); AddAbility(new BaseAbilityClass("Single Buff")); AddAbility(new BaseAbilityClass("Area Buff")); }
private void UpdateUISlot(ItemEquipment newItem, ItemEquipment oldItem) { if (oldItem) { int equipmenSlotIndex = (int)oldItem.equipmentSlot; equipmentSlots[equipmenSlotIndex].ClearSlot(); if (oldItem is ItemWeapon && oldItem.equipmentSlot == ItemEquipment.EquipmentSlot.WeaponRightHand) { var itemWeapon = oldItem as ItemWeapon; if (itemWeapon.isTwoHandedWeapon) { equipmentSlots[equipmenSlotIndex + 1].UnmarkOccupied(); } } } if (newItem) { int equipmenSlotIndex = (int)newItem.equipmentSlot; equipmentSlots[equipmenSlotIndex].AddItem(newItem); if (newItem is ItemWeapon && newItem.equipmentSlot == ItemEquipment.EquipmentSlot.WeaponRightHand) { var itemWeapon = newItem as ItemWeapon; if (itemWeapon.isTwoHandedWeapon) { equipmentSlots[equipmenSlotIndex + 1].MarkOccupied(itemWeapon); } } else if (newItem is ItemShield && newItem.equipmentSlot == ItemEquipment.EquipmentSlot.WeaponLeftHand) { var twoHandedWeaponSlot = equipmentSlots[equipmenSlotIndex - 1]; var twoHandedWeapon = twoHandedWeaponSlot.equippedItem as ItemWeapon; if (twoHandedWeapon && twoHandedWeapon.isTwoHandedWeapon) { twoHandedWeaponSlot.ClearSlot(); } } } }
/// <summary> /// Removes the item at the slot /// </summary> /// <param name="row"></param> /// <param name="col"></param> /// <returns>null if removal was unsuccessful</returns> public ItemBase RemoveItemAt(int row, int col) { // check row if (row >= itemRows.Length || row < 0) { return(null); } // check col if (col >= itemRows[row].items.Length || col < 0) { return(null); } ItemBase item = GetItem(row, col); // no item to remove if (item == null) { return(null); } // unequiping from owner if (item.properties.IsTypeEquipment()) { ItemEquipment equip = (ItemEquipment)item; equip.Unequip(); } // remove owner reference item.owner = null; // remove item reference itemRows[row].items[col] = null; // remove from map _itemSlotsMap.Remove(item); item.OnDisposal -= DisposeItemEventListener; if (OnItemRemoved != null) { OnItemRemoved(new ItemSlot(row, col)); } return(item); }
public JobComedian() { JobName = "Comedian"; AbilityPoints = 0; ItemEquipment baseChest = new ItemEquipment("Cheap Suit"); baseChest.Defense = 2; baseChest.EnergyRegen = 0; baseChest.SmartsMod = 0; baseChest.SwiftMod = 0; baseChest.AwesomeMod = 1; baseChest.GutsMod = 1; baseChest.Damage = 0; baseChest.MaxHealthMod = 0; ItemEquipment baseWeapon = new ItemEquipment("Broken Microphone"); baseWeapon.Defense = 0; baseWeapon.EnergyRegen = 0; baseWeapon.SmartsMod = 0; baseWeapon.SwiftMod = 0; baseWeapon.AwesomeMod = 0; baseWeapon.GutsMod = 0; baseWeapon.Damage = 2; baseWeapon.MaxHealthMod = 0; ItemEquipment baseAccessory = new ItemEquipment("Old Joke Book"); baseAccessory.Defense = 0; baseAccessory.EnergyRegen = 1; baseAccessory.SmartsMod = 0; baseAccessory.SwiftMod = 0; baseAccessory.AwesomeMod = 1; baseAccessory.GutsMod = 0; baseAccessory.Damage = 0; baseAccessory.MaxHealthMod = 2; ItemChest = baseChest; ItemWeapon = baseWeapon; ItemAccessory = baseAccessory; AddAbility(new BaseAbilityClass("Single Attack")); AddAbility(new BaseAbilityClass("Area Attack")); AddAbility(new BaseAbilityClass("Single Buff")); AddAbility(new BaseAbilityClass("Area Buff")); }
public JobChef() { JobName = "Chef"; AbilityPoints = 0; ItemEquipment baseChest = new ItemEquipment("Dirty Apron"); baseChest.Defense = 2; baseChest.EnergyRegen = 0; baseChest.SmartsMod = 0; baseChest.SwiftMod = 0; baseChest.AwesomeMod = 1; baseChest.GutsMod = 1; baseChest.Damage = 0; baseChest.MaxHealthMod = 0; ItemEquipment baseWeapon = new ItemEquipment("Rusty Suacepan"); baseWeapon.Defense = 0; baseWeapon.EnergyRegen = 0; baseWeapon.SmartsMod = 0; baseWeapon.SwiftMod = 0; baseWeapon.AwesomeMod = 0; baseWeapon.GutsMod = 0; baseWeapon.Damage = 2; baseWeapon.MaxHealthMod = 0; ItemEquipment baseAccessory = new ItemEquipment("Moldy Chef Hat"); baseAccessory.Defense = 0; baseAccessory.EnergyRegen = 1; baseAccessory.SmartsMod = 0; baseAccessory.SwiftMod = 0; baseAccessory.AwesomeMod = 1; baseAccessory.GutsMod = 0; baseAccessory.Damage = 0; baseAccessory.MaxHealthMod = 2; ItemChest = baseChest; ItemWeapon = baseWeapon; ItemAccessory = baseAccessory; AddAbility(new BaseAbilityClass("Single Attack")); AddAbility(new BaseAbilityClass("Area Attack")); AddAbility(new BaseAbilityClass("Single Buff")); AddAbility(new BaseAbilityClass("Area Buff")); }
private bool IsFull(int slot) { ItemEquipment equip = InventoryManager.Instance.EquipOnDic[slot]; Dictionary <int, int> enhant = equip.enchant; int fumoSum = 0; foreach (int num in enhant.Values) { fumoSum = num; break; } if (m_data[slot].Count >= fumoSum) { return(true); } return(false); }
void UpdateEquipmentUI(ItemEquipment newItem, ItemEquipment oldItem) { if (newItem != null) { for (int i = 0; i < equipSlots.Length; i++) { if (i == (int)newItem.equipSlot) { equipSlots[i].AddItem(newItem); } } } else { equipSlots[(int)oldItem.equipSlot].ClearSlot(); } }
private EquipUpgradeViewManager.EquipUpgradeViewData GetViewdata(ItemEquipment m_equip) { EquipUpgradeViewManager.EquipUpgradeViewData viewData = new EquipUpgradeViewManager.EquipUpgradeViewData(); viewData.oldEquipId = m_equip.templateId; ItemEffectData itemEffect = ItemEffectData.dataMap.Get(m_equip.effectId); ItemEquipmentData newEquip = null; foreach (int id in itemEffect.reward1.Keys) { newEquip = ItemEquipmentData.dataMap.Get(id); viewData.newEquipId = newEquip.id; break; } viewData.materialIdList = new List<int>(); viewData.materilNumStrList = new List<string>(); foreach (KeyValuePair<int, int> pair in itemEffect.costId) { Mogo.Util.LoggerHelper.Debug(pair.Key); ItemParentData item = ItemParentData.GetItem(pair.Key); if (item.itemType > 0) { viewData.materialIdList.Add(item.id); string numStr = string.Empty; int num = InventoryManager.Instance.GetItemNumByIdAndType(item.id, item.itemType); int needNum = pair.Value; numStr = string.Concat(num, "/", needNum); if (needNum > num) { numStr = MogoUtils.GetRedString(numStr); } viewData.materilNumStrList.Add(numStr); } else { viewData.needGold = "X" + pair.Value; } } int level = MogoWorld.thePlayer.level; viewData.power = LanguageData.GetContent(190000, newEquip.GetScore(level) - m_equip.GetScore(level)); return viewData; }
private void RefreshDialog2UI() { InsetUIViewManager view = InsetUIViewManager.Instance; ItemEquipment equip; if ((equip = m_inventoryManager.GetRecommendEquipBySlot(CurrentSlot)) != null) { view.ShowInsetDialog2EquipDetail(true); view.SetDialog2Title(LanguageData.GetContent(447)); view.SetDialog2EquipImage(equip.templateId); view.SetDialog2EquipName(equip.name); view.SetDialog2EquipLevelNeed(LanguageData.GetContent(911, equip.levelNeed)); m_currentEquipment = equip; } else { view.ShowInsetDialog2EquipDetail(false); view.SetDialog2Title(LanguageData.GetContent(448)); Mogo.Util.LoggerHelper.Debug("m_currentSlot" + CurrentSlot); view.SetDialog2EquipImageFg(EquipSlotIcon.icons[CurrentSlot]); } }
/// <summary> /// Add an item to the inventory. /// </summary> /// <param name="newItem">ItemEquipment</param> public void inventoryAddItem(ItemEquipment newItem) { if (newItem == null) return; switch (newItem.type) { case ItemBase.tItemType.Armor: armors.Add(newItem); break; case ItemBase.tItemType.Component: components.Add(newItem); break; case ItemBase.tItemType.Weapon: inventoryAddItem((ItemWeapon)newItem); break; default: break; } }
//generic to equip any itemEquipment. will replace it in the appropriate spot. public void inventoryEquipItem(ItemEquipment itemToEquip) { //equip items if applicaple. if(itemToEquip is ItemWeapon) { equipedWeapon = (ItemWeapon)itemToEquip; } else if(itemToEquip is ItemArmor) { ItemArmor armorToEquip = itemToEquip as ItemArmor; switch (armorToEquip.armorPart) { case ItemArmor.tArmorPart.Chest: equipedChest = armorToEquip; break; case ItemArmor.tArmorPart.Head: equipedHelmet = armorToEquip; break; case ItemArmor.tArmorPart.Legs: equipedLegs = armorToEquip; break; } } else { return; //change nothing if it was not equipable equipment.... } calculateAndApplyStats(); }
private TipViewData GetTipViewDataByEquipToDecompose(ItemEquipment equip) { TipViewData viewData = new TipViewData() { priority = TIP_TYPE_ENHANCE, itemId = equip.templateId, tipText = LanguageData.GetContent(3028) + "\n" + LanguageData.GetContent(3029), btnName = LanguageData.GetContent(3030), btnAction = () => { //TimerHeap.DelTimer(timerId); TipUIManager.Instance.HideAll(TIP_TYPE_ENHANCE); ItemParent temp = InventoryManager.Instance.GetItemByItemID(equip.templateId); if (temp == null) { MogoMsgBox.Instance.ShowFloatingText(LanguageData.GetContent(472)); } else { MogoWorld.thePlayer.StopMove(); MogoUIManager.Instance.SwitchDecomposeUI(); } } }; return viewData; }
private TipViewData GetTipViewDataByEquip(ItemEquipment equip) { TipViewData viewData = new TipViewData() { priority = TIP_TYPE_EQUIP, itemId = equip.templateId, tipText = LanguageData.GetContent(3020) + "\n" + equip.name, btnName = LanguageData.GetContent(3021), btnAction = () => { //TimerHeap.DelTimer(timerId); TipUIManager.Instance.Hide(TIP_TYPE_EQUIP); ItemParent temp = InventoryManager.Instance.GetItemByItemID(equip.templateId); if (temp == null) { MogoMsgBox.Instance.ShowFloatingText(LanguageData.GetContent(472)); } else { MogoWorld.thePlayer.RpcCall("ExchangeEquipment", temp.id, (byte)temp.gridIndex); } } }; return viewData; }
//private void ShowEquipInfo(ItemParent item) //{ // ItemEquipment ie = (ItemEquipment)item; // //view.SetEquipDetailInfoNeedLevel(data.levelNeed); // //view.SetEquipDetailInfoGrowLevel(data.growLevel); // //for (int i = 0; i < 9; i++) // //{ // // view.SetDiamondHoleInfo(data.holeInfos[i], i); // //} // //for (int i = 0; i < 4; i++) // //{ // // view.SetDiamondHoleInfo(data.jewelHoles[i], i + 9); // // view.ShowNewDiamondHoleIcon(i + 9, (data.jewelHoles[i] != EquipTipViewData.NONE_JEWEL)); // //} // //view.SetEquipDetailInfoNeedJob(data.job); // ie.level = ie.levelNeed; // EquipTipViewData data = GetEquipInfoByItem(ie); // MenuUIViewManager view = MenuUIViewManager.Instance; // view.SetEquipDetailInfoImage(data.iconName); // view.ShowEquipDetailInfoImageUsed(data.isEquipOn); // view.SetEquipDetailInfoName(data.name); // view.SetEquipDetailInfoImageBg(IconData.GetIconByQuality(ie.quality)); // List<string> attrList = ie.GetAttrDescriptionList(MogoWorld.thePlayer); // List<string> jewelList = new List<string>(); // foreach (string s in data.jewelHoles) // { // if (s == "") continue; // jewelList.Add(s); // } // MenuUIViewManager.Instance.ShowEquipInfoDetail(attrList, jewelList, ie.levelNeed + "", LanguageData.dataMap[ie.vocation].content); //} //public EquipTipViewData GetEquipInfoByItem(int _templateId, List<int> _jewelSlots) //{ // ItemEquipmentInstance instance = new ItemEquipmentInstance() { templeId = _templateId, jewelSlots = _jewelSlots }; // return GetEquipInfoByItem(new ItemEquipment(instance),); //} static public EquipTipViewData GetEquipInfoByItem(ItemEquipment ie, int level) { //LoggerHelper.Debug("GetEquipInfoByItem:" + ie.templateId+"!!!!!!!!!!!!!!"); EquipTipViewData data = new EquipTipViewData(); data.levelNeed = ie.levelNeed; //ie.level跟玩家level相关,不实时更新,需要使用时设置,其具体属性根据此值变化 ie.level = MogoWorld.thePlayer.level; if (ie.level <= 0) ie.level = 99; data.growLevel = ie.level + "/" + ie.levelLimit; ie.level = ie.levelNeed; List<string> attrList = ie.GetAttrDescriptionList(level); int m = 0; for (m = 0; m < attrList.Count && m < 9; m++) { data.holeInfos[m] = attrList[m]; } for (; m < 9; m++) { data.holeInfos[m] = ""; } data.job = LanguageData.dataMap[ie.vocation].content; data.iconName = ie.icon; data.isEquipOn = (ie.bagType == ITEM_TYPE_ONEQUIP); for (int i = 0; i < 4; i++) { data.jewelHoles[i] = ""; } if (ie.jewelSlotsType != null) { data.jewelSlotIcons = new List<string>(); for (int i = 0; i < ie.jewelSlotsType.Count; i++) { data.jewelHoles[i] = LanguageData.GetContent(910);//+ ie.jewelSlotsType[i]; data.jewelSlotIcons.Add(IconData.dataMap.Get(30018 + ie.jewelSlotsType[i]).path); } for (int i = 0; i < ie.jewelSlots.Count; i++) { int id = ie.jewelSlots[i]; if (id == -1) continue; data.jewelSlotIcons[i] = IconData.dataMap.Get(30027 + ie.jewelSlotsType[i]).path; ItemJewelData jewel = ItemJewelData.dataMap[id]; string jewelInfo = jewel.effectDescriptionStr + ""; data.jewelHoles[i] = jewelInfo; } } data.name = ie.name; return data; }
/// <summary> /// /// </summary> /// <param name="equip"></param> /// <param name="buttonList">若无按钮即传null</param> public void ShowEquipTip(ItemEquipment equip, List<ButtonInfo> buttonList, int _level, bool needFumoInfo = false, int slot = -1) { EquipTipViewData data = GetEquipInfoByItem(equip, _level); //MenuUIViewManager view = MenuUIViewManager.Instance; EquipTipManager view = EquipTipManager.Instance; //界面静态部分 //view.SetEquipDetailInfoImage(data.iconName); view.ShowEquipDetailInfoImageUsed(data.isEquipOn); view.SetEquipDetailInfoName(data.name);// view.SetEquipImage(equip.templateId); view.SetEquipDetailInfoScoreNum(equip.score); //view.SetEquipDetailInfoImageBg(IconData.GetIconByQuality(equip.quality)); //界面动态排版部分 List<string> attrList = equip.GetAttrDescriptionList(_level); List<string> jewelList = new List<string>(); foreach (string s in data.jewelHoles) { if (s == "") continue; jewelList.Add(s); } string suitName = ""; List<string> suitAttr = new List<string>(); if (equip.suitId > 0) { suitName = ItemSuitEquipmentsData.GetSuitName(equip.suitId); if (!equip.isActive) suitName += LanguageData.GetContent(1137); int suitPutOnNum = GetSuitPutonNum(equip.suitId); int suitMaxNum = ItemSuitEquipmentsData.GetSuitMaxNum(equip.suitId); suitName = String.Concat(suitName, "(", suitPutOnNum, "/", suitMaxNum, ")"); suitAttr = ItemSuitEquipmentsData.GetSuitAttrList(equip.suitId, suitPutOnNum); } string levelDesp = equip.levelDesp; view.SetEquipDetailInfoLevelText(levelDesp); string vocation = LanguageData.dataMap[equip.vocation].content; vocation = LanguageData.GetContent(912, vocation); if (equip.vocation != (int)MogoWorld.thePlayer.vocation) { vocation = MogoUtils.GetRedString(vocation); } view.SetVocationNeedText(vocation); FumoTipUIInfo fumoInfo = null; if (needFumoInfo) { fumoInfo = FumoManager.Instance.GetFumoTipUIInfo(slot); } view.ShowEquipTip(suitName, suitAttr, attrList, jewelList, data.jewelSlotIcons, buttonList, fumoInfo); }
private void _InitData(List<ItemParentInstance> listFromServer) { //根据从服务器得到的所有item实例初始化 Dictionary<int, ItemParent> normalItems = new Dictionary<int, ItemParent>(); Dictionary<int, ItemParent> jewelItems = new Dictionary<int, ItemParent>(); Dictionary<int, ItemParent> spiritItems = new Dictionary<int, ItemParent>(); foreach (ItemParentInstance itemInstance in listFromServer) { ItemParent item; switch (itemInstance.bagType) { case ITEM_TYPE_EQUIPMENT: item = new ItemEquipment((ItemEquipmentInstance)itemInstance); normalItems[item.gridIndex] = item; break; case ITEM_TYPE_JEWEL: item = new ItemJewel((ItemJewelInstance)itemInstance); jewelItems[item.gridIndex] = item; break; case ITEM_TYPE_MATERIAL: //itemParent = new ItemJewel(itemInstance); //spiritItems[itemParent.GridIndex] = itemParent; break; } } m_itemsInBag[ITEM_TYPE_EQUIPMENT] = normalItems; m_itemsInBag[ITEM_TYPE_JEWEL] = jewelItems; m_versionId++; }
public void EquipItem(ItemEquipment item, int index) { UpdateCount+=1; for (int i=0; i<itemStickers.Length; i++) { if (itemStickers [i] != null && item != null) { if (itemStickers [i].equipType == item.itemType && itemStickers [i].Primary) { AttachItem (itemStickers [i], item); itemStickers [i].ItemIndex = index; return; } } } for (int i=0; i<itemStickers.Length; i++) { if (itemStickers [i] != null && item != null) { if (itemStickers [i].equipType == item.itemType) { AttachItem (itemStickers [i], item); itemStickers [i].ItemIndex = index; return; } } } }
public void AttachItem(ItemSticker sticker, ItemEquipment item) { UpdateCount+=1; if (sticker != null && item != null) { RemoveEquipItem (sticker); Quaternion rotationTemp = sticker.transform.rotation; rotationTemp.eulerAngles += sticker.RotationOffset; GameObject newitem = (GameObject)GameObject.Instantiate (item.gameObject, sticker.transform.position, rotationTemp); newitem.transform.parent = sticker.gameObject.transform; if (sticker.equipType == EquipType.Weapon) { TDEquipment = newitem.GetComponent<ItemEquipment> (); } } }
public void OnGetEquipment(ItemEquipment equip) { if (MogoWorld.thePlayer.level <= 1) return; if (!MogoWorld.inCity) { m_equipQueue.Enqueue(equip); return; } if (InventoryManager.Instance.IsEquipmentBetter(equip.templateId)) { //uint timerId = TimerHeap.AddTimer(TIME_LENGTH, 0, () => { TipUIManager.Instance.Hide(TIP_TYPE_EQUIP); }); TipViewData viewData = GetTipViewDataByEquip(equip); TipUIManager.Instance.AddTipViewData(viewData); } else if (InventoryManager.Instance.EquipmentInBagList.Count >= 10 && InventoryManager.Instance.IsRubbish((equip.templateId), 4)) { //uint timerId = TimerHeap.AddTimer(TIME_LENGTH, 0, () => { TipUIManager.Instance.Hide(TIP_TYPE_EQUIP); }); TipViewData viewData = GetTipViewDataByEquipToDecompose(equip); TipUIManager.Instance.AddTipViewData(viewData); } }