9
0
mirror of https://github.com/BX-Team/DivineMC.git synced 2025-12-19 14:59:25 +00:00

switch from paper files to features

This commit is contained in:
NONPLAYT
2025-07-07 04:09:16 +03:00
parent 41f2b1c6a3
commit b533ad43f7
5 changed files with 45 additions and 18 deletions

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Delete timings
diff --git a/src/main/java/io/papermc/paper/plugin/manager/PaperEventManager.java b/src/main/java/io/papermc/paper/plugin/manager/PaperEventManager.java diff --git a/src/main/java/io/papermc/paper/plugin/manager/PaperEventManager.java b/src/main/java/io/papermc/paper/plugin/manager/PaperEventManager.java
index e989053b703fddfbffc3e4ed9381594aaaa0df41..d7398b1ecf2660c29fb7d106b48fe02d3736603e 100644 index 7ce9ebba8ce304d1f3f21d4f15ee5f3560d7700b..11e5b9ebafa562e5a93643d954839e86d0b731f0 100644
--- a/src/main/java/io/papermc/paper/plugin/manager/PaperEventManager.java --- a/src/main/java/io/papermc/paper/plugin/manager/PaperEventManager.java
+++ b/src/main/java/io/papermc/paper/plugin/manager/PaperEventManager.java +++ b/src/main/java/io/papermc/paper/plugin/manager/PaperEventManager.java
@@ -1,6 +1,5 @@ @@ -1,6 +1,5 @@
@@ -15,7 +15,7 @@ index e989053b703fddfbffc3e4ed9381594aaaa0df41..d7398b1ecf2660c29fb7d106b48fe02d
import com.destroystokyo.paper.event.server.ServerExceptionEvent; import com.destroystokyo.paper.event.server.ServerExceptionEvent;
import com.destroystokyo.paper.exception.ServerEventException; import com.destroystokyo.paper.exception.ServerEventException;
import com.google.common.collect.Sets; import com.google.common.collect.Sets;
@@ -96,7 +95,6 @@ class PaperEventManager { @@ -95,7 +94,6 @@ class PaperEventManager {
throw new IllegalPluginAccessException("Plugin attempted to register " + event + " while not enabled"); throw new IllegalPluginAccessException("Plugin attempted to register " + event + " while not enabled");
} }
@@ -23,7 +23,7 @@ index e989053b703fddfbffc3e4ed9381594aaaa0df41..d7398b1ecf2660c29fb7d106b48fe02d
this.getEventListeners(event).register(new RegisteredListener(listener, executor, priority, plugin, ignoreCancelled)); this.getEventListeners(event).register(new RegisteredListener(listener, executor, priority, plugin, ignoreCancelled));
} }
@@ -183,7 +181,7 @@ class PaperEventManager { @@ -182,7 +180,7 @@ class PaperEventManager {
} }
} }

View File

@@ -1,6 +1,14 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: NONPLAYT <76615486+NONPLAYT@users.noreply.github.com>
Date: Mon, 7 Jul 2025 04:04:20 +0300
Subject: [PATCH] Skip event if no listeners
diff --git a/src/main/java/io/papermc/paper/plugin/manager/PaperEventManager.java b/src/main/java/io/papermc/paper/plugin/manager/PaperEventManager.java
index 11e5b9ebafa562e5a93643d954839e86d0b731f0..d7398b1ecf2660c29fb7d106b48fe02d3736603e 100644
--- a/src/main/java/io/papermc/paper/plugin/manager/PaperEventManager.java --- a/src/main/java/io/papermc/paper/plugin/manager/PaperEventManager.java
+++ b/src/main/java/io/papermc/paper/plugin/manager/PaperEventManager.java +++ b/src/main/java/io/papermc/paper/plugin/manager/PaperEventManager.java
@@ -36,14 +_,15 @@ @@ -35,15 +35,16 @@ class PaperEventManager {
// SimplePluginManager // SimplePluginManager
public void callEvent(@NotNull Event event) { public void callEvent(@NotNull Event event) {
@@ -13,9 +21,10 @@
} else if (!event.isAsynchronous() && !this.server.isPrimaryThread() && !this.server.isStopping()) { } else if (!event.isAsynchronous() && !this.server.isPrimaryThread() && !this.server.isStopping()) {
throw new IllegalStateException(event.getEventName() + " may only be triggered synchronously."); throw new IllegalStateException(event.getEventName() + " may only be triggered synchronously.");
} }
-
- HandlerList handlers = event.getHandlers(); - HandlerList handlers = event.getHandlers();
- RegisteredListener[] listeners = handlers.getRegisteredListeners(); - RegisteredListener[] listeners = handlers.getRegisteredListeners();
-
for (RegisteredListener registration : listeners) { for (RegisteredListener registration : listeners) {
if (!registration.getPlugin().isEnabled()) { if (!registration.getPlugin().isEnabled()) {
continue;

View File

@@ -1,6 +1,14 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: NONPLAYT <76615486+NONPLAYT@users.noreply.github.com>
Date: Mon, 7 Jul 2025 04:05:08 +0300
Subject: [PATCH] Force Minecraft command
diff --git a/src/main/java/org/bukkit/craftbukkit/command/CraftCommandMap.java b/src/main/java/org/bukkit/craftbukkit/command/CraftCommandMap.java
index 90ed57a7fbcd0625b64084347460e9864216f610..138f37bf12f39152af97b14515007e9ca485967f 100644
--- a/src/main/java/org/bukkit/craftbukkit/command/CraftCommandMap.java --- a/src/main/java/org/bukkit/craftbukkit/command/CraftCommandMap.java
+++ b/src/main/java/org/bukkit/craftbukkit/command/CraftCommandMap.java +++ b/src/main/java/org/bukkit/craftbukkit/command/CraftCommandMap.java
@@ -14,4 +_,18 @@ @@ -14,4 +14,18 @@ public class CraftCommandMap extends SimpleCommandMap {
public Map<String, Command> getKnownCommands() { public Map<String, Command> getKnownCommands() {
return this.knownCommands; return this.knownCommands;
} }

View File

@@ -0,0 +1,21 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: NONPLAYT <76615486+NONPLAYT@users.noreply.github.com>
Date: Mon, 7 Jul 2025 04:06:32 +0300
Subject: [PATCH] Replace CraftServer#getWorlds ArrayList with a fastutil
ObjectArrayList
CraftServer#getWorlds is frequently used in some plugins, so replacing ArrayList with fastutil ObjectArrayList will give some performance boost
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 17022a57cb06b0ddd0df94075c0d92b68137d901..414fdc6ca7a2979124a7fbf529bff60f993c005a 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -974,7 +974,7 @@ public final class CraftServer implements Server {
@Override
public List<World> getWorlds() {
- return new ArrayList<World>(this.worlds.values());
+ return new it.unimi.dsi.fastutil.objects.ObjectArrayList<World>(this.worlds.values()); // DivineMC - Replace CraftServer#getWorlds ArrayList with a fastutil ObjectArrayList
}
@Override

View File

@@ -1,11 +0,0 @@
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -974,7 +_,7 @@
@Override
public List<World> getWorlds() {
- return new ArrayList<World>(this.worlds.values());
+ return new it.unimi.dsi.fastutil.objects.ObjectArrayList<World>(this.worlds.values()); // DivineMC - optimize getWorlds
}
@Override