Example #1
0
    void UpadateSelectedItemPanel()
    {
        ShopItem item = SelectedShopSlot.Item;

        if (item is WeaponShopItem)
        {
            WeaponShopItem weaponItem = item as WeaponShopItem;
            Weapon         weapon     = FindWeaponInPlayerInventory(weaponItem.WeaponID);
            itemName.text     = weapon.info.name;
            itemIcon.sprite   = weapon.Renderer.sprite;
            itemIcon.material = weapon.Renderer.sharedMaterial;

            foreach (GameObject t in stats)
            {
                if (t != itemStatsPanel.gameObject)
                {
                    DestroyImmediate(t.gameObject);
                }
            }
            stats.Clear();
            CreateStatPanel("Level", weapon.info.Level.ToString());
            CreateStatPanel("Fire Rate", weapon.info.FireRate.ToString());
            CreateStatPanel("Aim Speed", weapon.info.Velocidad_Rotacion.ToString());
            CreateStatPanel("Bullet Damage", weapon.info.Damage.ToString());
            transform.Find("ItemInfo_Panel/ButtonsPanel/Upgrade_Button").gameObject.SetActive(true);
        }
        else
        {
            transform.Find("ItemInfo_Panel/ButtonsPanel/Upgrade_Button").gameObject.SetActive(false);
        }
    }
Example #2
0
    /// <summary>
    ///
    /// </summary>
    public void OnEnable()
    {
        if (!toggleEventListened)
        {
            var toggles = weaponContent.GetComponentsInChildren <Toggle>();
            if (toggles != null && toggles.Length > 0)
            {
                for (int i = 0; i < toggles.Length; i++)
                {
                    Toggle tog = toggles[i];

                    WeaponShopItem wsi = tog.GetComponent <WeaponShopItem>();
                    if (wsi != null)
                    {
                        tog.onValueChanged.AddListener((b) =>
                        {
                            this.OnWeaponSelected(b, tog.GetComponent <WeaponShopItem>());
                        });
                        if (wsi.weaponId == Player.CurrentPlayer.EquipedWeaponId)
                        {
                            tog.isOn = true;
                        }
                    }
                }
            }
            toggleEventListened = true;
        }
    }
Example #3
0
    /// <summary>
    /// 选择武器变化
    /// </summary>
    /// <param name="b"></param>
    /// <param name="item"></param>
    public void OnWeaponSelected(bool b, WeaponShopItem item)
    {
        if (!b || item == null)
        {
            this.selectWeaponId = -1;
        }
        else
        {
            selectWeaponItem = item;
            if (weaponDisplay != null)
            {
                WeaponItem wi = WeaponManager.Instance.GetWeaponItemById(item.weaponId);
                if (wi == null)
                {
                    selectWeaponId = -1;
                }
                else
                {
                    selectWeaponId = wi.Id;
                    CommonUtils.SetChildText(weaponDisplay, "WeaponName", wi.Name);
                    CommonUtils.SetChildRawImage(weaponDisplay, "WeaponIcon", item.weaponIcon);
                    CommonUtils.SetChildText(weaponInfo, "WeaponName", wi.Name);
                    var weaponUnlockInfo = Player.CurrentPlayer.GetWeaponInfoById(wi.Id);

                    if (weaponUnlockInfo != null && weaponUnlockInfo.IsUnlocked)
                    {
                        CommonUtils.SetChildActive(weaponDisplay, "Locked", false);
                        DisplayWeaponLevelInfo(wi.GetLevelProperty(weaponUnlockInfo.Level), true);
                    }
                    else
                    {
                        CommonUtils.SetChildActive(weaponDisplay, "Locked", true);
                        CommonUtils.SetChildText(weaponDisplay, "Locked/Price", wi.Prices.ToString());
                        DisplayWeaponLevelInfo(wi.GetCurrentProperty(), false);
                    }

                    //显示按钮
                    if (Player.CurrentPlayer.EquipedWeaponId == wi.Id)
                    {
                        //CommonUtils.SetChildActive(buttons, "BtnEquiped",true);
                        SetButtonActive("BtnEquiped");
                    }
                    else
                    {
                        if (weaponUnlockInfo != null && weaponUnlockInfo.IsUnlocked)
                        {
                            SetButtonActive("BtnEquip");
                        }
                        else
                        {
                            SetButtonActive("BtnBuy");
                        }
                    }
                }
            }
        }
    }
Example #4
0
    /// <summary>
    /// 选择武器变化
    /// </summary>
    /// <param name="b"></param>
    /// <param name="item"></param>
    public void OnWeaponSelected(bool b, WeaponShopItem item)
    {
        if (!b || item == null)
        {
            this.selectWeaponId = -1;
        }
        else
        {
            selectWeaponItem = item;
            if (weaponDisplay != null)
            {
                WeaponItem wi = WeaponManager.Instance.GetWeaponItemById(item.weaponId);
                if (wi == null)
                {
                    selectWeaponId = -1;
                }
                else
                {
                    selectWeaponId = wi.Id;
                    CommonUtils.SetChildText(weaponDisplay, "WeaponName", wi.Name);
                    CommonUtils.SetChildRawImage(weaponDisplay, "WeaponIcon", item.weaponIcon);
                    CommonUtils.SetChildText(weaponInfo, "WeaponName", wi.Name);
                    var weaponUnlockInfo = Player.CurrentPlayer.GetWeaponInfoById(wi.Id);

                    if (weaponUnlockInfo != null && weaponUnlockInfo.IsUnlocked)
                    {
                        CommonUtils.SetChildActive(weaponDisplay, "Locked", false);
                        DisplayWeaponLevelInfo(wi.GetLevelProperty(weaponUnlockInfo.Level), true);
                    }
                    else
                    {
                        CommonUtils.SetChildActive(weaponDisplay, "Locked", true);
                        CommonUtils.SetChildText(weaponDisplay, "Locked/Price", wi.Prices.ToString());
                        DisplayWeaponLevelInfo(wi.GetCurrentProperty(), false);
                    }

                    //显示按钮
                    if (Player.CurrentPlayer.EquipedWeaponId == wi.Id)
                    {
                        //CommonUtils.SetChildActive(buttons, "BtnEquiped",true);
                        SetButtonActive("BtnEquiped");
                    }
                    else
                    {
                        if (weaponUnlockInfo != null && weaponUnlockInfo.IsUnlocked)
                        {
                            SetButtonActive("BtnEquip");
                        }
                        else
                        {
                            SetButtonActive("BtnBuy");
                        }
                    }
                }
            }
        }
    }
Example #5
0
    void EquipSelectedSlot()
    {
        ShopItem item = SelectedShopSlot.Item;

        if (item is WeaponShopItem)
        {
            List <Weapon>  weapons    = Player.Instance.Weapons;
            WeaponShopItem weaponItem = item as WeaponShopItem;
            Weapon         weapon     = Weapon.Types[weaponItem.WeaponID];
            Player.Instance.EquipWeapon(weapons.Where(x => x.info.name == weapon.info.name).First());
        }
    }
Example #6
0
 void Deliverpurchase(ShopItem item)
 {
     if (item is WeaponShopItem)
     {
         WeaponShopItem weaponItem = item as WeaponShopItem;
         Transform      gunpivot   = Player.Instance.transform.Find("GunPivot");
         Weapon         weapon     = Instantiate <Weapon>(Weapon.Types[weaponItem.WeaponID], gunpivot.position, Quaternion.identity, gunpivot);
         weapon.GetComponent <HingeJoint2D>().connectedBody = Player.Instance.Rigidbody;
         Player.Instance.Weapons.Add(weapon);
         GameManager.Instance.PlayerInfo.Weapons.Add(weapon.info);
     }
 }
Example #7
0
    void CheckSlodItems()
    {
        List <Weapon> weapons = Player.Instance.Weapons;

        for (int j = 0; j < slots.Count; j++)
        {
            if (slots[j].Item is WeaponShopItem)
            {
                WeaponShopItem item = slots[j].Item as WeaponShopItem;
                for (int i = 0; i < weapons.Count; i++)
                {
                    if (item.WeaponID == weapons[i].ID)
                    {
                        soldItems.Add(item.Id);
                    }
                }
            }
        }
    }
Example #8
0
    void UpgradeValidation()
    {
        ShopItem item = SelectedShopSlot.Item;

        if (item is WeaponShopItem)
        {
            WeaponShopItem weaponShopItem = item as WeaponShopItem;
            Weapon         weapon         = FindWeaponInPlayerInventory(weaponShopItem.WeaponID);
            if (weapon != null)
            {
                if (weapon.info.Level < 10)
                {
                    int Price = CheckUpgradePrice(weapon);
                    ConfimationPopUp confimation = DisplayBuyConfirmation(weapon.info.name + " Upgrade", Price);
                    confimation.OnConfirm += () => { Upgrade(weapon); };
                }
            }
        }
    }
Example #9
0
    private void Awake()
    {
        m_name  = transform.Find("ItenName_Text").GetComponent <TextMeshProUGUI>();
        m_price = transform.Find("ShoItem_Content_Panel/Price_Text").GetComponent <TextMeshProUGUI>();
        Image   = transform.Find("ShoItem_Content_Panel/Item_Image").GetComponent <Image>();
        Button  = GetComponent <Button>();

        m_name.text  = item.Name;
        m_price.text = item.Price.ToString();

        if (item is WeaponShopItem)
        {
            WeaponShopItem weaponItem = item as WeaponShopItem;
            SpriteRenderer renderer   = Weapon.Types[weaponItem.WeaponID].Renderer;

            Image.sprite   = renderer.sprite;
            Image.material = renderer.sharedMaterial;
        }
    }
Example #10
0
    public void ItemSelected(WeaponShopItem shopItem)
    {
        var itemRectTransform = shopItem.GetComponent <RectTransform>();
        var viewportHeight    = scrollRect.viewport.rect.height;
        var contentHeight     = weaponsViewToInsertItems.rect.height;
        var centerY           = Mathf.Abs(itemRectTransform.anchoredPosition.y);

        float verticalNormalizedPosition;

        if (centerY < viewportHeight * 0.51f)
        {
            verticalNormalizedPosition = 1f;
        }
        else if (centerY > contentHeight - itemRectTransform.rect.height)
        {
            verticalNormalizedPosition = 0f;
        }
        else
        {
            verticalNormalizedPosition = 1f - (centerY / contentHeight);
        }

        scrollRect.verticalNormalizedPosition = verticalNormalizedPosition;
    }