Giugno 2014
-
Generale
Better compile timestamp handling.
-
Generale
Re-fix the C++ warnings in ENet.
-
when pasting onto the bottom part of a [2]-wall, take over y-flipping.
Mostra dettagli
Note that x-flipping is determined by the cstat of the upper part of the wall (that is, the wall facing the player, not the nextwall, from which the picnum for the bottom part is taken.)
-
Generale
Replace two missed literal numbers with SE_* enum labels.
-
Generale
Bye, bye, B*alloc(), all hail X*alloc()! Replace large portion of the calls...
Mostra dettagli
... and cull code that is dead with the X*alloc() versions since they never return NULL on requesting memory. Use something like git grep '[^Xx]\(m\|c\|re\)alloc *(' and git grep '[^Xx]strdup *(' to see places where I left the B*alloc() calls intact. BUILD_LUNATIC.
-
Generale
Add X{m,c,re}alloc and Xstrdup macros that call an out-of-memory handler on failure.
Mostra dettagli
These wrap the x*alloc or xstrdup functions in compat.c. The handler gets passed __FILE__, __LINE__ and __func__ (if available) in debugging builds. Terminating the application process immediately in case of allocation failure will let us prune many error handling paths and simplify a good portion of code.
-
Generale
A couple of stylistic cleanups and missed DAMETH_* flags substitutions.
Maggio 2014
-
Generale
Miscellaneous cleanup, still with the same suspects...
Mostra dettagli
- in mdloadskin() and gloadtile_hi(), use new function check_nonpow2() (bit-twiddling) instead of loop - Replace a couple of missed literals with CACHEAD_* enum labels
-
Generale
Factor out commonly occuring hictinting[]-accessing code into three functions.
Mostra dettagli
Note: in polymer.c, this was buggy (but harmless) because .r is a char: if ((uint32_t)hictinting[MAXPALOOKUPS-1].r & 0xFFFFFF00) != 0xFFFFFF00)
-
Generale
Replace various GL rendering related literal flags with enum labels.
Mostra dettagli
- pthtyp pth->flags bits - Flags of the <dameth> argument of various functions - hictinting[].f / gloadtile_hi() and daskinloader() <effect> arg bits - hicreplctyp hicr->flags bits - texcacheheader cachead.flags bits
-
Generale
polymost.c: stylistic cleanup in gloadtile_hi, uploadtexture, fixtransparency.
-
in NPOT wall ypanning "correction", behave like Polymer in one corner case.
Mostra dettagli
Specifically, the handling of one-way walls ([1] in Mapster32) was slightly different.
-
Generale
lunatic/util/mapypan.lua: omit MIRROR, don't print maps w/o problematic tiles.
-
Generale
sdlayer.c: for Windows, switch keyboard layout to/from US on init/uninit.
Mostra dettagli
Taking over the code from winlayer.c.
-
Generale
Rip out S_FindMusicSFX() from A_CallSound() and use in SE6/14 on-spawn init.
Mostra dettagli
This makes the subway sound not played once on map initialization.
-
Generale
shadexfog.lua: in menu, move creation of debugging shade tables below DEBUG line.
Mostra dettagli
BUILD_LUNATIC.
-
Generale
lunatic/test/shadexfog.lua: add function create_brightpass_trans().
Mostra dettagli
Also hook it up in the [;]+[F] menu.
-
Generale
game.c: in A_Spawn(), protect CSTAT_SPRITE_NOSHADE of spawned MASKWALL* sprites.
-
Generale
actors.c: fix a A_CheckSpriteFlags() call for zombie actor to STANDABLE change.
Mostra dettagli
This only affects zombie actors in a sector with a parallaxed ceiling. If they have SFLAG_NOSHADE clear, their shade is taken from the ceiling upon changing the statnum. Previously, A_CheckSpriteFlags() received a value that could only be 0 or 1 for the sprite index (typo).
-
Generale
sdlayer.c: fix compiling wm_ynbox() for Linux/WITHOUT_GTK=1.
-
add read-only variable 'Numsprites', r/w userdef member .mouseaiming.
-
scan label names according to stricter LunaCON rules instead of char blacklist.
Mostra dettagli
These ones: http://lunatic.eduke32.com/lunacon.html#_ambiguous_lexical_elements Seriously, defining a token kind by excluding certain characters (instead of allowing a given set) is really, really broken.
-
allow '.' as non-first identifer character.
-
Generale
Replace some constants with preprocessor macros.
-
Generale
Fix two Polymer crashes related to corrupted maps.
-
Generale
Fix ebacktrace on 64-bit. New DLLs all around.
-
Generale
Add support for an SDL2-based wm_ynbox based on SDL2's testmessage.
-
Generale
Update libpng to 1.6.10.
-
Generale
old menus: Fix parental lock password entry.
-
Generale
Revert window fullscreen stuff until we have aspect-correct upscaling
Mostra dettagli
pass.
-
in linking tag determination, handle 'on' switch picnums (+1).
-
in e.g. F5 "next free tag" display, note object w/ greatest tag.
-
Generale
Add some useful preprocessor definition to the checked-in MSVC project
-
don't read some variables from mapster32.cfg redundant since r4344.
Mostra dettagli
Mostly, these are rendering-related variables. We keep *writing* them to mapster32.cfg so that older Mapster32 versions can be used side-by-side for now.
-
Generale
src/config.c: fix what is apparently a copy-paste typo in readconfig().
-
Generale
In non-lookup GL modes, if fog is due to fogpal, make fog params indep. of shade.
-
make r_usetileshades 2 the default.
Mostra dettagli
This mode does not take a sector's visibility values into account for uniform darkening of a texture. It is more faithful to classic with respect to fog/visibility *distances*, but may be less so as far as the "tint" of the texture due to visibility attenuation is concerned.
-
Generale
engine.c: instead of fogpal post-tweaks (last 2 commits), normalize by numshades-1.
Mostra dettagli
That is, for every for palette (now, even ones created by the user) the last shade is the (or rather, a color close to the) full fog color by construction. In loadpalette(), reject a PALETTE.DAT with only one shade level.
Aprile 2014
-
Generale
engine.c: extend the last workaround to all four fogpals generated at startup.
-
Generale
engine.c: after creating gray fog palookup, make its greatest shade map to same color.
Mostra dettagli
Concretely, for all 1 <= i <= 255, make graypalookup[31][i] := graypalookup[31][0]. Also document 'fogpal' in the Lunatic doc.
-
fix fog/visibility on ceilings.
-
Generale
engine.c: clean up scansector().
-
prevent visibility overflow on sloped ceilings/floors at large distances.
-
Generale
Fix r_usenewshading 3 visibility/fog for shades >= Numshades-1 (usually 31).
Mostra dettagli
BUILD_LUNATIC.
-
Generale
Makefile.common: pass Clang sanitizer flags in release DEBUGANYWAY builds, too.
Mostra dettagli
Also, - add a static assertion to engine.c - gameexec.c: compile out an unused function in Lunatic builds
-
Generale
In G_SavePlayer(), save timers at beginning and restore when finished.
Mostra dettagli
This makes the game not process as many ticks as have elapsed during the saving afterwards.
-
Generale
Keep displaying difficulty menu for as long as the *voice* plays.
Mostra dettagli
Previously, the check was for the hard-coded sound number. This made it impossible to change difficulty selection sounds via EVENT_SOUND.
-
add getactor[]/sprite[] member 'movflags'.
Mostra dettagli
This is exactly the same as the actor[].movflags member in the Lunatic build: http://lunatic.eduke32.com/lunatic.html#actor
-
Generale
Fix crash with GTK+SDL2 on startup and use windowed fullscreen instead of
Mostra dettagli
exclusive fullscreen.
-
Generale
sdlayer.c: fix grabmouse_low() with DEBUGGINGAIDS!=0 builds. DONT_BUILD.