当前位置: 首页 > news >正文

GameObject 常见类型详解 -- 按钮(BUTTON)

GAMEOBJECT_TYPE_BUTTON 是 TrinityCore 中用于创建按钮的 GameObject 类型

字段详细说明

字段索引字段名称数据类型默认值说明可选值/范围
data0startOpenenumfalse按钮的初始状态0 = 未按下, 1 = 已按下
data1openuint320按下按钮所需的锁类型ID引用 Lock.db2,0表示无需钥匙
data2autoCloseuint323000按钮自动恢复时间(毫秒)0 - 2147483647
data3linkedTrapuint320关联的陷阱ID引用 GameObjects.db2
data4noDamageImmuneenumfalse按钮是否对伤害免疫0 = 否, 1 = 是
data5GiganticAOIenumfalse是否具有巨大活动范围0 = 否, 1 = 是
data6openTextIDuint320按下按钮时显示的文本ID引用 BroadcastText.db2
data7closeTextIDuint320恢复按钮时显示的文本ID引用 BroadcastText.db2
data8requireLOSenumfalse是否需要视线0 = 否, 1 = 是
data9conditionID1uint320按钮的使用条件ID引用 PlayerCondition.db2
data10InteractRadiusOverrideuint320交互半径覆盖值(码*100)0 - 2147483647

状态控制字段

字段说明
startOpen定义按钮在游戏世界中的初始状态,按下状态的按钮会在一段时间后自动恢复(根据autoClose值)
autoClose控制按钮按下后多长时间自动恢复,0表示永不自动恢复

访问控制字段

字段说明
open定义按下按钮所需的钥匙或条件,引用 Lock.db2 表中的记录
conditionID1定义玩家使用按钮之前必须满足的条件,引用 PlayerCondition.db2 表

关联机制字段

字段说明
linkedTrap关联一个陷阱对象,当按钮被按下时会触发该陷阱

交互反馈字段

字段说明
openTextID按钮被按下时显示给玩家的文本消息ID
closeTextID按钮恢复时显示给玩家的文本消息ID

游戏机制字段

字段说明
noDamageImmune控制按钮是否可以被攻击或法术影响
requireLOS控制玩家是否需要与按钮保持视线接触才能交互
GiganticAOI扩大按钮的活动范围,使远处玩家也能检测到

性能优化字段

字段说明
InteractRadiusOverride自定义按钮的交互距离,覆盖默认值

注意事项

  • 触发机制: 按钮主要用于触发事件

  • linkedTrap关联: 通过linkedTrap可以创建复杂的触发机制,按钮按下时会激活关联的陷阱

  • 视线要求: requireLOS字段可以增加游戏的交互真实感,玩家必须直视按钮才能按下

  • 性能考虑: GiganticAOI会影响服务器性能,应谨慎使用

  • 平衡性: autoClose时间过短或过长都可能影响游戏体验

使用示例

-- 一个基本的按钮,初始未按下,3秒后自动恢复
INSERT INTO `gameobject_template` 
(entry, [type](file://c:\TrinityCore\dep\protobuf\src\google\protobuf\descriptor.h#L797-L797), displayId, [name](file://c:\TrinityCore\dep\g3dlite\include\G3D\XML.h#L166-L168), data0, data1, data2) 
VALUES (223456, 1, 2234, '基本按钮', 0, 0, 3000);
-- 一个高级按钮,需要钥匙,关联陷阱,需要视线接触
INSERT INTO `gameobject_template` 
(entry, [type](file://c:\TrinityCore\dep\protobuf\src\google\protobuf\descriptor.h#L797-L797), displayId, [name](file://c:\TrinityCore\dep\g3dlite\include\G3D\XML.h#L166-L168), data0, data1, data2, data3, data8) 
VALUES (223457, 1, 2235, '高级按钮', 0, 100, 5000, 50001, 1);
http://www.dtcms.com/a/430571.html

相关文章:

  • 【SpringAI】第四弹:深入解析 Rag 检索增强工作流程、最佳实践和调优
  • 自助网站免费国外用tornado做的网站
  • 华为业务流程架构:主干清晰、末端灵活
  • 基于any2web+deepseek实现对三角函数定义的理解
  • 建个企业网站一年需要多少钱网站网页切换怎么做的
  • 《考研408数据结构》第三章(队列)复习笔记
  • 《C++进阶之C++11》【lambda表达式 + 包装器】
  • 【C++】栈、队列、双端队列、优先级队列、仿函数
  • 潢川手机网站建设做网站的图片=gif
  • Java 大视界 -- Java 大数据在智能安防视频监控系统中的视频语义理解与智能检索进阶
  • 图片转视频
  • AI 智能体在 2025 年面临的挑战
  • 做一元夺宝网站需要什么条件网页网站建设软件
  • 网站建设与维护的实训总结wordpress 自定义注册
  • 什么是RDMA?—— 一场网络通信的范式革命
  • 一篇文章入门RabbitMQ:基本概念与Java使用
  • @ResponseStatus 注解详解
  • Linux--权限
  • 【连载3】MySQL 的 MVCC 机制剖析
  • C++封装和继承特性
  • Linux(操作系统)文件系统--对打开文件的管理
  • 【Unity笔记】Unity XR 模式下 Point Light 不生效的原因与解决方法
  • 图片设计网站推荐wordpress下载的主题怎么安装
  • 分布式存储分片核心:从哈希取模到Redis哈希槽,从哈希类到非哈希类
  • C++ 操作 Redis
  • 旅游网站开发文献综述沈阳做网站大约要多少钱
  • 精美个人网站wordpress设置网站主题
  • PyCharm保姆级详细使用手册(Python新手快速上手篇)
  • 3.springboot-容器功能-@注解
  • python开发手机网站开发今天时政新闻热点是什么