diff --git a/assets/sfx/grunk/pump.wav b/assets/sfx/grunk/pump.wav new file mode 100644 index 0000000..16afa54 Binary files /dev/null and b/assets/sfx/grunk/pump.wav differ diff --git a/assets/sfx/grunk/pump.wav.import b/assets/sfx/grunk/pump.wav.import new file mode 100644 index 0000000..31b413a --- /dev/null +++ b/assets/sfx/grunk/pump.wav.import @@ -0,0 +1,24 @@ +[remap] + +importer="wav" +type="AudioStreamWAV" +uid="uid://cimw72d2lexvt" +path="res://.godot/imported/pump.wav-3af6b59129486d6bf0a5a519848e701a.sample" + +[deps] + +source_file="res://assets/sfx/grunk/pump.wav" +dest_files=["res://.godot/imported/pump.wav-3af6b59129486d6bf0a5a519848e701a.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 diff --git a/levels/ghost_ship/player_ship/player_ship.gd b/levels/ghost_ship/player_ship/player_ship.gd index 73c0920..c572579 100644 --- a/levels/ghost_ship/player_ship/player_ship.gd +++ b/levels/ghost_ship/player_ship/player_ship.gd @@ -9,6 +9,7 @@ const TANK_FILL_TIME := 1.0 @onready var tank_interactor: Interactive = %TankInteractor @onready var grunk_liquid: MeshInstance3D = %GrunkLiquid +@onready var grunk_pump_sfx: AudioStreamPlayer3D = %GrunkPumpSFX func _ready() -> void: @@ -27,6 +28,8 @@ func deposit_grunk() -> void: set_liquid_level(clampf(Game.manager.grunk_vault / MAX_GRUNK, 0.0, 1.0)) + grunk_pump_sfx.play() + func set_liquid_level(proportion: float) -> void: ( diff --git a/levels/ghost_ship/player_ship/player_ship.tscn b/levels/ghost_ship/player_ship/player_ship.tscn index e139306..bf51a91 100644 --- a/levels/ghost_ship/player_ship/player_ship.tscn +++ b/levels/ghost_ship/player_ship/player_ship.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=42 format=3 uid="uid://oowut88kr2ox"] +[gd_scene load_steps=44 format=3 uid="uid://oowut88kr2ox"] [ext_resource type="Script" uid="uid://lfd36ps52xgk" path="res://levels/ghost_ship/player_ship/player_ship.gd" id="1_0r2ng"] [ext_resource type="ArrayMesh" uid="uid://dq4aj5ph31rce" path="res://assets/level/player_ship/player_ship.obj" id="1_nafoa"] @@ -10,6 +10,7 @@ [ext_resource type="ArrayMesh" uid="uid://djgqnuxrja1mo" path="res://assets/level/player_ship/player_ship_tank_facade.obj" id="8_2mvif"] [ext_resource type="Shader" uid="uid://ckxc0ngd37rtk" path="res://src/shaders/gunk.gdshader" id="8_al8ma"] [ext_resource type="ArrayMesh" uid="uid://bc8457r4rxpey" path="res://assets/level/player_ship/grunk_liquid.obj" id="8_xuj2g"] +[ext_resource type="AudioStream" uid="uid://cimw72d2lexvt" path="res://assets/sfx/grunk/pump.wav" id="9_0e0pl"] [ext_resource type="Texture2D" uid="uid://cm1jrvx7ftx4c" path="res://assets/black.png" id="9_xuj2g"] [ext_resource type="FastNoiseLite" uid="uid://cnlvdtx68giv6" path="res://assets/materials/gunk_noise.tres" id="10_2mvif"] [ext_resource type="PackedScene" uid="uid://mgygam1kakb7" path="res://levels/ghost_ship/player_ship/grunk_terminal/grunk_terminal.tscn" id="13_3trrp"] @@ -35,6 +36,11 @@ texture_filter = 2 [sub_resource type="ConcavePolygonShape3D" id="ConcavePolygonShape3D_nafoa"] data = PackedVector3Array(2.5, 1, 5.5, 2.5, 1, -4.5001, 2.5, 2, 5.5, 2.5, 2, 5.5, 2.5, 1, -4.5001, 2.5, 2, -4.5001, 1.5, 3, 4.4999, 1.5, 3, -4.5001, -1.5, 3, 4.4999, -1.5, 3, 4.4999, 1.5, 3, -4.5001, -1.5, 3, -4.5001, -1.5, 3, -4.5001, 1.5, 3, -4.5001, -0.625, 3, -4.5001, -0.625, 3, -4.5001, 1.5, 3, -4.5001, 0.625, 3, -4.5001, -2.5, 1, -4.5001, -2.5, 1, 5.5, -2.5, 2, -4.5001, -2.5, 2, -4.5001, -2.5, 1, 5.5, -2.5, 2, 5.5, 2.5, 1, -4.5001, 1.5, 0, -4.5001, 2.5, 2, -4.5001, 2.5, 2, -4.5001, 1.5, 0, -4.5001, 1.5, 3, -4.5001, 0.625, 0, -4.5001, 1.5, 3, -4.5001, 1.5, 0, -4.5001, 0.625, 2.5, -4.5001, 1.5, 3, -4.5001, 0.625, 0, -4.5001, 0.625, 3, -4.5001, 1.5, 3, -4.5001, 0.625, 2.5, -4.5001, 0.625, 2.5, -4.5001, -0.625, 2.5, -4.5001, 0.625, 3, -4.5001, 0.625, 3, -4.5001, -0.625, 2.5, -4.5001, -0.625, 3, -4.5001, -0.625, 3, -4.5001, -0.625, 2.5, -4.5001, -1.5, 3, -4.5001, -1.5, 3, -4.5001, -0.625, 2.5, -4.5001, -1.5, 0, -4.5001, -1.5, 0, -4.5001, -0.625, 2.5, -4.5001, -0.625, 0, -4.5001, -1.5, 0, -4.5001, -2.5, 1, -4.5001, -1.5, 3, -4.5001, -1.5, 3, -4.5001, -2.5, 1, -4.5001, -2.5, 2, -4.5001, -2.5, 1, -4.5001, -1.5, 0, -4.5001, -2.5, 1, 5.5, -2.5, 1, 5.5, -1.5, 0, -4.5001, -1.5, 0, 4.4999, -2.5, 2, 5.5, -1.5, 3, 4.4999, -2.5, 2, -4.5001, -2.5, 2, -4.5001, -1.5, 3, 4.4999, -1.5, 3, -4.5001, 2.5, 1, 5.5, 1.5, 0, 4.4999, 2.5, 1, -4.5001, 2.5, 1, -4.5001, 1.5, 0, 4.4999, 1.5, 0, -4.5001, 2.5, 2, -4.5001, 1.5, 3, -4.5001, 2.5, 2, 5.5, 2.5, 2, 5.5, 1.5, 3, -4.5001, 1.5, 3, 4.4999, -1.5, 0, 4.4999, -1.5, 0, -4.5001, 1.5, 0, 4.4999, 1.5, 0, 4.4999, -1.5, 0, -4.5001, 1.5, 0, -4.5001, 1.5, 0, -4.5001, -1.5, 0, -4.5001, 0.625, 0, -4.5001, 0.625, 0, -4.5001, -1.5, 0, -4.5001, -0.625, 0, -4.5001, 0.625, 0, -4.5001, -0.625, 0, -4.5001, 0.625, 0, -4.75, 0.625, 0, -4.75, -0.625, 0, -4.5001, -0.625, 0, -4.75, -0.625, 2.5, -4.5001, 0.625, 2.5, -4.5001, -0.625, 2.5, -4.75, -0.625, 2.5, -4.75, 0.625, 2.5, -4.5001, 0.625, 2.5, -4.75, -0.625, 0, -4.5001, -0.625, 2.5, -4.5001, -0.625, 0, -4.75, -0.625, 0, -4.75, -0.625, 2.5, -4.5001, -0.625, 2.5, -4.75, 0.625, 2.5, -4.5001, 0.625, 0, -4.5001, 0.625, 2.5, -4.75, 0.625, 2.5, -4.75, 0.625, 0, -4.5001, 0.625, 0, -4.75, -1.5, 3, 4.5, -2.5, 2, 5.5, -1.5, 3, 7.5, -1.5, 3, 7.5, -2.5, 2, 5.5, -2.5, 2, 7.5, -1.5, 0, 7.5, 1.5, 0, 7.5, -2.5, 1, 7.5, -2.5, 1, 7.5, 1.5, 0, 7.5, -2.5, 2, 7.5, -2.5, 2, 7.5, 1.5, 0, 7.5, -1.5, 3, 7.5, -1.5, 3, 7.5, 1.5, 0, 7.5, 1.5, 3, 7.5, 1.5, 3, 7.5, 1.5, 0, 7.5, 2.5, 2, 7.5, 2.5, 2, 7.5, 1.5, 0, 7.5, 2.5, 1, 7.5, -2.5, 1, 5.5, -1.5, 0, 4.5, -2.5, 1, 7.5, -2.5, 1, 7.5, -1.5, 0, 4.5, -1.5, 0, 7.5, 2.5, 1, 5.5, 2.5, 2, 5.5, 2.5, 1, 7.5, 2.5, 1, 7.5, 2.5, 2, 5.5, 2.5, 2, 7.5, -2.5, 2, 5.5, -2.5, 1, 5.5, -2.5, 2, 7.5, -2.5, 2, 7.5, -2.5, 1, 5.5, -2.5, 1, 7.5, 2.5, 2, 5.5, 1.5, 3, 4.5, 2.5, 2, 7.5, 2.5, 2, 7.5, 1.5, 3, 4.5, 1.5, 3, 7.5, 1.5, 3, 4.5, -1.5, 3, 4.5, 1.5, 3, 7.5, 1.5, 3, 7.5, -1.5, 3, 4.5, -1.5, 3, 7.5, 1.5, 0, 4.5, 2.5, 1, 5.5, 1.5, 0, 7.5, 1.5, 0, 7.5, 2.5, 1, 5.5, 2.5, 1, 7.5, -1.5, 0, 4.5, 1.5, 0, 4.5, -1.5, 0, 7.5, -1.5, 0, 7.5, 1.5, 0, 4.5, 1.5, 0, 7.5, 1.5, 3, 4.5, 1.5, 0, 4.5, 2.5, 2, 5.5, 2.5, 2, 5.5, 1.5, 0, 4.5, 2.5, 1, 5.5, -2.5, 1, 5.5, -1.5, 0, 4.5, -2.5, 2, 5.5, -2.5, 2, 5.5, -1.5, 0, 4.5, -1.5, 3, 4.5, -1.5, 0, 4.5, 1.5, 0, 4.5, -1.5, 3, 4.5, -1.5, 3, 4.5, 1.5, 0, 4.5, 1.5, 3, 4.5, 1.25, 2.5, -4.75, 1.25, 3, -4.75, 0.625, 2.5, -4.75, 0.625, 2.5, -4.75, 0.625, 0, -4.75, 1.25, 2.5, -4.75, 1.25, 2.5, -4.75, 0.625, 0, -4.75, 1.25, 0, -4.75, 0.625, 2.5, -4.75, 1.25, 3, -4.75, -0.625, 2.5, -4.75, -0.625, 2.5, -4.75, 1.25, 3, -4.75, -1.25, 2.5, -4.75, -1.25, 2.5, -4.75, 1.25, 3, -4.75, -1.25, 3, -4.75, -1.25, 0, -4.75, -0.625, 2.5, -4.75, -1.25, 2.5, -4.75, -0.625, 0, -4.75, -0.625, 2.5, -4.75, -1.25, 0, -4.75, -1.25, 2.5, -4.75, -1.25, 3, -4.75, -1.25, 0, -4.75, -1.25, 0, -4.75, -1.25, 3, -4.75, -1.25, 0, -6.75, -1.25, 0, -6.75, -1.25, 3, -4.75, -1.25, 3, -6.75, -1.25, 3, -4.75, 1.25, 3, -4.75, -1.25, 3, -6.75, -1.25, 3, -6.75, 1.25, 3, -4.75, 1.25, 3, -6.75, 1.25, 0, -4.75, 0.625, 0, -4.75, 1.25, 0, -6.75, 1.25, 0, -6.75, 0.625, 0, -4.75, -1.25, 0, -6.75, -1.25, 0, -6.75, 0.625, 0, -4.75, -1.25, 0, -4.75, -1.25, 0, -4.75, 0.625, 0, -4.75, -0.625, 0, -4.75, 1.25, 2.5, -4.75, 1.25, 0, -4.75, 1.25, 3, -4.75, 1.25, 3, -4.75, 1.25, 0, -4.75, 1.25, 3, -6.75, 1.25, 3, -6.75, 1.25, 0, -4.75, 1.25, 0, -6.75) +[sub_resource type="AudioStreamRandomizer" id="AudioStreamRandomizer_53iah"] +random_pitch = 1.1 +streams_count = 1 +stream_0/stream = ExtResource("9_0e0pl") + [sub_resource type="SphereShape3D" id="SphereShape3D_e4hmc"] radius = 0.3 @@ -301,6 +307,7 @@ shape = SubResource("ConcavePolygonShape3D_nafoa") [node name="TankInteractor" type="StaticBody3D" parent="."] unique_name_in_owner = true +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.85, 1.35, 4.5) collision_layer = 2 collision_mask = 0 script = ExtResource("6_e4hmc") @@ -308,8 +315,15 @@ label = "GRUNK TANK" verb = "deposit" metadata/_custom_type_script = "uid://deg5xd87cy8rg" +[node name="GrunkPumpSFX" type="AudioStreamPlayer3D" parent="TankInteractor"] +unique_name_in_owner = true +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0.6) +stream = SubResource("AudioStreamRandomizer_53iah") +volume_db = -4.0 +unit_size = 3.0 +pitch_scale = 0.7 + [node name="CollisionShape3D" type="CollisionShape3D" parent="TankInteractor"] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.85, 1.35, 4.5) shape = SubResource("SphereShape3D_e4hmc") [node name="LiquidOffset" type="Node3D" parent="."] diff --git a/vault/TODO.md b/vault/TODO.md index f0ad821..7d88506 100644 --- a/vault/TODO.md +++ b/vault/TODO.md @@ -49,8 +49,8 @@ - [ ] ui bonk - [ ] prop clear glitter - [x] computer bleep on reload - - [ ] grunk tank deposit schlorp - - [ ] player ship door + - [x] grunk tank deposit schlorp + - [x] player ship door - [x] metal footsteps - [x] plastic footsteps - [x] grunk footsteps diff --git a/vault/assets/asset credits.md b/vault/assets/asset credits.md index 0e9b57e..fc77d11 100644 --- a/vault/assets/asset credits.md +++ b/vault/assets/asset credits.md @@ -51,4 +51,16 @@ - CC0 - retrieved from https://freesound.org/people/Clagnar/sounds/547256/ - assets/sfx/computer_noise.wav + - modified + - "door future open.wav" + - author: speakingmusic + - CC0 + - retrieved from https://freesound.org/people/speakingmusic/sounds/386073/ + - assets/sfx/space_door*.wav + - modified + - "Slime Creature Movement (large and messy)" + - author: SilverIllusionist + - CC BY 4.0 + - retrieved from https://freesound.org/people/SilverIllusionist/sounds/671112/ + - assets/sfx/grunk/pump.wav - modified \ No newline at end of file