mirror of
https://github.com/Sarjuuk/aowow.git
synced 2025-11-29 15:58:16 +08:00
* restructure setup to allow for self contained setup steps to self register (just the sql for now) * should ease adding new scripts in future
42 lines
1.1 KiB
PHP
42 lines
1.1 KiB
PHP
<?php
|
|
|
|
if (!defined('AOWOW_REVISION'))
|
|
die('illegal access');
|
|
|
|
if (!CLI)
|
|
die('not in cli mode');
|
|
|
|
|
|
SqlGen::register(new class extends SetupScript
|
|
{
|
|
protected $command = 'icons';
|
|
|
|
protected $dbcSourceFiles = ['spellicon', 'itemdisplayinfo', 'creaturefamily'];
|
|
|
|
public function generate(array $ids = []) : bool
|
|
{
|
|
DB::Aowow()->query('TRUNCATE ?_icons');
|
|
DB::Aowow()->query('ALTER TABLE ?_icons AUTO_INCREMENT = 1');
|
|
|
|
$baseQuery = '
|
|
INSERT INTO ?_icons (`name`) SELECT x FROM
|
|
(
|
|
(SELECT LOWER(SUBSTRING_INDEX(iconPath, "\\\\", -1)) AS x FROM dbc_spellicon WHERE iconPath LIKE "%icons%")
|
|
UNION
|
|
(SELECT LOWER(inventoryIcon1) AS x FROM dbc_itemdisplayinfo WHERE inventoryIcon1 <> "")
|
|
UNION
|
|
(SELECT LOWER(SUBSTRING_INDEX(iconString, "\\\\", -1)) AS x FROM dbc_creaturefamily WHERE iconString LIKE "%icons%")
|
|
) y
|
|
GROUP BY
|
|
x
|
|
ORDER BY
|
|
x ASC';
|
|
|
|
DB::Aowow()->query($baseQuery);
|
|
|
|
return true;
|
|
}
|
|
});
|
|
|
|
?>
|