コード例 #1
0
    override public void ApplyWaveModifier(EnemySpawner.EnemyWaveModifierType modifier)
    {
        SpriteRenderer spriteRenderer = GetComponent <SpriteRenderer> ();

        /* TODO: maybe refactor this without hardcoded values. */
        switch (modifier)
        {
        case EnemySpawner.EnemyWaveModifierType.NONE:
            break;

        case EnemySpawner.EnemyWaveModifierType.AGILE:
            spriteRenderer.color = new Color(0, 255, 0);
            speed *= 2;
            break;

        case EnemySpawner.EnemyWaveModifierType.HARDENED:
            spriteRenderer.color = new Color(0, 0, 255);
            gameObject.GetComponent <EnemyStats> ().health *= 2;
            break;

        case EnemySpawner.EnemyWaveModifierType.SWARMING:
            spriteRenderer.color = new Color(255, 0, 0);
            break;
        }
    }
コード例 #2
0
 public EnemyWave(EnemySpawner.WaveType waveType, int enemyCount, EnemySpawner.EnemyWaveModifierType modifier)
 {
     this.waveType   = waveType;
     this.enemyCount = enemyCount;
     this.modifier   = modifier;
 }
コード例 #3
0
 public abstract void ApplyWaveModifier(EnemySpawner.EnemyWaveModifierType modifier);
コード例 #4
0
 override public void ApplyWaveModifier(EnemySpawner.EnemyWaveModifierType modifier)
 {
     /* Don't apply wave modifiers to shooters. */
     return;
 }