v0.3.0: BIG refactor to buff display, more clear and extendable code, instead of a nest of instanceof statements

This commit is contained in:
Evan Debenham
2015-04-29 01:55:41 -04:00
parent 9fad20a071
commit 6a7c42634a
29 changed files with 205 additions and 120 deletions
@@ -21,11 +21,16 @@ import com.shatteredpixel.shatteredpixeldungeon.Dungeon;
import com.shatteredpixel.shatteredpixeldungeon.actors.Char;
import com.shatteredpixel.shatteredpixeldungeon.items.artifacts.CloakOfShadows;
import com.shatteredpixel.shatteredpixeldungeon.items.artifacts.TimekeepersHourglass;
import com.shatteredpixel.shatteredpixeldungeon.sprites.CharSprite;
import com.shatteredpixel.shatteredpixeldungeon.ui.BuffIndicator;
public class Invisibility extends FlavourBuff {
public static final float DURATION = 15f;
{
type = buffType.POSITIVE;
}
@Override
public boolean attachTo( Char target ) {
@@ -48,7 +53,13 @@ public class Invisibility extends FlavourBuff {
public int icon() {
return BuffIndicator.INVISIBLE;
}
@Override
public void fx(boolean on) {
if (on) target.sprite.add( CharSprite.State.INVISIBLE );
else if (target.invisible == 0) target.sprite.remove( CharSprite.State.INVISIBLE );
}
@Override
public String toString() {
return "Invisible";