Files
tbd-station-14/Content.Shared/Physics/MoverController.cs
DrSmugleaf 5fcd13d0e3 Add IEntity.IsWeightless extension method (#2255)
Checking manually every time wasn't that cool
2020-10-14 22:37:25 +02:00

34 lines
854 B
C#

#nullable enable
using Content.Shared.GameObjects.Components.Movement;
using Robust.Shared.GameObjects.Components;
using Robust.Shared.Maths;
using Robust.Shared.Physics;
namespace Content.Shared.Physics
{
public class MoverController : VirtualController
{
public override IPhysicsComponent? ControlledComponent { protected get; set; }
public void Move(Vector2 velocityDirection, float speed)
{
if (ControlledComponent?.Owner.IsWeightless() ?? false)
{
return;
}
Push(velocityDirection, speed);
}
public void Push(Vector2 velocityDirection, float speed)
{
LinearVelocity = velocityDirection * speed;
}
public void StopMoving()
{
LinearVelocity = Vector2.Zero;
}
}
}