Febbraio 2015
-
Generale
Remove animvpx's dependency on GLSL; adds in-place YUV420 to RGB888 conversion.
-
Generale
A whole bunch of mostly insignificant changes that didn't deserve separate commits. DONT_BUILD.
-
Generale
Get rid of the "press space to restart" message on mobile. DONT_BUILD.
-
Generale
Forgotten changes from a previous commit that renamed functions. DONT_BUILD.
-
Generale
Android fixes: let the player climb stairs while crouched and fix the quick switch function of the weapon wheel. DONT_BUILD.
-
Generale
Android menu changes. Moves a few settings in-game instead of in crappy system UI dialogs. DONT_BUILD.
-
Generale
Android SDLayer changes. DONT_BUILD.
-
Generale
Remove errant call to G_FadePalette() which caused a frame of corruption at map load under GL renderers, and invalidate all GL textures at map load time (just textures generated from .art on desktop, everything on mobile). This also makes Grabbag keep playing through the loading screen on Android (if no loadscreen music has been defined by a mod). DONT_BUILD.
-
Generale
Android savegame hacks. DONT_BUILD.
-
Generale
More Android changes. DONT_BUILD.
-
Generale
C-CON changes
-
Generale
Animation system overhaul part 1. This allows for an unlimited number of .anm/.ivf files to be defined via duke3d.def and played back at any time with the new CON commands. Syntax is currently as follows, but may change:
Mostra dettagli
cutscene "somefile.anm" { delay 10 } // defines somefile.anm with a delay of 10 120Hz tics between frames. a more typical framerate method may come later, but this is how the originals worked. Once defined, they can be played through CON with the new playback command, also called "cutscene". It works like this: definequote 12345 somefile.anm define ANIM_SOMEFILE 12345 ... cutscene ANIM_SOMEFILE // halts game execution and immediately plays cutscene, resuming execution when finished ... Sounds can be played during animations (and tiles can be overlaid, etc) like this: onevent EVENT_CUTSCENE ifcutscene ANIM_SOMEFILE { ifvare RETURN 12 // frame 12 sound FLY_BY rotatesprite ... } endevent The value of the RETURN var at the end of EVENT_CUTSCENE determines the next frame to play. This can be used for looping, etc. Attempting to play animations backwards outright is not advised as animations only seek in one direction (so rewinding requires running it through from frame 0 again). This is will WIP and hasn't been heavily tested at all, so please try it out.
-
Generale
Minor sound cleanup... clean up crappy old code, remove obsolete "FXDevice" and "MusicDevice" variables, etc.
-
Generale
Rename build configurations in VS project. DONT_BUILD.
-
Generale
Minor engine cleanup
-
Generale
Fix program entry point on win32, allows debugging SDL builds under MSVC.
-
Generale
Macro for handling ud.bgstretch. DONT_BUILD.
-
Generale
More twalltype
-
Generale
mdsprite.c: in md3load(), allocate m->head.surfs with Xcalloc, amending r4952.
Mostra dettagli
And preventing enormous corruption due to a free() called on a garbage (malloc'd) pointer values this time. DO_BUILD_VERY_FAST_PLEASE!
-
Generale
Makefile.common: disallow building Lunatic with C++ for now. DONT_BUILD.
-
Generale
Provide a RETURN value of -2 to EVENT_DISPLAYLOADINGSCREEN after G_CacheMapData().
-
Add undefinevolume, undefineskill, and undefinelevel.
-
Generale
Rename "Polymost.f" string back to "Polymost" because it only confused users.
-
Generale
gameexec.c: in VM_Move(), update actor[].{floor,ceiling}z for enemies.
Mostra dettagli
Previously, that was the case only with DRONE and COMMANDER. This makes non-falling enemies pass properly through TROR bunches.
-
Generale
actors.c: style-cleanup A_MoveSpriteClipdist(). DONT_BUILD.
-
in build.c, prevent oob of wall[] if joining non-adjacent sectors.
Mostra dettagli
Also, some minor stylistic cleanup.
-
Amend retrieval of STR_*TIME for qgetsysstr, fixing LunaCON and possible oob.
Mostra dettagli
- Add declarations of C functions to defs.ilua, names to dynsymlist, fix typo in con_lang.lua, ffi.string() calls in control.lua - Assert that G_LastMapInfoIndex() is always called with ud.last_level >= 1. (A stricter requirement than necessary to prevent follow-up oob accesses, but logically the most meaningful.) - In G_PrintParTime() and G_PrintDesignerTime(), return "<invalid>" if the above does not hold. This can happen from EVENT_NEWGAME, for example. Add a test to lunatic/test/qgetsysstr.con. DONT_BUILD.
-
Remove some conditional disabling of spriteext features when !defined USE_OPENGL.
-
Add read-only access to ud.config.MusicToggle through the "musictoggle" member.
-
Add STR_YOURTIME, STR_PARTIME, STR_DESIGNERTIME, and STR_BESTTIME to qgetsysstr.
-
Generale
Factor out generation of strings for time values in the bonus screen. This involves the creation of ud.playerbest.
-
Generale
Correct the special behavior to select the pipebomb detonator when you have no pipebombs in your inventory but you have some thrown in the environment so that it animates properly and also applies with the next/previous weapon functions.
-
Generale
Move EVENT_DISPLAYMENU to after the black translucent background is drawn when in-game.
-
fix underallocation of TILE_TILT and tilting at very small resolutions.
Mostra dettagli
Since TILE_TILT is only allocated once, it must be done with the maximum possible size.
-
Generale
sdlayer.c: minor stylistic simplification of sdlayer_checkversion(). DONT_BUILD.
-
Generale
osd.c: in OSD_HandleChar() for TAB, fix use of uninitialized osd->editor.buf[i].
Mostra dettagli
Exposed by Valgrind. DONT_BUILD.
-
make -fbad-getactorvar-use-pli enabled by default. DONT_BUILD.
-
Generale
Make g_player a +1 offset pointer into 'static g_player_s[1 + MAXPLAYER]'.
Mostra dettagli
This fixes the out-of-bounds read of former g_player[] in VM_EventCommon_().
-
on desktops, handle abs. z diff. of floor/ceiling to camera >= 1<<24.
-
Generale
engine.c: style-cleanup owallmost() and wallmost(). DONT_BUILD.
-
Generale
In DEBUGANYWAY=2/DEBUG_MAIN_ARRAYS build, declare tsprite[] as tspritetype.
Mostra dettagli
Fixing a bunch of warnings. DONT_BUILD.
-
fix typos in control.lua (get/setmusicposition).
-
Generale
Add SFLAG_NOWATERDIP, unconditionally preventing actors from dipping into ST1 water.
Mostra dettagli
By default, the following enemies have this flag set: OCTABRAIN, COMMANDER, DRONE. DONT_BUILD.
-
Generale
Actor ST1 handling: use A_GetWaterZOffset() with VM_Move(), too. DONT_BUILD.
Mostra dettagli
This is where things are changed at last. This fixes lizmen walking on water.
-
Generale
Actor ST1 handling: cleanup part 2. DONT_BUILD.
Mostra dettagli
Factor out condition for whether a z offset is added or not ("fix for flying/jumping monsters getting stuck in water", etc.) into a function A_GetWaterZOffset() (and a helper A_GetVerticalVel()).
-
Generale
Actor ST1 handling: clean up code a bit. (Preparation for real changes.)
Mostra dettagli
In VM_Fall(), keep a temp preliminary new z position of the actor and assign only when we return. This is to each ease watching its value in GDB. DONT_BUILD.
-
Generale
mdsprite.c: in md3free(), also free s->geometry for each surface. DONT_BUILD.
Mostra dettagli
This prevents a enormous leak being reported by LeakSanitizer. Not that it matters much, since we most frequently free models only at exit. (Sometimes one may be freed earlier though -- if there was an error loading it, AFAICS.)
-
Generale
menus.c: fix C build. DONT_BUILD.
Gennaio 2015
-
Generale
Fix next/previous weapon when the pipebomb detonator is active.
-
Generale
Don't allow Ogg Vorbis or FLAC files to be defined from def if the binary was built without the proper libraries.