Minestom/src/main/java/fr/themode/minestom/Viewable.java

32 lines
785 B
Java
Raw Normal View History

2019-08-19 17:04:19 +02:00
package fr.themode.minestom;
import fr.themode.minestom.entity.Player;
2019-08-21 16:50:52 +02:00
import fr.themode.minestom.net.packet.server.ServerPacket;
2019-08-19 17:04:19 +02:00
import java.util.Set;
public interface Viewable {
void addViewer(Player player);
void removeViewer(Player player);
Set<Player> getViewers();
default boolean isViewer(Player player) {
return getViewers().contains(player);
}
2019-08-21 16:50:52 +02:00
default void sendPacketToViewers(ServerPacket packet) {
getViewers().forEach(player -> player.getPlayerConnection().sendPacket(packet));
}
default void sendPacketsToViewers(ServerPacket... packets) {
getViewers().forEach(player -> {
for (ServerPacket packet : packets)
player.getPlayerConnection().sendPacket(packet);
});
}
2019-08-19 17:04:19 +02:00
}