* Update patches to handle vineflower decompiler * update patches again to handle inlined simple lambdas * update vf again and re-apply/rebuild patches * update patches after removal of verify-merges flag * fix compile issue * remove maven local * fix some issues * address more issues * fix collision patch * use paperweight release * more fixes * update fineflower and fix patches again * add missing comment descriptor --------- Co-authored-by: Jason Penilla <11360596+jpenilla@users.noreply.github.com>
		
			
				
	
	
		
			57 lines
		
	
	
	
		
			3 KiB
			
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			57 lines
		
	
	
	
		
			3 KiB
			
		
	
	
	
		
			Diff
		
	
	
	
	
	
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
 | 
						|
From: ysl3000 <yannicklamprecht@live.de>
 | 
						|
Date: Sat, 24 Oct 2020 16:37:44 +0200
 | 
						|
Subject: [PATCH] living entity allow attribute registration
 | 
						|
 | 
						|
 | 
						|
diff --git a/src/main/java/net/minecraft/world/entity/ai/attributes/AttributeMap.java b/src/main/java/net/minecraft/world/entity/ai/attributes/AttributeMap.java
 | 
						|
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
 | 
						|
--- a/src/main/java/net/minecraft/world/entity/ai/attributes/AttributeMap.java
 | 
						|
+++ b/src/main/java/net/minecraft/world/entity/ai/attributes/AttributeMap.java
 | 
						|
@@ -0,0 +0,0 @@ public class AttributeMap {
 | 
						|
             }, () -> LOGGER.warn("Ignoring unknown attribute '{}'", string));
 | 
						|
         }
 | 
						|
     }
 | 
						|
+
 | 
						|
+    // Paper - start - living entity allow attribute registration
 | 
						|
+    public void registerAttribute(Attribute attributeBase) {
 | 
						|
+        AttributeInstance attributeModifiable = new AttributeInstance(attributeBase, AttributeInstance::getAttribute);
 | 
						|
+        attributes.put(attributeBase, attributeModifiable);
 | 
						|
+    }
 | 
						|
+    // Paper - end - living entity allow attribute registration
 | 
						|
+
 | 
						|
 }
 | 
						|
diff --git a/src/main/java/org/bukkit/craftbukkit/attribute/CraftAttributeMap.java b/src/main/java/org/bukkit/craftbukkit/attribute/CraftAttributeMap.java
 | 
						|
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
 | 
						|
--- a/src/main/java/org/bukkit/craftbukkit/attribute/CraftAttributeMap.java
 | 
						|
+++ b/src/main/java/org/bukkit/craftbukkit/attribute/CraftAttributeMap.java
 | 
						|
@@ -0,0 +0,0 @@ public class CraftAttributeMap implements Attributable {
 | 
						|
 
 | 
						|
         return (nms == null) ? null : new CraftAttributeInstance(nms, attribute);
 | 
						|
     }
 | 
						|
+    // Paper start - living entity allow attribute registration
 | 
						|
+    @Override
 | 
						|
+    public void registerAttribute(Attribute attribute) {
 | 
						|
+        Preconditions.checkArgument(attribute != null, "attribute");
 | 
						|
+        handle.registerAttribute(CraftAttribute.bukkitToMinecraft(attribute));
 | 
						|
+    }
 | 
						|
+    // Paper end - living entity allow attribute registration
 | 
						|
 }
 | 
						|
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
 | 
						|
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
 | 
						|
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
 | 
						|
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
 | 
						|
@@ -0,0 +0,0 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
 | 
						|
         return this.getHandle().craftAttributes.getAttribute(attribute);
 | 
						|
     }
 | 
						|
 
 | 
						|
+    // Paper start - living entity allow attribute registration
 | 
						|
+    @Override
 | 
						|
+    public void registerAttribute(Attribute attribute) {
 | 
						|
+        getHandle().craftAttributes.registerAttribute(attribute);
 | 
						|
+    }
 | 
						|
+    // Paper end - living entity allow attribute registration
 | 
						|
+
 | 
						|
     @Override
 | 
						|
     public void setAI(boolean ai) {
 | 
						|
         if (this.getHandle() instanceof Mob) {
 |