示例#1
0
    private void SpawnMonster(GameObject prefab, MonsterEngageType engageType, bool spawnInSight, Transform t)
    {
        GameObject        monster           = Instantiate(prefab, t.position, t.rotation);
        MonsterController monsterController = monster.GetComponent <MonsterController> ();

        monsterController.OnMonsterDied += OnManagedMonsterDied;
        monsterController.spawnInSight   = spawnInSight;
        if (engageType == MonsterEngageType.Immediate)
        {
            monsterController.engageOnSpawn = true;
        }
        else if (engageType == MonsterEngageType.OnSight)
        {
            monsterController.engageOnSight = true;
        }

        monsters.Add(monsterController);
    }
示例#2
0
 public void SpawnMonsterRanged(MonsterEngageType engageType, bool spawnInSight, Transform t)
 {
     SpawnMonster(rangedMonsterPrefab, engageType, spawnInSight, t);
 }
示例#3
0
 public void SpawnMonsterMelee(MonsterEngageType engageType, bool spawnInSight, Transform t)
 {
     SpawnMonster(meleeMonsterPrefab, engageType, spawnInSight, t);
 }