Version 1.0.2
* made item used to toggle fixed/visible configurable * fix interaction with toggle item when permission is lacking * fix exception thrown when maps.yml doesn't exist
This commit is contained in:
parent
2dc1c7bb6b
commit
6aba1d1c5a
2
pom.xml
2
pom.xml
|
@ -4,7 +4,7 @@
|
|||
<modelVersion>4.0.0</modelVersion>
|
||||
<groupId>net.craftcitizen</groupId>
|
||||
<artifactId>ImageMaps</artifactId>
|
||||
<version>1.1.0-SNAPSHOT</version>
|
||||
<version>1.0.2</version>
|
||||
<name>ImageMaps</name>
|
||||
<description>Render Images onto maps!</description>
|
||||
|
||||
|
|
|
@ -64,6 +64,8 @@ public class ImageMaps extends JavaPlugin implements Listener {
|
|||
private Map<String, BufferedImage> imageCache = new HashMap<>();
|
||||
private Map<ImageMap, Integer> maps = new HashMap<>();
|
||||
|
||||
private Material toggleItem;
|
||||
|
||||
static {
|
||||
ConfigurationSerialization.registerClass(ImageMap.class);
|
||||
}
|
||||
|
@ -77,6 +79,14 @@ public class ImageMaps extends JavaPlugin implements Listener {
|
|||
if (!new File(getDataFolder(), IMAGES_DIR).exists())
|
||||
new File(getDataFolder(), IMAGES_DIR).mkdirs();
|
||||
|
||||
saveDefaultConfig();
|
||||
|
||||
toggleItem = Material.matchMaterial(getConfig().getString("toggleItem", Material.WOODEN_HOE.name()));
|
||||
if (toggleItem == null) {
|
||||
toggleItem = Material.WOODEN_HOE;
|
||||
getLogger().warning("Given toggleItem is invalid, defaulting to WOODEN_HOE");
|
||||
}
|
||||
|
||||
getCommand("imagemap").setExecutor(new ImageMapCommandHandler(this));
|
||||
getServer().getPluginManager().registerEvents(this, this);
|
||||
|
||||
|
@ -101,19 +111,21 @@ public class ImageMaps extends JavaPlugin implements Listener {
|
|||
ItemFrame frame = (ItemFrame) event.getRightClicked();
|
||||
Player p = event.getPlayer();
|
||||
|
||||
if (p.getInventory().getItemInMainHand().getType() != Material.WOODEN_HOE)
|
||||
if (p.getInventory().getItemInMainHand().getType() != toggleItem)
|
||||
return;
|
||||
|
||||
if (p.isSneaking() && p.hasPermission("imagemaps.toggleFixed")) {
|
||||
frame.setFixed(!frame.isFixed());
|
||||
MessageUtil.sendMessage(this, p, MessageLevel.INFO, String.format("Frame set to %s.", frame.isFixed() ? "fixed" : "unfixed"));
|
||||
if (p.isSneaking()) {
|
||||
if (p.hasPermission("imagemaps.toggleFixed")) {
|
||||
event.setCancelled(true);
|
||||
frame.setFixed(!frame.isFixed());
|
||||
MessageUtil.sendMessage(this, p, MessageLevel.INFO, String.format("Frame set to %s.", frame.isFixed() ? "fixed" : "unfixed"));
|
||||
}
|
||||
}
|
||||
else if (p.hasPermission("imagemaps.toggleVisible")) {
|
||||
event.setCancelled(true);
|
||||
frame.setVisible(!frame.isVisible());
|
||||
MessageUtil.sendMessage(this, p, MessageLevel.INFO, String.format("Frame set to %s.", frame.isVisible() ? "visible" : "invisible"));
|
||||
}
|
||||
|
||||
event.setCancelled(true);
|
||||
}
|
||||
|
||||
public boolean isInvisibilitySupported() {
|
||||
|
@ -152,7 +164,12 @@ public class ImageMaps extends JavaPlugin implements Listener {
|
|||
}
|
||||
|
||||
private void loadMaps() {
|
||||
Configuration config = YamlConfiguration.loadConfiguration(new File(getDataFolder(), MAPS_YML));
|
||||
File configFile = new File(getDataFolder(), MAPS_YML);
|
||||
|
||||
if(!configFile.exists())
|
||||
return;
|
||||
|
||||
Configuration config = YamlConfiguration.loadConfiguration(configFile);
|
||||
int version = config.getInt(CONFIG_VERSION_KEY, -1);
|
||||
|
||||
if (version == -1)
|
||||
|
|
|
@ -0,0 +1 @@
|
|||
toggleItem: WOODEN_HOE
|
Loading…
Reference in New Issue