Marzo 2013
-
Generale
Add new LOGO_FLAGS bit 2048, preventing cutscene at E4 beginning if set.
-
Generale
geom.lua: fix copy-paste bugs and clean up code. Remove __eq metamethod.
-
allow indexing some weapon/inventory arrays with their names.
-
Generale
Lunatic translator: warn if setting reserved bits in some system gamevar redef.
-
g_tile access, rudimentary system gamearray support for the translator.
Mostra dettagli
The only operation for which proper code is generated is reading a single value from a system gamearray.
-
Generale
Lunatic t.: option for generating code caching sprite/actor/player structs...
Mostra dettagli
...at the beginning of each function called back from C, and each case/default function. Called -fcache-sap. Disabled by default.
-
spritesof{stat,sect} iterators that allow deletion inside the loop.
Mostra dettagli
Also, - an optimization for sprite[]:setpos(). Calls to get_sprite_index() seem to be pretty slow (at least when they're not compiled). - add getzrange to the dynsymlists
-
correct SFLAG_* and actor_t definitions.
-
replace some allocations by static data, some translator fixes.
Mostra dettagli
Fix 'setsprite' and 'music'. A good timing test for actors performance is the starfield of WGR2's E1L1 ("Nexus").
-
also save min, max actor times; fix release build.
-
Generale
Lunatic translator: handle LOGO_FLAGS.
Mostra dettagli
This is the only gamevar of its kind that is handled for Lunatic, neither PLR_MORALE nor LOGO_FLAGS are.
-
Generale
Plug up alpha leaks in Polymost textures/rotatesprite.
-
Generale
Fix osxbuild.sh and wiibuild.bat after r3551.
-
Generale
Connect spriteext.alpha to models and voxels in Polymost.
Mostra dettagli
This code is neat, tidy, organized, and sensical!
-
Generale
Finish the job started by r3546-3551 by deleting empty directories from an SVN client.
-
Generale
Directory cleanup. Move the "Apple", "Windows", and "Wii" directories to a new "platform" dir, move the contents of "psd" to "rsrc/source", move eobj* and obj* directories so that they're under the "source" dir.
-
Generale
Remove the old MakeDistributions makefile. This was used to package the old manually released source archives we had years ago.
-
Generale
Remove unused eduke32.vcxproj.user file, presumably used by VS2010 and up to store machine-dependent preferences
-
Generale
Remove unused rsrc/orange_icon.ico
-
Generale
Remove the old NSIS script used to generate the installers we had, what, 5 years ago? If we ever need it again we can just pull it from one of the old revisions stored in the repo.
-
Generale
Remove old unused changelog files
-
Generale
Make stopping of all sounds after completion of LOGO.ANM conditional on the newly introduced (LOGO_FLAGS & LOGO_STOPANIMSOUNDS). Modifies r3217.
-
Generale
Patch up some broken hardcoded behavior with regard to the Sentry versions of the bosses (minibosses), as suggested by Fox.
Mostra dettagli
This should have no adverse effects or side-effects. The changes only apply if a modder chose to use completely broken functionality in the first place.
-
Generale
Connect spriteext.alpha to Polymost.
Mostra dettagli
Ugh, global variable hacks. Excuse me while I wash my hands.
-
Generale
Fix starttrack crashing when a "null music" is selected.
Mostra dettagli
Introduced with the refactoring in r3490.
-
make con.ai accept literal action/move, check for calling from top.
Mostra dettagli
Also, fix con._setgamepalette.
-
Generale
Lunatic translator standalone: option specifying a directory for gen'd code.
Mostra dettagli
The option is -fgendir=<directory>.
-
Generale
Lunatic translator standalone: allow specifying list files.
Mostra dettagli
All non-option positional arguments after an @ sign are taken as list files: hashes at the beginning of a line denote comments, truly empty lines are ignored, all other lines should contain one root CON file name.
-
Generale
spriteclip.txt: refer to _clipshape0.map instead of _clipshape_.map.
-
Generale
Lunatic translator: fix some codegen and some commands.
-
Fix accessing gamearrays on 64-bit archs.
Mostra dettagli
From the PM conversation "gamearrays in 64-bit". A test case is the breaking glass at the beginning of the DukePlus map.
-
Generale
Lunatic translator: in error tracebacks, show line numbers of the source file.
Mostra dettagli
Instead of those of the translated code. Also some codegen tweaks and fixes.
-
Generale
Lunatic translator: dangling else for the 1000th time: not dangling any more.
Mostra dettagli
Also update test/dangling_else.con. See there for how if* cascades are handled in CON. It's actually kind of pretty. Also, take care to handle code deferred to after the if/if-else properly (ifpdistl, ifpdistg, ifcanseetartet).
Febbraio 2013
-
Generale
Lunatic t.: {read,save}gamevar, fix break in nested while, fix rotatesprite16.
-
Generale
build.c: initialize g_doHardcodedMovement to 1.
Mostra dettagli
Fixing movement when not loading a.m32.
-
attach const qualifiers to appropriate function input arguments.
-
fixups and debugging helpers.
Mostra dettagli
- add LuaJIT's 'v' module printing trace info - translator: fix game function name definitions - revert math.fmod -> math.modf, they are different! - disable JIT compilation for a function we're getting strange crashes with - Make some of DukePlayer_t's members 'bool' on the Lua side. It's way too easy to write something like "ps.jetpack_on" where "ps.jetpack_on~=0" was meant. [Background: Kyle873 observed that Duke was always floating.] - Error out if looping in our_module(). I find this behavior more logical than returning true. - fix a couple of missed FORBID variables
-
Generale
Lunatic translator: fix codegen for "break" inside while loops.
Mostra dettagli
Note: usually, languages call this "continue". Jeez, CON...
-
initialize test Lua state earlier so that 'setdefname' has an effect.
-
Generale
Remove some duplicate or unused control layer defines.
Mostra dettagli
Notes: - MAXJOYBUTTONS is out of sync between the two definitions - In menus.c, NUMMOUSEFUNCTIONS must equal MAXMOUSEBUTTONS, fail to compile if this becomes false.
-
Generale
Lunatic translator: handle RETURN across events.
-
Generale
engine.c: in setpolymost2dview(), set gloy=-1 unconditionally.
Mostra dettagli
This fixes an update issue: start EDuke32 without warping to a map in Polymost, change to classic, and change to Polymost again. The OSD background will be displaced.
-
sector[]:zrangeat(), 'getzrange' command for the translator.
Mostra dettagli
Also, fix quote commands there.
-
Generale
Lunatic translator: codegen fixes, setgamepalette, -fno=onlycheck option.
-
Generale
CON parser: don't allow read-only gamevars to 'readgamevar' command.
-
Generale
Lunatic Makefile.deps: make game.c depend on defs.ilua.
Mostra dettagli
Since the size of defs.ilua's bytecode is used in game.c.
-
export C functions that may call into CON events using the Lua C API.
Mostra dettagli
We must not call these functions using the FFI, since the Lua state is considered locked across such calls.
-
begin fixing up the code because it's now actually live!
-
Generale
Lunatic translator: keep states, game{vars, arrays} in tables instead of locals.
Mostra dettagli
Since it's too easy to hit the 200 locals limit.
-
compile defs.ilua as bytecode and load it from the executable.