Beispiel #1
0
    public void ShowEquipInfoUI(InventoryItem it, InventoryItemUI itemUI, KnapStackRoleEquip kSRE, bool isLeft = true)
    {
        this.gameObject.SetActive(true);
        this.it   = it;
        this.itUI = itemUI;
        this.kSRE = kSRE;
        Vector3 pos = this.transform.localPosition;

        equipName.text         = it.inventory.Name;
        quality.text           = it.inventory.Quality.ToString();
        damage.text            = it.inventory.Damge.ToString();
        hP.text                = it.inventory.HP.ToString();
        startLevel.text        = it.Level.ToString();
        power.text             = it.inventory.Power.ToString();
        des.text               = it.inventory.Des;
        equipSprite.spriteName = it.inventory.IconName;

        if (isLeft)
        {
            equipLabel.text = "装备";
            this.transform.localPosition = new Vector3(-Mathf.Abs(30), pos.y, pos.z);
            edEquip.Set(this, "EquipButtonClick");
        }
        else
        {
            equipLabel.text = "卸下";
            edEquip.Set(this, "EquipPutOff");
            this.transform.localPosition = new Vector3(Mathf.Abs(220), pos.y, pos.z);
        }

        equipButton.onClick.Add(edEquip);
    }
Beispiel #2
0
    public void OnEquipClick(object[] objectArry)
    {
        it     = (InventoryItem)objectArry[0];
        isLeft = (bool)objectArry[1];

        if (isLeft)
        {
            itUI = (InventoryItemUI)objectArry[2];
        }
        else
        {
            kSRE = (KnapStackRoleEquip)objectArry[2];
        }

        if (it.inventory.ItemsType == ItemType.Equip)
        {
            equipInfoFrame.ShowEquipInfoUI(it, itUI, kSRE, isLeft);
            itemInfoFrame.CloseButtonClick();
        }
        else
        {
            itUI = (InventoryItemUI)objectArry[2];
            itemInfoFrame.ShowItemDesUI(it, itUI);
            equipInfoFrame.CloseButtonClick();
        }

        if (it.inventory.ItemsType != ItemType.Equip || (it.inventory.ItemsType == ItemType.Equip && isLeft))
        {
            this.transform.GetChild(2).SendMessage("OnEnableButton", (InventoryItemUI)objectArry[2]);
        }
    }
Beispiel #3
0
    //卸下装备
    public void OnEquipOff(InventoryItem it, KnapStackRoleEquip kSRE = null)
    {
        if (it == null)
        {
            return;
        }
        InventoryUI.GetInstance.pageNumber++;

        InventoryUI.GetInstance.UpdateShowPageNumber();
        it.isDrass = false;
        InventoryUI.GetInstance.AddInventory(it);
        OnEquipPutOff(it);

        //装备面板处卸下时执行清理
        if (kSRE != null)
        {
            kSRE.OnClear();
        }

        DessOff(it);
        OnPlayerInfoChangedEvent(PlayerInfoType.Equip);
    }
Beispiel #4
0
    private void Awake()
    {
        _instance      = this;
        helm           = transform.Find("Role/HelmSprite").GetComponent <KnapStackRoleEquip>();
        cloth          = transform.Find("Role/ClothSprite").GetComponent <KnapStackRoleEquip>();
        weapon         = transform.Find("Role/WeaponSprite").GetComponent <KnapStackRoleEquip>();
        shoes          = transform.Find("Role/ShoesSprite").GetComponent <KnapStackRoleEquip>();
        nocklace       = transform.Find("Role/NocklaceSprite").GetComponent <KnapStackRoleEquip>();
        bracelet       = transform.Find("Role/BraceletSprite").GetComponent <KnapStackRoleEquip>();
        ring           = transform.Find("Role/RingSprite").GetComponent <KnapStackRoleEquip>();
        wing           = transform.Find("Role/WingSprite").GetComponent <KnapStackRoleEquip>();
        hpLabel        = transform.Find("Role/HPbg/HPLabel").GetComponent <UILabel>();
        damageLabel    = transform.Find("Role/Damgebg/DamageLabel").GetComponent <UILabel>();
        expLabel       = transform.Find("Role/ExpSlider/ExpLabel").GetComponent <UILabel>();
        expSlider      = transform.Find("Role/ExpSlider").GetComponent <UISlider>();
        equipInfoFrame = transform.Find("EquipInfoFrame").GetComponent <EquipInfoFrame>();
        itemInfoFrame  = transform.Find("ItemInfoFrame").GetComponent <ItemInfoFrame>();
        closeButton    = transform.Find("CloseButton").GetComponent <UIButton>();
        EventDelegate ed = new EventDelegate(this, "Hide");

        closeButton.onClick.Add(ed);
        tween = transform.GetComponent <TweenPosition>();
        PlayerInfo.GetInstance.OnPlayerInfoChangedEvent += OnPlayerInfoChanged;
    }
Beispiel #5
0
    //穿戴装备
    public void OnEquipOn(InventoryItem it, InventoryItemUI itUI, KnapStackRoleEquip kSRE)
    {
        this.it   = it;
        this.itUI = itUI;
        bool          isDrassed = false;
        InventoryItem item      = null;

        //判断是否穿戴了同一类型的装备
        //是
        //脱下装备,在背包中加入脱下的装备
        //否
        //清空要穿戴的装备
        //属性的变化
        switch (it.inventory.EquipType)
        {
        case EquipmentType.Bracelet:
            if (BraceletInventoryItem != null)
            {
                isDrassed = true;       //表示已经穿戴了同类型装备
                item      = BraceletInventoryItem;
            }
            BraceletInventoryItem = it;
            break;

        case EquipmentType.Cloth:
            if (ClothInventoryItem != null)
            {
                isDrassed = true;
                item      = ClothInventoryItem;
            }
            ClothInventoryItem = it;
            break;

        case EquipmentType.Helm:
            if (HelmInventoryItem != null)
            {
                isDrassed = true;
                item      = HelmInventoryItem;
            }
            HelmInventoryItem = it;
            break;

        case EquipmentType.Necklace:
            if (NecklaceInventoryItem != null)
            {
                isDrassed = true;
                item      = NecklaceInventoryItem;
            }
            NecklaceInventoryItem = it;
            break;

        case EquipmentType.Ring:
            if (RingInventoryItem != null)
            {
                isDrassed = true;
                item      = RingInventoryItem;
            }
            RingInventoryItem = it;
            break;

        case EquipmentType.Shoes:
            if (ShoesInventoryItem != null)
            {
                isDrassed = true;
                item      = ShoesInventoryItem;
            }
            ShoesInventoryItem = it;
            break;

        case EquipmentType.Weapon:
            if (WeaponInventoryItem != null)
            {
                isDrassed = true;
                item      = WeaponInventoryItem;
            }
            WeaponInventoryItem = it;
            break;

        case EquipmentType.Wing:
            if (WingInventoryItem != null)
            {
                isDrassed = true;
                item      = WingInventoryItem;
            }
            WingInventoryItem = it;
            break;
        }

        if (isDrassed)
        {
            //已经穿戴了同类型装备,卸下加入背包
            item.isDrass = false;
            OnEquipOff(item, kSRE);
        }
        it.isDrass = true;
        itUI.Clear();
        OnEquipPutOn(it);
        OnPlayerInfoChangedEvent(PlayerInfoType.Equip);
    }