v0.5.0: many balance changes
This commit is contained in:
parent
2f0f4fb0fa
commit
040607c927
|
@ -962,7 +962,7 @@ public class Hero extends Char {
|
||||||
//TODO improve this when I have proper damage source logic
|
//TODO improve this when I have proper damage source logic
|
||||||
if (belongings.armor != null && belongings.armor.hasGlyph(AntiMagic.class)
|
if (belongings.armor != null && belongings.armor.hasGlyph(AntiMagic.class)
|
||||||
&& RingOfElements.FULL.contains(src.getClass())){
|
&& RingOfElements.FULL.contains(src.getClass())){
|
||||||
dmg -= Random.NormalIntRange(belongings.armor.DRMin(), belongings.armor.DRMax())/2;
|
dmg -= Random.NormalIntRange(belongings.armor.DRMin(), belongings.armor.DRMax())/3;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (subClass == HeroSubClass.BERSERKER && berserk == null){
|
if (subClass == HeroSubClass.BERSERKER && berserk == null){
|
||||||
|
|
|
@ -233,7 +233,7 @@ public class Armor extends EquipableItem {
|
||||||
|
|
||||||
public int DRMin(int lvl){
|
public int DRMin(int lvl){
|
||||||
if (glyph != null && glyph instanceof Stone)
|
if (glyph != null && glyph instanceof Stone)
|
||||||
return 2 + 2*lvl;
|
return 2*lvl;
|
||||||
else
|
else
|
||||||
return lvl;
|
return lvl;
|
||||||
}
|
}
|
||||||
|
|
|
@ -42,10 +42,10 @@ public class Entanglement extends Glyph {
|
||||||
|
|
||||||
int level = Math.max( 0, armor.level() );
|
int level = Math.max( 0, armor.level() );
|
||||||
|
|
||||||
if (Random.Int( 3 ) == 0) {
|
if (Random.Int( 4 ) == 0) {
|
||||||
|
|
||||||
Buff.prolong( defender, Roots.class, 5 );
|
Buff.prolong( defender, Roots.class, 5 );
|
||||||
Buff.affect( defender, Earthroot.Armor.class ).level( 5 + level );
|
Buff.affect( defender, Earthroot.Armor.class ).level( 5 + 2*level );
|
||||||
CellEmitter.bottom( defender.pos ).start( EarthParticle.FACTORY, 0.05f, 8 );
|
CellEmitter.bottom( defender.pos ).start( EarthParticle.FACTORY, 0.05f, 8 );
|
||||||
Camera.main.shake( 1, 0.4f );
|
Camera.main.shake( 1, 0.4f );
|
||||||
|
|
||||||
|
|
|
@ -118,7 +118,7 @@ public class Viscosity extends Glyph {
|
||||||
public boolean act() {
|
public boolean act() {
|
||||||
if (target.isAlive()) {
|
if (target.isAlive()) {
|
||||||
|
|
||||||
int damageThisTick = Math.max(1, damage/10);
|
int damageThisTick = Math.max(1, (int)(damage*0.15f));
|
||||||
target.damage( damageThisTick, this );
|
target.damage( damageThisTick, this );
|
||||||
if (target == Dungeon.hero && !target.isAlive()) {
|
if (target == Dungeon.hero && !target.isAlive()) {
|
||||||
|
|
||||||
|
|
|
@ -205,7 +205,7 @@ public class DriedRose extends Artifact {
|
||||||
|
|
||||||
LockedFloor lock = target.buff(LockedFloor.class);
|
LockedFloor lock = target.buff(LockedFloor.class);
|
||||||
if (charge < chargeCap && !cursed && (lock == null || lock.regenOn())) {
|
if (charge < chargeCap && !cursed && (lock == null || lock.regenOn())) {
|
||||||
partialCharge += 1/5f; //500 turns to a full charge
|
partialCharge += 1/4f; //400 turns to a full charge
|
||||||
if (partialCharge > 1){
|
if (partialCharge > 1){
|
||||||
charge++;
|
charge++;
|
||||||
partialCharge--;
|
partialCharge--;
|
||||||
|
@ -376,14 +376,14 @@ public class DriedRose extends Artifact {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int damageRoll() {
|
public int damageRoll() {
|
||||||
int lvl = (HT-10)/3;
|
int lvl = (HT-10)/4;
|
||||||
return Random.NormalIntRange( lvl/2, 5+lvl);
|
return Random.NormalIntRange( 3+lvl/2, 8+lvl);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int drRoll() {
|
public int drRoll() {
|
||||||
//defence is equal to the level of rose.
|
int lvl = (HT-10)/4;
|
||||||
return Random.NormalIntRange(0, (HT-10)/3);
|
return Random.NormalIntRange(0, 2+lvl);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -72,7 +72,7 @@ public class WandOfFrost extends DamageWand {
|
||||||
if (ch.buff(Chill.class) != null){
|
if (ch.buff(Chill.class) != null){
|
||||||
//7.5% less damage per turn of chill remaining
|
//7.5% less damage per turn of chill remaining
|
||||||
float chill = ch.buff(Chill.class).cooldown();
|
float chill = ch.buff(Chill.class).cooldown();
|
||||||
damage = (int)Math.round(damage * Math.pow(0.925f, chill));
|
damage = (int)Math.round(damage * Math.pow(0.9f, chill));
|
||||||
} else {
|
} else {
|
||||||
ch.sprite.burst( 0xFF99CCFF, level() / 2 + 2 );
|
ch.sprite.burst( 0xFF99CCFF, level() / 2 + 2 );
|
||||||
}
|
}
|
||||||
|
|
|
@ -35,8 +35,8 @@ public class Exhausting extends Weapon.Enchantment {
|
||||||
@Override
|
@Override
|
||||||
public int proc(Weapon weapon, Char attacker, Char defender, int damage ) {
|
public int proc(Weapon weapon, Char attacker, Char defender, int damage ) {
|
||||||
|
|
||||||
if (attacker == Dungeon.hero && Random.Int(20) == 0) {
|
if (attacker == Dungeon.hero && Random.Int(15) == 0) {
|
||||||
Buff.affect(attacker, Weakness.class, Random.Float(5f, 25f));
|
Buff.affect(attacker, Weakness.class, Random.NormalIntRange(5, 20));
|
||||||
}
|
}
|
||||||
|
|
||||||
return damage;
|
return damage;
|
||||||
|
|
|
@ -39,6 +39,6 @@ public class Quarterstaff extends MeleeWeapon {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int defenseFactor(Hero hero) {
|
public int defenseFactor(Hero hero) {
|
||||||
return 2; //2 extra defence
|
return 3; //3 extra defence
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue
Block a user