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

@ -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) )
{