17 public static class Level1
implements ShipSkillEffect {
19 public void apply(MutableShipStatsAPI stats, HullSize hullSize, String
id,
float level) {
23 public void unapply(MutableShipStatsAPI stats, HullSize hullSize, String
id) {
24 stats.getShieldUpkeepMult().unmodify(
id);
27 public String getEffectDescription(
float level) {
31 public String getEffectPerLevelDescription() {
35 public ScopeDescription getScopeDescription() {
36 return ScopeDescription.PILOTED_SHIP;
40 public static class Level2
implements ShipSkillEffect {
41 public void apply(MutableShipStatsAPI stats, HullSize hullSize, String
id,
float level) {
45 public void unapply(MutableShipStatsAPI stats, HullSize hullSize, String
id) {
46 stats.getShieldDamageTakenMult().unmodify(
id);
49 public String getEffectDescription(
float level) {
53 public String getEffectPerLevelDescription() {
57 public ScopeDescription getScopeDescription() {
58 return ScopeDescription.PILOTED_SHIP;
62 public static class Level3
implements ShipSkillEffect {
64 public void apply(MutableShipStatsAPI stats, HullSize hullSize, String
id,
float level) {
68 public void unapply(MutableShipStatsAPI stats, HullSize hullSize, String
id) {
69 stats.getHardFluxDissipationFraction().unmodify(
id);
72 public String getEffectDescription(
float level) {
76 public String getEffectPerLevelDescription() {
80 public ScopeDescription getScopeDescription() {
81 return ScopeDescription.PILOTED_SHIP;
85 public static class Level4
implements ShipSkillEffect {
86 public void apply(MutableShipStatsAPI stats, HullSize hullSize, String
id,
float level) {
87 stats.getHighExplosiveShieldDamageTakenMult().modifyMult(
id, 1f -
SHIELD_HE_REDUCTION / 100f);
90 public void unapply(MutableShipStatsAPI stats, HullSize hullSize, String
id) {
91 stats.getHighExplosiveShieldDamageTakenMult().unmodify(
id);
94 public String getEffectDescription(
float level) {
98 public String getEffectPerLevelDescription() {
102 public ScopeDescription getScopeDescription() {
103 return ScopeDescription.PILOTED_SHIP;