当你试图到达达拉然的达拉然井时,你会被传送到下水道。
它正在使用这个游戏对象:Doodad_Dalaran_Well_01
(id = 193904
)
它是在哪里编写的?如何?
我在表中smart_scripts
没有找到任何东西,在核心中也没有找到关于这个特定 id 的任何东西,所以我很好奇,因为这种类型的传送真的比点击游戏对象更好
当你试图到达达拉然的达拉然井时,你会被传送到下水道。
它正在使用这个游戏对象:Doodad_Dalaran_Well_01
(id = 193904
)
它是在哪里编写的?如何?
我在表中smart_scripts
没有找到任何东西,在核心中也没有找到关于这个特定 id 的任何东西,所以我很好奇,因为这种类型的传送真的比点击游戏对象更好
这个游戏对象是一个独特的案例,因为它的工作方式与实例传送一样。如果您检查该gameobject_template
表,您将看到它有几Data
列具有基于游戏对象的不同值type
。您所指的游戏对象也是 Well It 自身,但井内的门户游戏对象为玩家提供了一个虚拟咒语,告诉核心玩家已被传送(咒语 ID 61652)。对于达拉然井的具体情况,它的类型是 30,这意味着,如文档所述,GAMEOBJECT_TYPE_AURAGENERATOR
. 一旦玩家在范围内,就会对他施放一个虚拟光环,以通知核心该区域触发器已被激活(当玩家被虚拟咒语击中时,您可以做一些事情)。
这里的诀窍是兔子,但不是兔子本身,因为它主要用于确定区域触发器。如果你使用命令 .go gobject 61148 你可以检查他,他在井里。
Areatriggers 是一个 DBC 对象,它实际上存在于我们的数据库中world.areatrigger
。您可以在此处查看列。当玩家进入区域触发器上指定的半径框时,核心中会发生另一件事,即world.areatrigger_teleport
.
如果您运行以下查询,您将能够检查触发器将玩家传送到的位置。
SELECT * FROM areatrigger_teleport WHERE `Name` LIKE '%Dalaran Well teleporter%';