actionbar

This commit is contained in:
ajgeiss0702
2021-08-16 14:27:00 -07:00
parent 3bcbd32803
commit f2e6cc1b9b
7 changed files with 133 additions and 5 deletions
@@ -2,11 +2,16 @@ package us.ajg0702.queue.platforms.bungeecord;
import net.kyori.adventure.platform.bungeecord.BungeeAudiences;
import net.kyori.adventure.text.Component;
import net.kyori.adventure.text.format.NamedTextColor;
import net.kyori.adventure.text.serializer.bungeecord.BungeeComponentSerializer;
import net.kyori.adventure.title.Title;
import net.md_5.bungee.api.chat.BaseComponent;
import net.md_5.bungee.api.chat.TextComponent;
import net.md_5.bungee.api.connection.ProxiedPlayer;
import net.md_5.bungee.api.event.*;
import net.md_5.bungee.api.plugin.Listener;
import net.md_5.bungee.api.plugin.Plugin;
import net.md_5.bungee.chat.BaseComponentSerializer;
import net.md_5.bungee.event.EventHandler;
import org.bstats.bungeecord.Metrics;
import org.bstats.charts.SimplePie;
@@ -1,8 +1,13 @@
package us.ajg0702.queue.platforms.bungeecord.players;
import net.kyori.adventure.audience.Audience;
import net.kyori.adventure.bossbar.BossBar;
import net.kyori.adventure.sound.Sound;
import net.kyori.adventure.sound.SoundStop;
import net.kyori.adventure.text.Component;
import net.kyori.adventure.text.ComponentLike;
import net.kyori.adventure.text.serializer.plain.PlainTextComponentSerializer;
import net.kyori.adventure.title.Title;
import net.md_5.bungee.api.connection.ProxiedPlayer;
import org.jetbrains.annotations.NotNull;
import us.ajg0702.queue.api.players.AdaptedPlayer;
@@ -15,6 +20,61 @@ import java.util.List;
import java.util.UUID;
public class BungeePlayer implements AdaptedPlayer, Audience {
@Override
public void sendActionBar(@NotNull ComponentLike message) {
getAudience().sendActionBar(message);
}
@Override
public void showTitle(@NotNull Title title) {
System.out.println("title!");
getAudience().showTitle(title);
}
@Override
public void clearTitle() {
getAudience().clearTitle();
}
@Override
public void resetTitle() {
getAudience().resetTitle();
}
@Override
public void showBossBar(@NotNull BossBar bar) {
getAudience().showBossBar(bar);
}
@Override
public void hideBossBar(@NotNull BossBar bar) {
getAudience().hideBossBar(bar);
}
@Override
public void playSound(@NotNull Sound sound) {
getAudience().playSound(sound);
}
@Override
public void playSound(@NotNull Sound sound, double x, double y, double z) {
getAudience().playSound(sound, x, y, z);
}
@Override
public void stopSound(@NotNull Sound sound) {
getAudience().stopSound(sound);
}
@Override
public void playSound(@NotNull Sound sound, Sound.@NotNull Emitter emitter) {
getAudience().playSound(sound, emitter);
}
@Override
public void stopSound(@NotNull SoundStop stop) {
getAudience().stopSound(stop);
}
final ProxiedPlayer handle;
@@ -30,19 +90,19 @@ public class BungeePlayer implements AdaptedPlayer, Audience {
@Override
public void sendMessage(@NotNull Component message) {
if(PlainTextComponentSerializer.plainText().serialize(message).isEmpty()) return;
BungeeQueue.adventure().player(handle).sendMessage(message);
getAudience().sendMessage(message);
}
@Override
public void sendActionBar(@NotNull Component message) {
if(PlainTextComponentSerializer.plainText().serialize(message).isEmpty()) return;
BungeeQueue.adventure().player(handle).sendActionBar(message);
getAudience().sendActionBar(message);
}
@Override
public void sendMessage(String message) {
if(message.isEmpty()) return;
BungeeQueue.adventure().player(handle).sendMessage(Component.text(message));
getAudience().sendMessage(Component.text(message));
}
@Override
@@ -79,4 +139,8 @@ public class BungeePlayer implements AdaptedPlayer, Audience {
public ProxiedPlayer getHandle() {
return handle;
}
private Audience getAudience() {
return BungeeQueue.adventure().player(handle);
}
}