3
0
Mirror von https://github.com/GeyserMC/Geyser.git synchronisiert 2024-09-28 06:01:10 +02:00

Some additional merge changes

Dieser Commit ist enthalten in:
Tim203 2023-05-05 18:22:31 +02:00
Ursprung 6ca53f5bf3
Commit d14a20845d
Es konnte kein GPG-Schlüssel zu dieser Signatur gefunden werden
GPG-Schlüssel-ID: 736F3CD49EF01DBF
28 geänderte Dateien mit 82 neuen und 92 gelöschten Zeilen

Datei anzeigen

@ -30,7 +30,7 @@ import javax.annotation.processing.SupportedSourceVersion;
import javax.lang.model.SourceVersion; import javax.lang.model.SourceVersion;
@SupportedAnnotationTypes("*") @SupportedAnnotationTypes("*")
@SupportedSourceVersion(SourceVersion.RELEASE_16) @SupportedSourceVersion(SourceVersion.RELEASE_17)
public class BlockEntityProcessor extends ClassProcessor { public class BlockEntityProcessor extends ClassProcessor {
public BlockEntityProcessor() { public BlockEntityProcessor() {
super("org.geysermc.geyser.translator.level.block.entity.BlockEntity"); super("org.geysermc.geyser.translator.level.block.entity.BlockEntity");

Datei anzeigen

@ -30,7 +30,7 @@ import javax.annotation.processing.SupportedSourceVersion;
import javax.lang.model.SourceVersion; import javax.lang.model.SourceVersion;
@SupportedAnnotationTypes("*") @SupportedAnnotationTypes("*")
@SupportedSourceVersion(SourceVersion.RELEASE_16) @SupportedSourceVersion(SourceVersion.RELEASE_17)
public class CollisionRemapperProcessor extends ClassProcessor { public class CollisionRemapperProcessor extends ClassProcessor {
public CollisionRemapperProcessor() { public CollisionRemapperProcessor() {
super("org.geysermc.geyser.translator.collision.CollisionRemapper"); super("org.geysermc.geyser.translator.collision.CollisionRemapper");

Datei anzeigen

@ -30,7 +30,7 @@ import javax.annotation.processing.SupportedSourceVersion;
import javax.lang.model.SourceVersion; import javax.lang.model.SourceVersion;
@SupportedAnnotationTypes("*") @SupportedAnnotationTypes("*")
@SupportedSourceVersion(SourceVersion.RELEASE_16) @SupportedSourceVersion(SourceVersion.RELEASE_17)
public class PacketTranslatorProcessor extends ClassProcessor { public class PacketTranslatorProcessor extends ClassProcessor {
public PacketTranslatorProcessor() { public PacketTranslatorProcessor() {
super("org.geysermc.geyser.translator.protocol.Translator"); super("org.geysermc.geyser.translator.protocol.Translator");

Datei anzeigen

@ -30,7 +30,7 @@ import javax.annotation.processing.SupportedSourceVersion;
import javax.lang.model.SourceVersion; import javax.lang.model.SourceVersion;
@SupportedAnnotationTypes("*") @SupportedAnnotationTypes("*")
@SupportedSourceVersion(SourceVersion.RELEASE_16) @SupportedSourceVersion(SourceVersion.RELEASE_17)
public class SoundHandlerProcessor extends ClassProcessor { public class SoundHandlerProcessor extends ClassProcessor {
public SoundHandlerProcessor() { public SoundHandlerProcessor() {
super("org.geysermc.geyser.translator.sound.SoundTranslator"); super("org.geysermc.geyser.translator.sound.SoundTranslator");

Datei anzeigen

@ -3,7 +3,7 @@ dependencies {
implementation(libs.adventure.text.serializer.bungeecord) implementation(libs.adventure.text.serializer.bungeecord)
implementation("org.geysermc.floodgate", "bungee", "2.2.0-SNAPSHOT") implementation(libs.floodgate.bungee)
} }
platformRelocate("net.md_5.bungee.jni") platformRelocate("net.md_5.bungee.jni")

Datei anzeigen

@ -31,9 +31,9 @@ import net.md_5.bungee.api.config.ListenerInfo;
import net.md_5.bungee.api.plugin.Plugin; import net.md_5.bungee.api.plugin.Plugin;
import net.md_5.bungee.protocol.ProtocolConstants; import net.md_5.bungee.protocol.ProtocolConstants;
import org.checkerframework.checker.nullness.qual.Nullable; import org.checkerframework.checker.nullness.qual.Nullable;
import org.geysermc.floodgate.BungeePlatform; import org.geysermc.floodgate.bungee.BungeePlatform;
import org.geysermc.floodgate.pluginmessage.BungeeSkinApplier; import org.geysermc.floodgate.bungee.pluginmessage.BungeeSkinApplier;
import org.geysermc.floodgate.skin.SkinApplier; import org.geysermc.floodgate.core.skin.SkinApplier;
import org.geysermc.geyser.GeyserBootstrap; import org.geysermc.geyser.GeyserBootstrap;
import org.geysermc.geyser.GeyserImpl; import org.geysermc.geyser.GeyserImpl;
import org.geysermc.geyser.api.command.Command; import org.geysermc.geyser.api.command.Command;
@ -307,7 +307,8 @@ public class GeyserBungeePlugin extends Plugin implements GeyserBootstrap {
@Override @Override
public SkinApplier createSkinApplier() { public SkinApplier createSkinApplier() {
new BungeePlatform(this); // TODO hack to ensure ReflectionUtils prefix is applied and I don't forget about dealing with it // new BungeePlatform(this); // TODO hack to ensure ReflectionUtils prefix is applied and I don't forget about dealing with it
return new BungeeSkinApplier(null); // Also TODO // return new BungeeSkinApplier(null); // Also TODO
return null;
} }
} }

Datei anzeigen

@ -116,7 +116,7 @@ public class GeyserFabricMod implements ModInitializer, GeyserBootstrap {
GeyserConfiguration.checkGeyserConfiguration(geyserConfig, geyserLogger); GeyserConfiguration.checkGeyserConfiguration(geyserConfig, geyserLogger);
this.geyser = GeyserImpl.load(PlatformType.FABRIC, this); this.geyser = GeyserImpl.load(PlatformType.FABRIC, this, null);
if (server == null) { if (server == null) {
// Server has yet to start // Server has yet to start

Datei anzeigen

@ -10,19 +10,10 @@ dependencies {
implementation(libs.adventure.text.serializer.bungeecord) implementation(libs.adventure.text.serializer.bungeecord)
// Both folia-api and paper-mojangapi only provide Java 17 versions for 1.19 compileOnly(libs.folia.api)
compileOnly(libs.folia.api) { compileOnly(libs.paper.mojangapi)
attributes {
attribute(TargetJvmVersion.TARGET_JVM_VERSION_ATTRIBUTE, 17)
}
}
compileOnly(libs.paper.mojangapi) {
attributes {
attribute(TargetJvmVersion.TARGET_JVM_VERSION_ATTRIBUTE, 17)
}
}
implementation("org.geysermc.floodgate", "spigot", "2.2.0-SNAPSHOT") implementation(libs.floodgate.spigot)
} }
platformRelocate("it.unimi.dsi.fastutil") platformRelocate("it.unimi.dsi.fastutil")

Datei anzeigen

@ -42,9 +42,7 @@ import org.bukkit.permissions.Permission;
import org.bukkit.permissions.PermissionDefault; import org.bukkit.permissions.PermissionDefault;
import org.bukkit.plugin.Plugin; import org.bukkit.plugin.Plugin;
import org.bukkit.plugin.java.JavaPlugin; import org.bukkit.plugin.java.JavaPlugin;
import org.geysermc.floodgate.pluginmessage.SpigotSkinApplier; import org.geysermc.floodgate.core.skin.SkinApplier;
import org.geysermc.floodgate.skin.SkinApplier;
import org.geysermc.floodgate.util.SpigotVersionSpecificMethods;
import org.geysermc.geyser.Constants; import org.geysermc.geyser.Constants;
import org.geysermc.geyser.GeyserBootstrap; import org.geysermc.geyser.GeyserBootstrap;
import org.geysermc.geyser.GeyserImpl; import org.geysermc.geyser.GeyserImpl;
@ -431,7 +429,8 @@ public class GeyserSpigotPlugin extends JavaPlugin implements GeyserBootstrap {
@Override @Override
public SkinApplier createSkinApplier() { public SkinApplier createSkinApplier() {
return new SpigotSkinApplier(new SpigotVersionSpecificMethods(this), this); // return new SpigotSkinApplier(new SpigotVersionSpecificMethods(this), this);
return null;
} }
/** /**

Datei anzeigen

@ -29,13 +29,13 @@ import com.mojang.authlib.GameProfile;
import io.netty.channel.ChannelHandler; import io.netty.channel.ChannelHandler;
import io.netty.channel.ChannelHandlerContext; import io.netty.channel.ChannelHandlerContext;
import io.netty.channel.ChannelInboundHandlerAdapter; import io.netty.channel.ChannelInboundHandlerAdapter;
import org.geysermc.floodgate.util.ClassNames; import org.geysermc.floodgate.spigot.util.ClassNames;
import org.geysermc.geyser.hybrid.IntegratedHybridProvider; import org.geysermc.geyser.hybrid.IntegratedHybridProvider;
import org.geysermc.geyser.session.GeyserSession; import org.geysermc.geyser.session.GeyserSession;
import javax.annotation.Nonnull; import javax.annotation.Nonnull;
import static org.geysermc.floodgate.util.ReflectionUtils.setValue; import static org.geysermc.floodgate.core.util.ReflectionUtils.setValue;
@ChannelHandler.Sharable @ChannelHandler.Sharable
public final class SpigotHybridChannelHandler extends ChannelInboundHandlerAdapter { public final class SpigotHybridChannelHandler extends ChannelInboundHandlerAdapter {

Datei anzeigen

@ -1,6 +1,6 @@
dependencies { dependencies {
annotationProcessor(libs.velocity.api) annotationProcessor(libs.velocity.api)
implementation("org.geysermc.floodgate", "velocity", "2.2.0-SNAPSHOT") implementation(libs.floodgate.velocity)
api(projects.core) api(projects.core)
} }

Datei anzeigen

@ -37,7 +37,7 @@ import com.velocitypowered.api.plugin.Plugin;
import com.velocitypowered.api.proxy.ProxyServer; import com.velocitypowered.api.proxy.ProxyServer;
import lombok.Getter; import lombok.Getter;
import net.kyori.adventure.util.Codec; import net.kyori.adventure.util.Codec;
import org.geysermc.floodgate.FloodgatePlatform; import org.geysermc.floodgate.core.FloodgatePlatform;
import org.geysermc.geyser.GeyserBootstrap; import org.geysermc.geyser.GeyserBootstrap;
import org.geysermc.geyser.GeyserImpl; import org.geysermc.geyser.GeyserImpl;
import org.geysermc.geyser.api.command.Command; import org.geysermc.geyser.api.command.Command;

Datei anzeigen

@ -25,22 +25,21 @@
package org.geysermc.geyser.platform.velocity.floodgate; package org.geysermc.geyser.platform.velocity.floodgate;
import com.google.inject.Module; import org.geysermc.floodgate.isolation.library.LibraryManager;
import org.geysermc.floodgate.VelocityPlatform; import org.geysermc.floodgate.velocity.VelocityPlatform;
import org.geysermc.geyser.GeyserImpl;
import org.geysermc.geyser.floodgate.GeyserLoadStage;
import java.nio.file.Paths;
import java.util.List;
public class FloodgateVelocityPlatform extends VelocityPlatform { public class FloodgateVelocityPlatform extends VelocityPlatform {
@Override public FloodgateVelocityPlatform(LibraryManager manager) {
protected List<Module> loadStageModules() { super(manager);
// Geyser being a dumb dumb
super.dataDirectory = Paths.get("plugins/" + GeyserImpl.NAME + "-Velocity/");
var loaded = super.loadStageModules();
loaded.add(new GeyserLoadStage());
return loaded;
} }
// @Override
// protected List<Module> loadStageModules() {
// // Geyser being a dumb dumb
// super.dataDirectory = Paths.get("plugins/" + GeyserImpl.NAME + "-Velocity/");
//
// var loaded = super.loadStageModules();
// loaded.add(new GeyserLoadStage());
// return loaded;
// }
} }

Datei anzeigen

@ -16,7 +16,7 @@ indra {
mitLicense() mitLicense()
javaVersions { javaVersions {
target(16) target(17)
} }
} }

Datei anzeigen

@ -7,7 +7,8 @@ plugins {
} }
dependencies { dependencies {
api("org.geysermc.floodgate", "core", "2.2.0-SNAPSHOT") api(libs.floodgate.core)
annotationProcessor(libs.floodgate.core)
api(projects.api) api(projects.api)
// Jackson JSON and YAML serialization // Jackson JSON and YAML serialization

Datei anzeigen

@ -25,7 +25,7 @@
package org.geysermc.geyser; package org.geysermc.geyser;
import org.geysermc.floodgate.skin.SkinApplier; import org.geysermc.floodgate.core.skin.SkinApplier;
import org.geysermc.geyser.command.GeyserCommandManager; import org.geysermc.geyser.command.GeyserCommandManager;
import org.geysermc.geyser.configuration.GeyserConfiguration; import org.geysermc.geyser.configuration.GeyserConfiguration;
import org.geysermc.geyser.dump.BootstrapDumpInfo; import org.geysermc.geyser.dump.BootstrapDumpInfo;

Datei anzeigen

@ -46,7 +46,7 @@ import org.geysermc.api.Geyser;
import org.geysermc.cumulus.form.Form; import org.geysermc.cumulus.form.Form;
import org.geysermc.cumulus.form.util.FormBuilder; import org.geysermc.cumulus.form.util.FormBuilder;
import org.geysermc.erosion.packet.Packets; import org.geysermc.erosion.packet.Packets;
import org.geysermc.floodgate.FloodgatePlatform; import org.geysermc.floodgate.core.FloodgatePlatform;
import org.geysermc.floodgate.news.NewsItemAction; import org.geysermc.floodgate.news.NewsItemAction;
import org.geysermc.geyser.api.GeyserApi; import org.geysermc.geyser.api.GeyserApi;
import org.geysermc.geyser.api.event.EventBus; import org.geysermc.geyser.api.event.EventBus;

Datei anzeigen

@ -31,6 +31,7 @@ import org.checkerframework.checker.nullness.qual.NonNull;
import org.geysermc.geyser.api.extension.ExtensionDescription; import org.geysermc.geyser.api.extension.ExtensionDescription;
import org.geysermc.geyser.api.extension.exception.InvalidDescriptionException; import org.geysermc.geyser.api.extension.exception.InvalidDescriptionException;
import org.geysermc.geyser.text.GeyserLocale; import org.geysermc.geyser.text.GeyserLocale;
import org.yaml.snakeyaml.LoaderOptions;
import org.yaml.snakeyaml.Yaml; import org.yaml.snakeyaml.Yaml;
import org.yaml.snakeyaml.constructor.CustomClassLoaderConstructor; import org.yaml.snakeyaml.constructor.CustomClassLoaderConstructor;
@ -48,7 +49,7 @@ public record GeyserExtensionDescription(@NonNull String id,
@NonNull String version, @NonNull String version,
@NonNull List<String> authors) implements ExtensionDescription { @NonNull List<String> authors) implements ExtensionDescription {
private static final Yaml YAML = new Yaml(new CustomClassLoaderConstructor(Source.class.getClassLoader())); private static final Yaml YAML = new Yaml(new CustomClassLoaderConstructor(Source.class.getClassLoader(), new LoaderOptions()));
public static final Pattern ID_PATTERN = Pattern.compile("[a-z][a-z0-9-_]{0,63}"); public static final Pattern ID_PATTERN = Pattern.compile("[a-z][a-z0-9-_]{0,63}");
public static final Pattern NAME_PATTERN = Pattern.compile("^[A-Za-z_.-]+$"); public static final Pattern NAME_PATTERN = Pattern.compile("^[A-Za-z_.-]+$");

Datei anzeigen

@ -25,16 +25,11 @@
package org.geysermc.geyser.floodgate; package org.geysermc.geyser.floodgate;
import com.google.inject.AbstractModule; public class GeyserLoadStage {
import com.google.inject.Provides; // @Provides
import com.google.inject.Singleton; // @Singleton
import com.google.inject.name.Named; // @Named("configFile")
// private String floodgateConfigName() {
public class GeyserLoadStage extends AbstractModule { // return "floodgate.yml";
@Provides // }
@Singleton
@Named("configFile")
private String floodgateConfigName() {
return "floodgate.yml";
}
} }

Datei anzeigen

@ -25,7 +25,7 @@
package org.geysermc.geyser.hybrid; package org.geysermc.geyser.hybrid;
import org.geysermc.floodgate.crypto.FloodgateCipher; import org.geysermc.floodgate.core.crypto.FloodgateCipher;
import org.geysermc.geyser.GeyserImpl; import org.geysermc.geyser.GeyserImpl;
import org.geysermc.geyser.session.GeyserSession; import org.geysermc.geyser.session.GeyserSession;
@ -35,7 +35,7 @@ public final class FloodgateHybridProvider implements HybridProvider {
private final FloodgateCipher cipher; private final FloodgateCipher cipher;
public FloodgateHybridProvider(GeyserImpl geyser) { public FloodgateHybridProvider(GeyserImpl geyser) {
cipher = geyser.getFloodgatePlatform().getInstance(FloodgateCipher.class); cipher = geyser.getFloodgatePlatform().getBean(FloodgateCipher.class);
} }
@Override @Override

Datei anzeigen

@ -25,7 +25,7 @@
package org.geysermc.geyser.hybrid; package org.geysermc.geyser.hybrid;
import org.geysermc.floodgate.crypto.FloodgateCipher; import org.geysermc.floodgate.core.crypto.FloodgateCipher;
import org.geysermc.geyser.session.GeyserSession; import org.geysermc.geyser.session.GeyserSession;
public interface HybridProvider { public interface HybridProvider {

Datei anzeigen

@ -26,9 +26,9 @@
package org.geysermc.geyser.hybrid; package org.geysermc.geyser.hybrid;
import io.netty.util.AttributeKey; import io.netty.util.AttributeKey;
import org.geysermc.floodgate.crypto.FloodgateCipher; import org.geysermc.floodgate.core.crypto.FloodgateCipher;
import org.geysermc.floodgate.skin.SkinApplier; import org.geysermc.floodgate.core.skin.SkinApplier;
import org.geysermc.floodgate.skin.SkinData; import org.geysermc.floodgate.core.skin.SkinDataImpl;
import org.geysermc.geyser.GeyserImpl; import org.geysermc.geyser.GeyserImpl;
import org.geysermc.geyser.session.GeyserSession; import org.geysermc.geyser.session.GeyserSession;
@ -44,7 +44,7 @@ public class IntegratedHybridProvider implements HybridProvider {
@Override @Override
public void onSkinUpload(GeyserSession session, String value, String signature) { public void onSkinUpload(GeyserSession session, String value, String signature) {
skinApplier.applySkin(session, new SkinData(value, signature)); skinApplier.applySkin(session, new SkinDataImpl(value, signature));
} }
@Override @Override

Datei anzeigen

@ -25,7 +25,7 @@
package org.geysermc.geyser.hybrid; package org.geysermc.geyser.hybrid;
import org.geysermc.floodgate.crypto.FloodgateCipher; import org.geysermc.floodgate.core.crypto.FloodgateCipher;
import org.geysermc.geyser.GeyserImpl; import org.geysermc.geyser.GeyserImpl;
public final class ProxyHybridProvider extends IntegratedHybridProvider { public final class ProxyHybridProvider extends IntegratedHybridProvider {
@ -33,7 +33,7 @@ public final class ProxyHybridProvider extends IntegratedHybridProvider {
public ProxyHybridProvider(GeyserImpl geyser) { public ProxyHybridProvider(GeyserImpl geyser) {
super(geyser); super(geyser);
this.cipher = geyser.getFloodgatePlatform().getInstance(FloodgateCipher.class); this.cipher = geyser.getFloodgatePlatform().getBean(FloodgateCipher.class);
} }
@Override @Override

Datei anzeigen

@ -96,7 +96,7 @@ import org.geysermc.api.util.InputMode;
import org.geysermc.api.util.UiProfile; import org.geysermc.api.util.UiProfile;
import org.geysermc.cumulus.form.Form; import org.geysermc.cumulus.form.Form;
import org.geysermc.cumulus.form.util.FormBuilder; import org.geysermc.cumulus.form.util.FormBuilder;
import org.geysermc.floodgate.crypto.FloodgateCipher; import org.geysermc.floodgate.core.crypto.FloodgateCipher;
import org.geysermc.floodgate.util.BedrockData; import org.geysermc.floodgate.util.BedrockData;
import org.geysermc.geyser.Constants; import org.geysermc.geyser.Constants;
import org.geysermc.geyser.GeyserImpl; import org.geysermc.geyser.GeyserImpl;

Datei anzeigen

@ -32,7 +32,7 @@ import com.fasterxml.jackson.databind.node.ArrayNode;
import com.fasterxml.jackson.databind.node.ObjectNode; import com.fasterxml.jackson.databind.node.ObjectNode;
import com.nimbusds.jwt.SignedJWT; import com.nimbusds.jwt.SignedJWT;
import lombok.Getter; import lombok.Getter;
import org.geysermc.floodgate.util.WebsocketEventType; import org.geysermc.floodgate.core.util.WebsocketEventType;
import org.geysermc.geyser.Constants; import org.geysermc.geyser.Constants;
import org.geysermc.geyser.GeyserImpl; import org.geysermc.geyser.GeyserImpl;
import org.geysermc.geyser.GeyserLogger; import org.geysermc.geyser.GeyserLogger;

Datei anzeigen

@ -32,13 +32,10 @@ import com.fasterxml.jackson.databind.node.JsonNodeType;
import com.github.steveice10.mc.auth.service.MsaAuthenticationService; import com.github.steveice10.mc.auth.service.MsaAuthenticationService;
import com.nimbusds.jose.JWSObject; import com.nimbusds.jose.JWSObject;
import com.nimbusds.jose.Payload; import com.nimbusds.jose.Payload;
import com.nimbusds.jose.shaded.json.JSONObject;
import com.nimbusds.jose.shaded.json.JSONValue;
import com.nimbusds.jwt.SignedJWT; import com.nimbusds.jwt.SignedJWT;
import org.cloudburstmc.protocol.bedrock.packet.LoginPacket; import org.cloudburstmc.protocol.bedrock.packet.LoginPacket;
import org.cloudburstmc.protocol.bedrock.packet.ServerToClientHandshakePacket; import org.cloudburstmc.protocol.bedrock.packet.ServerToClientHandshakePacket;
import org.cloudburstmc.protocol.bedrock.util.EncryptionUtils; import org.cloudburstmc.protocol.bedrock.util.EncryptionUtils;
import org.cloudburstmc.protocol.common.util.Preconditions;
import org.geysermc.cumulus.form.CustomForm; import org.geysermc.cumulus.form.CustomForm;
import org.geysermc.cumulus.form.ModalForm; import org.geysermc.cumulus.form.ModalForm;
import org.geysermc.cumulus.form.SimpleForm; import org.geysermc.cumulus.form.SimpleForm;
@ -109,12 +106,12 @@ public class LoginEncryptionUtils {
mojangSigned = true; mojangSigned = true;
} }
Object payload = JSONValue.parse(jwt.getPayload().toString()); // Object payload = JSONValue.parse(jwt.getPayload().toString());
Preconditions.checkArgument(payload instanceof JSONObject, "Payload is not an object"); // Preconditions.checkArgument(payload instanceof JSONObject, "Payload is not an object");
//
Object identityPublicKey = ((JSONObject) payload).get("identityPublicKey"); // Object identityPublicKey = ((JSONObject) payload).get("identityPublicKey");
Preconditions.checkArgument(identityPublicKey instanceof String, "identityPublicKey node is missing in chain"); // Preconditions.checkArgument(identityPublicKey instanceof String, "identityPublicKey node is missing in chain");
lastKey = EncryptionUtils.generateKey((String) identityPublicKey); // lastKey = EncryptionUtils.generateKey((String) identityPublicKey);
} }
return mojangSigned; return mojangSigned;

@ -1 +1 @@
Subproject commit 56c3eee7a5241b5609d1936f2a11b05dd1a3d568 Subproject commit d449a0a18549f1b6f2a62e363974019337a26b16

Datei anzeigen

@ -1,5 +1,6 @@
[versions] [versions]
base-api = "1.0.0-SNAPSHOT" base-api = "feature-floodgate-merge-1.0.0-SNAPSHOT"
floodgate = "development-2.2.2-SNAPSHOT"
cumulus = "1.1.1" cumulus = "1.1.1"
erosion = "1.0-20230406.174837-8" erosion = "1.0-20230406.174837-8"
events = "1.0-SNAPSHOT" events = "1.0-SNAPSHOT"
@ -37,6 +38,11 @@ base-api = { group = "org.geysermc.api", name = "base-api", version.ref = "base-
cumulus = { group = "org.geysermc.cumulus", name = "cumulus", version.ref = "cumulus" } cumulus = { group = "org.geysermc.cumulus", name = "cumulus", version.ref = "cumulus" }
events = { group = "org.geysermc.event", name = "events", version.ref = "events" } events = { group = "org.geysermc.event", name = "events", version.ref = "events" }
floodgate-core = { module = "org.geysermc.floodgate:core", version.ref = "floodgate" }
floodgate-bungee = { module = "org.geysermc.floodgate:bungee-base", version.ref = "floodgate" }
floodgate-spigot = { module = "org.geysermc.floodgate:spigot-base", version.ref = "floodgate" }
floodgate-velocity = { module = "org.geysermc.floodgate:velocity-base", version.ref = "floodgate" }
erosion-bukkit-common = { group = "org.geysermc.erosion", name = "bukkit-common", version.ref = "erosion" } erosion-bukkit-common = { group = "org.geysermc.erosion", name = "bukkit-common", version.ref = "erosion" }
erosion-common = { group = "org.geysermc.erosion", name = "common", version.ref = "erosion" } erosion-common = { group = "org.geysermc.erosion", name = "common", version.ref = "erosion" }
@ -100,9 +106,9 @@ protocol-codec = { group = "org.cloudburstmc.protocol", name = "bedrock-codec",
protocol-connection = { group = "org.cloudburstmc.protocol", name = "bedrock-connection", version.ref = "protocol-connection" } protocol-connection = { group = "org.cloudburstmc.protocol", name = "bedrock-connection", version.ref = "protocol-connection" }
[bundles] [bundles]
jackson = [ "jackson-annotations", "jackson-core", "jackson-dataformat-yaml" ] jackson = ["jackson-annotations", "jackson-core", "jackson-dataformat-yaml"]
fastutil = [ "fastutil-int-int-maps", "fastutil-int-long-maps", "fastutil-int-byte-maps", "fastutil-int-boolean-maps", "fastutil-object-int-maps", "fastutil-object-object-maps" ] fastutil = ["fastutil-int-int-maps", "fastutil-int-long-maps", "fastutil-int-byte-maps", "fastutil-int-boolean-maps", "fastutil-object-int-maps", "fastutil-object-object-maps"]
adventure = [ "adventure-text-serializer-gson", "adventure-text-serializer-legacy", "adventure-text-serializer-plain" ] adventure = ["adventure-text-serializer-gson", "adventure-text-serializer-legacy", "adventure-text-serializer-plain"]
log4j = [ "log4j-api", "log4j-core", "log4j-slf4j18-impl" ] log4j = ["log4j-api", "log4j-core", "log4j-slf4j18-impl"]
jline = [ "jline-terminal", "jline-terminal-jna", "jline-reader" ] jline = ["jline-terminal", "jline-terminal-jna", "jline-reader"]
protocol = [ "protocol-common", "protocol-codec", "protocol-connection" ] protocol = ["protocol-common", "protocol-codec", "protocol-connection"]