new messages on Orb of Phasing, Slaying, and Weakness

This commit is contained in:
Zeno Rogue 2024-03-27 23:31:17 +01:00
parent 494fc4ec11
commit a328568ee5
2 changed files with 14 additions and 3 deletions

View File

@ -944,6 +944,14 @@ EX void fightmessage(eMonster victim, eMonster attacker, bool stun, flagtype fla
else else
addMessage(XLAT("You pierce %the1.", victim)); // normal addMessage(XLAT("You pierce %the1.", victim)); // normal
} }
else if(items[itOrbSlaying]) {
playSound(NULL, "hit-crush"+pick123());
addMessage(XLAT("You crush %the1!", victim)); // normal
}
else if(stun && items[itCurseWeakness]) {
playSound(NULL, "click");
addMessage(XLAT("You punch %the1.", victim)); // normal
}
else if(!peace::on) { else if(!peace::on) {
playSound(NULL, "hit-sword"+pick123()); playSound(NULL, "hit-sword"+pick123());
addMessage(XLAT("You kill %the1.", victim)); // normal addMessage(XLAT("You kill %the1.", victim)); // normal

View File

@ -664,7 +664,7 @@ EX void teleportTo(cell *dest) {
} }
/* calls changes.rollback or changes.commit */ /* calls changes.rollback or changes.commit */
EX bool jumpTo(orbAction a, cell *dest, eItem byWhat, int bonuskill IS(0), eMonster dashmon IS(moNone)) { EX bool jumpTo(orbAction a, cell *dest, eItem byWhat, int bonuskill IS(0), eMonster dashmon IS(moNone), cell *phasecell IS(nullptr)) {
if(byWhat != itStrongWind) playSound(dest, "orb-frog"); if(byWhat != itStrongWind) playSound(dest, "orb-frog");
cell *from = cwt.at; cell *from = cwt.at;
changes.value_keep(cwt); changes.value_keep(cwt);
@ -683,7 +683,10 @@ EX bool jumpTo(orbAction a, cell *dest, eItem byWhat, int bonuskill IS(0), eMons
if(byWhat == itOrbPhasing) { if(byWhat == itOrbPhasing) {
useupOrb(itOrbPhasing, 5); useupOrb(itOrbPhasing, 5);
addMessage(XLAT("You jump!")); if(phasecell->monst)
addMessage(XLAT("You phase through %the1!", phasecell->monst));
else
addMessage(XLAT("You phase through %the1!", phasecell->wall));
} }
movecost(from, dest, 1); movecost(from, dest, 1);
@ -1523,7 +1526,7 @@ EX eItem targetRangedOrb(cell *c, orbAction a) {
} }
if(phasestate == 3) { if(phasestate == 3) {
if(jumpTo(a, c, itOrbPhasing)) phasestate = 4; if(jumpTo(a, c, itOrbPhasing, 0, moNone, jumpthru)) phasestate = 4;
else wouldkill_there = true; else wouldkill_there = true;
} }
else changes.rollback(); else changes.rollback();