| | |
| | | { |
| | | return false; |
| | | } |
| | | // if (config.LimitMagicWeapon > 0) |
| | | // { |
| | | // Treasure treasure = null; |
| | | // var _stage = config.LimitMagicWeapon % 100; |
| | | // ModelCenter.Instance.GetModel<TreasureModel>().TryGetTreasure(config.LimitMagicWeapon / 100, out treasure); |
| | | // if (treasure == null || treasure.state != TreasureState.Collected || treasure.level < _stage) |
| | | // { |
| | | // errorCode = 2; |
| | | // return false; |
| | | // } |
| | | // } |
| | | // if (config.LimitMissionID > 0) |
| | | // { |
| | | // MissionDetailDates missionDetailDates = null; |
| | | // taskmodel.allMissionDict.TryGetValue(config.LimitMissionID, out missionDetailDates); |
| | | // if (missionDetailDates == null || missionDetailDates.MissionState != 3) |
| | | // { |
| | | // errorCode = 4; |
| | | // return false; |
| | | // } |
| | | // } |
| | | // if (config.LimiRealmLV > 0 && PlayerDatas.Instance.baseData.realmLevel < config.LimiRealmLV) |
| | | // { |
| | | // errorCode = 3; |
| | | // return false; |
| | | // } |
| | | |
| | | if (config.OpenDay > 0) |
| | | { |
| | | if (config.OpenDay > TimeUtility.OpenDay + 1) |
| | | { |
| | | errorCode = 2; |
| | | return false; |
| | | } |
| | | } |
| | | |
| | | if (config.LimitMissionID > 0) |
| | | { |
| | | |
| | | if (TaskManager.Instance.GetNeedFinishTaskCount(config.LimitMissionID) > 0) |
| | | { |
| | | errorCode = 4; |
| | | return false; |
| | | } |
| | | } |
| | | if (config.LimiRealmLV > 0 && PlayerDatas.Instance.baseData.realmLevel < config.LimiRealmLV) |
| | | { |
| | | errorCode = 3; |
| | | return false; |
| | | } |
| | | if (config.LimitLV > 0 && PlayerDatas.Instance.baseData.LV < config.LimitLV) |
| | | { |
| | | errorCode = 1; |
| | |
| | | if (config != null) |
| | | { |
| | | SoundPlayer.Instance.PlayUIAudio(SoundPlayer.defaultClickNegativeAudio); |
| | | if (config.Tip.Equals("FuncLimit_Level")) |
| | | { |
| | | SysNotifyMgr.Instance.ShowTip(config.Tip); |
| | | return; |
| | | } |
| | | |
| | | var errorCode = 0; |
| | | if (!IsFuncOpen(key, out errorCode)) |
| | | { |
| | | switch (errorCode) |
| | | { |
| | | case 1: |
| | | SysNotifyMgr.Instance.ShowTip(config.Tip, Language.Get("OpenFunc4", config.LimitLV)); |
| | | SysNotifyMgr.Instance.ShowStringTip(Language.Get("FuncLimit_Level", config.LimitLV) |
| | | + Language.Get("FuncLimitOpen1")); |
| | | break; |
| | | // TODO YYL |
| | | // case 2: |
| | | // var treasureConfig = TreasureConfig.Get(config.LimitMagicWeapon / 100); |
| | | // SysNotifyMgr.Instance.ShowTip(config.Tip, Language.Get("OpenFunc1", treasureConfig != null ? treasureConfig.Name : string.Empty)); |
| | | // break; |
| | | // case 3: |
| | | // SysNotifyMgr.Instance.ShowTip(config.Tip, UIHelper.GetRealmName(config.LimiRealmLV, true)); |
| | | // break; |
| | | case 4: |
| | | if (config.LimitLV > 0) |
| | | case 2: |
| | | //开服多少天 一般是组合 |
| | | if (config.LimitLV != 0) |
| | | { |
| | | SysNotifyMgr.Instance.ShowTip(config.Tip, Language.Get("OpenFunc2", config.LimitLV)); |
| | | SysNotifyMgr.Instance.ShowStringTip(Language.Get("FuncLimit_OpenDay", config.OpenDay) |
| | | + Language.Get("FuncLimitOpen2") |
| | | + Language.Get("FuncLimit_Level", config.LimitLV) |
| | | + Language.Get("FuncLimitOpen1")); |
| | | |
| | | } |
| | | else if (config.LimitMissionID != 0) |
| | | { |
| | | SysNotifyMgr.Instance.ShowStringTip(Language.Get("FuncLimit_OpenDay", config.OpenDay) |
| | | + Language.Get("FuncLimitOpen2") |
| | | + Language.Get("FuncLimit_Mission", TaskManager.Instance.GetNeedFinishTaskCount(config.LimitMissionID)) |
| | | + Language.Get("FuncLimitOpen1")); |
| | | } |
| | | else |
| | | { |
| | | SysNotifyMgr.Instance.ShowTip(config.Tip, Language.Get("OpenFunc3")); |
| | | SysNotifyMgr.Instance.ShowStringTip(Language.Get("FuncLimit_OpenDay", config.OpenDay) |
| | | + Language.Get("FuncLimitOpen1")); |
| | | } |
| | | break; |
| | | case 3: |
| | | SysNotifyMgr.Instance.ShowStringTip(Language.Get("FuncLimit_Realm", RealmConfig.Get(config.LimiRealmLV).Name) |
| | | + Language.Get("FuncLimitOpen1")); |
| | | break; |
| | | case 4: |
| | | SysNotifyMgr.Instance.ShowStringTip(Language.Get("FuncLimit_Mission", TaskManager.Instance.GetNeedFinishTaskCount(config.LimitMissionID)) |
| | | + Language.Get("FuncLimitOpen1")); |
| | | break; |
| | | } |
| | | } |
| | | } |