Add show_menu and hide_menu ESC commands

Fixes godot-escoria/escoria-issues#48
Fix: tween was stopped_all before starting


Fix: reload locale from settings in ESCGame

Since main menu and pause menu are now loaded from ESCGame and not from escoria.gd, this must be done here.
Fix: small crash in load game

But save and load are broken at the moment...
Fix: check save and load after main menu changes


Required fixes


Fix: manage the game scene better in show and hide_menu


Enh: transition back in to the previous room if there was one


Fix a bug occurring where change_scene awaits forever for setup to end


Reworked change_scene and esc_room implementation to avoid yielding


Added a controller variable to allow new event run in events_manager


Don't empty the events queue if the running_event was interrupted


Fixed transitions and automatic transitions in change_scene

Added trace log level (for esc_compiler in particular)
Fixed various bugs in ESC scripts
Fix a bug where exit_scene happened multiple times where fast walking

Needed to clear the event queue
Fixes ready event was run because BYPASS_LAST_SCENE wrongly set


Inverted parameter "disable_automatic_transitions"

for change_scene, hide_menu, show_menu commands
Fix broken sched_event


Fixes as requested in PR
This commit is contained in:
Julian Murgia
2021-11-11 22:20:36 +01:00
parent 59c03dd9e2
commit c86b802cbb
56 changed files with 998 additions and 317 deletions

View File

@@ -6,8 +6,8 @@
script = ExtResource( 1 )
escoria_version = "0.1.0"
game_version = "0.1.0"
name = "3"
date = "11/08/2021 21:14"
name = "Testtt1"
date = "04/11/2021 22:13"
main = {
"current_scene_filename": "res://game/rooms/room01/room01.tscn",
"last_scene_global_id": ""
@@ -18,24 +18,29 @@ globals = {
"room1_visited": true
}
objects = {
"bg_music": {
"active": true,
"interactive": true,
"state": "res://game/sfx/contemplation.ogg"
},
"bg_sound": {
"_camera": {
"active": true,
"interactive": true,
"state": "default"
},
"camera": {
"_music": {
"active": true,
"interactive": true,
"state": "res://game/sfx/contemplation.ogg"
},
"_sound": {
"active": true,
"interactive": true,
"state": "default"
},
"_speech": {
"active": true,
"interactive": true,
"state": "default"
},
"player": {
"active": true,
"global_transform": Transform2D( 1, 0, 0, 1, 621.898, 479.227 ),
"global_transform": Transform2D( 1, 0, 0, 1, 399, 480 ),
"interactive": true,
"last_deg": 71,
"last_dir": 2,
@@ -56,7 +61,7 @@ objects = {
"interactive": true,
"state": "default"
},
"r1_left_object_interaction": {
"r1_destination_point3": {
"active": true,
"interactive": true,
"state": "default"
@@ -81,7 +86,7 @@ objects = {
"interactive": true,
"state": "default"
},
"r2_left_object_interaction": {
"trigger_talk": {
"active": true,
"interactive": true,
"state": "default"

View File

@@ -6,39 +6,45 @@
script = ExtResource( 1 )
escoria_version = "0.1.0"
game_version = "0.1.0"
name = "4"
date = "11/08/2021 21:20"
name = "Test2"
date = "04/11/2021 22:59"
main = {
"current_scene_filename": "res://game/rooms/room01/room01.tscn",
"current_scene_filename": "res://game/rooms/room02/room02.tscn",
"last_scene_global_id": ""
}
globals = {
"dialog_advance": 0,
"dialog_popup_advance": 0,
"r2_bridge_closed": true,
"room1_visited": true
}
objects = {
"bg_music": {
"active": true,
"interactive": true,
"state": "res://game/sfx/contemplation.ogg"
},
"bg_sound": {
"_camera": {
"active": true,
"interactive": true,
"state": "default"
},
"camera": {
"_music": {
"active": true,
"interactive": true,
"state": "res://game/sfx/contemplation.ogg"
},
"_sound": {
"active": true,
"interactive": true,
"state": "default"
},
"_speech": {
"active": true,
"interactive": true,
"state": "default"
},
"player": {
"active": true,
"global_transform": Transform2D( 1, 0, 0, 1, 994.586, 458.862 ),
"global_transform": Transform2D( 1, 0, 0, 1, 1051, 434 ),
"interactive": true,
"last_deg": 71,
"last_dir": 2,
"last_deg": 111,
"last_dir": 3,
"state": "default"
},
"player_start": {
@@ -46,44 +52,39 @@ objects = {
"interactive": true,
"state": "default"
},
"r1_destination_point": {
"r2_bridge": {
"active": true,
"interactive": false,
"state": "bridge_close"
},
"r2_button": {
"active": true,
"interactive": true,
"state": "default"
},
"r1_destination_point2": {
"r2_button_right": {
"active": true,
"interactive": true,
"state": "default"
},
"r1_left_object_interaction": {
"r2_l_exit": {
"active": true,
"interactive": true,
"state": "default"
},
"r1_r_exit": {
"r2_player_start": {
"active": true,
"interactive": true,
"state": "default"
},
"r1_start": {
"r2_r_exit": {
"active": true,
"interactive": true,
"state": "default"
},
"r1_wall_item1": {
"r2_right_platform": {
"active": true,
"interactive": true,
"state": "default"
},
"r1_wall_item2": {
"active": true,
"interactive": true,
"state": "default"
},
"r2_left_object_interaction": {
"active": true,
"interactive": true,
"interactive": false,
"state": "default"
}
}

View File

@@ -1,88 +0,0 @@
[gd_resource type="Resource" load_steps=2 format=2]
[ext_resource path="res://addons/escoria-core/game/core-scripts/save_data/esc_savegame.gd" type="Script" id=1]
[resource]
script = ExtResource( 1 )
escoria_version = "0.1.0"
game_version = "0.1.0"
name = "5"
date = "26/08/2021 08:59"
main = {
"current_scene_filename": "res://game/rooms/room01/room01.tscn",
"last_scene_global_id": ""
}
globals = {
"dialog_advance": 0,
"dialog_popup_advance": 0,
"room1_visited": true
}
objects = {
"bg_music": {
"active": true,
"interactive": true,
"state": "res://game/sfx/contemplation.ogg"
},
"bg_sound": {
"active": true,
"interactive": true,
"state": "default"
},
"camera": {
"active": true,
"interactive": true,
"state": "default"
},
"player": {
"active": true,
"global_transform": Transform2D( 1, 0, 0, 1, 994.586, 458.862 ),
"interactive": true,
"last_dir": 2,
"state": "default"
},
"player_start": {
"active": true,
"interactive": true,
"state": "default"
},
"r1_destination_point": {
"active": true,
"interactive": true,
"state": "default"
},
"r1_destination_point2": {
"active": true,
"interactive": true,
"state": "default"
},
"r1_left_object_interaction": {
"active": true,
"interactive": true,
"state": "default"
},
"r1_r_exit": {
"active": true,
"interactive": true,
"state": "default"
},
"r1_start": {
"active": true,
"interactive": true,
"state": "default"
},
"r1_wall_item1": {
"active": true,
"interactive": true,
"state": "default"
},
"r1_wall_item2": {
"active": true,
"interactive": true,
"state": "default"
},
"r2_left_object_interaction": {
"active": true,
"interactive": true,
"state": "default"
}
}