コード例 #1
0
 public void Purchase(BaseItemShopSlot baseItemShopSlot)
 {
     if (_inventoryContainer.CanStore())
     {
         if (_characterStatusController.CurrentMoney >= baseItemShopSlot.ITEMSHOP.ItemPrice)
         {
             int index = baseItemShopSlot.ITEMSHOP.ItemSetIdIndex;
             _storeContoller.StoreDic[_storeId].Purchase(index);
             bool isEmpty = baseItemShopSlot.Purchase();
             if (!isEmpty)
             {
                 OnPurchaseOutStock?.Invoke();
             }
             _characterStatusController.TakeMoney(baseItemShopSlot.ITEMSHOP.ItemPrice);
             GetItem(baseItemShopSlot);
             _totalItem--;
             CheckInvIsEmpty();
         }
         else
         {
             _notificationController.MoneyNotEnough(baseItemShopSlot);
         }
     }
     else
     {
         _notificationController.InventoryFull();
     }
 }
コード例 #2
0
 private void EnableItemDescription(BaseItemShopSlot itemShopSlot)
 {
     if (itemShopSlot.ITEMSHOP != null)
     {
         SetItemDescription(itemShopSlot);
     }
 }
コード例 #3
0
    private void GetItem(BaseItemShopSlot baseItemShopSlot)
    {
        GameObject item_copy = Instantiate(_itemTemp);
        ItemPickUp item      = item_copy.GetComponent <ItemPickUp>();

        item.itemDefinition = _itemTemplateController.ItemTemplateDic[baseItemShopSlot.ITEMSHOP.ItemId];
        item.PurchaseItem();
    }
コード例 #4
0
    protected void SetItemDescription(BaseItemShopSlot itemShopSlot)
    {
        item_description_gameobject.SetActive(true);

        item_name.text        = itemShopSlot.ITEMSHOP.ItemName;
        item_description.text = itemShopSlot.ITEMSHOP.ItemDescription;
        item_icon.sprite      = itemShopSlot.ITEMSHOP.ItemIcon;
        item_type.text        = itemShopSlot.ITEMSHOP.ItemType;

        if (itemShopSlot.ITEMSHOP.ItemProperties.Count > 0)
        {
            for (int i = 0; i < itemShopSlot.ITEMSHOP.ItemProperties.Count; i++)
            {
                ItemPropertyAmount itemproperty = itemShopSlot.ITEMSHOP.ItemProperties[i];
                itemPropertyGenerator.CreateTemplate(itemproperty);
            }
        }
        else
        {
            itemPropertyGenerator.ClearTemplate();
        }
    }
コード例 #5
0
 private void Awake()
 {
     _shopManager      = FindObjectOfType <ShopManager>();
     _baseItemShopSlot = gameObject.GetComponentInParent <BaseItemShopSlot>();
 }
コード例 #6
0
 public void MoneyNotEnough(BaseItemShopSlot itemShopSlot)
 {
     notificationUpdateGenerator.CreateTemplate(itemShopSlot.ITEMSHOP.ItemIcon, purchaseTitle, purchaseDescription, hasSpriteColor);
 }
コード例 #7
0
 private void OnPointExitEventHandler(BaseItemShopSlot itemShopSlot)
 {
     OnPointExitEvent?.Invoke(itemShopSlot);
 }
コード例 #8
0
 private void DisableItemDescription(BaseItemShopSlot itemShopSlot)
 {
     Initializing();
 }