| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889 |
- local ConditionJudge = {}
- local JudgeFun = {}
- function ConditionJudge:ConditionPassResult(conditionId)
- local conditionData = ManagerContainer.CfgMgr:GetCondDataById(conditionId)
- local condition = conditionData.Condition
- return self:ConditionPassResult1(condition)
- end
- function ConditionJudge:ConditionPassResult1(condition)
- if not condition then
- return false, 0, ''
- end
- local typeId = condition[1]
- if not typeId then
- return false, 0, ''
- end
- local fun = JudgeFun[typeId]
- if not fun then
- return false, 0, ''
- end
- return fun(condition)
- end
- JudgeFun[1] = function(condition)
- local val = condition[2]
- local content = I18N.SetLanguageValue("FunUnLock1", val)
- local baseLv = ManagerContainer.DataMgr.UserData:GetRoleLv()
- return baseLv >= val, val, content
- end
- JudgeFun[11] = function(condition)
- local val = condition[2]
- local levelData = ManagerContainer.CfgMgr:GetLevelDataById(val)
- if not levelData then
- return false, val, ''
- end
-
- local content = I18N.SetLanguageValue("FunUnLock11", I18N.T(levelData.Name))
- local uniId = ManagerContainer.LuaBattleMgr:GetCurSimpleLvID()--GetCurLevelUniqueId()
- --LogError("==========targetLv========"..val.."=============CurLv===="..uniId.."==="..content)
- return uniId >= val, val, content
- end
- JudgeFun[37] = function(condition)
- local val = condition[2]
- val = val + 1
- local climbingData = ManagerContainer.CfgMgr:GetClimbingTowerCfgById(val)
- local content = I18N.SetLanguageValue("FunUnLock37", I18N.T(climbingData.Desc))
- local climbingTowerLv = ManagerContainer.DataMgr.TowerDataMgr:GetCurChallengeLevel()
- return climbingTowerLv >= val, val, content
- end
- JudgeFun[1000] = function(condition)
- local val = condition[2]
- local vipLv = ManagerContainer.DataMgr.UserData:GetVipLv()
- local vipCfgData = ManagerContainer.CfgMgr:GetVipCfgById(val)
- if vipCfgData then
- local content = I18N.SetLanguageValue("FunUnLock1000", I18N.T(vipCfgData.Name))
- return vipLv >= val, val, content
- else
- return false, 0, ''
- end
- end
- JudgeFun[1001] = function(condition)
- local val = condition[2]
- if not Constant.OpenPay then
- if val == 0 then
- return false, val, ''
- else
- return true, val, ''
- end
- end
- return true, val, ''
- end
- JudgeFun[1002] = function(condition)
- local val = condition[2]
- if Constant.OpenPay then
- local curVal = ManagerContainer.PayMgr:GetTotalRecharge()
- return curVal >= val, val, ''
- end
- return false, val, ''
- end
- return ConditionJudge
|