- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
- * THE SOFTWARE.
+/*
+ This file is part of VoxelSniper, licensed under the MIT License (MIT).
+
+ Copyright (c) The VoxelBox
+ Copyright (c) contributors
+
+ Permission is hereby granted, free of charge, to any person obtaining a copy
+ of this software and associated documentation files (the "Software"), to deal
+ in the Software without restriction, including without limitation the rights
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ copies of the Software, and to permit persons to whom the Software is
+ furnished to do so, subject to the following conditions:
+
+ The above copyright notice and this permission notice shall be included in
+ all copies or substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ THE SOFTWARE.
*/
package com.thevoxelbox.voxelsniper.brush.perform;
diff --git a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/Performer.java b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/Performer.java
index 5363d9a91..94d4094d8 100644
--- a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/Performer.java
+++ b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/Performer.java
@@ -5,13 +5,12 @@
package com.thevoxelbox.voxelsniper.brush.perform;
import com.thevoxelbox.voxelsniper.Message;
+import com.thevoxelbox.voxelsniper.SnipeData;
+
-/**
- * @author Voxel
- */
public interface Performer {
- void parse(String[] args, com.thevoxelbox.voxelsniper.SnipeData v);
+ void parse(String[] args, SnipeData v);
void showInfo(Message vm);
}
diff --git a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/PerformerE.java b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/PerformerE.java
index 398ebafec..273d9a3df 100644
--- a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/PerformerE.java
+++ b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/PerformerE.java
@@ -12,9 +12,7 @@ import java.util.TreeMap;
import java.util.logging.Level;
import java.util.logging.Logger;
-/**
- * @author Voxel
- */
+
/* The m/i/c system of naming performers: [replacement-option][extras]
*
diff --git a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pCombo.java b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pCombo.java
index d65a5d2f4..19697b650 100644
--- a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pCombo.java
+++ b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pCombo.java
@@ -6,10 +6,8 @@ package com.thevoxelbox.voxelsniper.brush.perform;
import com.boydti.fawe.bukkit.wrapper.AsyncBlock;
import com.thevoxelbox.voxelsniper.Message;
+import com.thevoxelbox.voxelsniper.SnipeData;
-/**
- * @author Voxel
- */
public class pCombo extends vPerformer {
private int i;
@@ -27,7 +25,7 @@ public class pCombo extends vPerformer {
}
@Override
- public void init(com.thevoxelbox.voxelsniper.SnipeData v) {
+ public void init(SnipeData v) {
w = v.getWorld();
i = v.getVoxelId();
d = v.getPropertyId();
diff --git a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pComboCombo.java b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pComboCombo.java
index 9e8cbdb0e..ec39d01a4 100644
--- a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pComboCombo.java
+++ b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pComboCombo.java
@@ -6,10 +6,9 @@ package com.thevoxelbox.voxelsniper.brush.perform;
import com.boydti.fawe.bukkit.wrapper.AsyncBlock;
import com.thevoxelbox.voxelsniper.Message;
+import com.thevoxelbox.voxelsniper.SnipeData;
+
-/**
- * @author Voxel
- */
public class pComboCombo extends vPerformer {
private int d;
@@ -22,7 +21,7 @@ public class pComboCombo extends vPerformer {
}
@Override
- public void init(com.thevoxelbox.voxelsniper.SnipeData v) {
+ public void init(SnipeData v) {
w = v.getWorld();
d = v.getPropertyId();
dr = v.getReplaceData();
diff --git a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pComboComboNoPhys.java b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pComboComboNoPhys.java
index 611cba2fd..0034ab6c3 100644
--- a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pComboComboNoPhys.java
+++ b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pComboComboNoPhys.java
@@ -6,10 +6,9 @@ package com.thevoxelbox.voxelsniper.brush.perform;
import com.boydti.fawe.bukkit.wrapper.AsyncBlock;
import com.thevoxelbox.voxelsniper.Message;
+import com.thevoxelbox.voxelsniper.SnipeData;
+
-/**
- * @author Voxel
- */
public class pComboComboNoPhys extends vPerformer {
private int d;
@@ -22,7 +21,7 @@ public class pComboComboNoPhys extends vPerformer {
}
@Override
- public void init(com.thevoxelbox.voxelsniper.SnipeData v) {
+ public void init(SnipeData v) {
w = v.getWorld();
d = v.getPropertyId();
dr = v.getReplaceData();
@@ -53,4 +52,4 @@ public class pComboComboNoPhys extends vPerformer {
public boolean isUsingReplaceMaterial() {
return true;
}
-}
\ No newline at end of file
+}
diff --git a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pComboInk.java b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pComboInk.java
index 61fc98e6b..c4ad7e7f9 100644
--- a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pComboInk.java
+++ b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pComboInk.java
@@ -6,10 +6,9 @@ package com.thevoxelbox.voxelsniper.brush.perform;
import com.boydti.fawe.bukkit.wrapper.AsyncBlock;
import com.thevoxelbox.voxelsniper.Message;
+import com.thevoxelbox.voxelsniper.SnipeData;
+
-/**
- * @author Voxel
- */
public class pComboInk extends vPerformer {
private int d;
@@ -21,7 +20,7 @@ public class pComboInk extends vPerformer {
}
@Override
- public void init(com.thevoxelbox.voxelsniper.SnipeData v) {
+ public void init(SnipeData v) {
w = v.getWorld();
d = v.getPropertyId();
dr = v.getReplaceData();
diff --git a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pComboInkNoPhys.java b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pComboInkNoPhys.java
index 23aecb643..baa1e7c41 100644
--- a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pComboInkNoPhys.java
+++ b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pComboInkNoPhys.java
@@ -6,10 +6,9 @@ package com.thevoxelbox.voxelsniper.brush.perform;
import com.boydti.fawe.bukkit.wrapper.AsyncBlock;
import com.thevoxelbox.voxelsniper.Message;
+import com.thevoxelbox.voxelsniper.SnipeData;
+
-/**
- * @author Voxel
- */
public class pComboInkNoPhys extends vPerformer {
private int d;
@@ -21,7 +20,7 @@ public class pComboInkNoPhys extends vPerformer {
}
@Override
- public void init(com.thevoxelbox.voxelsniper.SnipeData v) {
+ public void init(SnipeData v) {
w = v.getWorld();
d = v.getPropertyId();
dr = v.getReplaceData();
diff --git a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pComboMat.java b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pComboMat.java
index fca272002..c0fff13f1 100644
--- a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pComboMat.java
+++ b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pComboMat.java
@@ -6,10 +6,9 @@ package com.thevoxelbox.voxelsniper.brush.perform;
import com.boydti.fawe.bukkit.wrapper.AsyncBlock;
import com.thevoxelbox.voxelsniper.Message;
+import com.thevoxelbox.voxelsniper.SnipeData;
+
-/**
- * @author Voxel
- */
public class pComboMat extends vPerformer {
private int d;
@@ -21,7 +20,7 @@ public class pComboMat extends vPerformer {
}
@Override
- public void init(com.thevoxelbox.voxelsniper.SnipeData v) {
+ public void init(SnipeData v) {
w = v.getWorld();
d = v.getPropertyId();
i = v.getVoxelId();
diff --git a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pComboMatNoPhys.java b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pComboMatNoPhys.java
index 989d28227..86f95a92c 100644
--- a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pComboMatNoPhys.java
+++ b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pComboMatNoPhys.java
@@ -6,10 +6,9 @@ package com.thevoxelbox.voxelsniper.brush.perform;
import com.boydti.fawe.bukkit.wrapper.AsyncBlock;
import com.thevoxelbox.voxelsniper.Message;
+import com.thevoxelbox.voxelsniper.SnipeData;
+
-/**
- * @author Voxel
- */
public class pComboMatNoPhys extends vPerformer {
private int d;
@@ -21,7 +20,7 @@ public class pComboMatNoPhys extends vPerformer {
}
@Override
- public void init(com.thevoxelbox.voxelsniper.SnipeData v) {
+ public void init(SnipeData v) {
w = v.getWorld();
d = v.getPropertyId();
i = v.getVoxelId();
diff --git a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pComboNoPhys.java b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pComboNoPhys.java
index d4751538e..f591a1c50 100644
--- a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pComboNoPhys.java
+++ b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pComboNoPhys.java
@@ -6,10 +6,9 @@ package com.thevoxelbox.voxelsniper.brush.perform;
import com.boydti.fawe.bukkit.wrapper.AsyncBlock;
import com.thevoxelbox.voxelsniper.Message;
+import com.thevoxelbox.voxelsniper.SnipeData;
+
-/**
- * @author Voxel
- */
public class pComboNoPhys extends vPerformer {
private int i;
@@ -27,7 +26,7 @@ public class pComboNoPhys extends vPerformer {
}
@Override
- public void init(com.thevoxelbox.voxelsniper.SnipeData v) {
+ public void init(SnipeData v) {
w = v.getWorld();
i = v.getVoxelId();
d = v.getPropertyId();
diff --git a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pComboNoUndo.java b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pComboNoUndo.java
index 3312bdb2c..c1d08f3e0 100644
--- a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pComboNoUndo.java
+++ b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pComboNoUndo.java
@@ -6,10 +6,9 @@ package com.thevoxelbox.voxelsniper.brush.perform;
import com.boydti.fawe.bukkit.wrapper.AsyncBlock;
import com.thevoxelbox.voxelsniper.Message;
+import com.thevoxelbox.voxelsniper.SnipeData;
+
-/**
- * @author Voxel
- */
public class pComboNoUndo extends vPerformer {
private int i;
@@ -20,7 +19,7 @@ public class pComboNoUndo extends vPerformer {
}
@Override
- public void init(com.thevoxelbox.voxelsniper.SnipeData v) {
+ public void init(SnipeData v) {
w = v.getWorld();
i = v.getVoxelId();
d = v.getPropertyId();
@@ -40,4 +39,4 @@ public class pComboNoUndo extends vPerformer {
b.setTypeIdAndPropertyId(i, d, true);
}
}
-}
\ No newline at end of file
+}
diff --git a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pExcludeCombo.java b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pExcludeCombo.java
index d9d7a6582..1531dac22 100644
--- a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pExcludeCombo.java
+++ b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pExcludeCombo.java
@@ -6,11 +6,10 @@ package com.thevoxelbox.voxelsniper.brush.perform;
import com.boydti.fawe.bukkit.wrapper.AsyncBlock;
import com.thevoxelbox.voxelsniper.Message;
+import com.thevoxelbox.voxelsniper.SnipeData;
import com.thevoxelbox.voxelsniper.util.VoxelList;
-/**
- * @author Voxel
- */
+
public class pExcludeCombo extends vPerformer {
private VoxelList excludeList;
@@ -30,7 +29,7 @@ public class pExcludeCombo extends vPerformer {
}
@Override
- public void init(com.thevoxelbox.voxelsniper.SnipeData v) {
+ public void init(SnipeData v) {
w = v.getWorld();
id = v.getVoxelId();
data = v.getPropertyId();
diff --git a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pExcludeInk.java b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pExcludeInk.java
index cd888ffc1..412a608e9 100644
--- a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pExcludeInk.java
+++ b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pExcludeInk.java
@@ -6,11 +6,10 @@ package com.thevoxelbox.voxelsniper.brush.perform;
import com.boydti.fawe.bukkit.wrapper.AsyncBlock;
import com.thevoxelbox.voxelsniper.Message;
+import com.thevoxelbox.voxelsniper.SnipeData;
import com.thevoxelbox.voxelsniper.util.VoxelList;
-/**
- * @author Voxel
- */
+
public class pExcludeInk extends vPerformer {
private VoxelList excludeList;
@@ -28,7 +27,7 @@ public class pExcludeInk extends vPerformer {
}
@Override
- public void init(com.thevoxelbox.voxelsniper.SnipeData v) {
+ public void init(SnipeData v) {
w = v.getWorld();
data = v.getPropertyId();
excludeList = v.getVoxelList();
diff --git a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pExcludeMat.java b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pExcludeMat.java
index cc08fd228..4eef243f8 100644
--- a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pExcludeMat.java
+++ b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pExcludeMat.java
@@ -6,11 +6,10 @@ package com.thevoxelbox.voxelsniper.brush.perform;
import com.boydti.fawe.bukkit.wrapper.AsyncBlock;
import com.thevoxelbox.voxelsniper.Message;
+import com.thevoxelbox.voxelsniper.SnipeData;
import com.thevoxelbox.voxelsniper.util.VoxelList;
-/**
- * @author Voxel
- */
+
public class pExcludeMat extends vPerformer {
private VoxelList excludeList;
@@ -28,7 +27,7 @@ public class pExcludeMat extends vPerformer {
}
@Override
- public void init(com.thevoxelbox.voxelsniper.SnipeData v) {
+ public void init(SnipeData v) {
w = v.getWorld();
id = v.getVoxelId();
excludeList = v.getVoxelList();
diff --git a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pIncludeCombo.java b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pIncludeCombo.java
index 42900375b..58134f7ae 100644
--- a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pIncludeCombo.java
+++ b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pIncludeCombo.java
@@ -6,11 +6,10 @@ package com.thevoxelbox.voxelsniper.brush.perform;
import com.boydti.fawe.bukkit.wrapper.AsyncBlock;
import com.thevoxelbox.voxelsniper.Message;
+import com.thevoxelbox.voxelsniper.SnipeData;
import com.thevoxelbox.voxelsniper.util.VoxelList;
-/**
- * @author Voxel
- */
+
public class pIncludeCombo extends vPerformer {
private VoxelList includeList;
@@ -30,7 +29,7 @@ public class pIncludeCombo extends vPerformer {
}
@Override
- public void init(com.thevoxelbox.voxelsniper.SnipeData v) {
+ public void init(SnipeData v) {
w = v.getWorld();
id = v.getVoxelId();
data = v.getPropertyId();
diff --git a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pIncludeInk.java b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pIncludeInk.java
index fed9e15c9..f8828956a 100644
--- a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pIncludeInk.java
+++ b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pIncludeInk.java
@@ -6,11 +6,10 @@ package com.thevoxelbox.voxelsniper.brush.perform;
import com.boydti.fawe.bukkit.wrapper.AsyncBlock;
import com.thevoxelbox.voxelsniper.Message;
+import com.thevoxelbox.voxelsniper.SnipeData;
import com.thevoxelbox.voxelsniper.util.VoxelList;
-/**
- * @author Voxel
- */
+
public class pIncludeInk extends vPerformer {
private VoxelList includeList;
@@ -28,7 +27,7 @@ public class pIncludeInk extends vPerformer {
}
@Override
- public void init(com.thevoxelbox.voxelsniper.SnipeData v) {
+ public void init(SnipeData v) {
w = v.getWorld();
data = v.getPropertyId();
includeList = v.getVoxelList();
diff --git a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pIncludeMat.java b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pIncludeMat.java
index d3af62180..4684581fb 100644
--- a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pIncludeMat.java
+++ b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pIncludeMat.java
@@ -6,11 +6,10 @@ package com.thevoxelbox.voxelsniper.brush.perform;
import com.boydti.fawe.bukkit.wrapper.AsyncBlock;
import com.thevoxelbox.voxelsniper.Message;
+import com.thevoxelbox.voxelsniper.SnipeData;
import com.thevoxelbox.voxelsniper.util.VoxelList;
-/**
- * @author Voxel
- */
+
public class pIncludeMat extends vPerformer {
private VoxelList includeList;
@@ -28,7 +27,7 @@ public class pIncludeMat extends vPerformer {
}
@Override
- public void init(com.thevoxelbox.voxelsniper.SnipeData v) {
+ public void init(SnipeData v) {
w = v.getWorld();
id = v.getVoxelId();
includeList = v.getVoxelList();
diff --git a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pInk.java b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pInk.java
index 90bce5498..4cec04c81 100644
--- a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pInk.java
+++ b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pInk.java
@@ -6,10 +6,9 @@ package com.thevoxelbox.voxelsniper.brush.perform;
import com.boydti.fawe.bukkit.wrapper.AsyncBlock;
import com.thevoxelbox.voxelsniper.Message;
+import com.thevoxelbox.voxelsniper.SnipeData;
+
-/**
- * @author Voxel
- */
public class pInk extends vPerformer {
private int d;
@@ -19,7 +18,7 @@ public class pInk extends vPerformer {
}
@Override
- public void init(com.thevoxelbox.voxelsniper.SnipeData v) {
+ public void init(SnipeData v) {
w = v.getWorld();
d = v.getPropertyId();
}
diff --git a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pInkCombo.java b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pInkCombo.java
index 4971662d5..81c603e21 100644
--- a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pInkCombo.java
+++ b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pInkCombo.java
@@ -6,10 +6,9 @@ package com.thevoxelbox.voxelsniper.brush.perform;
import com.boydti.fawe.bukkit.wrapper.AsyncBlock;
import com.thevoxelbox.voxelsniper.Message;
+import com.thevoxelbox.voxelsniper.SnipeData;
+
-/**
- * @author Voxel
- */
public class pInkCombo extends vPerformer {
private int d;
@@ -21,7 +20,7 @@ public class pInkCombo extends vPerformer {
}
@Override
- public void init(com.thevoxelbox.voxelsniper.SnipeData v) {
+ public void init(SnipeData v) {
w = v.getWorld();
d = v.getPropertyId();
dr = v.getReplaceData();
diff --git a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pInkComboNoPhys.java b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pInkComboNoPhys.java
index 530e9db6b..f3172ab95 100644
--- a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pInkComboNoPhys.java
+++ b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pInkComboNoPhys.java
@@ -2,10 +2,9 @@ package com.thevoxelbox.voxelsniper.brush.perform;
import com.boydti.fawe.bukkit.wrapper.AsyncBlock;
import com.thevoxelbox.voxelsniper.Message;
+import com.thevoxelbox.voxelsniper.SnipeData;
+
-/**
- * @author Voxel
- */
public class pInkComboNoPhys extends vPerformer {
private int d;
@@ -17,7 +16,7 @@ public class pInkComboNoPhys extends vPerformer {
}
@Override
- public void init(com.thevoxelbox.voxelsniper.SnipeData v) {
+ public void init(SnipeData v) {
w = v.getWorld();
d = v.getPropertyId();
dr = v.getReplaceData();
@@ -45,4 +44,4 @@ public class pInkComboNoPhys extends vPerformer {
public boolean isUsingReplaceMaterial() {
return true;
}
-}
\ No newline at end of file
+}
diff --git a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pInkInk.java b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pInkInk.java
index 0bea5f28c..cf986654a 100644
--- a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pInkInk.java
+++ b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pInkInk.java
@@ -6,10 +6,9 @@ package com.thevoxelbox.voxelsniper.brush.perform;
import com.boydti.fawe.bukkit.wrapper.AsyncBlock;
import com.thevoxelbox.voxelsniper.Message;
+import com.thevoxelbox.voxelsniper.SnipeData;
+
-/**
- * @author Voxel
- */
public class pInkInk extends vPerformer {
private int d;
@@ -20,7 +19,7 @@ public class pInkInk extends vPerformer {
}
@Override
- public void init(com.thevoxelbox.voxelsniper.SnipeData v) {
+ public void init(SnipeData v) {
w = v.getWorld();
d = v.getPropertyId();
dr = v.getReplaceData();
diff --git a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pInkInkNoPhys.java b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pInkInkNoPhys.java
index 35097450f..dc1da32d8 100644
--- a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pInkInkNoPhys.java
+++ b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pInkInkNoPhys.java
@@ -2,10 +2,9 @@ package com.thevoxelbox.voxelsniper.brush.perform;
import com.boydti.fawe.bukkit.wrapper.AsyncBlock;
import com.thevoxelbox.voxelsniper.Message;
+import com.thevoxelbox.voxelsniper.SnipeData;
+
-/**
- * @author Voxel
- */
public class pInkInkNoPhys extends vPerformer {
private int d;
@@ -16,7 +15,7 @@ public class pInkInkNoPhys extends vPerformer {
}
@Override
- public void init(com.thevoxelbox.voxelsniper.SnipeData v) {
+ public void init(SnipeData v) {
w = v.getWorld();
d = v.getPropertyId();
dr = v.getReplaceData();
@@ -42,4 +41,4 @@ public class pInkInkNoPhys extends vPerformer {
public boolean isUsingReplaceMaterial() {
return true;
}
-}
\ No newline at end of file
+}
diff --git a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pInkMat.java b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pInkMat.java
index 244fc7db8..41a4b213f 100644
--- a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pInkMat.java
+++ b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pInkMat.java
@@ -6,10 +6,9 @@ package com.thevoxelbox.voxelsniper.brush.perform;
import com.boydti.fawe.bukkit.wrapper.AsyncBlock;
import com.thevoxelbox.voxelsniper.Message;
+import com.thevoxelbox.voxelsniper.SnipeData;
+
-/**
- * @author Voxel
- */
public class pInkMat extends vPerformer {
private int d;
@@ -20,7 +19,7 @@ public class pInkMat extends vPerformer {
}
@Override
- public void init(com.thevoxelbox.voxelsniper.SnipeData v) {
+ public void init(SnipeData v) {
w = v.getWorld();
d = v.getPropertyId();
ir = v.getReplaceId();
diff --git a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pInkMatNoPhys.java b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pInkMatNoPhys.java
index dae7e0392..a6c932c5f 100644
--- a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pInkMatNoPhys.java
+++ b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pInkMatNoPhys.java
@@ -2,10 +2,9 @@ package com.thevoxelbox.voxelsniper.brush.perform;
import com.boydti.fawe.bukkit.wrapper.AsyncBlock;
import com.thevoxelbox.voxelsniper.Message;
+import com.thevoxelbox.voxelsniper.SnipeData;
+
-/**
- * @author Voxel
- */
public class pInkMatNoPhys extends vPerformer {
private int d;
@@ -16,7 +15,7 @@ public class pInkMatNoPhys extends vPerformer {
}
@Override
- public void init(com.thevoxelbox.voxelsniper.SnipeData v) {
+ public void init(SnipeData v) {
w = v.getWorld();
d = v.getPropertyId();
ir = v.getReplaceId();
@@ -42,4 +41,4 @@ public class pInkMatNoPhys extends vPerformer {
public boolean isUsingReplaceMaterial() {
return true;
}
-}
\ No newline at end of file
+}
diff --git a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pInkNoPhys.java b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pInkNoPhys.java
index 9564828bc..b27941c90 100644
--- a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pInkNoPhys.java
+++ b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pInkNoPhys.java
@@ -2,10 +2,9 @@ package com.thevoxelbox.voxelsniper.brush.perform;
import com.boydti.fawe.bukkit.wrapper.AsyncBlock;
import com.thevoxelbox.voxelsniper.Message;
+import com.thevoxelbox.voxelsniper.SnipeData;
+
-/**
- * @author Voxel
- */
public class pInkNoPhys extends vPerformer {
private int d;
@@ -15,7 +14,7 @@ public class pInkNoPhys extends vPerformer {
}
@Override
- public void init(com.thevoxelbox.voxelsniper.SnipeData v) {
+ public void init(SnipeData v) {
w = v.getWorld();
d = v.getPropertyId();
}
diff --git a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pInkNoUndo.java b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pInkNoUndo.java
index 2591b16eb..0cc598220 100644
--- a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pInkNoUndo.java
+++ b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pInkNoUndo.java
@@ -6,10 +6,9 @@ package com.thevoxelbox.voxelsniper.brush.perform;
import com.boydti.fawe.bukkit.wrapper.AsyncBlock;
import com.thevoxelbox.voxelsniper.Message;
+import com.thevoxelbox.voxelsniper.SnipeData;
+
-/**
- * @author Voxel
- */
public class pInkNoUndo extends vPerformer {
private int d;
@@ -19,7 +18,7 @@ public class pInkNoUndo extends vPerformer {
}
@Override
- public void init(com.thevoxelbox.voxelsniper.SnipeData v) {
+ public void init(SnipeData v) {
w = v.getWorld();
d = v.getPropertyId();
}
@@ -37,4 +36,4 @@ public class pInkNoUndo extends vPerformer {
b.setPropertyId(d);
}
}
-}
\ No newline at end of file
+}
diff --git a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pMatCombo.java b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pMatCombo.java
index 10b4ebdef..1cc30bbdf 100644
--- a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pMatCombo.java
+++ b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pMatCombo.java
@@ -6,10 +6,9 @@ package com.thevoxelbox.voxelsniper.brush.perform;
import com.boydti.fawe.bukkit.wrapper.AsyncBlock;
import com.thevoxelbox.voxelsniper.Message;
+import com.thevoxelbox.voxelsniper.SnipeData;
+
-/**
- * @author Voxel
- */
public class pMatCombo extends vPerformer {
private int dr;
@@ -21,7 +20,7 @@ public class pMatCombo extends vPerformer {
}
@Override
- public void init(com.thevoxelbox.voxelsniper.SnipeData v) {
+ public void init(SnipeData v) {
w = v.getWorld();
dr = v.getReplaceData();
i = v.getVoxelId();
diff --git a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pMatComboNophys.java b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pMatComboNophys.java
index f52358b2e..00ed5b0b2 100644
--- a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pMatComboNophys.java
+++ b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pMatComboNophys.java
@@ -6,10 +6,9 @@ package com.thevoxelbox.voxelsniper.brush.perform;
import com.boydti.fawe.bukkit.wrapper.AsyncBlock;
import com.thevoxelbox.voxelsniper.Message;
+import com.thevoxelbox.voxelsniper.SnipeData;
+
-/**
- * @author Voxel
- */
public class pMatComboNophys extends vPerformer {
private int dr;
@@ -21,7 +20,7 @@ public class pMatComboNophys extends vPerformer {
}
@Override
- public void init(com.thevoxelbox.voxelsniper.SnipeData v) {
+ public void init(SnipeData v) {
w = v.getWorld();
dr = v.getReplaceData();
i = v.getVoxelId();
diff --git a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pMatInk.java b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pMatInk.java
index d83bf3c55..d0d8dedf8 100644
--- a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pMatInk.java
+++ b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pMatInk.java
@@ -6,10 +6,9 @@ package com.thevoxelbox.voxelsniper.brush.perform;
import com.boydti.fawe.bukkit.wrapper.AsyncBlock;
import com.thevoxelbox.voxelsniper.Message;
+import com.thevoxelbox.voxelsniper.SnipeData;
+
-/**
- * @author Voxel
- */
public class pMatInk extends vPerformer {
private int i;
@@ -20,7 +19,7 @@ public class pMatInk extends vPerformer {
}
@Override
- public void init(com.thevoxelbox.voxelsniper.SnipeData v) {
+ public void init(SnipeData v) {
w = v.getWorld();
i = v.getVoxelId();
dr = v.getReplaceData();
diff --git a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pMatInkNoPhys.java b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pMatInkNoPhys.java
index a15d26551..bb825b048 100644
--- a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pMatInkNoPhys.java
+++ b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pMatInkNoPhys.java
@@ -6,10 +6,9 @@ package com.thevoxelbox.voxelsniper.brush.perform;
import com.boydti.fawe.bukkit.wrapper.AsyncBlock;
import com.thevoxelbox.voxelsniper.Message;
+import com.thevoxelbox.voxelsniper.SnipeData;
+
-/**
- * @author Voxel
- */
public class pMatInkNoPhys extends vPerformer {
private int i;
@@ -20,7 +19,7 @@ public class pMatInkNoPhys extends vPerformer {
}
@Override
- public void init(com.thevoxelbox.voxelsniper.SnipeData v) {
+ public void init(SnipeData v) {
w = v.getWorld();
i = v.getVoxelId();
dr = v.getReplaceData();
diff --git a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pMatMat.java b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pMatMat.java
index 10a7a731f..6faf085aa 100644
--- a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pMatMat.java
+++ b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pMatMat.java
@@ -6,10 +6,9 @@ package com.thevoxelbox.voxelsniper.brush.perform;
import com.boydti.fawe.bukkit.wrapper.AsyncBlock;
import com.thevoxelbox.voxelsniper.Message;
+import com.thevoxelbox.voxelsniper.SnipeData;
+
-/**
- * @author Voxel
- */
public class pMatMat extends vPerformer {
private int i;
@@ -20,7 +19,7 @@ public class pMatMat extends vPerformer {
}
@Override
- public void init(com.thevoxelbox.voxelsniper.SnipeData v) {
+ public void init(SnipeData v) {
w = v.getWorld();
i = v.getVoxelId();
r = v.getReplaceId();
diff --git a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pMatMatNoPhys.java b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pMatMatNoPhys.java
index 83d80976d..66f4760c3 100644
--- a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pMatMatNoPhys.java
+++ b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pMatMatNoPhys.java
@@ -6,10 +6,9 @@ package com.thevoxelbox.voxelsniper.brush.perform;
import com.boydti.fawe.bukkit.wrapper.AsyncBlock;
import com.thevoxelbox.voxelsniper.Message;
+import com.thevoxelbox.voxelsniper.SnipeData;
+
-/**
- * @author Voxel
- */
public class pMatMatNoPhys extends vPerformer {
private int i;
@@ -20,7 +19,7 @@ public class pMatMatNoPhys extends vPerformer {
}
@Override
- public void init(com.thevoxelbox.voxelsniper.SnipeData v) {
+ public void init(SnipeData v) {
w = v.getWorld();
i = v.getVoxelId();
r = v.getReplaceId();
diff --git a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pMaterial.java b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pMaterial.java
index 27bb4c16c..cf5e8d25e 100644
--- a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pMaterial.java
+++ b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pMaterial.java
@@ -6,10 +6,9 @@ package com.thevoxelbox.voxelsniper.brush.perform;
import com.boydti.fawe.bukkit.wrapper.AsyncBlock;
import com.thevoxelbox.voxelsniper.Message;
+import com.thevoxelbox.voxelsniper.SnipeData;
+
-/**
- * @author Voxel
- */
public class pMaterial extends vPerformer {
private int i;
@@ -19,7 +18,7 @@ public class pMaterial extends vPerformer {
}
@Override
- public void init(com.thevoxelbox.voxelsniper.SnipeData v) {
+ public void init(SnipeData v) {
w = v.getWorld();
i = v.getVoxelId();
}
diff --git a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pMaterialNoPhys.java b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pMaterialNoPhys.java
index 7a821570f..5471b0003 100644
--- a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pMaterialNoPhys.java
+++ b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pMaterialNoPhys.java
@@ -6,10 +6,9 @@ package com.thevoxelbox.voxelsniper.brush.perform;
import com.boydti.fawe.bukkit.wrapper.AsyncBlock;
import com.thevoxelbox.voxelsniper.Message;
+import com.thevoxelbox.voxelsniper.SnipeData;
+
-/**
- * @author Voxel
- */
public class pMaterialNoPhys extends vPerformer {
private int i;
@@ -18,7 +17,7 @@ public class pMaterialNoPhys extends vPerformer {
}
@Override
- public void init(com.thevoxelbox.voxelsniper.SnipeData v) {
+ public void init(SnipeData v) {
w = v.getWorld();
i = v.getVoxelId();
}
diff --git a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pNoUndo.java b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pNoUndo.java
index f62affc6f..0c524cc1e 100644
--- a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pNoUndo.java
+++ b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/pNoUndo.java
@@ -6,10 +6,9 @@ package com.thevoxelbox.voxelsniper.brush.perform;
import com.boydti.fawe.bukkit.wrapper.AsyncBlock;
import com.thevoxelbox.voxelsniper.Message;
+import com.thevoxelbox.voxelsniper.SnipeData;
+
-/**
- * @author Voxel
- */
public class pNoUndo extends vPerformer {
private int i;
@@ -19,7 +18,7 @@ public class pNoUndo extends vPerformer {
}
@Override
- public void init(com.thevoxelbox.voxelsniper.SnipeData v) {
+ public void init(SnipeData v) {
w = v.getWorld();
i = v.getVoxelId();
}
@@ -37,4 +36,4 @@ public class pNoUndo extends vPerformer {
b.setTypeId(i);
}
}
-}
\ No newline at end of file
+}
diff --git a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/vPerformer.java b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/vPerformer.java
index 2201adf52..9f2be4a83 100644
--- a/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/vPerformer.java
+++ b/favs/src/main/java/com/thevoxelbox/voxelsniper/brush/perform/vPerformer.java
@@ -6,12 +6,11 @@ package com.thevoxelbox.voxelsniper.brush.perform;
import com.boydti.fawe.bukkit.wrapper.AsyncBlock;
import com.thevoxelbox.voxelsniper.Message;
+import com.thevoxelbox.voxelsniper.SnipeData;
import com.thevoxelbox.voxelsniper.Undo;
import org.bukkit.World;
-/**
- * @author Voxel
- */
+
public abstract class vPerformer {
public String name = "Performer";
@@ -20,7 +19,7 @@ public abstract class vPerformer {
public abstract void info(Message vm);
- public abstract void init(com.thevoxelbox.voxelsniper.SnipeData v);
+ public abstract void init(SnipeData v);
public void setUndo() {
h = new Undo();
diff --git a/favs/src/main/java/com/thevoxelbox/voxelsniper/command/VoxelBrushToolCommand.java b/favs/src/main/java/com/thevoxelbox/voxelsniper/command/VoxelBrushToolCommand.java
index 4a0e4140d..3549a1d69 100644
--- a/favs/src/main/java/com/thevoxelbox/voxelsniper/command/VoxelBrushToolCommand.java
+++ b/favs/src/main/java/com/thevoxelbox/voxelsniper/command/VoxelBrushToolCommand.java
@@ -31,11 +31,7 @@ public class VoxelBrushToolCommand extends VoxelCommand {
}
if (args.length == 3 && args[2] != null && !args[2].isEmpty()) {
- Material itemInHand = (player.getItemInHand() != null) ? player.getItemInHand().getType() : null;
- if (itemInHand == null) {
- player.sendMessage("/btool assign ");
- return true;
- }
+ Material itemInHand = player.getItemInHand().getType();
if (sniper.setTool(args[2], action, itemInHand)) {
player.sendMessage(itemInHand.name() + " has been assigned to '" + args[2] + "' as action " + action.name() + ".");
} else {
@@ -48,11 +44,7 @@ public class VoxelBrushToolCommand extends VoxelCommand {
sniper.removeTool(args[1]);
return true;
} else {
- Material itemInHand = (player.getItemInHand() != null) ? player.getItemInHand().getType() : null;
- if (itemInHand == null) {
- player.sendMessage("Can't unassign empty hands.");
- return true;
- }
+ Material itemInHand = player.getItemInHand().getType();
if (sniper.getCurrentToolId() == null) {
player.sendMessage("Can't unassign default tool.");
return true;
diff --git a/favs/src/main/java/com/thevoxelbox/voxelsniper/command/VoxelReplaceCommand.java b/favs/src/main/java/com/thevoxelbox/voxelsniper/command/VoxelReplaceCommand.java
index 0e040ce4e..4bed75c2e 100644
--- a/favs/src/main/java/com/thevoxelbox/voxelsniper/command/VoxelReplaceCommand.java
+++ b/favs/src/main/java/com/thevoxelbox/voxelsniper/command/VoxelReplaceCommand.java
@@ -1,6 +1,5 @@
package com.thevoxelbox.voxelsniper.command;
-import com.bekvon.bukkit.residence.commands.material;
import com.boydti.fawe.bukkit.wrapper.AsyncBlock;
import com.sk89q.worldedit.world.block.BlockType;
import com.sk89q.worldedit.world.block.BlockTypes;
@@ -9,9 +8,6 @@ import com.thevoxelbox.voxelsniper.SnipeData;
import com.thevoxelbox.voxelsniper.Sniper;
import com.thevoxelbox.voxelsniper.VoxelSniper;
import com.thevoxelbox.voxelsniper.api.command.VoxelCommand;
-import org.bukkit.ChatColor;
-import org.bukkit.Material;
-import org.bukkit.block.Block;
import org.bukkit.entity.Player;
public class VoxelReplaceCommand extends VoxelCommand
diff --git a/favs/src/main/java/com/thevoxelbox/voxelsniper/command/VoxelUndoCommand.java b/favs/src/main/java/com/thevoxelbox/voxelsniper/command/VoxelUndoCommand.java
index ad7601a75..c22f2e6d5 100644
--- a/favs/src/main/java/com/thevoxelbox/voxelsniper/command/VoxelUndoCommand.java
+++ b/favs/src/main/java/com/thevoxelbox/voxelsniper/command/VoxelUndoCommand.java
@@ -22,12 +22,11 @@ public class VoxelUndoCommand extends VoxelCommand {
int amount = Integer.parseInt(args[0]);
sniper.undo(amount);
} catch (NumberFormatException exception) {
- player.sendMessage(BBC.getPrefix() + "Number expected; string given.");
+ player.sendMessage("Number expected; string given.");
}
} else {
sniper.undo();
}
-// plugin.getLogger().info("Player \"" + player.getName() + "\" used /u");
return true;
}
}
diff --git a/favs/src/main/java/com/thevoxelbox/voxelsniper/command/VoxelVoxelCommand.java b/favs/src/main/java/com/thevoxelbox/voxelsniper/command/VoxelVoxelCommand.java
index b574ced6c..0efdfcd0b 100644
--- a/favs/src/main/java/com/thevoxelbox/voxelsniper/command/VoxelVoxelCommand.java
+++ b/favs/src/main/java/com/thevoxelbox/voxelsniper/command/VoxelVoxelCommand.java
@@ -1,4 +1,4 @@
-/**
+/*
This file is part of VoxelSniper, licensed under the MIT License (MIT).
Copyright (c) The VoxelBox
@@ -25,7 +25,6 @@
package com.thevoxelbox.voxelsniper.command;
-import com.bekvon.bukkit.residence.commands.material;
import com.boydti.fawe.bukkit.favs.PatternUtil;
import com.sk89q.worldedit.WorldEdit;
import com.sk89q.worldedit.bukkit.BukkitAdapter;
diff --git a/favs/src/main/java/com/thevoxelbox/voxelsniper/event/SniperBrushChangedEvent.java b/favs/src/main/java/com/thevoxelbox/voxelsniper/event/SniperBrushChangedEvent.java
index 3dd2b954b..37eb5f6d1 100644
--- a/favs/src/main/java/com/thevoxelbox/voxelsniper/event/SniperBrushChangedEvent.java
+++ b/favs/src/main/java/com/thevoxelbox/voxelsniper/event/SniperBrushChangedEvent.java
@@ -1,4 +1,4 @@
-/**
+/*
This file is part of VoxelSniper, licensed under the MIT License (MIT).
Copyright (c) The VoxelBox
diff --git a/favs/src/main/java/com/thevoxelbox/voxelsniper/event/SniperBrushSizeChangedEvent.java b/favs/src/main/java/com/thevoxelbox/voxelsniper/event/SniperBrushSizeChangedEvent.java
index 3980b4e92..d7513a6a4 100644
--- a/favs/src/main/java/com/thevoxelbox/voxelsniper/event/SniperBrushSizeChangedEvent.java
+++ b/favs/src/main/java/com/thevoxelbox/voxelsniper/event/SniperBrushSizeChangedEvent.java
@@ -4,9 +4,6 @@ import com.thevoxelbox.voxelsniper.Sniper;
import org.bukkit.event.Event;
import org.bukkit.event.HandlerList;
-/**
- *
- */
public class SniperBrushSizeChangedEvent extends Event {
private static final HandlerList handlers = new HandlerList();
private final Sniper sniper;
diff --git a/favs/src/main/java/com/thevoxelbox/voxelsniper/event/SniperMaterialChangedEvent.java b/favs/src/main/java/com/thevoxelbox/voxelsniper/event/SniperMaterialChangedEvent.java
index e7801eb74..15d2e5a67 100644
--- a/favs/src/main/java/com/thevoxelbox/voxelsniper/event/SniperMaterialChangedEvent.java
+++ b/favs/src/main/java/com/thevoxelbox/voxelsniper/event/SniperMaterialChangedEvent.java
@@ -1,4 +1,4 @@
-/**
+/*
This file is part of VoxelSniper, licensed under the MIT License (MIT).
Copyright (c) The VoxelBox
diff --git a/favs/src/main/java/com/thevoxelbox/voxelsniper/event/SniperReplaceMaterialChangedEvent.java b/favs/src/main/java/com/thevoxelbox/voxelsniper/event/SniperReplaceMaterialChangedEvent.java
index 453bd4797..fb65ad93b 100644
--- a/favs/src/main/java/com/thevoxelbox/voxelsniper/event/SniperReplaceMaterialChangedEvent.java
+++ b/favs/src/main/java/com/thevoxelbox/voxelsniper/event/SniperReplaceMaterialChangedEvent.java
@@ -4,9 +4,6 @@ import com.thevoxelbox.voxelsniper.Sniper;
import org.bukkit.block.data.BlockData;
import org.bukkit.event.HandlerList;
-/**
- *
- */
public class SniperReplaceMaterialChangedEvent extends SniperMaterialChangedEvent {
private static final HandlerList handlers = new HandlerList();
diff --git a/favs/src/main/java/com/thevoxelbox/voxelsniper/util/BlockWrapper.java b/favs/src/main/java/com/thevoxelbox/voxelsniper/util/BlockWrapper.java
index 7b29aa1a5..c1f80200d 100644
--- a/favs/src/main/java/com/thevoxelbox/voxelsniper/util/BlockWrapper.java
+++ b/favs/src/main/java/com/thevoxelbox/voxelsniper/util/BlockWrapper.java
@@ -4,9 +4,6 @@ import com.boydti.fawe.bukkit.wrapper.AsyncBlock;
import org.bukkit.Material;
import org.bukkit.World;
-/**
- * @author MikeMatrix
- */
public class BlockWrapper {
private int id;
@@ -17,10 +14,6 @@ public class BlockWrapper {
private int data;
private World world;
- /**
- * @param block
- */
- @SuppressWarnings("deprecation")
public BlockWrapper(final AsyncBlock block) {
this.setId(block.getTypeId());
this.setX(block.getX());
diff --git a/favs/src/main/java/com/thevoxelbox/voxelsniper/util/UndoDelegate.java b/favs/src/main/java/com/thevoxelbox/voxelsniper/util/UndoDelegate.java
index 0cf10403c..e9e30cffe 100644
--- a/favs/src/main/java/com/thevoxelbox/voxelsniper/util/UndoDelegate.java
+++ b/favs/src/main/java/com/thevoxelbox/voxelsniper/util/UndoDelegate.java
@@ -6,9 +6,6 @@ import org.bukkit.World;
import org.bukkit.block.Block;
import org.bukkit.block.data.BlockData;
-/**
- *
- */
public class UndoDelegate implements BlockChangeDelegate {
private final World targetWorld;
private Undo currentUndo;
diff --git a/favs/src/main/java/com/thevoxelbox/voxelsniper/util/VoxelList.java b/favs/src/main/java/com/thevoxelbox/voxelsniper/util/VoxelList.java
index 34fd3c4d0..a5874f10e 100644
--- a/favs/src/main/java/com/thevoxelbox/voxelsniper/util/VoxelList.java
+++ b/favs/src/main/java/com/thevoxelbox/voxelsniper/util/VoxelList.java
@@ -1,18 +1,11 @@
package com.thevoxelbox.voxelsniper.util;
-import com.google.common.collect.ImmutableList;
import com.sk89q.worldedit.bukkit.BukkitAdapter;
import com.sk89q.worldedit.extent.NullExtent;
import com.sk89q.worldedit.function.mask.BlockMask;
-import com.sk89q.worldedit.function.mask.BlockMaskBuilder;
import com.sk89q.worldedit.world.block.BlockState;
-import org.bukkit.Material;
import org.bukkit.block.data.BlockData;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
/**
* Container class for multiple ID/Datavalue pairs.
*/
diff --git a/favs/src/main/resources/config.yml b/favs/src/main/resources/config.yml
index 0f9d5b5a4..ca761cbb6 100644
--- a/favs/src/main/resources/config.yml
+++ b/favs/src/main/resources/config.yml
@@ -1,3 +1,4 @@
-litesniper-max-brush-size: 5
-undo-cache-size: 20
+# Max. brush size for FAVS brushes
+litesniper-max-brush-size: 30
+# Enable or disable the brush dump on login
message-on-login-enabled: true
\ No newline at end of file
diff --git a/settings.gradle b/settings.gradle
index 4c96db613..a9c7e611e 100644
--- a/settings.gradle
+++ b/settings.gradle
@@ -1,3 +1,11 @@
rootProject.name = 'FastAsyncWorldEdit'
-include 'worldedit-core', 'worldedit-bukkit', 'favs'
\ No newline at end of file
+include 'worldedit-libs'
+
+['bukkit', 'core'].forEach {
+ include "worldedit-libs:$it"
+ include "worldedit-$it"
+}
+include "worldedit-libs:core:ap"
+
+include 'favs'
diff --git a/worldedit-bukkit/build.gradle b/worldedit-bukkit/build.gradle
index 42df6e565..32d95545a 100644
--- a/worldedit-bukkit/build.gradle
+++ b/worldedit-bukkit/build.gradle
@@ -1,21 +1,33 @@
apply plugin: 'eclipse'
apply plugin: 'idea'
apply plugin: 'maven'
+apply plugin: 'java-library'
repositories {
maven { url "https://hub.spigotmc.org/nexus/content/groups/public" }
maven { url "https://repo.codemc.org/repository/maven-public" }
- maven { url 'https://papermc.io/repo/repository/maven-public/' }
+ maven { url "https://papermc.io/repo/repository/maven-public/" }
+ flatDir {
+ dirs 'lib'
+ }
+}
+
+configurations.all { Configuration it ->
+ it.resolutionStrategy { ResolutionStrategy rs ->
+ rs.force("com.google.guava:guava:21.0")
+ }
}
dependencies {
- compile project(':worldedit-core')
- compile 'org.bukkit:craftbukkit-1.14:pre5'
+ api project(':worldedit-core')
+ api project(':worldedit-libs:bukkit')
compile 'net.milkbowl.vault:VaultAPI:1.7'
- compile 'com.sk89q:dummypermscompat:1.10'
- compile 'com.destroystokyo.paper:paper-api:1.13.2-R0.1-SNAPSHOT'
- compile 'org.spigotmc:spigot:1.13.2-R0.1-SNAPSHOT'
- compile 'org.slf4j:slf4j-jdk14:1.7.26'
+ compile 'com.destroystokyo.paper:paper-api:1.14.3-R0.1-SNAPSHOT'
+ implementation 'io.papermc:paperlib:1.0.2'
+ compileOnly 'com.sk89q:dummypermscompat:1.10'
+// compile 'org.spigotmc:spigot:1.13.2-R0.1-SNAPSHOT'
+ compile name: 'spigot-1.14.3'
+ implementation 'org.apache.logging.log4j:log4j-slf4j-impl:2.8.1'
testCompile 'org.mockito:mockito-core:1.9.0-rc1'
compile 'com.massivecraft:factions:2.8.0'
compile 'com.drtshock:factions:1.6.9.5'
@@ -81,9 +93,13 @@ task copyFiles {
shadowJar {
dependencies {
relocate "org.slf4j", "com.sk89q.worldedit.slf4j"
+ relocate "org.apache.logging.slf4j", "com.sk89q.worldedit.log4jbridge"
include(dependency(':worldedit-core'))
include(dependency('org.slf4j:slf4j-api'))
- include(dependency("org.slf4j:slf4j-jdk14"))
+ include(dependency("org.apache.logging.log4j:log4j-slf4j-impl"))
+ relocate ("io.papermc.lib", "com.sk89q.worldedit.bukkit.paperlib") {
+ include(dependency("io.papermc:paperlib:1.0.2"))
+ }
}
archiveName = "${parent.name}-${project.name.replaceAll("worldedit-", "")}-${parent.version}.jar"
destinationDir = file '../target'
diff --git a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/BukkitCommand.java b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/BukkitCommand.java
index 083fe3304..7904a62f7 100644
--- a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/BukkitCommand.java
+++ b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/BukkitCommand.java
@@ -7,6 +7,7 @@ import com.boydti.fawe.object.FawePlayer;
import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;
+import org.jetbrains.annotations.NotNull;
public class BukkitCommand implements CommandExecutor {
@@ -17,7 +18,7 @@ public class BukkitCommand implements CommandExecutor {
}
@Override
- public boolean onCommand(final CommandSender sender, final Command cmd, final String label, final String[] args) {
+ public boolean onCommand(@NotNull final CommandSender sender, final Command cmd, final String label, final String[] args) {
final FawePlayer plr = Fawe.imp().wrap(sender);
if (!sender.hasPermission(this.cmd.getPerm()) && !sender.isOp()) {
BBC.NO_PERM.send(plr, this.cmd.getPerm());
diff --git a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/BukkitPlayer.java b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/BukkitPlayer.java
index 25eea21b9..17fe87fa7 100644
--- a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/BukkitPlayer.java
+++ b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/BukkitPlayer.java
@@ -2,20 +2,15 @@ package com.boydti.fawe.bukkit;
import com.boydti.fawe.Fawe;
import com.boydti.fawe.config.BBC;
-import com.boydti.fawe.object.FaweLocation;
import com.boydti.fawe.object.FawePlayer;
-import com.boydti.fawe.wrappers.PlayerWrapper;
-import java.lang.reflect.Method;
-import java.util.UUID;
-
-import com.sk89q.worldedit.WorldEdit;
import com.sk89q.worldedit.bukkit.WorldEditPlugin;
import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
-import org.bukkit.Location;
import org.bukkit.command.ConsoleCommandSender;
import org.bukkit.entity.Player;
+import java.util.UUID;
+
public class BukkitPlayer extends FawePlayer {
private static ConsoleCommandSender console;
@@ -66,21 +61,11 @@ public class BukkitPlayer extends FawePlayer {
@Override
public void resetTitle() {
- sendTitle("","");
+ parent.resetTitle();
}
public void sendTitle(String title, String sub) {
- try {
- Method methodSendTitle = Player.class.getDeclaredMethod("sendTitle", String.class, String.class, int.class, int.class, int.class);
- methodSendTitle.invoke(parent, ChatColor.GOLD + title, ChatColor.GOLD + sub, 0, 70, 20);
- return;
- } catch (Throwable ignore) {
- try {
- Method methodSendTitle = Player.class.getDeclaredMethod("sendTitle", String.class, String.class);
- methodSendTitle.invoke(parent, ChatColor.GOLD + title, ChatColor.GOLD + sub);
- return;
- } catch (Throwable ignore2) {}
- }
+ parent.sendTitle(ChatColor.GOLD + title, ChatColor.GOLD + sub, 0, 70, 20);
if (console == null) {
console = Bukkit.getConsoleSender();
Bukkit.getServer().dispatchCommand(console, "gamerule sendCommandFeedback false");
@@ -95,15 +80,13 @@ public class BukkitPlayer extends FawePlayer {
this.parent.sendMessage(BBC.color(message));
}
- @Override
- public void executeCommand(final String cmd) {
- Bukkit.getServer().dispatchCommand(this.parent, cmd);
+ @Override public void printError(String msg) {
+ this.sendMessage(msg);
}
@Override
- public FaweLocation getLocation() {
- final Location loc = this.parent.getLocation();
- return new FaweLocation(loc.getWorld().getName(), loc.getBlockX(), loc.getBlockY(), loc.getBlockZ());
+ public void executeCommand(final String cmd) {
+ Bukkit.getServer().dispatchCommand(this.parent, cmd);
}
@Override
diff --git a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/FaweBukkit.java b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/FaweBukkit.java
index 296ef8e53..7a785843d 100644
--- a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/FaweBukkit.java
+++ b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/FaweBukkit.java
@@ -61,7 +61,6 @@ import java.lang.reflect.Method;
import java.lang.reflect.Modifier;
import java.util.ArrayList;
import java.util.Collection;
-import java.util.List;
import java.util.UUID;
public class FaweBukkit implements IFawe, Listener {
@@ -73,9 +72,7 @@ public class FaweBukkit implements IFawe, Listener {
private boolean listeningImages;
private BukkitImageListener imageListener;
- private CFIPacketListener packetListener;
-
- private boolean listeningCui;
+ //private CFIPacketListener packetListener;
public VaultUtil getVault() {
return this.vault;
@@ -106,11 +103,11 @@ public class FaweBukkit implements IFawe, Listener {
}
try {
Fawe.get().setChatManager(new BukkitChatManager());
- } catch (Throwable ignore) {
- ignore.printStackTrace();
+ } catch (Throwable throwable) {
+ throwable.printStackTrace();
}
} catch (final Throwable e) {
- MainUtil.handleError(e);
+ e.printStackTrace();
Bukkit.getServer().shutdown();
}
@@ -131,29 +128,34 @@ public class FaweBukkit implements IFawe, Listener {
}
try {
- Class.forName("com.destroystokyo.paper.event.server.AsyncTabCompleteEvent");
+ Class.forName("com.destroystokyo.paper.event.server.AsyncTabCompleteEvent");
Bukkit.getPluginManager().registerEvents(new AsyncTabCompleteListener(WorldEditPlugin.getInstance()), plugin);
} catch (Throwable ignore) {
- ignore.printStackTrace();
+ debug("====== USE PAPER ======");
+ debug("DOWNLOAD: https://papermc.io/ci/job/Paper-1.13/");
+ debug("GUIDE: https://www.spigotmc.org/threads/21726/");
+ debug(" - This is only a recommendation");
+ debug(" - Allows the use of Async Tab Completetion as provided by Paper");
+ debug("==============================");
Bukkit.getPluginManager().registerEvents(new SyncTabCompleteListener(WorldEditPlugin.getInstance()), plugin);
}
});
}
- @Override
- public void registerPacketListener() {
- PluginManager manager = Bukkit.getPluginManager();
- if (packetListener == null && manager.getPlugin("ProtocolLib") != null) {
- packetListener = new CFIPacketListener(plugin);
- }
- }
+// @Override // Please don't delete this again, it's WIP
+// public void registerPacketListener() {
+// PluginManager manager = Bukkit.getPluginManager();
+// if (packetListener == null && manager.getPlugin("ProtocolLib") != null) {
+// packetListener = new CFIPacketListener(plugin);
+// }
+// }
@Override
public synchronized ImageViewer getImageViewer(FawePlayer fp) {
if (listeningImages && imageListener == null) return null;
try {
listeningImages = true;
- registerPacketListener();
+ //registerPacketListener();
PluginManager manager = Bukkit.getPluginManager();
if (manager.getPlugin("PacketListenerApi") == null) {
@@ -197,13 +199,9 @@ public class FaweBukkit implements IFawe, Listener {
}
@Override
- public void debug(final String s) {
+ public void debug(final String message) {
ConsoleCommandSender console = Bukkit.getConsoleSender();
- if (console != null) {
- console.sendMessage(BBC.color(s));
- } else {
- Bukkit.getLogger().info(BBC.color(s));
- }
+ console.sendMessage(BBC.color(message));
}
@Override
@@ -239,7 +237,7 @@ public class FaweBukkit implements IFawe, Listener {
Player player = (Player) obj;
FawePlayer existing = Fawe.get().getCachedPlayer(player.getName());
return existing != null ? existing : new BukkitPlayer(player);
- } else if (obj != null && obj.getClass().getName().contains("EntityPlayer")) {
+ } else if (obj.getClass().getName().contains("EntityPlayer")) {
try {
Method method = obj.getClass().getDeclaredMethod("getBukkitEntity");
return wrap(method.invoke(obj));
@@ -280,14 +278,13 @@ public class FaweBukkit implements IFawe, Listener {
try {
this.vault = new VaultUtil();
} catch (final Throwable e) {
- this.debug(BBC.getPrefix() + "&dVault is used for persistent `/wea` toggles.");
+ this.debug("&dVault is used for persistent `/wea` toggles.");
}
}
@Override
public String getDebugInfo() {
StringBuilder msg = new StringBuilder();
- List pl = new ArrayList<>();
msg.append("server.version: " + Bukkit.getVersion() + "\n");
msg.append("Plugins: \n");
for (Plugin p : Bukkit.getPluginManager().getPlugins()) {
@@ -323,7 +320,7 @@ public class FaweBukkit implements IFawe, Listener {
}
try {
return getQueue(world);
- } catch (Throwable ignore) {
+ } catch (Throwable throwable) {
// Disable incompatible settings
Settings.IMP.QUEUE.PARALLEL_THREADS = 1; // BukkitAPI placer is too slow to parallel thread at the chunk level
Settings.IMP.HISTORY.COMBINE_STAGES = false; // Performing a chunk copy (if possible) wouldn't be faster using the BukkitAPI
@@ -338,7 +335,7 @@ public class FaweBukkit implements IFawe, Listener {
debug("Download the version of FAWE for your platform");
debug(" - http://ci.athion.net/job/FastAsyncWorldEdit/lastSuccessfulBuild/artifact/target");
debug("=======================================");
- ignore.printStackTrace();
+ throwable.printStackTrace();
debug("=======================================");
TaskManager.IMP.laterAsync(
() -> MainUtil.sendAdmin("&cNo NMS placer found, see console!"), 1);
@@ -371,11 +368,11 @@ public class FaweBukkit implements IFawe, Listener {
} catch (Throwable ignore) {
}
}
- Throwable error = null;
+ Throwable error;
try {
return getQueue(world);
- } catch (Throwable ignore) {
- error = ignore;
+ } catch (Throwable throwable) {
+ error = throwable;
}
// Disable incompatible settings
Settings.IMP.QUEUE.PARALLEL_THREADS = 1; // BukkitAPI placer is too slow to parallel thread at the chunk level
@@ -422,7 +419,7 @@ public class FaweBukkit implements IFawe, Listener {
managers.add(new WorldguardFlag(worldguardPlugin, this));
Fawe.debug("Plugin 'WorldGuard' found. Using it now.");
} catch (final Throwable e) {
- MainUtil.handleError(e);
+ e.printStackTrace();
}
}
final Plugin townyPlugin = Bukkit.getServer().getPluginManager().getPlugin("Towny");
@@ -431,13 +428,13 @@ public class FaweBukkit implements IFawe, Listener {
managers.add(new TownyFeature(townyPlugin, this));
Fawe.debug("Plugin 'Towny' found. Using it now.");
} catch (final Throwable e) {
- MainUtil.handleError(e);
+ e.printStackTrace();
}
}
final Plugin factionsPlugin = Bukkit.getServer().getPluginManager().getPlugin("Factions");
if ((factionsPlugin != null) && factionsPlugin.isEnabled()) {
try {
- managers.add(new FactionsFeature(factionsPlugin, this));
+ managers.add(new FactionsFeature(factionsPlugin));
Fawe.debug("Plugin 'Factions' found. Using it now.");
} catch (final Throwable e) {
try {
@@ -445,10 +442,10 @@ public class FaweBukkit implements IFawe, Listener {
Fawe.debug("Plugin 'FactionsUUID' found. Using it now.");
} catch (Throwable e2) {
try {
- managers.add(new FactionsOneFeature(factionsPlugin, this));
+ managers.add(new FactionsOneFeature(factionsPlugin));
Fawe.debug("Plugin 'FactionsUUID' found. Using it now.");
} catch (Throwable e3) {
- MainUtil.handleError(e);
+ e.printStackTrace();
}
}
@@ -460,16 +457,16 @@ public class FaweBukkit implements IFawe, Listener {
managers.add(new ResidenceFeature(residencePlugin, this));
Fawe.debug("Plugin 'Residence' found. Using it now.");
} catch (final Throwable e) {
- MainUtil.handleError(e);
+ e.printStackTrace();
}
}
final Plugin griefpreventionPlugin = Bukkit.getServer().getPluginManager().getPlugin("GriefPrevention");
if ((griefpreventionPlugin != null) && griefpreventionPlugin.isEnabled()) {
try {
- managers.add(new GriefPreventionFeature(griefpreventionPlugin, this));
+ managers.add(new GriefPreventionFeature(griefpreventionPlugin));
Fawe.debug("Plugin 'GriefPrevention' found. Using it now.");
} catch (final Throwable e) {
- MainUtil.handleError(e);
+ e.printStackTrace();
}
}
final Plugin preciousstonesPlugin = Bukkit.getServer().getPluginManager().getPlugin("PreciousStones");
@@ -478,7 +475,7 @@ public class FaweBukkit implements IFawe, Listener {
managers.add(new PreciousStonesFeature(preciousstonesPlugin, this));
Fawe.debug("Plugin 'PreciousStones' found. Using it now.");
} catch (final Throwable e) {
- MainUtil.handleError(e);
+ e.printStackTrace();
}
}
@@ -486,10 +483,10 @@ public class FaweBukkit implements IFawe, Listener {
final Plugin aSkyBlock = Bukkit.getServer().getPluginManager().getPlugin("ASkyBlock");
if ((aSkyBlock != null) && aSkyBlock.isEnabled()) {
try {
- managers.add(new ASkyBlockHook(aSkyBlock, this));
+ managers.add(new ASkyBlockHook(aSkyBlock));
Fawe.debug("Plugin 'ASkyBlock' found. Using it now.");
} catch (final Throwable e) {
- MainUtil.handleError(e);
+ e.printStackTrace();
}
}
if (Settings.IMP.EXPERIMENTAL.FREEBUILD) {
@@ -497,7 +494,7 @@ public class FaweBukkit implements IFawe, Listener {
managers.add(new FreeBuildRegion());
Fawe.debug("Plugin '' found. Using it now.");
} catch (final Throwable e) {
- MainUtil.handleError(e);
+ e.printStackTrace();
}
}
@@ -571,7 +568,7 @@ public class FaweBukkit implements IFawe, Listener {
BukkitQueue_0.checkVersion(v.name());
this.version = tmp = v;
break;
- } catch (IllegalStateException e) {}
+ } catch (IllegalStateException ignored) {}
}
}
return tmp;
diff --git a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/adapter/v1_13_1/BlockMaterial_1_13.java b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/adapter/v1_13_1/BlockMaterial_1_13.java
index 53a59d24d..0711a6961 100644
--- a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/adapter/v1_13_1/BlockMaterial_1_13.java
+++ b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/adapter/v1_13_1/BlockMaterial_1_13.java
@@ -1,9 +1,11 @@
package com.boydti.fawe.bukkit.adapter.v1_13_1;
-import com.sk89q.util.ReflectionUtil;
import com.sk89q.worldedit.world.registry.BlockMaterial;
-
-import net.minecraft.server.v1_13_R2.*;
+import net.minecraft.server.v1_13_R2.Block;
+import net.minecraft.server.v1_13_R2.EnumPistonReaction;
+import net.minecraft.server.v1_13_R2.IBlockData;
+import net.minecraft.server.v1_13_R2.ITileEntity;
+import net.minecraft.server.v1_13_R2.Material;
import org.bukkit.craftbukkit.v1_13_R2.block.data.CraftBlockData;
public class BlockMaterial_1_13 implements BlockMaterial {
@@ -22,7 +24,7 @@ public class BlockMaterial_1_13 implements BlockMaterial {
this.defaultState = defaultState;
this.material = defaultState.getMaterial();
this.craftBlockData = CraftBlockData.fromData(defaultState);
- this.isTranslucent = ReflectionUtil.getField(Block.class, block, "n");
+ this.isTranslucent = block.f(defaultState); //isSolid
}
public Block getBlock() {
diff --git a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/adapter/v1_13_1/Spigot_v1_13_R2.java b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/adapter/v1_13_1/Spigot_v1_13_R2.java
index 1d3b5fb53..d16684bcd 100644
--- a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/adapter/v1_13_1/Spigot_v1_13_R2.java
+++ b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/adapter/v1_13_1/Spigot_v1_13_R2.java
@@ -20,7 +20,6 @@
package com.boydti.fawe.bukkit.adapter.v1_13_1;
import com.boydti.fawe.Fawe;
-import com.boydti.fawe.object.collection.ObjObjMap;
import com.google.common.collect.ImmutableList;
import com.google.common.collect.Maps;
import com.sk89q.jnbt.Tag;
@@ -33,42 +32,50 @@ import com.sk89q.worldedit.entity.BaseEntity;
import com.sk89q.worldedit.entity.LazyBaseEntity;
import com.sk89q.worldedit.internal.Constants;
import com.sk89q.worldedit.math.BlockVector3;
-import com.sk89q.worldedit.registry.state.*;
+import com.sk89q.worldedit.registry.state.BooleanProperty;
+import com.sk89q.worldedit.registry.state.DirectionalProperty;
+import com.sk89q.worldedit.registry.state.EnumProperty;
+import com.sk89q.worldedit.registry.state.IntegerProperty;
+import com.sk89q.worldedit.registry.state.Property;
import com.sk89q.worldedit.util.Direction;
-import com.sk89q.worldedit.world.biome.BiomeType;
+import com.sk89q.worldedit.world.block.BaseBlock;
import com.sk89q.worldedit.world.block.BlockState;
-import com.sk89q.worldedit.world.block.*;
+import com.sk89q.worldedit.world.block.BlockStateHolder;
+import com.sk89q.worldedit.world.block.BlockType;
+import com.sk89q.worldedit.world.block.BlockTypes;
import com.sk89q.worldedit.world.entity.EntityType;
import com.sk89q.worldedit.world.registry.BlockMaterial;
import net.minecraft.server.v1_13_R2.*;
import org.bukkit.Bukkit;
import org.bukkit.Location;
-import org.bukkit.block.Biome;
import org.bukkit.block.data.BlockData;
import org.bukkit.craftbukkit.v1_13_R2.CraftChunk;
import org.bukkit.craftbukkit.v1_13_R2.CraftServer;
import org.bukkit.craftbukkit.v1_13_R2.CraftWorld;
-import org.bukkit.craftbukkit.v1_13_R2.block.CraftBlock;
import org.bukkit.craftbukkit.v1_13_R2.block.data.CraftBlockData;
import org.bukkit.craftbukkit.v1_13_R2.entity.CraftEntity;
import org.bukkit.entity.Player;
import org.bukkit.event.entity.CreatureSpawnEvent.SpawnReason;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
import javax.annotation.Nullable;
import java.lang.reflect.Field;
import java.lang.reflect.Method;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
import java.util.function.Supplier;
import java.util.logging.Level;
+import java.util.logging.Logger;
import java.util.stream.Collectors;
import static com.google.common.base.Preconditions.checkNotNull;
public final class Spigot_v1_13_R2 extends CachedBukkitAdapter implements BukkitImplAdapter{
- private final Logger logger = LoggerFactory.getLogger(getClass());
+ private final Logger logger = Logger.getLogger(getClass().getCanonicalName());
private final Field nbtListTagListField;
private final Method nbtCreateTagMethod;
@@ -83,6 +90,9 @@ public final class Spigot_v1_13_R2 extends CachedBukkitAdapter implements Bukkit
// ------------------------------------------------------------------------
public Spigot_v1_13_R2() throws NoSuchFieldException, NoSuchMethodException {
+ // A simple test
+ CraftServer.class.cast(Bukkit.getServer());
+
// The list of tags on an NBTTagList
nbtListTagListField = NBTTagList.class.getDeclaredField("list");
nbtListTagListField.setAccessible(true);
@@ -139,6 +149,7 @@ public final class Spigot_v1_13_R2 extends CachedBukkitAdapter implements Bukkit
@Nullable
private static String getEntityId(Entity entity) {
MinecraftKey minecraftkey = EntityTypes.getName(entity.getBukkitEntity().getHandle().P());
+
return minecraftkey == null ? null : minecraftkey.toString();
}
@@ -189,11 +200,6 @@ public final class Spigot_v1_13_R2 extends CachedBukkitAdapter implements Bukkit
return IRegistry.BLOCK.getOrDefault(new MinecraftKey(blockType.getNamespace(), blockType.getResource()));
}
- // ------------------------------------------------------------------------
- // Code that is less likely to break
- // ------------------------------------------------------------------------
-
- @SuppressWarnings("deprecation")
@Override
public BaseBlock getBlock(Location location) {
checkNotNull(location);
@@ -247,7 +253,7 @@ public final class Spigot_v1_13_R2 extends CachedBukkitAdapter implements Bukkit
nmsChunk.d(pos); // Force delete the old tile entity
- CompoundTag nativeTag = state instanceof BaseBlock ? ((BaseBlock)state).getNbtData() : null;
+ CompoundTag nativeTag = state instanceof BaseBlock ? state.getNbtData() : null;
if (nativeTag != null || existing instanceof TileEntityBlock) {
nmsWorld.setTypeAndData(pos, blockData, 0);
// remove tile
@@ -348,7 +354,7 @@ public final class Spigot_v1_13_R2 extends CachedBukkitAdapter implements Bukkit
return Collections.emptyMap();
}
if (block == null) {
- logger.warn("Failed to find properties for " + blockType.getId());
+ logger.warning("Failed to find properties for " + blockType.getId());
return Collections.emptyMap();
}
Map> properties = Maps.newLinkedHashMap();
@@ -414,7 +420,7 @@ public final class Spigot_v1_13_R2 extends CachedBukkitAdapter implements Bukkit
try {
return toNativeList((NBTTagList) foreign);
} catch (Throwable e) {
- logger.warn("Failed to convert NBTTagList", e);
+ logger.log(Level.WARNING, "Failed to convert NBTTagList", e);
return new ListTag(ByteTag.class, new ArrayList());
}
} else if (foreign instanceof NBTTagLong) {
@@ -440,7 +446,7 @@ public final class Spigot_v1_13_R2 extends CachedBukkitAdapter implements Bukkit
* @throws IllegalArgumentException on error
* @throws IllegalAccessException on error
*/
- public ListTag toNativeList(NBTTagList foreign) throws NoSuchFieldException, SecurityException, IllegalArgumentException, IllegalAccessException {
+ private ListTag toNativeList(NBTTagList foreign) throws NoSuchFieldException, SecurityException, IllegalArgumentException, IllegalAccessException {
List values = new ArrayList<>();
int type = foreign.d();
@@ -541,7 +547,7 @@ public final class Spigot_v1_13_R2 extends CachedBukkitAdapter implements Bukkit
@Override
public void sendFakeNBT(Player player, BlockVector3 pos, CompoundTag nbtData) {
// TODO Auto-generated method stub
-
+
}
@Override
@@ -557,6 +563,6 @@ public final class Spigot_v1_13_R2 extends CachedBukkitAdapter implements Bukkit
@Override
public void sendFakeOP(Player player) {
// TODO Auto-generated method stub
-
+
}
}
diff --git a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/chat/ArrayWrapper.java b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/chat/ArrayWrapper.java
index fc84afa67..d24b7cc19 100644
--- a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/chat/ArrayWrapper.java
+++ b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/chat/ArrayWrapper.java
@@ -23,6 +23,7 @@ public final class ArrayWrapper {
*
* @param elements The elements of the array.
*/
+ @SafeVarargs
public ArrayWrapper(E... elements) {
setArray(elements);
}
diff --git a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/chat/FancyMessage.java b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/chat/FancyMessage.java
index 35045946e..22983d20a 100644
--- a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/chat/FancyMessage.java
+++ b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/chat/FancyMessage.java
@@ -12,27 +12,17 @@ import java.lang.reflect.Field;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import java.lang.reflect.Modifier;
-import java.util.ArrayDeque;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
import java.util.function.Consumer;
import java.util.logging.Level;
-import org.bukkit.Achievement;
+
import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
-import org.bukkit.Material;
-import org.bukkit.Statistic;
-import org.bukkit.Statistic.Type;
import org.bukkit.command.CommandSender;
import org.bukkit.configuration.serialization.ConfigurationSerializable;
import org.bukkit.configuration.serialization.ConfigurationSerialization;
-import org.bukkit.entity.EntityType;
import org.bukkit.entity.Player;
-import org.bukkit.inventory.ItemStack;
+import org.jetbrains.annotations.NotNull;
import static com.boydti.fawe.bukkit.chat.TextualComponent.rawText;
@@ -271,162 +261,6 @@ public class FancyMessage implements JsonRepresentedObject, Cloneable, Iterable<
return this;
}
- /**
- * Set the behavior of the current editing component to display information about an achievement when the client hovers over the text.
- *
Tooltips do not inherit display characteristics, such as color and styles, from the message component on which they are applied.
- *
- * @param name The name of the achievement to display, excluding the "achievement." prefix.
- * @return This builder instance.
- */
- public FancyMessage achievementTooltip(final String name) {
- onHover("show_achievement", new JsonString("achievement." + name));
- return this;
- }
-
- /**
- * Set the behavior of the current editing component to display information about an achievement when the client hovers over the text.
- *
Tooltips do not inherit display characteristics, such as color and styles, from the message component on which they are applied.
- *
- * @param which The achievement to display.
- * @return This builder instance.
- */
- public FancyMessage achievementTooltip(final Achievement which) {
- try {
- Object achievement = Reflection.getMethod(Reflection.getOBCClass("CraftStatistic"), "getNMSAchievement", Achievement.class).invoke(null, which);
- return achievementTooltip((String) Reflection.getField(Reflection.getNMSClass("Achievement"), "name").get(achievement));
- } catch (IllegalAccessException e) {
- Bukkit.getLogger().log(Level.WARNING, "Could not access method.", e);
- return this;
- } catch (IllegalArgumentException e) {
- Bukkit.getLogger().log(Level.WARNING, "Argument could not be passed.", e);
- return this;
- } catch (InvocationTargetException e) {
- Bukkit.getLogger().log(Level.WARNING, "A error has occurred during invoking of method.", e);
- return this;
- }
- }
-
- /**
- * Set the behavior of the current editing component to display information about a parameterless statistic when the client hovers over the text.
- *
Tooltips do not inherit display characteristics, such as color and styles, from the message component on which they are applied.
- *
- * @param which The statistic to display.
- * @return This builder instance.
- * @throws IllegalArgumentException If the statistic requires a parameter which was not supplied.
- */
- public FancyMessage statisticTooltip(final Statistic which) {
- Type type = which.getType();
- if (type != Type.UNTYPED) {
- throw new IllegalArgumentException("That statistic requires an additional " + type + " parameter!");
- }
- try {
- Object statistic = Reflection.getMethod(Reflection.getOBCClass("CraftStatistic"), "getNMSStatistic", Statistic.class).invoke(null, which);
- return achievementTooltip((String) Reflection.getField(Reflection.getNMSClass("Statistic"), "name").get(statistic));
- } catch (IllegalAccessException e) {
- Bukkit.getLogger().log(Level.WARNING, "Could not access method.", e);
- return this;
- } catch (IllegalArgumentException e) {
- Bukkit.getLogger().log(Level.WARNING, "Argument could not be passed.", e);
- return this;
- } catch (InvocationTargetException e) {
- Bukkit.getLogger().log(Level.WARNING, "A error has occurred during invoking of method.", e);
- return this;
- }
- }
-
- /**
- * Set the behavior of the current editing component to display information about a statistic parameter with a material when the client hovers over the text.
- *
Tooltips do not inherit display characteristics, such as color and styles, from the message component on which they are applied.
- *
- * @param which The statistic to display.
- * @param item The sole material parameter to the statistic.
- * @return This builder instance.
- * @throws IllegalArgumentException If the statistic requires a parameter which was not supplied, or was supplied a parameter that was not required.
- */
- public FancyMessage statisticTooltip(final Statistic which, Material item) {
- Type type = which.getType();
- if (type == Type.UNTYPED) {
- throw new IllegalArgumentException("That statistic needs no additional parameter!");
- }
- if ((type == Type.BLOCK && item.isBlock()) || type == Type.ENTITY) {
- throw new IllegalArgumentException("Wrong parameter type for that statistic - needs " + type + "!");
- }
- try {
- Object statistic = Reflection.getMethod(Reflection.getOBCClass("CraftStatistic"), "getMaterialStatistic", Statistic.class, Material.class).invoke(null, which, item);
- return achievementTooltip((String) Reflection.getField(Reflection.getNMSClass("Statistic"), "name").get(statistic));
- } catch (IllegalAccessException e) {
- Bukkit.getLogger().log(Level.WARNING, "Could not access method.", e);
- return this;
- } catch (IllegalArgumentException e) {
- Bukkit.getLogger().log(Level.WARNING, "Argument could not be passed.", e);
- return this;
- } catch (InvocationTargetException e) {
- Bukkit.getLogger().log(Level.WARNING, "A error has occurred during invoking of method.", e);
- return this;
- }
- }
-
- /**
- * Set the behavior of the current editing component to display information about a statistic parameter with an entity type when the client hovers over the text.
- *
Tooltips do not inherit display characteristics, such as color and styles, from the message component on which they are applied.
- *
- * @param which The statistic to display.
- * @param entity The sole entity type parameter to the statistic.
- * @return This builder instance.
- * @throws IllegalArgumentException If the statistic requires a parameter which was not supplied, or was supplied a parameter that was not required.
- */
- public FancyMessage statisticTooltip(final Statistic which, EntityType entity) {
- Type type = which.getType();
- if (type == Type.UNTYPED) {
- throw new IllegalArgumentException("That statistic needs no additional parameter!");
- }
- if (type != Type.ENTITY) {
- throw new IllegalArgumentException("Wrong parameter type for that statistic - needs " + type + "!");
- }
- try {
- Object statistic = Reflection.getMethod(Reflection.getOBCClass("CraftStatistic"), "getEntityStatistic", Statistic.class, EntityType.class).invoke(null, which, entity);
- return achievementTooltip((String) Reflection.getField(Reflection.getNMSClass("Statistic"), "name").get(statistic));
- } catch (IllegalAccessException e) {
- Bukkit.getLogger().log(Level.WARNING, "Could not access method.", e);
- return this;
- } catch (IllegalArgumentException e) {
- Bukkit.getLogger().log(Level.WARNING, "Argument could not be passed.", e);
- return this;
- } catch (InvocationTargetException e) {
- Bukkit.getLogger().log(Level.WARNING, "A error has occurred during invoking of method.", e);
- return this;
- }
- }
-
- /**
- * Set the behavior of the current editing component to display information about an item when the client hovers over the text.
- *
Tooltips do not inherit display characteristics, such as color and styles, from the message component on which they are applied.
- *
- * @param itemJSON A string representing the JSON-serialized NBT data tag of an {@link ItemStack}.
- * @return This builder instance.
- */
- public FancyMessage itemTooltip(final String itemJSON) {
- onHover("show_item", new JsonString(itemJSON)); // Seems a bit hacky, considering we have a JSON object as a parameter
- return this;
- }
-
- /**
- * Set the behavior of the current editing component to display information about an item when the client hovers over the text.
- *
Tooltips do not inherit display characteristics, such as color and styles, from the message component on which they are applied.
- *
- * @param itemStack The stack for which to display information.
- * @return This builder instance.
- */
- public FancyMessage itemTooltip(final ItemStack itemStack) {
- try {
- Object nmsItem = Reflection.getMethod(Reflection.getOBCClass("inventory.CraftItemStack"), "asNMSCopy", ItemStack.class).invoke(null, itemStack);
- return itemTooltip(Reflection.getMethod(Reflection.getNMSClass("ItemStack"), "save", Reflection.getNMSClass("NBTTagCompound")).invoke(nmsItem, Reflection.getNMSClass("NBTTagCompound").newInstance()).toString());
- } catch (Exception e) {
- e.printStackTrace();
- return this;
- }
- }
-
/**
* Set the behavior of the current editing component to display raw text when the client hovers over the text.
*
Tooltips do not inherit display characteristics, such as color and styles, from the message component on which they are applied.
@@ -579,9 +413,7 @@ public class FancyMessage implements JsonRepresentedObject, Cloneable, Iterable<
* @return This builder instance.
*/
public FancyMessage translationReplacements(final FancyMessage... replacements) {
- for (FancyMessage str : replacements) {
- latest().translationReplacements.add(str);
- }
+ Collections.addAll(latest().translationReplacements, replacements);
dirty = true;
@@ -873,6 +705,7 @@ public class FancyMessage implements JsonRepresentedObject, Cloneable, Iterable<
/**
* Internally called method. Not for API consumption.
*/
+ @NotNull
public Iterator iterator() {
return messageParts.iterator();
}
diff --git a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/chat/Reflection.java b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/chat/Reflection.java
index 17e5e4280..a60d4cdda 100644
--- a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/chat/Reflection.java
+++ b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/chat/Reflection.java
@@ -40,10 +40,6 @@ public final class Reflection {
*/
public synchronized static String getVersion() {
if (_versionString == null) {
- if (Bukkit.getServer() == null) {
- // The server hasn't started, static initializer call?
- return null;
- }
String name = Bukkit.getServer().getClass().getPackage().getName();
_versionString = name.substring(name.lastIndexOf('.') + 1) + ".";
}
diff --git a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/chat/TextualComponent.java b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/chat/TextualComponent.java
index e42b691bc..53365f433 100644
--- a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/chat/TextualComponent.java
+++ b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/chat/TextualComponent.java
@@ -1,7 +1,6 @@
package com.boydti.fawe.bukkit.chat;
import com.google.common.base.Preconditions;
-import com.google.common.collect.ImmutableMap;
import com.google.gson.stream.JsonWriter;
import java.io.IOException;
import java.util.HashMap;
@@ -75,48 +74,6 @@ public abstract class TextualComponent implements Cloneable {
throw new UnsupportedOperationException("This feature is only supported in snapshot releases.");
}
- /**
- * Create a textual component representing a scoreboard value.
- * The client will see their own score for the specified objective as the text represented by this component.
- *
- * This method is currently guaranteed to throw an {@code UnsupportedOperationException} as it is only supported on snapshot clients.
- *
- *
- * @param scoreboardObjective The name of the objective for which to display the score.
- * @return The text component representing the specified scoreboard score (for the viewing player), or {@code null} if an error occurs during
- * JSON serialization.
- */
- public static TextualComponent objectiveScore(String scoreboardObjective) {
- return objectiveScore("*", scoreboardObjective);
- }
-
- /**
- * Create a textual component representing a scoreboard value.
- * The client will see the score of the specified player for the specified objective as the text represented by this component.
- *
- *
This method is currently guaranteed to throw an {@code UnsupportedOperationException}
- * as it is only supported on snapshot clients.
- *
- * @param playerName The name of the player whos score will be shown. If
- * this string represents the single-character sequence
- * "*", the viewing player's score will be displayed.
- * Standard minecraft selectors (@a, @p, etc)
- * are not supported.
- * @param scoreboardObjective The name of the objective for
- * which to display the score.
- * @return The text component representing the specified scoreboard score
- * for the specified player, or {@code null} if an error occurs during JSON serialization.
- */
- public static TextualComponent objectiveScore(String playerName, String scoreboardObjective) {
- throwUnsupportedSnapshot(); // Remove this line when the feature is released to non-snapshot versions, in addition to updating ALL THE
- // OVERLOADS documentation accordingly
-
- return new ComplexTextTypeComponent("score", ImmutableMap.builder()
- .put("name", playerName)
- .put("objective", scoreboardObjective)
- .build());
- }
-
/**
* Create a textual component representing a player name, retrievable by using a standard minecraft selector.
* The client will see the players or entities captured by the specified selector as the text represented by this component.
diff --git a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/filter/GriefPreventionFilter.java b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/filter/GriefPreventionFilter.java
index 1f49830de..30de5ffa0 100644
--- a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/filter/GriefPreventionFilter.java
+++ b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/filter/GriefPreventionFilter.java
@@ -4,13 +4,12 @@ import com.boydti.fawe.object.RunnableVal;
import com.boydti.fawe.regions.general.CuboidRegionFilter;
import com.boydti.fawe.util.TaskManager;
import com.sk89q.worldedit.math.BlockVector2;
-
-import java.util.ArrayDeque;
-import java.util.Collection;
import me.ryanhamshire.GriefPrevention.Claim;
import me.ryanhamshire.GriefPrevention.GriefPrevention;
import org.bukkit.World;
+import java.util.ArrayDeque;
+import java.util.Collection;
import static com.google.common.base.Preconditions.checkNotNull;
@@ -23,7 +22,7 @@ public class GriefPreventionFilter extends CuboidRegionFilter {
this.claims = TaskManager.IMP.sync(new RunnableVal>() {
@Override
public void run(Collection claims) {
- this.value = new ArrayDeque(GriefPrevention.instance.dataStore.getClaims());
+ this.value = new ArrayDeque<>(GriefPrevention.instance.dataStore.getClaims());
}
});
this.world = world;
diff --git a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/filter/WorldGuardFilter.java b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/filter/WorldGuardFilter.java
index b195a9368..2f4443d81 100644
--- a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/filter/WorldGuardFilter.java
+++ b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/filter/WorldGuardFilter.java
@@ -7,7 +7,6 @@ import com.boydti.fawe.regions.general.CuboidRegionFilter;
import com.boydti.fawe.util.TaskManager;
import com.sk89q.worldedit.math.BlockVector3;
import com.sk89q.worldguard.WorldGuard;
-import com.sk89q.worldguard.bukkit.WorldGuardPlugin;
import com.sk89q.worldguard.protection.ApplicableRegionSet;
import com.sk89q.worldguard.protection.managers.RegionManager;
import com.sk89q.worldguard.protection.regions.ProtectedCuboidRegion;
@@ -65,4 +64,4 @@ public class WorldGuardFilter extends CuboidRegionFilter {
ApplicableRegionSet set = manager.getApplicableRegions(regionRegion);
return set.size() > 0 && !set.getRegions().iterator().next().getId().equals("__global__");
}
-}
\ No newline at end of file
+}
diff --git a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/listener/ATabCompleteListener.java b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/listener/ATabCompleteListener.java
index 53c0a9b70..48a79232e 100644
--- a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/listener/ATabCompleteListener.java
+++ b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/listener/ATabCompleteListener.java
@@ -29,7 +29,7 @@ public class ATabCompleteListener implements Listener {
Dispatcher dispatcher = CommandManager.getInstance().getDispatcher();
CommandMapping weCommand = dispatcher.get(label);
if (weCommand != null) {
- CommandSuggestionEvent event = new CommandSuggestionEvent(worldEdit.wrapCommandSender(sender), buffer.substring(index, buffer.length()));
+ CommandSuggestionEvent event = new CommandSuggestionEvent(worldEdit.wrapCommandSender(sender), buffer.substring(index));
worldEdit.getWorldEdit().getEventBus().post(event);
List suggestions = event.getSuggestions();
if (suggestions != null && !suggestions.isEmpty()) {
diff --git a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/listener/BukkitImageListener.java b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/listener/BukkitImageListener.java
index e175ff1d5..8d995846c 100644
--- a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/listener/BukkitImageListener.java
+++ b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/listener/BukkitImageListener.java
@@ -10,22 +10,15 @@ import com.boydti.fawe.util.EditSessionBuilder;
import com.boydti.fawe.util.ExtentTraverser;
import com.boydti.fawe.util.TaskManager;
import com.boydti.fawe.util.image.ImageViewer;
-import com.sk89q.worldedit.*;
+import com.sk89q.worldedit.EditSession;
+import com.sk89q.worldedit.LocalSession;
+import com.sk89q.worldedit.WorldEditException;
import com.sk89q.worldedit.command.tool.BrushTool;
import com.sk89q.worldedit.command.tool.InvalidToolBindException;
import com.sk89q.worldedit.command.tool.brush.Brush;
import com.sk89q.worldedit.math.BlockVector3;
-import com.sk89q.worldedit.math.Vector3;
-
-import java.util.ArrayDeque;
-import java.util.Collection;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Set;
-import java.util.UUID;
import org.bukkit.Bukkit;
import org.bukkit.Location;
-import org.bukkit.Material;
import org.bukkit.Rotation;
import org.bukkit.World;
import org.bukkit.block.Block;
@@ -48,6 +41,13 @@ import org.bukkit.event.player.PlayerInteractEvent;
import org.bukkit.inventory.EquipmentSlot;
import org.bukkit.plugin.Plugin;
+import java.util.ArrayDeque;
+import java.util.Collection;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Set;
+import java.util.UUID;
+
public class BukkitImageListener implements Listener {
private Location mutable = new Location(Bukkit.getWorlds().get(0), 0, 0, 0);
@@ -153,8 +153,7 @@ public class BukkitImageListener implements Listener {
ImageViewer viewer = generator.getImageViewer();
if (!(viewer instanceof BukkitImageViewer)) return null;
- BukkitImageViewer biv = (BukkitImageViewer) viewer;
- return biv;
+ return (BukkitImageViewer) viewer;
}
private void handleInteract(PlayerEvent event, Entity entity, boolean primary) {
@@ -189,7 +188,6 @@ public class BukkitImageListener implements Listener {
return;
}
- if (tool == null) return;
BrushSettings context = primary ? tool.getPrimary() : tool.getSecondary();
Brush brush = context.getBrush();
if (brush == null) return;
@@ -210,7 +208,7 @@ public class BukkitImageListener implements Listener {
double zRat = Math.sin(yawRad) * a;
BlockFace facing = itemFrame.getFacing();
- double thickness = 1/32d + 1/128d;
+ double thickness = 1/32D + 1/128D;
double modX = facing.getModX();
double modZ = facing.getModZ();
double dx = source.getX() - target.getX() - modX * thickness;
diff --git a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/listener/CFIPacketListener.java b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/listener/CFIPacketListener.java
index 7f5ef82c5..cec672dd0 100644
--- a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/listener/CFIPacketListener.java
+++ b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/listener/CFIPacketListener.java
@@ -1,6 +1,5 @@
package com.boydti.fawe.bukkit.listener;
-import com.boydti.fawe.FaweCache;
import com.boydti.fawe.command.CFICommands;
import com.boydti.fawe.object.FaweChunk;
import com.boydti.fawe.object.FawePlayer;
@@ -15,30 +14,25 @@ import com.comphenix.protocol.events.ListenerPriority;
import com.comphenix.protocol.events.PacketAdapter;
import com.comphenix.protocol.events.PacketContainer;
import com.comphenix.protocol.events.PacketEvent;
-import com.comphenix.protocol.injector.netty.WirePacket;
import com.comphenix.protocol.reflect.StructureModifier;
import com.comphenix.protocol.wrappers.BlockPosition;
import com.comphenix.protocol.wrappers.ChunkCoordIntPair;
import com.comphenix.protocol.wrappers.EnumWrappers;
-import com.comphenix.protocol.wrappers.WrappedBlockData;
-import com.sk89q.worldedit.EditSession;
import com.sk89q.worldedit.WorldEdit;
import com.sk89q.worldedit.WorldEditException;
-import com.sk89q.worldedit.world.block.BlockState;
import com.sk89q.worldedit.bukkit.BukkitAdapter;
import com.sk89q.worldedit.event.platform.BlockInteractEvent;
import com.sk89q.worldedit.event.platform.Interaction;
import com.sk89q.worldedit.extension.platform.PlatformManager;
import com.sk89q.worldedit.math.BlockVector3;
-import com.sk89q.worldedit.math.Vector3;
import java.lang.reflect.InvocationTargetException;
import java.util.List;
import com.sk89q.worldedit.world.block.BlockStateHolder;
+import com.sk89q.worldedit.world.block.BlockTypes;
import org.bukkit.Location;
import org.bukkit.Material;
-import org.bukkit.block.Block;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
@@ -70,7 +64,7 @@ public class CFIPacketListener implements Listener {
Player plr = event.getPlayer();
BlockVector3 realPos = pt.add(gen.getOrigin().toBlockPoint());
if (!sendBlockChange(plr, gen, pt, Interaction.HIT)) {
- gen.setBlock(pt, EditSession.nullBlock);
+ gen.setBlock(pt, BlockTypes.AIR.getDefaultState());
}
} catch (WorldEditException e) {
e.printStackTrace();
@@ -89,7 +83,7 @@ public class CFIPacketListener implements Listener {
EnumWrappers.Hand enumHand = hands.isEmpty() ? EnumWrappers.Hand.MAIN_HAND : hands.get(0);
PlayerInventory inv = plr.getInventory();
ItemStack hand = enumHand == EnumWrappers.Hand.MAIN_HAND ? inv.getItemInMainHand() : inv.getItemInOffHand();
- if (hand != null && hand.getType().isBlock()) {
+ if (hand.getType().isBlock()) {
Material type = hand.getType();
switch (type) {
case AIR:
@@ -287,8 +281,7 @@ public class CFIPacketListener implements Listener {
BlockPosition loc = position.readSafely(0);
if (loc == null) return null;
BlockVector3 origin = generator.getOrigin().toBlockPoint();
- BlockVector3 pt = BlockVector3.at(loc.getX() - origin.getBlockX(), loc.getY() - origin.getBlockY(), loc.getZ() - origin.getBlockZ());
- return pt;
+ return BlockVector3.at(loc.getX() - origin.getBlockX(), loc.getY() - origin.getBlockY(), loc.getZ() - origin.getBlockZ());
}
private void handleBlockEvent(PacketEvent event, boolean relative, RunnableVal3 task) {
diff --git a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/regions/ASkyBlockHook.java b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/regions/ASkyBlockHook.java
index c875f6812..2c1a58fcd 100644
--- a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/regions/ASkyBlockHook.java
+++ b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/regions/ASkyBlockHook.java
@@ -1,8 +1,8 @@
package com.boydti.fawe.bukkit.regions;
-import com.boydti.fawe.bukkit.FaweBukkit;
import com.boydti.fawe.object.FawePlayer;
import com.boydti.fawe.regions.FaweMask;
+import com.sk89q.worldedit.bukkit.BukkitAdapter;
import com.wasteofplastic.askyblock.ASkyBlockAPI;
import com.wasteofplastic.askyblock.Island;
import org.bukkit.Location;
@@ -12,13 +12,9 @@ import org.bukkit.event.Listener;
import org.bukkit.plugin.Plugin;
public class ASkyBlockHook extends BukkitMaskManager implements Listener {
- FaweBukkit plugin;
- Plugin aSkyBlock;
- public ASkyBlockHook(final Plugin aSkyBlock, final FaweBukkit p3) {
+ public ASkyBlockHook(final Plugin aSkyBlock) {
super(aSkyBlock.getName());
- this.aSkyBlock = aSkyBlock;
- this.plugin = p3;
}
@@ -33,8 +29,6 @@ public class ASkyBlockHook extends BukkitMaskManager implements Listener {
Island island = ASkyBlockAPI.getInstance().getIslandAt(location);
if (island != null && isAllowed(player, island, type)) {
- int minX = island.getMinProtectedX();
- int minZ = island.getMinProtectedZ();
World world = location.getWorld();
Location center = island.getCenter();
@@ -42,7 +36,7 @@ public class ASkyBlockHook extends BukkitMaskManager implements Listener {
Location pos2 = center.add(center.subtract(pos1));
pos2.setY(255);
- return new BukkitMask(pos1, pos2, "ISLAND: " + minX + "," + minZ) {
+ return new FaweMask(BukkitAdapter.adapt(pos1).toBlockPoint(), BukkitAdapter.adapt(pos2).toBlockPoint()) {
@Override
public boolean isValid(FawePlayer player, MaskType type) {
return isAllowed((Player) player.parent, island, type);
@@ -52,4 +46,4 @@ public class ASkyBlockHook extends BukkitMaskManager implements Listener {
return null;
}
-}
\ No newline at end of file
+}
diff --git a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/regions/BukkitMask.java b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/regions/BukkitMask.java
deleted file mode 100644
index 54e9f0bc9..000000000
--- a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/regions/BukkitMask.java
+++ /dev/null
@@ -1,17 +0,0 @@
-package com.boydti.fawe.bukkit.regions;
-
-import com.boydti.fawe.regions.FaweMask;
-import com.sk89q.worldedit.math.BlockVector3;
-
-import org.bukkit.Location;
-
-public class BukkitMask extends FaweMask {
-
- public BukkitMask(Location pos1, Location pos2) {
- this(pos1, pos2, null);
- }
-
- public BukkitMask(Location pos1, Location pos2, String name) {
- super(BlockVector3.at(pos1.getBlockX(), pos1.getBlockY(), pos1.getBlockZ()), BlockVector3.at(pos2.getBlockX(), pos2.getBlockY(), pos2.getBlockZ()), name);
- }
-}
\ No newline at end of file
diff --git a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/regions/FactionsFeature.java b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/regions/FactionsFeature.java
index f460862f7..723a6a838 100644
--- a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/regions/FactionsFeature.java
+++ b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/regions/FactionsFeature.java
@@ -1,11 +1,12 @@
package com.boydti.fawe.bukkit.regions;
-import com.boydti.fawe.bukkit.FaweBukkit;
import com.boydti.fawe.object.FawePlayer;
+import com.boydti.fawe.regions.FaweMask;
import com.massivecraft.factions.entity.BoardColl;
import com.massivecraft.factions.entity.Faction;
import com.massivecraft.factions.entity.MPlayer;
import com.massivecraft.massivecore.ps.PS;
+import com.sk89q.worldedit.bukkit.BukkitAdapter;
import org.bukkit.Chunk;
import org.bukkit.Location;
import org.bukkit.entity.Player;
@@ -13,18 +14,13 @@ import org.bukkit.event.Listener;
import org.bukkit.plugin.Plugin;
public class FactionsFeature extends BukkitMaskManager implements Listener {
- FaweBukkit plugin;
- Plugin factions;
- public FactionsFeature(final Plugin factionsPlugin, final FaweBukkit p3) {
+ public FactionsFeature(final Plugin factionsPlugin) {
super(factionsPlugin.getName());
- this.factions = factionsPlugin;
- this.plugin = p3;
- BoardColl.get();
}
@Override
- public BukkitMask getMask(final FawePlayer fp, MaskType type) {
+ public FaweMask getMask(final FawePlayer fp, MaskType type) {
final Player player = fp.parent;
final Location loc = player.getLocation();
final PS ps = PS.valueOf(loc);
@@ -36,25 +32,14 @@ public class FactionsFeature extends BukkitMaskManager implements Listener {
final Chunk chunk = loc.getChunk();
final Location pos1 = new Location(loc.getWorld(), chunk.getX() * 16, 0, chunk.getZ() * 16);
final Location pos2 = new Location(loc.getWorld(), (chunk.getX() * 16) + 15, 156, (chunk.getZ() * 16) + 15);
- return new BukkitMask(pos1, pos2) {
- @Override
- public String getName() {
- return "CHUNK:" + loc.getChunk().getX() + "," + loc.getChunk().getZ();
- }
- };
+ return new FaweMask(BukkitAdapter.adapt(pos1).toBlockPoint(), BukkitAdapter.adapt(pos2).toBlockPoint());
}
- }
- else if (fac.getOnlinePlayers().contains(player)) {
- if (fac.getComparisonName().equals("wilderness") == false) {
+ } else if (fac.getOnlinePlayers().contains(player)) {
+ if (!fac.getComparisonName().equals("wilderness")) {
final Chunk chunk = loc.getChunk();
final Location pos1 = new Location(loc.getWorld(), chunk.getX() * 16, 0, chunk.getZ() * 16);
final Location pos2 = new Location(loc.getWorld(), (chunk.getX() * 16) + 15, 156, (chunk.getZ() * 16) + 15);
- return new BukkitMask(pos1, pos2) {
- @Override
- public String getName() {
- return "CHUNK:" + loc.getChunk().getX() + "," + loc.getChunk().getZ();
- }
- };
+ return new FaweMask(BukkitAdapter.adapt(pos1).toBlockPoint(), BukkitAdapter.adapt(pos2).toBlockPoint());
}
}
}
diff --git a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/regions/FactionsOneFeature.java b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/regions/FactionsOneFeature.java
index 4eab92792..eafcb7634 100644
--- a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/regions/FactionsOneFeature.java
+++ b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/regions/FactionsOneFeature.java
@@ -1,13 +1,11 @@
package com.boydti.fawe.bukkit.regions;
-import com.boydti.fawe.bukkit.FaweBukkit;
import com.boydti.fawe.object.FawePlayer;
import com.boydti.fawe.object.RegionWrapper;
-import com.boydti.fawe.util.MainUtil;
+import com.boydti.fawe.regions.FaweMask;
import com.boydti.fawe.util.Perm;
import com.massivecraft.factions.FLocation;
-import java.lang.reflect.Method;
-import java.util.List;
+import com.sk89q.worldedit.bukkit.BukkitAdapter;
import org.bukkit.Chunk;
import org.bukkit.Location;
import org.bukkit.World;
@@ -15,19 +13,21 @@ import org.bukkit.entity.Player;
import org.bukkit.event.Listener;
import org.bukkit.plugin.Plugin;
+import java.lang.reflect.Method;
+import java.util.List;
+
public class FactionsOneFeature extends BukkitMaskManager implements Listener {
- private final Class clazzBoard;
private final Method methodGetFactionAt;
- public FactionsOneFeature(final Plugin factionsPlugin, final FaweBukkit p3) throws Throwable {
+ public FactionsOneFeature(final Plugin factionsPlugin) throws Throwable {
super(factionsPlugin.getName());
- this.clazzBoard = Class.forName("com.massivecraft.factions.Board");
+ Class clazzBoard = Class.forName("com.massivecraft.factions.Board");
this.methodGetFactionAt = clazzBoard.getDeclaredMethod("getFactionAt", FLocation.class);
}
@Override
- public BukkitMask getMask(final FawePlayer fp, MaskType type) {
+ public FaweMask getMask(final FawePlayer fp, MaskType type) {
final Player player = fp.parent;
final Chunk chunk = player.getLocation().getChunk();
final boolean perm = Perm.hasPermission(FawePlayer.wrap(player), "fawe.factions.wilderness");
@@ -40,13 +40,12 @@ public class FactionsOneFeature extends BukkitMaskManager implements Listener {
if (this.isAdded(locs, world, player, perm, type)) {
boolean hasPerm = true;
- RegionWrapper chunkSelection;
while (hasPerm && (count > 0)) {
count--;
hasPerm = false;
- chunkSelection = new RegionWrapper(locs.maxX + 1, locs.maxX + 1, locs.minZ, locs.maxZ);
+ RegionWrapper chunkSelection = new RegionWrapper(locs.maxX + 1, locs.maxX + 1, locs.minZ, locs.maxZ);
if (this.isAdded(chunkSelection, world, player, perm, type)) {
locs = new RegionWrapper(locs.minX, locs.maxX + 1, locs.minZ, locs.maxZ);
@@ -77,12 +76,7 @@ public class FactionsOneFeature extends BukkitMaskManager implements Listener {
final Location pos1 = new Location(world, locs.minX << 4, 1, locs.minZ << 4);
final Location pos2 = new Location(world, 15 + (locs.maxX << 4), 256, 15 + (locs.maxZ << 4));
- return new BukkitMask(pos1, pos2) {
- @Override
- public String getName() {
- return "CHUNK:" + pos1.getChunk().getX() + "," + pos1.getChunk().getZ();
- }
- };
+ return new FaweMask(BukkitAdapter.adapt(pos1).toBlockPoint(), BukkitAdapter.adapt(pos2).toBlockPoint());
}
return null;
}
@@ -112,7 +106,7 @@ public class FactionsOneFeature extends BukkitMaskManager implements Listener {
}
return true;
} catch (Throwable e) {
- MainUtil.handleError(e);
+ e.printStackTrace();
return false;
}
}
diff --git a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/regions/FactionsUUIDFeature.java b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/regions/FactionsUUIDFeature.java
index 29451faa5..12f10ae66 100644
--- a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/regions/FactionsUUIDFeature.java
+++ b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/regions/FactionsUUIDFeature.java
@@ -3,10 +3,12 @@ package com.boydti.fawe.bukkit.regions;
import com.boydti.fawe.bukkit.FaweBukkit;
import com.boydti.fawe.object.FawePlayer;
import com.boydti.fawe.object.RegionWrapper;
+import com.boydti.fawe.regions.FaweMask;
import com.boydti.fawe.util.Perm;
import com.massivecraft.factions.Board;
import com.massivecraft.factions.FLocation;
import com.massivecraft.factions.Faction;
+import com.sk89q.worldedit.bukkit.BukkitAdapter;
import org.bukkit.Chunk;
import org.bukkit.Location;
import org.bukkit.World;
@@ -23,7 +25,7 @@ public class FactionsUUIDFeature extends BukkitMaskManager implements Listener {
}
@Override
- public BukkitMask getMask(final FawePlayer fp, MaskType type) {
+ public FaweMask getMask(final FawePlayer fp, MaskType type) {
final Player player = fp.parent;
final Chunk chunk = player.getLocation().getChunk();
final boolean perm = Perm.hasPermission(FawePlayer.wrap(player), "fawe.factions.wilderness");
@@ -36,13 +38,12 @@ public class FactionsUUIDFeature extends BukkitMaskManager implements Listener {
if (this.isAdded(locs, world, player, perm, type)) {
boolean hasPerm = true;
- RegionWrapper chunkSelection;
while (hasPerm && (count > 0)) {
count--;
hasPerm = false;
- chunkSelection = new RegionWrapper(locs.maxX + 1, locs.maxX + 1, locs.minZ, locs.maxZ);
+ RegionWrapper chunkSelection = new RegionWrapper(locs.maxX + 1, locs.maxX + 1, locs.minZ, locs.maxZ);
if (this.isAdded(chunkSelection, world, player, perm, type)) {
locs = new RegionWrapper(locs.minX, locs.maxX + 1, locs.minZ, locs.maxZ);
@@ -73,12 +74,7 @@ public class FactionsUUIDFeature extends BukkitMaskManager implements Listener {
final Location pos1 = new Location(world, locs.minX << 4, 1, locs.minZ << 4);
final Location pos2 = new Location(world, 15 + (locs.maxX << 4), 256, 15 + (locs.maxZ << 4));
- return new BukkitMask(pos1, pos2) {
- @Override
- public String getName() {
- return "CHUNK:" + pos1.getChunk().getX() + "," + pos1.getChunk().getZ();
- }
- };
+ return new FaweMask(BukkitAdapter.adapt(pos1).toBlockPoint(), BukkitAdapter.adapt(pos2).toBlockPoint());
}
return null;
}
diff --git a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/regions/FreeBuildRegion.java b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/regions/FreeBuildRegion.java
index e1aa7bbc9..6e9b47a9d 100644
--- a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/regions/FreeBuildRegion.java
+++ b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/regions/FreeBuildRegion.java
@@ -50,33 +50,27 @@ public class FreeBuildRegion extends BukkitMaskManager {
currRegList.add(listener);
}
if (currRegList.isEmpty()) return null;
- RegisteredListener[] listeners = currRegList.toArray(new RegisteredListener[currRegList.size()]);
+ RegisteredListener[] listeners = currRegList.toArray(new RegisteredListener[0]);
World bukkitWorld = player.parent.getWorld();
AsyncWorld asyncWorld = AsyncWorld.wrap(bukkitWorld);
- BlockVector3 vec1 = BlockVector3.at(0, 0, 0);
- BlockVector3 vec2 = vec1;
- Location pos1 = BukkitAdapter.adapt(bukkitWorld, vec1);
- Location pos2 = BukkitAdapter.adapt(bukkitWorld, vec2);
+ Location pos1 = BukkitAdapter.adapt(bukkitWorld, BlockVector3.ZERO);
+ Location pos2 = BukkitAdapter.adapt(bukkitWorld, BlockVector3.ZERO);
AsyncBlock block = new AsyncBlock(asyncWorld, new NullFaweQueue(asyncWorld.getWorldName(), BlockTypes.STONE.getDefaultState()), 0, 0, 0);
BlockBreakEvent event = new BlockBreakEvent(block, player.parent);
- return new BukkitMask(pos1, pos2) {
- @Override
- public String getName() {
- return "freebuild-global";
- }
+ return new FaweMask(BukkitAdapter.adapt(pos1).toBlockPoint(), BukkitAdapter.adapt(pos2).toBlockPoint()) {
- @Override
+ @Override
public boolean isValid(FawePlayer player, MaskType type) {
return bukkitWorld == ((FawePlayer)player).parent.getWorld() && type == MaskType.MEMBER;
}
@Override
public Region getRegion() {
- return new CuboidRegion(vec1, vec2) {
+ return new CuboidRegion(BlockVector3.ZERO, BlockVector3.ZERO) {
@Override
public boolean contains(int x, int z) {
diff --git a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/regions/GriefPreventionFeature.java b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/regions/GriefPreventionFeature.java
index 8832ec90b..6b987df14 100644
--- a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/regions/GriefPreventionFeature.java
+++ b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/regions/GriefPreventionFeature.java
@@ -1,9 +1,10 @@
package com.boydti.fawe.bukkit.regions;
-import com.boydti.fawe.bukkit.FaweBukkit;
import com.boydti.fawe.bukkit.filter.GriefPreventionFilter;
import com.boydti.fawe.object.FawePlayer;
+import com.boydti.fawe.regions.FaweMask;
import com.boydti.fawe.regions.general.RegionFilter;
+import com.sk89q.worldedit.bukkit.BukkitAdapter;
import me.ryanhamshire.GriefPrevention.Claim;
import me.ryanhamshire.GriefPrevention.GriefPrevention;
import org.bukkit.Bukkit;
@@ -14,13 +15,9 @@ import org.bukkit.event.Listener;
import org.bukkit.plugin.Plugin;
public class GriefPreventionFeature extends BukkitMaskManager implements Listener {
- FaweBukkit plugin;
- Plugin griefprevention;
- public GriefPreventionFeature(final Plugin griefpreventionPlugin, final FaweBukkit p3) {
+ public GriefPreventionFeature(final Plugin griefpreventionPlugin) {
super(griefpreventionPlugin.getName());
- this.griefprevention = griefpreventionPlugin;
- this.plugin = p3;
}
public boolean isAllowed(Player player, Claim claim, MaskType type) {
@@ -28,21 +25,16 @@ public class GriefPreventionFeature extends BukkitMaskManager implements Listene
}
@Override
- public BukkitMask getMask(final FawePlayer fp, MaskType type) {
+ public FaweMask getMask(final FawePlayer fp, MaskType type) {
final Player player = fp.parent;
final Location location = player.getLocation();
final Claim claim = GriefPrevention.instance.dataStore.getClaimAt(location, true, null);
if (claim != null) {
- final String uuid = player.getUniqueId().toString();
if (isAllowed(player, claim, type)) {
claim.getGreaterBoundaryCorner().getBlockX();
final Location pos1 = new Location(location.getWorld(), claim.getLesserBoundaryCorner().getBlockX(), 0, claim.getLesserBoundaryCorner().getBlockZ());
final Location pos2 = new Location(location.getWorld(), claim.getGreaterBoundaryCorner().getBlockX(), 256, claim.getGreaterBoundaryCorner().getBlockZ());
- return new BukkitMask(pos1, pos2) {
- @Override
- public String getName() {
- return "CLAIM:" + claim.toString();
- }
+ return new FaweMask(BukkitAdapter.adapt(pos1).toBlockPoint(), BukkitAdapter.adapt(pos2).toBlockPoint()) {
@Override
public boolean isValid(FawePlayer player, MaskType type) {
diff --git a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/regions/PreciousStonesFeature.java b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/regions/PreciousStonesFeature.java
index 7b0af05b5..d67f9a919 100644
--- a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/regions/PreciousStonesFeature.java
+++ b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/regions/PreciousStonesFeature.java
@@ -43,7 +43,7 @@ public class PreciousStonesFeature extends BukkitMaskManager implements Listener
if (isAllowed(player, myField, type, member)) {
BlockVector3 pos1 = BlockVector3.at(myField.getMinx(), myField.getMiny(), myField.getMinz());
BlockVector3 pos2 = BlockVector3.at(myField.getMaxx(), myField.getMaxy(), myField.getMaxz());
- return new FaweMask(pos1, pos2, "FIELD: " + myField) {
+ return new FaweMask(pos1, pos2) {
@Override
public boolean isValid(FawePlayer player, MaskType type) {
return isAllowed((Player) player.parent, myField, type, fp.hasPermission("fawe.preciousstones.member"));
diff --git a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/regions/ResidenceFeature.java b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/regions/ResidenceFeature.java
index 024fa92f2..398be6d63 100644
--- a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/regions/ResidenceFeature.java
+++ b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/regions/ResidenceFeature.java
@@ -5,6 +5,8 @@ import com.bekvon.bukkit.residence.protection.ClaimedResidence;
import com.bekvon.bukkit.residence.protection.CuboidArea;
import com.boydti.fawe.bukkit.FaweBukkit;
import com.boydti.fawe.object.FawePlayer;
+import com.boydti.fawe.regions.FaweMask;
+import com.sk89q.worldedit.bukkit.BukkitAdapter;
import org.bukkit.Location;
import org.bukkit.entity.Player;
import org.bukkit.event.Listener;
@@ -26,7 +28,7 @@ public class ResidenceFeature extends BukkitMaskManager implements Listener {
}
@Override
- public BukkitMask getMask(final FawePlayer fp, final MaskType type) {
+ public FaweMask getMask(final FawePlayer fp, final MaskType type) {
final Player player = fp.parent;
final Location location = player.getLocation();
ClaimedResidence residence = Residence.getInstance().getResidenceManager().getByLoc(location);
@@ -40,13 +42,8 @@ public class ResidenceFeature extends BukkitMaskManager implements Listener {
final Location pos1 = area.getLowLoc();
final Location pos2 = area.getHighLoc();
final ClaimedResidence finalResidence = residence;
- return new BukkitMask(pos1, pos2) {
- @Override
- public String getName() {
- return "RESIDENCE: " + finalResidence.getName();
- }
-
- @Override
+ return new FaweMask(BukkitAdapter.adapt(pos1).toBlockPoint(), BukkitAdapter.adapt(pos2).toBlockPoint()) {
+ @Override
public boolean isValid(FawePlayer player, MaskType type) {
return isAllowed((Player) player.parent, finalResidence, type);
}
diff --git a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/regions/TownyFeature.java b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/regions/TownyFeature.java
index 587dda379..06a4476d1 100644
--- a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/regions/TownyFeature.java
+++ b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/regions/TownyFeature.java
@@ -2,9 +2,11 @@ package com.boydti.fawe.bukkit.regions;
import com.boydti.fawe.bukkit.FaweBukkit;
import com.boydti.fawe.object.FawePlayer;
+import com.boydti.fawe.regions.FaweMask;
import com.palmergames.bukkit.towny.Towny;
import com.palmergames.bukkit.towny.exceptions.NotRegisteredException;
import com.palmergames.bukkit.towny.object.*;
+import com.sk89q.worldedit.bukkit.BukkitAdapter;
import org.bukkit.Chunk;
import org.bukkit.Location;
import org.bukkit.entity.Player;
@@ -53,7 +55,7 @@ public class TownyFeature extends BukkitMaskManager implements Listener {
}
@Override
- public BukkitMask getMask(final FawePlayer fp) {
+ public FaweMask getMask(final FawePlayer fp) {
final Player player = fp.parent;
final Location location = player.getLocation();
try {
@@ -71,12 +73,7 @@ public class TownyFeature extends BukkitMaskManager implements Listener {
final Chunk chunk = location.getChunk();
final Location pos1 = new Location(location.getWorld(), chunk.getX() * 16, 0, chunk.getZ() * 16);
final Location pos2 = new Location(location.getWorld(), (chunk.getX() * 16) + 15, 156, (chunk.getZ() * 16) + 15);
- return new BukkitMask(pos1, pos2) {
- @Override
- public String getName() {
- return "PLOT:" + location.getChunk().getX() + "," + location.getChunk().getZ();
- }
-
+ return new FaweMask(BukkitAdapter.adapt(pos1).toBlockPoint(), BukkitAdapter.adapt(pos2).toBlockPoint()) {
@Override
public boolean isValid(FawePlayer player, MaskType type) {
return isAllowed((Player) player.parent, myplot);
diff --git a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/regions/Worldguard.java b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/regions/Worldguard.java
index cb7a91675..887c47a01 100644
--- a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/regions/Worldguard.java
+++ b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/regions/Worldguard.java
@@ -1,14 +1,13 @@
package com.boydti.fawe.bukkit.regions;
-import com.boydti.fawe.FaweAPI;
import com.boydti.fawe.bukkit.FaweBukkit;
import com.boydti.fawe.bukkit.filter.WorldGuardFilter;
import com.boydti.fawe.object.FawePlayer;
import com.boydti.fawe.object.RegionWrapper;
import com.boydti.fawe.regions.FaweMask;
import com.boydti.fawe.regions.general.RegionFilter;
+import com.sk89q.worldedit.bukkit.BukkitAdapter;
import com.sk89q.worldedit.math.BlockVector3;
-import com.sk89q.worldedit.math.Vector3;
import com.sk89q.worldedit.regions.AbstractRegion;
import com.sk89q.worldedit.regions.CuboidRegion;
import com.sk89q.worldedit.regions.Polygonal2DRegion;
@@ -18,7 +17,11 @@ import com.sk89q.worldguard.WorldGuard;
import com.sk89q.worldguard.bukkit.WorldGuardPlugin;
import com.sk89q.worldguard.protection.ApplicableRegionSet;
import com.sk89q.worldguard.protection.managers.RegionManager;
-import com.sk89q.worldguard.protection.regions.*;
+import com.sk89q.worldguard.protection.regions.GlobalProtectedRegion;
+import com.sk89q.worldguard.protection.regions.ProtectedCuboidRegion;
+import com.sk89q.worldguard.protection.regions.ProtectedPolygonalRegion;
+import com.sk89q.worldguard.protection.regions.ProtectedRegion;
+import com.sk89q.worldguard.protection.regions.RegionContainer;
import org.bukkit.Bukkit;
import org.bukkit.Location;
import org.bukkit.entity.Player;
@@ -26,14 +29,14 @@ import org.bukkit.event.Listener;
import org.bukkit.plugin.Plugin;
public class Worldguard extends BukkitMaskManager implements Listener {
- WorldGuardPlugin worldguard;
+ private WorldGuardPlugin worldguard;
FaweBukkit plugin;
private WorldGuardPlugin getWorldGuard() {
final Plugin plugin = Bukkit.getPluginManager().getPlugin("WorldGuard");
// WorldGuard may not be loaded
- if ((plugin == null) || !(plugin instanceof WorldGuardPlugin)) {
+ if (!(plugin instanceof WorldGuardPlugin)) {
return null; // Maybe you want throw an exception instead
}
@@ -46,13 +49,13 @@ public class Worldguard extends BukkitMaskManager implements Listener {
this.plugin = p3;
}
- public ProtectedRegion getRegion(final com.sk89q.worldguard.LocalPlayer player, final Location loc) {
+ public ProtectedRegion getRegion(final LocalPlayer player, final Location location) {
RegionContainer container = WorldGuard.getInstance().getPlatform().getRegionContainer();
if (container == null) {
System.out.println("Region capability is not enabled for WorldGuard.");
return null;
}
- RegionManager manager = container.get(FaweAPI.getWorld(loc.getWorld().getName()));
+ RegionManager manager = container.get(BukkitAdapter.adapt(location.getWorld()));
if (manager == null) {
System.out.println("Region capability is not enabled for that world.");
return null;
@@ -61,7 +64,7 @@ public class Worldguard extends BukkitMaskManager implements Listener {
if (global != null && isAllowed(player, global)) {
return global;
}
- final ApplicableRegionSet regions = manager.getApplicableRegions(BlockVector3.at(loc.getX(), loc.getY(), loc.getZ()));
+ final ApplicableRegionSet regions = manager.getApplicableRegions(BlockVector3.at(location.getX(), location.getY(), location.getZ()));
for (final ProtectedRegion region : regions) {
if (isAllowed(player, region)) {
return region;
@@ -93,7 +96,7 @@ public class Worldguard extends BukkitMaskManager implements Listener {
@Override
public FaweMask getMask(FawePlayer fp, MaskType type) {
final Player player = fp.parent;
- final com.sk89q.worldguard.LocalPlayer localplayer = this.worldguard.wrapPlayer(player);
+ final LocalPlayer localplayer = this.worldguard.wrapPlayer(player);
final Location location = player.getLocation();
final ProtectedRegion myregion = this.getRegion(localplayer, location);
if (myregion != null) {
@@ -107,7 +110,7 @@ public class Worldguard extends BukkitMaskManager implements Listener {
pos1 = new Location(location.getWorld(), myregion.getMinimumPoint().getBlockX(), myregion.getMinimumPoint().getBlockY(), myregion.getMinimumPoint().getBlockZ());
pos2 = new Location(location.getWorld(), myregion.getMaximumPoint().getBlockX(), myregion.getMaximumPoint().getBlockY(), myregion.getMaximumPoint().getBlockZ());
} else {
- return new FaweMask(adapt(myregion), myregion.getId()) {
+ return new FaweMask(adapt(myregion)) {
@Override
public boolean isValid(FawePlayer player, MaskType type) {
return isAllowed(worldguard.wrapPlayer((Player) player.parent), myregion);
@@ -115,20 +118,15 @@ public class Worldguard extends BukkitMaskManager implements Listener {
};
}
}
- return new BukkitMask(pos1, pos2) {
- @Override
- public String getName() {
- return myregion.getId();
- }
+ return new FaweMask(BukkitAdapter.adapt(pos1).toBlockPoint(), BukkitAdapter.adapt(pos2).toBlockPoint()) {
- @Override
+ @Override
public boolean isValid(FawePlayer player, MaskType type) {
return isAllowed(worldguard.wrapPlayer((Player) player.parent), myregion);
}
};
- } else {
- return null;
}
+ return null;
}
@Override
diff --git a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/regions/WorldguardFlag.java b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/regions/WorldguardFlag.java
index 3f3f1a842..333728814 100644
--- a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/regions/WorldguardFlag.java
+++ b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/regions/WorldguardFlag.java
@@ -37,7 +37,7 @@ public class WorldguardFlag extends BukkitMaskManager implements Listener {
final RegionContainer container = WorldGuard.getInstance().getPlatform().getRegionContainer();
final RegionManager manager = container.get(fp.getWorld());
- return new FaweMask(new ManagerRegion(manager, localplayer), null) {
+ return new FaweMask(new ManagerRegion(manager, localplayer)) {
@Override
public boolean isValid(FawePlayer player, MaskType type) {
// We rely on the region mask instead of this
diff --git a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/util/BukkitReflectionUtils.java b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/util/BukkitReflectionUtils.java
index 1079f8c2d..43a1d5968 100644
--- a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/util/BukkitReflectionUtils.java
+++ b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/util/BukkitReflectionUtils.java
@@ -1,11 +1,11 @@
package com.boydti.fawe.bukkit.util;
-import com.boydti.fawe.util.MainUtil;
import com.boydti.fawe.util.ReflectionUtils;
-import java.lang.reflect.Method;
import org.bukkit.Bukkit;
import org.bukkit.Server;
+import java.lang.reflect.Method;
+
public class BukkitReflectionUtils {
/**
* prefix of bukkit classes
@@ -15,49 +15,33 @@ public class BukkitReflectionUtils {
* prefix of minecraft classes
*/
private static volatile String preClassM = null;
- /**
- * boolean value, TRUE if server uses forge or MCPC+
- */
- private static boolean forge = false;
/**
* check server version and class names
*/
public static void init() {
- if (Bukkit.getServer() != null) {
- if (Bukkit.getVersion().contains("MCPC") || Bukkit.getVersion().contains("Forge")) {
- forge = true;
- }
- final Server server = Bukkit.getServer();
- final Class> bukkitServerClass = server.getClass();
- String[] pas = bukkitServerClass.getName().split("\\.");
+ final Server server = Bukkit.getServer();
+ final Class> bukkitServerClass = server.getClass();
+ String[] pas = bukkitServerClass.getName().split("\\.");
+ if (pas.length == 5) {
+ final String verB = pas[3];
+ preClassB = "org.bukkit.craftbukkit." + verB;
+ }
+ try {
+ final Method getHandle = bukkitServerClass.getDeclaredMethod("getHandle");
+ final Object handle = getHandle.invoke(server);
+ final Class handleServerClass = handle.getClass();
+ pas = handleServerClass.getName().split("\\.");
if (pas.length == 5) {
- final String verB = pas[3];
- preClassB = "org.bukkit.craftbukkit." + verB;
- }
- try {
- final Method getHandle = bukkitServerClass.getDeclaredMethod("getHandle");
- final Object handle = getHandle.invoke(server);
- final Class handleServerClass = handle.getClass();
- pas = handleServerClass.getName().split("\\.");
- if (pas.length == 5) {
- final String verM = pas[3];
- preClassM = "net.minecraft.server." + verM;
- }
- } catch (final Exception ignored) {
- MainUtil.handleError(ignored);
+ final String verM = pas[3];
+ preClassM = "net.minecraft.server." + verM;
}
+ } catch (final Exception e) {
+ e.printStackTrace();
}
}
- /**
- * @return true if server has forge classes
- */
- public static boolean isForge() {
- return forge;
- }
-
/**
* Get class for name. Replace {nms} to net.minecraft.server.V*. Replace {cb} to org.bukkit.craftbukkit.V*. Replace
* {nm} to net.minecraft
@@ -90,18 +74,6 @@ public class BukkitReflectionUtils {
return ReflectionUtils.getClass(className);
}
- public static Class> getUtilClass(final String name) {
- try {
- return Class.forName(name); //Try before 1.8 first
- } catch (final ClassNotFoundException ex) {
- try {
- return Class.forName("net.minecraft.util." + name); //Not 1.8
- } catch (final ClassNotFoundException ex2) {
- return null;
- }
- }
- }
-
public static String getVersion() {
final String packageName = Bukkit.getServer().getClass().getPackage().getName();
return packageName.substring(packageName.lastIndexOf('.') + 1);
diff --git a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/util/BukkitTaskMan.java b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/util/BukkitTaskMan.java
index 12de1f9ec..37d8722ba 100644
--- a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/util/BukkitTaskMan.java
+++ b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/util/BukkitTaskMan.java
@@ -4,6 +4,7 @@ import com.boydti.fawe.util.TaskManager;
import org.apache.commons.lang.mutable.MutableInt;
import org.bukkit.Bukkit;
import org.bukkit.plugin.Plugin;
+import org.jetbrains.annotations.NotNull;
public class BukkitTaskMan extends TaskManager {
@@ -14,44 +15,35 @@ public class BukkitTaskMan extends TaskManager {
}
@Override
- public int repeat(final Runnable r, final int interval) {
- return this.plugin.getServer().getScheduler().scheduleSyncRepeatingTask(this.plugin, r, interval, interval);
+ public int repeat(@NotNull final Runnable runnable, final int interval) {
+ return this.plugin.getServer().getScheduler().scheduleSyncRepeatingTask(this.plugin, runnable, interval, interval);
}
@Override
- public int repeatAsync(final Runnable r, final int interval) {
- return this.plugin.getServer().getScheduler().scheduleAsyncRepeatingTask(this.plugin, r, interval, interval);
+ public int repeatAsync(@NotNull final Runnable runnable, final int interval) {
+ return this.plugin.getServer().getScheduler().scheduleAsyncRepeatingTask(this.plugin, runnable, interval, interval);
}
public MutableInt index = new MutableInt(0);
@Override
- public void async(final Runnable r) {
- if (r == null) {
- return;
- }
- this.plugin.getServer().getScheduler().runTaskAsynchronously(this.plugin, r).getTaskId();
+ public void async(@NotNull final Runnable runnable) {
+ this.plugin.getServer().getScheduler().runTaskAsynchronously(this.plugin, runnable).getTaskId();
}
@Override
- public void task(final Runnable r) {
- if (r == null) {
- return;
- }
- this.plugin.getServer().getScheduler().runTask(this.plugin, r).getTaskId();
+ public void task(@NotNull final Runnable runnable) {
+ this.plugin.getServer().getScheduler().runTask(this.plugin, runnable).getTaskId();
}
@Override
- public void later(final Runnable r, final int delay) {
- if (r == null) {
- return;
- }
- this.plugin.getServer().getScheduler().runTaskLater(this.plugin, r, delay).getTaskId();
+ public void later(@NotNull final Runnable runnable, final int delay) {
+ this.plugin.getServer().getScheduler().runTaskLater(this.plugin, runnable, delay).getTaskId();
}
@Override
- public void laterAsync(final Runnable r, final int delay) {
- this.plugin.getServer().getScheduler().runTaskLaterAsynchronously(this.plugin, r, delay);
+ public void laterAsync(@NotNull final Runnable runnable, final int delay) {
+ this.plugin.getServer().getScheduler().runTaskLaterAsynchronously(this.plugin, runnable, delay);
}
@Override
diff --git a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/util/ItemUtil.java b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/util/ItemUtil.java
index 28015ebb0..c06d53497 100644
--- a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/util/ItemUtil.java
+++ b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/util/ItemUtil.java
@@ -2,20 +2,20 @@ package com.boydti.fawe.bukkit.util;
import com.boydti.fawe.bukkit.v0.BukkitQueue_0;
import com.boydti.fawe.util.ReflectionUtils;
+
import com.sk89q.jnbt.CompoundTag;
import com.sk89q.jnbt.Tag;
import it.unimi.dsi.fastutil.ints.Int2ObjectOpenHashMap;
+import org.bukkit.inventory.ItemStack;
+
import java.lang.ref.SoftReference;
import java.lang.ref.WeakReference;
import java.lang.reflect.Field;
import java.lang.reflect.Method;
-import org.bukkit.inventory.ItemStack;
public class ItemUtil {
- private final Class> classCraftItemStack;
private final Method methodAsNMSCopy;
- private final Class> classNMSItem;
private final Method methodGetTag;
private final Method methodHasTag;
private final Method methodSetTag;
@@ -25,8 +25,8 @@ public class ItemUtil {
private SoftReference>> hashToNMSTag = new SoftReference(new Int2ObjectOpenHashMap<>());
public ItemUtil() throws Exception {
- this.classCraftItemStack = BukkitReflectionUtils.getCbClass("inventory.CraftItemStack");
- this.classNMSItem = BukkitReflectionUtils.getNmsClass("ItemStack");
+ Class> classCraftItemStack = BukkitReflectionUtils.getCbClass("inventory.CraftItemStack");
+ Class> classNMSItem = BukkitReflectionUtils.getNmsClass("ItemStack");
this.methodAsNMSCopy = ReflectionUtils.setAccessible(classCraftItemStack.getDeclaredMethod("asNMSCopy", ItemStack.class));
this.methodHasTag = ReflectionUtils.setAccessible(classNMSItem.getDeclaredMethod("hasTag"));
this.methodGetTag = ReflectionUtils.setAccessible(classNMSItem.getDeclaredMethod("getTag"));
@@ -61,7 +61,7 @@ public class ItemUtil {
Int2ObjectOpenHashMap> map = hashToNMSTag.get();
if (map == null) {
map = new Int2ObjectOpenHashMap<>();
- hashToNMSTag = new SoftReference(new Int2ObjectOpenHashMap<>(map));
+ hashToNMSTag = new SoftReference<>(new Int2ObjectOpenHashMap<>(map));
}
WeakReference nativeTagRef = map.get(nmsTag.hashCode());
if (nativeTagRef != null) {
diff --git a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/v0/BukkitChunk_All.java b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/v0/BukkitChunk_All.java
index f9cc87dc6..f06b31a1b 100644
--- a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/v0/BukkitChunk_All.java
+++ b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/v0/BukkitChunk_All.java
@@ -334,7 +334,7 @@ public class BukkitChunk_All extends IntFaweChunk {
index = 0;
}
} catch (final Throwable e) {
- MainUtil.handleError(e);
+ e.printStackTrace();
}
} while (System.currentTimeMillis() - start < recommended);
if (more || place) {
diff --git a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/v0/BukkitQueue_0.java b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/v0/BukkitQueue_0.java
index bcb83b6cd..3ea479f8e 100644
--- a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/v0/BukkitQueue_0.java
+++ b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/v0/BukkitQueue_0.java
@@ -4,7 +4,6 @@ import com.boydti.fawe.Fawe;
import com.boydti.fawe.bukkit.BukkitPlayer;
import com.boydti.fawe.bukkit.FaweBukkit;
import com.boydti.fawe.bukkit.util.BukkitReflectionUtils;
-import com.boydti.fawe.example.IntFaweChunk;
import com.boydti.fawe.example.NMSMappedFaweQueue;
import com.boydti.fawe.object.FaweChunk;
import com.boydti.fawe.object.FawePlayer;
@@ -22,16 +21,6 @@ import com.sk89q.worldedit.bukkit.BukkitAdapter;
import com.sk89q.worldedit.bukkit.WorldEditPlugin;
import com.sk89q.worldedit.bukkit.adapter.BukkitImplAdapter;
import com.sk89q.worldedit.world.biome.BiomeType;
-import java.io.File;
-import java.lang.reflect.Field;
-import java.lang.reflect.InvocationTargetException;
-import java.lang.reflect.Method;
-import java.util.Collection;
-import java.util.Map;
-import java.util.Set;
-import java.util.UUID;
-import java.util.concurrent.ConcurrentHashMap;
-
import com.sk89q.worldedit.world.block.BlockState;
import org.bukkit.Bukkit;
import org.bukkit.Chunk;
@@ -46,6 +35,12 @@ import org.bukkit.event.world.ChunkUnloadEvent;
import org.bukkit.event.world.WorldInitEvent;
import org.bukkit.plugin.Plugin;
+import java.io.File;
+import java.lang.reflect.Field;
+import java.lang.reflect.InvocationTargetException;
+import java.lang.reflect.Method;
+import java.util.concurrent.ConcurrentHashMap;
+
public abstract class BukkitQueue_0 extends NMSMappedFaweQueue implements Listener {
protected static boolean PAPER = true;
@@ -259,7 +254,7 @@ public abstract class BukkitQueue_0 extends NMSMa
}
public World createWorld(final WorldCreator creator) {
- World world = TaskManager.IMP.sync(new RunnableVal() {
+ return TaskManager.IMP.sync(new RunnableVal() {
@Override
public void run(World value) {
disableChunkLoad = true;
@@ -267,7 +262,6 @@ public abstract class BukkitQueue_0 extends NMSMa
disableChunkLoad = false;
}
});
- return world;
}
@Override
@@ -289,8 +283,7 @@ public abstract class BukkitQueue_0 extends NMSMa
@Override
public boolean regenerateChunk(World world, int x, int z, BiomeType biome, Long seed) {
if (!keepLoaded.isEmpty()) keepLoaded.remove(MathMan.pairInt(x, z));
- boolean result = world.regenerateChunk(x, z);
- return result;
+ return world.regenerateChunk(x, z);
}
@Override
diff --git a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/v0/BukkitQueue_All.java b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/v0/BukkitQueue_All.java
index 57147096d..b027a7008 100644
--- a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/v0/BukkitQueue_All.java
+++ b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/v0/BukkitQueue_All.java
@@ -11,20 +11,12 @@ import com.boydti.fawe.util.MathMan;
import com.boydti.fawe.util.ReflectionUtils;
import com.boydti.fawe.util.SetQueue;
import com.boydti.fawe.util.TaskManager;
+
import com.google.common.collect.MapMaker;
import com.sk89q.jnbt.CompoundTag;
-import java.io.File;
-import java.io.RandomAccessFile;
-import java.lang.reflect.Field;
-import java.lang.reflect.Method;
-import java.util.ArrayDeque;
-import java.util.Map;
-import java.util.concurrent.ConcurrentMap;
-
import com.sk89q.worldedit.bukkit.BukkitAdapter;
import com.sk89q.worldedit.world.biome.BiomeType;
import com.sk89q.worldedit.world.block.BaseBlock;
-import com.sk89q.worldedit.world.block.BlockStateHolder;
import com.sk89q.worldedit.world.block.BlockTypes;
import org.bukkit.Chunk;
import org.bukkit.ChunkSnapshot;
@@ -33,6 +25,14 @@ import org.bukkit.World;
import org.bukkit.block.Biome;
import org.bukkit.block.data.BlockData;
+import java.io.File;
+import java.io.RandomAccessFile;
+import java.lang.reflect.Field;
+import java.lang.reflect.Method;
+import java.util.ArrayDeque;
+import java.util.Map;
+import java.util.concurrent.ConcurrentMap;
+
public class BukkitQueue_All extends BukkitQueue_0 {
private ConcurrentMap chunkCache = new MapMaker()
@@ -78,15 +78,6 @@ public class BukkitQueue_All extends BukkitQueue_0 classRegionFileCache;
- private static Class> classRegionFile;
- private static Class> classCraftChunk;
- private static Class> classCraftWorld;
- private static Class> classNMSChunk;
- private static Class> classNMSWorld;
- private static Class> classChunkProviderServer;
- private static Class> classIChunkLoader;
- private static Class> classChunkRegionLoader;
- private static Class> classIChunkProvider;
private static Method methodGetHandleChunk;
private static Method methodGetHandleWorld;
private static Method methodFlush;
@@ -100,15 +91,15 @@ public class BukkitQueue_All extends BukkitQueue_0 classRegionFile = BukkitReflectionUtils.getNmsClass("RegionFile");
+ Class> classCraftChunk = BukkitReflectionUtils.getCbClass("CraftChunk");
+ Class> classNMSChunk = BukkitReflectionUtils.getNmsClass("Chunk");
+ Class> classCraftWorld = BukkitReflectionUtils.getCbClass("CraftWorld");
+ Class> classNMSWorld = BukkitReflectionUtils.getNmsClass("World");
+ Class> classChunkProviderServer = BukkitReflectionUtils.getNmsClass("ChunkProviderServer");
+ Class> classIChunkProvider = BukkitReflectionUtils.getNmsClass("IChunkProvider");
+ Class> classIChunkLoader = BukkitReflectionUtils.getNmsClass("IChunkLoader");
+ Class> classChunkRegionLoader = BukkitReflectionUtils.getNmsClass("ChunkRegionLoader");
methodGetHandleChunk = ReflectionUtils.setAccessible(classCraftChunk.getDeclaredMethod("getHandle"));
methodGetHandleWorld = ReflectionUtils.setAccessible(classCraftWorld.getDeclaredMethod("getHandle"));
@@ -120,8 +111,8 @@ public class BukkitQueue_All extends BukkitQueue_0 15 && className.charAt(len - 15) == 'E' && className.endsWith("EntityFireworks")) {
- for (Entity ent : world.getEntities()) {
- if (ent.getType() == EntityType.FIREWORK) {
- Vector velocity = ent.getVelocity();
- double vertical = Math.abs(velocity.getY());
- if (Math.abs(velocity.getX()) > vertical || Math.abs(velocity.getZ()) > vertical) {
- Fawe.debug("[FAWE `tick-limiter`] Detected and cancelled rogue FireWork at " + ent.getLocation());
- ent.remove();
- }
+ if (len > 15 && className.charAt(len - 15) == 'E' && className.endsWith("EntityFireworks")) {
+ for (Entity ent : world.getEntities()) {
+ if (ent.getType() == EntityType.FIREWORK) {
+ Vector velocity = ent.getVelocity();
+ double vertical = Math.abs(velocity.getY());
+ if (Math.abs(velocity.getX()) > vertical || Math.abs(velocity.getZ()) > vertical) {
+ Fawe.debug("[FAWE `tick-limiter`] Detected and cancelled rogue FireWork at " + ent.getLocation());
+ ent.remove();
}
}
}
diff --git a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/v1_13/BukkitChunk_1_13.java b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/v1_13/BukkitChunk_1_13.java
index 2ccfa8b5d..a023fc927 100644
--- a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/v1_13/BukkitChunk_1_13.java
+++ b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/v1_13/BukkitChunk_1_13.java
@@ -284,7 +284,7 @@ public class BukkitChunk_1_13 extends IntFaweChunk {
copy.sectionPalettes[i] = copy(current);
}
} catch (Throwable e) {
- MainUtil.handleError(e);
+ e.printStackTrace();
}
}
return copy;
@@ -296,7 +296,7 @@ public class BukkitChunk_1_13 extends IntFaweChunk {
@Override
public Chunk getNewChunk() {
- return ((BukkitQueue_1_13) getParent()).getWorld().getChunkAt(getX(), getZ());
+ return getParent().getWorld().getChunkAt(getX(), getZ());
}
public void optimize() {
@@ -348,8 +348,7 @@ public class BukkitChunk_1_13 extends IntFaweChunk {
// Remove entities
HashSet entsToRemove = this.getEntityRemoves();
if (!entsToRemove.isEmpty()) {
- for (int i = 0; i < entities.length; i++) {
- Collection ents = entities[i];
+ for (Collection ents : entities) {
if (!ents.isEmpty()) {
Iterator iter = ents.iterator();
while (iter.hasNext()) {
@@ -445,13 +444,11 @@ public class BukkitChunk_1_13 extends IntFaweChunk {
UUID uuid = entity.getUniqueID();
entityTagMap.put("UUIDMost", new LongTag(uuid.getMostSignificantBits()));
entityTagMap.put("UUIDLeast", new LongTag(uuid.getLeastSignificantBits()));
- if (nativeTag != null) {
- NBTTagCompound tag = (NBTTagCompound) BukkitQueue_1_13.fromNative(nativeTag);
- for (String name : Constants.NO_COPY_ENTITY_NBT_FIELDS) {
- tag.remove(name);
- }
- entity.f(tag);
+ NBTTagCompound tag = (NBTTagCompound) BukkitQueue_1_13.fromNative(nativeTag);
+ for (String name : Constants.NO_COPY_ENTITY_NBT_FIELDS) {
+ tag.remove(name);
}
+ entity.f(tag);
entity.setLocation(x, y, z, yaw, pitch);
synchronized (BukkitQueue_0.class) {
nmsWorld.addEntity(entity, CreatureSpawnEvent.SpawnReason.CUSTOM);
@@ -547,9 +544,7 @@ public class BukkitChunk_1_13 extends IntFaweChunk {
// Trim tiles
HashMap toRemove = null;
if (!tiles.isEmpty()) {
- Iterator> iterator = tiles.entrySet().iterator();
- while (iterator.hasNext()) {
- Map.Entry tile = iterator.next();
+ for (Map.Entry tile : tiles.entrySet()) {
BlockPosition pos = tile.getKey();
int lx = pos.getX() & 15;
int ly = pos.getY();
@@ -625,8 +620,8 @@ public class BukkitChunk_1_13 extends IntFaweChunk {
getParent().getChangeTask().run(copy, this);
}
} catch (Throwable e) {
- MainUtil.handleError(e);
+ e.printStackTrace();
}
return this;
}
-}
\ No newline at end of file
+}
diff --git a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/v1_13/BukkitQueue_1_13.java b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/v1_13/BukkitQueue_1_13.java
index 2c51c965e..39a82d01a 100644
--- a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/v1_13/BukkitQueue_1_13.java
+++ b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/v1_13/BukkitQueue_1_13.java
@@ -1,6 +1,5 @@
package com.boydti.fawe.bukkit.v1_13;
-import com.boydti.fawe.Fawe;
import com.boydti.fawe.FaweCache;
import com.boydti.fawe.bukkit.BukkitPlayer;
import com.boydti.fawe.bukkit.adapter.v1_13_1.BlockMaterial_1_13;
@@ -14,10 +13,9 @@ import com.boydti.fawe.object.FawePlayer;
import com.boydti.fawe.object.RegionWrapper;
import com.boydti.fawe.object.brush.visualization.VisualChunk;
import com.boydti.fawe.object.visitor.FaweChunkVisitor;
-import com.boydti.fawe.util.MainUtil;
import com.boydti.fawe.util.MathMan;
-import com.boydti.fawe.util.ReflectionUtils;
import com.boydti.fawe.util.TaskManager;
+
import com.sk89q.jnbt.CompoundTag;
import com.sk89q.worldedit.world.biome.BiomeType;
import com.sk89q.worldedit.world.block.BlockID;
@@ -25,32 +23,7 @@ import com.sk89q.worldedit.world.block.BlockState;
import com.sk89q.worldedit.world.block.BlockTypes;
import io.netty.buffer.ByteBuf;
import io.netty.buffer.ByteBufAllocator;
-import net.minecraft.server.v1_13_R2.BiomeBase;
-import net.minecraft.server.v1_13_R2.Block;
-import net.minecraft.server.v1_13_R2.BlockPosition;
-import net.minecraft.server.v1_13_R2.ChunkProviderServer;
-import net.minecraft.server.v1_13_R2.ChunkSection;
-import net.minecraft.server.v1_13_R2.DataBits;
-import net.minecraft.server.v1_13_R2.DataPalette;
-import net.minecraft.server.v1_13_R2.DataPaletteBlock;
-import net.minecraft.server.v1_13_R2.DataPaletteHash;
-import net.minecraft.server.v1_13_R2.DataPaletteLinear;
-import net.minecraft.server.v1_13_R2.Entity;
-import net.minecraft.server.v1_13_R2.EntityPlayer;
-import net.minecraft.server.v1_13_R2.EnumSkyBlock;
-import net.minecraft.server.v1_13_R2.GameProfileSerializer;
-import net.minecraft.server.v1_13_R2.IBlockData;
-import net.minecraft.server.v1_13_R2.NBTTagCompound;
-import net.minecraft.server.v1_13_R2.Packet;
-import net.minecraft.server.v1_13_R2.PacketDataSerializer;
-import net.minecraft.server.v1_13_R2.PacketPlayOutMultiBlockChange;
-import net.minecraft.server.v1_13_R2.PlayerChunk;
-import net.minecraft.server.v1_13_R2.PlayerChunkMap;
-import net.minecraft.server.v1_13_R2.RegistryID;
-import net.minecraft.server.v1_13_R2.TileEntity;
-import net.minecraft.server.v1_13_R2.WorldChunkManager;
-import net.minecraft.server.v1_13_R2.WorldData;
-import net.minecraft.server.v1_13_R2.WorldServer;
+import net.minecraft.server.v1_13_R2.*;
import org.bukkit.Chunk;
import org.bukkit.World;
import org.bukkit.craftbukkit.v1_13_R2.CraftChunk;
@@ -64,51 +37,34 @@ import java.util.Arrays;
import java.util.Collection;
import java.util.Map;
import java.util.concurrent.atomic.LongAdder;
-import java.util.function.Supplier;
public class BukkitQueue_1_13 extends BukkitQueue_0 {
protected final static Field fieldBits;
- protected final static Field fieldPalette;
- protected final static Field fieldSize;
+ final static Field fieldPalette;
+ final static Field fieldSize;
- protected final static Field fieldHashBlocks;
- protected final static Field fieldLinearBlocks;
- protected final static Field fieldHashIndex;
- protected final static Field fieldRegistryb;
- protected final static Field fieldRegistryc;
- protected final static Field fieldRegistryd;
- protected final static Field fieldRegistrye;
- protected final static Field fieldRegistryf;
+ final static Field fieldHashBlocks;
+ final static Field fieldLinearBlocks;
+ private final static Field fieldHashIndex;
+ final static Field fieldRegistryb;
+ final static Field fieldRegistryc;
+ final static Field fieldRegistryd;
+ final static Field fieldRegistrye;
+ final static Field fieldRegistryf;
- protected final static Field fieldLinearIndex;
- protected final static Field fieldDefaultBlock;
+ final static Field fieldLinearIndex;
+ final static Field fieldDefaultBlock;
- protected final static Field fieldFluidCount;
- protected final static Field fieldTickingBlockCount;
- protected final static Field fieldNonEmptyBlockCount;
- protected final static Field fieldSection;
- protected final static Field fieldLiquidCount;
- protected final static Field fieldEmittedLight;
- protected final static Field fieldSkyLight;
+ private final static Field fieldFluidCount;
+ final static Field fieldTickingBlockCount;
+ final static Field fieldNonEmptyBlockCount;
+ final static Field fieldSection;
+ final static Field fieldLiquidCount;
+ private final static ChunkSection emptySection;
-
-// protected final static Field fieldBiomes;
-
- protected final static Field fieldChunkGenerator;
- protected final static Field fieldSeed;
-// protected final static Field fieldBiomeCache;
-// protected final static Field fieldBiomes2;
- protected final static Field fieldGenLayer1;
- protected final static Field fieldGenLayer2;
- protected final static Field fieldSave;
-// protected final static MutableGenLayer genLayer;
- protected final static ChunkSection emptySection;
-
-// protected static final Method methodResize;
-
- protected final static Field fieldDirtyCount;
- protected final static Field fieldDirtyBits;
+ private final static Field fieldDirtyCount;
+ private final static Field fieldDirtyBits;
static {
try {
@@ -116,12 +72,8 @@ public class BukkitQueue_1_13 extends BukkitQueue_0() {
-// @Override
-// public void run(Object value) {
-// try {
-// Field field = CraftServer.class.getDeclaredField("worlds");
-// field.setAccessible(true);
-// Map