From 0cab667816467d12868cc6540a9da7b785296d16 Mon Sep 17 00:00:00 2001 From: mckuhei Date: Sun, 26 Mar 2023 12:59:35 +0800 Subject: [PATCH] Fix block collision. --- src/minecraft/net/minecraft/src/BlockButton.java | 2 +- .../net/minecraft/src/BlockFarmland.java | 16 ++++++++-------- src/minecraft/net/minecraft/src/BlockFire.java | 2 +- src/minecraft/net/minecraft/src/BlockFlower.java | 2 +- src/minecraft/net/minecraft/src/BlockFluid.java | 2 +- src/minecraft/net/minecraft/src/BlockLever.java | 2 +- .../net/minecraft/src/BlockLilyPad.java | 4 ++-- .../net/minecraft/src/BlockPressurePlate.java | 2 +- src/minecraft/net/minecraft/src/BlockRail.java | 2 +- .../net/minecraft/src/BlockRedstoneWire.java | 2 +- .../net/minecraft/src/BlockSoulSand.java | 6 ++++-- src/minecraft/net/minecraft/src/BlockTorch.java | 2 +- .../net/minecraft/src/BlockTripWire.java | 2 +- .../net/minecraft/src/BlockTripWireSource.java | 2 +- src/minecraft/net/minecraft/src/BlockVine.java | 2 +- src/minecraft/net/minecraft/src/BlockWeb.java | 4 +++- 16 files changed, 29 insertions(+), 25 deletions(-) diff --git a/src/minecraft/net/minecraft/src/BlockButton.java b/src/minecraft/net/minecraft/src/BlockButton.java index b6bd441..f8cf95b 100644 --- a/src/minecraft/net/minecraft/src/BlockButton.java +++ b/src/minecraft/net/minecraft/src/BlockButton.java @@ -16,7 +16,7 @@ public class BlockButton extends Block * Returns a bounding box from the pool of bounding boxes (this means this box can change after the pool has been * cleared to be reused) */ - public AxisAlignedBB getCollisionBoundingBoxFromPool(World par1World, int par2, int par3, int par4) + public AxisAlignedBB getCollisionBoundingBoxFromPool(World par1World, BigInteger par2, int par3, BigInteger par4) { return null; } diff --git a/src/minecraft/net/minecraft/src/BlockFarmland.java b/src/minecraft/net/minecraft/src/BlockFarmland.java index abc63f2..1465d3a 100644 --- a/src/minecraft/net/minecraft/src/BlockFarmland.java +++ b/src/minecraft/net/minecraft/src/BlockFarmland.java @@ -14,14 +14,14 @@ public class BlockFarmland extends Block this.setLightOpacity(255); } - /** - * Returns a bounding box from the pool of bounding boxes (this means this box can change after the pool has been - * cleared to be reused) - */ - public AxisAlignedBB getCollisionBoundingBoxFromPool(World par1World, int par2, int par3, int par4) - { - return AxisAlignedBB.getAABBPool().addOrModifyAABBInPool((double)(par2 + 0), (double)(par3 + 0), (double)(par4 + 0), (double)(par2 + 1), (double)(par3 + 1), (double)(par4 + 1)); - } +// /** +// * Returns a bounding box from the pool of bounding boxes (this means this box can change after the pool has been +// * cleared to be reused) +// */ +// public AxisAlignedBB getCollisionBoundingBoxFromPool(World par1World, int par2, int par3, int par4) +// { +// return AxisAlignedBB.getAABBPool().addOrModifyAABBInPool((double)(par2 + 0), (double)(par3 + 0), (double)(par4 + 0), (double)(par2 + 1), (double)(par3 + 1), (double)(par4 + 1)); +// } /** * Is this block (a) opaque and (b) a full 1m cube? This determines whether or not to render the shared face of two diff --git a/src/minecraft/net/minecraft/src/BlockFire.java b/src/minecraft/net/minecraft/src/BlockFire.java index e4fb6ae..9fa4883 100644 --- a/src/minecraft/net/minecraft/src/BlockFire.java +++ b/src/minecraft/net/minecraft/src/BlockFire.java @@ -58,7 +58,7 @@ public class BlockFire extends Block * Returns a bounding box from the pool of bounding boxes (this means this box can change after the pool has been * cleared to be reused) */ - public AxisAlignedBB getCollisionBoundingBoxFromPool(World par1World, int par2, int par3, int par4) + public AxisAlignedBB getCollisionBoundingBoxFromPool(World par1World, BigInteger par2, int par3, BigInteger par4) { return null; } diff --git a/src/minecraft/net/minecraft/src/BlockFlower.java b/src/minecraft/net/minecraft/src/BlockFlower.java index d7a8df4..5979d55 100644 --- a/src/minecraft/net/minecraft/src/BlockFlower.java +++ b/src/minecraft/net/minecraft/src/BlockFlower.java @@ -76,7 +76,7 @@ public class BlockFlower extends Block * Returns a bounding box from the pool of bounding boxes (this means this box can change after the pool has been * cleared to be reused) */ - public AxisAlignedBB getCollisionBoundingBoxFromPool(World par1World, int par2, int par3, int par4) + public AxisAlignedBB getCollisionBoundingBoxFromPool(World par1World, BigInteger par2, int par3, BigInteger par4) { return null; } diff --git a/src/minecraft/net/minecraft/src/BlockFluid.java b/src/minecraft/net/minecraft/src/BlockFluid.java index c226914..94275d3 100644 --- a/src/minecraft/net/minecraft/src/BlockFluid.java +++ b/src/minecraft/net/minecraft/src/BlockFluid.java @@ -157,7 +157,7 @@ public abstract class BlockFluid extends Block * Returns a bounding box from the pool of bounding boxes (this means this box can change after the pool has been * cleared to be reused) */ - public AxisAlignedBB getCollisionBoundingBoxFromPool(World par1World, int par2, int par3, int par4) + public AxisAlignedBB getCollisionBoundingBoxFromPool(World par1World, BigInteger par2, int par3, BigInteger par4) { return null; } diff --git a/src/minecraft/net/minecraft/src/BlockLever.java b/src/minecraft/net/minecraft/src/BlockLever.java index 45ad337..a2f48b5 100644 --- a/src/minecraft/net/minecraft/src/BlockLever.java +++ b/src/minecraft/net/minecraft/src/BlockLever.java @@ -14,7 +14,7 @@ public class BlockLever extends Block * Returns a bounding box from the pool of bounding boxes (this means this box can change after the pool has been * cleared to be reused) */ - public AxisAlignedBB getCollisionBoundingBoxFromPool(World par1World, int par2, int par3, int par4) + public AxisAlignedBB getCollisionBoundingBoxFromPool(World par1World, BigInteger par2, int par3, BigInteger par4) { return null; } diff --git a/src/minecraft/net/minecraft/src/BlockLilyPad.java b/src/minecraft/net/minecraft/src/BlockLilyPad.java index 27a6840..6fb9337 100644 --- a/src/minecraft/net/minecraft/src/BlockLilyPad.java +++ b/src/minecraft/net/minecraft/src/BlockLilyPad.java @@ -37,9 +37,9 @@ public class BlockLilyPad extends BlockFlower * Returns a bounding box from the pool of bounding boxes (this means this box can change after the pool has been * cleared to be reused) */ - public AxisAlignedBB getCollisionBoundingBoxFromPool(World par1World, int par2, int par3, int par4) + public AxisAlignedBB getCollisionBoundingBoxFromPool(World par1World, BigInteger par2, int par3, BigInteger par4) { - return AxisAlignedBB.getAABBPool().addOrModifyAABBInPool((double)par2 + this.minX, (double)par3 + this.minY, (double)par4 + this.minZ, (double)par2 + this.maxX, (double)par3 + this.maxY, (double)par4 + this.maxZ); + return AxisAlignedBB.getAABBPool().addOrModifyAABBInPool((double)par2.doubleValue() + this.minX, (double)par3 + this.minY, (double)par4.doubleValue() + this.minZ, (double)par2.doubleValue() + this.maxX, (double)par3 + this.maxY, (double)par4.doubleValue() + this.maxZ); } public int getBlockColor() diff --git a/src/minecraft/net/minecraft/src/BlockPressurePlate.java b/src/minecraft/net/minecraft/src/BlockPressurePlate.java index e929c23..35def8f 100644 --- a/src/minecraft/net/minecraft/src/BlockPressurePlate.java +++ b/src/minecraft/net/minecraft/src/BlockPressurePlate.java @@ -31,7 +31,7 @@ public class BlockPressurePlate extends Block * Returns a bounding box from the pool of bounding boxes (this means this box can change after the pool has been * cleared to be reused) */ - public AxisAlignedBB getCollisionBoundingBoxFromPool(World par1World, int par2, int par3, int par4) + public AxisAlignedBB getCollisionBoundingBoxFromPool(World par1World, BigInteger par2, int par3, BigInteger par4) { return null; } diff --git a/src/minecraft/net/minecraft/src/BlockRail.java b/src/minecraft/net/minecraft/src/BlockRail.java index c027ec5..420a70d 100644 --- a/src/minecraft/net/minecraft/src/BlockRail.java +++ b/src/minecraft/net/minecraft/src/BlockRail.java @@ -46,7 +46,7 @@ public class BlockRail extends Block * Returns a bounding box from the pool of bounding boxes (this means this box can change after the pool has been * cleared to be reused) */ - public AxisAlignedBB getCollisionBoundingBoxFromPool(World par1World, int par2, int par3, int par4) + public AxisAlignedBB getCollisionBoundingBoxFromPool(World par1World, BigInteger par2, int par3, BigInteger par4) { return null; } diff --git a/src/minecraft/net/minecraft/src/BlockRedstoneWire.java b/src/minecraft/net/minecraft/src/BlockRedstoneWire.java index 6b9c9bd..40ceff6 100644 --- a/src/minecraft/net/minecraft/src/BlockRedstoneWire.java +++ b/src/minecraft/net/minecraft/src/BlockRedstoneWire.java @@ -34,7 +34,7 @@ public class BlockRedstoneWire extends Block * Returns a bounding box from the pool of bounding boxes (this means this box can change after the pool has been * cleared to be reused) */ - public AxisAlignedBB getCollisionBoundingBoxFromPool(World par1World, int par2, int par3, int par4) + public AxisAlignedBB getCollisionBoundingBoxFromPool(World par1World, BigInteger par2, int par3, BigInteger par4) { return null; } diff --git a/src/minecraft/net/minecraft/src/BlockSoulSand.java b/src/minecraft/net/minecraft/src/BlockSoulSand.java index f6cc9a9..20bf9dc 100644 --- a/src/minecraft/net/minecraft/src/BlockSoulSand.java +++ b/src/minecraft/net/minecraft/src/BlockSoulSand.java @@ -1,5 +1,7 @@ package net.minecraft.src; +import org.mcmodule.math.BigInteger; + public class BlockSoulSand extends Block { public BlockSoulSand(int par1, int par2) @@ -12,10 +14,10 @@ public class BlockSoulSand extends Block * Returns a bounding box from the pool of bounding boxes (this means this box can change after the pool has been * cleared to be reused) */ - public AxisAlignedBB getCollisionBoundingBoxFromPool(World par1World, int par2, int par3, int par4) + public AxisAlignedBB getCollisionBoundingBoxFromPool(World par1World, BigInteger par2, int par3, BigInteger par4) { float var5 = 0.125F; - return AxisAlignedBB.getAABBPool().addOrModifyAABBInPool((double)par2, (double)par3, (double)par4, (double)(par2 + 1), (double)((float)(par3 + 1) - var5), (double)(par4 + 1)); + return AxisAlignedBB.getAABBPool().addOrModifyAABBInPool((double)par2.doubleValue(), (double)par3, (double)par4.doubleValue(), (double)(par2.doubleValue() + 1), (double)((float)(par3 + 1) - var5), (double)(par4.doubleValue() + 1)); } /** diff --git a/src/minecraft/net/minecraft/src/BlockTorch.java b/src/minecraft/net/minecraft/src/BlockTorch.java index ead4413..62469a2 100644 --- a/src/minecraft/net/minecraft/src/BlockTorch.java +++ b/src/minecraft/net/minecraft/src/BlockTorch.java @@ -16,7 +16,7 @@ public class BlockTorch extends Block * Returns a bounding box from the pool of bounding boxes (this means this box can change after the pool has been * cleared to be reused) */ - public AxisAlignedBB getCollisionBoundingBoxFromPool(World par1World, int par2, int par3, int par4) + public AxisAlignedBB getCollisionBoundingBoxFromPool(World par1World, BigInteger par2, int par3, BigInteger par4) { return null; } diff --git a/src/minecraft/net/minecraft/src/BlockTripWire.java b/src/minecraft/net/minecraft/src/BlockTripWire.java index c77b969..3e2264a 100644 --- a/src/minecraft/net/minecraft/src/BlockTripWire.java +++ b/src/minecraft/net/minecraft/src/BlockTripWire.java @@ -25,7 +25,7 @@ public class BlockTripWire extends Block * Returns a bounding box from the pool of bounding boxes (this means this box can change after the pool has been * cleared to be reused) */ - public AxisAlignedBB getCollisionBoundingBoxFromPool(World par1World, int par2, int par3, int par4) + public AxisAlignedBB getCollisionBoundingBoxFromPool(World par1World, BigInteger par2, int par3, BigInteger par4) { return null; } diff --git a/src/minecraft/net/minecraft/src/BlockTripWireSource.java b/src/minecraft/net/minecraft/src/BlockTripWireSource.java index 320daaa..180025f 100644 --- a/src/minecraft/net/minecraft/src/BlockTripWireSource.java +++ b/src/minecraft/net/minecraft/src/BlockTripWireSource.java @@ -16,7 +16,7 @@ public class BlockTripWireSource extends Block * Returns a bounding box from the pool of bounding boxes (this means this box can change after the pool has been * cleared to be reused) */ - public AxisAlignedBB getCollisionBoundingBoxFromPool(World par1World, int par2, int par3, int par4) + public AxisAlignedBB getCollisionBoundingBoxFromPool(World par1World, BigInteger par2, int par3, BigInteger par4) { return null; } diff --git a/src/minecraft/net/minecraft/src/BlockVine.java b/src/minecraft/net/minecraft/src/BlockVine.java index a69928a..c4bbbea 100644 --- a/src/minecraft/net/minecraft/src/BlockVine.java +++ b/src/minecraft/net/minecraft/src/BlockVine.java @@ -120,7 +120,7 @@ public class BlockVine extends Block * Returns a bounding box from the pool of bounding boxes (this means this box can change after the pool has been * cleared to be reused) */ - public AxisAlignedBB getCollisionBoundingBoxFromPool(World par1World, int par2, int par3, int par4) + public AxisAlignedBB getCollisionBoundingBoxFromPool(World par1World, BigInteger par2, int par3, BigInteger par4) { return null; } diff --git a/src/minecraft/net/minecraft/src/BlockWeb.java b/src/minecraft/net/minecraft/src/BlockWeb.java index e4d720e..8cd52c6 100644 --- a/src/minecraft/net/minecraft/src/BlockWeb.java +++ b/src/minecraft/net/minecraft/src/BlockWeb.java @@ -2,6 +2,8 @@ package net.minecraft.src; import java.util.Random; +import org.mcmodule.math.BigInteger; + public class BlockWeb extends Block { public BlockWeb(int par1, int par2) @@ -31,7 +33,7 @@ public class BlockWeb extends Block * Returns a bounding box from the pool of bounding boxes (this means this box can change after the pool has been * cleared to be reused) */ - public AxisAlignedBB getCollisionBoundingBoxFromPool(World par1World, int par2, int par3, int par4) + public AxisAlignedBB getCollisionBoundingBoxFromPool(World par1World, BigInteger par2, int par3, BigInteger par4) { return null; }