mirror of
https://github.com/PurpurMC/Purpur.git
synced 2026-02-21 10:27:44 +01:00
save stuff here
This commit is contained in:
@@ -5,33 +5,12 @@ Subject: [PATCH] Breedable Polar Bears
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/animal/PolarBear.java b/src/main/java/net/minecraft/world/entity/animal/PolarBear.java
|
||||
index 3f185b02dc23942d2216cf9a8bdc493ffa2e75d9..05739e69f1a11138d7c13bb9d8ca7695753ae40c 100644
|
||||
index 48ec595e76c09cf719477a543364f1206664afa5..b2cf680e377f849a7cc17136ebca3cf33e34048c 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/animal/PolarBear.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/animal/PolarBear.java
|
||||
@@ -74,17 +74,17 @@ public class PolarBear extends Animal implements NeutralMob {
|
||||
// Purpur start
|
||||
@Override
|
||||
public boolean isRidable() {
|
||||
- return level.purpurConfig.polarBearRidable;
|
||||
+ return level().purpurConfig.polarBearRidable;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean dismountsUnderwater() {
|
||||
- return level.purpurConfig.useDismountsUnderwaterTag ? super.dismountsUnderwater() : !level.purpurConfig.polarBearRidableInWater;
|
||||
+ return level().purpurConfig.useDismountsUnderwaterTag ? super.dismountsUnderwater() : !level().purpurConfig.polarBearRidableInWater;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isControllable() {
|
||||
- return level.purpurConfig.polarBearControllable;
|
||||
+ return level().purpurConfig.polarBearControllable;
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -99,6 +99,27 @@ public class PolarBear extends Animal implements NeutralMob {
|
||||
this.getAttribute(Attributes.MAX_HEALTH).setBaseValue(this.level().purpurConfig.polarBearMaxHealth);
|
||||
}
|
||||
// Purpur end
|
||||
|
||||
+ public boolean canMate(Animal other) {
|
||||
+ if (other == this) {
|
||||
@@ -62,7 +41,7 @@ index 3f185b02dc23942d2216cf9a8bdc493ffa2e75d9..05739e69f1a11138d7c13bb9d8ca7695
|
||||
@Override
|
||||
public boolean isFood(ItemStack stack) {
|
||||
- return false;
|
||||
+ return level.purpurConfig.polarBearBreedableItem != null && stack.getItem() == level.purpurConfig.polarBearBreedableItem; // Purpur
|
||||
+ return level().purpurConfig.polarBearBreedableItem != null && stack.getItem() == level().purpurConfig.polarBearBreedableItem; // Purpur
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -73,26 +52,26 @@ index 3f185b02dc23942d2216cf9a8bdc493ffa2e75d9..05739e69f1a11138d7c13bb9d8ca7695
|
||||
+ // Purpur start
|
||||
+ if (level().purpurConfig.polarBearBreedableItem != null) {
|
||||
+ this.goalSelector.addGoal(2, new net.minecraft.world.entity.ai.goal.BreedGoal(this, 1.0D));
|
||||
+ this.goalSelector.addGoal(3, new net.minecraft.world.entity.ai.goal.TemptGoal(this, 1.0D, net.minecraft.world.item.crafting.Ingredient.of(level.purpurConfig.polarBearBreedableItem), false));
|
||||
+ this.goalSelector.addGoal(3, new net.minecraft.world.entity.ai.goal.TemptGoal(this, 1.0D, net.minecraft.world.item.crafting.Ingredient.of(level().purpurConfig.polarBearBreedableItem), false));
|
||||
+ }
|
||||
+ // Purpur end
|
||||
this.goalSelector.addGoal(4, new FollowParentGoal(this, 1.25D));
|
||||
this.goalSelector.addGoal(5, new RandomStrollGoal(this, 1.0D));
|
||||
this.goalSelector.addGoal(6, new LookAtPlayerGoal(this, Player.class, 6.0F));
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
index b60c5e84d13d7cd51d1203a35a9382c1ff6dec55..c9327c407d1fce1a80307eb3ad2c4c5c123fba8e 100644
|
||||
index 15e98301b1b77c0e0df42aa923d3d55913bd4767..a7873252ba4ff059beeaa69017e51772468b58a2 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||
@@ -686,6 +686,8 @@ public class PurpurWorldConfig {
|
||||
}
|
||||
|
||||
@@ -967,6 +967,8 @@ public class PurpurWorldConfig {
|
||||
public boolean polarBearRidableInWater = true;
|
||||
public boolean polarBearControllable = true;
|
||||
public double polarBearMaxHealth = 30.0D;
|
||||
+ public String polarBearBreedableItemString = "";
|
||||
+ public Item polarBearBreedableItem = null;
|
||||
private void polarBearSettings() {
|
||||
if (PurpurConfig.version < 10) {
|
||||
double oldValue = getDouble("mobs.polar_bear.attributes.max-health", polarBearMaxHealth);
|
||||
@@ -693,6 +695,9 @@ public class PurpurWorldConfig {
|
||||
polarBearRidable = getBoolean("mobs.polar_bear.ridable", polarBearRidable);
|
||||
polarBearRidableInWater = getBoolean("mobs.polar_bear.ridable-in-water", polarBearRidableInWater);
|
||||
@@ -977,6 +979,9 @@ public class PurpurWorldConfig {
|
||||
set("mobs.polar_bear.attributes.max_health", oldValue);
|
||||
}
|
||||
polarBearMaxHealth = getDouble("mobs.polar_bear.attributes.max_health", polarBearMaxHealth);
|
||||
@@ -101,4 +80,4 @@ index b60c5e84d13d7cd51d1203a35a9382c1ff6dec55..c9327c407d1fce1a80307eb3ad2c4c5c
|
||||
+ if (item != Items.AIR) polarBearBreedableItem = item;
|
||||
}
|
||||
|
||||
public double pufferfishMaxHealth = 3.0D;
|
||||
public boolean pufferfishRidable = false;
|
||||
|
||||
Reference in New Issue
Block a user