47 lines
981 B
Java
47 lines
981 B
Java
package dev.plex.player;
|
|
|
|
import com.google.gson.*;
|
|
import net.kyori.adventure.text.Component;
|
|
import net.kyori.adventure.text.minimessage.MiniMessage;
|
|
|
|
import java.lang.reflect.Type;
|
|
import java.util.UUID;
|
|
|
|
public interface ISunburstPlayer
|
|
{
|
|
UUID uniqueId();
|
|
|
|
String username();
|
|
|
|
String ip();
|
|
|
|
Component displayName();
|
|
|
|
boolean godMode();
|
|
|
|
boolean muted();
|
|
|
|
boolean teleportToggled();
|
|
|
|
boolean afk();
|
|
|
|
boolean socialSpy();
|
|
|
|
void displayName(Component displayName);
|
|
|
|
void godMode(boolean godMode);
|
|
|
|
void muted(boolean muted);
|
|
|
|
void teleportToggled(boolean toggle);
|
|
|
|
void afk(boolean afk);
|
|
|
|
void socialSpy(boolean socialSpy);
|
|
|
|
default String toJSON()
|
|
{
|
|
return new GsonBuilder().setPrettyPrinting().registerTypeAdapter(Component.class, (JsonSerializer<Component>) (src, typeOfSrc, context) -> new JsonPrimitive(MiniMessage.miniMessage().serialize(src))).disableHtmlEscaping().create().toJson(this);
|
|
}
|
|
}
|