forked from zhdev/griefus
Added logging and rollback support for double sided signs
This commit is contained in:
parent
7e97e12969
commit
4e43a42662
25 changed files with 658 additions and 107 deletions
|
|
@ -2,7 +2,9 @@ package net.coreprotect.spigot;
|
|||
|
||||
import java.util.regex.Matcher;
|
||||
|
||||
import org.bukkit.block.Sign;
|
||||
import org.bukkit.command.CommandSender;
|
||||
import org.bukkit.event.block.SignChangeEvent;
|
||||
|
||||
import net.coreprotect.bukkit.BukkitAdapter;
|
||||
import net.coreprotect.config.ConfigHandler;
|
||||
|
|
@ -20,6 +22,7 @@ public class SpigotAdapter implements SpigotInterface {
|
|||
public static final int SPIGOT_V1_17 = BukkitAdapter.BUKKIT_V1_17;
|
||||
public static final int SPIGOT_V1_18 = BukkitAdapter.BUKKIT_V1_18;
|
||||
public static final int SPIGOT_V1_19 = BukkitAdapter.BUKKIT_V1_19;
|
||||
public static final int SPIGOT_V1_20 = BukkitAdapter.BUKKIT_V1_20;
|
||||
|
||||
public static void loadAdapter() {
|
||||
int spigotVersion = ConfigHandler.SERVER_VERSION;
|
||||
|
|
@ -40,9 +43,12 @@ public class SpigotAdapter implements SpigotInterface {
|
|||
case SPIGOT_V1_17:
|
||||
case SPIGOT_V1_18:
|
||||
case SPIGOT_V1_19:
|
||||
default:
|
||||
SpigotAdapter.ADAPTER = new Spigot_v1_16();
|
||||
break;
|
||||
case SPIGOT_V1_20:
|
||||
default:
|
||||
SpigotAdapter.ADAPTER = new Spigot_v1_20();
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -81,4 +87,30 @@ public class SpigotAdapter implements SpigotInterface {
|
|||
Chat.sendMessage(sender, message.toString());
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getLine(Sign sign, int line) {
|
||||
if (line < 4) {
|
||||
return sign.getLine(line);
|
||||
}
|
||||
else {
|
||||
return "";
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setLine(Sign sign, int line, String string) {
|
||||
if (string == null) {
|
||||
string = "";
|
||||
}
|
||||
|
||||
if (line < 4) {
|
||||
sign.setLine(line, string);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isSignFront(SignChangeEvent event) {
|
||||
return true;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,6 +1,8 @@
|
|||
package net.coreprotect.spigot;
|
||||
|
||||
import org.bukkit.block.Sign;
|
||||
import org.bukkit.command.CommandSender;
|
||||
import org.bukkit.event.block.SignChangeEvent;
|
||||
|
||||
public interface SpigotInterface {
|
||||
|
||||
|
|
@ -10,4 +12,10 @@ public interface SpigotInterface {
|
|||
|
||||
public void sendComponent(CommandSender sender, String string, String bypass);
|
||||
|
||||
public String getLine(Sign sign, int line);
|
||||
|
||||
public void setLine(Sign sign, int line, String string);
|
||||
|
||||
public boolean isSignFront(SignChangeEvent event);
|
||||
|
||||
}
|
||||
|
|
|
|||
38
src/main/java/net/coreprotect/spigot/Spigot_v1_20.java
Normal file
38
src/main/java/net/coreprotect/spigot/Spigot_v1_20.java
Normal file
|
|
@ -0,0 +1,38 @@
|
|||
package net.coreprotect.spigot;
|
||||
|
||||
import org.bukkit.block.Sign;
|
||||
import org.bukkit.block.sign.Side;
|
||||
import org.bukkit.event.block.SignChangeEvent;
|
||||
|
||||
public class Spigot_v1_20 extends Spigot_v1_16 implements SpigotInterface {
|
||||
|
||||
@Override
|
||||
public String getLine(Sign sign, int line) {
|
||||
if (line < 4) {
|
||||
return sign.getSide(Side.FRONT).getLine(line);
|
||||
}
|
||||
else {
|
||||
return sign.getSide(Side.BACK).getLine(line - 4);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setLine(Sign sign, int line, String string) {
|
||||
if (string == null) {
|
||||
string = "";
|
||||
}
|
||||
|
||||
if (line < 4) {
|
||||
sign.getSide(Side.FRONT).setLine(line, string);
|
||||
}
|
||||
else {
|
||||
sign.getSide(Side.BACK).setLine(line - 4, string);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isSignFront(SignChangeEvent event) {
|
||||
return event.getSide().equals(Side.FRONT);
|
||||
}
|
||||
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue