Beispiel #1
0
        /// <summary>
        /// 处理七日抢购活动
        /// </summary>
        private bool HandleClientBuy(GameClient client, int nID, byte[] bytes, string[] cmdParams)
        {
            // 如果1.8的功能没开放
            if (GameFuncControlManager.IsGameFuncDisabled(GameFuncType.System1Dot8))
            {
                return(false);
            }

            // roleid:id:cnt
            int id  = Convert.ToInt32(cmdParams[1]);
            int cnt = Convert.ToInt32(cmdParams[2]);

            ESevenDayActErrorCode ec = ESevenDayActErrorCode.Success;

            if (!IsInActivityTime(client))
            {
                ec = ESevenDayActErrorCode.NotInActivityTime;
            }
            else
            {
                ec = BuyAct.HandleClientBuy(client, id, cnt);
            }

            if (ec == ESevenDayActErrorCode.Success)
            {
                CheckSendIconState(client);
            }

            client.sendCmd(nID, string.Format("{0}:{1}:{2}", (int)ec, id, cnt));
            return(true);
        }
Beispiel #2
0
        /// <summary>
        /// 处理客户端领取七日活动奖励
        /// 七日登录、七日充值、七日目标
        /// </summary>
        private bool HandleGetAward(GameClient client, int nID, byte[] bytes, string[] cmdParams)
        {
            // 如果1.8的功能没开放
            if (GameFuncControlManager.IsGameFuncDisabled(GameFuncType.System1Dot8))
            {
                return(false);
            }

            // roleid:act:arg1
            int act  = Convert.ToInt32(cmdParams[1]);
            int arg1 = Convert.ToInt32(cmdParams[2]);

            ESevenDayActErrorCode ec = ESevenDayActErrorCode.NotInActivityTime;

            if (!IsInActivityTime(client))
            {
                ec = ESevenDayActErrorCode.NotInActivityTime;
            }
            else if (act == (int)ESevenDayActType.Login)
            {
                ec = LoginAct.HandleGetAward(client, arg1);
            }
            else if (act == (int)ESevenDayActType.Charge)
            {
                ec = ChargeAct.HandleGetAward(client, arg1);
            }
            else if (act == (int)ESevenDayActType.Goal)
            {
                ec = GoalAct.HandleGetAward(client, arg1);
            }

            client.sendCmd(nID, string.Format("{0}:{1}:{2}", (int)ec, act, arg1));

            if (ec == ESevenDayActErrorCode.Success)
            {
                CheckSendIconState(client);
            }

            return(true);
        }
Beispiel #3
0
        private bool HandleGetAward(GameClient client, int nID, byte[] bytes, string[] cmdParams)
        {
            bool result;

            if (GameFuncControlManager.IsGameFuncDisabled(GameFuncType.System1Dot8))
            {
                result = false;
            }
            else
            {
                int act = Convert.ToInt32(cmdParams[1]);
                int arg = Convert.ToInt32(cmdParams[2]);
                ESevenDayActErrorCode ec = ESevenDayActErrorCode.NotInActivityTime;
                if (!this.IsInActivityTime(client))
                {
                    ec = ESevenDayActErrorCode.NotInActivityTime;
                }
                else if (act == 1)
                {
                    ec = this.LoginAct.HandleGetAward(client, arg);
                }
                else if (act == 2)
                {
                    ec = this.ChargeAct.HandleGetAward(client, arg);
                }
                else if (act == 3)
                {
                    ec = this.GoalAct.HandleGetAward(client, arg);
                }
                client.sendCmd(nID, string.Format("{0}:{1}:{2}", (int)ec, act, arg), false);
                if (ec == ESevenDayActErrorCode.Success)
                {
                    this.CheckSendIconState(client);
                }
                result = true;
            }
            return(result);
        }