From 45f14a6de311b5ebb4d8f592ccd39d44a05c7594 Mon Sep 17 00:00:00 2001 From: Marko Lindqvist Date: Thu, 30 Sep 2021 17:04:50 +0300 Subject: [PATCH 42/43] Apply square tileset setting changes to current game also if map topo is iso Reported by log65536 See osdn #42956 Signed-off-by: Marko Lindqvist --- client/tilespec.c | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/client/tilespec.c b/client/tilespec.c index 10256828ce..d29022c30d 100644 --- a/client/tilespec.c +++ b/client/tilespec.c @@ -1446,10 +1446,15 @@ void tilespec_reread_callback(struct option *poption) const char *tileset_name; enum client_states state = client_state(); - if ((state == C_S_RUNNING || state == C_S_OVER) - && option_get_cb_data(poption) != (wld.map.topology_id & (TF_ISO | TF_HEX))) { - /* Changed option was not for current topology */ - return; + if (state == C_S_RUNNING || state == C_S_OVER) { + int opt = option_get_cb_data(poption); + + /* Also iso map topology counts as 'square' tileset topology */ + if (opt != (wld.map.topology_id & (TF_ISO | TF_HEX)) + && (opt != 0 || ((wld.map.topology_id & TF_HEX) == TF_HEX))) { + /* Changed option was not for current topology */ + return; + } } tileset_name = option_str_get(poption); -- 2.33.0