public void Consume() { // 1) apply buffs ApplyBuffs(); IsCountable isCountable = GetComponent <IsCountable>(); if (isCountable) { isCountable.ChangeAmount(-1); } // 2) self destruct Destroy(this.gameObject); }
public void Initialize(IsCollectionView owner) { this.owner = owner; item = owner.GetCollectionData().GetItemByName(itemName); if (item != null) { HasThumbnail hasThumbnail = item.GetComponent <HasThumbnail>(); if (hasThumbnail != null) { // create thumbnail image thumbnail = new GameObject(); thumbnail.transform.SetParent(this.transform); Image image = thumbnail.AddComponent <Image>(); RectTransform rect = thumbnail.GetComponent <RectTransform>(); rect.localPosition = new Vector3(hasThumbnail.thumbHorizontalOffset, hasThumbnail.thumbVerticalOffset, 0.0f); rect.localScale = new Vector3(hasThumbnail.thumbScale, hasThumbnail.thumbScale, 1.0f); image.sprite = hasThumbnail.image; image.color = hasThumbnail.color; } IsCountable isCountable = item.GetComponent <IsCountable>(); if (isCountable) { // create count object count = new GameObject(); count.transform.SetParent(this.transform); Text text = count.AddComponent <Text>(); count.GetComponent <RectTransform>().localPosition = new Vector3(isCountable.countHorizontalOffset, isCountable.countVerticalOffset, 0.0f); if (isCountable.maxAmount >= 100) { text.text = isCountable.currentAmount.ToString("000"); } else { text.text = isCountable.currentAmount.ToString("00"); } text.font = isCountable.countFont; text.fontSize = isCountable.countScale; text.alignment = TextAnchor.MiddleCenter; } } }