From e2573af9e234423d4a218655c6b7b44cd45d688e Mon Sep 17 00:00:00 2001
From: Anonymus Raccoon
Date: Sun, 3 May 2020 20:06:29 +0200
Subject: [PATCH] Fixing the music
---
lib/gamacon | 2 +-
src/game_loader.c | 2 +-
src/main_menu.c | 7 +++----
src/systems/combat_manager.c | 2 +-
src/systems/combat_methods.c | 3 +--
5 files changed, 7 insertions(+), 9 deletions(-)
diff --git a/lib/gamacon b/lib/gamacon
index 873f0ce..b034b32 160000
--- a/lib/gamacon
+++ b/lib/gamacon
@@ -1 +1 @@
-Subproject commit 873f0cef56fb0bdea563a69db1d2667d6ea71c39
+Subproject commit b034b325b62d064e560e8506388aa41e2a287fb9
diff --git a/src/game_loader.c b/src/game_loader.c
index f77d1f1..cc07cc2 100644
--- a/src/game_loader.c
+++ b/src/game_loader.c
@@ -173,7 +173,7 @@ int create_game_scene(gc_engine *engine, bool map_editor)
scene = scene_create(engine, "prefabs/mainmenu.gcprefab");
if (!scene)
return (-1);
- engine->change_scene(engine, scene);
+ engine->change_scene(engine, scene, true);
return (0);
}
diff --git a/src/main_menu.c b/src/main_menu.c
index 644eefe..6f7e252 100644
--- a/src/main_menu.c
+++ b/src/main_menu.c
@@ -32,7 +32,7 @@ enum gc_mousekeys __)
my_printf("The game scene couldn't be loaded.\n");
return (true);
}
- engine->change_scene(engine, scene);
+ engine->change_scene(engine, scene, true);
if (prefab_load(engine, "prefabs/player.gcprefab") < 0
|| prefab_load(engine, "prefabs/map_entities.gcprefab") < 0)
my_printf("Could not load entites.\n");
@@ -56,8 +56,7 @@ enum gc_mousekeys __)
return (true);
}
GETSYS(engine, game_manager_system)->game_scene = engine->scene;
- engine->scene = NULL;
- engine->change_scene(engine, scene);
+ engine->change_scene(engine, scene, false);
entity = engine->scene->get_entity(engine->scene, 50);
if (rend)
checkbox_update(engine->scene, entity, rend->is_fullscreen);
@@ -83,7 +82,7 @@ enum gc_mousekeys __)
my_printf("The option scene couldn't be loaded.\n");
return (true);
}
- engine->change_scene(engine, scene);
+ engine->change_scene(engine, scene, true);
return (true);
}
diff --git a/src/systems/combat_manager.c b/src/systems/combat_manager.c
index f200544..1b19312 100644
--- a/src/systems/combat_manager.c
+++ b/src/systems/combat_manager.c
@@ -39,7 +39,7 @@ void combat_end(gc_engine *engine, bool has_won)
struct dialog_manager *dialog = GETSYS(engine, dialog_manager);
set_combat_player(engine, player_combat, player);
- engine->change_scene(engine, this->game_scene);
+ engine->change_scene(engine, this->game_scene, true);
this->game_scene = NULL;
this->state = ATTACK;
dialog->dialog_id = -1;
diff --git a/src/systems/combat_methods.c b/src/systems/combat_methods.c
index 066f454..61f402e 100644
--- a/src/systems/combat_methods.c
+++ b/src/systems/combat_methods.c
@@ -36,8 +36,7 @@ void combat_start(gc_engine *engine, char *enemy_name)
this->state = ATTACK;
this->game_scene = engine->scene;
set_combat_player(engine, player, player_combat);
- engine->scene = NULL;
- engine->change_scene(engine, scene);
+ engine->change_scene(engine, scene, false);
load_attacks(scene);
dialog_next(engine);
combat_create_enemy(this, engine, enemy_name);