aboutsummaryrefslogtreecommitdiff
path: root/Minecraft.World/OcelotSitOnTileGoal.cpp
diff options
context:
space:
mode:
authordaoge <3523206925@qq.com>2026-03-03 03:04:10 +0800
committerGitHub <noreply@github.com>2026-03-03 03:04:10 +0800
commitb3feddfef372618c8a9d7a0abcaf18cfad866c18 (patch)
tree267761c3bb39241ba5c347bfbe2254d06686e287 /Minecraft.World/OcelotSitOnTileGoal.cpp
parent84c31a2331f7a0ec85b9d438992e244f60e5020f (diff)
feat: TU19 (Dec 2014) Features & Content (#155)
* try to resolve merge conflict * feat: TU19 (Dec 2014) Features & Content (#32) * December 2014 files * Working release build * Fix compilation issues * Add sound to Windows64Media * Add DLC content and force Tutorial DLC * Revert "Add DLC content and force Tutorial DLC" This reverts commit 97a43994725008e35fceb984d5549df9c8cea470. * Disable broken light packing * Disable breakpoint during DLC texture map load Allows DLC loading but the DLC textures are still broken * Fix post build not working * ... * fix vs2022 build * fix cmake build --------- Co-authored-by: Loki <lokirautio@gmail.com>
Diffstat (limited to 'Minecraft.World/OcelotSitOnTileGoal.cpp')
-rw-r--r--Minecraft.World/OcelotSitOnTileGoal.cpp18
1 files changed, 11 insertions, 7 deletions
diff --git a/Minecraft.World/OcelotSitOnTileGoal.cpp b/Minecraft.World/OcelotSitOnTileGoal.cpp
index f5cf7066..a35537fb 100644
--- a/Minecraft.World/OcelotSitOnTileGoal.cpp
+++ b/Minecraft.World/OcelotSitOnTileGoal.cpp
@@ -15,7 +15,7 @@ const int OcelotSitOnTileGoal::SIT_TICKS = 60 * SharedConstants::TICKS_PER_SECON
const int OcelotSitOnTileGoal::SEARCH_RANGE = 8;
const double OcelotSitOnTileGoal::SIT_CHANCE = 0.0065f;
-OcelotSitOnTileGoal::OcelotSitOnTileGoal(Ozelot *ocelot, float speed)
+OcelotSitOnTileGoal::OcelotSitOnTileGoal(Ocelot *ocelot, double speedModifier)
{
_tick = 0;
tryTicks = 0;
@@ -25,7 +25,7 @@ OcelotSitOnTileGoal::OcelotSitOnTileGoal(Ozelot *ocelot, float speed)
tileZ = 0;
this->ocelot = ocelot;
- this->speed = speed;
+ this->speedModifier = speedModifier;
setRequiredControlFlags(Control::MoveControlFlag | Control::JumpControlFlag);
}
@@ -41,16 +41,20 @@ bool OcelotSitOnTileGoal::canContinueToUse()
void OcelotSitOnTileGoal::start()
{
- ocelot->getNavigation()->moveTo((float) tileX + 0.5, tileY + 1, (float) tileZ + 0.5, speed);
+ ocelot->getNavigation()->moveTo((float) tileX + 0.5, tileY + 1, (float) tileZ + 0.5, speedModifier);
_tick = 0;
tryTicks = 0;
maxTicks = ocelot->getRandom()->nextInt(ocelot->getRandom()->nextInt(SIT_TICKS) + SIT_TICKS) + SIT_TICKS;
ocelot->getSitGoal()->wantToSit(false);
+
+ ocelot->setSittingOnTile(true); // 4J-Added.
}
void OcelotSitOnTileGoal::stop()
{
ocelot->setSitting(false);
+
+ ocelot->setSittingOnTile(false); // 4J-Added.
}
void OcelotSitOnTileGoal::tick()
@@ -60,7 +64,7 @@ void OcelotSitOnTileGoal::tick()
if (ocelot->distanceToSqr(tileX, tileY + 1, tileZ) > 1)
{
ocelot->setSitting(false);
- ocelot->getNavigation()->moveTo((float) tileX + 0.5, tileY + 1, (float) tileZ + 0.5, speed);
+ ocelot->getNavigation()->moveTo((float) tileX + 0.5, tileY + 1, (float) tileZ + 0.5, speedModifier);
tryTicks++;
}
else if (!ocelot->isSitting())
@@ -88,9 +92,9 @@ bool OcelotSitOnTileGoal::findNearestTile()
if (dist < distSqr)
{
- this->tileX = x;
- this->tileY = y;
- this->tileZ = z;
+ tileX = x;
+ tileY = y;
+ tileZ = z;
distSqr = dist;
}
}