v0.3.4: cleaned up externalization of hero related stuff, refactored buff messages on hero attach

This commit is contained in:
Evan Debenham
2015-12-28 22:40:30 -05:00
committed by Evan Debenham
parent 77d16d5a93
commit 39702bbb41
15 changed files with 107 additions and 68 deletions
@@ -98,6 +98,11 @@ public class Bleeding extends Buff {
return true;
}
@Override
public String heroMessage() {
return Messages.get(this, "heromsg");
}
@Override
public String desc() {
return Messages.get(this, "desc", level);
@@ -46,6 +46,11 @@ public class Blindness extends FlavourBuff {
return Messages.get(this, "name");
}
@Override
public String heroMessage() {
return Messages.get(this, "heromsg");
}
@Override
public String desc() {
return Messages.get(this, "desc", dispTurns());
@@ -80,6 +80,10 @@ public class Buff extends Actor {
//do nothing by default
};
public String heroMessage(){
return null;
}
public String desc(){
return "";
}
@@ -145,6 +145,11 @@ public class Burning extends Buff implements Hero.Doom {
else target.sprite.remove(CharSprite.State.BURNING);
}
@Override
public String heroMessage() {
return Messages.get(this, "heromsg");
}
@Override
public String toString() {
return Messages.get(this, "name");
@@ -63,6 +63,11 @@ public class Charm extends FlavourBuff {
return r != null ? r.durationFactor() : 1;
}
@Override
public String heroMessage() {
return Messages.get(this, "heromsg");
}
@Override
public String desc() {
return Messages.get(this, "desc", dispTurns());
@@ -41,6 +41,11 @@ public class Cripple extends FlavourBuff {
return Messages.get(this, "name");
}
@Override
public String heroMessage() {
return Messages.get(this, "heromsg");
}
@Override
public String desc() {
return Messages.get(this, "desc", dispTurns());
@@ -52,6 +52,11 @@ public class Fury extends Buff {
return Messages.get(this, "name");
}
@Override
public String heroMessage() {
return Messages.get(this, "heromsg");
}
@Override
public String desc() {
return Messages.get(this, "desc");
@@ -44,6 +44,11 @@ public class Ooze extends Buff {
return Messages.get(this, "name");
}
@Override
public String heroMessage() {
return Messages.get(this, "heromsg");
}
@Override
public String desc() {
return Messages.get(this, "desc");
@@ -62,6 +62,11 @@ public class Paralysis extends FlavourBuff {
else target.sprite.remove(CharSprite.State.PARALYSED);
}
@Override
public String heroMessage() {
return Messages.get(this, "heromsg");
}
@Override
public String toString() {
return Messages.get(this, "name");
@@ -70,6 +70,11 @@ public class Poison extends Buff implements Hero.Doom {
return Messages.get(this, "name");
}
@Override
public String heroMessage() {
return Messages.get(this, "heromsg");
}
@Override
public String desc() {
return Messages.get(this, "desc", dispTurns(left));
@@ -56,6 +56,11 @@ public class Roots extends FlavourBuff {
return Messages.get(this, "name");
}
@Override
public String heroMessage() {
return Messages.get(this, "heromsg");
}
@Override
public String desc() {
return Messages.get(this, "desc", dispTurns());
@@ -68,6 +68,11 @@ public class Weakness extends FlavourBuff {
return r != null ? r.durationFactor() * DURATION : DURATION;
}
@Override
public String heroMessage() {
return Messages.get(this, "heromsg");
}
@Override
public String desc() {
return Messages.get(this, "desc", dispTurns());
@@ -1150,39 +1150,17 @@ public class Hero extends Char {
super.add( buff );
//TODO: need to do something with these so they can be i18n-ified
if (sprite != null) {
if (buff instanceof Burning) {
GLog.w( "You catch fire!" );
interrupt();
} else if (buff instanceof Paralysis) {
GLog.w( "You are paralysed!" );
interrupt();
} else if (buff instanceof Poison) {
GLog.w( "You are poisoned!" );
interrupt();
} else if (buff instanceof Ooze) {
GLog.w( "Caustic ooze eats your flesh. Wash it away!" );
} else if (buff instanceof Roots) {
GLog.w( "You can't move!" );
} else if (buff instanceof Weakness) {
GLog.w( "You feel weakened!" );
} else if (buff instanceof Blindness) {
GLog.w( "You are blinded!" );
} else if (buff instanceof Fury) {
GLog.w( "You become furious!" );
} else if (buff instanceof Charm) {
GLog.w( "You are charmed!" );
} else if (buff instanceof Cripple) {
GLog.w( "You are crippled!" );
} else if (buff instanceof Bleeding) {
GLog.w( "You are bleeding!" );
} else if (buff instanceof RingOfMight.Might){
if (((RingOfMight.Might)buff).level > 0) {
String msg = buff.heroMessage();
if (msg != null){
GLog.w(msg);
}
if (buff instanceof RingOfMight.Might) {
if (((RingOfMight.Might) buff).level > 0) {
HT += ((RingOfMight.Might) buff).level * 5;
}
} else if (buff instanceof Vertigo) {
GLog.w("Everything is spinning around you!");
} else if (buff instanceof Paralysis || buff instanceof Vertigo) {
interrupt();
}
@@ -54,40 +54,6 @@ public enum HeroClass {
this.title = title;
}
//TODO: need to make all these Messages references non-static
public static final String[] WAR_PERKS = {
Messages.get(HeroClass.class, "warrior_perk1"),
Messages.get(HeroClass.class, "warrior_perk2"),
Messages.get(HeroClass.class, "warrior_perk3"),
Messages.get(HeroClass.class, "warrior_perk4"),
Messages.get(HeroClass.class, "warrior_perk5"),
};
public static final String[] MAG_PERKS = {
Messages.get(HeroClass.class, "mage_perk1"),
Messages.get(HeroClass.class, "mage_perk2"),
Messages.get(HeroClass.class, "mage_perk3"),
Messages.get(HeroClass.class, "mage_perk4"),
Messages.get(HeroClass.class, "mage_perk5"),
};
public static final String[] ROG_PERKS = {
Messages.get(HeroClass.class, "rogue_perk1"),
Messages.get(HeroClass.class, "rogue_perk2"),
Messages.get(HeroClass.class, "rogue_perk3"),
Messages.get(HeroClass.class, "rogue_perk4"),
Messages.get(HeroClass.class, "rogue_perk5"),
Messages.get(HeroClass.class, "rogue_perk6"),
};
public static final String[] HUN_PERKS = {
Messages.get(HeroClass.class, "huntress_perk1"),
Messages.get(HeroClass.class, "huntress_perk2"),
Messages.get(HeroClass.class, "huntress_perk3"),
Messages.get(HeroClass.class, "huntress_perk4"),
Messages.get(HeroClass.class, "huntress_perk5"),
};
public void initHero( Hero hero ) {
hero.heroClass = this;
@@ -211,13 +177,38 @@ public enum HeroClass {
switch (this) {
case WARRIOR:
return WAR_PERKS;
return new String[]{
Messages.get(HeroClass.class, "warrior_perk1"),
Messages.get(HeroClass.class, "warrior_perk2"),
Messages.get(HeroClass.class, "warrior_perk3"),
Messages.get(HeroClass.class, "warrior_perk4"),
Messages.get(HeroClass.class, "warrior_perk5"),
};
case MAGE:
return MAG_PERKS;
return new String[]{
Messages.get(HeroClass.class, "mage_perk1"),
Messages.get(HeroClass.class, "mage_perk2"),
Messages.get(HeroClass.class, "mage_perk3"),
Messages.get(HeroClass.class, "mage_perk4"),
Messages.get(HeroClass.class, "mage_perk5"),
};
case ROGUE:
return ROG_PERKS;
return new String[]{
Messages.get(HeroClass.class, "rogue_perk1"),
Messages.get(HeroClass.class, "rogue_perk2"),
Messages.get(HeroClass.class, "rogue_perk3"),
Messages.get(HeroClass.class, "rogue_perk4"),
Messages.get(HeroClass.class, "rogue_perk5"),
Messages.get(HeroClass.class, "rogue_perk6"),
};
case HUNTRESS:
return HUN_PERKS;
return new String[]{
Messages.get(HeroClass.class, "huntress_perk1"),
Messages.get(HeroClass.class, "huntress_perk2"),
Messages.get(HeroClass.class, "huntress_perk3"),
Messages.get(HeroClass.class, "huntress_perk4"),
Messages.get(HeroClass.class, "huntress_perk5"),
};
}
return null;