Build 6687
SVN-
General
Amend previous commit
SVN handles and Git names are merged into one person.
Amend previous commit
New userdef structures: "menu_scrollbartilenum", "menu_scrollbarz", "menu_scrollcursorz"
Set "menu_scrollbartilenum" to the first tilenum of a series of 4 tiles: <tilenum> = Middle (tiled to fill the scrollbar height) <tilenum> + 1 = Top <tilenum> + 2 = Bottom <tilenum> + 3 = Cursor Default value for menu_scrollbartilenum is -1, which will display EDuke32's default scrollbar. Use "menu_scrollbarz" and "menu_scrollcursorz" to control the scale of the scrollbar. Default values are 65536. Patch from Fox.
Improve translucence of menu cursor
Some screentext fixes (that don't affect CON scripts)
Change OSD_Printf to initprintf for addlog and addlogvar
Menu stuff
Add undefinecheat.
Hide blank cheats
Add resetplayerflag 4, which always loads if possible
Fix the definetint def token, broken in r6557.
Replace bespoke CON/def module and clipmap filename array reallocing with a new class, GrowArray.
Update credits.
Keep individually specified RTS files and the rtsname cfg setting completely separate. This fixes a few issues.
Silence -Wcast-qual in glad.c.
Remove GAMEFUNC_* hardcoded labels.
Make sure we clear the keyboard buffer when beginning text input.
Fix build issues with ARM and USE_OPENGL=0. DONT_BUILD.
Menu stuff
Revert the functional changes of r4741 and r4703 relating to conveyors. This restores conveyor belts to their original v1.5 speeds at the expense of the corner cases the original commits addressed.
This can be revisited in the future to address these corner cases without breaking the original game.
Fix FPS limiter in EVENT_SCREEN.
Re-allow MUSICANDSFX ambient sounds with a hitag in the interval [32768, 65535].
Move new CON_FOR iterators to the bottom of their enum to unbreak savegames using CON_FOR made before r6635.
Add "rtsname" token to grpinfo grammar.
Use an unsigned type when we need right shifts to zero-extend for use in tagbitmap.
Fixes crash in boeing.map.
Add support for MapArt from within zip files.
Fix MSVC build breakage.
Apply the FPS limiter to EVENT_SCREEN.
Modernize naming of gamefuncs.
Patch from Fox.
Satisfy -Wmaybe-uninitialized warnings exposed by -Og.
Build debug builds with -Og instead of -O0 where available.
Remix r5063
Add STR_USERMAPFILENAME for qgetsysstr.
Patch from Fox.
Unbreak r6608.
Fix a bug in r6587, where "statusbarcustom" was not saved in the cfg file.
Patch from Fox.
New userdef structure "shadow_pal"
Sets the black palette used for enemy shadows and for black rectangles in the menu. Default value is 4. Patch from Fox.
Fix overflow issue with tsprite shade of gibs.
Patch from Fox.
New events EVENT_PLAYLEVELMUSICSLOT and EVENT_CONTINUELEVELMUSICSLOT.
Called when a music track will be started from the beginning, and when the current track is continued after loading a save, etc. The requested track is passed into PLAYLEVELMUSICSLOT via ud.m_volume_number and ud.m_level_number.
Add commands "swaptrackslot" and "preloadtrackslotforswap"
Systematize the appearance of the menu fonts using the DOS version as a reference.
New events: "EVENT_MENUCURSORLEFT" "EVENT_MENUCURSORRIGHT" "EVENT_MENUCURSORSHADE" "EVENT_MENUSHADESELECTED" New userdef structures: "menu_shadedeselected" "menu_shadedisabled" "menutext_zoom" "menutext_xspace" "menutext_pal" "menutext_palselected" "menutext_paldeselected" "menutext_paldisabled" "menutext_palselected_right" "menutext_paldeselected_right" "menutext_paldisabled_right" "gametext_zoom" "gametext_xspace" "gametext_pal" "gametext_palselected" "gametext_paldeselected" "gametext_paldisabled" "gametext_palselected_right" "gametext_paldeselected_right" "gametext_paldisabled_right" "minitext_zoom" "minitext_xspace" "minitext_tracking" "minitext_pal" "minitext_palselected" "minitext_paldeselected" "minitext_paldisabled" "minitext_palselected_right" "minitext_paldeselected_right" "minitext_paldisabled_right" "menutitle_pal" "slidebar_palselected" "slidebar_paldisabled" Self-explanatory. Use in conjunction with "menutext_tracking" and "gametext_tracking" ("mgametext_tracking" is now ignored). The values for disabled shade is added to the selected or deselected shades. The palettes have a disabled > selected > deselected hierarchy, and are applied if not zero. Patch from Fox
New LOGO_FLAGS bits LOGO_NOHELP and LOGO_NOCREDITS.
LOGO_NOHELP: Remove the "Help" item in the main menu and the F1 key function. LOGO_NOCREDITS: Remove the "Credits" item in the main menu. Patch from Fox.
New commands: "divr", "divru", "divrd"
divr <dividend> <divisor> Divide gamevar <dividend> by <divisor> and round (aka round to nearest) the result. A result of 0.5 will equal 1. divru <dividend> <divisor> Divide gamevar <dividend> by <divisor> and round up (aka round away from zero) the result. Additionally "divrd" can be used to round down (aka round toward zero), which is equivalent to the current div command as tested on x86, ARM, and PowerPC. Note that "shiftr" rounds up negative values. Patch from Fox.
Maintenance on Gv_DivVar
New command "qstrcmp"
qstrcmp <quote1> <quote2> <var> Compare two quotes. <var> returns zero if they are identical, -1 if the first quote comes first in alphabetical order, 1 if it comes later. Note that the lexicographical order is rudimentary, for example "Player 2" is considered greater than "Player 10". Patch from Fox.
Add EVENT_DISPLAYOVERHEADMAPPLAYER.
RETURN is the tilenum to be displayed. It is pre-populated with what the game will display for the current frame. Set RETURN to -1 to disable.
Add the official Nuclear Winter demo GRP to the list of recognized GRPs.
Menu stuff
Revert changes made to SIDEBOLT1 in r6244.
Fix typos in r6244.
New LOGO_FLAGS bit LOGO_HIDEEPISODE: Omit the episode name from the automap.
Patch from Fox.
New userdef structures "default_volume", "default_skill"
Lets you choose which episode or skill should be selected by default in the menus. Default values are 0 and 1, respectively. Patch from Fox.
Display sprite shadows in Polymer if dynamic lighting is disabled.
Patch from Fox.
Add "Alternate Weapon" key similar to Shadow Warrior Classic Redux.
When pressed it switches between pipebomb / detonator or shrinker / expander. New event "EVENT_ALTWEAPON" Akin to "EVENT_PREVIOUSWEAPON" and "EVENT_NEXTWEAPON". RETURN is set to 12. Patch from Fox.
Fix the aspect of save thumbnails in Polymost / Polymer in widescreen.
Patch from Fox.
Add an option to move the status bar to the top of the screen in the Android version.
Restores a feature temporarily disabled in r6553. Currently only supports the modern status bar. Patch from Fox.
New userdef structure: "statusbarflags", "statusbarrange", "statusbarcustom"
"statusbarflags" is a bitfield. Values are: STATUSBAR_NONONE = 1 STATUSBAR_NOMINI = 2 STATUSBAR_NOFULL = 4 STATUSBAR_NOSHRINK = 8 STATUSBAR_NOFRAGBAR = 16 STATUSBAR_NOOVERLAY = 32 STATUSBAR_NOMODERN = 64 Default value is 8. In case you modify it, you also have to set the other status bar related userdefs in EVENT_SETDEFAULTS. Default values in EDuke32 are: screen_size = 4; statusbarmode = 1; althud = 1; "statusbarrange" is used to add more alternatives for the status bar without breaking the option in the menu. If used, the mini status bar (screen_size = 4) will cycle through "statusbarcustom" when changing the screen size. Also fix the size of the viewport when the screen is shrunk and the scale of the status bar is not 100%. Patch from Fox.
Make cutscene "aspect" def token work with ANMs too.
Patch from Fox.
New userdef structure "menubackground"
Set to 0 to disable the black transparent mask below the in-game menu. Patch from Fox.
Add new events at various points that display hardcoded screens.
New event "EVENT_MAINMENUSCREEN" Triggered before the main menu is displayed. Set RETURN to -1 to disable the screens that appear before the main menu. New event "EVENT_NEWGAMESCREEN" Triggered when a new game is started. Set RETURN to -1 to disable The Birth intro animation. New event "EVENT_ENDLEVELSCREEN" Triggered when a level ends. Set RETURN to -1 to disable the bonus and deathmatch score screens after a level ends. New event "EVENT_EXITGAMESCREEN" Triggered when a running game is ended. Set RETURN to -1 to disable the deathmatch score screen when you quit mid-game. New event "EVENT_EXITPROGRAMSCREEN" Triggered when the program is closed. Set RETURN to -1 to disable the shareware or TEN screen,sif they were enabled in LOGO_FLAGS. Patch from Fox.