- Fixed: The "same level" dmflag did not work.

- Changed the nextlevel global var to an FString.


SVN r1196 (trunk)
This commit is contained in:
Randy Heit 2008-09-05 02:55:44 +00:00
parent fae19e87b7
commit ab3363dc1e
2 changed files with 23 additions and 9 deletions

View file

@ -1,3 +1,17 @@
September 4, 2008
- Fixed: The "same level" dmflag did not work.
- Changed the nextlevel global var to an FString.
- Implemented some more controllers for the OPL player:
* RPN select (controllers 100 and 101)
* RPN 0 (pitch bend sensitivity)
* NPRN select (controllers 98 and 99)
* Data entry (controllers 6 and 38)
* All notes off (controller 123)
* All sounds off (controller 120)
* Reset controllers (controller 121)
- Added pixel doubling and quadrupling for fullscreen DirectDraw modes.
The command line options -2 and -4 can be used to force them.
September 4, 2008 (Changes by Graf Zahl) September 4, 2008 (Changes by Graf Zahl)
- Fixed: Red blood particles used too dark colors. - Fixed: Red blood particles used too dark colors.
- Fixed: The smoothlighting code in side_t::GetLightLevel relied on - Fixed: The smoothlighting code in side_t::GetLightLevel relied on

View file

@ -1819,7 +1819,7 @@ void G_InitNew (const char *mapname, bool bTitleLevel)
// //
// G_DoCompleted // G_DoCompleted
// //
static char nextlevel[9]; static FString nextlevel;
static int startpos; // [RH] Support for multiple starts per level static int startpos; // [RH] Support for multiple starts per level
extern int NoWipe; // [RH] Don't wipe when travelling in hubs extern int NoWipe; // [RH] Don't wipe when travelling in hubs
static bool startkeepfacing; // [RH] Support for keeping your facing angle static bool startkeepfacing; // [RH] Support for keeping your facing angle
@ -1840,15 +1840,14 @@ void G_ChangeLevel(const char * levelname, int position, bool keepFacing, int ne
return; return;
} }
strncpy (nextlevel, levelname, 8); nextlevel = levelname;
nextlevel[8] = 0;
if (strncmp(nextlevel, "enDSeQ", 6)) if (strncmp(levelname, "enDSeQ", 6))
{ {
level_info_t *nextinfo = CheckLevelRedirect (FindLevelInfo (nextlevel)); level_info_t *nextinfo = CheckLevelRedirect (FindLevelInfo (nextlevel));
if (nextinfo) if (nextinfo)
{ {
strncpy(nextlevel, nextinfo->mapname, 8); nextlevel = nextinfo->mapname;
} }
} }
@ -1944,7 +1943,7 @@ void G_DoCompleted (void)
if (gamestate == GS_TITLELEVEL) if (gamestate == GS_TITLELEVEL)
{ {
strncpy (level.mapname, nextlevel, 8); strncpy (level.mapname, nextlevel, 255);
G_DoLoadLevel (startpos, false); G_DoLoadLevel (startpos, false);
startpos = 0; startpos = 0;
viewactive = true; viewactive = true;
@ -1985,8 +1984,9 @@ void G_DoCompleted (void)
} }
CheckWarpTransMap (wminfo.next, true); CheckWarpTransMap (wminfo.next, true);
nextlevel = wminfo.next;
wminfo.next_ep = FindLevelInfo (nextlevel)->cluster - 1; wminfo.next_ep = FindLevelInfo (wminfo.next)->cluster - 1;
wminfo.maxkills = level.total_monsters; wminfo.maxkills = level.total_monsters;
wminfo.maxitems = level.total_items; wminfo.maxitems = level.total_items;
wminfo.maxsecret = level.total_secrets; wminfo.maxsecret = level.total_secrets;
@ -2318,7 +2318,7 @@ void G_DoWorldDone (void)
} }
else else
{ {
strncpy (level.mapname, nextlevel, 8); strncpy (level.mapname, nextlevel, 255);
} }
G_StartTravel (); G_StartTravel ();
G_DoLoadLevel (startpos, true); G_DoLoadLevel (startpos, true);