//---------------------------------------------------------------------------- // Collision detected enter trigger //---------------------------------------------------------------------------- protected void OnTriggerEnter(Collider other) { Player player = other.gameObject.GetComponent <Player>(); if (player != null && // Collier is player (player.GetComponent <LootComponent>().GetLootCount() < player.GetComponent <LootComponent>().m_maxLoot)) // Player's current loot count has not hit max loot yet { if (m_LootType == LootType.Treasure) { LootComponent playerLootComponent = player.GetComponent <LootComponent>(); if (playerLootComponent != null) { playerLootComponent.Loot(m_value); Destroy(this.gameObject); // Kill this loot object } } else { CannonComponent playerCannonComponent = player.GetComponent <CannonComponent>(); if (playerCannonComponent != null) { playerCannonComponent.AddCannon(m_value); Destroy(this.gameObject); // Kill this loot object } } } }
public void Buy() { int index = (int)GameManager.s_instance.gameLanguage; int numLanguage = (int)Language.kTotalNumLanguage; int enterAmount = int.Parse(m_inputField.text); if (tradeCost > m_playerLoot.GetSpendableLootCount()) { MessagePanelController.s_instance.SetText(s_kBuyErrorMessage[0 * numLanguage + index]); return; } if (enterAmount + m_playerCannon.cannonballCount > m_playerCannon.GetMaxCannonCount()) { MessagePanelController.s_instance.SetText(s_kBuyErrorMessage[1 * numLanguage + index]); return; } m_playerLoot.SpendLoot(tradeCost); m_playerCannon.AddCannon(enterAmount); }