Build 6308
SVN-
General
Revise r6305.
SVN handles and Git names are merged into one person.
Revise r6305.
Optimize getofs_viewtype for precision and speed.
Add action viewtypes 12 (like 7 but not mirrored), 9, and 16.
Templatize getofs_viewtype functions.
When calculating which rotation to use for CON action viewtype 7, offset the frame intervals by 15 degrees instead of 22.5, clearly a copypaste error from viewtypes 5 or 8. Now these are properly centered.
Trailing whitespace.
Derp
Texcache cleanups. No longer allocates a 256 byte buffer for every cache entry's name.
scriptfile.[cpp|h] cleanups
Fix flickering text on the bonus screen. Derp.
OSD (console) cleanup
Inconsequential formatting
Fix crash when attempting to play an IVF video in 8-bit.
Menu stuff
Fix standalone warnings.
When playing an IVF upgraded from an ANM and no sound list has been defined for the IVF, use the ANM's sound list by converting framerates.
If an ANM is upgraded to an IVF, use the sounds defined for the .ivf if any have been.
Replace sound_func function pointer parameter and associate functions for hardcoded ANMs with equivalent animsounds arrays.
Let animsound value -1 stop all sounds.
Game defs: Add sounds sub-token to cutscene token that functions identically to animsounds.
More standalone stuff
Workaround for MSVC bug
Remove some Duke-specific screen displays from standalone builds
Fix command line help window in builds with the startup window disabled
Clean up command line parameter help text
Shrink the tilesiz vector to use int16_t members as the original arrays were.
Add EVENT_PRELOADGAME and EVENT_POSTLOADGAME.
Add drawline256 and drawlinergb commands that call the internal functions used for the automap lines.
drawline256 <x0> <y0> <x1> <y1> <index> drawlinergb <x0> <y0> <x1> <y1> <index> <rgb> The coordinates are xdim<<12/ydim<<12 based, not 320<<16x200<<16. <index> is a palette index, and for drawlinergb is used as a fallback in the software renderer. <rgb> is encoded the same as PROJ_FLASH_COLOR.
Add internal drawlinergb function.
Add getclosestcol command, which finds the closest palette index given
getclosestcol <return> <color> <limit> <color> is encoded the same as PROJ_FLASH_COLOR. <limit> is the index of the last palette color that should be considered. Use 255 for the whole palette, 254 to exclude the transparent color, 239 to exclude Duke 3D's fullbrights, etc.
Fix buggy swinging door behavior
Dicking around with inlined actor header functions
Revise r6225
Potential CON performance improvements
Clamp r_maxfps to a minimum of 30 if not 0
Fix yoffset bouncing of face sprites with cstat 128.
r6210 inadvertantly forced orientation bit 2 for internal gametext. Tidy up affected text.
More misc small cleanups. DONT_BUILD.
:(
Misc cleanups, mostly const correctness
Further reorganization of actor_t. BYTEVERSION bumped.
Make r_showfps 2 work a little bit better
Respect r_maxfps in menus and on startup/bonus/end screens
More minor optimizations. Breaks savegames.
Minor optimizations
Only try texcache_fetchmulti on detail texture slots.
Check that texture entries have a non-skybox filename before using it in texcache_fetchmulti.
Fixes crash reported by Sgt Jack V.
Don't cut off a row and/or column of texels when drawing floor-aligned sprites with odd dimensions.
Add new tint flag 256, which always skips hightile when picking an image source.
Explicitly opt out of hicfindsubst falling back to pal 0 instead of checking against the reserved palnum range.
Factor out hictinting array accesses.
Create a new struct for hictinting that uses a uint16_t for flags.r
Add new userdef members gametext_tracking, mgametext_tracking, and menutext_tracking.
Make internal gametext calls use MF_Bluefont fields in the menus and a newly introduced MF_BluefontGame elsewhere.
Only use TEXT_GAMETEXTNUMHACK on internal gametext calls that benefit from it.
Optimize all gametext calls.
Make menutext use MF_Redfont fields.
Optimize all menutext calls.
Eliminate the RedfontGreen type and replace it with indentations (like "Apply Changes").
Eliminate the RedfontBlue type and replace it with the Disabled or LookDisabled flags.
Add a new MenuEntryFlag to make an option appear disabled but still work.
Fix a bug in r6184.
Clean up warnings in standalone mode.
Clean up gamefuncs in standalone mode.
Don't print any warnings to the log if an unrecognized gamefunc is dispatched; this is expected and normal when they are renamed.
Add undefinegamefunc.
Remove an old hack from my menu system that upon closer inspection is no longer needed.
Better support for working with blend in the editor
Get MSVC building again, DONT_BUILD.
Move rules around to unbreak Linux builds. This may be a GNU Make bug. DONT_BUILD.
Distinguish between .c files in rsrc and ones generated at build time in obj.