19 public static class Level1
implements ShipSkillEffect {
20 public void apply(MutableShipStatsAPI stats, HullSize hullSize, String
id,
float level) {
31 public void unapply(MutableShipStatsAPI stats, HullSize hullSize, String
id) {
32 stats.getAcceleration().unmodify(
id);
33 stats.getDeceleration().unmodify(
id);
34 stats.getTurnAcceleration().unmodify(
id);
35 stats.getMaxTurnRate().unmodify(
id);
42 public String getEffectDescription(
float level) {
46 public String getEffectPerLevelDescription() {
50 public ScopeDescription getScopeDescription() {
51 return ScopeDescription.PILOTED_SHIP;
55 public static class Level2
implements ShipSkillEffect {
56 public void apply(MutableShipStatsAPI stats, HullSize hullSize, String
id,
float level) {
60 public void unapply(MutableShipStatsAPI stats, HullSize hullSize, String
id) {
61 stats.getMaxSpeed().unmodify(
id);
64 public String getEffectDescription(
float level) {
68 public String getEffectPerLevelDescription() {
72 public ScopeDescription getScopeDescription() {
73 return ScopeDescription.PILOTED_SHIP;
100 public static class Level3
implements ShipSkillEffect {
102 public void apply(MutableShipStatsAPI stats, HullSize hullSize, String
id,
float level) {
103 stats.getAllowZeroFluxAtAnyLevel().modifyFlat(
id, 1f);
106 public void unapply(MutableShipStatsAPI stats, HullSize hullSize, String
id) {
107 stats.getAllowZeroFluxAtAnyLevel().unmodifyFlat(
id);
110 public String getEffectDescription(
float level) {
111 return "The 0-flux speed boost is activated at any flux level, as long as the ship is not generating flux or is venting / overloaded";
114 public String getEffectPerLevelDescription() {
118 public ScopeDescription getScopeDescription() {
119 return ScopeDescription.PILOTED_SHIP;
123 public static class Level4
implements ShipSkillEffect {
124 public void apply(MutableShipStatsAPI stats, HullSize hullSize, String
id,
float level) {
128 public void unapply(MutableShipStatsAPI stats, HullSize hullSize, String
id) {
129 stats.getMaxSpeed().unmodify(
id);
132 public String getEffectDescription(
float level) {
136 public String getEffectPerLevelDescription() {
140 public ScopeDescription getScopeDescription() {
141 return ScopeDescription.PILOTED_SHIP;