v0.3.0c: the battlemage now gains half a charge up-front on his staff when melee attacking, instead of a 2 turn charge buff

This commit is contained in:
Evan Debenham 2015-06-03 14:07:35 -04:00 committed by Evan Debenham
parent 94c069134d
commit 249c9acd96
3 changed files with 9 additions and 21 deletions

View File

@ -39,7 +39,6 @@ import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Drowsy;
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Fury; import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Fury;
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Hunger; import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Hunger;
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Invisibility; import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Invisibility;
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Light;
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Ooze; import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Ooze;
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Paralysis; import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Paralysis;
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Poison; import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Poison;
@ -56,7 +55,6 @@ import com.shatteredpixel.shatteredpixeldungeon.effects.Flare;
import com.shatteredpixel.shatteredpixeldungeon.effects.Speck; import com.shatteredpixel.shatteredpixeldungeon.effects.Speck;
import com.shatteredpixel.shatteredpixeldungeon.items.Amulet; import com.shatteredpixel.shatteredpixeldungeon.items.Amulet;
import com.shatteredpixel.shatteredpixeldungeon.items.Ankh; import com.shatteredpixel.shatteredpixeldungeon.items.Ankh;
import com.shatteredpixel.shatteredpixeldungeon.items.DewVial;
import com.shatteredpixel.shatteredpixeldungeon.items.Dewdrop; import com.shatteredpixel.shatteredpixeldungeon.items.Dewdrop;
import com.shatteredpixel.shatteredpixeldungeon.items.Heap; import com.shatteredpixel.shatteredpixeldungeon.items.Heap;
import com.shatteredpixel.shatteredpixeldungeon.items.Heap.Type; import com.shatteredpixel.shatteredpixeldungeon.items.Heap.Type;
@ -84,11 +82,8 @@ import com.shatteredpixel.shatteredpixeldungeon.items.rings.RingOfMight;
import com.shatteredpixel.shatteredpixeldungeon.items.rings.RingOfTenacity; import com.shatteredpixel.shatteredpixeldungeon.items.rings.RingOfTenacity;
import com.shatteredpixel.shatteredpixeldungeon.items.scrolls.Scroll; import com.shatteredpixel.shatteredpixeldungeon.items.scrolls.Scroll;
import com.shatteredpixel.shatteredpixeldungeon.items.scrolls.ScrollOfMagicMapping; import com.shatteredpixel.shatteredpixeldungeon.items.scrolls.ScrollOfMagicMapping;
import com.shatteredpixel.shatteredpixeldungeon.items.scrolls.ScrollOfRecharging;
import com.shatteredpixel.shatteredpixeldungeon.items.scrolls.ScrollOfUpgrade; import com.shatteredpixel.shatteredpixeldungeon.items.scrolls.ScrollOfUpgrade;
import com.shatteredpixel.shatteredpixeldungeon.items.scrolls.ScrollOfMagicalInfusion; import com.shatteredpixel.shatteredpixeldungeon.items.scrolls.ScrollOfMagicalInfusion;
import com.shatteredpixel.shatteredpixeldungeon.items.wands.Wand;
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.MagesStaff;
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.MeleeWeapon; import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.MeleeWeapon;
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.missiles.MissileWeapon; import com.shatteredpixel.shatteredpixeldungeon.items.weapon.missiles.MissileWeapon;
import com.shatteredpixel.shatteredpixeldungeon.levels.Level; import com.shatteredpixel.shatteredpixeldungeon.levels.Level;
@ -405,7 +400,7 @@ public class Hero extends Char {
TimekeepersHourglass.timeFreeze buff = buff(TimekeepersHourglass.timeFreeze.class); TimekeepersHourglass.timeFreeze buff = buff(TimekeepersHourglass.timeFreeze.class);
if (!(buff != null && buff.processTime(time))) if (!(buff != null && buff.processTime(time)))
super.spend( time ); super.spend( time );
}; }
public void spendAndNext( float time ) { public void spendAndNext( float time ) {
busy(); busy();
@ -874,13 +869,6 @@ public class Hero extends Char {
damage += Buff.affect( this, Combo.class ).hit( enemy, damage ); damage += Buff.affect( this, Combo.class ).hit( enemy, damage );
} }
break; break;
case BATTLEMAGE:
if (wep instanceof MagesStaff) {
//gives wands 50% charge
Buff.affect( this, ScrollOfRecharging.Recharging.class, 2f);
ScrollOfRecharging.charge( this );
}
break;
case SNIPER: case SNIPER:
if (rangedWeapon != null) { if (rangedWeapon != null) {
Buff.prolong( this, SnipersMark.class, attackDelay() * 1.1f ).object = enemy.id(); Buff.prolong( this, SnipersMark.class, attackDelay() * 1.1f ).object = enemy.id();

View File

@ -60,7 +60,7 @@ public abstract class Wand extends Item {
public int maxCharges = initialCharges(); public int maxCharges = initialCharges();
public int curCharges = maxCharges; public int curCharges = maxCharges;
protected float partialCharge = 0f; public float partialCharge = 0f;
protected Charger charger; protected Charger charger;

View File

@ -98,8 +98,10 @@ public class MagesStaff extends MeleeWeapon {
@Override @Override
public void proc(Char attacker, Char defender, int damage) { public void proc(Char attacker, Char defender, int damage) {
if (wand != null && Dungeon.hero.subClass == HeroSubClass.BATTLEMAGE) if (wand != null && Dungeon.hero.subClass == HeroSubClass.BATTLEMAGE) {
wand.partialCharge += 0.5f;
wand.onHit(this, attacker, defender, damage); wand.onHit(this, attacker, defender, damage);
}
super.proc(attacker, defender, damage); super.proc(attacker, defender, damage);
} }
@ -286,8 +288,6 @@ public class MagesStaff extends MeleeWeapon {
updateQuickslot(); updateQuickslot();
} }
} }
;
} }
); );
} }
@ -312,7 +312,7 @@ public class MagesStaff extends MeleeWeapon {
return !((wand instanceof WandOfDisintegration) return !((wand instanceof WandOfDisintegration)
|| (wand instanceof WandOfCorruption) || (wand instanceof WandOfCorruption)
|| (wand instanceof WandOfRegrowth)); || (wand instanceof WandOfRegrowth));
}; }
}; };
//determines particle effects to use based on wand the staff owns. //determines particle effects to use based on wand the staff owns.
@ -384,7 +384,7 @@ public class MagesStaff extends MeleeWeapon {
minSize = 1f; maxSize = 2.5f; minSize = 1f; maxSize = 2.5f;
radiateXY(1f); radiateXY(1f);
} else if (wand instanceof WandOfTransfusion) { } else if (wand instanceof WandOfTransfusion) {
color( 0xCC0000 );; am = 0.6f; color( 0xCC0000 ); am = 0.6f;
lifespan = left = 0.8f; lifespan = left = 0.8f;
speed.polar( Random.Float(PointF.PI2), 2f ); speed.polar( Random.Float(PointF.PI2), 2f );
minSize = 1f; maxSize = 2.5f; minSize = 1f; maxSize = 2.5f;