Commit Graph

5708 Commits

Author SHA1 Message Date
terminx e122da5de9 Get constified
git-svn-id: https://svn.eduke32.com/eduke32@5508 1a8010ca-5511-0410-912e-c29ae57300e0
2016-01-07 03:29:49 +00:00
terminx 96ab0aba08 Fix a major bug where "enda" could be used to terminate an event, resulting in all kinds of issues.
git-svn-id: https://svn.eduke32.com/eduke32@5507 1a8010ca-5511-0410-912e-c29ae57300e0
2016-01-07 03:29:44 +00:00
terminx 1cc28df380 Get rid of a bunch of useless comments.
git-svn-id: https://svn.eduke32.com/eduke32@5506 1a8010ca-5511-0410-912e-c29ae57300e0
2016-01-03 20:07:27 +00:00
terminx 7bbd2c8ffd Misc cleanup, add shorthand versions of getplayer, getactor, etc.
git-svn-id: https://svn.eduke32.com/eduke32@5505 1a8010ca-5511-0410-912e-c29ae57300e0
2016-01-03 20:07:24 +00:00
terminx 08ea5c4242 Fix MSVC warning. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5504 1a8010ca-5511-0410-912e-c29ae57300e0
2016-01-03 20:07:20 +00:00
terminx 174c556e2d No longer link to GOG.com when no game data is found. :(
git-svn-id: https://svn.eduke32.com/eduke32@5503 1a8010ca-5511-0410-912e-c29ae57300e0
2016-01-03 20:07:17 +00:00
terminx 1d57de831a Treat "[]" as "[THISACTOR]" when accessing structure members through CON.
git-svn-id: https://svn.eduke32.com/eduke32@5502 1a8010ca-5511-0410-912e-c29ae57300e0
2016-01-03 20:07:11 +00:00
terminx 14938ea5fd Add "klabs" keyword to CON, to take a gamevar and set it to its absolute value. The internal "inv" function to invert a gamevar's value has also been exposed externally.
git-svn-id: https://svn.eduke32.com/eduke32@5501 1a8010ca-5511-0410-912e-c29ae57300e0
2016-01-02 01:56:29 +00:00
terminx 01ebee280e Add commands added in previous commit to g_keywdate[], clean up a few CON compilation warning messages
git-svn-id: https://svn.eduke32.com/eduke32@5500 1a8010ca-5511-0410-912e-c29ae57300e0
2016-01-02 01:56:25 +00:00
terminx 7c976018be Adds the following keywords from M32script into CON: shiftvarvarl, shiftvarvarr, ifvarvarle, ifvarvarge, ifvarvarboth, whilevarl, and whilevarvarl.
This also adds the shorthand versions of some commands, like "set" for "setvarvar", "add" for "addvarvar", "ife" for "ifvarvare", etc. There are about 30 of these. Because some of these names may already be used in some projects as variable names, this revision also includes a somewhat large change in variable naming rules: gamevars may now have the same names as CON keywords, with the caveat that the masked keyword is no longer accessible. This results in a warning at compile time but should ensure nobody's project ever stops compiling due to the introduction of new keywords.

git-svn-id: https://svn.eduke32.com/eduke32@5499 1a8010ca-5511-0410-912e-c29ae57300e0
2016-01-02 01:56:20 +00:00
terminx 0871e56b92 Projectile changes:
-palette is now set at spawn time, instead of during movement (oops!)
-projectiles can no longer hit their owner during their first tic of movement

git-svn-id: https://svn.eduke32.com/eduke32@5498 1a8010ca-5511-0410-912e-c29ae57300e0
2015-12-28 02:04:41 +00:00
terminx 935e9fa197 Fix hard coded white and red color indexes used in on-screen debug output, to better operate with a palette dissimilar to Duke3D.
git-svn-id: https://svn.eduke32.com/eduke32@5497 1a8010ca-5511-0410-912e-c29ae57300e0
2015-12-28 02:04:36 +00:00
terminx 1d17d2c6f6 Polymer lighting tweaks, mostly internal.
git-svn-id: https://svn.eduke32.com/eduke32@5496 1a8010ca-5511-0410-912e-c29ae57300e0
2015-12-28 02:04:29 +00:00
hendricks266 0075e746ba Mapster: Don't restrict setgamepalette to the range [0, 3].
git-svn-id: https://svn.eduke32.com/eduke32@5495 1a8010ca-5511-0410-912e-c29ae57300e0
2015-12-26 15:42:13 +00:00
hendricks266 7f5a8f9a23 Polymost: Make voxels take on the current basepalette, like they should.
git-svn-id: https://svn.eduke32.com/eduke32@5494 1a8010ca-5511-0410-912e-c29ae57300e0
2015-12-26 15:42:09 +00:00
hendricks266 223e67983d Polymost: Fix voxels so palette colors are treated as 8-bit, not 6-bit. Overlooked in r5349.
git-svn-id: https://svn.eduke32.com/eduke32@5493 1a8010ca-5511-0410-912e-c29ae57300e0
2015-12-26 15:42:05 +00:00
hendricks266 aac1900472 Add new spriteflag SFLAG_GREENSLIMEFOOD = 8388608, which controls whether GREENSLIME will eat a given actor.
The flag is automatically set on LIZTROOP, LIZMAN, PIGCOP, and NEWBEAST, in a similar fashion as SFLAG_NOWATERDIP (r4956) and SFLAG_NODAMAGEPUSH (r4371).

git-svn-id: https://svn.eduke32.com/eduke32@5492 1a8010ca-5511-0410-912e-c29ae57300e0
2015-12-26 15:41:59 +00:00
terminx 81d286dcc4 Fix CLANG warnings
git-svn-id: https://svn.eduke32.com/eduke32@5491 1a8010ca-5511-0410-912e-c29ae57300e0
2015-12-23 04:06:28 +00:00
terminx f64a397b34 Fix issue with sin/cos CON commands that prevented using the special builtin structure shortcut access vars for input.
git-svn-id: https://svn.eduke32.com/eduke32@5490 1a8010ca-5511-0410-912e-c29ae57300e0
2015-12-23 04:06:24 +00:00
terminx 97c4b40ca2 Add vm_player, vm_sprite and vm_distance to get/setuserdef. This controls the sprite and player referenced by things like "THISACTOR", all of the "ifp" conditionals, per-actor gamevar access, etc. This is intended to be used to un-gimp things like EVENT_WORLD.
git-svn-id: https://svn.eduke32.com/eduke32@5489 1a8010ca-5511-0410-912e-c29ae57300e0
2015-12-23 04:06:20 +00:00
terminx 6f43820a12 VS solution update. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5488 1a8010ca-5511-0410-912e-c29ae57300e0
2015-12-23 04:06:16 +00:00
terminx b0cb97acb6 Draw frame at level start after EVENT_LOADPLAYER instead of before.
git-svn-id: https://svn.eduke32.com/eduke32@5487 1a8010ca-5511-0410-912e-c29ae57300e0
2015-12-23 04:06:13 +00:00
terminx 49dd9ca9b7 Change references to eduke32.sourceforge.net to www.eduke32.com
git-svn-id: https://svn.eduke32.com/eduke32@5486 1a8010ca-5511-0410-912e-c29ae57300e0
2015-12-23 04:06:09 +00:00
terminx c00f933a37 Update LZ4
git-svn-id: https://svn.eduke32.com/eduke32@5485 1a8010ca-5511-0410-912e-c29ae57300e0
2015-12-23 04:06:05 +00:00
terminx 32ba947b4b Fix cstat 1024 in classic and Polymer
git-svn-id: https://svn.eduke32.com/eduke32@5484 1a8010ca-5511-0410-912e-c29ae57300e0
2015-12-23 04:05:58 +00:00
terminx febd50cc18 Add "restartmap" console command
git-svn-id: https://svn.eduke32.com/eduke32@5483 1a8010ca-5511-0410-912e-c29ae57300e0
2015-12-23 04:05:55 +00:00
terminx c9fefe641d Increase Polymost depth fighting mitigation offset, plus some other minor changes that shouldn't affect anything.
git-svn-id: https://svn.eduke32.com/eduke32@5482 1a8010ca-5511-0410-912e-c29ae57300e0
2015-12-23 04:05:51 +00:00
terminx 2500c7b517 Add support for sector/wall/sprite struct trackers to Polymer
git-svn-id: https://svn.eduke32.com/eduke32@5481 1a8010ca-5511-0410-912e-c29ae57300e0
2015-12-23 04:05:47 +00:00
terminx 40a2780eb0 Split Polymer artmap setup into polymer_setupartmap()
git-svn-id: https://svn.eduke32.com/eduke32@5480 1a8010ca-5511-0410-912e-c29ae57300e0
2015-12-23 04:05:43 +00:00
terminx 61059816b8 Use a hash table for finding Polymer buckets
git-svn-id: https://svn.eduke32.com/eduke32@5479 1a8010ca-5511-0410-912e-c29ae57300e0
2015-12-23 04:05:39 +00:00
terminx 242b6bf870 Appease clang
git-svn-id: https://svn.eduke32.com/eduke32@5478 1a8010ca-5511-0410-912e-c29ae57300e0
2015-12-23 04:05:35 +00:00
terminx 760ea6c313 Polymer light tweaks
git-svn-id: https://svn.eduke32.com/eduke32@5477 1a8010ca-5511-0410-912e-c29ae57300e0
2015-12-23 04:05:31 +00:00
terminx 48254ccb3d Fix FIRELASER spawning multiple Polymer lights
git-svn-id: https://svn.eduke32.com/eduke32@5476 1a8010ca-5511-0410-912e-c29ae57300e0
2015-12-23 04:05:27 +00:00
terminx 3b47e9d652 Move vsync option to video setup
git-svn-id: https://svn.eduke32.com/eduke32@5475 1a8010ca-5511-0410-912e-c29ae57300e0
2015-12-23 04:05:21 +00:00
hendricks266 971d5b6fac Prune the dynamic tile name system in the same manner as sounds were pruned in the previous commit and r4748.
git-svn-id: https://svn.eduke32.com/eduke32@5474 1a8010ca-5511-0410-912e-c29ae57300e0
2015-12-20 05:19:11 +00:00
hendricks266 334c98c054 Remove the __STATIC macros of dynamic sounds pruned in r4748.
git-svn-id: https://svn.eduke32.com/eduke32@5473 1a8010ca-5511-0410-912e-c29ae57300e0
2015-12-20 05:19:08 +00:00
hendricks266 70d51ddf02 Remove three unused-in-the-source dynamic sound variables partially forgotten in r4748.
git-svn-id: https://svn.eduke32.com/eduke32@5472 1a8010ca-5511-0410-912e-c29ae57300e0
2015-12-20 05:19:05 +00:00
hendricks266 3473580f5f Menus: When RETURN is set to INT32_MIN in EVENT_CHANGEMENU, cancel any animations in addition to not changing the current menu.
git-svn-id: https://svn.eduke32.com/eduke32@5471 1a8010ca-5511-0410-912e-c29ae57300e0
2015-12-20 05:19:02 +00:00
hendricks266 1ea0796b43 Name map best time entries in the cfg by MD4 checksum instead of filename.
Existing filename-demarcated personal bests are still read as a fallback if an MD4 is not found, but only MD4 entries are written.

Fans of both Lunar Apocalypse and Nuclear Winter should sort out the MapTimes section of their cfg file manually.

git-svn-id: https://svn.eduke32.com/eduke32@5470 1a8010ca-5511-0410-912e-c29ae57300e0
2015-12-20 05:18:59 +00:00
hendricks266 a5367ed600 Fix two bugs in SCRIPT_GetNumber that cause it to issue an incorrect return value.
git-svn-id: https://svn.eduke32.com/eduke32@5469 1a8010ca-5511-0410-912e-c29ae57300e0
2015-12-20 05:18:56 +00:00
hendricks266 00bc250811 Duke3D: Add globalgameflag 4, DUKE3D_NO_PALETTE_CHANGES. This disallows the game from performing its usual modification to palette data after loading it, mainly the transparent color.
If you use this flag, make sure your transparent color it set exactly as you would like it to be used in cases like those presented in the previous commit.

git-svn-id: https://svn.eduke32.com/eduke32@5468 1a8010ca-5511-0410-912e-c29ae57300e0
2015-12-20 05:18:53 +00:00
hendricks266 1b8c79b0d8 Polymodes: In gloadtile_art, (1) get the current texel's index, (2) apply alpha if index == 255, (3) get the index by indexing into the specified palookup table, and then (4) apply fullbright considerations. Previously these tasks were performed in order 1432.
git-svn-id: https://svn.eduke32.com/eduke32@5467 1a8010ca-5511-0410-912e-c29ae57300e0
2015-12-20 05:18:47 +00:00
hendricks266 043656688f Add test cases for previous commit: transhacktest.map and .m32
git-svn-id: https://svn.eduke32.com/eduke32@5466 1a8010ca-5511-0410-912e-c29ae57300e0
2015-12-04 11:53:02 +00:00
hendricks266 38dfb0a2b2 Polymodes: Add a new pthtyp flag to mark textures that should not be processed by the fixtransparency() hack (which avoids the transparent color blending into a sprite when texture filtering is enabled), such as non-(T)ROR-masking floors and ceilings, white- and mask-walls, paper-skies, and rotatesprite with orientation flag 64. This commit makes sure the flag's status always fits the situation.
This fixes the remaining issue with WWII GI's LOGO.ANM: Color index #255 is used as the dominant white color (not as a transparent index) and fixtransparency() was mangling the image as a result.

git-svn-id: https://svn.eduke32.com/eduke32@5465 1a8010ca-5511-0410-912e-c29ae57300e0
2015-12-04 11:52:58 +00:00
hendricks266 56f331574d Polymost: Enumify the lower bits of the method/dameth argument to various functions.
git-svn-id: https://svn.eduke32.com/eduke32@5464 1a8010ca-5511-0410-912e-c29ae57300e0
2015-12-04 11:52:54 +00:00
hendricks266 0ddba3388f Factor out common handling of the end-of-level between sectors tagged 65535 and 65534, switches tagged 65535, and nukebuttons.
This fixes the bug with user maps ending in 65534-tagged sectors, reported by FistMarine: https://forums.duke4.net/topic/8367-end-of-level-bug/
It also eliminates dead code belonging to the nukebutton.

git-svn-id: https://svn.eduke32.com/eduke32@5463 1a8010ca-5511-0410-912e-c29ae57300e0
2015-12-04 11:52:51 +00:00
hendricks266 cbcef42656 Fix unused global variables in menus.c with DROIDMENU defined.
git-svn-id: https://svn.eduke32.com/eduke32@5462 1a8010ca-5511-0410-912e-c29ae57300e0
2015-12-04 11:52:47 +00:00
hendricks266 6a6bfc72fd Fix an unused variable in menus.c with USE_OPENGL=0.
git-svn-id: https://svn.eduke32.com/eduke32@5461 1a8010ca-5511-0410-912e-c29ae57300e0
2015-12-04 11:52:43 +00:00
hendricks266 4abd453bcf Fix orientation bit 64 when applied to a tile with fullbrights in OpenGL with r_fullbrights enabled.
This fixes (the most glaringly wrong problem) with WWII GI's LOGO.ANM in OpenGL, exposed by r5437.

git-svn-id: https://svn.eduke32.com/eduke32@5460 1a8010ca-5511-0410-912e-c29ae57300e0
2015-11-28 09:06:34 +00:00
hendricks266 38dd14b124 More NAM/WWII GI "bluefont" xbetween fixes missed in r5452.
git-svn-id: https://svn.eduke32.com/eduke32@5459 1a8010ca-5511-0410-912e-c29ae57300e0
2015-11-28 09:06:31 +00:00