Ejemplo n.º 1
0
        public uint Execute(PacketDistributed ipacket)
        {
            CG_ASK_COMBATVALUEAWARD packet = (CG_ASK_COMBATVALUEAWARD )ipacket;

            if (null == packet)
            {
                return((uint)PACKET_EXE.PACKET_EXE_ERROR);
            }
            //enter your logic
            return((uint)PACKET_EXE.PACKET_EXE_CONTINUE);
        }
    private void ItemClick(GameObject go)
    {
        if (go != null && go.transform.parent != null)
        {
            Tab_LevelAwardSimulate data;
            if (clickDic.TryGetValue(go.transform.parent.gameObject, out data))
            {
                int left  = 0;
                int right = data.Condition;
                int index = -1;
                switch (NowType)
                {
                case ActivityRewardType.Level:
                    left = Singleton <ObjManager> .GetInstance().MainPlayer.BaseAttr.Level;

                    index = levelData.FindIndex(cell => cell.Id == data.Id);
                    if (index != -1)
                    {
                        index = levelData[index].Index;
                    }
                    break;

                case ActivityRewardType.Fight:
                    left = Singleton <ObjManager> .GetInstance().MainPlayer.BaseAttr.CombatValue;

                    index = fightData.FindIndex(cell => cell.Id == data.Id);
                    if (index != -1)
                    {
                        index = fightData[index].Index;
                    }
                    break;

                case ActivityRewardType.Cost:
                    left  = GameManager.gameManager.PlayerDataPool.CommonData.GetCommonData((int)Games.UserCommonData.USER_COMMONDATA.CD_COSTREBATE_VALUE);
                    index = fightData.FindIndex(cell => cell.Id == data.Id);
                    if (index != -1)
                    {
                        index = costData[index].Index;
                    }
                    break;

                case ActivityRewardType.TimeLimit:
                    break;

                default:
                    return;
                }
                if (index > -1 && left >= right)
                {
                    //可以领取
                    if (NowType == ActivityRewardType.Level)
                    {
                        CG_ASK_LEVELAWARD msg = (CG_ASK_LEVELAWARD)PacketDistributed.CreatePacket(MessageID.PACKET_CG_ASK_LEVELAWARD);
                        msg.SetIndex(index);
                        msg.SendPacket();
                    }
                    if (NowType == ActivityRewardType.Fight)
                    {
                        CG_ASK_COMBATVALUEAWARD msg = (CG_ASK_COMBATVALUEAWARD)PacketDistributed.CreatePacket(MessageID.PACKET_CG_ASK_COMBATVALUEAWARD);
                        msg.SetIndex(index);
                        msg.SendPacket();
                    }
                    if (NowType == ActivityRewardType.Cost)
                    {
                        CG_ASK_COST_REBATE_PRIZE msg = (CG_ASK_COST_REBATE_PRIZE)PacketDistributed.CreatePacket(MessageID.PACKET_CG_ASK_COST_REBATE_PRIZE);
                        msg.SetPrizeindex(index);
                        msg.SendPacket();
                    }
                    //GUIData.AddNotifyData2Client(false, "Already send to server!");
                }
                else
                {
                    //不可以领取,提示
                    GUIData.AddNotifyData2Client(false, "#{11260}");
                }
            }
        }
    }