Fixed WraithAmulet

This commit is contained in:
LingASDJ 2023-05-31 16:49:43 +08:00
parent f2480cf6e6
commit 3ce21ccbe6
3 changed files with 29 additions and 24 deletions

View File

@ -18,7 +18,7 @@ allprojects {
appPackageName = 'com.ansdomagiclingpixeldungeon.ling' appPackageName = 'com.ansdomagiclingpixeldungeon.ling'
appVersionCode =900873 appVersionCode =900873
appVersionName = '0.6.2.0-Beta4.5' appVersionName = '0.6.2.0-Beta4.8'
appJavaCompatibility = JavaVersion.VERSION_11 appJavaCompatibility = JavaVersion.VERSION_11

View File

@ -864,10 +864,12 @@ items.artifacts.wraithamulet$wraithrecharge.ghoststong=你的暗金护符变得
items.artifacts.wraithamulet$1.selectkill=选择刺杀目标 items.artifacts.wraithamulet$1.selectkill=选择刺杀目标
items.artifacts.wraithamulet$1.far=刺杀目标太远,无法进行刺杀。 items.artifacts.wraithamulet$1.far=刺杀目标太远,无法进行刺杀。
items.artifacts.wraithamulet$1.rooted=你的身体被束缚在这里,无法进行刺杀。 items.artifacts.wraithamulet$1.rooted=你的身体被束缚在这里,无法进行刺杀。
items.artifacts.wraithamulet$1.notthere=那里没有任何目标 items.artifacts.wraithamulet$1.notthere=那里没有任何目标!
items.artifacts.wraithamulet$1.killmobs=该生物成功被暗夜突袭处决! items.artifacts.wraithamulet$1.killmobs=该生物成功被暗夜突袭处决!
items.artifacts.wraithamulet$1.killboss=该首领成功被暗夜突袭重创! items.artifacts.wraithamulet$1.killboss=该首领成功被暗夜突袭重创!
items.artifacts.wraithamulet$1.gold=你目前在处在宝藏迷宫中,无法进行刺杀。 items.artifacts.wraithamulet$1.gold=你目前在处在宝藏迷宫中,无法进行刺杀。
items.artifacts.wraithamulet$1.died=下地狱吧!
items.artifacts.wraithamulet$1.koss=是首领又能怎么样呢?
###bags ###bags
items.bags.bag.name=背包 items.bags.bag.name=背包

View File

@ -110,7 +110,7 @@ public class WraithAmulet extends Artifact {
ArrayList<String> actions = super.actions(hero); ArrayList<String> actions = super.actions(hero);
if (isEquipped(hero) && !cursed) if (isEquipped(hero) && !cursed)
actions.add(AC_GHOST); actions.add(AC_GHOST);
if (isEquipped(hero) && charge >= 7 && !cursed) if (isEquipped(hero) && charge >= 6 && !cursed)
actions.add(AC_ASSASSINATE); actions.add(AC_ASSASSINATE);
return actions; return actions;
} }
@ -202,31 +202,34 @@ public class WraithAmulet extends Artifact {
Char enemy = Actor.findChar(target); Char enemy = Actor.findChar(target);
if (enemy != null && !(enemy instanceof NPC) || !(((Statistics.boss_enhance & 0x2) != 0 || Statistics.mimicking) && Dungeon.depth==10)) { if (enemy != null && !(enemy instanceof NPC) || !(((Statistics.boss_enhance & 0x2) != 0 || Statistics.mimicking) && Dungeon.depth==10)) {
if (hero.rooted || Dungeon.level.distance(hero.pos, target) < 3) { if (hero.rooted || Dungeon.level.distance(hero.pos, target) < 3) {
final WraithAmulet amulet = (WraithAmulet) Item.curItem; if(enemy != null){
amulet.charge--; final WraithAmulet amulet = (WraithAmulet) Item.curItem;
amulet.exp += 10; amulet.exp += 10;
hero.pos = target; hero.pos = target;
if (enemy.properties().contains(Char.Property.BOSS)) { if (enemy.properties().contains(Char.Property.BOSS)) {
enemy.damage(enemy.HT / 2, WraithAmulet.class); enemy.damage(enemy.HT / 2, WraithAmulet.class);
GLog.i(Messages.get(this, "killboss")); GLog.i(Messages.get(this, "killboss"));
} else { enemy.sprite.showStatus(CharSprite.NEGATIVE, Messages.get(this,"koss"));
enemy.damage(enemy.HT * 4, WraithAmulet.class); } else {
GLog.i(Messages.get(this, "killmobs")); enemy.damage(enemy.HT * 4, WraithAmulet.class);
} GLog.i(Messages.get(this, "killmobs"));
ScrollOfTeleportation.appear(hero, target); enemy.sprite.showStatus(CharSprite.NEGATIVE, Messages.get(this,"died"));
Dungeon.observe(); }
hero.sprite.emitter().start(ShadowParticle.UP, 0.05f, 10); ScrollOfTeleportation.appear(hero, target);
Dungeon.observe();
hero.sprite.emitter().start(ShadowParticle.UP, 0.05f, 10);
amulet.charge -= 5; amulet.charge -= 6;
} else if(Dungeon.level.distance(hero.pos, target) < 3) { }
GLog.i(Messages.get(this, "far")); } else if(Dungeon.level.distance(hero.pos, target) > 3 && enemy !=null) {
GLog.w(Messages.get(this, "far"));
} else if (hero.rooted) { } else if (hero.rooted) {
GLog.i(Messages.get(this, "rooted")); GLog.n(Messages.get(this, "rooted"));
} else if(((Statistics.boss_enhance & 0x2) != 0 || Statistics.mimicking) && Dungeon.depth==10){ } else if(((Statistics.boss_enhance & 0x2) != 0 || Statistics.mimicking) && Dungeon.depth==10){
GLog.i(Messages.get(this, "gold")); GLog.n(Messages.get(this, "gold"));
} else {
GLog.w(Messages.get(this, "notthere"));
} }
} else {
GLog.i(Messages.get(this, "notthere"));
} }
} }
} }