// Use this for initialization void Start () { player = GameObject.Find("Player").GetComponent<IBattleAgent>(); enemyPool = GameObject.FindGameObjectsWithTag("Enemy"); foreach(GameObject go in enemyPool) { go.SetActive(false); } //currentEnemy = GameObject.FindWithTag("Enemy").GetComponent<IBattleAgent>(); currentEnemy = enemyPool[UnityEngine.Random.Range(0, enemyPool.Length)].GetComponent<IBattleAgent>(); currentEnemy.SetActive(true); terrainThingy = GameObject.FindObjectOfType<TerrainScroller>(); player.turnEndedEvent += OnPlayerTurnEnded; player.attackEvent += OnPlayerAttack; player.deadEvent += OnPlayerDead; terrainThingy.enabled = false; enemyHealthBar = FindObjectOfType<EnemyHealthBar>(); //currentEnemy.turnEndedEvent += OnEnemyTurnEnded; // currentEnemy.attackEvent += OnEnemyAttack; // currentEnemy.deadEvent += OnEnemyDead; // Player starts attacking, can be changed tho //player.StartTurn(); }
public void InitPanel(IBattleAgent agent) { AgentStats stats = agent.GetStatsInfo(); agentName.text = stats.agentName; level.text = "LVL " + stats.level; status.text = ""; health.text = stats.healthPoints + "/" + stats.healthPoints; agentImage.sprite = agent.GetSprite(); }
void OnEnemyDead() { // Debug.Log("ENEMY Killed GG"); if (monsterDefeatedEvent != null) monsterDefeatedEvent(); player.BattleEnded(); currentEnemy.BattleEnded(); if (battleEndedEvent != null) terrainThingy.enabled = true; currentEnemy.SetActive(false); battleEndedEvent(); currentEnemy.turnEndedEvent -= OnEnemyTurnEnded; currentEnemy.attackEvent -= OnEnemyAttack; currentEnemy.deadEvent -= OnEnemyDead; currentEnemy = enemyPool[UnityEngine.Random.Range(0, enemyPool.Length)].GetComponent<IBattleAgent>(); enemyHealthBar.gameObject.SetActive(false); }