]> git.xonotic.org Git - xonotic/darkplaces.git/commitdiff
Recognise mods Quake 1.5 and Quake Combat+
authorbones_was_here <bones_was_here@xonotic.au>
Sun, 28 Apr 2024 00:17:22 +0000 (10:17 +1000)
committerbones_was_here <bones_was_here@xonotic.au>
Thu, 2 May 2024 22:22:21 +0000 (08:22 +1000)
Their instructions both say "-game quake15" so they're currently
indistinguishable, but currently both require the same workarounds.

Closes https://github.com/DarkPlacesEngine/darkplaces/issues/164

Signed-off-by: bones_was_here <bones_was_here@xonotic.au>
cmd.c
com_game.c
com_game.h

diff --git a/cmd.c b/cmd.c
index b67179b5719cc25ae8b4f387ce25cdba8b1ceb48..4f9f3e489588214ea0cb8e2fc877b44217f3d32b 100644 (file)
--- a/cmd.c
+++ b/cmd.c
@@ -746,6 +746,12 @@ static void Cmd_Exec(cmd_state_t *cmd, const char *filename)
 "csqc_polygons_defaultmaterial_nocullface 1\n"
                                );
                        break;
+               case GAME_QUAKE15:
+                       Cbuf_InsertText(cmd, "\n"
+"sv_gameplayfix_impactbeforeonground 1\n"
+"sv_gameplayfix_unstickentities 1\n"
+                       );
+                       break;
                default:
                        Cbuf_InsertText(cmd, "\n"
 "sv_gameplayfix_blowupfallenzombies 1\n"
index b6a215647534ee8cedc4f916b1d28788e46d1f2f..74ca8552af296c973a97bceb5660804141cbce64 100644 (file)
@@ -86,6 +86,7 @@ static const gamemode_info_t gamemode_info [GAME_COUNT] =
 { GAME_VORETOURNAMENT,                 GAME_VORETOURNAMENT,            "voretournament",               "-voretournament",                      "Vore Tournament",                      "Vore_Tournament",                      "data",         NULL,                   "voretournament",       "voretournament"                }, // COMMANDLINEOPTION: Game: -voretournament runs the multiplayer game Vore Tournament
 { GAME_DOOMBRINGER,                            GAME_DOOMBRINGER,                       "doombringer",                  "-doombringer",                         "DOOMBRINGER",                          "DOOMBRINGER",                          "dbdata",       NULL,                   "doombringer",          "doombringer"                   }, // COMMANDLINEOPTION: Game: -doombringer runs the game DOOMBRINGER
 { GAME_BATTLEMETAL,                            GAME_NORMAL,                            "battlemetal",                  "-battlemetal",                         "battlemetal",                          "battlemetal",                          "metaldata",    NULL,           "battlemetal",          "battlemetal"                   }, // COMMANDLINEOPTION: Game: -battlemetal runs the game battleMETAL
+{ GAME_QUAKE15,                                        GAME_NORMAL,                            "quake15",                              "-quake15",                                     "Quake 1.5",                            "Quake_1.5",                            "id1",          "quake15",              "quake15",                      "darkplaces"                    }, // COMMANDLINEOPTION: Game: -quake15 runs the Quake 1.5 or Quake Combat+ mod
 };
 
 static void COM_SetGameType(int index);
index aa2cdbe6d8754bb89dd7c801f15dca1385a89526..43bac1da4c54a8861ae9c71e7affd267e08bd2cb 100644 (file)
@@ -60,6 +60,7 @@ typedef enum gamemode_e
        GAME_VORETOURNAMENT,
        GAME_DOOMBRINGER, // added by Cloudwalk for kristus
        GAME_BATTLEMETAL, // added by Cloudwalk for Subject9x
+       GAME_QUAKE15, // added by bones_was_here as it depends on an old bug and a workaround
        GAME_COUNT
 }
 gamemode_t;