ESC compiler rewrite
Splits the former ESC_Runner and ESC_Level_Runner into multiple dedicated managers. Authored-by: Dennis Ploeger <develop@dieploegers.de>
This commit is contained in:
@@ -19,7 +19,7 @@ font = ExtResource( 2 )
|
||||
margin_left = 20.0
|
||||
margin_top = 20.0
|
||||
margin_right = 1280.0
|
||||
margin_bottom = 800.0
|
||||
margin_bottom = 900.0
|
||||
scroll_horizontal_enabled = false
|
||||
__meta__ = {
|
||||
"_edit_use_anchors_": false
|
||||
|
||||
@@ -2,8 +2,23 @@ extends Control
|
||||
|
||||
|
||||
func _ready():
|
||||
escoria.esc_level_runner.set_sound_state(["bg_music",
|
||||
"res://game/sfx/Game-Menu_Looping.mp3", true])
|
||||
var event = ESCEvent.new(":music")
|
||||
event.statements.append(
|
||||
ESCCommand.new(
|
||||
"set_sound_state bg_music res://game/sfx/Game-Menu_Looping.mp3 true"
|
||||
)
|
||||
)
|
||||
escoria.event_manager.queue_event(event)
|
||||
var rc = yield(event, "finished")
|
||||
|
||||
if rc != ESCExecution.RC_OK:
|
||||
escoria.logger.report_errors(
|
||||
"main_menu: Can't start menu music",
|
||||
[
|
||||
"set_sound_state returned %d" % rc
|
||||
]
|
||||
)
|
||||
return false
|
||||
|
||||
|
||||
func _on_continue_pressed():
|
||||
|
||||
@@ -15,21 +15,21 @@ func _on_language_input(event : InputEvent, language : String):
|
||||
if event.is_pressed():
|
||||
TranslationServer.set_locale(language)
|
||||
escoria.settings["text_lang"] = language
|
||||
escoria.esc_runner.save_data.save_settings(escoria.settings, null)
|
||||
escoria.save_data.save_settings(escoria.settings, null)
|
||||
|
||||
|
||||
func _on_sound_volume_changed(value):
|
||||
escoria.settings["sfx_volume"] = value
|
||||
escoria.esc_runner.save_data.save_settings(escoria.settings, null)
|
||||
escoria.save_data.save_settings(escoria.settings, null)
|
||||
escoria._on_settings_loaded(escoria.settings)
|
||||
|
||||
func _on_music_volume_changed(value):
|
||||
escoria.settings["music_volume"] = value
|
||||
escoria.esc_runner.save_data.save_settings(escoria.settings, null)
|
||||
escoria.save_data.save_settings(escoria.settings, null)
|
||||
escoria._on_settings_loaded(escoria.settings)
|
||||
|
||||
|
||||
func _on_general_volume_changed(value):
|
||||
escoria.settings["master_volume"] = value
|
||||
escoria.esc_runner.save_data.save_settings(escoria.settings, null)
|
||||
escoria.save_data.save_settings(escoria.settings, null)
|
||||
escoria._on_settings_loaded(escoria.settings)
|
||||
|
||||
@@ -23,14 +23,13 @@ func _ready():
|
||||
|
||||
|
||||
func _on_button_pressed():
|
||||
var actual_command = ":debug\nchange_scene " + options_paths[selected_id] + "\n"
|
||||
|
||||
var errors = []
|
||||
var events = escoria.esc_compiler.compile_str(actual_command, errors)
|
||||
var script = escoria.esc_compiler.compile([
|
||||
":debug",
|
||||
"change_scene %s" % options_paths[selected_id]
|
||||
])
|
||||
|
||||
if errors.empty():
|
||||
#past_actions.text += str(events)
|
||||
var _ret = escoria.esc_runner.run_event(events["debug"])
|
||||
escoria.event_manager.queue_event(script.events['debug'])
|
||||
|
||||
func _on_option_item_selected(index):
|
||||
selected_id = index
|
||||
|
||||
Reference in New Issue
Block a user