June 2013
-
don't register con.action/move/ai by name, make these return a cdata.
-
General
lunatic/listglobals.sh: allow passing multiple file names.
-
serialization for cdata types, currently xmath.vec3 and ivec3.
-
General
Fix loading maps in Mapster32, introduced in r3911.
Show details
Also, get rid of the strange filename[len]=255 hack in loadboard() and make its file name arg const char* at last.
-
New command 'screensound', unconditionally playing a session-wide sound.
-
General
Mapster32/Lunatic: ask when a <V10 map would be overwritten with a map-text one.
Show details
Also, clean up the saving/loading logic a bit: - On load failure, display message with purple color. - Take over the current file name ('boardfilename') only on success. - Check SaveBoard() return values in various places.
-
merge updatesector and ~breadth, making the former accept a flag.
-
retire 'geom' module, putting vector types into xmath.
-
allow serialization of tables in more general cases.
-
begin writing LunaCON documentation.
-
don't pass 0x80000000 to int32_t arg, document xmath functions.
-
General
Apparently VS2013 doesn't like redefining "inline" either
-
General
Fix USE_OPENGL=0 build
-
General
Add a few defined constants for commonly used weapon_pos values
-
General
Rename getinput() to P_GetInput(), add bounds checking for a few arrays used for weapon drawing that use kickback_pic as an index.
-
General
Make P_PalFrom() static inline in player.h as the whole function is just 4 assignments
-
General
MSVC build fix (looks like the compiler version shipped with VS2013 has nearbyintf now...)
-
General
Default r_usetileshades to 1 :)
-
consider a point inside() a sector in all border cases (literally).
Show details
In other words, for a test rectangular sector, a sprite would be inside the sector in on all 4 edges and all 4 corners. Previously, it would have been the lower right portion only (*excluding* LL and UR corners), which led to map editing issues.
-
General
engine.c: apply "usual readability transformations" on inside() and comment it.
Show details
The main thing to note is the "half-open" nature of the x/y range checks.
-
General
Substitute some symbolic SE_x_* labels for literal SE numbers that were missed.
-
document vector types, add forgotten warning icon.
-
various minor tweaks and fixes.
Show details
- Pass original module name (dot=dirsep) to module via our require() - geom.lua: fix some operations using the vector type constructor - geom.lua: provide constructor for ivec3, useable like vec3
-
player method fadecol(), an improved palfrom.
Show details
Also, an external 'minitext' with optional shade and pal. args and documentation for ps:padecol().
-
General
Don't register "savestate" and "restorestate" OSD commands even in debug builds.
Show details
They don't get registered on Windows for some reason, and mapstate debugging is best carried out using scripting code, anyway.
-
major overhaul of gamevar serialization for savegames.
Show details
- Handle local gamevars. - Restore gamevars from require('end_gamevars').
-
General
Lunatic 'geom': retire tovec2 and tovec3, make vec2 and vec3 accept cdata, too.
-
fix random angle movflag, Windows build; write more documentation.
-
prevent a SIGFPE when attempting to draw p'lax with nonexistent tile.
-
write more documentation, handle randomangle movflag in a:set_move().
-
General
Forgot a file for a previous commit
-
General
Fix 1.3D, sorry guys
-
General
Fix up handling of the Duke shareware beta a little bit, and change the dialog that pops up after running the shareware version too many times to take you to Steam instead of GOG (the Steam version is a better deal)
-
General
Lunatic savegames: store g_playerWeapon[][], fix 'require' with submodules.
-
check reserved bits for sound and ai movement flags.
-
make mail, money, paper be affected by tile remapping, fix one printf.
-
General
cache1d.c: cover up preceding assertion failure by bumping size of lzwrawbuf[].
Show details
It's hard to call this a fix, since ideally, buffer sizes like these would be only as large as needed in the worst case.
-
General
cache1d.c: prettify compression functions, add one currently failing assertion.
-
remove preceding assertion failure, continue loop then instead.
Show details
Interestingly, that test case then appears to be drawn fully. Heh. Also, move one clamp from r1874 one up in the data flow chain. Doesn't seem to break textured overhead map view with Last Pissed Time.
-
make fillpolygon() more readable with the usual code transformations.
Show details
Also add an assertion that currently sometimes fails when zooming in too much in Mapster32 textured 2D mode. Example: DNF's LADYKILLR.MAP at (46000,-14000).
-
fix construction of *_crash.map file name in crash handler.
-
clean up 'geom' module, make walls readable with pseudo-member 'z'.
-
rename spriteext[].*off->mdoff.*, actor[].actorstayput->stayputsect.
-
make gameactor and gameevent be "table-called" functions.
-
implement qgetsysstr/STR_VOLUMENAME.
-
Propagate potentially remapped CON defines to the control module.
Show details
(This is the module that implements much of the "hard-coded" functionality formerly on the C side.)
-
provide CON-defined labels in read-only table require("CON.DEFS").
-
Fix one-sided y-flipped floor-aligned sprites, introduced in r3776.
Show details
Add a test case in test_tileoffsets.map.
-
commit preliminary, unfinished documentation written in AsciiDoc.
Show details
Don't (yet?) commit the generated HTML.
-
make require() translate dots to dir separators, make those illegal.
Show details
However, from the command line, reverse the situation: dirseps must be passed as '/', dots are forbidden (except in the trailing ".lua").