0
0
mirror of https://gitlab.com/YuukiPS/GC-Resources.git synced 2025-04-28 09:05:26 +00:00
GC-Resources/Resources/Scripts/Common/V2_3/EnergyDisk_Dungeon.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

131 lines
4.4 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.

--[[
2.3导能原盘-物件增幅装置
地城版
--场上每存在一个被激怒的漂浮灵全体怪物的攻击力上升X%
只有激怒的漂浮灵才加buff用SLC通知Buff层数增减
SGV_EnergyDisk_Level 当前Buff层数
SGV_EnergyDisk_RefreshBuff 通知场地中心物件刷Buff
]]
--[[
local defs = {
buff_gadget = ,
}
]]
local extraTriggers={
--{ config_id = 8000001,name = "MONSTER_LIVE", event = EventType.EVENT_POOL_MONSTER_TIDE_CREATE, source = "", condition = "", action = "action_Monster_Tide_Create", trigger_count = 0 },
--{ config_id = 8000002,name = "MONSTER_LIVE", event = EventType.EVENT_ANY_MONSTER_LIVE, source = "", condition = "", action = "action_Monster_Tide_Create", trigger_count = 0 },
--{ config_id = 8000002,name = "MONSTER_DIE", event = EventType.EVENT_POOL_MONSTER_TIDE_DIE, source = "", condition = "", action = "action_Monster_Tide_Die", trigger_count = 0 },
{ config_id = 8000003,name = "Group_Load", event = EventType.EVENT_GROUP_LOAD, source = "", condition = "", action = "action_Group_Load", trigger_count = 0 },
{ config_id = 8000004, name = "SELECT_OPTION", event = EventType.EVENT_SELECT_OPTION, source = "", condition = "", action = "action_EVENT_SELECT_OPTION", trigger_count = 0 },
}
function LF_Initialize_Group(triggers, suites)
for i=1,#extraTriggers do
table.insert(triggers, extraTriggers[i])
table.insert(suites[init_config.suite].triggers,extraTriggers[i].name)
end
table.insert(variables,{ config_id=50000001,name = "buff_level", value = 0})
end
function action_Group_Load(context, evt)
local cur_level = ScriptLib.GetGroupVariableValue(context,"buff_level")
ScriptLib.SetEntityServerGlobalValueByConfigId(context, defs.buff_gadget, "SGV_EnergyDisk_Level", cur_level)
--ScriptLib.SetGroupTempValue(context, "step", 0, {})
return 0
end
function action_EVENT_SELECT_OPTION(context,evt)
if 1001 ~= evt.param1 then
return 0
end
if 175 ~= evt.param2 then
return 0
end
--重置等级
ScriptLib.SetGroupVariableValue(context, "buff_level", 0)
ScriptLib.SetEntityServerGlobalValueByConfigId(context, defs.buff_gadget, "SGV_EnergyDisk_Level", 0)
return 0
end
--改变刷Buff物件上的Buff等级
--param1变化值
function SLC_Change_EnhanceLevel(context, param1)
ScriptLib.PrintContextLog(context, "[EnergyDisk] Get SLC_Change_EnhanceLevel. param1@"..param1.." from@"..context.source_entity_id)
if defs.buff_gadget == nil then
return 0
end
--先将中央物件置为可触发
--LF_DisTrigger_BuffGadget(context)
local cur_level = ScriptLib.GetGroupVariableValue(context,"buff_level")
local tmp = cur_level + param1
if tmp < 0 or tmp > 4 then
ScriptLib.PrintContextLog(context, "[EnergyDisk] #WARN# Get SLC at cur_level@"..cur_level.." change value@"..param1)
return 0
else
--设置等级
ScriptLib.SetGroupVariableValue(context, "buff_level", tmp)
ScriptLib.SetEntityServerGlobalValueByConfigId(context, defs.buff_gadget, "SGV_EnergyDisk_Level", tmp)
--通知刷一次buff (怪物侧会监听,此处不用)
--LF_Trigger_BuffGadget(context)
end
return 0
end
--[[
function action_Monster_Tide_Create(context, evt)
ScriptLib.PrintContextLog(context, "[EnergyDisk] Monster_Tide_Create. Index@"..evt.source_eid)
if defs.buff_gadget == nil then
return 0
end
--if evt.source_eid == 2 then
--如果招出来是怪,则触发一次中央物件
LF_Trigger_BuffGadget(context)
--elseif evt.source_eid == 1 then
--如果招出来是漂浮灵,则将中央物件置为可触发
--LF_DisTrigger_BuffGadget(context)
--end
return 0
end
function action_Monster_Tide_Die(context, evt)
if defs.buff_gadget == nil then
return 0
end
if evt.source_eid == 2 then
--如果是怪,则触发一次中央物件
LF_Trigger_BuffGadget(context)
end
return 0
end
]]
function LF_Trigger_BuffGadget(context)
if ScriptLib.GetGroupTempValue(context, "step", {}) == 0 then
ScriptLib.SetEntityServerGlobalValueByConfigId(context, defs.buff_gadget, "SGV_EnergyDisk_RefreshBuff", 1)
ScriptLib.SetGroupTempValue(context, "step", 1, {})
else
ScriptLib.SetEntityServerGlobalValueByConfigId(context, defs.buff_gadget, "SGV_EnergyDisk_RefreshBuff", 0)
ScriptLib.SetGroupTempValue(context, "step", 0, {})
end
return 0
end
--[[function LF_DisTrigger_BuffGadget(context)
ScriptLib.SetEntityServerGlobalValueByConfigId(context, defs.buff_gadget, "SGV_EnergyDisk_RefreshBuff", 0)
return 0
end]]
LF_Initialize_Group(triggers, suites)