Commit graph

3428 commits

Author SHA1 Message Date
hendricks266
257e271162 C-CON: Really fix get/setprojectile.
git-svn-id: https://svn.eduke32.com/eduke32@5105 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-28 09:48:37 +00:00
hendricks266
fe17d41b14 Restructure the GRP scanning functionality. Outwardly, this allows GRP selections with special handling (the add-ons and NAM) to function properly when the Windows or GTK startup windows do not run, namely with the OS X startup window, and using the -gamegrp command line parameter on any other platform, or on all of the both under dedicated server mode,
git-svn-id: https://svn.eduke32.com/eduke32@5103 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-27 12:30:35 +00:00
hendricks266
df7a257ce5 C-CON: Fix a mistake in r5086 that broke get/setprojectile.
git-svn-id: https://svn.eduke32.com/eduke32@5100 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-27 12:29:37 +00:00
hendricks266
0adcc4a3f7 C-CON: Add read-only player structure member "hudpal", that returns the result of P_GetHudPal().
git-svn-id: https://svn.eduke32.com/eduke32@5099 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-27 12:29:24 +00:00
hendricks266
8a9fb41d5f CON: Add EVENT_WORLD, EVENT_PREWORLD, and EVENT_PRELEVEL, which respectively function as EVENT_GAME, EVENT_PREGAME, and EVENT_LOADACTOR, but only running once instead of per-actor.
git-svn-id: https://svn.eduke32.com/eduke32@5098 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-27 12:29:05 +00:00
hendricks266
c784fdb21c C-CON: Redefine "break" within events to mean "skip the remainder of this event block", not "skip the remainder of execution of this event, through all chained blocks". The latter behavior is still available through the "return" keyword.
git-svn-id: https://svn.eduke32.com/eduke32@5097 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-27 12:28:45 +00:00
hendricks266
a096b579da Fix a typo in r5090.
git-svn-id: https://svn.eduke32.com/eduke32@5096 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-27 12:28:29 +00:00
hendricks266
598011d59a OS X: Fix build. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5094 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-26 20:39:02 +00:00
hendricks266
0805a0ed45 CON: Add token "appendevent", which functions identically to "onevent" except that the event's code is chained to the end of any previous events, instead of the beginning.
git-svn-id: https://svn.eduke32.com/eduke32@5093 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-25 21:31:11 +00:00
hendricks266
a90f47c1ea C-CON: Fix processing the bytecode in an incorrect order when executing setplayer on a member with a second parameter, a missed instance of a consideration from r5086.
git-svn-id: https://svn.eduke32.com/eduke32@5092 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-25 21:30:52 +00:00
hendricks266
91a7a3aa00 C-CON: Remove the restriction that prevents userdef access when the current player is not myconnectindex.
git-svn-id: https://svn.eduke32.com/eduke32@5091 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-25 21:30:39 +00:00
hendricks266
bd0f05a706 C-CON: Implement tilesizx/y gamearrays in a fashion similar to M32Script's solution: a STRIDE2 flag.
git-svn-id: https://svn.eduke32.com/eduke32@5090 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-25 21:30:25 +00:00
hendricks266
a14109da20 C-CON: Modify the parsing of definevolumename and defineskillname so that they only look for the text before a newline.
// valid
definevolumename 3     <text>

// invalid
definevolumename 3
<text>

git-svn-id: https://svn.eduke32.com/eduke32@5089 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-25 06:28:09 +00:00
hendricks266
49c85f644d C-CON: Add quick access for the remaining structures without it.
git-svn-id: https://svn.eduke32.com/eduke32@5088 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-25 06:27:57 +00:00
hendricks266
5c8a2e3ea6 C-CON: Enumify quick structure access.
git-svn-id: https://svn.eduke32.com/eduke32@5087 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-25 06:27:42 +00:00
hendricks266
4682da7a22 C-CON: Factor fast struct access and get<struct> out into single functions.
git-svn-id: https://svn.eduke32.com/eduke32@5086 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-25 06:27:25 +00:00
hendricks266
feef0ded2d C-CON: Add PLAYER_PALETTE to quick player struct access, and add a setter that calls P_SetGamePalette().
git-svn-id: https://svn.eduke32.com/eduke32@5085 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-25 06:27:08 +00:00
hendricks266
ab58a33ec6 Menus: Add a Cheats menu to options.
It's old-school.

git-svn-id: https://svn.eduke32.com/eduke32@5084 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-24 10:49:03 +00:00
hendricks266
6d04da0b49 Menus: Rename MenuPassword_t to MenuTextForm_t, modularize more of its attributes into the data structure, and polish its display and behavior.
git-svn-id: https://svn.eduke32.com/eduke32@5083 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-24 10:48:34 +00:00
terminx
a9c32b758d Build fix. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5081 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-24 03:33:57 +00:00
terminx
c9ce545ab8 A lot of CON rewrites/optimizations. Converts projectile system to dynamic allocation, saving a bunch of memory (something like sizeof(projectile_t) * MAXTILES * 2). This commit also contains changes that reduce overhead for CON commands that take a lot of parameters, by way of adding a Gv_GetManyVars() to replace long strings of subsequent calls to Gv_GetVarX().
Savegame version has been bumped due to the projectile changes. There is no way this commit doesn't cause at least one bug, so DONT_BUILD. ;)

git-svn-id: https://svn.eduke32.com/eduke32@5080 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-24 00:40:55 +00:00
terminx
93d8d2dbdb Abort animvpx playback if uploading the texture for a frame throws a GL error. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5074 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-24 00:40:27 +00:00
terminx
fa55f368c9 Remove unused buffer to fix warning, DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5070 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-24 00:40:15 +00:00
terminx
f4e5e39634 Further gamevar changes/optimizations. This also fixes a bug Fox reported with the "shortcut" access to structure members that's tacked on to GetVar, where if the value of the index you're trying to access happened to equal the ID of the current sprite, it would act as if the variable passed was THISACTOR.
git-svn-id: https://svn.eduke32.com/eduke32@5069 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-24 00:40:12 +00:00
terminx
8fc08a71fa Swap position of "load game" and "options" on main menu so that "load game" follows "new game", for consistency with the slightly different menu you get while in-game.
git-svn-id: https://svn.eduke32.com/eduke32@5068 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-24 00:40:08 +00:00
terminx
7845f5e2fe "Stylistic changes"
Translation: I made some stuff const because I felt like it.

git-svn-id: https://svn.eduke32.com/eduke32@5067 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-24 00:40:05 +00:00
terminx
c725da4829 More Android changes. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5066 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-24 00:40:01 +00:00
terminx
61f35b827a Remove WeaponChoice* from eduke32.cfg and transition setting to "wchoice" cvar. This commit also removes an Android hack and changes the order of some of the in-game "F" key handling, just because it bugged me that some of them were out of order.
git-svn-id: https://svn.eduke32.com/eduke32@5065 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-24 00:39:52 +00:00
hendricks266
201e353771 Amend "renamefile" def token to ensure its proper use. renamefile <GRP/SSI CRC32> <file number> <new filename>
git-svn-id: https://svn.eduke32.com/eduke32@5064 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-23 08:30:41 +00:00
hendricks266
6e64696605 Expand the quote #13 auto-replacement to catch "OPEN" and "ANY BUTTON" in addition to "SPACE".
git-svn-id: https://svn.eduke32.com/eduke32@5063 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-23 06:28:40 +00:00
hendricks266
27777f96c3 Add the Duke DC and Duke Caribbean SSI files to the list of group files automatically detected and added to the startup window.
git-svn-id: https://svn.eduke32.com/eduke32@5062 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-23 06:28:27 +00:00
hendricks266
a81be01914 Modify the modern mini-HUD so that:
1. Instead of the Mighty Foot using the Protective Boots inventory item as its icon, display no icon at all.
2. Adjust the ammo icon so that it is drawn at one-quarter size if its y-size is >=50 instead of >50. This fixes the display of Water Pistol Ammo in Duke Caribbean.

git-svn-id: https://svn.eduke32.com/eduke32@5057 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-23 06:26:59 +00:00
hendricks266
92afedcb11 Replace the drawing code for the level stats with nearly equivalent code that can be much more easily reproduced in CON.
git-svn-id: https://svn.eduke32.com/eduke32@5054 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-09 07:37:38 +00:00
hendricks266
f2a2e1d8b3 Amend r5048 to also reset ototalclock and lockclock, and to reset all three at the top of G_PlaybackDemo.
git-svn-id: https://svn.eduke32.com/eduke32@5052 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-08 23:40:08 +00:00
hendricks266
6ed8f27e77 Expand the grpinfo feature to allow defining GRPs requiring NAM, NAPALM, or WWII GI.
git-svn-id: https://svn.eduke32.com/eduke32@5050 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-08 07:59:03 +00:00
hendricks266
362a782820 In G_PlaybackDemo(), update totalclocklock when G_DrawRooms() is not called and therefore does not update it. This fixes ART animations displaying in the main menu.
git-svn-id: https://svn.eduke32.com/eduke32@5049 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-08 07:58:49 +00:00
hendricks266
9403200a07 Reset totalclock to zero for each MAIN_LOOP_RESTART.
git-svn-id: https://svn.eduke32.com/eduke32@5048 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-08 07:58:36 +00:00
hendricks266
f821434195 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.

git-svn-id: https://svn.eduke32.com/eduke32@5047 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-08 07:58:24 +00:00
hendricks266
ef28cac919 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.

git-svn-id: https://svn.eduke32.com/eduke32@5046 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-08 07:58:06 +00:00
hendricks266
35bee70ee6 CON: Add EVENT_DISPLAYLEVELSTATS. Set RETURN to -1 to disable them.
git-svn-id: https://svn.eduke32.com/eduke32@5045 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-08 07:57:47 +00:00
hendricks266
c86bd80dd7 C-CON: Add read-only userdef members "gametypeflags" and "m_gametypeflags", which return GametypeFlags[ud.coop] and GametypeFlags[ud.m_coop] respectively.
git-svn-id: https://svn.eduke32.com/eduke32@5044 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-08 07:57:28 +00:00
hendricks266
d7409a5a95 C-CON: Add read-only userdef members "usevoxels", "usehightile", and "usemodels".
git-svn-id: https://svn.eduke32.com/eduke32@5043 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-08 07:57:13 +00:00
hendricks266
d5ed8aa728 Restore the shade of a tiled MENUTILE to 8, rather than 16.
git-svn-id: https://svn.eduke32.com/eduke32@5042 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-08 07:56:57 +00:00
hendricks266
7d701ae7e2 Disable EF_HIDEFROMMP pending proper consideration when multiplayer is closer to being ready.
git-svn-id: https://svn.eduke32.com/eduke32@5041 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-08 07:56:45 +00:00
hendricks266
b61908cbf3 CON: Add "resetplayerflags". Flag 1 means "don't ask the user if they want to load".
git-svn-id: https://svn.eduke32.com/eduke32@5039 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-04 02:15:15 +00:00
hendricks266
17906349b4 BSD: Build system fixes/improvements. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5037 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-02 07:54:24 +00:00
helixhorned
97c944a505 LunaCON: add 'definevolumeflags' to keyword pattern, re-apply some changes of r5026.
DONT_BUILD.

git-svn-id: https://svn.eduke32.com/eduke32@5036 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-01 14:15:40 +00:00
hendricks266
5953541075 Menus: Fix assorted issues in MENU_NETOPTIONS.
git-svn-id: https://svn.eduke32.com/eduke32@5034 1a8010ca-5511-0410-912e-c29ae57300e0
2015-02-22 22:15:35 +00:00
hendricks266
697e7d0936 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,
};

git-svn-id: https://svn.eduke32.com/eduke32@5033 1a8010ca-5511-0410-912e-c29ae57300e0
2015-02-22 22:15:20 +00:00
hendricks266
afccb6d735 CON: Extend undefinevolume so that it also undefines all levels in the specified volume.
git-svn-id: https://svn.eduke32.com/eduke32@5032 1a8010ca-5511-0410-912e-c29ae57300e0
2015-02-22 22:14:54 +00:00