This commit is contained in:
Andriy Yednarovych
2026-02-22 19:26:26 +01:00
parent fd1ff19c4c
commit e877c5f058
211 changed files with 9385 additions and 0 deletions

Binary file not shown.

View File

@@ -0,0 +1,24 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://b7nup12qxtlh"
path="res://.godot/imported/dungeon_discovery.wav-41484ca4e230435a886c5306ceaade95.sample"
[deps]
source_file="res://general/item-dropper/dungeon_discovery.wav"
dest_files=["res://.godot/imported/dungeon_discovery.wav-41484ca4e230435a886c5306ceaade95.sample"]
[params]
force/8_bit=false
force/mono=false
force/max_rate=false
force/max_rate_hz=44100
edit/trim=false
edit/normalize=false
edit/loop_mode=0
edit/loop_begin=0
edit/loop_end=-1
compress/mode=2

View File

@@ -0,0 +1,46 @@
@tool
class_name ItemDropper extends Node2D
const PICKUP = preload("res://items/item_pickup/item_pickup.tscn")
@export var item: ItemData : set = set_item_data
@onready var sprite: Sprite2D = $Sprite2D
@onready var dropped_data: PersistentDataHandler = $PersistentDataHandler
@onready var audio: AudioStreamPlayer = $AudioStreamPlayer
var dropped := false
func _ready() -> void:
if Engine.is_editor_hint():
update_texture()
return
sprite.visible = false
dropped_data.data_loaded.connect(on_data_loaded)
on_data_loaded()
func set_item_data(new_item: ItemData) -> void:
item = new_item
update_texture()
func update_texture() -> void:
if !Engine.is_editor_hint():
return
if item and sprite:
sprite.texture = item.texture
func on_data_loaded() -> void:
dropped = dropped_data.value
func drop_item() -> void:
if dropped:
return
dropped = true
var drop = PICKUP.instantiate() as ItemPickup
drop.item_data = item
add_child(drop)
drop.picked_up.connect(on_item_picked_up)
audio.play()
func on_item_picked_up() -> void:
dropped_data.set_value()

View File

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

View File

@@ -0,0 +1,26 @@
[gd_scene format=3 uid="uid://q756h6ku2kjn"]
[ext_resource type="Script" uid="uid://ce3vhcig6dc4p" path="res://general/item-dropper/item_dropper.gd" id="1_yo2da"]
[ext_resource type="Script" uid="uid://bej7822ail7o" path="res://general/persistent_data/persistent_data_handler.gd" id="2_syr8l"]
[ext_resource type="AudioStream" uid="uid://b7nup12qxtlh" path="res://general/item-dropper/dungeon_discovery.wav" id="2_u0i1k"]
[node name="ItemDropper" type="Node2D" unique_id=1807553228]
script = ExtResource("1_yo2da")
[node name="Sprite2D" type="Sprite2D" parent="." unique_id=1635927483]
[node name="Label" type="Label" parent="Sprite2D" unique_id=423753573]
offset_left = -40.0
offset_top = -24.0
offset_right = 43.0
offset_bottom = -1.0
theme_override_colors/font_outline_color = Color(0, 0, 0, 1)
theme_override_constants/outline_size = 6
text = "Item Drop "
[node name="AudioStreamPlayer" type="AudioStreamPlayer" parent="." unique_id=855210117]
stream = ExtResource("2_u0i1k")
[node name="PersistentDataHandler" type="Node" parent="." unique_id=213983155]
script = ExtResource("2_syr8l")
metadata/_custom_type_script = "uid://bej7822ail7o"