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.getPhaseCloakUpkeepCostBonus().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 {
39 public void apply(MutableShipStatsAPI stats, HullSize hullSize, String
id,
float level) {
43 public void unapply(MutableShipStatsAPI stats, HullSize hullSize, String
id) {
44 stats.getPhaseCloakCooldownBonus().unmodify(
id);
47 public String getEffectDescription(
float level) {
51 public String getEffectPerLevelDescription() {
55 public ScopeDescription getScopeDescription() {
56 return ScopeDescription.PILOTED_SHIP;
60 public static class Level3
implements ShipSkillEffect {
62 public void apply(MutableShipStatsAPI stats, HullSize hullSize, String
id,
float level) {
63 stats.getDynamic().getMod(Stats.PHASE_CLOAK_SPEED_MOD).modifyFlat(
id,
PHASE_SPEED_BONUS);
66 public void unapply(MutableShipStatsAPI stats, HullSize hullSize, String
id) {
67 stats.getDynamic().getMod(Stats.PHASE_CLOAK_SPEED_MOD).unmodifyFlat(
id);
70 public String getEffectDescription(
float level) {
74 public String getEffectPerLevelDescription() {
78 public ScopeDescription getScopeDescription() {
79 return ScopeDescription.PILOTED_SHIP;