use of spacesettlers.objects.powerups.PowerupDoubleWeapon in project spacesettlers by amymcgovern.
the class Toroidal2DPhysics method handlePowerup.
/**
* Handle power ups for the specified object
* @param swobject
* @param spacewarPowerup
*/
private void handlePowerup(AbstractActionableObject swobject, SpaceSettlersPowerupEnum spacewarPowerup) {
switch(spacewarPowerup) {
case FIRE_MISSILE:
Ship ship = (Ship) swobject;
AbstractWeapon weapon = ship.getNewWeapon(SpaceSettlersPowerupEnum.FIRE_MISSILE);
if (weapon != null && weapon.isValidWeapon(ship)) {
addObject(weapon);
weapon.setFiringShip(ship);
weapon.applyPowerup(ship);
}
break;
case FIRE_EMP:
ship = (Ship) swobject;
weapon = ship.getNewWeapon(SpaceSettlersPowerupEnum.FIRE_EMP);
if (weapon != null && weapon.isValidWeapon(ship)) {
addObject(weapon);
weapon.setFiringShip(ship);
weapon.applyPowerup(ship);
}
break;
case TOGGLE_SHIELD:
PowerupToggleShield toggle = new PowerupToggleShield();
toggle.applyPowerup(swobject);
break;
case DOUBLE_WEAPON_CAPACITY:
PowerupDoubleWeapon weaponDoubler = new PowerupDoubleWeapon();
weaponDoubler.applyPowerup(swobject);
break;
case DOUBLE_BASE_HEALING_SPEED:
PowerupDoubleHealingBaseEnergy baseDoubler = new PowerupDoubleHealingBaseEnergy();
baseDoubler.applyPowerup(swobject);
break;
case DOUBLE_MAX_ENERGY:
PowerupDoubleMaxEnergy maxEnergyDoubler = new PowerupDoubleMaxEnergy();
maxEnergyDoubler.applyPowerup(swobject);
break;
case FIRE_HEAT_SEEKING_MISSILE:
break;
case FIRE_TURRET:
break;
case LAY_MINE:
break;
default:
break;
}
}
Aggregations