public void InitializeShip(ShipController ship, int color) { ship.SetHealth(health); ship.SetDamage(damage); ship.SetSpeed(speed); ship.SetShield(shield); ship.SetImage(GameManager.ImagePooler.GetShipSkin((shipSkin * 4) + color), color); ship.GetPlayer().Write(Converter.ToChar(Command.COLOR).ToString() + color); Ability ability; switch (abilityType) { case AbilityType.CIRCLEFIRE: //--------------------------ATENTION (abilitylevel for circle fire is always 5)-----------------------------// ability = new CircleFire(/*abilityLevel*/ 5, ship); break; case AbilityType.SHIELDRECOVERY: ability = new ShieldRecovery(ship.GetAttribute(AttributeType.SHIELD), 3); break; case AbilityType.FREEZEENGINE: ability = new DisableControllAbility(4, ship); break; case AbilityType.DESTROYSHIELD: ability = new DestroyShieldAbility(2, ship); break; default: return; } ship.SetAbility(ability); }
public override void Trigger(GameObject target) { ShipController controller = target.GetComponent <ShipController>(); if (controller == null) { return; } CircleFire fire = new CircleFire(lasersCount, controller); fire.Trigger(); }