Fixes some schematic files not being found with proper input

This commit is contained in:
IronApollo 2018-10-14 07:14:12 -04:00
parent dfb0c5671b
commit 17e8be0bd2

View File

@ -354,11 +354,21 @@ public enum ClipboardFormat {
dir = new File(dir + "." + getExtension()); dir = new File(dir + "." + getExtension());
} }
} }
if(!dir.exists()) {
for(ClipboardFormat format : values) {
if(new File(working, (Settings.IMP.PATHS.PER_PLAYER_SCHEMATICS ? (player.getUniqueId().toString() + File.separator) : "") + input + "." + format.getExtension()).exists()) {
return format.loadAllFromInput(player, input, message);
}
}
}
if (!dir.exists()) { if (!dir.exists()) {
if (message) BBC.SCHEMATIC_NOT_FOUND.send(player, input); if (message) BBC.SCHEMATIC_NOT_FOUND.send(player, input);
return null; return null;
} }
if (!dir.isDirectory()) { if (!dir.isDirectory()) {
if(!findByFile(dir).getExtension().equals(getExtension())) {
return findByFile(dir).loadAllFromInput(player, input, message);
}
ByteSource source = Files.asByteSource(dir); ByteSource source = Files.asByteSource(dir);
URI uri = dir.toURI(); URI uri = dir.toURI();
return new MultiClipboardHolder(uri, new LazyClipboardHolder(dir.toURI(), source, this, null)); return new MultiClipboardHolder(uri, new LazyClipboardHolder(dir.toURI(), source, this, null));