v0.3.2b: tweaked lock floor effect, allowed for some regen to process if time is awarded.

This commit is contained in:
Evan Debenham
2015-11-07 20:02:22 -05:00
parent 519e1252cb
commit 47aa30c830
11 changed files with 46 additions and 22 deletions
@@ -183,7 +183,8 @@ public class CloakOfShadows extends Artifact {
@Override
public boolean act() {
if (charge < chargeCap) {
if (!stealthed && target.buff(LockedFloor.class) == null)
LockedFloor lock = target.buff(LockedFloor.class);
if (!stealthed && (lock == null || lock.regenOn()))
partialCharge += (1f / (60 - (chargeCap-charge)*2));
if (partialCharge >= 1) {
@@ -208,7 +208,8 @@ public class DriedRose extends Artifact {
@Override
public boolean act() {
if (charge < chargeCap && !cursed && target.buff(LockedFloor.class) == null) {
LockedFloor lock = target.buff(LockedFloor.class);
if (charge < chargeCap && !cursed && (lock == null || lock.regenOn())) {
//TODO: investigate balancing on this.
partialCharge += 10/75f;
if (partialCharge > 1){
@@ -208,7 +208,8 @@ public class EtherealChains extends Artifact {
@Override
public boolean act() {
int chargeTarget = 5+(level*2);
if (!cursed && charge < chargeTarget && target.buff(LockedFloor.class) == null) {
LockedFloor lock = target.buff(LockedFloor.class);
if (charge < chargeTarget && !cursed && (lock == null || lock.regenOn())) {
partialCharge += 1 / (40f - (chargeTarget - charge)*2f);
} else if (cursed && Random.Int(100) == 0){
Buff.prolong( target, Cripple.class, 10f);
@@ -173,7 +173,8 @@ public class HornOfPlenty extends Artifact {
@Override
public boolean act() {
if (charge < chargeCap && !cursed && target.buff(LockedFloor.class) == null) {
LockedFloor lock = target.buff(LockedFloor.class);
if (charge < chargeCap && !cursed && (lock == null || lock.regenOn())) {
//generates 0.25 food value every round, +0.015 value per level
//to a max of 0.70 food value per round (0.25+0.5, at level 30)
@@ -304,7 +304,8 @@ public class LloydsBeacon extends Artifact {
public class beaconRecharge extends ArtifactBuff{
@Override
public boolean act() {
if (charge < chargeCap && !cursed && target.buff(LockedFloor.class) == null) {
LockedFloor lock = target.buff(LockedFloor.class);
if (charge < chargeCap && !cursed && (lock == null || lock.regenOn())) {
partialCharge += 1 / (100f - (chargeCap - charge)*10f);
if (partialCharge >= 1) {
@@ -58,7 +58,7 @@ public class TalismanOfForesight extends Artifact {
@Override
public ArrayList<String> actions( Hero hero ) {
ArrayList<String> actions = super.actions( hero );
if (isEquipped( hero ) && charge == 100 && !cursed)
if (isEquipped( hero ) && charge == chargeCap && !cursed)
actions.add(AC_SCRY);
return actions;
}
@@ -108,7 +108,7 @@ public class TalismanOfForesight extends Artifact {
if ( isEquipped( Dungeon.hero ) ){
if (!cursed) {
desc += "\n\nWhen you hold the talisman you feel like your senses are heightened.";
if (charge == 100)
if (charge == chargeCap)
desc += "\n\nThe talisman is radiating energy, prodding at your mind. You wonder what would " +
"happen if you let it in.";
} else {
@@ -173,13 +173,14 @@ public class TalismanOfForesight extends Artifact {
BuffIndicator.refreshHero();
//fully charges in 2500 turns at lvl=0, scaling to 1000 turns at lvl = 10.
if (charge < 100 && !cursed && target.buff(LockedFloor.class) == null) {
LockedFloor lock = target.buff(LockedFloor.class);
if (charge < chargeCap && !cursed && (lock == null || lock.regenOn())) {
partialCharge += 0.04+(level*0.006);
if (partialCharge > 1 && charge < 100) {
if (partialCharge > 1 && charge < chargeCap) {
partialCharge--;
charge++;
} else if (charge >= 100) {
} else if (charge >= chargeCap) {
partialCharge = 0;
GLog.p("Your Talisman is fully charged!");
}
@@ -201,7 +201,9 @@ public class TimekeepersHourglass extends Artifact {
public class hourglassRecharge extends ArtifactBuff {
@Override
public boolean act() {
if (charge < chargeCap && !cursed && target.buff(LockedFloor.class) == null) {
LockedFloor lock = target.buff(LockedFloor.class);
if (charge < chargeCap && !cursed && (lock == null || lock.regenOn())) {
partialCharge += 1 / (60f - (chargeCap - charge)*2f);
if (partialCharge >= 1) {
@@ -197,7 +197,8 @@ public class UnstableSpellbook extends Artifact {
public class bookRecharge extends ArtifactBuff{
@Override
public boolean act() {
if (charge < chargeCap && !cursed && target.buff(LockedFloor.class) == null) {
LockedFloor lock = target.buff(LockedFloor.class);
if (charge < chargeCap && !cursed && (lock == null || lock.regenOn())) {
partialCharge += 1 / (150f - (chargeCap - charge)*15f);
if (partialCharge >= 1) {
@@ -436,7 +436,8 @@ public abstract class Wand extends Item {
float turnsToCharge = (float) (BASE_CHARGE_DELAY
+ (SCALING_CHARGE_ADDITION * Math.pow(scalingFactor, missingCharges)));
if (target.buff(LockedFloor.class) == null)
LockedFloor lock = target.buff(LockedFloor.class);
if (lock == null || lock.regenOn())
partialCharge += 1f/turnsToCharge;
ScrollOfRecharging.Recharging bonus = target.buff(ScrollOfRecharging.Recharging.class);