Fun with dialogues.
This commit is contained in:
parent
5824829947
commit
f6f2854bf6
96 changed files with 1565 additions and 161 deletions
|
|
@ -76,6 +76,7 @@ extend Class SWWMHandler
|
|||
if ( !w || (w == 'SWWMWeapon') ) continue;
|
||||
let def = GetDefaultByType(w);
|
||||
if ( def.bCHEATNOTWEAPON ) continue;
|
||||
if ( w is 'Ynykron' ) continue; // traditionally not given, it's a separate cheat
|
||||
let ow = players[e.Args[0]].mo.FindInventory(w);
|
||||
if ( ow && (ow.Amount >= ow.MaxAmount) ) continue;
|
||||
if ( ow ) ow.Amount = ow.MaxAmount;
|
||||
|
|
@ -148,7 +149,7 @@ extend Class SWWMHandler
|
|||
S_StartSound("menu/buyinv",CHAN_ITEM,CHANF_UI);
|
||||
S_StartSound("misc/ammo_pkup",CHAN_VOICE,CHANF_UI);
|
||||
}
|
||||
players[e.Args[0]].mo.GiveInventory("HammerspaceEmbiggener",8,true);
|
||||
players[e.Args[0]].mo.GiveInventory("TradedHammerspaceEmbiggener",8,true);
|
||||
for ( Inventory i=players[e.Args[0]].mo.inv; i; i=i.inv )
|
||||
{
|
||||
if ( !(i is 'Ammo') ) continue;
|
||||
|
|
@ -179,8 +180,27 @@ extend Class SWWMHandler
|
|||
S_StartSound("menu/buyinv",CHAN_ITEM,CHANF_UI);
|
||||
S_StartSound("fabricator/use",CHAN_VOICE,CHANF_UI);
|
||||
}
|
||||
players[e.Args[0]].mo.CheatGive("all",0);
|
||||
players[e.Args[0]].health = players[e.Args[0]].mo.health = 1000;
|
||||
players[e.Args[0]].mo.GiveInventory("TradedHammerspaceEmbiggener",8,true);
|
||||
for ( Inventory i=players[e.Args[0]].mo.inv; i; i=i.inv )
|
||||
{
|
||||
if ( !(i is 'Ammo') ) continue;
|
||||
i.Amount = i.MaxAmount;
|
||||
}
|
||||
for ( int i=0; i<AllActorClasses.Size(); i++ )
|
||||
{
|
||||
let w = (Class<SWWMWeapon>)(AllActorClasses[i]);
|
||||
if ( !w || (w == 'SWWMWeapon') ) continue;
|
||||
let def = GetDefaultByType(w);
|
||||
if ( def.bCHEATNOTWEAPON ) continue;
|
||||
if ( w is 'Ynykron' ) continue; // traditionally not given, it's a separate cheat
|
||||
let ow = players[e.Args[0]].mo.FindInventory(w);
|
||||
if ( ow && (ow.Amount >= ow.MaxAmount) ) continue;
|
||||
if ( ow ) ow.Amount = ow.MaxAmount;
|
||||
else players[e.Args[0]].mo.GiveInventory(w,def.MaxAmount);
|
||||
}
|
||||
players[e.Args[0]].mo.CheatGive("armor",0);
|
||||
players[e.Args[0]].mo.CheatGive("artifacts",0);
|
||||
}
|
||||
else if ( e.Name ~== "swwmflagcheat" )
|
||||
{
|
||||
|
|
@ -417,9 +437,15 @@ extend Class SWWMHandler
|
|||
if ( kstr != cht[i].Left(kstr.length()) ) continue;
|
||||
matchany = true;
|
||||
if ( kstr != cht[i] ) continue;
|
||||
if ( (i > 5) && !swwm_oldcheat )
|
||||
if ( (i > 5) && !swwm_nomapmsg && !swwm_oldcheat )
|
||||
{
|
||||
let m = new("SWWMSecretZanavethMessage").Init();
|
||||
let m = new("SWWMDirectMessage").Init("\chZanaveth\c-","\chZanaveth Nekuraku III\c-","Znv");
|
||||
m.seqname = "ZNVTXT";
|
||||
m.seqcnt = 5;
|
||||
m.znvspecial = true;
|
||||
m.delay = 80;
|
||||
m.enddelay = 90;
|
||||
m.pausedelay = 40;
|
||||
StatusBar.AttachMessage(m,-1232);
|
||||
CVar.FindCVar('swwm_oldcheat').SetBool(true);
|
||||
}
|
||||
|
|
@ -458,7 +484,7 @@ extend Class SWWMHandler
|
|||
else
|
||||
{
|
||||
kcode++;
|
||||
if ( kcode > 4 ) return true; // eat keypresses from this point
|
||||
if ( kcode >= 4 ) return true; // eat keypresses from this point
|
||||
}
|
||||
}
|
||||
return false;
|
||||
|
|
|
|||
|
|
@ -1,5 +1,11 @@
|
|||
// oneliner handling
|
||||
|
||||
Class LastLine
|
||||
{
|
||||
String type;
|
||||
int lineno;
|
||||
}
|
||||
|
||||
extend Class SWWMHandler
|
||||
{
|
||||
transient String oneliner, onelinersnd;
|
||||
|
|
|
|||
|
|
@ -623,6 +623,15 @@ extend Class SWWMHandler
|
|||
if ( e.Args[0] != consoleplayer ) return;
|
||||
checklist.Clear();
|
||||
}
|
||||
else if ( e.Name ~== "swwmstorepuzzlecnt" )
|
||||
{
|
||||
let s = SWWMStats.Find(players[e.Args[0]]);
|
||||
if ( s )
|
||||
{
|
||||
s.puzzlecnt = e.Args[1];
|
||||
s.realpuzzlecnt = e.Args[2];
|
||||
}
|
||||
}
|
||||
// cheats go here
|
||||
else CheatEvent(e);
|
||||
}
|
||||
|
|
|
|||
361
zscript/handler/swwm_handler_uitick.zsc
Normal file
361
zscript/handler/swwm_handler_uitick.zsc
Normal file
|
|
@ -0,0 +1,361 @@
|
|||
// misc. UI Tick stuff
|
||||
|
||||
extend Class SWWMHandler
|
||||
{
|
||||
ui bool didstartmsg;
|
||||
bool doextramsg;
|
||||
ui bool didextramsg;
|
||||
|
||||
private ui void MapstartUITick()
|
||||
{
|
||||
if ( !didextramsg && doextramsg )
|
||||
{
|
||||
if ( !swwm_nomapmsg )
|
||||
{
|
||||
// angry about phase two
|
||||
let msg = new("SWWMDirectMessage").Init("\cgSaya\c-","\cgSaya Miyamoto\c-","Saya");
|
||||
msg.seqname = "SAYAEVIB";
|
||||
msg.seqcnt = 2;
|
||||
msg.delay = 20;
|
||||
StatusBar.AttachMessage(msg,-1232);
|
||||
}
|
||||
didextramsg = true;
|
||||
}
|
||||
if ( didstartmsg ) return;
|
||||
if ( swwm_nomapmsg )
|
||||
{
|
||||
didstartmsg = true;
|
||||
return;
|
||||
}
|
||||
int whichboss = WhichVanillaBossMap();
|
||||
if ( bossmap == MAP_DE1M8 )
|
||||
{
|
||||
let msg = new("SWWMDirectMessage").Init("\cgSaya\c-","\cgSaya Miyamoto\c-","Saya");
|
||||
msg.seqname = "SAYAPHOBOS";
|
||||
msg.seqcnt = 4;
|
||||
msg.delay = 40;
|
||||
StatusBar.AttachMessage(msg,-1232);
|
||||
}
|
||||
else if ( bossmap == MAP_DE2M8 )
|
||||
{
|
||||
let msg = new("SWWMDirectMessage").Init("\cgSaya\c-","\cgSaya Miyamoto\c-","Saya");
|
||||
msg.seqname = "SAYADEIMOS";
|
||||
msg.seqcnt = 4;
|
||||
msg.delay = 40;
|
||||
StatusBar.AttachMessage(msg,-1232);
|
||||
}
|
||||
else if ( bossmap == MAP_DE3M8 )
|
||||
{
|
||||
let msg = new("SWWMDirectMessage").Init("\cgSaya\c-","\cgSaya Miyamoto\c-","Saya");
|
||||
msg.seqname = "SAYADIS";
|
||||
msg.seqcnt = 4;
|
||||
msg.delay = 40;
|
||||
StatusBar.AttachMessage(msg,-1232);
|
||||
}
|
||||
else if ( bossmap == MAP_DE4M8 )
|
||||
{
|
||||
let msg = new("SWWMDirectMessage").Init("\cgSaya\c-","\cgSaya Miyamoto\c-","Saya");
|
||||
msg.seqname = "SAYATHY";
|
||||
msg.seqcnt = 4;
|
||||
msg.delay = 40;
|
||||
StatusBar.AttachMessage(msg,-1232);
|
||||
}
|
||||
else if ( bossmap == MAP_DMAP07 )
|
||||
{
|
||||
let msg = new("SWWMDirectMessage").Init("\cgSaya\c-","\cgSaya Miyamoto\c-","Saya");
|
||||
msg.seqname = "SAYADIMPLE";
|
||||
msg.seqcnt = 5;
|
||||
msg.delay = 40;
|
||||
StatusBar.AttachMessage(msg,-1232);
|
||||
}
|
||||
else if ( bossmap == MAP_DMAP30 )
|
||||
{
|
||||
// rampancy check
|
||||
bool rampancy = false;
|
||||
for ( int i=0; i<AllActorClasses.Size(); i++ )
|
||||
{
|
||||
if ( AllActorClasses[i].GetClassName() != "Robot_BossBrain" ) continue;
|
||||
rampancy = true;
|
||||
break;
|
||||
}
|
||||
if ( rampancy )
|
||||
{
|
||||
let msg = new("SWWMDirectMessage").Init("\cgSaya\c-","\cgSaya Miyamoto\c-","Saya");
|
||||
msg.seqname = "SAYARAMPANCY";
|
||||
msg.seqcnt = 4;
|
||||
msg.delay = 250;
|
||||
StatusBar.AttachMessage(msg,-1232);
|
||||
}
|
||||
else
|
||||
{
|
||||
let msg = new("SWWMDirectMessage").Init("\cgSaya\c-","\cgSaya Miyamoto\c-","Saya");
|
||||
msg.seqname = "SAYAIOS";
|
||||
msg.seqcnt = 5;
|
||||
msg.delay = 40;
|
||||
StatusBar.AttachMessage(msg,-1232);
|
||||
}
|
||||
}
|
||||
else if ( bossmap == MAP_DLVL08 )
|
||||
{
|
||||
let msg = new("SWWMDirectMessage").Init("\cvCytho\c-",StringTable.Localize("$SWWM_CYTHONAME"),"Cytho");
|
||||
msg.seqname = "CYTHONERVE";
|
||||
msg.seqcnt = 5;
|
||||
msg.delay = 40;
|
||||
StatusBar.AttachMessage(msg,-1232);
|
||||
}
|
||||
else if ( bossmap == MAP_EVMAP30 )
|
||||
{
|
||||
let msg = new("SWWMDirectMessage").Init("\cgSaya\c-","\cgSaya Miyamoto\c-","Saya");
|
||||
msg.seqname = "SAYAEVIA";
|
||||
msg.seqcnt = 4;
|
||||
msg.delay = 40;
|
||||
StatusBar.AttachMessage(msg,-1232);
|
||||
}
|
||||
else if ( bossmap == MAP_HE1M8_HE4M8 )
|
||||
{
|
||||
if ( level.mapname ~== "E1M8" )
|
||||
{
|
||||
let msg = new("SWWMDirectMessage").Init("\cgSaya\c-","\cgSaya Miyamoto\c-","Saya");
|
||||
msg.seqname = "SAYAMAW";
|
||||
msg.seqcnt = 5;
|
||||
msg.delay = 40;
|
||||
StatusBar.AttachMessage(msg,-1232);
|
||||
}
|
||||
else
|
||||
{
|
||||
let msg = new("SWWMDirectMessage").Init("\cgSaya\c-","\cgSaya Miyamoto\c-","Saya");
|
||||
msg.seqname = "SAYAHEADS";
|
||||
msg.seqcnt = 6;
|
||||
msg.delay = 40;
|
||||
StatusBar.AttachMessage(msg,-1232);
|
||||
}
|
||||
}
|
||||
else if ( bossmap == MAP_HE2M8_HE5M8 )
|
||||
{
|
||||
if ( level.mapname ~== "E2M8" )
|
||||
{
|
||||
let msg = new("SWWMDirectMessage").Init("\cgSaya\c-","\cgSaya Miyamoto\c-","Saya");
|
||||
msg.seqname = "SAYAMASTERS";
|
||||
msg.seqcnt = 5;
|
||||
msg.delay = 40;
|
||||
StatusBar.AttachMessage(msg,-1232);
|
||||
}
|
||||
else
|
||||
{
|
||||
let msg = new("SWWMDirectMessage").Init("\cgSaya\c-","\cgSaya Miyamoto\c-","Saya");
|
||||
msg.seqname = "SAYABULLS";
|
||||
msg.seqcnt = 5;
|
||||
msg.delay = 40;
|
||||
StatusBar.AttachMessage(msg,-1232);
|
||||
}
|
||||
}
|
||||
else if ( bossmap == MAP_HE3M8 )
|
||||
{
|
||||
let msg = new("SWWMDirectMessage").Init("\cgSaya\c-","\cgSaya Miyamoto\c-","Saya");
|
||||
msg.seqname = "SAYADSPARIL";
|
||||
msg.seqcnt = 5;
|
||||
msg.delay = 40;
|
||||
StatusBar.AttachMessage(msg,-1232);
|
||||
}
|
||||
else if ( bossmap == MAP_HMAP38 )
|
||||
{
|
||||
let msg = new("SWWMDirectMessage").Init("\cgSaya\c-","\cgSaya Miyamoto\c-","Saya");
|
||||
msg.seqname = "SAYACLERICA";
|
||||
msg.seqcnt = 2;
|
||||
msg.delay = 40;
|
||||
StatusBar.AttachMessage(msg,-1232);
|
||||
let msg2 = new("SWWMDirectMessage").Init("\cxKirin\c-","\cxKirin Xanai\c-","Kirin");
|
||||
msg2.seqname = "SAYACLERICB";
|
||||
msg2.seqcnt = 1;
|
||||
msg2.delay = 20;
|
||||
msg.nextmsg = msg2;
|
||||
msg.nextdirect = true;
|
||||
msg = msg2;
|
||||
msg2 = new("SWWMDirectMessage").Init("\cgSaya\c-","\cgSaya Miyamoto\c-","Saya");
|
||||
msg2.seqname = "SAYACLERICC";
|
||||
msg2.seqcnt = 2;
|
||||
msg2.delay = 20;
|
||||
msg.nextmsg = msg2;
|
||||
msg.nextdirect = true;
|
||||
}
|
||||
else if ( bossmap == MAP_HMAP36 )
|
||||
{
|
||||
let msg = new("SWWMDirectMessage").Init("\cgSaya\c-","\cgSaya Miyamoto\c-","Saya");
|
||||
msg.seqname = "SAYAFIGHTER";
|
||||
msg.seqcnt = 2;
|
||||
msg.delay = 40;
|
||||
StatusBar.AttachMessage(msg,-1232);
|
||||
}
|
||||
else if ( bossmap == MAP_HMAP37 )
|
||||
{
|
||||
let msg = new("SWWMDirectMessage").Init("\cgSaya\c-","\cgSaya Miyamoto\c-","Saya");
|
||||
msg.seqname = "SAYAMAGE";
|
||||
msg.seqcnt = 4;
|
||||
msg.delay = 40;
|
||||
StatusBar.AttachMessage(msg,-1232);
|
||||
}
|
||||
else if ( bossmap == MAP_HMAP12 )
|
||||
{
|
||||
let msg = new("SWWMDirectMessage").Init("\cgSaya\c-","\cgSaya Miyamoto\c-","Saya");
|
||||
msg.seqname = "SAYAHYPO";
|
||||
msg.seqcnt = 4;
|
||||
msg.delay = 40;
|
||||
StatusBar.AttachMessage(msg,-1232);
|
||||
}
|
||||
else if ( bossmap == MAP_HMAP40 )
|
||||
{
|
||||
let msg = new("SWWMDirectMessage").Init("\cgSaya\c-","\cgSaya Miyamoto\c-","Saya");
|
||||
msg.seqname = "SAYAKORAXA";
|
||||
msg.seqcnt = 1;
|
||||
msg.delay = 40;
|
||||
StatusBar.AttachMessage(msg,-1232);
|
||||
let msg2 = new("SWWMDirectMessage").Init("\cxKirin\c-","\cxKirin Xanai\c-","Kirin");
|
||||
msg2.seqname = "SAYAKORAXB";
|
||||
msg2.seqcnt = 1;
|
||||
msg2.delay = 20;
|
||||
msg.nextmsg = msg2;
|
||||
msg.nextdirect = true;
|
||||
msg = msg2;
|
||||
msg2 = new("SWWMDirectMessage").Init("\crIbuki\c-","\crIbuki Miyamoto\c-","Ibuki");
|
||||
msg2.seqname = "SAYAKORAXC";
|
||||
msg2.seqcnt = 1;
|
||||
msg2.delay = 20;
|
||||
msg.nextmsg = msg2;
|
||||
msg.nextdirect = true;
|
||||
msg = msg2;
|
||||
msg2 = new("SWWMDirectMessage").Init("\cgSaya\c-","\cgSaya Miyamoto\c-","Saya");
|
||||
msg2.seqname = "SAYAKORAXD";
|
||||
msg2.seqcnt = 1;
|
||||
msg2.delay = 20;
|
||||
msg.nextmsg = msg2;
|
||||
msg.nextdirect = true;
|
||||
msg = msg2;
|
||||
msg2 = new("SWWMDirectMessage").Init("\cxKirin\c-","\cxKirin Xanai\c-","Kirin");
|
||||
msg2.seqname = "SAYAKORAXE";
|
||||
msg2.seqcnt = 1;
|
||||
msg2.delay = 20;
|
||||
msg.nextmsg = msg2;
|
||||
msg.nextdirect = true;
|
||||
}
|
||||
else if ( (bossmap == MAP_HMAP23_HMAP27_HMAP48_HMAP55) && (level.mapname ~== "MAP48") )
|
||||
{
|
||||
let msg = new("SWWMDirectMessage").Init("\cgSaya\c-","\cgSaya Miyamoto\c-","Saya");
|
||||
msg.seqname = "SAYACONSTABLEA";
|
||||
msg.seqcnt = 2;
|
||||
msg.delay = 40;
|
||||
StatusBar.AttachMessage(msg,-1232);
|
||||
let msg2 = new("SWWMDirectMessage").Init("\crIbuki\c-","\crIbuki Miyamoto\c-","Ibuki");
|
||||
msg2.seqname = "SAYACONSTABLEB";
|
||||
msg2.seqcnt = 1;
|
||||
msg2.delay = 30;
|
||||
msg.nextmsg = msg2;
|
||||
msg.nextdirect = true;
|
||||
msg = msg2;
|
||||
msg2 = new("SWWMDirectMessage").Init("\cgSaya\c-","\cgSaya Miyamoto\c-","Saya");
|
||||
msg2.seqname = "SAYACONSTABLEC";
|
||||
msg2.seqcnt = 1;
|
||||
msg2.delay = 20;
|
||||
msg.nextmsg = msg2;
|
||||
msg.nextdirect = true;
|
||||
msg = msg2;
|
||||
msg2 = new("SWWMDirectMessage").Init("\crIbuki\c-","\crIbuki Miyamoto\c-","Ibuki");
|
||||
msg2.seqname = "SAYACONSTABLED";
|
||||
msg2.seqcnt = 1;
|
||||
msg2.delay = 20;
|
||||
msg.nextmsg = msg2;
|
||||
msg.nextdirect = true;
|
||||
}
|
||||
else if ( bossmap == MAP_HMAP60 )
|
||||
{
|
||||
let msg = new("SWWMDirectMessage").Init("\cgSaya\c-","\cgSaya Miyamoto\c-","Saya");
|
||||
msg.seqname = "SAYADEATHKINGS";
|
||||
msg.seqcnt = 1;
|
||||
msg.delay = 40;
|
||||
StatusBar.AttachMessage(msg,-1232);
|
||||
}
|
||||
else if ( bossmap == MAP_NONE ) // gotta get checksums here
|
||||
{
|
||||
String csum = level.GetChecksum();
|
||||
// SIGIL E5M8
|
||||
if ( (csum ~== "3D72FD17F36D2D43FD9A21E6E57EE357")
|
||||
|| (csum ~== "09B30C9DA9D73D3D5A709502FBB947AA")
|
||||
|| (csum ~== "6EAD80DA1F30B4B3546FA294EEF9F87C") )
|
||||
{
|
||||
let msg = new("SWWMDirectMessage").Init("\cvCytho\c-",StringTable.Localize("$SWWM_CYTHONAME"),"Cytho");
|
||||
msg.seqname = "CYTHOSIGIL";
|
||||
msg.seqcnt = 4;
|
||||
msg.delay = 40;
|
||||
StatusBar.AttachMessage(msg,-1232);
|
||||
}
|
||||
// Deathkings
|
||||
// Blight
|
||||
else if ( csum ~== "E3EFB0156A20ADF2DF00915A0EA85DF5" )
|
||||
{
|
||||
let msg = new("SWWMDirectMessage").Init("\cgSaya\c-","\cgSaya Miyamoto\c-","Saya");
|
||||
msg.seqname = "SAYABLIGHTA";
|
||||
msg.seqcnt = 1;
|
||||
msg.delay = 40;
|
||||
StatusBar.AttachMessage(msg,-1232);
|
||||
let msg2 = new("SWWMDirectMessage").Init("\cxKirin\c-","\cxKirin Xanai\c-","Kirin");
|
||||
msg2.seqname = "SAYABLIGHTB";
|
||||
msg2.seqcnt = 1;
|
||||
msg2.delay = 5;
|
||||
msg2.enddelay = 15;
|
||||
msg.nextmsg = msg2;
|
||||
msg.nextdirect = true;
|
||||
msg = msg2;
|
||||
msg2 = new("SWWMDirectMessage").Init("\cgSaya\c-","\cgSaya Miyamoto\c-","Saya");
|
||||
msg2.seqname = "SAYABLIGHTC";
|
||||
msg2.seqcnt = 2;
|
||||
msg2.delay = 20;
|
||||
msg.nextmsg = msg2;
|
||||
msg.nextdirect = true;
|
||||
}
|
||||
// Nave
|
||||
else if ( csum ~== "E2B5D1400279335811C1C1C0B437D9C8" )
|
||||
{
|
||||
let msg = new("SWWMDirectMessage").Init("\cgSaya\c-","\cgSaya Miyamoto\c-","Saya");
|
||||
msg.seqname = "SAYANAVEA";
|
||||
msg.seqcnt = 2;
|
||||
msg.delay = 40;
|
||||
StatusBar.AttachMessage(msg,-1232);
|
||||
let msg2 = new("SWWMDirectMessage").Init("\crIbuki\c-","\crIbuki Miyamoto\c-","Ibuki");
|
||||
msg2.seqname = "SAYANAVEB";
|
||||
msg2.seqcnt = 1;
|
||||
msg2.delay = 20;
|
||||
msg.nextmsg = msg2;
|
||||
msg.nextdirect = true;
|
||||
msg = msg2;
|
||||
msg2 = new("SWWMDirectMessage").Init("\cxKirin\c-","\cxKirin Xanai\c-","Kirin");
|
||||
msg2.seqname = "SAYANAVEC";
|
||||
msg2.seqcnt = 1;
|
||||
msg2.delay = 5;
|
||||
msg2.enddelay = 30;
|
||||
msg.nextmsg = msg2;
|
||||
msg.nextdirect = true;
|
||||
msg = msg2;
|
||||
msg2 = new("SWWMDirectMessage").Init("\cgSaya\c-","\cgSaya Miyamoto\c-","Saya");
|
||||
msg2.seqname = "SAYANAVED";
|
||||
msg2.seqcnt = 1;
|
||||
msg2.delay = 20;
|
||||
msg.nextmsg = msg2;
|
||||
msg.nextdirect = true;
|
||||
msg = msg2;
|
||||
msg2 = new("SWWMDirectMessage").Init("\crIbuki\c-","\crIbuki Miyamoto\c-","Ibuki");
|
||||
msg2.seqname = "SAYANAVEE";
|
||||
msg2.seqcnt = 1;
|
||||
msg2.delay = 30;
|
||||
msg.nextmsg = msg2;
|
||||
msg.nextdirect = true;
|
||||
msg = msg2;
|
||||
msg2 = new("SWWMDirectMessage").Init("\cgSaya\c-","\cgSaya Miyamoto\c-","Saya");
|
||||
msg2.seqname = "SAYANAVEF";
|
||||
msg2.seqcnt = 1;
|
||||
msg2.delay = 40;
|
||||
msg.nextmsg = msg2;
|
||||
msg.nextdirect = true;
|
||||
}
|
||||
}
|
||||
didstartmsg = true;
|
||||
}
|
||||
}
|
||||
|
|
@ -43,7 +43,7 @@ extend Class SWWMHandler
|
|||
MAP_EVMAP30 // eviternity
|
||||
};
|
||||
|
||||
private int WhichVanillaBossMap()
|
||||
private clearscope int WhichVanillaBossMap() const
|
||||
{
|
||||
String mapsum = level.GetChecksum();
|
||||
if ( (mapsum ~== "94500F4B006B316FE03AC46865AEABF8")
|
||||
|
|
@ -319,6 +319,7 @@ extend Class SWWMHandler
|
|||
if ( trk ) trk.bBOSS = true;
|
||||
bosstag = "$BT_ARCHANGELUS";
|
||||
e.Thing.GiveInventory('EndgameBossMarker',1);
|
||||
doextramsg = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,5 +1,22 @@
|
|||
// WorldLoaded/WorldUnloaded events
|
||||
|
||||
Class RampancyLogonDummy : Actor
|
||||
{
|
||||
States
|
||||
{
|
||||
Spawn:
|
||||
TNT1 A 7;
|
||||
TNT1 AAAAAAAAAAAAAAAA 1
|
||||
{
|
||||
for ( int i=0; i<16; i++ )
|
||||
A_Log("Remote login failed.");
|
||||
}
|
||||
TNT1 A 7;
|
||||
TNT1 A 1 A_Log("\cgWARNING:\cj 256 failed remote login attempts have been reported in the last second.\c-");
|
||||
Stop;
|
||||
}
|
||||
}
|
||||
|
||||
extend Class SWWMHandler
|
||||
{
|
||||
// list contains a sector that belongs to each portal group
|
||||
|
|
@ -215,6 +232,24 @@ extend Class SWWMHandler
|
|||
if ( (level.GetChecksum() ~== "F286BABF0D152259CD6B996E8920CA70")
|
||||
|| (level.GetChecksum() ~== "A52BD2038CF814101AAB7D9C78F9ACE2") )
|
||||
level.ExecuteSpecial(ACS_Execute,null,null,false,-Int('DVACATION_UNFUCK'));
|
||||
// rampancy boss brain fix (repeatedly triggering "map clear")
|
||||
let ti = ThinkerIterator.Create("Actor");
|
||||
Actor a, brain;
|
||||
bool haseye = false;
|
||||
while ( a = Actor(ti.Next()) )
|
||||
{
|
||||
if ( a.GetClassName() == "Robot_BossEye" )
|
||||
haseye = true;
|
||||
if ( a.GetClassName() == "Robot_BossBrain" )
|
||||
brain = a;
|
||||
}
|
||||
if ( haseye && brain )
|
||||
{
|
||||
brain.bCOUNTKILL = true;
|
||||
level.total_monsters++;
|
||||
// while we're at it
|
||||
Actor.Spawn("RampancyLogonDummy");
|
||||
}
|
||||
// setup cached lockdefs data
|
||||
let cli = SWWMCachedLockInfo.GetInstance();
|
||||
if ( cli.ent.Size() == 0 ) SetupLockdefsCache(cli);
|
||||
|
|
@ -327,7 +362,7 @@ extend Class SWWMHandler
|
|||
// spawn loot
|
||||
if ( !deathmatch ) Chancebox.SpawnChanceboxes();
|
||||
// list map keys
|
||||
let ti = ThinkerIterator.Create("Key");
|
||||
ti = ThinkerIterator.Create("Key");
|
||||
Key k;
|
||||
while ( k = Key(ti.Next()) )
|
||||
{
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue