Merge remote-tracking branch 'origin/dev' into dev
This commit is contained in:
@@ -256,6 +256,14 @@ public interface QueueServer {
|
||||
*/
|
||||
void addPlayer(AdaptedServer server);
|
||||
|
||||
/**
|
||||
* Sets if this server is online.
|
||||
* Note that this is overrided by the pinger, so if you set
|
||||
* this, it will most likely be temporary
|
||||
* @param online whether the server is online or not
|
||||
*/
|
||||
void setOnline(boolean online);
|
||||
|
||||
|
||||
/**
|
||||
* elliot is bad
|
||||
|
||||
+4
@@ -45,6 +45,10 @@ public class SlashServerCommand extends BaseCommand {
|
||||
sender.sendMessage(getMessages().getComponent("errors.player-only"));
|
||||
return;
|
||||
}
|
||||
if(main.getConfig().getBoolean("require-permission") && !sender.hasPermission("ajqueue.queue."+args[0])) {
|
||||
sender.sendMessage(getMessages().getComponent("noperm"));
|
||||
return;
|
||||
}
|
||||
main.getQueueManager().addToQueue(main.getPlatformMethods().senderToPlayer(sender), server);
|
||||
}
|
||||
|
||||
|
||||
@@ -49,6 +49,9 @@ public class QueueManagerImpl implements QueueManager {
|
||||
if(previousServer != null) {
|
||||
queueServer.setPaused(previousServer.isPaused());
|
||||
queueServer.setLastSentTime(previousServer.getLastSentTime());
|
||||
queueServer.setOnline(previousServer.isOnline());
|
||||
queueServer.setWhitelisted(previousServer.isWhitelisted());
|
||||
queueServer.setWhitelistedPlayers(previousServer.getWhitelistedPlayers());
|
||||
}
|
||||
result.add(queueServer);
|
||||
}
|
||||
|
||||
@@ -468,4 +468,9 @@ public class QueueServerImpl implements QueueServer {
|
||||
if(!pings.containsKey(server)) throw new IllegalArgumentException("Server is not in this group!");
|
||||
pings.get(server).addPlayer();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setOnline(boolean online) {
|
||||
this.online = online;
|
||||
}
|
||||
}
|
||||
|
||||
+9
-1
@@ -3,6 +3,7 @@ package us.ajg0702.queue.platforms.bungeecord;
|
||||
import net.kyori.adventure.platform.bungeecord.BungeeAudiences;
|
||||
import net.kyori.adventure.text.Component;
|
||||
import net.kyori.adventure.text.serializer.bungeecord.BungeeComponentSerializer;
|
||||
import net.md_5.bungee.api.ProxyServer;
|
||||
import net.md_5.bungee.api.connection.ProxiedPlayer;
|
||||
import net.md_5.bungee.api.event.*;
|
||||
import net.md_5.bungee.api.plugin.Listener;
|
||||
@@ -30,6 +31,7 @@ import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
@SuppressWarnings("unused")
|
||||
public class BungeeQueue extends Plugin implements Listener, Implementation {
|
||||
|
||||
private QueueMain main;
|
||||
@@ -106,7 +108,13 @@ public class BungeeQueue extends Plugin implements Listener, Implementation {
|
||||
|
||||
if(!(e.getReceiver() instanceof ProxiedPlayer)) return;
|
||||
|
||||
main.getEventHandler().handleMessage(new BungeePlayer((ProxiedPlayer) e.getReceiver()), e.getData());
|
||||
ProxyServer.getInstance().getScheduler().runAsync(this, () ->
|
||||
main.getEventHandler()
|
||||
.handleMessage(
|
||||
new BungeePlayer((ProxiedPlayer) e.getReceiver()),
|
||||
e.getData()
|
||||
)
|
||||
);
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
|
||||
Reference in New Issue
Block a user