v0.8.1: balance tweaks:
- talisman of foresight now requires less exp to level - talisman of foresight now spends slightly more charge when scrying at distances - battlemage staff of magic missile proc changed: now grants a straight 0.33 charges to all wands
This commit is contained in:
parent
452a67f03b
commit
2c20df475c
|
@ -115,7 +115,7 @@ public class TalismanOfForesight extends Artifact {
|
||||||
}
|
}
|
||||||
|
|
||||||
private float maxDist(){
|
private float maxDist(){
|
||||||
return Math.min(5 + 2*level(), (charge-3)/0.88f);
|
return Math.min(5 + 2*level(), (charge-3)/1.08f);
|
||||||
}
|
}
|
||||||
|
|
||||||
private CellSelector.Listener scry = new CellSelector.Listener(){
|
private CellSelector.Listener scry = new CellSelector.Listener(){
|
||||||
|
@ -194,15 +194,16 @@ public class TalismanOfForesight extends Artifact {
|
||||||
}
|
}
|
||||||
|
|
||||||
exp += earnedExp;
|
exp += earnedExp;
|
||||||
if (exp >= 100 + 50*level() && level() < levelCap) {
|
if (exp >= 50 + 50*level() && level() < levelCap) {
|
||||||
exp -= 100 + 50*level();
|
exp -= 50 + 50*level();
|
||||||
upgrade();
|
upgrade();
|
||||||
GLog.p( Messages.get(TalismanOfForesight.class, "levelup") );
|
GLog.p( Messages.get(TalismanOfForesight.class, "levelup") );
|
||||||
}
|
}
|
||||||
updateQuickslot();
|
updateQuickslot();
|
||||||
|
|
||||||
charge -= 3 + dist*0.88f;
|
//5 charge at 2 tiles, up to 30 charge at 25 tiles
|
||||||
partialCharge -= (dist*0.88f)%1f;
|
charge -= 3 + dist*1.08f;
|
||||||
|
partialCharge -= (dist*1.08f)%1f;
|
||||||
if (partialCharge < 0 && charge > 0){
|
if (partialCharge < 0 && charge > 0){
|
||||||
partialCharge ++;
|
partialCharge ++;
|
||||||
charge --;
|
charge --;
|
||||||
|
|
|
@ -561,13 +561,15 @@ public abstract class Wand extends Item {
|
||||||
}
|
}
|
||||||
|
|
||||||
public void gainCharge(float charge){
|
public void gainCharge(float charge){
|
||||||
partialCharge += charge;
|
if (curCharges < maxCharges) {
|
||||||
while (partialCharge >= 1f){
|
partialCharge += charge;
|
||||||
curCharges++;
|
while (partialCharge >= 1f) {
|
||||||
partialCharge--;
|
curCharges++;
|
||||||
|
partialCharge--;
|
||||||
|
}
|
||||||
|
curCharges = Math.min(curCharges, maxCharges);
|
||||||
|
updateQuickslot();
|
||||||
}
|
}
|
||||||
curCharges = Math.min(curCharges, maxCharges);
|
|
||||||
updateQuickslot();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void setScaleFactor(float value){
|
private void setScaleFactor(float value){
|
||||||
|
|
|
@ -80,8 +80,12 @@ public class WandOfMagicMissile extends DamageWand {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onHit(MagesStaff staff, Char attacker, Char defender, int damage) {
|
public void onHit(MagesStaff staff, Char attacker, Char defender, int damage) {
|
||||||
Buff.prolong( attacker, Recharging.class, 1 + staff.buffedLvl()/2f);
|
|
||||||
SpellSprite.show(attacker, SpellSprite.CHARGE);
|
SpellSprite.show(attacker, SpellSprite.CHARGE);
|
||||||
|
for (Wand.Charger c : attacker.buffs(Wand.Charger.class)){
|
||||||
|
if (c.wand() != this){
|
||||||
|
c.gainCharge(0.33f);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user