1
0
mirror of https://github.com/zenorogue/hyperrogue.git synced 2024-11-23 21:07:17 +00:00

fixed unitialized sword variables in stalemate for non-players

This commit is contained in:
Zeno Rogue 2018-01-12 22:50:50 +01:00
parent 9a58f0a001
commit 87ef9a68e3

View File

@ -1363,17 +1363,22 @@ int monstersnear(cell *c, cell *nocount, eMonster who, cell *pushto, cell *comef
who == moPlayer ? sword::shift(comefrom, c, sword::angle[multi::cpid]) : who == moPlayer ? sword::shift(comefrom, c, sword::angle[multi::cpid]) :
sword::angle[multi::cpid]); sword::angle[multi::cpid]);
if(who == moPlayer) for(int b=0; b<2; b++) { for(int b=0; b<2; b++) {
sm.swordnext[b] = sword::pos(multi::cpid, b); if(who == moPlayer) {
sm.swordtransit[b] = NULL; sm.swordnext[b] = sword::pos(multi::cpid, b);
if(sm.swordnext[b] && sm.swordnext[b] != sm.swordlast[b] && !isNeighbor(sm.swordlast[b], sm.swordnext[b])) { sm.swordtransit[b] = NULL;
forCellEx(c2, sm.swordnext[b]) if(sm.swordnext[b] && sm.swordnext[b] != sm.swordlast[b] && !isNeighbor(sm.swordlast[b], sm.swordnext[b])) {
if(c2 != c && c2 != comefrom && isNeighbor(c2, S3==3 ? sm.swordlast[b] : *wcw)) forCellEx(c2, sm.swordnext[b])
sm.swordtransit[b] = c2; if(c2 != c && c2 != comefrom && isNeighbor(c2, S3==3 ? sm.swordlast[b] : *wcw))
if(S3 == 4)
forCellEx(c2, c)
if(c2 != comefrom && isNeighbor(c2, sm.swordlast[b]))
sm.swordtransit[b] = c2; sm.swordtransit[b] = c2;
if(S3 == 4)
forCellEx(c2, c)
if(c2 != comefrom && isNeighbor(c2, sm.swordlast[b]))
sm.swordtransit[b] = c2;
}
}
else {
sm.swordnext[b] = sm.swordtransit[b] = NULL;
} }
} }