22 public static class Level0
implements DescriptionSkillEffect {
23 public String getString() {
24 int max = Misc.MAX_PERMA_MODS;
25 return "*The base maximum number of permanent hullmods you're able to build into a ship is " +
29 public Color[] getHighlightColors() {
30 Color h = Misc.getHighlightColor();
31 h = Misc.getDarkHighlightColor();
32 return new Color[] {h, h, h};
34 public String[] getHighlights() {
35 int max = Misc.MAX_PERMA_MODS;
36 return new String [] {
"" + max};
38 public Color getTextColor() {
44 public static class Level1
implements CharacterStatsSkillEffect {
45 public void apply(MutableCharacterStatsAPI stats, String
id,
float level) {
49 public void unapply(MutableCharacterStatsAPI stats, String
id) {
50 stats.getMaxCapacitorsBonus().unmodify(
id);
53 public String getEffectDescription(
float level) {
57 public String getEffectPerLevelDescription() {
61 public ScopeDescription getScopeDescription() {
62 return ScopeDescription.ALL_SHIPS;
66 public static class Level2
implements CharacterStatsSkillEffect {
67 public void apply(MutableCharacterStatsAPI stats, String
id,
float level) {
69 stats.getMaxVentsBonus().modifyFlat(
id,
VENTS_BONUS);
72 public void unapply(MutableCharacterStatsAPI stats, String
id) {
74 stats.getMaxVentsBonus().unmodify(
id);
77 public String getEffectDescription(
float level) {
78 return "+" + (int)
VENTS_BONUS +
" maximum flux vents";
81 public String getEffectPerLevelDescription() {
85 public ScopeDescription getScopeDescription() {
86 return ScopeDescription.ALL_SHIPS;
90 public static class Level3
implements CharacterStatsSkillEffect {
91 public void apply(MutableCharacterStatsAPI stats, String
id,
float level) {
92 stats.getDynamic().getMod(Stats.BUILD_IN_BONUS_XP_MOD).modifyFlat(
id,
BUILD_IN_XP_BONUS);
95 public void unapply(MutableCharacterStatsAPI stats, String
id) {
96 stats.getDynamic().getMod(Stats.BUILD_IN_BONUS_XP_MOD).unmodifyFlat(
id);
99 public String getEffectDescription(
float level) {
100 return "+" + (int) Math.round(
BUILD_IN_XP_BONUS * 100f) +
"% bonus experience from building permanent hullmods* into ships";
103 public String getEffectPerLevelDescription() {
107 public ScopeDescription getScopeDescription() {
108 return ScopeDescription.ALL_SHIPS;
112 public static class Level4
implements ShipSkillEffect {
114 public void apply(MutableShipStatsAPI stats, HullSize hullSize, String
id,
float level) {
115 stats.getDynamic().getMod(Stats.MAX_PERMANENT_HULLMODS_MOD).modifyFlat(
id,
EXTRA_MODS);
118 public void unapply(MutableShipStatsAPI stats, HullSize hullSize, String
id) {
119 stats.getDynamic().getMod(Stats.MAX_PERMANENT_HULLMODS_MOD).unmodifyFlat(
id);
122 public String getEffectDescription(
float level) {
123 return "Able to build " +
EXTRA_MODS +
" more permanent hullmod* into ships";
126 public String getEffectPerLevelDescription() {
130 public ScopeDescription getScopeDescription() {
131 return ScopeDescription.FLEET;