This commit is contained in:
redglow
2026-07-27 19:51:17 +02:00
parent dad5027e0e
commit fc1df2f740
8 changed files with 38 additions and 21 deletions
+3 -10
View File
@@ -8,13 +8,14 @@ namespace GodotHostTest.Game.Turret;
public partial class Turret : Sprite2D
{
[Export] private Node2D _launcher = null!;
[Inject] private ILogger<Turret> _logger = null!;
[Export] private PackedScene _projectilePackedScene = null!;
private double _rotationDirection;
[Export] private double _rotationSpeed = 6;
[Inject] private ISceneInstantiator _sceneInstantiator = null!;
[Export] private double _slowDownFactor = 0.3;
private void OnTimerTimeout()
{
@@ -24,20 +25,12 @@ public partial class Turret : Sprite2D
_logger.LogInformation("Projectile launched.");
}
public override void _Input(InputEvent @event)
{
_rotationDirection = 0;
if (@event.IsActionPressed("rotate_clockwise")) _rotationDirection = 1;
if (@event.IsActionPressed("rotate_counterclockwise")) _rotationDirection = -1;
}
public override void _PhysicsProcess(double delta)
{
_rotationDirection = 0;
if (Input.IsActionPressed("rotate_clockwise")) _rotationDirection = 1;
if (Input.IsActionPressed("rotate_counterclockwise")) _rotationDirection = -1;
if (Input.IsActionPressed("slow_down")) _rotationDirection *= _slowDownFactor;
_launcher.Rotation += (float)(_rotationSpeed * delta * _rotationDirection);
base._PhysicsProcess(delta);