mirror of
https://github.com/IntellectualSites/PlotSquared.git
synced 2024-11-24 22:26:45 +01:00
Minor fixes and performance improvement
This commit is contained in:
parent
d8933afb50
commit
7e58f4341e
@ -2211,12 +2211,12 @@ import java.util.regex.Pattern;
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case LEFT_CLICK_BLOCK:
|
// case LEFT_CLICK_BLOCK:
|
||||||
Block block = event.getClickedBlock();
|
// Block block = event.getClickedBlock();
|
||||||
location = BukkitUtil.getLocation(block.getLocation());
|
// location = BukkitUtil.getLocation(block.getLocation());
|
||||||
eventType = PlayerBlockEventType.BREAK_BLOCK;
|
// eventType = PlayerBlockEventType.BREAK_BLOCK;
|
||||||
lazyItem = BukkitBlockUtil.supplyItem(block);
|
// lazyItem = BukkitBlockUtil.supplyItem(block);
|
||||||
break;
|
// break;
|
||||||
default:
|
default:
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -10,7 +10,11 @@ import java.util.function.Supplier;
|
|||||||
|
|
||||||
public class BukkitBlockUtil {
|
public class BukkitBlockUtil {
|
||||||
public static Supplier<ItemType> supplyItem(Block block) {
|
public static Supplier<ItemType> supplyItem(Block block) {
|
||||||
return () -> BukkitAdapter.asItemType(block.getType());
|
return new Supplier<ItemType>() {
|
||||||
|
@Override public ItemType get() {
|
||||||
|
return BukkitAdapter.asItemType(block.getType());
|
||||||
|
}
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
public static Supplier<ItemType> supplyItem(Material type) {
|
public static Supplier<ItemType> supplyItem(Material type) {
|
||||||
|
@ -40,9 +40,12 @@ import java.util.HashSet;
|
|||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.Map.Entry;
|
import java.util.Map.Entry;
|
||||||
|
import java.util.Objects;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
import java.util.concurrent.CompletableFuture;
|
import java.util.concurrent.CompletableFuture;
|
||||||
|
|
||||||
|
import static com.google.common.base.Preconditions.checkNotNull;
|
||||||
|
|
||||||
public class BukkitChunkManager extends ChunkManager {
|
public class BukkitChunkManager extends ChunkManager {
|
||||||
|
|
||||||
public static boolean isIn(CuboidRegion region, int x, int z) {
|
public static boolean isIn(CuboidRegion region, int x, int z) {
|
||||||
@ -111,7 +114,7 @@ public class BukkitChunkManager extends ChunkManager {
|
|||||||
|
|
||||||
@Override public Set<BlockVector2> getChunkChunks(String world) {
|
@Override public Set<BlockVector2> getChunkChunks(String world) {
|
||||||
Set<BlockVector2> chunks = super.getChunkChunks(world);
|
Set<BlockVector2> chunks = super.getChunkChunks(world);
|
||||||
for (Chunk chunk : Bukkit.getWorld(world).getLoadedChunks()) {
|
for (Chunk chunk : Objects.requireNonNull(Bukkit.getWorld(world)).getLoadedChunks()) {
|
||||||
BlockVector2 loc = BlockVector2.at(chunk.getX() >> 5, chunk.getZ() >> 5);
|
BlockVector2 loc = BlockVector2.at(chunk.getX() >> 5, chunk.getZ() >> 5);
|
||||||
chunks.add(loc);
|
chunks.add(loc);
|
||||||
}
|
}
|
||||||
@ -269,6 +272,7 @@ public class BukkitChunkManager extends ChunkManager {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
final World worldObj = Bukkit.getWorld(world);
|
final World worldObj = Bukkit.getWorld(world);
|
||||||
|
checkNotNull(worldObj, "Critical error during regeneration.");
|
||||||
final BukkitWorld bukkitWorldObj = new BukkitWorld(worldObj);
|
final BukkitWorld bukkitWorldObj = new BukkitWorld(worldObj);
|
||||||
TaskManager.runTask(new Runnable() {
|
TaskManager.runTask(new Runnable() {
|
||||||
@Override public void run() {
|
@Override public void run() {
|
||||||
@ -398,7 +402,7 @@ public class BukkitChunkManager extends ChunkManager {
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override public CompletableFuture loadChunk(String world, BlockVector2 chunkLoc, boolean force) {
|
@Override public CompletableFuture<?> loadChunk(String world, BlockVector2 chunkLoc, boolean force) {
|
||||||
return PaperLib.getChunkAtAsync(BukkitUtil.getWorld(world),chunkLoc.getX(), chunkLoc.getZ(), force);
|
return PaperLib.getChunkAtAsync(BukkitUtil.getWorld(world),chunkLoc.getX(), chunkLoc.getZ(), force);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -440,8 +444,9 @@ public class BukkitChunkManager extends ChunkManager {
|
|||||||
CuboidRegion region2 =
|
CuboidRegion region2 =
|
||||||
RegionUtil.createRegion(bot2.getX(), top2.getX(), bot2.getZ(), top2.getZ());
|
RegionUtil.createRegion(bot2.getX(), top2.getX(), bot2.getZ(), top2.getZ());
|
||||||
final World world1 = Bukkit.getWorld(bot1.getWorld());
|
final World world1 = Bukkit.getWorld(bot1.getWorld());
|
||||||
World world2 = Bukkit.getWorld(bot2.getWorld());
|
final World world2 = Bukkit.getWorld(bot2.getWorld());
|
||||||
|
checkNotNull(world1,"Critical error during swap.");
|
||||||
|
checkNotNull(world2,"Critical error during swap.");
|
||||||
int relX = bot2.getX() - bot1.getX();
|
int relX = bot2.getX() - bot1.getX();
|
||||||
int relZ = bot2.getZ() - bot1.getZ();
|
int relZ = bot2.getZ() - bot1.getZ();
|
||||||
|
|
||||||
|
@ -48,12 +48,12 @@ public class BukkitCommand implements CommandExecutor, TabCompleter {
|
|||||||
if (args.length == 0) {
|
if (args.length == 0) {
|
||||||
return Collections.singletonList("plots");
|
return Collections.singletonList("plots");
|
||||||
}
|
}
|
||||||
Collection objects = MainCommand.getInstance().tab(player, args, s.endsWith(" "));
|
Collection<com.github.intellectualsites.plotsquared.commands.Command> objects = MainCommand.getInstance().tab(player, args, s.endsWith(" "));
|
||||||
if (objects == null) {
|
if (objects == null) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
List<String> result = new ArrayList<>();
|
List<String> result = new ArrayList<>();
|
||||||
for (Object o : objects) {
|
for (com.github.intellectualsites.plotsquared.commands.Command o : objects) {
|
||||||
result.add(o.toString());
|
result.add(o.toString());
|
||||||
}
|
}
|
||||||
return result.isEmpty() ? null : result;
|
return result.isEmpty() ? null : result;
|
||||||
|
@ -96,6 +96,7 @@ public class BukkitInventoryUtil extends InventoryUtil {
|
|||||||
}
|
}
|
||||||
if (meta.hasLore()) {
|
if (meta.hasLore()) {
|
||||||
List<String> itemLore = meta.getLore();
|
List<String> itemLore = meta.getLore();
|
||||||
|
assert itemLore != null;
|
||||||
lore = itemLore.toArray(new String[0]);
|
lore = itemLore.toArray(new String[0]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -174,10 +174,16 @@ public class Auto extends SubCommand {
|
|||||||
if (Permissions.hasPermission(player, Captions.PERMISSION_AUTO_MEGA)) {
|
if (Permissions.hasPermission(player, Captions.PERMISSION_AUTO_MEGA)) {
|
||||||
try {
|
try {
|
||||||
String[] split = args[0].split(",|;");
|
String[] split = args[0].split(",|;");
|
||||||
size_x = Integer.parseInt(split[0]);
|
if (split[1] == null) {
|
||||||
size_z = Integer.parseInt(split[1]);
|
MainUtil.sendMessage(player,"Correct use /plot auto [length,width]");
|
||||||
|
size_x = 1;
|
||||||
|
size_z = 1;
|
||||||
|
} else {
|
||||||
|
size_x = Integer.parseInt(split[0]);
|
||||||
|
size_z = Integer.parseInt(split[1]);
|
||||||
|
}
|
||||||
if (size_x < 1 || size_z < 1) {
|
if (size_x < 1 || size_z < 1) {
|
||||||
MainUtil.sendMessage(player, "&cError: size<=0");
|
MainUtil.sendMessage(player, "Error: size<=0");
|
||||||
}
|
}
|
||||||
if (args.length > 1) {
|
if (args.length > 1) {
|
||||||
schematic = args[1];
|
schematic = args[1];
|
||||||
|
Loading…
Reference in New Issue
Block a user