Revision r7237
Add unsigned access to actor .htmovflag through actor .htumovflag
Browse logs with clarity: filter by type/year, search text, and inspect parsed commit details.
Add unsigned access to actor .htmovflag through actor .htumovflag
Misc CON fixups
Further clean up C_SetScriptSize(). This also fixes a bug in the function where when expanding the buffer size, most of the extra space was left uninitialized due to bad parameters passed to memset().
Clean up A_InsertSprite() and the beginning of A_Spawn()
Shuffle things around so most of the script structure access stuff actually resides in gamestructures.cpp
Minor CON compiler cleanup
This should improve the reliability of CON_SWITCH, and maybe allow nesting them to work.
Small cleanup in gameexec
This is a little bit more readable
Fix Gv_GetArrayOrStruct() error message
EDUKE32_STANDALONE guard some more Duke3D-specific behavior
WIP wall texture rotation bit
Update libcompat-to-msvc.a for 32-bit so we can link against SDL 2.0.9
Compile without -fno-strict-aliasing.
This one is for Hendricks
Was checking something out for a mapper and noticed this block of code should be nested deeper.
Improve selection of a failsafe video mode if videoSetGameMode() fails at game startup
Mapster32: stop playing sounds when entering the tile selector in 3d mode
Minor start window cleanup. This ended up touching a bunch of other files due to variable renaming, but there are zero functional changes to anything but the startup window in this commit.
Fix whitespace in gameres.rc
Fix Polymer checkbox not showing up in the startup window in Visual Studio builds
Use clamp in mact LIMITCONTROL macro
These changes aren't particularly meaningful
Moved a few things in mact around while I stared at it thinking about what to do with it
Move hash_getcode() and inthash_getcode() to hash.h so they can be used in places other than hash.cpp
After parsing the cfg, fill in the default bindings for any control functions that are completely missing, with function unbound and key unused by anything else.
Convert some unwieldly g_player[myconnectindex].ps->gm crap to references
Slightly simplify S_OpenAudio()...
Use MODE_RESTART in osdcmd_map() when already in a game
Rename Gv_GetSpecialVar() to Gv_GetArrayOrStruct() and fix what would be a bug in Gv_GetVarDataPtr() if we were using it for something more than the single thing we use it for now
Prevent crash in the editor if newnumwalls and numwalls are both somehow -1
Fix crash when attempting to load a corrupt map
Switch VM_EventCommon to use references
sdlayer: pass SDL_WINDOW_FULLSCREEN_DESKTOP to SDL_SetWindowFullscreen() when setting a windowed mode that matches the desktop resolution
Convert the Gv_GetVar and Gv_SetVar family of functions into something similar to the setup for VM_OnEvent, where multiple versions of the functions are generated by the compiler via forced inlining. This makes the functions much easier to maintain.
Tiny cleanups
Direct struct access for tsprite, and break special gamevar access out of Gv_GetVar() and into a separate function like it already was with Gv_GetVarX()
Clean up Gv_AddSystemVars() and Gv_RefreshPointers()
Add LAST_LABEL macro
Direct access for the actor structs
gamedef.cpp and friends: use preprocessor defines instead of hard-coded values for gamevar IDs that are really constants or arrays or structs
Clean up VM array handling with references
Refine CON VM error handling behavior. Old behavior: when an operation failed, execution attempted to continue from the next command as if nothing had happened. This behavior was poorly defined and often had unintended consequences; e.g a "random" sprite being operated on because an operation that was supposed to place a sprite id in a gamevar failed, and the previous value was taken as a sprite id instead. New behavior: execution of the state/actor/event halts. Failure of a particular actor is more immediately obvious and unwanted trampling on other parts of the game state does not occur.
WIP: direct CON read/write access to structure members via pointer and offset instead of translation function. This is only enabled for wall and sector structure members in this commit.
Remove CON ERROR_OPENBRACKET and ERROR_CLOSEBRACKET and add ERROR_NOTTOPLEVEL
Add a couple missing headers to build.vcxproj
Minor gamedef.cpp cleanup
Formatting
Use reference in G_DoGameStartup().
Add a new member to memberlabel_t to hold the offset of a structure member for CON access. This will be used in a future commit.
------------------------------------------------------------------------ r7238 | terminx | 2018-11-18 10:14:54 -0800 (Sun, 18 Nov 2018) | 3 lines CON syntax extension: the empty "[]" shortcut for accessing a struct at index THISACTOR can now be omitted. This allows cleaner syntax such as "geta .x temp", "ife sprite.x temp", etc. ------------------------------------------------------------------------ r7237 | terminx | 2018-11-18 10:14:49 -0800 (Sun, 18 Nov 2018) | 1 line Add unsigned access to actor .htmovflag through actor .htumovflag ------------------------------------------------------------------------ r7236 | terminx | 2018-11-18 10:14:43 -0800 (Sun, 18 Nov 2018) | 1 line Misc CON fixups ------------------------------------------------------------------------ r7235 | terminx | 2018-11-18 10:14:38 -0800 (Sun, 18 Nov 2018) | 1 line Further clean up C_SetScriptSize(). This also fixes a bug in the function where when expanding the buffer size, most of the extra space was left uninitialized due to bad parameters passed to memset(). ------------------------------------------------------------------------ r7234 | terminx | 2018-11-18 10:14:33 -0800 (Sun, 18 Nov 2018) | 1 line Clean up A_InsertSprite() and the beginning of A_Spawn() ------------------------------------------------------------------------ r7233 | terminx | 2018-11-18 10:14:26 -0800 (Sun, 18 Nov 2018) | 1 line Shuffle things around so most of the script structure access stuff actually resides in gamestructures.cpp ------------------------------------------------------------------------ r7232 | terminx | 2018-11-18 10:14:20 -0800 (Sun, 18 Nov 2018) | 1 line Minor CON compiler cleanup ------------------------------------------------------------------------ r7231 | terminx | 2018-11-18 10:14:15 -0800 (Sun, 18 Nov 2018) | 1 line This should improve the reliability of CON_SWITCH, and maybe allow nesting them to work. ------------------------------------------------------------------------ r7230 | terminx | 2018-11-18 10:14:10 -0800 (Sun, 18 Nov 2018) | 1 line Small cleanup in gameexec ------------------------------------------------------------------------ r7229 | terminx | 2018-11-18 10:14:05 -0800 (Sun, 18 Nov 2018) | 1 line This is a little bit more readable ------------------------------------------------------------------------ r7228 | terminx | 2018-11-18 10:14:00 -0800 (Sun, 18 Nov 2018) | 1 line Fix Gv_GetArrayOrStruct() error message ------------------------------------------------------------------------ r7227 | terminx | 2018-11-18 10:13:55 -0800 (Sun, 18 Nov 2018) | 1 line EDUKE32_STANDALONE guard some more Duke3D-specific behavior ------------------------------------------------------------------------ r7226 | terminx | 2018-11-18 10:13:48 -0800 (Sun, 18 Nov 2018) | 1 line WIP wall texture rotation bit ------------------------------------------------------------------------ r7225 | terminx | 2018-11-18 10:13:40 -0800 (Sun, 18 Nov 2018) | 1 line Update libcompat-to-msvc.a for 32-bit so we can link against SDL 2.0.9 ------------------------------------------------------------------------ r7224 | terminx | 2018-11-18 10:13:33 -0800 (Sun, 18 Nov 2018) | 1 line Compile without -fno-strict-aliasing. ------------------------------------------------------------------------ r7223 | terminx | 2018-11-18 10:13:25 -0800 (Sun, 18 Nov 2018) | 1 line This one is for Hendricks ------------------------------------------------------------------------ r7222 | terminx | 2018-11-18 10:13:19 -0800 (Sun, 18 Nov 2018) | 1 line Was checking something out for a mapper and noticed this block of code should be nested deeper. ------------------------------------------------------------------------ r7221 | terminx | 2018-11-18 10:13:14 -0800 (Sun, 18 Nov 2018) | 1 line Improve selection of a failsafe video mode if videoSetGameMode() fails at game startup ------------------------------------------------------------------------ r7220 | terminx | 2018-11-18 10:13:09 -0800 (Sun, 18 Nov 2018) | 1 line Mapster32: stop playing sounds when entering the tile selector in 3d mode ------------------------------------------------------------------------ r7219 | terminx | 2018-11-18 10:13:02 -0800 (Sun, 18 Nov 2018) | 1 line Minor start window cleanup. This ended up touching a bunch of other files due to variable renaming, but there are zero functional changes to anything but the startup window in this commit. ------------------------------------------------------------------------ r7218 | terminx | 2018-11-18 10:12:54 -0800 (Sun, 18 Nov 2018) | 1 line Fix whitespace in gameres.rc ------------------------------------------------------------------------ r7217 | terminx | 2018-11-18 10:12:49 -0800 (Sun, 18 Nov 2018) | 1 line Fix Polymer checkbox not showing up in the startup window in Visual Studio builds ------------------------------------------------------------------------ r7216 | terminx | 2018-11-18 10:12:43 -0800 (Sun, 18 Nov 2018) | 1 line Use clamp in mact LIMITCONTROL macro ------------------------------------------------------------------------ r7215 | terminx | 2018-11-18 10:12:38 -0800 (Sun, 18 Nov 2018) | 1 line These changes aren't particularly meaningful ------------------------------------------------------------------------ r7214 | terminx | 2018-11-18 10:12:33 -0800 (Sun, 18 Nov 2018) | 1 line Moved a few things in mact around while I stared at it thinking about what to do with it ------------------------------------------------------------------------ r7213 | terminx | 2018-11-18 10:12:28 -0800 (Sun, 18 Nov 2018) | 1 line Move hash_getcode() and inthash_getcode() to hash.h so they can be used in places other than hash.cpp ------------------------------------------------------------------------ r7212 | terminx | 2018-11-18 10:12:21 -0800 (Sun, 18 Nov 2018) | 1 line After parsing the cfg, fill in the default bindings for any control functions that are completely missing, with function unbound and key unused by anything else. ------------------------------------------------------------------------ r7211 | terminx | 2018-11-18 10:12:16 -0800 (Sun, 18 Nov 2018) | 1 line Convert some unwieldly g_player[myconnectindex].ps->gm crap to references ------------------------------------------------------------------------ r7210 | terminx | 2018-11-18 10:12:11 -0800 (Sun, 18 Nov 2018) | 1 line Slightly simplify S_OpenAudio()... ------------------------------------------------------------------------ r7209 | terminx | 2018-11-18 10:12:06 -0800 (Sun, 18 Nov 2018) | 1 line Use MODE_RESTART in osdcmd_map() when already in a game ------------------------------------------------------------------------ r7208 | terminx | 2018-11-18 10:12:01 -0800 (Sun, 18 Nov 2018) | 1 line Rename Gv_GetSpecialVar() to Gv_GetArrayOrStruct() and fix what would be a bug in Gv_GetVarDataPtr() if we were using it for something more than the single thing we use it for now ------------------------------------------------------------------------ r7207 | terminx | 2018-11-18 10:11:56 -0800 (Sun, 18 Nov 2018) | 1 line Prevent crash in the editor if newnumwalls and numwalls are both somehow -1 ------------------------------------------------------------------------ r7206 | terminx | 2018-11-18 10:11:50 -0800 (Sun, 18 Nov 2018) | 1 line Fix crash when attempting to load a corrupt map ------------------------------------------------------------------------ r7205 | terminx | 2018-11-18 10:11:44 -0800 (Sun, 18 Nov 2018) | 1 line Switch VM_EventCommon to use references ------------------------------------------------------------------------ r7204 | terminx | 2018-11-18 10:11:38 -0800 (Sun, 18 Nov 2018) | 1 line sdlayer: pass SDL_WINDOW_FULLSCREEN_DESKTOP to SDL_SetWindowFullscreen() when setting a windowed mode that matches the desktop resolution ------------------------------------------------------------------------ r7203 | terminx | 2018-11-18 10:11:32 -0800 (Sun, 18 Nov 2018) | 1 line Convert the Gv_GetVar and Gv_SetVar family of functions into something similar to the setup for VM_OnEvent, where multiple versions of the functions are generated by the compiler via forced inlining. This makes the functions much easier to maintain. ------------------------------------------------------------------------ r7202 | terminx | 2018-11-18 10:11:27 -0800 (Sun, 18 Nov 2018) | 1 line Tiny cleanups ------------------------------------------------------------------------ r7201 | terminx | 2018-11-18 10:11:21 -0800 (Sun, 18 Nov 2018) | 1 line Direct struct access for tsprite, and break special gamevar access out of Gv_GetVar() and into a separate function like it already was with Gv_GetVarX() ------------------------------------------------------------------------ r7200 | terminx | 2018-11-18 10:11:14 -0800 (Sun, 18 Nov 2018) | 1 line Clean up Gv_AddSystemVars() and Gv_RefreshPointers() ------------------------------------------------------------------------ r7199 | terminx | 2018-11-18 10:11:09 -0800 (Sun, 18 Nov 2018) | 1 line Add LAST_LABEL macro ------------------------------------------------------------------------ r7198 | terminx | 2018-11-18 10:11:04 -0800 (Sun, 18 Nov 2018) | 1 line Direct access for the actor structs ------------------------------------------------------------------------ r7197 | terminx | 2018-11-18 10:10:57 -0800 (Sun, 18 Nov 2018) | 1 line gamedef.cpp and friends: use preprocessor defines instead of hard-coded values for gamevar IDs that are really constants or arrays or structs ------------------------------------------------------------------------ r7196 | terminx | 2018-11-18 10:10:51 -0800 (Sun, 18 Nov 2018) | 1 line Clean up VM array handling with references ------------------------------------------------------------------------ r7195 | terminx | 2018-11-18 10:10:45 -0800 (Sun, 18 Nov 2018) | 5 lines Refine CON VM error handling behavior. Old behavior: when an operation failed, execution attempted to continue from the next command as if nothing had happened. This behavior was poorly defined and often had unintended consequences; e.g a "random" sprite being operated on because an operation that was supposed to place a sprite id in a gamevar failed, and the previous value was taken as a sprite id instead. New behavior: execution of the state/actor/event halts. Failure of a particular actor is more immediately obvious and unwanted trampling on other parts of the game state does not occur. ------------------------------------------------------------------------ r7194 | terminx | 2018-11-18 10:10:39 -0800 (Sun, 18 Nov 2018) | 1 line WIP: direct CON read/write access to structure members via pointer and offset instead of translation function. This is only enabled for wall and sector structure members in this commit. ------------------------------------------------------------------------ r7193 | terminx | 2018-11-18 10:10:32 -0800 (Sun, 18 Nov 2018) | 1 line Remove CON ERROR_OPENBRACKET and ERROR_CLOSEBRACKET and add ERROR_NOTTOPLEVEL ------------------------------------------------------------------------ r7192 | terminx | 2018-11-18 10:10:27 -0800 (Sun, 18 Nov 2018) | 1 line Add a couple missing headers to build.vcxproj ------------------------------------------------------------------------ r7191 | terminx | 2018-11-18 10:10:21 -0800 (Sun, 18 Nov 2018) | 1 line Minor gamedef.cpp cleanup ------------------------------------------------------------------------ r7190 | terminx | 2018-11-18 10:10:15 -0800 (Sun, 18 Nov 2018) | 1 line Formatting ------------------------------------------------------------------------ r7189 | terminx | 2018-11-18 10:10:10 -0800 (Sun, 18 Nov 2018) | 1 line Use reference in G_DoGameStartup(). ------------------------------------------------------------------------ r7188 | terminx | 2018-11-18 10:10:04 -0800 (Sun, 18 Nov 2018) | 1 line Add a new member to memberlabel_t to hold the offset of a structure member for CON access. This will be used in a future commit. ------------------------------------------------------------------------ See http://svn.eduke32.com/listing.php?repname=eduke32 for more details.