15 public static class Level1
implements ShipSkillEffect {
17 public void apply(MutableShipStatsAPI stats, HullSize hullSize, String
id,
float level) {
21 public void unapply(MutableShipStatsAPI stats, HullSize hullSize, String
id) {
22 stats.getMissileAmmoBonus().unmodify(
id);
25 public String getEffectDescription(
float level) {
29 public String getEffectPerLevelDescription() {
33 public ScopeDescription getScopeDescription() {
34 return ScopeDescription.PILOTED_SHIP;
38 public static class Level2
implements ShipSkillEffect {
40 public void apply(MutableShipStatsAPI stats, HullSize hullSize, String
id,
float level) {
44 public void unapply(MutableShipStatsAPI stats, HullSize hullSize, String
id) {
45 stats.getMissileHealthBonus().unmodify(
id);
48 public String getEffectDescription(
float level) {
53 public String getEffectPerLevelDescription() {
57 public ScopeDescription getScopeDescription() {
58 return ScopeDescription.PILOTED_SHIP;
63 public static class Level3
implements ShipSkillEffect {
65 public void apply(MutableShipStatsAPI stats, HullSize hullSize, String
id,
float level) {
70 public void unapply(MutableShipStatsAPI stats, HullSize hullSize, String
id) {
72 stats.getMissileRoFMult().unmodify(
id);
75 public String getEffectDescription(
float level) {
79 public String getEffectPerLevelDescription() {
83 public ScopeDescription getScopeDescription() {
84 return ScopeDescription.PILOTED_SHIP;
88 public static class Level3A
implements ShipSkillEffect {
90 public void apply(MutableShipStatsAPI stats, HullSize hullSize, String
id,
float level) {
95 public void unapply(MutableShipStatsAPI stats, HullSize hullSize, String
id) {
97 stats.getMissileAmmoRegenMult().unmodify(
id);
100 public String getEffectDescription(
float level) {
101 return "+" + (int)(
MISSILE_SPEC_AMMO_REGEN_BONUS) +
"% missile weapon ammo regeneration rate (only for missile weapons that regenerate ammo)";
104 public String getEffectPerLevelDescription() {
108 public ScopeDescription getScopeDescription() {
109 return ScopeDescription.PILOTED_SHIP;
113 public static class Level4
implements ShipSkillEffect {
115 public void apply(MutableShipStatsAPI stats, HullSize hullSize, String
id,
float level) {
119 public void unapply(MutableShipStatsAPI stats, HullSize hullSize, String
id) {
120 stats.getMissileWeaponDamageMult().unmodify(
id);
123 public String getEffectDescription(
float level) {
127 public String getEffectPerLevelDescription() {
131 public ScopeDescription getScopeDescription() {
132 return ScopeDescription.PILOTED_SHIP;