mirror of
https://github.com/PurpurMC/Purpur.git
synced 2026-02-17 16:37:43 +01:00
Chance for azalea blocks to grow into trees naturally
This commit is contained in:
committed by
granny
parent
ee67d017e2
commit
8ce5cc6607
@@ -1,79 +0,0 @@
|
|||||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
||||||
From: William Blake Galbreath <blake.galbreath@gmail.com>
|
|
||||||
Date: Mon, 23 Aug 2021 20:57:04 -0500
|
|
||||||
Subject: [PATCH] Chance for azalea blocks to grow into trees naturally
|
|
||||||
|
|
||||||
|
|
||||||
diff --git a/net/minecraft/world/level/block/AzaleaBlock.java b/net/minecraft/world/level/block/AzaleaBlock.java
|
|
||||||
index affbbf6abc6bc09ecb652c1dee92aa297458bc39..c58e07f2a99e3cbb5bd5d3693c006919e0710b7a 100644
|
|
||||||
--- a/net/minecraft/world/level/block/AzaleaBlock.java
|
|
||||||
+++ b/net/minecraft/world/level/block/AzaleaBlock.java
|
|
||||||
@@ -50,6 +50,20 @@ public class AzaleaBlock extends BushBlock implements BonemealableBlock {
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void performBonemeal(ServerLevel world, RandomSource random, BlockPos pos, BlockState state) {
|
|
||||||
+ // Purpur start - Chance for azalea blocks to grow into trees naturally
|
|
||||||
+ growTree(world, random, pos, state);
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+ @Override
|
|
||||||
+ public void randomTick(net.minecraft.world.level.block.state.BlockState state, ServerLevel world, BlockPos pos, RandomSource random) {
|
|
||||||
+ double chance = state.getBlock() == Blocks.FLOWERING_AZALEA ? world.purpurConfig.floweringAzaleaGrowthChance : world.purpurConfig.azaleaGrowthChance;
|
|
||||||
+ if (chance > 0.0D && world.getMaxLocalRawBrightness(pos.above()) > 9 && random.nextDouble() < chance) {
|
|
||||||
+ growTree(world, random, pos, state);
|
|
||||||
+ }
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+ private void growTree(ServerLevel world, RandomSource random, BlockPos pos, net.minecraft.world.level.block.state.BlockState state) {
|
|
||||||
+ // Purpur end - Chance for azalea blocks to grow into trees naturally
|
|
||||||
TreeGrower.AZALEA.growTree(world, world.getChunkSource().getGenerator(), pos, state, random);
|
|
||||||
}
|
|
||||||
|
|
||||||
diff --git a/net/minecraft/world/level/block/Blocks.java b/net/minecraft/world/level/block/Blocks.java
|
|
||||||
index 9bafac9b2c7b487f745fb64354f4bbc6a7ded468..c5f8227cd9631d98cc8404e3f6d6109a55c617aa 100644
|
|
||||||
--- a/net/minecraft/world/level/block/Blocks.java
|
|
||||||
+++ b/net/minecraft/world/level/block/Blocks.java
|
|
||||||
@@ -6454,6 +6454,7 @@ public class Blocks {
|
|
||||||
BlockBehaviour.Properties.of()
|
|
||||||
.mapColor(MapColor.PLANT)
|
|
||||||
.forceSolidOff()
|
|
||||||
+ .randomTicks() // Purpur - Chance for azalea blocks to grow into trees naturally
|
|
||||||
.instabreak()
|
|
||||||
.sound(SoundType.AZALEA)
|
|
||||||
.noOcclusion()
|
|
||||||
@@ -6465,6 +6466,7 @@ public class Blocks {
|
|
||||||
BlockBehaviour.Properties.of()
|
|
||||||
.mapColor(MapColor.PLANT)
|
|
||||||
.forceSolidOff()
|
|
||||||
+ .randomTicks() // Purpur - Chance for azalea blocks to grow into trees naturally
|
|
||||||
.instabreak()
|
|
||||||
.sound(SoundType.FLOWERING_AZALEA)
|
|
||||||
.noOcclusion()
|
|
||||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
|
||||||
index e5934c276e286820944488e2d629b01d58dbf200..c44be697e59049adb50967b6d91016035fb69956 100644
|
|
||||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
|
||||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
|
||||||
@@ -774,6 +774,11 @@ public class PurpurWorldConfig {
|
|
||||||
anvilColorsUseMiniMessage = getBoolean("blocks.anvil.use-mini-message", anvilColorsUseMiniMessage);
|
|
||||||
}
|
|
||||||
|
|
||||||
+ public double azaleaGrowthChance = 0.0D;
|
|
||||||
+ private void azaleaSettings() {
|
|
||||||
+ azaleaGrowthChance = getDouble("blocks.azalea.growth-chance", azaleaGrowthChance);
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
public int beaconLevelOne = 20;
|
|
||||||
public int beaconLevelTwo = 30;
|
|
||||||
public int beaconLevelThree = 40;
|
|
||||||
@@ -911,6 +916,11 @@ public class PurpurWorldConfig {
|
|
||||||
farmlandTramplingFeatherFalling = getBoolean("blocks.farmland.feather-fall-distance-affects-trampling", farmlandTramplingFeatherFalling);
|
|
||||||
}
|
|
||||||
|
|
||||||
+ public double floweringAzaleaGrowthChance = 0.0D;
|
|
||||||
+ private void floweringAzaleaSettings() {
|
|
||||||
+ floweringAzaleaGrowthChance = getDouble("blocks.flowering_azalea.growth-chance", floweringAzaleaGrowthChance);
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
public boolean furnaceUseLavaFromUnderneath = false;
|
|
||||||
private void furnaceSettings() {
|
|
||||||
if (PurpurConfig.version < 17) {
|
|
||||||
@@ -0,0 +1,23 @@
|
|||||||
|
--- a/net/minecraft/world/level/block/AzaleaBlock.java
|
||||||
|
+++ b/net/minecraft/world/level/block/AzaleaBlock.java
|
||||||
|
@@ -50,6 +_,20 @@
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void performBonemeal(ServerLevel level, RandomSource random, BlockPos pos, BlockState state) {
|
||||||
|
+ // Purpur start - Chance for azalea blocks to grow into trees naturally
|
||||||
|
+ growTree(level, random, pos, state);
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ @Override
|
||||||
|
+ public void randomTick(net.minecraft.world.level.block.state.BlockState state, ServerLevel world, BlockPos pos, RandomSource random) {
|
||||||
|
+ double chance = state.getBlock() == Blocks.FLOWERING_AZALEA ? world.purpurConfig.floweringAzaleaGrowthChance : world.purpurConfig.azaleaGrowthChance;
|
||||||
|
+ if (chance > 0.0D && world.getMaxLocalRawBrightness(pos.above()) > 9 && random.nextDouble() < chance) {
|
||||||
|
+ growTree(world, random, pos, state);
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ private void growTree(ServerLevel level, RandomSource random, BlockPos pos, net.minecraft.world.level.block.state.BlockState state) {
|
||||||
|
+ // Purpur end - Chance for azalea blocks to grow into trees naturally
|
||||||
|
TreeGrower.AZALEA.growTree(level, level.getChunkSource().getGenerator(), pos, state, random);
|
||||||
|
}
|
||||||
|
|
||||||
@@ -0,0 +1,18 @@
|
|||||||
|
--- a/net/minecraft/world/level/block/Blocks.java
|
||||||
|
+++ b/net/minecraft/world/level/block/Blocks.java
|
||||||
|
@@ -6486,6 +_,7 @@
|
||||||
|
BlockBehaviour.Properties.of()
|
||||||
|
.mapColor(MapColor.PLANT)
|
||||||
|
.forceSolidOff()
|
||||||
|
+ .randomTicks() // Purpur - Chance for azalea blocks to grow into trees naturally
|
||||||
|
.instabreak()
|
||||||
|
.sound(SoundType.AZALEA)
|
||||||
|
.noOcclusion()
|
||||||
|
@@ -6497,6 +_,7 @@
|
||||||
|
BlockBehaviour.Properties.of()
|
||||||
|
.mapColor(MapColor.PLANT)
|
||||||
|
.forceSolidOff()
|
||||||
|
+ .randomTicks() // Purpur - Chance for azalea blocks to grow into trees naturally
|
||||||
|
.instabreak()
|
||||||
|
.sound(SoundType.FLOWERING_AZALEA)
|
||||||
|
.noOcclusion()
|
||||||
@@ -773,6 +773,11 @@ public class PurpurWorldConfig {
|
|||||||
anvilColorsUseMiniMessage = getBoolean("blocks.anvil.use-mini-message", anvilColorsUseMiniMessage);
|
anvilColorsUseMiniMessage = getBoolean("blocks.anvil.use-mini-message", anvilColorsUseMiniMessage);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public double azaleaGrowthChance = 0.0D;
|
||||||
|
private void azaleaSettings() {
|
||||||
|
azaleaGrowthChance = getDouble("blocks.azalea.growth-chance", azaleaGrowthChance);
|
||||||
|
}
|
||||||
|
|
||||||
public int beaconLevelOne = 20;
|
public int beaconLevelOne = 20;
|
||||||
public int beaconLevelTwo = 30;
|
public int beaconLevelTwo = 30;
|
||||||
public int beaconLevelThree = 40;
|
public int beaconLevelThree = 40;
|
||||||
@@ -910,6 +915,11 @@ public class PurpurWorldConfig {
|
|||||||
farmlandTramplingFeatherFalling = getBoolean("blocks.farmland.feather-fall-distance-affects-trampling", farmlandTramplingFeatherFalling);
|
farmlandTramplingFeatherFalling = getBoolean("blocks.farmland.feather-fall-distance-affects-trampling", farmlandTramplingFeatherFalling);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public double floweringAzaleaGrowthChance = 0.0D;
|
||||||
|
private void floweringAzaleaSettings() {
|
||||||
|
floweringAzaleaGrowthChance = getDouble("blocks.flowering_azalea.growth-chance", floweringAzaleaGrowthChance);
|
||||||
|
}
|
||||||
|
|
||||||
public boolean furnaceUseLavaFromUnderneath = false;
|
public boolean furnaceUseLavaFromUnderneath = false;
|
||||||
private void furnaceSettings() {
|
private void furnaceSettings() {
|
||||||
if (PurpurConfig.version < 17) {
|
if (PurpurConfig.version < 17) {
|
||||||
|
|||||||
Reference in New Issue
Block a user