Mirror von
https://github.com/PaperMC/Paper.git
synchronisiert 2024-12-20 21:40:06 +01:00
233814297b
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 Zeilen
3.2 KiB
Diff
83 Zeilen
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
|
|
|