mirror of
https://github.com/Winds-Studio/Leaf.git
synced 2026-01-06 15:51:31 +00:00
34 lines
1.9 KiB
Diff
34 lines
1.9 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Martijn Muijsers <martijnmuijsers@live.nl>
|
|
Date: Sun, 25 Dec 2022 23:14:40 +0100
|
|
Subject: [PATCH] Do not place player in world if kicked before being spawned
|
|
in
|
|
|
|
License: GPL-3.0 (https://www.gnu.org/licenses/gpl-3.0.html)
|
|
Gale - https://galemc.org
|
|
|
|
This patch is based on the following patch:
|
|
"Check if player is still connected after PlayerSpawnLocationEvent"
|
|
By: PureGero <puregero@gmail.com>
|
|
As part of: MultiPaper (https://github.com/MultiPaper/MultiPaper)
|
|
Licensed under: GPL-3.0 (https://www.gnu.org/licenses/gpl-3.0.html)
|
|
|
|
diff --git a/net/minecraft/server/players/PlayerList.java b/net/minecraft/server/players/PlayerList.java
|
|
index 366d476730923c70f6734e12b21ba3d7f9750643..adc430c3f36bda2d77b76ae7735ce4fe12e33974 100644
|
|
--- a/net/minecraft/server/players/PlayerList.java
|
|
+++ b/net/minecraft/server/players/PlayerList.java
|
|
@@ -236,6 +236,13 @@ public abstract class PlayerList {
|
|
org.spigotmc.event.player.PlayerSpawnLocationEvent ev = new org.spigotmc.event.player.PlayerSpawnLocationEvent(spawnPlayer, spawnPlayer.getLocation());
|
|
this.cserver.getPluginManager().callEvent(ev);
|
|
|
|
+ // Gale start - MultiPaper - do not place player in world if kicked before being spawned in
|
|
+ if (!connection.isConnected() || player.quitReason != null) {
|
|
+ /*pendingPlayers.remove(player.getUUID(), player);*/ // Gale - MultiPaper - do not place player in world if kicked before being spawned in - this patch was removed from Paper but might be useful later
|
|
+ return;
|
|
+ }
|
|
+ // Gale end - MultiPaper - do not place player in world if kicked before being spawned in
|
|
+
|
|
org.bukkit.Location loc = ev.getSpawnLocation();
|
|
serverLevel = ((org.bukkit.craftbukkit.CraftWorld) loc.getWorld()).getHandle();
|
|
|