[DEV] Backport Fixes from DEV branch
- BUG - Server being pinged constantly during direct connect or lan - BUG - Single Player Nojang Server not returning null in multiplayer - FEAT - Way to check if login/logout event was sent from vanish
This commit is contained in:
2
.idea/misc.xml
generated
2
.idea/misc.xml
generated
@@ -12,7 +12,7 @@
|
|||||||
<component name="FrameworkDetectionExcludesConfiguration">
|
<component name="FrameworkDetectionExcludesConfiguration">
|
||||||
<file type="web" url="file://$PROJECT_DIR$" />
|
<file type="web" url="file://$PROJECT_DIR$" />
|
||||||
</component>
|
</component>
|
||||||
<component name="ProjectRootManager" version="2" languageLevel="JDK_21" default="true" project-jdk-name="corretto-21" project-jdk-type="JavaSDK">
|
<component name="ProjectRootManager" version="2" languageLevel="JDK_17" default="true" project-jdk-name="temurin-17" project-jdk-type="JavaSDK">
|
||||||
<output url="file://$PROJECT_DIR$/out" />
|
<output url="file://$PROJECT_DIR$/out" />
|
||||||
</component>
|
</component>
|
||||||
</project>
|
</project>
|
@@ -4,6 +4,7 @@ import com.hypherionmc.craterlib.core.event.CraterEvent;
|
|||||||
import com.hypherionmc.craterlib.nojang.world.entity.player.BridgedPlayer;
|
import com.hypherionmc.craterlib.nojang.world.entity.player.BridgedPlayer;
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
|
import lombok.Setter;
|
||||||
|
|
||||||
@RequiredArgsConstructor
|
@RequiredArgsConstructor
|
||||||
@Getter
|
@Getter
|
||||||
@@ -11,18 +12,32 @@ public class CraterPlayerEvent extends CraterEvent {
|
|||||||
|
|
||||||
private final BridgedPlayer player;
|
private final BridgedPlayer player;
|
||||||
|
|
||||||
|
@Getter
|
||||||
public static class PlayerLoggedIn extends CraterPlayerEvent {
|
public static class PlayerLoggedIn extends CraterPlayerEvent {
|
||||||
|
private final boolean isFromVanish;
|
||||||
|
|
||||||
public PlayerLoggedIn(BridgedPlayer player) {
|
public PlayerLoggedIn(BridgedPlayer player) {
|
||||||
|
this(player, false);
|
||||||
|
}
|
||||||
|
|
||||||
|
public PlayerLoggedIn(BridgedPlayer player, boolean isFromVanish) {
|
||||||
super(player);
|
super(player);
|
||||||
|
this.isFromVanish = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Getter @Setter
|
||||||
public static class PlayerLoggedOut extends CraterPlayerEvent {
|
public static class PlayerLoggedOut extends CraterPlayerEvent {
|
||||||
|
private final boolean isFromVanish;
|
||||||
|
|
||||||
public PlayerLoggedOut(BridgedPlayer player) {
|
public PlayerLoggedOut(BridgedPlayer player) {
|
||||||
|
this(player, false);
|
||||||
|
}
|
||||||
|
|
||||||
|
public PlayerLoggedOut(BridgedPlayer player, boolean isFromVanish) {
|
||||||
super(player);
|
super(player);
|
||||||
|
this.isFromVanish = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@@ -72,6 +72,9 @@ public class BridgedMinecraft {
|
|||||||
|
|
||||||
@Nullable
|
@Nullable
|
||||||
public BridgedIntegratedServer getSinglePlayerServer() {
|
public BridgedIntegratedServer getSinglePlayerServer() {
|
||||||
|
if (internal.getSingleplayerServer() == null)
|
||||||
|
return null;
|
||||||
|
|
||||||
return BridgedIntegratedServer.of(internal.getSingleplayerServer());
|
return BridgedIntegratedServer.of(internal.getSingleplayerServer());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -5,7 +5,6 @@ import lombok.RequiredArgsConstructor;
|
|||||||
import net.kyori.adventure.text.Component;
|
import net.kyori.adventure.text.Component;
|
||||||
import net.minecraft.ChatFormatting;
|
import net.minecraft.ChatFormatting;
|
||||||
import net.minecraft.client.multiplayer.ServerData;
|
import net.minecraft.client.multiplayer.ServerData;
|
||||||
import net.minecraft.client.multiplayer.ServerStatusPinger;
|
|
||||||
|
|
||||||
@RequiredArgsConstructor(staticName = "of")
|
@RequiredArgsConstructor(staticName = "of")
|
||||||
public class BridgedServerData {
|
public class BridgedServerData {
|
||||||
@@ -26,9 +25,7 @@ public class BridgedServerData {
|
|||||||
|
|
||||||
public int getMaxPlayers() {
|
public int getMaxPlayers() {
|
||||||
if (!internal.pinged || internal.status.getString() == null) {
|
if (!internal.pinged || internal.status.getString() == null) {
|
||||||
try {
|
return internal.playerList.size() + 1;
|
||||||
new ServerStatusPinger().pingServer(internal, () -> {});
|
|
||||||
} catch (Exception ignored) {}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
try {
|
try {
|
||||||
|
@@ -12,9 +12,9 @@ public class Vanish {
|
|||||||
public static void register() {
|
public static void register() {
|
||||||
VanishEvents.VANISH_EVENT.register((serverPlayer, b) -> {
|
VanishEvents.VANISH_EVENT.register((serverPlayer, b) -> {
|
||||||
if (b) {
|
if (b) {
|
||||||
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedOut(BridgedPlayer.of(serverPlayer)));
|
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedOut(BridgedPlayer.of(serverPlayer), true));
|
||||||
} else {
|
} else {
|
||||||
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedIn(BridgedPlayer.of(serverPlayer)));
|
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedIn(BridgedPlayer.of(serverPlayer), true));
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@@ -17,9 +17,9 @@ public class Vanish {
|
|||||||
public void vanishevent(PlayerVanishEvent event) {
|
public void vanishevent(PlayerVanishEvent event) {
|
||||||
if (event.getEntity() instanceof Player p) {
|
if (event.getEntity() instanceof Player p) {
|
||||||
if (event.isVanished()) {
|
if (event.isVanished()) {
|
||||||
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedOut(BridgedPlayer.of(p)));
|
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedOut(BridgedPlayer.of(p), true));
|
||||||
} else {
|
} else {
|
||||||
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedIn(BridgedPlayer.of(p)));
|
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedIn(BridgedPlayer.of(p), true));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -4,6 +4,7 @@ import com.hypherionmc.craterlib.core.event.CraterEvent;
|
|||||||
import com.hypherionmc.craterlib.nojang.world.entity.player.BridgedPlayer;
|
import com.hypherionmc.craterlib.nojang.world.entity.player.BridgedPlayer;
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
|
import lombok.Setter;
|
||||||
|
|
||||||
@RequiredArgsConstructor
|
@RequiredArgsConstructor
|
||||||
@Getter
|
@Getter
|
||||||
@@ -11,18 +12,32 @@ public class CraterPlayerEvent extends CraterEvent {
|
|||||||
|
|
||||||
private final BridgedPlayer player;
|
private final BridgedPlayer player;
|
||||||
|
|
||||||
|
@Getter
|
||||||
public static class PlayerLoggedIn extends CraterPlayerEvent {
|
public static class PlayerLoggedIn extends CraterPlayerEvent {
|
||||||
|
private final boolean isFromVanish;
|
||||||
|
|
||||||
public PlayerLoggedIn(BridgedPlayer player) {
|
public PlayerLoggedIn(BridgedPlayer player) {
|
||||||
|
this(player, false);
|
||||||
|
}
|
||||||
|
|
||||||
|
public PlayerLoggedIn(BridgedPlayer player, boolean isFromVanish) {
|
||||||
super(player);
|
super(player);
|
||||||
|
this.isFromVanish = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Getter @Setter
|
||||||
public static class PlayerLoggedOut extends CraterPlayerEvent {
|
public static class PlayerLoggedOut extends CraterPlayerEvent {
|
||||||
|
private final boolean isFromVanish;
|
||||||
|
|
||||||
public PlayerLoggedOut(BridgedPlayer player) {
|
public PlayerLoggedOut(BridgedPlayer player) {
|
||||||
|
this(player, false);
|
||||||
|
}
|
||||||
|
|
||||||
|
public PlayerLoggedOut(BridgedPlayer player, boolean isFromVanish) {
|
||||||
super(player);
|
super(player);
|
||||||
|
this.isFromVanish = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@@ -72,6 +72,9 @@ public class BridgedMinecraft {
|
|||||||
|
|
||||||
@Nullable
|
@Nullable
|
||||||
public BridgedIntegratedServer getSinglePlayerServer() {
|
public BridgedIntegratedServer getSinglePlayerServer() {
|
||||||
|
if (internal.getSingleplayerServer() == null)
|
||||||
|
return null;
|
||||||
|
|
||||||
return BridgedIntegratedServer.of(internal.getSingleplayerServer());
|
return BridgedIntegratedServer.of(internal.getSingleplayerServer());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -5,7 +5,6 @@ import lombok.RequiredArgsConstructor;
|
|||||||
import net.kyori.adventure.text.Component;
|
import net.kyori.adventure.text.Component;
|
||||||
import net.minecraft.ChatFormatting;
|
import net.minecraft.ChatFormatting;
|
||||||
import net.minecraft.client.multiplayer.ServerData;
|
import net.minecraft.client.multiplayer.ServerData;
|
||||||
import net.minecraft.client.multiplayer.ServerStatusPinger;
|
|
||||||
|
|
||||||
@RequiredArgsConstructor(staticName = "of")
|
@RequiredArgsConstructor(staticName = "of")
|
||||||
public class BridgedServerData {
|
public class BridgedServerData {
|
||||||
@@ -26,9 +25,7 @@ public class BridgedServerData {
|
|||||||
|
|
||||||
public int getMaxPlayers() {
|
public int getMaxPlayers() {
|
||||||
if (!internal.pinged || internal.status.getString() == null) {
|
if (!internal.pinged || internal.status.getString() == null) {
|
||||||
try {
|
return internal.playerList.size() + 1;
|
||||||
new ServerStatusPinger().pingServer(internal, () -> {});
|
|
||||||
} catch (Exception ignored) {}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
try {
|
try {
|
||||||
|
@@ -12,9 +12,9 @@ public class Vanish {
|
|||||||
public static void register() {
|
public static void register() {
|
||||||
VanishEvents.VANISH_EVENT.register((serverPlayer, b) -> {
|
VanishEvents.VANISH_EVENT.register((serverPlayer, b) -> {
|
||||||
if (b) {
|
if (b) {
|
||||||
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedOut(BridgedPlayer.of(serverPlayer)));
|
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedOut(BridgedPlayer.of(serverPlayer), true));
|
||||||
} else {
|
} else {
|
||||||
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedIn(BridgedPlayer.of(serverPlayer)));
|
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedIn(BridgedPlayer.of(serverPlayer), true));
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@@ -15,9 +15,9 @@ public class Vanish {
|
|||||||
@SubscribeEvent
|
@SubscribeEvent
|
||||||
public void vanishevent(PlayerVanishEvent event) {
|
public void vanishevent(PlayerVanishEvent event) {
|
||||||
if (event.isVanished()) {
|
if (event.isVanished()) {
|
||||||
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedOut(BridgedPlayer.of(event.getEntity())));
|
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedOut(BridgedPlayer.of(event.getEntity()), true));
|
||||||
} else {
|
} else {
|
||||||
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedIn(BridgedPlayer.of(event.getEntity())));
|
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedIn(BridgedPlayer.of(event.getEntity()), true));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -4,6 +4,7 @@ import com.hypherionmc.craterlib.core.event.CraterEvent;
|
|||||||
import com.hypherionmc.craterlib.nojang.world.entity.player.BridgedPlayer;
|
import com.hypherionmc.craterlib.nojang.world.entity.player.BridgedPlayer;
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
|
import lombok.Setter;
|
||||||
|
|
||||||
@RequiredArgsConstructor
|
@RequiredArgsConstructor
|
||||||
@Getter
|
@Getter
|
||||||
@@ -11,18 +12,32 @@ public class CraterPlayerEvent extends CraterEvent {
|
|||||||
|
|
||||||
private final BridgedPlayer player;
|
private final BridgedPlayer player;
|
||||||
|
|
||||||
|
@Getter
|
||||||
public static class PlayerLoggedIn extends CraterPlayerEvent {
|
public static class PlayerLoggedIn extends CraterPlayerEvent {
|
||||||
|
private final boolean isFromVanish;
|
||||||
|
|
||||||
public PlayerLoggedIn(BridgedPlayer player) {
|
public PlayerLoggedIn(BridgedPlayer player) {
|
||||||
|
this(player, false);
|
||||||
|
}
|
||||||
|
|
||||||
|
public PlayerLoggedIn(BridgedPlayer player, boolean isFromVanish) {
|
||||||
super(player);
|
super(player);
|
||||||
|
this.isFromVanish = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Getter @Setter
|
||||||
public static class PlayerLoggedOut extends CraterPlayerEvent {
|
public static class PlayerLoggedOut extends CraterPlayerEvent {
|
||||||
|
private final boolean isFromVanish;
|
||||||
|
|
||||||
public PlayerLoggedOut(BridgedPlayer player) {
|
public PlayerLoggedOut(BridgedPlayer player) {
|
||||||
|
this(player, false);
|
||||||
|
}
|
||||||
|
|
||||||
|
public PlayerLoggedOut(BridgedPlayer player, boolean isFromVanish) {
|
||||||
super(player);
|
super(player);
|
||||||
|
this.isFromVanish = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@@ -72,6 +72,9 @@ public class BridgedMinecraft {
|
|||||||
|
|
||||||
@Nullable
|
@Nullable
|
||||||
public BridgedIntegratedServer getSinglePlayerServer() {
|
public BridgedIntegratedServer getSinglePlayerServer() {
|
||||||
|
if (internal.getSingleplayerServer() == null)
|
||||||
|
return null;
|
||||||
|
|
||||||
return BridgedIntegratedServer.of(internal.getSingleplayerServer());
|
return BridgedIntegratedServer.of(internal.getSingleplayerServer());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -5,7 +5,6 @@ import lombok.RequiredArgsConstructor;
|
|||||||
import net.kyori.adventure.text.Component;
|
import net.kyori.adventure.text.Component;
|
||||||
import net.minecraft.ChatFormatting;
|
import net.minecraft.ChatFormatting;
|
||||||
import net.minecraft.client.multiplayer.ServerData;
|
import net.minecraft.client.multiplayer.ServerData;
|
||||||
import net.minecraft.client.multiplayer.ServerStatusPinger;
|
|
||||||
|
|
||||||
@RequiredArgsConstructor(staticName = "of")
|
@RequiredArgsConstructor(staticName = "of")
|
||||||
public class BridgedServerData {
|
public class BridgedServerData {
|
||||||
@@ -26,9 +25,7 @@ public class BridgedServerData {
|
|||||||
|
|
||||||
public int getMaxPlayers() {
|
public int getMaxPlayers() {
|
||||||
if (!internal.pinged || internal.status.getString() == null) {
|
if (!internal.pinged || internal.status.getString() == null) {
|
||||||
try {
|
return internal.playerList.size() + 1;
|
||||||
new ServerStatusPinger().pingServer(internal, () -> {});
|
|
||||||
} catch (Exception ignored) {}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
try {
|
try {
|
||||||
|
@@ -12,9 +12,9 @@ public class Vanish {
|
|||||||
public static void register() {
|
public static void register() {
|
||||||
VanishEvents.VANISH_EVENT.register((serverPlayer, b) -> {
|
VanishEvents.VANISH_EVENT.register((serverPlayer, b) -> {
|
||||||
if (b) {
|
if (b) {
|
||||||
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedOut(BridgedPlayer.of(serverPlayer)));
|
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedOut(BridgedPlayer.of(serverPlayer), true));
|
||||||
} else {
|
} else {
|
||||||
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedIn(BridgedPlayer.of(serverPlayer)));
|
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedIn(BridgedPlayer.of(serverPlayer), true));
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@@ -15,9 +15,9 @@ public class Vanish {
|
|||||||
@SubscribeEvent
|
@SubscribeEvent
|
||||||
public void vanishevent(PlayerVanishEvent event) {
|
public void vanishevent(PlayerVanishEvent event) {
|
||||||
if (event.isVanished()) {
|
if (event.isVanished()) {
|
||||||
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedOut(BridgedPlayer.of(event.getEntity())));
|
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedOut(BridgedPlayer.of(event.getEntity()), true));
|
||||||
} else {
|
} else {
|
||||||
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedIn(BridgedPlayer.of(event.getEntity())));
|
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedIn(BridgedPlayer.of(event.getEntity()), true));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -4,6 +4,7 @@ import com.hypherionmc.craterlib.core.event.CraterEvent;
|
|||||||
import com.hypherionmc.craterlib.nojang.world.entity.player.BridgedPlayer;
|
import com.hypherionmc.craterlib.nojang.world.entity.player.BridgedPlayer;
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
|
import lombok.Setter;
|
||||||
|
|
||||||
@RequiredArgsConstructor
|
@RequiredArgsConstructor
|
||||||
@Getter
|
@Getter
|
||||||
@@ -11,18 +12,32 @@ public class CraterPlayerEvent extends CraterEvent {
|
|||||||
|
|
||||||
private final BridgedPlayer player;
|
private final BridgedPlayer player;
|
||||||
|
|
||||||
|
@Getter
|
||||||
public static class PlayerLoggedIn extends CraterPlayerEvent {
|
public static class PlayerLoggedIn extends CraterPlayerEvent {
|
||||||
|
private final boolean isFromVanish;
|
||||||
|
|
||||||
public PlayerLoggedIn(BridgedPlayer player) {
|
public PlayerLoggedIn(BridgedPlayer player) {
|
||||||
|
this(player, false);
|
||||||
|
}
|
||||||
|
|
||||||
|
public PlayerLoggedIn(BridgedPlayer player, boolean isFromVanish) {
|
||||||
super(player);
|
super(player);
|
||||||
|
this.isFromVanish = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Getter @Setter
|
||||||
public static class PlayerLoggedOut extends CraterPlayerEvent {
|
public static class PlayerLoggedOut extends CraterPlayerEvent {
|
||||||
|
private final boolean isFromVanish;
|
||||||
|
|
||||||
public PlayerLoggedOut(BridgedPlayer player) {
|
public PlayerLoggedOut(BridgedPlayer player) {
|
||||||
|
this(player, false);
|
||||||
|
}
|
||||||
|
|
||||||
|
public PlayerLoggedOut(BridgedPlayer player, boolean isFromVanish) {
|
||||||
super(player);
|
super(player);
|
||||||
|
this.isFromVanish = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@@ -72,6 +72,9 @@ public class BridgedMinecraft {
|
|||||||
|
|
||||||
@Nullable
|
@Nullable
|
||||||
public BridgedIntegratedServer getSinglePlayerServer() {
|
public BridgedIntegratedServer getSinglePlayerServer() {
|
||||||
|
if (internal.getSingleplayerServer() == null)
|
||||||
|
return null;
|
||||||
|
|
||||||
return BridgedIntegratedServer.of(internal.getSingleplayerServer());
|
return BridgedIntegratedServer.of(internal.getSingleplayerServer());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -4,7 +4,6 @@ import com.hypherionmc.craterlib.utils.ChatUtils;
|
|||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import net.kyori.adventure.text.Component;
|
import net.kyori.adventure.text.Component;
|
||||||
import net.minecraft.client.multiplayer.ServerData;
|
import net.minecraft.client.multiplayer.ServerData;
|
||||||
import net.minecraft.client.multiplayer.ServerStatusPinger;
|
|
||||||
|
|
||||||
@RequiredArgsConstructor(staticName = "of")
|
@RequiredArgsConstructor(staticName = "of")
|
||||||
public class BridgedServerData {
|
public class BridgedServerData {
|
||||||
@@ -25,12 +24,10 @@ public class BridgedServerData {
|
|||||||
|
|
||||||
public int getMaxPlayers() {
|
public int getMaxPlayers() {
|
||||||
if (!internal.pinged || internal.players == null) {
|
if (!internal.pinged || internal.players == null) {
|
||||||
try {
|
return internal.playerList.size() + 1;
|
||||||
new ServerStatusPinger().pingServer(internal, () -> {});
|
|
||||||
} catch (Exception ignored) {}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return internal.players == null ? 0 : internal.players.max();
|
return internal.players.max();
|
||||||
}
|
}
|
||||||
|
|
||||||
public ServerData toMojang() {
|
public ServerData toMojang() {
|
||||||
|
@@ -12,9 +12,9 @@ public class Vanish {
|
|||||||
public static void register() {
|
public static void register() {
|
||||||
VanishEvents.VANISH_EVENT.register((serverPlayer, b) -> {
|
VanishEvents.VANISH_EVENT.register((serverPlayer, b) -> {
|
||||||
if (b) {
|
if (b) {
|
||||||
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedOut(BridgedPlayer.of(serverPlayer)));
|
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedOut(BridgedPlayer.of(serverPlayer), true));
|
||||||
} else {
|
} else {
|
||||||
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedIn(BridgedPlayer.of(serverPlayer)));
|
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedIn(BridgedPlayer.of(serverPlayer), true));
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@@ -15,9 +15,9 @@ public class Vanish {
|
|||||||
@SubscribeEvent
|
@SubscribeEvent
|
||||||
public void vanishevent(PlayerVanishEvent event) {
|
public void vanishevent(PlayerVanishEvent event) {
|
||||||
if (event.isVanished()) {
|
if (event.isVanished()) {
|
||||||
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedOut(BridgedPlayer.of(event.getEntity())));
|
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedOut(BridgedPlayer.of(event.getEntity()), true));
|
||||||
} else {
|
} else {
|
||||||
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedIn(BridgedPlayer.of(event.getEntity())));
|
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedIn(BridgedPlayer.of(event.getEntity()), true));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -4,6 +4,7 @@ import com.hypherionmc.craterlib.core.event.CraterEvent;
|
|||||||
import com.hypherionmc.craterlib.nojang.world.entity.player.BridgedPlayer;
|
import com.hypherionmc.craterlib.nojang.world.entity.player.BridgedPlayer;
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
|
import lombok.Setter;
|
||||||
|
|
||||||
@RequiredArgsConstructor
|
@RequiredArgsConstructor
|
||||||
@Getter
|
@Getter
|
||||||
@@ -11,18 +12,32 @@ public class CraterPlayerEvent extends CraterEvent {
|
|||||||
|
|
||||||
private final BridgedPlayer player;
|
private final BridgedPlayer player;
|
||||||
|
|
||||||
|
@Getter
|
||||||
public static class PlayerLoggedIn extends CraterPlayerEvent {
|
public static class PlayerLoggedIn extends CraterPlayerEvent {
|
||||||
|
private final boolean isFromVanish;
|
||||||
|
|
||||||
public PlayerLoggedIn(BridgedPlayer player) {
|
public PlayerLoggedIn(BridgedPlayer player) {
|
||||||
|
this(player, false);
|
||||||
|
}
|
||||||
|
|
||||||
|
public PlayerLoggedIn(BridgedPlayer player, boolean isFromVanish) {
|
||||||
super(player);
|
super(player);
|
||||||
|
this.isFromVanish = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Getter @Setter
|
||||||
public static class PlayerLoggedOut extends CraterPlayerEvent {
|
public static class PlayerLoggedOut extends CraterPlayerEvent {
|
||||||
|
private final boolean isFromVanish;
|
||||||
|
|
||||||
public PlayerLoggedOut(BridgedPlayer player) {
|
public PlayerLoggedOut(BridgedPlayer player) {
|
||||||
|
this(player, false);
|
||||||
|
}
|
||||||
|
|
||||||
|
public PlayerLoggedOut(BridgedPlayer player, boolean isFromVanish) {
|
||||||
super(player);
|
super(player);
|
||||||
|
this.isFromVanish = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@@ -72,6 +72,9 @@ public class BridgedMinecraft {
|
|||||||
|
|
||||||
@Nullable
|
@Nullable
|
||||||
public BridgedIntegratedServer getSinglePlayerServer() {
|
public BridgedIntegratedServer getSinglePlayerServer() {
|
||||||
|
if (internal.getSingleplayerServer() == null)
|
||||||
|
return null;
|
||||||
|
|
||||||
return BridgedIntegratedServer.of(internal.getSingleplayerServer());
|
return BridgedIntegratedServer.of(internal.getSingleplayerServer());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -4,7 +4,6 @@ import com.hypherionmc.craterlib.utils.ChatUtils;
|
|||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import net.kyori.adventure.text.Component;
|
import net.kyori.adventure.text.Component;
|
||||||
import net.minecraft.client.multiplayer.ServerData;
|
import net.minecraft.client.multiplayer.ServerData;
|
||||||
import net.minecraft.client.multiplayer.ServerStatusPinger;
|
|
||||||
|
|
||||||
@RequiredArgsConstructor(staticName = "of")
|
@RequiredArgsConstructor(staticName = "of")
|
||||||
public class BridgedServerData {
|
public class BridgedServerData {
|
||||||
@@ -25,12 +24,10 @@ public class BridgedServerData {
|
|||||||
|
|
||||||
public int getMaxPlayers() {
|
public int getMaxPlayers() {
|
||||||
if (!internal.pinged || internal.players == null) {
|
if (!internal.pinged || internal.players == null) {
|
||||||
try {
|
return internal.playerList.size() + 1;
|
||||||
new ServerStatusPinger().pingServer(internal, () -> {});
|
|
||||||
} catch (Exception ignored) {}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return internal.players == null ? 0 : internal.players.max();
|
return internal.players.max();
|
||||||
}
|
}
|
||||||
|
|
||||||
public ServerData toMojang() {
|
public ServerData toMojang() {
|
||||||
|
@@ -12,9 +12,9 @@ public class Vanish {
|
|||||||
public static void register() {
|
public static void register() {
|
||||||
VanishEvents.VANISH_EVENT.register((serverPlayer, b) -> {
|
VanishEvents.VANISH_EVENT.register((serverPlayer, b) -> {
|
||||||
if (b) {
|
if (b) {
|
||||||
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedOut(BridgedPlayer.of(serverPlayer)));
|
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedOut(BridgedPlayer.of(serverPlayer), true));
|
||||||
} else {
|
} else {
|
||||||
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedIn(BridgedPlayer.of(serverPlayer)));
|
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedIn(BridgedPlayer.of(serverPlayer), true));
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@@ -15,9 +15,9 @@ public class Vanish {
|
|||||||
@SubscribeEvent
|
@SubscribeEvent
|
||||||
public void vanishevent(PlayerVanishEvent event) {
|
public void vanishevent(PlayerVanishEvent event) {
|
||||||
if (event.isVanished()) {
|
if (event.isVanished()) {
|
||||||
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedOut(BridgedPlayer.of(event.getEntity())));
|
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedOut(BridgedPlayer.of(event.getEntity()), true));
|
||||||
} else {
|
} else {
|
||||||
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedIn(BridgedPlayer.of(event.getEntity())));
|
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedIn(BridgedPlayer.of(event.getEntity()), true));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -15,9 +15,9 @@ public class Vanish {
|
|||||||
@SubscribeEvent
|
@SubscribeEvent
|
||||||
public void vanishevent(PlayerVanishEvent event) {
|
public void vanishevent(PlayerVanishEvent event) {
|
||||||
if (event.isVanished()) {
|
if (event.isVanished()) {
|
||||||
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedOut(BridgedPlayer.of(event.getEntity())));
|
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedOut(BridgedPlayer.of(event.getEntity()), true));
|
||||||
} else {
|
} else {
|
||||||
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedIn(BridgedPlayer.of(event.getEntity())));
|
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedIn(BridgedPlayer.of(event.getEntity()), true));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -4,6 +4,7 @@ import com.hypherionmc.craterlib.core.event.CraterEvent;
|
|||||||
import com.hypherionmc.craterlib.nojang.world.entity.player.BridgedPlayer;
|
import com.hypherionmc.craterlib.nojang.world.entity.player.BridgedPlayer;
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
|
import lombok.Setter;
|
||||||
|
|
||||||
@RequiredArgsConstructor
|
@RequiredArgsConstructor
|
||||||
@Getter
|
@Getter
|
||||||
@@ -11,18 +12,32 @@ public class CraterPlayerEvent extends CraterEvent {
|
|||||||
|
|
||||||
private final BridgedPlayer player;
|
private final BridgedPlayer player;
|
||||||
|
|
||||||
|
@Getter
|
||||||
public static class PlayerLoggedIn extends CraterPlayerEvent {
|
public static class PlayerLoggedIn extends CraterPlayerEvent {
|
||||||
|
private final boolean isFromVanish;
|
||||||
|
|
||||||
public PlayerLoggedIn(BridgedPlayer player) {
|
public PlayerLoggedIn(BridgedPlayer player) {
|
||||||
|
this(player, false);
|
||||||
|
}
|
||||||
|
|
||||||
|
public PlayerLoggedIn(BridgedPlayer player, boolean isFromVanish) {
|
||||||
super(player);
|
super(player);
|
||||||
|
this.isFromVanish = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Getter @Setter
|
||||||
public static class PlayerLoggedOut extends CraterPlayerEvent {
|
public static class PlayerLoggedOut extends CraterPlayerEvent {
|
||||||
|
private final boolean isFromVanish;
|
||||||
|
|
||||||
public PlayerLoggedOut(BridgedPlayer player) {
|
public PlayerLoggedOut(BridgedPlayer player) {
|
||||||
|
this(player, false);
|
||||||
|
}
|
||||||
|
|
||||||
|
public PlayerLoggedOut(BridgedPlayer player, boolean isFromVanish) {
|
||||||
super(player);
|
super(player);
|
||||||
|
this.isFromVanish = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@@ -72,6 +72,9 @@ public class BridgedMinecraft {
|
|||||||
|
|
||||||
@Nullable
|
@Nullable
|
||||||
public BridgedIntegratedServer getSinglePlayerServer() {
|
public BridgedIntegratedServer getSinglePlayerServer() {
|
||||||
|
if (internal.getSingleplayerServer() == null)
|
||||||
|
return null;
|
||||||
|
|
||||||
return BridgedIntegratedServer.of(internal.getSingleplayerServer());
|
return BridgedIntegratedServer.of(internal.getSingleplayerServer());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -4,7 +4,6 @@ import com.hypherionmc.craterlib.utils.ChatUtils;
|
|||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import net.kyori.adventure.text.Component;
|
import net.kyori.adventure.text.Component;
|
||||||
import net.minecraft.client.multiplayer.ServerData;
|
import net.minecraft.client.multiplayer.ServerData;
|
||||||
import net.minecraft.client.multiplayer.ServerStatusPinger;
|
|
||||||
|
|
||||||
@RequiredArgsConstructor(staticName = "of")
|
@RequiredArgsConstructor(staticName = "of")
|
||||||
public class BridgedServerData {
|
public class BridgedServerData {
|
||||||
@@ -25,12 +24,10 @@ public class BridgedServerData {
|
|||||||
|
|
||||||
public int getMaxPlayers() {
|
public int getMaxPlayers() {
|
||||||
if (!internal.pinged || internal.players == null) {
|
if (!internal.pinged || internal.players == null) {
|
||||||
try {
|
return internal.playerList.size() + 1;
|
||||||
new ServerStatusPinger().pingServer(internal, () -> {});
|
|
||||||
} catch (Exception ignored) {}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return internal.players == null ? 0 : internal.players.max();
|
return internal.players.max();
|
||||||
}
|
}
|
||||||
|
|
||||||
public ServerData toMojang() {
|
public ServerData toMojang() {
|
||||||
|
@@ -12,9 +12,9 @@ public class Vanish {
|
|||||||
public static void register() {
|
public static void register() {
|
||||||
VanishEvents.VANISH_EVENT.register((serverPlayer, b) -> {
|
VanishEvents.VANISH_EVENT.register((serverPlayer, b) -> {
|
||||||
if (b) {
|
if (b) {
|
||||||
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedOut(BridgedPlayer.of(serverPlayer)));
|
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedOut(BridgedPlayer.of(serverPlayer), true));
|
||||||
} else {
|
} else {
|
||||||
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedIn(BridgedPlayer.of(serverPlayer)));
|
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedIn(BridgedPlayer.of(serverPlayer), true));
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@@ -15,9 +15,9 @@ public class Vanish {
|
|||||||
@SubscribeEvent
|
@SubscribeEvent
|
||||||
public void vanishevent(PlayerVanishEvent event) {
|
public void vanishevent(PlayerVanishEvent event) {
|
||||||
if (event.isVanished()) {
|
if (event.isVanished()) {
|
||||||
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedOut(BridgedPlayer.of(event.getEntity())));
|
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedOut(BridgedPlayer.of(event.getEntity()), true));
|
||||||
} else {
|
} else {
|
||||||
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedIn(BridgedPlayer.of(event.getEntity())));
|
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedIn(BridgedPlayer.of(event.getEntity()), true));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -4,6 +4,7 @@ import com.hypherionmc.craterlib.core.event.CraterEvent;
|
|||||||
import com.hypherionmc.craterlib.nojang.world.entity.player.BridgedPlayer;
|
import com.hypherionmc.craterlib.nojang.world.entity.player.BridgedPlayer;
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
|
import lombok.Setter;
|
||||||
|
|
||||||
@RequiredArgsConstructor
|
@RequiredArgsConstructor
|
||||||
@Getter
|
@Getter
|
||||||
@@ -11,18 +12,32 @@ public class CraterPlayerEvent extends CraterEvent {
|
|||||||
|
|
||||||
private final BridgedPlayer player;
|
private final BridgedPlayer player;
|
||||||
|
|
||||||
|
@Getter
|
||||||
public static class PlayerLoggedIn extends CraterPlayerEvent {
|
public static class PlayerLoggedIn extends CraterPlayerEvent {
|
||||||
|
private final boolean isFromVanish;
|
||||||
|
|
||||||
public PlayerLoggedIn(BridgedPlayer player) {
|
public PlayerLoggedIn(BridgedPlayer player) {
|
||||||
|
this(player, false);
|
||||||
|
}
|
||||||
|
|
||||||
|
public PlayerLoggedIn(BridgedPlayer player, boolean isFromVanish) {
|
||||||
super(player);
|
super(player);
|
||||||
|
this.isFromVanish = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Getter @Setter
|
||||||
public static class PlayerLoggedOut extends CraterPlayerEvent {
|
public static class PlayerLoggedOut extends CraterPlayerEvent {
|
||||||
|
private final boolean isFromVanish;
|
||||||
|
|
||||||
public PlayerLoggedOut(BridgedPlayer player) {
|
public PlayerLoggedOut(BridgedPlayer player) {
|
||||||
|
this(player, false);
|
||||||
|
}
|
||||||
|
|
||||||
|
public PlayerLoggedOut(BridgedPlayer player, boolean isFromVanish) {
|
||||||
super(player);
|
super(player);
|
||||||
|
this.isFromVanish = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@@ -72,6 +72,9 @@ public class BridgedMinecraft {
|
|||||||
|
|
||||||
@Nullable
|
@Nullable
|
||||||
public BridgedIntegratedServer getSinglePlayerServer() {
|
public BridgedIntegratedServer getSinglePlayerServer() {
|
||||||
|
if (internal.getSingleplayerServer() == null)
|
||||||
|
return null;
|
||||||
|
|
||||||
return BridgedIntegratedServer.of(internal.getSingleplayerServer());
|
return BridgedIntegratedServer.of(internal.getSingleplayerServer());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -4,7 +4,6 @@ import com.hypherionmc.craterlib.utils.ChatUtils;
|
|||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import net.kyori.adventure.text.Component;
|
import net.kyori.adventure.text.Component;
|
||||||
import net.minecraft.client.multiplayer.ServerData;
|
import net.minecraft.client.multiplayer.ServerData;
|
||||||
import net.minecraft.client.multiplayer.ServerStatusPinger;
|
|
||||||
|
|
||||||
@RequiredArgsConstructor(staticName = "of")
|
@RequiredArgsConstructor(staticName = "of")
|
||||||
public class BridgedServerData {
|
public class BridgedServerData {
|
||||||
@@ -25,12 +24,10 @@ public class BridgedServerData {
|
|||||||
|
|
||||||
public int getMaxPlayers() {
|
public int getMaxPlayers() {
|
||||||
if (internal.players == null) {
|
if (internal.players == null) {
|
||||||
try {
|
return internal.playerList.size() + 1;
|
||||||
new ServerStatusPinger().pingServer(internal, () -> {}, () -> {});
|
|
||||||
} catch (Exception ignored) {}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return internal.players == null ? 0 : internal.players.max();
|
return internal.players.max();
|
||||||
}
|
}
|
||||||
|
|
||||||
public ServerData toMojang() {
|
public ServerData toMojang() {
|
||||||
|
@@ -12,9 +12,9 @@ public class Vanish {
|
|||||||
public static void register() {
|
public static void register() {
|
||||||
VanishEvents.VANISH_EVENT.register((serverPlayer, b) -> {
|
VanishEvents.VANISH_EVENT.register((serverPlayer, b) -> {
|
||||||
if (b) {
|
if (b) {
|
||||||
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedOut(BridgedPlayer.of(serverPlayer)));
|
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedOut(BridgedPlayer.of(serverPlayer), true));
|
||||||
} else {
|
} else {
|
||||||
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedIn(BridgedPlayer.of(serverPlayer)));
|
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedIn(BridgedPlayer.of(serverPlayer), true));
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@@ -15,9 +15,9 @@ public class Vanish {
|
|||||||
@SubscribeEvent
|
@SubscribeEvent
|
||||||
public void vanishevent(PlayerVanishEvent event) {
|
public void vanishevent(PlayerVanishEvent event) {
|
||||||
if (event.isVanished()) {
|
if (event.isVanished()) {
|
||||||
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedOut(BridgedPlayer.of(event.getEntity())));
|
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedOut(BridgedPlayer.of(event.getEntity()), true));
|
||||||
} else {
|
} else {
|
||||||
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedIn(BridgedPlayer.of(event.getEntity())));
|
CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedIn(BridgedPlayer.of(event.getEntity()), true));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -1 +1 @@
|
|||||||
843f23b9c72c71b2ac99a9f3b874a4613462980e
|
0f17e8f844b81cdc1fe1c7b53c9801aea01b9e5d
|
@@ -6,21 +6,18 @@
|
|||||||
import net.kyori.adventure.text.Component;
|
import net.kyori.adventure.text.Component;
|
||||||
+import net.minecraft.ChatFormatting;
|
+import net.minecraft.ChatFormatting;
|
||||||
import net.minecraft.client.multiplayer.ServerData;
|
import net.minecraft.client.multiplayer.ServerData;
|
||||||
import net.minecraft.client.multiplayer.ServerStatusPinger;
|
|
||||||
|
|
||||||
@@ -24,13 +25,17 @@
|
@RequiredArgsConstructor(staticName = "of")
|
||||||
|
@@ -23,11 +24,15 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
public int getMaxPlayers() {
|
public int getMaxPlayers() {
|
||||||
- if (internal.players == null) {
|
- if (internal.players == null) {
|
||||||
+ if (!internal.pinged || internal.status.getString() == null) {
|
+ if (!internal.pinged || internal.status.getString() == null) {
|
||||||
try {
|
return internal.playerList.size() + 1;
|
||||||
- new ServerStatusPinger().pingServer(internal, () -> {}, () -> {});
|
|
||||||
+ new ServerStatusPinger().pingServer(internal, () -> {});
|
|
||||||
} catch (Exception ignored) {}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
- return internal.players == null ? 0 : internal.players.max();
|
- return internal.players.max();
|
||||||
+ try {
|
+ try {
|
||||||
+ return Integer.parseInt(ChatFormatting.stripFormatting(internal.status.getString()).split("/")[1]);
|
+ return Integer.parseInt(ChatFormatting.stripFormatting(internal.status.getString()).split("/")[1]);
|
||||||
+ } catch (Exception ignored) {}
|
+ } catch (Exception ignored) {}
|
||||||
|
@@ -20,9 +20,9 @@
|
|||||||
+ public void vanishevent(PlayerVanishEvent event) {
|
+ public void vanishevent(PlayerVanishEvent event) {
|
||||||
+ if (event.getEntity() instanceof Player p) {
|
+ if (event.getEntity() instanceof Player p) {
|
||||||
+ if (event.isVanished()) {
|
+ if (event.isVanished()) {
|
||||||
+ CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedOut(BridgedPlayer.of(p)));
|
+ CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedOut(BridgedPlayer.of(p), true));
|
||||||
+ } else {
|
+ } else {
|
||||||
+ CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedIn(BridgedPlayer.of(p)));
|
+ CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedIn(BridgedPlayer.of(p), true));
|
||||||
+ }
|
+ }
|
||||||
+ }
|
+ }
|
||||||
+ }
|
+ }
|
||||||
|
@@ -18,9 +18,9 @@
|
|||||||
- @SubscribeEvent
|
- @SubscribeEvent
|
||||||
- public void vanishevent(PlayerVanishEvent event) {
|
- public void vanishevent(PlayerVanishEvent event) {
|
||||||
- if (event.isVanished()) {
|
- if (event.isVanished()) {
|
||||||
- CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedOut(BridgedPlayer.of(event.getEntity())));
|
- CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedOut(BridgedPlayer.of(event.getEntity()), true));
|
||||||
- } else {
|
- } else {
|
||||||
- CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedIn(BridgedPlayer.of(event.getEntity())));
|
- CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedIn(BridgedPlayer.of(event.getEntity()), true));
|
||||||
- }
|
- }
|
||||||
- }
|
- }
|
||||||
-
|
-
|
||||||
|
@@ -6,21 +6,18 @@
|
|||||||
import net.kyori.adventure.text.Component;
|
import net.kyori.adventure.text.Component;
|
||||||
+import net.minecraft.ChatFormatting;
|
+import net.minecraft.ChatFormatting;
|
||||||
import net.minecraft.client.multiplayer.ServerData;
|
import net.minecraft.client.multiplayer.ServerData;
|
||||||
import net.minecraft.client.multiplayer.ServerStatusPinger;
|
|
||||||
|
|
||||||
@@ -24,13 +25,17 @@
|
@RequiredArgsConstructor(staticName = "of")
|
||||||
|
@@ -23,11 +24,15 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
public int getMaxPlayers() {
|
public int getMaxPlayers() {
|
||||||
- if (internal.players == null) {
|
- if (internal.players == null) {
|
||||||
+ if (!internal.pinged || internal.status.getString() == null) {
|
+ if (!internal.pinged || internal.status.getString() == null) {
|
||||||
try {
|
return internal.playerList.size() + 1;
|
||||||
- new ServerStatusPinger().pingServer(internal, () -> {}, () -> {});
|
|
||||||
+ new ServerStatusPinger().pingServer(internal, () -> {});
|
|
||||||
} catch (Exception ignored) {}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
- return internal.players == null ? 0 : internal.players.max();
|
- return internal.players.max();
|
||||||
+ try {
|
+ try {
|
||||||
+ return Integer.parseInt(ChatFormatting.stripFormatting(internal.status.getString()).split("/")[1]);
|
+ return Integer.parseInt(ChatFormatting.stripFormatting(internal.status.getString()).split("/")[1]);
|
||||||
+ } catch (Exception ignored) {}
|
+ } catch (Exception ignored) {}
|
||||||
|
@@ -18,9 +18,9 @@
|
|||||||
+ @SubscribeEvent
|
+ @SubscribeEvent
|
||||||
+ public void vanishevent(PlayerVanishEvent event) {
|
+ public void vanishevent(PlayerVanishEvent event) {
|
||||||
+ if (event.isVanished()) {
|
+ if (event.isVanished()) {
|
||||||
+ CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedOut(BridgedPlayer.of(event.getEntity())));
|
+ CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedOut(BridgedPlayer.of(event.getEntity()), true));
|
||||||
+ } else {
|
+ } else {
|
||||||
+ CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedIn(BridgedPlayer.of(event.getEntity())));
|
+ CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedIn(BridgedPlayer.of(event.getEntity()), true));
|
||||||
+ }
|
+ }
|
||||||
+ }
|
+ }
|
||||||
+
|
+
|
||||||
|
@@ -18,9 +18,9 @@
|
|||||||
- @SubscribeEvent
|
- @SubscribeEvent
|
||||||
- public void vanishevent(PlayerVanishEvent event) {
|
- public void vanishevent(PlayerVanishEvent event) {
|
||||||
- if (event.isVanished()) {
|
- if (event.isVanished()) {
|
||||||
- CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedOut(BridgedPlayer.of(event.getEntity())));
|
- CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedOut(BridgedPlayer.of(event.getEntity()), true));
|
||||||
- } else {
|
- } else {
|
||||||
- CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedIn(BridgedPlayer.of(event.getEntity())));
|
- CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedIn(BridgedPlayer.of(event.getEntity()), true));
|
||||||
- }
|
- }
|
||||||
- }
|
- }
|
||||||
-
|
-
|
||||||
|
@@ -6,21 +6,18 @@
|
|||||||
import net.kyori.adventure.text.Component;
|
import net.kyori.adventure.text.Component;
|
||||||
+import net.minecraft.ChatFormatting;
|
+import net.minecraft.ChatFormatting;
|
||||||
import net.minecraft.client.multiplayer.ServerData;
|
import net.minecraft.client.multiplayer.ServerData;
|
||||||
import net.minecraft.client.multiplayer.ServerStatusPinger;
|
|
||||||
|
|
||||||
@@ -24,13 +25,17 @@
|
@RequiredArgsConstructor(staticName = "of")
|
||||||
|
@@ -23,11 +24,15 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
public int getMaxPlayers() {
|
public int getMaxPlayers() {
|
||||||
- if (internal.players == null) {
|
- if (internal.players == null) {
|
||||||
+ if (!internal.pinged || internal.status.getString() == null) {
|
+ if (!internal.pinged || internal.status.getString() == null) {
|
||||||
try {
|
return internal.playerList.size() + 1;
|
||||||
- new ServerStatusPinger().pingServer(internal, () -> {}, () -> {});
|
|
||||||
+ new ServerStatusPinger().pingServer(internal, () -> {});
|
|
||||||
} catch (Exception ignored) {}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
- return internal.players == null ? 0 : internal.players.max();
|
- return internal.players.max();
|
||||||
+ try {
|
+ try {
|
||||||
+ return Integer.parseInt(ChatFormatting.stripFormatting(internal.status.getString()).split("/")[1]);
|
+ return Integer.parseInt(ChatFormatting.stripFormatting(internal.status.getString()).split("/")[1]);
|
||||||
+ } catch (Exception ignored) {}
|
+ } catch (Exception ignored) {}
|
||||||
|
@@ -18,9 +18,9 @@
|
|||||||
+ @SubscribeEvent
|
+ @SubscribeEvent
|
||||||
+ public void vanishevent(PlayerVanishEvent event) {
|
+ public void vanishevent(PlayerVanishEvent event) {
|
||||||
+ if (event.isVanished()) {
|
+ if (event.isVanished()) {
|
||||||
+ CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedOut(BridgedPlayer.of(event.getEntity())));
|
+ CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedOut(BridgedPlayer.of(event.getEntity()), true));
|
||||||
+ } else {
|
+ } else {
|
||||||
+ CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedIn(BridgedPlayer.of(event.getEntity())));
|
+ CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedIn(BridgedPlayer.of(event.getEntity()), true));
|
||||||
+ }
|
+ }
|
||||||
+ }
|
+ }
|
||||||
+
|
+
|
||||||
|
@@ -18,9 +18,9 @@
|
|||||||
- @SubscribeEvent
|
- @SubscribeEvent
|
||||||
- public void vanishevent(PlayerVanishEvent event) {
|
- public void vanishevent(PlayerVanishEvent event) {
|
||||||
- if (event.isVanished()) {
|
- if (event.isVanished()) {
|
||||||
- CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedOut(BridgedPlayer.of(event.getEntity())));
|
- CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedOut(BridgedPlayer.of(event.getEntity()), true));
|
||||||
- } else {
|
- } else {
|
||||||
- CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedIn(BridgedPlayer.of(event.getEntity())));
|
- CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedIn(BridgedPlayer.of(event.getEntity()), true));
|
||||||
- }
|
- }
|
||||||
- }
|
- }
|
||||||
-
|
-
|
||||||
|
@@ -1,14 +1,11 @@
|
|||||||
--- a/Common/src/main/java/com/hypherionmc/craterlib/nojang/client/multiplayer/BridgedServerData.java
|
--- a/Common/src/main/java/com/hypherionmc/craterlib/nojang/client/multiplayer/BridgedServerData.java
|
||||||
+++ b/Common/src/main/java/com/hypherionmc/craterlib/nojang/client/multiplayer/BridgedServerData.java
|
+++ b/Common/src/main/java/com/hypherionmc/craterlib/nojang/client/multiplayer/BridgedServerData.java
|
||||||
@@ -24,9 +24,9 @@
|
@@ -23,7 +23,7 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
public int getMaxPlayers() {
|
public int getMaxPlayers() {
|
||||||
- if (internal.players == null) {
|
- if (internal.players == null) {
|
||||||
+ if (!internal.pinged || internal.players == null) {
|
+ if (!internal.pinged || internal.players == null) {
|
||||||
try {
|
return internal.playerList.size() + 1;
|
||||||
- new ServerStatusPinger().pingServer(internal, () -> {}, () -> {});
|
|
||||||
+ new ServerStatusPinger().pingServer(internal, () -> {});
|
|
||||||
} catch (Exception ignored) {}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -18,9 +18,9 @@
|
|||||||
+ @SubscribeEvent
|
+ @SubscribeEvent
|
||||||
+ public void vanishevent(PlayerVanishEvent event) {
|
+ public void vanishevent(PlayerVanishEvent event) {
|
||||||
+ if (event.isVanished()) {
|
+ if (event.isVanished()) {
|
||||||
+ CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedOut(BridgedPlayer.of(event.getEntity())));
|
+ CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedOut(BridgedPlayer.of(event.getEntity()), true));
|
||||||
+ } else {
|
+ } else {
|
||||||
+ CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedIn(BridgedPlayer.of(event.getEntity())));
|
+ CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedIn(BridgedPlayer.of(event.getEntity()), true));
|
||||||
+ }
|
+ }
|
||||||
+ }
|
+ }
|
||||||
+
|
+
|
||||||
|
@@ -18,9 +18,9 @@
|
|||||||
- @SubscribeEvent
|
- @SubscribeEvent
|
||||||
- public void vanishevent(PlayerVanishEvent event) {
|
- public void vanishevent(PlayerVanishEvent event) {
|
||||||
- if (event.isVanished()) {
|
- if (event.isVanished()) {
|
||||||
- CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedOut(BridgedPlayer.of(event.getEntity())));
|
- CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedOut(BridgedPlayer.of(event.getEntity()), true));
|
||||||
- } else {
|
- } else {
|
||||||
- CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedIn(BridgedPlayer.of(event.getEntity())));
|
- CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedIn(BridgedPlayer.of(event.getEntity()), true));
|
||||||
- }
|
- }
|
||||||
- }
|
- }
|
||||||
-
|
-
|
||||||
|
@@ -1,14 +1,11 @@
|
|||||||
--- a/Common/src/main/java/com/hypherionmc/craterlib/nojang/client/multiplayer/BridgedServerData.java
|
--- a/Common/src/main/java/com/hypherionmc/craterlib/nojang/client/multiplayer/BridgedServerData.java
|
||||||
+++ b/Common/src/main/java/com/hypherionmc/craterlib/nojang/client/multiplayer/BridgedServerData.java
|
+++ b/Common/src/main/java/com/hypherionmc/craterlib/nojang/client/multiplayer/BridgedServerData.java
|
||||||
@@ -24,9 +24,9 @@
|
@@ -23,7 +23,7 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
public int getMaxPlayers() {
|
public int getMaxPlayers() {
|
||||||
- if (internal.players == null) {
|
- if (internal.players == null) {
|
||||||
+ if (!internal.pinged || internal.players == null) {
|
+ if (!internal.pinged || internal.players == null) {
|
||||||
try {
|
return internal.playerList.size() + 1;
|
||||||
- new ServerStatusPinger().pingServer(internal, () -> {}, () -> {});
|
|
||||||
+ new ServerStatusPinger().pingServer(internal, () -> {});
|
|
||||||
} catch (Exception ignored) {}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -18,9 +18,9 @@
|
|||||||
+ @SubscribeEvent
|
+ @SubscribeEvent
|
||||||
+ public void vanishevent(PlayerVanishEvent event) {
|
+ public void vanishevent(PlayerVanishEvent event) {
|
||||||
+ if (event.isVanished()) {
|
+ if (event.isVanished()) {
|
||||||
+ CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedOut(BridgedPlayer.of(event.getEntity())));
|
+ CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedOut(BridgedPlayer.of(event.getEntity()), true));
|
||||||
+ } else {
|
+ } else {
|
||||||
+ CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedIn(BridgedPlayer.of(event.getEntity())));
|
+ CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedIn(BridgedPlayer.of(event.getEntity()), true));
|
||||||
+ }
|
+ }
|
||||||
+ }
|
+ }
|
||||||
+
|
+
|
||||||
|
@@ -1,14 +1,11 @@
|
|||||||
--- a/Common/src/main/java/com/hypherionmc/craterlib/nojang/client/multiplayer/BridgedServerData.java
|
--- a/Common/src/main/java/com/hypherionmc/craterlib/nojang/client/multiplayer/BridgedServerData.java
|
||||||
+++ b/Common/src/main/java/com/hypherionmc/craterlib/nojang/client/multiplayer/BridgedServerData.java
|
+++ b/Common/src/main/java/com/hypherionmc/craterlib/nojang/client/multiplayer/BridgedServerData.java
|
||||||
@@ -24,9 +24,9 @@
|
@@ -23,7 +23,7 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
public int getMaxPlayers() {
|
public int getMaxPlayers() {
|
||||||
- if (internal.players == null) {
|
- if (internal.players == null) {
|
||||||
+ if (!internal.pinged || internal.players == null) {
|
+ if (!internal.pinged || internal.players == null) {
|
||||||
try {
|
return internal.playerList.size() + 1;
|
||||||
- new ServerStatusPinger().pingServer(internal, () -> {}, () -> {});
|
|
||||||
+ new ServerStatusPinger().pingServer(internal, () -> {});
|
|
||||||
} catch (Exception ignored) {}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -18,9 +18,9 @@
|
|||||||
+ @SubscribeEvent
|
+ @SubscribeEvent
|
||||||
+ public void vanishevent(PlayerVanishEvent event) {
|
+ public void vanishevent(PlayerVanishEvent event) {
|
||||||
+ if (event.isVanished()) {
|
+ if (event.isVanished()) {
|
||||||
+ CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedOut(BridgedPlayer.of(event.getEntity())));
|
+ CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedOut(BridgedPlayer.of(event.getEntity()), true));
|
||||||
+ } else {
|
+ } else {
|
||||||
+ CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedIn(BridgedPlayer.of(event.getEntity())));
|
+ CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedIn(BridgedPlayer.of(event.getEntity()), true));
|
||||||
+ }
|
+ }
|
||||||
+ }
|
+ }
|
||||||
+
|
+
|
||||||
|
@@ -18,9 +18,9 @@
|
|||||||
- @SubscribeEvent
|
- @SubscribeEvent
|
||||||
- public void vanishevent(PlayerVanishEvent event) {
|
- public void vanishevent(PlayerVanishEvent event) {
|
||||||
- if (event.isVanished()) {
|
- if (event.isVanished()) {
|
||||||
- CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedOut(BridgedPlayer.of(event.getEntity())));
|
- CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedOut(BridgedPlayer.of(event.getEntity()), true));
|
||||||
- } else {
|
- } else {
|
||||||
- CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedIn(BridgedPlayer.of(event.getEntity())));
|
- CraterEventBus.INSTANCE.postEvent(new CraterPlayerEvent.PlayerLoggedIn(BridgedPlayer.of(event.getEntity()), true));
|
||||||
- }
|
- }
|
||||||
- }
|
- }
|
||||||
-
|
-
|
||||||
|
Reference in New Issue
Block a user