实现方法
- 通过特定法术技能,配合 spell_area 实现
- 技能应满足以下要求
- Aura Id 261 (SPELL_AURA_PHASE)
- Effect: Id 6 (SPELL_EFFECT_APPLY_AURA)
- miscB = 相位值,取值参见 Phase.db2
- 通过设置 phase_name | phase_area,配合 conditions 实现
举例
-- Example 1
INSERT INTO `world`.`spell_area` (`spell`, `area`, `quest_start`, `quest_end`, `aura_spell`, `racemask`, `gender`, `flags`, `quest_start_status`, `quest_end_status`) VALUES
(89295, 286, 28209, 28237, 0, 0, 2, 3, 64, 9),
(89296, 286, 28209, 28237, 0, 0, 2, 3, 64, 9);
-- Example 2
DELETE FROM `world`.`phase_name` WHERE `ID` IN (332,333);
INSERT INTO `world`.`phase_name` (`ID`, `Name`) VALUES
(332, 'A Blight Upon the Land'),
(333, 'The Sludge Fields Reclaimed');
INSERT INTO `world`.`phase_area` (`AreaId`, `PhaseId`, `Comment`) VALUES
(286, 332, 'A Blight Upon the Land'),
(286, 333, 'The Sludge Fields Reclaimed');
INSERT INTO `world`.`conditions` (`SourceTypeOrReferenceId`, `SourceGroup`, `SourceEntry`, `SourceId`, `ElseGroup`, `ConditionTypeOrReference`, `ConditionTarget`, `ConditionValue1`, `ConditionValue2`, `ConditionValue3`, `ConditionStringValue1`, `NegativeCondition`, `ErrorType`, `ErrorTextId`, `ScriptName`, `Comment`) VALUES
(26, 332, 286, 0, 0, 47, 0, 28235, 64, 0, '', 0, 0, 0, '', 'On Quest State - Area Phase Available'),
(26, 332, 286, 0, 0, 47, 0, 28237, 2 | 64, 0, '', 1, 0, 0, '', 'On Quest State - Area Phase Unavailable'),
(26, 333, 286, 0, 0, 47, 0, 28237, 2 | 64, 0, '', 0, 0, 0, '', 'On Quest State - Area Phase Available');
参考阅读
相位技术介绍
conditions
spell_area
phase_name | phase_area