mirror of
https://github.com/IntellectualSites/PlotSquared.git
synced 2024-11-22 21:26:45 +01:00
Remove unused files
This commit is contained in:
parent
23783b8b0b
commit
f357fa74f3
@ -1,37 +0,0 @@
|
|||||||
/*
|
|
||||||
* _____ _ _ _____ _
|
|
||||||
* | __ \| | | | / ____| | |
|
|
||||||
* | |__) | | ___ | |_| (___ __ _ _ _ __ _ _ __ ___ __| |
|
|
||||||
* | ___/| |/ _ \| __|\___ \ / _` | | | |/ _` | '__/ _ \/ _` |
|
|
||||||
* | | | | (_) | |_ ____) | (_| | |_| | (_| | | | __/ (_| |
|
|
||||||
* |_| |_|\___/ \__|_____/ \__, |\__,_|\__,_|_| \___|\__,_|
|
|
||||||
* | |
|
|
||||||
* |_|
|
|
||||||
* PlotSquared plot management system for Minecraft
|
|
||||||
* Copyright (C) 2020 IntellectualSites
|
|
||||||
*
|
|
||||||
* This program is free software: you can redistribute it and/or modify
|
|
||||||
* it under the terms of the GNU General Public License as published by
|
|
||||||
* the Free Software Foundation, either version 3 of the License, or
|
|
||||||
* (at your option) any later version.
|
|
||||||
*
|
|
||||||
* This program is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License
|
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*/
|
|
||||||
package com.plotsquared.core.util;
|
|
||||||
|
|
||||||
import com.sk89q.worldedit.world.block.BlockState;
|
|
||||||
|
|
||||||
public abstract class LazyBlock {
|
|
||||||
|
|
||||||
public abstract BlockState getBlockState();
|
|
||||||
|
|
||||||
public String getId() {
|
|
||||||
return getBlockState().toString();
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,44 +0,0 @@
|
|||||||
/*
|
|
||||||
* _____ _ _ _____ _
|
|
||||||
* | __ \| | | | / ____| | |
|
|
||||||
* | |__) | | ___ | |_| (___ __ _ _ _ __ _ _ __ ___ __| |
|
|
||||||
* | ___/| |/ _ \| __|\___ \ / _` | | | |/ _` | '__/ _ \/ _` |
|
|
||||||
* | | | | (_) | |_ ____) | (_| | |_| | (_| | | | __/ (_| |
|
|
||||||
* |_| |_|\___/ \__|_____/ \__, |\__,_|\__,_|_| \___|\__,_|
|
|
||||||
* | |
|
|
||||||
* |_|
|
|
||||||
* PlotSquared plot management system for Minecraft
|
|
||||||
* Copyright (C) 2020 IntellectualSites
|
|
||||||
*
|
|
||||||
* This program is free software: you can redistribute it and/or modify
|
|
||||||
* it under the terms of the GNU General Public License as published by
|
|
||||||
* the Free Software Foundation, either version 3 of the License, or
|
|
||||||
* (at your option) any later version.
|
|
||||||
*
|
|
||||||
* This program is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License
|
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*/
|
|
||||||
package com.plotsquared.core.util;
|
|
||||||
|
|
||||||
public abstract class LazyResult<T> {
|
|
||||||
|
|
||||||
private T result;
|
|
||||||
|
|
||||||
public T get() {
|
|
||||||
return this.result;
|
|
||||||
}
|
|
||||||
|
|
||||||
public T getOrCreate() {
|
|
||||||
if (this.result == null) {
|
|
||||||
return this.result = create();
|
|
||||||
}
|
|
||||||
return this.result;
|
|
||||||
}
|
|
||||||
|
|
||||||
public abstract T create();
|
|
||||||
}
|
|
@ -1,141 +0,0 @@
|
|||||||
/*
|
|
||||||
* _____ _ _ _____ _
|
|
||||||
* | __ \| | | | / ____| | |
|
|
||||||
* | |__) | | ___ | |_| (___ __ _ _ _ __ _ _ __ ___ __| |
|
|
||||||
* | ___/| |/ _ \| __|\___ \ / _` | | | |/ _` | '__/ _ \/ _` |
|
|
||||||
* | | | | (_) | |_ ____) | (_| | |_| | (_| | | | __/ (_| |
|
|
||||||
* |_| |_|\___/ \__|_____/ \__, |\__,_|\__,_|_| \___|\__,_|
|
|
||||||
* | |
|
|
||||||
* |_|
|
|
||||||
* PlotSquared plot management system for Minecraft
|
|
||||||
* Copyright (C) 2020 IntellectualSites
|
|
||||||
*
|
|
||||||
* This program is free software: you can redistribute it and/or modify
|
|
||||||
* it under the terms of the GNU General Public License as published by
|
|
||||||
* the Free Software Foundation, either version 3 of the License, or
|
|
||||||
* (at your option) any later version.
|
|
||||||
*
|
|
||||||
* This program is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License
|
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*/
|
|
||||||
package com.plotsquared.core.util;
|
|
||||||
|
|
||||||
import com.google.common.util.concurrent.Futures;
|
|
||||||
import com.google.common.util.concurrent.ListeningExecutorService;
|
|
||||||
import com.plotsquared.core.location.Location;
|
|
||||||
import com.plotsquared.core.player.PlotPlayer;
|
|
||||||
import com.sk89q.worldedit.EditSession;
|
|
||||||
import com.sk89q.worldedit.LocalSession;
|
|
||||||
import com.sk89q.worldedit.WorldEdit;
|
|
||||||
import com.sk89q.worldedit.entity.Player;
|
|
||||||
import com.sk89q.worldedit.extension.platform.Actor;
|
|
||||||
import com.sk89q.worldedit.extension.platform.Capability;
|
|
||||||
import com.sk89q.worldedit.extension.platform.Platform;
|
|
||||||
import com.sk89q.worldedit.world.World;
|
|
||||||
import javax.annotation.Nonnull;
|
|
||||||
import javax.annotation.Nullable;
|
|
||||||
|
|
||||||
import java.util.List;
|
|
||||||
import java.util.concurrent.Future;
|
|
||||||
import java.util.function.Consumer;
|
|
||||||
|
|
||||||
public class OperationUtil {
|
|
||||||
private static final boolean ASYNC;
|
|
||||||
|
|
||||||
static {
|
|
||||||
boolean hasFawe = true;
|
|
||||||
try {
|
|
||||||
Class.forName("com.boydti.fawe.Fawe");
|
|
||||||
} catch (ClassNotFoundException ignore) {
|
|
||||||
hasFawe = false;
|
|
||||||
}
|
|
||||||
ASYNC = hasFawe;
|
|
||||||
}
|
|
||||||
|
|
||||||
private static World getWorld(String worldName) {
|
|
||||||
Platform platform =
|
|
||||||
WorldEdit.getInstance().getPlatformManager().queryCapability(Capability.WORLD_EDITING);
|
|
||||||
List<? extends World> worlds = platform.getWorlds();
|
|
||||||
for (World current : worlds) {
|
|
||||||
if (current.getName().equals(worldName)) {
|
|
||||||
return current;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
private static World getWorld(PlotPlayer plotPlayer, Actor actor) {
|
|
||||||
World weWorld;
|
|
||||||
if (actor instanceof Player) {
|
|
||||||
weWorld = ((Player) actor).getWorld();
|
|
||||||
} else {
|
|
||||||
@Nonnull Location loc = plotPlayer.getLocation();
|
|
||||||
String world = loc.getWorldName();
|
|
||||||
weWorld = getWorld(world);
|
|
||||||
}
|
|
||||||
return weWorld;
|
|
||||||
}
|
|
||||||
|
|
||||||
private static EditSession createEditSession(PlotPlayer plotPlayer) {
|
|
||||||
Actor actor = plotPlayer.toActor();
|
|
||||||
World weWorld = getWorld(plotPlayer, actor);
|
|
||||||
return createEditSession(weWorld, actor);
|
|
||||||
}
|
|
||||||
|
|
||||||
private static LocalSession getSession(Actor actor) {
|
|
||||||
return WorldEdit.getInstance().getSessionManager().get(actor);
|
|
||||||
}
|
|
||||||
|
|
||||||
private static EditSession createEditSession(World world, Actor actor) {
|
|
||||||
return createEditSession(world, actor, getSession(actor));
|
|
||||||
}
|
|
||||||
|
|
||||||
private static EditSession createEditSession(World world, Actor actor, LocalSession session) {
|
|
||||||
EditSession editSession;
|
|
||||||
Player player = actor.isPlayer() ? (Player) actor : null;
|
|
||||||
editSession =
|
|
||||||
WorldEdit.getInstance().getEditSessionFactory().getEditSession(world, -1, null, player);
|
|
||||||
|
|
||||||
editSession.setFastMode(!actor.isPlayer());
|
|
||||||
editSession.setReorderMode(EditSession.ReorderMode.FAST);
|
|
||||||
return editSession;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Future<?> withEditSession(@Nonnull PlotPlayer plotPlayer,
|
|
||||||
@Nonnull Consumer<EditSession> consumer, @Nullable Consumer<Throwable> exceptionHandler) {
|
|
||||||
if (ASYNC) {
|
|
||||||
ListeningExecutorService exec = WorldEdit.getInstance().getExecutorService();
|
|
||||||
return exec
|
|
||||||
.submit(() -> withEditSessionOnThread(plotPlayer, consumer, exceptionHandler));
|
|
||||||
} else {
|
|
||||||
withEditSessionOnThread(plotPlayer, consumer, exceptionHandler);
|
|
||||||
}
|
|
||||||
return Futures.immediateFuture(true);
|
|
||||||
}
|
|
||||||
|
|
||||||
private void withEditSessionOnThread(PlotPlayer plotPlayer, Consumer<EditSession> consumer,
|
|
||||||
Consumer<Throwable> exceptionHandler) {
|
|
||||||
Actor actor = plotPlayer.toActor();
|
|
||||||
World weWorld = getWorld(plotPlayer, actor);
|
|
||||||
LocalSession session = getSession(actor);
|
|
||||||
try (EditSession ess = createEditSession(weWorld, actor, session)) {
|
|
||||||
try {
|
|
||||||
consumer.accept(ess);
|
|
||||||
} finally {
|
|
||||||
ess.close();
|
|
||||||
session.remember(ess);
|
|
||||||
}
|
|
||||||
} catch (Throwable e) {
|
|
||||||
if (exceptionHandler != null) {
|
|
||||||
exceptionHandler.accept(e);
|
|
||||||
} else {
|
|
||||||
e.printStackTrace();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,54 +0,0 @@
|
|||||||
/*
|
|
||||||
* _____ _ _ _____ _
|
|
||||||
* | __ \| | | | / ____| | |
|
|
||||||
* | |__) | | ___ | |_| (___ __ _ _ _ __ _ _ __ ___ __| |
|
|
||||||
* | ___/| |/ _ \| __|\___ \ / _` | | | |/ _` | '__/ _ \/ _` |
|
|
||||||
* | | | | (_) | |_ ____) | (_| | |_| | (_| | | | __/ (_| |
|
|
||||||
* |_| |_|\___/ \__|_____/ \__, |\__,_|\__,_|_| \___|\__,_|
|
|
||||||
* | |
|
|
||||||
* |_|
|
|
||||||
* PlotSquared plot management system for Minecraft
|
|
||||||
* Copyright (C) 2020 IntellectualSites
|
|
||||||
*
|
|
||||||
* This program is free software: you can redistribute it and/or modify
|
|
||||||
* it under the terms of the GNU General Public License as published by
|
|
||||||
* the Free Software Foundation, either version 3 of the License, or
|
|
||||||
* (at your option) any later version.
|
|
||||||
*
|
|
||||||
* This program is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License
|
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*/
|
|
||||||
package com.plotsquared.core.util;
|
|
||||||
|
|
||||||
public class PseudoRandom {
|
|
||||||
|
|
||||||
public static final PseudoRandom random = new PseudoRandom();
|
|
||||||
|
|
||||||
public long state = System.nanoTime();
|
|
||||||
|
|
||||||
public long nextLong() {
|
|
||||||
long a = this.state;
|
|
||||||
this.state = xorShift64(a);
|
|
||||||
return a;
|
|
||||||
}
|
|
||||||
|
|
||||||
public long xorShift64(long a) {
|
|
||||||
a ^= a << 21;
|
|
||||||
a ^= a >>> 35;
|
|
||||||
a ^= a << 4;
|
|
||||||
return a;
|
|
||||||
}
|
|
||||||
|
|
||||||
public int random(int n) {
|
|
||||||
if (n == 1) {
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
long r = ((nextLong() >>> 32) * n) >> 32;
|
|
||||||
return (int) r;
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,97 +0,0 @@
|
|||||||
/*
|
|
||||||
* _____ _ _ _____ _
|
|
||||||
* | __ \| | | | / ____| | |
|
|
||||||
* | |__) | | ___ | |_| (___ __ _ _ _ __ _ _ __ ___ __| |
|
|
||||||
* | ___/| |/ _ \| __|\___ \ / _` | | | |/ _` | '__/ _ \/ _` |
|
|
||||||
* | | | | (_) | |_ ____) | (_| | |_| | (_| | | | __/ (_| |
|
|
||||||
* |_| |_|\___/ \__|_____/ \__, |\__,_|\__,_|_| \___|\__,_|
|
|
||||||
* | |
|
|
||||||
* |_|
|
|
||||||
* PlotSquared plot management system for Minecraft
|
|
||||||
* Copyright (C) 2020 IntellectualSites
|
|
||||||
*
|
|
||||||
* This program is free software: you can redistribute it and/or modify
|
|
||||||
* it under the terms of the GNU General Public License as published by
|
|
||||||
* the Free Software Foundation, either version 3 of the License, or
|
|
||||||
* (at your option) any later version.
|
|
||||||
*
|
|
||||||
* This program is distributed in the hope that it will be useful,
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU General Public License for more details.
|
|
||||||
*
|
|
||||||
* You should have received a copy of the GNU General Public License
|
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
*/
|
|
||||||
package com.plotsquared.core.util;
|
|
||||||
|
|
||||||
/**
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
public class StringWrapper {
|
|
||||||
|
|
||||||
public final String value;
|
|
||||||
private int hash;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Constructor
|
|
||||||
*
|
|
||||||
* @param value to wrap
|
|
||||||
*/
|
|
||||||
public StringWrapper(String value) {
|
|
||||||
this.value = value;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Check if a wrapped string equals another one
|
|
||||||
*
|
|
||||||
* @param obj to compare
|
|
||||||
* @return true if obj equals the stored value
|
|
||||||
*/
|
|
||||||
@Override public boolean equals(Object obj) {
|
|
||||||
if (this == obj) {
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
if (obj == null) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
if (getClass() != obj.getClass()) {
|
|
||||||
if (obj.getClass() == String.class) {
|
|
||||||
return obj.toString().equalsIgnoreCase(this.value);
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
if (obj.hashCode() != hashCode()) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
StringWrapper other = (StringWrapper) obj;
|
|
||||||
if ((other.value == null) || (this.value == null)) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
return other.value.equalsIgnoreCase(this.value);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Get the string value.
|
|
||||||
*
|
|
||||||
* @return string value
|
|
||||||
*/
|
|
||||||
@Override public String toString() {
|
|
||||||
return this.value;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Get the hash value.
|
|
||||||
*
|
|
||||||
* @return has value
|
|
||||||
*/
|
|
||||||
@Override public int hashCode() {
|
|
||||||
if (this.value == null) {
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
if (this.hash == 0) {
|
|
||||||
this.hash = this.value.toLowerCase().hashCode();
|
|
||||||
}
|
|
||||||
return this.hash;
|
|
||||||
}
|
|
||||||
}
|
|
Loading…
Reference in New Issue
Block a user