From 78fccc996e0c92992c00cef34414d6c71f00a788 Mon Sep 17 00:00:00 2001 From: BONNe1704 Date: Mon, 28 Jan 2019 18:15:43 +0200 Subject: [PATCH] Fix some issues in ImportManager. --- .../challenges/ChallengesImportManager.java | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/src/main/java/world/bentobox/challenges/ChallengesImportManager.java b/src/main/java/world/bentobox/challenges/ChallengesImportManager.java index abe5d65..47b86f4 100644 --- a/src/main/java/world/bentobox/challenges/ChallengesImportManager.java +++ b/src/main/java/world/bentobox/challenges/ChallengesImportManager.java @@ -229,12 +229,23 @@ public class ChallengesImportManager for (ChallengeLevels level : levels) { - manager.loadLevel(this.createLevel(level, world), overwrite, user, false); + ChallengeLevel newlevel = this.createLevel(level, world); + + if (newlevel != null) + { + manager.loadLevel(newlevel, overwrite, user, false); + } } for (Challenges challenge : challenges) { Challenge newChallenge = this.createChallenge(challenge, world); + + if (newChallenge == null) + { + continue; + } + manager.loadChallenge(newChallenge, overwrite, user, false); if (challenge.getLevel().isEmpty() || challenge.getLevel().equals("FREE")) @@ -266,7 +277,7 @@ public class ChallengesImportManager */ private ChallengeLevel createLevel(ChallengeLevels level, World world) { - if (!level.getWorlds().isEmpty() || + if (!level.getWorlds().isEmpty() && !level.getWorlds().contains(Util.getWorld(world).getName())) { return null; @@ -310,6 +321,7 @@ public class ChallengesImportManager newChallenge.setFriendlyName(challenge.getFriendlyName()); newChallenge.setRemoveWhenCompleted(challenge.isRemoveWhenCompleted()); newChallenge.setDeployed(challenge.isDeployed()); + newChallenge.setIcon(challenge.getIcon()); newChallenge.setEnvironment(new HashSet<>(challenge.getEnvironment()));