From d2564d07ee503b309cf20796e897127a51e40c66 Mon Sep 17 00:00:00 2001 From: Zeno Rogue Date: Fri, 17 Apr 2026 18:23:59 +0200 Subject: [PATCH] zebra patterns: binary-tiling (parity), oox3 (random) --- landgen.cpp | 8 +++++++- landlock.cpp | 4 ++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/landgen.cpp b/landgen.cpp index 9f11f297..7bdb57b2 100644 --- a/landgen.cpp +++ b/landgen.cpp @@ -229,9 +229,15 @@ EX bool is_zebra_trapdoor(cell *c) { return (y&1); } #if CAP_ARCM - else + else if(arcm::in()) return hrand(2); #endif + else + if(S3 >= OINF) return hrand(2); + #if CAP_BT + else + if(bt::in()) return c->master->distance & 1; + #endif else return (randomPatternsMode ? RANDPAT : (zebra40(c)&2)); } diff --git a/landlock.cpp b/landlock.cpp index 7d156e8c..92be66de 100644 --- a/landlock.cpp +++ b/landlock.cpp @@ -1550,6 +1550,10 @@ EX land_validity_t& land_validity(eLand l) { if(l == laCrossroads4 && quotient) return some0; + if(l == laZebra && bt::in()) return pattern_defined; + + if(l == laZebra && S3 >= OINF) return pattern_not_implemented_random; + if(among(l, laZebra, laFrog) && quotient && geometry != gZebraQuotient && !randomPatternsMode) return pattern_incompatibility;