mirror of
https://github.com/Xiao-MoMi/Custom-Nameplates.git
synced 2025-12-19 15:09:23 +00:00
2.2.0.8
This commit is contained in:
10
build.gradle
10
build.gradle
@@ -4,7 +4,7 @@ plugins {
|
||||
}
|
||||
|
||||
group = 'net.momirealms'
|
||||
version = '2.2.0.7.3'
|
||||
version = '2.2.0.8'
|
||||
|
||||
repositories {
|
||||
maven {name = "aliyun-repo"; url = "https://maven.aliyun.com/repository/public/"}
|
||||
@@ -29,10 +29,11 @@ dependencies {
|
||||
compileOnly ('org.geysermc.floodgate:api:2.0-SNAPSHOT')
|
||||
compileOnly ('net.md-5:bungeecord-api:1.19-R0.1-SNAPSHOT')
|
||||
compileOnly ('com.github.LoneDev6:api-itemsadder:3.2.3c')
|
||||
implementation ('net.kyori:adventure-api:4.13.1')
|
||||
compileOnly ('com.github.FrancoBM12:API-MagicCosmetics:2.2.0')
|
||||
implementation ('net.kyori:adventure-api:4.14.0')
|
||||
implementation ('net.kyori:adventure-platform-bukkit:4.3.0')
|
||||
implementation ('net.kyori:adventure-text-minimessage:4.13.1')
|
||||
implementation ('net.kyori:adventure-text-serializer-gson:4.13.1')
|
||||
implementation ('net.kyori:adventure-text-minimessage:4.14.0')
|
||||
implementation ('net.kyori:adventure-text-serializer-gson:4.14.0')
|
||||
implementation ("org.bstats:bstats-bukkit:3.0.1")
|
||||
implementation fileTree (dir:'libs',includes:['BiomeAPI.jar'])
|
||||
}
|
||||
@@ -61,6 +62,7 @@ processResources {
|
||||
shadowJar {
|
||||
relocate ('net.kyori', 'net.momirealms.customnameplates.libs.net.kyori')
|
||||
relocate ('org.bstats', 'net.momirealms.customnameplates.libs.org.bstats')
|
||||
relocate ('net.momirealms', 'net.momirealms.customnameplates.libs.net.momirealms')
|
||||
}
|
||||
|
||||
tasks.register("delete", Delete).get().delete("build/libs/"+project.name+"-"+project.version+".jar")
|
||||
|
||||
BIN
libs/oraxen-api.jar
Normal file
BIN
libs/oraxen-api.jar
Normal file
Binary file not shown.
@@ -0,0 +1,63 @@
|
||||
package net.momirealms.customnameplates.listener.compatibility;
|
||||
|
||||
import com.francobm.magicosmetics.api.Cosmetic;
|
||||
import com.francobm.magicosmetics.api.CosmeticType;
|
||||
import com.francobm.magicosmetics.api.MagicAPI;
|
||||
import com.francobm.magicosmetics.cache.cosmetics.Hat;
|
||||
import com.francobm.magicosmetics.events.CosmeticChangeEquipEvent;
|
||||
import com.francobm.magicosmetics.events.CosmeticEquipEvent;
|
||||
import com.francobm.magicosmetics.events.CosmeticUnEquipEvent;
|
||||
import net.momirealms.customnameplates.object.armorstand.ArmorStandManager;
|
||||
import net.momirealms.customnameplates.object.nameplate.mode.EntityTag;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.event.EventHandler;
|
||||
import org.bukkit.event.Listener;
|
||||
|
||||
public class MagicCosmeticsListener implements Listener {
|
||||
|
||||
private final EntityTag entityTag;
|
||||
|
||||
public MagicCosmeticsListener(EntityTag entityTag) {
|
||||
this.entityTag = entityTag;
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void onChangeCos(CosmeticChangeEquipEvent event) {
|
||||
final Cosmetic cosmetic = event.getNewCosmetic();
|
||||
final Player player = event.getPlayer();
|
||||
if (cosmetic instanceof Hat hat) {
|
||||
ArmorStandManager asm = entityTag.getArmorStandManager(player);
|
||||
if (asm != null) {
|
||||
asm.setHatOffset(hat.getOffSetY());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void onEquip(CosmeticEquipEvent event) {
|
||||
final Cosmetic cosmetic = event.getCosmetic();
|
||||
final Player player = event.getPlayer();
|
||||
if (cosmetic instanceof Hat hat) {
|
||||
ArmorStandManager asm = entityTag.getArmorStandManager(player);
|
||||
if (asm != null) {
|
||||
asm.setHatOffset(hat.getOffSetY());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void onUnEquip(CosmeticUnEquipEvent event) {
|
||||
final Player player = event.getPlayer();
|
||||
if (event.getCosmeticType() == CosmeticType.HAT) {
|
||||
ArmorStandManager asm = entityTag.getArmorStandManager(player);
|
||||
if (asm != null) {
|
||||
asm.setHatOffset(0);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//TODO Lack an event
|
||||
public void onJoin(Player player) {
|
||||
|
||||
}
|
||||
}
|
||||
@@ -205,7 +205,6 @@ public class ChatBubblesManager extends EntityTag {
|
||||
@Override
|
||||
public void onJoin(Player player) {
|
||||
super.onJoin(player);
|
||||
super.createArmorStandManager(player);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -214,6 +213,10 @@ public class ChatBubblesManager extends EntityTag {
|
||||
coolDownMap.remove(player);
|
||||
}
|
||||
|
||||
public void init(Player player) {
|
||||
createArmorStandManager(player);
|
||||
}
|
||||
|
||||
private boolean isCoolDown(Player player, int lines) {
|
||||
long time = System.currentTimeMillis();
|
||||
if (time - (coolDownMap.getOrDefault(player, time - (long) coolDown * lines)) < (long) coolDown * lines) return true;
|
||||
|
||||
@@ -162,6 +162,8 @@ public class NameplateManager extends Function {
|
||||
contentMap.put(new ConditionalText(requirements, text), offset);
|
||||
}
|
||||
}
|
||||
} else if (mode == DisplayMode.TEXT_DISPLAY) {
|
||||
|
||||
} else if (mode == DisplayMode.DISABLE) {
|
||||
this.nameplateTag = new DisableNameplate(plugin);
|
||||
}
|
||||
|
||||
@@ -36,6 +36,7 @@ public class ArmorStandManager {
|
||||
private final Vector<Player> nearbyPlayers;
|
||||
private Player[] nearbyPlayerArray ;
|
||||
private final Player owner;
|
||||
private double hatOffset;
|
||||
|
||||
public ArmorStandManager(Player owner) {
|
||||
this.owner = owner;
|
||||
@@ -170,4 +171,13 @@ public class ArmorStandManager {
|
||||
fakeArmorStand.teleport();
|
||||
}
|
||||
}
|
||||
|
||||
public double getHatOffset() {
|
||||
return hatOffset;
|
||||
}
|
||||
|
||||
public void setHatOffset(double hatOffset) {
|
||||
this.hatOffset = hatOffset;
|
||||
teleport();
|
||||
}
|
||||
}
|
||||
@@ -204,6 +204,7 @@ public class FakeArmorStand {
|
||||
else y += 1.8;
|
||||
}
|
||||
else y += 0.2;
|
||||
y += asm.getHatOffset();
|
||||
return new Location(null, x, y, z);
|
||||
}
|
||||
|
||||
|
||||
@@ -20,5 +20,6 @@ package net.momirealms.customnameplates.object.nameplate.mode;
|
||||
public enum DisplayMode {
|
||||
TEAM,
|
||||
ARMOR_STAND,
|
||||
TEXT_DISPLAY,
|
||||
DISABLE
|
||||
}
|
||||
|
||||
@@ -19,6 +19,7 @@ package net.momirealms.customnameplates.object.nameplate.mode;
|
||||
|
||||
import net.momirealms.customnameplates.CustomNameplates;
|
||||
import net.momirealms.customnameplates.listener.EntityTagListener;
|
||||
import net.momirealms.customnameplates.listener.compatibility.MagicCosmeticsListener;
|
||||
import net.momirealms.customnameplates.object.armorstand.ArmorStandManager;
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.GameMode;
|
||||
@@ -34,10 +35,14 @@ public abstract class EntityTag extends AbstractNameplateTag {
|
||||
|
||||
protected EntityTagListener entityTagListener;
|
||||
protected PacketsHandler handler;
|
||||
protected MagicCosmeticsListener magicCosmeticsListener;
|
||||
|
||||
protected EntityTag(CustomNameplates plugin) {
|
||||
super(plugin);
|
||||
this.entityTagListener = new EntityTagListener(this);
|
||||
if (Bukkit.getPluginManager().getPlugin("MagicCosmetics") != null) {
|
||||
this.magicCosmeticsListener = new MagicCosmeticsListener(this);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -45,6 +50,7 @@ public abstract class EntityTag extends AbstractNameplateTag {
|
||||
super.load();
|
||||
handler.load();
|
||||
Bukkit.getPluginManager().registerEvents(entityTagListener, CustomNameplates.getInstance());
|
||||
if (magicCosmeticsListener != null) Bukkit.getPluginManager().registerEvents(magicCosmeticsListener, CustomNameplates.getInstance());
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -56,11 +62,13 @@ public abstract class EntityTag extends AbstractNameplateTag {
|
||||
}
|
||||
armorStandManagerMap.clear();
|
||||
HandlerList.unregisterAll(entityTagListener);
|
||||
if (magicCosmeticsListener != null) HandlerList.unregisterAll(magicCosmeticsListener);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onJoin(Player player) {
|
||||
handler.onJoin(player);
|
||||
init(player);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -72,6 +80,10 @@ public abstract class EntityTag extends AbstractNameplateTag {
|
||||
}
|
||||
}
|
||||
|
||||
public void init(Player player) {
|
||||
|
||||
}
|
||||
|
||||
public ArmorStandManager createArmorStandManager(Player player) {
|
||||
ArmorStandManager asm = new ArmorStandManager(player);
|
||||
armorStandManagerMap.put(player, asm);
|
||||
|
||||
@@ -56,14 +56,17 @@ public class ArmorStandTag extends EntityTag {
|
||||
@Override
|
||||
public void onJoin(Player player) {
|
||||
super.onJoin(player);
|
||||
ArmorStandManager asm = createArmorStandManager(player);
|
||||
asm.initNameplateArmorStands();
|
||||
for (Player viewer : Bukkit.getOnlinePlayers()) {
|
||||
spawnArmorStands(viewer, player);
|
||||
spawnArmorStands(player, viewer);
|
||||
}
|
||||
}
|
||||
|
||||
public void init(Player player) {
|
||||
ArmorStandManager asm = createArmorStandManager(player);
|
||||
asm.initNameplateArmorStands();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void loadToAllPlayers() {
|
||||
super.loadToAllPlayers();
|
||||
|
||||
@@ -11,6 +11,7 @@ softdepend:
|
||||
- TAB
|
||||
- Oraxen
|
||||
- TrChat
|
||||
- MagicCosmetics
|
||||
commands:
|
||||
customnameplates:
|
||||
usage: /customnameplates
|
||||
|
||||
Reference in New Issue
Block a user