Fix: use Escoria plugin version from plugin.cfg in savegames (#489)
This commit is contained in:
@@ -164,7 +164,11 @@ func save_game_crash():
|
|||||||
# - p_savename: name of the savegame
|
# - p_savename: name of the savegame
|
||||||
func _do_save_game(p_savename: String) -> ESCSaveGame:
|
func _do_save_game(p_savename: String) -> ESCSaveGame:
|
||||||
var save_game = ESCSaveGame.new()
|
var save_game = ESCSaveGame.new()
|
||||||
save_game.escoria_version = escoria.ESCORIA_VERSION
|
|
||||||
|
var plugin_config = ConfigFile.new()
|
||||||
|
plugin_config.load("res://addons/escoria-core/plugin.cfg")
|
||||||
|
save_game.escoria_version = plugin_config.get_value("plugin", "version")
|
||||||
|
|
||||||
save_game.game_version = escoria.project_settings_manager.get_setting(
|
save_game.game_version = escoria.project_settings_manager.get_setting(
|
||||||
escoria.project_settings_manager.GAME_VERSION
|
escoria.project_settings_manager.GAME_VERSION
|
||||||
)
|
)
|
||||||
@@ -383,7 +387,10 @@ func load_game(id: int):
|
|||||||
# Save the game settings in the settings file.
|
# Save the game settings in the settings file.
|
||||||
func save_settings():
|
func save_settings():
|
||||||
var settings_res := ESCSaveSettings.new()
|
var settings_res := ESCSaveSettings.new()
|
||||||
settings_res.escoria_version = escoria.ESCORIA_VERSION
|
var plugin_config = ConfigFile.new()
|
||||||
|
plugin_config.load("res://addons/escoria-core/plugin.cfg")
|
||||||
|
|
||||||
|
settings_res.escoria_version = plugin_config.get_value("plugin", "version")
|
||||||
settings_res.text_lang = escoria.settings.text_lang
|
settings_res.text_lang = escoria.settings.text_lang
|
||||||
settings_res.voice_lang = escoria.settings.voice_lang
|
settings_res.voice_lang = escoria.settings.voice_lang
|
||||||
settings_res.speech_enabled = escoria.settings.speech_enabled
|
settings_res.speech_enabled = escoria.settings.speech_enabled
|
||||||
|
|||||||
@@ -24,9 +24,6 @@ enum GAME_STATE {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
# Escoria version number
|
|
||||||
const ESCORIA_VERSION = "0.1.0"
|
|
||||||
|
|
||||||
# Audio bus indices.
|
# Audio bus indices.
|
||||||
const BUS_MASTER = "Master"
|
const BUS_MASTER = "Master"
|
||||||
const BUS_SFX = "SFX"
|
const BUS_SFX = "SFX"
|
||||||
|
|||||||
@@ -34,11 +34,12 @@ func refresh_savegames():
|
|||||||
$VBoxContainer/ScrollContainer/slots.remove_child(slot)
|
$VBoxContainer/ScrollContainer/slots.remove_child(slot)
|
||||||
|
|
||||||
var saves_list = escoria.save_manager.get_saves_list()
|
var saves_list = escoria.save_manager.get_saves_list()
|
||||||
for i in saves_list.size():
|
for i in range(saves_list.keys().max() + 1):
|
||||||
var save_data = saves_list[i+1]
|
if saves_list.has(i):
|
||||||
var new_slot = slot_ui_scene.instance()
|
var save_data = saves_list[i]
|
||||||
$VBoxContainer/ScrollContainer/slots.add_child(
|
var new_slot = slot_ui_scene.instance()
|
||||||
new_slot
|
$VBoxContainer/ScrollContainer/slots.add_child(
|
||||||
)
|
new_slot
|
||||||
new_slot.set_slot_name_date(save_data["name"], save_data["date"])
|
)
|
||||||
new_slot.connect("pressed", self, "_on_slot_pressed", [i+1])
|
new_slot.set_slot_name_date(save_data["name"], save_data["date"])
|
||||||
|
new_slot.connect("pressed", self, "_on_slot_pressed", [i])
|
||||||
|
|||||||
@@ -34,12 +34,13 @@ func refresh_savegames():
|
|||||||
_slots.remove_child(slot)
|
_slots.remove_child(slot)
|
||||||
|
|
||||||
var saves_list = escoria.save_manager.get_saves_list()
|
var saves_list = escoria.save_manager.get_saves_list()
|
||||||
for i in saves_list.size():
|
for i in range(saves_list.keys().max() + 1):
|
||||||
var save_data = saves_list[i+1]
|
if saves_list.has(i):
|
||||||
var new_slot = slot_ui_scene.instance()
|
var save_data = saves_list[i]
|
||||||
_slots.add_child(new_slot)
|
var new_slot = slot_ui_scene.instance()
|
||||||
new_slot.set_slot_name_date(save_data["name"], save_data["date"])
|
_slots.add_child(new_slot)
|
||||||
new_slot.connect("pressed", self, "_on_slot_pressed", [i+1])
|
new_slot.set_slot_name_date(save_data["name"], save_data["date"])
|
||||||
|
new_slot.connect("pressed", self, "_on_slot_pressed", [i])
|
||||||
|
|
||||||
var datetime = OS.get_datetime()
|
var datetime = OS.get_datetime()
|
||||||
var datetime_string = "%02d/%02d/%02d %02d:%02d" % [
|
var datetime_string = "%02d/%02d/%02d %02d:%02d" % [
|
||||||
|
|||||||
@@ -1,91 +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 = "test"
|
|
||||||
date = "28/11/2021 16:50"
|
|
||||||
main = {
|
|
||||||
"current_scene_filename": "res://game/rooms/room01/room01.tscn",
|
|
||||||
"last_scene_global_id": ""
|
|
||||||
}
|
|
||||||
globals = {
|
|
||||||
"ESC_LAST_SCENE": "",
|
|
||||||
"FORCE_LAST_SCENE_NULL": false,
|
|
||||||
"dialog_advance": 0,
|
|
||||||
"dialog_popup_advance": 0,
|
|
||||||
"room1_visited": true
|
|
||||||
}
|
|
||||||
objects = {
|
|
||||||
"_camera": {
|
|
||||||
"active": true,
|
|
||||||
"interactive": true,
|
|
||||||
"state": "default"
|
|
||||||
},
|
|
||||||
"_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, 870, 461 ),
|
|
||||||
"interactive": true,
|
|
||||||
"last_deg": 71,
|
|
||||||
"last_dir": 2,
|
|
||||||
"state": "default"
|
|
||||||
},
|
|
||||||
"r1_destination_point": {
|
|
||||||
"active": true,
|
|
||||||
"interactive": true,
|
|
||||||
"state": "default"
|
|
||||||
},
|
|
||||||
"r1_destination_point2": {
|
|
||||||
"active": true,
|
|
||||||
"interactive": true,
|
|
||||||
"state": "default"
|
|
||||||
},
|
|
||||||
"r1_destination_point3": {
|
|
||||||
"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"
|
|
||||||
},
|
|
||||||
"trigger_talk": {
|
|
||||||
"active": true,
|
|
||||||
"interactive": true,
|
|
||||||
"state": "default"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,86 +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 = "test2"
|
|
||||||
date = "28/11/2021 16:50"
|
|
||||||
main = {
|
|
||||||
"current_scene_filename": "res://game/rooms/room02/room02.tscn",
|
|
||||||
"last_scene_global_id": ""
|
|
||||||
}
|
|
||||||
globals = {
|
|
||||||
"ESC_LAST_SCENE": "room1",
|
|
||||||
"FORCE_LAST_SCENE_NULL": false,
|
|
||||||
"dialog_advance": 0,
|
|
||||||
"dialog_popup_advance": 0,
|
|
||||||
"room1_visited": true
|
|
||||||
}
|
|
||||||
objects = {
|
|
||||||
"_camera": {
|
|
||||||
"active": true,
|
|
||||||
"interactive": true,
|
|
||||||
"state": "default"
|
|
||||||
},
|
|
||||||
"_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, 52.1462, 384.691 ),
|
|
||||||
"interactive": true,
|
|
||||||
"last_deg": 161,
|
|
||||||
"last_dir": 4,
|
|
||||||
"state": "default"
|
|
||||||
},
|
|
||||||
"r2_bridge": {
|
|
||||||
"active": true,
|
|
||||||
"interactive": false,
|
|
||||||
"state": "default"
|
|
||||||
},
|
|
||||||
"r2_button": {
|
|
||||||
"active": true,
|
|
||||||
"interactive": true,
|
|
||||||
"state": "default"
|
|
||||||
},
|
|
||||||
"r2_button_right": {
|
|
||||||
"active": true,
|
|
||||||
"interactive": true,
|
|
||||||
"state": "default"
|
|
||||||
},
|
|
||||||
"r2_l_exit": {
|
|
||||||
"active": true,
|
|
||||||
"interactive": true,
|
|
||||||
"state": "default"
|
|
||||||
},
|
|
||||||
"r2_player_start": {
|
|
||||||
"active": true,
|
|
||||||
"interactive": true,
|
|
||||||
"state": "default"
|
|
||||||
},
|
|
||||||
"r2_r_exit": {
|
|
||||||
"active": true,
|
|
||||||
"interactive": true,
|
|
||||||
"state": "default"
|
|
||||||
},
|
|
||||||
"r2_right_platform": {
|
|
||||||
"active": true,
|
|
||||||
"interactive": true,
|
|
||||||
"state": "default"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,97 +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 = "custom data"
|
|
||||||
date = "13/01/2022 08:09"
|
|
||||||
main = {
|
|
||||||
"current_scene_filename": "res://game/rooms/room01/room01.tscn",
|
|
||||||
"last_scene_global_id": ""
|
|
||||||
}
|
|
||||||
globals = {
|
|
||||||
"ANIMATION_RESOURCES": {
|
|
||||||
},
|
|
||||||
"ESC_CURRENT_SCENE": "room1",
|
|
||||||
"ESC_LAST_SCENE": "",
|
|
||||||
"FORCE_LAST_SCENE_NULL": false,
|
|
||||||
"dialog_advance": 0,
|
|
||||||
"dialog_popup_advance": 0,
|
|
||||||
"room1_visited": true
|
|
||||||
}
|
|
||||||
objects = {
|
|
||||||
"_camera": {
|
|
||||||
"active": true,
|
|
||||||
"interactive": true,
|
|
||||||
"state": "default"
|
|
||||||
},
|
|
||||||
"_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, 490, 488 ),
|
|
||||||
"interactive": true,
|
|
||||||
"last_deg": 111,
|
|
||||||
"last_dir": 3,
|
|
||||||
"state": "default"
|
|
||||||
},
|
|
||||||
"r1_destination_point": {
|
|
||||||
"active": true,
|
|
||||||
"interactive": true,
|
|
||||||
"state": "default"
|
|
||||||
},
|
|
||||||
"r1_destination_point2": {
|
|
||||||
"active": true,
|
|
||||||
"interactive": true,
|
|
||||||
"state": "default"
|
|
||||||
},
|
|
||||||
"r1_destination_point3": {
|
|
||||||
"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"
|
|
||||||
},
|
|
||||||
"trigger_talk": {
|
|
||||||
"active": true,
|
|
||||||
"interactive": true,
|
|
||||||
"state": "default"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
custom_data = {
|
|
||||||
"ui_type": "9verbs"
|
|
||||||
}
|
|
||||||
Reference in New Issue
Block a user