diff --git a/build.gradle b/build.gradle index 6c0f203..0fa6847 100644 --- a/build.gradle +++ b/build.gradle @@ -16,10 +16,14 @@ repositories { name = "sonatype" url = "https://oss.sonatype.org/content/groups/public/" } + maven { + url = uri("https://repo.opencollab.dev/main/") + } } dependencies { compileOnly "io.papermc.paper:paper-api:1.19.4-R0.1-SNAPSHOT" + compileOnly 'org.geysermc.floodgate:api:2.2.2-SNAPSHOT' implementation 'com.squareup.okhttp3:okhttp:4.11.0' } diff --git a/src/main/java/eu/mhsl/craftattack/spawn/util/Floodgate.java b/src/main/java/eu/mhsl/craftattack/spawn/util/Floodgate.java new file mode 100644 index 0000000..5299b00 --- /dev/null +++ b/src/main/java/eu/mhsl/craftattack/spawn/util/Floodgate.java @@ -0,0 +1,22 @@ +package eu.mhsl.craftattack.spawn.util; + +import org.bukkit.entity.Player; +import org.geysermc.floodgate.api.FloodgateApi; +import org.geysermc.floodgate.api.player.FloodgatePlayer; + +import java.util.function.Consumer; + +public class Floodgate { + private static final FloodgateApi instance = FloodgateApi.getInstance(); + public static boolean isBedrock(Player p) { + return instance.isFloodgatePlayer(p.getUniqueId()); + } + + public static void runBedrockOnly(Player p, Consumer callback) { + if(isBedrock(p)) callback.accept(instance.getPlayer(p.getUniqueId())); + } + + public static void runJavaOnly(Player p, Consumer callback) { + if(!isBedrock(p)) callback.accept(p); + } +}