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/20132/scene20132_group220132006.lua
KingRainbow44 8dd3a721e5
Revert "The Great De-Local'ifying of defs and base_info"
This reverts commit 0989747b
2023-08-30 21:15:50 -04:00

286 lines
9.3 KiB
Lua
Raw 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 = 220132006
}
--================================================================
--
-- 配置
--
--================================================================
-- 怪物
monsters = {
{ config_id = 6001, monster_id = 22020103, pos = { x = 520.445, y = 104.076, z = 372.474 }, rot = { x = 0.000, y = 0.000, z = 0.000 }, level = 1, disableWander = true, pose_id = 101, title_id = 10122, special_name_id = 10170 }
}
-- NPC
npcs = {
}
-- 装置
gadgets = {
{ config_id = 6002, gadget_id = 70290506, pos = { x = 448.442, y = 59.203, z = 458.634 }, rot = { x = 0.000, y = 0.000, z = 0.000 }, level = 1 },
{ config_id = 6005, gadget_id = 70360001, pos = { x = 448.528, y = 60.286, z = 459.762 }, rot = { x = 0.000, y = 0.000, z = 0.000 }, level = 1 },
{ config_id = 6009, gadget_id = 70950156, pos = { x = 520.263, y = 104.073, z = 372.141 }, rot = { x = 0.000, y = 0.000, z = 0.000 }, level = 1, vision_level = VisionLevelType.VISION_LEVEL_REMOTE }
}
-- 区域
regions = {
}
-- 触发器
triggers = {
{ config_id = 1006003, name = "GADGET_STATE_CHANGE_6003", event = EventType.EVENT_GADGET_STATE_CHANGE, source = "", condition = "condition_EVENT_GADGET_STATE_CHANGE_6003", action = "action_EVENT_GADGET_STATE_CHANGE_6003" },
{ config_id = 1006004, name = "SELECT_OPTION_6004", event = EventType.EVENT_SELECT_OPTION, source = "", condition = "condition_EVENT_SELECT_OPTION_6004", action = "action_EVENT_SELECT_OPTION_6004" },
{ config_id = 1006006, name = "SPECIFIC_MONSTER_HP_CHANGE_6006", event = EventType.EVENT_SPECIFIC_MONSTER_HP_CHANGE, source = "6001", condition = "condition_EVENT_SPECIFIC_MONSTER_HP_CHANGE_6006", action = "action_EVENT_SPECIFIC_MONSTER_HP_CHANGE_6006" },
{ config_id = 1006007, name = "QUEST_FINISH_6007", event = EventType.EVENT_QUEST_FINISH, source = "", condition = "condition_EVENT_QUEST_FINISH_6007", action = "action_EVENT_QUEST_FINISH_6007" },
{ config_id = 1006008, name = "TIMER_EVENT_6008", event = EventType.EVENT_TIMER_EVENT, source = "1", condition = "", action = "action_EVENT_TIMER_EVENT_6008" },
{ config_id = 1006010, name = "DUNGEON_ALL_AVATAR_DIE_6010", event = EventType.EVENT_DUNGEON_ALL_AVATAR_DIE, source = "", condition = "condition_EVENT_DUNGEON_ALL_AVATAR_DIE_6010", action = "action_EVENT_DUNGEON_ALL_AVATAR_DIE_6010" }
}
-- 变量
variables = {
{ config_id = 1, name = "BossSheild", value = 0, no_refresh = false }
}
--================================================================
--
-- 初始化配置
--
--================================================================
-- 初始化时创建
init_config = {
suite = 1,
end_suite = 0,
rand_suite = false
}
--================================================================
--
-- 小组配置
--
--================================================================
suites = {
{
-- suite_id = 1,
-- description = ,
monsters = { },
gadgets = { 6002, 6005 },
regions = { },
triggers = { "GADGET_STATE_CHANGE_6003", "SELECT_OPTION_6004", "QUEST_FINISH_6007" },
rand_weight = 100
},
{
-- suite_id = 2,
-- description = ,
monsters = { 6001 },
gadgets = { 6009 },
regions = { },
triggers = { "SPECIFIC_MONSTER_HP_CHANGE_6006", "TIMER_EVENT_6008", "DUNGEON_ALL_AVATAR_DIE_6010" },
rand_weight = 100
}
}
--================================================================
--
-- 触发器
--
--================================================================
-- 触发条件
function condition_EVENT_GADGET_STATE_CHANGE_6003(context, evt)
-- 检测config_id为6002的gadget是否从GadgetState.Action02变为GadgetState.Action03
if 6002 ~= evt.param2 or GadgetState.Action03 ~= evt.param1 or GadgetState.Action02 ~= evt.param3 then
return false
end
return true
end
-- 触发操作
function action_EVENT_GADGET_STATE_CHANGE_6003(context, evt)
-- 设置操作台选项
if 0 ~= ScriptLib.SetWorktopOptionsByGroupId(context, 220132006, 6005, {769}) then
ScriptLib.PrintContextLog(context, "@@ LUA_WARNING : set_wok_options_by_configid")
return -1
end
-- 删除suite11的所有内容
ScriptLib.RemoveExtraGroupSuite(context, 220132002, 11)
return 0
end
-- 触发条件
function condition_EVENT_SELECT_OPTION_6004(context, evt)
-- 判断是gadgetid 6005 option_id 769
if 6005 ~= evt.param1 then
return false
end
if 769 ~= evt.param2 then
return false
end
return true
end
-- 触发操作
function action_EVENT_SELECT_OPTION_6004(context, evt)
-- 将configid为 6002 的物件更改为状态 GadgetState.GearStop
if 0 ~= ScriptLib.SetGadgetStateByConfigId(context, 6002, GadgetState.GearStop) then
ScriptLib.PrintContextLog(context, "@@ LUA_WARNING : set_gadget_state_by_configId")
return -1
end
-- 删除指定group 220132006 指定config6005物件身上指定option769
if 0 ~= ScriptLib.DelWorktopOptionByGroupId(context, 220132006, 6005, 769) then
ScriptLib.PrintContextLog(context, "@@ LUA_WARNING : del_work_options_by_group_configId")
return -1
end
-- 重新生成指定group指定suite
if 0 ~= ScriptLib.RefreshGroup(context, { group_id = 220132011, suite = 4 }) then
ScriptLib.PrintContextLog(context, "@@ LUA_WARNING : refresh_group_to_suite")
return -1
end
-- 重新生成指定group指定suite
if 0 ~= ScriptLib.RefreshGroup(context, { group_id = 220132002, suite = 1 }) then
ScriptLib.PrintContextLog(context, "@@ LUA_WARNING : refresh_group_to_suite")
return -1
end
-- 重新生成指定group指定suite
if 0 ~= ScriptLib.RefreshGroup(context, { group_id = 220132008, suite = 1 }) then
ScriptLib.PrintContextLog(context, "@@ LUA_WARNING : refresh_group_to_suite")
return -1
end
-- 重新生成指定group指定suite
if 0 ~= ScriptLib.RefreshGroup(context, { group_id = 220132009, suite = 1 }) then
ScriptLib.PrintContextLog(context, "@@ LUA_WARNING : refresh_group_to_suite")
return -1
end
-- 重新生成指定group指定suite
if 0 ~= ScriptLib.RefreshGroup(context, { group_id = 220132010, suite = 1 }) then
ScriptLib.PrintContextLog(context, "@@ LUA_WARNING : refresh_group_to_suite")
return -1
end
return 0
end
-- 触发条件
function condition_EVENT_SPECIFIC_MONSTER_HP_CHANGE_6006(context, evt)
--[[判断指定configid的怪物的血量小于%21时触发指定后续操作]]--
if evt.type ~= EventType.EVENT_SPECIFIC_MONSTER_HP_CHANGE or evt.param3 > 21 then
return false
end
return true
end
-- 触发操作
function action_EVENT_SPECIFIC_MONSTER_HP_CHANGE_6006(context, evt)
-- 延迟25秒后,向groupId为220132006的对象,请求一次调用,并将string参数"1" 传递过去
if 0 ~= ScriptLib.CreateGroupTimerEvent(context, 220132006, "1", 25) then
ScriptLib.PrintContextLog(context, "@@ LUA_WARNING : create_timerevent_by_group")
return -1
end
-- 将本组内变量名为 "BossSheild" 的变量设置为 1
if 0 ~= ScriptLib.SetGroupVariableValue(context, "BossSheild", 1) then
ScriptLib.PrintContextLog(context, "@@ LUA_WARNING : set_groupVariable")
return -1
end
return 0
end
-- 触发条件
function condition_EVENT_QUEST_FINISH_6007(context, evt)
--检查ID为300313的任务的完成状态是否为11=完成0=失败)
--此事件需要配合Quest表使用在Quest表里的完成执行中配置“通知group脚本”则该任务完成后服务端会向对应的group发送通知参数1填写场景ID参数2填写group ID如果不填则会通知所有group
--检查任务ID
if 300313 ~= evt.param1 then
return false
end
--检查任务成功状态
if 1 ~= evt.param2 then
return false
end
return true
end
-- 触发操作
function action_EVENT_QUEST_FINISH_6007(context, evt)
-- 添加suite2的新内容
ScriptLib.AddExtraGroupSuite(context, 220132006, 2)
-- 重新生成指定group指定suite
if 0 ~= ScriptLib.RefreshGroup(context, { group_id = 220132011, suite = 1 }) then
ScriptLib.PrintContextLog(context, "@@ LUA_WARNING : refresh_group_to_suite")
return -1
end
ScriptLib.ActivateDungeonCheckPoint(context, 10)
return 0
end
-- 触发操作
function action_EVENT_TIMER_EVENT_6008(context, evt)
-- 移除指定monster
ScriptLib.RemoveEntityByConfigId(context, 220132006, EntityType.MONSTER, 6001)
-- 通知任务系统完成条件类型"LUA通知"复杂参数为quest_param的进度+1
if 0 ~= ScriptLib.AddQuestProgress(context, "300314") then
ScriptLib.PrintContextLog(context, "@@ LUA_WARNING : add_quest_progress")
return -1
end
return 0
end
-- 触发条件
function condition_EVENT_DUNGEON_ALL_AVATAR_DIE_6010(context, evt)
-- 判断变量"BossSheild"为1
if ScriptLib.GetGroupVariableValue(context, "BossSheild") ~= 1 then
return false
end
return true
end
-- 触发操作
function action_EVENT_DUNGEON_ALL_AVATAR_DIE_6010(context, evt)
-- 取消group中对应名称的TimerEvent
if 0 ~= ScriptLib.CancelGroupTimerEvent(context, 220132006, "1") then
ScriptLib.PrintContextLog(context, "@@ LUA_WARNING : cancel_timerevent_by_group")
return -1
end
-- 移除指定monster
ScriptLib.RemoveEntityByConfigId(context, 220132006, EntityType.MONSTER, 6001)
-- 通知任务系统完成条件类型"LUA通知"复杂参数为quest_param的进度+1
if 0 ~= ScriptLib.AddQuestProgress(context, "300314") then
ScriptLib.PrintContextLog(context, "@@ LUA_WARNING : add_quest_progress")
return -1
end
return 0
end