diff --git a/pom.xml b/pom.xml index c9177b8..24f70b9 100644 --- a/pom.xml +++ b/pom.xml @@ -39,7 +39,7 @@ 4.0.0 fr.moribus ImageOnMap - 4.2.0 + 4.2.1 jar @@ -134,7 +134,7 @@ fr.zcraft quartzlib - 0.0.4 + 0.0.5 org.bstats diff --git a/src/main/java/fr/moribus/imageonmap/ImageOnMap.java b/src/main/java/fr/moribus/imageonmap/ImageOnMap.java index 26ddddb..321c3de 100644 --- a/src/main/java/fr/moribus/imageonmap/ImageOnMap.java +++ b/src/main/java/fr/moribus/imageonmap/ImageOnMap.java @@ -103,6 +103,7 @@ public final class ImageOnMap extends QuartzPlugin { try { //imagesDirectory = checkPluginDirectory(imagesDirectory, V3Migrator.getOldImagesDirectory(this)); checkPluginDirectory(mapsDirectory); + checkPluginDirectory(imagesDirectory); } catch (final IOException ex) { PluginLogger.error("FATAL: " + ex.getMessage()); this.setEnabled(false); diff --git a/src/main/java/fr/moribus/imageonmap/ui/MapItemManager.java b/src/main/java/fr/moribus/imageonmap/ui/MapItemManager.java index 411b1ed..e6410d8 100644 --- a/src/main/java/fr/moribus/imageonmap/ui/MapItemManager.java +++ b/src/main/java/fr/moribus/imageonmap/ui/MapItemManager.java @@ -43,10 +43,10 @@ import fr.moribus.imageonmap.map.PosterMap; import fr.moribus.imageonmap.map.SingleMap; import fr.zcraft.quartzlib.components.i18n.I; import fr.zcraft.quartzlib.core.QuartzLib; +import fr.zcraft.quartzlib.tools.PluginLogger; import fr.zcraft.quartzlib.tools.items.ItemStackBuilder; import fr.zcraft.quartzlib.tools.items.ItemUtils; import fr.zcraft.quartzlib.tools.runners.RunTask; -import java.lang.reflect.Method; import java.util.ArrayDeque; import java.util.HashMap; import java.util.Queue; @@ -262,6 +262,7 @@ public class MapItemManager implements Listener { frame.setItem(new ItemStack(Material.AIR)); if (SplatterMapManager.hasSplatterAttributes(mapItem)) { if (!SplatterMapManager.placeSplatterMap(frame, player, event)) { + event.setCancelled(true); //In case of an error allow to cancel map placement return; } @@ -274,33 +275,20 @@ public class MapItemManager implements Listener { if (frame.getFacing() != BlockFace.UP && frame.getFacing() != BlockFace.DOWN) { frame.setRotation(Rotation.NONE); } - // If the item has a display name, bot not one from an anvil by the player, we remove it - // If it is not displayed on hover on the wall. - if (mapItem.hasItemMeta() && mapItem.getItemMeta().hasDisplayName() - && mapItem.getItemMeta().getDisplayName().startsWith("ยง6")) { - //runtask - //TODO utiliser run task.later pour essayer de regler le pb d'itemframe bas gauche sans carte - final ItemStack frameItem = mapItem.clone(); - final ItemMeta meta = frameItem.getItemMeta(); - meta.setDisplayName(null); - frameItem.setItemMeta(meta); - RunTask.later(() -> { - frame.setItem(frameItem); - frame.setRotation(Rotation.NONE); - }, 5L); - } else { + final ItemStack frameItem = mapItem.clone(); + final ItemMeta meta = frameItem.getItemMeta(); + + meta.setDisplayName(null); + frameItem.setItemMeta(meta); + RunTask.later(() -> { + frame.setItem(frameItem); frame.setRotation(Rotation.NONE); - RunTask.later(() -> { - frame.setItem(mapItem); - }, 5L); - - } + }, 5L); } - - ItemUtils.consumeItem(player, mapItem); + ItemUtils.consumeItem(player, mapItem); //useless no? } private static void onItemFrameRemove(ItemFrame frame, Player player, EntityDamageByEntityEvent event) {