From e85a9e9d6a1d98a52f9464e6c561bd548269e1a6 Mon Sep 17 00:00:00 2001 From: Sarjuuk Date: Wed, 28 Feb 2024 22:13:42 +0100 Subject: [PATCH] Setup/Zones * instances with with a entrance touple of (0, 0, 0) will no longer be displayed somewhere in Alterac (at the map 0 origin point) --- setup/tools/sqlgen/zones.func.php | 12 +++++------- setup/updates/1709154964_01.sql | 1 + 2 files changed, 6 insertions(+), 7 deletions(-) create mode 100644 setup/updates/1709154964_01.sql diff --git a/setup/tools/sqlgen/zones.func.php b/setup/tools/sqlgen/zones.func.php index c71e231f..54707b1d 100644 --- a/setup/tools/sqlgen/zones.func.php +++ b/setup/tools/sqlgen/zones.func.php @@ -115,7 +115,8 @@ SqlGen::register(new class extends SetupScript foreach ($baseData as &$bd) { - if (in_array($bd['mapBak'], [0, 1, 530, 571])) + // usually parent = -1 means no parent but some maps have this touple set to 0 + if (!$bd['parentMapId'] && !$bd['parentX'] && !$bd['parentY']) continue; if ($gPos = Game::worldPosToZonePos($bd['parentMapId'], $bd['parentY'], $bd['parentX'])) @@ -124,13 +125,10 @@ SqlGen::register(new class extends SetupScript $bd['parentMapId'] = $pos['areaId'] ?? $gPos[0]['areaId']; $bd['parentX'] = $pos['posX'] ?? $gPos[0]['posX']; $bd['parentY'] = $pos['posY'] ?? $gPos[0]['posY']; + continue; } - else - { - $bd['parentMapId'] = 0; - $bd['parentX'] = 0; - $bd['parentY'] = 0; - } + + $bd['parentMapId'] = 0; } DB::Aowow()->query('REPLACE INTO ?_zones VALUES (?a)', $baseData); diff --git a/setup/updates/1709154964_01.sql b/setup/updates/1709154964_01.sql new file mode 100644 index 00000000..a75d1bfa --- /dev/null +++ b/setup/updates/1709154964_01.sql @@ -0,0 +1 @@ +UPDATE `aowow_dbversion` SET `sql` = CONCAT(IFNULL(`sql`, ''), ' zones');