From fb5e4d25bb53fa5cde2084dc62ee72744a2f0e88 Mon Sep 17 00:00:00 2001 From: Zeno Rogue Date: Fri, 22 Sep 2023 12:50:39 +0200 Subject: [PATCH] ls:: horocyclic variant of Warped Coast --- bigstuff.cpp | 4 ++++ landgen.cpp | 4 ++++ landlock.cpp | 2 +- 3 files changed, 9 insertions(+), 1 deletion(-) diff --git a/bigstuff.cpp b/bigstuff.cpp index 64820f19..a7d4d915 100644 --- a/bigstuff.cpp +++ b/bigstuff.cpp @@ -2143,6 +2143,10 @@ EX void pick_hv_subland(cell *c, eLand l, int depth) { c->wall = getElementalWall(hrand(2) ? c->barleft : c->barright); } } + else if(l == laWarpCoast) { + int i = (depth & 8); + setland(c, i ? laWarpCoast : laWarpSea); + } else setland(c, l); } diff --git a/landgen.cpp b/landgen.cpp index 15374b4b..f5bfaab5 100644 --- a/landgen.cpp +++ b/landgen.cpp @@ -1945,6 +1945,10 @@ EX void giantLandSwitch(cell *c, int d, cell *from) { c->wall = waBoat; c->item = itCoral; } + else if(hrand(6000) < 1000 && ls::hv_structure()) { + /* somehow there were not enough boats in hv_structure... */ + forCellEx(c1, c) if(c1->land == laWarpCoast) c->wall = waBoat; + } } ONEMPTY if(c->land == laWarpCoast) { diff --git a/landlock.cpp b/landlock.cpp index 5d62f635..67db0918 100644 --- a/landlock.cpp +++ b/landlock.cpp @@ -877,7 +877,7 @@ EX land_validity_t& land_validity(eLand l) { if(l == laMirrorOld && !shmup::on) return not_implemented; } - if(ls::hv_structure() && among(l, laPrairie, laDungeon, laEndorian, laBrownian, laWarpCoast, laWarpSea, laPrincessQuest)) return not_in_hv; + if(ls::hv_structure() && among(l, laPrairie, laDungeon, laEndorian, laBrownian, laPrincessQuest)) return not_in_hv; if(ls::voronoi_structure() && among(l, laCamelot, laWhirlpool, laClearing)) return not_in_hv; if(ls::horodisk_structure() && l != laCrossroads && isCrossroads(l)) return not_in_hv;