mirror of
https://github.com/PaperMC/Paper.git
synced 2024-09-12 06:58:11 +02:00
It appears to cause visual glitching issues with certain TNT entities fired from cannons. TileEntity tick capping has already been removed for some time, Entity tick capping removal is new to this patch.
83 lines
3.2 KiB
Diff
83 lines
3.2 KiB
Diff
From 20d9994e0cf68e4fae68d2a5d8b0cefd871d42e7 Mon Sep 17 00:00:00 2001
|
|
From: gsand <gsandowns@gmail.com>
|
|
Date: Sun, 8 Mar 2015 04:10:02 -0500
|
|
Subject: [PATCH] Configurable game mechanics changes
|
|
|
|
|
|
diff --git a/src/main/java/net/minecraft/server/EntityBoat.java b/src/main/java/net/minecraft/server/EntityBoat.java
|
|
index f6a43c0..0e6f8c0 100644
|
|
--- a/src/main/java/net/minecraft/server/EntityBoat.java
|
|
+++ b/src/main/java/net/minecraft/server/EntityBoat.java
|
|
@@ -340,13 +340,7 @@ public class EntityBoat extends Entity {
|
|
if (!destroyEvent.isCancelled()) {
|
|
this.die();
|
|
if (this.world.getGameRules().getBoolean("doEntityDrops")) {
|
|
- for (k = 0; k < 3; ++k) {
|
|
- this.a(Item.getItemOf(Blocks.PLANKS), 1, 0.0F);
|
|
- }
|
|
-
|
|
- for (k = 0; k < 2; ++k) {
|
|
- this.a(Items.STICK, 1, 0.0F);
|
|
- }
|
|
+ breakNaturally(); // PaperSpigot
|
|
}
|
|
} // CraftBukkit end
|
|
}
|
|
@@ -451,15 +445,7 @@ public class EntityBoat extends Entity {
|
|
if (!destroyEvent.isCancelled()) {
|
|
this.die();
|
|
if (this.world.getGameRules().getBoolean("doEntityDrops")) {
|
|
- int i;
|
|
-
|
|
- for (i = 0; i < 3; ++i) {
|
|
- this.a(Item.getItemOf(Blocks.PLANKS), 1, 0.0F);
|
|
- }
|
|
-
|
|
- for (i = 0; i < 2; ++i) {
|
|
- this.a(Items.STICK, 1, 0.0F);
|
|
- }
|
|
+ breakNaturally(); // PaperSpigot
|
|
}
|
|
} // CraftBukkit end
|
|
}
|
|
@@ -495,4 +481,21 @@ public class EntityBoat extends Entity {
|
|
public int m() {
|
|
return this.datawatcher.getInt(18);
|
|
}
|
|
+
|
|
+ /**
|
|
+ * PaperSpigot - Handles boat drops depending on the user's config setting
|
|
+ */
|
|
+ public void breakNaturally() {
|
|
+ if (this.world.paperSpigotConfig.boatsDropBoats) {
|
|
+ this.a(Items.BOAT, 1, 0.0F);
|
|
+ } else {
|
|
+ for (int k = 0; k < 3; ++k) {
|
|
+ this.a(Item.getItemOf(Blocks.PLANKS), 1, 0.0F);
|
|
+ }
|
|
+
|
|
+ for (int k = 0; k < 2; ++k) {
|
|
+ this.a(Items.STICK, 1, 0.0F);
|
|
+ }
|
|
+ }
|
|
+ }
|
|
}
|
|
diff --git a/src/main/java/org/github/paperspigot/PaperSpigotWorldConfig.java b/src/main/java/org/github/paperspigot/PaperSpigotWorldConfig.java
|
|
index ac02b90..f33142a 100644
|
|
--- a/src/main/java/org/github/paperspigot/PaperSpigotWorldConfig.java
|
|
+++ b/src/main/java/org/github/paperspigot/PaperSpigotWorldConfig.java
|
|
@@ -180,4 +180,10 @@ public class PaperSpigotWorldConfig
|
|
removeUnloadedTNTEntities = getBoolean( "remove-unloaded.tnt-entities", true );
|
|
removeUnloadedFallingBlocks = getBoolean( "remove-unloaded.falling-blocks", true );
|
|
}
|
|
+
|
|
+ public boolean boatsDropBoats;
|
|
+ private void mechanicsChanges()
|
|
+ {
|
|
+ boatsDropBoats = getBoolean( "game-mechanics.boats-drop-boats", false );
|
|
+ }
|
|
}
|
|
--
|
|
2.4.1.windows.1
|
|
|