Fix incorrect relative coords usage in farmland handler (#4690)
This commit is contained in:
parent
e6cc792cef
commit
c0e7708aa7
@ -120,7 +120,8 @@ public:
|
|||||||
/** Returns true if there's either a water source block close enough to hydrate the specified position, or it's raining there. */
|
/** Returns true if there's either a water source block close enough to hydrate the specified position, or it's raining there. */
|
||||||
bool IsWaterInNear(cChunk & a_Chunk, const Vector3i a_RelPos)
|
bool IsWaterInNear(cChunk & a_Chunk, const Vector3i a_RelPos)
|
||||||
{
|
{
|
||||||
if (a_Chunk.GetWorld()->IsWeatherWetAtXYZ(a_RelPos))
|
const auto WorldPos = a_Chunk.RelativeToAbsolute(a_RelPos);
|
||||||
|
if (a_Chunk.GetWorld()->IsWeatherWetAtXYZ(WorldPos))
|
||||||
{
|
{
|
||||||
// Rain hydrates farmland, too
|
// Rain hydrates farmland, too
|
||||||
return true;
|
return true;
|
||||||
@ -130,7 +131,6 @@ public:
|
|||||||
// Ref.: https://minecraft.gamepedia.com/Farmland#Hydration
|
// Ref.: https://minecraft.gamepedia.com/Farmland#Hydration
|
||||||
// TODO: Rewrite this to use the chunk and its neighbors directly
|
// TODO: Rewrite this to use the chunk and its neighbors directly
|
||||||
cBlockArea Area;
|
cBlockArea Area;
|
||||||
auto WorldPos = a_Chunk.RelativeToAbsolute(a_RelPos);
|
|
||||||
if (!Area.Read(*a_Chunk.GetWorld(), WorldPos - Vector3i(4, 0, 4), WorldPos + Vector3i(4, 1, 4)))
|
if (!Area.Read(*a_Chunk.GetWorld(), WorldPos - Vector3i(4, 0, 4), WorldPos + Vector3i(4, 1, 4)))
|
||||||
{
|
{
|
||||||
// Too close to the world edge, cannot check surroundings
|
// Too close to the world edge, cannot check surroundings
|
||||||
|
Loading…
Reference in New Issue
Block a user