public void ItemUsed(ItemContainerTalker container) { if (refillContainerOnUse) { PopulateSpecificContainer(container); } }
public void PopulateSpecificContainer(ItemContainerTalker container) { if (container.hasItem) { container.DestroyItem(); } int randomItem = Random.Range(0, libraryOfItems.Value.Count); Debug.Log("For container '" + container.name + "', Selecting item #" + randomItem + ": " + libraryOfItems.Value[randomItem].name); GameObject newItemGameObject = Instantiate( libraryOfItems.Value[randomItem], container.transform.position, container.transform.rotation, container.transform ); CharacterCreatorItem newItem = newItemGameObject.GetComponent <CharacterCreatorItem>(); if (newItem == null) { Debug.LogError("Item " + newItem.name + " did not contain a CharacterCreatorItem"); return; } container.AddItem(newItem); container.descriptionViewer.UpdateDescriptionFromItem(newItem.gameObject); onItemSpawned.Raise(newItem.gameObject); }