迷你世界UGC3.0脚本触发器事件管理(特效)

发布时间:2026/5/19 1:09:02

迷你世界UGC3.0脚本触发器事件管理(特效) 迷你世界UGC3.0脚本WikiMenuOn this pageSidebar Navigation快速入门欢迎MOD、组件介绍什么是Lua编程组件介绍组件说明组件互相操作组件函数组件属性事件触发器事件管理组件事件管理函数库服务模块世界模块管理接口 World对象模块管理接口 GameObject角色模块管理接口 Actor玩家模块管理接口 Player生物模块管理接口 Monster方块模块管理接口 Block道具模块管理接口 Item背包模块管理接口 Backpack界面模块管理接口 CustomUI图文信息模块管理接口 Graphics区域模块管理接口 Area容器模块管理接口 WorldContainer资源模块管理接口 Mod计时器模块管理接口 Timer状态模块管理接口 Buff消息模块管理接口 Chat普通变量数据管理接口 Data数组变量数据管理接口 Array二维表变量数据管理接口 TableKV表变量数据管理接口 Map全局函数全局函数枚举枚举库脚本常见问题开发者常见问题进阶指南全局函数触发器脚本交互对象介绍KV排行榜介绍二维表介绍道具实例更新日志更新日志触发器事件管理​添加监听函数调用方式参考 : 组件函数注意事件中参数如果是nil,则可以用 CurEventParam 来替代获取,字段名如下CurEventParam.EventTargetPos 事件中的位置CurEventParam.EventBuff 事件中的状态效果CurEventParam.EventTargetEffect 事件中的特效CurEventParam.EventTargetBlock 事件中的方块类型CurEventParam.EventShortCutIdx 事件中的快捷栏CurEventParam.EquipItemPos 事件中的装备栏CurEventParam.EventElementID 事件中的元件CurEventParam.EventUIID 事件中的界面CurEventParam.EventString 事件中的字符串CurEventParam.SelectUIID 当前编辑的界面CurEventParam.EventAreaid 事件中的区域CurEventParam.Hurtlv 事件中伤害值CurEventParam.TriggerByPlayer 触发事件的玩家CurEventParam.EventTargetPlayer 事件中的目标玩家CurEventParam.TriggerByCreature 触发事件的生物CurEventParam.EventTargetCreature 事件中的目标生物CurEventParam.Actorid 触发事件的生物类型CurEventParam.targetactorid 事件中的目标生物类型CurEventParam.EventTargetItemID 事件中的道具类型CurEventParam.TriggerByMissile 触发事件的投射物CurEventParam.EventTargetDropItem 事件中的掉落物CurEventParam.Itemnum 事件中的道具数量事件参数添加参数过滤​部分高频率事件可以添加过滤参数用以提高执行效率特别是云服房间添加过滤之后将提高帧率。 如果第三个参数传nil或者,则不会进行过滤self:AddTriggerEvent(TriggerEvent.PlayerAreaIn, eventfunc,areaid) -- 自主修改 eventfunc 和 areaidself:AddTriggerEvent(TriggerEvent.PlayerAreaOut, eventfunc,areaid) -- 自主修改 eventfunc 和 areaidself:AddTriggerEvent(TriggerEvent.MobAreaIn, eventfunc,areaid) -- 自主修改 eventfunc 和 areaidself:AddTriggerEvent(TriggerEvent.MobAreaOut, eventfunc,areaid) -- 自主修改 eventfunc 和 areaidself:AddTriggerEvent(TriggerEvent.MissileAreaIn, eventfunc,areaid) -- 自主修改 eventfunc 和 areaidself:AddTriggerEvent(TriggerEvent.MissileAreaOut, eventfunc,areaid) -- 自主修改 eventfunc 和 areaidself:AddTriggerEvent(TriggerEvent.DropItemAreaIn, eventfunc,areaid) -- 自主修改 eventfunc 和 areaidself:AddTriggerEvent(TriggerEvent.DropItemAreaIn, eventfunc,areaid) -- 自主修改 eventfunc 和 areaidself:AddTriggerEvent(TriggerEvent.DropItemAreaOut, eventfunc,areaid) -- 自主修改 eventfunc 和 areaidself:AddTriggerEvent(TriggerEvent.EntityAreaIn, eventfunc,areaid) -- 自主修改 eventfunc 和 areaidself:AddTriggerEvent(TriggerEvent.EntityAreaOut, eventfunc,areaid) -- 自主修改 eventfunc 和 areaidself:AddTriggerEvent(TriggerEvent.EntityAreaOut, eventfunc,areaid) -- 自主修改 eventfunc 和 areaidself:AddTriggerEvent(TriggerEvent.AreaObjAreaIn, eventfunc,areaid) -- 自主修改 eventfunc 和 areaidself:AddTriggerEvent(TriggerEvent.AreaObjAreaOut, eventfunc,areaid) -- 自主修改 eventfunc 和 areaidself:AddTriggerEvent(TriggerEvent.MobChangeAttr, eventfunc, RoleAttr.CurHp) -- 自主修改 eventfunc 和 过滤枚举self:AddTriggerEvent(TriggerEvent.PlayerChangeAttr, eventfunc, RoleAttr.CurHp) -- 自主修改 eventfunc 和 过滤枚举self:AddTriggerEvent(TriggerEvent.MinitimerChange, eventfunc, timerid) -- 自主修改 eventfunc 和 计时器IDself:AddTriggerEvent(TriggerEvent.PlayerGunAction, eventfunc, GunState.Entry,GunAction.Equip) -- 自主修改 eventfunc 和 过滤枚举self:AddTriggerEvent(TriggerEvent.MobAttrStateChange, eventfunc, Ability.Walking) -- 自主修改 eventfunc 和 过滤枚举self:AddTriggerEvent(TriggerEvent.PlayerAttrStateChange, eventfunc, Ability.Walking) -- 自主修改 eventfunc 和 过滤枚举self:AddTriggerEvent(TriggerEvent.PlayerMotionStateChange, eventfunc, RoleMotion.Walk) -- 自主修改 eventfunc 和 过滤枚举self:AddTriggerEvent(TriggerEvent.PlayerMotionStateChangeEnd, eventfunc, RoleMotion.Walk) -- 自主修改 eventfunc 和 过滤枚举self:AddTriggerEvent(TriggerEvent.PlayerInputKeyDown, eventfunc, KeyCode.Q) -- 自主修改 eventfunc 和 过滤枚举self:AddTriggerEvent(TriggerEvent.PlayerInputKeyOnPress, eventfunc, KeyCode.Q) -- 自主修改 eventfunc 和 过滤枚举self:AddTriggerEvent(TriggerEvent.PlayerInputKeyUp, eventfunc, KeyCode.Q) -- 自主修改 eventfunc 和 过滤枚举self:AddTriggerEvent(TriggerEvent.PlayerInputKeyClick, eventfunc, KeyCode.Q) -- 自主修改 eventfunc 和 过滤枚举self:AddTriggerEvent(TriggerEvent.UIShow, eventfunc, uiid) -- 自主修改 eventfunc 和 uiid(界面ID)self:AddTriggerEvent(TriggerEvent.UIHide, eventfunc, uiid) -- 自主修改 eventfunc 和 uiid(界面ID)self:AddTriggerEvent(TriggerEvent.UIButtonClick, eventfunc, elementid) -- 自主修改 eventfunc 和 elementid(元件ID)self:AddTriggerEvent(TriggerEvent.UIButtonTouchBegin, eventfunc, elementid) -- 自主修改 eventfunc 和 elementid(元件ID)self:AddTriggerEvent(TriggerEvent.UIButtonTouchEnd, eventfunc, elementid) -- 自主修改 eventfunc 和 elementid(元件ID)self:AddTriggerEvent(TriggerEvent.UIButtonLongPress, eventfunc, elementid) -- 自主修改 eventfunc 和 elementid(元件ID)self:AddTriggerEvent(TriggerEvent.UILostFocus, eventfunc, elementid) -- 自主修改 eventfunc 和 elementid(元件ID)self:AddTriggerEvent(TriggerEvent.UISpineComplete, eventfunc, elementid) -- 自主修改 eventfunc 和 elementid(元件ID)self:AddTriggerEvent(TriggerEvent.UIGLoader3DTouchBegin, eventfunc, elementid) -- 自主修改 eventfunc 和 elementid(元件ID)self:AddTriggerEvent(TriggerEvent.UIGLoader3DTouchEnd, eventfunc, elementid) -- 自主修改 eventfunc 和 elementid(元件ID)self:AddTriggerEvent(TriggerEvent.UIGLoader3DTouchClick, eventfunc, elementid) -- 自主修改 eventfunc 和 elementid(元件ID)self:AddTriggerEvent(TriggerEvent.UIGLoader3DLongPress, eventfunc, elementid) -- 自主修改 eventfunc 和 elementid(元件ID)self:AddTriggerEvent(TriggerEvent.UISpineComplete, eventfunc, elementid) -- 自主修改 eventfunc 和 elementid(元件ID)self:AddTriggerEvent(TriggerEvent.UIScrollPaneTouchBegin, eventfunc, elementid) -- 自主修改 eventfunc 和 elementid(元件ID)self:AddTriggerEvent(TriggerEvent.UIScrollPaneTouchEnd, eventfunc, elementid) -- 自主修改 eventfunc 和 elementid(元件ID)self:AddTriggerEvent(TriggerEvent.UIScrollPaneScrollEnd, eventfunc, elementid) -- 自主修改 eventfunc 和 elementid(元件ID)简单示例:--这个脚本的作用是当玩家点击草块时把草块变成钛合金-- 官方定义的函数不能修改变动local Script {}-- 组件启动时调用function Script:OnStart()-- 玩家点击方块事件self:AddTriggerEvent(TriggerEvent.PlayerClickBlock, self.Player_Click)--AddTriggerEvent(TriggerEvent.PlayerClickBlock是官方提供的事件监听可以在wiki中查看更多的事件--self.Player_Click 是自定义的一个函数名可以改成其他你喜欢的end-- 定义事件触发时的动作function Script:Player_Click(event)local param event.CurEventParam-- 玩家点击方块时判断点的是否是草块if event.blockid 100 thenlocal success Block:ReplaceBlock(452, event.x, event.y, event.z)-- Block:ReplaceBlock是官方提供的放置方块方法可以在wiki中查看更多的方法-- local success 用来接收Block:ReplaceBlock运行后的结果可以用来做是否成功放置的判断endend-- 官方定义的函数不能修改变动return Script特效​序号 事件名 事件名描述0 TriggerEvent.ParticlePosOnCreate 当 特效 创建在任意位置1 TriggerEvent.ParticleObjectOnCreate 当 特效 创建在任意对象2 TriggerEvent.ParticlePlayerOnCreate 当 特效 创建在任意玩家3 TriggerEvent.ParticleMobOnCreate 当 特效 创建在任意生物4 TriggerEvent.ParticleProjectileOnCreate 当 特效 创建在任意投掷物5 TriggerEvent.ParticleItemOnCreate 当 特效 创建在任意掉落物6 TriggerEvent.ParticleEntityOnCreate 当 特效 创建在任意实体当 特效 创建在任意位置​事件名 TriggerEvent.ParticlePosOnCreate事件传参参数名 说明eventobjid 触发事件的对象x,y,z 事件中的位置effectid 事件中的特效类型当 特效 创建在任意对象​事件名 TriggerEvent.ParticleObjectOnCreate事件传参参数名 说明eventobjid 触发事件的对象x,y,z 事件中的位置effectid 事件中的特效类型当 特效 创建在任意玩家​事件名 TriggerEvent.ParticlePlayerOnCreate事件传参参数名 说明eventobjid 触发事件的对象x,y,z 事件中的位置effectid 事件中的特效类型当 特效 创建在任意生物​事件名 TriggerEvent.ParticleMobOnCreate事件传参参数名 说明eventobjid 触发事件的对象x,y,z 事件中的位置effectid 事件中的特效类型当 特效 创建在任意投掷物​事件名 TriggerEvent.ParticleProjectileOnCreate事件传参参数名 说明eventobjid 触发事件的对象x,y,z 事件中的位置effectid 事件中的特效类型当 特效 创建在任意掉落物​事件名 TriggerEvent.ParticleItemOnCreate事件传参参数名 说明eventobjid 触发事件的对象x,y,z 事件中的位置effectid 事件中的特效类型当 特效 创建在任意实体​事件名 TriggerEvent.ParticleEntityOnCreate事件传参参数名 说明eventobjid 触发事件的对象x,y,z 事件中的位置effectid 事件中的特效类型

相关新闻