1
0
mirror of https://github.com/zenorogue/hyperrogue.git synced 2024-12-25 09:30:35 +00:00

fixed the Rock Snake generation in weirdhyperbolic

This commit is contained in:
Zeno Rogue 2017-10-30 10:52:23 +01:00
parent 6b658a6e51
commit f69d538e08

View File

@ -1390,9 +1390,9 @@ void giantLandSwitch(cell *c, int d, cell *from) {
if(d == 7 && c->wall == waNone) if(d == 7 && c->wall == waNone)
buildPrizeMirror(c, 1000); buildPrizeMirror(c, 1000);
ONEMPTY { ONEMPTY {
if(hrand((doCross && celldist(c) <= 5) ?450:16000) < 30+items[itRedGem]+yendor::hardness() && !pseudohept(c) && !c->monst && !c->wall) { if(hrand((doCross && celldist(c) <= 5) ?450:16000) < 30+items[itRedGem]+yendor::hardness() && !pseudohept(c) && !c->monst && !c->wall && !(purehepta && S3==4)) {
int i = -1; int i = -1;
for(int t=0; t<6; t++) if(c->mov[t]->mpdist > c->mpdist && !pseudohept(c->mov[t])) for(int t=0; t<c->type; t++) if(c->mov[t]->mpdist > c->mpdist && !pseudohept(c->mov[t]))
i = t; i = t;
if(i != -1 && !peace::on) { if(i != -1 && !peace::on) {
c->monst = moHexSnake; c->monst = moHexSnake;
@ -1410,7 +1410,7 @@ void giantLandSwitch(cell *c, int d, cell *from) {
if(c3->monst || c3->bardir != NODIR || c3->wall) break; if(c3->monst || c3->bardir != NODIR || c3->wall) break;
c2 = c3; c2 = c3;
c2->monst = moHexSnakeTail; c2->monst = moHexSnakeTail;
i = (j + (len%2 ? 2 : 4)) % 6; i = (j + (S6==8 ? 4 : (len%2 ? 2 : 4))) % 6;
} }
if(size(rocksnake) < ROCKSNAKELENGTH/2 && !purehepta) { if(size(rocksnake) < ROCKSNAKELENGTH/2 && !purehepta) {
for(int i=0; i<size(rocksnake); i++) for(int i=0; i<size(rocksnake); i++)