mirror of
https://github.com/zenorogue/hyperrogue.git
synced 2025-02-05 05:30:09 +00:00
shmup:: crossbow bolts now pierce multi-tile monsters
This commit is contained in:
parent
5ab9bf8f11
commit
a282ac314e
@ -1732,7 +1732,7 @@ void moveBullet(monster *m, int delta) {
|
|||||||
(markOrb(itCurseWeakness) && (markOrb(itOrbEmpathy) ? isPlayerOrImage(ptype) : ptype == moPlayer));
|
(markOrb(itCurseWeakness) && (markOrb(itOrbEmpathy) ? isPlayerOrImage(ptype) : ptype == moPlayer));
|
||||||
|
|
||||||
if(m->type != moTongue && !(godragon || (c2==m->base && m->type == moArrowTrap) || passable(c2, m->base, P_BULLET | P_MIRRORWALL))) {
|
if(m->type != moTongue && !(godragon || (c2==m->base && m->type == moArrowTrap) || passable(c2, m->base, P_BULLET | P_MIRRORWALL))) {
|
||||||
m->dead = true;
|
if(!bow::crossbow_mode()) m->dead = true;
|
||||||
if(!weak && (!isDie(c2->monst) || slayer))
|
if(!weak && (!isDie(c2->monst) || slayer))
|
||||||
killMonster(c2, m->get_parenttype());
|
killMonster(c2, m->get_parenttype());
|
||||||
// cell *c = m->base;
|
// cell *c = m->base;
|
||||||
@ -1740,10 +1740,12 @@ void moveBullet(monster *m, int delta) {
|
|||||||
if(c2->wall == waBigTree) {
|
if(c2->wall == waBigTree) {
|
||||||
addMessage(XLAT("You start chopping down the tree."));
|
addMessage(XLAT("You start chopping down the tree."));
|
||||||
c2->wall = waSmallTree;
|
c2->wall = waSmallTree;
|
||||||
|
m->dead = true;
|
||||||
}
|
}
|
||||||
else if(c2->wall == waSmallTree) {
|
else if(c2->wall == waSmallTree) {
|
||||||
addMessage(XLAT("You chop down the tree."));
|
addMessage(XLAT("You chop down the tree."));
|
||||||
c2->wall = waNone;
|
c2->wall = waNone;
|
||||||
|
m->dead = true;
|
||||||
}
|
}
|
||||||
else if(isActivable(c2))
|
else if(isActivable(c2))
|
||||||
activateActiv(c2, true);
|
activateActiv(c2, true);
|
||||||
@ -1814,7 +1816,7 @@ void moveBullet(monster *m, int delta) {
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool deadval = bow::crossbow_mode() ? false : true;
|
bool deadval = (bow::crossbow_mode() && m->type == moBullet) ? false : true;
|
||||||
|
|
||||||
// multi-HP monsters
|
// multi-HP monsters
|
||||||
if((m2->type == moPalace || m2->type == moFatGuard || m2->type == moSkeleton ||
|
if((m2->type == moPalace || m2->type == moFatGuard || m2->type == moSkeleton ||
|
||||||
|
Loading…
x
Reference in New Issue
Block a user