diff --git a/bigstuff.cpp b/bigstuff.cpp index 1b484011..fb758f7e 100644 --- a/bigstuff.cpp +++ b/bigstuff.cpp @@ -1486,8 +1486,16 @@ EX void build_walls(cell *c, cell *from) { build_barrier_good(c, specialland); return; } + + if(specialland == laElementalWall && hrand(I10000) < 4000) { + build_barrier_good(c); + return; + } } } + else if(ctof(c) && ls::single() && specialland == laElementalWall && hrand(I10000) < 4000) { + buildBarrierNowall(c, getNewLand(c->land)); + } if(c->land == laCrossroads2 && BITRUNCATED) buildCrossroads2(c); diff --git a/landlock.cpp b/landlock.cpp index 4c1f66d8..151a0a13 100644 --- a/landlock.cpp +++ b/landlock.cpp @@ -301,7 +301,7 @@ EX bool rlyehComplete() { } bool lchance(eLand l) { - if(tactic::on || yendor::on || racing::on || ((geometry || GOLDBERG) && specialland == laElementalWall)) return true; + if(ls::single() || racing::on || ((geometry || GOLDBERG) && specialland == laElementalWall)) return true; if(ls::any_chaos()) return hrand(100) < 25; return hrand(100) >= 40 * kills[elementalOf(l)] / (elementalKills()+1); }