mirror of
https://github.com/PurpurMC/Purpur.git
synced 2026-06-21 09:47:45 +02:00
Upstream has released updates that appear to apply and compile correctly Paper Changes: PaperMC/Paper@6fe7eb5a Load World Key when its instance is created (#13818) PaperMC/Paper@944ce44a Fix CraftWorld identifier passing PaperMC/Paper@aa6f09b0 Prevent Happy Ghast from playing mount/dismount noises when silenced (#13807) PaperMC/Paper@7b31cc2b Make leaveMessage in PlayerKickEvent nullable (#13804) PaperMC/Paper@65461225 Update health after setPlayerProfile() (#13717) PaperMC/Paper@1a8417b1 [ci/skip] Add Javadocs for PotionEffect withX methods (#13723) PaperMC/Paper@4af86ff3 Handle null ServerLevel in fromGlobalPos (#13703) PaperMC/Paper@c39822ae reset pending keepalive state on listener handoff during reconfiguration (#13712) PaperMC/Paper@dcf5577a Fix PlayerProfile applySkinToPlayerHeadContents (#13692) PaperMC/Paper@dd203a27 chore: Don't log errors for accepting the EULA via the system property (#13681) PaperMC/Paper@d74f6bc7 Support for Kill damageable entities (#13667) PaperMC/Paper@90aee8e0 Update world methods to take in account environment attributes (#13543) PaperMC/Paper@b2b1e177 Improvement to Vehicle damage events (#13572) PaperMC/Paper@49daadd2 Fix insomniaStartTicks option being ignored for phantom spawning (#13609) PaperMC/Paper@57d84f68 Prevent NPE on ThrownPotion#splash (#13683) PaperMC/Paper@4f184db3 Fix memory leak on constantly damage (#13455) PaperMC/Paper@60073714 Update MOJIRA reference in DeOp command response for multiple targets [ci/skip] (#13812) PaperMC/Paper@4aef3f0a Remove already fixed vanilla bug MC-244739 (#13787) PaperMC/Paper@945aea99 Fix Damager for HangingBreakByEntityEvent and minor improvements (#12615) PaperMC/Paper@a8c05a35 Add an option to WorldCreator to avoid spawn location computation on world creation (#13407) PaperMC/Paper@182b2f8a Add Point Of Interest API (#12117) PaperMC/Paper@8021488e Disconnect State Fixes (#13616) PaperMC/Paper@1f819732 Allow ServerboundChangeGameModePacket if player has /gamemode permissions (#13507) PaperMC/Paper@a64ea13e Re-implement per-world and per-player time (#13814) PaperMC/Paper@acfe105b Add options to disable chunk and block entity ticking (#13821) PaperMC/Paper@651d8481 Finish world key initial migration (#13824) PaperMC/Paper@f4e769a7 Improvements checks for arguments numbers (#13290) PaperMC/Paper@5dc4afc1 Promote build channel to BETA PaperMC/Paper@55be6c0e Fix boat and minecart inventories on region switch [ci/skip] (#13826) PaperMC/Paper@7799bf28 Update Paperclip to v3.0.4
66 lines
3.0 KiB
Diff
66 lines
3.0 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Ben Kerllenevich <ben@omega24.dev>
|
|
Date: Tue, 25 May 2021 16:31:09 -0400
|
|
Subject: [PATCH] API for any mob to burn daylight
|
|
|
|
Co-authored by: Encode42 <me@encode42.dev>
|
|
|
|
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
|
|
index d6ddbcff911ce4c97a20883af10d2b4752b63f55..7db0454a8c9251faa815500c307d116b9303b236 100644
|
|
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
|
|
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
|
|
@@ -126,6 +126,13 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity {
|
|
}
|
|
// Purpur end - Fire Immunity API
|
|
|
|
+ // Purpur start - API for any mob to burn daylight
|
|
+ @Override
|
|
+ public boolean isInDaylight() {
|
|
+ return getHandle().isSunBurnTick();
|
|
+ }
|
|
+ // Purpur end - API for any mob to burn daylight
|
|
+
|
|
public static <T extends Entity> CraftEntity getEntity(CraftServer server, T entity) {
|
|
Preconditions.checkArgument(entity != null, "Unknown entity");
|
|
|
|
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
|
index ca447f1e2840d13217559dc1028dbea63fb05041..983146dc8b685fd0ce906ee8debc2e11df9d9fdc 100644
|
|
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
|
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
|
|
@@ -1141,4 +1141,16 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
|
|
manager.untrackWaypoint(getHandle());
|
|
manager.trackWaypoint(getHandle());
|
|
}
|
|
+
|
|
+ // Purpur start - API for any mob to burn daylight
|
|
+ @Override
|
|
+ public boolean shouldBurnInDay() {
|
|
+ return this.getHandle().shouldBurnInDay();
|
|
+ }
|
|
+
|
|
+ @Override
|
|
+ public void setShouldBurnInDay(final boolean shouldBurnInDay) {
|
|
+ this.getHandle().setShouldBurnInDay(shouldBurnInDay);
|
|
+ }
|
|
+ // Purpur end - API for any mob to burn daylight
|
|
}
|
|
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPhantom.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPhantom.java
|
|
index db0e625d8ba721b0ad6913fe4a11ed8eb939d344..ecba9986915abdf59e8a71252949b6e47b55ed89 100644
|
|
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPhantom.java
|
|
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPhantom.java
|
|
@@ -35,12 +35,12 @@ public class CraftPhantom extends CraftMob implements Phantom, CraftEnemy {
|
|
|
|
@Override
|
|
public boolean shouldBurnInDay() {
|
|
- return this.getHandle().shouldBurnInDay;
|
|
+ return this.getHandle().shouldBurnInDay(); // Purpur - API for any mob to burn daylight
|
|
}
|
|
|
|
@Override
|
|
public void setShouldBurnInDay(boolean shouldBurnInDay) {
|
|
- this.getHandle().shouldBurnInDay = shouldBurnInDay;
|
|
+ this.getHandle().setShouldBurnInDay(shouldBurnInDay); // Purpur - API for any mob to burn daylight
|
|
}
|
|
|
|
@Override
|