mirror of
https://github.com/EngineHub/WorldGuard.git
synced 2025-02-28 18:21:20 +01:00
Make the full jump to 1.12.
Warning: this really really really does not work with previous MC versions.
This commit is contained in:
parent
3a8e3e84b8
commit
f76259df82
@ -4,17 +4,16 @@
|
||||
project.version = '6.2.2-SNAPSHOT'
|
||||
ext.internalVersion = project.version + ";" + gitCommitHash
|
||||
|
||||
sourceCompatibility = 1.7
|
||||
targetCompatibility = 1.7
|
||||
sourceCompatibility = 1.8
|
||||
targetCompatibility = 1.8
|
||||
|
||||
checkstyle.configFile = new File(projectDir, "config/checkstyle/checkstyle.xml")
|
||||
|
||||
dependencies {
|
||||
compile 'org.khelekore:prtree:1.5.0'
|
||||
compile 'org.bukkit:bukkit:1.11-R0.1-SNAPSHOT'
|
||||
compile 'org.bukkit:bukkit:1.12-R0.1-SNAPSHOT'
|
||||
compile 'com.sk89q.worldedit:worldedit-bukkit:6.1.3-SNAPSHOT'
|
||||
compile 'com.sk89q:squirrelid:0.1.0'
|
||||
compile 'com.sk89q:guavabackport:1.2'
|
||||
compile 'org.flywaydb:flyway-core:3.0'
|
||||
compile ('com.sk89q:commandbook:2.3') {
|
||||
exclude group: 'com.sk89q', module: 'worldedit'
|
||||
@ -41,14 +40,12 @@
|
||||
shadowJar {
|
||||
dependencies {
|
||||
include(dependency('org.khelekore:prtree:1.5.0'))
|
||||
include(dependency('com.sk89q:guavabackport:1.2'))
|
||||
include(dependency('com.sk89q:squirrelid:0.1.0'))
|
||||
include(dependency('org.flywaydb:flyway-core:3.0'))
|
||||
include(dependency('com.googlecode.json-simple:json-simple:1.1.1'))
|
||||
include(dependency('net.sf.opencsv:opencsv:2.0'))
|
||||
}
|
||||
|
||||
relocate('com.sk89q.guavabackport', 'com.sk89q.worldguard.internal.guava')
|
||||
relocate('org.flywaydb', 'com.sk89q.worldguard.internal.flywaydb')
|
||||
relocate('com.sk89q.squirrelid', 'com.sk89q.worldguard.util.profile')
|
||||
relocate('org.json.simple', 'com.sk89q.worldguard.util.jsonsimple')
|
||||
|
@ -19,11 +19,12 @@
|
||||
|
||||
package com.sk89q.worldguard.bukkit;
|
||||
|
||||
import org.bukkit.Location;
|
||||
import org.bukkit.entity.Player;
|
||||
|
||||
import com.sk89q.worldedit.Vector;
|
||||
import com.sk89q.worldguard.LocalPlayer;
|
||||
import org.bukkit.BanList.Type;
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.Location;
|
||||
import org.bukkit.entity.Player;
|
||||
|
||||
import java.util.UUID;
|
||||
|
||||
@ -82,7 +83,7 @@ public void kick(String msg) {
|
||||
@Override
|
||||
public void ban(String msg) {
|
||||
if (!silenced) {
|
||||
player.setBanned(true);
|
||||
Bukkit.getBanList(Type.NAME).addBan(player.getName(), null, null, null);
|
||||
player.kickPlayer(msg);
|
||||
}
|
||||
}
|
||||
|
@ -21,15 +21,25 @@
|
||||
|
||||
import com.google.common.collect.ImmutableList;
|
||||
import com.google.common.collect.Lists;
|
||||
import com.sk89q.guavabackport.util.concurrent.Futures;
|
||||
import com.sk89q.guavabackport.util.concurrent.ListeningExecutorService;
|
||||
import com.sk89q.guavabackport.util.concurrent.MoreExecutors;
|
||||
import com.google.common.util.concurrent.Futures;
|
||||
import com.google.common.util.concurrent.ListeningExecutorService;
|
||||
import com.google.common.util.concurrent.MoreExecutors;
|
||||
import com.sk89q.bukkit.util.CommandsManagerRegistration;
|
||||
import com.sk89q.minecraft.util.commands.*;
|
||||
import com.sk89q.minecraft.util.commands.CommandException;
|
||||
import com.sk89q.minecraft.util.commands.CommandPermissionsException;
|
||||
import com.sk89q.minecraft.util.commands.CommandUsageException;
|
||||
import com.sk89q.minecraft.util.commands.CommandsManager;
|
||||
import com.sk89q.minecraft.util.commands.MissingNestedCommandException;
|
||||
import com.sk89q.minecraft.util.commands.SimpleInjector;
|
||||
import com.sk89q.minecraft.util.commands.WrappedCommandException;
|
||||
import com.sk89q.squirrelid.cache.HashMapCache;
|
||||
import com.sk89q.squirrelid.cache.ProfileCache;
|
||||
import com.sk89q.squirrelid.cache.SQLiteCache;
|
||||
import com.sk89q.squirrelid.resolver.*;
|
||||
import com.sk89q.squirrelid.resolver.BukkitPlayerService;
|
||||
import com.sk89q.squirrelid.resolver.CacheForwardingService;
|
||||
import com.sk89q.squirrelid.resolver.CombinedProfileService;
|
||||
import com.sk89q.squirrelid.resolver.HttpRepositoryService;
|
||||
import com.sk89q.squirrelid.resolver.ProfileService;
|
||||
import com.sk89q.wepif.PermissionsResolverManager;
|
||||
import com.sk89q.worldedit.bukkit.WorldEditPlugin;
|
||||
import com.sk89q.worldguard.LocalPlayer;
|
||||
@ -37,27 +47,7 @@
|
||||
import com.sk89q.worldguard.bukkit.commands.ProtectionCommands;
|
||||
import com.sk89q.worldguard.bukkit.commands.ToggleCommands;
|
||||
import com.sk89q.worldguard.bukkit.event.player.ProcessPlayerEvent;
|
||||
import com.sk89q.worldguard.bukkit.listener.BlacklistListener;
|
||||
import com.sk89q.worldguard.bukkit.listener.BlockedPotionsListener;
|
||||
import com.sk89q.worldguard.bukkit.listener.BuildPermissionListener;
|
||||
import com.sk89q.worldguard.bukkit.listener.ChestProtectionListener;
|
||||
import com.sk89q.worldguard.bukkit.listener.DebuggingListener;
|
||||
import com.sk89q.worldguard.bukkit.listener.EventAbstractionListener;
|
||||
import com.sk89q.worldguard.bukkit.listener.InvincibilityListener;
|
||||
import com.sk89q.worldguard.bukkit.listener.PlayerModesListener;
|
||||
import com.sk89q.worldguard.bukkit.listener.PlayerMoveListener;
|
||||
import com.sk89q.worldguard.bukkit.listener.RegionFlagsListener;
|
||||
import com.sk89q.worldguard.bukkit.listener.RegionProtectionListener;
|
||||
import com.sk89q.worldguard.bukkit.listener.WorldGuardBlockListener;
|
||||
import com.sk89q.worldguard.bukkit.listener.WorldGuardCommandBookListener;
|
||||
import com.sk89q.worldguard.bukkit.listener.WorldGuardEntityListener;
|
||||
import com.sk89q.worldguard.bukkit.listener.WorldGuardHangingListener;
|
||||
import com.sk89q.worldguard.bukkit.listener.WorldGuardPlayerListener;
|
||||
import com.sk89q.worldguard.bukkit.listener.WorldGuardServerListener;
|
||||
import com.sk89q.worldguard.bukkit.listener.WorldGuardVehicleListener;
|
||||
import com.sk89q.worldguard.bukkit.listener.WorldGuardWeatherListener;
|
||||
import com.sk89q.worldguard.bukkit.listener.WorldGuardWorldListener;
|
||||
import com.sk89q.worldguard.bukkit.listener.WorldRulesListener;
|
||||
import com.sk89q.worldguard.bukkit.listener.*;
|
||||
import com.sk89q.worldguard.bukkit.util.Events;
|
||||
import com.sk89q.worldguard.protection.GlobalRegionManager;
|
||||
import com.sk89q.worldguard.protection.flags.DefaultFlag;
|
||||
|
@ -19,8 +19,8 @@
|
||||
|
||||
package com.sk89q.worldguard.bukkit.commands;
|
||||
|
||||
import com.sk89q.guavabackport.util.concurrent.Futures;
|
||||
import com.sk89q.guavabackport.util.concurrent.ListenableFuture;
|
||||
import com.google.common.util.concurrent.Futures;
|
||||
import com.google.common.util.concurrent.ListenableFuture;
|
||||
import com.sk89q.worldguard.util.task.FutureForwardingTask;
|
||||
import com.sk89q.worldguard.bukkit.WorldGuardPlugin;
|
||||
import org.bukkit.World;
|
||||
|
@ -20,9 +20,9 @@
|
||||
package com.sk89q.worldguard.bukkit.commands;
|
||||
|
||||
import com.google.common.base.Function;
|
||||
import com.sk89q.guavabackport.util.concurrent.FutureCallback;
|
||||
import com.sk89q.guavabackport.util.concurrent.Futures;
|
||||
import com.sk89q.guavabackport.util.concurrent.ListenableFuture;
|
||||
import com.google.common.util.concurrent.FutureCallback;
|
||||
import com.google.common.util.concurrent.Futures;
|
||||
import com.google.common.util.concurrent.ListenableFuture;
|
||||
import com.sk89q.worldguard.bukkit.WorldGuardPlugin;
|
||||
import com.sk89q.worldguard.util.paste.EngineHubPaste;
|
||||
import org.bukkit.ChatColor;
|
||||
|
@ -19,8 +19,8 @@
|
||||
|
||||
package com.sk89q.worldguard.bukkit.commands;
|
||||
|
||||
import com.sk89q.guavabackport.util.concurrent.ListenableFuture;
|
||||
import com.sk89q.guavabackport.util.concurrent.MoreExecutors;
|
||||
import com.google.common.util.concurrent.ListenableFuture;
|
||||
import com.google.common.util.concurrent.MoreExecutors;
|
||||
import org.bukkit.ChatColor;
|
||||
import org.bukkit.command.CommandSender;
|
||||
|
||||
@ -49,7 +49,7 @@ public void run() {
|
||||
}
|
||||
|
||||
public static void addProgressListener(ListenableFuture<?> future, CommandSender sender, String message) {
|
||||
future.addListener(new FutureProgressListener(sender, message), MoreExecutors.sameThreadExecutor());
|
||||
future.addListener(new FutureProgressListener(sender, message), MoreExecutors.directExecutor());
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -19,7 +19,7 @@
|
||||
|
||||
package com.sk89q.worldguard.bukkit.commands;
|
||||
|
||||
import com.sk89q.guavabackport.util.concurrent.FutureCallback;
|
||||
import com.google.common.util.concurrent.FutureCallback;
|
||||
import com.sk89q.worldguard.bukkit.WorldGuardPlugin;
|
||||
import org.bukkit.ChatColor;
|
||||
import org.bukkit.command.CommandSender;
|
||||
|
@ -22,9 +22,9 @@
|
||||
import com.google.common.base.Predicate;
|
||||
import com.google.common.base.Predicates;
|
||||
import com.google.common.io.Files;
|
||||
import com.sk89q.guavabackport.util.concurrent.FutureCallback;
|
||||
import com.sk89q.guavabackport.util.concurrent.Futures;
|
||||
import com.sk89q.guavabackport.util.concurrent.MoreExecutors;
|
||||
import com.google.common.util.concurrent.FutureCallback;
|
||||
import com.google.common.util.concurrent.Futures;
|
||||
import com.google.common.util.concurrent.MoreExecutors;
|
||||
import com.sk89q.minecraft.util.commands.*;
|
||||
import com.sk89q.worldguard.bukkit.ConfigurationManager;
|
||||
import com.sk89q.worldguard.bukkit.WorldGuardPlugin;
|
||||
@ -204,7 +204,7 @@ public void run() {
|
||||
activeSampler = null;
|
||||
}
|
||||
}
|
||||
}, MoreExecutors.sameThreadExecutor());
|
||||
}, MoreExecutors.directExecutor());
|
||||
|
||||
Futures.addCallback(sampler.getFuture(), new FutureCallback<Sampler>() {
|
||||
@Override
|
||||
|
@ -19,8 +19,8 @@
|
||||
|
||||
package com.sk89q.worldguard.bukkit.commands.region;
|
||||
|
||||
import com.sk89q.guavabackport.util.concurrent.Futures;
|
||||
import com.sk89q.guavabackport.util.concurrent.ListenableFuture;
|
||||
import com.google.common.util.concurrent.Futures;
|
||||
import com.google.common.util.concurrent.ListenableFuture;
|
||||
import com.sk89q.minecraft.util.commands.Command;
|
||||
import com.sk89q.minecraft.util.commands.CommandContext;
|
||||
import com.sk89q.minecraft.util.commands.CommandException;
|
||||
|
@ -19,8 +19,8 @@
|
||||
|
||||
package com.sk89q.worldguard.bukkit.commands.region;
|
||||
|
||||
import com.sk89q.guavabackport.util.concurrent.Futures;
|
||||
import com.sk89q.guavabackport.util.concurrent.ListenableFuture;
|
||||
import com.google.common.util.concurrent.Futures;
|
||||
import com.google.common.util.concurrent.ListenableFuture;
|
||||
import com.sk89q.minecraft.util.commands.Command;
|
||||
import com.sk89q.minecraft.util.commands.CommandContext;
|
||||
import com.sk89q.minecraft.util.commands.CommandException;
|
||||
@ -72,7 +72,6 @@
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
import java.util.Comparator;
|
||||
import java.util.List;
|
||||
import java.util.logging.Level;
|
||||
import java.util.logging.Logger;
|
||||
|
@ -918,12 +918,12 @@ private static <T extends Event & Cancellable> void handleBlockRightClick(T even
|
||||
}
|
||||
|
||||
// Handle created armor stands
|
||||
if (item != null && item.getType() == Materials.ARMOR_STAND) {
|
||||
if (item != null && item.getType() == Material.ARMOR_STAND) {
|
||||
Events.fireToCancel(event, new SpawnEntityEvent(event, cause, placed.getLocation().add(0.5, 0, 0.5), EntityType.ARMOR_STAND));
|
||||
return;
|
||||
}
|
||||
|
||||
if (item != null && item.getType() == Materials.END_CRYSTAL) { /*&& placed.getType() == Material.BEDROCK) {*/ // in vanilla you can only place them on bedrock but who knows what plugins will add
|
||||
if (item != null && item.getType() == Material.END_CRYSTAL) { /*&& placed.getType() == Material.BEDROCK) {*/ // in vanilla you can only place them on bedrock but who knows what plugins will add
|
||||
// may be overprotective as a result, but better than being underprotective
|
||||
Events.fireToCancel(event, new SpawnEntityEvent(event, cause, placed.getLocation().add(0.5, 0, 0.5), EntityType.ENDER_CRYSTAL));
|
||||
return;
|
||||
|
@ -46,37 +46,26 @@ public final class Materials {
|
||||
private static final Map<Material, Integer> MATERIAL_FLAGS = new HashMap<Material, Integer>();
|
||||
private static final Set<PotionEffectType> DAMAGE_EFFECTS = new HashSet<PotionEffectType>();
|
||||
|
||||
public static Material ARMOR_STAND;
|
||||
public static Material END_CRYSTAL;
|
||||
|
||||
private static Set<Material> shulkerBoxes = new HashSet<>();
|
||||
|
||||
static {
|
||||
try {
|
||||
// for backwards compatible access to material enum
|
||||
ARMOR_STAND = Material.ARMOR_STAND;
|
||||
END_CRYSTAL = Material.END_CRYSTAL;
|
||||
} catch (NoSuchFieldError ignored) {}
|
||||
|
||||
try {
|
||||
shulkerBoxes.add(Material.WHITE_SHULKER_BOX);
|
||||
shulkerBoxes.add(Material.ORANGE_SHULKER_BOX);
|
||||
shulkerBoxes.add(Material.MAGENTA_SHULKER_BOX);
|
||||
shulkerBoxes.add(Material.LIGHT_BLUE_SHULKER_BOX);
|
||||
shulkerBoxes.add(Material.YELLOW_SHULKER_BOX);
|
||||
shulkerBoxes.add(Material.LIME_SHULKER_BOX);
|
||||
shulkerBoxes.add(Material.PINK_SHULKER_BOX);
|
||||
shulkerBoxes.add(Material.GRAY_SHULKER_BOX);
|
||||
shulkerBoxes.add(Material.SILVER_SHULKER_BOX); // who called this silver?
|
||||
shulkerBoxes.add(Material.CYAN_SHULKER_BOX);
|
||||
shulkerBoxes.add(Material.PURPLE_SHULKER_BOX);
|
||||
shulkerBoxes.add(Material.BLUE_SHULKER_BOX);
|
||||
shulkerBoxes.add(Material.BROWN_SHULKER_BOX);
|
||||
shulkerBoxes.add(Material.GREEN_SHULKER_BOX);
|
||||
shulkerBoxes.add(Material.RED_SHULKER_BOX);
|
||||
shulkerBoxes.add(Material.BLACK_SHULKER_BOX);
|
||||
} catch (NoSuchFieldError ignored) {
|
||||
}
|
||||
shulkerBoxes.add(Material.WHITE_SHULKER_BOX);
|
||||
shulkerBoxes.add(Material.ORANGE_SHULKER_BOX);
|
||||
shulkerBoxes.add(Material.MAGENTA_SHULKER_BOX);
|
||||
shulkerBoxes.add(Material.LIGHT_BLUE_SHULKER_BOX);
|
||||
shulkerBoxes.add(Material.YELLOW_SHULKER_BOX);
|
||||
shulkerBoxes.add(Material.LIME_SHULKER_BOX);
|
||||
shulkerBoxes.add(Material.PINK_SHULKER_BOX);
|
||||
shulkerBoxes.add(Material.GRAY_SHULKER_BOX);
|
||||
shulkerBoxes.add(Material.SILVER_SHULKER_BOX); // who called this silver?
|
||||
shulkerBoxes.add(Material.CYAN_SHULKER_BOX);
|
||||
shulkerBoxes.add(Material.PURPLE_SHULKER_BOX);
|
||||
shulkerBoxes.add(Material.BLUE_SHULKER_BOX);
|
||||
shulkerBoxes.add(Material.BROWN_SHULKER_BOX);
|
||||
shulkerBoxes.add(Material.GREEN_SHULKER_BOX);
|
||||
shulkerBoxes.add(Material.RED_SHULKER_BOX);
|
||||
shulkerBoxes.add(Material.BLACK_SHULKER_BOX);
|
||||
|
||||
ENTITY_ITEMS.put(EntityType.PAINTING, Material.PAINTING);
|
||||
ENTITY_ITEMS.put(EntityType.ARROW, Material.ARROW);
|
||||
@ -97,9 +86,7 @@ public final class Materials {
|
||||
ENTITY_ITEMS.put(EntityType.MINECART_HOPPER, Material.HOPPER_MINECART);
|
||||
ENTITY_ITEMS.put(EntityType.SPLASH_POTION, Material.POTION);
|
||||
ENTITY_ITEMS.put(EntityType.EGG, Material.EGG);
|
||||
try {
|
||||
ENTITY_ITEMS.put(EntityType.ARMOR_STAND, Material.ARMOR_STAND);
|
||||
} catch (NoSuchFieldError ignored) {}
|
||||
ENTITY_ITEMS.put(EntityType.ARMOR_STAND, Material.ARMOR_STAND);
|
||||
|
||||
MATERIAL_FLAGS.put(Material.AIR, 0);
|
||||
MATERIAL_FLAGS.put(Material.STONE, 0);
|
||||
@ -272,65 +259,79 @@ public final class Materials {
|
||||
MATERIAL_FLAGS.put(Material.COAL_BLOCK, 0);
|
||||
MATERIAL_FLAGS.put(Material.PACKED_ICE, 0);
|
||||
MATERIAL_FLAGS.put(Material.DOUBLE_PLANT, 0);
|
||||
try {
|
||||
MATERIAL_FLAGS.put(Material.PRISMARINE, 0);
|
||||
MATERIAL_FLAGS.put(Material.SEA_LANTERN, 0);
|
||||
MATERIAL_FLAGS.put(Material.SLIME_BLOCK, 0);
|
||||
MATERIAL_FLAGS.put(Material.IRON_TRAPDOOR, 0);
|
||||
MATERIAL_FLAGS.put(Material.STANDING_BANNER, 0);
|
||||
MATERIAL_FLAGS.put(Material.WALL_BANNER, 0);
|
||||
MATERIAL_FLAGS.put(Material.DAYLIGHT_DETECTOR_INVERTED, MODIFIED_ON_RIGHT);
|
||||
MATERIAL_FLAGS.put(Material.RED_SANDSTONE, 0);
|
||||
MATERIAL_FLAGS.put(Material.RED_SANDSTONE_STAIRS, 0);
|
||||
MATERIAL_FLAGS.put(Material.DOUBLE_STONE_SLAB2, 0);
|
||||
MATERIAL_FLAGS.put(Material.STONE_SLAB2, 0);
|
||||
MATERIAL_FLAGS.put(Material.SPRUCE_FENCE_GATE, MODIFIED_ON_RIGHT);
|
||||
MATERIAL_FLAGS.put(Material.BIRCH_FENCE_GATE, MODIFIED_ON_RIGHT);
|
||||
MATERIAL_FLAGS.put(Material.JUNGLE_FENCE_GATE, MODIFIED_ON_RIGHT);
|
||||
MATERIAL_FLAGS.put(Material.DARK_OAK_FENCE_GATE, MODIFIED_ON_RIGHT);
|
||||
MATERIAL_FLAGS.put(Material.ACACIA_FENCE_GATE, MODIFIED_ON_RIGHT);
|
||||
MATERIAL_FLAGS.put(Material.SPRUCE_FENCE, 0);
|
||||
MATERIAL_FLAGS.put(Material.BIRCH_FENCE, 0);
|
||||
MATERIAL_FLAGS.put(Material.JUNGLE_FENCE, 0);
|
||||
MATERIAL_FLAGS.put(Material.DARK_OAK_FENCE, 0);
|
||||
MATERIAL_FLAGS.put(Material.ACACIA_FENCE, 0);
|
||||
MATERIAL_FLAGS.put(Material.SPRUCE_DOOR, MODIFIED_ON_RIGHT);
|
||||
MATERIAL_FLAGS.put(Material.BIRCH_DOOR, MODIFIED_ON_RIGHT);
|
||||
MATERIAL_FLAGS.put(Material.JUNGLE_DOOR, MODIFIED_ON_RIGHT);
|
||||
MATERIAL_FLAGS.put(Material.ACACIA_DOOR, MODIFIED_ON_RIGHT);
|
||||
MATERIAL_FLAGS.put(Material.DARK_OAK_DOOR, MODIFIED_ON_RIGHT);
|
||||
} catch (NoSuchFieldError ignored) {
|
||||
}
|
||||
try {
|
||||
MATERIAL_FLAGS.put(Material.GRASS_PATH, 0);
|
||||
MATERIAL_FLAGS.put(Material.CHORUS_PLANT, 0);
|
||||
MATERIAL_FLAGS.put(Material.CHORUS_FLOWER, 0);
|
||||
MATERIAL_FLAGS.put(Material.BEETROOT_BLOCK, 0);
|
||||
MATERIAL_FLAGS.put(Material.END_ROD, 0);
|
||||
MATERIAL_FLAGS.put(Material.END_BRICKS, 0);
|
||||
MATERIAL_FLAGS.put(Material.END_GATEWAY, 0);
|
||||
MATERIAL_FLAGS.put(Material.FROSTED_ICE, 0);
|
||||
MATERIAL_FLAGS.put(Material.GRASS_PATH, 0);
|
||||
MATERIAL_FLAGS.put(Material.PURPUR_BLOCK, 0);
|
||||
MATERIAL_FLAGS.put(Material.PURPUR_STAIRS, 0);
|
||||
MATERIAL_FLAGS.put(Material.PURPUR_PILLAR, 0);
|
||||
MATERIAL_FLAGS.put(Material.PURPUR_SLAB, 0);
|
||||
MATERIAL_FLAGS.put(Material.STRUCTURE_BLOCK, MODIFIED_ON_LEFT | MODIFIED_ON_RIGHT);
|
||||
MATERIAL_FLAGS.put(Material.COMMAND_REPEATING, MODIFIED_ON_RIGHT);
|
||||
MATERIAL_FLAGS.put(Material.COMMAND_CHAIN , MODIFIED_ON_RIGHT);
|
||||
} catch (NoSuchFieldError ignored) {
|
||||
}
|
||||
try { // 1.10
|
||||
MATERIAL_FLAGS.put(Material.MAGMA, 0);
|
||||
MATERIAL_FLAGS.put(Material.NETHER_WART_BLOCK, 0);
|
||||
MATERIAL_FLAGS.put(Material.RED_NETHER_BRICK, 0);
|
||||
MATERIAL_FLAGS.put(Material.BONE_BLOCK, 0);
|
||||
MATERIAL_FLAGS.put(Material.STRUCTURE_VOID, 0);
|
||||
} catch (NoSuchFieldError ignored) {
|
||||
}
|
||||
|
||||
MATERIAL_FLAGS.put(Material.PRISMARINE, 0);
|
||||
MATERIAL_FLAGS.put(Material.SEA_LANTERN, 0);
|
||||
MATERIAL_FLAGS.put(Material.SLIME_BLOCK, 0);
|
||||
MATERIAL_FLAGS.put(Material.IRON_TRAPDOOR, 0);
|
||||
MATERIAL_FLAGS.put(Material.STANDING_BANNER, 0);
|
||||
MATERIAL_FLAGS.put(Material.WALL_BANNER, 0);
|
||||
MATERIAL_FLAGS.put(Material.DAYLIGHT_DETECTOR_INVERTED, MODIFIED_ON_RIGHT);
|
||||
MATERIAL_FLAGS.put(Material.RED_SANDSTONE, 0);
|
||||
MATERIAL_FLAGS.put(Material.RED_SANDSTONE_STAIRS, 0);
|
||||
MATERIAL_FLAGS.put(Material.DOUBLE_STONE_SLAB2, 0);
|
||||
MATERIAL_FLAGS.put(Material.STONE_SLAB2, 0);
|
||||
MATERIAL_FLAGS.put(Material.SPRUCE_FENCE_GATE, MODIFIED_ON_RIGHT);
|
||||
MATERIAL_FLAGS.put(Material.BIRCH_FENCE_GATE, MODIFIED_ON_RIGHT);
|
||||
MATERIAL_FLAGS.put(Material.JUNGLE_FENCE_GATE, MODIFIED_ON_RIGHT);
|
||||
MATERIAL_FLAGS.put(Material.DARK_OAK_FENCE_GATE, MODIFIED_ON_RIGHT);
|
||||
MATERIAL_FLAGS.put(Material.ACACIA_FENCE_GATE, MODIFIED_ON_RIGHT);
|
||||
MATERIAL_FLAGS.put(Material.SPRUCE_FENCE, 0);
|
||||
MATERIAL_FLAGS.put(Material.BIRCH_FENCE, 0);
|
||||
MATERIAL_FLAGS.put(Material.JUNGLE_FENCE, 0);
|
||||
MATERIAL_FLAGS.put(Material.DARK_OAK_FENCE, 0);
|
||||
MATERIAL_FLAGS.put(Material.ACACIA_FENCE, 0);
|
||||
MATERIAL_FLAGS.put(Material.SPRUCE_DOOR, MODIFIED_ON_RIGHT);
|
||||
MATERIAL_FLAGS.put(Material.BIRCH_DOOR, MODIFIED_ON_RIGHT);
|
||||
MATERIAL_FLAGS.put(Material.JUNGLE_DOOR, MODIFIED_ON_RIGHT);
|
||||
MATERIAL_FLAGS.put(Material.ACACIA_DOOR, MODIFIED_ON_RIGHT);
|
||||
MATERIAL_FLAGS.put(Material.DARK_OAK_DOOR, MODIFIED_ON_RIGHT);
|
||||
|
||||
MATERIAL_FLAGS.put(Material.GRASS_PATH, 0);
|
||||
MATERIAL_FLAGS.put(Material.CHORUS_PLANT, 0);
|
||||
MATERIAL_FLAGS.put(Material.CHORUS_FLOWER, 0);
|
||||
MATERIAL_FLAGS.put(Material.BEETROOT_BLOCK, 0);
|
||||
MATERIAL_FLAGS.put(Material.END_ROD, 0);
|
||||
MATERIAL_FLAGS.put(Material.END_BRICKS, 0);
|
||||
MATERIAL_FLAGS.put(Material.END_GATEWAY, 0);
|
||||
MATERIAL_FLAGS.put(Material.FROSTED_ICE, 0);
|
||||
MATERIAL_FLAGS.put(Material.GRASS_PATH, 0);
|
||||
MATERIAL_FLAGS.put(Material.PURPUR_BLOCK, 0);
|
||||
MATERIAL_FLAGS.put(Material.PURPUR_STAIRS, 0);
|
||||
MATERIAL_FLAGS.put(Material.PURPUR_PILLAR, 0);
|
||||
MATERIAL_FLAGS.put(Material.PURPUR_SLAB, 0);
|
||||
MATERIAL_FLAGS.put(Material.STRUCTURE_BLOCK, MODIFIED_ON_LEFT | MODIFIED_ON_RIGHT);
|
||||
MATERIAL_FLAGS.put(Material.COMMAND_REPEATING, MODIFIED_ON_RIGHT);
|
||||
MATERIAL_FLAGS.put(Material.COMMAND_CHAIN , MODIFIED_ON_RIGHT);
|
||||
|
||||
MATERIAL_FLAGS.put(Material.MAGMA, 0);
|
||||
MATERIAL_FLAGS.put(Material.NETHER_WART_BLOCK, 0);
|
||||
MATERIAL_FLAGS.put(Material.RED_NETHER_BRICK, 0);
|
||||
MATERIAL_FLAGS.put(Material.BONE_BLOCK, 0);
|
||||
MATERIAL_FLAGS.put(Material.STRUCTURE_VOID, 0);
|
||||
for (Material m : shulkerBoxes) {
|
||||
MATERIAL_FLAGS.put(m, MODIFIED_ON_RIGHT);
|
||||
}
|
||||
// 1.12
|
||||
MATERIAL_FLAGS.put(Material.CONCRETE, 0);
|
||||
MATERIAL_FLAGS.put(Material.CONCRETE_POWDER, 0);
|
||||
|
||||
MATERIAL_FLAGS.put(Material.WHITE_GLAZED_TERRACOTTA, 0);
|
||||
MATERIAL_FLAGS.put(Material.ORANGE_GLAZED_TERRACOTTA, 0);
|
||||
MATERIAL_FLAGS.put(Material.MAGENTA_GLAZED_TERRACOTTA, 0);
|
||||
MATERIAL_FLAGS.put(Material.LIGHT_BLUE_GLAZED_TERRACOTTA, 0);
|
||||
MATERIAL_FLAGS.put(Material.YELLOW_GLAZED_TERRACOTTA, 0);
|
||||
MATERIAL_FLAGS.put(Material.LIME_GLAZED_TERRACOTTA, 0);
|
||||
MATERIAL_FLAGS.put(Material.PINK_GLAZED_TERRACOTTA, 0);
|
||||
MATERIAL_FLAGS.put(Material.GRAY_GLAZED_TERRACOTTA, 0);
|
||||
MATERIAL_FLAGS.put(Material.SILVER_GLAZED_TERRACOTTA, 0);
|
||||
MATERIAL_FLAGS.put(Material.CYAN_GLAZED_TERRACOTTA, 0);
|
||||
MATERIAL_FLAGS.put(Material.PURPLE_GLAZED_TERRACOTTA, 0);
|
||||
MATERIAL_FLAGS.put(Material.BLUE_GLAZED_TERRACOTTA, 0);
|
||||
MATERIAL_FLAGS.put(Material.BROWN_GLAZED_TERRACOTTA, 0);
|
||||
MATERIAL_FLAGS.put(Material.GREEN_GLAZED_TERRACOTTA, 0);
|
||||
MATERIAL_FLAGS.put(Material.RED_GLAZED_TERRACOTTA, 0);
|
||||
MATERIAL_FLAGS.put(Material.BLACK_GLAZED_TERRACOTTA, 0);
|
||||
|
||||
MATERIAL_FLAGS.put(Material.IRON_SPADE, MODIFIES_BLOCKS);
|
||||
MATERIAL_FLAGS.put(Material.IRON_PICKAXE, 0);
|
||||
@ -491,52 +492,48 @@ public final class Materials {
|
||||
MATERIAL_FLAGS.put(Material.LEASH, 0);
|
||||
MATERIAL_FLAGS.put(Material.NAME_TAG, 0);
|
||||
MATERIAL_FLAGS.put(Material.COMMAND_MINECART, 0);
|
||||
try { // 1.8
|
||||
MATERIAL_FLAGS.put(Material.PRISMARINE_SHARD, 0);
|
||||
MATERIAL_FLAGS.put(Material.PRISMARINE_CRYSTALS, 0);
|
||||
MATERIAL_FLAGS.put(Material.RABBIT, 0);
|
||||
MATERIAL_FLAGS.put(Material.COOKED_RABBIT, 0);
|
||||
MATERIAL_FLAGS.put(Material.RABBIT_STEW, 0);
|
||||
MATERIAL_FLAGS.put(Material.RABBIT_FOOT, 0);
|
||||
MATERIAL_FLAGS.put(Material.RABBIT_HIDE, 0);
|
||||
MATERIAL_FLAGS.put(Material.ARMOR_STAND, 0);
|
||||
MATERIAL_FLAGS.put(Material.IRON_BARDING, 0);
|
||||
MATERIAL_FLAGS.put(Material.GOLD_BARDING, 0);
|
||||
MATERIAL_FLAGS.put(Material.DIAMOND_BARDING, 0);;
|
||||
MATERIAL_FLAGS.put(Material.MUTTON, 0);
|
||||
MATERIAL_FLAGS.put(Material.COOKED_MUTTON, 0);
|
||||
MATERIAL_FLAGS.put(Material.BANNER, 0);
|
||||
MATERIAL_FLAGS.put(Material.SPRUCE_DOOR_ITEM, 0);
|
||||
MATERIAL_FLAGS.put(Material.BIRCH_DOOR_ITEM, 0);
|
||||
MATERIAL_FLAGS.put(Material.JUNGLE_DOOR_ITEM, 0);
|
||||
MATERIAL_FLAGS.put(Material.ACACIA_DOOR_ITEM, 0);
|
||||
MATERIAL_FLAGS.put(Material.DARK_OAK_DOOR_ITEM, 0);
|
||||
} catch (NoSuchFieldError ignored) {
|
||||
}
|
||||
try { // 1.9 + 1.10 (oops)
|
||||
MATERIAL_FLAGS.put(Material.BOAT_SPRUCE, 0);
|
||||
MATERIAL_FLAGS.put(Material.BOAT_BIRCH, 0);
|
||||
MATERIAL_FLAGS.put(Material.BOAT_ACACIA, 0);
|
||||
MATERIAL_FLAGS.put(Material.BOAT_DARK_OAK, 0);
|
||||
MATERIAL_FLAGS.put(Material.BEETROOT, 0);
|
||||
MATERIAL_FLAGS.put(Material.BEETROOT_SOUP, 0);
|
||||
MATERIAL_FLAGS.put(Material.BEETROOT_SEEDS, MODIFIES_BLOCKS);
|
||||
MATERIAL_FLAGS.put(Material.CHORUS_FRUIT, 0);
|
||||
MATERIAL_FLAGS.put(Material.CHORUS_FRUIT_POPPED, 0);
|
||||
MATERIAL_FLAGS.put(Material.SHIELD, 0);
|
||||
MATERIAL_FLAGS.put(Material.SPECTRAL_ARROW, 0);
|
||||
MATERIAL_FLAGS.put(Material.TIPPED_ARROW, 0);
|
||||
MATERIAL_FLAGS.put(Material.DRAGONS_BREATH, 0);
|
||||
MATERIAL_FLAGS.put(Material.LINGERING_POTION, 0);
|
||||
MATERIAL_FLAGS.put(Material.ELYTRA, 0);
|
||||
MATERIAL_FLAGS.put(Material.END_CRYSTAL, 0);
|
||||
} catch (NoSuchFieldError ignored) {
|
||||
}
|
||||
try { // 1.11
|
||||
MATERIAL_FLAGS.put(Material.TOTEM, 0);
|
||||
MATERIAL_FLAGS.put(Material.SHULKER_SHELL, 0);
|
||||
} catch (NoSuchFieldError ignored) {
|
||||
}
|
||||
|
||||
MATERIAL_FLAGS.put(Material.PRISMARINE_SHARD, 0);
|
||||
MATERIAL_FLAGS.put(Material.PRISMARINE_CRYSTALS, 0);
|
||||
MATERIAL_FLAGS.put(Material.RABBIT, 0);
|
||||
MATERIAL_FLAGS.put(Material.COOKED_RABBIT, 0);
|
||||
MATERIAL_FLAGS.put(Material.RABBIT_STEW, 0);
|
||||
MATERIAL_FLAGS.put(Material.RABBIT_FOOT, 0);
|
||||
MATERIAL_FLAGS.put(Material.RABBIT_HIDE, 0);
|
||||
MATERIAL_FLAGS.put(Material.ARMOR_STAND, 0);
|
||||
MATERIAL_FLAGS.put(Material.IRON_BARDING, 0);
|
||||
MATERIAL_FLAGS.put(Material.GOLD_BARDING, 0);
|
||||
MATERIAL_FLAGS.put(Material.DIAMOND_BARDING, 0);;
|
||||
MATERIAL_FLAGS.put(Material.MUTTON, 0);
|
||||
MATERIAL_FLAGS.put(Material.COOKED_MUTTON, 0);
|
||||
MATERIAL_FLAGS.put(Material.BANNER, 0);
|
||||
MATERIAL_FLAGS.put(Material.SPRUCE_DOOR_ITEM, 0);
|
||||
MATERIAL_FLAGS.put(Material.BIRCH_DOOR_ITEM, 0);
|
||||
MATERIAL_FLAGS.put(Material.JUNGLE_DOOR_ITEM, 0);
|
||||
MATERIAL_FLAGS.put(Material.ACACIA_DOOR_ITEM, 0);
|
||||
MATERIAL_FLAGS.put(Material.DARK_OAK_DOOR_ITEM, 0);
|
||||
|
||||
MATERIAL_FLAGS.put(Material.BOAT_SPRUCE, 0);
|
||||
MATERIAL_FLAGS.put(Material.BOAT_BIRCH, 0);
|
||||
MATERIAL_FLAGS.put(Material.BOAT_ACACIA, 0);
|
||||
MATERIAL_FLAGS.put(Material.BOAT_DARK_OAK, 0);
|
||||
MATERIAL_FLAGS.put(Material.BEETROOT, 0);
|
||||
MATERIAL_FLAGS.put(Material.BEETROOT_SOUP, 0);
|
||||
MATERIAL_FLAGS.put(Material.BEETROOT_SEEDS, MODIFIES_BLOCKS);
|
||||
MATERIAL_FLAGS.put(Material.CHORUS_FRUIT, 0);
|
||||
MATERIAL_FLAGS.put(Material.CHORUS_FRUIT_POPPED, 0);
|
||||
MATERIAL_FLAGS.put(Material.SHIELD, 0);
|
||||
MATERIAL_FLAGS.put(Material.SPECTRAL_ARROW, 0);
|
||||
MATERIAL_FLAGS.put(Material.TIPPED_ARROW, 0);
|
||||
MATERIAL_FLAGS.put(Material.DRAGONS_BREATH, 0);
|
||||
MATERIAL_FLAGS.put(Material.LINGERING_POTION, 0);
|
||||
MATERIAL_FLAGS.put(Material.ELYTRA, 0);
|
||||
MATERIAL_FLAGS.put(Material.END_CRYSTAL, 0);
|
||||
|
||||
MATERIAL_FLAGS.put(Material.TOTEM, 0);
|
||||
MATERIAL_FLAGS.put(Material.SHULKER_SHELL, 0);
|
||||
MATERIAL_FLAGS.put(Material.KNOWLEDGE_BOOK, 0);
|
||||
|
||||
MATERIAL_FLAGS.put(Material.GOLD_RECORD, 0);
|
||||
MATERIAL_FLAGS.put(Material.GREEN_RECORD, 0);
|
||||
MATERIAL_FLAGS.put(Material.RECORD_3, 0);
|
||||
@ -574,11 +571,9 @@ public final class Materials {
|
||||
DAMAGE_EFFECTS.add(PotionEffectType.WEAKNESS);
|
||||
DAMAGE_EFFECTS.add(PotionEffectType.WITHER);
|
||||
|
||||
try {
|
||||
DAMAGE_EFFECTS.add(PotionEffectType.LEVITATION); // considered by game so I guess
|
||||
DAMAGE_EFFECTS.add(PotionEffectType.UNLUCK);
|
||||
} catch (NoSuchFieldError ignored) {
|
||||
}
|
||||
DAMAGE_EFFECTS.add(PotionEffectType.LEVITATION); // considered by game so I guess
|
||||
DAMAGE_EFFECTS.add(PotionEffectType.UNLUCK);
|
||||
|
||||
}
|
||||
|
||||
private Materials() {
|
||||
@ -737,16 +732,12 @@ public static boolean isMinecart(Material material) {
|
||||
* @return true if a Boat item
|
||||
*/
|
||||
public static boolean isBoat(Material material) {
|
||||
try {
|
||||
return material == Material.BOAT
|
||||
|| material == Material.BOAT_ACACIA
|
||||
|| material == Material.BOAT_SPRUCE
|
||||
|| material == Material.BOAT_DARK_OAK
|
||||
|| material == Material.BOAT_JUNGLE
|
||||
|| material == Material.BOAT_BIRCH;
|
||||
} catch (NoSuchFieldError ignored) {
|
||||
return material == Material.BOAT;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -38,7 +38,14 @@
|
||||
import com.sk89q.worldguard.util.Normal;
|
||||
|
||||
import javax.annotation.Nullable;
|
||||
import java.util.*;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collection;
|
||||
import java.util.Collections;
|
||||
import java.util.HashMap;
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
import java.util.concurrent.atomic.AtomicBoolean;
|
||||
import java.util.concurrent.atomic.AtomicInteger;
|
||||
|
||||
|
@ -21,8 +21,8 @@
|
||||
|
||||
import com.google.common.base.Predicate;
|
||||
import com.google.common.base.Supplier;
|
||||
import com.sk89q.guavabackport.util.concurrent.ListeningExecutorService;
|
||||
import com.sk89q.guavabackport.util.concurrent.MoreExecutors;
|
||||
import com.google.common.util.concurrent.ListeningExecutorService;
|
||||
import com.google.common.util.concurrent.MoreExecutors;
|
||||
import com.sk89q.worldguard.util.concurrent.EvenMoreExecutors;
|
||||
import com.sk89q.worldedit.Vector;
|
||||
import com.sk89q.worldedit.Vector2D;
|
||||
|
@ -19,7 +19,7 @@
|
||||
|
||||
package com.sk89q.worldguard.util.paste;
|
||||
|
||||
import com.sk89q.guavabackport.util.concurrent.ListenableFuture;
|
||||
import com.google.common.util.concurrent.ListenableFuture;
|
||||
import com.sk89q.worldguard.util.net.HttpRequest;
|
||||
import com.sk89q.worldguard.util.net.HttpRequest.Form;
|
||||
import org.json.simple.JSONValue;
|
||||
|
@ -19,9 +19,7 @@
|
||||
|
||||
package com.sk89q.worldguard.util.paste;
|
||||
|
||||
import com.sk89q.guavabackport.util.concurrent.FutureCallback;
|
||||
import com.sk89q.guavabackport.util.concurrent.Futures;
|
||||
import com.sk89q.guavabackport.util.concurrent.ListenableFuture;
|
||||
import com.google.common.util.concurrent.ListenableFuture;
|
||||
import com.sk89q.worldguard.util.net.HttpRequest;
|
||||
import com.sk89q.worldguard.util.net.HttpRequest.Form;
|
||||
|
||||
|
@ -19,7 +19,7 @@
|
||||
|
||||
package com.sk89q.worldguard.util.paste;
|
||||
|
||||
import com.sk89q.guavabackport.util.concurrent.ListenableFuture;
|
||||
import com.google.common.util.concurrent.ListenableFuture;
|
||||
|
||||
import java.net.URL;
|
||||
|
||||
|
@ -19,8 +19,8 @@
|
||||
|
||||
package com.sk89q.worldguard.util.paste;
|
||||
|
||||
import com.sk89q.guavabackport.util.concurrent.ListeningExecutorService;
|
||||
import com.sk89q.guavabackport.util.concurrent.MoreExecutors;
|
||||
import com.google.common.util.concurrent.ListeningExecutorService;
|
||||
import com.google.common.util.concurrent.MoreExecutors;
|
||||
|
||||
import java.util.concurrent.SynchronousQueue;
|
||||
import java.util.concurrent.ThreadPoolExecutor;
|
||||
|
@ -21,8 +21,8 @@
|
||||
|
||||
import com.google.common.base.Predicate;
|
||||
import com.google.common.base.Predicates;
|
||||
import com.sk89q.guavabackport.util.concurrent.ListenableFuture;
|
||||
import com.sk89q.guavabackport.util.concurrent.SettableFuture;
|
||||
import com.google.common.util.concurrent.ListenableFuture;
|
||||
import com.google.common.util.concurrent.SettableFuture;
|
||||
|
||||
import java.lang.management.ManagementFactory;
|
||||
import java.lang.management.ThreadInfo;
|
||||
|
@ -19,7 +19,7 @@
|
||||
|
||||
package com.sk89q.worldguard.util.task;
|
||||
|
||||
import com.sk89q.guavabackport.util.concurrent.AbstractFuture;
|
||||
import com.google.common.util.concurrent.AbstractFuture;
|
||||
|
||||
import javax.annotation.Nullable;
|
||||
import java.util.Date;
|
||||
|
@ -19,7 +19,7 @@
|
||||
|
||||
package com.sk89q.worldguard.util.task;
|
||||
|
||||
import com.sk89q.guavabackport.util.concurrent.ListenableFuture;
|
||||
import com.google.common.util.concurrent.ListenableFuture;
|
||||
import com.sk89q.worldguard.util.task.progress.Progress;
|
||||
|
||||
import javax.annotation.Nullable;
|
||||
|
@ -19,7 +19,7 @@
|
||||
|
||||
package com.sk89q.worldguard.util.task;
|
||||
|
||||
import com.sk89q.guavabackport.util.concurrent.MoreExecutors;
|
||||
import com.google.common.util.concurrent.MoreExecutors;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
@ -56,7 +56,7 @@ public void run() {
|
||||
monitored.remove(task);
|
||||
}
|
||||
}
|
||||
}, MoreExecutors.sameThreadExecutor());
|
||||
}, MoreExecutors.directExecutor());
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -19,7 +19,7 @@
|
||||
|
||||
package com.sk89q.worldguard.util.task;
|
||||
|
||||
import com.sk89q.guavabackport.util.concurrent.ListenableFuture;
|
||||
import com.google.common.util.concurrent.ListenableFuture;
|
||||
import com.sk89q.worldguard.util.task.progress.ProgressObservable;
|
||||
|
||||
import javax.annotation.Nullable;
|
||||
|
Loading…
Reference in New Issue
Block a user