| | |
| | | { |
| | | DTC0102_tagCDBPlayer.beforePlayerDataInitializeEventOnRelogin += OnBeforePlayerDataInitializeEvent; |
| | | DTC0403_tagPlayerLoginLoadOK.playerLoginOkEvent += UpdateRedpoint; |
| | | DungeonManager.Instance.UpdateFBInfoListEvent += OnUpdateFBInfoChangeEvent; |
| | | FuncOpen.Instance.OnFuncStateChangeEvent += OnFuncStateChangeEvent; |
| | | |
| | | var keys = ADAwardConfig.GetKeys(); |
| | | for (int i = 0; i < keys.Count; i++) |
| | |
| | | { |
| | | DTC0102_tagCDBPlayer.beforePlayerDataInitializeEventOnRelogin -= OnBeforePlayerDataInitializeEvent; |
| | | DTC0403_tagPlayerLoginLoadOK.playerLoginOkEvent -= UpdateRedpoint; |
| | | DungeonManager.Instance.UpdateFBInfoListEvent += OnUpdateFBInfoChangeEvent; |
| | | FuncOpen.Instance.OnFuncStateChangeEvent -= OnFuncStateChangeEvent; |
| | | } |
| | | |
| | | private void OnFuncStateChangeEvent(int funcId) |
| | | { |
| | | switch (funcId) |
| | | { |
| | | case (int)FuncOpenEnum.BoneBattle: |
| | | UpdateBoneAdRedPoint(); |
| | | break; |
| | | } |
| | | } |
| | | |
| | | public void OnBeforePlayerDataInitializeEvent() |
| | | { |
| | | adsInfoDict.Clear(); |
| | | } |
| | | |
| | | private void OnUpdateFBInfoChangeEvent(int mapID) |
| | | { |
| | | switch (mapID) |
| | | { |
| | | case 30010: |
| | | UpdateBoneAdRedPoint(); |
| | | break; |
| | | } |
| | | } |
| | | |
| | | void SendGetReward(int ADID) |
| | |
| | | foreach (var key in redPointDict.Keys) |
| | | { |
| | | redPointDict[key].state = RedPointState.None; |
| | | |
| | | |
| | | var config = ADAwardConfig.Get(key); |
| | | if (!FuncOpen.Instance.IsFuncOpen(config.FuncID)) |
| | | { |
| | |
| | | } |
| | | if (GetADCntByADID(key) < config.ADCntMax) |
| | | { |
| | | redPointDict[key].state = RedPointState.Simple; |
| | | switch (key) |
| | | { |
| | | //白骨 |
| | | case 1: |
| | | UpdateBoneAdRedPoint(); |
| | | break; |
| | | default: |
| | | redPointDict[key].state = RedPointState.Simple; |
| | | break; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | |
| | | private void UpdateBoneAdRedPoint() |
| | | { |
| | | int key = 1; |
| | | if (!ADAwardConfig.HasKey(key)) |
| | | return; |
| | | var config = ADAwardConfig.Get(key); |
| | | if (!FuncOpen.Instance.IsFuncOpen(config.FuncID)) |
| | | return; |
| | | if (redPointDict.IsNullOrEmpty() || !redPointDict.ContainsKey(key)) |
| | | return; |
| | | bool isNoChallenge = BoneFieldManager.Instance.IsNoChallenge(); |
| | | redPointDict[key].state = isNoChallenge ? RedPointState.None : RedPointState.Simple; |
| | | } |
| | | } |
| | | |