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'
appVersionCode =900873
appVersionName = '0.6.2.0-Beta4.5'
appVersionName = '0.6.2.0-Beta4.8'
appJavaCompatibility = JavaVersion.VERSION_11

View File

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

View File

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