예제 #1
0
        public static ListView <CUseable> CreateUsableListByRandowReward(RES_RANDOM_REWARD_TYPE type, int cnt, uint baseId)
        {
            ListView <CUseable>  listView = new ListView <CUseable>();
            ResRandomRewardStore dataByKey;

            if (type != RES_RANDOM_REWARD_TYPE.RES_RANDOM_REWARD_TYPE_NEST)
            {
                CUseable cUseable = CUseableManager.CreateUsableByRandowReward(type, cnt, baseId);
                if (cUseable != null)
                {
                    listView.Add(cUseable);
                }
            }
            else if ((dataByKey = GameDataMgr.randomRewardDB.GetDataByKey(baseId)) != null)
            {
                for (int i = 0; i < dataByKey.astRewardDetail.Length; i++)
                {
                    if (dataByKey.astRewardDetail[i].bItemType == 0 || dataByKey.astRewardDetail[i].bItemType >= 18)
                    {
                        break;
                    }
                    listView.AddRange(CUseableManager.CreateUsableListByRandowReward((RES_RANDOM_REWARD_TYPE)dataByKey.astRewardDetail[i].bItemType, (int)dataByKey.astRewardDetail[i].dwLowCnt, dataByKey.astRewardDetail[i].dwItemID));
                }
            }
            return(listView);
        }
예제 #2
0
        public static CUseable CreateUsableByRandowReward(RES_RANDOM_REWARD_TYPE type, int cnt, uint baseId)
        {
            COM_REWARDS_TYPE type2;

            CUseableManager.RandomRewardTypeToComRewardType(type, out type2);
            return(CUseableManager.CreateUsableByServerType(type2, cnt, baseId));
        }
예제 #3
0
        public static CUseable CreateUsableByRandowReward(RES_RANDOM_REWARD_TYPE type, int cnt, uint baseId)
        {
            COM_REWARDS_TYPE com_rewards_type;

            RandomRewardTypeToComRewardType(type, out com_rewards_type);
            return(CreateUsableByServerType(com_rewards_type, cnt, baseId));
        }
예제 #4
0
        public static ListView <CUseable> CreateUsableListByRandowReward(RES_RANDOM_REWARD_TYPE type, int cnt, uint baseId)
        {
            ListView <CUseable> view = new ListView <CUseable>();

            if (type != RES_RANDOM_REWARD_TYPE.RES_RANDOM_REWARD_TYPE_NEST)
            {
                CUseable item = CreateUsableByRandowReward(type, cnt, baseId);
                if (item != null)
                {
                    view.Add(item);
                }
                return(view);
            }
            ResRandomRewardStore dataByKey = null;

            dataByKey = GameDataMgr.randomRewardDB.GetDataByKey(baseId);
            if (dataByKey != null)
            {
                for (int i = 0; i < dataByKey.astRewardDetail.Length; i++)
                {
                    if (dataByKey.astRewardDetail[i].bItemType == 0)
                    {
                        return(view);
                    }
                    if (dataByKey.astRewardDetail[i].bItemType >= 0x11)
                    {
                        return(view);
                    }
                    view.AddRange(CreateUsableListByRandowReward((RES_RANDOM_REWARD_TYPE)dataByKey.astRewardDetail[i].bItemType, (int)dataByKey.astRewardDetail[i].dwLowCnt, dataByKey.astRewardDetail[i].dwItemID));
                }
            }
            return(view);
        }
예제 #5
0
        public static ListView <CUseable> CreateUsableListByRandowReward(RES_RANDOM_REWARD_TYPE type, int cnt, uint baseId)
        {
            ListView <CUseable> view = new ListView <CUseable>();

            if (type != RES_RANDOM_REWARD_TYPE.RES_RANDOM_REWARD_TYPE_NEST)
            {
                CUseable item = CreateUsableByRandowReward(type, cnt, baseId);
                if (item != null)
                {
                    view.Add(item);
                }
                return(view);
            }
            ResRewardForWeal weal = new ResRewardForWeal();

            if (GameDataMgr.wealRewardDict.TryGetValue(baseId, out weal))
            {
                for (int i = 0; i < weal.astRewardDetail.Length; i++)
                {
                    if (weal.astRewardDetail[i].bItemType == 0)
                    {
                        return(view);
                    }
                    if (weal.astRewardDetail[i].bItemType >= 0x11)
                    {
                        return(view);
                    }
                    view.AddRange(CreateUsableListByRandowReward((RES_RANDOM_REWARD_TYPE)weal.astRewardDetail[i].bItemType, (int)weal.astRewardDetail[i].dwLowCnt, weal.astRewardDetail[i].dwItemID));
                }
            }
            return(view);
        }
예제 #6
0
        public static void RandomRewardTypeToComRewardType(RES_RANDOM_REWARD_TYPE rType, out COM_REWARDS_TYPE cType)
        {
            switch (rType)
            {
            case RES_RANDOM_REWARD_TYPE.RES_RANDOM_REWARD_TYPE_ITEM:
                cType = COM_REWARDS_TYPE.COM_REWARDS_TYPE_ITEM;
                return;

            case RES_RANDOM_REWARD_TYPE.RES_RANDOM_REWARD_TYPE_EQUIP:
                cType = COM_REWARDS_TYPE.COM_REWARDS_TYPE_EQUIP;
                return;

            case RES_RANDOM_REWARD_TYPE.RES_RANDOM_REWARD_TYPE_HERO:
                cType = COM_REWARDS_TYPE.COM_REWARDS_TYPE_HERO;
                return;

            case RES_RANDOM_REWARD_TYPE.RES_RANDOM_REWARD_TYPE_SYMBOL:
                cType = COM_REWARDS_TYPE.COM_REWARDS_TYPE_SYMBOL;
                return;

            case RES_RANDOM_REWARD_TYPE.RES_RANDOM_REWARD_TYPE_AP:
                cType = COM_REWARDS_TYPE.COM_REWARDS_TYPE_AP;
                return;

            case RES_RANDOM_REWARD_TYPE.RES_RANDOM_REWARD_TYPE_COIN:
                cType = COM_REWARDS_TYPE.COM_REWARDS_TYPE_COIN;
                return;

            case RES_RANDOM_REWARD_TYPE.RES_RANDOM_REWARD_TYPE_COUPONS:
                cType = COM_REWARDS_TYPE.COM_REWARDS_TYPE_COUPONS;
                return;

            case RES_RANDOM_REWARD_TYPE.RES_RANDOM_REWARD_TYPE_BURNINGCOIN:
                cType = COM_REWARDS_TYPE.COM_REWARDS_TYPE_BURNING_COIN;
                return;

            case RES_RANDOM_REWARD_TYPE.RES_RANDOM_REWARD_TYPE_ARENACOIN:
                cType = COM_REWARDS_TYPE.COM_REWARDS_TYPE_ARENA_COIN;
                return;

            case RES_RANDOM_REWARD_TYPE.RES_RANDOM_REWARD_TYPE_SKIN:
                cType = COM_REWARDS_TYPE.COM_REWARDS_TYPE_SKIN;
                return;

            case RES_RANDOM_REWARD_TYPE.RES_RANDOM_REWARD_TYPE_SKINCOIN:
                cType = COM_REWARDS_TYPE.COM_REWARDS_TYPE_SKINCOIN;
                return;

            case RES_RANDOM_REWARD_TYPE.RES_RANDOM_REWARD_TYPE_HEROPOOLEXP:
                cType = COM_REWARDS_TYPE.COM_REWARDS_TYPE_HEROPOOLEXP;
                return;

            case RES_RANDOM_REWARD_TYPE.RES_RANDOM_REWARD_TYPE_SYMBOLCOIN:
                cType = COM_REWARDS_TYPE.COM_REWARDS_TYPE_SYMBOLCOIN;
                return;

            case RES_RANDOM_REWARD_TYPE.RES_RANDOM_REWARD_TYPE_DIAMOND:
                cType = COM_REWARDS_TYPE.COM_REWARDS_TYPE_DIAMOND;
                return;

            case RES_RANDOM_REWARD_TYPE.RES_RANDOM_REWARD_TYPE_HEADIMG:
                cType = COM_REWARDS_TYPE.COM_REWARDS_TYPE_HEADIMAGE;
                return;
            }
            cType = COM_REWARDS_TYPE.COM_REWARDS_TYPE_MAX;
        }
예제 #7
0
        public static void RandomRewardTypeToComRewardType(RES_RANDOM_REWARD_TYPE rType, out COM_REWARDS_TYPE cType)
        {
            switch (rType)
            {
            case 1:
                cType = 1;
                return;

            case 2:
                cType = 4;
                return;

            case 4:
                cType = 5;
                return;

            case 5:
                cType = 6;
                return;

            case 6:
                cType = 9;
                return;

            case 7:
                cType = 0;
                return;

            case 8:
                cType = 3;
                return;

            case 9:
                cType = 7;
                return;

            case 10:
                cType = 8;
                return;

            case 11:
                cType = 10;
                return;

            case 12:
                cType = 13;
                return;

            case 13:
                cType = 12;
                return;

            case 14:
                cType = 14;
                return;

            case 15:
                cType = 16;
                return;

            case 16:
                cType = 20;
                return;
            }
            cType = 23;
        }