Even more voice stuff.

This commit is contained in:
Mari the Deer 2022-06-07 18:27:52 +02:00
commit 6cca0eb623
14 changed files with 63 additions and 7 deletions

View file

@ -110,7 +110,7 @@ SWWM_SUBS_DEFAULT_FINDSECRET11 = "That was good, wasn't it?";
SWWM_SUBS_DEFAULT_FINDSECRET12 = "Lucky me, huh?";
SWWM_SUBS_DEFAULT_FINDSECRET13 = "Well, I mean, I'm pretty good at this.";
// frag taunts
SWWM_SUBS_DEFAULT_NSCOREKILL = "27";
SWWM_SUBS_DEFAULT_NSCOREKILL = "28";
SWWM_SUBS_DEFAULT_SCOREKILL1 = "Get out.";
SWWM_SUBS_DEFAULT_SCOREKILL2 = "One done.";
SWWM_SUBS_DEFAULT_SCOREKILL3 = "Bye bye.";
@ -138,6 +138,7 @@ SWWM_SUBS_DEFAULT_SCOREKILL24 = "Here's your special serving of DIE.";
SWWM_SUBS_DEFAULT_SCOREKILL25 = "Want more?";
SWWM_SUBS_DEFAULT_SCOREKILL26 = "Get rekt.";
SWWM_SUBS_DEFAULT_SCOREKILL27 = "Now that's what I call a BRUH moment.";
SWWM_SUBS_DEFAULT_SCOREKILL28 = "Ded!";
// oopsies
SWWM_SUBS_DEFAULT_NFRIENDKILL = "4";
SWWM_SUBS_DEFAULT_FRIENDKILL1 = "Oh no! No no no no I'm sorry oh my god!";
@ -414,9 +415,10 @@ SWWM_SUBS_DEFAULT_BUTTONPUSH3 = "Bop.";
SWWM_SUBS_DEFAULT_FALLING = "Wheeeeeeeeeee~!";
/// Special kill messages (rare)
// Buttslam
SWWM_SUBS_DEFAULT_NASSKILL = "2";
SWWM_SUBS_DEFAULT_NASSKILL = "3";
SWWM_SUBS_DEFAULT_ASSKILL1 = "It's ASS time!";
SWWM_SUBS_DEFAULT_ASSKILL2 = "Putting the ASS in mASSacre!";
SWWM_SUBS_DEFAULT_ASSKILL3 = "Alright, who wants to eat ASS?";
// Lead ball crit
SWWM_SUBS_DEFAULT_NBALLSKILL = "2";
SWWM_SUBS_DEFAULT_BALLSKILL1 = "Dangerous Ball Action!";
@ -429,6 +431,10 @@ SWWM_SUBS_DEFAULT_BLAST3 = "Pew!";
SWWM_SUBS_DEFAULT_BLAST4 = "Boom!";
SWWM_SUBS_DEFAULT_BLAST5 = "Kapow!";
SWWM_SUBS_DEFAULT_BLAST6 = "Kaboom.";
// Wall busting
SWWM_SUBS_DEFAULT_BUSTKILL = "Bustin' makes me feel good~ ♪";
// Cyberdemon killed by parrying
SWWM_SUBS_DEFAULT_CYBULLY = "I'm just doing some cyberbullying...";
// Cacodemon petting
SWWM_SUBS_DEFAULT_NPETCACO = "3";
SWWM_SUBS_DEFAULT_PETCACO1 = "Caco!";
@ -450,6 +456,8 @@ SWWM_SUBS_DEFAULT_HURTFLOOR2 = "Huff oof...";
SWWM_SUBS_DEFAULT_HURTFLOOR3 = "Oooo ooo... Aaa aaah ooh...";
SWWM_SUBS_DEFAULT_HURTFLOOR4 = "Ooh ah aahh... Ooh...";
SWWM_SUBS_DEFAULT_HURTFLOOR5 = "Hot...";
// Map Start but only for nuts
SWWM_SUBS_DEFAULT_NUTSTART = "Aw, nuts...";
//// LEGACY VOICE - Fallout 4 JP Sole Survivor
SWWM_VOICENAME_LEGACY = "Classic";
// new weapon received

View file

@ -123,6 +123,7 @@ SWWM_SUBS_DEFAULT_SCOREKILL24 = "Aquí tienes tu ración especial de MUERE.";
SWWM_SUBS_DEFAULT_SCOREKILL25 = "¿Quieres más?";
SWWM_SUBS_DEFAULT_SCOREKILL26 = "A joderse.";
SWWM_SUBS_DEFAULT_SCOREKILL27 = "Eso si que lo llamo un momento BRUH.";
SWWM_SUBS_DEFAULT_SCOREKILL27 = "Muerto!";
// oopsies
SWWM_SUBS_DEFAULT_FRIENDKILL1 = "¡Oh no! ¡No no no no lo siento oh dios mío!";
SWWM_SUBS_DEFAULT_FRIENDKILL2 = "¡Oh dios mío! Lo siento mucho...";
@ -374,6 +375,7 @@ SWWM_SUBS_DEFAULT_FALLING = "¡Wiiiiiiiiiiii~!";
SWWM_SUBS_DEFAULT_NASSKILL = "2";
SWWM_SUBS_DEFAULT_ASSKILL1 = "¡Es hora del CULO!";
SWWM_SUBS_DEFAULT_ASSKILL2 = "¡Masacrando con las nalgas!";
SWWM_SUBS_DEFAULT_ASSKILL3 = "Muy bien, ¿Quien quiere comer CULO?";
// Lead ball crit
SWWM_SUBS_DEFAULT_NBALLSKILL = "2";
SWWM_SUBS_DEFAULT_BALLSKILL1 = "¡Peligrosa Acción de Pelotas!";
@ -386,6 +388,9 @@ SWWM_SUBS_DEFAULT_BLAST3 = "¡Píu!";
SWWM_SUBS_DEFAULT_BLAST4 = "¡Bum!";
SWWM_SUBS_DEFAULT_BLAST5 = "¡Kapow!";
SWWM_SUBS_DEFAULT_BLAST6 = "Kabúm.";
// Wall busting
// Cyberdemon killed by parrying
SWWM_SUBS_DEFAULT_CYBULLY = "Solo estoy haciendo un poco de cyberbullying...";
// Cacodemon petting
SWWM_SUBS_DEFAULT_NPETCACO = "3";
SWWM_SUBS_DEFAULT_PETCACO1 = "¡Caco!";
@ -405,6 +410,8 @@ SWWM_SUBS_DEFAULT_HURTFLOOR2 = "Buf uf...";
SWWM_SUBS_DEFAULT_HURTFLOOR3 = "Uuuu uuu... Aaa aaaa ooo...";
SWWM_SUBS_DEFAULT_HURTFLOOR4 = "Uuu aa aaaa... Ooo...";
SWWM_SUBS_DEFAULT_HURTFLOOR5 = "Quema...";
// Map Start but only for nuts
SWWM_SUBS_DEFAULT_NUTSTART = "Oh, nueces...";
//// LEGACY VOICE - Fallout 4 JP Sole Survivor
// voice name
SWWM_VOICENAME_DEFAULT = "Clásico";

View file

@ -1,3 +1,3 @@
[default]
SWWM_MODVER="\cyDEMOLITIONIST \cw1.3pre r100 \cu(Tue 7 Jun 16:56:41 CEST 2022)\c-";
SWWM_SHORTVER="\cw1.3pre r100 \cu(2022-06-07 16:56:41)\c-";
SWWM_MODVER="\cyDEMOLITIONIST \cw1.3pre r101 \cu(Tue 7 Jun 18:27:52 CEST 2022)\c-";
SWWM_SHORTVER="\cw1.3pre r101 \cu(2022-06-07 18:27:52)\c-";

View file

@ -208,6 +208,7 @@ voice/default/scorekill24 sounds/voice/default/va/demoscorekill24.ogg
voice/default/scorekill25 sounds/voice/default/va/demoscorekill25.ogg
voice/default/scorekill26 sounds/voice/default/va/demoscorekill26.ogg
voice/default/scorekill27 sounds/voice/default/va/demoscorekill27.ogg
voice/default/scorekill28 sounds/voice/default/va/demoscorekill28.ogg
voice/default/friendkill1 sounds/voice/default/va/demofriendkill1.ogg
voice/default/friendkill2 sounds/voice/default/va/demofriendkill2.ogg
voice/default/friendkill3 sounds/voice/default/va/demofriendkill3.ogg
@ -446,8 +447,11 @@ voice/default/buttonpush3 sounds/voice/default/va/demobuttonpush3.ogg
voice/default/falling sounds/voice/default/va/demofalling.ogg
voice/default/asskill1 sounds/voice/default/va/demoasskill1.ogg
voice/default/asskill2 sounds/voice/default/va/demoasskill2.ogg
voice/default/asskill3 sounds/voice/default/va/demoasskill3.ogg
voice/default/ballskill1 sounds/voice/default/va/demoballskill1.ogg
voice/default/ballskill2 sounds/voice/default/va/demoballskill2.ogg
voice/default/bustkill sounds/voice/default/va/demobustkill.ogg
voice/default/cybully sounds/voice/default/va/democybully.ogg
voice/default/blast1 sounds/voice/default/va/demoblast1.ogg
voice/default/blast2 sounds/voice/default/va/demoblast2.ogg
voice/default/blast3 sounds/voice/default/va/demoblast3.ogg
@ -468,6 +472,7 @@ voice/default/hurtfloor2 sounds/voice/default/va/demohurtfloor2.ogg
voice/default/hurtfloor3 sounds/voice/default/va/demohurtfloor3.ogg
voice/default/hurtfloor4 sounds/voice/default/va/demohurtfloor4.ogg
voice/default/hurtfloor5 sounds/voice/default/va/demohurtfloor5.ogg
voice/default/nutstart sounds/voice/default/va/demonutstart.ogg
voice/legacy/death1 sounds/voice/legacy/demodeath1.ogg
voice/legacy/death2 sounds/voice/legacy/demodeath2.ogg

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View file

@ -183,7 +183,9 @@ extend Class SWWMHandler
else if ( (!lastcombat || (gametic > lastcombat+50)) && !SWWMHDoomHandler.IsCuteGirl(e.Thing) ) // [HDoom] don't shout at the girls
{
int lc = 0;
if ( !Random[DemoLines](0,(e.Thing.bBOSS||e.Thing.FindInventory("BossMarker"))?1:2) && (e.DamageType == 'CriticalConcussion') ) lc = AddOneliner("ballskill",1,15);
Inventory buff = e.Inflictor?e.Inflictor.FindInventory('ParriedBuff'):null;
if ( !Random[DemoLines](0,3) && buff && (e.Thing is 'Cyberdemon') && (e.Inflictor is 'Rocket') && (buff.tracer == e.Thing) ) lc = AddOneliner("cybully",1,15);
else if ( !Random[DemoLines](0,(e.Thing.bBOSS||e.Thing.FindInventory("BossMarker"))?1:2) && (e.DamageType == 'CriticalConcussion') ) lc = AddOneliner("ballskill",1,15);
else if ( !Random[DemoLines](0,(e.Thing.bBOSS||e.Thing.FindInventory("BossMarker"))?2:5) && (e.DamageType == 'Buttslam') ) lc = AddOneliner("asskill",1,15);
if ( !lc )
{

View file

@ -225,7 +225,17 @@ extend Class SWWMHandler
override void WorldLoaded( WorldEvent e )
{
if ( e.IsReopen ) return;
if ( gamestate != GS_TITLELEVEL ) AddOneliner("mapstart",3);
if ( gamestate != GS_TITLELEVEL )
{
if ( (level.GetChecksum() ~== "D0E5ECD94BD38DF33F25515C00148693")
|| (level.GetChecksum() ~== "D20297AE8447232F6DBE4851E3104668")
|| (level.GetChecksum() ~== "EBBB8663AD4AB22294A8A1D211A026CD") )
{
if ( !AddOneliner("nutstart",3) )
AddOneliner("mapstart",3);
}
else AddOneliner("mapstart",3);
}
if ( level.levelname ~== "Modder Test Map" )
{
level.ReplaceTextures("-noflat-","kinstile",0);

View file

@ -88,6 +88,8 @@ Class Demolitionist : PlayerPawn
int invwipe; // inventory wipe flags for next level
transient int lastbang;
transient bool ingivecheat;
Property DashFuel : dashfuel;

View file

@ -1179,6 +1179,7 @@ Class SWWMUtility
Actor Instigator = (flags&DE_NOTMISSILE)?Source:Source.target;
BlockThingsIterator bi = BlockThingsIterator.Create(Source,ExplosionRadius);
int nhit = 0, nkill = 0;
bool haskilled = false;
Array<Actor> washit;
washit.Clear();
while ( bi.Next() )
@ -1241,12 +1242,22 @@ Class SWWMUtility
int ndmg = a.DamageMobj(Source,Instigator,dmg,(DamageType=='')?Source.DamageType:DamageType,DMG_EXPLOSION|dmgflags,atan2(-dir.y,-dir.x));
if ( a && !(flags&DE_NOBLEED) ) a.TraceBleed((ndmg>0)?ndmg:dmg,Source);
if ( (flags&DE_HOWL) && a && (a.Health > 0) && a.bISMONSTER && !Random[DoBlast](0,3) ) a.Howl();
if ( hostile && (!a || (a.Health <= 0)) ) haskilled = true;
if ( (flags&DE_COUNTFHKILLS) && (oldhp < basehp) ) continue; // was not at full health
if ( (!a || (a.Health <= 0)) && (!(flags&DE_COUNTENEMIES) || hostile) && (!(flags&DE_COUNTSTEALTH) || inactive) ) nkill++;
}
// traverse portals (needed since BlockThingsIterator can't properly cross sector portals in both vertical directions)
let hnd = SWWMHandler(EventHandler.Find("SWWMHandler"));
if ( !hnd || (hnd.psectors.Size() <= 1) ) return nhit, nkill;
if ( !hnd || (hnd.psectors.Size() <= 1) )
{
if ( (Instigator is 'Demolitionist') && haskilled )
{
let demo = Demolitionist(Instigator);
if ( (gametic > demo.lastbang+30) && (!hnd || (gametic > hnd.lastcombat+10)) && !Random[DemoLines](0,1) )
demo.lastbang = SWWMHandler.AddOneLiner("blast",2,10);
}
return nhit, nkill;
}
int thisgroup = Source.CurSector.portalgroup;
for ( int i=0; i<hnd.psectors.Size(); i++ )
{
@ -1316,10 +1327,17 @@ Class SWWMUtility
int ndmg = a.DamageMobj(Source,Instigator,dmg,(DamageType=='')?Source.DamageType:DamageType,DMG_EXPLOSION|dmgflags,atan2(-dir.y,-dir.x));
if ( a && !(flags&DE_NOBLEED) ) a.TraceBleed((ndmg>0)?ndmg:dmg,Source);
if ( (flags&DE_HOWL) && a && (a.Health > 0) && a.bISMONSTER && !Random[DoBlast](0,3) ) a.Howl();
if ( hostile && (!a || (a.Health <= 0)) ) haskilled = true;
if ( (flags&DE_COUNTFHKILLS) && (oldhp < basehp) ) continue; // was not at full health
if ( (!a || (a.Health <= 0)) && (!(flags&DE_COUNTENEMIES) || hostile) && (!(flags&DE_COUNTSTEALTH) || inactive) ) nkill++;
}
}
if ( (Instigator is 'Demolitionist') && haskilled )
{
let demo = Demolitionist(Instigator);
if ( (gametic > demo.lastbang+30) && (gametic > hnd.lastcombat+10) && !Random[DemoLines](0,1) )
demo.lastbang = SWWMHandler.AddOneLiner("blast",2,10);
}
return nhit, nkill;
}

View file

@ -352,6 +352,8 @@ Class BusterWall : Thinker
let s = SWWMStats.Find(Instigator.player);
if ( s ) s.busts++;
SWWMUtility.AchievementProgressInc("bustin",1,Instigator.player);
if ( (Instigator is 'Demolitionist') && !Random[DemoLines](0,3) && (int(girthitude**.15) >= 3) )
SWWMHandler.AddOneliner("bustkill",2,50);
}
// call hit fx for devastation sigil (if any)
AngeryPower as = instigator?AngeryPower(instigator.FindInventory("AngeryPower")):null;
@ -523,6 +525,8 @@ Class BusterWall : Thinker
let s = SWWMStats.Find(Instigator.player);
if ( s ) s.busts++;
SWWMUtility.AchievementProgressInc("bustin",1,Instigator.player);
if ( (Instigator is 'Demolitionist') && !Random[DemoLines](0,3) && (int(girthitude**.15) >= 3) )
SWWMHandler.AddOneliner("bustkill",2,50);
}
// call hit fx for devastation sigil (if any)
AngeryPower as = instigator?AngeryPower(instigator.FindInventory("AngeryPower")):null;