Merge pull request #17048 from hpvb/fix-17028
Allow running with a custom resource without a main scene
This commit is contained in:
commit
636e48b707
|
@ -349,6 +349,7 @@ Error Main::setup(const char *execpath, int argc, char *argv[], bool p_second_ph
|
|||
Vector<String> breakpoints;
|
||||
bool use_custom_res = true;
|
||||
bool force_res = false;
|
||||
bool found_project = false;
|
||||
|
||||
packed_data = PackedData::get_singleton();
|
||||
if (!packed_data)
|
||||
|
@ -760,7 +761,9 @@ Error Main::setup(const char *execpath, int argc, char *argv[], bool p_second_ph
|
|||
|
||||
#endif
|
||||
|
||||
if (globals->setup(game_path, main_pack, upwards) != OK) {
|
||||
if (globals->setup(game_path, main_pack, upwards) == OK) {
|
||||
found_project = true;
|
||||
} else {
|
||||
|
||||
#ifdef TOOLS_ENABLED
|
||||
editor = false;
|
||||
|
@ -768,15 +771,6 @@ Error Main::setup(const char *execpath, int argc, char *argv[], bool p_second_ph
|
|||
OS::get_singleton()->print("Error: Could not load game path '%s'.\n", game_path.ascii().get_data());
|
||||
|
||||
goto error;
|
||||
#endif
|
||||
} else if (String(GLOBAL_DEF("application/run/main_scene", "")) == "") {
|
||||
#ifdef TOOLS_ENABLED
|
||||
if (!editor) {
|
||||
#endif
|
||||
OS::get_singleton()->print("Error: Can't run project: no main scene defined.\n");
|
||||
goto error;
|
||||
#ifdef TOOLS_ENABLED
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
|
@ -801,14 +795,21 @@ Error Main::setup(const char *execpath, int argc, char *argv[], bool p_second_ph
|
|||
|
||||
if (!project_manager) {
|
||||
// Determine if the project manager should be requested
|
||||
project_manager =
|
||||
main_args.size() == 0 &&
|
||||
!ProjectSettings::get_singleton()->has_setting("application/run/main_loop_type") &&
|
||||
(!ProjectSettings::get_singleton()->has_setting("application/run/main_scene") ||
|
||||
String(ProjectSettings::get_singleton()->get("application/run/main_scene")) == "");
|
||||
project_manager = main_args.size() == 0 && !found_project;
|
||||
}
|
||||
#endif
|
||||
|
||||
if (main_args.size() == 0 && String(GLOBAL_DEF("application/run/main_scene", "")) == "") {
|
||||
#ifdef TOOLS_ENABLED
|
||||
if (!editor && !project_manager) {
|
||||
#endif
|
||||
OS::get_singleton()->print("Error: Can't run project: no main scene defined.\n");
|
||||
goto error;
|
||||
#ifdef TOOLS_ENABLED
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
if (editor || project_manager) {
|
||||
use_custom_res = false;
|
||||
input_map->load_default(); //keys for editor
|
||||
|
|
Loading…
Reference in New Issue