mirror of
https://gitlab.com/YuukiPS/GC-Resources.git
synced 2025-04-29 09:35:48 +00:00
373 lines
14 KiB
Lua
373 lines
14 KiB
Lua
-- 基础信息
|
||
local base_info = {
|
||
group_id = 111101239
|
||
}
|
||
|
||
-- Trigger变量
|
||
local defs = {
|
||
pointarray_route = 110100045,
|
||
gadget_controller_1 = 239014,
|
||
gadget_controller_2 = 239017,
|
||
gadget_controller_3 = 239015,
|
||
gadget_controller_4 = 239016,
|
||
gadget_wall_1 = 239002,
|
||
gadget_wall_2 = 239001,
|
||
gadget_wall_3 = 239004,
|
||
gadget_wall_4 = 239003,
|
||
blocker_1 = 239020,
|
||
blocker_2 = 239019
|
||
}
|
||
|
||
-- DEFS_MISCS
|
||
local EnvControlGadgets = {239014,239015,239016,239017,239021,239022}
|
||
local DayAppearGadgets = {}
|
||
local NightAppearGadgets = {}
|
||
|
||
MaxSize = 12
|
||
|
||
ControllerWallMap =
|
||
{
|
||
{defs.gadget_controller_1,
|
||
{
|
||
{defs.gadget_wall_1,{2,7,12}},
|
||
{defs.gadget_wall_2,{1,6,11}}
|
||
}
|
||
},
|
||
{defs.gadget_controller_2,
|
||
{
|
||
{defs.gadget_wall_1,{12,7,2}},
|
||
{defs.gadget_wall_2,{11,6,1}}
|
||
}
|
||
},
|
||
{defs.gadget_controller_3,
|
||
{
|
||
{defs.gadget_wall_3,{8,9,10}},
|
||
{defs.gadget_wall_4,{3,4,5}}
|
||
}
|
||
},
|
||
{defs.gadget_controller_4,
|
||
{
|
||
{defs.gadget_wall_3,{10,9,8}},
|
||
{defs.gadget_wall_4,{5,4,3}}
|
||
}
|
||
}
|
||
}
|
||
|
||
--初始wall表,把所有的wall都填入
|
||
StartWallMap =
|
||
{
|
||
{defs.gadget_wall_1, 7},
|
||
{defs.gadget_wall_2, 6},
|
||
{defs.gadget_wall_3, 9},
|
||
{defs.gadget_wall_4, 4},
|
||
}
|
||
|
||
--初始blocker表,把所有的block都填入
|
||
StartBlockerMap =
|
||
{
|
||
{defs.blocker_1,1,0},
|
||
{defs.blocker_2,12,0}
|
||
}
|
||
|
||
--目标解法,如果填了就会有完成事件
|
||
TargetSolution =
|
||
{
|
||
12,11,10,5
|
||
}
|
||
|
||
--================================================================
|
||
--
|
||
-- 配置
|
||
--
|
||
--================================================================
|
||
|
||
-- 怪物
|
||
monsters = {
|
||
}
|
||
|
||
-- NPC
|
||
npcs = {
|
||
}
|
||
|
||
-- 装置
|
||
gadgets = {
|
||
{ config_id = 239001, gadget_id = 70290170, pos = { x = 2799.480, y = 271.371, z = -1474.069 }, rot = { x = 0.000, y = 0.000, z = 0.000 }, level = 1, is_use_point_array = true },
|
||
{ config_id = 239002, gadget_id = 70290170, pos = { x = 2809.793, y = 271.371, z = -1474.324 }, rot = { x = 0.000, y = 0.000, z = 0.000 }, level = 1, is_use_point_array = true },
|
||
{ config_id = 239003, gadget_id = 70290170, pos = { x = 2804.592, y = 271.371, z = -1469.112 }, rot = { x = 0.000, y = 270.000, z = 0.000 }, level = 1, is_use_point_array = true },
|
||
{ config_id = 239004, gadget_id = 70290170, pos = { x = 2804.692, y = 271.500, z = -1479.640 }, rot = { x = 0.000, y = 90.000, z = 0.000 }, level = 1, is_use_point_array = true },
|
||
{ config_id = 239005, gadget_id = 70220006, pos = { x = 2804.640, y = 271.371, z = -1474.370 }, rot = { x = 0.000, y = 0.000, z = 0.000 }, level = 1 },
|
||
{ config_id = 239006, gadget_id = 70220006, pos = { x = 2794.510, y = 271.371, z = -1463.851 }, rot = { x = 0.000, y = 0.000, z = 0.000 }, level = 1 },
|
||
{ config_id = 239007, gadget_id = 70220006, pos = { x = 2814.777, y = 271.432, z = -1463.793 }, rot = { x = 0.000, y = 0.000, z = 0.000 }, level = 1 },
|
||
{ config_id = 239008, gadget_id = 70220006, pos = { x = 2794.431, y = 271.371, z = -1484.146 }, rot = { x = 0.000, y = 0.000, z = 0.000 }, level = 1 },
|
||
{ config_id = 239009, gadget_id = 70220006, pos = { x = 2814.951, y = 272.274, z = -1484.398 }, rot = { x = 0.000, y = 0.000, z = 0.000 }, level = 1 },
|
||
{ config_id = 239010, gadget_id = 70220006, pos = { x = 2804.556, y = 271.371, z = -1463.901 }, rot = { x = 0.000, y = 0.000, z = 0.000 }, level = 1 },
|
||
{ config_id = 239011, gadget_id = 70220006, pos = { x = 2794.308, y = 271.371, z = -1474.389 }, rot = { x = 0.000, y = 0.000, z = 0.000 }, level = 1 },
|
||
{ config_id = 239012, gadget_id = 70220006, pos = { x = 2814.804, y = 272.078, z = -1474.269 }, rot = { x = 0.000, y = 0.000, z = 0.000 }, level = 1 },
|
||
{ config_id = 239013, gadget_id = 70220006, pos = { x = 2804.676, y = 271.688, z = -1484.577 }, rot = { x = 0.000, y = 0.000, z = 0.000 }, level = 1 },
|
||
{ config_id = 239014, gadget_id = 70360305, pos = { x = 2803.153, y = 271.989, z = -1451.029 }, rot = { x = 0.000, y = 0.000, z = 0.000 }, level = 1 },
|
||
{ config_id = 239015, gadget_id = 70360305, pos = { x = 2781.647, y = 270.736, z = -1474.045 }, rot = { x = 0.000, y = 0.000, z = 0.000 }, level = 1 },
|
||
{ config_id = 239016, gadget_id = 70360305, pos = { x = 2821.537, y = 271.671, z = -1474.248 }, rot = { x = 0.000, y = 0.000, z = 0.000 }, level = 1 },
|
||
{ config_id = 239017, gadget_id = 70360305, pos = { x = 2805.055, y = 271.651, z = -1492.000 }, rot = { x = 0.000, y = 0.000, z = 0.000 }, level = 1 },
|
||
{ config_id = 239019, gadget_id = 70350006, pos = { x = 2810.236, y = 271.253, z = -1483.988 }, rot = { x = 0.000, y = 0.000, z = 0.000 }, level = 1 },
|
||
{ config_id = 239020, gadget_id = 70350006, pos = { x = 2799.188, y = 270.610, z = -1462.762 }, rot = { x = 0.000, y = 0.000, z = 0.000 }, level = 1 },
|
||
{ config_id = 239021, gadget_id = 70360305, pos = { x = 2810.616, y = 272.035, z = -1491.834 }, rot = { x = 0.000, y = 0.000, z = 0.000 }, level = 1 },
|
||
{ config_id = 239022, gadget_id = 70360305, pos = { x = 2799.307, y = 270.610, z = -1458.182 }, rot = { x = 0.000, y = 0.000, z = 0.000 }, level = 1 },
|
||
{ config_id = 239025, gadget_id = 70211021, pos = { x = 2804.800, y = 277.462, z = -1474.705 }, rot = { x = 0.000, y = 0.000, z = 0.000 }, level = 26, drop_tag = "战斗高级蒙德", state = GadgetState.ChestLocked, isOneoff = true, persistent = true }
|
||
}
|
||
|
||
-- 区域
|
||
regions = {
|
||
}
|
||
|
||
-- 触发器
|
||
triggers = {
|
||
{ config_id = 1239018, name = "GROUP_LOAD_239018", event = EventType.EVENT_GROUP_LOAD, source = "", condition = "", action = "action_EVENT_GROUP_LOAD_239018", trigger_count = 0 },
|
||
{ config_id = 1239023, name = "GADGET_STATE_CHANGE_239023", event = EventType.EVENT_GADGET_STATE_CHANGE, source = "", condition = "condition_EVENT_GADGET_STATE_CHANGE_239023", action = "action_EVENT_GADGET_STATE_CHANGE_239023", trigger_count = 0 },
|
||
{ config_id = 1239024, name = "GADGET_STATE_CHANGE_239024", event = EventType.EVENT_GADGET_STATE_CHANGE, source = "", condition = "condition_EVENT_GADGET_STATE_CHANGE_239024", action = "action_EVENT_GADGET_STATE_CHANGE_239024", trigger_count = 0 },
|
||
{ config_id = 1239026, name = "VARIABLE_CHANGE_239026", event = EventType.EVENT_VARIABLE_CHANGE, source = "", condition = "condition_EVENT_VARIABLE_CHANGE_239026", action = "action_EVENT_VARIABLE_CHANGE_239026" }
|
||
}
|
||
|
||
-- 变量
|
||
variables = {
|
||
}
|
||
|
||
--================================================================
|
||
--
|
||
-- 初始化配置
|
||
--
|
||
--================================================================
|
||
|
||
-- 初始化时创建
|
||
init_config = {
|
||
suite = 1,
|
||
end_suite = 0,
|
||
rand_suite = false
|
||
}
|
||
|
||
--================================================================
|
||
--
|
||
-- 小组配置
|
||
--
|
||
--================================================================
|
||
|
||
suites = {
|
||
{
|
||
-- suite_id = 1,
|
||
-- description = ,
|
||
monsters = { },
|
||
gadgets = { 239001, 239002, 239003, 239004, 239005, 239006, 239007, 239008, 239009, 239010, 239011, 239012, 239013, 239014, 239015, 239016, 239017, 239019, 239020, 239021, 239022, 239025 },
|
||
regions = { },
|
||
triggers = { "GROUP_LOAD_239018", "GADGET_STATE_CHANGE_239023", "GADGET_STATE_CHANGE_239024", "VARIABLE_CHANGE_239026" },
|
||
rand_weight = 100
|
||
}
|
||
}
|
||
|
||
--================================================================
|
||
--
|
||
-- 触发器
|
||
--
|
||
--================================================================
|
||
|
||
-- 触发操作
|
||
function action_EVENT_GROUP_LOAD_239018(context, evt)
|
||
--lua层调用,将指定gadget转到一个合适的昼夜激活状态
|
||
local is_daynight_gadget = false
|
||
for i = 1 ,#EnvControlGadgets do
|
||
if (239014 == EnvControlGadgets[i]) then
|
||
is_daynight_gadget = true
|
||
end
|
||
end
|
||
|
||
if (not is_daynight_gadget) then
|
||
ScriptLib.PrintContextLog(context,"EnvState: 错误的传入了一个不在昼夜列表中的物件!!!")
|
||
return -1
|
||
end
|
||
local current_env_state_id = ScriptLib.GetCurrentLevelTagVec(context, 1)[1]
|
||
local current_env_state = ScriptLib.GetLevelTagNameById(context,current_env_state_id)
|
||
if (current_env_state == "2_4_Day") then
|
||
ScriptLib.SetGroupGadgetStateByConfigId(context, 0,239014,202)
|
||
end
|
||
if (current_env_state == "2_4_Night") then
|
||
ScriptLib.SetGroupGadgetStateByConfigId(context, 0,239014,302)
|
||
end
|
||
|
||
|
||
--lua层调用,将指定gadget转到一个合适的昼夜激活状态
|
||
local is_daynight_gadget = false
|
||
for i = 1 ,#EnvControlGadgets do
|
||
if (239015 == EnvControlGadgets[i]) then
|
||
is_daynight_gadget = true
|
||
end
|
||
end
|
||
|
||
if (not is_daynight_gadget) then
|
||
ScriptLib.PrintContextLog(context,"EnvState: 错误的传入了一个不在昼夜列表中的物件!!!")
|
||
return -1
|
||
end
|
||
local current_env_state_id = ScriptLib.GetCurrentLevelTagVec(context, 1)[1]
|
||
local current_env_state = ScriptLib.GetLevelTagNameById(context,current_env_state_id)
|
||
if (current_env_state == "2_4_Day") then
|
||
ScriptLib.SetGroupGadgetStateByConfigId(context, 0,239015,202)
|
||
end
|
||
if (current_env_state == "2_4_Night") then
|
||
ScriptLib.SetGroupGadgetStateByConfigId(context, 0,239015,302)
|
||
end
|
||
|
||
|
||
--lua层调用,将指定gadget转到一个合适的昼夜激活状态
|
||
local is_daynight_gadget = false
|
||
for i = 1 ,#EnvControlGadgets do
|
||
if (239016 == EnvControlGadgets[i]) then
|
||
is_daynight_gadget = true
|
||
end
|
||
end
|
||
|
||
if (not is_daynight_gadget) then
|
||
ScriptLib.PrintContextLog(context,"EnvState: 错误的传入了一个不在昼夜列表中的物件!!!")
|
||
return -1
|
||
end
|
||
local current_env_state_id = ScriptLib.GetCurrentLevelTagVec(context, 1)[1]
|
||
local current_env_state = ScriptLib.GetLevelTagNameById(context,current_env_state_id)
|
||
if (current_env_state == "2_4_Day") then
|
||
ScriptLib.SetGroupGadgetStateByConfigId(context, 0,239016,202)
|
||
end
|
||
if (current_env_state == "2_4_Night") then
|
||
ScriptLib.SetGroupGadgetStateByConfigId(context, 0,239016,302)
|
||
end
|
||
|
||
|
||
--lua层调用,将指定gadget转到一个合适的昼夜激活状态
|
||
local is_daynight_gadget = false
|
||
for i = 1 ,#EnvControlGadgets do
|
||
if (239017 == EnvControlGadgets[i]) then
|
||
is_daynight_gadget = true
|
||
end
|
||
end
|
||
|
||
if (not is_daynight_gadget) then
|
||
ScriptLib.PrintContextLog(context,"EnvState: 错误的传入了一个不在昼夜列表中的物件!!!")
|
||
return -1
|
||
end
|
||
local current_env_state_id = ScriptLib.GetCurrentLevelTagVec(context, 1)[1]
|
||
local current_env_state = ScriptLib.GetLevelTagNameById(context,current_env_state_id)
|
||
if (current_env_state == "2_4_Day") then
|
||
ScriptLib.SetGroupGadgetStateByConfigId(context, 0,239017,202)
|
||
end
|
||
if (current_env_state == "2_4_Night") then
|
||
ScriptLib.SetGroupGadgetStateByConfigId(context, 0,239017,302)
|
||
end
|
||
|
||
|
||
--lua层调用,将指定gadget转到一个合适的昼夜激活状态
|
||
local is_daynight_gadget = false
|
||
for i = 1 ,#EnvControlGadgets do
|
||
if (239021 == EnvControlGadgets[i]) then
|
||
is_daynight_gadget = true
|
||
end
|
||
end
|
||
|
||
if (not is_daynight_gadget) then
|
||
ScriptLib.PrintContextLog(context,"EnvState: 错误的传入了一个不在昼夜列表中的物件!!!")
|
||
return -1
|
||
end
|
||
local current_env_state_id = ScriptLib.GetCurrentLevelTagVec(context, 1)[1]
|
||
local current_env_state = ScriptLib.GetLevelTagNameById(context,current_env_state_id)
|
||
if (current_env_state == "2_4_Day") then
|
||
ScriptLib.SetGroupGadgetStateByConfigId(context, 0,239021,202)
|
||
end
|
||
if (current_env_state == "2_4_Night") then
|
||
ScriptLib.SetGroupGadgetStateByConfigId(context, 0,239021,302)
|
||
end
|
||
|
||
|
||
--lua层调用,将指定gadget转到一个合适的昼夜激活状态
|
||
local is_daynight_gadget = false
|
||
for i = 1 ,#EnvControlGadgets do
|
||
if (239022 == EnvControlGadgets[i]) then
|
||
is_daynight_gadget = true
|
||
end
|
||
end
|
||
|
||
if (not is_daynight_gadget) then
|
||
ScriptLib.PrintContextLog(context,"EnvState: 错误的传入了一个不在昼夜列表中的物件!!!")
|
||
return -1
|
||
end
|
||
local current_env_state_id = ScriptLib.GetCurrentLevelTagVec(context, 1)[1]
|
||
local current_env_state = ScriptLib.GetLevelTagNameById(context,current_env_state_id)
|
||
if (current_env_state == "2_4_Day") then
|
||
ScriptLib.SetGroupGadgetStateByConfigId(context, 0,239022,202)
|
||
end
|
||
if (current_env_state == "2_4_Night") then
|
||
ScriptLib.SetGroupGadgetStateByConfigId(context, 0,239022,302)
|
||
end
|
||
|
||
|
||
return 0
|
||
end
|
||
|
||
-- 触发条件
|
||
function condition_EVENT_GADGET_STATE_CHANGE_239023(context, evt)
|
||
if 239021 ~= evt.param2 or 222 ~= evt.param1 then
|
||
return false
|
||
end
|
||
|
||
return true
|
||
end
|
||
|
||
-- 触发操作
|
||
function action_EVENT_GADGET_STATE_CHANGE_239023(context, evt)
|
||
-- 将configid为 239019 的物件更改为状态 GadgetState.GearStart
|
||
local state = ScriptLib.GetGadgetStateByConfigId(context,0,239019)
|
||
if 0 ~= ScriptLib.SetGadgetStateByConfigId(context, 239019, 201-state) then
|
||
ScriptLib.PrintContextLog(context, "@@ LUA_WARNING : set_gadget_state_by_configId")
|
||
return -1
|
||
end
|
||
|
||
return 0
|
||
end
|
||
|
||
-- 触发条件
|
||
function condition_EVENT_GADGET_STATE_CHANGE_239024(context, evt)
|
||
if 239022 ~= evt.param2 or 222 ~= evt.param1 then
|
||
return false
|
||
end
|
||
|
||
return true
|
||
end
|
||
|
||
-- 触发操作
|
||
function action_EVENT_GADGET_STATE_CHANGE_239024(context, evt)
|
||
-- 将configid为 239020 的物件更改为状态 GadgetState.GearStart
|
||
local state = ScriptLib.GetGadgetStateByConfigId(context,0,239020)
|
||
if 0 ~= ScriptLib.SetGadgetStateByConfigId(context, 239020, 201-state) then
|
||
ScriptLib.PrintContextLog(context, "@@ LUA_WARNING : set_gadget_state_by_configId")
|
||
return -1
|
||
end
|
||
|
||
return 0
|
||
end
|
||
|
||
-- 触发条件
|
||
function condition_EVENT_VARIABLE_CHANGE_239026(context, evt)
|
||
if evt.param1 == evt.param2 then return false end
|
||
|
||
-- 判断变量"has_succeeded"为1
|
||
if ScriptLib.GetGroupVariableValue(context, "has_succeeded") ~= 1 then
|
||
return false
|
||
end
|
||
|
||
return true
|
||
end
|
||
|
||
-- 触发操作
|
||
function action_EVENT_VARIABLE_CHANGE_239026(context, evt)
|
||
-- 将configid为 239025 的物件更改为状态 GadgetState.ChestOpened
|
||
if 0 ~= ScriptLib.SetGadgetStateByConfigId(context, 239025, GadgetState.ChestOpened) then
|
||
ScriptLib.PrintContextLog(context, "@@ LUA_WARNING : set_gadget_state_by_configId")
|
||
return -1
|
||
end
|
||
|
||
return 0
|
||
end
|
||
|
||
require "V2_4/WallMaze"
|
||
require "V2_4/EnvState" |