public static string GetDescription(Ability ability) { switch (ability.GetID()) { case 10: return(DroneUtilities.GetDescriptionByType((ability as SpawnDrone).spawnData.type)); default: return(GetDescriptionByID(ability.GetID(), ability.GetTier(), "")); } }
public static string GetDescriptionByID(int ID, int tier, string secondaryData) { switch (ID) { case 0: return("Does nothing."); case 1: return($"+{SpeedThrust.boost * tier} speed for 10 seconds."); case 2: return($"Instantly heal {HealthHeal.heals[0] * tier} shell."); case 3: return($"Projectile that deals {MainBullet.GetDamage(tier)} damage. \nStays with you no matter what."); case 4: return($"Instant attack that deals {Beam.beamDamage * tier} damage."); case 5: return($"Projectile that deals {Bullet.bulletDamage * tier} damage."); case 6: return($"Instant attack that deals {Cannon.cannonDamage * tier} damage."); case 7: return($"Slow homing projectile that deals {Missile.missileDamage * tier} damage."); case 8: return($"Slow projectile that deals {Torpedo.torpedoDamage * tier} damage to ground entities."); case 9: return($"Fast projectile that deals {Laser.laserDamage * tier} damage. 25% pierces to core."); case 10: if (string.IsNullOrEmpty(secondaryData)) { return("Spawns a drone."); } DroneSpawnData data = DroneUtilities.GetDroneSpawnDataByShorthand(secondaryData); return(DroneUtilities.GetDescriptionByType(data.type)); case 11: return($"Instantly heal {HealthHeal.heals[1] * tier} core."); case 12: return($"Instantly heal {HealthHeal.heals[2] * tier} energy."); case 13: return($"+{Speed.boost * tier} speed."); case 17: return($"Passively increases shell regen by {ShellRegen.regens[0] * tier} points."); case 18: return($"Passively increases maximum shell by {ShellMax.maxes[0] * tier} points."); case 19: return($"Passively increases energy regen by {ShellRegen.regens[2] * tier} points."); case 20: return($"Passively increases maximum energy by {ShellMax.maxes[2] * tier} points."); case 21: return($"Passively increases the maximum allowed number of controlled units by {Command.commandUnitIncrease}."); case 22: return($"Passively increases core regen by {ShellRegen.regens[1] * tier} points."); case 23: return($"Passively increases maximum core by {ShellMax.maxes[1] * tier} points."); case 24: return("Become invisible to enemies."); case 25: return($"All weapon damage increased by {DamageBoost.damageAddition * Mathf.Max(1, tier)}."); case 26: return($"Instantly heals self and nearby allies by {AreaRestore.heal * Mathf.Max(1, tier)} shell"); case 27: return("Immobilizes the target."); case 28: return("Respawn at base."); case 29: return("Absorb damage and turn it into energy."); case 30: return($"Temporarily increase shell regen by { ActiveRegen.healAmounts[0] } per second."); case 31: return("Temporarily increase core... wait, this isn't supposed to exist!"); case 32: return($"Temporarily increase energy regen by { ActiveRegen.healAmounts[2] } per second."); case 33: return("Disrupt enemy ability cooldowns."); case 34: return($"Gives allies additional {Control.baseControlFractionBoost * 100}% shell and {Control.damageAddition} weapon damage."); case 35: return("Temporarily pulls you to your tractor target and allows you to tractor most entities."); case 36: return($"Stationary projectile that deals {Bomb.bombDamage} damage. \nProjectile lasts {45F * tier} seconds."); case 37: return($"Slow moving beam that deals {IonLineController.damageC * tier} damage per second for 5 seconds. " + $"\nBeam costs {IonLineController.energyC * tier} energy per second."); case 38: return($"Fires at most 5 projectiles at different targets that each deal {Flak.bulletDamage * tier} damage."); default: return("Description unset"); } }
public static string GetDescriptionByID(int ID, int tier, string secondaryData) { switch (ID) { case 0: return("Does nothing."); case 1: return("+" + SpeedThrust.boost * tier + " speed for 10 seconds."); case 2: return("Instantly heal " + HealthHeal.heals[0] * tier + " shell."); case 3: return("Projectile that deals " + MainBullet.GetDamage(tier) + " damage. \nStays with you no matter what."); case 4: return("Instant attack that deals " + Beam.beamDamage * tier + " damage."); case 5: return("Projectile that deals " + Bullet.bulletDamage * tier + " damage."); case 6: return("Instant attack that deals " + Cannon.cannonDamage * tier + " damage."); case 7: return("Slow homing projectile that deals " + Missile.missileDamage * tier + " damage."); case 8: return("Slow projectile that deals " + Torpedo.torpedoDamage * tier + " damage to ground entities."); case 9: return("Fast projectile that deals " + Laser.laserDamage * tier + " damage. 25% pierces to core."); case 10: if (secondaryData == null || secondaryData == "") { return("Spawns a drone."); } DroneSpawnData data = DroneUtilities.GetDroneSpawnDataByShorthand(secondaryData); return(DroneUtilities.GetDescriptionByType(data.type)); case 11: return("Instantly heal " + HealthHeal.heals[1] * tier + " core."); case 12: return("Instantly heal " + HealthHeal.heals[2] * tier + " energy."); case 13: return("+" + Speed.boost * tier + " speed."); case 17: return("Passively increases shell regen by " + ShellRegen.regen * tier + " points."); case 18: return("Passively increases maximum shell by " + ShellMax.max * tier + " points."); case 19: return("Passively increases energy regen by " + ShellRegen.regen * tier + " points."); case 20: return("Passively increases maximum energy by " + ShellMax.max * tier + " points."); case 21: return("Passively increases the maximum allowed number of controlled units by " + Command.commandUnitIncrease + "."); case 24: return("Become invisible to enemies."); case 25: return("All weapon damage increased by 150."); case 26: return("Instantly heals self and nearby allies by +500 shell and +500 core."); case 27: return("Immobilizes the target."); case 28: return("Respawn at base."); case 29: return("Absorb damage and turn it into energy."); case 30: return("Temporarily increase shell regen."); case 31: return("Temporarily increase core... wait, this isn't supposed to exist!"); case 32: return("Temporarily increase energy regen."); case 33: return("Disrupt enemy ability cooldowns."); case 34: return("Makes allies stronger."); case 35: return("Temporarily pulls you to your tractor target."); case 36: return($"Stationary projectile that deals {Bomb.bombDamage} damage. \nProjectile lasts {45F * tier} seconds."); case 37: return($"Slow moving beam that deals {IonLineController.damageC} damage per second for 5 seconds. \nBeam costs {IonLineController.energyC} energy per"); default: return("Description unset"); } }