January 2013
-
getting closer to the first milestone.
Show details
On the C side, zrange, angrange and autoaimang are represented as DukePlayer_t members then.
-
General
gameexec.c: factor code for "ifnosounds" into sounds.c: A_CheckAnySoundPlaying.
-
fix a possible crash with texel-hitscan.
Show details
Reproduced as follows (assuming all tiles have texel-hitscan for simplicity): In E2L5, shoot the opening switch with the shotgun, aiming for the border. The crash occurs because the *other*, depressed switch tile isn't yet loaded when we index into its tile storage. Dereferencing 0+small number == BAD!
-
General
Move DukePlayer_t's .palette down so that 2-byte-sized members are 2-byte-aligned.
Show details
Bump BYTEVERSION.
-
General
player.c: factoring continued.
Show details
New local functions: Proj_DoRandDecalSize, SectorContainsSE13, HandleHitWall, Proj_CheckBlood, Proj_HandleKnee.
-
General
player.c: cleanup. "ProjectileData[atwith]." --> "proj->", ...
Show details
The diff may look daunting, but it's clear what is changed with git diff (...) --color-words='[a-zA-Z0-9_]+|[^[:space:]]' -b
-
General
player.c: finish hitscan projectile handling cleanup.
Show details
Factoring out 2x almost duplicated code into {P,A}_PostFireHitscan().
-
General
player.c: hitscan projectile handling cleanup continued.
-
General
player.c: factor out 2x almost dup'd code preparing hitscan weapon firing.
Show details
The code is duplicated with small changes for the hardcoded and custom projectiles. Adding local functions P_PreFireHitscan(), A_PreFireHitscan() and Proj_MaybeAddSpread().
-
more code...
-
General
Factor out some code into C_AllocQuote() and C_InitQuotes().
Show details
In Lunatic-only build, also always allocate the first 128 quotes.
-
definesound, more control.lua fixes.
-
compile out more code with LUNATIC_ONLY.
-
General
Clean up actors.c and player.c.
-
fix stack discipline.
Show details
Preventing a continuously growing stack top and inevitable program termination. Also, commonize the error handling to live on the engine side.
December 2012
-
General
Replace the osdcvar_t members that needed to be kept in sync with cvar_t with an actual cvar_t. If this is questionable for any reason I'm forgetting, feel free to revert!
-
General
Surround "debug1" and "debug2" with #ifdef DEBUGGINGAIDS
-
General
Clean up a couple of other getrendermode() related bits that the previous commit missed
-
General
Add predefined REND_CLASSIC, REND_POLYMOST and REND_POLYMER constants and use them everywhere getrendermode() is called.
-
more glue, fixes, backtrace for code called back from C.
-
General
Replace "if (g_tile[..].execPtr)" -> "if (G_HaveActor(...))".
-
beginning to glue things together. Introducing LUNATIC_ONLY.
-
General
Remove commented code using former engine variable "automapping".
-
General
Fix LTO=1 RELEASE=1 Lunatic build.
-
General
Rectify.
-
General
Fix SVN mime-types of binary files.
Show details
Windows batch file: for /r %%G in (*.a) do svn propset svn:mime-type application/octet-stream "%%~G" for /r %%G in (*.lib) do svn propset svn:mime-type application/octet-stream "%%~G" for /r %%G in (*.dll) do svn propset svn:mime-type application/x-msdownload "%%~G" for /r %%G in (*.ico) do svn propset svn:mime-type image/vnd.microsoft.icon "%%~G" for /r %%G in (*.icns) do svn propset svn:mime-type image/icns "%%~G" for /r %%G in (*.bmp) do svn propset svn:mime-type image/bmp "%%~G" for /r %%G in (*.png) do svn propset svn:mime-type image/png "%%~G" for /r %%G in (*.xcf) do svn propset svn:mime-type image/x-xcf "%%~G" for /r %%G in (*.psd) do svn propset svn:mime-type image/vnd.adobe.photoshop "%%~G" for /r %%G in (*.nib) do svn propset svn:mime-type application/octet-stream "%%~G" for /r %%G in (*.map) do svn propset svn:mime-type application/octet-stream "%%~G" svn propset -R svn:mime-type application/octet-stream polymer/eduke32/Apple/lib svn propset -R svn:mime-type application/octet-stream polymer/eduke32/Windows/lib/32 svn propset -R svn:mime-type application/octet-stream polymer/eduke32/Windows/lib/64 svn propset -R svn:mime-type application/octet-stream polymer/eduke32/source/jaudiolib/third-party/Apple/lib svn propset -R svn:mime-type application/octet-stream polymer/eduke32/source/jaudiolib/third-party/Windows/lib/32 svn propset -R svn:mime-type application/octet-stream polymer/eduke32/source/jaudiolib/third-party/Windows/lib/64
-
General
Clean up and factor jaudiolib.
-
General
Replace initialize_globals() with global initialization.
-
General
Fix the gap between loops of ambient MUSICANDSFX sounds like BAR_MUSIC.
-
General
All kneel, king FLAC is here.
Show details
FLAC source from git commit 0920bc1ffb07f038b317e7e8056509fe0e4b680e, patched by me. Windows libFLAC.a built using i686-MinGW-w64 and x86_64-MinGW-w64. HUGE thanks to rhoenie for building the Mac fat library (ppc, i686, x86_86).
-
General
Clean up some file and directory structure.
Show details
* Renamed source/jaudiolib/third-party/mingw32 to source/jaudiolib/third-party/Windows. * Moved source/jaudiolib/third-party/Windows/include to source/jaudiolib/third-party/common/include to use both on Windows and Apple. * Deleted Apple/lib/include/{ogg,vorbis}/, see previous point. * Deleted Apple/lib/libvorbisenc.a, 6MB saved. * Moved Apple/lib/lib{ogg,vorbis,vorbisfile}.a to source/jaudiolib/third-party/Apple/lib, where they belong. * Moved source files in Apple/ to source/, where they belong. (SDLMain.[mh] stay.) * Deleted source/jaudiolib/third-party/{ogg,vorbis}.framework, not used any more. * Renamed "StartupWinController*" to "startosx*".
-
General
Bump DirectSound version to 8. This shouldn't really affect anything as the API is the same for all of the bits we make use of, but certain sets of DirectX headers/libs seem to be lacking v7 support.
-
General
Remove FX_ASSVersion and related code since it wasn't used anywhere
-
General
Throw a compiler warning when building with only the null sound driver
-
General
Fix DirectSound in MSVC builds and remove the dependency on the DirectX SDK
-
General
DEF "voxel": fix a tile range check failure message.
-
General
Encapsulate aplWeapon* array accesses in a PWEAPON(Player, Weapon, Wmember) macro.
Show details
In the normal game, these arrays are conceptually [MAX_WEAPONS][MAXPLAYERS], allocated as CON per-player gamevars (e.g. WEAPONx_WORKSLIKE). For Lunatic, they are replaced with weapondata_t g_playerWeapon[MAXPLAYERS][MAX_WEAPONS].
-
General
Replace wall of dup'd code in Gv_AddSystemVars with something more readable.
Show details
Specifically, have a weapondata_t type mimicking the aplWeapon* arrays. Keep a list weapondefaults[] which undergoes some static->dynamic tweaks and then makes its way to the WEAPONx_XXX per-player gamevars.
-
General
Replace initialize_engine_globals() with array initialization.
-
General
Lunatic translator: pack all translation units into one big blob.
-
sinking in code.
-
General
Make get{zs,ceilz,florz}ofslope (now ...ptr) accept sectortype pointer.
Show details
And rewrite the original functions as wrappers around these.
-
General
Clean up spawning / actor initialization code.
-
General
Cleanup of console/on-screen-display (OSD) functionality.
Show details
- Rewrite the "clear background" routine in a no-brainer way instead of juggling around with rotatesprite(). Make it common to game+editor. Expose glRectd to glbuild. - Don't stop OSD text line drawing when encountering a non-printable char. Instead, treat it as space. - In OSD_SetTextMode(), don't use swaplong (which really swaps 32-bit ints) to swap pointers. Write an analogous "swapptr" instead. - When changing from/to OSD, don't inject a pause key. This *might* have been the cause of the reported pausing problems. - clean up the code... (Yes, this commit throws together too much stuff. I suck sometimes. :P)
-
event chaining.
-
print -> OSD_Printf, error reporting.
-
General
Clip printext256() at xdim, don't crash OSD_Printf() with empty string.
-
General
Add a couple of test CONs: non-local control flow, rotation-fixed useractors.
-
General
Fix rotation-fixed useractors (those having usertype bit 4 set).
Show details
Rotation-fixing happens for a couple of hard-coded statnums that presumably never move (DEFAULT, STANDABLE, FX, FALLER, LIGHT), but for actors it wouldn't make sense since the common case is that they do move. For this reason, bit 4 was introduced in r1934. The position of such useractors will not diverge due to error roundoff accumulation in rotating sectors (SE0, train).
-
more complete gameactor(), misc. translator tweaks.