GodotTutorial/Scripts/Abdullah.cs

24 lines
635 B
C#

using Godot;
namespace Tutorial1.Scripts;
public partial class Abdullah : Sprite2D {
private Timer clock;
[Signal] public delegate void MovedEventHandler(float x, float y);
public override void _Ready() {
clock = GetNode<Timer>("Clock");
clock.WaitTime = 1;
clock.Timeout += ClockOnTimeout;
clock.Start();
Moved += (x, y) => GD.Print($"Moved x={x},y={y}");
}
private void ClockOnTimeout() {
Vector2 newPosition = new(GD.RandRange(0, 500), GD.RandRange(0, 500));
Position = newPosition;
EmitSignal("Moved", newPosition.X, newPosition.Y);
}
}