mirror of
https://github.com/PurpurMC/Purpur.git
synced 2026-02-20 09:57:43 +01:00
Breedable Polar Bears
This commit is contained in:
committed by
granny
parent
fe5fcdab1b
commit
ad2831aaba
@@ -1414,10 +1414,10 @@ index d203d9c63c13f40a913235ad78a24a3bf489a083..70c60499a440aa4ac8bbc14d5fa440d9
|
||||
this.goalSelector.addGoal(3, new BreedGoal(this, 1.0));
|
||||
this.goalSelector.addGoal(4, new TemptGoal(this, 1.2, itemStack -> itemStack.is(Items.CARROT_ON_A_STICK), false));
|
||||
diff --git a/net/minecraft/world/entity/animal/PolarBear.java b/net/minecraft/world/entity/animal/PolarBear.java
|
||||
index f568c385e1427e183aefb5819013838aca95407b..c0356a2e1e4a5dbefb5f1546869f449e00b76b99 100644
|
||||
index fbd35f074a3045d483aabd9bc7e1c9c4f10a3167..711ed0d753494a92a003fc683146f289505ed7f6 100644
|
||||
--- a/net/minecraft/world/entity/animal/PolarBear.java
|
||||
+++ b/net/minecraft/world/entity/animal/PolarBear.java
|
||||
@@ -59,11 +59,40 @@ public class PolarBear extends Animal implements NeutralMob {
|
||||
@@ -59,6 +59,7 @@ public class PolarBear extends Animal implements NeutralMob {
|
||||
private int remainingPersistentAngerTime;
|
||||
@Nullable
|
||||
private UUID persistentAngerTarget;
|
||||
@@ -1425,7 +1425,9 @@ index f568c385e1427e183aefb5819013838aca95407b..c0356a2e1e4a5dbefb5f1546869f449e
|
||||
|
||||
public PolarBear(EntityType<? extends PolarBear> entityType, Level level) {
|
||||
super(entityType, level);
|
||||
@@ -87,6 +88,34 @@ public class PolarBear extends Animal implements NeutralMob {
|
||||
}
|
||||
// Purpur end - Breedable Polar Bears
|
||||
|
||||
+ // Purpur start - Ridables
|
||||
+ @Override
|
||||
@@ -1458,14 +1460,15 @@ index f568c385e1427e183aefb5819013838aca95407b..c0356a2e1e4a5dbefb5f1546869f449e
|
||||
@Nullable
|
||||
@Override
|
||||
public AgeableMob getBreedOffspring(ServerLevel level, AgeableMob otherParent) {
|
||||
@@ -79,12 +108,14 @@ public class PolarBear extends Animal implements NeutralMob {
|
||||
@@ -102,6 +131,7 @@ public class PolarBear extends Animal implements NeutralMob {
|
||||
protected void registerGoals() {
|
||||
super.registerGoals();
|
||||
this.goalSelector.addGoal(0, new FloatGoal(this));
|
||||
+ this.goalSelector.addGoal(0, new org.purpurmc.purpur.entity.ai.HasRider(this)); // Purpur - Ridables
|
||||
this.goalSelector.addGoal(1, new PolarBear.PolarBearMeleeAttackGoal());
|
||||
this.goalSelector.addGoal(1, new PanicGoal(this, 2.0, mob -> mob.isBaby() ? DamageTypeTags.PANIC_CAUSES : DamageTypeTags.PANIC_ENVIRONMENTAL_CAUSES));
|
||||
this.goalSelector.addGoal(4, new FollowParentGoal(this, 1.25));
|
||||
// Purpur start - Breedable Polar Bears
|
||||
@@ -114,6 +144,7 @@ public class PolarBear extends Animal implements NeutralMob {
|
||||
this.goalSelector.addGoal(5, new RandomStrollGoal(this, 1.0));
|
||||
this.goalSelector.addGoal(6, new LookAtPlayerGoal(this, Player.class, 6.0F));
|
||||
this.goalSelector.addGoal(7, new RandomLookAroundGoal(this));
|
||||
@@ -1473,7 +1476,7 @@ index f568c385e1427e183aefb5819013838aca95407b..c0356a2e1e4a5dbefb5f1546869f449e
|
||||
this.targetSelector.addGoal(1, new PolarBear.PolarBearHurtByTargetGoal());
|
||||
this.targetSelector.addGoal(2, new PolarBear.PolarBearAttackPlayersGoal());
|
||||
this.targetSelector.addGoal(3, new NearestAttackableTargetGoal<>(this, Player.class, 10, true, false, this::isAngryAt));
|
||||
@@ -203,6 +234,12 @@ public class PolarBear extends Animal implements NeutralMob {
|
||||
@@ -232,6 +263,12 @@ public class PolarBear extends Animal implements NeutralMob {
|
||||
if (!this.level().isClientSide) {
|
||||
this.updatePersistentAnger((ServerLevel)this.level(), true);
|
||||
}
|
||||
@@ -1486,7 +1489,7 @@ index f568c385e1427e183aefb5819013838aca95407b..c0356a2e1e4a5dbefb5f1546869f449e
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -222,6 +259,7 @@ public class PolarBear extends Animal implements NeutralMob {
|
||||
@@ -251,6 +288,7 @@ public class PolarBear extends Animal implements NeutralMob {
|
||||
|
||||
public void setStanding(boolean standing) {
|
||||
this.entityData.set(DATA_STANDING_ID, standing);
|
||||
|
||||
Reference in New Issue
Block a user