commit 3bd29e8d55ee7b20760d2e51cd2a8d0acf0284e1
Author: Simon Howard <fraggle@gmail.com>
AuthorDate: Sun Oct 19 01:37:36 2014 -0400
Commit: Simon Howard <fraggle@gmail.com>
CommitDate: Sun Oct 19 01:37:36 2014 -0400
doom: Add game names for Freedoom IWADs.
When playing using one of the Freedoom IWADs, set the gamedescription
string to be the full title of the IWAD being played, rather than
showing "Ultimate Doom" or "Doom II: Hell on Earth" etc.
This fixes #446 (thanks chungy).
---
src/doom/d_main.c | 30 +++++++++++++++++++++++++++---
1 file changed, 27 insertions(+), 3 deletions(-)
diff --git a/src/doom/d_main.c b/src/doom/d_main.c
index 76acaf48..733a11fb 100644
--- a/src/doom/d_main.c
+++ b/src/doom/d_main.c
@@ -752,18 +752,25 @@ void D_IdentifyVersion(void)
void D_SetGameDescription(void)
{
+ boolean is_freedoom = W_CheckNumForName("FREEDOOM") >= 0,
+ is_freedm = W_CheckNumForName("FREEDM") >= 0;
+
gamedescription = "Unknown";
if (logical_gamemission == doom)
{
// Doom 1. But which version?
- if (gamemode == retail)
+ if (is_freedoom)
+ {
+ gamedescription = GetGameName("Freedoom: Phase 1");
+ }
+ else if (gamemode == retail)
{
// Ultimate Doom
gamedescription = GetGameName("The Ultimate DOOM");
- }
+ }
else if (gamemode == registered)
{
gamedescription = GetGameName("DOOM Registered");
@@ -777,12 +784,29 @@ void D_SetGameDescription(void)
{
// Doom 2 of some kind. But which mission?
- if (logical_gamemission == doom2)
+ if (is_freedoom)
+ {
+ if (is_freedm)
+ {
+ gamedescription = GetGameName("FreeDM");
+ }
+ else
+ {
+ gamedescription = GetGameName("Freedoom: Phase 2");
+ }
+ }
+ else if (logical_gamemission == doom2)
+ {
gamedescription = GetGameName("DOOM 2: Hell on Earth");
+ }
else if (logical_gamemission == pack_plut)
+ {
gamedescription = GetGameName("DOOM 2: Plutonia Experiment");
+ }
else if (logical_gamemission == pack_tnt)
+ {
gamedescription = GetGameName("DOOM 2: TNT - Evilution");
+ }
}
}