Commit graph

5227 commits

Author SHA1 Message Date
helixhorned
1fc7e10843 savegame: fix g_tile[].proj memory leaks, halve number of projectile_t allocations.
git-svn-id: https://svn.eduke32.com/eduke32@5191 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-16 11:56:49 +00:00
helixhorned
80b766f13a When checking for SE7 water teleportation, regard sign of z velocity.
This fixes RPGs fired upwards at a steep angle teleporting immediately
to underwater when wading in water (reported via PM by Turok 64 Jr).

git-svn-id: https://svn.eduke32.com/eduke32@5190 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-16 11:56:47 +00:00
hendricks266
a979fa95a3 Merge glbuild_android into glbuild. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5189 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-16 09:12:12 +00:00
helixhorned
04cb60c790 Lunatic: account for the projectile changes in r5080. BUILD_LUNATIC.
The (undocumented) Lua-side API stays almost the same.

git-svn-id: https://svn.eduke32.com/eduke32@5188 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-14 12:18:47 +00:00
helixhorned
d30bb3835e LunaCON: allow ':' immediately after 'case' (legacy; warns), writing to ud.god.
Also, on one "gamevar `xxx' is not per-*" diagnostic, print the location of the
gamevar definition.

git-svn-id: https://svn.eduke32.com/eduke32@5187 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-14 12:18:46 +00:00
helixhorned
564e7d2332 Lunatic: fix build and user_defs definition mismatch.
Left: projectile changes.

git-svn-id: https://svn.eduke32.com/eduke32@5186 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-14 12:18:42 +00:00
hendricks266
178d9b1c58 Add more expansion GRPs to the detection list.
git-svn-id: https://svn.eduke32.com/eduke32@5185 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-13 08:57:27 +00:00
hendricks266
57e3dfb721 Add autodetection support for Duke 3D as part of the Steam release of the 3D Realms Anthology.
git-svn-id: https://svn.eduke32.com/eduke32@5184 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-13 08:57:11 +00:00
hendricks266
2ec4ce91b4 OS X: Fix startup window banner. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5183 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-12 23:23:39 +00:00
helixhorned
68f52a4257 Mapster32: honor r_usenewaspect, especially it being off.
For this, add a setaspect_new() setup/restore pair in M32_DrawRoomsAndMasks()
like for G_DrawRooms(). With this, changing viewingrange/aspect via m32script
(in a.m32: [7] -- [9] on the upper row) can only be done in r_usenewaspect 0,
though.

git-svn-id: https://svn.eduke32.com/eduke32@5182 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-10 10:55:30 +00:00
hendricks266
f186ecc58a Fix a typo in r5179.
git-svn-id: https://svn.eduke32.com/eduke32@5181 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-05 23:38:19 +00:00
hendricks266
bfc9941101 Defs: Add "artfile" token, which loads an ART file. You can use the "tile" sub-token to overwrite the starting tilenum of the file from def.
artfile { file "whatever.art" } // loads whatever.art just as if it had been named TILES020.ART
artfile { file "whatever.art" tile 2000 } // loads whatever.art starting at index 2000 instead of the tilestart value contained within it

This is useful because ART files will load faster than images loaded through tilefromtexture (which must undergo a color matching process), and because tiles making use of palette indices which have duplicate colors in the stock Duke 3D palette but not in other palettes (such as the 3D Realms screen) are negatively affected by the aforementioned process.

git-svn-id: https://svn.eduke32.com/eduke32@5180 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-03 07:05:35 +00:00
hendricks266
6091a842db Add support for ART files containing exactly one tile as an input format for hightile textures and model skins. They are rendered in the global game palette and function as conventional hightile.
git-svn-id: https://svn.eduke32.com/eduke32@5179 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-03 07:05:21 +00:00
hendricks266
8b7aa949dd Defs: Allow loading ART files as input to tilefromtexture. Note that they must contain exactly one tile; any more and the entire ART file will be rejected.
git-svn-id: https://svn.eduke32.com/eduke32@5178 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-03 07:05:04 +00:00
hendricks266
416ccc076c Restructure and expand some ART loading functionality in the engine.
git-svn-id: https://svn.eduke32.com/eduke32@5177 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-03 07:04:49 +00:00
hendricks266
f7c187875c Defs: Factor out dummytile creation code into E_CreateDummyTile and account for the case when a dummytile may be overwriting a faketile from tilefromtexture.
git-svn-id: https://svn.eduke32.com/eduke32@5176 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-03 07:04:31 +00:00
hendricks266
40c704babe Separate kpzload into two separate functions, kpzbufload (which now lives in cache1d, regardless of WITHKPLIB) and kpzdecode.
git-svn-id: https://svn.eduke32.com/eduke32@5175 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-03 07:04:11 +00:00
hendricks266
b3639ae8e7 Replace most instances of casting byte arrays to wider integral types with the B_(UN)BUF functions in compat.h that were previously used only in the netcode.
I have commented out the versions of these functions that perform bitmasks and shifts and replaced them with versions that cast to and from integral types, pending performance and compatibility research across platforms.

git-svn-id: https://svn.eduke32.com/eduke32@5174 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-03 07:03:48 +00:00
hendricks266
5c4622a8ab Replace the bswap function used in kplib with B_SWAP32, and merge the 32-bit MSVC and GCC assembly into compat.h.
TODO: Review the value of the continued use of special cases of these swap functions, including the OS-based variants for BSD and OS X, and this assembly.

git-svn-id: https://svn.eduke32.com/eduke32@5173 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-03 07:03:12 +00:00
hendricks266
f141cc71f2 kplib: Replace [LS]SWAPI[BL] macros with the B_(BIG|LITTLE)(16|32) ones defined in compat.h and used everywhere else.
git-svn-id: https://svn.eduke32.com/eduke32@5172 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-03 07:02:54 +00:00
hendricks266
bbc7e21f2d Fix typo "maxtileallocsiz" --> "maxtiltallocsiz" for MAXYDIM < 640.
git-svn-id: https://svn.eduke32.com/eduke32@5171 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-03 07:02:40 +00:00
hendricks266
87ee51a248 Menus: Call SDL_Start/StopTextInput() at the appropriate times so that touch devices display the on-screen keyboard when the user is prompted for text input.
git-svn-id: https://svn.eduke32.com/eduke32@5170 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-03 07:02:23 +00:00
hendricks266
d313e2531a Set up input so that the menus are navigable under iOS. This also enables the SELECTDIR back button unconditionally instead of restricting it to non-touch devices. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5169 1a8010ca-5511-0410-912e-c29ae57300e0
2015-04-28 21:30:42 +00:00
hendricks266
67cc5911fa Ensure that Objective-C compiler invocations include the C-only options that we specify, especially -std=gnu99. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5168 1a8010ca-5511-0410-912e-c29ae57300e0
2015-04-26 00:58:08 +00:00
hendricks266
4bf493c76b Don't use #pragma push_macro in buildtypes.h, for compatibility with GCC 4.2. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5167 1a8010ca-5511-0410-912e-c29ae57300e0
2015-04-26 00:45:55 +00:00
hendricks266
d11bf55a82 LunaCON: Expose all structs to inline access. Tiledata and paldata are still to-do.
DONT_BUILD.

git-svn-id: https://svn.eduke32.com/eduke32@5166 1a8010ca-5511-0410-912e-c29ae57300e0
2015-04-26 00:08:14 +00:00
hendricks266
5979378c4e CON: Add player[].index, which returns the player ID that you put in. Mostly useful to get the magic value of THISACTOR when applied to the player struct.
DONT_BUILD.

git-svn-id: https://svn.eduke32.com/eduke32@5165 1a8010ca-5511-0410-912e-c29ae57300e0
2015-04-26 00:07:57 +00:00
hendricks266
60106f1e37 Menus: When toggling Music in the Sound menu, respect the LOGO_PLAYMUSIC flag in LOGO_FLAGS for the main menu.
DONT_BUILD.

git-svn-id: https://svn.eduke32.com/eduke32@5164 1a8010ca-5511-0410-912e-c29ae57300e0
2015-04-24 00:10:00 +00:00
hendricks266
c47ebac6c1 AudioLib: When handling a LOOP_END tag in FLAC or Ogg, truncate any blocks that read past it so that the specified value is respected precisely, instead of rounding up to the nearest block size.
DONT_BUILD.

git-svn-id: https://svn.eduke32.com/eduke32@5163 1a8010ca-5511-0410-912e-c29ae57300e0
2015-04-24 00:09:42 +00:00
hendricks266
940bef522d AudioLib: malloc + memset to zero --> calloc
DONT_BUILD.

git-svn-id: https://svn.eduke32.com/eduke32@5162 1a8010ca-5511-0410-912e-c29ae57300e0
2015-04-24 00:09:19 +00:00
hendricks266
ce55b4a6fb Add game-side def "globalgameflags" that takes a single value. Flag 1 disables hardcoded pinning of HUD weapons to the side of the screen in widescreen.
DONT_BUILD.

git-svn-id: https://svn.eduke32.com/eduke32@5161 1a8010ca-5511-0410-912e-c29ae57300e0
2015-04-24 00:08:46 +00:00
helixhorned
5ae6253a30 Savegame: for non-user level, don't write garbage into h.boardfn, allow per-map ART.
git-svn-id: https://svn.eduke32.com/eduke32@5160 1a8010ca-5511-0410-912e-c29ae57300e0
2015-04-20 20:46:42 +00:00
helixhorned
5683beec3d Do "typedef projectile_t defaultprojectile_t;" instead of having an indetical-member type.
Move projectile_t to player.h.

git-svn-id: https://svn.eduke32.com/eduke32@5159 1a8010ca-5511-0410-912e-c29ae57300e0
2015-04-18 21:59:21 +00:00
helixhorned
d9c171d499 polymost.c: fix display of floor-aligned sprites ornameted to the ceiling.
git-svn-id: https://svn.eduke32.com/eduke32@5158 1a8010ca-5511-0410-912e-c29ae57300e0
2015-04-18 21:59:20 +00:00
helixhorned
77c5056f22 polymost.c: split three overlong lines into three each.
This was formerly "fix multi-tile ceiling skies.", but TX beat me to it
and Git automatically figured out how to merge while keeping a linear
history. (Our fixes were identical.) Nice!

git-svn-id: https://svn.eduke32.com/eduke32@5157 1a8010ca-5511-0410-912e-c29ae57300e0
2015-04-18 21:59:19 +00:00
helixhorned
474efef336 Double the size of clouds[] (holding sectors with CLOUDYSKIES ceilings).
Also, make cloudx[] and cloudy[] scalars, as the per-sector values were always
identical. In prelevel(), warn if some CLOUDYSKIES-ceiling sectors could not
be set up due to reaching the new 256 sector limit.

git-svn-id: https://svn.eduke32.com/eduke32@5156 1a8010ca-5511-0410-912e-c29ae57300e0
2015-04-18 21:59:18 +00:00
helixhorned
cf7de5b43a actors.c: fix 3 incorrect '/' -> tabledivide32_noinline rewrites in r4658.
Division has higher precedence than bitwise-OR.

The cases concerned SE3, SE4 and NEON* sprites.
Incidental info: the blinking of NEON* sprites can be controlled via their
lotag, similarly to how you how you give a "random flash number" as SE4 hitag.

git-svn-id: https://svn.eduke32.com/eduke32@5155 1a8010ca-5511-0410-912e-c29ae57300e0
2015-04-18 21:59:17 +00:00
terminx
53d2e0939e Revert "vec2_t rotatepoint()."
This reverts commit b0eeef385aecf9cea3ec2bd0ee82f59982942ce0.

git-svn-id: https://svn.eduke32.com/eduke32@5154 1a8010ca-5511-0410-912e-c29ae57300e0
2015-04-18 21:49:36 +00:00
terminx
d320ea6d70 Fix the sounds at the end of the episode 3 cutscene.
git-svn-id: https://svn.eduke32.com/eduke32@5153 1a8010ca-5511-0410-912e-c29ae57300e0
2015-04-18 21:37:13 +00:00
terminx
2a65ba123c Polymost parallax sky fix.
git-svn-id: https://svn.eduke32.com/eduke32@5152 1a8010ca-5511-0410-912e-c29ae57300e0
2015-04-18 21:37:10 +00:00
terminx
abc53d5006 Further constification. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5151 1a8010ca-5511-0410-912e-c29ae57300e0
2015-04-18 21:37:07 +00:00
terminx
ce5260e235 vec2_t rotatepoint().
git-svn-id: https://svn.eduke32.com/eduke32@5150 1a8010ca-5511-0410-912e-c29ae57300e0
2015-04-18 21:37:01 +00:00
hendricks266
bb4cdeb692 Make all the hictinting_apply blocks consistent. This should fix certain tints types being applied incorrectly in Polymer and the global tints (underwater and nightvision) not being applied to tints and models with certain flags.
git-svn-id: https://svn.eduke32.com/eduke32@5149 1a8010ca-5511-0410-912e-c29ae57300e0
2015-04-14 21:18:08 +00:00
hendricks266
3a26e5b241 Correct the HICTINT_GRAYSCALE calculation for hightile.
git-svn-id: https://svn.eduke32.com/eduke32@5148 1a8010ca-5511-0410-912e-c29ae57300e0
2015-04-14 21:17:52 +00:00
hendricks266
be29f098ab Complete the necessary infrastructure so that more than one precomputed tint on a hightile texture will display.
git-svn-id: https://svn.eduke32.com/eduke32@5147 1a8010ca-5511-0410-912e-c29ae57300e0
2015-04-14 21:17:36 +00:00
hendricks266
40d6aef7fc Tints: Add blending modes Screen, Overlay, and Hard Light, as opposed to the default Multiply. This value is encoded in bits 6 and 7 of the "flags" parameter. In other words, calculate your flags besides these modes, then bitwise OR the resulting value with:
0 - Multiply
64 - Screen
128 - Overlay
192 - Hard Light

Note: These will likely look terrible when combined with the Colorize flag, because of the nature of the Colorize flag.

git-svn-id: https://svn.eduke32.com/eduke32@5146 1a8010ca-5511-0410-912e-c29ae57300e0
2015-04-14 08:08:02 +00:00
hendricks266
09a26dc24f Account for HICTINT_GRAYSCALE, INVERT, and COLORIZE when applying a tint on 8-bit art.
git-svn-id: https://svn.eduke32.com/eduke32@5145 1a8010ca-5511-0410-912e-c29ae57300e0
2015-04-14 08:07:41 +00:00
hendricks266
71f576769b Apply HICTINT_APPLYOVERALTPAL where it should in texcache_fetch.
git-svn-id: https://svn.eduke32.com/eduke32@5144 1a8010ca-5511-0410-912e-c29ae57300e0
2015-04-14 08:07:23 +00:00
hendricks266
d4fb3dfe96 Eliminate a check that a model's sector's floorpal is nonzero before applying a tint.
git-svn-id: https://svn.eduke32.com/eduke32@5143 1a8010ca-5511-0410-912e-c29ae57300e0
2015-04-14 08:07:08 +00:00
hendricks266
68e4248cd2 Polymer: Account for HICTINT_APPLYOVERALTPAL and HICTINT_USEONART.
git-svn-id: https://svn.eduke32.com/eduke32@5142 1a8010ca-5511-0410-912e-c29ae57300e0
2015-04-14 08:06:51 +00:00
hendricks266
0d5b933bb3 Fix omission of modules when parsing game-side defs.
git-svn-id: https://svn.eduke32.com/eduke32@5141 1a8010ca-5511-0410-912e-c29ae57300e0
2015-04-12 08:07:59 +00:00
hendricks266
896ae2894c Implement "renamefile" during game-side def parsing (normally for "loadgrp" et al.) in addition to engine-side def parsing.
git-svn-id: https://svn.eduke32.com/eduke32@5140 1a8010ca-5511-0410-912e-c29ae57300e0
2015-04-12 08:07:45 +00:00
hendricks266
9a8941ef41 Defs: Add "copytile" token that allows you to copy existing 8-bit tiles from one slot to another, along with their x/yoffsets and flags. ART animation values are not copied.
Examples: (assuming stock Duke palswaps)
copytile 10000 { tile 0 } // tile #10000 is now the same as #0
copytile 10001 { tile 1 pal 8 } // tile #10001 is now #1 with a full-green tint
copytile 0 { pal 1 pal 23 } // tile #0 now has a full-yellow tint

git-svn-id: https://svn.eduke32.com/eduke32@5139 1a8010ca-5511-0410-912e-c29ae57300e0
2015-04-12 08:07:30 +00:00
hendricks266
f15199cb79 Instead of keeping the entire contents of ART files loaded from within zips in memory, assimilate them into tilefromtexture's compressed faketiledata.
This involves some refactoring.

git-svn-id: https://svn.eduke32.com/eduke32@5138 1a8010ca-5511-0410-912e-c29ae57300e0
2015-04-12 08:07:10 +00:00
hendricks266
c26149fd1f Defs: Expand use of check_tile().
git-svn-id: https://svn.eduke32.com/eduke32@5137 1a8010ca-5511-0410-912e-c29ae57300e0
2015-04-12 08:06:51 +00:00
hendricks266
5678b690a2 Fix an OOB in the cheats menu when running with the v0.99 GRP.
git-svn-id: https://svn.eduke32.com/eduke32@5136 1a8010ca-5511-0410-912e-c29ae57300e0
2015-04-12 08:06:37 +00:00
hendricks266
27e83829c9 Correct the month used in automatic names of savegames created by the "save" CON command.
git-svn-id: https://svn.eduke32.com/eduke32@5135 1a8010ca-5511-0410-912e-c29ae57300e0
2015-04-12 08:06:20 +00:00
helixhorned
8834dfbc7d SDL2: map SDL_SCANCODE_NONUSBACKSLASH to the same Build code as COMMA.
NONUSBACKSLASH is what is generated for the key between the LShift and 'Z'
here. The aliasing with the actual ',' key is as with the SDL1.2 build.
Fixes the issue reported in
http://forums.duke4.net/topic/8029-cant-bind-key-anymore/

git-svn-id: https://svn.eduke32.com/eduke32@5134 1a8010ca-5511-0410-912e-c29ae57300e0
2015-04-11 13:53:09 +00:00
helixhorned
52e2ff4be1 Makefile.common: for Clang, add -Wno-missing-braces.
Because we get spammed otherwise, regarding initializations of 'vec3f_t'
and 'vec3d_t' variables.
Update: actually, it also happens for GCC builds for me.

git-svn-id: https://svn.eduke32.com/eduke32@5133 1a8010ca-5511-0410-912e-c29ae57300e0
2015-04-11 13:53:08 +00:00
helixhorned
f74b38bcd8 Mapster32/C++ build/non-Lua: probably fix a crash in showsectordata().
Reported in
http://forums.duke4.net/topic/1348-mapster32-problems-and-bugs/page__view__findpost__p__220722
I could not reproduce it, but it is thinkable that 'searchsector' could have
been out-of-sync with the 'sectnum' local. (For example, the former one could
have been -1, triggering the crash.)

git-svn-id: https://svn.eduke32.com/eduke32@5132 1a8010ca-5511-0410-912e-c29ae57300e0
2015-04-11 13:53:07 +00:00
helixhorned
25402be9f2 Fix freeze on pitch 0 sound playback introduced in r4616.
Reported in
http://forums.duke4.net/topic/3857-the-crash-thread/page__view__findpost__p__220954

Now, PitchTable[] in initialized with the same values as pre-r4608.

git-svn-id: https://svn.eduke32.com/eduke32@5131 1a8010ca-5511-0410-912e-c29ae57300e0
2015-04-11 13:53:06 +00:00
helixhorned
ab2d73ce3d LunaCON: update docs and comments in lunatic/test/event_chaining.con
git-svn-id: https://svn.eduke32.com/eduke32@5130 1a8010ca-5511-0410-912e-c29ae57300e0
2015-04-11 13:53:05 +00:00
helixhorned
87cae94dab polymost.c: fix an out-of-bounds access in polymost_dorotatesprite().
To reproduce, lower the OSD, for example.

git-svn-id: https://svn.eduke32.com/eduke32@5129 1a8010ca-5511-0410-912e-c29ae57300e0
2015-04-11 13:53:04 +00:00
hendricks266
8d906d6d48 Amend previous commit.
git-svn-id: https://svn.eduke32.com/eduke32@5128 1a8010ca-5511-0410-912e-c29ae57300e0
2015-04-09 07:56:36 +00:00
hendricks266
1ab930ea28 Defs: Add "undefinetile" and "undefinetilerange".
git-svn-id: https://svn.eduke32.com/eduke32@5127 1a8010ca-5511-0410-912e-c29ae57300e0
2015-04-09 07:52:28 +00:00
hendricks266
e6f429e2ab Clear the player's quote timer for each MAIN_LOOP_RESTART.
git-svn-id: https://svn.eduke32.com/eduke32@5126 1a8010ca-5511-0410-912e-c29ae57300e0
2015-04-09 07:52:14 +00:00
hendricks266
4d3cbc64f1 Disallow "autoload" as a choice for the game dir in the Win32 startup window.
git-svn-id: https://svn.eduke32.com/eduke32@5125 1a8010ca-5511-0410-912e-c29ae57300e0
2015-04-09 07:52:01 +00:00
hendricks266
5c69ae7d11 Allow alpha fade-out for quotes and the menu mouse cursor in 8-bit when the supplied PALETTE.DAT has enough alpha tables to fully display each effect.
git-svn-id: https://svn.eduke32.com/eduke32@5124 1a8010ca-5511-0410-912e-c29ae57300e0
2015-04-09 07:51:48 +00:00
hendricks266
392094ee94 Menus: Modify slider bar so that it uses a scale defined in the data structure instead of auto-scaling to the height of the row.
git-svn-id: https://svn.eduke32.com/eduke32@5123 1a8010ca-5511-0410-912e-c29ae57300e0
2015-04-09 07:51:26 +00:00
hendricks266
9c89246f7e Menus: Remove all remaining TEXT_GAMETEXTNUMHACK.
git-svn-id: https://svn.eduke32.com/eduke32@5122 1a8010ca-5511-0410-912e-c29ae57300e0
2015-04-09 07:51:14 +00:00
hendricks266
4a5886f1b8 Menus: Rename "pickup messages" to "game messages".
git-svn-id: https://svn.eduke32.com/eduke32@5121 1a8010ca-5511-0410-912e-c29ae57300e0
2015-04-09 07:51:01 +00:00
hendricks266
8551ae6e22 In P_DisplayWeapon(), don't skip P_DisplaySpit() due to Fist/Knuckles/Tip/Access.
git-svn-id: https://svn.eduke32.com/eduke32@5120 1a8010ca-5511-0410-912e-c29ae57300e0
2015-04-09 07:50:44 +00:00
hendricks266
25dc8e2fc4 Build tools: Fix build. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5119 1a8010ca-5511-0410-912e-c29ae57300e0
2015-04-08 22:45:14 +00:00
hendricks266
c24e5f51cd Add events for the remaining player-related HUD display functions:
EVENT_DISPLAYSPIT - loogies from the SPIT projectile
EVENT_DISPLAYFIST - nukebutton fist (shrunk fists are part of EVENT_DISPLAYWEAPON)
EVENT_DISPLAYKNEE - pstomp knee (quick kick is part of EVENT_DISPLAYWEAPON)
EVENT_DISPLAYKNUCKLES - knuckle crack idle animation
EVENT_DISPLAYSCUBA - scuba gear
EVENT_DISPLAYTIP - tip hand
EVENT_DISPLAYACCESS - access cards / keycards

git-svn-id: https://svn.eduke32.com/eduke32@5118 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-30 05:57:30 +00:00
hendricks266
0b1d786f35 Move handling of ud.drawweapon from G_DrawWeaponTileWithID() to P_DisplayWeapon(). This fixes it not being applied to the quick kick and mighty foot.
git-svn-id: https://svn.eduke32.com/eduke32@5117 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-30 05:57:11 +00:00
hendricks266
48358dae19 Replace the use of an "snum" parameter in the screen display functions with screenpeek because we need to keep screenpeek accurate for CON anyway.
git-svn-id: https://svn.eduke32.com/eduke32@5116 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-30 05:56:52 +00:00
hendricks266
0bc349fde2 C-CON: Add two new structs, tiledata and paldata, accessible only through quick-access.
git-svn-id: https://svn.eduke32.com/eduke32@5115 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-30 05:56:37 +00:00
hendricks266
f68829c08a Don't print quotes when not in-game.
This is required after a change in the cheat menu commit that allows the cheat quotes to trigger from the in-game menu. However, a side-effect was that pressing F12 in the main menu would cause "SCREEN SAVED" to display indefinitely.

git-svn-id: https://svn.eduke32.com/eduke32@5114 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-30 05:56:20 +00:00
hendricks266
3a081603ae Prevent a crash in mdloadskin() caused by an oversight in r5107.
git-svn-id: https://svn.eduke32.com/eduke32@5113 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-30 05:56:06 +00:00
hendricks266
d5e3262a74 Avoid reading or writing savegame specdata arrays when the pointer to one is NULL or their count is zero.
git-svn-id: https://svn.eduke32.com/eduke32@5112 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-29 02:40:27 +00:00
hendricks266
9cf7da4366 Avoid triggering undefined behavior in the allocator when loading or saving ProjectileData[].
git-svn-id: https://svn.eduke32.com/eduke32@5111 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-29 02:40:15 +00:00
hendricks266
d49987d3cb C-CON: Add checks to prevent invalid reads/writes when using get/setprojectile on a tile number that does not have a projectile defined for it.
git-svn-id: https://svn.eduke32.com/eduke32@5110 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-29 02:40:03 +00:00
hendricks266
47ddef2521 Restore an insptr++ when executing "endswitch".
git-svn-id: https://svn.eduke32.com/eduke32@5109 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-29 02:39:49 +00:00
hendricks266
75801f2e68 Defs: Add token "forcefilter" to textures, skyboxes, and model skins. It forces the use of GL filtering for the resource in question.
git-svn-id: https://svn.eduke32.com/eduke32@5108 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-28 09:49:37 +00:00
hendricks266
8282a7e846 Defs: Add "nocompress" and "nodownsize" tokens to model skin definitions.
git-svn-id: https://svn.eduke32.com/eduke32@5107 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-28 09:49:11 +00:00
hendricks266
806bbe6d71 CON: Add projectile workslike flag PROJECTILE_NOSETOWNERSHADE = 0x00200000 = 2097152 that prevents actors from inheriting a projectile's shade when shooting it.
git-svn-id: https://svn.eduke32.com/eduke32@5106 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-28 09:48:51 +00:00
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
0c6de5da3a Re-apply r5053, which got lost in r5079.
git-svn-id: https://svn.eduke32.com/eduke32@5104 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-28 09:48:21 +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
5c5019d9d8 weapons.con.sample: Update to use the hudpal member so that fogpals and custom makepalookup definitions display properly.
git-svn-id: https://svn.eduke32.com/eduke32@5102 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-27 12:30:09 +00:00
hendricks266
f347a52e24 Defs: Add "nofloorpal <value>" to "makepalookup", which, when specified, allows you to set exactly the value of g_noFloorPal that you want.
git-svn-id: https://svn.eduke32.com/eduke32@5101 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-27 12:29:52 +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
terminx
e544488283 Fix Polymost issue reported at http://forums.duke4.net/topic/775-eduke32-20-and-polymer/page__view__findpost__p__220265
git-svn-id: https://svn.eduke32.com/eduke32@5095 1a8010ca-5511-0410-912e-c29ae57300e0
2015-03-26 21:42:19 +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