易经宝库

back_recharge
zhangshanxue 2020-11-09 11:12:37 +08:00
parent 16ded73f10
commit 08e1b94c60
2 changed files with 10 additions and 7 deletions

View File

@ -59,28 +59,32 @@ public class SeletSubRewardPoolRequestHandler extends BaseHandler<ActivityProto.
throw new ErrorCodeException(ErrorCode.CFG_NULL); throw new ErrorCodeException(ErrorCode.CFG_NULL);
} }
//check leve //check leve
if(sBlessingRewardPoolNew.getLevelLimit()>user.getPlayerInfoManager().getLevel()){ if(sBlessingRewardPoolNew.getLevelLimit()>user.getPlayerInfoManager().getLevel()){
throw new ErrorCodeException(ErrorCode.PLAYER_LEVE_NOT); throw new ErrorCodeException(ErrorCode.PLAYER_LEVE_NOT);
} }
//check floor //check floor
ActivityProgressInfo activityProgressInfo = activityMission.getActivityMissionMap().get(SubActivity.LAY_INDEX); ActivityProgressInfo activityProgressInfo = activityMission.getActivityMissionMap().get(SubActivity.LAY_INDEX);
if(activityProgressInfo!=null&&sBlessingRewardPoolNew.getFloorLimit()>activityProgressInfo.getProgrss()){ if(activityProgressInfo!=null&&sBlessingRewardPoolNew.getFloorLimit()>activityProgressInfo.getProgrss()){
throw new ErrorCodeException(ErrorCode.SERVER_DEFINE); throw new ErrorCodeException(ErrorCode.SERVER_DEFINE);
} }
//check count
ActivityProgressInfo activityProgressInfo1 = activityMission.getActivityMissionMap().get(SubActivity.POOL_INDEX + selectId);
if(activityProgressInfo1!=null&&activityProgressInfo1.getProgrss()>=sBlessingRewardPoolNew.getInitializeNum()){
throw new ErrorCodeException(ErrorCode.SERVER_DEFINE);
}
// //check had select // //check had select
if(activityMission.getV()!=0){ if(activityMission.getV()!=0){
ActivityProgressInfo activityProgressInfo1 = activityMission.getActivityMissionMap().get(SubActivity.POOL_INDEX + activityMission.getV()); ActivityProgressInfo activityProgressInfoOld = activityMission.getActivityMissionMap().get(SubActivity.POOL_INDEX + activityMission.getV());
if(activityProgressInfo1!=null&&activityProgressInfo1.getProgrss()!=0){ if(activityProgressInfoOld!=null&&activityProgressInfoOld.getProgrss()!=0){
activityProgressInfo1.setProgrss(activityProgressInfo1.getProgrss()-1); activityProgressInfoOld.setProgrss(activityProgressInfoOld.getProgrss()-1);
} }
user.getActivityManager().getSubRewardPoolInfo().getSubRewardPool().remove(user.getActivityManager().getSubRewardPoolInfo().getSubRewardPool().size()-1); user.getActivityManager().getSubRewardPoolInfo().getSubRewardPool().remove(user.getActivityManager().getSubRewardPoolInfo().getSubRewardPool().size()-1);
} }
activityMission.setV(selectId); activityMission.setV(selectId);
ActivityProgressInfo activityProgressInfo1 = activityMission.getActivityMissionMap().get(SubActivity.POOL_INDEX + selectId);
if(activityProgressInfo1!=null){ if(activityProgressInfo1!=null){
activityProgressInfo1.setProgrss(activityProgressInfo1.getProgrss()+1); activityProgressInfo1.setProgrss(activityProgressInfo1.getProgrss()+1);
} }

View File

@ -91,8 +91,7 @@ public class SubActivity extends AbstractActivity {
//get reward //get reward
long count = activityMission.getActivityMissionMap().values().stream().filter(activityProgressInfo1 -> activityProgressInfo1.getState() == ActivityType.HAD_TAKED).count(); long count = activityMission.getActivityMissionMap().values().stream().filter(activityProgressInfo1 -> activityProgressInfo1.getState() == ActivityType.HAD_TAKED).count();
//后5个概率提前结束抽奖 //后5个概率提前结束抽奖
if (count != (size - 1) && count >= (size - 5) && ((Math.random() * 5) < 1)&&user.getActivityManager().getSubRewardPoolInfo().getSubRewardPool().get(user.getActivityManager().getSubRewardPoolInfo().getSubRewardPool().size() - 1)== activityMission.getV()) {
if (count != (size - 1) && count >= (size - 5) && (Math.random() * 5 < 1)) {
user.getActivityManager().getSubRewardPoolInfo().getSubRewardPool().add((int) count, activityMission.getV()); user.getActivityManager().getSubRewardPoolInfo().getSubRewardPool().add((int) count, activityMission.getV());
user.getActivityManager().getSubRewardPoolInfo().getSubRewardPool().remove(user.getActivityManager().getSubRewardPoolInfo().getSubRewardPool().size() - 1); user.getActivityManager().getSubRewardPoolInfo().getSubRewardPool().remove(user.getActivityManager().getSubRewardPoolInfo().getSubRewardPool().size() - 1);
} }