|
20 | 20 | import com.velocitypowered.api.plugin.annotation.DataDirectory; |
21 | 21 | import com.velocitypowered.api.proxy.Player; |
22 | 22 | import com.velocitypowered.api.proxy.ProxyServer; |
| 23 | +import com.velocitypowered.api.proxy.ServerConnection; |
23 | 24 | import com.velocitypowered.api.proxy.server.RegisteredServer; |
24 | 25 | import com.velocitypowered.api.proxy.server.ServerInfo; |
25 | 26 | import com.velocitypowered.api.proxy.server.ServerPing; |
|
58 | 59 | import java.lang.reflect.InvocationTargetException; |
59 | 60 | import java.net.InetSocketAddress; |
60 | 61 | import java.nio.file.Path; |
| 62 | +import java.time.Duration; |
61 | 63 | import java.util.List; |
62 | 64 | import java.util.Set; |
63 | 65 | import java.util.concurrent.CompletableFuture; |
@@ -144,20 +146,18 @@ public void onProxyInitialization(ProxyInitializeEvent event) { |
144 | 146 | PresencePublisher.publish(serverConnectedEvent.getPlayer(), true, newServer, type != null ? type.name() : null); |
145 | 147 | })); |
146 | 148 |
|
147 | | - // Heartbeat to refresh presence in case events are missed |
148 | | - MinecraftServer.getSchedulerManager().buildTask(() -> { |
149 | | - server.getAllPlayers().forEach(p -> { |
150 | | - var current = p.getCurrentServer(); |
| 149 | + server.getScheduler().buildTask(SkyBlockVelocity.getPlugin(), () -> { |
| 150 | + server.getAllPlayers().forEach(player -> { |
| 151 | + var current = player.getCurrentServer(); |
151 | 152 | var type = current.map(conn -> GameManager.getTypeFromRegisteredServer(conn.getServer())).orElse(null); |
152 | | - PresencePublisher.publish(p, true, current.map(ServerConnection::getServer).orElse(null), |
| 153 | + PresencePublisher.publish(player, true, current.map(ServerConnection::getServer).orElse(null), |
153 | 154 | type != null ? type.name() : null); |
154 | 155 | }); |
155 | | - }).delay(TaskSchedule.seconds(5)).repeat(TaskSchedule.seconds(10)).schedule(); |
| 156 | + }).repeat(Duration.ofSeconds(10)).schedule(); |
156 | 157 |
|
157 | 158 | /** |
158 | 159 | * Register commands |
159 | 160 | */ |
160 | | - |
161 | 161 | CommandManager commandManager = proxy.getCommandManager(); |
162 | 162 | CommandMeta statusCommandMeta = commandManager.metaBuilder("serverstatus") |
163 | 163 | .aliases("status") |
|
0 commit comments