字段介绍
- 此表主要通过当玩家进入(离开)特定区域时,给玩家加上(移除)特定光环技能,可用于实现增加(移除)BUFF、相位切换 等特定功能
spell_area
- spell
- 施放在玩家身上的法术光环,参考 Spell.dbc | SpellName.db2
- 同一个法术技能(spell),一个区域(area)只允许写一条记录,否则报错
- area
- 触发的区域,参考 AreaTable.dbc | AreaTable.db2
- quest_start
- 玩家获得此法术光环须拥有的任务编号,参考 quest_template.id 字段
- quest_end
- 玩家保持此法术光环须拥有的任务编号,参考 quest_template.id 字段
- 同一条记录内,quest_start 和 quest_end 值不应相同,否则无效
- aura_spell
- 光环法术ID参考 Spell.dbc | SpellName.db2,该值具有以下效果
- > 0,如果玩家没有 aura_spell,则该法术将不会被激活
- = 0,忽略检查玩家已有的 aura_spell
- < 0,如果玩家拥有值为 -aura_spell 的 aura,则该法术将不会被激活
- 光环法术ID参考 Spell.dbc | SpellName.db2,该值具有以下效果
- racemask
- 种族掩码,取值参见:任务修复思路(附表)
- gender
- 性别
- 0 - 男
- 1 - 女
- 2 - 任意
- 性别
-
flags(master)
- 1:SPELL_AREA_FLAG_AUTOCAST - 当角色进入该区域时,该法术光环是否会自动生效。也会阻止用户删除它
- 2:SPELL_AREA_FLAG_AUTOREMOVE - 当角色在区域内、任务状态更新时,该法术光环是否会自动移除
- autocast(335)
- 玩家进入区域时自动释放,也可以防止玩家移除它
- 0 - 不自动施放
- 1 - 自动施放
- 玩家进入区域时自动释放,也可以防止玩家移除它
- quest_start_status | quest_end_status
- 定义 获得法术光环 | 保持法术光环 所需的任务状态
- 1 - 未接到任务
- 8 - 已接到任务,未完成任务目标
- 2 - 已完成任务,但还未提交
- 64 - 已提交任务
- 32 - 任务目标失败
- 定义 获得法术光环 | 保持法术光环 所需的任务状态
举例
INSERT INTO `world`.`spell_area` (`spell`, `area`, `quest_start`, `quest_end`, `aura_spell`, `racemask`, `gender`, `flags`, `quest_start_status`, `quest_end_status`)
-- 在角色已提交Quest(13070)、未取得 | 已完成 | 已接到 Quest(13086)前,在area(4501、4504)范围内自动获取 SpellID 为 57569 的法术光环
VALUES (57569, 4501, 13070, 13086, 0, 0, 2, 3, 64, 1 | 2 | 8),
VALUES (57569, 4504, 13070, 13086, 0, 0, 2, 3, 64, 1 | 2 | 8),
-- 在角色接到 Quest(13947)时,在area(4691)范围内自动获取 SpellID 为 68243 的法术光环
(68243, 4691, 13947, 0, 0, 0, 2, 3, 8, 0),
(68243, 4691, 0, 13947, 0, 0, 2, 3, 0, 8);