starfighter/MB_FYP/script/Laser.cs

30 lines
551 B
C#
Raw Normal View History

using Godot;
using System;
public partial class Laser : Area2D
{
[Export]
public int Speed { get; set;} = 2000;
public Vector2 MovementVector { get; set; } = new Vector2(0, -1);
2023-12-08 14:21:45 +00:00
private void _on_visible_on_screen_notifier_2d_screen_exited()
{
QueueFree();
}
2023-12-08 14:21:45 +00:00
public override void _PhysicsProcess(double delta)
{
GlobalPosition += MovementVector.Rotated(Rotation) * Speed * (float)delta;
}
2023-12-08 14:21:45 +00:00
private void OnAreaEntered(Area2D area)
{
if (area is asteroid)
{
asteroid a = (asteroid)area;
a.Explode();
QueueFree();
}
}
}