Rev |
Age |
Author |
Path |
Log message |
Diff |
5045 |
2227d 7h |
hendricks266 |
/polymer/eduke32/source/gamedef.c |
CON: Add EVENT_DISPLAYLEVELSTATS. Set RETURN to -1 to disable them. |
|
5044 |
2227d 7h |
hendricks266 |
/polymer/eduke32/source/gamedef.c |
C-CON: Add read-only userdef members "gametypeflags" and "m_gametypeflags", which return GametypeFlags[ud.coop] and GametypeFlags[ud.m_coop] respectively. |
|
5043 |
2227d 7h |
hendricks266 |
/polymer/eduke32/source/gamedef.c |
C-CON: Add read-only userdef members "usevoxels", "usehightile", and "usemodels". |
|
5039 |
2231d 12h |
hendricks266 |
/polymer/eduke32/source/gamedef.c |
CON: Add "resetplayerflags". Flag 1 means "don't ask the user if they want to load". |
|
5033 |
2240d 16h |
hendricks266 |
/polymer/eduke32/source/gamedef.c |
CON: Add "definevolumeflags", currently equipped to hide an episode from the single player and/or multiplayer screens.
enum
{
EF_HIDEFROMSP = 1<<0,
EF_HIDEFROMMP = 1<<1,
}; |
|
5032 |
2240d 16h |
hendricks266 |
/polymer/eduke32/source/gamedef.c |
CON: Extend undefinevolume so that it also undefines all levels in the specified volume. |
|
5031 |
2240d 16h |
hendricks266 |
/polymer/eduke32/source/gamedef.c |
CON: Rename "cutscene" command to "startcutscene". |
|
5022 |
2242d 16h |
helixhorned |
/polymer/eduke32/source/gamedef.c |
gamedef.c: tweak g_keywdate[] entries. |
|
5003 |
2252d 8h |
hendricks266 |
/polymer/eduke32/source/gamedef.c |
Replace erroneous use of EVENT_DISPLAYCROSSHAIR with new event EVENT_DISPLAYCURSOR. |
|
4996 |
2252d 9h |
terminx |
/polymer/eduke32/source/gamedef.c |
Get rid of the "press space to restart" message on mobile. DONT_BUILD. |
|
4987 |
2252d 9h |
terminx |
/polymer/eduke32/source/gamedef.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. |
|
4977 |
2254d 9h |
hendricks266 |
/polymer/eduke32/source/gamedef.c |
CON: Add undefinevolume, undefineskill, and undefinelevel. |
|
4970 |
2255d 7h |
hendricks266 |
/polymer/eduke32/source/gamedef.c |
CON: Add read-only access to ud.config.MusicToggle through the "musictoggle" member. |
|
4969 |
2255d 7h |
hendricks266 |
/polymer/eduke32/source/gamedef.c |
CON: Add STR_YOURTIME, STR_PARTIME, STR_DESIGNERTIME, and STR_BESTTIME to qgetsysstr. |
|
4968 |
2255d 7h |
hendricks266 |
/polymer/eduke32/source/gamedef.c |
Factor out generation of strings for time values in the bonus screen. This involves the creation of ud.playerbest. |
|
4956 |
2257d 22h |
helixhorned |
/polymer/eduke32/source/gamedef.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. |
|
4945 |
2269d 2h |
hendricks266 |
/polymer/eduke32/source/gamedef.c |
Add events EVENT_DISPLAYINACTIVEMENU and EVENT_DISPLAYINACTIVEMENUREST and userdef members m_origin_x and m_origin_y.
This allows for CON screen display code to use menu animations. The following is an example of how to adapt screen features that should animate.
before:
onevent EVENT_DISPLAYMENUREST
ifvare current_menu 0 // main menu
{
setvar x 1
setvar y 1
rotatesprite x y zoom ang tilenum shade pal orientation 0 0 xdim ydim
}
endevent
after:
state DisplayMenuCommon
ifvare RETURN 0 // main menu
{
getuserdef[THISACTOR].m_origin_x x
getuserdef[THISACTOR].m_origin_y y
addvar x 65536
addvar y 65536
rotatesprite16 x y zoom ang tilenum shade pal orientation 0 0 xdim ydim
}
ends
onevent EVENT_DISPLAYMENUREST state DisplayMenuCommon endevent
onevent EVENT_DISPLAYINACTIVEMENUREST state DisplayMenuCommon endevent |
|
4928 |
2277d 14h |
hendricks266 |
/polymer/eduke32/source/gamedef.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. |
|
4926 |
2277d 14h |
hendricks266 |
/polymer/eduke32/source/gamedef.c |
Clean up duplicate and strangely-formed cases in C_ParseCommand(). |
|
4902 |
2283d 10h |
terminx |
/polymer/eduke32/source/gamedef.c |
Questionable CON changes and optimizations. <3 |
|
4841 |
2298d 21h |
helixhorned |
/polymer/eduke32/source/gamedef.c |
CON: allow passing more than one flag to the 'spriteflags' directive.
These will be bitwise-OR'd. |
|
4840 |
2298d 21h |
helixhorned |
/polymer/eduke32/source/gamedef.c |
gamedef.c: factor out some dup'd code into C_BitOrNextValue(), C_FinishBitOr(). |
|
4680 |
2361d 11h |
terminx |
/polymer/eduke32/source/gamedef.c |
Another 5000 lines of pain and tears. DONT_BUILD. |
|
4628 |
2386d 10h |
terminx |
/polymer/eduke32/source/gamedef.c |
Free h_labels table when done compiling CONs |
|
4588 |
2408d 20h |
helixhorned |
/polymer/eduke32/source/gamedef.c |
Get rid of EnvMusicFilename[] and use MapInfo[].musicfn for that.
The additional space was there all the time, so it's not understandable why
another array was necessary.
CON: for 'music', error if volume number is outside [0 .. MAXVOLUMES+1], and
in LunaCON, additionally warn if it's MAXVOLUMES+1 (0 is preferred for that). |
|
4586 |
2408d 20h |
helixhorned |
/polymer/eduke32/source/gamedef.c |
More music-related cleanup. |
|
4582 |
2416d 3h |
helixhorned |
/polymer/eduke32/source/gamedef.c |
Fix crash using INTERNAL DEFAULTS after CON error when CON modules were given. |
|
4541 |
2458d 6h |
hendricks266 |
/polymer/eduke32/source/gamedef.c |
Replace the funkily-formatted GNU.TXT with the FSF's official gpl-2.0.txt. Also, update the FSF's address in all source files that contain it.
DONT_BUILD. |
|
4537 |
2471d 16h |
hendricks266 |
/polymer/eduke32/source/gamedef.c |
Miscellaneous get/set(this)projectile cleanup. |
|
4516 |
2491d 15h |
hendricks266 |
/polymer/eduke32/source/gamedef.c |
Instead of displaying "Unknown GRP - EDuke32", simply display "EDuke32".
Much classier this way. |
|
4515 |
2491d 15h |
hendricks266 |
/polymer/eduke32/source/gamedef.c |
By request, implement EVENT_ACTIVATECHEAT. |
|
4502 |
2495d 6h |
hendricks266 |
/polymer/eduke32/source/gamedef.c |
Wrap most calls to exit() with a macro that will print the exit status, file name, line number, and function name to the log when using a debug build. |
|
4491 |
2509d 15h |
helixhorned |
/polymer/eduke32/source/gamedef.c |
Bye, bye, B*alloc(), all hail X*alloc()! Replace large portion of the calls...
... and cull code that is dead with the X*alloc() versions since they never
return NULL on requesting memory.
Use something like
git grep '[^Xx]\(m\|c\|re\)alloc *('
and
git grep '[^Xx]strdup *('
to see places where I left the B*alloc() calls intact.
BUILD_LUNATIC. |
|
4474 |
2521d 5h |
helixhorned |
/polymer/eduke32/source/gamedef.c |
C-CON: scan label names according to stricter LunaCON rules instead of char blacklist.
These ones: http://lunatic.eduke32.com/lunacon.html#_ambiguous_lexical_elements
Seriously, defining a token kind by excluding certain characters (instead of
allowing a given set) is really, really broken. |
|
4448 |
2549d 16h |
helixhorned |
/polymer/eduke32/source/gamedef.c |
CON: add getactor[]/sprite[] member 'movflags'.
This is exactly the same as the actor[].movflags member in the Lunatic build:
http://lunatic.eduke32.com/lunatic.html#actor |
|
4416 |
2564d 3h |
helixhorned |
/polymer/eduke32/source/gamedef.c |
Rename sector[].filler member to '.fogpal'. From CON, keep the '.alignto' alias.
The overall situation is thus as follows:
- in C and from Lua, that member is called 'fogpal'
- In CON (both C-CON and LunaCON), it's 'fogpal' with 'alignto' being an alias;
'filler' wasn't available before, either.
- In m32script, it's 'fogpal' or 'alignto' ('filler' is not available any more) |
|
4391 |
2577d 22h |
helixhorned |
/polymer/eduke32/source/gamedef.c |
Fix taking ARRAY_SIZE of PlayerSelfObituaries (not PlayerObituaries!)
Also add two static assertions checking that the obituary quotes don't go
out of the MAXQUOTES bound. BUILD_LUNATIC. |
|
4385 |
2578d 5h |
terminx |
/polymer/eduke32/source/gamedef.c |
Widespread use of ARRAY_SIZE macro. |
|
4373 |
2585d 0h |
helixhorned |
/polymer/eduke32/source/gamedef.c |
LunaCON: warn if a 'spriteflags' is issued after its actor definition...
... or another 'spriteflags' or 'sprite*' directive. |
|
4371 |
2585d 0h |
helixhorned |
/polymer/eduke32/source/gamedef.c |
Add new actor flag and predefined CON label SFLAG_NODAMAGEPUSH.
This flag is set from C for some enemies that should not be pushed back when
damaged, such as TANK. Both the tile flag and the per-sprite flag are used
(i.e. the ultimate flag value is the XOR of the two).
Add currently non-functional example to test.lua that attempts to set this bit
for NEWBEAST. |
|