Files
przygody-pana-cegly/scripts/components/Movement/SpaceshipMovementAbility.cs
2025-08-30 23:06:12 +02:00

29 lines
860 B
C#

using Godot;
namespace Mr.BrickAdventures.scripts.components;
[GlobalClass]
public partial class SpaceshipMovementAbility : MovementAbility
{
[Export] public float MaxSpeed { get; set; } = 300f;
[Export] public float Acceleration { get; set; } = 2000f;
[Export] public float Friction { get; set; } = 1700f;
public override Vector2 ProcessMovement(Vector2 currentVelocity, double delta)
{
if (_input == null) return Vector2.Zero;
var inputVector = _input.MoveDirection;
if (inputVector != Vector2.Zero)
{
currentVelocity = currentVelocity.MoveToward(inputVector * MaxSpeed, Acceleration * (float)delta);
}
else
{
currentVelocity = currentVelocity.MoveToward(Vector2.Zero, Friction * (float)delta);
}
return currentVelocity;
}
}