Example #1
0
 /// <summary>
 /// 根据强化数据更新玩家数据
 /// </summary>
 public void UpdataPlayerDataByStrong(RspStrong rspstrong)
 {
     playerDate.ad      = rspstrong.ad;
     playerDate.addef   = rspstrong.adddef;
     playerDate.ap      = rspstrong.ap;
     playerDate.apdef   = rspstrong.apddef;
     playerDate.coin    = rspstrong.coin;
     playerDate.crystal = rspstrong.crystal;
     playerDate.strong  = rspstrong.starlvArray;
 }
Example #2
0
 public void SetPlayerDataByStrong(RspStrong data)
 {
     playerData.coin      = data.coin;
     playerData.crystal   = data.crystal;
     playerData.hp        = data.hp;
     playerData.ad        = data.ad;
     playerData.ap        = data.ap;
     playerData.addef     = data.addef;
     playerData.apdef     = data.apdef;
     playerData.strongArr = data.strongArr;
 }
Example #3
0
    public void RspStrong(GameMsg msg)
    {
        RspStrong data      = msg.val as RspStrong;
        int       zhanliPre = Common.GetFightByProps(GameRoot.Instance.PPlayerData);

        GameRoot.Instance.SetPlayerDataByStrong(data);
        int zhanliNow = Common.GetFightByProps(GameRoot.Instance.PPlayerData);

        GameRoot.AddTips(Constants.Color("战力提升" + (zhanliNow - zhanliPre), TxtColor.Blue));
        strongWnd.UpdateUI();
        mainCityWnd.RefreshUI();
    }
Example #4
0
    //接收服务器强化响应
    public void RspStrong(GameMsg msg)
    {
        int       fightPre  = PECommon.GetFightProps(GameRoot.instance.playerData);
        RspStrong rspStrong = msg.rspStrong;

        GameRoot.instance.SetPlayerDataByStrong(rspStrong);
        int fightNow = PECommon.GetFightProps(GameRoot.instance.playerData);

        GameRoot.AddTips("战斗力提升+" + (fightNow - fightPre));
        audioSvc.PlayUIAudio(Constants.UIFbitem);
        strongWind.UpdateUI();
    }
Example #5
0
    public static void SetPlayerDataByStrong(RspStrong data)
    {
        PlayerData.Coin    = data.Coin;
        PlayerData.Crystal = data.Crystal;
        PlayerData.Hp      = data.Hp;
        PlayerData.Ad      = data.Ad;
        PlayerData.Ap      = data.Ap;
        PlayerData.Addef   = data.Addef;
        PlayerData.Apdef   = data.Apdef;

        PlayerData.StrongArr.SetRepeated <int>(data.StrongArr);
    }
Example #6
0
    public void SetPlayerDataByRspStrong(RspStrong strongData)
    {
        PlayerData.ad      += strongData.addhurt;
        PlayerData.ap      += strongData.addhurt;
        PlayerData.addef   += strongData.adddef;
        PlayerData.apdef   += strongData.adddef;
        PlayerData.hp      += strongData.addhp;
        PlayerData.coin    -= strongData.coin;
        PlayerData.crystal -= strongData.crystal;

        PlayerData.strongArr = strongData.strongArr;
    }
Example #7
0
    public void ReqStrong(MsgPack pack)
    {
        ReqStrong data = (ReqStrong)pack.msg;

        RspStrong  msg         = new RspStrong();
        PlayerData pd          = cacheSvc.GetPlayerDataBySession(pack.session);
        int        curtStartLv = pd.StrongArr[data.Pos];
        StrongCfg  nextSd      = CfgSvc.Instance.GetStrongCfg(data.Pos, curtStartLv + 1);

        //条件判断
        if (pd.Lv < nextSd.minlv)
        {
            msg.error = (int)ErrorCode.LackLevel;
        }
        else if (pd.Coin < nextSd.coin)
        {
            msg.error = (int)ErrorCode.LackCoin;
        }
        else if (pd.Crystal < nextSd.crystal)
        {
            msg.error = (int)ErrorCode.LackCrystal;
        }
        else
        {
            //任务进度数据更新
            TaskSys.Instance.CalcTaskPrgs(pd, 3);

            //资源扣除
            pd.Coin    -= nextSd.coin;
            pd.Crystal -= nextSd.crystal;

            pd.StrongArr[data.Pos] += 1;

            //增加属性
            pd.Hp    += nextSd.addhp;
            pd.Ad    += nextSd.addhurt;
            pd.Ap    += nextSd.addhurt;
            pd.Addef += nextSd.adddef;
            pd.Apdef += nextSd.adddef;
        }

        //更新数据库
        if (!cacheSvc.UpdatePlayerData(pd.Id, pd))
        {
            msg.error = (int)ErrorCode.UpdateDBError;
        }
        else
        {
            msg = new RspStrong {
                Coin    = pd.Coin,
                Crystal = pd.Crystal,
                Hp      = pd.Hp,
                Ad      = pd.Ad,
                Ap      = pd.Ap,
                Addef   = pd.Addef,
                Apdef   = pd.Apdef,
            };
            msg.StrongArr.SetRepeated <int>(pd.StrongArr);
        }
        pack.session.SendMsg(msg);
    }
Example #8
0
    /// <summary>
    /// 回应强化请求
    /// </summary>
    public void ReqStrong(PackMsg pack)
    {
        ReqStrong     data    = pack.msg.reqStrong;
        ServerSession session = pack.session;

        GameMsg msg = new GameMsg
        {
            cmd = (int)CMD.RspStrong,
        };

        PlayerData playerData = cacheSvc.GetPlayerDataCache(session);

        if (playerData.strongArr[data.pos] == data.starlv)
        {
            int       nextStarLv    = data.starlv + 1;
            StrongCfg nextStrongCfg = cfgSvc.GetStrongCfg(data.pos, nextStarLv);

            if (playerData.lv < nextStrongCfg.minlv)
            {
                msg.err = (int)ErrorCode.LackLevel;
            }
            else if (playerData.coin < nextStrongCfg.coin)
            {
                msg.err = (int)ErrorCode.LackCoin;
            }
            else if (playerData.crystal < nextStrongCfg.crystal)
            {
                msg.err = (int)ErrorCode.LackCrystal;
            }
            else
            {
                //更新任务进度
                PshTaskProgs pshTaskProgs = TaskSys.Instance.CalcTaskProgs(playerData, 3);

                playerData.hp    += nextStrongCfg.addhp;
                playerData.ad    += nextStrongCfg.addhurt;
                playerData.ap    += nextStrongCfg.addhurt;
                playerData.addef += nextStrongCfg.adddef;
                playerData.apdef += nextStrongCfg.adddef;
                playerData.strongArr[data.pos] += 1;

                playerData.coin    -= nextStrongCfg.coin;
                playerData.crystal -= nextStrongCfg.crystal;

                if (!cacheSvc.UpdatePlayerData(playerData.id, playerData))
                {
                    msg.err = (int)ErrorCode.UpdateDBError;
                }
                else
                {
                    RspStrong rspStrong = new RspStrong
                    {
                        pos       = nextStrongCfg.pos,
                        starlv    = nextStrongCfg.starlv,
                        addhp     = nextStrongCfg.addhp,
                        addhurt   = nextStrongCfg.addhurt,
                        adddef    = nextStrongCfg.adddef,
                        minlv     = nextStrongCfg.minlv,
                        coin      = nextStrongCfg.coin,
                        crystal   = nextStrongCfg.crystal,
                        strongArr = playerData.strongArr
                    };
                    msg.rspStrong = rspStrong;
                    if (pshTaskProgs != null)
                    {
                        msg.pshTaskProgs = pshTaskProgs;
                    }
                }
            }
        }
        else
        {
            msg.err = (int)ErrorCode.ServerDataError;
        }
        pack.session.SendMsg(msg);
    }