Spawn tracking: различия между версиями
Перейти к навигации
Перейти к поиску
User1 (обсуждение | вклад) Нет описания правки |
User1 (обсуждение | вклад) |
||
| (не показаны 2 промежуточные версии этого же участника) | |||
| Строка 14: | Строка 14: | ||
SPAWN_TYPE_GAMEOBJECT = 1, // TITLE Gameobject | SPAWN_TYPE_GAMEOBJECT = 1, // TITLE Gameobject | ||
SPAWN_TYPE_AREATRIGGER = 2,// TITLE AreaTrigger | SPAWN_TYPE_AREATRIGGER = 2,// TITLE AreaTrigger | ||
===== spawn_tracking ===== | ===== spawn_tracking ===== | ||
DELETE FROM `spawn_tracking` WHERE `SpawnTrackingId` IN (1019259,1019322,1019353); | DELETE FROM `spawn_tracking` WHERE `SpawnTrackingId` IN (1019259,1019322,1019353); | ||
| Строка 30: | Строка 27: | ||
Active = 1, | Active = 1, | ||
Complete = 2, | Complete = 2, | ||
===== spawn_tracking_state ===== | ===== spawn_tracking_state ===== | ||
Текущая версия от 15:11, 30 июня 2026
Для работы нужно заполнить три таблицы. Первая spawn_tracking_template. SpawnTrackingId можно найти в снифе или в таблице quest_poi в привязанном обжективе. PhaseId будет применяться после состояния, если указан.
spawn_tracking_template
DELETE FROM `spawn_tracking_template` WHERE `SpawnTrackingId` IN (1019259,1019322,1019353);
INSERT INTO `spawn_tracking_template` (`SpawnTrackingId`, `MapId`, `PhaseId`, `PhaseGroup`, `PhaseUseFlags`, `VerifiedBuild`) VALUES
(1019259, 1220, 1046, 0, 0, 63834),
(1019322, 1220, 1046, 0, 0, 63834),
(1019353, 1220, 1046, 0, 0, 63834);
Дальше состояния привязываются к гуидам и к обжективам
enum SpawnObjectType
SPAWN_TYPE_CREATURE = 0, // TITLE Creature SPAWN_TYPE_GAMEOBJECT = 1, // TITLE Gameobject SPAWN_TYPE_AREATRIGGER = 2,// TITLE AreaTrigger
spawn_tracking
DELETE FROM `spawn_tracking` WHERE `SpawnTrackingId` IN (1019259,1019322,1019353);
INSERT INTO `spawn_tracking` (`SpawnTrackingId`, `SpawnType`, `SpawnId`, `QuestObjectiveIds`) VALUES
(1019259, 1, 105691, '278523'),
(1019322, 1, 105503, '278524'),
(1019353, 1, 105566, '278525');
Дальше указывается визуал в зависимости от состояния стейта.
enum class SpawnTrackingState
None = 0, Active = 1, Complete = 2,
spawn_tracking_state
DELETE FROM `spawn_tracking_state` WHERE `SpawnType` = 1 AND `SpawnId` IN (105691,105503,105566);
INSERT INTO `spawn_tracking_state` (`SpawnType`, `SpawnId`, `State`, `Visible`, `StateSpellVisualId`, `StateAnimId`, `StateAnimKitId`, `StateWorldEffects`) VALUES
(1, 105691, 0, 0, 0, 0, 0, '2099'),
(1, 105691, 1, 1, 0, 0, 0, '2099'),
(1, 105691, 2, 0, 0, 0, 3761, NULL),
(1, 105503, 0, 0, 0, 0, 0, '2099'),
(1, 105503, 1, 1, 0, 0, 0, '2099'),
(1, 105503, 2, 0, 0, 0, 3761, NULL),
(1, 105566, 0, 0, 0, 0, 0, '2099'),
(1, 105566, 1, 1, 0, 0, 0, '2099'),
(1, 105566, 2, 0, 0, 0, 3761, NULL);