コード例 #1
0
    // 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();
	}
コード例 #2
0
        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();
        }
コード例 #3
0
    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);
    }