Build 6307
SVN-
General
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.
SVN handles and Git names are merged into one person.
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.
Add wall.blend to structure access.
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 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.
Add EVENT_DISPLAYOVERHEADMAPTEXT.
Set RETURN to any non-zero value to disable hardcoded display of text. If you wish to replace the hardcoded text, you must check that userdef[].overhead_on == 2 yourself.
Potential CON performance improvements
Can Duke3D CON version compatibility messages in standalone builds
Gamevar cleanup
Use macros for special gamevar access range checking
Change hard-coded subway effect damage to generic explosive damage that can be handled by CON. Fixes subway kills not counting toward the dead monster count and allows CON scripts to handle subway damage however they like.
Move Mapster32 autoexec to before the map specified on the command line is loaded, to allow EVENT_PRELOADMAP and EVENT_LOADMAP to work when loading a map from the command line. This makes the console output of autoexec a little worse but the OSD will be fixed at a later time.
Handle the save and savenn commands after the full tic is processed, instead of in the middle of it during execution. DONT_BUILD.
Add undefinegamefunc.
Factor out code for launching EVENT_GAME and EVENT_PREGAME.
weapons.con.sample: Use full precision when applying weapon scaling.
weapons.con.sample: Add internal temp variables for rotatesprite parameters that the subroutines need to modify. This fixes weapon scaling.
weapons.con.sample: Rename hud_G_Draw_temp* to hud_int_temp*.
weapons.con.sample: Only setvar RETURN -1 for values of drawweapon that we actually handle. (Currently all of them, but this is more future-proof.)
weapons.con.sample: No need to andvar before getting a sine value. The source does that for us.
Remove bounds check on rotatesprite coordinates.
C-CON and M32script: Only accept hex literals beginning with '0' and not any other digit.
Implement "divscale" and "scalevar" (scale()) in C-CON and "scalevar" in M32script.
Fix addlogvar command, broken in r5835.
Allow gamestartup to read in one additional parameter (MAXFLAMETHROWERAMMO). Do nothing with it yet.
Implement "ifplaybackon" conditional, used by World Tour to determine if the replay feature is enabled. In our case, it is always false.
Minor changes to gamevar error handling
Misc cleanup. Removed ability to use .CON files found in the .GRP when the .CON files found in the directory can't be compiled.
Fix detection of menu sounds in EVENT_SOUND
Support saving specified CON arrays in map states
Add an optional sixth parameter, a flags bitfield, to action definitions. Bump BYTEVERSION.
Remove some unused gamevars pertaining to the original multiplayer code. DONT_BUILD.
Fix EVENT_DISPLAYROOMS and EVENT_DISPLAYROOMSCAMERA RETURN values
Fix problem with C-CON sector and wall structure access. Oops.
CON compilation and debug message fuckery affecting virtually nobody
Clean up a couple instances of direct usage of a magic number in the CON compiler. DONT_BUILD.
Make the bitptr stuff in the CON compiler more readable.