public void ReqFBFightEnd(MsgPack pack) { ReqFBFightEnd data = pack.msg.reqFBFightEnd; GameMsg msg = new GameMsg { cmd = (int)CMD.RspFBFightEnd }; // 校验战斗是否合法 if (data.win == true) { if (data.costtime > 0 && data.resthp > 0) { // 根据对应副本ID获取奖励 MapCfg rd = cfgSvc.GetMapCfg(data.fbId); PlayerData pd = cacheSvc.GetPlayerDataBySession(pack.session); // 任务进度更新 TaskSys.Instance.CalcTaskPrgs(pd, 2); pd.coin += rd.coin; pd.crystal += rd.exp; Common.CalcExp(pd, rd.exp); if (pd.fuben == data.fbId) { pd.fuben += 1; } // 更新数据库 if (cacheSvc.UpdatePlayerData(pd.id, pd) == false) { msg.err = (int)ErrorCode.UpdateDBError; } else { RspFBFightEnd rspFBFightEnd = new RspFBFightEnd { win = data.win, fbId = data.fbId, resthp = data.resthp, costtime = data.costtime, coin = pd.coin, lv = pd.lv, exp = pd.exp, crystal = pd.crystal, fuben = pd.fuben }; msg.rspFBFightEnd = rspFBFightEnd; } } } else { msg.err = (int)ErrorCode.ClientDataError; } pack.session.SendMsg(msg); }
public void RspFBFightEnd(GameMsg msg) { RspFBFightEnd rspFBFightEnd = msg.rspFBFightEnd; GameRoot.Instance.SetPlayerDataByRspFBFightEnd(rspFBFightEnd); battleEndWindow.RefreshWinInfo(rspFBFightEnd.fbid, rspFBFightEnd.costTime, rspFBFightEnd.restHp); }
public void SetPlayerDataByFBEnd(RspFBFightEnd data) { PlayerData.coin = data.coin; PlayerData.lv = data.lv; PlayerData.exp = data.exp; PlayerData.crystal = data.crystal; PlayerData.fuben = data.fuben; }
public static void SetPlayerDataByFBEnd(RspFBFightEnd data) { PlayerData.Coin = data.Coin; PlayerData.Lv = data.Lv; PlayerData.Exp = data.Exp; PlayerData.Crystal = data.Crystal; PlayerData.Fuben = data.Fuben; }
public void SetPlayerDataByRspFBFightEnd(RspFBFightEnd rspFBFightEnd) { PlayerData.coin = rspFBFightEnd.coin; PlayerData.exp = rspFBFightEnd.exp; PlayerData.lv = rspFBFightEnd.lv; PlayerData.crystal = rspFBFightEnd.crystal; PlayerData.fuben = rspFBFightEnd.fuben; }
public void ReqFBFightEnd(MsgPack pack) { ReqFBFightEnd data = (ReqFBFightEnd)pack.msg; SCPacketBase msg = new RspFBFightEnd(); //校验战斗是否合法 if (data.Win) { if (data.Costtime > 0 && data.Resthp > 0) { //根据副本ID获取相应奖励 MapCfg rd = cfgSvc.GetMapCfg(data.Fbid); PlayerData pd = cacheSvc.GetPlayerDataBySession(pack.session); //任务进度数据更新 TaskSys.Instance.CalcTaskPrgs(pd, 2); pd.Coin += rd.coin; pd.Crystal += rd.crystal; KDCommon.CalcExp(pd, rd.exp); if (pd.Fuben == data.Fbid) { pd.Fuben += 1; } if (!cacheSvc.UpdatePlayerData(pd.Id, pd)) { msg.error = (int)ErrorCode.UpdateDBError; } else { RspFBFightEnd rspFBFight = new RspFBFightEnd { Win = data.Win, Fbid = data.Fbid, Resthp = data.Resthp, Costtime = data.Costtime, Coin = pd.Coin, Lv = pd.Lv, Exp = pd.Exp, Crystal = pd.Crystal, Fuben = pd.Fuben }; msg = rspFBFight; } } } else { msg.error = (int)ErrorCode.ClientDataError; } pack.session.SendMsg(msg); }
public void RspFBFightEnd(GameMsg msg) { RspFBFightEnd data = msg.rspFBFightEnd; GameRoot.Instance.SetPlayerDataByFBEnd(data); battleEndWnd.SetBattleEndData(data.fbId, data.costtime, data.resthp); SetBattleEndWndState(FBEndType.Win); }
public void ReqFBFightEnd(PackMsg pack) { ReqFBFightEnd data = pack.msg.reqFBFightEnd; ServerSession session = pack.session; GameMsg msg = new GameMsg { cmd = (int)(CMD.RspFBFFightEnd), }; PlayerData playerData = cacheSvc.GetPlayerDataCache(session); MapCfg mapCfg = cfgSvc.GetMapCfg(data.fbid); if (data.isWin) { if (data.costTime > 0 && data.restHp > 0) { TaskSys.Instance.CalcTaskProgs(playerData, 2); PECommon.UpdateExp(playerData, mapCfg.exp); playerData.coin += mapCfg.coin; playerData.crystal += mapCfg.crystal; if (data.fbid == playerData.fuben) { playerData.fuben++; } if (!cacheSvc.UpdatePlayerData(playerData.id, playerData)) { msg.err = (int)ErrorCode.UpdateDBError; } else { RspFBFightEnd rspFBFightEnd = new RspFBFightEnd { isWin = data.isWin, fbid = data.fbid, restHp = data.restHp, costTime = data.costTime, exp = playerData.exp, lv = playerData.lv, coin = playerData.coin, crystal = playerData.crystal, fuben = playerData.fuben, }; msg.rspFBFightEnd = rspFBFightEnd; } } } else { msg.err = (int)ErrorCode.UpdateDBError; } session.SendMsg(msg); }
public void RspFBFightEnd(GameMsg msg) { RspFBFightEnd data = msg.rspFBFightEnd; GameRoot.Instance.SetPlayerDataByFBEnd(data); battleEndWnd.SetBattleEndData(data.fbid, data.costtime, data.resthp); SetBattleEndWndState(FBEndType.Win, true); if (msg.pshTaskPrgs != null) { MainCitySys.Instance.PshTaskPrgs(msg); } }
private void RspFBFightEnd(object sender, GameEventArgs e) { OnReceiveSCPacketBaseEventArgs ne = e as OnReceiveSCPacketBaseEventArgs; if (ne.msgID != CMD.RspFBFightEnd) { return; } RspFBFightEnd data = (RspFBFightEnd)ne.scPacketBase; PECommon.SetPlayerDataByFBEnd(data); m_BattleEndFormData.Fbid = data.Fbid; m_BattleEndFormData.CostTime = data.Costtime; m_BattleEndFormData.RestHp = data.Resthp; SetBattleEndWndState(FBEndType.Win); }
public void ReqFBFightEnd(MsgPack pack) { ReqFBFightEnd data = pack.msg.reqFBFightEnd; GameMsg msg = new GameMsg { cmd = (int)CMD.RspFBFightEnd, }; //校验战斗结果是否合法 if (data.iswin) { if (data.costtime > 10 && data.resthp > 0) { //根据副本ID获取奖励数据 MapCfg mapcfg = CfgSvc.Instance.GetMapCfg(data.fbid); PlayerData pd = CacheSvc.Instance.GetPlayerDataBySession(pack.session); pd.coin += mapcfg.coin; pd.crystal += mapcfg.crystal; PECommon.CalcExp(pd, mapcfg.exp); if (pd.mission == data.fbid) { pd.mission++; } if (!CacheSvc.Instance.UpdatePlayerData(pd.id, pd, pack.session)) { msg.err = (int)ErrorCode.UpdateDBError; } else { RspFBFightEnd rspFBFightEnd = new RspFBFightEnd { iswin = data.iswin, fbid = data.fbid, resthp = data.resthp, costtime = data.costtime, coin = pd.coin, lv = pd.lv, exp = pd.exp, crystal = pd.crystal, fuben = pd.mission, }; msg.rspFBFightEnd = rspFBFightEnd; //更新任务进度数据 TaskSys.Instance.CalcTaskPrgs(pd, 2); } } else { msg.err = (int)ErrorCode.ClientDataError; } } else { msg.err = (int)ErrorCode.ClientDataError; } pack.session.SendMsg(msg); }