geforkt von Mirrors/Paper
b31089a929
Upstream has released updates that appear to apply and compile correctly. This update has not been tested by PaperMC and as with ANY update, please do your own testing Bukkit Changes: d264e972 #591: Add option for a consumer before spawning an item 1c537fce #590: Add spawn and transform reasons for piglin zombification. CraftBukkit Changes: ee5006d1 #810: Add option for a consumer before spawning an item f6a39d3c #809: Add spawn and transform reasons for piglin zombification. 0c24068a Organise imports Spigot Changes: bff52619 Organise imports
45 Zeilen
2.6 KiB
Diff
45 Zeilen
2.6 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Mark Vainomaa <mikroskeem@mikroskeem.eu>
|
|
Date: Tue, 17 Nov 2020 19:13:09 +0200
|
|
Subject: [PATCH] Expose world spawn angle
|
|
|
|
|
|
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
|
|
index a6a836c936a687d67c67d861c72addf319b44263..c4abe7bdc1a9b725166eff8b77c123dd832b3cf9 100644
|
|
--- a/src/main/java/net/minecraft/server/PlayerList.java
|
|
+++ b/src/main/java/net/minecraft/server/PlayerList.java
|
|
@@ -811,7 +811,7 @@ public abstract class PlayerList {
|
|
if (location == null) {
|
|
worldserver1 = this.server.getWorldServer(World.OVERWORLD);
|
|
blockposition = entityplayer1.getSpawnPoint(worldserver1);
|
|
- location = new Location(worldserver1.getWorld(), (double) ((float) blockposition.getX() + 0.5F), (double) ((float) blockposition.getY() + 0.1F), (double) ((float) blockposition.getZ() + 0.5F));
|
|
+ location = new Location(worldserver1.getWorld(), (double) ((float) blockposition.getX() + 0.5F), (double) ((float) blockposition.getY() + 0.1F), (double) ((float) blockposition.getZ() + 0.5F), worldserver1.worldData.getSpawnAngle(), 0.0F); // Paper - use world spawn angle
|
|
}
|
|
|
|
Player respawnPlayer = cserver.getPlayer(entityplayer1);
|
|
diff --git a/src/main/java/net/minecraft/server/WorldData.java b/src/main/java/net/minecraft/server/WorldData.java
|
|
index faf931785ea35df4525d4a429bdb2363e26e491b..14e1762bf8669ef9e8444f5a73952daa50b3b19e 100644
|
|
--- a/src/main/java/net/minecraft/server/WorldData.java
|
|
+++ b/src/main/java/net/minecraft/server/WorldData.java
|
|
@@ -8,6 +8,7 @@ public interface WorldData {
|
|
|
|
int c();
|
|
|
|
+ default float getSpawnAngle() { return d(); } // Paper - OBFHELPER
|
|
float d();
|
|
|
|
long getTime();
|
|
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
|
index d7954f55061e677b00d27be4b8d0890af75a3aad..7e4bf999a4ccc798480d2b14559e0004c5c0eea6 100644
|
|
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
|
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
|
@@ -380,7 +380,7 @@ public class CraftWorld implements World {
|
|
@Override
|
|
public Location getSpawnLocation() {
|
|
BlockPosition spawn = world.getSpawn();
|
|
- return new Location(this, spawn.getX(), spawn.getY(), spawn.getZ());
|
|
+ return new Location(this, spawn.getX(), spawn.getY(), spawn.getZ(), world.worldData.getSpawnAngle(), 0.0F); // Paper - expose world spawn angle
|
|
}
|
|
|
|
@Override
|