Add sounds

This commit is contained in:
karl 2020-02-02 13:59:16 +01:00
parent d6d2240540
commit dc56b6db25
13 changed files with 108 additions and 35 deletions

BIN
Audio/frog_sound.wav Normal file

Binary file not shown.

View File

@ -0,0 +1,21 @@
[remap]
importer="wav"
type="AudioStreamSample"
path="res://.import/frog_sound.wav-7b3422836f30107969b2eff5469093eb.sample"
[deps]
source_file="res://Audio/frog_sound.wav"
dest_files=[ "res://.import/frog_sound.wav-7b3422836f30107969b2eff5469093eb.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=false
compress/mode=0

BIN
Audio/punch_sound.wav Normal file

Binary file not shown.

View File

@ -0,0 +1,21 @@
[remap]
importer="wav"
type="AudioStreamSample"
path="res://.import/punch_sound.wav-0f9d6ab352205acf0b589f4a1f454cc5.sample"
[deps]
source_file="res://Audio/punch_sound.wav"
dest_files=[ "res://.import/punch_sound.wav-0f9d6ab352205acf0b589f4a1f454cc5.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=false
compress/mode=0

View File

@ -16,7 +16,7 @@ func _unhandled_input(event):
if event is InputEventKey: if event is InputEventKey:
if event.pressed and event.scancode == key: if event.pressed and event.scancode == key:
if limb.get_child_count() > 0: if limb.get_child_count() > 0:
limb.get_child(0).action() limb.get_child(0).action_wrapper()
# Called every frame. 'delta' is the elapsed time since the previous frame. # Called every frame. 'delta' is the elapsed time since the previous frame.

View File

@ -6,6 +6,7 @@ class_name BodyPart
onready var base = get_parent().get_parent().get_parent() onready var base = get_parent().get_parent().get_parent()
onready var physics_shape = get_node("PartCollider") onready var physics_shape = get_node("PartCollider")
onready var action_sound = get_node("ActionSound")
var setup_done = false var setup_done = false
@ -34,6 +35,13 @@ func _process(delta: float) -> void:
setup_done = true setup_done = true
func action_wrapper():
if not action_sound.playing:
action_sound.play()
action()
# Do something with the base # Do something with the base
func action(): func action():
pass pass

View File

@ -6,3 +6,6 @@
script = ExtResource( 1 ) script = ExtResource( 1 )
[node name="PartCollider" type="CollisionShape" parent="."] [node name="PartCollider" type="CollisionShape" parent="."]
[node name="ActionSound" type="AudioStreamPlayer3D" parent="."]
attenuation_model = 3

View File

@ -1,17 +1,18 @@
[gd_scene load_steps=8 format=2] [gd_scene load_steps=9 format=2]
[ext_resource path="res://BodyParts/PushingBodyPart.tscn" type="PackedScene" id=1] [ext_resource path="res://BodyParts/PushingBodyPart.tscn" type="PackedScene" id=1]
[ext_resource path="res://BodyParts/FrogLeg.gd" type="Script" id=2] [ext_resource path="res://BodyParts/FrogLeg.gd" type="Script" id=2]
[ext_resource path="res://3D Input/Fertige GLBs/Bein_Frosch.glb" type="PackedScene" id=3] [ext_resource path="res://3D Input/Fertige GLBs/Bein_Frosch.glb" type="PackedScene" id=3]
[ext_resource path="res://3D Input/froschtexture.png" type="Texture" id=4] [ext_resource path="res://3D Input/froschtexture.png" type="Texture" id=4]
[ext_resource path="res://Audio/frog_sound.wav" type="AudioStream" id=5]
[sub_resource type="BoxShape" id=2] [sub_resource type="BoxShape" id=1]
extents = Vector3( 0.649825, 2.07811, 1.64282 ) extents = Vector3( 0.649825, 2.07811, 1.64282 )
[sub_resource type="SphereShape" id=3] [sub_resource type="SphereShape" id=2]
radius = 0.115004 radius = 0.115004
[sub_resource type="SpatialMaterial" id=1] [sub_resource type="SpatialMaterial" id=3]
albedo_texture = ExtResource( 4 ) albedo_texture = ExtResource( 4 )
roughness = 0.3 roughness = 0.3
@ -22,26 +23,23 @@ cost = 30.0
[node name="PartCollider" parent="." index="0"] [node name="PartCollider" parent="." index="0"]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0.21377, -0.911304, -3.94992 ) transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0.21377, -0.911304, -3.94992 )
shape = SubResource( 2 ) shape = SubResource( 1 )
[node name="TouchArea" parent="." index="1"] [node name="TouchArea" parent="." index="1"]
transform = Transform( 2.2019, -0.624093, -2.57245, 1.35866, 3.13817, 0.40161, 2.27179, -1.27191, 2.25313, 0.307055, -2.49965, -4.98782 ) transform = Transform( 2.20191, -0.624093, -2.57245, 1.26297, 3.18837, 0.307522, 2.32635, -1.14024, 2.26789, 0.307056, -2.38919, -4.91366 )
[node name="CollisionShape" type="CollisionShape" parent="TouchArea" index="0"] [node name="CollisionShape" type="CollisionShape" parent="TouchArea" index="0"]
shape = SubResource( 3 ) shape = SubResource( 2 )
[node name="Mesh" parent="." index="2" instance=ExtResource( 3 )] [node name="Mesh" parent="." index="2" instance=ExtResource( 3 )]
transform = Transform( -1.13133e-08, 4.2222e-08, 1, 0.965926, 0.258819, 0, -0.258819, 0.965926, -4.37114e-08, 0.734499, -2.94707, -2.68774 ) transform = Transform( -1.13133e-08, 4.2222e-08, 1, 0.965926, 0.258819, 0, -0.258819, 0.965926, -4.37114e-08, 0.734499, -2.94707, -2.68774 )
[node name="Skeleton" parent="Mesh/Armature" index="0"]
bones/3/bound_children = [ NodePath("BoneAttachment") ]
[node name="froschbein" parent="Mesh/Armature/Skeleton" index="0"] [node name="froschbein" parent="Mesh/Armature/Skeleton" index="0"]
transform = Transform( 1, -1.49012e-08, 0, 0, 1, -5.96046e-08, 0, 2.98023e-08, 1, 0, 0, 0 ) transform = Transform( 1, -1.49012e-08, 0, 0, 1, -5.96046e-08, 0, 2.98023e-08, 1, 0, 0, 0 )
material/0 = SubResource( 1 ) material/0 = SubResource( 3 )
[node name="BoneAttachment" type="BoneAttachment" parent="Mesh/Armature/Skeleton" index="1"] [node name="BoneAttachment" type="BoneAttachment" parent="Mesh/Armature/Skeleton" index="1"]
transform = Transform( -0.207654, -0.97489, 0.0804374, -0.106263, -0.059262, -0.99257, 0.972414, -0.214658, -0.091288, 0.208948, 1.33566, -0.895561 ) transform = Transform( -0.176573, -0.978358, 0.107882, -0.111435, -0.0890297, -0.989776, 0.97796, -0.186789, -0.0933024, 0.184057, 1.31383, -0.875628 )
bone_name = "bone_3" bone_name = "bone_3"
[node name="RemoteTransform" type="RemoteTransform" parent="Mesh/Armature/Skeleton/BoneAttachment" index="0"] [node name="RemoteTransform" type="RemoteTransform" parent="Mesh/Armature/Skeleton/BoneAttachment" index="0"]
@ -50,4 +48,8 @@ remote_path = NodePath("../../../../../TouchArea")
[node name="AnimationPlayer" parent="Mesh" index="2"] [node name="AnimationPlayer" parent="Mesh" index="2"]
playback_speed = 2.0 playback_speed = 2.0
[node name="ActionSound" parent="." index="3"]
stream = ExtResource( 5 )
unit_db = 0.0
[editable path="Mesh"] [editable path="Mesh"]

View File

@ -1,17 +1,18 @@
[gd_scene load_steps=8 format=2] [gd_scene load_steps=9 format=2]
[ext_resource path="res://BodyParts/PushingBodyPart.tscn" type="PackedScene" id=1] [ext_resource path="res://BodyParts/PushingBodyPart.tscn" type="PackedScene" id=1]
[ext_resource path="res://BodyParts/GorillaArm.gd" type="Script" id=2] [ext_resource path="res://BodyParts/GorillaArm.gd" type="Script" id=2]
[ext_resource path="res://3D Input/Fertige GLBs/Arm_Gorilla.glb" type="PackedScene" id=3] [ext_resource path="res://3D Input/Fertige GLBs/Arm_Gorilla.glb" type="PackedScene" id=3]
[ext_resource path="res://3D Input/gorillaarmtexture.png" type="Texture" id=4] [ext_resource path="res://3D Input/gorillaarmtexture.png" type="Texture" id=4]
[ext_resource path="res://Audio/punch_sound.wav" type="AudioStream" id=5]
[sub_resource type="BoxShape" id=2] [sub_resource type="BoxShape" id=1]
extents = Vector3( 1.21214, 1, 2.81197 ) extents = Vector3( 1.21214, 1, 2.81197 )
[sub_resource type="SphereShape" id=3] [sub_resource type="SphereShape" id=2]
radius = 0.175235 radius = 0.175235
[sub_resource type="SpatialMaterial" id=1] [sub_resource type="SpatialMaterial" id=3]
albedo_texture = ExtResource( 4 ) albedo_texture = ExtResource( 4 )
[node name="GorillaArm" instance=ExtResource( 1 )] [node name="GorillaArm" instance=ExtResource( 1 )]
@ -22,22 +23,19 @@ damage = 15.0
[node name="PartCollider" parent="." index="0"] [node name="PartCollider" parent="." index="0"]
transform = Transform( 1, 0, 0, 0, 0.534515, -0.845159, 0, 0.845159, 0.534515, -0.0701199, -4.33779, -2.5341 ) transform = Transform( 1, 0, 0, 0, 0.534515, -0.845159, 0, 0.845159, 0.534515, -0.0701199, -4.33779, -2.5341 )
shape = SubResource( 2 ) shape = SubResource( 1 )
[node name="TouchArea" parent="." index="1"] [node name="TouchArea" parent="." index="1"]
transform = Transform( 0.00565114, -1.25635, 4.34486, 2.47947, -3.63292, -1.05371, 3.78264, 2.38321, 0.684203, -0.142621, -4.9139, -2.02559 ) transform = Transform( 0.00565114, -1.25635, 4.34486, 2.47947, -3.63292, -1.05371, 3.78264, 2.38321, 0.684204, -0.142622, -4.9139, -2.02559 )
[node name="CollisionShape" type="CollisionShape" parent="TouchArea" index="0"] [node name="CollisionShape" type="CollisionShape" parent="TouchArea" index="0"]
shape = SubResource( 3 ) shape = SubResource( 2 )
[node name="Mesh" parent="." index="2" instance=ExtResource( 3 )] [node name="Mesh" parent="." index="2" instance=ExtResource( 3 )]
transform = Transform( -1.74846e-08, 0.4, 0, -0.4, -1.74846e-08, 0, 0, -2.66454e-15, 0.4, -9.43966, -0.0575844, 0.086014 ) transform = Transform( -1.74846e-08, 0.4, 0, -0.4, -1.74846e-08, 0, 0, -2.66454e-15, 0.4, -9.43966, -0.0575844, 0.086014 )
[node name="Skeleton" parent="Mesh/Armature" index="0"]
bones/14/bound_children = [ NodePath("BoneAttachment") ]
[node name="Cube" parent="Mesh/Armature/Skeleton" index="0"] [node name="Cube" parent="Mesh/Armature/Skeleton" index="0"]
material/0 = SubResource( 1 ) material/0 = SubResource( 3 )
[node name="BoneAttachment" type="BoneAttachment" parent="Mesh/Armature/Skeleton" index="1"] [node name="BoneAttachment" type="BoneAttachment" parent="Mesh/Armature/Skeleton" index="1"]
transform = Transform( 0.000982332, 0.274505, -0.961585, -0.54821, 0.80436, 0.229062, 0.83634, 0.526926, 0.151277, -0.00334232, 1.11071, -0.466874 ) transform = Transform( 0.000982332, 0.274505, -0.961585, -0.54821, 0.80436, 0.229062, 0.83634, 0.526926, 0.151277, -0.00334232, 1.11071, -0.466874 )
@ -46,4 +44,7 @@ bone_name = "bone_6"
[node name="RemoteTransform" type="RemoteTransform" parent="Mesh/Armature/Skeleton/BoneAttachment" index="0"] [node name="RemoteTransform" type="RemoteTransform" parent="Mesh/Armature/Skeleton/BoneAttachment" index="0"]
remote_path = NodePath("../../../../../TouchArea") remote_path = NodePath("../../../../../TouchArea")
[node name="PushSound" parent="." index="4"]
stream = ExtResource( 5 )
[editable path="Mesh"] [editable path="Mesh"]

View File

@ -1,7 +1,8 @@
[gd_scene load_steps=6 format=2] [gd_scene load_steps=7 format=2]
[ext_resource path="res://BodyParts/PushingBodyPart.tscn" type="PackedScene" id=1] [ext_resource path="res://BodyParts/PushingBodyPart.tscn" type="PackedScene" id=1]
[ext_resource path="res://BodyParts/HumanArm.gd" type="Script" id=2] [ext_resource path="res://BodyParts/HumanArm.gd" type="Script" id=2]
[ext_resource path="res://Audio/punch_sound.wav" type="AudioStream" id=3]
[ext_resource path="res://3D Input/Fertige GLBs/Arm_Mensch.glb" type="PackedScene" id=4] [ext_resource path="res://3D Input/Fertige GLBs/Arm_Mensch.glb" type="PackedScene" id=4]
[sub_resource type="BoxShape" id=1] [sub_resource type="BoxShape" id=1]
@ -29,9 +30,6 @@ shape = SubResource( 2 )
[node name="Mesh" parent="." index="2" instance=ExtResource( 4 )] [node name="Mesh" parent="." index="2" instance=ExtResource( 4 )]
transform = Transform( 2, 0, 0, 0, 2, 0, 0, 0, 2, -0.357728, -8.51476, 0 ) transform = Transform( 2, 0, 0, 0, 2, 0, 0, 0, 2, -0.357728, -8.51476, 0 )
[node name="Skeleton" parent="Mesh/Armature" index="0"]
bones/7/bound_children = [ NodePath("BoneAttachment") ]
[node name="BoneAttachment" type="BoneAttachment" parent="Mesh/Armature/Skeleton" index="1"] [node name="BoneAttachment" type="BoneAttachment" parent="Mesh/Armature/Skeleton" index="1"]
transform = Transform( 0.0646207, -0.736312, -0.673549, -0.240426, 0.64359, -0.726627, 0.968514, 0.208894, -0.135439, 0.054756, 1.13784, 0.129916 ) transform = Transform( 0.0646207, -0.736312, -0.673549, -0.240426, 0.64359, -0.726627, 0.968514, 0.208894, -0.135439, 0.054756, 1.13784, 0.129916 )
bone_name = "bone_6" bone_name = "bone_6"
@ -42,4 +40,10 @@ remote_path = NodePath("../../../../../TouchArea")
[node name="AnimationPlayer" parent="Mesh" index="2"] [node name="AnimationPlayer" parent="Mesh" index="2"]
playback_speed = 3.0 playback_speed = 3.0
[node name="ActionSound" parent="." index="3"]
unit_db = 0.0
[node name="PushSound" parent="." index="4"]
stream = ExtResource( 3 )
[editable path="Mesh"] [editable path="Mesh"]

View File

@ -1,9 +1,10 @@
[gd_scene load_steps=8 format=2] [gd_scene load_steps=9 format=2]
[ext_resource path="res://BodyParts/PushingBodyPart.tscn" type="PackedScene" id=1] [ext_resource path="res://BodyParts/PushingBodyPart.tscn" type="PackedScene" id=1]
[ext_resource path="res://BodyParts/HumanLeg.gd" type="Script" id=2] [ext_resource path="res://BodyParts/HumanLeg.gd" type="Script" id=2]
[ext_resource path="res://3D Input/Fertige GLBs/Bein_Mensch.glb" type="PackedScene" id=3] [ext_resource path="res://3D Input/Fertige GLBs/Bein_Mensch.glb" type="PackedScene" id=3]
[ext_resource path="res://3D Input/beinimage.png" type="Texture" id=4] [ext_resource path="res://3D Input/beinimage.png" type="Texture" id=4]
[ext_resource path="res://Audio/punch_sound.wav" type="AudioStream" id=5]
[sub_resource type="BoxShape" id=1] [sub_resource type="BoxShape" id=1]
extents = Vector3( 0.666, 2.41488, 1.555 ) extents = Vector3( 0.666, 2.41488, 1.555 )
@ -36,9 +37,6 @@ transform = Transform( 2, 0, 0, 0, 2, 0, 0, 0, 2, -2.84217e-14, -4.37555, -0.049
[node name="Armature" parent="Mesh" index="2"] [node name="Armature" parent="Mesh" index="2"]
transform = Transform( 1.97878, 0, 0, 0, -1.97636, 0.0978612, 8.47033e-22, -0.0978612, -1.97636, -1.33227e-14, 2.34477, 0.0119585 ) transform = Transform( 1.97878, 0, 0, 0, -1.97636, 0.0978612, 8.47033e-22, -0.0978612, -1.97636, -1.33227e-14, 2.34477, 0.0119585 )
[node name="Skeleton" parent="Mesh/Armature" index="0"]
bones/2/bound_children = [ NodePath("BoneAttachment") ]
[node name="Cube" parent="Mesh/Armature/Skeleton" index="0"] [node name="Cube" parent="Mesh/Armature/Skeleton" index="0"]
transform = Transform( 1, 0, -8.88178e-16, -1.42109e-14, 1, -2.23517e-08, 4.44089e-16, 2.23517e-08, 1, 0, 0, 0 ) transform = Transform( 1, 0, -8.88178e-16, -1.42109e-14, 1, -2.23517e-08, 4.44089e-16, 2.23517e-08, 1, 0, 0, 0 )
material/0 = SubResource( 3 ) material/0 = SubResource( 3 )
@ -50,4 +48,10 @@ bone_name = "bone_2"
[node name="RemoteTransform" type="RemoteTransform" parent="Mesh/Armature/Skeleton/BoneAttachment" index="0"] [node name="RemoteTransform" type="RemoteTransform" parent="Mesh/Armature/Skeleton/BoneAttachment" index="0"]
remote_path = NodePath("../../../../../TouchArea") remote_path = NodePath("../../../../../TouchArea")
[node name="ActionSound" parent="." index="3"]
unit_db = 0.0
[node name="PushSound" parent="." index="4"]
stream = ExtResource( 5 )
[editable path="Mesh"] [editable path="Mesh"]

View File

@ -2,6 +2,7 @@ extends BodyPart
class_name PushingBodyPart class_name PushingBodyPart
onready var touch_area = get_node("TouchArea") onready var touch_area = get_node("TouchArea")
onready var push_sound = get_node("PushSound")
export(float) var damage = 10.0 export(float) var damage = 10.0
@ -19,10 +20,16 @@ func _is_animation_playing():
func _on_touch_area_entered(body): func _on_touch_area_entered(body):
if body.name != base.name and _is_animation_playing(): if body.name != base.name and _is_animation_playing():
if body.is_in_group("Terrain"): if body.is_in_group("Terrain"):
push(body) push_wrapper(body)
elif body.is_in_group("Player"): elif body.is_in_group("Player"):
InGameState.subtract_player_health(body.player_id, damage) InGameState.subtract_player_health(body.player_id, damage)
func push_wrapper(body):
push_sound.play(0.0)
push(body)
func push(body): func push(body):
pass pass

View File

@ -3,8 +3,10 @@
[ext_resource path="res://BodyParts/BodyPart.tscn" type="PackedScene" id=1] [ext_resource path="res://BodyParts/BodyPart.tscn" type="PackedScene" id=1]
[ext_resource path="res://BodyParts/PushingBodyPart.gd" type="Script" id=2] [ext_resource path="res://BodyParts/PushingBodyPart.gd" type="Script" id=2]
[node name="PushingBodyPart" instance=ExtResource( 1 )]
[node name="PushingBodyPart" index="0" instance=ExtResource( 1 )]
script = ExtResource( 2 ) script = ExtResource( 2 )
[node name="TouchArea" type="Area" parent="." index="1"] [node name="TouchArea" type="Area" parent="." index="1"]
[node name="PushSound" type="AudioStreamPlayer3D" parent="." index="3"]
attenuation_model = 3