public float GetAttackGrowth(Enemy.Type type)
    {
        int level = _levelManager.GetCurrentLevel();

        if (level <= 5)
        {
            return(1);
        }
        level -= 6;
        switch (type)
        {
        case Enemy.Type.Attacking:
            return((float)Math.Pow(1.3, level));

        case Enemy.Type.BossFly:
            return((float)Math.Pow(1.2, level));

        case Enemy.Type.BossAttack:
            return((float)Math.Pow(1.4, level));

        case Enemy.Type.BossTank:
            return((float)Math.Pow(1.2, level));
        }
        return(0);
    }
    public void SetEnemy(Enemy.Type enemyType)
    {
        if (spriteEnemyList.ContainsKey((int)enemyType * SPRITE_MULTI_TYPE + (int)Enemy.Compass.Right * SPRITE_MULTI_COMPASS + Enemy.IMAGE_0))
        {
            return;
        }

        spriteEnemyList.Add((int)enemyType * SPRITE_MULTI_TYPE + (int)Enemy.Compass.Right * SPRITE_MULTI_COMPASS + Enemy.IMAGE_0, Resources.Load <Sprite> (string.Format("Textures/enemy_{0}_right_0", enemyType.ToString().ToLower())));
        spriteEnemyList.Add((int)enemyType * SPRITE_MULTI_TYPE + (int)Enemy.Compass.Right * SPRITE_MULTI_COMPASS + Enemy.IMAGE_1, Resources.Load <Sprite> (string.Format("Textures/enemy_{0}_right_1", enemyType.ToString().ToLower())));
        spriteEnemyList.Add((int)enemyType * SPRITE_MULTI_TYPE + (int)Enemy.Compass.Right * SPRITE_MULTI_COMPASS + Enemy.IMAGE_2, Resources.Load <Sprite> (string.Format("Textures/enemy_{0}_right_2", enemyType.ToString().ToLower())));
        spriteEnemyList.Add((int)enemyType * SPRITE_MULTI_TYPE + (int)Enemy.Compass.Left * SPRITE_MULTI_COMPASS + Enemy.IMAGE_0, Resources.Load <Sprite> (string.Format("Textures/enemy_{0}_left_0", enemyType.ToString().ToLower())));
        spriteEnemyList.Add((int)enemyType * SPRITE_MULTI_TYPE + (int)Enemy.Compass.Left * SPRITE_MULTI_COMPASS + Enemy.IMAGE_1, Resources.Load <Sprite> (string.Format("Textures/enemy_{0}_left_1", enemyType.ToString().ToLower())));
        spriteEnemyList.Add((int)enemyType * SPRITE_MULTI_TYPE + (int)Enemy.Compass.Left * SPRITE_MULTI_COMPASS + Enemy.IMAGE_2, Resources.Load <Sprite> (string.Format("Textures/enemy_{0}_left_2", enemyType.ToString().ToLower())));
        spriteEnemyList.Add((int)enemyType * SPRITE_MULTI_TYPE + (int)Enemy.Compass.Top * SPRITE_MULTI_COMPASS + Enemy.IMAGE_0, Resources.Load <Sprite> (string.Format("Textures/enemy_{0}_top_0", enemyType.ToString().ToLower())));
        spriteEnemyList.Add((int)enemyType * SPRITE_MULTI_TYPE + (int)Enemy.Compass.Top * SPRITE_MULTI_COMPASS + Enemy.IMAGE_1, Resources.Load <Sprite> (string.Format("Textures/enemy_{0}_top_1", enemyType.ToString().ToLower())));
        spriteEnemyList.Add((int)enemyType * SPRITE_MULTI_TYPE + (int)Enemy.Compass.Top * SPRITE_MULTI_COMPASS + Enemy.IMAGE_2, Resources.Load <Sprite> (string.Format("Textures/enemy_{0}_top_2", enemyType.ToString().ToLower())));
        spriteEnemyList.Add((int)enemyType * SPRITE_MULTI_TYPE + (int)Enemy.Compass.Bottom * SPRITE_MULTI_COMPASS + Enemy.IMAGE_0, Resources.Load <Sprite> (string.Format("Textures/enemy_{0}_bottom_0", enemyType.ToString().ToLower())));
        spriteEnemyList.Add((int)enemyType * SPRITE_MULTI_TYPE + (int)Enemy.Compass.Bottom * SPRITE_MULTI_COMPASS + Enemy.IMAGE_1, Resources.Load <Sprite> (string.Format("Textures/enemy_{0}_bottom_1", enemyType.ToString().ToLower())));
        spriteEnemyList.Add((int)enemyType * SPRITE_MULTI_TYPE + (int)Enemy.Compass.Bottom * SPRITE_MULTI_COMPASS + Enemy.IMAGE_2, Resources.Load <Sprite> (string.Format("Textures/enemy_{0}_bottom_2", enemyType.ToString().ToLower())));

        if (enemyType == Enemy.Type.Tengu)
        {
            spriteEnemyWeapon = Resources.Load <Sprite> ("Textures/enemy_weapon");
        }
    }
Esempio n. 3
0
        /// <summary>
        /// @Pre: A row of enemies is needed for the next level
        /// @Post: A level of enemies (basic, intermediate, or advanced) is added to the enemy list
        /// @Return: None.
        /// </summary>
        /// <param name="enemyType">Type of the enemy.</param>
        private void AddRowOfEnemy(Enemy.Type enemyType)
        {
            Enemy prevEnemy = Enemies.Count > 0 ? Enemies[Enemies.Count - 1][0] : null;
            float newPosY   = prevEnemy == null ? spacing.Y : prevEnemy.Position.Y + prevEnemy.Texture.Height + spacing.Y;

            Enemies.Add(new List <Enemy>());
            for (int x = 1; x <= ENEMIES_PER_ROW; x++)
            {
                Enemy enemy = null;

                switch (enemyType)
                {
                case Enemy.Type.Basic:
                    enemy = new Basic(new Vector2(((Game1.textureDictionary["basic"].Width + spacing.X) * x) - spacing.X + (Game1.textureDictionary["basic"].Width * (Enemies.Count % 2)), newPosY));
                    break;

                case Enemy.Type.Intermediate:
                    enemy = new Intermediate(new Vector2(((Game1.textureDictionary["intermediate"].Width + spacing.X) * x) - spacing.X + (Game1.textureDictionary["intermediate"].Width * (Enemies.Count % 2)), newPosY));
                    break;

                case Enemy.Type.Advanced:
                    enemy = new Advanced(new Vector2(((Game1.textureDictionary["advanced"].Width + spacing.X) * x) - spacing.X + (Game1.textureDictionary["advanced"].Width * (Enemies.Count % 2)), newPosY));
                    break;
                }

                Enemies[Enemies.Count - 1].Add(enemy);
            }
        }
Esempio n. 4
0
 private static int GetWordIndex(Glossary.Language language, Enemy.Type enemyType, string name)
 {
     foreach (Vocabulary vocab in vocabularies)
     {
         if (vocab.type.Equals(enemyType))
         {
             if (language.Equals(Glossary.Language.FR))
             {
                 foreach (Word word in vocab.frWords)
                 {
                     if (word.name.Equals(name))
                     {
                         return(vocab.frWords.IndexOf(word));
                     }
                 }
             }
             else if (language.Equals(Glossary.Language.EN))
             {
                 foreach (Word word in vocab.enWords)
                 {
                     if (word.name.Equals(name))
                     {
                         return(vocab.enWords.IndexOf(word));
                     }
                 }
             }
         }
     }
     return(-1);
 }
    public float GetGoldGrowth(Enemy.Type type)
    {
        int level = _levelManager.GetCurrentLevel();

        if (level <= 5)
        {
            return(1);
        }
        level -= 6;
        return((float)Math.Pow(1.1, level));
    }
Esempio n. 6
0
    // Choisit aléatoirement le type de l'ennemi en fonction des probabilités
    public Enemy.Type Choose()
    {
        Enemy.Type typeEnemy = 0;
        int        randValue = Random.Range(0, maxProbability);

        while (lootProbabilities [(int)typeEnemy] <= randValue)
        {
            typeEnemy++;
        }
        return(typeEnemy);
    }
Esempio n. 7
0
 public Chances GetChance(Enemy.Type type)
 {
     foreach (Chances currentChance in spawnChances)
     {
         if (currentChance.type == type)
         {
             return(currentChance);
         }
     }
     return(null);
 }
Esempio n. 8
0
 public static string GetWordTranslation(Enemy.Type enemyType, Word word)
 {
     if (Glossary.language.Equals(Glossary.Language.FR))
     {
         return(GetVocabulary(enemyType, Glossary.Language.EN).ElementAt(GetWordIndex(Glossary.Language.FR, enemyType, word.name)).name);
     }
     else if (Glossary.language.Equals(Glossary.Language.EN))
     {
         return(GetVocabulary(enemyType, Glossary.Language.FR).ElementAt(GetWordIndex(Glossary.Language.EN, enemyType, word.name)).name);
     }
     return("");
 }
Esempio n. 9
0
 public Enemy(int level, string image, Enemy.Type type)
 {
     this.type  = type;
     this.image = "img/" + image + ".png";
     name       = "kokot";
     DMG        = level * 3.5f;
     INT        = level * 3.5f;
     maxhealth  = getenemyhealth(level);
     health     = maxhealth;
     maxmana    = level * 5;
     mana       = maxmana;
 }
Esempio n. 10
0
    // Update is called once per frame
    void Update()
    {
        if (timer >= spawnRate * fixedTimer)
        {
            // random enemy, in a random spawn
            int        r = Random.Range(0, 5);
            Enemy.Type t = Enemy.Type.WOLF;
            if (r == 0)
            {
                t = Enemy.Type.DRAGON;
            }
            if (r == 1)
            {
                t = Enemy.Type.DRONE;
            }
            if (r == 2)
            {
                t = Enemy.Type.FOX;
            }
            if (r == 3)
            {
                t = Enemy.Type.GORILLA;
            }
            if (r == 4)
            {
                t = Enemy.Type.WOLF;
            }

            GameManager.instance.InstantiateEnemy(t, spawners[Random.Range(0, spawners.Count)].transform.position);
            timer = 0;


            // reduce the spawnRate to increase difficulty
            currentLevel++;
            if (currentLevel % nbSpawnsPerLevel == 0)
            {
                spawnRate -= stepPerLevel;

                if (spawnRate < 0.1)
                {
                    spawnRate = 0.1f;
                }

                currentLevel = 0;
                Debug.Log("Arena: increasing difficulty (" + stepPerLevel.ToString("0.00") + ")");
            }
        }
        timer += Time.deltaTime;
    }
Esempio n. 11
0
        public Enemy(int level, string image, Enemy.Type type)
        {
            float dmg = level * 3.5f;


            this.type  = type;
            this.image = "img/" + image + ".png";
            name       = "kokot";
            DMG        = new Random().Next((int)dmg - 2, (int)dmg + 4);
            INT        = level * 3.5f;
            maxhealth  = getenemyhealth(level);
            health     = maxhealth;
            maxmana    = level * 5;
            mana       = maxmana;
        }
Esempio n. 12
0
    Enemy.Type GetEnemyType()
    {
        float randomValue = Random.Range(0f, 100f);

        Enemy.Type selectedType = Enemy.Type.Fighter;

        foreach (Chances chance in spawnChances)
        {
            if (randomValue >= chance.spawnStart && randomValue < chance.spawnEnd)
            {
                selectedType = chance.type;
                //Test
            }
        }
        return(selectedType);
    }
Esempio n. 13
0
    public void InstantiateEnemy(Enemy.Type type)
    {
        GameObject enemy;

        // Change the prefab depending on the enemy
        switch (type)
        {
        case Enemy.Type.FOX:
            enemy = Instantiate(foxPrefab);
            break;

        case Enemy.Type.WOLF:
            enemy = Instantiate(wolfPrefab);
            break;

        case Enemy.Type.DRAGON:
            enemy = Instantiate(dragonPrefab);
            break;

        case Enemy.Type.DRONE:
            enemy = Instantiate(dronePrefab);
            break;

        case Enemy.Type.GORILLA:
            enemy = Instantiate(gorillaPrefab);
            break;

        default:
            enemy = Instantiate(enemyPrefab);
            break;
        }
        // TODO: CHANGE THAT!
        if (Random.value < 0.5f)
        {
            enemy.transform.position = new Vector3(Random.Range(-10f, -12f), enemy.transform.position.y, Random.Range(8f, 10f));
        }
        else
        {
            enemy.transform.position = new Vector3(Random.Range(10f, 12f), enemy.transform.position.y, Random.Range(-8f, -10f));
        }
        Enemy enemyScript = enemy.GetComponentInChildren <Enemy>();

        // Generate the enemy's vocabulary depending on its type
        enemyScript.Initiate(type);
    }
Esempio n. 14
0
    // Checks if the current word corresponds to one of the enemies' words
    private void CheckWords()
    {
        Utility.Word word = null;
        // Just for initialisation
        Enemy.Type type = Enemy.Type.SPIDER;

        Enemy.correctInput = false;
        bool fullMatch = false;

        foreach (GameObject e in gameManagerScript.GetEnemies())
        {
            if ((word = e.GetComponentInChildren <Enemy>().VerifyWord(GetCurrentText())) != null)
            {
                type = e.GetComponentInChildren <Enemy>().GetCreatureType();
            }
            if (word != null)
            {
                correctWords.Add(word);
                fullMatch = true;
                gameManagerScript.nbCorrectWords++; // stats
            }
        }

        // We made a typo if none of the enemies words start with our input
        if (!Enemy.correctInput && !fullMatch && Input.inputString[0] != '\b')
        {
            Camera.main.SendMessage("Typo");
            // We count it as an error only if the last input wasn't one
            if (lastInput)
            {
                GameManager.instance.nbErrors++;
            }
        }

        // At least one hit
        if (fullMatch)
        {
            SetCurrentText("");
            lastInput = true;
        }
        else
        {
            lastInput = Enemy.correctInput;
        }
    }
Esempio n. 15
0
 public static List <Word> GetVocabulary(Enemy.Type enemyType, Glossary.Language language)
 {
     foreach (Vocabulary vocabulary in vocabularies)
     {
         if (vocabulary.type.Equals(enemyType))
         {
             if (language.Equals(Glossary.Language.FR))
             {
                 return(vocabulary.frWords);
             }
             else if (language.Equals(Glossary.Language.EN))
             {
                 return(vocabulary.enWords);
             }
         }
     }
     return(null);
 }
    void OnEnemyTypeChanged(Enemy.Type pType)
    {
        if (mActiveGameObjectAsset == null)
        {
            return;
        }
        Enemy aEnemy = (Enemy)mActiveGameObjectAsset;

        if (aEnemy == null)
        {
            return;
        }
        if (pType == aEnemy.mEnemyType)
        {
            return;
        }
        aEnemy.mEnemyType = pType;
    }
Esempio n. 17
0
        //public void Menu()
        //{
        //    // TODO: make a menu screen
        //    // ask the user for some options
        //    // read in their input and use those values when initializing the game
        //    // remember to clear the screen
        //}

        public void Init()
        {
            mGameOver = false;
            mScore    = 0;

            // init player
            mPlayer = new Player(this);
            mPlayer.SetPosition(Console.WindowWidth / 2, Console.WindowHeight - 1);

            // init enemies
            mEnemies = new List <Enemy>();
            for (int i = 0; i < DefNumEnemies; i++)
            {
                Enemy.Type type = (Enemy.Type)(Utility.Rand() % 3);
                int        x    = Utility.Rand() % Console.WindowWidth;
                int        y    = Utility.Rand() % (Console.WindowHeight - (Console.WindowHeight / 4));
                float      speed;
                switch (type)
                {
                case Enemy.Type.Wanderer:
                    speed = (Utility.Rand() % 5 + 1) / 10.0f;
                    break;

                case Enemy.Type.Teleporter:
                    speed = Utility.Rand() % 4000 + 1000;
                    break;

                case Enemy.Type.Bomber:
                    speed = (Utility.Rand() % 10) / 10.0f;
                    break;

                default:
                    speed = 1f;
                    break;
                }
                Enemy e = new Enemy(this, type, x, y, speed);
                mEnemies.Add(e);
            }

            // init bullets
            mBullets = new List <Bullet>();
        }
Esempio n. 18
0
        private IEnumerator SpawnCoroutine(Enemy.Type enemyType, int number, float elapseBetweenEnemy)
        {
            for (var i = 0; i < number; i++)
            {
                var enemyPrefab = enemies[(uint)enemyType];

                var enemy = Instantiate(
                    enemyPrefab,
                    PositionHelper.OnTop(
                        transform,
                        enemyPrefab.transform.localScale.y / 2
                        ),
                    Quaternion.identity
                    );

                _spawnedEnemies.Add(enemy);

                yield return(new WaitForSeconds(elapseBetweenEnemy));
            }
        }
Esempio n. 19
0
    //reward for killing an enemy
    internal static int EnemyDamage(Enemy.Type type)
    {
        //0=Tank, 1=soldier, 2=airballoon, 3=airplane
        switch (type)
        {
        case Enemy.Type.Tank:
            return(30);

        case Enemy.Type.Soldier:
            return(10);

        case Enemy.Type.Helicopter:
            return(25);

        case Enemy.Type.Airplane:
            return(50);

        default:
            return(10);
        }
    }
Esempio n. 20
0
    /// <summary>
    /// 0=Tank, 1=soldier, 2=airballoon, 3=airplane
    /// </summary>
    internal static int EnemyHealth(Enemy.Type type)
    {
        //0=Tank, 1=soldier, 2=airballoon, 3=airplane
        switch (type)
        {
        case Enemy.Type.Tank:
            return(EnemyHealthFunction(3.0));

        case Enemy.Type.Soldier:
            return(EnemyHealthFunction(0.6));

        case Enemy.Type.Helicopter:
            return(EnemyHealthFunction(1.1));

        case Enemy.Type.Airplane:
            return(EnemyHealthFunction(2.3));

        default:
            return(EnemyHealthFunction(1));
        }
    }
Esempio n. 21
0
    //Coroutine that spawns enemies
    IEnumerator SpawnEnemy(float delay)
    {
        //Loop while the game is running
        while (true)
        {
            //Wait for the correct delay
            yield return(new WaitForSeconds(delay));

            Enemy.Type newEnemyType = GetEnemyType();


            //Create a new enemy, stock its Enemy
            Enemy newEnemy =
                NGUITools.AddChild(gameObject, Resources.Load("Enemies/" + newEnemyType.ToString()) as GameObject).GetComponent <Enemy>();

            //Initialize it with random speed
            newEnemy.Initialize(newEnemyType, Random.Range(minMovementTime, maxMovementTIme));
            //Set the new random delay
            delay = Random.Range(minInterval, maxInterval);
            //Create a new empty string for destruct code
            string randomCode = "";

            destructCodeChance = GetChance(newEnemyType).hackableChance;

            //If the random is valid, get a random word
            if (Random.Range(0f, 100f) < destructCodeChance)
            {
                newEnemy.hackable = true;
                randomCode        = GetRandomWord();
            }
            else
            {
                newEnemy.hackable = false;
            }
            //Set the enemy's the DestructCode
            newEnemy.SetDestructCode(randomCode);
            //Add the enemy to the list of enemies
            enemies.Add(newEnemy);
        }
    }
Esempio n. 22
0
    // Spawn un ennemi sur la carte
    void SpawnEnemy()
    {
        Vector3 position = GetNewPosition();

        // Vérification dans un rayon de 'minSpawnDistance' qu'il n'y a pas déjà un autre ennemi, un item ou le héros
        if (!Physics2D.OverlapCircle(position, minSpawnDistance, layerMaskEnemy) &&
            !Physics2D.OverlapCircle(position, minSpawnDistance, layerMaskHero) &&
            !Physics2D.OverlapCircle(position, minSpawnDistance, layerMaskItem))
        {
            // Choisit le type d'ennemi à spawner
            this.typeEnemy = lootEnemy.Choose();

            // Récupère l'ennemi à spawner
            GameObject obj = lootEnemy.enemyPrefabs[(int)this.typeEnemy].GetInstance();
            obj.transform.position = position;
            obj.transform.rotation = transform.rotation;

            nbEnemiesSpawned++;
            Debug.Log("--Enemy type : " + this.typeEnemy);
            Debug.Log(nbEnemiesSpawned + " enemies spawned !");
        }
    }
Esempio n. 23
0
 //ステータスのセット関数
 public void SetStatus(Enemy.Type type, float maxHp, float speed, float searchRange, float attackRange, float moveRange, float money)
 {
     _body    = transform.Find("Body").gameObject;
     _deadMat = (Material)Resources.Load("Material/Dead");
     _player  = GameObject.Find("Player").GetComponent <EntityPlayer>();
     //タイプセット
     _enemyType = type;
     //初期はアイドル
     _currentState = State.IDLE;
     //体力
     _properties.HealthProperties = MaxHitPoint;
     //索敵範囲
     if (_searchRange == 0)
     {
         _searchRange = searchRange;
     }
     //攻撃範囲
     if (_attackRange == 0)
     {
         _attackRange = attackRange;
     }
     //自由移動の幅
     if (_freeMoveRange == 0)
     {
         _freeMoveRange = moveRange;
     }
     //所持金の設定
     if (_money == 0)
     {
         _money = money;
     }
     //初期位置の記憶
     _startPosition = gameObject.transform.position;
     //Managerに生まれたっていう
     GameStateManager.Instance.IncreaseEnemy(gameObject);
     _status = gameObject.GetComponent <Status> ();
     _status.Init();
 }
Esempio n. 24
0
    public AudioClip GetAudioClip(Enemy.Type enemyType, AudioClipType clipType)
    {
        AudioClip[] clips = null;
        switch (clipType)
        {
        case AudioClipType.Death:
            if (enemyType == Enemy.Type.Robot)
            {
                clips = robotDeathAudio;
            }
            else if (enemyType == Enemy.Type.Alien)
            {
                clips = alienDeathAudio;
            }
            else
            {
                clips = mrTDeathAudio;
            }
            break;
        }

        if (clips != null)
        {
            if (clips.Length > 0)
            {
                return(clips[Random.Range(0, clips.Length)]);
            }
            else
            {
                return(null);
            }
        }
        else
        {
            return(null);
        }
    }
Esempio n. 25
0
    public void RemoveEnemy(Enemy enemyPtr)
    {
        _levelManager.TowerController.RemoveEnemy(enemyPtr);
        Enemy.Type type = enemyPtr.EnemyType;
        switch (type)
        {
        case Enemy.Type.Normal:
            ++_currentLevelState.NormalKilled;
            break;

        case Enemy.Type.Attacking:
            ++_currentLevelState.AttackKilled;
            break;

        case Enemy.Type.Fast:
            ++_currentLevelState.FastKilled;
            break;

        case Enemy.Type.Flying:
            ++_currentLevelState.FlyingKilled;
            break;

        case Enemy.Type.BossAttack:
            ++_currentLevelState.BossKilled;
            break;

        case Enemy.Type.BossFly:
            ++_currentLevelState.BossKilled;
            break;

        case Enemy.Type.BossTank:
            ++_currentLevelState.BossKilled;
            break;
        }
        _enemiesHolder.Remove(enemyPtr);
    }
Esempio n. 26
0
    public void InstantiateEnemy(Enemy.Type type, Vector3 pos)
    {
        GameObject enemy;

        // Change the prefab depending on the enemy
        switch (type)
        {
        case Enemy.Type.FOX:
            enemy = Instantiate(foxPrefab, new Vector3(pos.x, foxPrefab.transform.position.y, pos.z), Quaternion.identity);
            break;

        case Enemy.Type.WOLF:
            enemy = Instantiate(wolfPrefab, new Vector3(pos.x, wolfPrefab.transform.position.y, pos.z), Quaternion.identity);
            break;

        case Enemy.Type.DRAGON:
            enemy = Instantiate(dragonPrefab, new Vector3(pos.x, dragonPrefab.transform.position.y, pos.z), Quaternion.identity);
            break;

        case Enemy.Type.DRONE:
            enemy = Instantiate(dronePrefab, new Vector3(pos.x, dronePrefab.transform.position.y, pos.z), Quaternion.identity);
            break;

        case Enemy.Type.GORILLA:
            enemy = Instantiate(gorillaPrefab, new Vector3(pos.x, gorillaPrefab.transform.position.y, pos.z), Quaternion.identity);
            break;

        default:
            enemy = Instantiate(enemyPrefab, new Vector3(pos.x, enemyPrefab.transform.position.y, pos.z), Quaternion.identity);
            break;
        }
        Enemy enemyScript = enemy.GetComponentInChildren <Enemy>();

        // Generate the enemy's vocabulary depending on its type
        enemyScript.Initiate(type);
    }
    public int GetHpGrowth(Enemy.Type type)
    {
        int level = _levelManager.GetCurrentLevel();

        if (level <= 5)
        {
            return(0);
        }
        level -= 6;
        switch (type)
        {
        case Enemy.Type.Normal:
            return(4 * level);

        case Enemy.Type.Flying:
            return(4 * level);

        case Enemy.Type.Fast:
            return(2 * level);

        case Enemy.Type.Attacking:
            return(4 * level);

        case Enemy.Type.BossAttack:
            return(6 * level);

        case Enemy.Type.BossFly:
            return(6 * level);

        case Enemy.Type.BossTank:
            return(10 * level);

        default:
            return(0);
        }
    }
Esempio n. 28
0
        public Enemy.Type type; // Type of enemy to create

        #endregion Fields

        #region Constructors

        /// <summary>
        /// Create a new SpawnCommand.
        /// </summary>
        public SpawnCommand(Vector2 pos, Enemy.Type type, TimeSpan offset)
        {
            this.pos = pos;
            this.type = type;
            this.offset = offset;
        }
Esempio n. 29
0
 public void OnEnemyKilled(Enemy.Type enemyType)
 {
     goals.ForEach(goal => goal.OnEnemyKilled(enemyType));
 }
Esempio n. 30
0
 public void OnEnemyKilled(Enemy.Type enemyType)
 {
     questSteps[currentStep].OnEnemyKilled(enemyType);
 }
Esempio n. 31
0
 public override void OnEnemyKilled(Enemy.Type enemyType)
 {
     currentNumberOfKills++;
 }