diff --git a/serverlogic/src/main/java/com/ljsd/jieling/handler/vip/VipLevelRewardHandler.java b/serverlogic/src/main/java/com/ljsd/jieling/handler/vip/VipLevelRewardHandler.java index 385284ae3..5f704b32c 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/handler/vip/VipLevelRewardHandler.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/handler/vip/VipLevelRewardHandler.java @@ -24,9 +24,10 @@ public class VipLevelRewardHandler extends BaseHandler vipRewardMap = user.getUserMissionManager().getVipMissionIdsType().getVipRewardMap(); + //针对已有特权等级玩家的兼容 for(int i = user.getPlayerInfoManager().getVipLevel();i>=1;i--){ if(!vipRewardMap.containsKey(i) && i!=0){ - vipRewardMap.put(i,0); + vipRewardMap.put(i,1); } } user.getUserMissionManager().setVipMissionIdsType(user.getUserMissionManager().getVipMissionIdsType()); 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 3dc60a151..276077fe7 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 @@ -266,12 +266,20 @@ public class PlayerLogic { playerInfoManager.setVipLevel(vipLevel+1); //特权等级奖励 MaprewardMap = user.getUserMissionManager().getVipMissionIdsType().getVipRewardMap(); - if(!rewardMap.containsKey(playerInfoManager.getVipLevel())){ + + for(int i = user.getPlayerInfoManager().getVipLevel();i>=1;i--){ + if(!rewardMap.containsKey(i) && i!=0){ + rewardMap.put(i,1); + } + } + + + /*if(!rewardMap.containsKey(playerInfoManager.getVipLevel())){ rewardMap.put(playerInfoManager.getVipLevel(),0); } if(rewardMap.get(playerInfoManager.getVipLevel())==0){ rewardMap.put(playerInfoManager.getVipLevel(),1); - } + }*/ user.getUserMissionManager().setVipMissionIdsType(user.getUserMissionManager().getVipMissionIdsType()); PlayerInfoProto.VipLevelStateResponse.Builder vipLevelStateResponse = PlayerInfoProto.VipLevelStateResponse.newBuilder();