mirror of
https://github.com/PurpurMC/Purpur.git
synced 2026-02-19 17:37:42 +01:00
Snowman drop and put back pumpkin
This commit is contained in:
committed by
granny
parent
628a35f045
commit
154d9e5591
@@ -1,45 +0,0 @@
|
|||||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
||||||
From: William Blake Galbreath <blake.galbreath@gmail.com>
|
|
||||||
Date: Fri, 3 May 2019 23:58:44 -0500
|
|
||||||
Subject: [PATCH] Snowman drop and put back pumpkin
|
|
||||||
|
|
||||||
|
|
||||||
diff --git a/net/minecraft/world/entity/animal/SnowGolem.java b/net/minecraft/world/entity/animal/SnowGolem.java
|
|
||||||
index 0149071cc901beffd583c1ba7617e1355473fc77..aaa581c5fa7a14958b2a7c20996cf70ad4efff04 100644
|
|
||||||
--- a/net/minecraft/world/entity/animal/SnowGolem.java
|
|
||||||
+++ b/net/minecraft/world/entity/animal/SnowGolem.java
|
|
||||||
@@ -205,6 +205,14 @@ public class SnowGolem extends AbstractGolem implements Shearable, RangedAttackM
|
|
||||||
}
|
|
||||||
|
|
||||||
return InteractionResult.SUCCESS;
|
|
||||||
+ // Purpur start
|
|
||||||
+ } else if (level().purpurConfig.snowGolemPutPumpkinBack && !hasPumpkin() && itemstack.getItem() == Blocks.CARVED_PUMPKIN.asItem()) {
|
|
||||||
+ setPumpkin(true);
|
|
||||||
+ if (!player.getAbilities().instabuild) {
|
|
||||||
+ itemstack.shrink(1);
|
|
||||||
+ }
|
|
||||||
+ return InteractionResult.SUCCESS;
|
|
||||||
+ // Purpur end
|
|
||||||
} else {
|
|
||||||
return tryRide(player, hand); // Purpur - Ridables
|
|
||||||
}
|
|
||||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
|
||||||
index 419ebb012056d131d6d1b10c8bd72511a1c4df74..1fa34a6517b4b834354234471f9ed3bcaaf1ee03 100644
|
|
||||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
|
||||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
|
||||||
@@ -1311,6 +1311,7 @@ public class PurpurWorldConfig {
|
|
||||||
public boolean snowGolemLeaveTrailWhenRidden = false;
|
|
||||||
public double snowGolemMaxHealth = 4.0D;
|
|
||||||
public double snowGolemScale = 1.0D;
|
|
||||||
+ public boolean snowGolemPutPumpkinBack = false;
|
|
||||||
private void snowGolemSettings() {
|
|
||||||
snowGolemRidable = getBoolean("mobs.snow_golem.ridable", snowGolemRidable);
|
|
||||||
snowGolemRidableInWater = getBoolean("mobs.snow_golem.ridable-in-water", snowGolemRidableInWater);
|
|
||||||
@@ -1323,6 +1324,7 @@ public class PurpurWorldConfig {
|
|
||||||
}
|
|
||||||
snowGolemMaxHealth = getDouble("mobs.snow_golem.attributes.max_health", snowGolemMaxHealth);
|
|
||||||
snowGolemScale = Mth.clamp(getDouble("mobs.snow_golem.attributes.scale", snowGolemScale), 0.0625D, 16.0D);
|
|
||||||
+ snowGolemPutPumpkinBack = getBoolean("mobs.snow_golem.pumpkin-can-be-added-back", snowGolemPutPumpkinBack);
|
|
||||||
}
|
|
||||||
|
|
||||||
public boolean snifferRidable = false;
|
|
||||||
@@ -1124,7 +1124,7 @@ index 8e9ba307a0528eb1aef56bdc0f4ded0e71621253..654f5855e1b69f05205e6a132d79ac94
|
|||||||
float f = 1.0F + (this.random.nextFloat() - this.random.nextFloat()) * 0.2F;
|
float f = 1.0F + (this.random.nextFloat() - this.random.nextFloat()) * 0.2F;
|
||||||
this.playSound(SoundEvents.IRON_GOLEM_REPAIR, 1.0F, f);
|
this.playSound(SoundEvents.IRON_GOLEM_REPAIR, 1.0F, f);
|
||||||
diff --git a/net/minecraft/world/entity/animal/MushroomCow.java b/net/minecraft/world/entity/animal/MushroomCow.java
|
diff --git a/net/minecraft/world/entity/animal/MushroomCow.java b/net/minecraft/world/entity/animal/MushroomCow.java
|
||||||
index 12099a5eb45ee21520d3ba68ef26909d5949206d..696b0eb93f8c8fe30f4c2cabadc50de730f93c22 100644
|
index a8aeb79b1c1413d74a5d18a57bd4ba4beca6039c..1292146341022483f78a9128ef9d7a88089274a0 100644
|
||||||
--- a/net/minecraft/world/entity/animal/MushroomCow.java
|
--- a/net/minecraft/world/entity/animal/MushroomCow.java
|
||||||
+++ b/net/minecraft/world/entity/animal/MushroomCow.java
|
+++ b/net/minecraft/world/entity/animal/MushroomCow.java
|
||||||
@@ -55,6 +55,23 @@ public class MushroomCow extends Cow implements Shearable, VariantHolder<Mushroo
|
@@ -55,6 +55,23 @@ public class MushroomCow extends Cow implements Shearable, VariantHolder<Mushroo
|
||||||
@@ -1382,7 +1382,7 @@ index 16cc69b14fba16a5a5dfc05d63a40a5112314031..0cd22002a1af6075be4818a4b351ee71
|
|||||||
this.goalSelector.addGoal(2, new SitWhenOrderedToGoal(this));
|
this.goalSelector.addGoal(2, new SitWhenOrderedToGoal(this));
|
||||||
this.goalSelector.addGoal(2, new FollowOwnerGoal(this, 1.0, 5.0F, 1.0F));
|
this.goalSelector.addGoal(2, new FollowOwnerGoal(this, 1.0, 5.0F, 1.0F));
|
||||||
diff --git a/net/minecraft/world/entity/animal/Pig.java b/net/minecraft/world/entity/animal/Pig.java
|
diff --git a/net/minecraft/world/entity/animal/Pig.java b/net/minecraft/world/entity/animal/Pig.java
|
||||||
index d203d9c63c13f40a913235ad78a24a3bf489a083..70c60499a440aa4ac8bbc14d5fa440d9c51e2d82 100644
|
index bc41155e848b273a6e7e685e8fffa265ff8ba6e0..55628e4299c2d85cabddcad38fc1e40a851d64aa 100644
|
||||||
--- a/net/minecraft/world/entity/animal/Pig.java
|
--- a/net/minecraft/world/entity/animal/Pig.java
|
||||||
+++ b/net/minecraft/world/entity/animal/Pig.java
|
+++ b/net/minecraft/world/entity/animal/Pig.java
|
||||||
@@ -56,9 +56,27 @@ public class Pig extends Animal implements ItemSteerable, Saddleable {
|
@@ -56,9 +56,27 @@ public class Pig extends Animal implements ItemSteerable, Saddleable {
|
||||||
@@ -1699,7 +1699,7 @@ index e686c500e4b5f3e7b0e808af8b2e43ddbd163bef..c27bb9e8a4a5e8fdc8ae28dae8203859
|
|||||||
this.goalSelector.addGoal(2, new BreedGoal(this, 1.0));
|
this.goalSelector.addGoal(2, new BreedGoal(this, 1.0));
|
||||||
this.goalSelector.addGoal(3, new TemptGoal(this, 1.1, stack -> stack.is(ItemTags.SHEEP_FOOD), false));
|
this.goalSelector.addGoal(3, new TemptGoal(this, 1.1, stack -> stack.is(ItemTags.SHEEP_FOOD), false));
|
||||||
diff --git a/net/minecraft/world/entity/animal/SnowGolem.java b/net/minecraft/world/entity/animal/SnowGolem.java
|
diff --git a/net/minecraft/world/entity/animal/SnowGolem.java b/net/minecraft/world/entity/animal/SnowGolem.java
|
||||||
index 8871964fd735178804b95182db1fd6bc1088f69d..320035fd5e7120d58cb7d4432b8e85d92a243d8b 100644
|
index ac07260c01513fae5a8b9f1fe0f7f2bf113c6c3c..7bd5d82a11dda36389913925406a8a2c8e86abf6 100644
|
||||||
--- a/net/minecraft/world/entity/animal/SnowGolem.java
|
--- a/net/minecraft/world/entity/animal/SnowGolem.java
|
||||||
+++ b/net/minecraft/world/entity/animal/SnowGolem.java
|
+++ b/net/minecraft/world/entity/animal/SnowGolem.java
|
||||||
@@ -49,12 +49,31 @@ public class SnowGolem extends AbstractGolem implements Shearable, RangedAttackM
|
@@ -49,12 +49,31 @@ public class SnowGolem extends AbstractGolem implements Shearable, RangedAttackM
|
||||||
@@ -1751,9 +1751,9 @@ index 8871964fd735178804b95182db1fd6bc1088f69d..320035fd5e7120d58cb7d4432b8e85d9
|
|||||||
}
|
}
|
||||||
drops = org.bukkit.craftbukkit.inventory.CraftItemStack.asNMSCopy(event.getDrops());
|
drops = org.bukkit.craftbukkit.inventory.CraftItemStack.asNMSCopy(event.getDrops());
|
||||||
// Paper end - custom shear drops
|
// Paper end - custom shear drops
|
||||||
@@ -154,7 +174,7 @@ public class SnowGolem extends AbstractGolem implements Shearable, RangedAttackM
|
@@ -162,7 +182,7 @@ public class SnowGolem extends AbstractGolem implements Shearable, RangedAttackM
|
||||||
|
|
||||||
return InteractionResult.SUCCESS;
|
return InteractionResult.SUCCESS;
|
||||||
|
// Purpur end - Snowman drop and put back pumpkin
|
||||||
} else {
|
} else {
|
||||||
- return InteractionResult.PASS;
|
- return InteractionResult.PASS;
|
||||||
+ return tryRide(player, hand); // Purpur - Ridables
|
+ return tryRide(player, hand); // Purpur - Ridables
|
||||||
|
|||||||
@@ -0,0 +1,17 @@
|
|||||||
|
--- a/net/minecraft/world/entity/animal/SnowGolem.java
|
||||||
|
+++ b/net/minecraft/world/entity/animal/SnowGolem.java
|
||||||
|
@@ -153,6 +_,14 @@
|
||||||
|
}
|
||||||
|
|
||||||
|
return InteractionResult.SUCCESS;
|
||||||
|
+ // Purpur start - Snowman drop and put back pumpkin
|
||||||
|
+ } else if (level().purpurConfig.snowGolemPutPumpkinBack && !hasPumpkin() && itemInHand.getItem() == Blocks.CARVED_PUMPKIN.asItem()) {
|
||||||
|
+ setPumpkin(true);
|
||||||
|
+ if (!player.getAbilities().instabuild) {
|
||||||
|
+ itemInHand.shrink(1);
|
||||||
|
+ }
|
||||||
|
+ return InteractionResult.SUCCESS;
|
||||||
|
+ // Purpur end - Snowman drop and put back pumpkin
|
||||||
|
} else {
|
||||||
|
return InteractionResult.PASS;
|
||||||
|
}
|
||||||
@@ -1297,6 +1297,7 @@ public class PurpurWorldConfig {
|
|||||||
public boolean snowGolemLeaveTrailWhenRidden = false;
|
public boolean snowGolemLeaveTrailWhenRidden = false;
|
||||||
public double snowGolemMaxHealth = 4.0D;
|
public double snowGolemMaxHealth = 4.0D;
|
||||||
public double snowGolemScale = 1.0D;
|
public double snowGolemScale = 1.0D;
|
||||||
|
public boolean snowGolemPutPumpkinBack = false;
|
||||||
private void snowGolemSettings() {
|
private void snowGolemSettings() {
|
||||||
snowGolemRidable = getBoolean("mobs.snow_golem.ridable", snowGolemRidable);
|
snowGolemRidable = getBoolean("mobs.snow_golem.ridable", snowGolemRidable);
|
||||||
snowGolemRidableInWater = getBoolean("mobs.snow_golem.ridable-in-water", snowGolemRidableInWater);
|
snowGolemRidableInWater = getBoolean("mobs.snow_golem.ridable-in-water", snowGolemRidableInWater);
|
||||||
@@ -1309,6 +1310,7 @@ public class PurpurWorldConfig {
|
|||||||
}
|
}
|
||||||
snowGolemMaxHealth = getDouble("mobs.snow_golem.attributes.max_health", snowGolemMaxHealth);
|
snowGolemMaxHealth = getDouble("mobs.snow_golem.attributes.max_health", snowGolemMaxHealth);
|
||||||
snowGolemScale = Mth.clamp(getDouble("mobs.snow_golem.attributes.scale", snowGolemScale), 0.0625D, 16.0D);
|
snowGolemScale = Mth.clamp(getDouble("mobs.snow_golem.attributes.scale", snowGolemScale), 0.0625D, 16.0D);
|
||||||
|
snowGolemPutPumpkinBack = getBoolean("mobs.snow_golem.pumpkin-can-be-added-back", snowGolemPutPumpkinBack);
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean snifferRidable = false;
|
public boolean snifferRidable = false;
|
||||||
|
|||||||
Reference in New Issue
Block a user