game: add hp pickup

This commit is contained in:
2025-08-20 05:36:23 +02:00
parent 1c85c94a9a
commit 2c781e4d2a
9 changed files with 44 additions and 9 deletions

View File

@@ -1,7 +1,6 @@
class_name PickupBase
extends Node2D
@export var value: float
@export var max_speed: float = 100.0
@export var min_speed: float = 10.0

View File

@@ -6,7 +6,7 @@
size = Vector2(10, 10)
[sub_resource type="CircleShape2D" id="CircleShape2D_oto2a"]
radius = 3.16228
radius = 4.0
[node name="PickupBase" type="Node2D" groups=["pickup"]]
script = ExtResource("1_oto2a")

View File

@@ -0,0 +1,14 @@
class_name PickupHP
extends PickupBase
@export var value: float = 25.0
@onready var collision_shape_2d: CollisionShape2D = $Area2D/CollisionShape2D
func pickup() -> void:
if not player:
push_error("pickup called on %s without player set" % self)
return
player.take_damage(-value)
queue_free()

View File

@@ -0,0 +1 @@
uid://c6t222lues8xe

View File

@@ -0,0 +1,12 @@
[gd_scene load_steps=4 format=3 uid="uid://cr8gj1dlloamp"]
[ext_resource type="PackedScene" uid="uid://dr80h4envloce" path="res://scenes/pickups/pickup_base.tscn" id="1_f4qop"]
[ext_resource type="Script" uid="uid://c6t222lues8xe" path="res://scenes/pickups/pickup_hp.gd" id="2_264us"]
[ext_resource type="Texture2D" uid="uid://cdsdhrtpbpqd4" path="res://assets/sprites/pickup_heart.png" id="3_264us"]
[node name="PickupHP" instance=ExtResource("1_f4qop")]
script = ExtResource("2_264us")
value = 25.0
[node name="Sprite2D" parent="." index="0"]
texture = ExtResource("3_264us")