100 lines
2.2 KiB
Plaintext
100 lines
2.2 KiB
Plaintext
#library "SWWMCOMP"
|
|
#include "zcommon.acs"
|
|
|
|
// these scripts are redirected to by the compatibility postprocessor
|
|
|
|
SCRIPT "HHR_BRAINWALL" ( void )
|
|
{
|
|
SpawnSpotFacing("BossBrain",666);
|
|
Generic_Floor(827,32,0,2,0);
|
|
ClearLineSpecial();
|
|
}
|
|
|
|
SCRIPT "NERVE_EXITOPEN" ( void )
|
|
{
|
|
Stairs_BuildUpDoomCrush(14,32,16,0,0);
|
|
Ceiling_RaiseByValue(24,8,80);
|
|
}
|
|
|
|
SCRIPT "DIMPLE_EXITOPEN" ( void )
|
|
{
|
|
while ( GetLevelInfo(LEVELINFO_KILLED_MONSTERS) < GetLevelInfo(LEVELINFO_TOTAL_MONSTERS) )
|
|
Delay(35);
|
|
Delay(35);
|
|
Floor_RaiseByValue(669,8,72);
|
|
}
|
|
|
|
SCRIPT "EQUINOX_BRAINCRUSH" ( int tag )
|
|
{
|
|
ScriptCall("SWWMUtility","SpawnVanillaBossBrain",666);
|
|
Ceiling_CrushAndRaiseDist(tag,8,8,10);
|
|
}
|
|
|
|
SCRIPT "DVACATION_UNSCREW" ( void )
|
|
{
|
|
Delay(1);
|
|
SetLineSpecial(2,ACS_ExecuteAlways,StrArg("DVACATION_EXIT"));
|
|
SetLineSpecial(3,ACS_ExecuteAlways,StrArg("DVACATION_BED"));
|
|
}
|
|
|
|
bool gotexit = false;
|
|
|
|
SCRIPT "DVACATION_EXIT" ( void )
|
|
{
|
|
if ( gotexit ) terminate;
|
|
gotexit = true;
|
|
SetPlayerProperty(0,1,PROP_FROZEN);
|
|
for ( int i=0; i<5; i++ )
|
|
{
|
|
QuakeEx(666,1,1,1,3,0,120,"",QF_RELATIVE|QF_SCALEDOWN);
|
|
PlaySound(666,"misc/boink",CHAN_AUTO);
|
|
Delay(Random(2,4)*3);
|
|
}
|
|
Delay(5);
|
|
QuakeEx(666,3,3,3,15,0,120,"",QF_RELATIVE|QF_SCALEDOWN);
|
|
PlaySound(666,"misc/boinkend",CHAN_AUTO);
|
|
Delay(30);
|
|
SetPlayerProperty(0,0,PROP_FROZEN);
|
|
Exit_Normal(0);
|
|
}
|
|
|
|
bool inbed = false;
|
|
int boinks = 0;
|
|
|
|
SCRIPT "DVACATION_BED" ( void )
|
|
{
|
|
if ( inbed || (boinks >= 5) ) terminate;
|
|
inbed = true;
|
|
SetPlayerProperty(0,1,PROP_FROZEN);
|
|
for ( int i=0; i<5; i++ )
|
|
{
|
|
QuakeEx(667,1,1,1,3,0,120,"",QF_RELATIVE|QF_SCALEDOWN);
|
|
PlaySound(667,"misc/boink",CHAN_AUTO);
|
|
Delay(Random(2,4)*3);
|
|
}
|
|
Delay(5);
|
|
QuakeEx(667,3,3,3,15,0,120,"",QF_RELATIVE|QF_SCALEDOWN);
|
|
PlaySound(667,"misc/boinkend",CHAN_AUTO);
|
|
SpawnSpot("SWWMItemFog",27);
|
|
PlaySound(27,"misc/spawn",CHAN_AUTO);
|
|
Thing_SpawnNoFog(27,Random(23,25),0,0);
|
|
SetPlayerProperty(0,0,PROP_FROZEN);
|
|
Delay(15);
|
|
boinks++;
|
|
inbed = false;
|
|
if ( boinks >= 5 ) SetThingSpecial(667,0,0); // can headpat now
|
|
}
|
|
|
|
// WHACK
|
|
SCRIPT "E1M8_KNOCKOUT" ( void )
|
|
{
|
|
Teleport(0,3);
|
|
SetPlayerProperty(0,1,PROP_TOTALLYFROZEN);
|
|
Delay(60);
|
|
AmbientSound("demolitionist/knockout",127);
|
|
Delay(5);
|
|
ScriptCall("SWWMUtility","EndLevelDie");
|
|
Delay(100);
|
|
Exit_Normal(0);
|
|
}
|