幸运转盘抽奖限制

zhangshanxue 2020-07-18 21:03:54 +08:00
parent edd814a97d
commit d74dbde124
5 changed files with 34 additions and 1 deletions

View File

@ -150,9 +150,11 @@ public enum ErrorCode implements IErrorCode {
NO_USE_SAME_HERO(116,"不可上阵重复英雄"), NO_USE_SAME_HERO(116,"不可上阵重复英雄"),
DAILY_ALREADY_PASS(117,"已通关,不可重复挑战"), DAILY_ALREADY_PASS(117,"已通关,不可重复挑战"),
DAILY_NO_OPEN(118,"进入副本条件不足"), DAILY_NO_OPEN(118,"进入副本条件不足"),
HAD_TAKE_REWARD(124,"奖励已领取") HAD_TAKE_REWARD(124,"奖励已领取"),
SERVER_DEFINE_SELF(20000,"操作失败")
; ;
private static final Set<Integer> CodeSet = new HashSet<>(); private static final Set<Integer> CodeSet = new HashSet<>();
@ -188,6 +190,10 @@ public enum ErrorCode implements IErrorCode {
return codeId; return codeId;
} }
public void setErrMsg(String errMsg) {
this.errMsg = errMsg;
}
@Override @Override
public String message() { public String message() {
return errMsg; return errMsg;
@ -196,4 +202,5 @@ public enum ErrorCode implements IErrorCode {
public static String newDefineCode(String errMsg) { public static String newDefineCode(String errMsg) {
return errMsg; return errMsg;
} }
} }

View File

@ -14,6 +14,12 @@ public class ErrorCodeException extends Exception {
this.errorCode = errorCode; this.errorCode = errorCode;
} }
public ErrorCodeException(ErrorCode errorCode,String newdefine) {
super(newdefine);
errorCode.setErrMsg(newdefine);
this.errorCode = errorCode;
}
public ErrorCodeException(String message) { public ErrorCodeException(String message) {
super(message); super(message);
errorCode = ErrorCode.SERVER_DEFINE; errorCode = ErrorCode.SERVER_DEFINE;

View File

@ -56,6 +56,7 @@ public class GetLuckWheelRandHandler extends BaseHandler<PlayerInfoProto.GetLuck
if (!(abstractActivity instanceof LuckWheelActivity)) { if (!(abstractActivity instanceof LuckWheelActivity)) {
throw new ErrorCodeException(ErrorCode.newDefineCode("activity err")); throw new ErrorCodeException(ErrorCode.newDefineCode("activity err"));
} }
SGlobalActivity sGlobalActivity = SGlobalActivity.getsGlobalActivityMap().get(proto.getActivityId()); SGlobalActivity sGlobalActivity = SGlobalActivity.getsGlobalActivityMap().get(proto.getActivityId());
SDialRewardSetting sDialRewardSetting = SDialRewardSetting.getsDialRewardSettingMapByType().get(sGlobalActivity.getType()); SDialRewardSetting sDialRewardSetting = SDialRewardSetting.getsDialRewardSettingMapByType().get(sGlobalActivity.getType());
int reson = sGlobalActivity.getType() == 30 ? BIReason.LUCK_WHEEL : BIReason.LUCK_WHEEL_ADVANCE; int reson = sGlobalActivity.getType() == 30 ? BIReason.LUCK_WHEEL : BIReason.LUCK_WHEEL_ADVANCE;
@ -71,6 +72,13 @@ public class GetLuckWheelRandHandler extends BaseHandler<PlayerInfoProto.GetLuck
} }
//dodrop //dodrop
int time = proto.getRepeated() ? sDialRewardSetting.getExtractingTime():1; int time = proto.getRepeated() ? sDialRewardSetting.getExtractingTime():1;
int luckWheelLimitTime = user.getPlayerInfoManager().getLuckWheelLimitTime();
if(luckWheelLimitTime+time>100){
throw new ErrorCodeException( ErrorCode.SERVER_DEFINE_SELF,"不可超出每日探宝上限次数!");
}
user.getPlayerInfoManager().setLuckWheelLimitTime(luckWheelLimitTime+time);
int luckId; int luckId;
int lastpos=1; int lastpos=1;
Set<Integer> posSet = new HashSet<>(); Set<Integer> posSet = new HashSet<>();

View File

@ -88,6 +88,7 @@ public class ActivityLogic implements IEventHandler{
//更新累计充值天数 //更新累计充值天数
ActivityLogic.getInstance().resumeActivity(user, ActivityType.RECHARGE_SUM_DAY); ActivityLogic.getInstance().resumeActivity(user, ActivityType.RECHARGE_SUM_DAY);
user.getPlayerInfoManager().setRechargedaily(0); user.getPlayerInfoManager().setRechargedaily(0);
user.getPlayerInfoManager().setLuckWheelLimitTime(0);
updateActivityMissionProgress(user, ActivityType.SevenLogin, 1); updateActivityMissionProgress(user, ActivityType.SevenLogin, 1);
Poster.getPoster().dispatchEvent(new NewWelfareEvent(user, NewWelfareTypeEnum.LOGIN_TIMES.getType(),1)); Poster.getPoster().dispatchEvent(new NewWelfareEvent(user, NewWelfareTypeEnum.LOGIN_TIMES.getType(),1));

View File

@ -105,6 +105,8 @@ public class PlayerManager extends MongoBase {
private Set<Integer> proudInfo = new HashSet<>(); private Set<Integer> proudInfo = new HashSet<>();
private int luckWheelLimitTime;
public PlayerManager(){ public PlayerManager(){
this.setRootCollection(User._COLLECTION_NAME); this.setRootCollection(User._COLLECTION_NAME);
} }
@ -705,4 +707,13 @@ public class PlayerManager extends MongoBase {
this.proudInfo = proudInfo; this.proudInfo = proudInfo;
updateString("proudInfo",proudInfo); updateString("proudInfo",proudInfo);
} }
public int getLuckWheelLimitTime() {
return luckWheelLimitTime;
}
public void setLuckWheelLimitTime(int luckWheelLimitTime) {
updateString("luckWheelLimitTime",luckWheelLimitTime);
this.luckWheelLimitTime = luckWheelLimitTime;
}
} }