mirror of
				https://github.com/IntellectualSites/PlotSquared.git
				synced 2025-11-04 11:13:45 +01:00 
			
		
		
		
	Cleanup and Optimizations
Abstracted TitleManagers Removed a lot of Statics. ETC.
This commit is contained in:
		@@ -64,6 +64,7 @@ import org.spongepowered.api.event.game.state.GamePreInitializationEvent;
 | 
			
		||||
import org.spongepowered.api.plugin.Plugin;
 | 
			
		||||
import org.spongepowered.api.plugin.PluginContainer;
 | 
			
		||||
import org.spongepowered.api.profile.GameProfileManager;
 | 
			
		||||
import org.spongepowered.api.world.Chunk;
 | 
			
		||||
import org.spongepowered.api.world.World;
 | 
			
		||||
import org.spongepowered.api.world.gen.GenerationPopulator;
 | 
			
		||||
import org.spongepowered.api.world.gen.WorldGenerator;
 | 
			
		||||
@@ -217,7 +218,7 @@ public class SpongeMain implements IPlotMain {
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    public TaskManager getTaskManager() {
 | 
			
		||||
        return new SpongeTaskManager();
 | 
			
		||||
        return new SpongeTaskManager(this);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
@@ -370,7 +371,7 @@ public class SpongeMain implements IPlotMain {
 | 
			
		||||
    }
 | 
			
		||||
    
 | 
			
		||||
    @Override
 | 
			
		||||
    public PlotQueue initPlotQueue() {
 | 
			
		||||
    public PlotQueue<Chunk> initPlotQueue() {
 | 
			
		||||
        if (PS.get().checkVersion(getServerVersion(), 1, 8, 0)) {
 | 
			
		||||
            try {
 | 
			
		||||
                MainUtil.canSendChunk = true;
 | 
			
		||||
 
 | 
			
		||||
@@ -286,7 +286,7 @@ public class MainListener {
 | 
			
		||||
 | 
			
		||||
    public void onNotifyNeighborBlock(NotifyNeighborBlockEvent event) throws Exception {
 | 
			
		||||
        AtomicBoolean cancelled = new AtomicBoolean(false);
 | 
			
		||||
//        SpongeUtil.printCause("physics", event.getCause());
 | 
			
		||||
        //        SpongeUtil.printCause("physics", event.getCause());
 | 
			
		||||
        //        PlotArea area = plotloc.getPlotArea();
 | 
			
		||||
        //        event.filterDirections(new Predicate<Direction>() {
 | 
			
		||||
        //            
 | 
			
		||||
 
 | 
			
		||||
@@ -5,9 +5,6 @@ import com.intellectualcrafters.plot.object.Location;
 | 
			
		||||
import com.intellectualcrafters.plot.object.Plot;
 | 
			
		||||
import com.intellectualcrafters.plot.util.ChunkManager;
 | 
			
		||||
import com.intellectualcrafters.plot.util.TaskManager;
 | 
			
		||||
import java.util.Optional;
 | 
			
		||||
import java.util.Set;
 | 
			
		||||
import java.util.function.Predicate;
 | 
			
		||||
import org.spongepowered.api.entity.Entity;
 | 
			
		||||
import org.spongepowered.api.entity.living.Living;
 | 
			
		||||
import org.spongepowered.api.entity.living.animal.Animal;
 | 
			
		||||
@@ -15,6 +12,10 @@ import org.spongepowered.api.entity.living.monster.Monster;
 | 
			
		||||
import org.spongepowered.api.world.Chunk;
 | 
			
		||||
import org.spongepowered.api.world.World;
 | 
			
		||||
 | 
			
		||||
import java.util.Optional;
 | 
			
		||||
import java.util.Set;
 | 
			
		||||
import java.util.function.Predicate;
 | 
			
		||||
 | 
			
		||||
public class SpongeChunkManager extends ChunkManager {
 | 
			
		||||
    
 | 
			
		||||
    @Override
 | 
			
		||||
 
 | 
			
		||||
@@ -36,25 +36,25 @@ public class SpongeEventUtil extends EventUtil {
 | 
			
		||||
    public EventManager events;
 | 
			
		||||
    
 | 
			
		||||
    public SpongeEventUtil() {
 | 
			
		||||
        events = SpongeMain.THIS.getGame().getEventManager();
 | 
			
		||||
        this.events = SpongeMain.THIS.getGame().getEventManager();
 | 
			
		||||
    }
 | 
			
		||||
    
 | 
			
		||||
    public boolean callEvent(final Event event) {
 | 
			
		||||
        return !events.post(event);
 | 
			
		||||
 | 
			
		||||
    public boolean callEvent(Event event) {
 | 
			
		||||
        return !this.events.post(event);
 | 
			
		||||
    }
 | 
			
		||||
    
 | 
			
		||||
    @Override
 | 
			
		||||
    public boolean callClaim(final PlotPlayer player, final Plot plot, final boolean auto) {
 | 
			
		||||
    public boolean callClaim(PlotPlayer player, Plot plot, boolean auto) {
 | 
			
		||||
        return callEvent(new PlayerClaimPlotEvent(SpongeUtil.getPlayer(player), plot, auto));
 | 
			
		||||
    }
 | 
			
		||||
    
 | 
			
		||||
    @Override
 | 
			
		||||
    public boolean callTeleport(final PlotPlayer player, final Location from, final Plot plot) {
 | 
			
		||||
    public boolean callTeleport(PlotPlayer player, Location from, Plot plot) {
 | 
			
		||||
        return callEvent(new PlayerTeleportToPlotEvent(SpongeUtil.getPlayer(player), from, plot));
 | 
			
		||||
    }
 | 
			
		||||
    
 | 
			
		||||
    @Override
 | 
			
		||||
    public boolean callClear(final Plot plot) {
 | 
			
		||||
    public boolean callClear(Plot plot) {
 | 
			
		||||
        return callEvent(new PlotClearEvent(plot));
 | 
			
		||||
    }
 | 
			
		||||
    
 | 
			
		||||
@@ -64,59 +64,59 @@ public class SpongeEventUtil extends EventUtil {
 | 
			
		||||
    }
 | 
			
		||||
    
 | 
			
		||||
    @Override
 | 
			
		||||
    public boolean callFlagAdd(final Flag flag, final Plot plot) {
 | 
			
		||||
    public boolean callFlagAdd(Flag flag, Plot plot) {
 | 
			
		||||
        return callEvent(new PlotFlagAddEvent(flag, plot));
 | 
			
		||||
    }
 | 
			
		||||
    
 | 
			
		||||
    @Override
 | 
			
		||||
    public boolean callFlagRemove(final Flag flag, final Plot plot) {
 | 
			
		||||
    public boolean callFlagRemove(Flag flag, Plot plot) {
 | 
			
		||||
        return callEvent(new PlotFlagRemoveEvent(flag, plot));
 | 
			
		||||
    }
 | 
			
		||||
    
 | 
			
		||||
    @Override
 | 
			
		||||
    public boolean callMerge(final Plot plot, final ArrayList<PlotId> plots) {
 | 
			
		||||
    public boolean callMerge(Plot plot, ArrayList<PlotId> plots) {
 | 
			
		||||
        return callEvent(new PlotMergeEvent(SpongeUtil.getWorld(plot.getArea().worldname), plot, plots));
 | 
			
		||||
    }
 | 
			
		||||
    
 | 
			
		||||
    @Override
 | 
			
		||||
    public boolean callUnlink(final PlotArea area, final ArrayList<PlotId> plots) {
 | 
			
		||||
    public boolean callUnlink(PlotArea area, ArrayList<PlotId> plots) {
 | 
			
		||||
        return callEvent(new PlotUnlinkEvent(SpongeUtil.getWorld(area.worldname), plots));
 | 
			
		||||
    }
 | 
			
		||||
    
 | 
			
		||||
    @Override
 | 
			
		||||
    public void callEntry(final PlotPlayer player, final Plot plot) {
 | 
			
		||||
    public void callEntry(PlotPlayer player, Plot plot) {
 | 
			
		||||
        callEvent(new PlayerEnterPlotEvent(SpongeUtil.getPlayer(player), plot));
 | 
			
		||||
    }
 | 
			
		||||
    
 | 
			
		||||
    @Override
 | 
			
		||||
    public void callLeave(final PlotPlayer player, final Plot plot) {
 | 
			
		||||
    public void callLeave(PlotPlayer player, Plot plot) {
 | 
			
		||||
        callEvent(new PlayerLeavePlotEvent(SpongeUtil.getPlayer(player), plot));
 | 
			
		||||
    }
 | 
			
		||||
    
 | 
			
		||||
    @Override
 | 
			
		||||
    public void callDenied(final PlotPlayer initiator, final Plot plot, final UUID player, final boolean added) {
 | 
			
		||||
    public void callDenied(PlotPlayer initiator, Plot plot, UUID player, boolean added) {
 | 
			
		||||
        callEvent(new PlayerPlotDeniedEvent(SpongeUtil.getPlayer(initiator), plot, player, added));
 | 
			
		||||
    }
 | 
			
		||||
    
 | 
			
		||||
    @Override
 | 
			
		||||
    public void callTrusted(final PlotPlayer initiator, final Plot plot, final UUID player, final boolean added) {
 | 
			
		||||
    public void callTrusted(PlotPlayer initiator, Plot plot, UUID player, boolean added) {
 | 
			
		||||
        callEvent(new PlayerPlotHelperEvent(SpongeUtil.getPlayer(initiator), plot, player, added));
 | 
			
		||||
    }
 | 
			
		||||
    
 | 
			
		||||
    @Override
 | 
			
		||||
    public void callMember(final PlotPlayer initiator, final Plot plot, final UUID player, final boolean added) {
 | 
			
		||||
    public void callMember(PlotPlayer initiator, Plot plot, UUID player, boolean added) {
 | 
			
		||||
        callEvent(new PlayerPlotTrustedEvent(SpongeUtil.getPlayer(initiator), plot, player, added));
 | 
			
		||||
    }
 | 
			
		||||
    
 | 
			
		||||
    @Override
 | 
			
		||||
    public boolean callFlagRemove(final Flag flag, final PlotCluster cluster) {
 | 
			
		||||
    public boolean callFlagRemove(Flag flag, PlotCluster cluster) {
 | 
			
		||||
        return callEvent(new ClusterFlagRemoveEvent(flag, cluster));
 | 
			
		||||
    }
 | 
			
		||||
    
 | 
			
		||||
    @Override
 | 
			
		||||
    public Rating callRating(final PlotPlayer player, final Plot plot, final Rating rating) {
 | 
			
		||||
        final PlotRateEvent event = new PlotRateEvent(player, rating, plot);
 | 
			
		||||
        events.post(event);
 | 
			
		||||
    public Rating callRating(PlotPlayer player, Plot plot, Rating rating) {
 | 
			
		||||
        PlotRateEvent event = new PlotRateEvent(player, rating, plot);
 | 
			
		||||
        this.events.post(event);
 | 
			
		||||
        return event.getRating();
 | 
			
		||||
    }
 | 
			
		||||
    
 | 
			
		||||
 
 | 
			
		||||
@@ -12,13 +12,18 @@ public class SpongeTaskManager extends TaskManager {
 | 
			
		||||
    private final AtomicInteger i = new AtomicInteger();
 | 
			
		||||
 | 
			
		||||
    private final HashMap<Integer, Task> tasks = new HashMap<>();
 | 
			
		||||
    private final SpongeMain spongeMain;
 | 
			
		||||
 | 
			
		||||
    public SpongeTaskManager(SpongeMain spongeMain) {
 | 
			
		||||
        this.spongeMain = spongeMain;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    public int taskRepeat(Runnable runnable, int interval) {
 | 
			
		||||
        int val = this.i.incrementAndGet();
 | 
			
		||||
        Task.Builder builder = SpongeMain.THIS.getGame().getScheduler().createTaskBuilder();
 | 
			
		||||
        Task.Builder builder = this.spongeMain.getGame().getScheduler().createTaskBuilder();
 | 
			
		||||
        Task.Builder built = builder.delayTicks(interval).intervalTicks(interval).execute(runnable);
 | 
			
		||||
        Task task = built.submit(SpongeMain.THIS.getPlugin());
 | 
			
		||||
        Task task = built.submit(this.spongeMain.getPlugin());
 | 
			
		||||
        this.tasks.put(val, task);
 | 
			
		||||
        return val;
 | 
			
		||||
    }
 | 
			
		||||
@@ -26,35 +31,35 @@ public class SpongeTaskManager extends TaskManager {
 | 
			
		||||
    @Override
 | 
			
		||||
    public int taskRepeatAsync(Runnable runnable, int interval) {
 | 
			
		||||
        int val = this.i.incrementAndGet();
 | 
			
		||||
        Task.Builder builder = SpongeMain.THIS.getGame().getScheduler().createTaskBuilder();
 | 
			
		||||
        Task.Builder builder = this.spongeMain.getGame().getScheduler().createTaskBuilder();
 | 
			
		||||
        Task.Builder built = builder.delayTicks(interval).async().intervalTicks(interval).execute(runnable);
 | 
			
		||||
        Task task = built.submit(SpongeMain.THIS.getPlugin());
 | 
			
		||||
        Task task = built.submit(this.spongeMain.getPlugin());
 | 
			
		||||
        this.tasks.put(val, task);
 | 
			
		||||
        return val;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    public void taskAsync(Runnable runnable) {
 | 
			
		||||
        Task.Builder builder = SpongeMain.THIS.getGame().getScheduler().createTaskBuilder();
 | 
			
		||||
        builder.async().execute(runnable).submit(SpongeMain.THIS.getPlugin());
 | 
			
		||||
        Task.Builder builder = this.spongeMain.getGame().getScheduler().createTaskBuilder();
 | 
			
		||||
        builder.async().execute(runnable).submit(this.spongeMain.getPlugin());
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    public void task(Runnable runnable) {
 | 
			
		||||
        Task.Builder builder = SpongeMain.THIS.getGame().getScheduler().createTaskBuilder();
 | 
			
		||||
        builder.execute(runnable).submit(SpongeMain.THIS.getPlugin());
 | 
			
		||||
        Task.Builder builder = this.spongeMain.getGame().getScheduler().createTaskBuilder();
 | 
			
		||||
        builder.execute(runnable).submit(this.spongeMain.getPlugin());
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    public void taskLater(Runnable runnable, int delay) {
 | 
			
		||||
        Task.Builder builder = SpongeMain.THIS.getGame().getScheduler().createTaskBuilder();
 | 
			
		||||
        builder.delayTicks(delay).execute(runnable).submit(SpongeMain.THIS.getPlugin());
 | 
			
		||||
        Task.Builder builder = this.spongeMain.getGame().getScheduler().createTaskBuilder();
 | 
			
		||||
        builder.delayTicks(delay).execute(runnable).submit(this.spongeMain.getPlugin());
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    public void taskLaterAsync(Runnable runnable, int delay) {
 | 
			
		||||
        Task.Builder builder = SpongeMain.THIS.getGame().getScheduler().createTaskBuilder();
 | 
			
		||||
        builder.async().delayTicks(delay).execute(runnable).submit(SpongeMain.THIS.getPlugin());
 | 
			
		||||
        Task.Builder builder = this.spongeMain.getGame().getScheduler().createTaskBuilder();
 | 
			
		||||
        builder.async().delayTicks(delay).execute(runnable).submit(this.spongeMain.getPlugin());
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
 
 | 
			
		||||
@@ -17,13 +17,6 @@ import com.intellectualcrafters.plot.util.UUIDHandler;
 | 
			
		||||
import com.intellectualcrafters.plot.util.WorldUtil;
 | 
			
		||||
import com.plotsquared.sponge.SpongeMain;
 | 
			
		||||
import com.plotsquared.sponge.object.SpongePlayer;
 | 
			
		||||
import java.lang.reflect.Field;
 | 
			
		||||
import java.lang.reflect.Method;
 | 
			
		||||
import java.util.ArrayList;
 | 
			
		||||
import java.util.HashMap;
 | 
			
		||||
import java.util.List;
 | 
			
		||||
import java.util.Locale;
 | 
			
		||||
import java.util.Optional;
 | 
			
		||||
import net.minecraft.block.Block;
 | 
			
		||||
import net.minecraft.world.biome.BiomeGenBase;
 | 
			
		||||
import org.apache.commons.lang3.NotImplementedException;
 | 
			
		||||
@@ -49,6 +42,14 @@ import org.spongepowered.api.world.biome.BiomeType;
 | 
			
		||||
import org.spongepowered.api.world.biome.BiomeTypes;
 | 
			
		||||
import org.spongepowered.api.world.extent.Extent;
 | 
			
		||||
 | 
			
		||||
import java.lang.reflect.Field;
 | 
			
		||||
import java.lang.reflect.Method;
 | 
			
		||||
import java.util.ArrayList;
 | 
			
		||||
import java.util.HashMap;
 | 
			
		||||
import java.util.List;
 | 
			
		||||
import java.util.Locale;
 | 
			
		||||
import java.util.Optional;
 | 
			
		||||
 | 
			
		||||
public class SpongeUtil extends WorldUtil {
 | 
			
		||||
 | 
			
		||||
    public static Cause CAUSE = Cause.of(NamedCause.source("PlotSquared"));
 | 
			
		||||
 
 | 
			
		||||
@@ -10,17 +10,17 @@ import com.intellectualcrafters.plot.util.PlotQueue;
 | 
			
		||||
import com.intellectualcrafters.plot.util.SetQueue;
 | 
			
		||||
import com.intellectualcrafters.plot.util.SetQueue.ChunkWrapper;
 | 
			
		||||
import com.plotsquared.sponge.util.SpongeUtil;
 | 
			
		||||
import java.util.Optional;
 | 
			
		||||
import net.minecraft.world.chunk.IChunkProvider;
 | 
			
		||||
import net.minecraft.world.gen.ChunkProviderServer;
 | 
			
		||||
import org.spongepowered.api.block.BlockState;
 | 
			
		||||
import org.spongepowered.api.world.Chunk;
 | 
			
		||||
import org.spongepowered.api.world.World;
 | 
			
		||||
 | 
			
		||||
import java.util.Collection;
 | 
			
		||||
import java.util.Iterator;
 | 
			
		||||
import java.util.Map.Entry;
 | 
			
		||||
import java.util.Optional;
 | 
			
		||||
import java.util.concurrent.ConcurrentHashMap;
 | 
			
		||||
import org.spongepowered.api.world.World;
 | 
			
		||||
 | 
			
		||||
public class SlowQueue implements PlotQueue<Chunk> {
 | 
			
		||||
    
 | 
			
		||||
@@ -148,7 +148,7 @@ public class SlowQueue implements PlotQueue<Chunk> {
 | 
			
		||||
                else {
 | 
			
		||||
                    PS.debug("CHUNK IS NULL!?");
 | 
			
		||||
                }*/
 | 
			
		||||
            } catch (Throwable e){
 | 
			
		||||
            } catch (Throwable e) {
 | 
			
		||||
                e.printStackTrace();
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user