local FuncNode_EventBuffLayerCompare = class("FuncNode_EventBuffLayerCompare") --[[ 初始化 --]] function FuncNode_EventBuffLayerCompare:initialize(entity) self.LimitChildCount = 2 self.Type = LuaConst.ConditionFuncType.EventBuffLayerCompare end --[[ 执行 --]] function FuncNode_EventBuffLayerCompare:Run(conditionDataNode, entity, missile, buffObject, eventParams) local compareType = FP.tonumberV1(conditionDataNode.FirstNode:Run(entity, missile)) local compareToLayer = FP.tonumberV1(conditionDataNode.SecondNode:Run(entity, missile)) local buffUpdateData = eventParams.eventBuffUpdateData if buffUpdateData then local curLayer = buffUpdateData.BuffLayer if compareToLayer >= 0 then if compareType == 0 then -- 等于 return curLayer == compareToLayer and FP.Const.One or FP.Const.Zero elseif compareType == 1 then -- 大于等于 return curLayer >= compareToLayer and FP.Const.One or FP.Const.Zero elseif compareType == 2 then -- 小于等于 return curLayer <= compareToLayer and FP.Const.One or FP.Const.Zero end end else logging.error(LTAG.ERROR, "GWS : 条件字符串FuncNode_EventBuffLayerCompare ,必须用于带有 eventBuffUpdateData的 事件 ") end return FP.Const.Zero end return FuncNode_EventBuffLayerCompare