mirror of
https://github.com/PurpurMC/Purpur.git
synced 2026-02-17 16:37:43 +01:00
more progress
This commit is contained in:
@@ -1,186 +0,0 @@
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Jason Penilla <11360596+jpenilla@users.noreply.github.com>
|
||||
Date: Tue, 17 Nov 2020 03:23:48 -0800
|
||||
Subject: [PATCH] Apply display names from item forms of entities to entities
|
||||
and vice versa
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/decoration/EntityArmorStand.java b/src/main/java/net/minecraft/world/entity/decoration/EntityArmorStand.java
|
||||
index 89d3734489b65245e815376edf4e2d9baea1563a..43dc0925887e2e9e86445cccff57be7994ca0d58 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/decoration/EntityArmorStand.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/decoration/EntityArmorStand.java
|
||||
@@ -588,7 +588,13 @@ public class EntityArmorStand extends EntityLiving {
|
||||
}
|
||||
|
||||
private void f(DamageSource damagesource) {
|
||||
- drops.add(org.bukkit.craftbukkit.inventory.CraftItemStack.asBukkitCopy(new ItemStack(Items.ARMOR_STAND))); // CraftBukkit - add to drops
|
||||
+ // Purpur start
|
||||
+ final ItemStack armorStand = new ItemStack(Items.ARMOR_STAND);
|
||||
+ if (this.world.purpurConfig.persistentDroppableEntityDisplayNames && this.hasCustomName()) {
|
||||
+ armorStand.setName(this.getCustomName());
|
||||
+ }
|
||||
+ drops.add(org.bukkit.craftbukkit.inventory.CraftItemStack.asBukkitCopy(armorStand)); // CraftBukkit - add to drops
|
||||
+ // Purpur end
|
||||
this.g(damagesource);
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/decoration/EntityItemFrame.java b/src/main/java/net/minecraft/world/entity/decoration/EntityItemFrame.java
|
||||
index 43152a6c70c9433d627a58051101530ddd693307..eb07db442c5a0da73249f4a02be7dacae0ff0e45 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/decoration/EntityItemFrame.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/decoration/EntityItemFrame.java
|
||||
@@ -229,7 +229,13 @@ public class EntityItemFrame extends EntityHanging {
|
||||
}
|
||||
|
||||
if (flag) {
|
||||
- this.a((IMaterial) Items.ITEM_FRAME);
|
||||
+ // Purpur start
|
||||
+ final ItemStack itemFrame = new ItemStack(Items.ITEM_FRAME);
|
||||
+ if (this.world.purpurConfig.persistentDroppableEntityDisplayNames && this.hasCustomName()) {
|
||||
+ itemFrame.setName(this.getCustomName());
|
||||
+ }
|
||||
+ this.dropItem(itemFrame);
|
||||
+ // Purpur end
|
||||
}
|
||||
|
||||
if (!itemstack.isEmpty()) {
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/decoration/EntityPainting.java b/src/main/java/net/minecraft/world/entity/decoration/EntityPainting.java
|
||||
index 3de0f21648ca60bdfcbc078bca896d51bf84e207..7517e861301e0c329c70aa6f2bf5aa40114b6589 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/decoration/EntityPainting.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/decoration/EntityPainting.java
|
||||
@@ -108,7 +108,13 @@ public class EntityPainting extends EntityHanging {
|
||||
}
|
||||
}
|
||||
|
||||
- this.a((IMaterial) Items.PAINTING);
|
||||
+ // Purpur start
|
||||
+ final ItemStack painting = new ItemStack(Items.PAINTING);
|
||||
+ if (this.world.purpurConfig.persistentDroppableEntityDisplayNames && this.hasCustomName()) {
|
||||
+ painting.setName(this.getCustomName());
|
||||
+ }
|
||||
+ this.dropItem(painting);
|
||||
+ // Purpur end
|
||||
}
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/vehicle/EntityBoat.java b/src/main/java/net/minecraft/world/entity/vehicle/EntityBoat.java
|
||||
index e5cda8c040c93639211dacbf5b0c7cd6a9df9e6d..9cd1a2a2a8db1d8daf7c712d6bd03fad1b048485 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/vehicle/EntityBoat.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/vehicle/EntityBoat.java
|
||||
@@ -201,7 +201,13 @@ public class EntityBoat extends Entity {
|
||||
}
|
||||
// CraftBukkit end
|
||||
if (!flag && this.world.getGameRules().getBoolean(GameRules.DO_ENTITY_DROPS)) {
|
||||
- this.a((IMaterial) this.g());
|
||||
+ // Purpur start
|
||||
+ final ItemStack boat = new ItemStack(this.getBoatItem());
|
||||
+ if (this.world.purpurConfig.persistentDroppableEntityDisplayNames && this.hasCustomName()) {
|
||||
+ boat.setName(this.getCustomName());
|
||||
+ }
|
||||
+ this.dropItem(boat);
|
||||
+ // Purpur end
|
||||
}
|
||||
|
||||
this.die();
|
||||
diff --git a/src/main/java/net/minecraft/world/item/ItemArmorStand.java b/src/main/java/net/minecraft/world/item/ItemArmorStand.java
|
||||
index cd46df5485ebfd597ea72360a27872d46174ee19..245d3fe09feb9dc27b097642d40664a9f2377581 100644
|
||||
--- a/src/main/java/net/minecraft/world/item/ItemArmorStand.java
|
||||
+++ b/src/main/java/net/minecraft/world/item/ItemArmorStand.java
|
||||
@@ -63,6 +63,14 @@ public class ItemArmorStand extends Item {
|
||||
return EnumInteractionResult.FAIL;
|
||||
}
|
||||
// CraftBukkit end
|
||||
+ // Purpur start
|
||||
+ if (itemactioncontext.getWorld().purpurConfig.persistentDroppableEntityDisplayNames && itemactioncontext.getItemStack().hasName()) {
|
||||
+ entityarmorstand.setCustomName(itemactioncontext.getItemStack().getName());
|
||||
+ if (itemactioncontext.getWorld().purpurConfig.armorstandSetNameVisible) {
|
||||
+ entityarmorstand.setCustomNameVisible(true);
|
||||
+ }
|
||||
+ }
|
||||
+ // Purpur end
|
||||
worldserver.addAllEntities(entityarmorstand); // Paper - moved down
|
||||
world.playSound((EntityHuman) null, entityarmorstand.locX(), entityarmorstand.locY(), entityarmorstand.locZ(), SoundEffects.ENTITY_ARMOR_STAND_PLACE, SoundCategory.BLOCKS, 0.75F, 0.8F);
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/world/item/ItemBoat.java b/src/main/java/net/minecraft/world/item/ItemBoat.java
|
||||
index 1d812b3e27f87213afc3e441eb20ca984458ce2a..636a8bc76d436fc770b4e05a93f1991210b64230 100644
|
||||
--- a/src/main/java/net/minecraft/world/item/ItemBoat.java
|
||||
+++ b/src/main/java/net/minecraft/world/item/ItemBoat.java
|
||||
@@ -65,6 +65,11 @@ public class ItemBoat extends Item {
|
||||
|
||||
entityboat.setType(this.b);
|
||||
entityboat.yaw = entityhuman.yaw;
|
||||
+ // Purpur start
|
||||
+ if (world.purpurConfig.persistentDroppableEntityDisplayNames && itemstack.hasName()) {
|
||||
+ entityboat.setCustomName(itemstack.getName());
|
||||
+ }
|
||||
+ // Purpur end
|
||||
if (!world.getCubes(entityboat, entityboat.getBoundingBox().g(-0.1D))) {
|
||||
return InteractionResultWrapper.fail(itemstack);
|
||||
} else {
|
||||
diff --git a/src/main/java/net/minecraft/world/item/ItemHanging.java b/src/main/java/net/minecraft/world/item/ItemHanging.java
|
||||
index bbd3bb2d12e500d15485598783d39b0cb63a6d83..8e4c3304779cfccf7d45d4843f9c15bffce8ba07 100644
|
||||
--- a/src/main/java/net/minecraft/world/item/ItemHanging.java
|
||||
+++ b/src/main/java/net/minecraft/world/item/ItemHanging.java
|
||||
@@ -39,7 +39,7 @@ public class ItemHanging extends Item {
|
||||
return EnumInteractionResult.FAIL;
|
||||
} else {
|
||||
World world = itemactioncontext.getWorld();
|
||||
- Object object;
|
||||
+ Entity object; // Purpur
|
||||
|
||||
if (this.a == EntityTypes.PAINTING) {
|
||||
object = new EntityPainting(world, blockposition1, enumdirection);
|
||||
@@ -55,6 +55,11 @@ public class ItemHanging extends Item {
|
||||
|
||||
if (nbttagcompound != null) {
|
||||
EntityTypes.a(world, entityhuman, (Entity) object, nbttagcompound);
|
||||
+ // Purpur start
|
||||
+ if (itemactioncontext.getWorld().purpurConfig.persistentDroppableEntityDisplayNames && itemactioncontext.getItemStack().hasName()) {
|
||||
+ object.setCustomName(itemactioncontext.getItemStack().getName());
|
||||
+ }
|
||||
+ // Purpur end
|
||||
}
|
||||
|
||||
if (((EntityHanging) object).survives()) {
|
||||
diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java
|
||||
index 2aa761656ce75f78732c502fd4ce65034b6c2919..a4c41caae425e054db3f40a9abc41f45ccd20730 100644
|
||||
--- a/src/main/java/net/minecraft/world/item/ItemStack.java
|
||||
+++ b/src/main/java/net/minecraft/world/item/ItemStack.java
|
||||
@@ -788,6 +788,7 @@ public final class ItemStack {
|
||||
return this.getItem().h(this);
|
||||
}
|
||||
|
||||
+ public ItemStack setName(@Nullable IChatBaseComponent component) { return this.a(component); } // Purpur - OBFHELPER
|
||||
public ItemStack a(@Nullable IChatBaseComponent ichatbasecomponent) {
|
||||
NBTTagCompound nbttagcompound = this.a("display");
|
||||
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index bd37234624a720c1077aabf0123de61a0d4e05cb..b650293ff3315760e29307113e29fb2731af472b 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -83,8 +83,10 @@ public class PurpurWorldConfig {
|
||||
return PurpurConfig.config.getString("world-settings." + worldName + "." + path, PurpurConfig.config.getString("world-settings.default." + path));
|
||||
}
|
||||
|
||||
+ public boolean armorstandSetNameVisible = false;
|
||||
public float armorstandStepHeight = 0.0F;
|
||||
private void armorstandSettings() {
|
||||
+ armorstandSetNameVisible = getBoolean("gameplay-mechanics.armorstand.set-name-visible-when-placing-with-custom-name", armorstandSetNameVisible);
|
||||
armorstandStepHeight = (float) getDouble("gameplay-mechanics.armorstand.step-height", armorstandStepHeight);
|
||||
}
|
||||
|
||||
@@ -261,6 +263,7 @@ public class PurpurWorldConfig {
|
||||
public boolean entitiesCanUsePortals = true;
|
||||
public boolean milkCuresBadOmen = true;
|
||||
public boolean persistentTileEntityDisplayNames = false;
|
||||
+ public boolean persistentDroppableEntityDisplayNames = false;
|
||||
public double tridentLoyaltyVoidReturnHeight = 0.0D;
|
||||
public double voidDamageHeight = -64.0D;
|
||||
public double voidDamageDealt = 4.0D;
|
||||
@@ -274,6 +277,7 @@ public class PurpurWorldConfig {
|
||||
entitiesCanUsePortals = getBoolean("gameplay-mechanics.entities-can-use-portals", entitiesCanUsePortals);
|
||||
milkCuresBadOmen = getBoolean("gameplay-mechanics.milk-cures-bad-omen", milkCuresBadOmen);
|
||||
persistentTileEntityDisplayNames = getBoolean("gameplay-mechanics.persistent-tileentity-display-names-and-lore", persistentTileEntityDisplayNames);
|
||||
+ persistentDroppableEntityDisplayNames = getBoolean("gameplay-mechanics.persistent-droppable-entity-display-names", persistentDroppableEntityDisplayNames);
|
||||
tridentLoyaltyVoidReturnHeight = getDouble("gameplay-mechanics.trident-loyalty-void-return-height", tridentLoyaltyVoidReturnHeight);
|
||||
voidDamageHeight = getDouble("gameplay-mechanics.void-damage-height", voidDamageHeight);
|
||||
voidDamageDealt = getDouble("gameplay-mechanics.void-damage-dealt", voidDamageDealt);
|
||||
@@ -1,46 +0,0 @@
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Jason Penilla <11360596+jpenilla@users.noreply.github.com>
|
||||
Date: Tue, 17 Nov 2020 13:12:09 -0800
|
||||
Subject: [PATCH] Set name visible when using a Name Tag on an Armor Stand
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/item/ItemNameTag.java b/src/main/java/net/minecraft/world/item/ItemNameTag.java
|
||||
index b9b2b27e534ba87a1aae3c521f393a066a18a199..4f4e9ebb9af4970fe920a540d40dbc56682efd57 100644
|
||||
--- a/src/main/java/net/minecraft/world/item/ItemNameTag.java
|
||||
+++ b/src/main/java/net/minecraft/world/item/ItemNameTag.java
|
||||
@@ -5,6 +5,7 @@ import net.minecraft.world.EnumHand;
|
||||
import net.minecraft.world.EnumInteractionResult;
|
||||
import net.minecraft.world.entity.EntityInsentient;
|
||||
import net.minecraft.world.entity.EntityLiving;
|
||||
+import net.minecraft.world.entity.decoration.EntityArmorStand;
|
||||
import net.minecraft.world.entity.player.EntityHuman;
|
||||
|
||||
// Paper start
|
||||
@@ -27,6 +28,11 @@ public class ItemNameTag extends Item {
|
||||
if (!event.callEvent()) return EnumInteractionResult.PASS;
|
||||
EntityLiving newEntityLiving = ((org.bukkit.craftbukkit.entity.CraftLivingEntity) event.getEntity()).getHandle();
|
||||
newEntityLiving.setCustomName(event.getName() != null ? PaperAdventure.asVanilla(event.getName()) : null);
|
||||
+ // Purpur start
|
||||
+ if (entityhuman.world.purpurConfig.armorstandFixNametags && entityliving instanceof EntityArmorStand) {
|
||||
+ entityliving.setCustomNameVisible(true);
|
||||
+ }
|
||||
+ // Purpur end
|
||||
if (event.isPersistent() && newEntityLiving instanceof EntityInsentient) {
|
||||
((EntityInsentient) newEntityLiving).setPersistent();
|
||||
}
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index b650293ff3315760e29307113e29fb2731af472b..dc1418f8f324eae24af3e993c6c720ff73702c92 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -84,9 +84,11 @@ public class PurpurWorldConfig {
|
||||
}
|
||||
|
||||
public boolean armorstandSetNameVisible = false;
|
||||
+ public boolean armorstandFixNametags = false;
|
||||
public float armorstandStepHeight = 0.0F;
|
||||
private void armorstandSettings() {
|
||||
armorstandSetNameVisible = getBoolean("gameplay-mechanics.armorstand.set-name-visible-when-placing-with-custom-name", armorstandSetNameVisible);
|
||||
+ armorstandFixNametags = getBoolean("gameplay-mechanics.armorstand.fix-nametags", armorstandFixNametags);
|
||||
armorstandStepHeight = (float) getDouble("gameplay-mechanics.armorstand.step-height", armorstandStepHeight);
|
||||
}
|
||||
|
||||
@@ -1,113 +0,0 @@
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: BillyGalbreath <blake.galbreath@gmail.com>
|
||||
Date: Sun, 22 Nov 2020 06:02:32 -0600
|
||||
Subject: [PATCH] Add twisting and weeping vines growth rates
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/level/block/BlockGrowingTop.java b/src/main/java/net/minecraft/world/level/block/BlockGrowingTop.java
|
||||
index 84bd1fa9edb59b8515685a47783ed5e6abe7333f..546c7877647bac41753a600bd25c630a0510be56 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/block/BlockGrowingTop.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/block/BlockGrowingTop.java
|
||||
@@ -38,9 +38,11 @@ public abstract class BlockGrowingTop extends BlockGrowingAbstract implements IB
|
||||
return (Integer) iblockdata.get(BlockGrowingTop.d) < 25;
|
||||
}
|
||||
|
||||
+ public abstract double getGrowthModifier(WorldServer worldserver); // Purpur
|
||||
+
|
||||
@Override
|
||||
public void tick(IBlockData iblockdata, WorldServer worldserver, BlockPosition blockposition, Random random) {
|
||||
- if ((Integer) iblockdata.get(BlockGrowingTop.d) < 25 && random.nextDouble() < (100.0D / worldserver.spigotConfig.kelpModifier) * this.e) { // Spigot
|
||||
+ if ((Integer) iblockdata.get(BlockGrowingTop.d) < 25 && random.nextDouble() < (100.0D / getGrowthModifier(worldserver)) * this.e) { // Spigot // Purpur
|
||||
BlockPosition blockposition1 = blockposition.shift(this.a);
|
||||
|
||||
if (this.h(worldserver.getType(blockposition1))) {
|
||||
diff --git a/src/main/java/net/minecraft/world/level/block/BlockKelp.java b/src/main/java/net/minecraft/world/level/block/BlockKelp.java
|
||||
index 424b9b3c1263910eb6113f19efc14607dd2bf638..27f1cbe8786d7c37d62193a21baf0a2bdc6f0294 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/block/BlockKelp.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/block/BlockKelp.java
|
||||
@@ -4,6 +4,7 @@ import java.util.Random;
|
||||
import javax.annotation.Nullable;
|
||||
import net.minecraft.core.BlockPosition;
|
||||
import net.minecraft.core.EnumDirection;
|
||||
+import net.minecraft.server.level.WorldServer;
|
||||
import net.minecraft.tags.Tag;
|
||||
import net.minecraft.tags.TagsFluid;
|
||||
import net.minecraft.world.item.context.BlockActionContext;
|
||||
@@ -66,4 +67,10 @@ public class BlockKelp extends BlockGrowingTop implements IFluidContainer {
|
||||
public Fluid d(IBlockData iblockdata) {
|
||||
return FluidTypes.WATER.a(false);
|
||||
}
|
||||
+
|
||||
+ // Purpur start
|
||||
+ public double getGrowthModifier(WorldServer worldserver) {
|
||||
+ return worldserver.spigotConfig.kelpModifier;
|
||||
+ }
|
||||
+ // Purpur end
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/world/level/block/BlockTwistingVines.java b/src/main/java/net/minecraft/world/level/block/BlockTwistingVines.java
|
||||
index 2cfa96f144391e664207ac8e8bdd3f11bfed4dff..3a8d08a1ee8f066cea36e6acff492e5af62993c5 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/block/BlockTwistingVines.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/block/BlockTwistingVines.java
|
||||
@@ -2,6 +2,7 @@ package net.minecraft.world.level.block;
|
||||
|
||||
import java.util.Random;
|
||||
import net.minecraft.core.EnumDirection;
|
||||
+import net.minecraft.server.level.WorldServer;
|
||||
import net.minecraft.world.level.block.state.BlockBase;
|
||||
import net.minecraft.world.level.block.state.IBlockData;
|
||||
import net.minecraft.world.phys.shapes.VoxelShape;
|
||||
@@ -28,4 +29,10 @@ public class BlockTwistingVines extends BlockGrowingTop {
|
||||
protected boolean h(IBlockData iblockdata) {
|
||||
return BlockNetherVinesUtil.a(iblockdata);
|
||||
}
|
||||
+
|
||||
+ // Purpur start
|
||||
+ public double getGrowthModifier(WorldServer worldserver) {
|
||||
+ return worldserver.purpurConfig.twistingVinesGrowthModifier;
|
||||
+ }
|
||||
+ // Purpur end
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/world/level/block/BlockWeepingVines.java b/src/main/java/net/minecraft/world/level/block/BlockWeepingVines.java
|
||||
index 2552631084926c2fad40b3f21ae479c0e1cfdb77..198bd8857571872ed3f7437529c330dceeb825db 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/block/BlockWeepingVines.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/block/BlockWeepingVines.java
|
||||
@@ -2,6 +2,7 @@ package net.minecraft.world.level.block;
|
||||
|
||||
import java.util.Random;
|
||||
import net.minecraft.core.EnumDirection;
|
||||
+import net.minecraft.server.level.WorldServer;
|
||||
import net.minecraft.world.level.block.state.BlockBase;
|
||||
import net.minecraft.world.level.block.state.IBlockData;
|
||||
import net.minecraft.world.phys.shapes.VoxelShape;
|
||||
@@ -28,4 +29,10 @@ public class BlockWeepingVines extends BlockGrowingTop {
|
||||
protected boolean h(IBlockData iblockdata) {
|
||||
return BlockNetherVinesUtil.a(iblockdata);
|
||||
}
|
||||
+
|
||||
+ // Purpur start
|
||||
+ public double getGrowthModifier(WorldServer worldserver) {
|
||||
+ return worldserver.purpurConfig.weepingVinesGrowthModifier;
|
||||
+ }
|
||||
+ // Purpur end
|
||||
}
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index dc1418f8f324eae24af3e993c6c720ff73702c92..17bbe2ceea016bcb00dc5542bea47e083e723ea5 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -477,6 +477,16 @@ public class PurpurWorldConfig {
|
||||
turtleEggsBreakFromMinecarts = getBoolean("blocks.turtle_egg.break-from-minecarts", turtleEggsBreakFromMinecarts);
|
||||
}
|
||||
|
||||
+ public double twistingVinesGrowthModifier = 0.10D;
|
||||
+ private void twistingVinesSettings() {
|
||||
+ twistingVinesGrowthModifier = getDouble("blocks.twisting_vines.growth-modifier", twistingVinesGrowthModifier);
|
||||
+ }
|
||||
+
|
||||
+ public double weepingVinesGrowthModifier = 0.10D;
|
||||
+ private void weepingVinesSettings() {
|
||||
+ weepingVinesGrowthModifier = getDouble("blocks.weeping_vines.growth-modifier", weepingVinesGrowthModifier);
|
||||
+ }
|
||||
+
|
||||
public boolean babiesAreRidable = true;
|
||||
public boolean untamedTamablesAreRidable = true;
|
||||
public boolean useNightVisionWhenRiding = false;
|
||||
@@ -192,7 +192,7 @@ index 7bb30fba98b5b217df72e6df5b2dc4e6082d1a6a..5365a4a047c759f36177716237c2bb98
|
||||
|
||||
public static String timingsUrl = "https://timings.pl3x.net";
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index c4fb8a14bf11df94acc7806f458e976c4e30e7c4..f2c6f2984bb4009b6dca36d041f1dd1436660de7 100644
|
||||
index c4fb8a14bf11df94acc7806f458e976c4e30e7c4..0a9024e766ed12b321008b3b19ce92d2f5fdfcab 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -60,6 +60,17 @@ public class PurpurWorldConfig {
|
||||
@@ -203,7 +203,7 @@ index c4fb8a14bf11df94acc7806f458e976c4e30e7c4..f2c6f2984bb4009b6dca36d041f1dd14
|
||||
+ public boolean idleTimeoutTickNearbyEntities = true;
|
||||
+ public boolean idleTimeoutCountAsSleeping = false;
|
||||
+ public boolean idleTimeoutUpdateTabList = false;
|
||||
+ private void playerIdleTimeoutSettings() {
|
||||
+ private void playerSettings() {
|
||||
+ idleTimeoutKick = getBoolean("gameplay-mechanics.player.idle-timeout.kick-if-idle", idleTimeoutKick);
|
||||
+ idleTimeoutTickNearbyEntities = getBoolean("gameplay-mechanics.player.idle-timeout.tick-nearby-entities", idleTimeoutTickNearbyEntities);
|
||||
+ idleTimeoutCountAsSleeping = getBoolean("gameplay-mechanics.player.idle-timeout.count-as-sleeping", idleTimeoutCountAsSleeping);
|
||||
|
||||
@@ -90,23 +90,25 @@ index d76d8d8db7921d16f87dd162ccd115e351cde106..fb29b0cb962db93489ff4268c72e7c67
|
||||
return entityplayer1;
|
||||
}
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index f2c6f2984bb4009b6dca36d041f1dd1436660de7..cd6c1251222e8ed377f775248ba874ed9941bfba 100644
|
||||
index 0a9024e766ed12b321008b3b19ce92d2f5fdfcab..52d30f1ece8b48bba953b11013b7aa10f4891991 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -71,6 +71,13 @@ public class PurpurWorldConfig {
|
||||
idleTimeoutUpdateTabList = getBoolean("gameplay-mechanics.player.idle-timeout.update-tab-list", idleTimeoutUpdateTabList);
|
||||
}
|
||||
|
||||
@@ -64,11 +64,15 @@ public class PurpurWorldConfig {
|
||||
public boolean idleTimeoutTickNearbyEntities = true;
|
||||
public boolean idleTimeoutCountAsSleeping = false;
|
||||
public boolean idleTimeoutUpdateTabList = false;
|
||||
+ public int playerSpawnInvulnerableTicks = 60;
|
||||
+ public boolean playerInvulnerableWhileAcceptingResourcePack = false;
|
||||
+ private void playerInvulnerabilities() {
|
||||
private void playerSettings() {
|
||||
idleTimeoutKick = getBoolean("gameplay-mechanics.player.idle-timeout.kick-if-idle", idleTimeoutKick);
|
||||
idleTimeoutTickNearbyEntities = getBoolean("gameplay-mechanics.player.idle-timeout.tick-nearby-entities", idleTimeoutTickNearbyEntities);
|
||||
idleTimeoutCountAsSleeping = getBoolean("gameplay-mechanics.player.idle-timeout.count-as-sleeping", idleTimeoutCountAsSleeping);
|
||||
idleTimeoutUpdateTabList = getBoolean("gameplay-mechanics.player.idle-timeout.update-tab-list", idleTimeoutUpdateTabList);
|
||||
+ playerSpawnInvulnerableTicks = getInt("gameplay-mechanics.player.spawn-invulnerable-ticks", playerSpawnInvulnerableTicks);
|
||||
+ playerInvulnerableWhileAcceptingResourcePack = getBoolean("gameplay-mechanics.player.invulnerable-while-accepting-resource-pack", playerInvulnerableWhileAcceptingResourcePack);
|
||||
+ }
|
||||
+
|
||||
}
|
||||
|
||||
public boolean babiesAreRidable = true;
|
||||
public boolean untamedTamablesAreRidable = true;
|
||||
public boolean useNightVisionWhenRiding = false;
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||
index 38b7bc0399be51eec4c00e5ce1240d7468878aea..676d98f183d798f1ea894cd78539f9034edb3659 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||
|
||||
@@ -36,10 +36,10 @@ index 07686c678cd47defd9e0b742a71fd13e83142870..bd6a707962ac4d3961e1ce74570909e2
|
||||
this.level.getProfiler().pop();
|
||||
if (this.assignProfessionWhenSpawned) {
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index cd6c1251222e8ed377f775248ba874ed9941bfba..39891436be088064c3096999763641cc722d9bac 100644
|
||||
index 52d30f1ece8b48bba953b11013b7aa10f4891991..eed56c24c0c5bceef42addaa7e1cc17662fd1c49 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -1039,6 +1039,8 @@ public class PurpurWorldConfig {
|
||||
@@ -1036,6 +1036,8 @@ public class PurpurWorldConfig {
|
||||
public boolean villagerRidable = false;
|
||||
public boolean villagerRidableInWater = false;
|
||||
public double villagerMaxHealth = 20.0D;
|
||||
@@ -48,7 +48,7 @@ index cd6c1251222e8ed377f775248ba874ed9941bfba..39891436be088064c3096999763641cc
|
||||
private void villagerSettings() {
|
||||
villagerRidable = getBoolean("mobs.villager.ridable", villagerRidable);
|
||||
villagerRidableInWater = getBoolean("mobs.villager.ridable-in-water", villagerRidableInWater);
|
||||
@@ -1048,6 +1050,8 @@ public class PurpurWorldConfig {
|
||||
@@ -1045,6 +1047,8 @@ public class PurpurWorldConfig {
|
||||
set("mobs.villager.attributes.max_health", oldValue);
|
||||
}
|
||||
villagerMaxHealth = getDouble("mobs.villager.attributes.max_health", villagerMaxHealth);
|
||||
|
||||
@@ -170,7 +170,7 @@ index b1e04d41de80971a7a1616beb0860226ecc25045..9ce53046b7f67309c2d4636b95e6fb05
|
||||
public void spawnAfterBreak(BlockState state, ServerLevel world, BlockPos pos, ItemStack stack) {
|
||||
super.spawnAfterBreak(state, world, pos, stack);
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 39891436be088064c3096999763641cc722d9bac..d583fdd73b85e6792fd04fe8d8f9b52c898c423c 100644
|
||||
index eed56c24c0c5bceef42addaa7e1cc17662fd1c49..c13a37baf05af23ad332d5ee2892c0efc3f79b5e 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -1,7 +1,13 @@
|
||||
@@ -187,7 +187,7 @@ index 39891436be088064c3096999763641cc722d9bac..d583fdd73b85e6792fd04fe8d8f9b52c
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
@@ -78,6 +84,29 @@ public class PurpurWorldConfig {
|
||||
@@ -75,6 +81,29 @@ public class PurpurWorldConfig {
|
||||
playerInvulnerableWhileAcceptingResourcePack = getBoolean("gameplay-mechanics.player.invulnerable-while-accepting-resource-pack", playerInvulnerableWhileAcceptingResourcePack);
|
||||
}
|
||||
|
||||
|
||||
@@ -50,10 +50,10 @@ index fdb3ab919a78221605257ae82bfd026346ce2ffb..e98fc3c235f9160f1928a8afb0d7991a
|
||||
}
|
||||
}
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index d583fdd73b85e6792fd04fe8d8f9b52c898c423c..96202520c0f42db814fdb60ffb77dd0cdef12410 100644
|
||||
index c13a37baf05af23ad332d5ee2892c0efc3f79b5e..ed4c61a934b5bf470961a384813eb25ffe416082 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -1038,7 +1038,10 @@ public class PurpurWorldConfig {
|
||||
@@ -1035,7 +1035,10 @@ public class PurpurWorldConfig {
|
||||
public boolean turtleRidable = false;
|
||||
public boolean turtleRidableInWater = false;
|
||||
public double turtleMaxHealth = 30.0D;
|
||||
@@ -65,7 +65,7 @@ index d583fdd73b85e6792fd04fe8d8f9b52c898c423c..96202520c0f42db814fdb60ffb77dd0c
|
||||
turtleRidable = getBoolean("mobs.turtle.ridable", turtleRidable);
|
||||
turtleRidableInWater = getBoolean("mobs.turtle.ridable-in-water", turtleRidableInWater);
|
||||
if (PurpurConfig.version < 10) {
|
||||
@@ -1047,6 +1050,9 @@ public class PurpurWorldConfig {
|
||||
@@ -1044,6 +1047,9 @@ public class PurpurWorldConfig {
|
||||
set("mobs.turtle.attributes.max_health", oldValue);
|
||||
}
|
||||
turtleMaxHealth = getDouble("mobs.turtle.attributes.max_health", turtleMaxHealth);
|
||||
|
||||
@@ -120,10 +120,10 @@ index a8ffdc8810152d77668aad7bad15a00c4d194d4c..91e28c414545d2bbb4e2f22c516d0f68
|
||||
}
|
||||
}
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 96202520c0f42db814fdb60ffb77dd0cdef12410..25db072223e7833c470b0023861df376af19831b 100644
|
||||
index ed4c61a934b5bf470961a384813eb25ffe416082..3c69825659439a0a5a7ee6fc97d98bf0ca3c8c5a 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -427,6 +427,10 @@ public class PurpurWorldConfig {
|
||||
@@ -424,6 +424,10 @@ public class PurpurWorldConfig {
|
||||
public double giantMovementSpeed = 0.5D;
|
||||
public double giantAttackDamage = 50.0D;
|
||||
public double giantMaxHealth = 100.0D;
|
||||
@@ -134,7 +134,7 @@ index 96202520c0f42db814fdb60ffb77dd0cdef12410..25db072223e7833c470b0023861df376
|
||||
private void giantSettings() {
|
||||
giantRidable = getBoolean("mobs.giant.ridable", giantRidable);
|
||||
giantRidableInWater = getBoolean("mobs.giant.ridable-in-water", giantRidableInWater);
|
||||
@@ -442,6 +446,10 @@ public class PurpurWorldConfig {
|
||||
@@ -439,6 +443,10 @@ public class PurpurWorldConfig {
|
||||
set("mobs.giant.attributes.max_health", oldValue);
|
||||
}
|
||||
giantMaxHealth = getDouble("mobs.giant.attributes.max_health", giantMaxHealth);
|
||||
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Zombie horse naturally spawn
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
index ce49e2a5ac80280ae03579d72a436e836a03cf8e..e98cfb02e6432992259c23d3e81aa8cfef6882b3 100644
|
||||
index f0b9ff60b6122473bc2f87f56a6d190994079da6..14c3e9fcdfb088d3fe0a15266b50a7da82a5d240 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
@@ -87,6 +87,7 @@ import net.minecraft.world.entity.ai.village.poi.PoiManager;
|
||||
@@ -42,10 +42,10 @@ index ce49e2a5ac80280ae03579d72a436e836a03cf8e..e98cfb02e6432992259c23d3e81aa8cf
|
||||
|
||||
LightningBolt entitylightning = (LightningBolt) EntityType.LIGHTNING_BOLT.create((net.minecraft.world.level.Level) this);
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 25db072223e7833c470b0023861df376af19831b..8154d79de126105233bd04b6935761236b10c6c0 100644
|
||||
index 3c69825659439a0a5a7ee6fc97d98bf0ca3c8c5a..bddf84e9830c4e46f0648f76523af471c3b03e66 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -1225,6 +1225,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1222,6 +1222,7 @@ public class PurpurWorldConfig {
|
||||
public double zombieHorseJumpStrengthMax = 1.0D;
|
||||
public double zombieHorseMovementSpeedMin = 0.2D;
|
||||
public double zombieHorseMovementSpeedMax = 0.2D;
|
||||
@@ -53,7 +53,7 @@ index 25db072223e7833c470b0023861df376af19831b..8154d79de126105233bd04b693576123
|
||||
private void zombieHorseSettings() {
|
||||
zombieHorseRidableInWater = getBoolean("mobs.zombie_horse.ridable-in-water", zombieHorseRidableInWater);
|
||||
zombieHorseCanSwim = getBoolean("mobs.zombie_horse.can-swim", zombieHorseCanSwim);
|
||||
@@ -1240,6 +1241,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1237,6 +1238,7 @@ public class PurpurWorldConfig {
|
||||
zombieHorseJumpStrengthMax = getDouble("mobs.zombie_horse.attributes.jump_strength.max", zombieHorseJumpStrengthMax);
|
||||
zombieHorseMovementSpeedMin = getDouble("mobs.zombie_horse.attributes.movement_speed.min", zombieHorseMovementSpeedMin);
|
||||
zombieHorseMovementSpeedMax = getDouble("mobs.zombie_horse.attributes.movement_speed.max", zombieHorseMovementSpeedMax);
|
||||
|
||||
@@ -24,10 +24,10 @@ index b71a6af3c2d1ca2a946b23efb11b0e794840cf25..b2b3630a90c685b0a692efb9bf8bb111
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 8154d79de126105233bd04b6935761236b10c6c0..4e4541c05a6ed9eb96012d5a5584f1e81e354846 100644
|
||||
index bddf84e9830c4e46f0648f76523af471c3b03e66..cfd14b07e733434f208199def72626437b7a69ba 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -249,6 +249,7 @@ public class PurpurWorldConfig {
|
||||
@@ -246,6 +246,7 @@ public class PurpurWorldConfig {
|
||||
public boolean creeperRidable = false;
|
||||
public boolean creeperRidableInWater = false;
|
||||
public double creeperMaxHealth = 20.0D;
|
||||
@@ -35,7 +35,7 @@ index 8154d79de126105233bd04b6935761236b10c6c0..4e4541c05a6ed9eb96012d5a5584f1e8
|
||||
private void creeperSettings() {
|
||||
creeperRidable = getBoolean("mobs.creeper.ridable", creeperRidable);
|
||||
creeperRidableInWater = getBoolean("mobs.creeper.ridable-in-water", creeperRidableInWater);
|
||||
@@ -258,6 +259,7 @@ public class PurpurWorldConfig {
|
||||
@@ -255,6 +256,7 @@ public class PurpurWorldConfig {
|
||||
set("mobs.creeper.attributes.max_health", oldValue);
|
||||
}
|
||||
creeperMaxHealth = getDouble("mobs.creeper.attributes.max_health", creeperMaxHealth);
|
||||
|
||||
@@ -38,10 +38,10 @@ index 587feda351efae19407cb9f23c6c1d42d5ed0cc9..e0ba1ef404c9f8ba1eae563b733d10d9
|
||||
int i = this.random.nextInt(100);
|
||||
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 4e4541c05a6ed9eb96012d5a5584f1e81e354846..9f025b574aa6a0841a438d039333604b0bf95af4 100644
|
||||
index cfd14b07e733434f208199def72626437b7a69ba..92b19b28abffdab961550c001fbed7c26d62a05d 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -803,6 +803,8 @@ public class PurpurWorldConfig {
|
||||
@@ -800,6 +800,8 @@ public class PurpurWorldConfig {
|
||||
public boolean rabbitRidable = false;
|
||||
public boolean rabbitRidableInWater = false;
|
||||
public double rabbitMaxHealth = 3.0D;
|
||||
@@ -50,7 +50,7 @@ index 4e4541c05a6ed9eb96012d5a5584f1e81e354846..9f025b574aa6a0841a438d039333604b
|
||||
private void rabbitSettings() {
|
||||
rabbitRidable = getBoolean("mobs.rabbit.ridable", rabbitRidable);
|
||||
rabbitRidableInWater = getBoolean("mobs.rabbit.ridable-in-water", rabbitRidableInWater);
|
||||
@@ -812,6 +814,8 @@ public class PurpurWorldConfig {
|
||||
@@ -809,6 +811,8 @@ public class PurpurWorldConfig {
|
||||
set("mobs.rabbit.attributes.max_health", oldValue);
|
||||
}
|
||||
rabbitMaxHealth = getDouble("mobs.rabbit.attributes.max_health", rabbitMaxHealth);
|
||||
|
||||
@@ -75,10 +75,10 @@ index 9ce846d057a08b6a2b6576255bc55293707e3d24..d31b906c87e22f505bee22f21dd8ec1e
|
||||
// Paper start - Cancellable death event
|
||||
protected org.bukkit.event.entity.EntityDeathEvent dropAllDeathLoot(DamageSource source) {
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 9f025b574aa6a0841a438d039333604b0bf95af4..5b0b9e17e3ca490ed32a98983fdba94aa423814f 100644
|
||||
index 92b19b28abffdab961550c001fbed7c26d62a05d..6def31d73b17856518c065ea35b2aa094f8ffe89 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -397,6 +397,7 @@ public class PurpurWorldConfig {
|
||||
@@ -394,6 +394,7 @@ public class PurpurWorldConfig {
|
||||
public boolean foxRidable = false;
|
||||
public boolean foxRidableInWater = false;
|
||||
public double foxMaxHealth = 10.0D;
|
||||
@@ -86,7 +86,7 @@ index 9f025b574aa6a0841a438d039333604b0bf95af4..5b0b9e17e3ca490ed32a98983fdba94a
|
||||
private void foxSettings() {
|
||||
foxRidable = getBoolean("mobs.fox.ridable", foxRidable);
|
||||
foxRidableInWater = getBoolean("mobs.fox.ridable-in-water", foxRidableInWater);
|
||||
@@ -406,6 +407,7 @@ public class PurpurWorldConfig {
|
||||
@@ -403,6 +404,7 @@ public class PurpurWorldConfig {
|
||||
set("mobs.fox.attributes.max_health", oldValue);
|
||||
}
|
||||
foxMaxHealth = getDouble("mobs.fox.attributes.max_health", foxMaxHealth);
|
||||
|
||||
@@ -59,10 +59,10 @@ index 18780fb268cabb47bb0deb84c44520831c1a762b..d39c88af3882a09ff1a06f9052d7b9b8
|
||||
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/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 5b0b9e17e3ca490ed32a98983fdba94aa423814f..f15a49cedd7555f14199a4c6a13b23ebef881f52 100644
|
||||
index 6def31d73b17856518c065ea35b2aa094f8ffe89..3f851b16e3410cd5c655a04eddbc9396aefe4927 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -779,6 +779,8 @@ public class PurpurWorldConfig {
|
||||
@@ -776,6 +776,8 @@ public class PurpurWorldConfig {
|
||||
public boolean polarBearRidable = false;
|
||||
public boolean polarBearRidableInWater = false;
|
||||
public double polarBearMaxHealth = 30.0D;
|
||||
@@ -71,7 +71,7 @@ index 5b0b9e17e3ca490ed32a98983fdba94aa423814f..f15a49cedd7555f14199a4c6a13b23eb
|
||||
private void polarBearSettings() {
|
||||
polarBearRidable = getBoolean("mobs.polar_bear.ridable", polarBearRidable);
|
||||
polarBearRidableInWater = getBoolean("mobs.polar_bear.ridable-in-water", polarBearRidableInWater);
|
||||
@@ -788,6 +790,9 @@ public class PurpurWorldConfig {
|
||||
@@ -785,6 +787,9 @@ public class PurpurWorldConfig {
|
||||
set("mobs.polar_bear.attributes.max_health", oldValue);
|
||||
}
|
||||
polarBearMaxHealth = getDouble("mobs.polar_bear.attributes.max_health", polarBearMaxHealth);
|
||||
|
||||
@@ -51,10 +51,10 @@ index 55dccf338f9fba17fbcb88672d36b83e7bbec88b..eaec6eba96db3b8ce046208a4a1e5fc4
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index f15a49cedd7555f14199a4c6a13b23ebef881f52..df0631f55f74fed00a6dc3e942d37613fc34c067 100644
|
||||
index 3f851b16e3410cd5c655a04eddbc9396aefe4927..b4c09f8a37efd66a2d79373923c774b798fa6e35 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -209,6 +209,7 @@ public class PurpurWorldConfig {
|
||||
@@ -206,6 +206,7 @@ public class PurpurWorldConfig {
|
||||
public boolean chickenRidable = false;
|
||||
public boolean chickenRidableInWater = false;
|
||||
public double chickenMaxHealth = 4.0D;
|
||||
@@ -62,7 +62,7 @@ index f15a49cedd7555f14199a4c6a13b23ebef881f52..df0631f55f74fed00a6dc3e942d37613
|
||||
private void chickenSettings() {
|
||||
chickenRidable = getBoolean("mobs.chicken.ridable", chickenRidable);
|
||||
chickenRidableInWater = getBoolean("mobs.chicken.ridable-in-water", chickenRidableInWater);
|
||||
@@ -218,6 +219,7 @@ public class PurpurWorldConfig {
|
||||
@@ -215,6 +216,7 @@ public class PurpurWorldConfig {
|
||||
set("mobs.chicken.attributes.max_health", oldValue);
|
||||
}
|
||||
chickenMaxHealth = getDouble("mobs.chicken.attributes.max_health", chickenMaxHealth);
|
||||
|
||||
@@ -49,10 +49,10 @@ index 4cab98b5e441a174482893d3d289bbafa1f7a5fc..fa3cdff99a16b67ed86c8f7940ffa139
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 853cf252723820bc7578c876e9cb79c9adc38918..616fcd50cf88aec7dc32ad3bcdae89349e3369e9 100644
|
||||
index eb318f03866927fb4e81bdb814d7c0931a6960cb..88f2405c531574b6042d2be5a358f003200c1879 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -186,6 +186,9 @@ public class PurpurWorldConfig {
|
||||
@@ -183,6 +183,9 @@ public class PurpurWorldConfig {
|
||||
public boolean catRidable = false;
|
||||
public boolean catRidableInWater = false;
|
||||
public double catMaxHealth = 10.0D;
|
||||
@@ -62,7 +62,7 @@ index 853cf252723820bc7578c876e9cb79c9adc38918..616fcd50cf88aec7dc32ad3bcdae8934
|
||||
private void catSettings() {
|
||||
catRidable = getBoolean("mobs.cat.ridable", catRidable);
|
||||
catRidableInWater = getBoolean("mobs.cat.ridable-in-water", catRidableInWater);
|
||||
@@ -195,6 +198,9 @@ public class PurpurWorldConfig {
|
||||
@@ -192,6 +195,9 @@ public class PurpurWorldConfig {
|
||||
set("mobs.cat.attributes.max_health", oldValue);
|
||||
}
|
||||
catMaxHealth = getDouble("mobs.cat.attributes.max_health", catMaxHealth);
|
||||
|
||||
@@ -114,10 +114,10 @@ index bee82d5bf600cbeacfcede600e5606529af1435e..9da76357da891a70e20ad80f50873b3b
|
||||
public Cow getBreedOffspring(ServerLevel world, AgeableMob entity) {
|
||||
return (Cow) EntityType.COW.create((Level) world);
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 616fcd50cf88aec7dc32ad3bcdae89349e3369e9..1a30365c146e195d487b77c2e31c08644f2e6ae5 100644
|
||||
index 88f2405c531574b6042d2be5a358f003200c1879..0e8efd3a41b121e54f67b6f07d1b7462d4fd190f 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -248,6 +248,7 @@ public class PurpurWorldConfig {
|
||||
@@ -245,6 +245,7 @@ public class PurpurWorldConfig {
|
||||
public boolean cowRidable = false;
|
||||
public boolean cowRidableInWater = false;
|
||||
public double cowMaxHealth = 10.0D;
|
||||
@@ -125,7 +125,7 @@ index 616fcd50cf88aec7dc32ad3bcdae89349e3369e9..1a30365c146e195d487b77c2e31c0864
|
||||
private void cowSettings() {
|
||||
cowRidable = getBoolean("mobs.cow.ridable", cowRidable);
|
||||
cowRidableInWater = getBoolean("mobs.cow.ridable-in-water", cowRidableInWater);
|
||||
@@ -257,6 +258,7 @@ public class PurpurWorldConfig {
|
||||
@@ -254,6 +255,7 @@ public class PurpurWorldConfig {
|
||||
set("mobs.cow.attributes.max_health", oldValue);
|
||||
}
|
||||
cowMaxHealth = getDouble("mobs.cow.attributes.max_health", cowMaxHealth);
|
||||
|
||||
@@ -28,10 +28,10 @@ index f4a099e691dce3c57069e76d67859161b459098e..518d28dc0b5b8c04263c93a4347e4c97
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 1a30365c146e195d487b77c2e31c08644f2e6ae5..387741730f7b8e4c1670af9e6af0b97e06fdd493 100644
|
||||
index 0e8efd3a41b121e54f67b6f07d1b7462d4fd190f..6629a895a3f0f8b1ccb760941c6bd37e912d7a64 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -738,6 +738,7 @@ public class PurpurWorldConfig {
|
||||
@@ -735,6 +735,7 @@ public class PurpurWorldConfig {
|
||||
public boolean pigRidable = false;
|
||||
public boolean pigRidableInWater = false;
|
||||
public double pigMaxHealth = 10.0D;
|
||||
@@ -39,7 +39,7 @@ index 1a30365c146e195d487b77c2e31c08644f2e6ae5..387741730f7b8e4c1670af9e6af0b97e
|
||||
private void pigSettings() {
|
||||
pigRidable = getBoolean("mobs.pig.ridable", pigRidable);
|
||||
pigRidableInWater = getBoolean("mobs.pig.ridable-in-water", pigRidableInWater);
|
||||
@@ -747,6 +748,7 @@ public class PurpurWorldConfig {
|
||||
@@ -744,6 +745,7 @@ public class PurpurWorldConfig {
|
||||
set("mobs.pig.attributes.max_health", oldValue);
|
||||
}
|
||||
pigMaxHealth = getDouble("mobs.pig.attributes.max_health", pigMaxHealth);
|
||||
|
||||
@@ -32,10 +32,10 @@ index 7fbe1a62e9c67a8bdaf13aaa9fae1d8742d75148..0733f9c057fef17fd79a4769f19b78f4
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 387741730f7b8e4c1670af9e6af0b97e06fdd493..ae59b5f67407c80c16e6a1f55dd4d51b47e3d422 100644
|
||||
index 6629a895a3f0f8b1ccb760941c6bd37e912d7a64..002064c2660e746c9ea1ef0d1b0c7610d5c97681 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -969,6 +969,8 @@ public class PurpurWorldConfig {
|
||||
@@ -966,6 +966,8 @@ public class PurpurWorldConfig {
|
||||
public boolean snowGolemRidableInWater = false;
|
||||
public boolean snowGolemLeaveTrailWhenRidden = false;
|
||||
public double snowGolemMaxHealth = 4.0D;
|
||||
@@ -44,7 +44,7 @@ index 387741730f7b8e4c1670af9e6af0b97e06fdd493..ae59b5f67407c80c16e6a1f55dd4d51b
|
||||
private void snowGolemSettings() {
|
||||
snowGolemRidable = getBoolean("mobs.snow_golem.ridable", snowGolemRidable);
|
||||
snowGolemRidableInWater = getBoolean("mobs.snow_golem.ridable-in-water", snowGolemRidableInWater);
|
||||
@@ -979,6 +981,8 @@ public class PurpurWorldConfig {
|
||||
@@ -976,6 +978,8 @@ public class PurpurWorldConfig {
|
||||
set("mobs.snow_golem.attributes.max_health", oldValue);
|
||||
}
|
||||
snowGolemMaxHealth = getDouble("mobs.snow_golem.attributes.max_health", snowGolemMaxHealth);
|
||||
|
||||
@@ -18,10 +18,10 @@ index 1f40e8d1e73fec0aaee29c658e3d24f499fa9501..1e97d52e02d401c905e1dfcd758c63e4
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index ae59b5f67407c80c16e6a1f55dd4d51b47e3d422..c0d3b4646aa0e45dad91747778192334c3527b9a 100644
|
||||
index 002064c2660e746c9ea1ef0d1b0c7610d5c97681..6a2632924054c199cba560cfef67e40fe1aef446 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -351,6 +351,7 @@ public class PurpurWorldConfig {
|
||||
@@ -348,6 +348,7 @@ public class PurpurWorldConfig {
|
||||
public boolean enderDragonRidableInWater = false;
|
||||
public double enderDragonMaxY = 256D;
|
||||
public double enderDragonMaxHealth = 200.0D;
|
||||
@@ -29,7 +29,7 @@ index ae59b5f67407c80c16e6a1f55dd4d51b47e3d422..c0d3b4646aa0e45dad91747778192334
|
||||
private void enderDragonSettings() {
|
||||
enderDragonRidable = getBoolean("mobs.ender_dragon.ridable", enderDragonRidable);
|
||||
enderDragonRidableInWater = getBoolean("mobs.ender_dragon.ridable-in-water", enderDragonRidableInWater);
|
||||
@@ -365,6 +366,7 @@ public class PurpurWorldConfig {
|
||||
@@ -362,6 +363,7 @@ public class PurpurWorldConfig {
|
||||
set("mobs.ender_dragon.attributes.max_health", oldValue);
|
||||
}
|
||||
enderDragonMaxHealth = getDouble("mobs.ender_dragon.attributes.max_health", enderDragonMaxHealth);
|
||||
|
||||
@@ -35,10 +35,10 @@ index 1844ea93f8cea420f01937f85ed17c0ec1bb8bf0..9e80ba8970cad91ea22ac701f76e1413
|
||||
} else {
|
||||
return InteractionResult.PASS;
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index c0d3b4646aa0e45dad91747778192334c3527b9a..dda469098ffac8b41531b05c0363e82d43ff6f6a 100644
|
||||
index 6a2632924054c199cba560cfef67e40fe1aef446..6ec28fc27b5362fe6928677b8c17dc60e56b36cc 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -112,6 +112,11 @@ public class PurpurWorldConfig {
|
||||
@@ -109,6 +109,11 @@ public class PurpurWorldConfig {
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
@@ -77,10 +77,10 @@ index 9b5d11ece006d7aa893360a84ba652c666517ac1..3373c21f90eb08e2bfbb71bc348d085a
|
||||
@Override
|
||||
public ClientboundBlockEntityDataPacket getUpdatePacket() {
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index dda469098ffac8b41531b05c0363e82d43ff6f6a..3129e8f7156276298b5bdec9aa52cb546893d1a6 100644
|
||||
index 6ec28fc27b5362fe6928677b8c17dc60e56b36cc..9eda28fd9b10df4ae2f2df1b03b4321b203608bc 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -112,8 +112,10 @@ public class PurpurWorldConfig {
|
||||
@@ -109,8 +109,10 @@ public class PurpurWorldConfig {
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
@@ -36,10 +36,10 @@ index aa1ba8b74ab70b6cede99e4853ac0203f388ab06..97e5cb4fd9f97c0bfa9d66c0ceac84e1
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 3129e8f7156276298b5bdec9aa52cb546893d1a6..624de1ba34417234244e7ba5d7bd248fdd19c095 100644
|
||||
index 9eda28fd9b10df4ae2f2df1b03b4321b203608bc..267f2efb10fb1603631efbb0b675a1525492f5aa 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -112,6 +112,11 @@ public class PurpurWorldConfig {
|
||||
@@ -109,6 +109,11 @@ public class PurpurWorldConfig {
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
@@ -20,11 +20,11 @@ index bc4c210a7161c8af3817a828dbdd7601dc649df8..e284106d762735a7c203c19e3c5a06a6
|
||||
// CraftBukkit start - Call death event
|
||||
org.bukkit.event.entity.EntityDeathEvent deathEvent = CraftEventFactory.callEntityDeathEvent(this, this.drops); // Paper
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 86892775f8aeaac1e6ffdcb4dad4c3e5016fc91c..435c6f5c561b645c04aca6ea83566da1e0047acb 100644
|
||||
index 340546a3478337081978c7394ec92769926b36e6..408a9b6777497961280706f6a2860f9ea9d02518 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -73,6 +73,11 @@ public class PurpurWorldConfig {
|
||||
armorstandStepHeight = (float) getDouble("gameplay-mechanics.armorstand.step-height", armorstandStepHeight);
|
||||
@@ -173,6 +173,11 @@ public class PurpurWorldConfig {
|
||||
});
|
||||
}
|
||||
|
||||
+ public boolean disableDropsOnCrammingDeath = false;
|
||||
@@ -32,6 +32,6 @@ index 86892775f8aeaac1e6ffdcb4dad4c3e5016fc91c..435c6f5c561b645c04aca6ea83566da1
|
||||
+ disableDropsOnCrammingDeath = getBoolean("gameplay-mechanics.disable-drops-on-cramming-death", disableDropsOnCrammingDeath);
|
||||
+ }
|
||||
+
|
||||
public double minecartMaxSpeed = 0.4D;
|
||||
public boolean minecartPlaceAnywhere = false;
|
||||
public boolean minecartControllable = false;
|
||||
public boolean farmlandGetsMoistFromBelow = false;
|
||||
private void farmlandSettings() {
|
||||
farmlandGetsMoistFromBelow = getBoolean("blocks.farmland.gets-moist-from-below", farmlandGetsMoistFromBelow);
|
||||
|
||||
@@ -28,10 +28,10 @@ index f33977d95b6db473be4f95075ba99caf90ad0220..56dc04d8875971ee9a5d077a695509af
|
||||
|
||||
return stack.isEmpty() ? new ItemStack(Items.BUCKET) : stack;
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 435c6f5c561b645c04aca6ea83566da1e0047acb..5d363a5103d159415d7d201ad9079502bff4de53 100644
|
||||
index 408a9b6777497961280706f6a2860f9ea9d02518..928bddf54f77bd97cffc31e8bada979f42fb9120 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -74,8 +74,10 @@ public class PurpurWorldConfig {
|
||||
@@ -174,8 +174,10 @@ public class PurpurWorldConfig {
|
||||
}
|
||||
|
||||
public boolean disableDropsOnCrammingDeath = false;
|
||||
@@ -41,4 +41,4 @@ index 435c6f5c561b645c04aca6ea83566da1e0047acb..5d363a5103d159415d7d201ad9079502
|
||||
+ milkCuresBadOmen = getBoolean("gameplay-mechanics.milk-cures-bad-omen", milkCuresBadOmen);
|
||||
}
|
||||
|
||||
public double minecartMaxSpeed = 0.4D;
|
||||
public boolean farmlandGetsMoistFromBelow = false;
|
||||
|
||||
@@ -17,10 +17,10 @@ index 8212ee2cc1242c0a3626f3643c455f3be0de18c2..aaf6f43c0f37a51a7b2db57b8da43365
|
||||
}
|
||||
}
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 5d363a5103d159415d7d201ad9079502bff4de53..48f6faad6977aa5b5e7e3780a1466a4f222b6f71 100644
|
||||
index 928bddf54f77bd97cffc31e8bada979f42fb9120..2788371531f09876a4e5e0d53c58de631187410c 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -1281,6 +1281,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1278,6 +1278,7 @@ public class PurpurWorldConfig {
|
||||
public boolean witherSkeletonRidable = false;
|
||||
public boolean witherSkeletonRidableInWater = false;
|
||||
public double witherSkeletonMaxHealth = 20.0D;
|
||||
@@ -28,7 +28,7 @@ index 5d363a5103d159415d7d201ad9079502bff4de53..48f6faad6977aa5b5e7e3780a1466a4f
|
||||
private void witherSkeletonSettings() {
|
||||
witherSkeletonRidable = getBoolean("mobs.wither_skeleton.ridable", witherSkeletonRidable);
|
||||
witherSkeletonRidableInWater = getBoolean("mobs.wither_skeleton.ridable-in-water", witherSkeletonRidableInWater);
|
||||
@@ -1290,6 +1291,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1287,6 +1288,7 @@ public class PurpurWorldConfig {
|
||||
set("mobs.wither_skeleton.attributes.max_health", oldValue);
|
||||
}
|
||||
witherSkeletonMaxHealth = getDouble("mobs.wither_skeleton.attributes.max_health", witherSkeletonMaxHealth);
|
||||
|
||||
@@ -18,10 +18,10 @@ index c95eef8596fe3e1ca83e620a6c54b164c797cbe1..1e6a5404d767318de29184b3e3a2bc41
|
||||
if (!this.level.isClientSide && this.pickup == AbstractArrow.Pickup.ALLOWED) {
|
||||
this.spawnAtLocation(this.getPickupItem(), 0.1F);
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 48f6faad6977aa5b5e7e3780a1466a4f222b6f71..14551d5fc853dfde458040e806e84f44d716b9c9 100644
|
||||
index 2788371531f09876a4e5e0d53c58de631187410c..fd62ec22aa21b8c129c4f9fa304fe75b88cd2728 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -75,9 +75,11 @@ public class PurpurWorldConfig {
|
||||
@@ -175,9 +175,11 @@ public class PurpurWorldConfig {
|
||||
|
||||
public boolean disableDropsOnCrammingDeath = false;
|
||||
public boolean milkCuresBadOmen = true;
|
||||
@@ -32,4 +32,4 @@ index 48f6faad6977aa5b5e7e3780a1466a4f222b6f71..14551d5fc853dfde458040e806e84f44
|
||||
+ tridentLoyaltyVoidReturnHeight = getDouble("gameplay-mechanics.trident-loyalty-void-return-height", tridentLoyaltyVoidReturnHeight);
|
||||
}
|
||||
|
||||
public double minecartMaxSpeed = 0.4D;
|
||||
public boolean farmlandGetsMoistFromBelow = false;
|
||||
|
||||
@@ -38,10 +38,10 @@ index b061ecc42122ef66fbf87fe017023abca5728a01..6e0b5fbf5b0d216b6b7c647d45ef37cd
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 14551d5fc853dfde458040e806e84f44d716b9c9..1687e191ef9557e8bb0014960188207162ab8948 100644
|
||||
index fd62ec22aa21b8c129c4f9fa304fe75b88cd2728..a0183eefc826d8c8d8abfa7a3d8e9eba22c9b233 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -350,6 +350,7 @@ public class PurpurWorldConfig {
|
||||
@@ -347,6 +347,7 @@ public class PurpurWorldConfig {
|
||||
public boolean creeperRidableInWater = false;
|
||||
public double creeperMaxHealth = 20.0D;
|
||||
public double creeperChargedChance = 0.0D;
|
||||
@@ -49,7 +49,7 @@ index 14551d5fc853dfde458040e806e84f44d716b9c9..1687e191ef9557e8bb00149601882071
|
||||
private void creeperSettings() {
|
||||
creeperRidable = getBoolean("mobs.creeper.ridable", creeperRidable);
|
||||
creeperRidableInWater = getBoolean("mobs.creeper.ridable-in-water", creeperRidableInWater);
|
||||
@@ -360,6 +361,7 @@ public class PurpurWorldConfig {
|
||||
@@ -357,6 +358,7 @@ public class PurpurWorldConfig {
|
||||
}
|
||||
creeperMaxHealth = getDouble("mobs.creeper.attributes.max_health", creeperMaxHealth);
|
||||
creeperChargedChance = getDouble("mobs.creeper.naturally-charged-chance", creeperChargedChance);
|
||||
@@ -57,7 +57,7 @@ index 14551d5fc853dfde458040e806e84f44d716b9c9..1687e191ef9557e8bb00149601882071
|
||||
}
|
||||
|
||||
public boolean dolphinRidable = false;
|
||||
@@ -457,6 +459,7 @@ public class PurpurWorldConfig {
|
||||
@@ -454,6 +456,7 @@ public class PurpurWorldConfig {
|
||||
public boolean endermanRidable = false;
|
||||
public boolean endermanRidableInWater = false;
|
||||
public double endermanMaxHealth = 40.0D;
|
||||
@@ -65,7 +65,7 @@ index 14551d5fc853dfde458040e806e84f44d716b9c9..1687e191ef9557e8bb00149601882071
|
||||
private void endermanSettings() {
|
||||
endermanRidable = getBoolean("mobs.enderman.ridable", endermanRidable);
|
||||
endermanRidableInWater = getBoolean("mobs.enderman.ridable-in-water", endermanRidableInWater);
|
||||
@@ -466,6 +469,7 @@ public class PurpurWorldConfig {
|
||||
@@ -463,6 +466,7 @@ public class PurpurWorldConfig {
|
||||
set("mobs.enderman.attributes.max_health", oldValue);
|
||||
}
|
||||
endermanMaxHealth = getDouble("mobs.enderman.attributes.max_health", endermanMaxHealth);
|
||||
|
||||
@@ -18,10 +18,10 @@ index 75931cce0f430975fc54216f20e235833a74a72c..0dbce3ab5ff891b94d4209203b97fd78
|
||||
Iterator iterator = list.iterator();
|
||||
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 1687e191ef9557e8bb0014960188207162ab8948..e24301d143ac29501f8f6dca15c1e5ed0a2b8281 100644
|
||||
index a0183eefc826d8c8d8abfa7a3d8e9eba22c9b233..74850de943a3c0209358e872ea2c8ff2c8a2e4ee 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -74,10 +74,12 @@ public class PurpurWorldConfig {
|
||||
@@ -174,10 +174,12 @@ public class PurpurWorldConfig {
|
||||
}
|
||||
|
||||
public boolean disableDropsOnCrammingDeath = false;
|
||||
|
||||
@@ -18,10 +18,10 @@ index 41b5652578e4a703cb6f03e82654b27ea6302b99..2d83b7252814a3a921db32a62f6bfb71
|
||||
} else if (entity.getVillagerData().getProfession() != VillagerProfession.FARMER) {
|
||||
return false;
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index e24301d143ac29501f8f6dca15c1e5ed0a2b8281..73bea53e7e4d0a0a937b6a8964fc2a49b16d3db6 100644
|
||||
index 74850de943a3c0209358e872ea2c8ff2c8a2e4ee..f674500a8e7cd50cf94ae2d13d0c54a9b29309f5 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -1211,6 +1211,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1208,6 +1208,7 @@ public class PurpurWorldConfig {
|
||||
public double villagerMaxHealth = 20.0D;
|
||||
public int villagerBrainTicks = 1;
|
||||
public boolean villagerUseBrainTicksOnlyWhenLagging = true;
|
||||
@@ -29,7 +29,7 @@ index e24301d143ac29501f8f6dca15c1e5ed0a2b8281..73bea53e7e4d0a0a937b6a8964fc2a49
|
||||
private void villagerSettings() {
|
||||
villagerRidable = getBoolean("mobs.villager.ridable", villagerRidable);
|
||||
villagerRidableInWater = getBoolean("mobs.villager.ridable-in-water", villagerRidableInWater);
|
||||
@@ -1222,6 +1223,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1219,6 +1220,7 @@ public class PurpurWorldConfig {
|
||||
villagerMaxHealth = getDouble("mobs.villager.attributes.max_health", villagerMaxHealth);
|
||||
villagerBrainTicks = getInt("mobs.villager.brain-ticks", villagerBrainTicks);
|
||||
villagerUseBrainTicksOnlyWhenLagging = getBoolean("mobs.villager.use-brain-ticks-only-when-lagging", villagerUseBrainTicksOnlyWhenLagging);
|
||||
|
||||
@@ -41,10 +41,10 @@ index d2588a91b55aebdecf8e1644498111ccf84a9dc9..393061e13375bf7a7ee57973b4abac83
|
||||
this.goalSelector.addGoal(8, new WaterAvoidingRandomStrollGoal(this, 0.35D));
|
||||
this.goalSelector.addGoal(9, new InteractGoal(this, Player.class, 3.0F, 1.0F));
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 73bea53e7e4d0a0a937b6a8964fc2a49b16d3db6..5e340655c472a3e8c7c017ce7eda7881f1530b43 100644
|
||||
index f674500a8e7cd50cf94ae2d13d0c54a9b29309f5..fcecd4391d43f6a56d8ca562c95973b53f053d63 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -1212,6 +1212,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1209,6 +1209,7 @@ public class PurpurWorldConfig {
|
||||
public int villagerBrainTicks = 1;
|
||||
public boolean villagerUseBrainTicksOnlyWhenLagging = true;
|
||||
public boolean villagerFarmingBypassMobGriefing = false;
|
||||
@@ -52,7 +52,7 @@ index 73bea53e7e4d0a0a937b6a8964fc2a49b16d3db6..5e340655c472a3e8c7c017ce7eda7881
|
||||
private void villagerSettings() {
|
||||
villagerRidable = getBoolean("mobs.villager.ridable", villagerRidable);
|
||||
villagerRidableInWater = getBoolean("mobs.villager.ridable-in-water", villagerRidableInWater);
|
||||
@@ -1224,6 +1225,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1221,6 +1222,7 @@ public class PurpurWorldConfig {
|
||||
villagerBrainTicks = getInt("mobs.villager.brain-ticks", villagerBrainTicks);
|
||||
villagerUseBrainTicksOnlyWhenLagging = getBoolean("mobs.villager.use-brain-ticks-only-when-lagging", villagerUseBrainTicksOnlyWhenLagging);
|
||||
villagerFarmingBypassMobGriefing = getBoolean("mobs.villager.bypass-mob-griefing", villagerFarmingBypassMobGriefing);
|
||||
@@ -60,7 +60,7 @@ index 73bea53e7e4d0a0a937b6a8964fc2a49b16d3db6..5e340655c472a3e8c7c017ce7eda7881
|
||||
}
|
||||
|
||||
public boolean vindicatorRidable = false;
|
||||
@@ -1243,6 +1245,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1240,6 +1242,7 @@ public class PurpurWorldConfig {
|
||||
public boolean wanderingTraderRidable = false;
|
||||
public boolean wanderingTraderRidableInWater = false;
|
||||
public double wanderingTraderMaxHealth = 20.0D;
|
||||
@@ -68,7 +68,7 @@ index 73bea53e7e4d0a0a937b6a8964fc2a49b16d3db6..5e340655c472a3e8c7c017ce7eda7881
|
||||
private void wanderingTraderSettings() {
|
||||
wanderingTraderRidable = getBoolean("mobs.wandering_trader.ridable", wanderingTraderRidable);
|
||||
wanderingTraderRidableInWater = getBoolean("mobs.wandering_trader.ridable-in-water", wanderingTraderRidableInWater);
|
||||
@@ -1252,6 +1255,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1249,6 +1252,7 @@ public class PurpurWorldConfig {
|
||||
set("mobs.wandering_trader.attributes.max_health", oldValue);
|
||||
}
|
||||
wanderingTraderMaxHealth = getDouble("mobs.wandering_trader.attributes.max_health", wanderingTraderMaxHealth);
|
||||
|
||||
@@ -49,10 +49,10 @@ index 393061e13375bf7a7ee57973b4abac83ffa15fa3..c48935d35a6141c41db22e3ec172d599
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 5e340655c472a3e8c7c017ce7eda7881f1530b43..4133c929d53556d25c4fe51e54c09fd259c212cb 100644
|
||||
index fcecd4391d43f6a56d8ca562c95973b53f053d63..a245101344ce1e2db2c57938644757364447963c 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -1213,6 +1213,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1210,6 +1210,7 @@ public class PurpurWorldConfig {
|
||||
public boolean villagerUseBrainTicksOnlyWhenLagging = true;
|
||||
public boolean villagerFarmingBypassMobGriefing = false;
|
||||
public boolean villagerFollowEmeraldBlock = false;
|
||||
@@ -60,7 +60,7 @@ index 5e340655c472a3e8c7c017ce7eda7881f1530b43..4133c929d53556d25c4fe51e54c09fd2
|
||||
private void villagerSettings() {
|
||||
villagerRidable = getBoolean("mobs.villager.ridable", villagerRidable);
|
||||
villagerRidableInWater = getBoolean("mobs.villager.ridable-in-water", villagerRidableInWater);
|
||||
@@ -1226,6 +1227,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1223,6 +1224,7 @@ public class PurpurWorldConfig {
|
||||
villagerUseBrainTicksOnlyWhenLagging = getBoolean("mobs.villager.use-brain-ticks-only-when-lagging", villagerUseBrainTicksOnlyWhenLagging);
|
||||
villagerFarmingBypassMobGriefing = getBoolean("mobs.villager.bypass-mob-griefing", villagerFarmingBypassMobGriefing);
|
||||
villagerFollowEmeraldBlock = getBoolean("mobs.villager.follow-emerald-blocks", villagerFollowEmeraldBlock);
|
||||
@@ -68,7 +68,7 @@ index 5e340655c472a3e8c7c017ce7eda7881f1530b43..4133c929d53556d25c4fe51e54c09fd2
|
||||
}
|
||||
|
||||
public boolean vindicatorRidable = false;
|
||||
@@ -1246,6 +1248,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1243,6 +1245,7 @@ public class PurpurWorldConfig {
|
||||
public boolean wanderingTraderRidableInWater = false;
|
||||
public double wanderingTraderMaxHealth = 20.0D;
|
||||
public boolean wanderingTraderFollowEmeraldBlock = false;
|
||||
@@ -76,7 +76,7 @@ index 5e340655c472a3e8c7c017ce7eda7881f1530b43..4133c929d53556d25c4fe51e54c09fd2
|
||||
private void wanderingTraderSettings() {
|
||||
wanderingTraderRidable = getBoolean("mobs.wandering_trader.ridable", wanderingTraderRidable);
|
||||
wanderingTraderRidableInWater = getBoolean("mobs.wandering_trader.ridable-in-water", wanderingTraderRidableInWater);
|
||||
@@ -1256,6 +1259,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1253,6 +1256,7 @@ public class PurpurWorldConfig {
|
||||
}
|
||||
wanderingTraderMaxHealth = getDouble("mobs.wandering_trader.attributes.max_health", wanderingTraderMaxHealth);
|
||||
wanderingTraderFollowEmeraldBlock = getBoolean("mobs.wandering_trader.follow-emerald-blocks", wanderingTraderFollowEmeraldBlock);
|
||||
|
||||
@@ -18,10 +18,10 @@ index 52a592e569d020dca45916be7b5fad28c9d480de..5e100dbdbd6cfb4aa34b0d6b1ce09138
|
||||
|
||||
for (int i = 0; i < 10; ++i) {
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 4133c929d53556d25c4fe51e54c09fd259c212cb..420eeef9ab551210eedebfd027dd5d9e1b1b9eb5 100644
|
||||
index a245101344ce1e2db2c57938644757364447963c..c84ca5ddc36bf91252950ec609ce405b18348dcd 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -1214,6 +1214,8 @@ public class PurpurWorldConfig {
|
||||
@@ -1211,6 +1211,8 @@ public class PurpurWorldConfig {
|
||||
public boolean villagerFarmingBypassMobGriefing = false;
|
||||
public boolean villagerFollowEmeraldBlock = false;
|
||||
public boolean villagerCanBeLeashed = false;
|
||||
@@ -30,7 +30,7 @@ index 4133c929d53556d25c4fe51e54c09fd259c212cb..420eeef9ab551210eedebfd027dd5d9e
|
||||
private void villagerSettings() {
|
||||
villagerRidable = getBoolean("mobs.villager.ridable", villagerRidable);
|
||||
villagerRidableInWater = getBoolean("mobs.villager.ridable-in-water", villagerRidableInWater);
|
||||
@@ -1228,6 +1230,8 @@ public class PurpurWorldConfig {
|
||||
@@ -1225,6 +1227,8 @@ public class PurpurWorldConfig {
|
||||
villagerFarmingBypassMobGriefing = getBoolean("mobs.villager.bypass-mob-griefing", villagerFarmingBypassMobGriefing);
|
||||
villagerFollowEmeraldBlock = getBoolean("mobs.villager.follow-emerald-blocks", villagerFollowEmeraldBlock);
|
||||
villagerCanBeLeashed = getBoolean("mobs.villager.can-be-leashed", villagerCanBeLeashed);
|
||||
|
||||
@@ -58,10 +58,10 @@ index 695783e64564b1d2a178d57a89737d2a97ab9014..cd1a33a1f10d04a91358f51d736bda34
|
||||
protected boolean canConvertToSource() {
|
||||
return false;
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 420eeef9ab551210eedebfd027dd5d9e1b1b9eb5..82bb16a56f9c81a0f9a4fa29756ad793b8a24476 100644
|
||||
index c84ca5ddc36bf91252950ec609ce405b18348dcd..8f0d4cf26d85de197fbddcdb7d42ee5f12cbd078 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -192,6 +192,13 @@ public class PurpurWorldConfig {
|
||||
@@ -189,6 +189,13 @@ public class PurpurWorldConfig {
|
||||
farmlandGetsMoistFromBelow = getBoolean("blocks.farmland.gets-moist-from-below", farmlandGetsMoistFromBelow);
|
||||
}
|
||||
|
||||
|
||||
@@ -18,10 +18,10 @@ index cd1a33a1f10d04a91358f51d736bda34110324c4..b0d671ba015d1ad37fdf600b8e70def2
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 82bb16a56f9c81a0f9a4fa29756ad793b8a24476..92de2b4521ff5b462f7ff93c05a3f13d8e8c21f3 100644
|
||||
index 8f0d4cf26d85de197fbddcdb7d42ee5f12cbd078..3485b925d113a2619601a696acded3a16f9985f5 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -194,9 +194,13 @@ public class PurpurWorldConfig {
|
||||
@@ -191,9 +191,13 @@ public class PurpurWorldConfig {
|
||||
|
||||
public boolean lavaInfinite = false;
|
||||
public int lavaInfiniteRequiredSources = 2;
|
||||
|
||||
@@ -40,20 +40,24 @@ index 721767812c765ac70c66f5445950c39167f344de..3fd54f7d0f3372d83ccd135db44870fb
|
||||
return 0;
|
||||
}
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 92de2b4521ff5b462f7ff93c05a3f13d8e8c21f3..c29e6acfd2dce0b8483ac324a1720d2cdb38d109 100644
|
||||
index 3485b925d113a2619601a696acded3a16f9985f5..a54fbb952a3334350453ee6df1e6954798f66876 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -146,6 +146,13 @@ public class PurpurWorldConfig {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -141,6 +141,8 @@ public class PurpurWorldConfig {
|
||||
public boolean idleTimeoutUpdateTabList = false;
|
||||
public int playerSpawnInvulnerableTicks = 60;
|
||||
public boolean playerInvulnerableWhileAcceptingResourcePack = false;
|
||||
+ public String playerDeathExpDropEquation = "expLevel * 7";
|
||||
+ public int playerDeathExpDropMax = 100;
|
||||
+ private void playerDeathExpSettings() {
|
||||
private void playerSettings() {
|
||||
idleTimeoutKick = getBoolean("gameplay-mechanics.player.idle-timeout.kick-if-idle", idleTimeoutKick);
|
||||
idleTimeoutTickNearbyEntities = getBoolean("gameplay-mechanics.player.idle-timeout.tick-nearby-entities", idleTimeoutTickNearbyEntities);
|
||||
@@ -148,6 +150,8 @@ public class PurpurWorldConfig {
|
||||
idleTimeoutUpdateTabList = getBoolean("gameplay-mechanics.player.idle-timeout.update-tab-list", idleTimeoutUpdateTabList);
|
||||
playerSpawnInvulnerableTicks = getInt("gameplay-mechanics.player.spawn-invulnerable-ticks", playerSpawnInvulnerableTicks);
|
||||
playerInvulnerableWhileAcceptingResourcePack = getBoolean("gameplay-mechanics.player.invulnerable-while-accepting-resource-pack", playerInvulnerableWhileAcceptingResourcePack);
|
||||
+ playerDeathExpDropEquation = getString("gameplay-mechanics.player.exp-dropped-on-death.equation", playerDeathExpDropEquation);
|
||||
+ playerDeathExpDropMax = getInt("gameplay-mechanics.player.exp-dropped-on-death.maximum", playerDeathExpDropMax);
|
||||
+ }
|
||||
+
|
||||
public boolean idleTimeoutKick = true;
|
||||
public boolean idleTimeoutTickNearbyEntities = true;
|
||||
public boolean idleTimeoutCountAsSleeping = false;
|
||||
}
|
||||
|
||||
public boolean silkTouchEnabled = false;
|
||||
|
||||
@@ -31,10 +31,10 @@ index 59988294eeba527ab28765ab2482e477802f5240..fda3a3f8fd354aa6dcb0696f0381a6dd
|
||||
|
||||
protected void updateSwingTime() {
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index c29e6acfd2dce0b8483ac324a1720d2cdb38d109..ed53228bc74cf4429aa7ef65de4ece47a437e99f 100644
|
||||
index a54fbb952a3334350453ee6df1e6954798f66876..0e2f3e1ed22c72e8089d7c41c2cd2e55614416a3 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -77,11 +77,15 @@ public class PurpurWorldConfig {
|
||||
@@ -181,11 +181,15 @@ public class PurpurWorldConfig {
|
||||
public boolean entitiesPickUpLootBypassMobGriefing = false;
|
||||
public boolean milkCuresBadOmen = true;
|
||||
public double tridentLoyaltyVoidReturnHeight = 0.0D;
|
||||
@@ -49,4 +49,4 @@ index c29e6acfd2dce0b8483ac324a1720d2cdb38d109..ed53228bc74cf4429aa7ef65de4ece47
|
||||
+ voidDamageDealt = getDouble("gameplay-mechanics.void-damage-dealt", voidDamageDealt);
|
||||
}
|
||||
|
||||
public double minecartMaxSpeed = 0.4D;
|
||||
public boolean farmlandGetsMoistFromBelow = false;
|
||||
|
||||
@@ -43,11 +43,11 @@ index aab4a63e61aced51b1b6c885fd8b8426a4f14408..ad095c6bc7e00d286c83e37f84d8ed5d
|
||||
// CraftBukkit start
|
||||
Level world = pointer.getLevel();
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index ed53228bc74cf4429aa7ef65de4ece47a437e99f..1266ddfe01e30923189633b11301465118c47581 100644
|
||||
index 0e2f3e1ed22c72e8089d7c41c2cd2e55614416a3..d876899a14de21498055fe776907241c075ab009 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -198,6 +198,11 @@ public class PurpurWorldConfig {
|
||||
});
|
||||
@@ -192,6 +192,11 @@ public class PurpurWorldConfig {
|
||||
voidDamageDealt = getDouble("gameplay-mechanics.void-damage-dealt", voidDamageDealt);
|
||||
}
|
||||
|
||||
+ public boolean dispenserApplyCursedArmor = true;
|
||||
|
||||
@@ -17,18 +17,18 @@ index aa7c022c4faade23bd9061311d4152cf845d3331..d4a19fc38027717e43353bc62ef23e56
|
||||
} else {
|
||||
return Boat.Status.IN_AIR;
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 1266ddfe01e30923189633b11301465118c47581..59c0d2640042f1070d7a4818209c6bdd17afb03c 100644
|
||||
index d876899a14de21498055fe776907241c075ab009..203e491dd43c39dbbf60e53aca7bb32e22f16fbb 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -73,6 +73,7 @@ public class PurpurWorldConfig {
|
||||
armorstandStepHeight = (float) getDouble("gameplay-mechanics.armorstand.step-height", armorstandStepHeight);
|
||||
@@ -177,6 +177,7 @@ public class PurpurWorldConfig {
|
||||
});
|
||||
}
|
||||
|
||||
+ public boolean boatEjectPlayersOnLand = false;
|
||||
public boolean disableDropsOnCrammingDeath = false;
|
||||
public boolean entitiesPickUpLootBypassMobGriefing = false;
|
||||
public boolean milkCuresBadOmen = true;
|
||||
@@ -80,6 +81,7 @@ public class PurpurWorldConfig {
|
||||
@@ -184,6 +185,7 @@ public class PurpurWorldConfig {
|
||||
public double voidDamageHeight = -64.0D;
|
||||
public double voidDamageDealt = 4.0D;
|
||||
private void miscGameplayMechanicsSettings() {
|
||||
|
||||
@@ -73,18 +73,18 @@ index e246bf034a86deba5a15e7c639f5e08213fe7eee..585b29a214d0306ac2d6a170125270c1
|
||||
Entry<EquipmentSlot, ItemStack> entry = getRandomItemWith(enchantment, entityliving);
|
||||
return entry != null ? entry.getValue() : ItemStack.EMPTY;
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 59c0d2640042f1070d7a4818209c6bdd17afb03c..35b05b753ebbcecb887b093647a2a4bf6f439df7 100644
|
||||
index 203e491dd43c39dbbf60e53aca7bb32e22f16fbb..99b021c43290309a96dfa0976c7d87f8f938d427 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -73,6 +73,7 @@ public class PurpurWorldConfig {
|
||||
armorstandStepHeight = (float) getDouble("gameplay-mechanics.armorstand.step-height", armorstandStepHeight);
|
||||
@@ -177,6 +177,7 @@ public class PurpurWorldConfig {
|
||||
});
|
||||
}
|
||||
|
||||
+ public boolean useBetterMending = false;
|
||||
public boolean boatEjectPlayersOnLand = false;
|
||||
public boolean disableDropsOnCrammingDeath = false;
|
||||
public boolean entitiesPickUpLootBypassMobGriefing = false;
|
||||
@@ -81,6 +82,7 @@ public class PurpurWorldConfig {
|
||||
@@ -185,6 +186,7 @@ public class PurpurWorldConfig {
|
||||
public double voidDamageHeight = -64.0D;
|
||||
public double voidDamageDealt = 4.0D;
|
||||
private void miscGameplayMechanicsSettings() {
|
||||
|
||||
@@ -99,11 +99,11 @@ index 510ed67a7de2b503ab8b01db57ed09ee33b0d825..3f53dc8f250ad3f7616ce7ef0a2353ca
|
||||
entityhuman.startAutoSpinAttack(20);
|
||||
if (entityhuman.isOnGround()) {
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 35b05b753ebbcecb887b093647a2a4bf6f439df7..7ea265ced069fa0121a8ca8b8f436957527494ee 100644
|
||||
index 99b021c43290309a96dfa0976c7d87f8f938d427..f0b7a5616040cb7d7f88bd98f43abf364b18343f 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -92,6 +92,19 @@ public class PurpurWorldConfig {
|
||||
voidDamageDealt = getDouble("gameplay-mechanics.void-damage-dealt", voidDamageDealt);
|
||||
@@ -73,6 +73,19 @@ public class PurpurWorldConfig {
|
||||
armorstandStepHeight = (float) getDouble("gameplay-mechanics.armorstand.step-height", armorstandStepHeight);
|
||||
}
|
||||
|
||||
+ public int elytraDamagePerSecond = 1;
|
||||
|
||||
@@ -93,10 +93,10 @@ index 158719d46c96bb733a00e08c8285f41a48406abf..623a8b38b9d0ccbfe807afe328495b19
|
||||
+ // Purpur end
|
||||
}
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 7ea265ced069fa0121a8ca8b8f436957527494ee..d733d01678689107449fcad0b94171799de2a626 100644
|
||||
index f0b7a5616040cb7d7f88bd98f43abf364b18343f..59096e683f1ed1675d142a9a737519f3f7cdc89a 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -105,6 +105,49 @@ public class PurpurWorldConfig {
|
||||
@@ -86,6 +86,49 @@ public class PurpurWorldConfig {
|
||||
elytraDamagePerTridentBoost = getInt("gameplay-mechanics.elytra.damage-per-boost.trident", elytraDamagePerTridentBoost);
|
||||
}
|
||||
|
||||
|
||||
@@ -167,10 +167,10 @@ index 04d09123f70a192f1283c0d7e8a8254f3d30889a..43ef93d2c0c59e0d7021ee9aa2b44345
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index d733d01678689107449fcad0b94171799de2a626..999c73c5a3fca531cc886025865df1464b8f80da 100644
|
||||
index 59096e683f1ed1675d142a9a737519f3f7cdc89a..d3796ea8bb8ad36a79d79a06ee250456ce541e23 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -499,6 +499,9 @@ public class PurpurWorldConfig {
|
||||
@@ -493,6 +493,9 @@ public class PurpurWorldConfig {
|
||||
public boolean drownedRidableInWater = false;
|
||||
public double drownedMaxHealth = 20.0D;
|
||||
public double drownedSpawnReinforcements = 0.1D;
|
||||
@@ -180,7 +180,7 @@ index d733d01678689107449fcad0b94171799de2a626..999c73c5a3fca531cc886025865df146
|
||||
private void drownedSettings() {
|
||||
drownedRidable = getBoolean("mobs.drowned.ridable", drownedRidable);
|
||||
drownedRidableInWater = getBoolean("mobs.drowned.ridable-in-water", drownedRidableInWater);
|
||||
@@ -509,6 +512,9 @@ public class PurpurWorldConfig {
|
||||
@@ -503,6 +506,9 @@ public class PurpurWorldConfig {
|
||||
}
|
||||
drownedMaxHealth = getDouble("mobs.drowned.attributes.max_health", drownedMaxHealth);
|
||||
drownedSpawnReinforcements = getDouble("mobs.drowned.attributes.spawn_reinforcements", drownedSpawnReinforcements);
|
||||
@@ -190,7 +190,7 @@ index d733d01678689107449fcad0b94171799de2a626..999c73c5a3fca531cc886025865df146
|
||||
}
|
||||
|
||||
public boolean elderGuardianRidable = false;
|
||||
@@ -721,6 +727,9 @@ public class PurpurWorldConfig {
|
||||
@@ -715,6 +721,9 @@ public class PurpurWorldConfig {
|
||||
public boolean huskRidableInWater = false;
|
||||
public double huskMaxHealth = 20.0D;
|
||||
public double huskSpawnReinforcements = 0.1D;
|
||||
@@ -200,7 +200,7 @@ index d733d01678689107449fcad0b94171799de2a626..999c73c5a3fca531cc886025865df146
|
||||
private void huskSettings() {
|
||||
huskRidable = getBoolean("mobs.husk.ridable", huskRidable);
|
||||
huskRidableInWater = getBoolean("mobs.husk.ridable-in-water", huskRidableInWater);
|
||||
@@ -731,6 +740,9 @@ public class PurpurWorldConfig {
|
||||
@@ -725,6 +734,9 @@ public class PurpurWorldConfig {
|
||||
}
|
||||
huskMaxHealth = getDouble("mobs.husk.attributes.max_health", huskMaxHealth);
|
||||
huskSpawnReinforcements = getDouble("mobs.husk.attributes.spawn_reinforcements", huskSpawnReinforcements);
|
||||
@@ -210,7 +210,7 @@ index d733d01678689107449fcad0b94171799de2a626..999c73c5a3fca531cc886025865df146
|
||||
}
|
||||
|
||||
public boolean illusionerRidable = false;
|
||||
@@ -1435,6 +1447,9 @@ public class PurpurWorldConfig {
|
||||
@@ -1429,6 +1441,9 @@ public class PurpurWorldConfig {
|
||||
public boolean zombieRidableInWater = false;
|
||||
public double zombieMaxHealth = 20.0D;
|
||||
public double zombieSpawnReinforcements = 0.1D;
|
||||
@@ -220,7 +220,7 @@ index d733d01678689107449fcad0b94171799de2a626..999c73c5a3fca531cc886025865df146
|
||||
private void zombieSettings() {
|
||||
zombieRidable = getBoolean("mobs.zombie.ridable", zombieRidable);
|
||||
zombieRidableInWater = getBoolean("mobs.zombie.ridable-in-water", zombieRidableInWater);
|
||||
@@ -1445,6 +1460,9 @@ public class PurpurWorldConfig {
|
||||
@@ -1439,6 +1454,9 @@ public class PurpurWorldConfig {
|
||||
}
|
||||
zombieMaxHealth = getDouble("mobs.zombie.attributes.max_health", zombieMaxHealth);
|
||||
zombieSpawnReinforcements = getDouble("mobs.zombie.attributes.spawn_reinforcements", zombieSpawnReinforcements);
|
||||
@@ -230,7 +230,7 @@ index d733d01678689107449fcad0b94171799de2a626..999c73c5a3fca531cc886025865df146
|
||||
}
|
||||
|
||||
public boolean zombieHorseRidableInWater = false;
|
||||
@@ -1478,6 +1496,9 @@ public class PurpurWorldConfig {
|
||||
@@ -1472,6 +1490,9 @@ public class PurpurWorldConfig {
|
||||
public boolean zombieVillagerRidableInWater = false;
|
||||
public double zombieVillagerMaxHealth = 20.0D;
|
||||
public double zombieVillagerSpawnReinforcements = 0.1D;
|
||||
@@ -240,7 +240,7 @@ index d733d01678689107449fcad0b94171799de2a626..999c73c5a3fca531cc886025865df146
|
||||
private void zombieVillagerSettings() {
|
||||
zombieVillagerRidable = getBoolean("mobs.zombie_villager.ridable", zombieVillagerRidable);
|
||||
zombieVillagerRidableInWater = getBoolean("mobs.zombie_villager.ridable-in-water", zombieVillagerRidableInWater);
|
||||
@@ -1488,12 +1509,18 @@ public class PurpurWorldConfig {
|
||||
@@ -1482,12 +1503,18 @@ public class PurpurWorldConfig {
|
||||
}
|
||||
zombieVillagerMaxHealth = getDouble("mobs.zombie_villager.attributes.max_health", zombieVillagerMaxHealth);
|
||||
zombieVillagerSpawnReinforcements = getDouble("mobs.zombie_villager.attributes.spawn_reinforcements", zombieVillagerSpawnReinforcements);
|
||||
@@ -259,7 +259,7 @@ index d733d01678689107449fcad0b94171799de2a626..999c73c5a3fca531cc886025865df146
|
||||
private void zombifiedPiglinSettings() {
|
||||
zombifiedPiglinRidable = getBoolean("mobs.zombified_piglin.ridable", zombifiedPiglinRidable);
|
||||
zombifiedPiglinRidableInWater = getBoolean("mobs.zombified_piglin.ridable-in-water", zombifiedPiglinRidableInWater);
|
||||
@@ -1504,5 +1531,8 @@ public class PurpurWorldConfig {
|
||||
@@ -1498,5 +1525,8 @@ public class PurpurWorldConfig {
|
||||
}
|
||||
zombifiedPiglinMaxHealth = getDouble("mobs.zombified_piglin.attributes.max_health", zombifiedPiglinMaxHealth);
|
||||
zombifiedPiglinSpawnReinforcements = getDouble("mobs.zombified_piglin.attributes.spawn_reinforcements", zombifiedPiglinSpawnReinforcements);
|
||||
|
||||
@@ -258,10 +258,10 @@ index 359f5d01d144121e0ea129aebc45b3e796c16bf7..fcb383cea17217b6ee26fcd8b59e5ce6
|
||||
|
||||
private float speed = 0.1F;
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 999c73c5a3fca531cc886025865df1464b8f80da..99803a6bc3d63b31ddb2c137ba9ea311f955b9c9 100644
|
||||
index d3796ea8bb8ad36a79d79a06ee250456ce541e23..f8a0044435e8c20395b8bc6700c625b391ca1a9e 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -912,6 +912,9 @@ public class PurpurWorldConfig {
|
||||
@@ -906,6 +906,9 @@ public class PurpurWorldConfig {
|
||||
public int phantomFlameFireTime = 8;
|
||||
public boolean phantomAllowGriefing = false;
|
||||
public double phantomMaxHealth = 20.0D;
|
||||
@@ -271,7 +271,7 @@ index 999c73c5a3fca531cc886025865df1464b8f80da..99803a6bc3d63b31ddb2c137ba9ea311
|
||||
private void phantomSettings() {
|
||||
phantomRidable = getBoolean("mobs.phantom.ridable", phantomRidable);
|
||||
phantomRidableInWater = getBoolean("mobs.phantom.ridable-in-water", phantomRidableInWater);
|
||||
@@ -925,6 +928,9 @@ public class PurpurWorldConfig {
|
||||
@@ -919,6 +922,9 @@ public class PurpurWorldConfig {
|
||||
set("mobs.phantom.attributes.max_health", oldValue);
|
||||
}
|
||||
phantomMaxHealth = getDouble("mobs.phantom.attributes.max_health", phantomMaxHealth);
|
||||
|
||||
@@ -189,10 +189,10 @@ index 79504dc3448402e73b09c4232b1fd0488872cf68..5c7683058b79953aa4f7427d7654b7e4
|
||||
}
|
||||
}
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 99803a6bc3d63b31ddb2c137ba9ea311f955b9c9..7eda42e4ffd91e1619dc59acdb60b9a7ef83f0c9 100644
|
||||
index f8a0044435e8c20395b8bc6700c625b391ca1a9e..9b94df72ec46c37afc26f84e9faf484bef213dbb 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -915,6 +915,18 @@ public class PurpurWorldConfig {
|
||||
@@ -909,6 +909,18 @@ public class PurpurWorldConfig {
|
||||
public double phantomAttackedByCrystalRadius = 0.0D;
|
||||
public float phantomAttackedByCrystalDamage = 1.0F;
|
||||
public double phantomOrbitCrystalRadius = 0.0D;
|
||||
@@ -211,7 +211,7 @@ index 99803a6bc3d63b31ddb2c137ba9ea311f955b9c9..7eda42e4ffd91e1619dc59acdb60b9a7
|
||||
private void phantomSettings() {
|
||||
phantomRidable = getBoolean("mobs.phantom.ridable", phantomRidable);
|
||||
phantomRidableInWater = getBoolean("mobs.phantom.ridable-in-water", phantomRidableInWater);
|
||||
@@ -931,6 +943,18 @@ public class PurpurWorldConfig {
|
||||
@@ -925,6 +937,18 @@ public class PurpurWorldConfig {
|
||||
phantomAttackedByCrystalRadius = getDouble("mobs.phantom.attacked-by-crystal-range", phantomAttackedByCrystalRadius);
|
||||
phantomAttackedByCrystalDamage = (float) getDouble("mobs.phantom.attacked-by-crystal-damage", phantomAttackedByCrystalDamage);
|
||||
phantomOrbitCrystalRadius = getDouble("mobs.phantom.orbit-crystal-radius", phantomOrbitCrystalRadius);
|
||||
|
||||
@@ -18,7 +18,7 @@ index 163a7861f987c3832aac51cc6df950c768546731..cfe4cdbd28ff11ea2781d47fe6d8c2de
|
||||
} else if ((Boolean) state.getValue(BedBlock.OCCUPIED)) {
|
||||
if (!this.kickVillagerOutOfBed(world, pos)) {
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 7eda42e4ffd91e1619dc59acdb60b9a7ef83f0c9..ce0e2f9eb940e1e79d129667bc6444b83ca4b235 100644
|
||||
index 9b94df72ec46c37afc26f84e9faf484bef213dbb..71b2eb0695a208a2d746589b4c60127a6c8cf91c 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -4,6 +4,7 @@ import net.minecraft.core.Registry;
|
||||
@@ -38,8 +38,8 @@ index 7eda42e4ffd91e1619dc59acdb60b9a7ef83f0c9..ce0e2f9eb940e1e79d129667bc6444b8
|
||||
import static net.pl3x.purpur.PurpurConfig.log;
|
||||
|
||||
public class PurpurWorldConfig {
|
||||
@@ -258,6 +261,22 @@ public class PurpurWorldConfig {
|
||||
});
|
||||
@@ -252,6 +255,22 @@ public class PurpurWorldConfig {
|
||||
voidDamageDealt = getDouble("gameplay-mechanics.void-damage-dealt", voidDamageDealt);
|
||||
}
|
||||
|
||||
+ public boolean bedExplode = true;
|
||||
|
||||
@@ -18,10 +18,10 @@ index af4eb4a8814491afef449a2874521636957d7557..365c28300ecfbe0161716972adf22a8a
|
||||
|
||||
public static boolean canSetSpawn(Level world) {
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index ce0e2f9eb940e1e79d129667bc6444b83ca4b235..a62fb5a9655e29d4327ebf5725e93dded5f02113 100644
|
||||
index 71b2eb0695a208a2d746589b4c60127a6c8cf91c..3e76349fb02722653c5765915941386f1fea3e00 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -298,6 +298,22 @@ public class PurpurWorldConfig {
|
||||
@@ -292,6 +292,22 @@ public class PurpurWorldConfig {
|
||||
lavaSpeedNotNether = getInt("blocks.lava.speed.not-nether", lavaSpeedNotNether);
|
||||
}
|
||||
|
||||
|
||||
@@ -89,10 +89,10 @@ index 45c9c4d751a51a524ff881d9fe3c1a48d141ba54..568c11075c7a45f210bb2ddc81c313d0
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index a62fb5a9655e29d4327ebf5725e93dded5f02113..059da9c67be01f5d495cca4828a639355b5668d4 100644
|
||||
index 3e76349fb02722653c5765915941386f1fea3e00..f495a57ae90d5ca10d63a1f2e7fc6f215b1b04ec 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -108,6 +108,11 @@ public class PurpurWorldConfig {
|
||||
@@ -89,6 +89,11 @@ public class PurpurWorldConfig {
|
||||
elytraDamagePerTridentBoost = getInt("gameplay-mechanics.elytra.damage-per-boost.trident", elytraDamagePerTridentBoost);
|
||||
}
|
||||
|
||||
|
||||
@@ -55,18 +55,22 @@ index 5de1f9729ad0d2857e4c25bb3b9bf3f575217e99..f4eb8ea592e259bca1b961bbbf3f99c9
|
||||
}
|
||||
}
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 059da9c67be01f5d495cca4828a639355b5668d4..679bd772139a6b03eb346ebd4e080bd0167dc294 100644
|
||||
index f495a57ae90d5ca10d63a1f2e7fc6f215b1b04ec..f798517c786d8d887786deafa5c9c82a1f785114 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -243,6 +243,11 @@ public class PurpurWorldConfig {
|
||||
@@ -207,6 +207,7 @@ public class PurpurWorldConfig {
|
||||
public boolean playerInvulnerableWhileAcceptingResourcePack = false;
|
||||
public String playerDeathExpDropEquation = "expLevel * 7";
|
||||
public int playerDeathExpDropMax = 100;
|
||||
+ public boolean teleportIfOutsideBorder = false;
|
||||
private void playerSettings() {
|
||||
idleTimeoutKick = getBoolean("gameplay-mechanics.player.idle-timeout.kick-if-idle", idleTimeoutKick);
|
||||
idleTimeoutTickNearbyEntities = getBoolean("gameplay-mechanics.player.idle-timeout.tick-nearby-entities", idleTimeoutTickNearbyEntities);
|
||||
@@ -216,6 +217,7 @@ public class PurpurWorldConfig {
|
||||
playerInvulnerableWhileAcceptingResourcePack = getBoolean("gameplay-mechanics.player.invulnerable-while-accepting-resource-pack", playerInvulnerableWhileAcceptingResourcePack);
|
||||
playerDeathExpDropEquation = getString("gameplay-mechanics.player.exp-dropped-on-death.equation", playerDeathExpDropEquation);
|
||||
playerDeathExpDropMax = getInt("gameplay-mechanics.player.exp-dropped-on-death.maximum", playerDeathExpDropMax);
|
||||
+ teleportIfOutsideBorder = getBoolean("gameplay-mechanics.player.teleport-if-outside-border", teleportIfOutsideBorder);
|
||||
}
|
||||
|
||||
+ public boolean teleportIfOutsideBorder = false;
|
||||
+ private void teleportIfOutsideBorder() {
|
||||
+ teleportIfOutsideBorder = getBoolean("gameplay-mechanics.player.teleport-if-outside-border", teleportIfOutsideBorder);
|
||||
+ }
|
||||
+
|
||||
public boolean silkTouchEnabled = false;
|
||||
public String silkTouchSpawnerName = "Spawner";
|
||||
public List<String> silkTouchSpawnerLore = new ArrayList<>();
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Squid EAR immunity
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 679bd772139a6b03eb346ebd4e080bd0167dc294..70a89abe116da4e9267988b40cb141ad937b1a3c 100644
|
||||
index f798517c786d8d887786deafa5c9c82a1f785114..a6da4fb3799b9c3ce624f90479e7546fc071b9a5 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -1254,6 +1254,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1245,6 +1245,7 @@ public class PurpurWorldConfig {
|
||||
|
||||
public boolean squidRidable = false;
|
||||
public double squidMaxHealth = 10.0D;
|
||||
@@ -16,7 +16,7 @@ index 679bd772139a6b03eb346ebd4e080bd0167dc294..70a89abe116da4e9267988b40cb141ad
|
||||
private void squidSettings() {
|
||||
squidRidable = getBoolean("mobs.squid.ridable", squidRidable);
|
||||
if (PurpurConfig.version < 10) {
|
||||
@@ -1262,6 +1263,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1253,6 +1254,7 @@ public class PurpurWorldConfig {
|
||||
set("mobs.squid.attributes.max_health", oldValue);
|
||||
}
|
||||
squidMaxHealth = getDouble("mobs.squid.attributes.max_health", squidMaxHealth);
|
||||
|
||||
@@ -47,10 +47,10 @@ index fcb383cea17217b6ee26fcd8b59e5ce6a7ca0f8e..782d4499f925950d66072b63f34a828b
|
||||
list.sort(Comparator.<Player, Double>comparing(Entity::getY).reversed()); // Paper - remap fix
|
||||
Iterator iterator = list.iterator();
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 70a89abe116da4e9267988b40cb141ad937b1a3c..d29600f27eeacf831ec532a79cdd280b2253574f 100644
|
||||
index a6da4fb3799b9c3ce624f90479e7546fc071b9a5..ef7dc4fe0eb958e0b8faca8768a18054d0adcf15 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -972,6 +972,9 @@ public class PurpurWorldConfig {
|
||||
@@ -963,6 +963,9 @@ public class PurpurWorldConfig {
|
||||
public int phantomSpawnOverheadRadius = 10;
|
||||
public int phantomSpawnMinPerAttempt = 1;
|
||||
public int phantomSpawnMaxPerAttempt = -1;
|
||||
@@ -60,7 +60,7 @@ index 70a89abe116da4e9267988b40cb141ad937b1a3c..d29600f27eeacf831ec532a79cdd280b
|
||||
private void phantomSettings() {
|
||||
phantomRidable = getBoolean("mobs.phantom.ridable", phantomRidable);
|
||||
phantomRidableInWater = getBoolean("mobs.phantom.ridable-in-water", phantomRidableInWater);
|
||||
@@ -1000,6 +1003,9 @@ public class PurpurWorldConfig {
|
||||
@@ -991,6 +994,9 @@ public class PurpurWorldConfig {
|
||||
phantomSpawnOverheadRadius = getInt("mobs.phantom.spawn.overhead.radius", phantomSpawnOverheadRadius);
|
||||
phantomSpawnMinPerAttempt = getInt("mobs.phantom.spawn.per-attempt.min", phantomSpawnMinPerAttempt);
|
||||
phantomSpawnMaxPerAttempt = getInt("mobs.phantom.spawn.per-attempt.max", phantomSpawnMaxPerAttempt);
|
||||
|
||||
@@ -18,10 +18,10 @@ index 5e100dbdbd6cfb4aa34b0d6b1ce0913899f60b7c..1e05cc98a332e5b115c4670e5331e679
|
||||
|
||||
private boolean hungry() {
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index d29600f27eeacf831ec532a79cdd280b2253574f..e047403632621a979c3e8d3859c43be8a70d3b92 100644
|
||||
index ef7dc4fe0eb958e0b8faca8768a18054d0adcf15..ad02fcc56677635448ec4b89932fe58bb676408e 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -1398,6 +1398,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1389,6 +1389,7 @@ public class PurpurWorldConfig {
|
||||
public boolean villagerCanBeLeashed = false;
|
||||
public int villagerSpawnIronGolemRadius = 0;
|
||||
public int villagerSpawnIronGolemLimit = 0;
|
||||
@@ -29,7 +29,7 @@ index d29600f27eeacf831ec532a79cdd280b2253574f..e047403632621a979c3e8d3859c43be8
|
||||
private void villagerSettings() {
|
||||
villagerRidable = getBoolean("mobs.villager.ridable", villagerRidable);
|
||||
villagerRidableInWater = getBoolean("mobs.villager.ridable-in-water", villagerRidableInWater);
|
||||
@@ -1414,6 +1415,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1405,6 +1406,7 @@ public class PurpurWorldConfig {
|
||||
villagerCanBeLeashed = getBoolean("mobs.villager.can-be-leashed", villagerCanBeLeashed);
|
||||
villagerSpawnIronGolemRadius = getInt("mobs.villager.spawn-iron-golem.radius", villagerSpawnIronGolemRadius);
|
||||
villagerSpawnIronGolemLimit = getInt("mobs.villager.spawn-iron-golem.limit", villagerSpawnIronGolemLimit);
|
||||
|
||||
@@ -17,11 +17,11 @@ index 9228c0bc797fb95c8ac949bdc568eadafee84a80..f2c9f841d397f445cd3d0420f19e765c
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index e047403632621a979c3e8d3859c43be8a70d3b92..9d35930b8e5f27b0cf65b347dfb829a09965c607 100644
|
||||
index ad02fcc56677635448ec4b89932fe58bb676408e..bb4a7534911b9718ec383f464ae2853a8efea2a2 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -1352,6 +1352,11 @@ public class PurpurWorldConfig {
|
||||
tropicalFishMaxHealth = getDouble("mobs.tropical_fish.attributes.max_health", tropicalFishMaxHealth);
|
||||
@@ -322,6 +322,11 @@ public class PurpurWorldConfig {
|
||||
signRightClickEdit = getBoolean("blocks.sign.right-click-edit", signRightClickEdit);
|
||||
}
|
||||
|
||||
+ public boolean spawnerDeactivateByRedstone = false;
|
||||
@@ -29,6 +29,6 @@ index e047403632621a979c3e8d3859c43be8a70d3b92..9d35930b8e5f27b0cf65b347dfb829a0
|
||||
+ spawnerDeactivateByRedstone = getBoolean("blocks.spawner.deactivate-by-redstone", spawnerDeactivateByRedstone);
|
||||
+ }
|
||||
+
|
||||
public boolean turtleRidable = false;
|
||||
public boolean turtleRidableInWater = false;
|
||||
public double turtleMaxHealth = 30.0D;
|
||||
public boolean babiesAreRidable = true;
|
||||
public boolean untamedTamablesAreRidable = true;
|
||||
public boolean useNightVisionWhenRiding = false;
|
||||
|
||||
@@ -29,18 +29,22 @@ index f4eb8ea592e259bca1b961bbbf3f99c9cb058640..c3aa354635d7e784726ec5086e652433
|
||||
event.setCancelled(itemstack == null);
|
||||
this.level.getCraftServer().getPluginManager().callEvent(event);
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 9d35930b8e5f27b0cf65b347dfb829a09965c607..337da14979d8f209d250d98df1247434d6610472 100644
|
||||
index bb4a7534911b9718ec383f464ae2853a8efea2a2..f911e276e94016a4911e5685b3bb382f7e45f894 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -248,6 +248,11 @@ public class PurpurWorldConfig {
|
||||
@@ -208,6 +208,7 @@ public class PurpurWorldConfig {
|
||||
public String playerDeathExpDropEquation = "expLevel * 7";
|
||||
public int playerDeathExpDropMax = 100;
|
||||
public boolean teleportIfOutsideBorder = false;
|
||||
+ public boolean totemOfUndyingWorksInInventory = false;
|
||||
private void playerSettings() {
|
||||
idleTimeoutKick = getBoolean("gameplay-mechanics.player.idle-timeout.kick-if-idle", idleTimeoutKick);
|
||||
idleTimeoutTickNearbyEntities = getBoolean("gameplay-mechanics.player.idle-timeout.tick-nearby-entities", idleTimeoutTickNearbyEntities);
|
||||
@@ -218,6 +219,7 @@ public class PurpurWorldConfig {
|
||||
playerDeathExpDropEquation = getString("gameplay-mechanics.player.exp-dropped-on-death.equation", playerDeathExpDropEquation);
|
||||
playerDeathExpDropMax = getInt("gameplay-mechanics.player.exp-dropped-on-death.maximum", playerDeathExpDropMax);
|
||||
teleportIfOutsideBorder = getBoolean("gameplay-mechanics.player.teleport-if-outside-border", teleportIfOutsideBorder);
|
||||
+ totemOfUndyingWorksInInventory = getBoolean("gameplay-mechanics.player.totem-of-undying-works-in-inventory", totemOfUndyingWorksInInventory);
|
||||
}
|
||||
|
||||
+ public boolean totemOfUndyingWorksInInventory = false;
|
||||
+ private void totemOfUndyingWorksInInventory() {
|
||||
+ totemOfUndyingWorksInInventory = getBoolean("gameplay-mechanics.player.totem-of-undying-works-in-inventory", totemOfUndyingWorksInInventory);
|
||||
+ }
|
||||
+
|
||||
public boolean silkTouchEnabled = false;
|
||||
public String silkTouchSpawnerName = "Spawner";
|
||||
public List<String> silkTouchSpawnerLore = new ArrayList<>();
|
||||
|
||||
@@ -30,10 +30,10 @@ index 76e6ea34db3942e9dd7646ad7ca1259f4387a4d8..9096c40ad5784d9097e889f0f43b6cf1
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 337da14979d8f209d250d98df1247434d6610472..8feb4bab5e11f6240e6224f5e9a1ffbcebf8e0f6 100644
|
||||
index f911e276e94016a4911e5685b3bb382f7e45f894..6697c7b15917c3d7213ccf329b564372239a5228 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -1431,6 +1431,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1419,6 +1419,7 @@ public class PurpurWorldConfig {
|
||||
public boolean vindicatorRidable = false;
|
||||
public boolean vindicatorRidableInWater = false;
|
||||
public double vindicatorMaxHealth = 24.0D;
|
||||
@@ -41,7 +41,7 @@ index 337da14979d8f209d250d98df1247434d6610472..8feb4bab5e11f6240e6224f5e9a1ffbc
|
||||
private void vindicatorSettings() {
|
||||
vindicatorRidable = getBoolean("mobs.vindicator.ridable", vindicatorRidable);
|
||||
vindicatorRidableInWater = getBoolean("mobs.vindicator.ridable-in-water", vindicatorRidableInWater);
|
||||
@@ -1440,6 +1441,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1428,6 +1429,7 @@ public class PurpurWorldConfig {
|
||||
set("mobs.vindicator.attributes.max_health", oldValue);
|
||||
}
|
||||
vindicatorMaxHealth = getDouble("mobs.vindicator.attributes.max_health", vindicatorMaxHealth);
|
||||
|
||||
@@ -41,10 +41,10 @@ index 92623ae25249d63efb92be8bd6c95228f9155ad2..20bf6d01046488eff53a109f5239351a
|
||||
|
||||
static void setEntityPokingOutOfBlock(BlockSource pointer, Entity entity, Direction direction) {
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 8feb4bab5e11f6240e6224f5e9a1ffbcebf8e0f6..b17e156f543f408ae60d59766f2a35af87b8844a 100644
|
||||
index 6697c7b15917c3d7213ccf329b564372239a5228..b67352c0f4d538ba4fc8dc41590fb4f871d46d3b 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -293,8 +293,10 @@ public class PurpurWorldConfig {
|
||||
@@ -281,8 +281,10 @@ public class PurpurWorldConfig {
|
||||
}
|
||||
|
||||
public boolean dispenserApplyCursedArmor = true;
|
||||
|
||||
@@ -37,11 +37,11 @@ index 2db80c986e1dbd4aa9be288cc802f650169dc11a..1d186f9e3c2b10420abf8b3334cbcc42
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index b17e156f543f408ae60d59766f2a35af87b8844a..7f19823c5044ee056ec45c6db94f9cce665ba4c6 100644
|
||||
index b67352c0f4d538ba4fc8dc41590fb4f871d46d3b..f9d66b7aa5d2c13190f438b14bd4bf6626e2c123 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -276,6 +276,11 @@ public class PurpurWorldConfig {
|
||||
});
|
||||
@@ -264,6 +264,11 @@ public class PurpurWorldConfig {
|
||||
voidDamageDealt = getDouble("gameplay-mechanics.void-damage-dealt", voidDamageDealt);
|
||||
}
|
||||
|
||||
+ public boolean anvilAllowColors = false;
|
||||
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Add no-random-tick block list
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
index e98cfb02e6432992259c23d3e81aa8cfef6882b3..34be3abec773b4b2bcd9b3faca33d2c72ef4d895 100644
|
||||
index 14c3e9fcdfb088d3fe0a15266b50a7da82a5d240..0ef7b405ad9174045128fb5445f0bc0e22a3f2e2 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
@@ -318,7 +318,7 @@ public class ServerLevel extends net.minecraft.world.level.Level implements Worl
|
||||
@@ -35,7 +35,7 @@ index a107304351381d68fdaa35a4d7ff214e6c1546a6..6e5dcf3c8a537729a18c085ebb5ab46b
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 7f19823c5044ee056ec45c6db94f9cce665ba4c6..ea0e9c3ff13888899952b4bb8c04d20ebd5de542 100644
|
||||
index f9d66b7aa5d2c13190f438b14bd4bf6626e2c123..7d7644863256cc69077292fd1d2fdc38f9e378f1 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -12,8 +12,10 @@ import org.bukkit.configuration.ConfigurationSection;
|
||||
@@ -49,8 +49,8 @@ index 7f19823c5044ee056ec45c6db94f9cce665ba4c6..ea0e9c3ff13888899952b4bb8c04d20e
|
||||
import java.util.logging.Level;
|
||||
|
||||
import static net.pl3x.purpur.PurpurConfig.log;
|
||||
@@ -243,6 +245,28 @@ public class PurpurWorldConfig {
|
||||
playerInvulnerableWhileAcceptingResourcePack = getBoolean("gameplay-mechanics.player.invulnerable-while-accepting-resource-pack", playerInvulnerableWhileAcceptingResourcePack);
|
||||
@@ -264,6 +266,28 @@ public class PurpurWorldConfig {
|
||||
voidDamageDealt = getDouble("gameplay-mechanics.void-damage-dealt", voidDamageDealt);
|
||||
}
|
||||
|
||||
+ public Set<Block> noRandomTickBlocks = new HashSet<>();
|
||||
@@ -75,6 +75,6 @@ index 7f19823c5044ee056ec45c6db94f9cce665ba4c6..ea0e9c3ff13888899952b4bb8c04d20e
|
||||
+ });
|
||||
+ }
|
||||
+
|
||||
public boolean teleportIfOutsideBorder = false;
|
||||
private void teleportIfOutsideBorder() {
|
||||
teleportIfOutsideBorder = getBoolean("gameplay-mechanics.player.teleport-if-outside-border", teleportIfOutsideBorder);
|
||||
public boolean anvilAllowColors = false;
|
||||
private void anvilSettings() {
|
||||
anvilAllowColors = getBoolean("blocks.anvil.allow-colors", anvilAllowColors);
|
||||
|
||||
@@ -17,10 +17,10 @@ index c372d47a929e06c8cfb0df86cf4e9bfee4d4b300..2aead13e8f879b614445715fb1912a20
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index ea0e9c3ff13888899952b4bb8c04d20ebd5de542..e42de65078ee46de2122200bb662d4366443b4a2 100644
|
||||
index 7d7644863256cc69077292fd1d2fdc38f9e378f1..ad7b6e2df7d0579e95b7f0b82481868e21358ddb 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -539,6 +539,7 @@ public class PurpurWorldConfig {
|
||||
@@ -532,6 +532,7 @@ public class PurpurWorldConfig {
|
||||
public float dolphinSpitSpeed = 1.0F;
|
||||
public float dolphinSpitDamage = 2.0F;
|
||||
public double dolphinMaxHealth = 10.0D;
|
||||
@@ -28,7 +28,7 @@ index ea0e9c3ff13888899952b4bb8c04d20ebd5de542..e42de65078ee46de2122200bb662d436
|
||||
private void dolphinSettings() {
|
||||
dolphinRidable = getBoolean("mobs.dolphin.ridable", dolphinRidable);
|
||||
dolphinSpitCooldown = getInt("mobs.dolphin.spit.cooldown", dolphinSpitCooldown);
|
||||
@@ -550,6 +551,7 @@ public class PurpurWorldConfig {
|
||||
@@ -543,6 +544,7 @@ public class PurpurWorldConfig {
|
||||
set("mobs.dolphin.attributes.max_health", oldValue);
|
||||
}
|
||||
dolphinMaxHealth = getDouble("mobs.dolphin.attributes.max_health", dolphinMaxHealth);
|
||||
|
||||
@@ -60,10 +60,10 @@ index 120498a39b7ca7aee9763084507508d4a1c425aa..0dfc639043998cd3bd32afaaf8153459
|
||||
+ // Purpur
|
||||
}
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index e42de65078ee46de2122200bb662d4366443b4a2..73955b07947852ddd2aa8bad6642cea19dc7f6c5 100644
|
||||
index ad7b6e2df7d0579e95b7f0b82481868e21358ddb..b7987fe0d7a73ed4ab0c47648f5da23f8c15560c 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -1299,6 +1299,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1292,6 +1292,7 @@ public class PurpurWorldConfig {
|
||||
public boolean squidRidable = false;
|
||||
public double squidMaxHealth = 10.0D;
|
||||
public boolean squidImmuneToEAR = true;
|
||||
@@ -71,7 +71,7 @@ index e42de65078ee46de2122200bb662d4366443b4a2..73955b07947852ddd2aa8bad6642cea1
|
||||
private void squidSettings() {
|
||||
squidRidable = getBoolean("mobs.squid.ridable", squidRidable);
|
||||
if (PurpurConfig.version < 10) {
|
||||
@@ -1308,6 +1309,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1301,6 +1302,7 @@ public class PurpurWorldConfig {
|
||||
}
|
||||
squidMaxHealth = getDouble("mobs.squid.attributes.max_health", squidMaxHealth);
|
||||
squidImmuneToEAR = getBoolean("mobs.squid.immune-to-EAR", squidImmuneToEAR);
|
||||
|
||||
@@ -27,10 +27,10 @@ index 3bf97664158760355263f4b3dcd48b9388d44231..70d436a272d03d1f2eb754a83f1ea7e8
|
||||
|
||||
public float getBlockExplosionResistance(Explosion explosion, BlockGetter world, BlockPos pos, BlockState blockState, FluidState fluidState, float max) {
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 73955b07947852ddd2aa8bad6642cea19dc7f6c5..02a249afc39239327c1bd99f40d73d6cc616644a 100644
|
||||
index b7987fe0d7a73ed4ab0c47648f5da23f8c15560c..842bc3d16f13d1a3daf663b2bdfb0135832c95da 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -82,6 +82,7 @@ public class PurpurWorldConfig {
|
||||
@@ -251,6 +251,7 @@ public class PurpurWorldConfig {
|
||||
public boolean boatEjectPlayersOnLand = false;
|
||||
public boolean disableDropsOnCrammingDeath = false;
|
||||
public boolean entitiesPickUpLootBypassMobGriefing = false;
|
||||
@@ -38,7 +38,7 @@ index 73955b07947852ddd2aa8bad6642cea19dc7f6c5..02a249afc39239327c1bd99f40d73d6c
|
||||
public boolean milkCuresBadOmen = true;
|
||||
public double tridentLoyaltyVoidReturnHeight = 0.0D;
|
||||
public double voidDamageHeight = -64.0D;
|
||||
@@ -91,6 +92,7 @@ public class PurpurWorldConfig {
|
||||
@@ -260,6 +261,7 @@ public class PurpurWorldConfig {
|
||||
boatEjectPlayersOnLand = getBoolean("gameplay-mechanics.boat.eject-players-on-land", boatEjectPlayersOnLand);
|
||||
disableDropsOnCrammingDeath = getBoolean("gameplay-mechanics.disable-drops-on-cramming-death", disableDropsOnCrammingDeath);
|
||||
entitiesPickUpLootBypassMobGriefing = getBoolean("gameplay-mechanics.entities-pick-up-loot-bypass-mob-griefing", entitiesPickUpLootBypassMobGriefing);
|
||||
|
||||
@@ -6,22 +6,10 @@ Subject: [PATCH] Customizable wither health and healing
|
||||
Adds the ability to customize the health of the wither, as well as the amount that it heals, and how often.
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/boss/wither/WitherBoss.java b/src/main/java/net/minecraft/world/entity/boss/wither/WitherBoss.java
|
||||
index 96631591db018545120ba1c9980a03eb596eb6e5..b447c1c4d7d3133e953d8f70e6720ddfba4f7553 100644
|
||||
index 96631591db018545120ba1c9980a03eb596eb6e5..9c45c0e232da2597f071081443f9db3df57b5513 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/boss/wither/WitherBoss.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/boss/wither/WitherBoss.java
|
||||
@@ -197,6 +197,11 @@ public class WitherBoss extends Monster implements PowerableMob, RangedAttackMob
|
||||
level.addFreshEntity(skull);
|
||||
}
|
||||
|
||||
+ @Override
|
||||
+ public void initAttributes() {
|
||||
+ this.getAttribute(Attributes.MAX_HEALTH).setBaseValue(level.purpurConfig.witherMaxHealth);
|
||||
+ }
|
||||
+
|
||||
@Override
|
||||
public void initAttributes() {
|
||||
this.getAttribute(Attributes.MAX_HEALTH).setBaseValue(this.level.purpurConfig.witherMaxHealth);
|
||||
@@ -499,8 +504,10 @@ public class WitherBoss extends Monster implements PowerableMob, RangedAttackMob
|
||||
@@ -499,8 +499,10 @@ public class WitherBoss extends Monster implements PowerableMob, RangedAttackMob
|
||||
}
|
||||
}
|
||||
|
||||
@@ -35,10 +23,10 @@ index 96631591db018545120ba1c9980a03eb596eb6e5..b447c1c4d7d3133e953d8f70e6720ddf
|
||||
|
||||
this.bossEvent.setProgress(this.getHealth() / this.getMaxHealth());
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 02a249afc39239327c1bd99f40d73d6cc616644a..a956362ed2b724a50c8f7023799bd3314b287020 100644
|
||||
index 842bc3d16f13d1a3daf663b2bdfb0135832c95da..8d70915300f563affb7d8ab631699c484fb9c8f8 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -1517,6 +1517,8 @@ public class PurpurWorldConfig {
|
||||
@@ -1505,6 +1505,8 @@ public class PurpurWorldConfig {
|
||||
public boolean witherRidableInWater = false;
|
||||
public double witherMaxY = 256D;
|
||||
public double witherMaxHealth = 300.0D;
|
||||
@@ -47,7 +35,7 @@ index 02a249afc39239327c1bd99f40d73d6cc616644a..a956362ed2b724a50c8f7023799bd331
|
||||
private void witherSettings() {
|
||||
witherRidable = getBoolean("mobs.wither.ridable", witherRidable);
|
||||
witherRidableInWater = getBoolean("mobs.wither.ridable-in-water", witherRidableInWater);
|
||||
@@ -1531,6 +1533,8 @@ public class PurpurWorldConfig {
|
||||
@@ -1519,6 +1521,8 @@ public class PurpurWorldConfig {
|
||||
set("mobs.wither.attributes.max_health", oldValue);
|
||||
}
|
||||
witherMaxHealth = getDouble("mobs.wither.attributes.max_health", witherMaxHealth);
|
||||
|
||||
@@ -6,7 +6,7 @@ Subject: [PATCH] Allow toggling special MobSpawners per world
|
||||
In vanilla, these are all hardcoded on for world type 0 (overworld) and hardcoded off for every other world type. Default config behaviour matches this.
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
index 34be3abec773b4b2bcd9b3faca33d2c72ef4d895..dc968864cef387d362b116a9e733859b7460f967 100644
|
||||
index 0ef7b405ad9174045128fb5445f0bc0e22a3f2e2..d10ebe9b094a0e8b62e6607a4fefaf0bcd412413 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
@@ -83,6 +83,7 @@ import net.minecraft.world.entity.MobCategory;
|
||||
@@ -107,7 +107,7 @@ index 1f9129180badb6df786b080edf926d04ef95125c..917a671894e16e024db941cea1845e39
|
||||
this.world = new CraftWorld((ServerLevel) this, gen, env);
|
||||
this.ticksPerAnimalSpawns = this.getCraftServer().getTicksPerAnimalSpawns(); // CraftBukkit
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index a956362ed2b724a50c8f7023799bd3314b287020..bba3f5f0d2802d706b8b8ac17ae194157870bbf6 100644
|
||||
index 8d70915300f563affb7d8ab631699c484fb9c8f8..81b278aa74073b2e01a33635c33cb723de8cc3ad 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -8,6 +8,8 @@ import net.minecraft.world.level.Explosion;
|
||||
@@ -153,8 +153,8 @@ index a956362ed2b724a50c8f7023799bd3314b287020..bba3f5f0d2802d706b8b8ac17ae19415
|
||||
private double getDouble(String path, double def) {
|
||||
PurpurConfig.config.addDefault("world-settings.default." + path, def);
|
||||
return PurpurConfig.config.getDouble("world-settings." + worldName + "." + path, PurpurConfig.config.getDouble("world-settings.default." + path));
|
||||
@@ -99,6 +110,21 @@ public class PurpurWorldConfig {
|
||||
voidDamageDealt = getDouble("gameplay-mechanics.void-damage-dealt", voidDamageDealt);
|
||||
@@ -201,6 +212,21 @@ public class PurpurWorldConfig {
|
||||
}
|
||||
}
|
||||
|
||||
+ public boolean catSpawning;
|
||||
@@ -172,6 +172,6 @@ index a956362ed2b724a50c8f7023799bd3314b287020..bba3f5f0d2802d706b8b8ac17ae19415
|
||||
+ villageSiegeSpawning = getBoolean("gameplay-mechanics.mob-spawning.village-sieges", predicate);
|
||||
+ }
|
||||
+
|
||||
public int elytraDamagePerSecond = 1;
|
||||
public double elytraDamageMultiplyBySpeed = 0;
|
||||
public boolean elytraIgnoreUnbreaking = false;
|
||||
public boolean idleTimeoutKick = true;
|
||||
public boolean idleTimeoutTickNearbyEntities = true;
|
||||
public boolean idleTimeoutCountAsSleeping = false;
|
||||
|
||||
@@ -52,10 +52,10 @@ index 45e369aa69a6b78def42b619b1b1b8259d4b30ea..de7443e7a27e51eabaed2d6d348ec8ea
|
||||
if (!this.raidMap.containsKey(raid.getId())) {
|
||||
this.raidMap.put(raid.getId(), raid);
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index bba3f5f0d2802d706b8b8ac17ae194157870bbf6..3f9602e6820e8a8e17e8e7e292a5b95b20eea697 100644
|
||||
index 81b278aa74073b2e01a33635c33cb723de8cc3ad..e708ac646839854d20f0a88a1c1b81336b0cb850 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -98,6 +98,7 @@ public class PurpurWorldConfig {
|
||||
@@ -282,6 +282,7 @@ public class PurpurWorldConfig {
|
||||
public double tridentLoyaltyVoidReturnHeight = 0.0D;
|
||||
public double voidDamageHeight = -64.0D;
|
||||
public double voidDamageDealt = 4.0D;
|
||||
@@ -63,11 +63,11 @@ index bba3f5f0d2802d706b8b8ac17ae194157870bbf6..3f9602e6820e8a8e17e8e7e292a5b95b
|
||||
private void miscGameplayMechanicsSettings() {
|
||||
useBetterMending = getBoolean("gameplay-mechanics.use-better-mending", useBetterMending);
|
||||
boatEjectPlayersOnLand = getBoolean("gameplay-mechanics.boat.eject-players-on-land", boatEjectPlayersOnLand);
|
||||
@@ -108,6 +109,7 @@ public class PurpurWorldConfig {
|
||||
@@ -292,6 +293,7 @@ public class PurpurWorldConfig {
|
||||
tridentLoyaltyVoidReturnHeight = getDouble("gameplay-mechanics.trident-loyalty-void-return-height", tridentLoyaltyVoidReturnHeight);
|
||||
voidDamageHeight = getDouble("gameplay-mechanics.void-damage-height", voidDamageHeight);
|
||||
voidDamageDealt = getDouble("gameplay-mechanics.void-damage-dealt", voidDamageDealt);
|
||||
+ raidCooldownSeconds = getInt("gameplay-mechanics.raid-cooldown-seconds", raidCooldownSeconds);
|
||||
}
|
||||
|
||||
public boolean catSpawning;
|
||||
public Set<Block> noRandomTickBlocks = new HashSet<>();
|
||||
|
||||
@@ -271,11 +271,11 @@ index 4a11f7417b438ee5711a720aca3321c88e970b2a..46b74271ce5f614f07754db14d2a552c
|
||||
+ // Purpur end
|
||||
}
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 3f9602e6820e8a8e17e8e7e292a5b95b20eea697..2d46a4f3a806764155f2e819e103491abd9a3fdf 100644
|
||||
index e708ac646839854d20f0a88a1c1b81336b0cb850..6b44a1dce76913d2351c4491babef0c9ce59e5bf 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -89,6 +89,35 @@ public class PurpurWorldConfig {
|
||||
armorstandStepHeight = (float) getDouble("gameplay-mechanics.armorstand.step-height", armorstandStepHeight);
|
||||
@@ -250,6 +250,35 @@ public class PurpurWorldConfig {
|
||||
totemOfUndyingWorksInInventory = getBoolean("gameplay-mechanics.player.totem-of-undying-works-in-inventory", totemOfUndyingWorksInInventory);
|
||||
}
|
||||
|
||||
+ public int dragonFireballDespawnRate = -1;
|
||||
@@ -307,6 +307,6 @@ index 3f9602e6820e8a8e17e8e7e292a5b95b20eea697..2d46a4f3a806764155f2e819e103491a
|
||||
+ witherSkullDespawnRate = getInt("gameplay-mechanics.projectile-despawn-rates.wither_skull", witherSkullDespawnRate);
|
||||
+ }
|
||||
+
|
||||
public boolean useBetterMending = false;
|
||||
public boolean boatEjectPlayersOnLand = false;
|
||||
public boolean disableDropsOnCrammingDeath = false;
|
||||
public boolean silkTouchEnabled = false;
|
||||
public String silkTouchSpawnerName = "Spawner";
|
||||
public List<String> silkTouchSpawnerLore = new ArrayList<>();
|
||||
|
||||
@@ -71,10 +71,10 @@ index 77002a4c3b03e0397515fd922f14e56b8e81074a..b80f7c71cbf7b10bda6fac3cfe673ac7
|
||||
this.targetSelector.addGoal(5, new NearestAttackableTargetGoal<>(this, Turtle.class, 10, true, false, Turtle.BABY_ON_LAND_SELECTOR));
|
||||
}
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 2d46a4f3a806764155f2e819e103491abd9a3fdf..a55906d57840a471078a411f706b0f353462b03f 100644
|
||||
index 6b44a1dce76913d2351c4491babef0c9ce59e5bf..eb9c4b2b3c5fdcb85e4e66afc745d62bf9cc2726 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -1645,6 +1645,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1633,6 +1633,7 @@ public class PurpurWorldConfig {
|
||||
public boolean zombieJockeyOnlyBaby = true;
|
||||
public double zombieJockeyChance = 0.05D;
|
||||
public boolean zombieJockeyTryExistingChickens = true;
|
||||
@@ -82,7 +82,7 @@ index 2d46a4f3a806764155f2e819e103491abd9a3fdf..a55906d57840a471078a411f706b0f35
|
||||
private void zombieSettings() {
|
||||
zombieRidable = getBoolean("mobs.zombie.ridable", zombieRidable);
|
||||
zombieRidableInWater = getBoolean("mobs.zombie.ridable-in-water", zombieRidableInWater);
|
||||
@@ -1658,6 +1659,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1646,6 +1647,7 @@ public class PurpurWorldConfig {
|
||||
zombieJockeyOnlyBaby = getBoolean("mobs.zombie.jockey.only-babies", zombieJockeyOnlyBaby);
|
||||
zombieJockeyChance = getDouble("mobs.zombie.jockey.chance", zombieJockeyChance);
|
||||
zombieJockeyTryExistingChickens = getBoolean("mobs.zombie.jockey.try-existing-chickens", zombieJockeyTryExistingChickens);
|
||||
|
||||
@@ -189,10 +189,10 @@ index c3a07ccccd5cc38552363c82398f432c8d624288..132c9e6a643995d9fde535a78d9edc9e
|
||||
+ // Purpur end
|
||||
}
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index a55906d57840a471078a411f706b0f353462b03f..1615b807510cf5150526362195cbadaba3289afa 100644
|
||||
index eb9c4b2b3c5fdcb85e4e66afc745d62bf9cc2726..ab5d9375d20c38e0eb73a030524d59f78b58e3e5 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -124,6 +124,7 @@ public class PurpurWorldConfig {
|
||||
@@ -308,6 +308,7 @@ public class PurpurWorldConfig {
|
||||
public boolean entitiesPickUpLootBypassMobGriefing = false;
|
||||
public boolean entitiesCanUsePortals = true;
|
||||
public boolean milkCuresBadOmen = true;
|
||||
@@ -200,7 +200,7 @@ index a55906d57840a471078a411f706b0f353462b03f..1615b807510cf5150526362195cbadab
|
||||
public double tridentLoyaltyVoidReturnHeight = 0.0D;
|
||||
public double voidDamageHeight = -64.0D;
|
||||
public double voidDamageDealt = 4.0D;
|
||||
@@ -135,6 +136,7 @@ public class PurpurWorldConfig {
|
||||
@@ -319,6 +320,7 @@ public class PurpurWorldConfig {
|
||||
entitiesPickUpLootBypassMobGriefing = getBoolean("gameplay-mechanics.entities-pick-up-loot-bypass-mob-griefing", entitiesPickUpLootBypassMobGriefing);
|
||||
entitiesCanUsePortals = getBoolean("gameplay-mechanics.entities-can-use-portals", entitiesCanUsePortals);
|
||||
milkCuresBadOmen = getBoolean("gameplay-mechanics.milk-cures-bad-omen", milkCuresBadOmen);
|
||||
|
||||
@@ -38,10 +38,10 @@ index 2affff346a7fe81480e86cb61996039df0569853..be9b800d81b4d5faed7a3fb95d605bfd
|
||||
float f1 = Mth.cos(f) * 0.2F;
|
||||
float f2 = -0.1F + this.squid.getRandom().nextFloat() * 0.2F;
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 1615b807510cf5150526362195cbadaba3289afa..03347dbf377458220d8ccc24b0993919562d352a 100644
|
||||
index ab5d9375d20c38e0eb73a030524d59f78b58e3e5..78391c281e649fbf4b8c13544536755edc09dd68 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -1361,6 +1361,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1354,6 +1354,7 @@ public class PurpurWorldConfig {
|
||||
public double squidMaxHealth = 10.0D;
|
||||
public boolean squidImmuneToEAR = true;
|
||||
public double squidOffsetWaterCheck = 0.0D;
|
||||
@@ -49,7 +49,7 @@ index 1615b807510cf5150526362195cbadaba3289afa..03347dbf377458220d8ccc24b0993919
|
||||
private void squidSettings() {
|
||||
squidRidable = getBoolean("mobs.squid.ridable", squidRidable);
|
||||
if (PurpurConfig.version < 10) {
|
||||
@@ -1371,6 +1372,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1364,6 +1365,7 @@ public class PurpurWorldConfig {
|
||||
squidMaxHealth = getDouble("mobs.squid.attributes.max_health", squidMaxHealth);
|
||||
squidImmuneToEAR = getBoolean("mobs.squid.immune-to-EAR", squidImmuneToEAR);
|
||||
squidOffsetWaterCheck = getDouble("mobs.squid.water-offset-check", squidOffsetWaterCheck);
|
||||
|
||||
@@ -18,11 +18,11 @@ index afe33f20578177cb517e1c116e6319481642e66c..93c58f7ef7f00c7f843444ad6d00bd85
|
||||
if (!world.isClientSide) {
|
||||
ArrowItem itemarrow = (ArrowItem) (itemstack1.getItem() instanceof ArrowItem ? itemstack1.getItem() : Items.ARROW);
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 03347dbf377458220d8ccc24b0993919562d352a..7c2a081585b37346fa9ace6290352e5b58f1261c 100644
|
||||
index 78391c281e649fbf4b8c13544536755edc09dd68..7f4860ee1b0b95096e71b51059a29b9fbe541e2c 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -299,6 +299,15 @@ public class PurpurWorldConfig {
|
||||
idleTimeoutUpdateTabList = getBoolean("gameplay-mechanics.player.idle-timeout.update-tab-list", idleTimeoutUpdateTabList);
|
||||
@@ -107,6 +107,15 @@ public class PurpurWorldConfig {
|
||||
entityLifeSpan = getInt("gameplay-mechanics.entity-lifespan", entityLifeSpan);
|
||||
}
|
||||
|
||||
+ public boolean infinityWorksWithNormalArrows = true;
|
||||
@@ -34,6 +34,6 @@ index 03347dbf377458220d8ccc24b0993919562d352a..7c2a081585b37346fa9ace6290352e5b
|
||||
+ infinityWorksWithTippedArrows = getBoolean("gameplay-mechanics.infinity-bow.tipped-arrows", infinityWorksWithTippedArrows);
|
||||
+ }
|
||||
+
|
||||
public int playerSpawnInvulnerableTicks = 60;
|
||||
public boolean playerInvulnerableWhileAcceptingResourcePack = false;
|
||||
private void playerInvulnerabilities() {
|
||||
public List<Item> itemImmuneToCactus = new ArrayList<>();
|
||||
public List<Item> itemImmuneToExplosion = new ArrayList<>();
|
||||
public List<Item> itemImmuneToFire = new ArrayList<>();
|
||||
|
||||
@@ -61,10 +61,10 @@ index 2ad5ff9a1d7de54e75436e99da8a73db9dc91bde..60605a8a021cc56f9c3ba22bc43c43c3
|
||||
} else if (blockState.is(Blocks.HONEY_BLOCK)) {
|
||||
return BlockPathTypes.STICKY_HONEY;
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 7c2a081585b37346fa9ace6290352e5b58f1261c..192896f331967b057c56bd3deeca1c4f740f7dff 100644
|
||||
index 7f4860ee1b0b95096e71b51059a29b9fbe541e2c..e3156b6ed40620d146fe28d7e60650fa7ab67bb0 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -1469,6 +1469,11 @@ public class PurpurWorldConfig {
|
||||
@@ -430,6 +430,11 @@ public class PurpurWorldConfig {
|
||||
spawnerDeactivateByRedstone = getBoolean("blocks.spawner.deactivate-by-redstone", spawnerDeactivateByRedstone);
|
||||
}
|
||||
|
||||
@@ -73,6 +73,6 @@ index 7c2a081585b37346fa9ace6290352e5b58f1261c..192896f331967b057c56bd3deeca1c4f
|
||||
+ stonecutterDamage = (float) getDouble("blocks.stonecutter.damage", stonecutterDamage);
|
||||
+ }
|
||||
+
|
||||
public boolean turtleRidable = false;
|
||||
public boolean turtleRidableInWater = false;
|
||||
public double turtleMaxHealth = 30.0D;
|
||||
public boolean babiesAreRidable = true;
|
||||
public boolean untamedTamablesAreRidable = true;
|
||||
public boolean useNightVisionWhenRiding = false;
|
||||
|
||||
@@ -18,7 +18,7 @@ index 689ad22925b2561f7c8db961743eb1f821dbb25f..fa3c960992cc240161817e54659d83fe
|
||||
public ClientboundSetTimePacket(long time, long timeOfDay, boolean doDaylightCycle) {
|
||||
this.gameTime = time % 192000; // Paper - fix guardian beam
|
||||
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
index dc968864cef387d362b116a9e733859b7460f967..52f5429b8ba95968da28226d75ba47618e1b99f4 100644
|
||||
index d10ebe9b094a0e8b62e6607a4fefaf0bcd412413..97697f2ee49ef1f3b0bfb291b1df99f5681992af 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||
@@ -55,6 +55,7 @@ import net.minecraft.network.protocol.game.ClientboundExplodePacket;
|
||||
@@ -80,11 +80,11 @@ index dc968864cef387d362b116a9e733859b7460f967..52f5429b8ba95968da28226d75ba4761
|
||||
|
||||
public void tickCustomSpawners(boolean spawnMonsters, boolean spawnAnimals) {
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 192896f331967b057c56bd3deeca1c4f740f7dff..d1472eb116e82bbb7c0c6aec814371a9935d40b3 100644
|
||||
index e3156b6ed40620d146fe28d7e60650fa7ab67bb0..0dd7436691d5d009c360bbdb1645cd4f30bdeecf 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -171,6 +171,13 @@ public class PurpurWorldConfig {
|
||||
elytraDamagePerTridentBoost = getInt("gameplay-mechanics.elytra.damage-per-boost.trident", elytraDamagePerTridentBoost);
|
||||
@@ -89,6 +89,13 @@ public class PurpurWorldConfig {
|
||||
armorstandStepHeight = (float) getDouble("gameplay-mechanics.armorstand.step-height", armorstandStepHeight);
|
||||
}
|
||||
|
||||
+ public int daytimeTicks = 12000;
|
||||
@@ -94,6 +94,6 @@ index 192896f331967b057c56bd3deeca1c4f740f7dff..d1472eb116e82bbb7c0c6aec814371a9
|
||||
+ nighttimeTicks = getInt("gameplay-mechanics.daylight-cycle-ticks.nighttime", nighttimeTicks);
|
||||
+ }
|
||||
+
|
||||
public int entityLifeSpan = 0;
|
||||
private void entitySettings() {
|
||||
entityLifeSpan = getInt("gameplay-mechanics.entity-lifespan", entityLifeSpan);
|
||||
public int elytraDamagePerSecond = 1;
|
||||
public double elytraDamageMultiplyBySpeed = 0;
|
||||
public boolean elytraIgnoreUnbreaking = false;
|
||||
|
||||
@@ -48,10 +48,10 @@ index c559ec5041474e585e4d95a664c84e1fa895cf16..806277d029a1c1a2d334a05d94163415
|
||||
|
||||
private static boolean canBurn(@Nullable Recipe<?> recipe, NonNullList<ItemStack> slots, int count) {
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index d1472eb116e82bbb7c0c6aec814371a9935d40b3..994928c1bc24f836f957563780cbb2c1b415ba44 100644
|
||||
index 0dd7436691d5d009c360bbdb1645cd4f30bdeecf..42a9dbddefef715c5c21003a76fdfc33621d1f89 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -410,6 +410,11 @@ public class PurpurWorldConfig {
|
||||
@@ -398,6 +398,11 @@ public class PurpurWorldConfig {
|
||||
farmlandGetsMoistFromBelow = getBoolean("blocks.farmland.gets-moist-from-below", farmlandGetsMoistFromBelow);
|
||||
}
|
||||
|
||||
|
||||
@@ -24,10 +24,10 @@ index 97e5cb4fd9f97c0bfa9d66c0ceac84e134f1053f..e92f6ffcda47aad76ad647bc2ad3d186
|
||||
return;
|
||||
}
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 994928c1bc24f836f957563780cbb2c1b415ba44..0fad44563547eb3643019a42d1d38a371df0613d 100644
|
||||
index 42a9dbddefef715c5c21003a76fdfc33621d1f89..54bab3e1bcffadf9674d50169c44c9ffa04b8685 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -406,8 +406,10 @@ public class PurpurWorldConfig {
|
||||
@@ -394,8 +394,10 @@ public class PurpurWorldConfig {
|
||||
}
|
||||
|
||||
public boolean farmlandGetsMoistFromBelow = false;
|
||||
|
||||
@@ -95,10 +95,10 @@ index 917a671894e16e024db941cea1845e39eaf93ef8..b17f250eec710c91a1d5995136d7dec2
|
||||
this.world = new CraftWorld((ServerLevel) this, gen, env);
|
||||
this.ticksPerAnimalSpawns = this.getCraftServer().getTicksPerAnimalSpawns(); // CraftBukkit
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 0fad44563547eb3643019a42d1d38a371df0613d..788884481c4df2e25843245b484682371e5267fe 100644
|
||||
index 54bab3e1bcffadf9674d50169c44c9ffa04b8685..a312da168c16d8fd2f28b43d7edb2a8002f8ac64 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -129,6 +129,7 @@ public class PurpurWorldConfig {
|
||||
@@ -329,6 +329,7 @@ public class PurpurWorldConfig {
|
||||
public double voidDamageHeight = -64.0D;
|
||||
public double voidDamageDealt = 4.0D;
|
||||
public int raidCooldownSeconds = 0;
|
||||
@@ -106,14 +106,14 @@ index 0fad44563547eb3643019a42d1d38a371df0613d..788884481c4df2e25843245b48468237
|
||||
private void miscGameplayMechanicsSettings() {
|
||||
useBetterMending = getBoolean("gameplay-mechanics.use-better-mending", useBetterMending);
|
||||
boatEjectPlayersOnLand = getBoolean("gameplay-mechanics.boat.eject-players-on-land", boatEjectPlayersOnLand);
|
||||
@@ -141,6 +142,7 @@ public class PurpurWorldConfig {
|
||||
@@ -341,6 +342,7 @@ public class PurpurWorldConfig {
|
||||
voidDamageHeight = getDouble("gameplay-mechanics.void-damage-height", voidDamageHeight);
|
||||
voidDamageDealt = getDouble("gameplay-mechanics.void-damage-dealt", voidDamageDealt);
|
||||
raidCooldownSeconds = getInt("gameplay-mechanics.raid-cooldown-seconds", raidCooldownSeconds);
|
||||
+ animalBreedingCooldownSeconds = getInt("gameplay-mechanics.animal-breeding-cooldown-seconds", animalBreedingCooldownSeconds);
|
||||
}
|
||||
|
||||
public boolean catSpawning;
|
||||
public Set<Block> noRandomTickBlocks = new HashSet<>();
|
||||
diff --git a/src/main/java/net/pl3x/purpur/command/PurpurCommand.java b/src/main/java/net/pl3x/purpur/command/PurpurCommand.java
|
||||
index 6e7f56fe2b78d7a09d5d130f2c88338fb8ae628e..cd63e9e556fa4931ab33c63931cf916757c51a62 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/command/PurpurCommand.java
|
||||
|
||||
@@ -474,10 +474,10 @@ index 5d289be8f0ef003abbce992e7662f6ddce4f4a99..5e3d7321a73144c3e4c43c18c5b748b2
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 788884481c4df2e25843245b484682371e5267fe..ff2be552313fe5543228838245dcfa24cdcad342 100644
|
||||
index a312da168c16d8fd2f28b43d7edb2a8002f8ac64..fd773f696d5f3940a16debd545bf9fee0ea9288d 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -464,9 +464,11 @@ public class PurpurWorldConfig {
|
||||
@@ -462,9 +462,11 @@ public class PurpurWorldConfig {
|
||||
|
||||
public boolean axolotlRidable = false;
|
||||
public double axolotlMaxHealth = 14.0D;
|
||||
@@ -489,7 +489,7 @@ index 788884481c4df2e25843245b484682371e5267fe..ff2be552313fe5543228838245dcfa24
|
||||
}
|
||||
|
||||
public boolean batRidable = false;
|
||||
@@ -496,6 +498,7 @@ public class PurpurWorldConfig {
|
||||
@@ -494,6 +496,7 @@ public class PurpurWorldConfig {
|
||||
public boolean beeRidableInWater = false;
|
||||
public double beeMaxY = 256D;
|
||||
public double beeMaxHealth = 10.0D;
|
||||
@@ -497,7 +497,7 @@ index 788884481c4df2e25843245b484682371e5267fe..ff2be552313fe5543228838245dcfa24
|
||||
private void beeSettings() {
|
||||
beeRidable = getBoolean("mobs.bee.ridable", beeRidable);
|
||||
beeRidableInWater = getBoolean("mobs.bee.ridable-in-water", beeRidableInWater);
|
||||
@@ -506,6 +509,7 @@ public class PurpurWorldConfig {
|
||||
@@ -504,6 +507,7 @@ public class PurpurWorldConfig {
|
||||
set("mobs.bee.attributes.max_health", oldValue);
|
||||
}
|
||||
beeMaxHealth = getDouble("mobs.bee.attributes.max_health", beeMaxHealth);
|
||||
@@ -505,7 +505,7 @@ index 788884481c4df2e25843245b484682371e5267fe..ff2be552313fe5543228838245dcfa24
|
||||
}
|
||||
|
||||
public boolean blazeRidable = false;
|
||||
@@ -530,6 +534,7 @@ public class PurpurWorldConfig {
|
||||
@@ -528,6 +532,7 @@ public class PurpurWorldConfig {
|
||||
public int catSpawnDelay = 1200;
|
||||
public int catSpawnSwampHutScanRange = 16;
|
||||
public int catSpawnVillageScanRange = 48;
|
||||
@@ -513,7 +513,7 @@ index 788884481c4df2e25843245b484682371e5267fe..ff2be552313fe5543228838245dcfa24
|
||||
private void catSettings() {
|
||||
catRidable = getBoolean("mobs.cat.ridable", catRidable);
|
||||
catRidableInWater = getBoolean("mobs.cat.ridable-in-water", catRidableInWater);
|
||||
@@ -542,6 +547,7 @@ public class PurpurWorldConfig {
|
||||
@@ -540,6 +545,7 @@ public class PurpurWorldConfig {
|
||||
catSpawnDelay = getInt("mobs.cat.spawn-delay", catSpawnDelay);
|
||||
catSpawnSwampHutScanRange = getInt("mobs.cat.scan-range-for-other-cats.swamp-hut", catSpawnSwampHutScanRange);
|
||||
catSpawnVillageScanRange = getInt("mobs.cat.scan-range-for-other-cats.village", catSpawnVillageScanRange);
|
||||
@@ -521,7 +521,7 @@ index 788884481c4df2e25843245b484682371e5267fe..ff2be552313fe5543228838245dcfa24
|
||||
}
|
||||
|
||||
public boolean caveSpiderRidable = false;
|
||||
@@ -562,6 +568,7 @@ public class PurpurWorldConfig {
|
||||
@@ -560,6 +566,7 @@ public class PurpurWorldConfig {
|
||||
public boolean chickenRidableInWater = false;
|
||||
public double chickenMaxHealth = 4.0D;
|
||||
public boolean chickenRetaliate = false;
|
||||
@@ -529,7 +529,7 @@ index 788884481c4df2e25843245b484682371e5267fe..ff2be552313fe5543228838245dcfa24
|
||||
private void chickenSettings() {
|
||||
chickenRidable = getBoolean("mobs.chicken.ridable", chickenRidable);
|
||||
chickenRidableInWater = getBoolean("mobs.chicken.ridable-in-water", chickenRidableInWater);
|
||||
@@ -572,6 +579,7 @@ public class PurpurWorldConfig {
|
||||
@@ -570,6 +577,7 @@ public class PurpurWorldConfig {
|
||||
}
|
||||
chickenMaxHealth = getDouble("mobs.chicken.attributes.max_health", chickenMaxHealth);
|
||||
chickenRetaliate = getBoolean("mobs.chicken.retaliate", chickenRetaliate);
|
||||
@@ -537,7 +537,7 @@ index 788884481c4df2e25843245b484682371e5267fe..ff2be552313fe5543228838245dcfa24
|
||||
}
|
||||
|
||||
public boolean codRidable = false;
|
||||
@@ -590,6 +598,7 @@ public class PurpurWorldConfig {
|
||||
@@ -588,6 +596,7 @@ public class PurpurWorldConfig {
|
||||
public boolean cowRidableInWater = false;
|
||||
public double cowMaxHealth = 10.0D;
|
||||
public int cowFeedMushrooms = 0;
|
||||
@@ -545,7 +545,7 @@ index 788884481c4df2e25843245b484682371e5267fe..ff2be552313fe5543228838245dcfa24
|
||||
private void cowSettings() {
|
||||
cowRidable = getBoolean("mobs.cow.ridable", cowRidable);
|
||||
cowRidableInWater = getBoolean("mobs.cow.ridable-in-water", cowRidableInWater);
|
||||
@@ -600,6 +609,7 @@ public class PurpurWorldConfig {
|
||||
@@ -598,6 +607,7 @@ public class PurpurWorldConfig {
|
||||
}
|
||||
cowMaxHealth = getDouble("mobs.cow.attributes.max_health", cowMaxHealth);
|
||||
cowFeedMushrooms = getInt("mobs.cow.feed-mushrooms-for-mooshroom", cowFeedMushrooms);
|
||||
@@ -553,7 +553,7 @@ index 788884481c4df2e25843245b484682371e5267fe..ff2be552313fe5543228838245dcfa24
|
||||
}
|
||||
|
||||
public boolean creeperRidable = false;
|
||||
@@ -647,6 +657,7 @@ public class PurpurWorldConfig {
|
||||
@@ -645,6 +655,7 @@ public class PurpurWorldConfig {
|
||||
public double donkeyJumpStrengthMax = 0.5D;
|
||||
public double donkeyMovementSpeedMin = 0.175D;
|
||||
public double donkeyMovementSpeedMax = 0.175D;
|
||||
@@ -561,7 +561,7 @@ index 788884481c4df2e25843245b484682371e5267fe..ff2be552313fe5543228838245dcfa24
|
||||
private void donkeySettings() {
|
||||
donkeyRidableInWater = getBoolean("mobs.donkey.ridable-in-water", donkeyRidableInWater);
|
||||
if (PurpurConfig.version < 10) {
|
||||
@@ -662,6 +673,7 @@ public class PurpurWorldConfig {
|
||||
@@ -660,6 +671,7 @@ public class PurpurWorldConfig {
|
||||
donkeyJumpStrengthMax = getDouble("mobs.donkey.attributes.jump_strength.max", donkeyJumpStrengthMax);
|
||||
donkeyMovementSpeedMin = getDouble("mobs.donkey.attributes.movement_speed.min", donkeyMovementSpeedMin);
|
||||
donkeyMovementSpeedMax = getDouble("mobs.donkey.attributes.movement_speed.max", donkeyMovementSpeedMax);
|
||||
@@ -569,7 +569,7 @@ index 788884481c4df2e25843245b484682371e5267fe..ff2be552313fe5543228838245dcfa24
|
||||
}
|
||||
|
||||
public boolean drownedRidable = false;
|
||||
@@ -768,6 +780,7 @@ public class PurpurWorldConfig {
|
||||
@@ -766,6 +778,7 @@ public class PurpurWorldConfig {
|
||||
public boolean foxRidableInWater = false;
|
||||
public double foxMaxHealth = 10.0D;
|
||||
public boolean foxTypeChangesWithTulips = false;
|
||||
@@ -577,7 +577,7 @@ index 788884481c4df2e25843245b484682371e5267fe..ff2be552313fe5543228838245dcfa24
|
||||
private void foxSettings() {
|
||||
foxRidable = getBoolean("mobs.fox.ridable", foxRidable);
|
||||
foxRidableInWater = getBoolean("mobs.fox.ridable-in-water", foxRidableInWater);
|
||||
@@ -778,6 +791,7 @@ public class PurpurWorldConfig {
|
||||
@@ -776,6 +789,7 @@ public class PurpurWorldConfig {
|
||||
}
|
||||
foxMaxHealth = getDouble("mobs.fox.attributes.max_health", foxMaxHealth);
|
||||
foxTypeChangesWithTulips = getBoolean("mobs.fox.tulips-change-type", foxTypeChangesWithTulips);
|
||||
@@ -585,7 +585,7 @@ index 788884481c4df2e25843245b484682371e5267fe..ff2be552313fe5543228838245dcfa24
|
||||
}
|
||||
|
||||
public boolean ghastRidable = false;
|
||||
@@ -836,10 +850,12 @@ public class PurpurWorldConfig {
|
||||
@@ -834,10 +848,12 @@ public class PurpurWorldConfig {
|
||||
public boolean goatRidable = false;
|
||||
public boolean goatRidableInWater = false;
|
||||
public double goatMaxHealth = 10.0D;
|
||||
@@ -598,7 +598,7 @@ index 788884481c4df2e25843245b484682371e5267fe..ff2be552313fe5543228838245dcfa24
|
||||
}
|
||||
|
||||
public boolean guardianRidable = false;
|
||||
@@ -857,6 +873,7 @@ public class PurpurWorldConfig {
|
||||
@@ -855,6 +871,7 @@ public class PurpurWorldConfig {
|
||||
public boolean hoglinRidable = false;
|
||||
public boolean hoglinRidableInWater = false;
|
||||
public double hoglinMaxHealth = 40.0D;
|
||||
@@ -606,7 +606,7 @@ index 788884481c4df2e25843245b484682371e5267fe..ff2be552313fe5543228838245dcfa24
|
||||
private void hoglinSettings() {
|
||||
hoglinRidable = getBoolean("mobs.hoglin.ridable", hoglinRidable);
|
||||
hoglinRidableInWater = getBoolean("mobs.hoglin.ridable-in-water", hoglinRidableInWater);
|
||||
@@ -866,6 +883,7 @@ public class PurpurWorldConfig {
|
||||
@@ -864,6 +881,7 @@ public class PurpurWorldConfig {
|
||||
set("mobs.hoglin.attributes.max_health", oldValue);
|
||||
}
|
||||
hoglinMaxHealth = getDouble("mobs.hoglin.attributes.max_health", hoglinMaxHealth);
|
||||
@@ -614,7 +614,7 @@ index 788884481c4df2e25843245b484682371e5267fe..ff2be552313fe5543228838245dcfa24
|
||||
}
|
||||
|
||||
public boolean horseRidableInWater = false;
|
||||
@@ -875,6 +893,7 @@ public class PurpurWorldConfig {
|
||||
@@ -873,6 +891,7 @@ public class PurpurWorldConfig {
|
||||
public double horseJumpStrengthMax = 1.0D;
|
||||
public double horseMovementSpeedMin = 0.1125D;
|
||||
public double horseMovementSpeedMax = 0.3375D;
|
||||
@@ -622,7 +622,7 @@ index 788884481c4df2e25843245b484682371e5267fe..ff2be552313fe5543228838245dcfa24
|
||||
private void horseSettings() {
|
||||
horseRidableInWater = getBoolean("mobs.horse.ridable-in-water", horseRidableInWater);
|
||||
if (PurpurConfig.version < 10) {
|
||||
@@ -890,6 +909,7 @@ public class PurpurWorldConfig {
|
||||
@@ -888,6 +907,7 @@ public class PurpurWorldConfig {
|
||||
horseJumpStrengthMax = getDouble("mobs.horse.attributes.jump_strength.max", horseJumpStrengthMax);
|
||||
horseMovementSpeedMin = getDouble("mobs.horse.attributes.movement_speed.min", horseMovementSpeedMin);
|
||||
horseMovementSpeedMax = getDouble("mobs.horse.attributes.movement_speed.max", horseMovementSpeedMax);
|
||||
@@ -630,7 +630,7 @@ index 788884481c4df2e25843245b484682371e5267fe..ff2be552313fe5543228838245dcfa24
|
||||
}
|
||||
|
||||
public boolean huskRidable = false;
|
||||
@@ -960,6 +980,7 @@ public class PurpurWorldConfig {
|
||||
@@ -958,6 +978,7 @@ public class PurpurWorldConfig {
|
||||
public double llamaJumpStrengthMax = 0.5D;
|
||||
public double llamaMovementSpeedMin = 0.175D;
|
||||
public double llamaMovementSpeedMax = 0.175D;
|
||||
@@ -638,7 +638,7 @@ index 788884481c4df2e25843245b484682371e5267fe..ff2be552313fe5543228838245dcfa24
|
||||
private void llamaSettings() {
|
||||
llamaRidable = getBoolean("mobs.llama.ridable", llamaRidable);
|
||||
llamaRidableInWater = getBoolean("mobs.llama.ridable-in-water", llamaRidableInWater);
|
||||
@@ -976,6 +997,7 @@ public class PurpurWorldConfig {
|
||||
@@ -974,6 +995,7 @@ public class PurpurWorldConfig {
|
||||
llamaJumpStrengthMax = getDouble("mobs.llama.attributes.jump_strength.max", llamaJumpStrengthMax);
|
||||
llamaMovementSpeedMin = getDouble("mobs.llama.attributes.movement_speed.min", llamaMovementSpeedMin);
|
||||
llamaMovementSpeedMax = getDouble("mobs.llama.attributes.movement_speed.max", llamaMovementSpeedMax);
|
||||
@@ -646,7 +646,7 @@ index 788884481c4df2e25843245b484682371e5267fe..ff2be552313fe5543228838245dcfa24
|
||||
}
|
||||
|
||||
public boolean magmaCubeRidable = false;
|
||||
@@ -995,6 +1017,7 @@ public class PurpurWorldConfig {
|
||||
@@ -993,6 +1015,7 @@ public class PurpurWorldConfig {
|
||||
public boolean mooshroomRidable = false;
|
||||
public boolean mooshroomRidableInWater = false;
|
||||
public double mooshroomMaxHealth = 10.0D;
|
||||
@@ -654,7 +654,7 @@ index 788884481c4df2e25843245b484682371e5267fe..ff2be552313fe5543228838245dcfa24
|
||||
private void mooshroomSettings() {
|
||||
mooshroomRidable = getBoolean("mobs.mooshroom.ridable", mooshroomRidable);
|
||||
mooshroomRidableInWater = getBoolean("mobs.mooshroom.ridable-in-water", mooshroomRidableInWater);
|
||||
@@ -1004,6 +1027,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1002,6 +1025,7 @@ public class PurpurWorldConfig {
|
||||
set("mobs.mooshroom.attributes.max_health", oldValue);
|
||||
}
|
||||
mooshroomMaxHealth = getDouble("mobs.mooshroom.attributes.max_health", mooshroomMaxHealth);
|
||||
@@ -662,7 +662,7 @@ index 788884481c4df2e25843245b484682371e5267fe..ff2be552313fe5543228838245dcfa24
|
||||
}
|
||||
|
||||
public boolean muleRidableInWater = false;
|
||||
@@ -1013,6 +1037,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1011,6 +1035,7 @@ public class PurpurWorldConfig {
|
||||
public double muleJumpStrengthMax = 0.5D;
|
||||
public double muleMovementSpeedMin = 0.175D;
|
||||
public double muleMovementSpeedMax = 0.175D;
|
||||
@@ -670,7 +670,7 @@ index 788884481c4df2e25843245b484682371e5267fe..ff2be552313fe5543228838245dcfa24
|
||||
private void muleSettings() {
|
||||
muleRidableInWater = getBoolean("mobs.mule.ridable-in-water", muleRidableInWater);
|
||||
if (PurpurConfig.version < 10) {
|
||||
@@ -1028,11 +1053,13 @@ public class PurpurWorldConfig {
|
||||
@@ -1026,11 +1051,13 @@ public class PurpurWorldConfig {
|
||||
muleJumpStrengthMax = getDouble("mobs.mule.attributes.jump_strength.max", muleJumpStrengthMax);
|
||||
muleMovementSpeedMin = getDouble("mobs.mule.attributes.movement_speed.min", muleMovementSpeedMin);
|
||||
muleMovementSpeedMax = getDouble("mobs.mule.attributes.movement_speed.max", muleMovementSpeedMax);
|
||||
@@ -684,7 +684,7 @@ index 788884481c4df2e25843245b484682371e5267fe..ff2be552313fe5543228838245dcfa24
|
||||
private void ocelotSettings() {
|
||||
ocelotRidable = getBoolean("mobs.ocelot.ridable", ocelotRidable);
|
||||
ocelotRidableInWater = getBoolean("mobs.ocelot.ridable-in-water", ocelotRidableInWater);
|
||||
@@ -1042,11 +1069,13 @@ public class PurpurWorldConfig {
|
||||
@@ -1040,11 +1067,13 @@ public class PurpurWorldConfig {
|
||||
set("mobs.ocelot.attributes.max_health", oldValue);
|
||||
}
|
||||
ocelotMaxHealth = getDouble("mobs.ocelot.attributes.max_health", ocelotMaxHealth);
|
||||
@@ -698,7 +698,7 @@ index 788884481c4df2e25843245b484682371e5267fe..ff2be552313fe5543228838245dcfa24
|
||||
private void pandaSettings() {
|
||||
pandaRidable = getBoolean("mobs.panda.ridable", pandaRidable);
|
||||
pandaRidableInWater = getBoolean("mobs.panda.ridable-in-water", pandaRidableInWater);
|
||||
@@ -1056,6 +1085,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1054,6 +1083,7 @@ public class PurpurWorldConfig {
|
||||
set("mobs.panda.attributes.max_health", oldValue);
|
||||
}
|
||||
pandaMaxHealth = getDouble("mobs.panda.attributes.max_health", pandaMaxHealth);
|
||||
@@ -706,7 +706,7 @@ index 788884481c4df2e25843245b484682371e5267fe..ff2be552313fe5543228838245dcfa24
|
||||
}
|
||||
|
||||
public boolean parrotRidable = false;
|
||||
@@ -1136,6 +1166,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1134,6 +1164,7 @@ public class PurpurWorldConfig {
|
||||
public boolean pigRidableInWater = false;
|
||||
public double pigMaxHealth = 10.0D;
|
||||
public boolean pigGiveSaddleBack = false;
|
||||
@@ -714,7 +714,7 @@ index 788884481c4df2e25843245b484682371e5267fe..ff2be552313fe5543228838245dcfa24
|
||||
private void pigSettings() {
|
||||
pigRidable = getBoolean("mobs.pig.ridable", pigRidable);
|
||||
pigRidableInWater = getBoolean("mobs.pig.ridable-in-water", pigRidableInWater);
|
||||
@@ -1146,6 +1177,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1144,6 +1175,7 @@ public class PurpurWorldConfig {
|
||||
}
|
||||
pigMaxHealth = getDouble("mobs.pig.attributes.max_health", pigMaxHealth);
|
||||
pigGiveSaddleBack = getBoolean("mobs.pig.give-saddle-back", pigGiveSaddleBack);
|
||||
@@ -722,7 +722,7 @@ index 788884481c4df2e25843245b484682371e5267fe..ff2be552313fe5543228838245dcfa24
|
||||
}
|
||||
|
||||
public boolean piglinRidable = false;
|
||||
@@ -1195,6 +1227,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1193,6 +1225,7 @@ public class PurpurWorldConfig {
|
||||
public double polarBearMaxHealth = 30.0D;
|
||||
public String polarBearBreedableItemString = "";
|
||||
public Item polarBearBreedableItem = null;
|
||||
@@ -730,7 +730,7 @@ index 788884481c4df2e25843245b484682371e5267fe..ff2be552313fe5543228838245dcfa24
|
||||
private void polarBearSettings() {
|
||||
polarBearRidable = getBoolean("mobs.polar_bear.ridable", polarBearRidable);
|
||||
polarBearRidableInWater = getBoolean("mobs.polar_bear.ridable-in-water", polarBearRidableInWater);
|
||||
@@ -1207,6 +1240,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1205,6 +1238,7 @@ public class PurpurWorldConfig {
|
||||
polarBearBreedableItemString = getString("mobs.polar_bear.breedable-item", polarBearBreedableItemString);
|
||||
Item item = Registry.ITEM.get(new ResourceLocation(polarBearBreedableItemString));
|
||||
if (item != Items.AIR) polarBearBreedableItem = item;
|
||||
@@ -738,7 +738,7 @@ index 788884481c4df2e25843245b484682371e5267fe..ff2be552313fe5543228838245dcfa24
|
||||
}
|
||||
|
||||
public boolean pufferfishRidable = false;
|
||||
@@ -1226,6 +1260,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1224,6 +1258,7 @@ public class PurpurWorldConfig {
|
||||
public double rabbitMaxHealth = 3.0D;
|
||||
public double rabbitNaturalToast = 0.0D;
|
||||
public double rabbitNaturalKiller = 0.0D;
|
||||
@@ -746,7 +746,7 @@ index 788884481c4df2e25843245b484682371e5267fe..ff2be552313fe5543228838245dcfa24
|
||||
private void rabbitSettings() {
|
||||
rabbitRidable = getBoolean("mobs.rabbit.ridable", rabbitRidable);
|
||||
rabbitRidableInWater = getBoolean("mobs.rabbit.ridable-in-water", rabbitRidableInWater);
|
||||
@@ -1237,6 +1272,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1235,6 +1270,7 @@ public class PurpurWorldConfig {
|
||||
rabbitMaxHealth = getDouble("mobs.rabbit.attributes.max_health", rabbitMaxHealth);
|
||||
rabbitNaturalToast = getDouble("mobs.rabbit.spawn-toast-chance", rabbitNaturalToast);
|
||||
rabbitNaturalKiller = getDouble("mobs.rabbit.spawn-killer-rabbit-chance", rabbitNaturalKiller);
|
||||
@@ -754,7 +754,7 @@ index 788884481c4df2e25843245b484682371e5267fe..ff2be552313fe5543228838245dcfa24
|
||||
}
|
||||
|
||||
public boolean ravagerRidable = false;
|
||||
@@ -1268,6 +1304,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1266,6 +1302,7 @@ public class PurpurWorldConfig {
|
||||
public boolean sheepRidable = false;
|
||||
public boolean sheepRidableInWater = false;
|
||||
public double sheepMaxHealth = 8.0D;
|
||||
@@ -762,7 +762,7 @@ index 788884481c4df2e25843245b484682371e5267fe..ff2be552313fe5543228838245dcfa24
|
||||
private void sheepSettings() {
|
||||
sheepRidable = getBoolean("mobs.sheep.ridable", sheepRidable);
|
||||
sheepRidableInWater = getBoolean("mobs.sheep.ridable-in-water", sheepRidableInWater);
|
||||
@@ -1277,6 +1314,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1275,6 +1312,7 @@ public class PurpurWorldConfig {
|
||||
set("mobs.sheep.attributes.max_health", oldValue);
|
||||
}
|
||||
sheepMaxHealth = getDouble("mobs.sheep.attributes.max_health", sheepMaxHealth);
|
||||
@@ -770,7 +770,7 @@ index 788884481c4df2e25843245b484682371e5267fe..ff2be552313fe5543228838245dcfa24
|
||||
}
|
||||
|
||||
public boolean shulkerRidable = false;
|
||||
@@ -1431,6 +1469,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1429,6 +1467,7 @@ public class PurpurWorldConfig {
|
||||
public boolean striderRidable = false;
|
||||
public boolean striderRidableInWater = false;
|
||||
public double striderMaxHealth = 20.0D;
|
||||
@@ -778,7 +778,7 @@ index 788884481c4df2e25843245b484682371e5267fe..ff2be552313fe5543228838245dcfa24
|
||||
private void striderSettings() {
|
||||
striderRidable = getBoolean("mobs.strider.ridable", striderRidable);
|
||||
striderRidableInWater = getBoolean("mobs.strider.ridable-in-water", striderRidableInWater);
|
||||
@@ -1440,6 +1479,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1438,6 +1477,7 @@ public class PurpurWorldConfig {
|
||||
set("mobs.strider.attributes.max_health", oldValue);
|
||||
}
|
||||
striderMaxHealth = getDouble("mobs.strider.attributes.max_health", striderMaxHealth);
|
||||
@@ -786,7 +786,7 @@ index 788884481c4df2e25843245b484682371e5267fe..ff2be552313fe5543228838245dcfa24
|
||||
}
|
||||
|
||||
public boolean traderLlamaRidable = false;
|
||||
@@ -1450,6 +1490,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1448,6 +1488,7 @@ public class PurpurWorldConfig {
|
||||
public double traderLlamaJumpStrengthMax = 0.5D;
|
||||
public double traderLlamaMovementSpeedMin = 0.175D;
|
||||
public double traderLlamaMovementSpeedMax = 0.175D;
|
||||
@@ -794,7 +794,7 @@ index 788884481c4df2e25843245b484682371e5267fe..ff2be552313fe5543228838245dcfa24
|
||||
private void traderLlamaSettings() {
|
||||
traderLlamaRidable = getBoolean("mobs.trader_llama.ridable", traderLlamaRidable);
|
||||
traderLlamaRidableInWater = getBoolean("mobs.trader_llama.ridable-in-water", traderLlamaRidableInWater);
|
||||
@@ -1466,6 +1507,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1464,6 +1505,7 @@ public class PurpurWorldConfig {
|
||||
traderLlamaJumpStrengthMax = getDouble("mobs.trader_llama.attributes.jump_strength.max", traderLlamaJumpStrengthMax);
|
||||
traderLlamaMovementSpeedMin = getDouble("mobs.trader_llama.attributes.movement_speed.min", traderLlamaMovementSpeedMin);
|
||||
traderLlamaMovementSpeedMax = getDouble("mobs.trader_llama.attributes.movement_speed.max", traderLlamaMovementSpeedMax);
|
||||
@@ -802,7 +802,7 @@ index 788884481c4df2e25843245b484682371e5267fe..ff2be552313fe5543228838245dcfa24
|
||||
}
|
||||
|
||||
public boolean tropicalFishRidable = false;
|
||||
@@ -1496,6 +1538,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1484,6 +1526,7 @@ public class PurpurWorldConfig {
|
||||
public boolean turtleEggsBreakFromExpOrbs = true;
|
||||
public boolean turtleEggsBreakFromItems = true;
|
||||
public boolean turtleEggsBreakFromMinecarts = true;
|
||||
@@ -810,7 +810,7 @@ index 788884481c4df2e25843245b484682371e5267fe..ff2be552313fe5543228838245dcfa24
|
||||
private void turtleEggSettings() {
|
||||
turtleRidable = getBoolean("mobs.turtle.ridable", turtleRidable);
|
||||
turtleRidableInWater = getBoolean("mobs.turtle.ridable-in-water", turtleRidableInWater);
|
||||
@@ -1508,6 +1551,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1496,6 +1539,7 @@ public class PurpurWorldConfig {
|
||||
turtleEggsBreakFromExpOrbs = getBoolean("blocks.turtle_egg.break-from-exp-orbs", turtleEggsBreakFromExpOrbs);
|
||||
turtleEggsBreakFromItems = getBoolean("blocks.turtle_egg.break-from-items", turtleEggsBreakFromItems);
|
||||
turtleEggsBreakFromMinecarts = getBoolean("blocks.turtle_egg.break-from-minecarts", turtleEggsBreakFromMinecarts);
|
||||
@@ -818,7 +818,7 @@ index 788884481c4df2e25843245b484682371e5267fe..ff2be552313fe5543228838245dcfa24
|
||||
}
|
||||
|
||||
public boolean vexRidable = false;
|
||||
@@ -1537,6 +1581,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1525,6 +1569,7 @@ public class PurpurWorldConfig {
|
||||
public int villagerSpawnIronGolemRadius = 0;
|
||||
public int villagerSpawnIronGolemLimit = 0;
|
||||
public boolean villagerCanBreed = true;
|
||||
@@ -826,7 +826,7 @@ index 788884481c4df2e25843245b484682371e5267fe..ff2be552313fe5543228838245dcfa24
|
||||
private void villagerSettings() {
|
||||
villagerRidable = getBoolean("mobs.villager.ridable", villagerRidable);
|
||||
villagerRidableInWater = getBoolean("mobs.villager.ridable-in-water", villagerRidableInWater);
|
||||
@@ -1554,6 +1599,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1542,6 +1587,7 @@ public class PurpurWorldConfig {
|
||||
villagerSpawnIronGolemRadius = getInt("mobs.villager.spawn-iron-golem.radius", villagerSpawnIronGolemRadius);
|
||||
villagerSpawnIronGolemLimit = getInt("mobs.villager.spawn-iron-golem.limit", villagerSpawnIronGolemLimit);
|
||||
villagerCanBreed = getBoolean("mobs.villager.can-breed", villagerCanBreed);
|
||||
@@ -834,7 +834,7 @@ index 788884481c4df2e25843245b484682371e5267fe..ff2be552313fe5543228838245dcfa24
|
||||
}
|
||||
|
||||
public boolean vindicatorRidable = false;
|
||||
@@ -1647,6 +1693,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1635,6 +1681,7 @@ public class PurpurWorldConfig {
|
||||
public boolean wolfRidable = false;
|
||||
public boolean wolfRidableInWater = false;
|
||||
public double wolfMaxHealth = 8.0D;
|
||||
@@ -842,7 +842,7 @@ index 788884481c4df2e25843245b484682371e5267fe..ff2be552313fe5543228838245dcfa24
|
||||
private void wolfSettings() {
|
||||
wolfRidable = getBoolean("mobs.wolf.ridable", wolfRidable);
|
||||
wolfRidableInWater = getBoolean("mobs.wolf.ridable-in-water", wolfRidableInWater);
|
||||
@@ -1656,6 +1703,7 @@ public class PurpurWorldConfig {
|
||||
@@ -1644,6 +1691,7 @@ public class PurpurWorldConfig {
|
||||
set("mobs.wolf.attributes.max_health", oldValue);
|
||||
}
|
||||
wolfMaxHealth = getDouble("mobs.wolf.attributes.max_health", wolfMaxHealth);
|
||||
|
||||
@@ -0,0 +1,174 @@
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: BillyGalbreath <blake.galbreath@gmail.com>
|
||||
Date: Sat, 19 Jun 2021 14:45:41 -0500
|
||||
Subject: [PATCH] Apply display names from item forms of entities to entities
|
||||
and vice versa
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/decoration/ArmorStand.java b/src/main/java/net/minecraft/world/entity/decoration/ArmorStand.java
|
||||
index 7a3a364f5e3b025cc0a5694401cb9298c80cb733..796ab61f4513c02b0d55d34044d2f7084c447796 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/decoration/ArmorStand.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/decoration/ArmorStand.java
|
||||
@@ -597,7 +597,13 @@ public class ArmorStand extends LivingEntity {
|
||||
}
|
||||
|
||||
private void brokenByPlayer(DamageSource damageSource) {
|
||||
- drops.add(org.bukkit.craftbukkit.inventory.CraftItemStack.asBukkitCopy(new ItemStack(Items.ARMOR_STAND))); // CraftBukkit - add to drops
|
||||
+ // Purpur start
|
||||
+ final ItemStack armorStand = new ItemStack(Items.ARMOR_STAND);
|
||||
+ if (this.level.purpurConfig.persistentDroppableEntityDisplayNames && this.hasCustomName()) {
|
||||
+ armorStand.setHoverName(this.getCustomName());
|
||||
+ }
|
||||
+ drops.add(org.bukkit.craftbukkit.inventory.CraftItemStack.asBukkitCopy(armorStand)); // CraftBukkit - add to drops
|
||||
+ // Purpur end
|
||||
this.brokenByAnything(damageSource);
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/decoration/ItemFrame.java b/src/main/java/net/minecraft/world/entity/decoration/ItemFrame.java
|
||||
index b829efdb40051a41b3bf1cabb8bf7d7c952797b5..90f1ecd97eef93316f61bf5d761d33c313e1a077 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/decoration/ItemFrame.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/decoration/ItemFrame.java
|
||||
@@ -257,7 +257,13 @@ public class ItemFrame extends HangingEntity {
|
||||
}
|
||||
|
||||
if (alwaysDrop) {
|
||||
- this.spawnAtLocation(this.getFrameItemStack());
|
||||
+ // Purpur start
|
||||
+ final ItemStack itemFrame = this.getFrameItemStack();
|
||||
+ if (this.level.purpurConfig.persistentDroppableEntityDisplayNames && this.hasCustomName()) {
|
||||
+ itemFrame.setHoverName(this.getCustomName());
|
||||
+ }
|
||||
+ this.spawnAtLocation(itemFrame);
|
||||
+ // Purpur end
|
||||
}
|
||||
|
||||
if (!itemstack.isEmpty()) {
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/decoration/Painting.java b/src/main/java/net/minecraft/world/entity/decoration/Painting.java
|
||||
index a853e2cc2e3f06a0ca0bb1799b3fd02890ae6521..a8265cd631d335d4eaec1918bd48570ee1fc9429 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/decoration/Painting.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/decoration/Painting.java
|
||||
@@ -114,7 +114,13 @@ public class Painting extends HangingEntity {
|
||||
}
|
||||
}
|
||||
|
||||
- this.spawnAtLocation((ItemLike) Items.PAINTING);
|
||||
+ // Purpur start
|
||||
+ final ItemStack painting = new ItemStack(Items.PAINTING);
|
||||
+ if (this.level.purpurConfig.persistentDroppableEntityDisplayNames && this.hasCustomName()) {
|
||||
+ painting.setHoverName(this.getCustomName());
|
||||
+ }
|
||||
+ this.spawnAtLocation(painting);
|
||||
+ // Purpur end
|
||||
}
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/vehicle/Boat.java b/src/main/java/net/minecraft/world/entity/vehicle/Boat.java
|
||||
index d4a19fc38027717e43353bc62ef23e564f3b4c26..4f85cd75af97ce29211c5d4347292125c0ca527d 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/vehicle/Boat.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/vehicle/Boat.java
|
||||
@@ -209,7 +209,13 @@ public class Boat extends Entity {
|
||||
}
|
||||
// CraftBukkit end
|
||||
if (!flag && this.level.getGameRules().getBoolean(GameRules.RULE_DOENTITYDROPS)) {
|
||||
- this.spawnAtLocation((ItemLike) this.getDropItem());
|
||||
+ // Purpur start
|
||||
+ final ItemStack boat = new ItemStack(this.getDropItem());
|
||||
+ if (this.level.purpurConfig.persistentDroppableEntityDisplayNames && this.hasCustomName()) {
|
||||
+ boat.setHoverName(this.getCustomName());
|
||||
+ }
|
||||
+ this.spawnAtLocation(boat);
|
||||
+ // Purpur end
|
||||
}
|
||||
|
||||
this.discard();
|
||||
diff --git a/src/main/java/net/minecraft/world/item/ArmorStandItem.java b/src/main/java/net/minecraft/world/item/ArmorStandItem.java
|
||||
index 44d63145480d38a4ec3a38be108200af070bcffa..7de67b75010f0da52004c911f6ee98eb133fdaed 100644
|
||||
--- a/src/main/java/net/minecraft/world/item/ArmorStandItem.java
|
||||
+++ b/src/main/java/net/minecraft/world/item/ArmorStandItem.java
|
||||
@@ -63,6 +63,14 @@ public class ArmorStandItem extends Item {
|
||||
return InteractionResult.FAIL;
|
||||
}
|
||||
// CraftBukkit end
|
||||
+ // Purpur start
|
||||
+ if (world.purpurConfig.persistentDroppableEntityDisplayNames && itemstack.hasCustomHoverName()) {
|
||||
+ entityarmorstand.setCustomName(itemstack.getHoverName());
|
||||
+ if (world.purpurConfig.armorstandSetNameVisible) {
|
||||
+ entityarmorstand.setCustomNameVisible(true);
|
||||
+ }
|
||||
+ }
|
||||
+ // Purpur end
|
||||
worldserver.addFreshEntityWithPassengers(entityarmorstand);
|
||||
world.playSound((Player) null, entityarmorstand.getX(), entityarmorstand.getY(), entityarmorstand.getZ(), SoundEvents.ARMOR_STAND_PLACE, SoundSource.BLOCKS, 0.75F, 0.8F);
|
||||
world.gameEvent((Entity) context.getPlayer(), GameEvent.ENTITY_PLACE, (Entity) entityarmorstand);
|
||||
diff --git a/src/main/java/net/minecraft/world/item/BoatItem.java b/src/main/java/net/minecraft/world/item/BoatItem.java
|
||||
index c0864c833fd313e6ba9339ecc7f9e2359954bda3..8f5ed444ab430ae60d52e68ded605cfa0634331f 100644
|
||||
--- a/src/main/java/net/minecraft/world/item/BoatItem.java
|
||||
+++ b/src/main/java/net/minecraft/world/item/BoatItem.java
|
||||
@@ -67,6 +67,11 @@ public class BoatItem extends Item {
|
||||
|
||||
entityboat.setType(this.type);
|
||||
entityboat.setYRot(user.getYRot());
|
||||
+ // Purpur start
|
||||
+ if (world.purpurConfig.persistentDroppableEntityDisplayNames && itemstack.hasCustomHoverName()) {
|
||||
+ entityboat.setCustomName(itemstack.getHoverName());
|
||||
+ }
|
||||
+ // Purpur end
|
||||
if (!world.noCollision(entityboat, entityboat.getBoundingBox().inflate(-0.1D))) {
|
||||
return InteractionResultHolder.fail(itemstack);
|
||||
} else {
|
||||
diff --git a/src/main/java/net/minecraft/world/item/HangingEntityItem.java b/src/main/java/net/minecraft/world/item/HangingEntityItem.java
|
||||
index 282bfe4904637aaff1bd29e30ed18ba843c07cab..ddd50db8bb92c147d7c1eef4d1df3ac53e2d3e4b 100644
|
||||
--- a/src/main/java/net/minecraft/world/item/HangingEntityItem.java
|
||||
+++ b/src/main/java/net/minecraft/world/item/HangingEntityItem.java
|
||||
@@ -40,7 +40,7 @@ public class HangingEntityItem extends Item {
|
||||
return InteractionResult.FAIL;
|
||||
} else {
|
||||
Level world = context.getLevel();
|
||||
- Object object;
|
||||
+ Entity object; // Purpur
|
||||
|
||||
if (this.type == EntityType.PAINTING) {
|
||||
object = new Painting(world, blockposition1, enumdirection);
|
||||
@@ -58,6 +58,11 @@ public class HangingEntityItem extends Item {
|
||||
|
||||
if (nbttagcompound != null) {
|
||||
EntityType.updateCustomEntityTag(world, entityhuman, (Entity) object, nbttagcompound);
|
||||
+ // Purpur start
|
||||
+ if (world.purpurConfig.persistentDroppableEntityDisplayNames && itemstack.hasCustomHoverName()) {
|
||||
+ object.setCustomName(itemstack.getHoverName());
|
||||
+ }
|
||||
+ // Purpur end
|
||||
}
|
||||
|
||||
if (((HangingEntity) object).survives()) {
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index fd773f696d5f3940a16debd545bf9fee0ea9288d..08a969b85553409160911ea77b9caa5437f6ef5d 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -85,8 +85,10 @@ public class PurpurWorldConfig {
|
||||
}
|
||||
|
||||
public float armorstandStepHeight = 0.0F;
|
||||
+ public boolean armorstandSetNameVisible = false;
|
||||
private void armorstandSettings() {
|
||||
armorstandStepHeight = (float) getDouble("gameplay-mechanics.armorstand.step-height", armorstandStepHeight);
|
||||
+ armorstandSetNameVisible = getBoolean("gameplay-mechanics.armorstand.set-name-visible-when-placing-with-custom-name", armorstandSetNameVisible);
|
||||
}
|
||||
|
||||
public int daytimeTicks = 12000;
|
||||
@@ -325,6 +327,7 @@ public class PurpurWorldConfig {
|
||||
public boolean entitiesCanUsePortals = true;
|
||||
public boolean milkCuresBadOmen = true;
|
||||
public boolean persistentTileEntityDisplayNames = false;
|
||||
+ public boolean persistentDroppableEntityDisplayNames = false;
|
||||
public double tridentLoyaltyVoidReturnHeight = 0.0D;
|
||||
public double voidDamageHeight = -64.0D;
|
||||
public double voidDamageDealt = 4.0D;
|
||||
@@ -338,6 +341,7 @@ public class PurpurWorldConfig {
|
||||
entitiesCanUsePortals = getBoolean("gameplay-mechanics.entities-can-use-portals", entitiesCanUsePortals);
|
||||
milkCuresBadOmen = getBoolean("gameplay-mechanics.milk-cures-bad-omen", milkCuresBadOmen);
|
||||
persistentTileEntityDisplayNames = getBoolean("gameplay-mechanics.persistent-tileentity-display-names-and-lore", persistentTileEntityDisplayNames);
|
||||
+ persistentDroppableEntityDisplayNames = getBoolean("gameplay-mechanics.persistent-droppable-entity-display-names", persistentDroppableEntityDisplayNames);
|
||||
tridentLoyaltyVoidReturnHeight = getDouble("gameplay-mechanics.trident-loyalty-void-return-height", tridentLoyaltyVoidReturnHeight);
|
||||
voidDamageHeight = getDouble("gameplay-mechanics.void-damage-height", voidDamageHeight);
|
||||
voidDamageDealt = getDouble("gameplay-mechanics.void-damage-dealt", voidDamageDealt);
|
||||
@@ -0,0 +1,34 @@
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: BillyGalbreath <blake.galbreath@gmail.com>
|
||||
Date: Sat, 19 Jun 2021 14:53:40 -0500
|
||||
Subject: [PATCH] Set name visible when using a Name Tag on an Armor Stand
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/item/NameTagItem.java b/src/main/java/net/minecraft/world/item/NameTagItem.java
|
||||
index 623f78c078fb3aa2665d7e8a37672438227bce6b..500c69e555c7247e20ef8cc59d83415578f44427 100644
|
||||
--- a/src/main/java/net/minecraft/world/item/NameTagItem.java
|
||||
+++ b/src/main/java/net/minecraft/world/item/NameTagItem.java
|
||||
@@ -24,6 +24,7 @@ public class NameTagItem extends Item {
|
||||
if (!event.callEvent()) return InteractionResult.PASS;
|
||||
LivingEntity newEntityLiving = ((org.bukkit.craftbukkit.entity.CraftLivingEntity) event.getEntity()).getHandle();
|
||||
newEntityLiving.setCustomName(event.getName() != null ? PaperAdventure.asVanilla(event.getName()) : null);
|
||||
+ if (user.level.purpurConfig.armorstandFixNametags && entity instanceof net.minecraft.world.entity.decoration.ArmorStand) entity.setCustomNameVisible(true); // Purpur
|
||||
if (event.isPersistent() && newEntityLiving instanceof Mob) {
|
||||
((Mob) newEntityLiving).setPersistenceRequired();
|
||||
// Paper end
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 08a969b85553409160911ea77b9caa5437f6ef5d..d2d5c5f92e5415f647cbebf16f3121f8230be24e 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -86,9 +86,11 @@ public class PurpurWorldConfig {
|
||||
|
||||
public float armorstandStepHeight = 0.0F;
|
||||
public boolean armorstandSetNameVisible = false;
|
||||
+ public boolean armorstandFixNametags = false;
|
||||
private void armorstandSettings() {
|
||||
armorstandStepHeight = (float) getDouble("gameplay-mechanics.armorstand.step-height", armorstandStepHeight);
|
||||
armorstandSetNameVisible = getBoolean("gameplay-mechanics.armorstand.set-name-visible-when-placing-with-custom-name", armorstandSetNameVisible);
|
||||
+ armorstandFixNametags = getBoolean("gameplay-mechanics.armorstand.fix-nametags", armorstandFixNametags);
|
||||
}
|
||||
|
||||
public int daytimeTicks = 12000;
|
||||
@@ -0,0 +1,89 @@
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: BillyGalbreath <blake.galbreath@gmail.com>
|
||||
Date: Sat, 19 Jun 2021 15:16:56 -0500
|
||||
Subject: [PATCH] Add twisting and weeping vines growth rates
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/level/block/GrowingPlantHeadBlock.java b/src/main/java/net/minecraft/world/level/block/GrowingPlantHeadBlock.java
|
||||
index 3129c8db32fd79ab5917ffc93ee6dd5db58b1aad..9f1d43ad720750f9d50cc3cfbe1fc9b335cffd0d 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/block/GrowingPlantHeadBlock.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/block/GrowingPlantHeadBlock.java
|
||||
@@ -39,9 +39,11 @@ public abstract class GrowingPlantHeadBlock extends GrowingPlantBlock implements
|
||||
return (Integer) state.getValue(GrowingPlantHeadBlock.AGE) < 25;
|
||||
}
|
||||
|
||||
+ public abstract double getGrowthModifier(ServerLevel world); // Purpur
|
||||
+
|
||||
@Override
|
||||
public void randomTick(BlockState state, ServerLevel world, BlockPos pos, Random random) {
|
||||
- if ((Integer) state.getValue(GrowingPlantHeadBlock.AGE) < 25 && random.nextDouble() < (100.0D / world.spigotConfig.kelpModifier) * this.growPerTickProbability) { // Spigot
|
||||
+ if (state.getValue(GrowingPlantHeadBlock.AGE) < 25 && random.nextDouble() < (100.0D / this.getGrowthModifier(world)) * this.growPerTickProbability) { // Spigot // Purpur
|
||||
BlockPos blockposition1 = pos.relative(this.growthDirection);
|
||||
|
||||
if (this.canGrowInto(world.getBlockState(blockposition1))) {
|
||||
diff --git a/src/main/java/net/minecraft/world/level/block/KelpBlock.java b/src/main/java/net/minecraft/world/level/block/KelpBlock.java
|
||||
index 2bd5db55656c9ace95ad5ffdc4a6d07daa0948e4..5f9a8dd6b4f7c9285ffcce8bbe0e334a28cc9699 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/block/KelpBlock.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/block/KelpBlock.java
|
||||
@@ -64,4 +64,10 @@ public class KelpBlock extends GrowingPlantHeadBlock implements LiquidBlockConta
|
||||
public FluidState getFluidState(BlockState state) {
|
||||
return Fluids.WATER.getSource(false);
|
||||
}
|
||||
+
|
||||
+ // Purpur start
|
||||
+ public double getGrowthModifier(net.minecraft.server.level.ServerLevel world) {
|
||||
+ return world.spigotConfig.kelpModifier;
|
||||
+ }
|
||||
+ // Purpur end
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/world/level/block/TwistingVinesBlock.java b/src/main/java/net/minecraft/world/level/block/TwistingVinesBlock.java
|
||||
index bc9813ad36d95d90eafe51afa27857937b6eecc6..c877f7e4e55c63d91ce58c15850e279be3e159a7 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/block/TwistingVinesBlock.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/block/TwistingVinesBlock.java
|
||||
@@ -27,4 +27,10 @@ public class TwistingVinesBlock extends GrowingPlantHeadBlock {
|
||||
protected boolean canGrowInto(BlockState state) {
|
||||
return NetherVines.isValidGrowthState(state);
|
||||
}
|
||||
+
|
||||
+ // Purpur start
|
||||
+ public double getGrowthModifier(net.minecraft.server.level.ServerLevel world) {
|
||||
+ return world.purpurConfig.twistingVinesGrowthModifier;
|
||||
+ }
|
||||
+ // Purpur end
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/world/level/block/WeepingVinesBlock.java b/src/main/java/net/minecraft/world/level/block/WeepingVinesBlock.java
|
||||
index 35b2bad76c45b5a94ba7f2e9c7a8cfeb8c3f498b..d2cb1a7e7ea364cb8e2af4c4e756d8e45bc0ca10 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/block/WeepingVinesBlock.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/block/WeepingVinesBlock.java
|
||||
@@ -27,4 +27,10 @@ public class WeepingVinesBlock extends GrowingPlantHeadBlock {
|
||||
protected boolean canGrowInto(BlockState state) {
|
||||
return NetherVines.isValidGrowthState(state);
|
||||
}
|
||||
+
|
||||
+ // Purpur start
|
||||
+ public double getGrowthModifier(net.minecraft.server.level.ServerLevel world) {
|
||||
+ return world.purpurConfig.weepingVinesGrowthModifier;
|
||||
+ }
|
||||
+ // Purpur end
|
||||
}
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index d2d5c5f92e5415f647cbebf16f3121f8230be24e..f1b0d55f425b3028178323e710991fff481e0ba6 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -457,6 +457,16 @@ public class PurpurWorldConfig {
|
||||
stonecutterDamage = (float) getDouble("blocks.stonecutter.damage", stonecutterDamage);
|
||||
}
|
||||
|
||||
+ public double twistingVinesGrowthModifier = 0.10D;
|
||||
+ private void twistingVinesSettings() {
|
||||
+ twistingVinesGrowthModifier = getDouble("blocks.twisting_vines.growth-modifier", twistingVinesGrowthModifier);
|
||||
+ }
|
||||
+
|
||||
+ public double weepingVinesGrowthModifier = 0.10D;
|
||||
+ private void weepingVinesSettings() {
|
||||
+ weepingVinesGrowthModifier = getDouble("blocks.weeping_vines.growth-modifier", weepingVinesGrowthModifier);
|
||||
+ }
|
||||
+
|
||||
public boolean babiesAreRidable = true;
|
||||
public boolean untamedTamablesAreRidable = true;
|
||||
public boolean useNightVisionWhenRiding = false;
|
||||
Reference in New Issue
Block a user