mirror of
https://github.com/ZDoom/gzdoom.git
synced 2024-11-10 23:01:50 +00:00
- Fixed: G_QueueBody() should only change the translation to one of its
private slots if the one currently used is a player range. - Fixed: Changing the fraglimit during the middle of a game would not trigger a level change if somebody was already over the new limit. SVN r599 (trunk)
This commit is contained in:
parent
8d5402cec2
commit
dd460fed2a
5 changed files with 35 additions and 6 deletions
|
@ -1,4 +1,8 @@
|
||||||
December 14, 2007
|
December 14, 2007
|
||||||
|
- Fixed: G_QueueBody() should only change the translation to one of its
|
||||||
|
private slots if the one currently used is a player range.
|
||||||
|
- Fixed: Changing the fraglimit during the middle of a game would not trigger
|
||||||
|
a level change if somebody was already over the new limit.
|
||||||
- Added "\c" support to ParseCommandLine() when it parses quoted strings.
|
- Added "\c" support to ParseCommandLine() when it parses quoted strings.
|
||||||
- Fixed: When changing your name from the menu, you got an extra " appended
|
- Fixed: When changing your name from the menu, you got an extra " appended
|
||||||
to your name if it ended with a backslash.
|
to your name if it ended with a backslash.
|
||||||
|
|
|
@ -150,7 +150,24 @@ extern cycle_t WallCycles, PlaneCycles, MaskedCycles, WallScanCycles;
|
||||||
|
|
||||||
// PUBLIC DATA DEFINITIONS -------------------------------------------------
|
// PUBLIC DATA DEFINITIONS -------------------------------------------------
|
||||||
|
|
||||||
CVAR (Int, fraglimit, 0, CVAR_SERVERINFO);
|
CUSTOM_CVAR (Int, fraglimit, 0, CVAR_SERVERINFO)
|
||||||
|
{
|
||||||
|
// Check for the fraglimit being hit because the fraglimit is being
|
||||||
|
// lowered below somebody's current frag count.
|
||||||
|
if (deathmatch && self > 0)
|
||||||
|
{
|
||||||
|
for (int i = 0; i < MAXPLAYERS; ++i)
|
||||||
|
{
|
||||||
|
if (playeringame[i] && self <= D_GetFragCount(&players[i]))
|
||||||
|
{
|
||||||
|
Printf ("%s\n", GStrings("TXT_FRAGLIMIT"));
|
||||||
|
G_ExitLevel (0, false);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
CVAR (Float, timelimit, 0.f, CVAR_SERVERINFO);
|
CVAR (Float, timelimit, 0.f, CVAR_SERVERINFO);
|
||||||
CVAR (Bool, queryiwad, true, CVAR_ARCHIVE|CVAR_GLOBALCONFIG);
|
CVAR (Bool, queryiwad, true, CVAR_ARCHIVE|CVAR_GLOBALCONFIG);
|
||||||
CVAR (String, defaultiwad, "", CVAR_ARCHIVE|CVAR_GLOBALCONFIG);
|
CVAR (String, defaultiwad, "", CVAR_ARCHIVE|CVAR_GLOBALCONFIG);
|
||||||
|
|
|
@ -1394,10 +1394,14 @@ static void G_QueueBody (AActor *body)
|
||||||
}
|
}
|
||||||
bodyque[modslot] = body;
|
bodyque[modslot] = body;
|
||||||
|
|
||||||
// Copy the player's translation in case they respawn as something that uses
|
// Copy the player's translation, so that if they change their color later, only
|
||||||
// a different translation range.
|
// their current body will change and not all their old corpses.
|
||||||
R_CopyTranslation (TRANSLATION(TRANSLATION_PlayerCorpses,modslot), body->Translation);
|
if (GetTranslationType(body->Translation) == TRANSLATION_Players ||
|
||||||
body->Translation = TRANSLATION(TRANSLATION_PlayerCorpses,modslot);
|
GetTranslationType(body->Translation) == TRANSLATION_PlayersExtra)
|
||||||
|
{
|
||||||
|
R_CopyTranslation (TRANSLATION(TRANSLATION_PlayerCorpses,modslot), body->Translation);
|
||||||
|
body->Translation = TRANSLATION(TRANSLATION_PlayerCorpses,modslot);
|
||||||
|
}
|
||||||
|
|
||||||
bodyqueslot++;
|
bodyqueslot++;
|
||||||
}
|
}
|
||||||
|
|
|
@ -532,7 +532,7 @@ void AActor::Die (AActor *source, AActor *inflictor)
|
||||||
|
|
||||||
// [RH] Implement fraglimit
|
// [RH] Implement fraglimit
|
||||||
if (deathmatch && fraglimit &&
|
if (deathmatch && fraglimit &&
|
||||||
fraglimit == D_GetFragCount (source->player))
|
fraglimit <= D_GetFragCount (source->player))
|
||||||
{
|
{
|
||||||
Printf ("%s\n", GStrings("TXT_FRAGLIMIT"));
|
Printf ("%s\n", GStrings("TXT_FRAGLIMIT"));
|
||||||
G_ExitLevel (0, false);
|
G_ExitLevel (0, false);
|
||||||
|
|
|
@ -223,6 +223,10 @@ inline WORD TRANSLATION(BYTE a, BYTE b)
|
||||||
{
|
{
|
||||||
return (a<<8) | b;
|
return (a<<8) | b;
|
||||||
}
|
}
|
||||||
|
inline int GetTranslationType(WORD trans)
|
||||||
|
{
|
||||||
|
return trans >> 8;
|
||||||
|
}
|
||||||
|
|
||||||
const int MAX_ACS_TRANSLATIONS = 255;
|
const int MAX_ACS_TRANSLATIONS = 255;
|
||||||
const int MAX_DECORATE_TRANSLATIONS = 255;
|
const int MAX_DECORATE_TRANSLATIONS = 255;
|
||||||
|
|
Loading…
Reference in a new issue