diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/arena/ArenaLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/arena/ArenaLogic.java index 3e4529dad..36970efa6 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/arena/ArenaLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/arena/ArenaLogic.java @@ -135,11 +135,14 @@ public class ArenaLogic { } int uid = session.getUid(); User user = UserManager.getUser(uid); - boolean allowed = user.getPlayerInfoManager().checkFunctionIsAllowed(VipPrivilegeType.UNLOCK_SKIP_FIGHT); - if(!allowed){ - MessageUtil.sendErrorResponse(session,0, MessageTypeProto.MessageType.ARENA_CHALLENGE_RESPONSE_VALUE,"not allowed"); - return; + if(skipFight == 0){ + boolean allowed = user.getPlayerInfoManager().checkFunctionIsAllowed(VipPrivilegeType.UNLOCK_SKIP_FIGHT); + if(!allowed){ + MessageUtil.sendErrorResponse(session,0, MessageTypeProto.MessageType.ARENA_CHALLENGE_RESPONSE_VALUE,"not allowed"); + return; + } } + String err = checkChallenge(user); if(!"".equals(err)){ MessageUtil.sendErrorResponse(session,0, MessageTypeProto.MessageType.ARENA_CHALLENGE_RESPONSE_VALUE,err); diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/PlayerManager.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/PlayerManager.java index ca1a33ba5..d93559386 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/PlayerManager.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/PlayerManager.java @@ -50,7 +50,7 @@ public class PlayerManager extends MongoBase { private int hadTakeLevelBoxVip; //领取vip等级礼包 - private int hadTakeDailyBoxVip; //领取vip每日礼包 + private int hadTakeDailyBoxVip=-1; //领取vip每日礼包 private int maxForce; //玩家历史最高战力 @@ -302,6 +302,6 @@ public class PlayerManager extends MongoBase { } } updateString("vipInfo", vipInfo); - setHadTakeDailyBoxVip(0); + setHadTakeDailyBoxVip(-1); } } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/player/PlayerLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/player/PlayerLogic.java index bbe58cff3..8d601f484 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/player/PlayerLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/player/PlayerLogic.java @@ -183,11 +183,11 @@ public class PlayerLogic { rewards = sVipLevelConfig.getVipBoxReward(); reson = BIReason.TAKE_VIP_LEVEL_REWARD; }else if(type == 2){ - if(playerInfoManager.getHadTakeDailyBoxVip() == 1 || playerInfoManager.getHadTakeLevelBoxVip() == 0 ){ + if(playerInfoManager.getHadTakeDailyBoxVip() == 1 || playerInfoManager.getHadTakeLevelBoxVip() == -1 ){ MessageUtil.sendErrorResponse(session,0, MessageTypeProto.MessageType.VIP_TAKE_REWARD_RESPONSE_VALUE,"had taked the vip daily reward"); return; } - playerInfoManager.setHadTakeDailyBoxVip(1); + playerInfoManager.setHadTakeDailyBoxVip(playerInfoManager.getVipLevel()); rewards = sVipLevelConfig.getVipBoxDailyReward(); reson = BIReason.TAKE_VIP_DAILY_REWARD; }