mirror of
https://github.com/zenorogue/hyperrogue.git
synced 2025-07-14 07:02:49 +00:00
more Orb fixes
This commit is contained in:
parent
2636b195a2
commit
796975e8c7
7
orbs.cpp
7
orbs.cpp
@ -181,6 +181,7 @@ EX void flashAlchemist(cell *c) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
EX void flashCell(cell *c, eMonster killer, flagtype flags) {
|
EX void flashCell(cell *c, eMonster killer, flagtype flags) {
|
||||||
|
changes.ccell(c);
|
||||||
eWall ow = c->wall;
|
eWall ow = c->wall;
|
||||||
flashAlchemist(c);
|
flashAlchemist(c);
|
||||||
if((flags & AF_MSG) && c->monst && !isWorm(c) && c->monst != moShadow)
|
if((flags & AF_MSG) && c->monst && !isWorm(c) && c->monst != moShadow)
|
||||||
@ -343,14 +344,17 @@ EX void killAdjacentSharks(cell *c) {
|
|||||||
cell *c2 = c->move(i);
|
cell *c2 = c->move(i);
|
||||||
if(!c2) continue;
|
if(!c2) continue;
|
||||||
if(isShark(c2->monst)) {
|
if(isShark(c2->monst)) {
|
||||||
|
changes.ccell(c2);
|
||||||
c2->ligon = true;
|
c2->ligon = true;
|
||||||
killMonster(c2, moLightningBolt);
|
killMonster(c2, moLightningBolt);
|
||||||
killAdjacentSharks(c2);
|
killAdjacentSharks(c2);
|
||||||
}
|
}
|
||||||
if(isKraken(c2->monst) && isWatery(c2)) {
|
if(isKraken(c2->monst) && isWatery(c2)) {
|
||||||
|
changes.ccell(c2);
|
||||||
cell *c3 = kraken::head(c2);
|
cell *c3 = kraken::head(c2);
|
||||||
|
changes.ccell(c3);
|
||||||
c3->ligon = true;
|
c3->ligon = true;
|
||||||
forCellEx(c4, c3) killMonster(c4, moLightningBolt); // kill-all
|
forCellEx(c4, c3) changes.ccell(c4), killMonster(c4, moLightningBolt); // kill-all
|
||||||
forCellEx(c4, c3) if(isWatery(c4)) {
|
forCellEx(c4, c3) if(isWatery(c4)) {
|
||||||
c4->ligon = true;
|
c4->ligon = true;
|
||||||
killAdjacentSharks(c4);
|
killAdjacentSharks(c4);
|
||||||
@ -374,6 +378,7 @@ EX void castLightningBolt(cellwalker lig) {
|
|||||||
if(inmirror(lig)) lig = mirror::reflect(lig);
|
if(inmirror(lig)) lig = mirror::reflect(lig);
|
||||||
|
|
||||||
cell *c = lig.at;
|
cell *c = lig.at;
|
||||||
|
changes.ccell(c);
|
||||||
|
|
||||||
eWall ow = c->wall;
|
eWall ow = c->wall;
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user