diff --git a/menus.cpp b/menus.cpp index f48bf649..bde4367e 100644 --- a/menus.cpp +++ b/menus.cpp @@ -702,16 +702,19 @@ EX void mode_higlights() { dialog::display(); } -EX void menuitem_land_structure(char key) { - eLandStructure ls = +EX bool default_land_structure() { + return bounded ? lsSingle : (tactic::on || princess::challenge) ? lsSingle : yendor::on ? yendor::get_land_structure() : specialland == laCanvas ? lsSingle : nice_walls_available() ? lsNiceWalls : lsNoWalls; + } - if(ls == land_structure && !ineligible_starting_land) +EX void menuitem_land_structure(char key) { + + if(default_land_structure() == land_structure && !ineligible_starting_land) dialog::addBoolItem(XLAT("land structure"), false, key); else dialog::addSelItem(XLAT("land structure"), land_structure_name(true), key);