- ZDoom now loads zdoom.pk3 instead of zdoom.wad.

- Fixed: StreamSong::SetVolume should check the m_stream pointer. This can
  happen when a TimiditySong doesn't use FMOD and outputs the sound itself.
- Fixed: 'use' sector actions were using the incorrect sector on several 
  occasions.
- Added a wi_noautostartmap CVAR and a noautostartmap intermission option
  that force the user to manually end the 'entering level' page.


SVN r70 (trunk)
This commit is contained in:
Christoph Oelckers 2006-04-29 12:40:09 +00:00
parent 75aec5dde9
commit eff7c898cf
16 changed files with 195 additions and 159 deletions

View file

@ -1,3 +1,12 @@
April 29, 2006 (Changes by Graf Zahl)
- ZDoom now loads zdoom.pk3 instead of zdoom.wad.
- Fixed: StreamSong::SetVolume should check the m_stream pointer. This can
happen when a TimiditySong doesn't use FMOD and outputs the sound itself.
- Fixed: 'use' sector actions were using the incorrect sector on several
occasions.
- Added a wi_noautostartmap CVAR and a noautostartmap intermission option
that force the user to manually end the 'entering level' page.
April 23, 2006 (Changes by Graf Zahl)
- Added a clipmidtextures level flag which exposes the ML_CLIP_MIDTEX
feature globally per level. Also moved the setting of this flag for Strife

View file

@ -1921,14 +1921,14 @@ void D_DoomMain (void)
M_FindResponseFile ();
M_LoadDefaults (); // load before initing other systems
// [RH] Make sure zdoom.wad is always loaded,
// [RH] Make sure zdoom.pk3 is always loaded,
// as it contains magic stuff we need.
wad = BaseFileSearch ("zdoom.wad", NULL, true);
wad = BaseFileSearch ("zdoom.pk3", NULL, true);
if (wad)
D_AddFile (wad);
else
I_FatalError ("Cannot find zdoom.wad");
I_FatalError ("Cannot find zdoom.pk3");
I_SetTitleString (IWADTypeNames[IdentifyVersion ()]);
GameConfig->DoGameSetup (GameNames[gameinfo.gametype]);

View file

@ -11,6 +11,7 @@
#include "p_effect.h"
#include "gi.h"
#include "templates.h"
#include "thingdef.h"
static FRandom pr_punch ("Punch");
static FRandom pr_saw ("Saw");
@ -1337,7 +1338,6 @@ void A_FireBFG (AActor *actor)
player->userinfo.aimdist = storedaimdist;
}
int EvalExpressionI (int id, AActor *self);
//
// A_BFGSpray
// Spawn a BFG explosion on every monster in view

View file

@ -3186,10 +3186,26 @@ blocked:
(in->d.line->special != 0 && (compatflags & COMPATF_USEBLOCKING)))
{
// [RH] Give sector a chance to intercept the use
sector_t *sec = in->d.line->frontsector;
if ((!sec->SecActTarget ||
!sec->SecActTarget->TriggerAction (usething, SECSPAC_Use|SECSPAC_UseWall))
&& usething->player)
sector_t * sec;
sec = usething->Sector;
if (sec->SecActTarget && sec->SecActTarget->TriggerAction (usething, SECSPAC_Use))
{
return false;
}
sec = P_PointOnLineSide(usething->x, usething->y, in->d.line) == 0?
in->d.line->frontsector : in->d.line->backsector;
if (sec != NULL && sec->SecActTarget &&
sec->SecActTarget->TriggerAction (usething, SECSPAC_UseWall))
{
return false;
}
if (usething->player)
{
S_Sound (usething, CHAN_VOICE, "*usefail", 1, ATTN_IDLE);
}
@ -3202,7 +3218,7 @@ blocked:
if (P_PointOnLineSide (usething->x, usething->y, in->d.line) == 1)
// [RH] continue traversal for two-sided lines
//return in->d.line->backsector != NULL; // don't use back side
goto blocked; // do a proper check for back sides of triggers!
goto blocked; // do a proper check for back sides of triggers
P_ActivateLine (in->d.line, usething, 0, SPAC_USE);

View file

@ -1477,7 +1477,7 @@ void P_LoadLineDefs (int lump)
P_AdjustLine (ld);
P_SaveLineSpecial (ld);
if (level.flags&LEVEL_CLIPMIDTEX) ld.flags|=ML_CLIP_MIDTEX;
if (level.flags&LEVEL_CLIPMIDTEX) ld->flags|=ML_CLIP_MIDTEX;
}
}
@ -1548,7 +1548,7 @@ void P_LoadLineDefs2 (int lump)
P_AdjustLine (ld);
P_SaveLineSpecial (ld);
if (level.flags&LEVEL_CLIPMIDTEX) ld.flags|=ML_CLIP_MIDTEX;
if (level.flags&LEVEL_CLIPMIDTEX) ld->flags|=ML_CLIP_MIDTEX;
}
}

View file

@ -147,7 +147,7 @@ int main (int argc, char **argv)
}
atterm (SDL_Quit);
SDL_WM_SetCaption ("ZDOOM " DOTVERSIONSTR " (" __DATE__ ")", NULL);
SDL_WM_SetCaption (GAMESIG " " DOTVERSIONSTR " (" __DATE__ ")", NULL);
try
{

View file

@ -2,7 +2,7 @@
void StreamSong::SetVolume (float volume)
{
m_Stream->SetVolume (volume);
if (m_Stream!=NULL) m_Stream->SetVolume (volume);
}
void StreamSong::Play (bool looping)

View file

@ -57,6 +57,7 @@ typedef enum
CVAR (Bool, wi_percents, true, CVAR_ARCHIVE)
CVAR (Bool, wi_showtotaltime, true, CVAR_ARCHIVE)
CVAR (Bool, wi_noautostartmap, false, CVAR_ARCHIVE)
void WI_loadData ();
@ -200,6 +201,7 @@ static int cnt_time;
static int cnt_total_time;
static int cnt_par;
static int cnt_pause;
static bool noautostartmap;
//
// GRAPHICS
@ -263,6 +265,8 @@ static const char *WI_Cmd[]={
"Animation",
"Pic",
"NoAutostartMap",
NULL
};
@ -482,6 +486,10 @@ void WI_LoadBackground(bool isenterpic)
SC_MustGetString();
caseval=SC_MustMatchString(WI_Cmd);
case 14: // NoAutostartMap
noautostartmap=true;
break;
default:
switch (caseval)
{
@ -1052,7 +1060,11 @@ void WI_updateNoState ()
{
WI_updateAnimatedBack();
if (!--cnt)
if (!wi_noautostartmap && !noautostartmap) cnt--;
if (acceleratestage) cnt=0;
if (cnt==0)
{
WI_End();
G_WorldDone();
@ -2070,6 +2082,7 @@ void WI_initVariables (wbstartstruct_t *wbstartstruct)
void WI_Start (wbstartstruct_t *wbstartstruct)
{
noautostartmap = false;
V_SetBlend (0,0,0,0);
WI_initVariables (wbstartstruct);
WI_loadData ();

View file

@ -308,7 +308,7 @@ void DoMain (HINSTANCE hInstance)
/* create window */
Window = CreateWindow((LPCTSTR)WinClassName,
(LPCTSTR) "ZDOOM " DOTVERSIONSTR " (" __DATE__ ")",
(LPCTSTR) GAMESIG " " DOTVERSIONSTR " (" __DATE__ ")",
WS_OVERLAPPEDWINDOW,
0/*CW_USEDEFAULT*/, 1/*CW_USEDEFAULT*/, width, height,
(HWND) NULL,

View file

@ -19,13 +19,13 @@ wadmake: zdoom.lst
$(MAKEWAD) -make wadmake zdoom.lst
clean:
$(RM) wadmake zdoom.wad xlat/*.x dehsupp.lmp
$(RM) wadmake zdoom.pk3 xlat/*.x dehsupp.lmp
# This target is for Visual C++'s Rebuild All command
nrebuild: clean
$(MAKE) NOLOGO=$(NOLOGO) MAKEWAD=$(MAKEWAD) XLATCC=$(XLATCC) DEHSUPP=$(DEHSUPP)
copy zdoom.wad ..\..
copy zdoom.pk3 ..\..
# Copy the wad to my testing area
andcopy: makethewad
copy zdoom.wad ..\..
copy zdoom.pk3 ..\..

View file

@ -10,7 +10,7 @@ wadmake: zdoom.lst $(MAKEWAD).exe $(XLATCC).exe $(DEHSUPP).exe
$(MAKEWAD) -make wadmake zdoom.lst
clean:
del /q /f wadmake zdoom.wad xlat\*.x dehsupp.lmp 2>nul
del /q /f wadmake zdoom.pk3 xlat\*.x dehsupp.lmp 2>nul
../tools/makewad/makewad.exe:
$(MAKE) -C ../tools/makewad -f Makefile.mgw

View file

@ -1,3 +1,4 @@
NoAutostartMap
Background mape1
Splat in_x
Pointer in_yah

View file

@ -1,3 +1,4 @@
NoAutostartMap
Background mape2
Splat in_x
Pointer in_yah

View file

@ -1,3 +1,4 @@
NoAutostartMap
Background mape3
Splat in_x
Pointer in_yah

View file

@ -19,8 +19,8 @@
Name="VCNMakeTool"
BuildCommandLine="nmake /nologo MAKEWAD=..\tools\makewad\makewad XLATCC=..\tools\xlatcc\xlatcc DEHSUPP=..\tools\dehsupp\dehsupp NOLOGO=/nologo andcopy"
ReBuildCommandLine="nmake /nologo MAKEWAD=..\tools\makewad\makewad NOLOGO=/nologo XLATCC=..\tools\xlatcc\xlatcc DEHSUPP=..\tools\dehsupp\dehsupp nrebuild"
CleanCommandLine="del wadmake zdoom.wad"
Output="zdoom.wad"/>
CleanCommandLine="del wadmake zdoom.pk3"
Output="zdoom.pk3"/>
</Configuration>
<Configuration
Name="Release|Win32"
@ -31,8 +31,8 @@
Name="VCNMakeTool"
BuildCommandLine="nmake /nologo MAKEWAD=..\tools\makewad\makewad XLATCC=..\tools\xlatcc\xlatcc DEHSUPP=..\tools\dehsupp\dehsupp NOLOGO=/nologo"
ReBuildCommandLine="nmake /nologo MAKEWAD=..\tools\makewad\makewad NOLOGO=/nologo XLATCC=..\tools\xlatcc\xlatcc DEHSUPP=..\tools\dehsupp\dehsupp nrebuild"
CleanCommandLine="del wadmake zdoom.wad"
Output="zdoom.wad"/>
CleanCommandLine="del wadmake zdoom.pk3"
Output="zdoom.pk3"/>
</Configuration>
</Configurations>
<References>

View file

@ -1,183 +1,178 @@
# The big list of all things zdoom.wad.
@zdoom.wad
@zdoom.pk3
invgemr2 invgemr2.lmp
invgemr1 invgemr1.lmp
invgeml2 invgeml2.lmp
invgeml1 invgeml1.lmp
artibox artibox.png
selectbo selectbo.png
fiteface fiteface.lmp
mageface mageface.lmp
clerface clerface.lmp
hamoback hamoback.png
graphics/invgemr2.lmp invgemr2.lmp
graphics/invgemr1.lmp invgemr1.lmp
graphics/invgeml2.lmp invgeml2.lmp
graphics/invgeml1.lmp invgeml1.lmp
graphics/artibox.png artibox.png
graphics/selectbo.png selectbo.png
graphics/fiteface.lmp fiteface.lmp
graphics/mageface.lmp mageface.lmp
graphics/clerface.lmp clerface.lmp
graphics/hamoback.png hamoback.png
======== # Decals
decaldef decals/decaldef.txt
decaldef.txt decals/decaldef.txt
--------
blast1 decals/blast1.png
cbalscr1 decals/cbalscr1.png
cbalscr2 decals/cbalscr2.png
bal7scr1 decals/bal7scr1.png
bal7scr2 decals/bal7scr2.png
bfglite1 decals/bfglite1.png
bfglite2 decals/bfglite2.png
bfgscrc1 decals/bfgscrc1.png
bfgscrc2 decals/bfgscrc2.png
plasma1 decals/plasma1.png
plasma2 decals/plasma2.png
scorch1 decals/scorch1.png
bsplat1 decals/bsplat1.png
bsplat2 decals/bsplat2.png
bsplat3 decals/bsplat3.png
bsplat4 decals/bsplat4.png
bsplat5 decals/bsplat5.png
bsplat6 decals/bsplat6.png
bsplat7 decals/bsplat7.png
bsmear1 decals/bsmear1.png
bsmear2 decals/bsmear2.png
chip1 decals/chip1.png
chip2 decals/chip2.png
chip3 decals/chip3.png
chip4 decals/chip4.png
chip5 decals/chip5.png
cbowmark decals/cbowmark.png
graphics/blast1.png decals/blast1.png
graphics/cbalscr1.png decals/cbalscr1.png
graphics/cbalscr2.png decals/cbalscr2.png
graphics/bal7scr1.png decals/bal7scr1.png
graphics/bal7scr2.png decals/bal7scr2.png
graphics/bfglite1.png decals/bfglite1.png
graphics/bfglite2.png decals/bfglite2.png
graphics/bfgscrc1.png decals/bfgscrc1.png
graphics/bfgscrc2.png decals/bfgscrc2.png
graphics/plasma1.png decals/plasma1.png
graphics/plasma2.png decals/plasma2.png
graphics/scorch1.png decals/scorch1.png
graphics/bsplat1.png decals/bsplat1.png
graphics/bsplat2.png decals/bsplat2.png
graphics/bsplat3.png decals/bsplat3.png
graphics/bsplat4.png decals/bsplat4.png
graphics/bsplat5.png decals/bsplat5.png
graphics/bsplat6.png decals/bsplat6.png
graphics/bsplat7.png decals/bsplat7.png
graphics/bsmear1.png decals/bsmear1.png
graphics/bsmear2.png decals/bsmear2.png
graphics/chip1.png decals/chip1.png
graphics/chip2.png decals/chip2.png
graphics/chip3.png decals/chip3.png
graphics/chip4.png decals/chip4.png
graphics/chip5.png decals/chip5.png
graphics/cbowmark.png decals/cbowmark.png
========
# Definition lumps
animdefs animdefs.txt
terrain terrain.txt
in_epi1 in_epi1.txt
in_epi2 in_epi2.txt
in_epi3 in_epi3.txt
in_htc1 in_htc1.txt
in_htc2 in_htc2.txt
in_htc3 in_htc3.txt
lockdefs lockdefs.txt
animdefs.txt animdefs.txt
terrain.txt terrain.txt
in_epi1.txt in_epi1.txt
in_epi2.txt in_epi2.txt
in_epi3.txt in_epi3.txt
in_htc1.txt in_htc1.txt
in_htc2.txt in_htc2.txt
in_htc3.txt in_htc3.txt
lockdefs.txt lockdefs.txt
========
# Support lumps
dehsupp dehsupp.lmp
dehsupp.lmp dehsupp.lmp
doomx xlat/doom.x
hereticx xlat/heretic.x
strifex xlat/strife.x
doomx.lmp xlat/doom.x
hereticx.lmp xlat/heretic.x
strifex.lmp xlat/strife.x
animated animated.lmp
spaldoom spaldoom.lmp
spalhtic spalhtic.lmp
animated.lmp animated.lmp
spaldoom.lmp spaldoom.lmp
spalhtic.lmp spalhtic.lmp
========
# Language lumps
language languages/english-us.txt
language languages/french.txt
language languages/italian.txt
language.en languages/english-us.txt
language.fr languages/french.txt
language.it languages/italian.txt
========
x11r6rgb x11r6rgb.txt
stkeys6 stkeys6.lmp
stkeys7 stkeys7.lmp
stkeys8 stkeys8.lmp
dbigfont dbigfont.lmp # The big Doom font
sbigfont sbigfont.lmp # The big Strife font
confont confont.lmp
fonta60 fonta60.lmp
fonta61 fonta61.lmp
fonta62 fonta62.lmp
fonta63 fonta63.lmp
fonta164 fonta164.lmp
fonta165 fonta165.lmp
fonta182 fonta182.lmp
fonta188 fonta188.lmp
fonta191 fonta191.lmp
stcfn223 stcfn223.lmp
stcfn220 stcfn220.lmp
stcfn214 stcfn214.lmp
stcfn197 stcfn197.lmp
stcfn196 stcfn196.lmp
stpbany stpbany.lmp
stfbany stfbany.lmp
x11r6rgb.txt x11r6rgb.txt
graphics/stkeys6.lmp stkeys6.lmp
graphics/stkeys7.lmp stkeys7.lmp
graphics/stkeys8.lmp stkeys8.lmp
dbigfont.lmp dbigfont.lmp # The big Doom font
sbigfont.lmp sbigfont.lmp # The big Strife font
confont.lmp confont.lmp
graphics/fonta60.lmp fonta60.lmp
graphics/fonta61.lmp fonta61.lmp
graphics/fonta62.lmp fonta62.lmp
graphics/fonta63.lmp fonta63.lmp
graphics/fonta164.lmp fonta164.lmp
graphics/fonta165.lmp fonta165.lmp
graphics/fonta182.lmp fonta182.lmp
graphics/fonta188.lmp fonta188.lmp
graphics/fonta191.lmp fonta191.lmp
graphics/stcfn223.lmp stcfn223.lmp
graphics/stcfn220.lmp stcfn220.lmp
graphics/stcfn214.lmp stcfn214.lmp
graphics/stcfn197.lmp stcfn197.lmp
graphics/stcfn196.lmp stcfn196.lmp
graphics/stpbany.lmp stpbany.lmp
graphics/stfbany.lmp stfbany.lmp
========
# Crosshairs
xhairs1 xhairs1.imgz
xhairs2 xhairs2.imgz
xhairs3 xhairs3.imgz
xhairs4 xhairs4.imgz
xhairs5 xhairs5.imgz
xhairs6 xhairs6.imgz
xhairs7 xhairs7.imgz
graphics/xhairs1.imgz xhairs1.imgz
graphics/xhairs2.imgz xhairs2.imgz
graphics/xhairs3.imgz xhairs3.imgz
graphics/xhairs4.imgz xhairs4.imgz
graphics/xhairs5.imgz xhairs5.imgz
graphics/xhairs6.imgz xhairs6.imgz
graphics/xhairs7.imgz xhairs7.imgz
xhairb1 xhairb1.imgz
xhairb2 xhairb2.png
xhairb3 xhairb3.imgz
xhairb4 xhairb4.imgz
xhairb5 xhairb5.imgz
xhairb6 xhairb6.imgz
xhairb7 xhairb7.imgz
graphics/xhairb1.imgz xhairb1.imgz
graphics/xhairb2.imgz xhairb2.png
graphics/xhairb3.imgz xhairb3.imgz
graphics/xhairb4.imgz xhairb4.imgz
graphics/xhairb5.imgz xhairb5.imgz
graphics/xhairb6.imgz xhairb6.imgz
graphics/xhairb7.imgz xhairb7.imgz
S_START # Now some sprites
tnt1a0 tnt1a0.png
unkna0 unkna0.png
tlgla0 tlgl.png
tlglb0 tlgl.png
tlglc0 tlgl.png
tlgld0 tlgl.png
tlgle0 tlgl.png
iceca0 iceca0.png
icecb0 icecb0.png
icecc0 icecc0.png
icecd0 icecd0.png
# Now some sprites
sprites/tnt1a0.png tnt1a0.png
sprites/unkna0.png unkna0.png
sprites/tlgla0.png tlgl.png
sprites/tlglb0.png tlgl.png
sprites/tlglc0.png tlgl.png
sprites/tlgld0.png tlgl.png
sprites/tlgle0.png tlgl.png
sprites/iceca0.png iceca0.png
sprites/icecb0.png icecb0.png
sprites/icecc0.png icecc0.png
sprites/icecd0.png icecd0.png
S_END
# The patch substituted when a corrupt patch is detected
-badpatc badpatch.lmp
graphics/-badpatc.lmp badpatch.lmp
# The texture substituted when an unknown texture is encountered
TX_START
-noflat- noflat.png
TX_END
textures/-noflat-.png noflat.png
========
# Sounds
sndinfo sndinfo.txt
sndseq sndseq.txt
sndeax sndeax.txt
sndinfo.txt sndinfo.txt
sndseq.txt sndseq.txt
sndeax.txt sndeax.txt
--------
icedth1 icedeath.flac
icebrk1a icebreak.flac
sounds/icedth1.flac icedeath.flac
sounds/icebrk1a.flac icebreak.flac
dsquake quake.flac
dsempty dsempty.lmp
dssecret secret.flac
spark1 spark1.flac
spark2 spark2.flac
spark3 spark3.flac
railgf1 railgunfire.flac
sounds/dsquake.flac quake.flac
sounds/dsempty.lmp dsempty.lmp
sounds/dssecret.flac secret.flac
sounds/spark1.flac spark1.flac
sounds/spark2.flac spark2.flac
sounds/spark3.flac spark3.flac
sounds/railgf1.flac railgunfire.flac
========
# Mapinfos
d1info mapinfo/doom1.txt
d2info mapinfo/doom2.txt
plutinfo mapinfo/plutonia.txt
tntinfo mapinfo/tnt.txt
herinfo mapinfo/heretic.txt
hexninfo mapinfo/hexen.txt
strfinfo mapinfo/strife.txt
d1info.txt mapinfo/doom1.txt
d2info.txt mapinfo/doom2.txt
plutinfo.txt mapinfo/plutonia.txt
tntinfo.txt mapinfo/tnt.txt
herinfo.txt mapinfo/heretic.txt
hexninfo.txt mapinfo/hexen.txt
strfinfo.txt mapinfo/strife.txt
========
# Strife's helper script
A_START
strfhelp strfhelp.o
A_END
acs/strfhelp.o strfhelp.o