v2.0.0: several artifacts now cancel invisibility when used

This commit is contained in:
Evan Debenham
2022-12-30 13:32:29 -05:00
parent 46d1483e9e
commit 5e18481c26
5 changed files with 10 additions and 0 deletions

View File

@@ -31,6 +31,7 @@ import com.shatteredpixel.shatteredpixeldungeon.actors.blobs.ToxicGas;
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.AllyBuff; import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.AllyBuff;
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.AscensionChallenge; import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.AscensionChallenge;
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Burning; import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Burning;
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Invisibility;
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.LockedFloor; import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.LockedFloor;
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.MagicImmune; import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.MagicImmune;
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Belongings; import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Belongings;
@@ -189,6 +190,7 @@ public class DriedRose extends Artifact {
} }
} }
Invisibility.dispel(hero);
Talent.onArtifactUsed(hero); Talent.onArtifactUsed(hero);
charge = 0; charge = 0;
partialCharge = 0; partialCharge = 0;

View File

@@ -27,6 +27,7 @@ import com.shatteredpixel.shatteredpixeldungeon.actors.Actor;
import com.shatteredpixel.shatteredpixeldungeon.actors.Char; import com.shatteredpixel.shatteredpixeldungeon.actors.Char;
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Buff; import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Buff;
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Cripple; import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Cripple;
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Invisibility;
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.LockedFloor; import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.LockedFloor;
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.MagicImmune; import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.MagicImmune;
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Hero; import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Hero;
@@ -174,6 +175,7 @@ public class EtherealChains extends Artifact {
return; return;
} else { } else {
charge -= chargeUse; charge -= chargeUse;
Invisibility.dispel(hero);
Talent.onArtifactUsed(hero); Talent.onArtifactUsed(hero);
updateQuickslot(); updateQuickslot();
} }
@@ -237,6 +239,7 @@ public class EtherealChains extends Artifact {
return; return;
} else { } else {
charge -= chargeUse; charge -= chargeUse;
Invisibility.dispel(hero);
Talent.onArtifactUsed(hero); Talent.onArtifactUsed(hero);
updateQuickslot(); updateQuickslot();
} }

View File

@@ -24,6 +24,7 @@ package com.shatteredpixel.shatteredpixeldungeon.items.artifacts;
import com.shatteredpixel.shatteredpixeldungeon.Assets; import com.shatteredpixel.shatteredpixeldungeon.Assets;
import com.shatteredpixel.shatteredpixeldungeon.Dungeon; import com.shatteredpixel.shatteredpixeldungeon.Dungeon;
import com.shatteredpixel.shatteredpixeldungeon.actors.Actor; import com.shatteredpixel.shatteredpixeldungeon.actors.Actor;
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Invisibility;
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.MagicImmune; import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.MagicImmune;
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Hero; import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Hero;
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Talent; import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Talent;
@@ -324,6 +325,7 @@ public class SandalsOfNature extends Artifact {
GLog.w(Messages.get(SandalsOfNature.class, "out_of_range")); GLog.w(Messages.get(SandalsOfNature.class, "out_of_range"));
} else { } else {
CellEmitter.get( cell ).burst( LeafParticle.GENERAL, 6 ); CellEmitter.get( cell ).burst( LeafParticle.GENERAL, 6 );
Invisibility.dispel(curUser);
Plant plant = ((Plant.Seed) Reflection.newInstance(curSeedEffect)).couch(cell, null); Plant plant = ((Plant.Seed) Reflection.newInstance(curSeedEffect)).couch(cell, null);
plant.activate(Actor.findChar(cell)); plant.activate(Actor.findChar(cell));

View File

@@ -27,6 +27,7 @@ import com.shatteredpixel.shatteredpixeldungeon.actors.Actor;
import com.shatteredpixel.shatteredpixeldungeon.actors.Char; import com.shatteredpixel.shatteredpixeldungeon.actors.Char;
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Buff; import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Buff;
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.FlavourBuff; import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.FlavourBuff;
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Invisibility;
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.LockedFloor; import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.LockedFloor;
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.MagicImmune; import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.MagicImmune;
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Hero; import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Hero;
@@ -219,6 +220,7 @@ public class TalismanOfForesight extends Artifact {
charge++; charge++;
partialCharge--; partialCharge--;
} }
Invisibility.dispel(curUser);
Talent.onArtifactUsed(Dungeon.hero); Talent.onArtifactUsed(Dungeon.hero);
updateQuickslot(); updateQuickslot();
Dungeon.observe(); Dungeon.observe();

View File

@@ -122,6 +122,7 @@ public class TimekeepersHourglass extends Artifact {
GameScene.flash(0x80FFFFFF); GameScene.flash(0x80FFFFFF);
Sample.INSTANCE.play(Assets.Sounds.TELEPORT); Sample.INSTANCE.play(Assets.Sounds.TELEPORT);
Invisibility.dispel(Dungeon.hero);
activeBuff = new timeFreeze(); activeBuff = new timeFreeze();
Talent.onArtifactUsed(Dungeon.hero); Talent.onArtifactUsed(Dungeon.hero);
activeBuff.attachTo(Dungeon.hero); activeBuff.attachTo(Dungeon.hero);