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:
parent
94c069134d
commit
249c9acd96
|
@ -39,7 +39,6 @@ import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Drowsy;
|
|||
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Fury;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Hunger;
|
||||
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.Paralysis;
|
||||
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.items.Amulet;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.Ankh;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.DewVial;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.Dewdrop;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.Heap;
|
||||
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.scrolls.Scroll;
|
||||
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.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.missiles.MissileWeapon;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.levels.Level;
|
||||
|
@ -405,7 +400,7 @@ public class Hero extends Char {
|
|||
TimekeepersHourglass.timeFreeze buff = buff(TimekeepersHourglass.timeFreeze.class);
|
||||
if (!(buff != null && buff.processTime(time)))
|
||||
super.spend( time );
|
||||
};
|
||||
}
|
||||
|
||||
public void spendAndNext( float time ) {
|
||||
busy();
|
||||
|
@ -874,13 +869,6 @@ public class Hero extends Char {
|
|||
damage += Buff.affect( this, Combo.class ).hit( enemy, damage );
|
||||
}
|
||||
break;
|
||||
case BATTLEMAGE:
|
||||
if (wep instanceof MagesStaff) {
|
||||
//gives wands 50% charge
|
||||
Buff.affect( this, ScrollOfRecharging.Recharging.class, 2f);
|
||||
ScrollOfRecharging.charge( this );
|
||||
}
|
||||
break;
|
||||
case SNIPER:
|
||||
if (rangedWeapon != null) {
|
||||
Buff.prolong( this, SnipersMark.class, attackDelay() * 1.1f ).object = enemy.id();
|
||||
|
|
|
@ -60,7 +60,7 @@ public abstract class Wand extends Item {
|
|||
|
||||
public int maxCharges = initialCharges();
|
||||
public int curCharges = maxCharges;
|
||||
protected float partialCharge = 0f;
|
||||
public float partialCharge = 0f;
|
||||
|
||||
protected Charger charger;
|
||||
|
||||
|
|
|
@ -98,14 +98,16 @@ public class MagesStaff extends MeleeWeapon {
|
|||
|
||||
@Override
|
||||
public void proc(Char attacker, Char defender, int damage) {
|
||||
if (wand != null && Dungeon.hero.subClass == HeroSubClass.BATTLEMAGE)
|
||||
wand.onHit( this, attacker, defender, damage );
|
||||
if (wand != null && Dungeon.hero.subClass == HeroSubClass.BATTLEMAGE) {
|
||||
wand.partialCharge += 0.5f;
|
||||
wand.onHit(this, attacker, defender, damage);
|
||||
}
|
||||
super.proc(attacker, defender, damage);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean collect( Bag container ) {
|
||||
if (super.collect( container )) {
|
||||
if (super.collect(container)) {
|
||||
if (container.owner != null && wand != null) {
|
||||
wand.charge(container.owner, STAFF_SCALE_FACTOR);
|
||||
}
|
||||
|
@ -286,8 +288,6 @@ public class MagesStaff extends MeleeWeapon {
|
|||
updateQuickslot();
|
||||
}
|
||||
}
|
||||
|
||||
;
|
||||
}
|
||||
);
|
||||
}
|
||||
|
@ -312,7 +312,7 @@ public class MagesStaff extends MeleeWeapon {
|
|||
return !((wand instanceof WandOfDisintegration)
|
||||
|| (wand instanceof WandOfCorruption)
|
||||
|| (wand instanceof WandOfRegrowth));
|
||||
};
|
||||
}
|
||||
};
|
||||
|
||||
//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;
|
||||
radiateXY(1f);
|
||||
} else if (wand instanceof WandOfTransfusion) {
|
||||
color( 0xCC0000 );; am = 0.6f;
|
||||
color( 0xCC0000 ); am = 0.6f;
|
||||
lifespan = left = 0.8f;
|
||||
speed.polar( Random.Float(PointF.PI2), 2f );
|
||||
minSize = 1f; maxSize = 2.5f;
|
||||
|
|
Loading…
Reference in New Issue
Block a user