Exemple #1
0
    void Activate(EnemyManager.EnemyType aType, int aNum)
    {
        switch (aType)
        {
        case EnemyManager.EnemyType.Imp:
            AttackImp(aNum);
            break;

        case EnemyManager.EnemyType.Snowman:
            AttackSnowman(aNum);
            break;

        case EnemyManager.EnemyType.Shark:
            AttackShark(aNum);
            break;

        case EnemyManager.EnemyType.FireNewt:
            AttackFireNewt(aNum);
            break;

        case EnemyManager.EnemyType.Jellyfish:
            AttackJellyfish(aNum);
            break;

        default:
            break;
        }

        enabled = false;
    }
Exemple #2
0
    public void SpawnEnemies()
    {
        //randomize the number of enemies
        //get random positions
        //spawn enemies there
        if (m_PossibleEnemySpawnPosition == null)
        {
            return;
        }

        int numberOfEnemiesToSpawn = Random.Range(m_MinMaxNumberEnemies.x, m_MinMaxNumberEnemies.y);

        for (int i = 0; i < numberOfEnemiesToSpawn; ++i)
        {
            EnemyManager.EnemyType enemyType = (EnemyManager.EnemyType)Random.Range((int)EnemyManager.EnemyType.MELEE_A, (int)EnemyManager.EnemyType.RANGED_A + 1);
            GameObject             enemy     = EnemyManager.Instance.FetchEnemy(enemyType);

            if (enemy != null)
            {
                int     randomLocationIndex = Random.Range(0, m_PossibleEnemySpawnPosition.childCount);
                Vector3 pos = m_PossibleEnemySpawnPosition.GetChild(randomLocationIndex).position;
                enemy.transform.position = pos;
                enemy.SetActive(true);

                EnemyBase enemyBase = enemy.GetComponent <EnemyBase>();
                if (enemyBase)
                {
                    enemyBase.Init();
                    enemyBase.Warp(pos); //spawn at a random location
                    m_EnemiesInRoom.Add(enemy);
                }
            }
        }
    }
 public EnemyData(EnemyManager.EnemyType kEnemyType, string kPrefabName, float kSpeed, RoutingComponent.RouteStyle kRouteStyle, WeaponSystem.WeaponType kWeaponType, float kWeaponMinWaitFire, float kWeaponMaxWaitFire)
 {
     this.kEnemyType         = kEnemyType;
     this.kPrefabName        = kPrefabName;
     this.kSpeed             = kSpeed;
     this.kWeaponType        = kWeaponType;
     this.kRouteStyle        = kRouteStyle;
     this.kWeaponMinWaitFire = kWeaponMinWaitFire;
     this.kWeaponMaxWaitFire = kWeaponMaxWaitFire;
 }
    public GameObject GetEnemy(EnemyManager.EnemyType type)
    {
        foreach (EnemyPrefab enemyPrefab in EnemyPrefabs)
        {
            if (enemyPrefab.EnemyType == type.ToString())
            {
                return(enemyPrefab.GameObject);
            }
        }

        return(null);
    }
Exemple #5
0
    void Activate(EnemyManager.EnemyType aType, int aNum)
    {
        GameManager.Instance.Shield();

        enabled = false;
    }