tnt moves in water

This commit is contained in:
Lord_Cambion 2026-03-27 20:38:43 +01:00
parent 1767c635fe
commit 9602f2c5a2

View file

@ -67,11 +67,35 @@ void PrimedTnt::tick()
yo = y; yo = y;
zo = z; zo = z;
yd -= 0.04f; this->updateInWaterState();
move(xd, yd, zd); bool inWater = this->isInWater() || this->isInLava();
xd *= 0.98f;
yd *= 0.98f;
zd *= 0.98f; if (inWater)
{
yd -= 0.0392f;
}
else
{
yd -= 0.04f;
}
move(xd, yd, zd);
if (inWater)
{
xd *= 0.8f;
yd *= 0.8f;
zd *= 0.8f;
}
else
{
xd *= 0.98f;
yd *= 0.98f;
zd *= 0.98f;
}
if (onGround) if (onGround)
{ {
@ -121,4 +145,4 @@ float PrimedTnt::getShadowHeightOffs()
shared_ptr<LivingEntity> PrimedTnt::getOwner() shared_ptr<LivingEntity> PrimedTnt::getOwner()
{ {
return owner.lock(); return owner.lock();
} }