- The "cloud" is stationary and spawned on the item box
instead of the player. Still scales up with speed.
- Single particles are spawned behind the player. No
longer scales. Lasts longer but can end early if the
player slows down.
Old code was shit so I removed it (4d67cc632). Turns out
none of that bullshit actually mattered to make this box
respawn and it just needs to go to an invisible state!
Makes use of some nifty flickering code (that was already
there but effectively disabled) shortly before it actually
respawns.
- Refactor significantly (now has its own func, `G_GetNextMap`)
- If gametype uses cups, iterate through cups to find the current level, then grab the next valid level
- If not, get the next valid mapheader for your gametype
- SOC `nextmap`/`marathonnext` is not just deprecated but REMOVED
- Hide the NEXTMAP_ constants again, but leave support dummied out for if we have them publically accessible again
- Also get rid of a bunch of OTHER mapheader stuff we're never gonna use
- NiGHTS Grades? NOPE
- Vanilla titlecard patches? NOPE
- Boss music fadeout/replacement? NOPE
- Select Heading? NOPE
- You've been blocked.
- Don't show maps without lumps on the level select list
- this is me being petty, but making it NOTIMEATTACK in SOC instead of TIMEATTACK so we can reconsider the maps with/without them.
- G_MapNumber now handles special NEXTMAP_ nextmapspecial_t constants that exist at the end of the available type.
- Cleanup of G_DoCompleted
- Add bounds checking to the various SOC maincfg map starts (spstage_start, etc)
- Add lump checking to titlemap behaviour
- Now a struct with zone-allocated buffer member
- Instead of bunging it on the end of the buffer, the time for G_SometimesGetDifferentGametype is its own struct member
Debris flies forward and outward from the player in the
direction of momentum. Debris particles bounce once then
disappear when they hit the ground for the second time.
Clouds spawn on and trail behind the player for a short
duration.
Also:
- improved error prints for SOC condition definitions
- improved bounds checking to use `nummapheaders` for iterating over mapheaderinfo
There are still situations that use NUMMAPS like mapvisited, randmapbuffer, etc, which need to be addressed before merger.
* Required an adjustment of everywhere using G_MapNumber to return the raw header number, instead of off-by-one ala gamemap.
* Fixing gamemap is a viable improvement for a future commit, but this commit is already pretty big.
* Remove SCANTHINGS, since it used G_MapNumber and didn't work with long map names OR virtres anyways.
* Support freeing new information in CLEAR LEVELS maincfg event, since I tried to use that to test cups.
* Make Patch_Free's usability match Z_Free -- passing NULL is permitted and a no-op.
- Grab thumbnail and minimap pictures even for base game maps
- Repair modified game event for replacement map load
- PU_STATIC thumbnail and minimap, freed on new file load lump discovery
- Fix W_CheckNumForMap to not SIGSEGV if no match
- Reduce the number of pointless map lump hunts, we've already got it stored
- Prevent use-after-free for map pictures on voting screen
- Cache "BLANKLVL" patch once
- Draw minimap on the time attack menu
Unfortunately cups are still broken and I'm not sure where to start on that, or if it's just not having a sample wad to test with that includes cups