mirror of
https://github.com/PurpurMC/Purpur.git
synced 2026-02-18 00:47:42 +01:00
Updated Upstream (Paper)
Upstream has released updates that appears to apply and compile correctly Paper Changes: 19ff55ef Update upstream B/CB 79710332 Update upstream CB 19de9af6 1.15.2 update (#2887) d4ae43fc Updated Upstream (Bukkit/CraftBukkit) 9c2d9a5f [CI-SKIP] Rebuild patches 86a4b752 Fix items not falling correctly (Resolves #2835) (#2872) 35472de2 Port activation range improvement patch (#2763) 617f6033 Add effect to block break naturally (#2819) f63cfe00 Updated Upstream (Bukkit/CraftBukkit) 00860e4e [CI-SKIP] rebuild patches 3d519668 Prevent sync chunk loads when villagers try to find beds (#2855)
This commit is contained in:
@@ -1,27 +1,27 @@
|
||||
From 5dd421530fad8511fcac6377a518a79ed3ab7de9 Mon Sep 17 00:00:00 2001
|
||||
From a52816cca0ca3cb8aa341675d4a23a4287b2bd3a Mon Sep 17 00:00:00 2001
|
||||
From: William Blake Galbreath <blake.galbreath@gmail.com>
|
||||
Date: Thu, 25 Jul 2019 18:07:37 -0500
|
||||
Subject: [PATCH] Implement elytra settings
|
||||
|
||||
---
|
||||
.../java/net/minecraft/server/EntityLiving.java | 14 +++++++++++---
|
||||
.../java/net/minecraft/server/ItemFireworks.java | 8 ++++++++
|
||||
src/main/java/net/minecraft/server/ItemStack.java | 8 +++++++-
|
||||
.../java/net/minecraft/server/ItemTrident.java | 10 ++++++++++
|
||||
src/main/java/net/minecraft/server/Vec3D.java | 1 +
|
||||
.../java/net/pl3x/purpur/PurpurWorldConfig.java | 13 +++++++++++++
|
||||
6 files changed, 50 insertions(+), 4 deletions(-)
|
||||
.../java/net/minecraft/server/EntityLiving.java | 13 ++++++++++---
|
||||
.../java/net/minecraft/server/ItemFireworks.java | 8 ++++++++
|
||||
src/main/java/net/minecraft/server/ItemStack.java | 8 +++++++-
|
||||
src/main/java/net/minecraft/server/ItemTrident.java | 10 ++++++++++
|
||||
src/main/java/net/minecraft/server/Vec3D.java | 1 +
|
||||
.../java/net/pl3x/purpur/PurpurWorldConfig.java | 13 +++++++++++++
|
||||
6 files changed, 49 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
|
||||
index 7581316497..7d424040cc 100644
|
||||
index 31cfac0c8..d4fb8e4a6 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityLiving.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
|
||||
@@ -2652,9 +2652,16 @@ public abstract class EntityLiving extends Entity {
|
||||
@@ -2654,9 +2654,16 @@ public abstract class EntityLiving extends Entity {
|
||||
if (itemstack.getItem() == Items.ELYTRA && ItemElytra.e(itemstack)) {
|
||||
flag = true;
|
||||
if (!this.world.isClientSide && (this.bm + 1) % 20 == 0) {
|
||||
- itemstack.damage(1, this, (entityliving) -> {
|
||||
- entityliving.c(EnumItemSlot.CHEST);
|
||||
- entityliving.broadcastItemBreak(EnumItemSlot.CHEST);
|
||||
- });
|
||||
+ // Purpur start
|
||||
+ int damage = world.purpurConfig.elytraDamagePerSecond;
|
||||
@@ -31,21 +31,13 @@ index 7581316497..7d424040cc 100644
|
||||
+ damage *= (int) speed;
|
||||
+ }
|
||||
+ }
|
||||
+ itemstack.damage(damage, this, (entityliving) -> entityliving.c(EnumItemSlot.CHEST));
|
||||
+ itemstack.damage(damage, this, (entityliving) -> entityliving.broadcastItemBreak(EnumItemSlot.CHEST));
|
||||
+ // Purpur end
|
||||
}
|
||||
} else {
|
||||
flag = false;
|
||||
@@ -3317,6 +3324,7 @@ public abstract class EntityLiving extends Entity {
|
||||
}
|
||||
}
|
||||
|
||||
+ public void sendBreakAnimation(EnumItemSlot slot) { c(slot); } // Purpur - OBFHELPER
|
||||
public void c(EnumItemSlot enumitemslot) {
|
||||
this.world.broadcastEntityEffect(this, d(enumitemslot));
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/ItemFireworks.java b/src/main/java/net/minecraft/server/ItemFireworks.java
|
||||
index a43e52889f..cc8fbccd16 100644
|
||||
index bd524a35b..c0e8cd0cd 100644
|
||||
--- a/src/main/java/net/minecraft/server/ItemFireworks.java
|
||||
+++ b/src/main/java/net/minecraft/server/ItemFireworks.java
|
||||
@@ -39,6 +39,14 @@ public class ItemFireworks extends Item {
|
||||
@@ -56,7 +48,7 @@ index a43e52889f..cc8fbccd16 100644
|
||||
+ if (world.purpurConfig.elytraDamagePerFireworkBoost > 0) {
|
||||
+ ItemStack chestItem = entityhuman.getEquipment(EnumItemSlot.CHEST);
|
||||
+ if (chestItem.getItem() == Items.ELYTRA) {
|
||||
+ chestItem.damage(world.purpurConfig.elytraDamagePerFireworkBoost, entityhuman, (entityliving) -> entityliving.sendBreakAnimation(EnumItemSlot.CHEST));
|
||||
+ chestItem.damage(world.purpurConfig.elytraDamagePerFireworkBoost, entityhuman, (entityliving) -> entityliving.broadcastItemBreak(EnumItemSlot.CHEST));
|
||||
+ }
|
||||
+ }
|
||||
+ // Purpur end
|
||||
@@ -64,7 +56,7 @@ index a43e52889f..cc8fbccd16 100644
|
||||
itemstack.subtract(1);
|
||||
} else ((EntityPlayer) entityhuman).getBukkitEntity().updateInventory();
|
||||
diff --git a/src/main/java/net/minecraft/server/ItemStack.java b/src/main/java/net/minecraft/server/ItemStack.java
|
||||
index 1108aa0852..2b39d5ca20 100644
|
||||
index 1108aa085..2b39d5ca2 100644
|
||||
--- a/src/main/java/net/minecraft/server/ItemStack.java
|
||||
+++ b/src/main/java/net/minecraft/server/ItemStack.java
|
||||
@@ -401,7 +401,7 @@ public final class ItemStack {
|
||||
@@ -90,7 +82,7 @@ index 1108aa0852..2b39d5ca20 100644
|
||||
if (this.count == 1 && t0 instanceof EntityHuman) {
|
||||
org.bukkit.craftbukkit.event.CraftEventFactory.callPlayerItemBreakEvent((EntityHuman) t0, this);
|
||||
diff --git a/src/main/java/net/minecraft/server/ItemTrident.java b/src/main/java/net/minecraft/server/ItemTrident.java
|
||||
index 1cbaed9da4..b7610aaf70 100644
|
||||
index f571a1586..c26300eac 100644
|
||||
--- a/src/main/java/net/minecraft/server/ItemTrident.java
|
||||
+++ b/src/main/java/net/minecraft/server/ItemTrident.java
|
||||
@@ -100,6 +100,16 @@ public class ItemTrident extends Item {
|
||||
@@ -102,7 +94,7 @@ index 1cbaed9da4..b7610aaf70 100644
|
||||
+ ItemStack chestItem = entityhuman.getEquipment(EnumItemSlot.CHEST);
|
||||
+ if (chestItem.getItem() == Items.ELYTRA) {
|
||||
+ if (world.purpurConfig.elytraDamagePerTridentBoost > 0) {
|
||||
+ chestItem.damage(world.purpurConfig.elytraDamagePerTridentBoost, entityhuman, (entity) -> entity.sendBreakAnimation(EnumItemSlot.CHEST));
|
||||
+ chestItem.damage(world.purpurConfig.elytraDamagePerTridentBoost, entityhuman, (entity) -> entity.broadcastItemBreak(EnumItemSlot.CHEST));
|
||||
+ }
|
||||
+ }
|
||||
+ // Purpur end
|
||||
@@ -111,7 +103,7 @@ index 1cbaed9da4..b7610aaf70 100644
|
||||
entityhuman.r(20);
|
||||
if (entityhuman.onGround) {
|
||||
diff --git a/src/main/java/net/minecraft/server/Vec3D.java b/src/main/java/net/minecraft/server/Vec3D.java
|
||||
index 212af252be..fbc30e6ece 100644
|
||||
index 212af252b..fbc30e6ec 100644
|
||||
--- a/src/main/java/net/minecraft/server/Vec3D.java
|
||||
+++ b/src/main/java/net/minecraft/server/Vec3D.java
|
||||
@@ -98,6 +98,7 @@ public class Vec3D implements IPosition {
|
||||
@@ -123,7 +115,7 @@ index 212af252be..fbc30e6ece 100644
|
||||
return this.x * this.x + this.y * this.y + this.z * this.z;
|
||||
}
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 6cc6d8015f..6d875b78b9 100644
|
||||
index 6cc6d8015..6d875b78b 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -116,6 +116,19 @@ public class PurpurWorldConfig {
|
||||
|
||||
Reference in New Issue
Block a user