diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/fourChallenge/FourChallengeLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/fourChallenge/FourChallengeLogic.java index 09bf7d538..0536b4dca 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/fourChallenge/FourChallengeLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/activity/fourChallenge/FourChallengeLogic.java @@ -353,6 +353,8 @@ public class FourChallengeLogic { */ public void firstGetTimes(User user) throws Exception { if (ifOpenFourChallenge(user) && !user.getPlayerInfoManager().isOpenFourChallenge()){ + // 检测一次 + if (status == null){ check(); } // 获取每天增加的天数 int campOpenDay = STableManager.getConfig(SCampTowerSetting.class).get(1).getTimesAddPerDay(); for (int i = 0; i < status.length; i++) { @@ -386,6 +388,7 @@ public class FourChallengeLogic { if (status[i] == 0){ continue; } user.getPlayerInfoManager().addFourChallengeRemainTimes(i, campOpenDay*num); } + user.getPlayerInfoManager().setOpenFourChallenge(true); // 推送四灵试炼信息 ISession session = OnlineUserManager.getSessionByUid(user.getId()); if (session != null){ diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/PropertyItem.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/PropertyItem.java index 10e47867f..79bbcec77 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/PropertyItem.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/PropertyItem.java @@ -77,10 +77,16 @@ public class PropertyItem extends MongoBase implements Cloneable { } public Map getPropertyValueByIdMap() { + if (propertyValueByIdMap == null){ + return new HashMap<>(); + } return propertyValueByIdMap; } public Map getSecondValueByIdMap() { + if (secondValueByIdMap == null){ + return new HashMap<>(); + } return secondValueByIdMap; } @@ -129,8 +135,8 @@ public class PropertyItem extends MongoBase implements Cloneable { try { clone = (PropertyItem) super.clone(); - clone.propertyValueByIdMap = new HashMap<>(this.propertyValueByIdMap); - clone.secondValueByIdMap = new HashMap<>(this.secondValueByIdMap); + clone.propertyValueByIdMap = new HashMap<>(this.getPropertyValueByIdMap()); + clone.secondValueByIdMap = new HashMap<>(this.getSecondValueByIdMap()); } catch (CloneNotSupportedException e) { e.printStackTrace(); }