Files
Voile/TestGame/TestPlayer.cs

36 lines
875 B
C#

using DaggerFramework;
using DaggerFramework.SceneGraph;
using DaggerFramework.Utils;
public class TestPlayer : RectangleShape2d
{
protected override void OnStart()
{
base.OnStart();
Color = Color.Cyan;
_camera = new Camera2d()
{
Current = true,
};
Layer.AddEntity(_camera);
}
protected override void OnUpdate(double dt)
{
base.OnUpdate(dt);
var sprinting = Input.IsActionDown("sprint");
_speed = sprinting ? 400f : 200f;
var velocity = Input.GetInputDirection("left", "right", "up", "down") * _speed;
Position += velocity * (float)dt;
_camera.Position = MathUtils.LerpVector2(_camera.Position, Position, dt * 5f);
}
private Logger _logger = new(nameof(TestPlayer));
private float _speed = 200f;
private Camera2d _camera;
}