mirror of
https://github.com/Auxilor/EcoArmor.git
synced 2026-01-06 15:42:07 +00:00
Updated to new eco display system
This commit is contained in:
@@ -47,7 +47,7 @@ allprojects {
|
|||||||
}
|
}
|
||||||
|
|
||||||
dependencies {
|
dependencies {
|
||||||
compileOnly 'com.willfp:eco:3.0.2'
|
compileOnly 'com.willfp:eco:3.1.0'
|
||||||
|
|
||||||
compileOnly 'org.jetbrains:annotations:19.0.0'
|
compileOnly 'org.jetbrains:annotations:19.0.0'
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,8 @@
|
|||||||
package com.willfp.ecoarmor;
|
package com.willfp.ecoarmor;
|
||||||
|
|
||||||
import com.willfp.eco.util.command.AbstractCommand;
|
import com.willfp.eco.util.command.AbstractCommand;
|
||||||
|
import com.willfp.eco.util.display.Display;
|
||||||
|
import com.willfp.eco.util.display.DisplayModule;
|
||||||
import com.willfp.eco.util.integrations.IntegrationLoader;
|
import com.willfp.eco.util.integrations.IntegrationLoader;
|
||||||
import com.willfp.eco.util.plugin.AbstractEcoPlugin;
|
import com.willfp.eco.util.plugin.AbstractEcoPlugin;
|
||||||
import com.willfp.eco.util.protocollib.AbstractPacketAdapter;
|
import com.willfp.eco.util.protocollib.AbstractPacketAdapter;
|
||||||
@@ -8,10 +10,7 @@ import com.willfp.ecoarmor.commands.CommandEagive;
|
|||||||
import com.willfp.ecoarmor.commands.CommandEareload;
|
import com.willfp.ecoarmor.commands.CommandEareload;
|
||||||
import com.willfp.ecoarmor.commands.TabcompleterEagive;
|
import com.willfp.ecoarmor.commands.TabcompleterEagive;
|
||||||
import com.willfp.ecoarmor.config.EcoArmorConfigs;
|
import com.willfp.ecoarmor.config.EcoArmorConfigs;
|
||||||
import com.willfp.ecoarmor.display.packets.PacketChat;
|
import com.willfp.ecoarmor.display.ArmorDisplay;
|
||||||
import com.willfp.ecoarmor.display.packets.PacketSetCreativeSlot;
|
|
||||||
import com.willfp.ecoarmor.display.packets.PacketSetSlot;
|
|
||||||
import com.willfp.ecoarmor.display.packets.PacketWindowItems;
|
|
||||||
import com.willfp.ecoarmor.effects.Effects;
|
import com.willfp.ecoarmor.effects.Effects;
|
||||||
import com.willfp.ecoarmor.sets.ArmorSets;
|
import com.willfp.ecoarmor.sets.ArmorSets;
|
||||||
import com.willfp.ecoarmor.sets.util.EffectiveDurabilityListener;
|
import com.willfp.ecoarmor.sets.util.EffectiveDurabilityListener;
|
||||||
@@ -46,6 +45,8 @@ public class EcoArmorPlugin extends AbstractEcoPlugin {
|
|||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public void enable() {
|
public void enable() {
|
||||||
|
Display.registerDisplayModule(new DisplayModule(ArmorDisplay::display, 1, this.getPluginName()));
|
||||||
|
Display.registerRevertModule(ArmorDisplay::revertDisplay);
|
||||||
Effects.values().forEach(effect -> this.getEventManager().registerListener(effect));
|
Effects.values().forEach(effect -> this.getEventManager().registerListener(effect));
|
||||||
this.onReload();
|
this.onReload();
|
||||||
}
|
}
|
||||||
@@ -112,12 +113,7 @@ public class EcoArmorPlugin extends AbstractEcoPlugin {
|
|||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public List<AbstractPacketAdapter> getPacketAdapters() {
|
public List<AbstractPacketAdapter> getPacketAdapters() {
|
||||||
return Arrays.asList(
|
return new ArrayList<>();
|
||||||
new PacketChat(this),
|
|
||||||
new PacketSetSlot(this),
|
|
||||||
new PacketSetCreativeSlot(this),
|
|
||||||
new PacketWindowItems(this)
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -1,40 +0,0 @@
|
|||||||
package com.willfp.ecoarmor.display.packets;
|
|
||||||
|
|
||||||
import com.comphenix.protocol.PacketType;
|
|
||||||
import com.comphenix.protocol.events.ListenerPriority;
|
|
||||||
import com.comphenix.protocol.events.PacketContainer;
|
|
||||||
import com.comphenix.protocol.wrappers.WrappedChatComponent;
|
|
||||||
import com.willfp.eco.util.plugin.AbstractEcoPlugin;
|
|
||||||
import com.willfp.eco.util.protocollib.AbstractPacketAdapter;
|
|
||||||
import com.willfp.ecoarmor.proxy.proxies.ChatComponentProxy;
|
|
||||||
import com.willfp.ecoarmor.util.ProxyUtils;
|
|
||||||
import org.bukkit.entity.Player;
|
|
||||||
import org.jetbrains.annotations.NotNull;
|
|
||||||
|
|
||||||
public class PacketChat extends AbstractPacketAdapter {
|
|
||||||
/**
|
|
||||||
* Instantiate a new listener for {@link PacketType.Play.Server#CHAT}.
|
|
||||||
*
|
|
||||||
* @param plugin The plugin to listen through.
|
|
||||||
*/
|
|
||||||
public PacketChat(@NotNull final AbstractEcoPlugin plugin) {
|
|
||||||
super(plugin, PacketType.Play.Server.CHAT, ListenerPriority.NORMAL, true);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onSend(@NotNull final PacketContainer packet,
|
|
||||||
@NotNull final Player player) {
|
|
||||||
for (int i = 0; i < packet.getChatComponents().size(); i++) {
|
|
||||||
WrappedChatComponent component = packet.getChatComponents().read(i);
|
|
||||||
if (component == null) {
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (component.getHandle() == null) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
WrappedChatComponent newComponent = WrappedChatComponent.fromHandle(ProxyUtils.getProxy(ChatComponentProxy.class).modifyComponent(component.getHandle()));
|
|
||||||
packet.getChatComponents().write(i, newComponent);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,26 +0,0 @@
|
|||||||
package com.willfp.ecoarmor.display.packets;
|
|
||||||
|
|
||||||
import com.comphenix.protocol.PacketType;
|
|
||||||
import com.comphenix.protocol.events.PacketContainer;
|
|
||||||
import com.willfp.eco.util.plugin.AbstractEcoPlugin;
|
|
||||||
import com.willfp.eco.util.protocollib.AbstractPacketAdapter;
|
|
||||||
import com.willfp.ecoarmor.display.ArmorDisplay;
|
|
||||||
import org.bukkit.entity.Player;
|
|
||||||
import org.jetbrains.annotations.NotNull;
|
|
||||||
|
|
||||||
public class PacketSetCreativeSlot extends AbstractPacketAdapter {
|
|
||||||
/**
|
|
||||||
* Instantiate a new listener for {@link PacketType.Play.Client#SET_CREATIVE_SLOT}.
|
|
||||||
*
|
|
||||||
* @param plugin The plugin to listen through.
|
|
||||||
*/
|
|
||||||
public PacketSetCreativeSlot(@NotNull final AbstractEcoPlugin plugin) {
|
|
||||||
super(plugin, PacketType.Play.Client.ITEM_NAME, false);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onReceive(@NotNull final PacketContainer packet,
|
|
||||||
@NotNull final Player player) {
|
|
||||||
packet.getItemModifier().modify(0, ArmorDisplay::revertDisplay);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,27 +0,0 @@
|
|||||||
package com.willfp.ecoarmor.display.packets;
|
|
||||||
|
|
||||||
import com.comphenix.protocol.PacketType;
|
|
||||||
import com.comphenix.protocol.events.ListenerPriority;
|
|
||||||
import com.comphenix.protocol.events.PacketContainer;
|
|
||||||
import com.willfp.eco.util.plugin.AbstractEcoPlugin;
|
|
||||||
import com.willfp.eco.util.protocollib.AbstractPacketAdapter;
|
|
||||||
import com.willfp.ecoarmor.display.ArmorDisplay;
|
|
||||||
import org.bukkit.entity.Player;
|
|
||||||
import org.jetbrains.annotations.NotNull;
|
|
||||||
|
|
||||||
public class PacketSetSlot extends AbstractPacketAdapter {
|
|
||||||
/**
|
|
||||||
* Instantiate a new listener for {@link PacketType.Play.Server#SET_SLOT}.
|
|
||||||
*
|
|
||||||
* @param plugin The plugin to listen through.
|
|
||||||
*/
|
|
||||||
public PacketSetSlot(@NotNull final AbstractEcoPlugin plugin) {
|
|
||||||
super(plugin, PacketType.Play.Server.SET_SLOT, ListenerPriority.NORMAL, false);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onSend(@NotNull final PacketContainer packet,
|
|
||||||
@NotNull final Player player) {
|
|
||||||
packet.getItemModifier().modify(0, ArmorDisplay::display);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,33 +0,0 @@
|
|||||||
package com.willfp.ecoarmor.display.packets;
|
|
||||||
|
|
||||||
import com.comphenix.protocol.PacketType;
|
|
||||||
import com.comphenix.protocol.events.ListenerPriority;
|
|
||||||
import com.comphenix.protocol.events.PacketContainer;
|
|
||||||
import com.willfp.eco.util.plugin.AbstractEcoPlugin;
|
|
||||||
import com.willfp.eco.util.protocollib.AbstractPacketAdapter;
|
|
||||||
import com.willfp.ecoarmor.display.ArmorDisplay;
|
|
||||||
import org.bukkit.entity.Player;
|
|
||||||
import org.jetbrains.annotations.NotNull;
|
|
||||||
|
|
||||||
public class PacketWindowItems extends AbstractPacketAdapter {
|
|
||||||
/**
|
|
||||||
* Instantiate a new listener for {@link PacketType.Play.Server#WINDOW_ITEMS}.
|
|
||||||
*
|
|
||||||
* @param plugin The plugin to listen through.
|
|
||||||
*/
|
|
||||||
public PacketWindowItems(@NotNull final AbstractEcoPlugin plugin) {
|
|
||||||
super(plugin, PacketType.Play.Server.WINDOW_ITEMS, ListenerPriority.NORMAL, false);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onSend(@NotNull final PacketContainer packet,
|
|
||||||
@NotNull final Player player) {
|
|
||||||
packet.getItemListModifier().modify(0, itemStacks -> {
|
|
||||||
if (itemStacks == null) {
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
itemStacks.forEach(ArmorDisplay::display);
|
|
||||||
return itemStacks;
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
Reference in New Issue
Block a user