From f3b359940e72428a6aa5976af32c32e3be5822a5 Mon Sep 17 00:00:00 2001 From: Zeno Rogue Date: Fri, 23 Apr 2021 19:14:37 +0200 Subject: [PATCH] fixed single-land Camelot --- bigstuff.cpp | 2 +- cell.cpp | 4 ++-- game.cpp | 2 +- landgen.cpp | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/bigstuff.cpp b/bigstuff.cpp index 6ef42c12..8ee03002 100644 --- a/bigstuff.cpp +++ b/bigstuff.cpp @@ -1548,7 +1548,7 @@ EX void build_walls(cell *c, cell *from) { EX void start_camelot(cell *c) { int rtr = newRoundTableRadius(); - heptagon *alt = createAlternateMap(c, rtr+(hyperbolic && WDIM == 3 ? 11 : 14), hsOrigin); + heptagon *alt = createAlternateMap(c, ls::single() ? 2 : rtr+(hyperbolic && WDIM == 3 ? 11 : 14), ls::single() ? hsA : hsOrigin); if(alt) { alt->emeraldval = rtr; alt->fiftyval = c->land; diff --git a/cell.cpp b/cell.cpp index c245006f..c4a9426b 100644 --- a/cell.cpp +++ b/cell.cpp @@ -515,9 +515,9 @@ EX int celldistAlt(cell *c) { return d; } #if CAP_BT - if(bt::in() || sn::in()) return c->master->distance + (specialland == laCamelot && !tactic::on? 30 : 0); + if(bt::in() || sn::in()) return c->master->distance + (specialland == laCamelot && !ls::single() ? 30 : 0); #endif - if(nil) return c->master->zebraval + abs(c->master->emeraldval) + (specialland == laCamelot && !tactic::on? 30 : 0);; + if(nil) return c->master->zebraval + abs(c->master->emeraldval) + (specialland == laCamelot && !ls::single() ? 30 : 0);; #if CAP_CRYSTAL if(cryst) return crystal::dist_alt(c); diff --git a/game.cpp b/game.cpp index d6572a75..5074c1dc 100644 --- a/game.cpp +++ b/game.cpp @@ -237,7 +237,7 @@ EX void teleportToLand(eLand l, bool make_it_safe) { if(l == laClearing) l = laOvergrown; if(l == laWhirlpool) l = laOcean; if(l == laCrossroads5) l = laCrossroads2; // could not fit! - if(l == laCamelot && !(tactic::on && specialland == laCamelot)) + if(l == laCamelot && !ls::single()) l = laCrossroads; firstland = l; safetyland = l; diff --git a/landgen.cpp b/landgen.cpp index 0a99c509..7d45af1d 100644 --- a/landgen.cpp +++ b/landgen.cpp @@ -2505,7 +2505,7 @@ EX void giantLandSwitch(cell *c, int d, cell *from) { case laCamelot: // generated mostly in moreBigStuff - if(tactic::on && d == 0) { + if(ls::single() && d == 0) { int r = roundTableRadius(c); if(r > 28 + 3 * items[itHolyGrail]) items[itHolyGrail]++;