Skip to content

Commit a6a94e0

Browse files
committed
add packet events library
1 parent 989234c commit a6a94e0

File tree

4 files changed

+44
-1
lines changed

4 files changed

+44
-1
lines changed

build.gradle.kts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,14 +13,20 @@ java {
1313
toolchain.languageVersion.set(JavaLanguageVersion.of(21))
1414
}
1515

16+
repositories {
17+
maven(uri("https://repo.codemc.io/repository/maven-releases/"))
18+
}
19+
1620
dependencies {
1721
paperweight.paperDevBundle(libs.versions.paper.api)
22+
compileOnly(libs.packetevents)
1823
compileOnly(libs.miniplaceholders)
1924
}
2025

2126
paperPluginYaml {
2227
main = "com.uravgcode.modernessentials.ModernEssentials"
2328
bootstrapper = "com.uravgcode.modernessentials.ModernEssentialsBootstrap"
29+
loader = "com.uravgcode.modernessentials.ModernEssentialsLoader"
2430
foliaSupported = true
2531
apiVersion = "1.21.10"
2632

gradle/libs.versions.toml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,12 @@ paper-api = "1.21.10-R0.1-SNAPSHOT"
33
paperweight = "2.0.0-beta.19"
44
resource-factory = "1.3.1"
55
run-task = "3.0.2"
6+
7+
packetevents = "2.10.0"
68
miniplaceholders = "3.1.0"
79

810
[libraries]
11+
packetevents = { module = "com.github.retrooper:packetevents-spigot", version.ref = "packetevents" }
912
miniplaceholders = { module = "io.github.miniplaceholders:miniplaceholders-api", version.ref = "miniplaceholders" }
1013

1114
[plugins]

src/main/java/com/uravgcode/modernessentials/ModernEssentials.java

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,16 @@
11
package com.uravgcode.modernessentials;
22

3+
import com.github.retrooper.packetevents.PacketEvents;
34
import com.uravgcode.modernessentials.manager.ModuleManager;
45
import com.uravgcode.modernessentials.update.ConfigUpdater;
56
import com.uravgcode.modernessentials.update.UpdateChecker;
7+
import io.github.retrooper.packetevents.factory.spigot.SpigotPacketEventsBuilder;
68
import org.bukkit.plugin.java.JavaPlugin;
79
import org.jetbrains.annotations.NotNull;
810

911
import java.util.Objects;
1012

13+
@SuppressWarnings("UnstableApiUsage")
1114
public final class ModernEssentials extends JavaPlugin {
1215
private static ModernEssentials instance = null;
1316

@@ -20,17 +23,26 @@ public final class ModernEssentials extends JavaPlugin {
2023

2124
@Override
2225
public void onLoad() {
23-
instance = this;
26+
ModernEssentials.instance = this;
27+
PacketEvents.setAPI(SpigotPacketEventsBuilder.build(this));
28+
PacketEvents.getAPI().getSettings().checkForUpdates(false);
29+
PacketEvents.getAPI().load();
2430
}
2531

2632
@Override
2733
public void onEnable() {
34+
PacketEvents.getAPI().init();
2835
new UpdateChecker().checkForUpdate(this);
2936
configUpdater = new ConfigUpdater(this);
3037
moduleManager = new ModuleManager(this);
3138
reload();
3239
}
3340

41+
@Override
42+
public void onDisable() {
43+
PacketEvents.getAPI().terminate();
44+
}
45+
3446
public void reload() {
3547
saveDefaultConfig();
3648
reloadConfig();
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
package com.uravgcode.modernessentials;
2+
3+
import io.papermc.paper.plugin.loader.PluginClasspathBuilder;
4+
import io.papermc.paper.plugin.loader.PluginLoader;
5+
import io.papermc.paper.plugin.loader.library.impl.MavenLibraryResolver;
6+
import org.eclipse.aether.artifact.DefaultArtifact;
7+
import org.eclipse.aether.graph.Dependency;
8+
import org.eclipse.aether.repository.RemoteRepository;
9+
import org.jspecify.annotations.NullMarked;
10+
11+
@NullMarked
12+
@SuppressWarnings({"unused", "UnstableApiUsage"})
13+
public final class ModernEssentialsLoader implements PluginLoader {
14+
15+
@Override
16+
public void classloader(PluginClasspathBuilder classpathBuilder) {
17+
final var resolver = new MavenLibraryResolver();
18+
resolver.addRepository(new RemoteRepository.Builder("codemc-releases", "default", "https://repo.codemc.io/repository/maven-releases/").build());
19+
resolver.addDependency(new Dependency(new DefaultArtifact("com.github.retrooper:packetevents-spigot:2.10.1"), null));
20+
classpathBuilder.addLibrary(resolver);
21+
}
22+
}

0 commit comments

Comments
 (0)