diff --git a/assets/sound/error_008.ogg b/assets/sound/error_008.ogg new file mode 100644 index 0000000..8ed96e4 Binary files /dev/null and b/assets/sound/error_008.ogg differ diff --git a/assets/sound/error_008.ogg.import b/assets/sound/error_008.ogg.import new file mode 100644 index 0000000..e8d8e40 --- /dev/null +++ b/assets/sound/error_008.ogg.import @@ -0,0 +1,15 @@ +[remap] + +importer="ogg_vorbis" +type="AudioStreamOGGVorbis" +path="res://.import/error_008.ogg-8e35fe844dea9a9ba58ee9b53471dbce.oggstr" + +[deps] + +source_file="res://assets/sound/error_008.ogg" +dest_files=[ "res://.import/error_008.ogg-8e35fe844dea9a9ba58ee9b53471dbce.oggstr" ] + +[params] + +loop=false +loop_offset=0 diff --git a/scenes/power_station.tscn b/scenes/power_station.tscn index 60c5f38..57043a7 100644 --- a/scenes/power_station.tscn +++ b/scenes/power_station.tscn @@ -1,7 +1,9 @@ -[gd_scene load_steps=4 format=2] +[gd_scene load_steps=6 format=2] [ext_resource path="res://scripts/power_station.gd" type="Script" id=1] [ext_resource path="res://scenes/coin_machine.tscn" type="PackedScene" id=2] +[ext_resource path="res://assets/sound/forceField_004.ogg" type="AudioStream" id=3] +[ext_resource path="res://assets/sound/error_008.ogg" type="AudioStream" id=4] [sub_resource type="CubeMesh" id=1] @@ -21,4 +23,12 @@ mesh = SubResource( 1 ) transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0.0275149, 0.721019, 1.58046 ) billboard = 1 +[node name="sounds" type="Node" parent="."] + +[node name="charge_get" type="AudioStreamPlayer" parent="sounds"] +stream = ExtResource( 3 ) + +[node name="error" type="AudioStreamPlayer" parent="sounds"] +stream = ExtResource( 4 ) + [connection signal="coin_requirement_met" from="coin_machine" to="." method="_on_coin_machine_coin_requirement_met"] diff --git a/scripts/power_station.gd b/scripts/power_station.gd index af0b532..13d1823 100644 --- a/scripts/power_station.gd +++ b/scripts/power_station.gd @@ -32,4 +32,9 @@ func collect_charges_from_station(): func _on_coin_machine_coin_requirement_met(player): assert(player.has_method("modify_inventory")) - player.modify_inventory("coins", collect_charges_from_station()) + var charges = collect_charges_from_station() + player.modify_inventory("coins", charges) + if charges > 0: + $sounds/charge_get.play() + else: + $sounds/error.play()