Subversion Repositories eduke32

Rev

Show changed files | Details | Compare with Previous | Blame | RSS feed

Filtering Options

Rev Age Author Path Log message Diff
5047 2238d 9h hendricks266 /polymer/eduke32/source/game.c CON: Add EVENT_DISPLAYROOMSCAMERA and EVENT_DISPLAYSTART.

EVENT_DISPLAYROOMSCAMERA functions exactly like EVENT_DISPLAYROOMS, including RETURN values, but for the ud.camerasprite >= 0 case.
EVENT_DISPLAYSTART is executed immediately after the screen background is cleared and drawn. Ensure its RETURN value is zero, because it is currently not being used.

WARNING: Consult the devs before using EVENT_DISPLAYSTART. Its position in the display code sequence is not finalized.
 
5046 2238d 9h hendricks266 /polymer/eduke32/source/game.c CON: Add EVENT_DISPLAYCAMERAOSD. Set RETURN to -1 to disable it.

From this event, if "getactor[THISACTOR].htg_t 0" is zero, then the camera is functional. Nonzero values indicate the camera has been destroyed, which is only possible when the CAMERASDESTRUCTABLE parameter of gamestartup has been enabled.
 
5045 2238d 9h hendricks266 /polymer/eduke32/source/game.c CON: Add EVENT_DISPLAYLEVELSTATS. Set RETURN to -1 to disable them.  
5042 2238d 9h hendricks266 /polymer/eduke32/source/game.c Restore the shade of a tiled MENUTILE to 8, rather than 16.  
5020 2254d 19h helixhorned /polymer/eduke32/source/game.c Stick update of 'totalclocklock' at beginning of G_DrawRooms() instead of drawrooms().

This fixes engine-side sprite animation in the following scenario: CON code
wants to draw a scene from EVENT_DISPLAYREST, but since it covers the whole
screen, disables the drawing of the 3D scene beforehand (RETURN set to 1 from
EVENT_DISPLAYROOMS). DONT_BUILD.
 
5007 2260d 5h hendricks266 /polymer/eduke32/source/game.c Amend previous commit. DONT_BUILD.  
5006 2260d 5h hendricks266 /polymer/eduke32/source/game.c Fix an assertion failure with NETCODE=0. DONT_BUILD.  
4997 2263d 12h terminx /polymer/eduke32/source/game.c A whole bunch of mostly insignificant changes that didn't deserve separate commits. DONT_BUILD.  
4989 2263d 12h terminx /polymer/eduke32/source/game.c More Android changes. DONT_BUILD.  
4987 2263d 12h terminx /polymer/eduke32/source/game.c 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:

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.
 
4986 2263d 12h terminx /polymer/eduke32/source/game.c Minor sound cleanup... clean up crappy old code, remove obsolete "FXDevice" and "MusicDevice" variables, etc.  
4982 2263d 12h terminx /polymer/eduke32/source/game.c Macro for handling ud.bgstretch. DONT_BUILD.  
4972 2265d 22h helixhorned /polymer/eduke32/source/game.c CON: Amend retrieval of STR_*TIME for qgetsysstr, fixing LunaCON and possible oob.

- 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.
 
4968 2266d 9h hendricks266 /polymer/eduke32/source/game.c Factor out generation of strings for time values in the bonus screen. This involves the creation of ud.playerbest.  
4965 2267d 0h helixhorned /polymer/eduke32/source/game.c Classic: fix underallocation of TILE_TILT and tilting at very small resolutions.

Since TILE_TILT is only allocated once, it must be done with the maximum
possible size.
 
4956 2269d 1h helixhorned /polymer/eduke32/source/game.c Add SFLAG_NOWATERDIP, unconditionally preventing actors from dipping into ST1 water.

By default, the following enemies have this flag set: OCTABRAIN, COMMANDER, DRONE.
DONT_BUILD.
 
4949 2280d 5h hendricks266 /polymer/eduke32/source/game.c Don't allow Ogg Vorbis or FLAC files to be defined from def if the binary was built without the proper libraries.  
4948 2280d 5h hendricks266 /polymer/eduke32/source/game.c Modularize .mid --> .ogg --> .flac code to apply to sounds as well, and various cleanup in music/sound filename-handling code.  
4935 2286d 18h helixhorned /polymer/eduke32/source/game.c Classic: fix "windowed" modes (r_size >= 12) by reverting r4920; adapt.

In setview(), we now assert windowx2 < xdim. The only calling places where its
non-violation is non-trivial to ascertain are (1) showview from CON and
(2) draw-to-tile for look-sideways in game.c. AFAICS case 1 should be fine.
Case 2 is adapted; see comments there.
 
4919 2290d 10h terminx /polymer/eduke32/source/game.c Implement better fade-out for quotes and for the mouse cursor in the menu.  

Show All