Corruption Cards dialogues and more (untested).

This commit is contained in:
Mari the Deer 2022-08-04 17:18:23 +02:00
commit d30600a185
9 changed files with 323 additions and 2 deletions

View file

@ -77,6 +77,34 @@ SWWM_CYTHONERVE2 = "Many other groups have already been suppressed worldwide, th
SWWM_CYTHONERVE3 = "You, however, are up against a cybernetic lieutenant known as the \"Last Tyrant\". This will be tough.";
SWWM_CYTHONERVE4 = "Nevertheless... You are the hero \cdDemolitionist\c-, and you are going to teach these vile fiends a lesson.";
SWWM_CYTHONERVE5 = "Extinguish the flames of demonic corruption that tarnish this land.\nWe the Kuriste believe in you.";
// Eviternity MAP05
SWWM_SAYADMN1 = "I think this is the right place, \cdDemo\c-. Getting some BIG energy readings.";
SWWM_SAYADMN2 = "Yup, plenty of demons waiting to jump on your ass. I mean, of course they'd be gathered here.";
SWWM_SAYADMN3 = "I have to warn you, though. These portals are unstable, so you might pass out in the process.";
SWWM_SAYADMN4 = "Oh, and by the way, bad news. You're going to lose all your shit once you cross over as well.";
SWWM_SAYADMN5 = "That NERD has reassured me that it's not on purpose, but I'm not buying it.";
SWWM_SAYADMN6 = "The most he can do is \"give you a set of starting equipment\" after the wipe.";
SWWM_SAYADMN7 = "I don't like how he seemed amused by this. Heard him mumble something about \"episode transitions\".";
SWWM_SAYADMN8 = "Oh well, whatever... Damn nerd...";
// Eviternity MAP10
SWWM_SAYACRE1 = "I'm so going to lambast the UAC for all this shit I've witnessed. So much for that \"reparation\".";
SWWM_SAYACRE2 = "Their bases are still riddled with demons. Come on, where's the cleaning squads?";
SWWM_SAYACRE3 = "Wait... Are we the cleaning squad? Did they plan for US to do their job?";
SWWM_SAYACRE4 = "If that manchild Kelliher hadn't blocked me, he would never hear the end of this, I swear.";
// Eviternity MAP15
SWWM_SAYACRY1 = "This place is huge, holy shit!";
SWWM_SAYACRY2 = "Alright. You got it, right? Look for the portal. Should be easy to find, well-signalled, etc.";
SWWM_SAYACRY3 = "Hopefully, once you cross over, you'll finally be right in Xevetha territory.";
SWWM_SAYACRY4 = "Mission stuff aside, I'm really hyped for this... Having you travel to a distant planet.";
SWWM_SAYACRY5 = "Get going, \cdDemo-chan\c-. A new world awaits you.";
// Eviternity MAP20
SWWM_SAYACON1 = "Dense ardent energy readings again... We both know exactly what that means.";
SWWM_SAYACON2 = "Not sure where the next portal will take you, but hopefully it's further into enemy territory.";
SWWM_SAYACON3 = "We'll see when you get there. With each step, we're getting closer to their leader.";
SWWM_SAYACON4 = "I am so ready for you to kick his ass. Fucker thinks he can start shit just like that? Hell no.";
SWWM_SAYACON5 = "Go get 'em, \cdDemo\c-!";
// Eviternity MAP25
SWWM_SAYASLA1 = "I wanna get off this wild ride... Please, please let it be the end, I'm so tired of Hell...";
// Eviternity MAP30
SWWM_SAYAEVIA1 = "Psch... Look at this place. This dude couldn't be more of a pretentious show-off if he tried.";
SWWM_SAYAEVIA2 = "However \"angelic\" he may look, he's just some dude in pretty armor, so you can kick his ass.";
@ -256,3 +284,25 @@ SWWM_SAYAFOOL2 = "Shit, wait... Did I seriously forget to activate a license?";
SWWM_SAYAFOOL3 = "... ... Hold on... Just hold the fuck on... What even is Ultracam?";
SWWM_SAYAFOOL4 = "Oh for fuck's sake. This has to be Taro-nii's doing. Can't believe I fell for it. Damn it all.";
SWWM_SAYAFOOL5 = "Well, I don't know how to get rid of it so... Just ignore it, I guess. I'll figure it out later.";
// corruption cards
SWWM_CYTHOCCA1 = "\cdDemolitionist\c-, do not be alarmed by what you've just witnessed.";
SWWM_CYTHOCCA2 = "This is all part of Prince Baphomet's plan. He has decided to test you.";
SWWM_CYTHOCCA3 = "I'm afraid there is no choice but for you to play along, and accept the cards you are being dealt.";
SWWM_CYTHOCCA4 = "Only time will tell if he's satisfied with the results.";
SWWM_CYTHOCCA5 = "All I can offer from my part is... To wish you luck. Good luck, \cdDemolitionist\c-.";
SWWM_CYTHOCCB1 = "What? And we gotta take it, just like that? I'm calling a lawyer."; // Saya reply
SWWM_CYTHOCCC1 = "\cgSaya\c-, you wouldn't want to take legal action against the second prince of Hell. That's very unwise.";
// grace of lilith
SWWM_SAYALILITHA1 = "WHAT IN THE NAME OF FUCK IS GOING ON???";
SWWM_SAYALILITHA2 = "HELLO??? IS REALITY JUST BREAKING APART IN FRONT OF OUR EYES???";
SWWM_SAYALILITHB1 = "Stay calm, \cgSaya\c-, this is the power of Matriarch Lilith at work. It's all an illusion."; // Cytho reply
SWWM_SAYALILITHC1 = "Good fucking grief... Is this why the archdemon generals are afraid of her?";
SWWM_SAYALILITHD1 = "In part, yes. Among our kind, only Archlord Aximal can compare to her."; // Cytho reply
SWWM_SAYALILITHE1 = "Fucking... Hell.";
// ROM3R-0
SWWM_SAYAROMEROA1 = "What the fuck? Is that John Romero?? Why is he a giant robot???";
SWWM_SAYAROMEROB1 = "It's a long story. Him and his games were definitely popular among our people, back in the day."; // Cytho reply
SWWM_SAYAROMEROC1 = "That doesn't explain the robot.";
SWWM_SAYAROMEROD1 = "I'll summarize by saying it's just a robot, and I don't know why Lord Baphomet brought it here."; // Cytho reply
SWWM_SAYAROMEROD2 = "It's simply the last obstacle in the \cdDemolitionist\c-'s path.";
SWWM_SAYAROMEROE1 = "Romerobot's about to make you his bitch, huh...";

View file

@ -68,6 +68,34 @@ SWWM_CYTHONERVE2 = "Muchos otros grupos ya han sido suprimidos a escala mundial,
SWWM_CYTHONERVE3 = "Tú, sin embargo, te enfrentas a un teniente cibernético conocido como el \"Último Tirano\". Será difícil.";
SWWM_CYTHONERVE4 = "Sin embargo... Eres la heroica \cdDemolicionista\c-, y les darás una lección a estas viles bestias.";
SWWM_CYTHONERVE5 = "Extingue las llamas de corrupción demoníaca que mancillan esta tierra. Los Kuriste creemos en ti.";
// Eviternity MAP05
SWWM_SAYADMN1 = "Creo que este es el lugar correcto, \cdDemo\c-. Me salen lecturas TOCHAS de energía.";
SWWM_SAYADMN2 = "Sí, un puñado de demonios esperando para echarte el guante. A ver, claro que iban a estar aquí.";
SWWM_SAYADMN3 = "Una advertencia, por cierto. Estos portales son inestables, puede que te desmayes al cruzarlos.";
SWWM_SAYADMN4 = "Oh, y malas noticias ya de paso. También vas a perder todos los trastos en el proceso.";
SWWM_SAYADMN5 = "El FRIKI ese asegura que no es a propósito, pero yo no me lo trago.";
SWWM_SAYADMN6 = "Lo más que puede hacer es \"ofrecer un set de equipamiento inicial\" tras el borrado.";
SWWM_SAYADMN7 = "No me gusta como parecía alegrarle el tema. Cuchicheaba algo sobre \"transiciones de episodio\".";
SWWM_SAYADMN8 = "Oh bueno, da lo mismo... Maldito friki...";
// Eviternity MAP10
SWWM_SAYACRE1 = "Es que voy a poner a caldo a la UAC con toda esta mierda. Y una polla lo de la \"reparación\".";
SWWM_SAYACRE2 = "Sus bases siguen infestadas de demonios. A ver, ¿Donde están los escuadrones de limpieza?";
SWWM_SAYACRE3 = "Espera... ¿Somos nosotros el escuadrón de limpieza? ¿Esperaban que NOSOTROS hiciéramos su trabajo?";
SWWM_SAYACRE4 = "Si el niñato Kelliher ese no me hubiera bloqueado, es que se iba a enterar, en serio.";
// Eviternity MAP15
SWWM_SAYACRY1 = "¡La madre, este sitio es enorme!";
SWWM_SAYACRY2 = "A ver. Ya sabes, ¿no? Busca el portal. Debería ser fácil de encontrar, bien señalizado, etc.";
SWWM_SAYACRY3 = "Por suerte, en cuanto cruces, por fin estarás en territorio Xevetha.";
SWWM_SAYACRY4 = "Cosas de la misión aparte, tengo muchas ganas de esto... Que viajes a un planeta lejano.";
SWWM_SAYACRY5 = "Andando, \cdDemo-chan\c-. Un nuevo mundo te espera.";
// Eviternity MAP20
SWWM_SAYACON1 = "Lecturas densas de energía ardiente otra vez... Ambas sabemos exactamente lo que significa.";
SWWM_SAYACON2 = "No tengo claro donde te llevará el próximo portal, pero espero que se adentre en territorio enemigo.";
SWWM_SAYACON3 = "Ya veremos cuando llegues. Con cada paso, nos estamos acercando a su líder.";
SWWM_SAYACON4 = "Que ganas tengo de que le partas el culo. ¿Este cretino se cree que puede liarla así como así? Pues no.";
SWWM_SAYACON5 = "¡A por ellos, \cdDemo\c-!";
// Eviternity MAP25
SWWM_SAYASLA1 = "Que alguien pare esta mierda... Por favor, que se acabe ya, estoy hartísima de tanto Infierno...";
// Eviternity MAP30
SWWM_SAYAEVIA1 = "Pst... Mira este sitio. Este tío no podía ser más pretencioso ni aunque lo intentara.";
SWWM_SAYAEVIA2 = "Da igual lo \"angelical\" que parezca, es solo un tío con armadura bonita, le puedes patear el culo.";
@ -247,3 +275,25 @@ SWWM_SAYAFOOL2 = "Mierda, espera... ¿En serio olvidé activar una licencia?";
SWWM_SAYAFOOL3 = "... ... Un momento... Espera un puto momento... ¿Que puñetas es Ultracam?";
SWWM_SAYAFOOL4 = "Ay la puta hostia. Esto tiene que ser cosa de Taro-nii. No me puedo creer que haya picado. Hostia puta.";
SWWM_SAYAFOOL5 = "Bueno, no sé como quitarlo así que... Tú haz como si nada, supongo. Ya veré que hacer.";
// corruption cards
SWWM_CYTHOCCA1 = "\cdDemolicionista\c-, no te sientas alarmada por lo que has visto.";
SWWM_CYTHOCCA2 = "Es todo parte del plan del Príncipe Baphomet. Ha decidido ponerte a prueba.";
SWWM_CYTHOCCA3 = "Me temo que no tienes otra elección que jugar, aceptando las cartas que se te ofrecen.";
SWWM_CYTHOCCA4 = "Solo el tiempo dirá si se siente satisfecho con los resultados.";
SWWM_CYTHOCCA5 = "Lo único que puedo ofrecer de mi parte... Es desearte suerte. Buena suerte, \cdDemolicionista\c-.";
SWWM_CYTHOCCB1 = "¿Que? ¿Y se supone que tenemos que aceptarlo, así porque sí? Pienso llamar a un abogado."; // Saya reply
SWWM_CYTHOCCC1 = "\cgSaya\c-, no deberías tomar acciones legales contra el segundo príncipe del Infierno. Sería poco prudente.";
// grace of lilith
SWWM_SAYALILITHA1 = "¿¿¿PERO QUE COJONES ESTÁ PASANDO???";
SWWM_SAYALILITHA2 = "¿¿¿HOLA??? ¿¿¿LA REALIDAD SE DESMORONA ANTE NUESTROS OJOS???";
SWWM_SAYALILITHB1 = "Mantén la calma, \cgSaya\c-, este es el poder de la Matriarca Lilith. Es todo una ilusión."; // Cytho reply
SWWM_SAYALILITHC1 = "Su puta madre... ¿Es por esto que los generales archidemonios le tienen miedo?";
SWWM_SAYALILITHD1 = "En parte, sí. De entre nosotros, solo el Archiseñor Aximal puede compararse a ella."; // Cytho reply
SWWM_SAYALILITHE1 = "Hostia... Joder.";
// ROM3R-0
SWWM_SAYAROMEROA1 = "¿Que cojones? ¿¿Es ese John Romero?? ¿¿¿Por que es un robot gigante???";
SWWM_SAYAROMEROB1 = "Es una larga historia. Él y sus juegos fueron antaño definitivamente populares entre nuestra gente."; // Cytho reply
SWWM_SAYAROMEROC1 = "Eso no explica el robot.";
SWWM_SAYAROMEROD1 = "Resumiré diciendo que es solo un robot, y no sé por que Lord Baphomet lo ha traido aquí."; // Cytho reply
SWWM_SAYAROMEROD2 = "Es simplemente el último obstáculo en el camino de la \cdDemolicionista\c-.";
SWWM_SAYAROMEROE1 = "Romerobot está a punto de hacerte su perra, hm...";

View file

@ -1,3 +1,3 @@
[default]
SWWM_MODVER="\cyDEMOLITIONIST \cw1.3pre r246 \cu(Thu 4 Aug 13:35:29 CEST 2022)\c-";
SWWM_SHORTVER="\cw1.3pre r246 \cu(2022-08-04 13:35:29)\c-";
SWWM_MODVER="\cyDEMOLITIONIST \cw1.3pre r248 \cu(Thu 4 Aug 17:20:02 CEST 2022)\c-";
SWWM_SHORTVER="\cw1.3pre r248 \cu(2022-08-04 17:20:02)\c-";

View file

@ -594,6 +594,10 @@ extend Class SWWMHandler
if ( (e.Args[0] < 0) || (e.Args[0] > 9) ) return;
WeaponFlash[e.Args[0]] = gametic+25;
}
else if ( e.Name ~== "swwmccstart" )
gdat.ccstartonce = true;
else if ( e.Name ~== "swwmcclilith" )
gdat.cclilithonce = true;
// cheats go here
else CheatEvent(e);
}

View file

@ -7,6 +7,10 @@ extend Class SWWMHandler
ui bool didextramsg;
// april fools special
ui bool didaprmsg;
// corruption cards stuff
ui bool incardmenu, cardmessaged;
bool dolilithmsg, doromerobotmsg;
ui bool didlilithmsg, didromerobotmsg;
private ui void MapstartUITick()
{
@ -23,6 +27,115 @@ extend Class SWWMHandler
}
didextramsg = true;
}
if ( !didlilithmsg && !gdat.cclilithonce && dolilithmsg )
{
if ( !swwm_nomapmsg )
{
// saya's live freakout™
let msg = new("SWWMDirectMessage").Init(StringTable.Localize("$SWWM_SAYASNAME"),StringTable.Localize("$SWWM_SAYANAME"),"Saya");
msg.seqname = "SAYALILITHA";
msg.seqcnt = 2;
msg.delay = 1050; // give it about 15 seconds for it to happen
StatusBar.AttachMessage(msg,-1232);
let msg2 = new("SWWMDirectMessage").Init(StringTable.Localize("$SWWM_CYTHOSNAME"),StringTable.Localize("$SWWM_CYTHONAME"),"Cytho");
msg2.seqname = "SAYALILITHB";
msg2.seqcnt = 1;
msg2.delay = 30;
msg.nextmsg = msg2;
msg.nextdirect = true;
msg = msg2;
msg2 = new("SWWMDirectMessage").Init(StringTable.Localize("$SWWM_SAYASNAME"),StringTable.Localize("$SWWM_SAYANAME"),"Saya");
msg2.seqname = "SAYALILITHC";
msg2.seqcnt = 1;
msg2.delay = 20;
msg.nextmsg = msg2;
msg.nextdirect = true;
msg = msg2;
msg2 = new("SWWMDirectMessage").Init(StringTable.Localize("$SWWM_CYTHOSNAME"),StringTable.Localize("$SWWM_CYTHONAME"),"Cytho");
msg2.seqname = "SAYALILITHD";
msg2.seqcnt = 1;
msg2.delay = 40;
msg.nextmsg = msg2;
msg.nextdirect = true;
msg = msg2;
msg2 = new("SWWMDirectMessage").Init(StringTable.Localize("$SWWM_SAYASNAME"),StringTable.Localize("$SWWM_SAYANAME"),"Saya");
msg2.seqname = "SAYALILITHE";
msg2.seqcnt = 1;
msg2.delay = 50;
msg.nextmsg = msg2;
msg.nextdirect = true;
}
didlilithmsg = true;
SendNetworkEvent("swwmcclilith");
}
if ( !didromerobotmsg && doromerobotmsg )
{
if ( !swwm_nomapmsg )
{
// rom3r-0 is about to make you his bitch
let msg = new("SWWMDirectMessage").Init(StringTable.Localize("$SWWM_SAYASNAME"),StringTable.Localize("$SWWM_SAYANAME"),"Saya");
msg.seqname = "SAYAROMEROA";
msg.seqcnt = 1;
msg.delay = 50;
StatusBar.AttachMessage(msg,-1232);
let msg2 = new("SWWMDirectMessage").Init(StringTable.Localize("$SWWM_CYTHOSNAME"),StringTable.Localize("$SWWM_CYTHONAME"),"Cytho");
msg2.seqname = "SAYAROMEROB";
msg2.seqcnt = 1;
msg2.delay = 40;
msg.nextmsg = msg2;
msg.nextdirect = true;
msg = msg2;
msg2 = new("SWWMDirectMessage").Init(StringTable.Localize("$SWWM_SAYASNAME"),StringTable.Localize("$SWWM_SAYANAME"),"Saya");
msg2.seqname = "SAYAROMEROC";
msg2.seqcnt = 1;
msg2.delay = 30;
msg.nextmsg = msg2;
msg.nextdirect = true;
msg = msg2;
msg2 = new("SWWMDirectMessage").Init(StringTable.Localize("$SWWM_CYTHOSNAME"),StringTable.Localize("$SWWM_CYTHONAME"),"Cytho");
msg2.seqname = "SAYAROMEROD";
msg2.seqcnt = 2;
msg2.delay = 50;
msg.nextmsg = msg2;
msg.nextdirect = true;
msg = msg2;
msg2 = new("SWWMDirectMessage").Init(StringTable.Localize("$SWWM_SAYASNAME"),StringTable.Localize("$SWWM_SAYANAME"),"Saya");
msg2.seqname = "SAYAROMEROE";
msg2.seqcnt = 1;
msg2.delay = 70;
msg.nextmsg = msg2;
msg.nextdirect = true;
}
didromerobotmsg = true;
}
if ( ccloaded && !gdat.ccstartonce && !cardmessaged && (gamestate == GS_LEVEL) )
{
let m = Menu.GetCurrentMenu();
if ( m && (m.GetClassName() == 'CorruptionCardsSelector') ) incardmenu = true;
else if ( incardmenu )
{
let msg = new("SWWMDirectMessage").Init(StringTable.Localize("$SWWM_CYTHOSNAME"),StringTable.Localize("$SWWM_CYTHONAME"),"Cytho");
msg.seqname = "CYTHOCCA";
msg.seqcnt = 4;
msg.delay = 120;
StatusBar.AttachMessage(msg,-1232);
let msg2 = new("SWWMDirectMessage").Init(StringTable.Localize("$SWWM_SAYASNAME"),StringTable.Localize("$SWWM_SAYANAME"),"Saya");
msg2.seqname = "CYTHOCCB";
msg2.seqcnt = 1;
msg2.delay = 30;
msg.nextmsg = msg2;
msg.nextdirect = true;
msg = msg2;
msg2 = new("SWWMDirectMessage").Init(StringTable.Localize("$SWWM_CYTHOSNAME"),StringTable.Localize("$SWWM_CYTHONAME"),"Cytho");
msg2.seqname = "CYTHOCCC";
msg2.seqcnt = 1;
msg2.delay = 45;
msg.nextmsg = msg2;
msg.nextdirect = true;
cardmessaged = true;
SendNetworkEvent("swwmccstart");
}
}
if ( didstartmsg ) return;
if ( swwm_nomapmsg )
{
@ -324,6 +437,52 @@ extend Class SWWMHandler
msg.delay = 40;
StatusBar.AttachMessage(msg,-1232);
}
// Eviternity
// MAP05
else if ( csum ~== "33B8501B10CE5E2555C03725F765A914" )
{
let msg = new("SWWMDirectMessage").Init(StringTable.Localize("$SWWM_SAYASNAME"),StringTable.Localize("$SWWM_SAYANAME"),"Saya");
msg.seqname = "SAYADMN";
msg.seqcnt = 8;
msg.delay = 40;
StatusBar.AttachMessage(msg,-1232);
}
// MAP10
else if ( csum ~== "9E83602D325677B8D7C3BC44BEF9B03F" )
{
let msg = new("SWWMDirectMessage").Init(StringTable.Localize("$SWWM_SAYASNAME"),StringTable.Localize("$SWWM_SAYANAME"),"Saya");
msg.seqname = "SAYACRE";
msg.seqcnt = 4;
msg.delay = 50;
StatusBar.AttachMessage(msg,-1232);
}
// MAP15
else if ( csum ~== "CA40E6DDAB6B5C924CDC36B1F851421E" )
{
let msg = new("SWWMDirectMessage").Init(StringTable.Localize("$SWWM_SAYASNAME"),StringTable.Localize("$SWWM_SAYANAME"),"Saya");
msg.seqname = "SAYACRY";
msg.seqcnt = 5;
msg.delay = 30;
StatusBar.AttachMessage(msg,-1232);
}
// MAP20
else if ( csum ~== "F34B3FD4D13AC763469A8E0D7379B9D0" )
{
let msg = new("SWWMDirectMessage").Init(StringTable.Localize("$SWWM_SAYASNAME"),StringTable.Localize("$SWWM_SAYANAME"),"Saya");
msg.seqname = "SAYACON";
msg.seqcnt = 5;
msg.delay = 50;
StatusBar.AttachMessage(msg,-1232);
}
// MAP25
else if ( csum ~== "196BC735473C593F924A59B238574C35" )
{
let msg = new("SWWMDirectMessage").Init(StringTable.Localize("$SWWM_SAYASNAME"),StringTable.Localize("$SWWM_SAYANAME"),"Saya");
msg.seqname = "SAYASLA";
msg.seqcnt = 1;
msg.delay = 120;
StatusBar.AttachMessage(msg,-1232);
}
// Deathkings
// Blight
else if ( csum ~== "E3EFB0156A20ADF2DF00915A0EA85DF5" )

View file

@ -42,6 +42,20 @@ Class DSparilMessage : Inventory
}
}
Class ROM3R0Message : Inventory
{
override void DoEffect()
{
if ( Owner.InStateSequence(Owner.CurState,Owner.SeeState) )
{
//Console.PrintfEx(PRINT_CHAT,"\crROM3R-0\c-: "); // have no idea what he says, will set this later
let hnd = SWWMHandler(EventHandler.Find("SWWMHandler"));
if ( hnd ) hnd.doromerobotmsg = true;
DepleteOrDestroy();
return;
}
}
}
extend Class SWWMHandler
{
String bosstag;
@ -399,6 +413,16 @@ extend Class SWWMHandler
doextramsg = true;
}
}
if ( ccloaded && (e.Thing.GetClassName() == "CCards_Boss_Romero") )
{
bossactors.Push(e.Thing);
e.Thing.StartHealth = e.Thing.Health *= 10;
if ( trk ) trk.bBOSS = true;
bosstag = "ROM3R-0.666";
e.Thing.GiveInventory('BossMarker',1);
e.Thing.GiveInventory('EndgameBossMarker',1);
e.Thing.GiveInventory('ROM3R0Message',1);
}
}
private void VanillaBossTick()
{

View file

@ -397,6 +397,8 @@ extend Class SWWMHandler
e.Thing.DeathSound = "grunt/death";
e.Thing.ActiveSound = "grunt/active";
}
else if ( ccloaded && (e.Thing.GetClassName() == "CCards_Token_Glitched") )
dolilithmsg = true;
if ( SWWMUtility.IdentifyingDog(e.Thing) || SWWMUtility.IdentifyingCaco(e.Thing)
|| SWWMUtility.IdentifyingDrug(e.Thing) || SWWMUtility.IdentifyingDoubleBoi(e.Thing) )
{

View file

@ -26,6 +26,12 @@ Class SWWMHandler : EventHandler
int iskdizd;
Array<String> bludtypes;
// mod inter-compat stuff
bool ccloaded;
// session globals
SWWMGlobals gdat;
// profiling data
bool profiling;
int bprofiletics, profiletics; // how many tics to aggregate data for
@ -73,6 +79,12 @@ Class SWWMHandler : EventHandler
hasdrlamonsters = true;
break;
}
for ( int i=0; i<AllClasses.Size(); i++ )
{
if ( AllClasses[i].GetClassName() != "CCards_Global" ) continue;
ccloaded = true;
break;
}
if ( LevelInfo.MapExists("Z1M1") && (LevelInfo.MapChecksum("Z1M1") ~== "2B7744234ED2C162AD08A3255E979F65") )
iskdizd = true;
// read bludtype files if they can be found
@ -99,6 +111,8 @@ Class SWWMHandler : EventHandler
while ( sv = si.Next() ) funtagsv.Push(sv);
si = ServiceIterator.Find("MergeMonsterService");
while ( sv = si.Next() ) mergemonstersv.Push(sv);
// session globals
gdat = SWWMGlobals.Get();
// start profiling
if ( swwm_profstart <= 0 ) return;
bprofiletics = profiletics = swwm_profstart;

View file

@ -298,3 +298,21 @@ Class SWWMCorpseCleaner : Thinker
}
}
}
Class SWWMGlobals : SWWMStaticThinker
{
// set so these messages only happen once
bool ccstartonce, cclilithonce;
static play SWWMGlobals Get()
{
let ti = ThinkerIterator.Create("SWWMGlobals",STAT_STATIC);
SWWMGlobals g = SWWMGlobals(ti.Next());
if ( !g )
{
g = new("SWWMGlobals");
g.ChangeStatNum(STAT_STATIC);
}
return g;
}
}