Subversion Repositories eduke32

Rev

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

Filtering Options

Rev Age Author Path Log message Diff
5005 2214d 20h hendricks266 /polymer/eduke32/source/gameexec.c Apple: Update Xcode project and build system. DONT_BUILD.  
5000 2217d 22h terminx /polymer/eduke32/source/gameexec.c More Android work. DONT_BUILD.  
4988 2217d 22h terminx /polymer/eduke32/source/gameexec.c C-CON changes  
4987 2217d 22h terminx /polymer/eduke32/source/gameexec.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.
 
4975 2220d 9h helixhorned /polymer/eduke32/source/gameexec.c gameexec.c: in VM_Move(), update actor[].{floor,ceiling}z for enemies.

Previously, that was the case only with DRONE and COMMANDER. This makes
non-falling enemies pass properly through TROR bunches.
 
4969 2220d 19h hendricks266 /polymer/eduke32/source/gameexec.c CON: Add STR_YOURTIME, STR_PARTIME, STR_DESIGNERTIME, and STR_BESTTIME to qgetsysstr.  
4956 2223d 11h helixhorned /polymer/eduke32/source/gameexec.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.
 
4955 2223d 11h helixhorned /polymer/eduke32/source/gameexec.c Actor ST1 handling: use A_GetWaterZOffset() with VM_Move(), too. DONT_BUILD.

This is where things are changed at last. This fixes lizmen walking on water.
 
4954 2223d 11h helixhorned /polymer/eduke32/source/gameexec.c Actor ST1 handling: cleanup part 2. DONT_BUILD.

Factor out condition for whether a z offset is added or not
("fix for flying/jumping monsters getting stuck in water", etc.) into
a function A_GetWaterZOffset() (and a helper A_GetVerticalVel()).
 
4953 2223d 11h helixhorned /polymer/eduke32/source/gameexec.c Actor ST1 handling: clean up code a bit. (Preparation for real changes.)

In VM_Fall(), keep a temp preliminary new z position of the actor and
assign only when we return. This is to each ease watching its value in GDB.
DONT_BUILD.
 
4948 2234d 15h hendricks266 /polymer/eduke32/source/gameexec.c Modularize .mid --> .ogg --> .flac code to apply to sounds as well, and various cleanup in music/sound filename-handling code.  
4937 2241d 3h helixhorned /polymer/eduke32/source/gameexec.c Lunatic: fix build and linking. DONT_BUILD.

- t{sector,wall}type are simply typedef'd to the non-t versions
- make FORCE_INLINE unconditional of DISABLE_INLINING (otherwise there are
multiple definitions of these functions)
- update lunatic/doc/lpeg-lunatic.patch to apply against the LPeg 0.12 I just
downloaded
 
4928 2243d 3h hendricks266 /polymer/eduke32/source/gameexec.c CON: Add new commands "getmusicposition" and "setmusicposition" that operate on the playback position of the current music track.

// Example: Switch between tracks like radio stations.
getmusicposition temp
starttrackvar next_music_track
setmusicposition temp

Only implemented for Ogg Vorbis, FLAC, and XA. Consult the devs before using these commands.
 
4923 2243d 21h terminx /polymer/eduke32/source/gameexec.c Fix savemapstate/loadmapstate (fixes a crash at shutdown, among other things)  
4919 2244d 21h terminx /polymer/eduke32/source/gameexec.c Implement better fade-out for quotes and for the mouse cursor in the menu.  
4903 2248d 22h terminx /polymer/eduke32/source/gameexec.c Introduce "twalltype" for temporary uses of walltype where using wall_tracker_hook() would be invalid. This is similar to "tspritetype" and fixes a bunch of problems in the editor that cropped up when changing the tracker sanity checks to an assert that only exists in debug builds (branching upon any write to a sprite, sector or wall had an unacceptable impact on performance).  
4902 2248d 22h terminx /polymer/eduke32/source/gameexec.c Questionable CON changes and optimizations. <3  
4844 2264d 10h helixhorned /polymer/eduke32/source/gameexec.c C-CON: fix 'writearraytofile' for 64-bit platforms.  
4763 2295d 6h hendricks266 /polymer/eduke32/source/gameexec.c Eliminate the printf_nowarn stuff that has long since been supplanted by TrackerCast. DONT_BUILD.  
4745 2298d 15h terminx /polymer/eduke32/source/gameexec.c Mainly misc cleanups (and a fix for the C++ build), but there are a few important changes in here.

VM_OnEvent() has become VM_OnEvent(), VM_OnEventWithReturn(), VM_OnEventWithDist(), and VM_OnEventWithBoth() (the latter of which is only ever used once...). Of course, this required every call to VM_OnEvent() be changed.

memberlabel_t and vmstate_t have been changed to use the regular "int" type versus explicitly specifying int32_t as they did previously. The rationale for this change is simply that it looks cleaner, and I think we should move toward just using "int" in most cases where there's no particular reason to specify an explicit data type.

Also changes CON_KILLIT to just "return" instead of "continue". DONT_BUILD.
 

Show All