限时抽卡免费次数

back_recharge
lvxinran 2019-12-25 14:07:48 +08:00
parent dbd1ce04a6
commit 42d27f48cd
4 changed files with 20 additions and 6 deletions

View File

@ -25,6 +25,7 @@ public interface VipPrivilegeType {
int FREE_HERO_RANDOM = 14;//免费抽取妖灵师 int FREE_HERO_RANDOM = 14;//免费抽取妖灵师
int FREE_SECRET_RANDOM = 15; //解锁免费抽取秘盒 int FREE_SECRET_RANDOM = 15; //解锁免费抽取秘盒
int TOWER_RESRT_NUM= 17; //每日试炼重置次数 int TOWER_RESRT_NUM= 17; //每日试炼重置次数
int TIME_RANDOM_FREE = 32;//东海寻仙每日赠送招募次数
//功能项解锁 //功能项解锁

View File

@ -51,7 +51,7 @@ public class LimitRandomCardActivity extends AbstractActivity {
} }
randomRank.addRank(cardEvent.getUid(),scoreById+cardEvent.getScore()); randomRank.addRank(cardEvent.getUid(),scoreById+cardEvent.getScore());
Predicate<int[]> pre = a-> (SCHero.getHeroByPieceId(a[0])!=null&&SCHero.getHeroByPieceId(a[0]).getNatural()>=13); Predicate<int[]> pre = a-> (SCHero.getHeroByPieceId(a[0])!=null&&SCHero.getHeroByPieceId(a[0]).getNatural()>=13);
//
Consumer<int[]> consumer = a->RankContext.getRankEnum(RankEnum.RANDOM_CARD_PERFECT_RANK.getType()).addRank(cardEvent.getUid(), TimeUtils.now()/1000,a[0]); Consumer<int[]> consumer = a->RankContext.getRankEnum(RankEnum.RANDOM_CARD_PERFECT_RANK.getType()).addRank(cardEvent.getUid(), TimeUtils.now()/1000,a[0]);
Stream.of(cardEvent.getHeros()).filter(pre).forEach(consumer); Stream.of(cardEvent.getHeros()).filter(pre).forEach(consumer);
update(UserManager.getUser(cardEvent.getUid()),cardEvent.getScore()); update(UserManager.getUser(cardEvent.getUid()),cardEvent.getScore());

View File

@ -223,11 +223,24 @@ public class HeroLogic{
//检验消耗 //检验消耗
boolean allowFree = false; boolean allowFree = false;
if(perCount == 1 && sLotterySetting.getLotteryType() == 1){ int privilege = 0;
allowFree = user.getPlayerInfoManager().check(VipPrivilegeType.FREE_HERO_RANDOM, 1); if(perCount == 1){
switch (sLotterySetting.getLotteryType()){
case 1:
privilege = VipPrivilegeType.FREE_HERO_RANDOM;
break;
case 3:
privilege = VipPrivilegeType.TIME_RANDOM_FREE;
break;
default:
break;
}
if(privilege!=0){
allowFree = user.getPlayerInfoManager().check(privilege, 1);
}
} }
if(!allowFree){ if(!allowFree){
boolean enoughCost = false; boolean enoughCost = false;
for (int[] cost:sLotterySetting.getCostItem()){ for (int[] cost:sLotterySetting.getCostItem()){
int [][] costItems = new int[][]{cost}; int [][] costItems = new int[][]{cost};
@ -240,7 +253,7 @@ public class HeroLogic{
throw new ErrorCodeException(ErrorCode.ITEM_NOT_ENOUGH); throw new ErrorCodeException(ErrorCode.ITEM_NOT_ENOUGH);
} }
}else{ }else{
user.getPlayerInfoManager().updateVipPrivilage(VipPrivilegeType.FREE_HERO_RANDOM, 1); user.getPlayerInfoManager().updateVipPrivilage(privilege, 1);
} }
//额外获取 //额外获取
int length = perCount; int length = perCount;

View File

@ -51,7 +51,7 @@ public class SSpecialConfig implements BaseConfig {
public static final String SUNLONG_REWARD = "Sunlong_Reward";//孙龙的宝藏礼包\ public static final String SUNLONG_REWARD = "Sunlong_Reward";//孙龙的宝藏礼包\
public static final String LAMP_TEXT_SPEED = "lamp_text_speed";//跑马灯速度 public static final String LAMP_TEXT_SPEED = "lamp_text_speed";//跑马灯速度
public static final String TIME_LIMIT_RECRUITMENT_INTEGRAL = "time_limit_recruitment_integral";//限时抽卡一次积分 public static final String TIME_LIMIT_RECRUITMENT_INTEGRAL = "time_limit_recruitment_integral";//限时抽卡一次积分
public static final String TIME_LIMIT_RECRUITMENT_FREEINTEGRAL = "time_limit_recruitment_FreeIntegral";//东海寻仙每获得150分赠送一次免费招募
@Override @Override
public void init() throws Exception { public void init() throws Exception {