public override void Tick(double delta) { if (!game.World.HasBlocks) { return; } StepSize = Hacks.FullBlockStep && Hacks.Enabled && Hacks.CanAnyHacks && Hacks.CanSpeed ? 1 : 0.5f; OldVelocity = Velocity; float xMoving = 0, zMoving = 0; interp.AdvanceState(); bool wasOnGround = onGround; HandleInput(ref xMoving, ref zMoving); if (!Hacks.Floating && Hacks.CanBePushed) { physics.DoEntityPush(); } // Immediate stop in noclip mode if (!Hacks.NoclipSlide && (Hacks.Noclip && xMoving == 0 && zMoving == 0)) { Velocity = Vector3.Zero; } physics.UpdateVelocityState(); physics.PhysicsTick(GetHeadingVelocity(zMoving, xMoving)); interp.next.Pos = Position; Position = interp.prev.Pos; anim.UpdateAnimState(interp.prev.Pos, interp.next.Pos, delta); tilt.UpdateAnimState(delta); CheckSkin(); sound.Tick(wasOnGround); }
public override void Tick(double delta) { if (game.World.IsNotLoaded) { return; } StepSize = Hacks.FullBlockStep && Hacks.Enabled && Hacks.CanAnyHacks && Hacks.CanSpeed ? 1 : 0.5f; OldVelocity = Velocity; float xMoving = 0, zMoving = 0; lastPos = Position = nextPos; lastYaw = nextYaw; lastPitch = nextPitch; bool wasOnGround = onGround; HandleInput(ref xMoving, ref zMoving); physics.DoEntityPush(ref xMoving, ref zMoving); physics.UpdateVelocityState(xMoving, zMoving); physics.PhysicsTick(xMoving, zMoving); nextPos = Position; Position = lastPos; anim.UpdateAnimState(lastPos, nextPos, delta); CheckSkin(); sound.Tick(wasOnGround); UpdateCurrentBodyYaw(); }
public override void Tick(double delta) { if (!game.World.HasBlocks) { return; } StepSize = Hacks.FullBlockStep && Hacks.Enabled && Hacks.CanAnyHacks && Hacks.CanSpeed ? 1 : 0.5f; OldVelocity = Velocity; float xMoving = 0, zMoving = 0; interp.AdvanceState(); bool wasOnGround = onGround; HandleInput(ref xMoving, ref zMoving); Hacks.Floating = Hacks.Noclip || Hacks.Flying; if (!Hacks.Floating && Hacks.CanBePushed) { physics.DoEntityPush(); } // Immediate stop in noclip mode if (!Hacks.NoclipSlide && (Hacks.Noclip && xMoving == 0 && zMoving == 0)) { Velocity = Vector3.Zero; } physics.UpdateVelocityState(); Vector3 headingVelocity = Utils.RotateY(xMoving, 0, zMoving, HeadYRadians); physics.PhysicsTick(headingVelocity); // Fixes high jump, when holding down a movement key, jump, fly, then let go of fly key if (Hacks.Floating) { Velocity.Y = 0.0f; } interp.next.Pos = Position; Position = interp.prev.Pos; anim.UpdateAnimState(interp.prev.Pos, interp.next.Pos, delta); tilt.UpdateAnimState(delta); CheckSkin(); sound.Tick(wasOnGround); }