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