//武器格子点击回调 void OnWeaponSlotClick(UIItemSlot slot, PointerEventData eventData) { LocalPlayer localPlayer = Helper.FindLocalPlayer(); if (localPlayer != null && bindEquipment != null) { MouseItem mouseItem = localPlayer.bag.mouseItem; if (mouseItem.hasItem) { //鼠标有物品,则尝试装备 if (mouseItem.item.Type.IsWeapon) { Item preWeapon = null; bindEquipment.PutOnWeapon(mouseItem.TakeItem(), slot.index, out preWeapon); mouseItem.PutItem(preWeapon); //鼠标放入之前格子里的武器 } else { //鼠标上的不是武器,什么都不用做 } } else { //鼠标没物品,尝试取下武器,如果没武器,则会得到null mouseItem.PutItem(bindEquipment.TakeOffWeapon(slot.index)); } Helper.ShowTips(bindEquipment.Weapons[slot.index]); } Helper.MoveWndToFront(transform); }
void Start() { lib = GetComponent <Library>(); inv = GetComponent <Inventary>(); upgrade = GetComponent <Upgrader>(); MouseItem = GetComponent <MouseItem>(); }
//护甲格子点击回调 void OnArmorSlotClick(UIItemSlot slot, PointerEventData eventData) { LocalPlayer localPlayer = Helper.FindLocalPlayer(); if (localPlayer != null && bindEquipment != null) { MouseItem mouseItem = localPlayer.bag.mouseItem; if (mouseItem.hasItem) { //鼠标有物品,则尝试装备 if (mouseItem.item.Type.IsArmor) { ArmorProperties armorProp = EquipTable.GetArmorProp(mouseItem.item.Type.armorId); if (armorProp != null && armorProp.armorType == PlayerEquipment.armorTypes[slot.index]) { //护甲有效,护甲类型匹配,则装备 Item preArmor = null; bindEquipment.PutOnArmor(mouseItem.TakeItem(), slot.index, out preArmor); //穿上护甲 mouseItem.PutItem(preArmor); //鼠标放入之前格子里的护甲 } } else { //鼠标上的不是护甲,什么都不用做 } } else { //鼠标没物品,尝试取下武器,如果没武器,则会得到null mouseItem.PutItem(bindEquipment.TakeOffArmor(slot.index)); } Helper.ShowTips(bindEquipment.Armors[slot.index]); } Helper.MoveWndToFront(transform); }
void Start() { lib = GetComponent <Library>(); Equip = GetComponent <Equipment>(); MouseItem = GetComponent <MouseItem>(); }
void OnMouseItemChanged(System.Object sender) { MouseItem mouseItem = sender as MouseItem; if (mouseItem != null) { SetItemInfo(mouseItem.item); } }
static void Main(string[] args) { BaseLaptop ToBuy = new HPLaptop(); ToBuy = new MouseItem(ToBuy); ToBuy = new HeadsetItem(ToBuy); ToBuy = new RAMItem(ToBuy, 4); Console.WriteLine("{0}\nDescription: {1}\nPrice: {2}", ToBuy.GetName(), ToBuy.GetDescription(), ToBuy.GetPrice()); Console.ReadKey(); }
//点下物品格 void OnItemMouseDown(UIItemSlot slot, PointerEventData eventData) { if (bindBag != null) { //获取背包内容 ItemPackage itemPack = bindBag.itemPack; if (eventData.button == PointerEventData.InputButton.Left) { // 左键 if (Input.GetKey(KeyCode.LeftShift)) //按住shift,移动到垃圾箱 { Item itemInSlot = null; //原来格子里的物品 itemInSlot = itemPack.TakeItem(slot.index); if (itemInSlot != null) //如果有物品,放入垃圾箱 { bindBag.trash.PutItem(itemInSlot); } } else { //没有按shift MouseItem mouseItem = bindBag.mouseItem; if (mouseItem.hasItem) //鼠标拖拽有物品,放入格子 { Item itemInSlot = null; //原来格子里的物品 itemPack.PutInItem(mouseItem.TakeItem(), slot.index, out itemInSlot); //可以叠加或原来没有物品,则itemInSlot为null,不论是否null,放入鼠标即可 mouseItem.PutItem(itemInSlot); } else { //鼠标没有物品,取出原来格子里的物品,放入鼠标即可 mouseItem.PutItem(itemPack.TakeItem(slot.index)); } } } else { //右键,使用 Item itemInSlot = null; //原来格子里的物品 itemInSlot = itemPack.TakeItem(slot.index); //拿出来 if (itemInSlot.Type.IsArmor) { //护甲,装备上,饰品就放在第一个格子里 LocalPlayer localPlayer = Helper.FindLocalPlayer(); if (localPlayer != null) { Item preArmor = null; localPlayer.equipment.PutOnArmor(itemInSlot, out preArmor); //穿上护甲 itemPack.PutInItem(preArmor, slot.index, out itemInSlot); //脱下的护甲放入这个格子里 } } } Helper.ShowTips(itemPack.content[slot.index]); } Helper.MoveWndToFront(transform); }
void OnTrashMouseDown(UIItemSlot slot, PointerEventData eventData) { if (bindBag != null) { //获取背包内容 Trash trash = bindBag.trash; MouseItem mouseItem = bindBag.mouseItem; if (mouseItem.hasItem) //鼠标拖拽有物品,放入格子 { trash.PutItem(mouseItem.TakeItem()); } else { mouseItem.PutItem(trash.TakeItem()); } Helper.ShowTips(trash.item); } Helper.MoveWndToFront(transform); }
private void Start() { sellCanvas.SetActive(false); _mouseItem = GetComponent <MouseItem>(); _gameManager = GameManager.GetInstance(); }
// Use this for initialization void Start() { mouseI = mouseSlot.transform.GetComponent <MouseItem>(); CreateInventorySlots(); Redraw(); }