2024-01-29 01:52:01 +01:00
|
|
|
extends Area2D
|
|
|
|
var velocity: Vector2 = Vector2()
|
2024-01-29 03:42:38 +01:00
|
|
|
var direction
|
|
|
|
var speed = 100
|
|
|
|
var btype
|
2024-03-24 19:23:12 +01:00
|
|
|
var isvisible
|
2024-01-29 01:52:01 +01:00
|
|
|
# Called when the node enters the scene tree for the first time.
|
|
|
|
func _ready():
|
2024-03-24 19:23:12 +01:00
|
|
|
isvisible = $VisibleOnScreenNotifier2D
|
2024-01-29 03:42:38 +01:00
|
|
|
add_to_group(btype)
|
|
|
|
#pass # Replace with function body.
|
2024-01-29 01:52:01 +01:00
|
|
|
|
|
|
|
|
|
|
|
# Called every frame. 'delta' is the elapsed time since the previous frame.
|
|
|
|
func _process(delta):
|
|
|
|
pass
|
|
|
|
|
|
|
|
func _physics_process(delta):
|
2024-03-24 19:23:12 +01:00
|
|
|
if isvisible.is_on_screen():
|
|
|
|
if direction == null:
|
|
|
|
position += velocity * delta
|
|
|
|
else:
|
|
|
|
position += speed * delta * direction
|
2024-01-29 01:52:01 +01:00
|
|
|
|
|
|
|
|
|
|
|
func _on_body_entered(body):
|
2024-01-29 03:42:38 +01:00
|
|
|
if !body.is_in_group(btype):
|
2024-01-30 04:05:17 +01:00
|
|
|
if body.is_in_group("players") || body.is_in_group("boss") || body.is_in_group("enemies"):
|
|
|
|
if body.weakness == 3:
|
|
|
|
print("weak to fire")
|
2024-01-29 01:52:01 +01:00
|
|
|
#if body.is_in_group("players"):
|
|
|
|
# Global.live = 2
|
|
|
|
#elif body.is_in_group("enemies"):
|
|
|
|
# Global.live = 3
|
2024-01-29 01:57:21 +01:00
|
|
|
#elif body.is_in_group("boss"):
|
|
|
|
# Global.live = 3
|
2024-01-29 03:42:38 +01:00
|
|
|
queue_free()
|
2024-01-29 01:52:01 +01:00
|
|
|
|
|
|
|
|
2024-01-29 03:42:38 +01:00
|
|
|
|
|
|
|
|
|
|
|
func _on_area_entered(area):
|
|
|
|
if !area.is_in_group(btype):
|
|
|
|
queue_free()
|
|
|
|
#pass # Replace with function body.
|