// level compatibility scripts // sometimes shit breaks, or certain changes are needed for balance or to mesh // with the mod's mechanics better, this is here for that Class SWWMLevelCompatibility : LevelPostProcessor { private void EquinoxBossBrainHandle( uint lineno, int sectortag ) { // don't spawn boss brains until it's time to crush them for ( uint i=0; i 20 ) SetThingEdNum(i,0); } else if ( pos.x == -5344. ) { ncellsb++; if ( ncellsb > 20 ) SetThingEdNum(i,0); } } break; // Ultimate Doom 2 MAP20 (dv2.9) case 'CC53CFFCB30E873669AA2F09DA0D3566': // add a "sector enter" action for reaching the exit room // and make it trigger a dialogue uint nt = AddThing(9998,(-9360,12768,12)); SetThingFlags(nt,MODES_ALL|MTF_STANDSTILL); // trigger once SetThingSpecial(nt,Thing_Activate); int tiddy = level.FindUniqueTid(9999); SetThingArgument(nt,0,tiddy); nt = AddThing(4206930,(0,0,0)); SetThingID(nt,tiddy); SetThingArgument(nt,0,0); break; // EQUINOX: various boss brain setups that could be cheesed with the Ynykron or silver bullet // Equinox MAP04 case 'E66BCCFAD7AC40EFB21E2A19131E1522': EquinoxBossBrainHandle(2406,27); // raise floor by 10 units so its untextured lower lines don't glitch out at eye level OffsetSectorPlane(248,0,10.); break; // Equinox MAP07 case 'A0B6B83DC8BD50FC84170572840DE585': EquinoxBossBrainHandle(3423,31); break; // Equinox MAP10 case 'F91E3FE225F10EECBE21486E1BB14834': EquinoxBossBrainHandle(2813,29); break; // Equinox MAP13 case '3805A661D5C4523AFF7BF86991071043': EquinoxBossBrainHandle(4106,60); break; // DOOM VACATION: this wad is weird // Doom Vacation MAP01 (1.4) case 'F286BABF0D152259CD6B996E8920CA70': // Doom Vacation MAP01 (1.5) case 'A52BD2038CF814101AAB7D9C78F9ACE2': // two girls shouldn't be headpattable, as they have use lines around them SetThingArgument(314,0,1); SetThingArgument(315,0,1); SetThingID(314,666); SetThingID(315,667); // unfortunately the line special wrangling has to be done one tic after map load // because fuck absolutely everything about how ACS works break; // Doom 2 MAP07 case '291F24417FB3DD411339AE82EF9B3597': // remove excess backpacks (there's 10 of them for fuck's sake) for ( uint i=0; i