From 05df36ca6fca470301a4813fd54aee36b8632aeb Mon Sep 17 00:00:00 2001 From: Guusggg Date: Mon, 30 Sep 2024 20:25:00 +0200 Subject: [PATCH 1/4] Fix invalid script assigned to --- ...enchbroom_game_config_folder.gd => trenchbroom_game_config.gd} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename addons/qodot/src/resources/game-definitions/trenchbroom/{trenchbroom_game_config_folder.gd => trenchbroom_game_config.gd} (100%) diff --git a/addons/qodot/src/resources/game-definitions/trenchbroom/trenchbroom_game_config_folder.gd b/addons/qodot/src/resources/game-definitions/trenchbroom/trenchbroom_game_config.gd similarity index 100% rename from addons/qodot/src/resources/game-definitions/trenchbroom/trenchbroom_game_config_folder.gd rename to addons/qodot/src/resources/game-definitions/trenchbroom/trenchbroom_game_config.gd From 36bb63cc9339bcf995aeffaaba5301a28981341e Mon Sep 17 00:00:00 2001 From: Guusggg Date: Mon, 30 Sep 2024 20:36:01 +0200 Subject: [PATCH 2/4] Fix invalid Trenchbroom file format: Updated to version 8 --- .../game-definitions/trenchbroom/trenchbroom_game_config.gd | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/addons/qodot/src/resources/game-definitions/trenchbroom/trenchbroom_game_config.gd b/addons/qodot/src/resources/game-definitions/trenchbroom/trenchbroom_game_config.gd index 1c6ea54..0d4f377 100644 --- a/addons/qodot/src/resources/game-definitions/trenchbroom/trenchbroom_game_config.gd +++ b/addons/qodot/src/resources/game-definitions/trenchbroom/trenchbroom_game_config.gd @@ -35,7 +35,7 @@ var fgd_filenames : Array = [] ## Private default .cfg contents, read more at: https://trenchbroom.github.io/manual/latest/#game_configuration_files var base_text: String = """{ - version: 3, + version: 8, name: "%s", icon: "Icon.png", "fileformats": [ @@ -52,8 +52,8 @@ var base_text: String = """{ "packageformat": { "extension": "pak", "format": "idpak" } }, "textures": { - "package": { "type": "directory", "root": "textures" }, - "format": { "extensions": ["bmp", "exr", "hdr", "jpeg", "jpg", "png", "tga", "webp"], "format": "image" }, + "root": "textures", + "extensions": ["bmp", "exr", "hdr", "jpeg", "jpg", "png", "tga", "webp"], "attribute": "_tb_textures" }, "entities": { From 63ace0f1d5b8de58470cdebfd527046879fda13d Mon Sep 17 00:00:00 2001 From: Guusggg Date: Mon, 30 Sep 2024 20:46:18 +0200 Subject: [PATCH 3/4] Change the way the format string is handled --- .../trenchbroom/trenchbroom_game_config.gd | 30 +++++++++---------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/addons/qodot/src/resources/game-definitions/trenchbroom/trenchbroom_game_config.gd b/addons/qodot/src/resources/game-definitions/trenchbroom/trenchbroom_game_config.gd index 0d4f377..8889b97 100644 --- a/addons/qodot/src/resources/game-definitions/trenchbroom/trenchbroom_game_config.gd +++ b/addons/qodot/src/resources/game-definitions/trenchbroom/trenchbroom_game_config.gd @@ -36,7 +36,7 @@ var fgd_filenames : Array = [] ## Private default .cfg contents, read more at: https://trenchbroom.github.io/manual/latest/#game_configuration_files var base_text: String = """{ version: 8, - name: "%s", + name: "{game_name}", icon: "Icon.png", "fileformats": [ { "format": "Standard", "initialmap": "initial_standard.map" }, @@ -52,29 +52,29 @@ var base_text: String = """{ "packageformat": { "extension": "pak", "format": "idpak" } }, "textures": { - "root": "textures", + "root": "assets/textures", "extensions": ["bmp", "exr", "hdr", "jpeg", "jpg", "png", "tga", "webp"], "attribute": "_tb_textures" }, "entities": { - "definitions": [ %s ], + "definitions": [ {definitions} ], "defaultcolor": "0.6 0.6 0.6 1.0", "modelformats": [ "mdl", "md2", "md3", "bsp", "dkm" ] }, "tags": { "brush": [ - %s + {brush_tags} ], "brushface": [ - %s + {face_tags} ] }, "faceattribs": { "surfaceflags": [ - %s + {surface_attributes} ], "contentflags": [ - %s + {context_attributes} ] } } @@ -155,14 +155,14 @@ func build_class_text() -> String: var surface_flags_str = parse_flags(face_attrib_surface_flags) var content_flags_str = parse_flags(face_attrib_content_flags) - return base_text % [ - game_name, - fgd_filename_str, - brush_tags_str, - face_tags_str, - surface_flags_str, - content_flags_str - ] + return base_text.format({ + "game_name": game_name, + "definitions": fgd_filename_str, + "brush_tags": brush_tags_str, + "face_tags": face_tags_str, + "surface_attributes": surface_flags_str, + "context_attributes": content_flags_str + }) ## Matches tag key enum to the String name used in .cfg static func get_match_key(tag_match_type: int) -> String: From 5d7d16851e6b2f4097816b280a36fbf029fe2c49 Mon Sep 17 00:00:00 2001 From: Guusggg Date: Mon, 30 Sep 2024 20:47:55 +0200 Subject: [PATCH 4/4] Add variable to change the texture path --- .../game-definitions/trenchbroom/trenchbroom_game_config.gd | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/addons/qodot/src/resources/game-definitions/trenchbroom/trenchbroom_game_config.gd b/addons/qodot/src/resources/game-definitions/trenchbroom/trenchbroom_game_config.gd index 8889b97..6ded058 100644 --- a/addons/qodot/src/resources/game-definitions/trenchbroom/trenchbroom_game_config.gd +++ b/addons/qodot/src/resources/game-definitions/trenchbroom/trenchbroom_game_config.gd @@ -11,6 +11,7 @@ export(String, DIR, GLOBAL) var trenchbroom_games_folder : String ## Name of the game in Trenchbroom's game list export(String) var game_name := "Qodot" +export(String, DIR) var texture_path := "res://textures" ## Icon for Trenchbroom's game list export(Texture) var icon : Texture @@ -52,7 +53,7 @@ var base_text: String = """{ "packageformat": { "extension": "pak", "format": "idpak" } }, "textures": { - "root": "assets/textures", + "root": "{texture_path}", "extensions": ["bmp", "exr", "hdr", "jpeg", "jpg", "png", "tga", "webp"], "attribute": "_tb_textures" }, @@ -161,7 +162,8 @@ func build_class_text() -> String: "brush_tags": brush_tags_str, "face_tags": face_tags_str, "surface_attributes": surface_flags_str, - "context_attributes": content_flags_str + "context_attributes": content_flags_str, + "texture_path": texture_path.replace("res://", "") }) ## Matches tag key enum to the String name used in .cfg