Commit graph

128 commits

Author SHA1 Message Date
terminx
01d92aeed2 Syntax changes for gamevar and gamearray declarations:
Gamevar: default value and flags are now optional. A var declared without a value will default to 0 and a var declared without flags will default to global. Multiple flags can now be stacked one after another in a var declaration, and the most useful ones (GAMEVAR_PERPLAYER, GAMEVAR_PERACTOR, GAMEVAR_NODEFAULT, and GAMEVAR_NORESET) are now pre-defined tokens for easy use.

Gamearray: flags field now allows stacking of multiple flags as described above. Arrays can now be defined with specific data types, including int16_t, uint8_t, and a new bit-packed boolean data type. The tokens GAMEARRAY_RESTORE, GAMEARRAY_INT16, GAMEARRAY_UINT8, and GAMEARRAY_BOOLEAN are pre-defined for use of this feature.

This is all still pretty experimental.

git-svn-id: https://svn.eduke32.com/eduke32@6356 1a8010ca-5511-0410-912e-c29ae57300e0
2017-07-11 04:02:52 +00:00
hendricks266
c980410ecc Remove special limitations on CON customization access to the DNCGS cheat.
git-svn-id: https://svn.eduke32.com/eduke32@6349 1a8010ca-5511-0410-912e-c29ae57300e0
2017-07-10 13:43:50 +00:00
terminx
3706ac1b43 Allow scripts to change MAXSPRITESONSCREEN before calls to drawrooms() and friends
git-svn-id: https://svn.eduke32.com/eduke32@6347 1a8010ca-5511-0410-912e-c29ae57300e0
2017-07-08 19:42:11 +00:00
terminx
da0cc1b9bd Some work on CON arrays. Hopefully nothing is broken!
git-svn-id: https://svn.eduke32.com/eduke32@6343 1a8010ca-5511-0410-912e-c29ae57300e0
2017-07-08 19:41:43 +00:00
terminx
2b7cd33fc2 script command aliases
git-svn-id: https://svn.eduke32.com/eduke32@6336 1a8010ca-5511-0410-912e-c29ae57300e0
2017-07-07 22:50:47 +00:00
hendricks266
ad32eaeee0 Don't execute setcfgname if the provided name is the same as the one already in place.
git-svn-id: https://svn.eduke32.com/eduke32@6317 1a8010ca-5511-0410-912e-c29ae57300e0
2017-07-05 05:37:52 +00:00
hendricks266
0d7518891b CON: Add wall.blend to structure access.
git-svn-id: https://svn.eduke32.com/eduke32@6277 1a8010ca-5511-0410-912e-c29ae57300e0
2017-06-25 11:23:58 +00:00
hendricks266
7afc8202d2 CON: Add EVENT_PRELOADGAME and EVENT_POSTLOADGAME.
git-svn-id: https://svn.eduke32.com/eduke32@6262 1a8010ca-5511-0410-912e-c29ae57300e0
2017-06-24 09:21:07 +00:00
hendricks266
df317aa741 CON: Add drawline256 and drawlinergb commands that call the internal functions used for the automap lines.
drawline256 <x0> <y0> <x1> <y1> <index>
drawlinergb <x0> <y0> <x1> <y1> <index> <rgb>

The coordinates are xdim<<12/ydim<<12 based, not 320<<16x200<<16.
<index> is a palette index, and for drawlinergb is used as a fallback in the software renderer.
<rgb> is encoded the same as PROJ_FLASH_COLOR.

git-svn-id: https://svn.eduke32.com/eduke32@6261 1a8010ca-5511-0410-912e-c29ae57300e0
2017-06-24 09:21:03 +00:00
hendricks266
517517a1bb CON: Add getclosestcol command, which finds the closest palette index given
getclosestcol <return> <color> <limit>

<color> is encoded the same as PROJ_FLASH_COLOR.

<limit> is the index of the last palette color that should be considered. Use 255 for the whole palette, 254 to exclude the transparent color, 239 to exclude Duke 3D's fullbrights, etc.

git-svn-id: https://svn.eduke32.com/eduke32@6259 1a8010ca-5511-0410-912e-c29ae57300e0
2017-06-24 09:20:54 +00:00
hendricks266
ffc7de9911 CON: Add EVENT_DISPLAYOVERHEADMAPTEXT.
Set RETURN to any non-zero value to disable hardcoded display of text.

If you wish to replace the hardcoded text, you must check that userdef[].overhead_on == 2 yourself.

git-svn-id: https://svn.eduke32.com/eduke32@6258 1a8010ca-5511-0410-912e-c29ae57300e0
2017-06-24 09:20:50 +00:00
terminx
bf944cf27a Potential CON performance improvements
git-svn-id: https://svn.eduke32.com/eduke32@6250 1a8010ca-5511-0410-912e-c29ae57300e0
2017-06-24 06:31:21 +00:00
terminx
50bc1aa2ba Can Duke3D CON version compatibility messages in standalone builds
git-svn-id: https://svn.eduke32.com/eduke32@6243 1a8010ca-5511-0410-912e-c29ae57300e0
2017-06-23 09:16:13 +00:00
terminx
a3fbe4c542 Add clipdist member to player struct to control how close the player can get to walls
git-svn-id: https://svn.eduke32.com/eduke32@6230 1a8010ca-5511-0410-912e-c29ae57300e0
2017-06-23 03:58:43 +00:00
terminx
bcb6d3830b Only show "using dynamic tile remapping" message in debug builds. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@6227 1a8010ca-5511-0410-912e-c29ae57300e0
2017-06-23 03:58:26 +00:00
hendricks266
05945c920b Add new userdef members gametext_tracking, mgametext_tracking, and menutext_tracking.
git-svn-id: https://svn.eduke32.com/eduke32@6213 1a8010ca-5511-0410-912e-c29ae57300e0
2017-06-20 09:28:59 +00:00
hendricks266
8deddc19b0 Clean up warnings in standalone mode.
git-svn-id: https://svn.eduke32.com/eduke32@6190 1a8010ca-5511-0410-912e-c29ae57300e0
2017-06-17 11:42:20 +00:00
hendricks266
81a6f29dd4 CON: Add undefinegamefunc.
git-svn-id: https://svn.eduke32.com/eduke32@6187 1a8010ca-5511-0410-912e-c29ae57300e0
2017-06-17 11:42:08 +00:00
hendricks266
a10893d75f Change the way gamefuncs are handled to support and ignore entries named as the empty string.
git-svn-id: https://svn.eduke32.com/eduke32@6185 1a8010ca-5511-0410-912e-c29ae57300e0
2017-06-17 11:41:59 +00:00
hendricks266
6d11c01fd7 Don't store redundant copies of default gamefunc names, since the indices are all that matter.
git-svn-id: https://svn.eduke32.com/eduke32@6184 1a8010ca-5511-0410-912e-c29ae57300e0
2017-06-17 11:41:54 +00:00
hendricks266
8d8fd61ed0 Remove the register keyword, since it is deprecated in C++11 and removed in C++17.
git-svn-id: https://svn.eduke32.com/eduke32@6143 1a8010ca-5511-0410-912e-c29ae57300e0
2017-06-05 10:05:29 +00:00
hendricks266
f781f21ccd Address some longstanding warnings with printf when building with MinGW's GCC 6 and newer.
Building with said newer versions may fix the -Wodr warning when building for release.

git-svn-id: https://svn.eduke32.com/eduke32@6140 1a8010ca-5511-0410-912e-c29ae57300e0
2017-06-05 10:05:12 +00:00
terminx
3861723200 Fix https://forums.duke4.net/topic/9285-con-compiler-bug/page__pid__276767
git-svn-id: https://svn.eduke32.com/eduke32@6132 1a8010ca-5511-0410-912e-c29ae57300e0
2017-05-17 21:55:01 +00:00
terminx
ca30328f53 Fix using defined move/ai/action names in switch/case statements
git-svn-id: https://svn.eduke32.com/eduke32@6131 1a8010ca-5511-0410-912e-c29ae57300e0
2017-05-17 05:46:59 +00:00
terminx
76b83164a5 EDUKE32_STANDALONE improvement. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@6124 1a8010ca-5511-0410-912e-c29ae57300e0
2017-04-24 04:35:18 +00:00
hendricks266
d4ee6d00c8 Route inclusion of all Windows headers through a new header, windows_inc.h.
This allows us to make certain guarantees about limits on the extent of namespace pollution these headers introduce.

git-svn-id: https://svn.eduke32.com/eduke32@6065 1a8010ca-5511-0410-912e-c29ae57300e0
2017-02-19 22:15:44 +00:00
hendricks266
d43fb548cf Abolish all " ={ " when assigning a struct. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@6061 1a8010ca-5511-0410-912e-c29ae57300e0
2017-02-05 20:58:33 +00:00
hendricks266
1cc9d13ccf The great repository rearrangement of 2017.
Files moved but not modified. Changes to follow in a subsequent commit.

You down with CPP?

git-svn-id: https://svn.eduke32.com/eduke32@6055 1a8010ca-5511-0410-912e-c29ae57300e0
2017-02-01 10:01:11 +00:00
Renamed from polymer/eduke32/source/gamedef.c (Browse further)