Update to ZDoom r1069:

- Added a check to G_DoSaveGame() to prevent saving when you're not actually
  in a level.
- Fixed: Serialized player data must always be loaded, even if it's simply to
  be discarded, so that anything serialized after the players will load from
  the correct position in the file when revisiting a hub map.
- Changed: AInventory::Tick now only calls the super method if the item is not
  owned. Having owned inventory items interact with the world is not supposed
  to happen.
- Fixed: case PCD_SECTORDAMAGE in p_acs.cpp was missing a terminating 'break'.
- Fixed: When a weapon is destroyed, its sister weapon must also be destroyed.
- Added a check for PUFFGETSOWNER to A_BFGSpray.
- Moved the PUFFGETSOWNER check into P_SpawnPuff and removed the limitation
  to players only.
- Fixed: P_SpawnMapThing still checked FMapThing::flags for the class bits 
  instead of FMapThing::ClassFilter.
- Fixed: A_CustomMissile must not let P_SpawnMissile call P_CheckMissileSpawn.
  It must do this itself after setting the proper owner.
- Fixed: CCMD(give) increased the total item count.
- Fixed: A_Stop didn't set the player specific variables to 0.
- Fixed: Screenwipes now pause sounds, since there can be sounds playing
  during them.
- UI sounds are now omitted from savegames.
- Fixed: Menu sounds had been restricted to one at a time again.
- Moved the P_SerializeSounds() call to the end of G_SerializeLevel() so that
  it will occur after the players are loaded.
- Added fixes from FreeBSD for 0-length and very large string buffers
  passed to myvsnprintf.


git-svn-id: http://mancubus.net/svn/hosted/gzdoom/trunk@131 b0f79afe-0144-0410-b225-9a4edf0717df
This commit is contained in:
Christoph Oelckers 2008-07-06 17:32:31 +00:00
parent bc28486753
commit 45d3093f18
35 changed files with 393 additions and 139 deletions

View file

@ -602,28 +602,28 @@ CCMD (menu_help)
CCMD (quicksave)
{ // F6
//M_StartControlPanel (true);
S_Sound (CHAN_VOICE, "menu/activate", 1, ATTN_NONE);
S_Sound (CHAN_VOICE | CHAN_UI, "menu/activate", 1, ATTN_NONE);
M_QuickSave();
}
CCMD (quickload)
{ // F9
//M_StartControlPanel (true);
S_Sound (CHAN_VOICE, "menu/activate", 1, ATTN_NONE);
S_Sound (CHAN_VOICE | CHAN_UI, "menu/activate", 1, ATTN_NONE);
M_QuickLoad();
}
CCMD (menu_endgame)
{ // F7
//M_StartControlPanel (true);
S_Sound (CHAN_VOICE, "menu/activate", 1, ATTN_NONE);
S_Sound (CHAN_VOICE | CHAN_UI, "menu/activate", 1, ATTN_NONE);
M_EndGame(0);
}
CCMD (menu_quit)
{ // F10
//M_StartControlPanel (true);
S_Sound (CHAN_VOICE, "menu/activate", 1, ATTN_NONE);
S_Sound (CHAN_VOICE | CHAN_UI, "menu/activate", 1, ATTN_NONE);
M_QuitGame(0);
}
@ -1380,7 +1380,7 @@ void M_QuickSaveResponse (int ch)
if (ch == 'y')
{
M_DoSave (quickSaveSlot);
S_Sound (CHAN_VOICE, "menu/dismiss", 1, ATTN_NONE);
S_Sound (CHAN_VOICE | CHAN_UI, "menu/dismiss", 1, ATTN_NONE);
}
}
@ -1388,7 +1388,7 @@ void M_QuickSave ()
{
if (!usergame || (players[consoleplayer].health <= 0 && !multiplayer))
{
S_Sound (CHAN_VOICE, "menu/invalid", 1, ATTN_NONE);
S_Sound (CHAN_VOICE | CHAN_UI, "menu/invalid", 1, ATTN_NONE);
return;
}
@ -1416,7 +1416,7 @@ void M_QuickLoadResponse (int ch)
if (ch == 'y')
{
M_LoadSelect (quickSaveSlot);
S_Sound (CHAN_VOICE, "menu/dismiss", 1, ATTN_NONE);
S_Sound (CHAN_VOICE | CHAN_UI, "menu/dismiss", 1, ATTN_NONE);
}
}
@ -1893,7 +1893,7 @@ void M_EndGame(int choice)
choice = 0;
if (!usergame)
{
S_Sound (CHAN_VOICE, "menu/invalid", 1, ATTN_NONE);
S_Sound (CHAN_VOICE | CHAN_UI, "menu/invalid", 1, ATTN_NONE);
return;
}
@ -1955,7 +1955,7 @@ void M_QuitResponse(int ch)
{
if (gameinfo.quitSound)
{
S_Sound (CHAN_VOICE, gameinfo.quitSound, 1, ATTN_NONE);
S_Sound (CHAN_VOICE | CHAN_UI, gameinfo.quitSound, 1, ATTN_NONE);
I_WaitVBL (105);
}
}
@ -2688,7 +2688,7 @@ void M_StartMessage (const char *string, void (*routine)(int), bool input)
if (input)
{
S_StopSound (CHAN_VOICE);
S_Sound (CHAN_VOICE, "menu/prompt", 1, ATTN_NONE);
S_Sound (CHAN_VOICE | CHAN_UI, "menu/prompt", 1, ATTN_NONE);
}
return;
}
@ -2844,7 +2844,7 @@ bool M_Responder (event_t *ev)
}
SB_state = screen->GetPageCount (); // refresh the statbar
BorderNeedRefresh = screen->GetPageCount ();
S_Sound (CHAN_VOICE, "menu/dismiss", 1, ATTN_NONE);
S_Sound (CHAN_VOICE | CHAN_UI, "menu/dismiss", 1, ATTN_NONE);
return true;
}
@ -2871,7 +2871,7 @@ bool M_Responder (event_t *ev)
if (itemOn+1 > currentMenu->numitems-1)
itemOn = 0;
else itemOn++;
S_Sound (CHAN_VOICE, "menu/cursor", 1, ATTN_NONE);
S_Sound (CHAN_VOICE | CHAN_UI, "menu/cursor", 1, ATTN_NONE);
} while(currentMenu->menuitems[itemOn].status==-1);
return true;
@ -2881,7 +2881,7 @@ bool M_Responder (event_t *ev)
if (!itemOn)
itemOn = currentMenu->numitems-1;
else itemOn--;
S_Sound (CHAN_VOICE, "menu/cursor", 1, ATTN_NONE);
S_Sound (CHAN_VOICE | CHAN_UI, "menu/cursor", 1, ATTN_NONE);
} while(currentMenu->menuitems[itemOn].status==-1);
return true;
@ -2889,7 +2889,7 @@ bool M_Responder (event_t *ev)
if (currentMenu->menuitems[itemOn].routine &&
currentMenu->menuitems[itemOn].status == 2)
{
S_Sound (CHAN_VOICE, "menu/change", 1, ATTN_NONE);
S_Sound (CHAN_VOICE | CHAN_UI, "menu/change", 1, ATTN_NONE);
currentMenu->menuitems[itemOn].routine(0);
}
return true;
@ -2898,7 +2898,7 @@ bool M_Responder (event_t *ev)
if (currentMenu->menuitems[itemOn].routine &&
currentMenu->menuitems[itemOn].status == 2)
{
S_Sound (CHAN_VOICE, "menu/change", 1, ATTN_NONE);
S_Sound (CHAN_VOICE | CHAN_UI, "menu/change", 1, ATTN_NONE);
currentMenu->menuitems[itemOn].routine(1);
}
return true;
@ -2911,12 +2911,12 @@ bool M_Responder (event_t *ev)
if (currentMenu->menuitems[itemOn].status == 2)
{
currentMenu->menuitems[itemOn].routine(1); // right arrow
S_Sound (CHAN_VOICE, "menu/change", 1, ATTN_NONE);
S_Sound (CHAN_VOICE | CHAN_UI, "menu/change", 1, ATTN_NONE);
}
else
{
currentMenu->menuitems[itemOn].routine(itemOn);
S_Sound (CHAN_VOICE, "menu/choose", 1, ATTN_NONE);
S_Sound (CHAN_VOICE | CHAN_UI, "menu/choose", 1, ATTN_NONE);
}
}
return true;
@ -2945,7 +2945,7 @@ bool M_Responder (event_t *ev)
if (currentMenu->menuitems[i].alphaKey == ch)
{
itemOn = i;
S_Sound (CHAN_VOICE, "menu/cursor", 1, ATTN_NONE);
S_Sound (CHAN_VOICE | CHAN_UI, "menu/cursor", 1, ATTN_NONE);
return true;
}
}
@ -3120,7 +3120,7 @@ void M_StartControlPanel (bool makeSound)
if (makeSound)
{
S_Sound (CHAN_VOICE, "menu/activate", 1, ATTN_NONE);
S_Sound (CHAN_VOICE | CHAN_UI, "menu/activate", 1, ATTN_NONE);
}
}
@ -3354,12 +3354,12 @@ void M_PopMenuStack (void)
}
drawSkull = MenuStack[MenuStackDepth].drawSkull;
++MenuStackDepth;
S_Sound (CHAN_VOICE, "menu/backup", 1, ATTN_NONE);
S_Sound (CHAN_VOICE | CHAN_UI, "menu/backup", 1, ATTN_NONE);
}
else
{
M_ClearMenus ();
S_Sound (CHAN_VOICE, "menu/clear", 1, ATTN_NONE);
S_Sound (CHAN_VOICE | CHAN_UI, "menu/clear", 1, ATTN_NONE);
}
}