mirror of
https://github.com/PurpurMC/Purpur.git
synced 2026-02-21 10:27:44 +01:00
progress
This commit is contained in:
@@ -5,7 +5,7 @@ Subject: [PATCH] Allow leashing villagers
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java
|
||||
index 4063bceb87da208db76da2a820e5338ba1b5119b..f4c9e6184f39dea9ea1fda98333734773858d0f8 100644
|
||||
index f605b87f8d0ea0f3646ab856e8fbf12a25c24594..0cbc90a8c1277a0f35e6636ca73b134b22544db3 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/Mob.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/Mob.java
|
||||
@@ -47,6 +47,7 @@ import net.minecraft.world.entity.decoration.HangingEntity;
|
||||
@@ -16,7 +16,7 @@ index 4063bceb87da208db76da2a820e5338ba1b5119b..f4c9e6184f39dea9ea1fda9833373477
|
||||
import net.minecraft.world.entity.player.Player;
|
||||
import net.minecraft.world.entity.vehicle.Boat;
|
||||
import net.minecraft.world.item.ArmorItem;
|
||||
@@ -1207,6 +1208,7 @@ public abstract class Mob extends LivingEntity {
|
||||
@@ -1209,6 +1210,7 @@ public abstract class Mob extends LivingEntity {
|
||||
if (!this.isAlive()) {
|
||||
return InteractionResult.PASS;
|
||||
} else if (this.getLeashHolder() == player) {
|
||||
@@ -49,7 +49,7 @@ index 897dcb4eb6e5530fb612e16551eb9e4f457985f5..20cb368076017e6dfc28ef4c2af778c0
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/npc/WanderingTrader.java b/src/main/java/net/minecraft/world/entity/npc/WanderingTrader.java
|
||||
index 11576b86368479c319691b58ad47f1f1e1479c68..a17f61874a8999973d7368cf729676dfa9da5569 100644
|
||||
index 05fc739b8dfe2ec74a2b070f5cdcd945f5b04b1a..f879faf7ebe01697ab36247dacdd46d4b4fbb77e 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/npc/WanderingTrader.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/npc/WanderingTrader.java
|
||||
@@ -95,6 +95,13 @@ public class WanderingTrader extends net.minecraft.world.entity.npc.AbstractVill
|
||||
@@ -59,7 +59,7 @@ index 11576b86368479c319691b58ad47f1f1e1479c68..a17f61874a8999973d7368cf729676df
|
||||
+ // Purpur start
|
||||
+ @Override
|
||||
+ public boolean canBeLeashed(Player player) {
|
||||
+ return level.purpurConfig.villagerTraderCanBeLeashed && !this.isLeashed();
|
||||
+ return level.purpurConfig.wanderingTraderCanBeLeashed && !this.isLeashed();
|
||||
+ }
|
||||
+ // Purpur end
|
||||
+
|
||||
@@ -67,28 +67,35 @@ index 11576b86368479c319691b58ad47f1f1e1479c68..a17f61874a8999973d7368cf729676df
|
||||
@Override
|
||||
public AgeableMob getBreedOffspring(ServerLevel world, AgeableMob entity) {
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 3be920c0fd4b406668cc18fbbb2dec6a7f0c2ab2..b6b362befd94e4cca156296058019c8a26c7b2f4 100644
|
||||
index a53f827843407ae4c8c6252796af66da41683caa..ab902dc191c7bb0d90e7f3e6b045a017c8b50577 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -319,17 +319,21 @@ public class PurpurWorldConfig {
|
||||
|
||||
public int villagerBrainTicks = 1;
|
||||
@@ -718,6 +718,7 @@ public class PurpurWorldConfig {
|
||||
public boolean villagerUseBrainTicksOnlyWhenLagging = true;
|
||||
+ public boolean villagerCanBeLeashed = false;
|
||||
public boolean villagerFarmingBypassMobGriefing = false;
|
||||
public boolean villagerFollowEmeraldBlock = false;
|
||||
+ public boolean villagerCanBeLeashed = false;
|
||||
private void villagerSettings() {
|
||||
villagerBrainTicks = getInt("mobs.villager.brain-ticks", villagerBrainTicks);
|
||||
villagerRidable = getBoolean("mobs.villager.ridable", villagerRidable);
|
||||
villagerRidableInWater = getBoolean("mobs.villager.ridable-in-water", villagerRidableInWater);
|
||||
@@ -725,6 +726,7 @@ public class PurpurWorldConfig {
|
||||
villagerUseBrainTicksOnlyWhenLagging = getBoolean("mobs.villager.use-brain-ticks-only-when-lagging", villagerUseBrainTicksOnlyWhenLagging);
|
||||
+ villagerCanBeLeashed = getBoolean("mobs.villager.can-be-leashed", villagerCanBeLeashed);
|
||||
villagerFarmingBypassMobGriefing = getBoolean("mobs.villager.bypass-mob-griefing", villagerFarmingBypassMobGriefing);
|
||||
villagerFollowEmeraldBlock = getBoolean("mobs.villager.follow-emerald-blocks", villagerFollowEmeraldBlock);
|
||||
+ villagerCanBeLeashed = getBoolean("mobs.villager.can-be-leashed", villagerCanBeLeashed);
|
||||
}
|
||||
|
||||
+ public boolean villagerTraderCanBeLeashed = false;
|
||||
public boolean villagerTraderFollowEmeraldBlock = false;
|
||||
private void villagerTraderSettings() {
|
||||
+ villagerTraderCanBeLeashed = getBoolean("mobs.wandering_trader.can-be-leashed", villagerTraderCanBeLeashed);
|
||||
villagerTraderFollowEmeraldBlock = getBoolean("mobs.wandering_trader.follow-emerald-blocks", villagerTraderFollowEmeraldBlock);
|
||||
public boolean vindicatorRidable = false;
|
||||
@@ -737,10 +739,12 @@ public class PurpurWorldConfig {
|
||||
public boolean wanderingTraderRidable = false;
|
||||
public boolean wanderingTraderRidableInWater = false;
|
||||
public boolean wanderingTraderFollowEmeraldBlock = false;
|
||||
+ public boolean wanderingTraderCanBeLeashed = false;
|
||||
private void wanderingTraderSettings() {
|
||||
wanderingTraderRidable = getBoolean("mobs.wandering_trader.ridable", wanderingTraderRidable);
|
||||
wanderingTraderRidableInWater = getBoolean("mobs.wandering_trader.ridable-in-water", wanderingTraderRidableInWater);
|
||||
wanderingTraderFollowEmeraldBlock = getBoolean("mobs.wandering_trader.follow-emerald-blocks", wanderingTraderFollowEmeraldBlock);
|
||||
+ wanderingTraderCanBeLeashed = getBoolean("mobs.wandering_trader.can-be-leashed", wanderingTraderCanBeLeashed);
|
||||
}
|
||||
|
||||
public boolean witchRidable = false;
|
||||
|
||||
Reference in New Issue
Block a user