mirror of
https://github.com/GeyserMC/Floodgate.git
synced 2025-12-20 07:19:26 +00:00
Added getPlayers and getPlayerCount to the API
This commit is contained in:
@@ -25,6 +25,7 @@
|
|||||||
|
|
||||||
package org.geysermc.floodgate.api;
|
package org.geysermc.floodgate.api;
|
||||||
|
|
||||||
|
import java.util.Collection;
|
||||||
import java.util.UUID;
|
import java.util.UUID;
|
||||||
import org.geysermc.cumulus.Form;
|
import org.geysermc.cumulus.Form;
|
||||||
import org.geysermc.cumulus.util.FormBuilder;
|
import org.geysermc.cumulus.util.FormBuilder;
|
||||||
@@ -39,6 +40,16 @@ public interface FloodgateApi {
|
|||||||
return InstanceHolder.getApi();
|
return InstanceHolder.getApi();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns all the online Floodgate players.
|
||||||
|
*/
|
||||||
|
Collection<FloodgatePlayer> getPlayers();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns the number of Floodgate players who are currently online.
|
||||||
|
*/
|
||||||
|
int getPlayerCount();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Method to determine if the given <b>online</b> player is a bedrock player
|
* Method to determine if the given <b>online</b> player is a bedrock player
|
||||||
*
|
*
|
||||||
|
|||||||
@@ -25,6 +25,8 @@
|
|||||||
|
|
||||||
package org.geysermc.floodgate.api;
|
package org.geysermc.floodgate.api;
|
||||||
|
|
||||||
|
import com.google.common.collect.ImmutableSet;
|
||||||
|
import java.util.Collection;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.UUID;
|
import java.util.UUID;
|
||||||
@@ -39,9 +41,19 @@ import org.geysermc.floodgate.util.Utils;
|
|||||||
|
|
||||||
@RequiredArgsConstructor
|
@RequiredArgsConstructor
|
||||||
public class SimpleFloodgateApi implements FloodgateApi {
|
public class SimpleFloodgateApi implements FloodgateApi {
|
||||||
public final Map<UUID, FloodgatePlayer> players = new HashMap<>();
|
private final Map<UUID, FloodgatePlayer> players = new HashMap<>();
|
||||||
private final PluginMessageHandler pluginMessageHandler;
|
private final PluginMessageHandler pluginMessageHandler;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Collection<FloodgatePlayer> getPlayers() {
|
||||||
|
return ImmutableSet.copyOf(players.values());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getPlayerCount() {
|
||||||
|
return players.size();
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean isFloodgatePlayer(UUID uuid) {
|
public boolean isFloodgatePlayer(UUID uuid) {
|
||||||
return getPlayer(uuid) != null;
|
return getPlayer(uuid) != null;
|
||||||
|
|||||||
@@ -30,7 +30,6 @@ import cloud.commandframework.CommandManager;
|
|||||||
import cloud.commandframework.context.CommandContext;
|
import cloud.commandframework.context.CommandContext;
|
||||||
import net.kyori.adventure.text.Component;
|
import net.kyori.adventure.text.Component;
|
||||||
import org.geysermc.floodgate.api.FloodgateApi;
|
import org.geysermc.floodgate.api.FloodgateApi;
|
||||||
import org.geysermc.floodgate.api.SimpleFloodgateApi;
|
|
||||||
import org.geysermc.floodgate.config.FloodgateConfig;
|
import org.geysermc.floodgate.config.FloodgateConfig;
|
||||||
import org.geysermc.floodgate.platform.command.FloodgateCommand;
|
import org.geysermc.floodgate.platform.command.FloodgateCommand;
|
||||||
import org.geysermc.floodgate.player.UserAudience;
|
import org.geysermc.floodgate.player.UserAudience;
|
||||||
@@ -47,7 +46,7 @@ public class TestCommand implements FloodgateCommand {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void execute(CommandContext<UserAudience> context) {
|
public void execute(CommandContext<UserAudience> context) {
|
||||||
int players = ((SimpleFloodgateApi) FloodgateApi.getInstance()).players.size();
|
int players = FloodgateApi.getInstance().getPlayers().size();
|
||||||
context.getSender().sendMessage(Component.text(players));
|
context.getSender().sendMessage(Component.text(players));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user