Commit graph

3811 commits

Author SHA1 Message Date
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
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
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
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
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
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
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
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
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
hendricks266
27c646b5a7 Fix a compiler error on introduced in r5445.
git-svn-id: https://svn.eduke32.com/eduke32@5458 1a8010ca-5511-0410-912e-c29ae57300e0
2015-11-28 09:06:28 +00:00
hendricks266
33755d847b Fix typo in r5448.
git-svn-id: https://svn.eduke32.com/eduke32@5457 1a8010ca-5511-0410-912e-c29ae57300e0
2015-11-28 09:06:25 +00:00
hendricks266
a5ce52dc78 Fix compiler warnings when building for 32-bit.
git-svn-id: https://svn.eduke32.com/eduke32@5456 1a8010ca-5511-0410-912e-c29ae57300e0
2015-11-28 09:06:22 +00:00
hendricks266
aac7301af8 WWII GI: Use "GI2" as the cheat prefix instead of "WW2" because W conflicts with WSAD movement.
git-svn-id: https://svn.eduke32.com/eduke32@5455 1a8010ca-5511-0410-912e-c29ae57300e0
2015-11-28 09:06:17 +00:00
hendricks266
ff12dd11f4 Duke3D/Startup: Autodetect the installation path of the World War II GI release on Steam. Windows and Linux only for now, as there appears to be no OS X support.
git-svn-id: https://svn.eduke32.com/eduke32@5454 1a8010ca-5511-0410-912e-c29ae57300e0
2015-11-25 12:08:37 +00:00
hendricks266
0433d97a54 Implement WWII GI weapon display code.
Remaining issues with the weapons (both functionality and display):
- The "pistol", "shotgun", and "chaingun" fire too slowly.
- The flamethrower fires too quickly.
- The bazooka drop for reload is late.
- Upon starting a level, the "pistol" should show a reload frame, but it does not.

git-svn-id: https://svn.eduke32.com/eduke32@5453 1a8010ca-5511-0410-912e-c29ae57300e0
2015-11-25 12:08:34 +00:00
hendricks266
0fdeed231b Miscellaneous NAM and WWII GI tweaks/fixes.
Remaining issues:
- Inventory item gamefuncs still use their Duke 3D names. The buggy way custom gamefunc binds are saved and loaded needs to be addressed first.

git-svn-id: https://svn.eduke32.com/eduke32@5452 1a8010ca-5511-0410-912e-c29ae57300e0
2015-11-25 12:08:31 +00:00
hendricks266
4aae9378d0 Implement NAM and WWII GI's replacement cheats.
Whereas Duke starts cheats with DN, NAM starts with NVA and WWII GI starts with WW2. (Hackily: CheatKeys[] is still size 2, and the third character is at the start of every CheatString.)

The cheats hyper (NAM-only), coords, view, skill, weapons, and inventory were not originally present but since they work properly and this is EDuke32, I have re-added them. Non-working cheats are now disabled.

git-svn-id: https://svn.eduke32.com/eduke32@5451 1a8010ca-5511-0410-912e-c29ae57300e0
2015-11-25 12:08:28 +00:00
hendricks266
637f48e9ce Don't implicitly define GAMEFLAG_NAM for WWII GI. Instead, implement a new macro NAM_WW2GI synonymous with (NAM || WW2GI).
git-svn-id: https://svn.eduke32.com/eduke32@5450 1a8010ca-5511-0410-912e-c29ae57300e0
2015-11-25 12:08:24 +00:00
hendricks266
148927bb9d Restrict the right-edge widescreen clamping of the Pistol reload and Freezer to Duke Nukem 3D only: NAM and WWII GI don't need it.
git-svn-id: https://svn.eduke32.com/eduke32@5449 1a8010ca-5511-0410-912e-c29ae57300e0
2015-11-25 12:08:20 +00:00
hendricks266
90623c1f65 Duke3D/Startup: Instead of adding Megaton's music paths, don't remove the gameroot path and let my new S_OpenAudio take care of the SC-55 soundtrack.
git-svn-id: https://svn.eduke32.com/eduke32@5448 1a8010ca-5511-0410-912e-c29ae57300e0
2015-11-25 12:08:17 +00:00
hendricks266
f1a658e790 Duke3D/Startup: Clean up the Windows registry reading code.
There is no need to cache the result of a function called only once for each input.

git-svn-id: https://svn.eduke32.com/eduke32@5447 1a8010ca-5511-0410-912e-c29ae57300e0
2015-11-25 12:08:14 +00:00
hendricks266
6cb925a95d Duke3D/Sound: Add a hack to the previous commit so that Megaton's grabbag.voc will still upgrade to music/grabbag_voc.ogg, but its subway.voc will no longer upgrade to music/subway.ogg.
git-svn-id: https://svn.eduke32.com/eduke32@5446 1a8010ca-5511-0410-912e-c29ae57300e0
2015-11-25 12:08:10 +00:00
hendricks266
26aca9b291 Duke3D/Sound: Restructure S_OpenAudio to check in more paths. For each path, it performs the filename transformations and checks it does currently.
First, it will try the local path (as previously).
Second, it will check to see if the filename originally requested exists inside a GRP or SSI file (its parent), and if it does, it will check in "music/<parent's name sans extension>/".
Third, it will check in "music/".

Do not rely on this when distributing mods: These checks are hacks and may potentially be removed.

git-svn-id: https://svn.eduke32.com/eduke32@5445 1a8010ca-5511-0410-912e-c29ae57300e0
2015-11-25 12:08:07 +00:00
hendricks266
fcd7b2e0b1 Duke3D/Sound: Make kopen4loadfrommod a tail-call from S_UpgradeFormat, rename the function to S_OpenAudio, and replace 4x calls to one and then the other. No functional changes.
git-svn-id: https://svn.eduke32.com/eduke32@5444 1a8010ca-5511-0410-912e-c29ae57300e0
2015-11-25 12:08:04 +00:00
helixhorned
48e73c65df player.c: factor out large A_ShootWithZvel() block into A_ShootHardcoded()
The block is taken over verbatim; 'vec3_t srcvect' is passed by value.

The primary purpose of this is that it's easier to compare custom projectile
behavior in A_ShootCustom() with the hardcoded one by reading the code
of these two functions. For example, this may be of use to modders wishing
to emulate a hardcoded projectile.

DONT_BUILD.

git-svn-id: https://svn.eduke32.com/eduke32@5435 1a8010ca-5511-0410-912e-c29ae57300e0
2015-11-21 12:42:47 +00:00
helixhorned
6123d0b904 Mapster32: add byte array editorcolors[256] to m32script variables.
This makes it possible to set up editor colors at startup (from
m32_autoexec.cfg). For example:

 script_expertmode 1
 do for i range 256 ifge i 33 { set editorcolors[i] i }
 script_expertmode 0

Use this method in the description of how to get old-style 2D colors
in tiles.cfg and suggest an alternative color index pair.

git-svn-id: https://svn.eduke32.com/eduke32@5433 1a8010ca-5511-0410-912e-c29ae57300e0
2015-11-20 20:26:51 +00:00
helixhorned
56672fd5e2 Mapster32: make 'script_expertmode' require an argument (0 or 1) to toggle.
Without an argument, it prints the current state.

git-svn-id: https://svn.eduke32.com/eduke32@5432 1a8010ca-5511-0410-912e-c29ae57300e0
2015-11-20 20:26:49 +00:00
helixhorned
5aae37c4c5 Mapster32: changes to aid getting the old color scheme (by customizing).
- bump MAX_TILE_GROUP_ENTRIES to MAXUSERTILES
- in loadtilegroups(), only assign a tile color if it wasn't already
  assigned
- allow "hidden" tile groups by omitting the hotkey
- Tweak the description added to tiles.cfg

git-svn-id: https://svn.eduke32.com/eduke32@5430 1a8010ca-5511-0410-912e-c29ae57300e0
2015-11-14 23:41:00 +00:00
helixhorned
f8076f9207 Mapster32: honor "blocking color" declared with DEF 'spritecol' et al.
Meaning tilegroup's 'colors' directive.

Also, to the packaged tiles.cfg, add a description of how to emulate the
earlier Mapster32 sprite coloring for one tile group.

git-svn-id: https://svn.eduke32.com/eduke32@5429 1a8010ca-5511-0410-912e-c29ae57300e0
2015-11-14 23:40:59 +00:00
helixhorned
eb863ef1dc Mapster32: introduce DEF command "2dcolidxrange <col> <idx> <idxend>".
<col> is the editorcolor[] starting index
<idx> is the actual color index start
<idxend> is the actual color index end

So, editor colors from <col> onward will be mapped to
[<idx> .. min(<idxend>, 255)].

Takes precedence over '2dcol'.

git-svn-id: https://svn.eduke32.com/eduke32@5427 1a8010ca-5511-0410-912e-c29ae57300e0
2015-11-14 23:40:57 +00:00
helixhorned
5e61b28ebc Mapster32: in drawscreen_drawsprite(), "sprite[j]." -> "spr->".
Also a similar stylistic tweak in parsetilegroups().

git-svn-id: https://svn.eduke32.com/eduke32@5426 1a8010ca-5511-0410-912e-c29ae57300e0
2015-11-14 23:40:56 +00:00
helixhorned
22724d7841 Fix POLYMER=0 build. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5424 1a8010ca-5511-0410-912e-c29ae57300e0
2015-11-14 19:54:27 +00:00
helixhorned
d204b6df99 premap.c: on prelevel(), clear bits 16 and 32 of effector sprites.
git-svn-id: https://svn.eduke32.com/eduke32@5422 1a8010ca-5511-0410-912e-c29ae57300e0
2015-11-14 17:21:14 +00:00
helixhorned
51489e44d4 Mapster32: add var 'corruptcheck_game_duke3d' and enable by default.
Currently, this checks for effector sprites that are not face-aligned.
See
https://forums.duke4.net/topic/8324-icestation-colossus-map-broken

git-svn-id: https://svn.eduke32.com/eduke32@5420 1a8010ca-5511-0410-912e-c29ae57300e0
2015-11-14 17:21:11 +00:00
hendricks266
4ef39c8bb8 astub.c: Fix typos in console function definitions. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5418 1a8010ca-5511-0410-912e-c29ae57300e0
2015-11-02 17:07:50 +00:00
hendricks266
13c7b771a3 Use the script parser for names files instead of custom parsing. This allows names files to define labels as other labels.
git-svn-id: https://svn.eduke32.com/eduke32@5414 1a8010ca-5511-0410-912e-c29ae57300e0
2015-11-01 19:56:22 +00:00
helixhorned
d824ddf406 Mapster32: fix fillsector() calls before fade_editor_screen().
The latter allows one to specify a color to keep, but with r5302 the
fillsector() highlights are drawn with transparency, thus making it ineffective.
Add an argument to toggle transparency to fillsector()
(now fillsector_maybetrans()) and two wrapper functions.

git-svn-id: https://svn.eduke32.com/eduke32@5411 1a8010ca-5511-0410-912e-c29ae57300e0
2015-10-31 15:13:32 +00:00
terminx
b9802a79df Oops, forgot one. ;)
git-svn-id: https://svn.eduke32.com/eduke32@5409 1a8010ca-5511-0410-912e-c29ae57300e0
2015-10-24 00:35:19 +00:00
terminx
f5346f4732 Menu options to control Polymer light and shadow counts
git-svn-id: https://svn.eduke32.com/eduke32@5408 1a8010ca-5511-0410-912e-c29ae57300e0
2015-10-24 00:30:35 +00:00
terminx
f22dbc6fdb Add r_pr_lighting 2, which disables the hard-coded lights while leaving lights added in maps enabled.
This also adds a menu option to control r_pr_lighting.

git-svn-id: https://svn.eduke32.com/eduke32@5406 1a8010ca-5511-0410-912e-c29ae57300e0
2015-10-23 23:00:21 +00:00
terminx
e742b42ef9 Disable Polymer lights attached to hidden switches.
git-svn-id: https://svn.eduke32.com/eduke32@5404 1a8010ca-5511-0410-912e-c29ae57300e0
2015-10-23 23:00:13 +00:00
terminx
c57be0fbdd Don't spawn BLOODPOOL 256 units above the ground.
git-svn-id: https://svn.eduke32.com/eduke32@5402 1a8010ca-5511-0410-912e-c29ae57300e0
2015-10-23 23:00:06 +00:00
terminx
a2076027dd Fix errant use of tsprite extra field to check an enemy's health.
git-svn-id: https://svn.eduke32.com/eduke32@5401 1a8010ca-5511-0410-912e-c29ae57300e0
2015-10-23 23:00:02 +00:00
terminx
7eec6b36a5 Sprite sorting changes:
-Sort by owner now occurs only when two sprites have matching x/y coordinates.
-Cstat 1024 now activates a special drawing mode that indicates a sprite should be drawn without depth after all other sprites have been drawn. The previous cstat 1024 functionality, an internal hack for shadows cast by models in Polymost, has been moved to bit 1 of a new graphical effects bitfield stored in a tsprite's .extra member.

git-svn-id: https://svn.eduke32.com/eduke32@5400 1a8010ca-5511-0410-912e-c29ae57300e0
2015-10-21 19:54:14 +00:00
terminx
87c8e86d44 Improve the behavior of the BLOODSPLAT family of sprites. This improves the effect so that the blood doesn't stutter when it moves, and no longer occasionally appears to climb back up the wall for a fraction of a second.
git-svn-id: https://svn.eduke32.com/eduke32@5397 1a8010ca-5511-0410-912e-c29ae57300e0
2015-10-21 19:54:02 +00:00
terminx
3975df6d2d Fix SE17 warp elevator transition jumps.
git-svn-id: https://svn.eduke32.com/eduke32@5393 1a8010ca-5511-0410-912e-c29ae57300e0
2015-10-20 07:15:21 +00:00
terminx
72cea8b6b8 Fix up bloodsplat and decal positioning a bit. Nasty hacks removed. Yay.
git-svn-id: https://svn.eduke32.com/eduke32@5392 1a8010ca-5511-0410-912e-c29ae57300e0
2015-10-20 07:15:18 +00:00
terminx
a94a292820 Fix pathsearchmode in Mapster32 when using a .def which loads a .grp.
git-svn-id: https://svn.eduke32.com/eduke32@5389 1a8010ca-5511-0410-912e-c29ae57300e0
2015-10-20 07:15:08 +00:00
terminx
0f427b8ebd Set hit data on spawned decals
git-svn-id: https://svn.eduke32.com/eduke32@5388 1a8010ca-5511-0410-912e-c29ae57300e0
2015-10-20 07:15:05 +00:00
terminx
470449a963 Fix saving and loading crosshaircolor, and fix fps counter color when using a palette that doesn't correspond to Duke3D's color indexes.
git-svn-id: https://svn.eduke32.com/eduke32@5387 1a8010ca-5511-0410-912e-c29ae57300e0
2015-10-20 07:15:01 +00:00
hendricks266
d6f06b9123 OS X: Fix -Wdeprecated-declarations compiler warnings in the startup windows.
git-svn-id: https://svn.eduke32.com/eduke32@5380 1a8010ca-5511-0410-912e-c29ae57300e0
2015-10-10 06:57:46 +00:00
hendricks266
6f0b135140 Fix warning: explicitly assigning value of variable of type 'CACHE1D_FIND_REC *' (aka '_CACHE1D_FIND_REC *') to itself [-Wself-assign]
git-svn-id: https://svn.eduke32.com/eduke32@5378 1a8010ca-5511-0410-912e-c29ae57300e0
2015-10-10 06:57:38 +00:00
hendricks266
07a2ccd79b Duke: Add globalgameflag DUKE3D_NO_HARDCODED_FOGPALS, which prevents the game from automatically defining white, red, green, and blue fogpals in the first four adjacent empty palookup slots it finds.
git-svn-id: https://svn.eduke32.com/eduke32@5375 1a8010ca-5511-0410-912e-c29ae57300e0
2015-10-03 11:53:19 +00:00
hendricks266
9f1d12eb2c Add globalgameflags to Duke-Mapster32's game-side def parsing.
git-svn-id: https://svn.eduke32.com/eduke32@5374 1a8010ca-5511-0410-912e-c29ae57300e0
2015-10-03 11:53:16 +00:00
hendricks266
f232b2fa51 Move PaletteIndexFullbrights back into the engine and autodetect fullbrights instead of hardcoding them.
git-svn-id: https://svn.eduke32.com/eduke32@5373 1a8010ca-5511-0410-912e-c29ae57300e0
2015-10-03 11:53:13 +00:00
hendricks266
5f2b662c77 Split the getclosestcol functions into a new object, colmatch.
git-svn-id: https://svn.eduke32.com/eduke32@5359 1a8010ca-5511-0410-912e-c29ae57300e0
2015-09-27 21:17:59 +00:00
hendricks266
1e40b689b2 C-CON: Correct handling of size-zero gamearrays: Prevent a crash upon loading a savegame containing them, and allow resizearray to zero.
git-svn-id: https://svn.eduke32.com/eduke32@5355 1a8010ca-5511-0410-912e-c29ae57300e0
2015-09-24 06:31:55 +00:00
hendricks266
efe58c71f9 C-CON: Fix a harmless "Internal compiler error" warning when using quick structure access on userdef.
git-svn-id: https://svn.eduke32.com/eduke32@5354 1a8010ca-5511-0410-912e-c29ae57300e0
2015-09-24 06:31:52 +00:00
hendricks266
f69f1e73df CON: Add "defstate" token which functions identically as in M32script: synonymous with CON's "state" only at top-level (when defining a state). Useful for syntax highlighting.
git-svn-id: https://svn.eduke32.com/eduke32@5353 1a8010ca-5511-0410-912e-c29ae57300e0
2015-09-24 06:31:44 +00:00
hendricks266
a557eedf7e Remove NULL checks before calling free(): they are unnecessary as per the C standard. Other cleanup includes factoring code into DO_FREE_AND_NULL() macros.
git-svn-id: https://svn.eduke32.com/eduke32@5352 1a8010ca-5511-0410-912e-c29ae57300e0
2015-09-23 17:55:31 +00:00
hendricks266
064461a06f Internally, work with 24-bit palettes instead of 18-bit.
git-svn-id: https://svn.eduke32.com/eduke32@5349 1a8010ca-5511-0410-912e-c29ae57300e0
2015-09-23 17:55:11 +00:00
hendricks266
c0e7dba4c1 Restructure the basepaltable subsystem to support up to 256 palettes and use dynamic allocation like palookup and blendtable.
git-svn-id: https://svn.eduke32.com/eduke32@5348 1a8010ca-5511-0410-912e-c29ae57300e0
2015-09-23 17:55:02 +00:00
hendricks266
2a237a3d72 Don't error out when lookup.dat can't be read.
git-svn-id: https://svn.eduke32.com/eduke32@5347 1a8010ca-5511-0410-912e-c29ae57300e0
2015-09-23 17:54:55 +00:00
hendricks266
ce7a20d4f2 Restructure loadpalette() so that read errors are not immediately fatal and enforce that the necessary parts have been loaded in E_PostInit (after loaddefinitionsfile()).
git-svn-id: https://svn.eduke32.com/eduke32@5346 1a8010ca-5511-0410-912e-c29ae57300e0
2015-09-23 17:54:50 +00:00
hendricks266
43459780af Engine: Add E_PostInit, called from the game after loaddefinitionsfile().
git-svn-id: https://svn.eduke32.com/eduke32@5345 1a8010ca-5511-0410-912e-c29ae57300e0
2015-09-23 17:54:42 +00:00
helixhorned
5ea8625c37 Mapster32: call update_highlightsector() after 3D mode RCtrl+RAlt.
git-svn-id: https://svn.eduke32.com/eduke32@5343 1a8010ca-5511-0410-912e-c29ae57300e0
2015-09-08 17:54:32 +00:00
hendricks266
c82d98fc77 Update the precompiled Windows libraries: libogg 1.3.2, libvorbis 1.3.5
git-svn-id: https://svn.eduke32.com/eduke32@5342 1a8010ca-5511-0410-912e-c29ae57300e0
2015-09-08 02:58:10 +00:00
hendricks266
51059b3896 Reinstate the printing of quote 121 when DNKEYS is used.
git-svn-id: https://svn.eduke32.com/eduke32@5340 1a8010ca-5511-0410-912e-c29ae57300e0
2015-09-08 02:57:56 +00:00
helixhorned
1ea397d0b4 Mapster32: RCtrl+RAlt (+['] or [;]) selects sectors in 3D mode, by The Mechanic.
git-svn-id: https://svn.eduke32.com/eduke32@5339 1a8010ca-5511-0410-912e-c29ae57300e0
2015-09-05 08:30:59 +00:00
helixhorned
0943cd0e3f Mapster32: in manual member editing, Shift+ENTER allows toggling individual bits
For values that are displayed in hex.
Patch by The Mechanic, with modifications.

git-svn-id: https://svn.eduke32.com/eduke32@5338 1a8010ca-5511-0410-912e-c29ae57300e0
2015-08-30 07:24:53 +00:00
helixhorned
80aa6eca58 CON: amend action's viewtype -8 to be more in line with the others.
git-svn-id: https://svn.eduke32.com/eduke32@5337 1a8010ca-5511-0410-912e-c29ae57300e0
2015-08-29 17:43:42 +00:00
helixhorned
c1a54c60db CON: allow viewtype -8 for 'action', meaning to x-flip the shown sprite.
Similarly to how -5 and -7 and are accepted since r3859.

git-svn-id: https://svn.eduke32.com/eduke32@5335 1a8010ca-5511-0410-912e-c29ae57300e0
2015-08-29 10:21:52 +00:00
hendricks266
4ed33de69d Amend r5330.
git-svn-id: https://svn.eduke32.com/eduke32@5334 1a8010ca-5511-0410-912e-c29ae57300e0
2015-08-18 07:09:04 +00:00
hendricks266
c052540d42 Fix USE_OPENGL=0 build.
git-svn-id: https://svn.eduke32.com/eduke32@5332 1a8010ca-5511-0410-912e-c29ae57300e0
2015-08-15 21:28:49 +00:00
hendricks266
2303da6d7c Menus: Mostly revert r5326, and instead restrict the starting and stopping text input to touch devices where we need the on-screen keyboard to appear. This maintains the bugfix on targets with a physical keyboard.
git-svn-id: https://svn.eduke32.com/eduke32@5331 1a8010ca-5511-0410-912e-c29ae57300e0
2015-08-15 21:28:31 +00:00
hendricks266
bb4977cc9f Fix the Custom game content directory startup window option loading the folder alphabetically previous to the one selected when the "autoload" folder is present.
git-svn-id: https://svn.eduke32.com/eduke32@5330 1a8010ca-5511-0410-912e-c29ae57300e0
2015-08-15 21:28:17 +00:00
hendricks266
4360b89fb5 M32: Add EVENT_PREDRAW2DSCREEN.
git-svn-id: https://svn.eduke32.com/eduke32@5329 1a8010ca-5511-0410-912e-c29ae57300e0
2015-08-15 21:28:05 +00:00
hendricks266
8f82bc5239 KenBuild: Astyle and Uncrustify all source.
git-svn-id: https://svn.eduke32.com/eduke32@5327 1a8010ca-5511-0410-912e-c29ae57300e0
2015-08-15 21:27:27 +00:00
helixhorned
8fb903a83a Menus: don't enable/disable SDL text input.
At program start, text input is enabled anyway and it does not seem to have any
adverse effects. However, disabling it after e.g. game save leads to the OSD
not working properly any more: normal keys are passed via handleevent_pollsdl's
SDL_TEXTINPUT case.

git-svn-id: https://svn.eduke32.com/eduke32@5326 1a8010ca-5511-0410-912e-c29ae57300e0
2015-08-09 09:58:47 +00:00
helixhorned
9b68ee5693 Menus: don't repeat #ifdef/#endif for SDL_{Start,Stop}TextInput().
git-svn-id: https://svn.eduke32.com/eduke32@5325 1a8010ca-5511-0410-912e-c29ae57300e0
2015-08-09 09:58:46 +00:00
helixhorned
ae56faf0ad Lunatic: in test/helixspawner.lua, make COLOR a global variable. DONT_BUILD.
To demonstrate and test that it can be modified from outside, and that
these changes are kept with savegame restores.

git-svn-id: https://svn.eduke32.com/eduke32@5322 1a8010ca-5511-0410-912e-c29ae57300e0
2015-08-09 09:58:41 +00:00
helixhorned
e8623165a7 Mapster32: add config variable 'corruptcheck_heinum'.
With 3 modes:
 0: auto-correction and warning disabled
 1: auto-correction enabled (default, current behavior)
 2: auto-correction and warning enabled

git-svn-id: https://svn.eduke32.com/eduke32@5320 1a8010ca-5511-0410-912e-c29ae57300e0
2015-08-08 07:04:14 +00:00
helixhorned
212343b390 Game: make BOUNCEMINE spawn FRAMEEFFECT only if moving horizontally.
Also add "zshoot -4096 BOUNCEMINE" to lunatic/test/weaponvars.con
to demonstrate that bouncemines can be shot.

git-svn-id: https://svn.eduke32.com/eduke32@5319 1a8010ca-5511-0410-912e-c29ae57300e0
2015-08-08 07:04:11 +00:00
terminx
b8442f0b67 Revert r5316 which completely broke BOUNCEMINE.
git-svn-id: https://svn.eduke32.com/eduke32@5318 1a8010ca-5511-0410-912e-c29ae57300e0
2015-08-02 08:50:31 +00:00
helixhorned
3730901f43 Game: don't spawn FRAMEEFFECT1 for BOUNCEMINE.
There's no point, really. Since the bouncemine is immobile, the tsprites
will all be overlaid at one point and show the same picture, as far
as I can see. Worse, since r4876, the generated sprites may draw on top
of the actual one. The former have their shade always set to
sprite[t->owner].shade though, and will then appear fully bright (shade
-127, since BOUNCEMINE sets it like this).

This fixes issue number 4 from
http://forums.duke4.net/topic/8042-five-minor-problems-report/

git-svn-id: https://svn.eduke32.com/eduke32@5316 1a8010ca-5511-0410-912e-c29ae57300e0
2015-08-02 08:40:42 +00:00
helixhorned
91f09c76c5 Game: in DNCOORDS display, show x/y/z for VEL + ps->fric x and y components.
Also, prettify some ps->fric-related code. DONT_BUILD.

git-svn-id: https://svn.eduke32.com/eduke32@5313 1a8010ca-5511-0410-912e-c29ae57300e0
2015-07-25 19:42:54 +00:00
helixhorned
ff56964e1b Game: fix displayed viewscreen when its x/yrepeat isn't evenly divisible by 4.
git-svn-id: https://svn.eduke32.com/eduke32@5312 1a8010ca-5511-0410-912e-c29ae57300e0
2015-07-25 17:23:22 +00:00
helixhorned
73ca265137 Fix various, but not all warnings.
Except:
 - missing braces around initializer [-Wmissing-braces]: due to union-in-struct
   vec3f_t
 - comparison between signed and unsigned integer expressions [-Wsign-compare]:
   in polymer.c

git-svn-id: https://svn.eduke32.com/eduke32@5309 1a8010ca-5511-0410-912e-c29ae57300e0
2015-07-25 17:23:17 +00:00
terminx
6f9a9c94ec Mapster32: fix frame locking issue with 2d3d mode, crash when toggling bottom texture swap, issues with drawing certain types of walls.
git-svn-id: https://svn.eduke32.com/eduke32@5307 1a8010ca-5511-0410-912e-c29ae57300e0
2015-07-22 02:06:23 +00:00
terminx
e3f02e8dd5 Mapster32: fix unreadable status messages in 3d mode when working with a palette that doesn't align to Duke3d's color layout.
git-svn-id: https://svn.eduke32.com/eduke32@5304 1a8010ca-5511-0410-912e-c29ae57300e0
2015-07-20 20:25:21 +00:00
terminx
79ac071f5b Mapster32: change default 2d3d position to upper right corner, remove debug printf I accidentally committed.
git-svn-id: https://svn.eduke32.com/eduke32@5303 1a8010ca-5511-0410-912e-c29ae57300e0
2015-07-17 03:21:19 +00:00
terminx
480dc0ecaf Mapster32:
-Improved indication of selections in 2d mode. This includes both highlighted objects and multiple object selection.
-2d3d improvements: it's no longer possible to end up with a black view due to the z position being out of range when moving the cursor position to a new area with the right mouse button.
-The middle mouse button can now be used in place of the right alt key when selecting sectors, similar to how the left mouse button can be used in place of the right shift key to select points and sprites.
-2d mode mouse cursor has been changed to a 1 pixel thick red cross with a shadow instead of a 2 pixel thick red cross with no shadow. This improves visibility when working in textured mode with lava sectors and other textures similar in color.
-2d mode palette now changes when working in an underwater sector.
-Misc tweaks

git-svn-id: https://svn.eduke32.com/eduke32@5302 1a8010ca-5511-0410-912e-c29ae57300e0
2015-07-17 00:12:48 +00:00
terminx
c0aabb7494 Mapster32: don't warn about the map being corrupt if the only thing wrong with it is a sector ceilingheinum or floorheinum set without the corresponding bits to enable sloping set. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5301 1a8010ca-5511-0410-912e-c29ae57300e0
2015-07-17 00:12:43 +00:00
terminx
868afddbc3 Mapster32: further 2d mode performance improvements. Sprites are also now displayed with their xrepeat and yrepeat taken into account. It's not perfect yet... needs more "jiggery-pokery"
git-svn-id: https://svn.eduke32.com/eduke32@5293 1a8010ca-5511-0410-912e-c29ae57300e0
2015-07-11 23:07:47 +00:00
helixhorned
0419e64c0a Mapster32: fix a possible oob read via drawspritelabel; sanitize 2d3d mode.
That is, in m32_is2d3dmode(), also check if 2d and 3d mode resultions are
the same. Otherwise, oob writes (e.g. via tileinfo_doprint()) and other
thinkable niceties may ensue.

git-svn-id: https://svn.eduke32.com/eduke32@5291 1a8010ca-5511-0410-912e-c29ae57300e0
2015-07-11 14:13:04 +00:00
terminx
21e9125f2d Mapster32: 2d mode performance improvements
git-svn-id: https://svn.eduke32.com/eduke32@5290 1a8010ca-5511-0410-912e-c29ae57300e0
2015-07-10 21:19:41 +00:00
terminx
253f0b8771 Mapster32: improve 2d mode sprite label display. I want to test this further, so this is marked as DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5289 1a8010ca-5511-0410-912e-c29ae57300e0
2015-07-10 07:56:48 +00:00
terminx
3ff2e2155c A couple of Mapster32 tweaks to play nicer with different palettes.
git-svn-id: https://svn.eduke32.com/eduke32@5284 1a8010ca-5511-0410-912e-c29ae57300e0
2015-07-09 05:58:00 +00:00
terminx
f72dffce07 Mapster32 changes:
-2d mode sprite colors are now automatically generated from the sprite's 8-bit tile.
-Zooming in and out has been smoothed out.
-The 2d mode crosshair cursor is now 1px thick instead of 2.
-The left mouse button can now be used to select multiple wall points and sprites in 2d mode.
-Ctrl-x now skips corrupt maps instead of going into an infinite loop. ;)
-'-L function in 3d mode works again.
-Sprites with a clipdist that has been changed from the default value of 32 will display a circular approximation of the distance in 2d mode. Note that the real clipping distance is actually closer to a square, but a circle looks much less confusing/stupid alongside the display of floor sprites.
-2d mode status bar has been made a few shades lighter.

git-svn-id: https://svn.eduke32.com/eduke32@5282 1a8010ca-5511-0410-912e-c29ae57300e0
2015-07-08 03:34:46 +00:00
terminx
86f94d2897 New experimental Mapster32 hybrid 2D/3D mode feature. Pressing F10 in 2D mode enables a picture-in-picture 3D view in the corner of the screen. When moving the mouse over the 3D view, the controls change to 3D mode controls and all 3D mode operations can be performed. The 3D view can be resized with shift + F10 and can be moved to different positions by holding CTRL and using the arrow keys.
This commit also implements a much more useful automatic grid sizing feature and smooths out zooming in and out of the map.

git-svn-id: https://svn.eduke32.com/eduke32@5281 1a8010ca-5511-0410-912e-c29ae57300e0
2015-07-08 03:34:42 +00:00
terminx
d47187a92d Enable sector drawing and textured map in Mapster32 sideview mode with a sideview elevation of 512 (straight up and down).
git-svn-id: https://svn.eduke32.com/eduke32@5278 1a8010ca-5511-0410-912e-c29ae57300e0
2015-07-08 03:34:31 +00:00
terminx
311086da3e Minor Android changes. Barf. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5276 1a8010ca-5511-0410-912e-c29ae57300e0
2015-07-08 03:34:24 +00:00
terminx
a4032d234c Fix a bug where the editor was forced into game filesystem mode by default, and add a preference to mapster32.cfg to control the default filesystem mode.
git-svn-id: https://svn.eduke32.com/eduke32@5274 1a8010ca-5511-0410-912e-c29ae57300e0
2015-07-08 03:34:16 +00:00
terminx
bd427182db Prevent stack overflow when a grp configured via .grpinfo erroneously depends on itself. This should also be addressed in the .grpinfo parser, but this fixes it for now.
git-svn-id: https://svn.eduke32.com/eduke32@5273 1a8010ca-5511-0410-912e-c29ae57300e0
2015-07-08 03:34:13 +00:00
terminx
26933ecdc2 More audiolib cleanup, remove 8-bit output support.
git-svn-id: https://svn.eduke32.com/eduke32@5272 1a8010ca-5511-0410-912e-c29ae57300e0
2015-07-08 03:34:09 +00:00
terminx
08b101eaed Rework audiolib, interim commit before removing 8-bit output support. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5270 1a8010ca-5511-0410-912e-c29ae57300e0
2015-07-08 03:33:56 +00:00
helixhorned
f52923fb4d m32exec.c fix "multiple unsequenced modifications to 'insptr' [-Wunsequenced]".
git-svn-id: https://svn.eduke32.com/eduke32@5262 1a8010ca-5511-0410-912e-c29ae57300e0
2015-06-06 15:04:13 +00:00
terminx
b5c5611270 Fix crash when playing back an .ogg with comment metadata that doesn't contain "=".
git-svn-id: https://svn.eduke32.com/eduke32@5260 1a8010ca-5511-0410-912e-c29ae57300e0
2015-06-04 00:03:55 +00:00
hendricks266
ea82c1d897 Fix warning: narrowing conversion of 'img->vpx_image::d_w' and 'img->vpx_image::d_h' from 'unsigned int' to 'int32_t {aka int}' inside { } is ill-formed in C++11 [-Wnarrowing]
git-svn-id: https://svn.eduke32.com/eduke32@5257 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-27 08:48:07 +00:00
hendricks266
f33887b2f8 Convert multi-psky handling to use dynamically-allocated arrays.
git-svn-id: https://svn.eduke32.com/eduke32@5255 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-27 08:47:34 +00:00
hendricks266
b7b23310e3 Revert recent icon changes.
git-svn-id: https://svn.eduke32.com/eduke32@5253 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-27 08:46:44 +00:00
hendricks266
62d36cede8 Extend S_UpgradeFormat so that "filename.ext" first searches for "filename_ext.flac" and "filename_ext.ogg" before "filename.flac" and "filename.ogg".
This fixes DUKETEAM playing grabbag.ogg instead of grabbag_voc.ogg when Megaton paths have been detected.

git-svn-id: https://svn.eduke32.com/eduke32@5251 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-27 08:46:12 +00:00
hendricks266
25543b521b Add SFLAG_HURTSPAWNBLOOD, which allows actors (particularly useractor enemies) to spawn blood when hurt as hardcoded enemies do.
git-svn-id: https://svn.eduke32.com/eduke32@5250 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-27 08:45:59 +00:00
hendricks266
d04d31bd31 Set htg_t 6, 7, and 8 on GROWSPARK sprites upon shooting, as is done for all other hitscan projectiles.
git-svn-id: https://svn.eduke32.com/eduke32@5249 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-27 08:45:42 +00:00
hendricks266
ad94a8399c C-CON: Add userdef members "globalflags" and "globalgameflags", which control the values specified by the def commands of the same name.
git-svn-id: https://svn.eduke32.com/eduke32@5248 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-27 08:45:30 +00:00
terminx
8ad81e14ee r5238 build fix
git-svn-id: https://svn.eduke32.com/eduke32@5246 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-26 00:48:20 +00:00
terminx
a1b4d05c48 Minor internal CON changes.
git-svn-id: https://svn.eduke32.com/eduke32@5245 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-26 00:48:17 +00:00
terminx
eaa58d2071 Minor VPX playback optimization. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5244 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-26 00:48:13 +00:00
terminx
37bbdd500b Misc Android. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5242 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-26 00:48:07 +00:00
terminx
5064e8b8cd Make 'L' key toggle grid lock in 3D mode, because it affects placement of sprites inserted with 'S'.
git-svn-id: https://svn.eduke32.com/eduke32@5240 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-26 00:48:01 +00:00
terminx
54d016902f vec2_t rotatesprite, take 2
git-svn-id: https://svn.eduke32.com/eduke32@5239 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-26 00:47:54 +00:00
helixhorned
fe4db15536 C-CON: fix 'resizearray' after r4735: copy over old values, zero-init new ones.
Make lunatic/test/gamearray.con run in C-CON, too.

git-svn-id: https://svn.eduke32.com/eduke32@5238 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-25 18:58:31 +00:00
helixhorned
d27824ae3c LunaCON: fix negative alpha for 'rotatespritea'. BUILD_LUNATIC.
Conceptually, this amends r4428.

git-svn-id: https://svn.eduke32.com/eduke32@5237 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-25 12:57:52 +00:00
helixhorned
85be0bebec LunaCON: from 'definevolumename', make g_numVolumes be determined as in C-CON.
git-svn-id: https://svn.eduke32.com/eduke32@5236 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-25 12:57:51 +00:00
helixhorned
29dca07f0b CON: check EVENT_ENTERLEVEL for nonzero RETURN, run w/ other players then.
Background: AMC TC initializes per-player variables from this event.

git-svn-id: https://svn.eduke32.com/eduke32@5235 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-25 12:57:50 +00:00
helixhorned
1d11b6fdd6 Free alloc'd anims in h_dukeanim. Adds a function hash_loop().
git-svn-id: https://svn.eduke32.com/eduke32@5234 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-25 12:57:49 +00:00
helixhorned
9814e6a091 LunaCON: suffix gamearray file names with '.gar'.
git-svn-id: https://svn.eduke32.com/eduke32@5233 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-25 12:57:48 +00:00
helixhorned
40f177cafd LunaCON: expose g_tile[] members of 'tiledata'.
git-svn-id: https://svn.eduke32.com/eduke32@5232 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-25 12:57:47 +00:00
helixhorned
fd94930f14 LunaCON: implement 'clearmapstate', fix 'resetplayerflags' parsing.
git-svn-id: https://svn.eduke32.com/eduke32@5231 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-25 12:57:44 +00:00
hendricks266
7a89c58360 Re-expose clipmoveboxtracenum.
git-svn-id: https://svn.eduke32.com/eduke32@5229 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-19 22:11:02 +00:00
hendricks266
d8ee28b89d SW: Fix warning: array subscript is above array bounds [-Warray-bounds]
git-svn-id: https://svn.eduke32.com/eduke32@5228 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-19 22:10:37 +00:00
hendricks266
7f2a6a8404 SW: Fix warning: variable may be used uninitialized in this function [-Wmaybe-uninitialized]
git-svn-id: https://svn.eduke32.com/eduke32@5227 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-19 22:10:20 +00:00
hendricks266
221e58f8ad SW: Fix warning: type does not match original declaration [enabled by default]
git-svn-id: https://svn.eduke32.com/eduke32@5226 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-19 22:10:03 +00:00
hendricks266
41fcb1d32b SW: Replace calls to Error() with buildprintf().
git-svn-id: https://svn.eduke32.com/eduke32@5225 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-19 22:09:41 +00:00
hendricks266
4440fca632 SW: Update MFILE to use the same calls KenBuild uses to save.
git-svn-id: https://svn.eduke32.com/eduke32@5224 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-19 22:09:25 +00:00
hendricks266
033698eaa1 SW: Remove references to cachedebug and defaultspritecstat.
git-svn-id: https://svn.eduke32.com/eduke32@5223 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-19 22:09:07 +00:00
hendricks266
59686129bb SW: Fix warning: passing argument 1 of 'allocache' from incompatible pointer type [enabled by default] and warning: pointer targets in passing argument 3 of 'allocache' differ in signedness [-Wpointer-sign]
git-svn-id: https://svn.eduke32.com/eduke32@5222 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-19 22:08:48 +00:00
hendricks266
809b1e6f65 MACT: Fix warning: passing arguments 2 through 5 of 'SCRIPT_PutDoubleString' discards 'const' qualifier from pointer target type [enabled by default]
git-svn-id: https://svn.eduke32.com/eduke32@5221 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-19 22:08:28 +00:00
hendricks266
dd576b7319 SW: Remove redefinition of SEARCH_FLOOR and SEARCH_CEILING.
git-svn-id: https://svn.eduke32.com/eduke32@5220 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-19 22:08:13 +00:00
hendricks266
d1582b8d0f SW: Fix warning: comparison is always false due to limited range of data type [-Wtype-limits]
git-svn-id: https://svn.eduke32.com/eduke32@5219 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-19 22:07:54 +00:00
hendricks266
34aca8a222 SW: Fix warning: zero-length ms_printf format string [-Wformat-zero-length]
git-svn-id: https://svn.eduke32.com/eduke32@5218 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-19 22:07:34 +00:00
hendricks266
6b89b482b3 SW: Some GRP/def infrastructure.
git-svn-id: https://svn.eduke32.com/eduke32@5217 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-19 22:07:18 +00:00
hendricks266
0fc284d5bf SW: default_buildkeys
git-svn-id: https://svn.eduke32.com/eduke32@5216 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-19 22:06:54 +00:00
hendricks266
8b32035778 SW: Fix conflicting types for: highlight, temppicnum, tempcstat, templotag, temphitag, tempextra, ExtAnalyzeSprites, ExtPreSaveMap
git-svn-id: https://svn.eduke32.com/eduke32@5215 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-19 22:06:37 +00:00
hendricks266
90de898fe5 SW: Fix getnumber and printmessage in the editor.
git-svn-id: https://svn.eduke32.com/eduke32@5214 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-19 22:06:21 +00:00
hendricks266
792397feaa SW: Update the rest of the AudioLib API.
git-svn-id: https://svn.eduke32.com/eduke32@5213 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-19 22:06:04 +00:00
hendricks266
895e829411 SW: Rip out nonexistent calls to AudioLib CD playback functions.
git-svn-id: https://svn.eduke32.com/eduke32@5212 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-19 22:05:45 +00:00
hendricks266
93d6d61180 SW: Parallaxed skies.
git-svn-id: https://svn.eduke32.com/eduke32@5211 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-19 22:05:20 +00:00
hendricks266
91d6935c88 Add uint32_t PaletteIndexFullbrights[8] so that Polymost can respect the lack of fullbrights in KenBuild and Shadow Warrior.
git-svn-id: https://svn.eduke32.com/eduke32@5210 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-19 22:04:38 +00:00
hendricks266
8d78f25bc5 SW: Since sprite->filler is now fogpal, modify the CTF code that uses it to use a new variable in SW's USER struct instead.
git-svn-id: https://svn.eduke32.com/eduke32@5209 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-19 22:04:06 +00:00
hendricks266
6e8e49d17f SW: Modify the border-drawing code to work with our widescreen code.
git-svn-id: https://svn.eduke32.com/eduke32@5208 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-19 22:03:47 +00:00
hendricks266
6d0da8bb1a SW: automapping (deleted), visibility --> g_visibility, numpalookups --> numshades
git-svn-id: https://svn.eduke32.com/eduke32@5207 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-19 22:03:30 +00:00
hendricks266
1f59b4c23e SW: Update some API calls.
git-svn-id: https://svn.eduke32.com/eduke32@5206 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-19 22:03:04 +00:00
hendricks266
d5e8209f9d SW: Misc adjustments.
git-svn-id: https://svn.eduke32.com/eduke32@5205 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-19 22:02:47 +00:00
hendricks266
5256146f89 SW, KenBuild: tilesiz
git-svn-id: https://svn.eduke32.com/eduke32@5204 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-19 22:02:25 +00:00
hendricks266
908560f9aa SW: picanm_t
git-svn-id: https://svn.eduke32.com/eduke32@5203 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-19 22:01:44 +00:00
hendricks266
a97d9c5916 SW: hitscan
git-svn-id: https://svn.eduke32.com/eduke32@5202 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-19 22:01:22 +00:00
hendricks266
acba32caf4 SW: setsprite, setspritez, getzrange, clipmove, pushmove, neartag, dragpoint, screencapture, md_tilehasmodel, preparemirror, saveboard, loadboard, pos
git-svn-id: https://svn.eduke32.com/eduke32@5201 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-19 22:00:38 +00:00
hendricks266
56bdcdae7e SW: Rename SendMessage() to SW_SendMessage() and DELETE() to REMOVE() to avoid conflicts with Windows headers.
git-svn-id: https://svn.eduke32.com/eduke32@5200 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-19 21:59:39 +00:00
hendricks266
af0e6df762 SW: Remove references to files removed from our MACT.
git-svn-id: https://svn.eduke32.com/eduke32@5199 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-19 21:59:12 +00:00
hendricks266
fad3606c44 SW: Nuke mytypes.h. Mostly.
git-svn-id: https://svn.eduke32.com/eduke32@5198 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-19 21:58:29 +00:00
hendricks266
e9655f8469 Add SW to our build system and make relevant changes to avoid fatal build errors.
git-svn-id: https://svn.eduke32.com/eduke32@5197 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-19 21:56:03 +00:00
hendricks266
7493c36a94 Add the Shadow Warrior source to our tree after astyling, uncrustifying, and renaming one file.
git-svn-id: https://svn.eduke32.com/eduke32@5196 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-19 21:54:34 +00:00
helixhorned
ef25eb6329 LunaCON: implement NODEFAULT per-actor gamevars in the C-CON fashion.
For glocal gamevars, the LunaCON semantics (session gamevar) are kept.
For per-actor ones, this now prevents resetting a gamevar's value to
default on spawn or loadactor. BUILD_LUNATIC.

git-svn-id: https://svn.eduke32.com/eduke32@5194 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-16 14:27:03 +00:00
helixhorned
c3b3b376fa config.c: fix an overlapping strcpy() in CONFIG_SetMapBestTime().
git-svn-id: https://svn.eduke32.com/eduke32@5193 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-16 14:27:01 +00:00
helixhorned
dd2f06b869 LunaCON: allow writing -1 to player[].newowner.
For the other player members, where formerly negative values were allowed
to be written, only -1 is now.

git-svn-id: https://svn.eduke32.com/eduke32@5192 1a8010ca-5511-0410-912e-c29ae57300e0
2015-05-16 11:56:50 +00:00
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
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
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
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
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
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