basic pew pew without damage or collision

This commit is contained in:
Medenos
2023-01-14 22:51:05 -05:00
parent 1d6a5eeea9
commit 4412fd21ea
31 changed files with 374 additions and 64 deletions

View File

@@ -0,0 +1,20 @@
extends Area2D
@export var DAMAGE = 1;
@export var SPEED = 800;
@export var LIFETIME = 3;
@onready var life_timer = $LifeTimer;
var velocity = Vector2.ZERO;
func _process(delta):
if velocity != Vector2.ZERO:
transform.origin += velocity * delta;
func launch(direction):
life_timer.start(LIFETIME);
velocity = direction * SPEED;
func _on_life_timer_timeout():
queue_free();

View File

@@ -0,0 +1,21 @@
[gd_scene load_steps=4 format=3 uid="uid://cpo8qy3y0fuui"]
[ext_resource type="Script" path="res://Projectiles/basic_projectile.gd" id="1_l2kyf"]
[ext_resource type="Texture2D" uid="uid://gqotbni355f" path="res://Sprites/placeholder_projectile.png" id="1_o7jy1"]
[sub_resource type="RectangleShape2D" id="RectangleShape2D_pp7ve"]
size = Vector2(10, 10)
[node name="basic_projectile" type="Area2D"]
script = ExtResource("1_l2kyf")
[node name="Sprite2D" type="Sprite2D" parent="."]
scale = Vector2(5, 5)
texture = ExtResource("1_o7jy1")
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
shape = SubResource("RectangleShape2D_pp7ve")
[node name="LifeTimer" type="Timer" parent="."]
[connection signal="timeout" from="LifeTimer" to="." method="_on_life_timer_timeout"]