diff --git a/worldedit-sponge/build.gradle b/worldedit-sponge/build.gradle index 5bae0e26d..1786ce8c6 100644 --- a/worldedit-sponge/build.gradle +++ b/worldedit-sponge/build.gradle @@ -13,7 +13,7 @@ plugins { dependencies { compile project(':worldedit-core') - compile 'org.spongepowered:spongeapi:6.0.0-SNAPSHOT' + compile 'org.spongepowered:spongeapi:7.0.0-SNAPSHOT' testCompile group: 'org.mockito', name: 'mockito-core', version:'1.9.0-rc1' } diff --git a/worldedit-sponge/src/main/java/com/sk89q/worldedit/sponge/SpongeBiomeRegistry.java b/worldedit-sponge/src/main/java/com/sk89q/worldedit/sponge/SpongeBiomeRegistry.java index 83974cbdc..606937b04 100644 --- a/worldedit-sponge/src/main/java/com/sk89q/worldedit/sponge/SpongeBiomeRegistry.java +++ b/worldedit-sponge/src/main/java/com/sk89q/worldedit/sponge/SpongeBiomeRegistry.java @@ -42,7 +42,7 @@ class SpongeBiomeRegistry implements BiomeRegistry { @Override public List getBiomes() { - List list = new ArrayList(); + List list = new ArrayList<>(); for (BiomeType biome : Sponge.getGame().getRegistry().getAllOf(BiomeType.class)) { list.add(new BaseBiome(SpongeWorldEdit.inst().getAdapter().resolve(biome))); } diff --git a/worldedit-sponge/src/main/java/com/sk89q/worldedit/sponge/SpongePlatform.java b/worldedit-sponge/src/main/java/com/sk89q/worldedit/sponge/SpongePlatform.java index 39c10784b..a0be01208 100644 --- a/worldedit-sponge/src/main/java/com/sk89q/worldedit/sponge/SpongePlatform.java +++ b/worldedit-sponge/src/main/java/com/sk89q/worldedit/sponge/SpongePlatform.java @@ -20,6 +20,7 @@ package com.sk89q.worldedit.sponge; import com.sk89q.worldedit.WorldEdit; +import com.sk89q.worldedit.blocks.BlockType; import com.sk89q.worldedit.entity.Player; import com.sk89q.worldedit.event.platform.CommandEvent; import com.sk89q.worldedit.event.platform.CommandSuggestionEvent; @@ -57,10 +58,13 @@ class SpongePlatform extends AbstractPlatform implements MultiUserPlatform { public int resolveItem(String name) { if (name == null) return 0; - Optional optType = Sponge.getRegistry().getType(ItemType.class, name); - - return optType.map(itemType -> SpongeWorldEdit.inst().getAdapter().resolve(itemType)).orElse(0); - + Optional optBlock = Sponge.getRegistry().getType(org.spongepowered.api.block.BlockType.class, name); + if (optBlock.isPresent()) { + return optBlock.map(blockType -> SpongeWorldEdit.inst().getAdapter().resolve(blockType)).orElse(0); + } else { + Optional optType = Sponge.getRegistry().getType(ItemType.class, name); + return optType.map(itemType -> SpongeWorldEdit.inst().getAdapter().resolve(itemType)).orElse(0); + } } @Override @@ -96,7 +100,7 @@ class SpongePlatform extends AbstractPlatform implements MultiUserPlatform { return player; } else { Optional optPlayer = Sponge.getServer().getPlayer(player.getUniqueId()); - return optPlayer.isPresent() ? new SpongePlayer(this, optPlayer.get()) : null; + return optPlayer.map(player1 -> new SpongePlayer(this, player1)).orElse(null); } } @@ -178,7 +182,7 @@ class SpongePlatform extends AbstractPlatform implements MultiUserPlatform { @Override public Collection getConnectedUsers() { - List users = new ArrayList(); + List users = new ArrayList<>(); for (org.spongepowered.api.entity.living.player.Player player : Sponge.getServer().getOnlinePlayers()) { users.add(new SpongePlayer(this, player)); } diff --git a/worldedit-sponge/src/main/java/com/sk89q/worldedit/sponge/SpongePlayer.java b/worldedit-sponge/src/main/java/com/sk89q/worldedit/sponge/SpongePlayer.java index 0ef45cf47..8cf24040d 100644 --- a/worldedit-sponge/src/main/java/com/sk89q/worldedit/sponge/SpongePlayer.java +++ b/worldedit-sponge/src/main/java/com/sk89q/worldedit/sponge/SpongePlayer.java @@ -61,7 +61,7 @@ public class SpongePlayer extends AbstractPlayerActor { @Override public int getItemInHand() { Optional is = this.player.getItemInHand(HandTypes.MAIN_HAND); - return is.isPresent() ? SpongeWorldEdit.inst().getAdapter().resolve(is.get().getItem()) : 0; + return is.map(itemStack -> SpongeWorldEdit.inst().getAdapter().resolve(itemStack.getItem())).orElse(0); } @Override diff --git a/worldedit-sponge/src/main/resources/com/sk89q/worldedit/sponge/adapter/impl/Sponge_1_12_Impl$1.class b/worldedit-sponge/src/main/resources/com/sk89q/worldedit/sponge/adapter/impl/Sponge_1_12_Impl$1.class new file mode 100644 index 000000000..d3e8da114 Binary files /dev/null and b/worldedit-sponge/src/main/resources/com/sk89q/worldedit/sponge/adapter/impl/Sponge_1_12_Impl$1.class differ diff --git a/worldedit-sponge/src/main/resources/com/sk89q/worldedit/sponge/adapter/impl/Sponge_1_12_Impl$SpongeNMSWorld.class b/worldedit-sponge/src/main/resources/com/sk89q/worldedit/sponge/adapter/impl/Sponge_1_12_Impl$SpongeNMSWorld.class new file mode 100644 index 000000000..69e7875f2 Binary files /dev/null and b/worldedit-sponge/src/main/resources/com/sk89q/worldedit/sponge/adapter/impl/Sponge_1_12_Impl$SpongeNMSWorld.class differ diff --git a/worldedit-sponge/src/main/resources/com/sk89q/worldedit/sponge/adapter/impl/Sponge_1_12_Impl$TileEntityBaseBlock.class b/worldedit-sponge/src/main/resources/com/sk89q/worldedit/sponge/adapter/impl/Sponge_1_12_Impl$TileEntityBaseBlock.class new file mode 100644 index 000000000..2a5b4e62a Binary files /dev/null and b/worldedit-sponge/src/main/resources/com/sk89q/worldedit/sponge/adapter/impl/Sponge_1_12_Impl$TileEntityBaseBlock.class differ diff --git a/worldedit-sponge/src/main/resources/com/sk89q/worldedit/sponge/adapter/impl/Sponge_1_12_Impl.class b/worldedit-sponge/src/main/resources/com/sk89q/worldedit/sponge/adapter/impl/Sponge_1_12_Impl.class new file mode 100644 index 000000000..45e6a76bf Binary files /dev/null and b/worldedit-sponge/src/main/resources/com/sk89q/worldedit/sponge/adapter/impl/Sponge_1_12_Impl.class differ