Пример #1
0
    public void TryReceiveReward(ECopyType copyType, int chapter, int awardIndex)
    {
        if (awardIndex < 0 || awardIndex > 2)
        {
            GTItemHelper.ShowTip("非法AwardIndex" + awardIndex);
            return;
        }
        int rewardState = RaidModule.Instance.GetChapterRewardStateByAwardIndex(chapter, awardIndex);

        switch (rewardState)
        {
        case ERewardState.NOT_RECEIVE:
            GTItemHelper.ShowTip("未达成条件");
            return;

        case ERewardState.HAS_RECEIVE:
            GTItemHelper.ShowTip("奖励已领取");
            return;
        }
        DWorld chapterDB = ReadCfgWorld.GetDataById(chapter);
        DAward awardDB   = ReadCfgAward.GetDataById(chapterDB.Awards[awardIndex]);

        if (GTItemHelper.CheckBagFull(awardDB.MaxDropNum))
        {
            return;
        }

        ReqGetChapterAward req = new ReqGetChapterAward();

        req.CopyType = (int)copyType;
        req.Chapter  = chapter;
        req.Index    = awardIndex;
        NetworkManager.Instance.Send <ReqGetChapterAward>(MessageID.MSG_REQ_GET_CHAPTERAWARD, req);
    }
Пример #2
0
    private void OnReq_GetChapterAward(MessageRecv obj)
    {
        System.IO.MemoryStream ms  = new System.IO.MemoryStream(obj.Data);
        ReqGetChapterAward     req = Serializer.Deserialize <ReqGetChapterAward>(ms);

        AckGetChapterAward ack = new AckGetChapterAward();

        ack.CopyType = req.CopyType;
        ack.Chapter  = req.Chapter;
        ack.Index    = req.Index;
        NetworkManager.Instance.Send(MessageID.MSG_ACK_GET_CHAPTERAWARD, ack, 0, 0);
    }