9
0
mirror of https://github.com/GeyserExtensionists/GeyserUtils.git synced 2025-12-19 15:09:24 +00:00

General cleanup & black particles fix.

This commit is contained in:
Willem
2025-02-26 20:31:29 +01:00
parent e7ac6f8d31
commit 3a961101e6
34 changed files with 423 additions and 459 deletions

View File

@@ -17,6 +17,7 @@ public final class GeyserUtils extends JavaPlugin {
@Getter
private static PacketManager packetManager;
@Override
public void onEnable() {
// Plugin startup logic

View File

@@ -3,7 +3,6 @@ package me.zimzaza4.geyserutils.spigot.api;
import me.zimzaza4.geyserutils.common.channel.GeyserUtilsChannels;
import me.zimzaza4.geyserutils.common.packet.*;
import me.zimzaza4.geyserutils.spigot.GeyserUtils;
import org.bukkit.entity.Entity;
import org.bukkit.entity.Player;
import java.awt.*;

View File

@@ -7,7 +7,6 @@ import me.zimzaza4.geyserutils.common.packet.*;
import me.zimzaza4.geyserutils.common.particle.CustomParticle;
import me.zimzaza4.geyserutils.common.util.Pos;
import me.zimzaza4.geyserutils.spigot.GeyserUtils;
import org.bukkit.Bukkit;
import org.bukkit.Location;
import org.bukkit.entity.Entity;
import org.bukkit.entity.Player;

View File

@@ -8,7 +8,6 @@ import lombok.experimental.Accessors;
import me.zimzaza4.geyserutils.common.channel.GeyserUtilsChannels;
import me.zimzaza4.geyserutils.common.form.element.NpcDialogueButton;
import me.zimzaza4.geyserutils.common.packet.NpcDialogueFormDataCustomPayloadPacket;
import me.zimzaza4.geyserutils.common.util.CustomPayloadPacketUtils;
import me.zimzaza4.geyserutils.spigot.GeyserUtils;
import org.bukkit.Bukkit;
import org.bukkit.entity.Entity;
@@ -27,7 +26,7 @@ import java.util.function.Consumer;
@AllArgsConstructor
@Setter
@Getter
@Accessors( fluent = true )
@Accessors(fluent = true)
public class NpcDialogueForm {
public static Map<String, NpcDialogueForm> FORMS = new HashMap<>();
@@ -41,31 +40,6 @@ public class NpcDialogueForm {
BiConsumer<String, Integer> handler;
Consumer<String> closeHandler;
public void send(FloodgatePlayer floodgatePlayer) {
UUID formId = UUID.randomUUID();
NpcDialogueFormDataCustomPayloadPacket data = new NpcDialogueFormDataCustomPayloadPacket(formId.toString(), title, dialogue, skinData, bindEntity.getEntityId(), buttons, "OPEN", hasNextForm);
Player p = Bukkit.getPlayer(floodgatePlayer.getCorrectUniqueId());
if (p!= null) {
FORMS.put(formId.toString(), this);
p.sendPluginMessage(GeyserUtils.getInstance(), GeyserUtilsChannels.MAIN, GeyserUtils.getPacketManager().encodePacket(data));
new BukkitRunnable() {
@Override
public void run() {
if (!FORMS.containsKey(formId.toString())) {
this.cancel();
}
if (!p.isOnline()) {
FORMS.remove(formId.toString());
}
}
}.runTaskTimerAsynchronously(GeyserUtils.getInstance(), 10, 10);
}
}
public static void closeForm(FloodgatePlayer floodgatePlayer) {
NpcDialogueFormDataCustomPayloadPacket data = new NpcDialogueFormDataCustomPayloadPacket(null, null, null, null, -1, null, "CLOSE", false);
Player p = Bukkit.getPlayer(floodgatePlayer.getCorrectUniqueId());
@@ -73,4 +47,29 @@ public class NpcDialogueForm {
p.sendPluginMessage(GeyserUtils.getInstance(), GeyserUtilsChannels.MAIN, GeyserUtils.getPacketManager().encodePacket(data));
}
}
public void send(FloodgatePlayer floodgatePlayer) {
UUID formId = UUID.randomUUID();
NpcDialogueFormDataCustomPayloadPacket data = new NpcDialogueFormDataCustomPayloadPacket(formId.toString(), title, dialogue, skinData, bindEntity.getEntityId(), buttons, "OPEN", hasNextForm);
Player p = Bukkit.getPlayer(floodgatePlayer.getCorrectUniqueId());
if (p != null) {
FORMS.put(formId.toString(), this);
p.sendPluginMessage(GeyserUtils.getInstance(), GeyserUtilsChannels.MAIN, GeyserUtils.getPacketManager().encodePacket(data));
new BukkitRunnable() {
@Override
public void run() {
if (!FORMS.containsKey(formId.toString())) {
this.cancel();
}
if (!p.isOnline()) {
FORMS.remove(formId.toString());
}
}
}.runTaskTimerAsynchronously(GeyserUtils.getInstance(), 10, 10);
}
}
}