mirror of
https://github.com/ZDoom/Raze.git
synced 2024-11-15 00:42:08 +00:00
- scriptified all of Duke's end of episode cutscenes.
This commit is contained in:
parent
9d20185b39
commit
eeefc4355e
3 changed files with 147 additions and 3 deletions
|
@ -31,6 +31,7 @@ version "4.3"
|
|||
#include "zscript/screenjob.zs"
|
||||
#include "zscript/games/duke/dukegame.zs"
|
||||
#include "zscript/games/duke/ui/screens.zs"
|
||||
#include "zscript/games/duke/ui/cutscenes.zs"
|
||||
#include "zscript/games/duke/ui/menu.zs"
|
||||
#include "zscript/games/blood/ui/menu.zs"
|
||||
#include "zscript/games/sw/ui/menu.zs"
|
||||
|
|
|
@ -37,6 +37,7 @@ class DukeIntro : ScreenJobRunner
|
|||
{
|
||||
void Init()
|
||||
{
|
||||
Super.Init();
|
||||
Raze.StopMusic();
|
||||
Raze.StopAllSounds();
|
||||
|
||||
|
@ -48,10 +49,152 @@ class DukeIntro : ScreenJobRunner
|
|||
soundinfo.Pushv(
|
||||
1, DukeSnd.FLY_BY+1,
|
||||
19, DukeSnd.PIPEBOMB_EXPLODE+1);
|
||||
jobs.Push(MoviePlayerJob.CreateWithSoundinfo("logo.anm", soundinfo, 9, 9, 9));
|
||||
jobs.Push(MoviePlayerJob.CreateWithSoundinfo("logo.anm", soundinfo, 0, 9, 9, 9));
|
||||
}
|
||||
if (!Raze.isNam()) jobs.Push(new("DRealmsScreen").Init());
|
||||
}
|
||||
jobs.Push(new("DukeTitleScreen").Init());
|
||||
}
|
||||
}
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
//
|
||||
//
|
||||
//
|
||||
//---------------------------------------------------------------------------
|
||||
|
||||
class DukeE1End : ScreenJobRunner
|
||||
{
|
||||
void Init()
|
||||
{
|
||||
Super.Init();
|
||||
jobs.Push(new("Episode1End1").Init());
|
||||
jobs.Push(ImageScreen.CreateNamed("E1ENDSCREEN", ScreenJob.fadein|ScreenJob.fadeout|ScreenJob.stopmusic, 0x7fffffff));
|
||||
}
|
||||
}
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
//
|
||||
//
|
||||
//
|
||||
//---------------------------------------------------------------------------
|
||||
|
||||
class DukeE2End : ScreenJobRunner
|
||||
{
|
||||
void Init()
|
||||
{
|
||||
Super.Init();
|
||||
Array<int> soundinfo;
|
||||
soundinfo.Pushv(
|
||||
1, DukeSnd.WIND_AMBIENCE+1,
|
||||
26, DukeSnd.ENDSEQVOL2SND1+1,
|
||||
36, DukeSnd.ENDSEQVOL2SND2+1,
|
||||
54, DukeSnd.THUD+1,
|
||||
62, DukeSnd.ENDSEQVOL2SND3+1,
|
||||
75, DukeSnd.ENDSEQVOL2SND4 + 1,
|
||||
81, DukeSnd.ENDSEQVOL2SND5 + 1,
|
||||
115, DukeSnd.ENDSEQVOL2SND6 + 1,
|
||||
124, DukeSnd.ENDSEQVOL2SND7 + 1);
|
||||
|
||||
jobs.Push(MoviePlayerJob.CreateWithSoundinfo("cineov2.anm", soundinfo, 0, 18, 18, 18));
|
||||
jobs.Push(new("E2EndScreen").Init());
|
||||
}
|
||||
}
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
//
|
||||
//
|
||||
//
|
||||
//---------------------------------------------------------------------------
|
||||
|
||||
class DukeE3End : ScreenJobRunner
|
||||
{
|
||||
void Init()
|
||||
{
|
||||
Super.Init();
|
||||
Array<int> soundinfo;
|
||||
soundinfo.Pushv(
|
||||
1, DukeSnd.WIND_REPEAT + 1,
|
||||
98, DukeSnd.DUKE_GRUNT + 1,
|
||||
102, DukeSnd.THUD + 1,
|
||||
102, DukeSnd.SQUISHED + 1,
|
||||
124, DukeSnd.ENDSEQVOL3SND3 + 1,
|
||||
134, DukeSnd.ENDSEQVOL3SND2 + 1,
|
||||
158, DukeSnd.PIPEBOMB_EXPLODE + 1);
|
||||
|
||||
jobs.Push(MoviePlayerJob.CreateWithSoundinfo("cineov3.anm", soundinfo, 0, 10, 10, 10));
|
||||
jobs.Push(BlackScreen.Create(200, ScreenJob.stopsound));
|
||||
jobs.Push(new("Episode3End").Init());
|
||||
if (!Raze.isPlutoPak()) jobs.Push(ImageScreen.CreateNamed("DUKETEAM.ANM", ScreenJob.fadein | ScreenJob.fadeout | ScreenJob.stopsound, 0x7fffffff));
|
||||
}
|
||||
}
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
//
|
||||
//
|
||||
//
|
||||
//---------------------------------------------------------------------------
|
||||
|
||||
class DukeDCEnd : ScreenJobRunner
|
||||
{
|
||||
void Init()
|
||||
{
|
||||
Super.Init();
|
||||
Array<int> soundinfo;
|
||||
soundinfo.Pushv(144, DukeSnd.ENDSEQVOL3SND3 + 1);
|
||||
jobs.Push(MoviePlayerJob.CreateWithSoundinfo("radlogo.anm", soundinfo, 0, 10, 10, 10));
|
||||
}
|
||||
}
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
//
|
||||
//
|
||||
//
|
||||
//---------------------------------------------------------------------------
|
||||
|
||||
class DukeE4End : ScreenJobRunner
|
||||
{
|
||||
void Init()
|
||||
{
|
||||
Super.Init(true, true);
|
||||
Array<int> soundinfo;
|
||||
|
||||
soundinfo.Pushv(
|
||||
3, DukeSnd.DUKE_UNDERWATER+1,
|
||||
35, DukeSnd.VOL4ENDSND1+1);
|
||||
jobs.Push(MoviePlayerJob.CreateWithSoundinfo("vol4e1.anm", soundinfo, 0, 10, 10, 10));
|
||||
|
||||
soundinfo.Pushv(
|
||||
11, DukeSnd.DUKE_UNDERWATER+1,
|
||||
20, DukeSnd.VOL4ENDSND1+1,
|
||||
39, DukeSnd.VOL4ENDSND2+1,
|
||||
50, -1);
|
||||
jobs.Push(MoviePlayerJob.CreateWithSoundinfo("vol4e2.anm", soundinfo, 0, 10, 10, 10));
|
||||
|
||||
soundinfo.Pushv(
|
||||
1, DukeSnd.BOSS4_DEADSPEECH+1,
|
||||
40, DukeSnd.VOL4ENDSND1+1,
|
||||
40, DukeSnd.DUKE_UNDERWATER+1,
|
||||
50, DukeSnd.BIGBANG+1);
|
||||
jobs.Push(MoviePlayerJob.CreateWithSoundinfo("vol4e3.anm", soundinfo, 0, 10, 10, 10));
|
||||
|
||||
jobs.Push(new("Episode4Text").Init());
|
||||
jobs.Push(ImageScreen.CreateNamed("DUKETEAM.ANM", ScreenJob.fadein | ScreenJob.fadeout | ScreenJob.stopsound, 0x7fffffff));
|
||||
}
|
||||
}
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
//
|
||||
//
|
||||
//
|
||||
//---------------------------------------------------------------------------
|
||||
|
||||
class DukeE5End : ScreenJobRunner
|
||||
{
|
||||
void Init()
|
||||
{
|
||||
Super.Init();
|
||||
jobs.Push(new("Episode5End").Init());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -68,7 +68,7 @@ class DRealmsScreen : SkippableScreenJob
|
|||
//
|
||||
//---------------------------------------------------------------------------
|
||||
|
||||
class TitleScreen : SkippableScreenJob
|
||||
class DukeTitleScreen : SkippableScreenJob
|
||||
{
|
||||
int soundanm;
|
||||
|
||||
|
|
Loading…
Reference in a new issue