mirror of
https://github.com/Sarjuuk/aowow.git
synced 2025-11-29 15:58:16 +08:00
Zones/Misc
* hide some more unused zone * link zones Plaguelands: Scarlet Enclave and Onyxia's Lair to correct map * fixed wotlk raids all being heroic * link icecrown citadel sub maps to master and hide sub maps
This commit is contained in:
@@ -103,6 +103,8 @@ class ZonesPage extends GenericPage
|
|||||||
?_taxinodes tn2
|
?_taxinodes tn2
|
||||||
WHERE tn1.Id = tp.endNodeId AND
|
WHERE tn1.Id = tp.endNodeId AND
|
||||||
tn2.Id = tp.startNodeId AND
|
tn2.Id = tp.startNodeId AND
|
||||||
|
tn1.type <> 0 AND
|
||||||
|
tn2.type <> 0 AND
|
||||||
(tp.startNodeId IN (?a) OR tp.EndNodeId IN (?a))
|
(tp.startNodeId IN (?a) OR tp.EndNodeId IN (?a))
|
||||||
', array_keys($nodes), array_keys($nodes));
|
', array_keys($nodes), array_keys($nodes));
|
||||||
|
|
||||||
|
|||||||
@@ -26,10 +26,22 @@ SqlGen::register(new class extends SetupScript
|
|||||||
2597 => ['maxPlayer' => 40], // is 5 in battlemasterlist ... dafuq?
|
2597 => ['maxPlayer' => 40], // is 5 in battlemasterlist ... dafuq?
|
||||||
4710 => ['maxPlayer' => 40],
|
4710 => ['maxPlayer' => 40],
|
||||||
3456 => ['parentAreaId' => 65, 'parentX' => 87.3, 'parentY' => 51.1], // has no coordinates set in map.dbc
|
3456 => ['parentAreaId' => 65, 'parentX' => 87.3, 'parentY' => 51.1], // has no coordinates set in map.dbc
|
||||||
|
// individual Tempest Keep ships
|
||||||
3849 => ['parentAreaId' => 3523, 'parentX' => 70.5, 'parentY' => 69.6],
|
3849 => ['parentAreaId' => 3523, 'parentX' => 70.5, 'parentY' => 69.6],
|
||||||
3847 => ['parentAreaId' => 3523, 'parentX' => 71.7, 'parentY' => 55.1],
|
3847 => ['parentAreaId' => 3523, 'parentX' => 71.7, 'parentY' => 55.1],
|
||||||
3848 => ['parentAreaId' => 3523, 'parentX' => 74.3, 'parentY' => 57.8],
|
3848 => ['parentAreaId' => 3523, 'parentX' => 74.3, 'parentY' => 57.8],
|
||||||
3845 => ['parentAreaId' => 3523, 'parentX' => 73.5, 'parentY' => 63.7]
|
3845 => ['parentAreaId' => 3523, 'parentX' => 73.5, 'parentY' => 63.7],
|
||||||
|
// individual Icecrown Citadel wings
|
||||||
|
4893 => ['parentAreaId' => 4812, 'cuFlags' => CUSTOM_EXCLUDE_FOR_LISTVIEW],
|
||||||
|
4894 => ['parentAreaId' => 4812, 'cuFlags' => CUSTOM_EXCLUDE_FOR_LISTVIEW],
|
||||||
|
4895 => ['parentAreaId' => 4812, 'cuFlags' => CUSTOM_EXCLUDE_FOR_LISTVIEW],
|
||||||
|
4896 => ['parentAreaId' => 4812, 'cuFlags' => CUSTOM_EXCLUDE_FOR_LISTVIEW],
|
||||||
|
4897 => ['parentAreaId' => 4812, 'cuFlags' => CUSTOM_EXCLUDE_FOR_LISTVIEW],
|
||||||
|
// uncaught unused zones
|
||||||
|
207 => ['cuFlags' => CUSTOM_EXCLUDE_FOR_LISTVIEW],
|
||||||
|
208 => ['cuFlags' => CUSTOM_EXCLUDE_FOR_LISTVIEW],
|
||||||
|
616 => ['cuFlags' => CUSTOM_EXCLUDE_FOR_LISTVIEW],
|
||||||
|
1417 => ['cuFlags' => CUSTOM_EXCLUDE_FOR_LISTVIEW]
|
||||||
);
|
);
|
||||||
|
|
||||||
public function generate(array $ids = []) : bool
|
public function generate(array $ids = []) : bool
|
||||||
@@ -39,16 +51,17 @@ SqlGen::register(new class extends SetupScript
|
|||||||
REPLACE INTO ?_zones
|
REPLACE INTO ?_zones
|
||||||
SELECT
|
SELECT
|
||||||
a.id,
|
a.id,
|
||||||
IFNULL(wmt.targetMapId, a.mapId), -- map
|
IFNULL(wmt.targetMapId, m.id), -- map
|
||||||
a.mapId, -- mapBak
|
m.id, -- mapBak
|
||||||
a.areaTable, -- parentArea
|
a.areaTable, -- parentArea
|
||||||
IFNULL(wmt.targetMapId, -- g_zone_categories
|
IFNULL(wmt.targetMapId, -- g_zone_categories
|
||||||
IF(m.areaType = 1, 2,
|
IF(m.areaType = 1, 2,
|
||||||
IF(m.areaType = 2, 3,
|
IF(m.areaType = 2, 3,
|
||||||
IF(m.areaType = 4, 9,
|
IF(m.areaType = 4, 9,
|
||||||
IF(m.isBG = 1, 6,
|
IF(m.isBG = 1, 6,
|
||||||
IF(a.mapId = 571, 10,
|
IF(m.id = 609, 1,
|
||||||
IF(a.mapId = 530, 8, a.mapId))))))),
|
IF(m.id = 571, 10,
|
||||||
|
IF(m.id = 530, 8, m.id)))))))),
|
||||||
a.flags,
|
a.flags,
|
||||||
IF(areaTable <> 0 OR -- cuFlags
|
IF(areaTable <> 0 OR -- cuFlags
|
||||||
(wma.id IS NULL AND pa.areaId IS NULL AND (flags & 0x11000) = 0), ?d, 0),
|
(wma.id IS NULL AND pa.areaId IS NULL AND (flags & 0x11000) = 0), ?d, 0),
|
||||||
@@ -95,10 +108,10 @@ SqlGen::register(new class extends SetupScript
|
|||||||
FROM
|
FROM
|
||||||
dbc_areatable a
|
dbc_areatable a
|
||||||
JOIN
|
JOIN
|
||||||
dbc_map m ON a.mapId = m.id
|
dbc_map m ON m.id = IF(a.id = 2159, 249, a.mapId) -- Zone: Onyxias Lair is linked to the wrong map
|
||||||
LEFT JOIN (
|
LEFT JOIN (
|
||||||
SELECT mapId, BIT_OR(1 << difficulty) AS modeMask, MIN(nPlayer) AS minPl, MAX(nPlayer) AS maxPl FROM dbc_mapdifficulty GROUP BY mapId
|
SELECT mapId, BIT_OR(1 << difficulty) AS modeMask, MIN(nPlayer) AS minPl, MAX(nPlayer) AS maxPl FROM dbc_mapdifficulty GROUP BY mapId
|
||||||
) md ON md.mapId = a.mapId
|
) md ON md.mapId = m.id
|
||||||
LEFT JOIN
|
LEFT JOIN
|
||||||
dbc_lfgdungeons lfgOpen ON a.mapId IN (0, 1, 530, 571) AND a.name_loc0 LIKE CONCAT("%", lfgOpen.name_loc0) AND lfgOpen.type = 4
|
dbc_lfgdungeons lfgOpen ON a.mapId IN (0, 1, 530, 571) AND a.name_loc0 LIKE CONCAT("%", lfgOpen.name_loc0) AND lfgOpen.type = 4
|
||||||
LEFT JOIN (
|
LEFT JOIN (
|
||||||
@@ -134,7 +147,7 @@ SqlGen::register(new class extends SetupScript
|
|||||||
groupId <> 11
|
groupId <> 11
|
||||||
GROUP BY
|
GROUP BY
|
||||||
mapId
|
mapId
|
||||||
) lfgIni ON lfgIni.mapId = a.mapId
|
) lfgIni ON lfgIni.mapId = m.id
|
||||||
LEFT JOIN
|
LEFT JOIN
|
||||||
dbc_battlemasterlist bm ON bm.mapId = a.mapId AND bm.moreMapId < 0
|
dbc_battlemasterlist bm ON bm.mapId = a.mapId AND bm.moreMapId < 0
|
||||||
LEFT JOIN
|
LEFT JOIN
|
||||||
@@ -171,12 +184,14 @@ SqlGen::register(new class extends SetupScript
|
|||||||
mapId
|
mapId
|
||||||
');
|
');
|
||||||
|
|
||||||
|
$heroics = DB::Aowow()->selectCol('SELECT DISTINCT mapId FROM aowow_zones WHERE type IN (5, 8)');
|
||||||
|
|
||||||
foreach ($zoneReq as $mapId => $req)
|
foreach ($zoneReq as $mapId => $req)
|
||||||
{
|
{
|
||||||
$update = ['levelReq' => $req['reqLevel']];
|
$update = ['levelReq' => $req['reqLevel']];
|
||||||
$aN = $aH = [];
|
$aN = $aH = [];
|
||||||
|
|
||||||
if ($req['heroicLevel'])
|
if ($req['heroicLevel'] && in_array($mapId, $heroics))
|
||||||
$update['levelHeroic'] = $req['heroicLevel'];
|
$update['levelHeroic'] = $req['heroicLevel'];
|
||||||
|
|
||||||
if ($req['reqItemLevelN'])
|
if ($req['reqItemLevelN'])
|
||||||
|
|||||||
1
setup/updates/1587314471_01.sql
Normal file
1
setup/updates/1587314471_01.sql
Normal file
@@ -0,0 +1 @@
|
|||||||
|
UPDATE aowow_dbversion SET `sql` = CONCAT(IFNULL(`sql`, ''), ' zones');
|
||||||
Reference in New Issue
Block a user