/// <summary> /// 领取神秘礼包 /// </summary> /// <returns></returns> public static void MysteriousSpree(UserItemInfo item, GameUser user) { ItemBaseInfo itemInfo = new ShareCacheStruct <ItemBaseInfo>().FindKey(item.ItemID); if (itemInfo != null) { var prizeInfosArray = itemInfo.ItemPack; int randomNum = RandomUtils.GetRandom(0, prizeInfosArray.Count); PrizeInfo prizeInfo = prizeInfosArray[randomNum]; ActivitiesAward.GameUserReward(user.UserID, prizeInfo.Type, prizeInfo.ItemID, prizeInfo.Num); } }
/// <summary> /// 随机获得金币、精力奖励 /// </summary> /// <param name="item"></param> /// <param name="user"></param> public static void GetProbabilityReward(GameUser user, UserItemInfo item) { ItemBaseInfo itemInfo = new ShareCacheStruct <ItemBaseInfo>().FindKey(item.ItemID); if (itemInfo != null) { var prizeInfosArray = itemInfo.ItemPack; double[] probability = new double[prizeInfosArray.Count]; for (int i = 0; i < prizeInfosArray.Count; i++) { probability[i] = (double)prizeInfosArray[i].Probability; } int index2 = RandomUtils.GetHitIndex(probability); PrizeInfo prizeInfo = prizeInfosArray[index2]; ActivitiesAward.GameUserReward(user.UserID, prizeInfo.Type, prizeInfo.ItemID, prizeInfo.Num); UserItemHelper.UseUserItem(user.UserID, item.ItemID, 1); } }