Fixed item lists having scrollbars when they shouldn't.

Removed Wallbuster reload timer debug cvar (not needed).
Removed CBT easter egg.
Removed PrecacheClasses from ZMAPINFO (no longer needed since 4.5 as UE1 models load much faster).
This commit is contained in:
Mari the Deer 2020-12-11 22:43:50 +01:00
commit 7e3e78b209
10 changed files with 23 additions and 103 deletions

View file

@ -20,6 +20,8 @@ Most of the work here is original, but there are some notable exceptions:
- Title theme, "Traumatic State", by Teque (which a lot of people just know as "the AS-Golgotha music").
- Intermission theme, "Dragony", also by Teque (very comfy music considering the rest of his repertoire).
- Startup/credits theme, "Hidden Tune #242", also by Teque too (super comfy music, ideal for this use).
- Kinsie's Test Map theme, "Hypercardish 1.1", ALSO TOO by Teque (seems nice for such an use I guess).
- "Calm" theme taken from .flow, by lol (really damn good Yume Nikki fangame, by the way).
- The anti-BD feature uses art and music by IOSYS, art was edited into the Doom palette.
- The crash handler uses a short clip of the Curb Your Enthusiasm theme.
- Tewi font by lucy (https://github.com/lucy/tewi-font). Modified to add gradients and drop shadow.
@ -36,7 +38,6 @@ Most of the work here is original, but there are some notable exceptions:
* Redead-ITA
* Sgt. Shivers (@Sgt_Shivers_)
* Moa Dixøn / Endie (@MoaDixon)
- A certain hidden easter egg / meme uses crappified/bassboosted edits of Old Days and the CBT Wikipedia article.
- Extra gib anims for vanilla monsters:
* Ryan Cordell (Demon, Cacodemon, Revenant, Archvile)
* Amuscaria (Baron of Hell, Hell Knight)

View file

@ -60,8 +60,6 @@ server int swwm_maxcasings = 200; // max casings and spent mags at any time
server int swwm_maxdebris = 500; // max chunks of debris at any time
user bool swwm_fuzz = true; // allows toggling the fuzz shader on the demolitionist menus, useful if you're streaming/recording since it destroys the encoding quality
user bool swwm_cbtpause = true; // wallbuster menu pauses the game
user noarchive int swwm_cbtmeme = 0; // easter egg, hidden cvar
user noarchive bool swwm_cbttime = false; // debug: times how long a reload takes
user noarchive int swwm_cbtlast = 0; // last selected ammo for the wallbuster
server bool swwm_cbtall = false; // wallbuster breaks any wall, not just movable ones
server bool swwm_doomfall = false; // monsters take fall damage outside of hexen

View file

@ -1,2 +1,2 @@
[default]
SWWM_MODVER="\chSWWM \czGZ\c- \cw0.9.11b-pre r673 \cu(Fri 11 Dec 21:59:04 CET 2020)";
SWWM_MODVER="\chSWWM \czGZ\c- \cw0.9.11b-pre r674 \cu(Fri 11 Dec 22:51:47 CET 2020)";

View file

@ -627,8 +627,6 @@ wallbuster/load2 sounds/wallbuster/cbt_shellin2.ogg
wallbuster/load3 sounds/wallbuster/cbt_shellin3.ogg
wallbuster/load4 sounds/wallbuster/cbt_shellin4.ogg
$random wallbuster/load { wallbuster/load1 wallbuster/load2 wallbuster/load3 wallbuster/load4 }
wallbuster/cbt sounds/wallbuster/cbt_cbt.ogg
wallbuster/olddays sounds/wallbuster/cbt_olddays.ogg
wallbuster/smallbust1 sounds/wallbuster/cbt_smallbust1.ogg
wallbuster/smallbust2 sounds/wallbuster/cbt_smallbust2.ogg
wallbuster/smallbust3 sounds/wallbuster/cbt_smallbust3.ogg

Binary file not shown.

Binary file not shown.

View file

@ -35,23 +35,6 @@ GameInfo
Border = 2, 0, "graphics/bord_tr.png", "graphics/bord_t.png", "graphics/bord_tl.png", "graphics/bord_r.png", "graphics/bord_l.png", "graphics/bord_br.png", "graphics/bord_b.png", "graphics/bord_bl.png"
ForceTextInMenus = true
TelefogHeight = 28
// precaching of frame-heavy objects
PrecacheClasses = "Demolitionist",
"DeepImpact",
"PusherWeapon",
"ExplodiumGun",
"Spreadgun",
"Wallbuster",
"Eviscerator",
"Hellblazer",
"Sparkster",
"SilverBullet",
"CandyGun",
"Ynykron",
"SWWMGesture"
// precache very long stuff
PrecacheSounds = "wallbuster/olddays",
"wallbuster/cbt"
}
ClearSkills

View file

@ -812,9 +812,8 @@ Class Wallbuster : SWWMWeapon
Array<Class<Ammo> > reloadqueue;
transient bool waitreload;
int whichspin;
transient CVar cbtmuffler, timeme;
bool timing;
int reloadtime[2], rnum;
transient CVar cbtmuffler;
int rnum;
transient bool cancelreload;
transient ui TextureID WeaponBox, AmmoIcon[4], LoadIcon[4], UsedIcon[4], EmptyIcon;
@ -1617,19 +1616,6 @@ Class Wallbuster : SWWMWeapon
invoker.rotation[invoker.rotation[5]]--;
A_StartSound("wallbuster/load",CHAN_WEAPON,CHANF_OVERLAP);
}
action void A_StartReloadTiming()
{
invoker.timing = true;
invoker.reloadtime[0] = level.time;
}
action void A_StopReloadTiming()
{
invoker.timing = false;
invoker.reloadtime[1] = level.time;
if ( !invoker.timeme ) invoker.timeme = CVar.GetCVar('swwm_cbttime',players[consoleplayer]);
if ( (player == players[consoleplayer]) && invoker.timeme.GetBool() )
Console.Printf("Reloaded %d barrels in %gs",invoker.rnum,(invoker.reloadtime[1]-invoker.reloadtime[0])/35.);
}
Default
{
@ -1731,11 +1717,7 @@ Class Wallbuster : SWWMWeapon
XZW2 A 0;
Goto Ready;
Reload:
XZW2 A 2
{
A_StartSound("wallbuster/meleestart",CHAN_WEAPON,CHANF_OVERLAP);
A_StartReloadTiming();
}
XZW2 A 2 A_StartSound("wallbuster/meleestart",CHAN_WEAPON,CHANF_OVERLAP);
XZW4 DEFG 2;
XZW4 HIJK 1;
XZW4 L 1 A_StartSound("wallbuster/unlock",CHAN_WEAPON,CHANF_OVERLAP);
@ -1920,7 +1902,6 @@ Class Wallbuster : SWWMWeapon
XZW8 Z 1 A_StartSound("wallbuster/meleeend",CHAN_WEAPON,CHANF_OVERLAP);
XZW9 ABC 1;
XZW9 DEF 2;
XZW2 A 0 A_StopReloadTiming();
Goto Ready;
User1:
XZW2 A 2

View file

@ -17,10 +17,6 @@ Class SWWMStaticHandler : StaticEventHandler
String taintver;
bool mptaint[MAXPLAYERS];
String mpver[MAXPLAYERS];
// CBT easter egg
bool initme;
double cbtvol;
transient CVar cbtme;
int checktic;
override void NewGame()
@ -175,43 +171,6 @@ Class SWWMStaticHandler : StaticEventHandler
timer++;
}
}
// from Wikipedia, the free encyclopedia
override void WorldTick()
{
if ( !cbtme ) cbtme = CVar.GetCVar('swwm_cbtmeme',players[consoleplayer]);
if ( !players[consoleplayer].mo ) return;
let cbt = players[consoleplayer].mo.FindInventory("Wallbuster");
if ( !cbt ) return;
if ( cbt == players[consoleplayer].ReadyWeapon )
{
if ( !initme && (cbtme.GetInt() > 0) )
{
initme = true;
cbtvol = .6;
}
cbtvol = min(.6,cbtvol+.1);
if ( (cbtme.GetInt() >= 1) && !cbt.IsActorPlayingSound(CHAN_AMBEXTRA+1) )
cbt.A_StartSound("wallbuster/olddays",CHAN_AMBEXTRA+1,CHANF_UI|CHANF_LOOP,cbtvol,0.);
else if ( (cbtme.GetInt() < 1) && cbt.IsActorPlayingSound(CHAN_AMBEXTRA+1) )
cbt.A_StopSound(CHAN_AMBEXTRA+1);
if ( (cbtme.GetInt() >= 2) && !cbt.IsActorPlayingSound(CHAN_AMBEXTRA+2) )
{
// restart the music
if ( cbt.IsActorPlayingSound(CHAN_AMBEXTRA+1) )
{
cbt.A_StopSound(CHAN_AMBEXTRA+1);
cbt.A_StartSound("wallbuster/olddays",CHAN_AMBEXTRA+1,CHANF_UI|CHANF_LOOP,cbtvol,0.);
}
cbt.A_StartSound("wallbuster/cbt",CHAN_AMBEXTRA+2,CHANF_UI,cbtvol,0.);
}
else if ( (cbtme.GetInt() < 2) && cbt.IsActorPlayingSound(CHAN_AMBEXTRA+2) )
cbt.A_StopSound(CHAN_AMBEXTRA+2);
}
else cbtvol = max(0.,cbtvol-.1);
cbt.A_SoundVolume(CHAN_AMBEXTRA+1,cbtvol*((cbtme.GetInt()>=2)?.8:1.));
cbt.A_SoundVolume(CHAN_AMBEXTRA+2,cbtvol);
}
}
// Handler responsible for item replacements and whatever else

View file

@ -1010,7 +1010,7 @@ Class SWWMKnowledgeBaseMenu : GenericMenu
if ( len > longest ) longest = len;
}
maxcol = 622/(longest+24);
totalcol = (invlist.Size()/22)+1;
totalcol = int(ceil(invlist.Size()/22.));
int ofs = int(max(0,(ofs0/22)-(maxcol-1))*22);
xx = 9;
yy = 23;
@ -1055,7 +1055,7 @@ Class SWWMKnowledgeBaseMenu : GenericMenu
if ( len > longest ) longest = len;
}
maxcol = 622/(longest+24);
totalcol = (invlist.Size()/22)+1;
totalcol = int(ceil(invlist.Size()/22.));
if ( maxcol >= totalcol ) return res; // no scrollbar
// calculate offset
int szr = totalcol-maxcol;
@ -1084,7 +1084,7 @@ Class SWWMKnowledgeBaseMenu : GenericMenu
if ( len > longest ) longest = len;
}
maxcol = 622/(longest+24);
totalcol = (invlist.Size()/22)+1;
totalcol = int(ceil(invlist.Size()/22.));
int ofs = int(max(0,(ofs1/22)-(maxcol-1))*22);
xx = 9;
yy = 23;
@ -1129,7 +1129,7 @@ Class SWWMKnowledgeBaseMenu : GenericMenu
if ( len > longest ) longest = len;
}
maxcol = 622/(longest+24);
totalcol = (invlist.Size()/22)+1;
totalcol = int(ceil(invlist.Size()/22.));
if ( maxcol >= totalcol ) return res; // no scrollbar
// calculate offset
int szr = totalcol-maxcol;
@ -1158,7 +1158,7 @@ Class SWWMKnowledgeBaseMenu : GenericMenu
if ( len > longest ) longest = len;
}
maxcol = 622/(longest+24);
totalcol = (invlist.Size()/22)+1;
totalcol = int(ceil(invlist.Size()/22.));
int ofs = int(max(0,(ofs0/22)-(maxcol-1))*22);
xx = 9;
yy = 23;
@ -1200,7 +1200,7 @@ Class SWWMKnowledgeBaseMenu : GenericMenu
if ( len > longest ) longest = len;
}
maxcol = 622/(longest+24);
totalcol = (invlist.Size()/22)+1;
totalcol = int(ceil(invlist.Size()/22.));
if ( maxcol >= totalcol ) return res; // no scrollbar
// calculate offset
int szr = totalcol-maxcol;
@ -1231,7 +1231,7 @@ Class SWWMKnowledgeBaseMenu : GenericMenu
if ( len > longest ) longest = len;
}
maxcol = 622/(longest+96);
totalcol = (storelist.Size()/22)+1;
totalcol = int(ceil(storelist.Size()/22.));
// gotta check both the tag and the price for clicking
int ofs = int(max(0,(ofs0/22)-(maxcol-1))*22);
int cols = 1;
@ -1275,7 +1275,7 @@ Class SWWMKnowledgeBaseMenu : GenericMenu
if ( len > longest ) longest = len;
}
maxcol = 622/(longest+96);
totalcol = (storelist.Size()/22)+1;
totalcol = int(ceil(storelist.Size()/22.));
if ( maxcol >= totalcol ) return res; // no scrollbar
// calculate offset
int szr = totalcol-maxcol;
@ -1372,7 +1372,7 @@ Class SWWMKnowledgeBaseMenu : GenericMenu
if ( len > longest ) longest = len;
}
maxcol = 622/(longest+24);
totalcol = (playerlist.Size()/22)+1;
totalcol = int(ceil(playerlist.Size()/22.));
int ofs = int(max(0,(ofs0/22)-(maxcol-1))*22);
xx = 9;
yy = 23;
@ -1412,7 +1412,7 @@ Class SWWMKnowledgeBaseMenu : GenericMenu
if ( len > longest ) longest = len;
}
maxcol = 622/(longest+24);
totalcol = (playerlist.Size()/22)+1;
totalcol = int(ceil(playerlist.Size()/22.));
if ( maxcol >= totalcol ) return res; // no scrollbar
// calculate offset
int szr = totalcol-maxcol;
@ -1540,7 +1540,7 @@ Class SWWMKnowledgeBaseMenu : GenericMenu
if ( len > longest ) longest = len;
}
maxcol = 622/(longest+24);
totalcol = (invlist.Size()/22)+1;
totalcol = int(ceil(invlist.Size()/22.));
if ( maxcol >= totalcol ) return res; // no scrollbar
// calculate offset
int szr = totalcol-maxcol;
@ -1565,7 +1565,7 @@ Class SWWMKnowledgeBaseMenu : GenericMenu
if ( len > longest ) longest = len;
}
maxcol = 622/(longest+24);
totalcol = (invlist.Size()/22)+1;
totalcol = int(ceil(invlist.Size()/22.));
if ( maxcol >= totalcol ) return res; // no scrollbar
// calculate offset
int szr = totalcol-maxcol;
@ -1592,7 +1592,7 @@ Class SWWMKnowledgeBaseMenu : GenericMenu
if ( len > longest ) longest = len;
}
maxcol = 622/(longest+96);
totalcol = (storelist.Size()/22)+1;
totalcol = int(ceil(storelist.Size()/22.));
if ( maxcol >= totalcol ) return res; // no scrollbar
// calculate offset
int szr = totalcol-maxcol;
@ -1645,7 +1645,7 @@ Class SWWMKnowledgeBaseMenu : GenericMenu
if ( len > longest ) longest = len;
}
maxcol = 622/(longest+24);
totalcol = (invlist.Size()/22)+1;
totalcol = int(ceil(invlist.Size()/22.));
if ( maxcol >= totalcol ) return res; // no scrollbar
// calculate offset
int szr = totalcol-maxcol;
@ -2879,7 +2879,7 @@ Class SWWMKnowledgeBaseMenu : GenericMenu
if ( len > longest ) longest = len;
}
maxcol = 622/(longest+24);
totalcol = (invlist.Size()/22)+1;
totalcol = int(ceil(invlist.Size()/22.));
int ofs = int(max(0,(ofs0/22)-(maxcol-1))*22);
for ( int i=ofs; i<invlist.Size(); i++ )
{
@ -2938,7 +2938,7 @@ Class SWWMKnowledgeBaseMenu : GenericMenu
if ( len > longest ) longest = len;
}
maxcol = 622/(longest+24);
totalcol = (invlist.Size()/22)+1;
totalcol = int(ceil(invlist.Size()/22.));
int ofs = int(max(0,(ofs0/22)-(maxcol-1))*22);
for ( int i=0; i<invlist.Size(); i++ )
{
@ -3067,7 +3067,7 @@ Class SWWMKnowledgeBaseMenu : GenericMenu
if ( len > longest ) longest = len;
}
maxcol = 622/(longest+96);
totalcol = (storelist.Size()/22)+1;
totalcol = int(ceil(storelist.Size()/22.));
int ofs = int(max(0,(ofs0/22)-(maxcol-1))*22);
int cols = 1;
for ( int i=ofs; i<storelist.Size(); i++ )