Bungeecord join issues solved
Fixed return-server not working
This commit is contained in:
parent
4aa5c1e5ae
commit
533df11984
@ -14,6 +14,7 @@ repositories {
|
|||||||
dependencies {
|
dependencies {
|
||||||
implementation 'com.github.waxeria:Minestom:e0427a36f3'
|
implementation 'com.github.waxeria:Minestom:e0427a36f3'
|
||||||
implementation 'org.jctools:jctools-core:4.0.1'
|
implementation 'org.jctools:jctools-core:4.0.1'
|
||||||
|
implementation 'com.google.guava:guava:31.0.1-jre'
|
||||||
}
|
}
|
||||||
|
|
||||||
tasks {
|
tasks {
|
||||||
|
@ -76,14 +76,15 @@ public class Main {
|
|||||||
final MuseumPlayer player = (MuseumPlayer) event.getPlayer();
|
final MuseumPlayer player = (MuseumPlayer) event.getPlayer();
|
||||||
final VoidWorld voidWorld = new VoidWorld();
|
final VoidWorld voidWorld = new VoidWorld();
|
||||||
|
|
||||||
player.setPermissionLevel(4);
|
|
||||||
player.setRespawnPoint(voidWorld.getSpawn());
|
|
||||||
player.setGameMode(GameMode.SPECTATOR);
|
|
||||||
player.setAllowFlying(true);
|
|
||||||
SkinCache.setSkin(player);
|
|
||||||
|
|
||||||
event.setSpawningInstance(voidWorld);
|
event.setSpawningInstance(voidWorld);
|
||||||
MinecraftServer.getSchedulerManager().scheduleNextTick(() -> voidWorld.movePlayer(player));
|
MinecraftServer.getSchedulerManager().scheduleNextTick(() -> {
|
||||||
|
player.setPermissionLevel(4);
|
||||||
|
player.setRespawnPoint(voidWorld.getSpawn());
|
||||||
|
player.setGameMode(GameMode.SPECTATOR);
|
||||||
|
player.setAllowFlying(true);
|
||||||
|
SkinCache.setSkin(player);
|
||||||
|
voidWorld.movePlayer(player);
|
||||||
|
});
|
||||||
|
|
||||||
System.out.println("[Join] Player " + player.getUsername() +" joined the server.");
|
System.out.println("[Join] Player " + player.getUsername() +" joined the server.");
|
||||||
});
|
});
|
||||||
|
@ -1,22 +1,16 @@
|
|||||||
package eu.mhsl.craftattack.worldmuseum.util;
|
package eu.mhsl.craftattack.worldmuseum.util;
|
||||||
|
|
||||||
|
import com.google.common.io.ByteArrayDataOutput;
|
||||||
|
import com.google.common.io.ByteStreams;
|
||||||
import net.minestom.server.entity.Player;
|
import net.minestom.server.entity.Player;
|
||||||
import net.minestom.server.network.packet.server.play.PluginMessagePacket;
|
import net.minestom.server.network.packet.server.play.PluginMessagePacket;
|
||||||
|
|
||||||
import java.io.ByteArrayOutputStream;
|
|
||||||
import java.io.IOException;
|
|
||||||
import java.nio.charset.StandardCharsets;
|
|
||||||
|
|
||||||
public class BunggeCordComunicator {
|
public class BunggeCordComunicator {
|
||||||
private static final String bungeeTargetSelector = "BungeeCord";
|
private static final String bungeeTargetSelector = "bungeecord:main";
|
||||||
public static void connect(Player p, String bungeeServerTargetName) {
|
public static void connect(Player p, String bungeeServerTargetName) {
|
||||||
try {
|
ByteArrayDataOutput out = ByteStreams.newDataOutput();
|
||||||
ByteArrayOutputStream out = new ByteArrayOutputStream();
|
out.writeUTF("Connect");
|
||||||
out.write("Connect".getBytes(StandardCharsets.UTF_8));
|
out.writeUTF(bungeeServerTargetName);
|
||||||
out.write(bungeeServerTargetName.getBytes(StandardCharsets.UTF_8));
|
p.sendPacket(new PluginMessagePacket(bungeeTargetSelector, out.toByteArray()));
|
||||||
p.sendPacket(new PluginMessagePacket(bungeeTargetSelector, out.toByteArray()));
|
|
||||||
} catch (IOException e) {
|
|
||||||
throw new RuntimeException(e);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user