Paper/patches/server/0932-Win-Screen-API.patch
Emilia Kond 2d09115b3a
Use net.kyori.ansi for console logging (#9313)
Uses the new ANSIComponentSerializer introduced in Adventure 4.14.0 to
serialize components when logging them via the ComponentLogger, or when
sending messages to the console.

This replaces the old solution which uses legacy jank and custom color
conversions, with a new library that handles the conversion and config
2023-06-12 15:00:12 -07:00

39 lines
1.4 KiB
Diff

From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Lama06 <andreasprues36@gmail.com>
Date: Sat, 21 Jan 2023 13:53:23 +0100
Subject: [PATCH] Win Screen API
== AT ==
public net.minecraft.server.level.ServerPlayer seenCredits
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 75f4531222016a8639920ab25f0378c11a62a1f6..991f3f947810ebd7e4f2c51a4012115fee8a34ec 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -1203,6 +1203,25 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
this.getHandle().connection.send(packet);
}
+ // Paper start
+ @Override
+ public void showWinScreen() {
+ if (getHandle().connection == null) return;
+ var packet = new ClientboundGameEventPacket(ClientboundGameEventPacket.WIN_GAME, 1);
+ getHandle().connection.send(packet);
+ }
+
+ @Override
+ public boolean hasSeenWinScreen() {
+ return getHandle().seenCredits;
+ }
+
+ @Override
+ public void setHasSeenWinScreen(boolean hasSeenWinScreen) {
+ getHandle().seenCredits = hasSeenWinScreen;
+ }
+ // Paper end
+
@Override
public void setRotation(float yaw, float pitch) {
// Paper start - Teleport API