Beispiel #1
0
    bool HandleJoinAchievementInfo(NetCmdBase obj)
    {
        LC_Cmd_JoinAchievement ncb     = (LC_Cmd_JoinAchievement)obj;
        tagAchievementConfig   pConfig = null;

        if (!FishConfig.Instance.m_AchievementInfo.m_AchievementMap.TryGetValue(ncb.AchievementID, out pConfig))
        {
            return(false);
        }
        RoleAchievementBase    pBase = CreateAchievement((EventTargetType)pConfig.AchievementEventInfo.EventID);
        tagRoleAchievementInfo pInfo = new tagRoleAchievementInfo();

        pInfo.AchievementID    = ncb.AchievementID;
        pInfo.AchievementValue = 0;
        if (pBase == null || !pBase.OnInit(pInfo, this))
        {
            return(false);
        }
        m_AchievementMap.Add(ncb.AchievementID, pBase);

        //因为接到新的成就了 我们刷新下状态
        PlayerRole.Instance.UpdateRoleEventHandle();
        // CheckIsExistsFinishItem();//判断成就是否有完成的

        tagOnceAchievementChangeEvent pEvent = new tagOnceAchievementChangeEvent(ncb.AchievementID);

        MsgEventHandle.HandleMsg(pEvent);
        return(true);
    }
Beispiel #2
0
    public virtual void ChangeAchievementErrorInfo(tagRoleAchievementInfo pInfo)
    {
        //客户端向服务器端发送错误的请求的时候 我们重置任务的数据
        pAchievementInfo           = pInfo;
        m_AchievementEventIsFinish = (pConfig.AchievementEventInfo.FinishValue <= pAchievementInfo.AchievementValue);
        tagOnceAchievementChangeEvent pEvent = new tagOnceAchievementChangeEvent(pAchievementInfo.AchievementID);

        MsgEventHandle.HandleMsg(pEvent);
    }
Beispiel #3
0
 public virtual bool OnInit(tagRoleAchievementInfo pInfo, RoleAchievementManager pManager)
 {
     //初始化任务 的数据
     m_pManger                  = pManager;
     pAchievementInfo           = pInfo;//客户端在加载的时候 无须判断是否需要进行每日清空
     pConfig                    = FishConfig.Instance.m_AchievementInfo.m_AchievementMap[pAchievementInfo.AchievementID];
     m_AchievementEventIsFinish = (pConfig.AchievementEventInfo.FinishValue <= pInfo.AchievementValue);
     OnJoinAchievement();
     return(true);
 }