-- 基础信息 local base_info = { group_id = 111101145 } -- Trigger变量 local defs = { gadget_temple = 145001, gadget_chest = 145002, group_ID = 111101145 } --================================================================ -- -- 配置 -- --================================================================ -- 怪物 monsters = { } -- NPC npcs = { } -- 装置 gadgets = { { config_id = 145001, gadget_id = 70900383, pos = { x = 2933.192, y = 272.349, z = -1254.825 }, rot = { x = 0.000, y = 288.011, z = 0.000 }, level = 32, isOneoff = true, persistent = true, interact_id = 42 }, { config_id = 145002, gadget_id = 70211131, pos = { x = 2933.171, y = 273.114, z = -1254.854 }, rot = { x = 0.000, y = 288.472, z = 0.000 }, level = 26, drop_tag = "灵龛蒙德", state = GadgetState.ChestLocked, isOneoff = true, persistent = true } } -- 区域 regions = { } -- 触发器 triggers = { { config_id = 1145003, name = "GADGET_STATE_CHANGE_145003", event = EventType.EVENT_GADGET_STATE_CHANGE, source = "", condition = "condition_EVENT_GADGET_STATE_CHANGE_145003", action = "action_EVENT_GADGET_STATE_CHANGE_145003" }, { config_id = 1145004, name = "GADGET_CREATE_145004", event = EventType.EVENT_GADGET_CREATE, source = "", condition = "condition_EVENT_GADGET_CREATE_145004", action = "", trigger_count = 0 }, { config_id = 1145005, name = "ANY_GADGET_DIE_145005", event = EventType.EVENT_ANY_GADGET_DIE, source = "", condition = "condition_EVENT_ANY_GADGET_DIE_145005", action = "", trigger_count = 0 }, { config_id = 1145006, name = "GADGET_STATE_CHANGE_145006", event = EventType.EVENT_GADGET_STATE_CHANGE, source = "", condition = "condition_EVENT_GADGET_STATE_CHANGE_145006", action = "", trigger_count = 0 }, { config_id = 1145007, name = "GROUP_LOAD_145007", event = EventType.EVENT_GROUP_LOAD, source = "", condition = "", action = "action_EVENT_GROUP_LOAD_145007", trigger_count = 0 } } -- 变量 variables = { } --================================================================ -- -- 初始化配置 -- --================================================================ -- 初始化时创建 init_config = { suite = 1, end_suite = 0, rand_suite = false } --================================================================ -- -- 小组配置 -- --================================================================ suites = { { -- suite_id = 1, -- description = , monsters = { }, gadgets = { 145001, 145002 }, regions = { }, triggers = { "GADGET_STATE_CHANGE_145003", "GADGET_CREATE_145004", "ANY_GADGET_DIE_145005", "GADGET_STATE_CHANGE_145006", "GROUP_LOAD_145007" }, rand_weight = 100 } } --================================================================ -- -- 触发器 -- --================================================================ -- 触发条件 function condition_EVENT_GADGET_STATE_CHANGE_145003(context, evt) if 145001 ~= evt.param2 or GadgetState.GearStart ~= evt.param1 then return false end return true end -- 触发操作 function action_EVENT_GADGET_STATE_CHANGE_145003(context, evt) -- 将configid为 145002 的物件更改为状态 GadgetState.Default if 0 ~= ScriptLib.SetGadgetStateByConfigId(context, 145002, GadgetState.Default) then ScriptLib.PrintContextLog(context, "@@ LUA_WARNING : set_gadget_state_by_configId") return -1 end -- 永久关闭CongfigId的Gadget,需要和Groups的RefreshWithBlock标签搭配 if 0 ~= ScriptLib.KillEntityByConfigId(context, { config_id = 145001 }) then ScriptLib.PrintContextLog(context, "@@ LUA_WARNING : kill_entity_by_configId") return -1 end return 0 end -- 触发条件 function condition_EVENT_GADGET_CREATE_145004(context, evt) -- 打印创建日志 ScriptLib.PrintContextLog(context, "## TEMPLE_LOG : Gadget_Create | "..evt.param1) return true end -- 触发条件 function condition_EVENT_ANY_GADGET_DIE_145005(context, evt) -- 打印死亡日志 ScriptLib.PrintContextLog(context, "## TEMPLE_LOG : Gadget_Die | "..evt.param1) return true end -- 触发条件 function condition_EVENT_GADGET_STATE_CHANGE_145006(context, evt) -- 打印创建日志 ScriptLib.PrintContextLog(context, "## TEMPLE_LOG : Gadget_State_Change | "..evt.param2.." : "..evt.param3.." -> "..evt.param1) return true end -- 触发操作 function action_EVENT_GROUP_LOAD_145007(context, evt) if ScriptLib.GetGadgetStateByConfigId(context, defs.group_ID, defs.gadget_temple) == -1 or ScriptLib.GetGadgetStateByConfigId(context, defs.group_ID, defs.gadget_temple) == GadgetState.GearStart then ScriptLib.SetGroupGadgetStateByConfigId(context, defs.group_ID, defs.gadget_chest, GadgetState.Default) ScriptLib.KillEntityByConfigId(context, { config_id = defs.gadget_temple}) end return 0 end