From e024d6420bc52eecae3e60d48d8c00635252329c Mon Sep 17 00:00:00 2001
From: HeroBrineGoat <76707404+MasterOfTheFish@users.noreply.github.com>
Date: Fri, 28 Jan 2022 18:10:46 -0500
Subject: [PATCH] Switched to using Spigot API
---
.idea/jarRepositories.xml | 5 ++
.idea/modules/HMCCosmetics.main.iml | 1 +
build.gradle | 8 +--
.../hmccosmetics/config/ItemSerializer.java | 2 +-
.../hmccosmetics/listener/ClickListener.java | 59 +++----------------
.../hmccosmetics/packet/PacketManager.java | 3 +-
.../util/builder/ItemBuilder.java | 8 ---
7 files changed, 21 insertions(+), 65 deletions(-)
diff --git a/.idea/jarRepositories.xml b/.idea/jarRepositories.xml
index 9a797cac..082257d4 100644
--- a/.idea/jarRepositories.xml
+++ b/.idea/jarRepositories.xml
@@ -66,5 +66,10 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/modules/HMCCosmetics.main.iml b/.idea/modules/HMCCosmetics.main.iml
index 85578b10..207307e6 100644
--- a/.idea/modules/HMCCosmetics.main.iml
+++ b/.idea/modules/HMCCosmetics.main.iml
@@ -4,6 +4,7 @@
+ SPIGOT
MCP
ADVENTURE
diff --git a/build.gradle b/build.gradle
index d649c32f..db18f31f 100644
--- a/build.gradle
+++ b/build.gradle
@@ -9,26 +9,25 @@ version '1.5.0'
repositories {
mavenCentral()
mavenLocal()
- maven { url = 'https://papermc.io/repo/repository/maven-public/' }
maven { url = 'https://repo.mattstudios.me/artifactory/public/' }
maven { url = 'https://jitpack.io' }
maven { url = 'https://repo.dmulloy2.net/repository/public/' }
maven { url = 'https://repo.extendedclip.com/content/repositories/placeholderapi/' }
maven { url = 'https://mvnrepository.com/artifact/com.zaxxer/HikariCP' }
maven { url = 'https://repo.jeff-media.de/maven2/' }
-// maven { url = 'https://maven.pkg.github.com/LoneDev6/API-ItemsAdder' }
+ maven { url = 'https://oss.sonatype.org/content/repositories/snapshots/' }
}
dependencies {
testImplementation 'org.junit.jupiter:junit-jupiter-api:5.8.1'
testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.8.1'
- compileOnly 'io.papermc.paper:paper:1.17.1-R0.1-SNAPSHOT'
+ compileOnly 'org.spigotmc:spigot:1.17-R0.1-SNAPSHOT'
compileOnly 'org.jetbrains:annotations:22.0.0'
compileOnly 'com.comphenix.protocol:ProtocolLib:4.7.0'
- compileOnly 'net.kyori:adventure-api:4.9.3'
compileOnly 'me.clip:placeholderapi:2.11.1'
compileOnly 'com.github.oraxen:oraxen:-SNAPSHOT'
compileOnly 'com.github.LoneDev6:API-ItemsAdder:2.5.4'
+ implementation 'net.kyori:adventure-api:4.9.3'
implementation 'net.kyori:adventure-text-minimessage:4.2.0-SNAPSHOT'
implementation 'net.kyori:adventure-platform-bukkit:4.0.0'
implementation 'dev.triumphteam:triumph-gui:3.0.3'
@@ -47,6 +46,7 @@ test {
shadowJar {
relocate 'dev.triumphteam.gui', 'io.github.fisher2911.hmccosmetics.gui'
relocate 'me.mattstudios.mf', 'io.github.fisher2911.hmccosmetics.mf'
+ relocate 'net.kyori.adventure.api', 'io.github.fisher2911.hmccosmetics.adventure.api'
relocate 'net.kyori.adventure.text.minimessage', 'io.github.fisher2911.hmccosmetics.adventure.minimessage'
relocate 'net.kyori.adventure.platform', 'io.github.fisher2911.hmccosmetics.adventure.platform'
relocate 'org.spongepowered.configurate', 'io.github.fisher2911.hmccosmetics.configurate'
diff --git a/src/main/java/io/github/fisher2911/hmccosmetics/config/ItemSerializer.java b/src/main/java/io/github/fisher2911/hmccosmetics/config/ItemSerializer.java
index 60555de4..1d5d0673 100644
--- a/src/main/java/io/github/fisher2911/hmccosmetics/config/ItemSerializer.java
+++ b/src/main/java/io/github/fisher2911/hmccosmetics/config/ItemSerializer.java
@@ -115,7 +115,7 @@ public class ItemSerializer implements TypeSerializer {
}
- final Component name = StringUtils.parse(nameNode.getString());
+ final String name = StringUtils.parseStringToString(nameNode.getString());
final boolean unbreakable = unbreakableNode.getBoolean();
final boolean glowing = glowingNode.getBoolean();
diff --git a/src/main/java/io/github/fisher2911/hmccosmetics/listener/ClickListener.java b/src/main/java/io/github/fisher2911/hmccosmetics/listener/ClickListener.java
index 9a556a39..49e55f66 100644
--- a/src/main/java/io/github/fisher2911/hmccosmetics/listener/ClickListener.java
+++ b/src/main/java/io/github/fisher2911/hmccosmetics/listener/ClickListener.java
@@ -1,42 +1,19 @@
package io.github.fisher2911.hmccosmetics.listener;
-import com.comphenix.protocol.wrappers.EnumWrappers;
-import com.destroystokyo.paper.event.player.PlayerArmorChangeEvent;
import io.github.fisher2911.hmccosmetics.HMCCosmetics;
-import io.github.fisher2911.hmccosmetics.api.CosmeticItem;
-import io.github.fisher2911.hmccosmetics.api.event.CosmeticChangeEvent;
-import io.github.fisher2911.hmccosmetics.api.event.CosmeticItemEvent;
-import io.github.fisher2911.hmccosmetics.gui.ArmorItem;
import io.github.fisher2911.hmccosmetics.user.User;
import io.github.fisher2911.hmccosmetics.user.UserManager;
-import io.github.fisher2911.hmccosmetics.util.builder.ItemBuilder;
-import io.th0rgal.oraxen.utils.armorequipevent.ArmorEquipEvent;
import org.bukkit.Bukkit;
-import org.bukkit.Color;
-import org.bukkit.Material;
-import org.bukkit.block.Block;
-import org.bukkit.block.CreatureSpawner;
import org.bukkit.entity.HumanEntity;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
-import org.bukkit.event.block.Action;
import org.bukkit.event.inventory.InventoryClickEvent;
import org.bukkit.event.inventory.InventoryCloseEvent;
import org.bukkit.event.inventory.InventoryDragEvent;
-import org.bukkit.event.inventory.InventoryInteractEvent;
-import org.bukkit.event.player.PlayerInteractEvent;
-import org.bukkit.inventory.EntityEquipment;
-import org.bukkit.inventory.EquipmentSlot;
-import org.bukkit.inventory.Inventory;
-import org.bukkit.inventory.ItemStack;
-import org.bukkit.inventory.PlayerInventory;
-import org.spigotmc.event.entity.EntityMountEvent;
-import java.util.ArrayList;
import java.util.List;
import java.util.Optional;
-import java.util.Set;
public class ClickListener implements Listener {
@@ -54,19 +31,23 @@ public class ClickListener implements Listener {
public void onCosmeticClick(final InventoryClickEvent event) {
final HumanEntity player = event.getWhoClicked();
if (!(player instanceof Player)) return;
- this.fixInventory((Player) player, Set.of(event.getSlot()), event.getClickedInventory());
+ this.fixInventory((Player) player);
}
@EventHandler
public void onCosmeticClick(final InventoryDragEvent event) {
final HumanEntity player = event.getWhoClicked();
if (!(player instanceof Player)) return;
- this.fixInventory((Player) player, event.getInventorySlots(), event.getView().getBottomInventory());
+ this.fixInventory((Player) player);
}
@EventHandler
- public void onArmorEquip(final PlayerArmorChangeEvent event) {
- final Player player = event.getPlayer();
+ public void onInventoryClose(final InventoryCloseEvent event) {
+ final HumanEntity player = event.getPlayer();
+ this.userManager.get(player.getUniqueId()).ifPresent(this::doRunnable);
+ }
+
+ private void fixInventory(final Player player) {
final Optional optionalUser = this.userManager.get(player.getUniqueId());
if (optionalUser.isEmpty()) {
@@ -76,30 +57,6 @@ public class ClickListener implements Listener {
this.doRunnable(optionalUser.get());
}
- @EventHandler
- public void onInventoryClose(final InventoryCloseEvent event) {
- final HumanEntity player = event.getPlayer();
- this.userManager.get(player.getUniqueId()).ifPresent(this::doRunnable);
- }
-
- private void fixInventory(final Player player, final Set slotsClicked, final Inventory inventory) {
- final Optional optionalUser = this.userManager.get(player.getUniqueId());
-
- if (optionalUser.isEmpty()) {
- return;
- }
-
- if (inventory instanceof PlayerInventory) {
- final User user = optionalUser.get();
- for (int i : slotsClicked) {
- if (this.equipmentSlots.contains(i)) {
- this.doRunnable(user);
- break;
- }
- }
- }
- }
-
private void doRunnable(final User user) {
Bukkit.getScheduler().runTaskLaterAsynchronously(
this.plugin, () -> this.userManager.updateCosmetics(user),
diff --git a/src/main/java/io/github/fisher2911/hmccosmetics/packet/PacketManager.java b/src/main/java/io/github/fisher2911/hmccosmetics/packet/PacketManager.java
index fd523ba8..cb96f3e1 100644
--- a/src/main/java/io/github/fisher2911/hmccosmetics/packet/PacketManager.java
+++ b/src/main/java/io/github/fisher2911/hmccosmetics/packet/PacketManager.java
@@ -6,9 +6,10 @@ import com.comphenix.protocol.ProtocolManager;
import com.comphenix.protocol.events.PacketContainer;
import com.comphenix.protocol.wrappers.EnumWrappers;
import com.comphenix.protocol.wrappers.Pair;
-import it.unimi.dsi.fastutil.ints.IntArrayList;
+
import org.bukkit.Bukkit;
import org.bukkit.Location;
+import org.bukkit.craftbukkit.libs.it.unimi.dsi.fastutil.ints.IntArrayList;
import org.bukkit.entity.EntityType;
import org.bukkit.entity.Player;
import org.bukkit.inventory.ItemStack;
diff --git a/src/main/java/io/github/fisher2911/hmccosmetics/util/builder/ItemBuilder.java b/src/main/java/io/github/fisher2911/hmccosmetics/util/builder/ItemBuilder.java
index 7c78355d..b28e378f 100644
--- a/src/main/java/io/github/fisher2911/hmccosmetics/util/builder/ItemBuilder.java
+++ b/src/main/java/io/github/fisher2911/hmccosmetics/util/builder/ItemBuilder.java
@@ -80,14 +80,6 @@ public class ItemBuilder {
return this;
}
- public ItemBuilder name(final Component name) {
- if (this.itemMeta == null) {
- return this;
- }
- this.itemMeta.displayName(name);
- return this;
- }
-
/**
* Sets placeholders to the item's name
*