0
0
mirror of https://gitlab.com/YuukiPS/GC-Resources.git synced 2025-04-29 09:35:48 +00:00
GC-Resources/Resources/Scripts/Gadget/RogueDungeon_Gadget.lua
KingRainbow44 b77f8d326e
Revert "The Great De-Local'ifying of Lua Scripts"
This reverts commit 54223c3d4857544a2cc9b94a9e10377596e367e4.
2023-08-29 21:33:58 -04:00

243 lines
6.0 KiB
Lua

local MAX_attackbylevelentity_LV = 20
local MAX_mutehurtbylevelentity_LV = 10
local MAX_defencebylevelentity_LV = 10
local MAX_chargebylevelentity_LV = 10
--场景破碎物计数
function KillLevelEntityCount( context )
local UidList = ScriptLib.GetSceneUidList(context)
-- ScriptLib.AddExhibitionAccumulableData(context, UidList[1], "Rogue_BrokenLevelEntity_AccumulableCount_1", 1)
-- ScriptLib.AddExhibitionReplaceableData(context, UidList[1], "Rogue_BrokenLevelEntity_ReplaceableCount_1", 1)
return 0
end
--炸药桶计数
function KillLevelEntityCount( context )
local UidList = ScriptLib.GetSceneUidList(context)
-- ScriptLib.AddExhibitionAccumulableData(context, UidList[1], "Rogue_BrokenBomb_AccumulableCount_1", 1)
-- ScriptLib.AddExhibitionAccumulableData(context, UidList[1], "Rogue_BrokenBomb_ReplaceableCount_1", 1)
return 0
end
--场景破碎物上发消息
function LevelEntityBroken_Attack(context)
ScriptLib.PrintContextLog(context, "##Rogue LOG : LevelEntityBroken ")
local UidList = ScriptLib.GetSceneUidList(context)
local TeamValue = ScriptLib.GetTeamServerGlobalValue(context, UidList[1], "SGV_ROGUE_ATTACKBYLEVELENTITY")
ScriptLib.PrintContextLog(context, "##Rogue LOG : LevelEntityBroken TeamValue =="..TeamValue)
--改SGV
if TeamValue < MAX_attackbylevelentity_LV then
ScriptLib.AddTeamServerGlobalValue(context, UidList[1], "SGV_ROGUE_ATTACKBYLEVELENTITY", 1)
end
return 0
end
--场景破碎物上发消息
function LevelEntityBroken_MuteHurt(context)
ScriptLib.PrintContextLog(context, "##Rogue LOG : LevelEntityBroken ")
local UidList = ScriptLib.GetSceneUidList(context)
local TeamValue = ScriptLib.GetTeamServerGlobalValue(context, UidList[1], "SGV_ROGUE_MUTEHURTBYLEVELENTITY")
ScriptLib.PrintContextLog(context, "##Rogue LOG : LevelEntityBroken TeamValue =="..TeamValue)
--改SGV
if TeamValue < MAX_mutehurtbylevelentity_LV then
ScriptLib.AddTeamServerGlobalValue(context, UidList[1], "SGV_ROGUE_MUTEHURTBYLEVELENTITY", 1)
end
return 0
end
--场景破碎物上发消息
function LevelEntityBroken_ChargeSpeed(context)
ScriptLib.PrintContextLog(context, "##Rogue LOG : LevelEntityBroken ")
local UidList = ScriptLib.GetSceneUidList(context)
local TeamValue = ScriptLib.GetTeamServerGlobalValue(context, UidList[1], "SGV_ROGUE_CHARGEBYLEVELENTITY")
ScriptLib.PrintContextLog(context, "##Rogue LOG : LevelEntityBroken TeamValue =="..TeamValue)
--改SGV
if TeamValue < MAX_chargebylevelentity_LV then
ScriptLib.AddTeamServerGlobalValue(context, UidList[1], "SGV_ROGUE_CHARGEBYLEVELENTITY", 1)
end
return 0
end
--场景破碎物上发消息
function LevelEntityBroken_Defence(context)
ScriptLib.PrintContextLog(context, "##Rogue LOG : LevelEntityBroken ")
local UidList = ScriptLib.GetSceneUidList(context)
local TeamValue = ScriptLib.GetTeamServerGlobalValue(context, UidList[1], "SGV_ROGUE_DEFENCEBYLEVELENTITY")
ScriptLib.PrintContextLog(context, "##Rogue LOG : LevelEntityBroken TeamValue =="..TeamValue)
--改SGV
if TeamValue < MAX_defencebylevelentity_LV then
ScriptLib.AddTeamServerGlobalValue(context, UidList[1], "SGV_ROGUE_DEFENCEBYLEVELENTITY", 1)
end
return 0
end
--关闭元素机关上发消息
function CloseGear(context)
local UidList = ScriptLib.GetSceneUidList(context)
local TeamValue = ScriptLib.GetTeamServerGlobalValue(context, UidList[1], "SGV_ROGUE_MASTERYBYGEAR")
ScriptLib.PrintContextLog(context, "##Rogue LOG : LevelEntityBroken TeamValue =="..TeamValue)
--先改SGV
ScriptLib.AddTeamServerGlobalValue(context, UidList[1], "SGV_ROGUE_MASTERYBYGEAR", 1)
--再通知客户端取值更新
--ScriptLib.AssignPlayerUidOpNotify(context, param_table)
return 0
end
--踩到陷阱
function TriggerTrap(context, isBlock)
local UidList = ScriptLib.GetSceneUidList(context)
local TeamValue = ScriptLib.GetTeamServerGlobalValue(context, UidList[1], "SGV_ROGUE_TRAPBLOCK")
--触发陷阱计数
--ScriptLib.AddExhibitionAccumulableData(context, UidList[1], "Rogue_TriggerTrap_Count", 1)
if isBlock == 0 then
--触发陷阱
ScriptLib.TriggerRoguelikeCurseByLua(context, UidList[1])
elseif isBlock ==1 then
--修改抵抗层数
ScriptLib.AddTeamServerGlobalValue(context, UidList[1], "SGV_ROGUE_TRAPBLOCK", -1)
ScriptLib.DisableRoguelikeTrapBySgv(context, "SGV_ROGUE_TRAPBLOCK", UidList[1])
end
return 0
end
--回复房间加BUFF
function AddReviveRoomBuff(context)
local UidList = ScriptLib.GetSceneUidList(context)
local TeamValue = ScriptLib.GetTeamServerGlobalValue(context, UidList[1], "SGV_ROGUE_REVIVEROOMBUFF")
ScriptLib.PrintContextLog(context, "##Rogue LOG : LevelEntityBroken TeamValue =="..TeamValue)
--先改SGV
ScriptLib.AddTeamServerGlobalValue(context, UidList[1], "SGV_ROGUE_REVIVEROOMBUFF", 1)
--再通知客户端取值更新
--ScriptLib.AssignPlayerUidOpNotify(context, param_table)
return 0
end
--战斗房间加BUFF
function AddBattleRoomBuff(context)
local UidList = ScriptLib.GetSceneUidList(context)
local TeamValue = ScriptLib.GetTeamServerGlobalValue(context, UidList[1], "SGV_ROGUE_BATTLEROOMBUFF")
ScriptLib.PrintContextLog(context, "##Rogue LOG : LevelEntityBroken TeamValue =="..TeamValue)
--先改SGV
ScriptLib.AddTeamServerGlobalValue(context, UidList[1], "SGV_ROGUE_BATTLEROOMBUFF", 1)
--再通知客户端取值更新
--ScriptLib.AssignPlayerUidOpNotify(context, param_table)
return 0
end
--吃到增益球
function GetRogueBuff( context )
local UidList = ScriptLib.GetSceneUidList(context)
--吃到BUFF计数
--ScriptLib.AddExhibitionAccumulableData(context, UidList[1], "Rogue_GetBuff_AccumulableCount", 1)
--ScriptLib.AddExhibitionReplaceableData(context, UidList[1], "Rogue_TriggerTrap_ReplaceableCount", 1)
return 0
end
function SetGardianSGV( context, value)
local entityID = ScriptLib.GetContextGadgetEntityId(context)
ScriptLib.SetEntityServerGlobalValueByEntityId(context, entityID, "SGV_CAN_CLEAR_THREAT", value )
return 0
end
function SetGardianState(context, value )
ScriptLib.SetGadgetState(context, value)
return 0
end