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; } }
public EnemyWave(EnemySpawner.WaveType waveType, int enemyCount, EnemySpawner.EnemyWaveModifierType modifier) { this.waveType = waveType; this.enemyCount = enemyCount; this.modifier = modifier; }
public abstract void ApplyWaveModifier(EnemySpawner.EnemyWaveModifierType modifier);
override public void ApplyWaveModifier(EnemySpawner.EnemyWaveModifierType modifier) { /* Don't apply wave modifiers to shooters. */ return; }