Subversion Repositories eduke32

Rev

Go to most recent revision | Show changed files | Details | Compare with Previous | Blame | RSS feed

Filtering Options

Rev Age Author Path Log message Diff
4336 2798d 4h helixhorned /source/duke3d/src/lunatic/engine.lua Lunatic: add engine.saveLookupDat() and document, related tweaks.

- Mapster32: before loading LOOKUP.DAT, set palookup[0][239]=239 to
make an identity map of the base shade table's shade 0
- Rewrite color index remapping case of makepalookup() for clarity

BUILD_LUNATIC.
 
4332 2798d 4h helixhorned /source/duke3d/src/lunatic/engine.lua Lunatic: in shade table 'remap16' method, allow sparse table, document it.

Add shadexfog.createremap() convenience function.
 
4331 2801d 8h helixhorned /source/duke3d/src/lunatic/engine.lua Lunatic: in engine.savePaletteDat(), open file in binary mode. BUILD_LUNATIC.  
4312 2805d 4h helixhorned /source/duke3d/src/lunatic/engine.lua Extend PALETTE.DAT format to allow carrying additional blending tables.

Lunatic: also, add an additional argument 'moreblends' to
engine.savePaletteDat() and document that function.
See test/shadexfog.lua for a "user-friendly" wrapper shadexfog.save() which
prints success or errors.
 
4311 2805d 4h helixhorned /source/duke3d/src/lunatic/engine.lua Lunatic: move code in test/shadexfog.lua to engine.savePaletteDat() and complete it.

The function now writes out a full PALETTE.DAT: base balette, shade table and
translucency table.
 
4308 2806d 9h helixhorned /source/duke3d/src/lunatic/engine.lua Lunatic: add a 'lastokcol' argument to engine.nearcolor() and document it.

On the C side, slightly rewrite (now) getclosestcol_lim() for clarity.
 
4301 2806d 9h helixhorned /source/duke3d/src/lunatic/engine.lua Classic: support for multiple blending tables + Lunatic interfaces.

Currently, sprite[].filler (to be renamed) selects a blending table. If none
is installed with that index, the blending table at index 0 is taken (which is
read from PALETTE.DAT on engine startup). Thus, for now, the non-Lunatic build
will never use a custom blending table because there's no way to register one!
But the functionality is there.
 
4262 2826d 3h helixhorned /source/duke3d/src/lunatic/engine.lua Lunatic: document engine.*shadetab() functions. DONT_BUILD.  
4256 2833d 9h helixhorned /source/duke3d/src/lunatic/engine.lua LunaCON: for readgamevar, if ud.config.scripthandle < 0, keep value, don't err.  
4242 2840d 10h helixhorned /source/duke3d/src/lunatic/engine.lua Lunatic: remap16 method for engine.shadetab, 2nd attempt at recreating orig. one.

BUILD_LUNATIC.
 
4236 2845d 12h helixhorned /source/duke3d/src/lunatic/engine.lua Lunatic: add 'engine' module, currently allowing to create custom shade tables.

Available in the game and editor. Provide test/shadexfog.lua, containing a
function to creating a set of 32 shade tables corresponding to different shades
of the same fog palookup table, together with some tests and convenience
functions.

Also,
- Add gv.LUNATIC_CLIENT{,_EDUKE32,_MAPSTER32}
- Add LUNATIC_FIRST_TIME in the global env for the game
- defs_m32.lua: add reload() convenience function
- Failed attempt at recreating the base shade table. It is NOT a linear ramp
of the base palette colors to (0,0,0). That is, it's not created by
build/util/transpal.exe!