* Set via a fourth digit in the upper midtexture for transparent FOFs
* For example - #2551 is additive solid, #1282 is subtractive half...
* The original method of setting the upper midtexture to #900 or 901 still works, since I'm not out to break existing maps.
* Software: Remove the horrible `else if` ladder for FOF translucency. Algorithms, baby!
* OpenGL: Move to using `HWR_GetBlendModeFlag` in more places, for more long-term extensible support for multiple blendmodes.
* Blend tables generated by the game.
* The Color Cube accessibility tool.
* Fixed another stupid typo that got in the way of FF_BLENDMASK working.
* Some minor adjustments for code cleanliness.
(side note, it's weird as hell that code we inherited from vanilla next - and i checked, it wasn't mangled in the merge - has bugs that straight up prevent it from functioning properly...)
All my work thus far on solving the drawflag/renderflag/additive/subtractive conundrum.
Outstandng problems:
* Bad additive/subtractive tables means that they appear opaque except under certain conditions.
* No support for FOFs, Polyobjects, or linedefs in OpenGL yet.
* All OpenGL support mostly done blind, may or may not function in practice.
If nothing else, the hard engineering problems are solved and it's just bug hammering...
* None of the following things (grouped by the fact they fade/slide in) use hardcoded static numbers; they'e now attached to the titlecard ticker.
* Minimap.
* All V_HUDTRANS items. (Not add/sub) - this was previously broken entirely
* FREE PLAY
* Record Attack Input (no longer slides in at all - needs to be visible from start of play.)
* Fixed a rare case where V_SLIDEIN HUD elements would occasionally jump a step too far.
* Adjust several loading strings, and left-align their rendering.
* Don't call HU_LoadGraphics() again (startup cached ALL FONTS twice).
* Adjust when some functions are called during loading to more effectively compartmentalise sections of loading that depend on each other.
* LOADED_ISTARTUPGRAPHICS now comes after SCR_Startup, as we can explicitly guarantee the palette has been loaded after that function.
* Make sure everything closely related to configurations (gamedata, console stuff, etc) which is not directly dependent on anything else is loaded under LOADED_CONFIG - "Load settings" (formerly LOADED_MINIT).
* The `-warp` command line parameter is now checked alongside LOADED_DCHECKNETGAME.
* Don't attempt to draw the loading bar before LOADED_ISTARTUPGRAPHICS, as the palette is not loaded, which means you're wasting cycles on a white screen.
* Resolves#145.
* Increased granularity, to seperate out texture loading and sprite loading from other render structure initialisation.
* Shows small loading string in DEVELOP builds, to show where we can optimise loading times when we're polishing.
* Clean up con_refresh/startup, which got split into two variables in the merge by mistake.
I could've used the existing `boolean force` here to skip over the check, but I think the MF_SHOOTABLE check is appropriate, and the DMG_CANTHURTSELF flag will be respected this way too.
Also, clean up a ridiculously long statement.
* `k_spinouttype` will never have the value of 2. This might've been a check for KSPIN_IFRAMES, but
* that already controls `pw_flashing` earlier in the check
* completely unlabeled, so it's nonsense that needs to be stripped
* `k_squishedtimer` wa mou shinderu.