16 public static class Level1
implements ShipSkillEffect {
18 public void apply(MutableShipStatsAPI stats, HullSize hullSize, String
id,
float level) {
20 stats.getAcceleration().modifyPercent(
id,
SPEED_BONUS);
21 stats.getDeceleration().modifyPercent(
id,
SPEED_BONUS);
22 stats.getTurnAcceleration().modifyPercent(
id,
SPEED_BONUS * 2f);
23 stats.getMaxTurnRate().modifyPercent(
id,
SPEED_BONUS);
26 public void unapply(MutableShipStatsAPI stats, HullSize hullSize, String
id) {
27 stats.getMaxSpeed().unmodify(
id);
28 stats.getAcceleration().unmodify(
id);
29 stats.getDeceleration().unmodify(
id);
30 stats.getTurnAcceleration().unmodify(
id);
31 stats.getMaxTurnRate().unmodify(
id);
34 public String getEffectDescription(
float level) {
35 return "+" + (int)(
SPEED_BONUS) +
"% top speed and maneuverability";
38 public String getEffectPerLevelDescription() {
42 public ScopeDescription getScopeDescription() {
43 return ScopeDescription.SHIP_FIGHTERS;
47 public static class Level2A
implements ShipSkillEffect {
49 public void apply(MutableShipStatsAPI stats, HullSize hullSize, String
id,
float level) {
53 public void unapply(MutableShipStatsAPI stats, HullSize hullSize, String
id) {
54 stats.getDamageToFighters().unmodify(
id);
57 public String getEffectDescription(
float level) {
61 public String getEffectPerLevelDescription() {
65 public ScopeDescription getScopeDescription() {
66 return ScopeDescription.SHIP_FIGHTERS;
70 public static class Level2B
implements ShipSkillEffect {
72 public void apply(MutableShipStatsAPI stats, HullSize hullSize, String
id,
float level) {
76 public void unapply(MutableShipStatsAPI stats, HullSize hullSize, String
id) {
77 stats.getDamageToMissiles().unmodify(
id);
80 public String getEffectDescription(
float level) {
84 public String getEffectPerLevelDescription() {
88 public ScopeDescription getScopeDescription() {
89 return ScopeDescription.SHIP_FIGHTERS;
93 public static class Level3
implements ShipSkillEffect {
95 public void apply(MutableShipStatsAPI stats, HullSize hullSize, String
id,
float level) {
99 public void unapply(MutableShipStatsAPI stats, HullSize hullSize, String
id) {
100 stats.getAutofireAimAccuracy().unmodify(
id);
103 public String getEffectDescription(
float level) {
107 public String getEffectPerLevelDescription() {
111 public ScopeDescription getScopeDescription() {
112 return ScopeDescription.SHIP_FIGHTERS;