0
0
mirror of https://gitlab.com/YuukiPS/GC-Resources.git synced 2025-04-29 09:35:48 +00:00
GC-Resources/Resources/Scripts/Scene/1/scene1_group111101239.lua
Yuuki b09934e7b9 Revert "remove local in defs"
This reverts commit 7e0a645ef33da87ddd5c402c6a64180001c6b03d.
2023-11-23 23:27:47 +08:00

373 lines
14 KiB
Lua
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

-- 基础信息
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"