-- 基础信息 local base_info = { group_id = 111101055 } -- Trigger变量 local defs = { duration = 30, group_id = 111101055 } --================================================================ -- -- 配置 -- --================================================================ -- 怪物 monsters = { } -- NPC npcs = { } -- 装置 gadgets = { { config_id = 55001, gadget_id = 70211111, pos = { x = 2589.884, y = 220.977, z = -1273.172 }, rot = { x = 0.000, y = 0.000, z = 0.000 }, level = 1, drop_tag = "解谜中级蒙德", isOneoff = true, persistent = true }, { config_id = 55002, gadget_id = 70900051, pos = { x = 2589.961, y = 219.271, z = -1264.321 }, rot = { x = 0.000, y = 0.000, z = 0.000 }, level = 1, state = GadgetState.Action01, isOneoff = true, persistent = true }, { config_id = 55003, gadget_id = 70900201, pos = { x = 2589.885, y = 222.006, z = -1272.992 }, rot = { x = 0.000, y = 0.000, z = 0.000 }, level = 1 }, { config_id = 55006, gadget_id = 70310013, pos = { x = 2589.874, y = 221.288, z = -1269.016 }, rot = { x = 0.000, y = 0.000, z = 0.000 }, level = 1 } } -- 区域 regions = { } -- 触发器 triggers = { { config_id = 1055004, name = "CHALLENGE_SUCCESS_55004", event = EventType.EVENT_CHALLENGE_SUCCESS, source = "666", condition = "", action = "action_EVENT_CHALLENGE_SUCCESS_55004" }, { config_id = 1055005, name = "CHALLENGE_FAIL_55005", event = EventType.EVENT_CHALLENGE_FAIL, source = "666", condition = "", action = "action_EVENT_CHALLENGE_FAIL_55005", trigger_count = 0 }, { config_id = 1055007, name = "GADGET_STATE_CHANGE_55007", event = EventType.EVENT_GADGET_STATE_CHANGE, source = "", condition = "condition_EVENT_GADGET_STATE_CHANGE_55007", action = "action_EVENT_GADGET_STATE_CHANGE_55007", trigger_count = 0 }, { config_id = 1055008, name = "GADGET_STATE_CHANGE_55008", event = EventType.EVENT_GADGET_STATE_CHANGE, source = "", condition = "condition_EVENT_GADGET_STATE_CHANGE_55008", action = "", tag = "202" } } -- 变量 variables = { } --================================================================ -- -- 初始化配置 -- --================================================================ -- 初始化时创建 init_config = { suite = 1, end_suite = 0, rand_suite = false } --================================================================ -- -- 小组配置 -- --================================================================ suites = { { -- suite_id = 1, -- description = suite_1, monsters = { }, gadgets = { 55002 }, regions = { }, triggers = { "CHALLENGE_SUCCESS_55004", "CHALLENGE_FAIL_55005", "GADGET_STATE_CHANGE_55007", "GADGET_STATE_CHANGE_55008" }, rand_weight = 100 }, { -- suite_id = 2, -- description = suite_2, monsters = { }, gadgets = { 55001, 55003, 55006 }, regions = { }, triggers = { }, rand_weight = 100 } } --================================================================ -- -- 触发器 -- --================================================================ -- 触发操作 function action_EVENT_CHALLENGE_SUCCESS_55004(context, evt) -- 将configid为 55002 的物件更改为状态 GadgetState.GearStart if 0 ~= ScriptLib.SetGadgetStateByConfigId(context, 55002, GadgetState.GearStart) then ScriptLib.PrintContextLog(context, "@@ LUA_WARNING : set_gadget_state_by_configId") return -1 end -- 运营数据埋点,匹配LD定义的规则使用 if 0 ~= ScriptLib.MarkPlayerAction(context, 3002, 3, 1) then ScriptLib.PrintContextLog(context, "@@ LUA_WARNING : mark_playerAction") return -1 end return 0 end -- 触发操作 function action_EVENT_CHALLENGE_FAIL_55005(context, evt) -- 将configid为 55002 的物件更改为状态 GadgetState.Default if 0 ~= ScriptLib.SetGadgetStateByConfigId(context, 55002, GadgetState.Default) then ScriptLib.PrintContextLog(context, "@@ LUA_WARNING : set_gadget_state_by_configId") return -1 end -- 删除suite2的所有内容 ScriptLib.RemoveExtraGroupSuite(context, 111101055, 2) -- 重新生成指定group,指定suite if 0 ~= ScriptLib.RefreshGroup(context, { group_id = 111101055, suite = 1 }) then ScriptLib.PrintContextLog(context, "@@ LUA_WARNING : refresh_group_to_suite") return -1 end -- 运营数据埋点,匹配LD定义的规则使用 if 0 ~= ScriptLib.MarkPlayerAction(context, 3002, 4, 1) then ScriptLib.PrintContextLog(context, "@@ LUA_WARNING : mark_playerAction") return -1 end return 0 end -- 触发条件 function condition_EVENT_GADGET_STATE_CHANGE_55007(context, evt) if 55002 ~= evt.param2 or GadgetState.GearStart ~= evt.param1 then return false end return true end -- 触发操作 function action_EVENT_GADGET_STATE_CHANGE_55007(context, evt) -- 202号挑战,duration内开启宝箱 if 0 ~= ScriptLib.ActiveChallenge(context, 666, 202, defs.duration, 7, 202, 1) then return -1 end -- 添加suite2的新内容 ScriptLib.AddExtraGroupSuite(context, defs.group_id, 2) -- 运营数据埋点,匹配LD定义的规则使用 if 0 ~= ScriptLib.MarkPlayerAction(context, 3002, 1, 1) then return -1 end return 0 end -- 触发条件 function condition_EVENT_GADGET_STATE_CHANGE_55008(context, evt) if 55001 ~= evt.param2 or GadgetState.ChestOpened ~= evt.param1 then return false end return true end