generated from krampus/template-godot4
Grunk alarm shriek SFX
This commit is contained in:
parent
e79a367277
commit
12a43946f4
BIN
asset_dev/sfx/alarm_screech.aup3
Normal file
BIN
asset_dev/sfx/alarm_screech.aup3
Normal file
Binary file not shown.
BIN
asset_dev/sfx/alarm_screech_2.aup3
Normal file
BIN
asset_dev/sfx/alarm_screech_2.aup3
Normal file
Binary file not shown.
BIN
asset_dev/sfx/alarm_screech_2.aup3-shm
Normal file
BIN
asset_dev/sfx/alarm_screech_2.aup3-shm
Normal file
Binary file not shown.
BIN
asset_dev/sfx/alarm_screech_2.aup3-wal
Normal file
BIN
asset_dev/sfx/alarm_screech_2.aup3-wal
Normal file
Binary file not shown.
BIN
assets/sfx/grunk/alarm_screech.wav
Normal file
BIN
assets/sfx/grunk/alarm_screech.wav
Normal file
Binary file not shown.
24
assets/sfx/grunk/alarm_screech.wav.import
Normal file
24
assets/sfx/grunk/alarm_screech.wav.import
Normal file
@ -0,0 +1,24 @@
|
||||
[remap]
|
||||
|
||||
importer="wav"
|
||||
type="AudioStreamWAV"
|
||||
uid="uid://hgmlqv0ss85r"
|
||||
path="res://.godot/imported/alarm_screech.wav-99f30850091e72de3c561e544b0403c0.sample"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/sfx/grunk/alarm_screech.wav"
|
||||
dest_files=["res://.godot/imported/alarm_screech.wav-99f30850091e72de3c561e544b0403c0.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
|
BIN
assets/sfx/grunk/alarm_screech_2.wav
Normal file
BIN
assets/sfx/grunk/alarm_screech_2.wav
Normal file
Binary file not shown.
24
assets/sfx/grunk/alarm_screech_2.wav.import
Normal file
24
assets/sfx/grunk/alarm_screech_2.wav.import
Normal file
@ -0,0 +1,24 @@
|
||||
[remap]
|
||||
|
||||
importer="wav"
|
||||
type="AudioStreamWAV"
|
||||
uid="uid://ypk1d4adrcs"
|
||||
path="res://.godot/imported/alarm_screech_2.wav-3e4031c4a9d371f7d272e525f351a120.sample"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/sfx/grunk/alarm_screech_2.wav"
|
||||
dest_files=["res://.godot/imported/alarm_screech_2.wav-3e4031c4a9d371f7d272e525f351a120.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
|
@ -103,6 +103,66 @@ _data = {
|
||||
}
|
||||
point_count = 2
|
||||
|
||||
[sub_resource type="Animation" id="Animation_ta4yu"]
|
||||
length = 0.001
|
||||
tracks/0/type = "bezier"
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/path = NodePath("Path3D:curve:point_1/position:x")
|
||||
tracks/0/interp = 1
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/keys = {
|
||||
"handle_modes": PackedInt32Array(0),
|
||||
"points": PackedFloat32Array(0, -0.25, 0, 0.25, 0),
|
||||
"times": PackedFloat32Array(0)
|
||||
}
|
||||
tracks/1/type = "bezier"
|
||||
tracks/1/imported = false
|
||||
tracks/1/enabled = true
|
||||
tracks/1/path = NodePath("Path3D:curve:point_1/position:y")
|
||||
tracks/1/interp = 1
|
||||
tracks/1/loop_wrap = true
|
||||
tracks/1/keys = {
|
||||
"handle_modes": PackedInt32Array(0),
|
||||
"points": PackedFloat32Array(-1.4, -0.25, 0, 0.25, 0),
|
||||
"times": PackedFloat32Array(0)
|
||||
}
|
||||
tracks/2/type = "bezier"
|
||||
tracks/2/imported = false
|
||||
tracks/2/enabled = true
|
||||
tracks/2/path = NodePath("Path3D:curve:point_1/position:z")
|
||||
tracks/2/interp = 1
|
||||
tracks/2/loop_wrap = true
|
||||
tracks/2/keys = {
|
||||
"handle_modes": PackedInt32Array(0),
|
||||
"points": PackedFloat32Array(0, -0.25, 0, 0.25, 0),
|
||||
"times": PackedFloat32Array(0)
|
||||
}
|
||||
tracks/3/type = "value"
|
||||
tracks/3/imported = false
|
||||
tracks/3/enabled = true
|
||||
tracks/3/path = NodePath("Path3D/GrunkTerminal:rotation")
|
||||
tracks/3/interp = 1
|
||||
tracks/3/loop_wrap = true
|
||||
tracks/3/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [Vector3(0.2618, 1.5708, 0)]
|
||||
}
|
||||
tracks/4/type = "value"
|
||||
tracks/4/imported = false
|
||||
tracks/4/enabled = true
|
||||
tracks/4/path = NodePath("Path3D/GrunkTerminal/AudioStreamPlayer3D:playing")
|
||||
tracks/4/interp = 1
|
||||
tracks/4/loop_wrap = true
|
||||
tracks/4/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 1,
|
||||
"values": [false]
|
||||
}
|
||||
|
||||
[sub_resource type="Animation" id="Animation_i4yi7"]
|
||||
resource_name = "jangle"
|
||||
length = 3.0
|
||||
@ -164,66 +224,6 @@ tracks/4/keys = {
|
||||
"values": [true]
|
||||
}
|
||||
|
||||
[sub_resource type="Animation" id="Animation_ta4yu"]
|
||||
length = 0.001
|
||||
tracks/0/type = "bezier"
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/path = NodePath("Path3D:curve:point_1/position:x")
|
||||
tracks/0/interp = 1
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/keys = {
|
||||
"handle_modes": PackedInt32Array(0),
|
||||
"points": PackedFloat32Array(0, -0.25, 0, 0.25, 0),
|
||||
"times": PackedFloat32Array(0)
|
||||
}
|
||||
tracks/1/type = "bezier"
|
||||
tracks/1/imported = false
|
||||
tracks/1/enabled = true
|
||||
tracks/1/path = NodePath("Path3D:curve:point_1/position:y")
|
||||
tracks/1/interp = 1
|
||||
tracks/1/loop_wrap = true
|
||||
tracks/1/keys = {
|
||||
"handle_modes": PackedInt32Array(0),
|
||||
"points": PackedFloat32Array(-1.4, -0.25, 0, 0.25, 0),
|
||||
"times": PackedFloat32Array(0)
|
||||
}
|
||||
tracks/2/type = "bezier"
|
||||
tracks/2/imported = false
|
||||
tracks/2/enabled = true
|
||||
tracks/2/path = NodePath("Path3D:curve:point_1/position:z")
|
||||
tracks/2/interp = 1
|
||||
tracks/2/loop_wrap = true
|
||||
tracks/2/keys = {
|
||||
"handle_modes": PackedInt32Array(0),
|
||||
"points": PackedFloat32Array(0, -0.25, 0, 0.25, 0),
|
||||
"times": PackedFloat32Array(0)
|
||||
}
|
||||
tracks/3/type = "value"
|
||||
tracks/3/imported = false
|
||||
tracks/3/enabled = true
|
||||
tracks/3/path = NodePath("Path3D/GrunkTerminal:rotation")
|
||||
tracks/3/interp = 1
|
||||
tracks/3/loop_wrap = true
|
||||
tracks/3/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [Vector3(0.2618, 1.5708, 0)]
|
||||
}
|
||||
tracks/4/type = "value"
|
||||
tracks/4/imported = false
|
||||
tracks/4/enabled = true
|
||||
tracks/4/path = NodePath("Path3D/GrunkTerminal/AudioStreamPlayer3D:playing")
|
||||
tracks/4/interp = 1
|
||||
tracks/4/loop_wrap = true
|
||||
tracks/4/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 1,
|
||||
"values": [false]
|
||||
}
|
||||
|
||||
[sub_resource type="AnimationLibrary" id="AnimationLibrary_fw23o"]
|
||||
_data = {
|
||||
&"RESET": SubResource("Animation_ta4yu"),
|
||||
@ -233,6 +233,21 @@ _data = {
|
||||
[sub_resource type="BoxShape3D" id="BoxShape3D_nps14"]
|
||||
size = Vector3(3, 3, 4)
|
||||
|
||||
[sub_resource type="Animation" id="Animation_kkevb"]
|
||||
length = 0.001
|
||||
tracks/0/type = "value"
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/path = NodePath("Door:position")
|
||||
tracks/0/interp = 1
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [Vector3(0, -0.3, 0)]
|
||||
}
|
||||
|
||||
[sub_resource type="Animation" id="Animation_nps14"]
|
||||
resource_name = "open"
|
||||
length = 0.2
|
||||
@ -249,21 +264,6 @@ tracks/0/keys = {
|
||||
"values": [Vector3(0, -0.3, 0), Vector3(0, 2.25, 0)]
|
||||
}
|
||||
|
||||
[sub_resource type="Animation" id="Animation_kkevb"]
|
||||
length = 0.001
|
||||
tracks/0/type = "value"
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/path = NodePath("Door:position")
|
||||
tracks/0/interp = 1
|
||||
tracks/0/loop_wrap = true
|
||||
tracks/0/keys = {
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [Vector3(0, -0.3, 0)]
|
||||
}
|
||||
|
||||
[sub_resource type="AnimationLibrary" id="AnimationLibrary_kkevb"]
|
||||
_data = {
|
||||
&"RESET": SubResource("Animation_kkevb"),
|
||||
@ -363,7 +363,7 @@ curve = SubResource("Curve3D_ta4yu")
|
||||
script = ExtResource("13_i4yi7")
|
||||
|
||||
[node name="GrunkTerminal" parent="TerminalCable/Path3D" instance=ExtResource("13_3trrp")]
|
||||
transform = Transform3D(-4.37114e-08, 0.258819, 0.965926, 0, 0.965926, -0.258819, -1, -1.13134e-08, -4.2222e-08, 0, -1.4, 0)
|
||||
transform = Transform3D(-3.61999e-06, 0.25882, 0.965926, 0, 0.965926, -0.25882, -1, -9.36925e-07, -3.49664e-06, 0, -1.4, 0)
|
||||
|
||||
[node name="AudioStreamPlayer3D" type="AudioStreamPlayer3D" parent="TerminalCable/Path3D/GrunkTerminal"]
|
||||
stream = ExtResource("14_was05")
|
||||
|
@ -15,6 +15,7 @@ var _busy := false
|
||||
@onready var pulse_listener_timer: Timer = %PulseListenerTimer
|
||||
@onready var animation_player: AnimationPlayer = $FrameSkipper/AlarmMesh/AnimationPlayer
|
||||
@onready var bud: MeshInstance3D = $FrameSkipper/AlarmMesh/Armature/Skeleton3D/Bud
|
||||
@onready var alarm_sfx: AudioStreamPlayer3D = %AlarmSFX
|
||||
|
||||
|
||||
## Trigger this alarm.
|
||||
@ -25,6 +26,7 @@ func trigger() -> void:
|
||||
_busy = true
|
||||
Game.manager.raise_alert(ALERT_DELTA)
|
||||
animation_player.play("trigger")
|
||||
alarm_sfx.play()
|
||||
|
||||
|
||||
## Pulse this alarm, resetting the pulse countdown until triggering.
|
||||
|
@ -1,10 +1,11 @@
|
||||
[gd_scene load_steps=9 format=4 uid="uid://dgeg3kkogm71m"]
|
||||
[gd_scene load_steps=10 format=4 uid="uid://dgeg3kkogm71m"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://djb5tabjcvwkt" path="res://src/world/mechanics/alarm/gunk_alarm.gd" id="1_piaxx"]
|
||||
[ext_resource type="PackedScene" uid="uid://60ks4l42qxia" path="res://assets/grunk/alarm/alarm.gltf" id="2_6vdvf"]
|
||||
[ext_resource type="Script" uid="uid://bukihqt1lybnx" path="res://src/util/frame_skipper.gd" id="2_gujky"]
|
||||
[ext_resource type="Material" uid="uid://bmab6i16v748m" path="res://assets/materials/grunk_jittery.material" id="3_g4yos"]
|
||||
[ext_resource type="Material" uid="uid://cdpvcruywnp4x" path="res://src/world/mechanics/alarm/alarm_core.material" id="4_c5y52"]
|
||||
[ext_resource type="AudioStream" uid="uid://ypk1d4adrcs" path="res://assets/sfx/grunk/alarm_screech_2.wav" id="6_6vdvf"]
|
||||
|
||||
[sub_resource type="ArrayMesh" id="ArrayMesh_c5y52"]
|
||||
resource_local_to_scene = true
|
||||
@ -99,7 +100,7 @@ bones/28/rotation = Quaternion(0.362943, -7.93195e-08, 1.03952e-07, 0.931811)
|
||||
mesh = SubResource("ArrayMesh_c5y52")
|
||||
|
||||
[node name="AnimationPlayer" parent="FrameSkipper/AlarmMesh" index="1"]
|
||||
speed_scale = 4.0
|
||||
speed_scale = 7.4
|
||||
|
||||
[node name="CollisionMesh" type="MeshInstance3D" parent="."]
|
||||
transform = Transform3D(0.906308, 0, -0.422618, 0, 1, 0, 0.422618, 0, 0.906308, 0, 0.2, 0)
|
||||
@ -114,6 +115,11 @@ shape = SubResource("ConcavePolygonShape3D_bxx3m")
|
||||
unique_name_in_owner = true
|
||||
one_shot = true
|
||||
|
||||
[node name="AlarmSFX" type="AudioStreamPlayer3D" parent="."]
|
||||
unique_name_in_owner = true
|
||||
stream = ExtResource("6_6vdvf")
|
||||
pitch_scale = 1.1
|
||||
|
||||
[connection signal="timeout" from="PulseListenerTimer" to="." method="trigger"]
|
||||
|
||||
[editable path="FrameSkipper/AlarmMesh"]
|
||||
|
@ -60,7 +60,7 @@
|
||||
- [x] switch OK
|
||||
- [ ] switch activation
|
||||
- [x] bulkhead opening
|
||||
- [ ] grunk alarm shriek
|
||||
- [x] grunk alarm shriek
|
||||
- [ ] grunk relay chitter
|
||||
- [ ] grunk chittering
|
||||
- [ ] grunkbeast???
|
||||
|
Loading…
x
Reference in New Issue
Block a user