diff --git a/.import/Mukke_an.png-49a918eeb3106924466178cb08b788b8.md5 b/.import/Mukke_an.png-49a918eeb3106924466178cb08b788b8.md5 new file mode 100644 index 0000000..d6943f1 --- /dev/null +++ b/.import/Mukke_an.png-49a918eeb3106924466178cb08b788b8.md5 @@ -0,0 +1,3 @@ +source_md5="d172177b0357f9e96f143a10da3c2090" +dest_md5="9f6f05158beec854d69e3dff277902ec" + diff --git a/.import/Mukke_an.png-49a918eeb3106924466178cb08b788b8.stex b/.import/Mukke_an.png-49a918eeb3106924466178cb08b788b8.stex new file mode 100644 index 0000000..f1bda16 Binary files /dev/null and b/.import/Mukke_an.png-49a918eeb3106924466178cb08b788b8.stex differ diff --git a/.import/Mukke_aus.png-e15cc56cdbf95aba81545ce31e54e1bf.md5 b/.import/Mukke_aus.png-e15cc56cdbf95aba81545ce31e54e1bf.md5 new file mode 100644 index 0000000..75fde12 --- /dev/null +++ b/.import/Mukke_aus.png-e15cc56cdbf95aba81545ce31e54e1bf.md5 @@ -0,0 +1,3 @@ +source_md5="48c192cd8b47f09e9f3b6bc97d60afee" +dest_md5="001551fba679253b5fd4f889e21d08f7" + diff --git a/.import/Mukke_aus.png-e15cc56cdbf95aba81545ce31e54e1bf.stex b/.import/Mukke_aus.png-e15cc56cdbf95aba81545ce31e54e1bf.stex new file mode 100644 index 0000000..ab1db36 Binary files /dev/null and b/.import/Mukke_aus.png-e15cc56cdbf95aba81545ce31e54e1bf.stex differ diff --git a/Scripts/GamePlay_Data.gd b/Scripts/GamePlay_Data.gd index 02ed800..d4689bb 100644 --- a/Scripts/GamePlay_Data.gd +++ b/Scripts/GamePlay_Data.gd @@ -193,4 +193,5 @@ var medal_goal_12 = medal_goal_1 + medal_add * 11 const FILE_NAME = "user://savegame.save" # settings +var sound = true var music = true diff --git a/Scripts/Main.gd b/Scripts/Main.gd index 27c0aa2..0116b54 100644 --- a/Scripts/Main.gd +++ b/Scripts/Main.gd @@ -30,6 +30,8 @@ var levelRestart = false # Called when the node enters the scene tree for the first time. func _ready(): load_game() + set_audio() + # warning-ignore:return_value_discarded # here change to test screen get_tree().change_scene(startscreen_path) @@ -205,7 +207,8 @@ func save_game(): "locked_redis" : GamePlayData.locked_redis, "locked_peace" : GamePlayData.locked_peace, "locked_caring" : GamePlayData.locked_caring, - "music": GamePlayData.music + "music": GamePlayData.music, + "sound": GamePlayData.sound } # Store the save dictionary as a new line in the save file. save_game.store_line(to_json(save_data)) @@ -237,6 +240,7 @@ func load_game(): GamePlayData.locked_peace = data["locked_peace"] GamePlayData.locked_caring = data["locked_caring"] GamePlayData.music = data["music"] + GamePlayData.sound = data["sound"] else: printerr("Corrupted data!") else: @@ -263,3 +267,17 @@ func setMedalStartValue(score_goal): GamePlayData.medal_goal_10 = GamePlayData.medal_goal_1 + GamePlayData.medal_add * 9 GamePlayData.medal_goal_11 = GamePlayData.medal_goal_1 + GamePlayData.medal_add * 10 GamePlayData.medal_goal_12 = GamePlayData.medal_goal_1 + GamePlayData.medal_add * 11 + + +func set_audio(): + var master_sound = AudioServer.get_bus_index("Master") + var music_sound = AudioServer.get_bus_index("Music") + if GamePlayData.sound: + AudioServer.set_bus_mute(master_sound, false) + else: + AudioServer.set_bus_mute(master_sound, true) + + if GamePlayData.music: + AudioServer.set_bus_mute(music_sound, false) + else: + AudioServer.set_bus_mute(music_sound, true) diff --git a/Sprites/JumpForLeft_Grafiken/Buttons/Mukke_an.png b/Sprites/JumpForLeft_Grafiken/Buttons/Mukke_an.png new file mode 100644 index 0000000..b36ace1 Binary files /dev/null and b/Sprites/JumpForLeft_Grafiken/Buttons/Mukke_an.png differ diff --git a/Sprites/JumpForLeft_Grafiken/Buttons/Mukke_an.png.import b/Sprites/JumpForLeft_Grafiken/Buttons/Mukke_an.png.import new file mode 100644 index 0000000..7346b71 --- /dev/null +++ b/Sprites/JumpForLeft_Grafiken/Buttons/Mukke_an.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Mukke_an.png-49a918eeb3106924466178cb08b788b8.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/JumpForLeft_Grafiken/Buttons/Mukke_an.png" +dest_files=[ "res://.import/Mukke_an.png-49a918eeb3106924466178cb08b788b8.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=true +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/Sprites/JumpForLeft_Grafiken/Buttons/Mukke_aus.png b/Sprites/JumpForLeft_Grafiken/Buttons/Mukke_aus.png new file mode 100644 index 0000000..d36dec1 Binary files /dev/null and b/Sprites/JumpForLeft_Grafiken/Buttons/Mukke_aus.png differ diff --git a/Sprites/JumpForLeft_Grafiken/Buttons/Mukke_aus.png.import b/Sprites/JumpForLeft_Grafiken/Buttons/Mukke_aus.png.import new file mode 100644 index 0000000..6a2f5cc --- /dev/null +++ b/Sprites/JumpForLeft_Grafiken/Buttons/Mukke_aus.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/Mukke_aus.png-e15cc56cdbf95aba81545ce31e54e1bf.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/JumpForLeft_Grafiken/Buttons/Mukke_aus.png" +dest_files=[ "res://.import/Mukke_aus.png-e15cc56cdbf95aba81545ce31e54e1bf.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=true +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/default_bus_layout.tres b/default_bus_layout.tres new file mode 100644 index 0000000..a28dfc8 --- /dev/null +++ b/default_bus_layout.tres @@ -0,0 +1,9 @@ +[gd_resource type="AudioBusLayout" format=2] + +[resource] +bus/1/name = "Music" +bus/1/solo = false +bus/1/mute = false +bus/1/bypass_fx = false +bus/1/volume_db = 0.0 +bus/1/send = "Master" diff --git a/export_presets.cfg b/export_presets.cfg index ab61b5d..e73be29 100644 --- a/export_presets.cfg +++ b/export_presets.cfg @@ -7,7 +7,7 @@ custom_features="" export_filter="all_resources" include_filter="" exclude_filter="" -export_path="../Blobby's Rising.apk" +export_path="../Blobby's Rising_small.apk" script_export_mode=1 script_encryption_key="" diff --git a/levels/CaringLevel.tscn b/levels/CaringLevel.tscn index da56377..8781d46 100644 --- a/levels/CaringLevel.tscn +++ b/levels/CaringLevel.tscn @@ -38,6 +38,7 @@ stream = ExtResource( 9 ) [node name="Music" type="AudioStreamPlayer" parent="."] stream = ExtResource( 8 ) +bus = "Music" [node name="ParallaxBackground" parent="." instance=ExtResource( 6 )] diff --git a/levels/LaneMovement.tscn b/levels/LaneMovement.tscn index faae3d2..1b19d2e 100644 --- a/levels/LaneMovement.tscn +++ b/levels/LaneMovement.tscn @@ -36,6 +36,7 @@ stream = ExtResource( 9 ) [node name="Music" type="AudioStreamPlayer" parent="."] stream = ExtResource( 8 ) +bus = "Music" [connection signal="timeout" from="EnemySpawnTimer" to="." method="_on_EnemySpawnTimer_timeout"] [connection signal="timeout" from="FriendSpawnTimer" to="." method="_on_FriendSpawnTimer_timeout"] diff --git a/levels/PeaceLevel.tscn b/levels/PeaceLevel.tscn index 38f3bc3..238305f 100644 --- a/levels/PeaceLevel.tscn +++ b/levels/PeaceLevel.tscn @@ -27,6 +27,7 @@ position = Vector2( -300, 0 ) [node name="Music" type="AudioStreamPlayer" parent="."] stream = ExtResource( 10 ) +bus = "Music" [node name="Player" parent="." instance=ExtResource( 2 )] diff --git a/levels/RedistributionLevel.tscn b/levels/RedistributionLevel.tscn index 5c04990..0102c6a 100644 --- a/levels/RedistributionLevel.tscn +++ b/levels/RedistributionLevel.tscn @@ -40,6 +40,7 @@ autostart = true [node name="Music" type="AudioStreamPlayer" parent="."] stream = ExtResource( 9 ) +bus = "Music" [connection signal="timeout" from="EnemySpawnTimer" to="." method="_on_EnemySpawnTimer_timeout"] [connection signal="timeout" from="FriendSpawnTimer" to="." method="_on_FriendSpawnTimer_timeout"] diff --git a/levels/SubwayLevel.tscn b/levels/SubwayLevel.tscn index 8af049d..ff0f384 100644 --- a/levels/SubwayLevel.tscn +++ b/levels/SubwayLevel.tscn @@ -40,6 +40,7 @@ wait_time = 0.8 [node name="Music" type="AudioStreamPlayer" parent="."] stream = ExtResource( 9 ) +bus = "Music" [connection signal="timeout" from="EnemySpawnTimer" to="." method="_on_EnemySpawnTimer_timeout"] [connection signal="timeout" from="FriendSpawnTimer" to="." method="_on_FriendSpawnTimer_timeout"] diff --git a/levels/UpDownMovement.tscn b/levels/UpDownMovement.tscn index ead4285..022ead9 100644 --- a/levels/UpDownMovement.tscn +++ b/levels/UpDownMovement.tscn @@ -38,6 +38,7 @@ stream = ExtResource( 10 ) [node name="Music" type="AudioStreamPlayer" parent="."] stream = ExtResource( 9 ) +bus = "Music" [node name="MobDestructionBorder2" parent="." instance=ExtResource( 11 )] diff --git a/start_screen/LevelSelection.tscn b/start_screen/LevelSelection.tscn index fc7c50a..f0e4a37 100644 --- a/start_screen/LevelSelection.tscn +++ b/start_screen/LevelSelection.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=19 format=2] +[gd_scene load_steps=22 format=2] [ext_resource path="res://start_screen/level_selection.gd" type="Script" id=1] [ext_resource path="res://MenuButton.tscn" type="PackedScene" id=2] @@ -14,11 +14,41 @@ [ext_resource path="res://Scripts/ScrollingBackground.gd" type="Script" id=13] [ext_resource path="res://start_screen/buttons/PeaceButton.tscn" type="PackedScene" id=14] [ext_resource path="res://Audio/ui_click_rollover_misc_01.mp3" type="AudioStream" id=15] -[ext_resource path="res://Sprites/JumpForLeft_Grafiken/Buttons/Laut_aus.png" type="Texture" id=16] -[ext_resource path="res://Sprites/JumpForLeft_Grafiken/Buttons/Laut_an.png" type="Texture" id=17] [ext_resource path="res://Sprites/JumpForLeft_Grafiken/Hintergruende/LevelStart/Umverteilung_start.png" type="Texture" id=19] [ext_resource path="res://start_screen/buttons/CaringButton.tscn" type="PackedScene" id=20] +[sub_resource type="StreamTexture" id=1] +flags = 4 +load_path = "res://.import/Laut_aus.png-7fcbf39e6fc514b8eddd2c55396b5a7f.stex" + +[sub_resource type="StreamTexture" id=2] +flags = 4 +load_path = "res://.import/Laut_an.png-7d8a248977b5f8c7311cc19f31b8a963.stex" + +[sub_resource type="Animation" id=5] +resource_name = "Alert" +length = 0.25 +tracks/0/type = "value" +tracks/0/path = NodePath(".:modulate") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/keys = { +"times": PoolRealArray( 0, 0.1, 0.2 ), +"transitions": PoolRealArray( 1, 1, 1 ), +"update": 0, +"values": [ Color( 1, 1, 1, 1 ), Color( 1, 0, 0, 1 ), Color( 1, 1, 1, 1 ) ] +} + +[sub_resource type="StreamTexture" id=3] +flags = 4 +load_path = "res://.import/Mukke_aus.png-e15cc56cdbf95aba81545ce31e54e1bf.stex" + +[sub_resource type="StreamTexture" id=4] +flags = 4 +load_path = "res://.import/Mukke_an.png-49a918eeb3106924466178cb08b788b8.stex" + [node name="LevelSelection" type="Control"] anchor_right = 1.0 anchor_bottom = 1.0 @@ -197,19 +227,40 @@ margin_bottom = -307.404 [node name="Sound" type="AudioStreamPlayer" parent="Camera/MenuButton"] stream = ExtResource( 15 ) -[node name="CheckButton" type="TextureButton" parent="Camera"] +[node name="SoundButton" type="TextureButton" parent="Camera"] anchor_top = 1.0 anchor_bottom = 1.0 -margin_left = -919.599 -margin_top = 337.036 -margin_right = -688.599 -margin_bottom = 568.036 +margin_left = -900.0 +margin_top = 340.0 +margin_right = -669.0 +margin_bottom = 571.0 rect_scale = Vector2( 0.75, 0.75 ) focus_mode = 0 toggle_mode = true +pressed = true +enabled_focus_mode = 0 +texture_normal = SubResource( 1 ) +texture_pressed = SubResource( 2 ) +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="AnimationPlayer" type="AnimationPlayer" parent="Camera/SoundButton"] +anims/Alert = SubResource( 5 ) + +[node name="MusicButton" type="TextureButton" parent="Camera"] +anchor_top = 1.0 +anchor_bottom = 1.0 +margin_left = -650.0 +margin_top = 340.0 +margin_right = -419.0 +margin_bottom = 571.0 +focus_mode = 0 +toggle_mode = true +pressed = true enabled_focus_mode = 0 -texture_normal = ExtResource( 16 ) -texture_pressed = ExtResource( 17 ) +texture_normal = SubResource( 3 ) +texture_pressed = SubResource( 4 ) __meta__ = { "_edit_use_anchors_": false } @@ -225,9 +276,12 @@ margin_bottom = 1027.0 [node name="Music" type="AudioStreamPlayer" parent="."] stream = ExtResource( 11 ) +bus = "Music" [connection signal="pressed" from="Camera/NextLevelButton" to="." method="_on_NextLevelButton_pressed"] [connection signal="pressed" from="Camera/PrevLevelButton" to="." method="_on_PrevLevelButton_pressed"] [connection signal="finished" from="Camera/MenuButton/Sound" to="Camera/MenuButton" method="_on_Sound_finished"] -[connection signal="toggled" from="Camera/CheckButton" to="." method="_on_CheckButton_toggled"] +[connection signal="toggled" from="Camera/SoundButton" to="." method="_on_SoundButton_toggled"] +[connection signal="pressed" from="Camera/MusicButton" to="." method="_on_MusicButton_pressed"] +[connection signal="toggled" from="Camera/MusicButton" to="." method="_on_MusicButton_toggled"] [connection signal="fade_finished" from="Camera/FadeIn" to="." method="_on_FadeIn_fade_finished"] diff --git a/start_screen/level_selection.gd b/start_screen/level_selection.gd index 9a0f330..224f15e 100644 --- a/start_screen/level_selection.gd +++ b/start_screen/level_selection.gd @@ -3,7 +3,8 @@ extends Control var scene_path_to_load func _ready(): - get_node("Camera/CheckButton").pressed = GamePlayData.music + get_node("Camera/SoundButton").pressed = GamePlayData.sound + get_node("Camera/MusicButton").pressed = GamePlayData.music if GamePlayData.music: get_node("Music").play() @@ -381,12 +382,40 @@ func _on_PrevLevelButton_pressed(): $Camera/PrevLevelButton/Sound.play() showPrevLevel() -func _on_CheckButton_toggled(button_pressed): +func _on_SoundButton_toggled(button_pressed): + var master_sound = AudioServer.get_bus_index("Master") + var music_sound = AudioServer.get_bus_index("Music") if button_pressed: + AudioServer.set_bus_mute(master_sound, false) +# if get_node("Camera/MusicButton").pressed: + AudioServer.set_bus_mute(music_sound, false) get_node("Music").play() +# if get_node("Camera/MusicButton").pressed: GamePlayData.music = true - MainScript.save_game() + GamePlayData.sound = true else: + AudioServer.set_bus_mute(master_sound, true) + AudioServer.set_bus_mute(music_sound, true) + GamePlayData.music = false + GamePlayData.sound = false + + MainScript.save_game() + get_node("Camera/MusicButton").pressed = GamePlayData.music + +func _on_MusicButton_toggled(button_pressed): + var music_sound = AudioServer.get_bus_index("Music") + if button_pressed: + AudioServer.set_bus_mute(music_sound, false) + get_node("Music").play() + GamePlayData.music = true + else: + AudioServer.set_bus_mute(music_sound, true) get_node("Music").stop() GamePlayData.music = false - MainScript.save_game() + + MainScript.save_game() + +func _on_MusicButton_pressed(): + if !get_node("Camera/SoundButton").pressed: + get_node("Camera/SoundButton/AnimationPlayer").play("Alert") + get_node("Camera/MusicButton").pressed = false