Build 7359
SVN-
General
Add buildvfs, abstraction layer for file I/O.
Show details
Currently it passes calls through to the system libraries as before. Also adds an incomplete implementation on PhysFS.
SVN handles and Git names are merged into one person.
Add buildvfs, abstraction layer for file I/O.
Currently it passes calls through to the system libraries as before. Also adds an incomplete implementation on PhysFS.
Implement a new VM dispatch method using an explicit jump table
Most of this patch is by pogokeen.
Macro-ize CON keyword tokens in gamedef.h and gameexec.cpp
Most of this patch is by pogokeen.
Move five missed opcodeless keywords down in gamedef.h
#ifdef out deactivated stuff that should not be half-in, half-out
Clean up unused warnings
Rename "textures" to "texturecache" and "textures.cache" to "texturecache.index"
This avoids conflicts with folders named "textures", such as in World Tour. Thanks to enderandrew for the observation.
Fix a mistake in r7322
Patch from Fox.
Fix the cursor being affected by viewport-annexing status bar sizes
Fix missing/invalid palswaps and shades in automap with Polymost
Patch from Nuke.YKT.
Add EVENT_DISPLAYROOMSCAMERATILE
Make the gamma slider move in increments of 0.05 instead of 0.1
Move the LZW compression functions out of cache1d.cpp into their own object, klzw.cpp.
This eliminates the hackiness of libcache1d.so (now libkzlw.so) and CACHE1D_COMPRESS_ONLY.
Refresh BUILDLIC copyright headers
ifdef out all use of libc's FILE in libxmp-lite
Fix a big fail in my implementation of CON_DIVR and CON_DIVRU.
[facepalm emoji]
Remove redundant code from Polymost fog
Patch from Fox.
Create P_GetOverheadPal() and restore the DOS definition of it.
DOS: the player sprite's pal (including pants color and frozenness), unaffected by sector floor pal what the code had for some reason: the sector's floor pal, neglecting the nofloorpal bit, frozenness, and the player's pants color I contend that it is okay for the automap sprite to ignore the sector's color for map legibility purposes.
Factor out P_GetKneePal().
Clean up variables in overhead map player sprite draw code.
Make some non-functional changes for clarity in Menu_RunInput_EntryRange*_Movement.
Fix -Wformat-overflow warnings
Add "swaparrays" command, which performs a pointer-swap on arrays of the same storage class.
Factor out the parsing of gamearray names.
Remix resizearray in the following ways:
Make only one allocation instead of two. Calculate array byte sizes in a way compatible with GAMEARRAY_BOOLEAN. Clear the expanded part of grown arrays using correct counts for non-int32 sizes. Support resizing an array to 0 to free it.
Implement the copy command for GAMEARRAY_BOOLEAN.
Fix two regressions completely breaking the correctness of the copy command, introduced in r6343.
Ensure that anywhere the def parser takes a tilenum or palnum accepts defined tokens in addition to integer literals, if it doesn't already.
Affects fogpal, nofloorpalrange, setuptilerange, dummytilerange, undefinetilerange, definemodelframe, definevoxeltiles, texhitscanrange, nofullbrightrange, and light.
Revert r6526 and r6527. This restores the longstanding behavior of the killit command, and setting sprites' xrepeat to zero, to not actually delete sprites unless their statnum is STAT_ACTOR or STAT_MISC. Be sure to set a sprite's statnum to one of these statnums if you want it to be deleted.
This should fix the broken E1L1 sector warp in the existing release of the Duke 64 mod, and the Polymer light culling used in HHR.
Slight cosmetic cleanup
Implement graceful playback failure
Fix MIDI playback on non-Windows platforms
Bump the default cache size to 96 MiB.
Disable S_ClearSoundLocks, preventing sounds from being marking purgable, and causing them to get prematurely evicted.
This fixes the absent sound issues in WWII GI.
WWII GI: Remove the hack/approximation for the bazooka display code because one of the general weapon system fixes made it work incorrectly, and also made a direct port of the original code work correctly. Accuracy FTW!
Fix some printf warnings.
WWII GI: Fix the chaingun replacement to always reload even if you continue holding down fire.
WWII GI: Fix the chaingun replacement to not fire in bursts of 3 per fire button press.
WWII GI: Fix mistakes in our version of the weapon display code.
WWII GI: Update the default values of the weapon gamevars to correctly match the original game.
Fix NORM_(SPRITE|WALL|SECTOR) macros to use MAX$1 instead of ARRAY_SIZE, which would fail due to the structs not being statically allocated.
Patch prepared by Striker.
Add spawnceilingglass, spawnwallglass, and spawnwallstainedglass commands.
Patch from Striker.
Add resetplayerflag 8, which mandates reload and not savegame load in single player.
MIDI/Windows: Immediately MPU_Init after MPU_Reset so that MIDI_Reset can take effect.
MIDI/Windows: Return early from MPU_Init if MPU_Reset was not previously called to shut the MPU down.
Allow component cflags to override global CWARNS for clang-tools rule.
Update glad to 0.1.18a0
Don't apply weapon shade interpolation to the shrinker/expander crystal at all.