Commit Graph

2363 Commits

Author SHA1 Message Date
terminx 52dde4ef32 Rename Gv_SetVarX() to Gv_SetVar() (overloaded)
git-svn-id: https://svn.eduke32.com/eduke32@7653 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 09:38:41 +02:00
terminx 0ff1188b59 Rename Gv_GetVarX() to Gv_GetVar() (overloaded)
git-svn-id: https://svn.eduke32.com/eduke32@7652 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 09:38:38 +02:00
terminx a1556e9da7 Fix a bunch of boolean cvars that weren't flagged as CVAR_BOOL, preventing them from working with the "toggle" console command
git-svn-id: https://svn.eduke32.com/eduke32@7651 1a8010ca-5511-0410-912e-c29ae57300e0

# Conflicts:
#	source/build/src/polymost.cpp
2019-09-20 09:38:14 +02:00
Christoph Oelckers dcc3e2b94e - removed code duplication from last cherry-pick 2019-09-20 09:35:09 +02:00
terminx 410da8a085 Polymost shade table interpolation patch from Nuke.YKT
git-svn-id: https://svn.eduke32.com/eduke32@7650 1a8010ca-5511-0410-912e-c29ae57300e0

# Conflicts:
#	source/build/src/polymost.cpp
2019-09-20 09:32:22 +02:00
terminx 6db4ac3b01 const correctness that I didn't have another commit to squash into
git-svn-id: https://svn.eduke32.com/eduke32@7648 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 09:27:31 +02:00
terminx 0cbb1df2d1 Rename "loopcnt" to "vm_execution_depth" and CON_DIRECT_THREADING_DISPATCH to CON_USE_COMPUTED_GOTO
Also removes a redundant "break" statement in builds not using CON_USE_COMPUTED_GOTO.

git-svn-id: https://svn.eduke32.com/eduke32@7647 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 09:27:29 +02:00
terminx 058c1a8060 Simplify the beginning of VM_Execute()
This also moves the loop control stuff into #ifndef CON_DIRECT_THREADING_DISPATCH blocks, since we don't actually need a loop anymore when using the computed goto stuff.

git-svn-id: https://svn.eduke32.com/eduke32@7646 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 09:27:26 +02:00
terminx db8bcba93a Minor changes similar to the VM_Execute() maintenance commit
No user-facing changes.

git-svn-id: https://svn.eduke32.com/eduke32@7645 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 09:27:24 +02:00
terminx b854ddff41 Fix a potentially funny bug in the CON parser
I don't think anyone actually ran into this.

git-svn-id: https://svn.eduke32.com/eduke32@7644 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 09:27:21 +02:00
terminx 9ac1ce04d6 Simplify CON_FINDNEARACTOR family of functions and restore the original behavior of returning the nearest sprite instead of any sprite that satisfies the condition
git-svn-id: https://svn.eduke32.com/eduke32@7641 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 09:21:48 +02:00
terminx 271cdeaf5d Fix errant "continue" found remaining in the CON_FINDNEARACTOR family of functions
git-svn-id: https://svn.eduke32.com/eduke32@7640 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 09:21:46 +02:00
terminx 6a458273a0 Replace a handful of accesses to sprite[vm.spriteNum] with accesses to vm.pSprite
It looks like these were simply missed when vm.pSprite was initially added.

git-svn-id: https://svn.eduke32.com/eduke32@7639 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 09:21:44 +02:00
terminx d1af530b01 Add VM_ASSERT() macro for handling VM error conditions
This is for errors that simply check a condition (surrounded with EDUKE32_PREDICT_FALSE) and bail out with CON_ERRPRINTF() and abort_after_error(). Not everything that fits this description has been transitioned to use the new macro yet.

git-svn-id: https://svn.eduke32.com/eduke32@7638 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 09:21:41 +02:00
terminx f8fba45117 Tweak inlined VM_OnEvent() internals, biggest change being the removal of two instances of EDUKE32_PREDICT_FALSE
git-svn-id: https://svn.eduke32.com/eduke32@7637 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 09:21:39 +02:00
terminx 562e6f419c Use function overloading to clean up some of the CON event execution function names
git-svn-id: https://svn.eduke32.com/eduke32@7636 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 09:21:37 +02:00
terminx 078ef9b871 Optimize A_Execute() control flow
git-svn-id: https://svn.eduke32.com/eduke32@7635 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 09:21:35 +02:00
terminx de695f22bc Better VM_DummySprite()
git-svn-id: https://svn.eduke32.com/eduke32@7634 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 09:21:33 +02:00
terminx 3577d8a032 Clean up Lunatic stuff in VM_AlterAng()/VM_Move()/VM_UpdateAnim()/A_Execute()
git-svn-id: https://svn.eduke32.com/eduke32@7633 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 09:21:30 +02:00
terminx e2f43a59a7 Add EDUKE32_PREDICT_FALSE to EVENT_ANIMATESPRITES check in G_SaveMapState() and G_RestoreMapState()
git-svn-id: https://svn.eduke32.com/eduke32@7632 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 09:21:28 +02:00
terminx 92174a0cf9 Minor VM_Execute() maintenance
git-svn-id: https://svn.eduke32.com/eduke32@7631 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 09:21:26 +02:00
terminx 3db7512c69 Templatize bfirst_search_init() and bfirst_search_try() so they can be used with types other than int16_t
git-svn-id: https://svn.eduke32.com/eduke32@7629 1a8010ca-5511-0410-912e-c29ae57300e0

# Conflicts:
#	source/build/src/build.cpp
2019-09-20 09:20:14 +02:00
terminx 74c44125f8 This is more efficient
This commit brought to you by 4/20.

git-svn-id: https://svn.eduke32.com/eduke32@7628 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 09:19:42 +02:00
pogokeen 78d08b3ac2 engine.cpp: fix sprite sorting/adjustment issue introduced in r7612 that caused sprites with the same y value at the end of the sorted array to not be adjusted properly
git-svn-id: https://svn.eduke32.com/eduke32@7627 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 09:19:39 +02:00
pogokeen fc636b53ca polymost.cpp: Fix issue where state would not be reset properly in polymost_drawmaskwall() when rendering translucent maskwalls with no texture
git-svn-id: https://svn.eduke32.com/eduke32@7626 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 09:19:29 +02:00
pogokeen 40737f44cc polymost.cpp: fix polymost_dorotatesprite() alpha test/blend issue introduced in r7619
git-svn-id: https://svn.eduke32.com/eduke32@7625 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 09:19:27 +02:00
pogokeen 775a0de6c1 polymost.cpp: fix issue where floors & ceilings with DAMETH_MASKPROPS were not being blended
git-svn-id: https://svn.eduke32.com/eduke32@7624 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 09:19:25 +02:00
Christoph Oelckers 0254bf82d3 - added NBlood source. 2019-09-20 00:42:45 +02:00
Christoph Oelckers 23bc385393 - everything works again, some changes were apparently lost in the last merge. 2019-09-19 23:39:35 +02:00
Christoph Oelckers 8074d8251e - can be compiled again but crashes. 2019-09-19 23:02:57 +02:00
Christoph Oelckers dd7ce38cbb - adjustments for the Blood merge. 2019-09-19 22:26:44 +02:00
Christoph Oelckers 53335f20ec - Blood merge
# Conflicts:
#	source/build/include/polymost.h
#	source/build/src/build.cpp
#	source/build/src/engine.cpp
#	source/build/src/polymost.cpp
#	source/build/src/voxmodel.cpp
2019-09-19 22:06:49 +02:00
Christoph Oelckers 52edcc7e91 - adjustment to mact. 2019-09-19 20:32:35 +02:00
Christoph Oelckers c2e4a6cb64 - sound system additions from NBlood, except for the backing code for OPL playback. 2019-09-19 20:22:09 +02:00
pogokeen 5865d96306 engine.cpp: fix bug in killsprite where sprites were not being removed properly after sorting changes
git-svn-id: https://svn.eduke32.com/eduke32@7623 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 15:03:05 +02:00
pogokeen d2ebc8a29c Reduce state changes and fix translucent maskwall depth buffer issue
git-svn-id: https://svn.eduke32.com/eduke32@7619 1a8010ca-5511-0410-912e-c29ae57300e0

# Conflicts:
#	source/build/src/polymost.cpp
2019-09-19 15:01:13 +02:00
terminx be86eb779b This is a few less instructions
git-svn-id: https://svn.eduke32.com/eduke32@7618 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 15:00:57 +02:00
terminx 968ebdef84 Fix TROR clipping issue
git-svn-id: https://svn.eduke32.com/eduke32@7617 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 15:00:55 +02:00
pogokeen 2228af8658 Fix maskwall array indirection bug and two if conditional oversights from r7612
git-svn-id: https://svn.eduke32.com/eduke32@7615 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:58:14 +02:00
terminx aa4cfed3f1 Fix longstanding player hitscan and decal z coordinate offset bug
This one traces back to the original DOS code.

git-svn-id: https://svn.eduke32.com/eduke32@7614 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:58:12 +02:00
pogokeen 9534bb1578 polymost.cpp: switch from writing gl_FragColor to writing gl_FragData[0] in order to reduce VGPR usage on AMD cards
git-svn-id: https://svn.eduke32.com/eduke32@7613 1a8010ca-5511-0410-912e-c29ae57300e0

# Conflicts:
#	source/build/src/polymost.cpp
2019-09-19 14:58:09 +02:00
pogokeen 2765ebec87 Fix depth buffer issue causing translucent sprites to not render properly in Polymost.
Use polymost_spriteHasTranslucency() and polymost_maskWallHasTranslucency() to determine if a sprite has translucency.
Optimize sprite rendering when in Polymost by only sorting sprites with translucency.

git-svn-id: https://svn.eduke32.com/eduke32@7612 1a8010ca-5511-0410-912e-c29ae57300e0

# Conflicts:
#	source/build/src/polymost.cpp
2019-09-19 14:56:47 +02:00
terminx 61b3a65e79 Improve check_floor_curb()
This should fix several remaining clipping bugs.

git-svn-id: https://svn.eduke32.com/eduke32@7611 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:52:41 +02:00
terminx 12eb413f9c Fix SOS check in clipmove()
git-svn-id: https://svn.eduke32.com/eduke32@7610 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:52:40 +02:00
terminx 60ea578a8c Add support for returning the closest point in the sector to getsectordist()
git-svn-id: https://svn.eduke32.com/eduke32@7609 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:52:37 +02:00
terminx 8d85e8d934 Add new findwallbetweensectors() function and change sectoradjacent() to use it
git-svn-id: https://svn.eduke32.com/eduke32@7608 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:52:35 +02:00
terminx e25a197f3e Piddly fart bullshit changes that don't really do anything
git-svn-id: https://svn.eduke32.com/eduke32@7606 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:52:31 +02:00
terminx e9116bd23a Add SFLAG_QUEUEDFORDELETE, to handle detection and manipulation of things like decal sprites marked for deletion
git-svn-id: https://svn.eduke32.com/eduke32@7604 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:51:41 +02:00
terminx 301ac48ccd Utilize the types added in the previous commit
This patch is a bit large.

git-svn-id: https://svn.eduke32.com/eduke32@7603 1a8010ca-5511-0410-912e-c29ae57300e0

# Conflicts:
#	source/build/include/mdsprite.h
#	source/build/src/build.cpp
#	source/build/src/polymer.cpp
#	source/build/src/polymost.cpp
#	source/build/src/voxmodel.cpp
2019-09-19 14:46:31 +02:00
terminx 5948513d76 Introduce a few "new" types for convenience when dealing with pointers to sprites, walls, and sectors that bypass the StructTracker stuff
git-svn-id: https://svn.eduke32.com/eduke32@7602 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:37:07 +02:00
terminx ab857c4e8f This should fix updatesector/updatesectorz performance while retaining the benefits of breadth-first search
git-svn-id: https://svn.eduke32.com/eduke32@7601 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:37:06 +02:00
terminx a89c260592 Add optional output parameter to getwalldist(), to return the coordinates of the closest point on the wall
git-svn-id: https://svn.eduke32.com/eduke32@7600 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:37:04 +02:00
terminx 0dcceb9147 Fix EDUKE32_STANDALONE crash when calling G_DeleteOldSaves() at startup in debug builds
git-svn-id: https://svn.eduke32.com/eduke32@7599 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:37:03 +02:00
terminx 879cb550a6 Whitespace
git-svn-id: https://svn.eduke32.com/eduke32@7598 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:37:02 +02:00
terminx 5052addc67 Remove useless unused "sqr" function
git-svn-id: https://svn.eduke32.com/eduke32@7597 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:36:59 +02:00
terminx e35e516c02 Make editor no longer mask off sprite cstat bits when set from script
git-svn-id: https://svn.eduke32.com/eduke32@7596 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:36:58 +02:00
terminx 2d01182ef0 Update libdivide.h with a couple of fixes for obscure problems from their git repo
git-svn-id: https://svn.eduke32.com/eduke32@7595 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:36:56 +02:00
terminx 1fae340426 Fix a bunch of improperly defined bitmap arrays
git-svn-id: https://svn.eduke32.com/eduke32@7594 1a8010ca-5511-0410-912e-c29ae57300e0

# Conflicts:
#	source/build/src/build.cpp
2019-09-19 14:36:54 +02:00
terminx a628b8d9f7 Add bounds checking for renderSetTarget()
I'm not aware of this problem actually occurring anywhere, but too many consecutive calls to renderSetTarget() without the appropriate calls to renderRestoreTarget() between them would overflow 5 different arrays.

git-svn-id: https://svn.eduke32.com/eduke32@7593 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:36:44 +02:00
terminx 80d77f64cf This version of equation() compiles into fewer instructions
git-svn-id: https://svn.eduke32.com/eduke32@7592 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:36:42 +02:00
terminx 413d68f1f8 Replace yax_getclosestpointonwall() with getclosestpointonwall_internal() and use it in both yax_walldist() and getwalldist()
This commit also adds a getsectordist() but we aren't using it anywhere yet.

git-svn-id: https://svn.eduke32.com/eduke32@7591 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:36:40 +02:00
terminx ea826fb117 Move NEXTWALL and POINT2 macros into build.h
git-svn-id: https://svn.eduke32.com/eduke32@7590 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:30:26 +02:00
terminx 51e5e41830 Remove obsolete "msinttypes" headers
git-svn-id: https://svn.eduke32.com/eduke32@7589 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:30:24 +02:00
terminx e59f8e3b71 Use FORCE_INLINE and CONSTEXPR where appropriate in the Q16 fixed point math library
git-svn-id: https://svn.eduke32.com/eduke32@7588 1a8010ca-5511-0410-912e-c29ae57300e0

# Conflicts:
#	platform/Windows/build.vcxproj.filters
2019-09-19 14:30:22 +02:00
terminx e5bd221746 auto/const/constexpr bullshit
git-svn-id: https://svn.eduke32.com/eduke32@7587 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:26:49 +02:00
terminx f9e866d32d Rename clipwalldist() to getwalldist() and move both it and sectoradjacent() to engine.cpp
git-svn-id: https://svn.eduke32.com/eduke32@7586 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:26:48 +02:00
terminx bb517b73e3 clip.cpp usectortype cleanup
git-svn-id: https://svn.eduke32.com/eduke32@7585 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:26:45 +02:00
terminx d04c4203c5 Fix a really stupid bug in r7574
git-svn-id: https://svn.eduke32.com/eduke32@7584 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:26:43 +02:00
terminx 5a814eb261 Make getceilzofslopeptr/getflorzofslopeptr/getzsofslopeptr not invoke the structure trackers
git-svn-id: https://svn.eduke32.com/eduke32@7583 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:26:41 +02:00
terminx b46bc73322 Add a distance check to clipupdatesector() to prevent traversing through portals that are outside the wall distance passed to clipmove()
git-svn-id: https://svn.eduke32.com/eduke32@7582 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:26:40 +02:00
terminx 76d7fec2ff Expose yax_getclosestpointonwall() for use outside of engine.cpp
git-svn-id: https://svn.eduke32.com/eduke32@7581 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:26:38 +02:00
terminx e2be7183b4 Fix addclipsect() accidentally being nested under #ifdef HAVE_CLIPSHAPE_FEATURE
git-svn-id: https://svn.eduke32.com/eduke32@7580 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:26:36 +02:00
terminx e5c979c997 CON_UPDATESECTOR/CON_UPDATESECTORZ: only use sprite[vm.spriteNum].sectnum if the initial value of the input/output parameter is outside the range of 0 - MAXSECTORS-1
git-svn-id: https://svn.eduke32.com/eduke32@7579 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:26:34 +02:00
terminx a32597464f Use uwalltype in inside() to avoid invoking the struct trackers
git-svn-id: https://svn.eduke32.com/eduke32@7578 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:26:32 +02:00
terminx bcf8ae4d84 Revert "Clean up clip.cpp struct casting including but not limited to r7466 changes"
git-svn-id: https://svn.eduke32.com/eduke32@7577 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:26:30 +02:00
hendricks266 f96e1c8e24 Clean up clip.cpp struct casting including but not limited to r7466 changes
git-svn-id: https://svn.eduke32.com/eduke32@7576 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:26:29 +02:00
hendricks266 cd499b2089 Fix clipshape regression in r7466
git-svn-id: https://svn.eduke32.com/eduke32@7575 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:26:27 +02:00
terminx 9af816af52 Replace manual search of clipsectorlist[] in clipmove() and friends with a bitmap
git-svn-id: https://svn.eduke32.com/eduke32@7574 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:26:25 +02:00
terminx 74944c9ed0 Fix clipupdatesector()
git-svn-id: https://svn.eduke32.com/eduke32@7573 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:26:23 +02:00
terminx ad59875fa3 Improve warnings spewed by clipmove() when attempting to consider too many things for clipping
git-svn-id: https://svn.eduke32.com/eduke32@7572 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:26:21 +02:00
terminx 8a68bffdb0 Clean up clip.h and declare a bunch of stuff in clip.cpp static
git-svn-id: https://svn.eduke32.com/eduke32@7571 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:26:19 +02:00
terminx 7d0faa5752 Reduce MAXCLIPSECTORS to 512
git-svn-id: https://svn.eduke32.com/eduke32@7570 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:26:17 +02:00
terminx c754ac6e62 Limit lastwall() to 'numwalls' iterations instead of MAXWALLS
git-svn-id: https://svn.eduke32.com/eduke32@7569 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:26:15 +02:00
terminx c8eb1d0368 Simplify conditions in bfirst_search_try()
git-svn-id: https://svn.eduke32.com/eduke32@7568 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:26:14 +02:00
terminx b7d06c0bd8 clipmove/pushmove parameter const correctness
git-svn-id: https://svn.eduke32.com/eduke32@7567 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:26:12 +02:00
hendricks266 1ab7175c90 Duke: Fix -Wparentheses
git-svn-id: https://svn.eduke32.com/eduke32@7566 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:26:10 +02:00
hendricks266 30d4f29b42 SW, KenBuild: Populate the default resolution values from the current desktop settings
git-svn-id: https://svn.eduke32.com/eduke32@7563 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:23:37 +02:00
hendricks266 fdb5fabc86 SW: Fix -Waggressive-loop-optimizations
git-svn-id: https://svn.eduke32.com/eduke32@7562 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:23:36 +02:00
hendricks266 7ea2d2024b SW: Fix -Wrestrict
git-svn-id: https://svn.eduke32.com/eduke32@7561 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:23:35 +02:00
hendricks266 5aec94bd60 SW: Fix more -Wformat-overflow
git-svn-id: https://svn.eduke32.com/eduke32@7560 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:23:34 +02:00
hendricks266 0c7a7e1bd6 compat.h: Factor some repeated conditional_t statements into a new take_sign_t
git-svn-id: https://svn.eduke32.com/eduke32@7559 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:23:32 +02:00
hendricks266 0d277a6210 Fix newly exposed -Wtautological-constant-out-of-range-compare in kplib
git-svn-id: https://svn.eduke32.com/eduke32@7558 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:23:31 +02:00
hendricks266 fb0443db69 Replace `#if CXXSTD >= 2011 || EDUKE32_MSVC_PREREQ(1800)` with `#ifdef HAVE_CXX11_HEADERS`
git-svn-id: https://svn.eduke32.com/eduke32@7557 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:23:29 +02:00
hendricks266 0b14d8cdb5 SW: Fix -Wabsolute-value
git-svn-id: https://svn.eduke32.com/eduke32@7556 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:23:28 +02:00
hendricks266 392917d61f SW: Fix -Wpointer-bool-conversion
git-svn-id: https://svn.eduke32.com/eduke32@7555 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:23:27 +02:00
hendricks266 97e9f1ee75 SW: Fix -Warray-bounds
git-svn-id: https://svn.eduke32.com/eduke32@7554 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:23:26 +02:00
hendricks266 6c62f4e52d SW: Fix -Wformat-security
git-svn-id: https://svn.eduke32.com/eduke32@7553 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:23:25 +02:00
pogokeen 71847ec0f1 polymost.cpp: fix fragment shader issue where fullbrights in a texture could affect rendering when u_useColorOnly was enabled
git-svn-id: https://svn.eduke32.com/eduke32@7552 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:23:23 +02:00
terminx 84c43dc99c Fix warnings with TrackedType
git-svn-id: https://svn.eduke32.com/eduke32@7551 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:23:22 +02:00
terminx 030f0b7013 Fix crash when passing updatesectorz() an invalid sector number > numsectors and < MAXSECTORS
git-svn-id: https://svn.eduke32.com/eduke32@7549 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:20:53 +02:00
terminx e8a401759d Fix issue where "unbound" without a control name afterward would end up in settings.cfg when dealing with disabled gamefuncs
git-svn-id: https://svn.eduke32.com/eduke32@7548 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:20:51 +02:00
terminx 7e7b06a653 Fix issue with G hotkey in editor sound list (F2) where the input field value was clamped to the total number of defined sounds instead of the highest index a sound is defined at
git-svn-id: https://svn.eduke32.com/eduke32@7547 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:20:49 +02:00
terminx 7abfcd28be Add clipupdatesector(), a special version of updatesector() that only searches and returns results that are already in clipsectorlist[]
git-svn-id: https://svn.eduke32.com/eduke32@7546 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:20:47 +02:00
terminx 556d2ccd83 Fix TROR wall blocking issue
git-svn-id: https://svn.eduke32.com/eduke32@7545 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:20:44 +02:00
terminx 52ccd82c17 Fucking tabs
git-svn-id: https://svn.eduke32.com/eduke32@7544 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:20:42 +02:00
hendricks266 664c1ed38e Fix extern "C" error in kplib.h affecting the Build tools
git-svn-id: https://svn.eduke32.com/eduke32@7543 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:20:40 +02:00
Christoph Oelckers ea631cb6ac - fixed some warnings 2019-09-19 14:18:44 +02:00
hendricks266 b600d3ff56 SW: Take a crack at the editor's ExtPostStartupWindow
git-svn-id: https://svn.eduke32.com/eduke32@7539 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:06:22 +02:00
hendricks266 73e66e164a SW: Copy editor function stubs from KenBuild
git-svn-id: https://svn.eduke32.com/eduke32@7538 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:06:20 +02:00
hendricks266 36b75561cc Update some program names
git-svn-id: https://svn.eduke32.com/eduke32@7537 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:06:18 +02:00
hendricks266 07010b398a SW: Fix -Wlogical-op
git-svn-id: https://svn.eduke32.com/eduke32@7536 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:06:16 +02:00
hendricks266 54b7b27eb0 SW: Fix -Wsizeof-pointer-memaccess
git-svn-id: https://svn.eduke32.com/eduke32@7535 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:06:16 +02:00
hendricks266 d97f1ed79e SW: Fix -Wformat-overflow and -Wstringop-overflow
git-svn-id: https://svn.eduke32.com/eduke32@7534 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:06:14 +02:00
hendricks266 e4975c522b SW: Fix -Wimplicit-fallthrough
git-svn-id: https://svn.eduke32.com/eduke32@7533 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:06:13 +02:00
hendricks266 dc049cdf41 SW: Fix -Wmisleading-indentation
git-svn-id: https://svn.eduke32.com/eduke32@7532 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:06:11 +02:00
hendricks266 daa2e46b13 SW: Fix -Wint-to-pointer-cast
git-svn-id: https://svn.eduke32.com/eduke32@7531 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:06:09 +02:00
hendricks266 d14039e821 SW: Fix remaining -Wcast-qual warnings
git-svn-id: https://svn.eduke32.com/eduke32@7530 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:06:07 +02:00
hendricks266 068a254c52 SW: Fix hilarious -Wlogical-not-parentheses warning that accidentally worked as intended owing to numerical values of the MIRRORSTATE enum
git-svn-id: https://svn.eduke32.com/eduke32@7529 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:06:05 +02:00
hendricks266 963624735f SW: Fix -Wcast-qual in grpscan
git-svn-id: https://svn.eduke32.com/eduke32@7528 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:06:03 +02:00
hendricks266 c7a209f690 SW: Fix -Wnarrowing warning
git-svn-id: https://svn.eduke32.com/eduke32@7527 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:06:01 +02:00
hendricks266 c2921abe4a SW: Address -Woverflow warnings resulting from the struct tracker templates being too restrictive
git-svn-id: https://svn.eduke32.com/eduke32@7526 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:05:59 +02:00
hendricks266 7f3052c662 SW: More TrackerCast
git-svn-id: https://svn.eduke32.com/eduke32@7525 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:05:58 +02:00
hendricks266 bc96cd998d SW: Fix -Wnarrowing errors in grpscan
git-svn-id: https://svn.eduke32.com/eduke32@7524 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:05:56 +02:00
hendricks266 3d3348c2b8 SW: Fix -fpermissive function pointer type errors
git-svn-id: https://svn.eduke32.com/eduke32@7523 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:05:55 +02:00
hendricks266 b6c8147842 SW: #ifdef'd out supportdir and user_profiles_disabled stuff for now.
Patch from Striker.

git-svn-id: https://svn.eduke32.com/eduke32@7522 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:05:54 +02:00
hendricks266 6689bbd913 SW: Hacks to input code just to get it to compile.
Patch from Striker.

git-svn-id: https://svn.eduke32.com/eduke32@7521 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:05:53 +02:00
hendricks266 c36897e466 SW: Added dummy M32RunScript/G_Polymer_UnInit/app_crashhandler/osdcmd_restartvid calls.
Patch from Striker.

git-svn-id: https://svn.eduke32.com/eduke32@7520 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:05:51 +02:00
hendricks266 c0ad055f6d SW: Made a slight stylistic change to GetSyncInfoFromPacket declaration to match actual function.
Patch from Striker.

git-svn-id: https://svn.eduke32.com/eduke32@7519 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:05:49 +02:00
hendricks266 2ce5f1936f SW: Added 1.f to floating point volume parameter of FX_Play(3D) calls, will need a proper implementation at some point.
Patch from Striker.

git-svn-id: https://svn.eduke32.com/eduke32@7518 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:05:49 +02:00
hendricks266 8b3f6b55e3 Dummy functions for mmulti.h for now until OldMP's mmulti is ported
Patch from Striker.

git-svn-id: https://svn.eduke32.com/eduke32@7517 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:05:47 +02:00
hendricks266 d3c8c4579f SW: Put a temporary shim in to get the length of an anm file to pass to ANIM_LoadAnim.
Patch from Striker.

git-svn-id: https://svn.eduke32.com/eduke32@7516 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:05:46 +02:00
hendricks266 f4b3d57ddb Move structs out of animlib.cpp and into animlib.h.
Patch from Striker.

git-svn-id: https://svn.eduke32.com/eduke32@7515 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:05:44 +02:00
hendricks266 ee6326c2a0 SW: Get the log file working and avoid crashing due to not doing so
Patch from Striker.

git-svn-id: https://svn.eduke32.com/eduke32@7514 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:05:42 +02:00
hendricks266 2448bbe600 SW: Get grpscan.cpp compiling by fixing declaration and initialization of grpfiles/foundgrps
Patch from Striker.

git-svn-id: https://svn.eduke32.com/eduke32@7513 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:05:36 +02:00
hendricks266 a7facc0e35 SW: Fix overflow in password member of "GAME_SET gs" struct.
Patch from Striker.

git-svn-id: https://svn.eduke32.com/eduke32@7512 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:05:32 +02:00
hendricks266 d04df28a93 SW: Add includes of config.h where needed
Patch from Striker.

git-svn-id: https://svn.eduke32.com/eduke32@7511 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:05:30 +02:00
hendricks266 7991de2793 SW: Replace old crc32 functions with Bcrc32, mirroring how it's used in Duke's grpscan.cpp.
Patch from Striker.

git-svn-id: https://svn.eduke32.com/eduke32@7510 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:05:27 +02:00
hendricks266 b242259be1 SW: Update calls to functions that have been renamed.
Patch from Striker.

git-svn-id: https://svn.eduke32.com/eduke32@7509 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:05:25 +02:00
hendricks266 864ab5cac5 SW: Comment bad free calls to pointers that are never heap allocated.
Patch from Striker.

git-svn-id: https://svn.eduke32.com/eduke32@7508 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:05:21 +02:00
hendricks266 a60905524c SW: Replace void* with decltype(o) in TRAVERSE define.
Patch from Striker.

git-svn-id: https://svn.eduke32.com/eduke32@7507 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:05:18 +02:00
hendricks266 78df29ce00 SW: Make the function GetSyncInfoFromPacket in sync.cpp match the declaration in net.cpp. Fixed signed-ness of lumplockbyte to stop unresolved externals.
Patch from Striker.

git-svn-id: https://svn.eduke32.com/eduke32@7506 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:05:17 +02:00
hendricks266 8ab6e700f1 SW: Remove very bad externs.
Patch from Striker.

git-svn-id: https://svn.eduke32.com/eduke32@7505 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:05:14 +02:00
hendricks266 38e55f1a8b SW: Deal with how C++ does not implicitly convert enums to or from ints
Typedef Voc3D_Flags and Voc_Flags to int, and turn typedef'd enums into normal enums.

Patch from Striker.

git-svn-id: https://svn.eduke32.com/eduke32@7504 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:05:13 +02:00
hendricks266 f3a223914f SW: Add casts to void pointers where needed
Patch from Striker.

git-svn-id: https://svn.eduke32.com/eduke32@7503 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:05:12 +02:00
hendricks266 c456c414da SW: Fix questionable function pointer typecasts
Patch from Striker.

git-svn-id: https://svn.eduke32.com/eduke32@7502 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:05:09 +02:00
hendricks266 d842dc761d SW: Fix types of min/max statements
Patch from Striker.

git-svn-id: https://svn.eduke32.com/eduke32@7501 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:05:08 +02:00
hendricks266 28ec01ef75 SW: Add TrackerCast where needed for printf.
Patch from Striker.

git-svn-id: https://svn.eduke32.com/eduke32@7500 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:05:06 +02:00
hendricks266 61446c0995 SW: Fix const correctness issues.
Patch from Striker.

git-svn-id: https://svn.eduke32.com/eduke32@7499 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:05:04 +02:00
hendricks266 2081eff083 Patch from Nuke.YKT to fix TROR rendering in mirrors in Polymost
Includes "Fix screen tilt regression on mirror rendering"

git-svn-id: https://svn.eduke32.com/eduke32@7493 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 13:56:42 +02:00
hendricks266 eb5a90b1ef Patch from Nuke.YKT to fix a TROR in Polymost issue
Report by oasiz: It only occurs when you try to sandwich surfaces and kind of punch through. It seems similar to the kind of behavior that the pre-TROR fixes did (where you had to stand on the TROR sector for things to work). This seems to work if the weird wall is punching IN on your sector but not OUT to another.

git-svn-id: https://svn.eduke32.com/eduke32@7492 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 13:56:40 +02:00
hendricks266 23ba7b1550 Tiny performance cleanup in G_ShowView
git-svn-id: https://svn.eduke32.com/eduke32@7491 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 13:56:37 +02:00
terminx fd5ee7c561 Fix dumbass problem with r7463 that screwed up projectiles
git-svn-id: https://svn.eduke32.com/eduke32@7490 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 13:56:35 +02:00
terminx 91d8953420 Patch from Fox adding SFLAG_NOWATERSECTOR, to prevent certain sprites from moving into water
git-svn-id: https://svn.eduke32.com/eduke32@7489 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 13:56:33 +02:00
terminx 702241ab6d More player clipping fixes
git-svn-id: https://svn.eduke32.com/eduke32@7488 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 13:56:32 +02:00
terminx 303d0048ea We probably don't want to be bailing out here when handling a clipshape
git-svn-id: https://svn.eduke32.com/eduke32@7486 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 13:52:35 +02:00
terminx 5ac5a2ad3c Fix potential OOB memory access if the player's curr_weapon member is set out of range from CON
git-svn-id: https://svn.eduke32.com/eduke32@7485 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 13:52:34 +02:00
terminx 0edbd45145 Retire the original naive updatesector() and updatesectorz() in favor of the breadth-first versions
git-svn-id: https://svn.eduke32.com/eduke32@7484 1a8010ca-5511-0410-912e-c29ae57300e0

# Conflicts:
#	source/build/src/build.cpp
#	source/build/src/polymer.cpp
2019-09-19 13:52:32 +02:00
terminx 3c2ea5904a Fix player bumping their head on the ceiling during a jump... again...
git-svn-id: https://svn.eduke32.com/eduke32@7483 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 13:51:56 +02:00
terminx 2591c69b44 Add updatesectorbreadthz(), change pushmove() to use updatesectorbreadth(), and modify updatesectorbreadth() to include the early inside_p() return regular updatesector() has
git-svn-id: https://svn.eduke32.com/eduke32@7482 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 13:51:55 +02:00
terminx cf30c379a5 This seems to work a little better to allow the player to jump into places they expect to be able to jump into
git-svn-id: https://svn.eduke32.com/eduke32@7481 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 13:51:53 +02:00
terminx ae59a46c8b Use updatesectorbreadth() in clipmove()
git-svn-id: https://svn.eduke32.com/eduke32@7480 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 13:51:50 +02:00
terminx 8c6ddcc137 Minor cleanup for updatesectorbreadth()
git-svn-id: https://svn.eduke32.com/eduke32@7479 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 13:51:48 +02:00
terminx 631863ab67 const correctness for parameters passed to the updatesector family of functions
git-svn-id: https://svn.eduke32.com/eduke32@7478 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 13:51:46 +02:00
terminx f50ad3d424 Use bitmap manipulation functions for "bitptr"
git-svn-id: https://svn.eduke32.com/eduke32@7477 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 13:51:43 +02:00
terminx 83999ee6e4 Minor cleanup of breadth-first search functions
git-svn-id: https://svn.eduke32.com/eduke32@7476 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 13:51:41 +02:00
terminx 146fa7e79e Add simple bitmap manipulation functions
git-svn-id: https://svn.eduke32.com/eduke32@7475 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 13:51:39 +02:00
pogokeen 9b0573f0f2 engine.cpp: lintersect(): use klabs() instead of abs()
git-svn-id: https://svn.eduke32.com/eduke32@7474 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 13:51:37 +02:00
pogokeen 0bfde1c4d3 Fix issue where swingdoors would refuse to open or close if an enemy was in front of the door in an overlapping but unrelated/disjoint sector
git-svn-id: https://svn.eduke32.com/eduke32@7473 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 13:51:35 +02:00
pogokeen f7f62c4466 engine.cpp: lintersect(): fix integer overflow and negative case issue
git-svn-id: https://svn.eduke32.com/eduke32@7472 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 13:51:33 +02:00
pogokeen a82eb1d6fe Re-introduce earlier lintersect() work that was reverted.
engine.cpp/.h: clean up & fix lintersect().  Additionally, add support for finding intersections of collinear line segments.

This reverts r7290.

git-svn-id: https://svn.eduke32.com/eduke32@7471 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 13:51:32 +02:00
terminx 24f43fe5a1 Fix another clipping problem underwater
git-svn-id: https://svn.eduke32.com/eduke32@7470 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 13:24:44 +02:00
terminx b7160bf27c This is a better version of r7468
git-svn-id: https://svn.eduke32.com/eduke32@7469 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 13:24:38 +02:00
terminx 3926ae2d4f Fix underwater player clipping issue
git-svn-id: https://svn.eduke32.com/eduke32@7468 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 13:24:31 +02:00
terminx 1ea1f525d9 Fix editor clipping issue
git-svn-id: https://svn.eduke32.com/eduke32@7467 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 13:24:23 +02:00
terminx 25236d3d74 usectortype/uwalltype cleanup in clip.cpp
git-svn-id: https://svn.eduke32.com/eduke32@7466 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 13:24:17 +02:00
terminx 8cbada19cf Fix crash in editor tile selector
git-svn-id: https://svn.eduke32.com/eduke32@7465 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 13:24:10 +02:00
terminx c2e0000b11 Add bounds checking for populating clipsectorlist[], use preprocessor labels for sprite cstats
git-svn-id: https://svn.eduke32.com/eduke32@7464 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 13:24:04 +02:00
terminx 393e97beec Partially refactor clipmove()
git-svn-id: https://svn.eduke32.com/eduke32@7463 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 13:23:59 +02:00
terminx 57dce41ce9 The BUILD documentation says that pushmove() is supposed to be used to push players away from walls to avoid clipping problems, but Duke3D has never passed the correct parameters to pushmove()
This commit fixes that.

git-svn-id: https://svn.eduke32.com/eduke32@7462 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 13:23:53 +02:00
terminx b62fa1fa5c Fix stupid bug in r7409
git-svn-id: https://svn.eduke32.com/eduke32@7461 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 13:23:47 +02:00
terminx af3fb71b19 Improve player z clipping height detection
git-svn-id: https://svn.eduke32.com/eduke32@7460 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 13:23:42 +02:00
terminx ceaaaf9c0d Reduce MAXCLIPNUM to 2048 again and introduce MAXCLIPSECTORS, with a value of 1024
git-svn-id: https://svn.eduke32.com/eduke32@7459 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 13:23:36 +02:00
terminx ddd1d34973 clipmove() improvements
This reverts some of the previous clipmove() changes in favor of implementing explicit rejection of movement in cases where clipping has somehow failed.

git-svn-id: https://svn.eduke32.com/eduke32@7457 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 12:27:27 +02:00
terminx decce5bc70 Make updatesectorz() fall back to updatesector() in cases where it would have returned -1
Note that both functions will still return -1 when x or y coordinates are out of bounds.

git-svn-id: https://svn.eduke32.com/eduke32@7456 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 12:27:25 +02:00
terminx eac78ec995 This is just a little bit of work on making Ion Maiden run properly with regular EDuke32 binaries
git-svn-id: https://svn.eduke32.com/eduke32@7455 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 12:27:23 +02:00
terminx 5e0d63a100 Guard more Duke-specific behavior behind EDUKE32_STANDALONE
git-svn-id: https://svn.eduke32.com/eduke32@7454 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 12:27:20 +02:00
terminx 940822c776 Disable Duke3D-specific r_drawweapon behavior in standalone builds
git-svn-id: https://svn.eduke32.com/eduke32@7453 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 12:27:19 +02:00
terminx c8bd436cf8 Additional TROR patch from Nuke
git-svn-id: https://svn.eduke32.com/eduke32@7452 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 12:25:52 +02:00
terminx 66734e34bf Further clipmove() improvements to better deal with sector-over-sector
There's still something wrong here, but this at least fixes Duke3D E1L2.

git-svn-id: https://svn.eduke32.com/eduke32@7450 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 12:24:16 +02:00
terminx ba1dd663dd Fix Duke3D underwater movement speed
git-svn-id: https://svn.eduke32.com/eduke32@7449 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 12:24:14 +02:00
terminx b65bfefd0f Revert change to enemy step heights that wasn't working out
git-svn-id: https://svn.eduke32.com/eduke32@7448 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 12:24:13 +02:00
terminx 5986dbf6e1 Fix crash in situations where rendering a scene would overrun all of the MAXBUNCHES sized arrays in both classic and polymost
git-svn-id: https://svn.eduke32.com/eduke32@7447 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 12:24:11 +02:00
terminx 5fbc429503 Fix return types of osdcmd_dumpmapstate() and osdcmd_playerinfo()
git-svn-id: https://svn.eduke32.com/eduke32@7445 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 12:23:46 +02:00
terminx 36d848c09d Group stuff affected by NETCODE_DISABLE together in osdcmds.cpp--no functional changes
git-svn-id: https://svn.eduke32.com/eduke32@7444 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 12:23:45 +02:00
hendricks266 ac8dabb0fb Rename net.* to network.*
git-svn-id: https://svn.eduke32.com/eduke32@7443 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 12:20:45 +02:00
terminx 3b271fb7bb Fix issue where controls intentionally bound to no keys would be reset to default at startup
git-svn-id: https://svn.eduke32.com/eduke32@7442 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 12:14:50 +02:00
terminx fb36b256de Fix "spriteshadow" on voxels in Polymost
git-svn-id: https://svn.eduke32.com/eduke32@7441 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 12:14:48 +02:00
terminx 1a9944a260 Fix Duke's head bouncing off the ceiling when jumping
git-svn-id: https://svn.eduke32.com/eduke32@7439 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 12:14:29 +02:00
terminx e77332db32 Work around issue where player sticks to the ceiling after jumping
git-svn-id: https://svn.eduke32.com/eduke32@7438 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 12:14:28 +02:00
terminx 0b1c21d477 Bump MAXCLIPNUM to 3072 because IM was still hitting it with 2048
git-svn-id: https://svn.eduke32.com/eduke32@7437 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 12:14:27 +02:00
terminx d48ca24079 This should fix most of the remaining issues with projectiles colliding with ledges they shouldn't be hitting
git-svn-id: https://svn.eduke32.com/eduke32@7436 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 12:14:26 +02:00
terminx 37a8c98c2c Replace some individual assignments of structure members with whole structure assignments
git-svn-id: https://svn.eduke32.com/eduke32@7434 1a8010ca-5511-0410-912e-c29ae57300e0

# Conflicts:
#	source/build/src/polymost.cpp
2019-09-19 12:12:41 +02:00
terminx dba335c7dd Adjust projection matrix depending on SCISDIST
git-svn-id: https://svn.eduke32.com/eduke32@7432 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 12:09:13 +02:00
terminx 42363fd73a Replace hard-coded literal "777" for player crack_time member with preprocessor define
git-svn-id: https://svn.eduke32.com/eduke32@7430 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 12:06:41 +02:00
terminx c9719e4aa0 EDUKE32_STANDALONE stuff
git-svn-id: https://svn.eduke32.com/eduke32@7429 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 12:06:40 +02:00
terminx eb5cade7de Fix irritating Duke clipping bugs, including where the player walks up on to wall oriented sprites
This also fixes getting through floor gaps that are too small by pressing jump while holding crouch.

These changes are absolutely going to break certain maps, and cause new bugs, at which point additional required fixes will be made on a case-by-case basis.

git-svn-id: https://svn.eduke32.com/eduke32@7428 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 12:06:38 +02:00
terminx 3220b1e4f9 Hoist comparison of const variable outside of loop in getzrange()
git-svn-id: https://svn.eduke32.com/eduke32@7427 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 12:06:38 +02:00
Christoph Oelckers 95c9dba9df - deactivated the no-fog-calculation checks again.
The high level code should have no business deciding that - this must later be done in the backend.
Performance-wise this is really a non-issue so in the end this constitutes an optimization that only creates mess but np gain.
The commit was only cherry-picked for the remaining changes.
2019-09-19 12:04:06 +02:00
terminx 8a6ce26b57 Don't bother with fog calculations for things without hightile replacements
git-svn-id: https://svn.eduke32.com/eduke32@7424 1a8010ca-5511-0410-912e-c29ae57300e0

# Conflicts:
#	source/build/src/polymer.cpp
2019-09-19 11:56:04 +02:00
terminx bafc3b45a2 Fix "findnearactor" family of CON functions
git-svn-id: https://svn.eduke32.com/eduke32@7423 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 11:49:00 +02:00
terminx 35efbccfa3 Fix r_polygonmode cvar
git-svn-id: https://svn.eduke32.com/eduke32@7422 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 11:48:58 +02:00
terminx bf7ee94a2d Clean up polymost.cpp includes
git-svn-id: https://svn.eduke32.com/eduke32@7421 1a8010ca-5511-0410-912e-c29ae57300e0

# Conflicts:
#	source/build/src/polymost.cpp
2019-09-19 11:48:56 +02:00
Christoph Oelckers e1e8b835db - make it compile again. 2019-09-19 11:43:11 +02:00
Christoph Oelckers 8f6f979fa5 - do not force the tile shades mode for now without re_adding the removed variable.
Much of this needs to be abstracted out but until that part is done this still needs to work properly.
2019-09-19 11:02:05 +02:00
terminx a5965e2562 Remove r_usetileshades--GLOBAL_NO_GL_TILESHADES flag for DN64 not affected
This also locks the texture filtering options in the menu behind ifdef guards until they're fixed.

git-svn-id: https://svn.eduke32.com/eduke32@7420 1a8010ca-5511-0410-912e-c29ae57300e0

# Conflicts:
#	source/build/src/polymost.cpp
#	source/duke3d/src/menus.cpp
2019-09-19 10:50:18 +02:00
Christoph Oelckers 0168b9ddf2 - fix RedNukem input. 2019-09-19 01:10:07 +02:00
Christoph Oelckers 412f3a0b32 - proper npot checks for RedNukem's sky calculations. 2019-09-19 00:37:12 +02:00
Christoph Oelckers 588fbc26f9 - added RedNukem project. 2019-09-19 00:27:46 +02:00
Christoph Oelckers 51dc82b6a6 - merged in the changes RedNukem made to the Build code. 2019-09-19 00:19:02 +02:00
Christoph Oelckers 3a90d21661 - consolidated the redundant texture coordinates.
They were all the same, so no point recalculating them, the copies weren't even correct.
2019-09-19 00:06:12 +02:00
Christoph Oelckers 30dac6be74 - deleted the tilepacker. 2019-09-18 22:16:56 +02:00
Christoph Oelckers e0f823a492 - refactored texture setup to use an intermediate layer. 2019-09-18 22:16:15 +02:00
Christoph Oelckers 155f093bd5 - stuff 2019-09-17 20:57:45 +02:00
Christoph Oelckers 13832eebc2 - removed assembly files. 2019-09-17 20:22:12 +02:00
Christoph Oelckers 1ad3b39e70 - removed the editor code. 2019-09-17 20:19:11 +02:00
Christoph Oelckers d63cf04e06 - removed the compressed texture cache.
This is a pointless relic from the past and makes zero sense with modern graphics hardware.
2019-09-17 20:18:18 +02:00
Christoph Oelckers b1763a8f4a - hooked up the texture management.
Not in active use yet!
2019-09-17 19:03:42 +02:00
Christoph Oelckers 2b439ae181 - work on backend 2019-09-16 23:28:26 +02:00
Christoph Oelckers 9edf6be10d - texture sampler class added, not used yet. 2019-09-16 22:56:48 +02:00
Christoph Oelckers cb2e2cc222 - count correctly. 2019-09-16 22:14:44 +02:00
Christoph Oelckers 0359602159 - some missed parts. 2019-09-16 21:27:07 +02:00
Christoph Oelckers 6536d910b3 - all drawing is being routed through the interface layer, all vertex buffers are gone.
No big loss here, none of them made much sense performance wise.
2019-09-16 21:08:42 +02:00
Christoph Oelckers 318009fd69 - added a centralized drawer and converted the main geometry drawer to use it. 2019-09-16 19:35:04 +02:00
Christoph Oelckers 2a20eb9287 - deleted vertex buffer drawing and used immediate mode instead.
This served no benefit and made cleanup harder than necessary.
2019-09-16 18:12:16 +02:00
Christoph Oelckers 20ab1289fd - deletion of unused code. 2019-09-16 18:10:28 +02:00
Christoph Oelckers d2e34ef18e - this time the texture upload is working. 2019-09-16 18:00:19 +02:00
Christoph Oelckers b7816e2dfb - use full GL 4.6 API. 2019-09-16 17:52:14 +02:00
Christoph Oelckers a85f9f4848 - this is good enough. 2019-09-13 22:27:20 +02:00
Christoph Oelckers 524f6cf5e5 - crap 2019-09-13 22:18:37 +02:00
Christoph Oelckers aecdd9b4c5 - this is the state I want to build. 2019-09-13 21:43:05 +02:00
terminx 21217585c9 Fix crash when starting E2L1
git-svn-id: https://svn.eduke32.com/eduke32@7440 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-13 00:51:02 +02:00
terminx d869e612e4 Fix stupid typo in hardcoded Duke3D actor
git-svn-id: https://svn.eduke32.com/eduke32@7426 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-13 00:51:02 +02:00
terminx 120332c562 Fix hang when setting r_maxfps to 0 while r_maxfpsoffset is a negative value
git-svn-id: https://svn.eduke32.com/eduke32@7425 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-13 00:51:02 +02:00
terminx 4506b8490f Minor cleanup of some Polymost shader program support functions
git-svn-id: https://svn.eduke32.com/eduke32@7419 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-19 17:09:06 +00:00
terminx ff8e54432b "This adds masked texture rendering support for slopes in classic renderer"
git-svn-id: https://svn.eduke32.com/eduke32@7418 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-19 17:09:03 +00:00
terminx 7ccbd22013 Move some clipping related stuff out of engine.cpp and into clip.cpp
git-svn-id: https://svn.eduke32.com/eduke32@7417 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-19 17:08:59 +00:00
terminx 95fa4e04f9 Allow lowering fov to 60 from the console
git-svn-id: https://svn.eduke32.com/eduke32@7416 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-19 17:08:54 +00:00
terminx 483fbe4cd6 Polymost sky Z buffer hack from Nuke.YKT
git-svn-id: https://svn.eduke32.com/eduke32@7415 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-19 17:08:51 +00:00
terminx 4522a8902b Limit Polymost tile sheet size to 8192 when building with MSVC
git-svn-id: https://svn.eduke32.com/eduke32@7414 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-19 17:08:47 +00:00
terminx 5e97fc5f51 Polymost NPOT texture patch from Nuke.YKT
git-svn-id: https://svn.eduke32.com/eduke32@7413 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-19 17:08:43 +00:00
terminx 25cd73d99a Patch from Nuke.YKT to use the shade tables for distance shading in Polymost
This makes the shading in Polymost more or less 1:1 with classic mode.

git-svn-id: https://svn.eduke32.com/eduke32@7412 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-19 17:08:39 +00:00
terminx 1a0ee0f4c3 Polymost relative texture alignment patch from Nuke
This "fixes" relative texture alignment for floors and ceilings in Polymost to match classic mode. "Fix" is in quotes because this actually means the alignment is less correct in terms of proper scaling than before, but more correct in terms of accuracy to classic mode.

git-svn-id: https://svn.eduke32.com/eduke32@7411 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-19 17:08:35 +00:00
terminx b819b298ee ifdef EDUKE32_STANDALONE something for hardcoded Duke projectiles
git-svn-id: https://svn.eduke32.com/eduke32@7410 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-19 17:08:31 +00:00
terminx da6b01bf8e Improve collision for projectiles
This does a few things:

-projectiles now use clipmovex() instead of clipmove() (this is like CON_CLIPMOVENOSLIDE)
-the z distances passed to clipmove() are now calculated from the sprite's size instead of being hard-coded
-projectiles now move as if they had SFLAG_NOCLIP applied for the first tic after spawning

git-svn-id: https://svn.eduke32.com/eduke32@7409 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-19 17:08:27 +00:00
terminx b61027086c Fix Polymost HOM
git-svn-id: https://svn.eduke32.com/eduke32@7408 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-19 17:08:23 +00:00
terminx 2ec041b10e Use correct type in range-based loop
git-svn-id: https://svn.eduke32.com/eduke32@7407 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-19 17:08:19 +00:00
terminx c7f003a1a9 Remove a couple of blocks in A_MoveSpriteClipdist() from standalone builds and call setsprite() unconditionally before doing any movement
git-svn-id: https://svn.eduke32.com/eduke32@7406 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-19 17:08:16 +00:00
terminx 798eaeb980 Allow passing a null pointer to spriteheightofsptr() for the height return value
git-svn-id: https://svn.eduke32.com/eduke32@7405 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-19 17:08:12 +00:00
terminx 76863607e3 This fixes a bug in clipmove() where clipping against sprites above you was wrong
Because this is a check for sprites above the sprite being moved and not a check for sprites below, the height of the sprite should not be taken into account at all here and the base of the sprite should be used instead.

git-svn-id: https://svn.eduke32.com/eduke32@7404 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-19 17:08:08 +00:00
terminx 770b255bff Calculate texture coordinates as double since we're storing them that way anyway
This isn't really intended to fix any specific issue, but to shut up Visual Studio whining about arithmetic overflows.

git-svn-id: https://svn.eduke32.com/eduke32@7403 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-19 17:08:05 +00:00
terminx 729f83761a Rename "player speech" menu option in standalone builds
git-svn-id: https://svn.eduke32.com/eduke32@7402 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-19 17:08:00 +00:00
terminx c8b161704b Patch from Nuke.YKT to work around a Polymost glitch with slopes
git-svn-id: https://svn.eduke32.com/eduke32@7401 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-19 17:07:57 +00:00
terminx f1ea04e7da Another Polymost TROR patch from Nuke.YKT
This one should bring Polymost TROR into parity with classic mode.

git-svn-id: https://svn.eduke32.com/eduke32@7400 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-19 17:07:53 +00:00
terminx 92c52d7e60 Formatting
git-svn-id: https://svn.eduke32.com/eduke32@7399 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-19 17:07:48 +00:00
terminx 6190fbb4f2 clipmove() improvements
This fixes an issue with clipmove() caused by sectors behind walls which were candidates for clipping not being added to the list of sectors that definitely clip the player, forcing the function to fall back to a slow, sector-by-sector brute force approach. This brute force approach has also been removed in favor of something more efficient.

git-svn-id: https://svn.eduke32.com/eduke32@7398 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-19 17:07:45 +00:00
terminx 00cac93851 Bump MAXCLIPNUM to 2048
git-svn-id: https://svn.eduke32.com/eduke32@7397 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-19 17:07:41 +00:00
terminx 0e01b45227 Revert r7388 because it just wasn't working out
git-svn-id: https://svn.eduke32.com/eduke32@7396 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-19 17:07:37 +00:00
hendricks266 5258e10271 Fix some GL ES compilation issues in polymost.cpp
git-svn-id: https://svn.eduke32.com/eduke32@7395 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-11 06:06:51 +00:00
hendricks266 6ba0b64de6 Add buildvfs_fopen_write_text
Long-term we will need to replace all uses of "\n" in string literals printed to disk.

git-svn-id: https://svn.eduke32.com/eduke32@7394 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-11 06:06:47 +00:00
hendricks266 381517ffa0 Add CLEAR and KP_CLEAR to the SDL key translation table as synonyms for KP_5
git-svn-id: https://svn.eduke32.com/eduke32@7393 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-11 06:06:43 +00:00
terminx f54f35a067 Polymost TROR patch from Nuke.YKT--nice!
git-svn-id: https://svn.eduke32.com/eduke32@7392 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-04 23:49:11 +00:00
terminx c6261b9f45 It looks like this is OK to remove now!
git-svn-id: https://svn.eduke32.com/eduke32@7391 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-04 23:49:07 +00:00
terminx 0e6dd28573 Patch from Nuke.YKT to clip Polymost spans to screen borders
git-svn-id: https://svn.eduke32.com/eduke32@7390 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-04 23:49:03 +00:00
terminx e33fed3bf8 Add Nuke.YKT to thanks section in credits and move pogokeen to active developers
This also cleans up the code for MENU_CREDITS4 so that it's significantly easier to alter in the future if needed.

git-svn-id: https://svn.eduke32.com/eduke32@7389 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-04 23:48:59 +00:00
terminx a206a83020 This seems to help with some polygon drawing issues in Polymost for now
git-svn-id: https://svn.eduke32.com/eduke32@7388 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-04 23:48:55 +00:00
terminx b72dec2940 Fix compilation with winlayer
There are still a bunch of warnings, but fixing warnings in deprecated code that only one guy uses anymore isn't an efficient use of time.

git-svn-id: https://svn.eduke32.com/eduke32@7387 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-04 23:48:50 +00:00
terminx ea66c0a682 Well, that didn't take long :D
git-svn-id: https://svn.eduke32.com/eduke32@7386 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-03 11:15:20 +00:00
terminx ac87b8c945 I forgot to remove this comment in r7376
git-svn-id: https://svn.eduke32.com/eduke32@7384 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-03 11:15:12 +00:00
terminx 2b3be31fa2 As if you couldn't already tell from Ion Maiden, I like shitty one liners
git-svn-id: https://svn.eduke32.com/eduke32@7383 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-03 11:15:08 +00:00
terminx 3c0a38d47a Rename "INCOMPLETE_STRUCT_ACCESS" to CON_DISCRETE_VAR_ACCESS as it was neither incomplete nor anything to do with access to structs
However, it's remaining disabled because even with the new dispatch method it still doesn't improve performance any.

git-svn-id: https://svn.eduke32.com/eduke32@7382 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-03 11:15:01 +00:00
terminx 35b208eeab Fix saving to %APPDATA% on Windows...
git-svn-id: https://svn.eduke32.com/eduke32@7381 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-02 23:52:50 +00:00
terminx 33a3e9fbca Fix compilation error in texcache
git-svn-id: https://svn.eduke32.com/eduke32@7380 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-02 23:35:43 +00:00
terminx a050281006 A curious Polymost optimization from Nuke.YKT
This bails out of drawing any domost spans that seem to be entirely outside of the range of the screen coordinates. Since this seems so obvious, I have to wonder if Polymost is supposed to be doing this elsewhere already...

git-svn-id: https://svn.eduke32.com/eduke32@7379 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-02 23:22:12 +00:00
terminx e61831ad5d Fix CON issues introduced in r7357 and r7358
git-svn-id: https://svn.eduke32.com/eduke32@7378 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-02 23:22:08 +00:00
terminx dbcd3968ee Am I missing something here?
git-svn-id: https://svn.eduke32.com/eduke32@7377 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-02 23:22:04 +00:00
terminx 8b7d099cbd Remove reference pointing to vm.pPlayer because it seems incompatible with the new dispatch method
git-svn-id: https://svn.eduke32.com/eduke32@7376 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-02 23:22:00 +00:00
terminx 23e53c17fc This might not be needed anymore after the previous commit
git-svn-id: https://svn.eduke32.com/eduke32@7375 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-02 23:21:56 +00:00
terminx 0e107acd39 Work around floating point precision issues in Polymost causing problems when rendering certain geometry from particular angles
git-svn-id: https://svn.eduke32.com/eduke32@7374 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-02 23:21:52 +00:00
terminx 61b89491c6 Lower MAXWALLSB
git-svn-id: https://svn.eduke32.com/eduke32@7373 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-02 23:21:48 +00:00
terminx 6a251fca16 Free inthash tables used by the CON compiler using the contents of inttables[] instead of listing them explicitly in C_Compile()
git-svn-id: https://svn.eduke32.com/eduke32@7371 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-02 23:21:41 +00:00
terminx e84d62416d Patch from Striker to allow selective tile redefinition in .def files based on the crc of the original tile
This only works for "tilefromtexture" for now.

git-svn-id: https://svn.eduke32.com/eduke32@7370 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-02 23:21:37 +00:00
terminx f31f31a17e Rework previous commit to use a little less floating point math
git-svn-id: https://svn.eduke32.com/eduke32@7369 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-02 23:21:32 +00:00
terminx 17fa3ea5ff Patch from Nuke.YKT to fix voxel rotation in Polymost
git-svn-id: https://svn.eduke32.com/eduke32@7368 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-02 23:21:29 +00:00
terminx 6d9ecbcfb7 Marginally less sucky version of a function that completely sucks
git-svn-id: https://svn.eduke32.com/eduke32@7367 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-02 23:21:25 +00:00
terminx db51740d3d Clean up a few uses of the hash table functions to account for hash_findcase() working properly now
git-svn-id: https://svn.eduke32.com/eduke32@7366 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-02 23:21:21 +00:00
terminx 3775bce3d7 Fix a crash when trying to access cvars through typing the name into the console with the wrong case
git-svn-id: https://svn.eduke32.com/eduke32@7365 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-02 23:21:16 +00:00
terminx f7d4209084 Use lowercase when computing hashes in hash_getcode()
It turns out hash_findcase() has never worked properly because the correct bucket would never have been searched.

git-svn-id: https://svn.eduke32.com/eduke32@7364 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-02 23:21:13 +00:00
terminx 0de543ca2b This was slightly faster here
git-svn-id: https://svn.eduke32.com/eduke32@7363 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-02 23:21:09 +00:00
terminx e9d53fce0a Optimize nonpow2_mhline and nonpow2_thline by replacing divide operation by cheaper multiplication
Patch from Nuke.YKT.

git-svn-id: https://svn.eduke32.com/eduke32@7362 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-02 23:21:05 +00:00
terminx 425c183c67 Clean up DirectSound driver in audiolib
This includes a small patch from Nuke.YKT as well.

git-svn-id: https://svn.eduke32.com/eduke32@7361 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-02 23:21:01 +00:00
terminx c757725e65 Remove a "cheap fix" from multivoc that is no longer needed and should never have been needed in the first place
git-svn-id: https://svn.eduke32.com/eduke32@7360 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-02 23:20:56 +00:00
hendricks266 7414f29348 Add buildvfs, abstraction layer for file I/O.
Currently it passes calls through to the system libraries as before.

Also adds an incomplete implementation on PhysFS.

git-svn-id: https://svn.eduke32.com/eduke32@7359 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-01 08:51:50 +00:00
hendricks266 5c9b921285 CON: Implement a new VM dispatch method using an explicit jump table
Most of this patch is by pogokeen.

git-svn-id: https://svn.eduke32.com/eduke32@7358 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-28 07:21:49 +00:00
hendricks266 12bfbd5a06 CON: Macro-ize CON keyword tokens in gamedef.h and gameexec.cpp
Most of this patch is by pogokeen.

git-svn-id: https://svn.eduke32.com/eduke32@7357 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-28 07:21:43 +00:00
hendricks266 b7e9cd0791 CON: Move five missed opcodeless keywords down in gamedef.h
git-svn-id: https://svn.eduke32.com/eduke32@7356 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-28 07:21:40 +00:00
hendricks266 328e771636 CON: #ifdef out deactivated stuff that should not be half-in, half-out
git-svn-id: https://svn.eduke32.com/eduke32@7355 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-28 07:21:37 +00:00
hendricks266 f84cbd9a1a Clean up unused warnings
git-svn-id: https://svn.eduke32.com/eduke32@7354 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-28 07:21:33 +00:00
hendricks266 94504ee0c3 Fix net.cpp compilation failure under clang
git-svn-id: https://svn.eduke32.com/eduke32@7353 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-28 07:21:30 +00:00
terminx b7e524d5d1 Fix autoaim bug introduced in r6942
git-svn-id: https://svn.eduke32.com/eduke32@7352 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-23 05:10:59 +00:00
terminx 766fb93191 Fix a crash when accessing SECTOR_WALLPTR with CON_SETSECTOR
git-svn-id: https://svn.eduke32.com/eduke32@7351 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-22 20:26:38 +00:00
terminx 4b1d268908 Use existing viewingrange and yxaspect for showview so it matches that of the main view
This fixes fov when using showview in EVENT_DISPLAYROOMS to do layered rendering, but it might not be right for uses of showview that simply display picture-in-picture stuff on screen.

git-svn-id: https://svn.eduke32.com/eduke32@7350 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-22 18:35:37 +00:00
terminx e0b5e32be2 Clean up a little bit of yxaspect and viewingrange variable cruft in G_DrawRooms()
git-svn-id: https://svn.eduke32.com/eduke32@7349 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-22 18:35:33 +00:00
terminx 934f1e9ec6 Display value next to FOV slider and allow dropping FOV to 70
git-svn-id: https://svn.eduke32.com/eduke32@7348 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-22 18:35:28 +00:00
hendricks266 789d9bd8e6 Rename "textures" to "texturecache" and "textures.cache" to "texturecache.index"
This avoids conflicts with folders named "textures", such as in World Tour. Thanks to enderandrew for the observation.

git-svn-id: https://svn.eduke32.com/eduke32@7347 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-22 03:40:49 +00:00
terminx e253f2e0a8 Fixes an issue with the automap
git-svn-id: https://svn.eduke32.com/eduke32@7346 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-21 19:36:47 +00:00
terminx 5eb007396d Round computed horiz instead of potentially truncating
git-svn-id: https://svn.eduke32.com/eduke32@7345 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-21 00:58:33 +00:00
terminx e513ad21d1 Scale both mouse axes the same in CONTROL_GetMouseDelta()
git-svn-id: https://svn.eduke32.com/eduke32@7344 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-21 00:58:28 +00:00
terminx 10757aa836 PI -> fPI
git-svn-id: https://svn.eduke32.com/eduke32@7343 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-20 21:33:04 +00:00
terminx a3f49b4584 Improve vertical mouse aim
This improves vertical mouse aim in two ways: the Y axis is normalized to match the sensitivity of the X axis, and horiz adjustment has been corrected so that the player's pitch is operated on as an angle instead of as the tangent of said angle. Based on a patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@7342 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-20 21:33:00 +00:00
terminx eef6667fbc Save mouse and joystick analog scales, dead zones, and saturation values to .cfg whether they're the defaults or not
This fixes an issue where changing one of these values would result in the value being written to the .cfg, but changing the value back to the default would leave the old value in the .cfg.

git-svn-id: https://svn.eduke32.com/eduke32@7341 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-20 21:32:56 +00:00
terminx e74cad12ad Increase MAXANGVEL for player input per tic from 512 to 1024
git-svn-id: https://svn.eduke32.com/eduke32@7340 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-20 21:32:52 +00:00
terminx 7b06ec9a6a atan2 -> atan2f
git-svn-id: https://svn.eduke32.com/eduke32@7339 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-20 21:32:48 +00:00
terminx a85b9e8259 Change scope of sdlayer lastSwapTime variable
git-svn-id: https://svn.eduke32.com/eduke32@7338 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-20 21:32:44 +00:00
terminx 523121a995 Don't crash when attempting to define quotes at indexes that exceed MAXQUOTES
git-svn-id: https://svn.eduke32.com/eduke32@7337 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-20 21:32:39 +00:00
terminx 22ec4599b0 Fix typo
git-svn-id: https://svn.eduke32.com/eduke32@7336 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-20 21:30:11 +00:00
hendricks266 cf86f63121 Fix a mistake in r7322
Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@7335 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-19 05:26:53 +00:00
hendricks266 f349dfdabf Menus: Fix the cursor being affected by viewport-annexing status bar sizes
git-svn-id: https://svn.eduke32.com/eduke32@7334 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-19 05:26:49 +00:00
terminx 360ee42e0e Fix system memory check
git-svn-id: https://svn.eduke32.com/eduke32@7333 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-18 22:02:50 +00:00
terminx af83ff0675 Patch from Fox to fix positioning of SCUBAMASK tile with the full status bar
git-svn-id: https://svn.eduke32.com/eduke32@7332 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-18 22:02:46 +00:00
terminx 180c73d8ca Fix the automap glitch in the region around the full status bar in Polymost
git-svn-id: https://svn.eduke32.com/eduke32@7331 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-18 22:02:42 +00:00
terminx e5c8c8c4fc Fix the direction which the shadow is cast in "modern" status bar ammo icon
git-svn-id: https://svn.eduke32.com/eduke32@7330 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-18 22:02:38 +00:00
terminx 8433d133b4 Patch from Fox:
Add a FOV option in the menu. Range from 75 to 120 degrees (at 4:3 resolution), default is 90.

New userdef "fov". Equals the FOV in 360 degrees.

Update Polymost projection hack, so it compensates for the FOV or height of the game view.

Fix FOV in Polymer when the full status bar is visible. Now the FOV depends of the width of the game view instead of the height.

git-svn-id: https://svn.eduke32.com/eduke32@7329 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-18 22:02:33 +00:00
terminx 27977403fd Remove 3 lines of audiolib header cruft
git-svn-id: https://svn.eduke32.com/eduke32@7328 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-18 22:02:27 +00:00
terminx 464e32d712 Remove read only bit from SPRITE_SECTNUM and SPRITE_STATNUM in m32script
git-svn-id: https://svn.eduke32.com/eduke32@7327 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-18 22:02:22 +00:00
terminx 4cf5a9c31a Mapster32: fix use of uninitialized values
git-svn-id: https://svn.eduke32.com/eduke32@7326 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-02 23:24:36 +00:00
terminx 975126edf4 Fix a couple minor issues with 90 degree wall texture rotation
git-svn-id: https://svn.eduke32.com/eduke32@7325 1a8010ca-5511-0410-912e-c29ae57300e0
2019-02-02 23:24:32 +00:00
terminx 38ff5e1c89 Add mousebits gamevar to m32script for querying mouse button states
git-svn-id: https://svn.eduke32.com/eduke32@7324 1a8010ca-5511-0410-912e-c29ae57300e0
2019-01-30 09:36:56 +00:00
terminx c4753af497 Fix issue where a useless error would be printed to the log and bad memory reads could occur when compiling a CON script with an invalid structure member passed as gamevar structure access shortcut shorthand
git-svn-id: https://svn.eduke32.com/eduke32@7323 1a8010ca-5511-0410-912e-c29ae57300e0
2019-01-30 09:36:52 +00:00
terminx 1245799e6b screentext alignment patch from Fox
git-svn-id: https://svn.eduke32.com/eduke32@7322 1a8010ca-5511-0410-912e-c29ae57300e0
2019-01-30 09:36:47 +00:00
terminx 8e50f47aa4 rotatesprite hack from Fox
git-svn-id: https://svn.eduke32.com/eduke32@7321 1a8010ca-5511-0410-912e-c29ae57300e0
2019-01-30 00:19:56 +00:00
terminx 7a8e368197 CON access to raw q16 values for player horiz and ang etc
git-svn-id: https://svn.eduke32.com/eduke32@7320 1a8010ca-5511-0410-912e-c29ae57300e0
2019-01-30 00:13:05 +00:00
terminx 61c74f25aa Work around weird issue with Bgetsysmemsize() that occurs on exactly one system we've tested
git-svn-id: https://svn.eduke32.com/eduke32@7319 1a8010ca-5511-0410-912e-c29ae57300e0
2019-01-30 00:13:00 +00:00
terminx d52151c2e8 Fix issue with definegamefuncname and undefinegamefunc
git-svn-id: https://svn.eduke32.com/eduke32@7317 1a8010ca-5511-0410-912e-c29ae57300e0
2019-01-23 00:21:52 +00:00
terminx 0a3b840d4e Add error message for SDL_SetGammaRamp() failures in videoSetGamma()
git-svn-id: https://svn.eduke32.com/eduke32@7316 1a8010ca-5511-0410-912e-c29ae57300e0
2019-01-22 22:51:08 +00:00
terminx 8098d04875 Add C as a secondary binding for crouch and remove the mouse look and crosshair toggles from the default key bindings--they can still be bound manually if desired.
git-svn-id: https://svn.eduke32.com/eduke32@7315 1a8010ca-5511-0410-912e-c29ae57300e0
2019-01-22 22:51:04 +00:00
hendricks266 450244e258 Fix missing/invalid palswaps and shades in automap with Polymost
Patch from Nuke.YKT.

git-svn-id: https://svn.eduke32.com/eduke32@7314 1a8010ca-5511-0410-912e-c29ae57300e0
2019-01-22 17:56:37 +00:00
hendricks266 9b17be7f3e CON: Add EVENT_DISPLAYROOMSCAMERATILE
git-svn-id: https://svn.eduke32.com/eduke32@7313 1a8010ca-5511-0410-912e-c29ae57300e0
2019-01-22 17:56:34 +00:00
hendricks266 a91391fdec Menus: Make the gamma slider move in increments of 0.05 instead of 0.1
git-svn-id: https://svn.eduke32.com/eduke32@7312 1a8010ca-5511-0410-912e-c29ae57300e0
2019-01-22 17:56:30 +00:00
terminx f40dd37cca Mapster32: add wall point delete hotkey. Press shift+delete or the d key in 2d mode to delete a wall point without dragging it.
git-svn-id: https://svn.eduke32.com/eduke32@7311 1a8010ca-5511-0410-912e-c29ae57300e0
2019-01-13 23:26:54 +00:00
terminx 5882d9546c Add mutex to protect against S_Callback() being called from more than one thread at the same time
git-svn-id: https://svn.eduke32.com/eduke32@7310 1a8010ca-5511-0410-912e-c29ae57300e0
2019-01-13 23:26:50 +00:00
terminx bd55b2d573 I honestly can't remember why I wrote this like this, but it's problematic so I'm changing it.
git-svn-id: https://svn.eduke32.com/eduke32@7309 1a8010ca-5511-0410-912e-c29ae57300e0
2019-01-12 00:22:14 +00:00
terminx 5f141ed8d6 Make the time period between averaging the min and max values shown with r_showfps 2+ user configurable with r_showfpsperiod
git-svn-id: https://svn.eduke32.com/eduke32@7308 1a8010ca-5511-0410-912e-c29ae57300e0
2019-01-12 00:22:10 +00:00
terminx 74d766d988 Create new MV_CleanupVoice() function to handle most of what was in MV_StopVoice() plus the MV_CallBackFunc() functionality
git-svn-id: https://svn.eduke32.com/eduke32@7307 1a8010ca-5511-0410-912e-c29ae57300e0
2019-01-12 00:22:05 +00:00
terminx 9f3cf8002b Slightly revise multivoc locking logic
git-svn-id: https://svn.eduke32.com/eduke32@7306 1a8010ca-5511-0410-912e-c29ae57300e0
2019-01-12 00:22:02 +00:00
terminx 97c2271b92 Fix an infinite loop in S_StopEnvSound() that could occur if the audio thread happened to finish playing a voice in between checking if g_sounds[].voices[].id > FX_Ok and calling FX_StopSound(), exacerbated by improper std::atomic usage
git-svn-id: https://svn.eduke32.com/eduke32@7305 1a8010ca-5511-0410-912e-c29ae57300e0
2019-01-12 00:21:58 +00:00
terminx 6ca492918e Slightly revise framerate limiter and r_showfps 2 display
git-svn-id: https://svn.eduke32.com/eduke32@7304 1a8010ca-5511-0410-912e-c29ae57300e0
2019-01-12 00:21:53 +00:00
terminx 1d74f4e944 Change the hotkeys for adjusting the camera horiz in Mapster32 3d mode from ctrl + a / z to alt + a / z to avoid conflicts with the undo hotkey
git-svn-id: https://svn.eduke32.com/eduke32@7303 1a8010ca-5511-0410-912e-c29ae57300e0
2019-01-12 00:21:48 +00:00
terminx c9390f1845 Fix buffer overrun
git-svn-id: https://svn.eduke32.com/eduke32@7302 1a8010ca-5511-0410-912e-c29ae57300e0
2019-01-12 00:21:44 +00:00
terminx a401dfed47 Enable undo/redo in Mapster32 3d mode. Not incredibly well tested.
git-svn-id: https://svn.eduke32.com/eduke32@7301 1a8010ca-5511-0410-912e-c29ae57300e0
2019-01-12 00:21:40 +00:00
terminx a8c613c995 Add 75, 100, and 240 as options for the FPS limiter
git-svn-id: https://svn.eduke32.com/eduke32@7300 1a8010ca-5511-0410-912e-c29ae57300e0
2019-01-12 00:21:36 +00:00
terminx ed0c45018e Re-add something I didn't intend to remove with r7297
git-svn-id: https://svn.eduke32.com/eduke32@7299 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-23 23:23:50 +00:00
terminx 5ff83a5f5f Remove 'none' as an option for the frame limiter in the menu and fix a bug with the slider for the offset
git-svn-id: https://svn.eduke32.com/eduke32@7298 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-23 23:23:46 +00:00
terminx caf2a8c9c9 Re-enable -fno-strict-aliasing because apparently many versions of GCC across many platforms are still producing warning spew without it
git-svn-id: https://svn.eduke32.com/eduke32@7297 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-21 01:12:53 +00:00
terminx a24c720e11 MSVC build fix
git-svn-id: https://svn.eduke32.com/eduke32@7296 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-16 23:28:09 +00:00
terminx 8447e3392d Fix NETCODE_DISABLED builds. We should probably rename Net_GetPackets() to something else, because it does other required things.
git-svn-id: https://svn.eduke32.com/eduke32@7295 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 22:33:15 +00:00
terminx 22ad4221d9 Fix loading screen tile
git-svn-id: https://svn.eduke32.com/eduke32@7294 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 22:33:09 +00:00
terminx 1c369d4978 Fix issue where the option to enable or disable Polymer wasn't being saved properly
git-svn-id: https://svn.eduke32.com/eduke32@7293 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 21:35:03 +00:00
terminx cae791ffa4 Fix issue where the player's pistol isn't removed when they spawn on HURTRAIL/FLOORSLIME/FLOORPLASMA
git-svn-id: https://svn.eduke32.com/eduke32@7292 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 21:34:57 +00:00
terminx acf8384d11 macOS build fix. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@7291 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 20:17:03 +00:00
terminx ea86e5520b Revert "engine.cpp/.h: clean up & fix lintersect(). Additionally, add support for finding intersections of collinear line segments."
This reverts r6886.

git-svn-id: https://svn.eduke32.com/eduke32@7290 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:40:31 +00:00
terminx 650672717d Fix issue with editor not allowing wall and floor aligned sprites to be resized in 2d mode without textured view mode enabled
git-svn-id: https://svn.eduke32.com/eduke32@7289 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:40:26 +00:00
terminx 89df4950d4 This should fix the too many sprites spawned issue in single player
git-svn-id: https://svn.eduke32.com/eduke32@7288 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:40:20 +00:00
terminx 9a23ea148e Expand the list of options available for the framerate limiter, and add a separate option that controls an offset added to the limiter. This should allow the menu to cover all of the important use cases involving G-SYNC, FreeSync, and "Fast Sync".
git-svn-id: https://svn.eduke32.com/eduke32@7287 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:40:14 +00:00
terminx 33b9dafe8f Fix net.cpp line endings
git-svn-id: https://svn.eduke32.com/eduke32@7286 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:40:08 +00:00
terminx 465e19909f Change audiolib mixing functions to just use a return value instead of setting a global to indicate the new mixing buffer position
git-svn-id: https://svn.eduke32.com/eduke32@7285 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:40:03 +00:00
terminx c3f88abf73 Slight cleanup to MV_GetVorbisCommentLoops(). The biggest change here is swapping calls to atol to our Batol macro, which is actually backed by strtol instead of atol.
git-svn-id: https://svn.eduke32.com/eduke32@7284 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:39:57 +00:00
terminx 91096d2415 Hendricks and I discussed "auto *" and we've come to the conclusion that it's bad form, so this corrects that.
git-svn-id: https://svn.eduke32.com/eduke32@7283 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:39:51 +00:00
terminx 6258806a3a Reduce vorbis read block size from 32k to MV_MIXBUFFERSIZE. Despite requiring more calls into libvorbis, this should be faster on slower CPUs in cases where more copies of the same .ogg sound are attempting to be played at once than are allowed, e.g large explosion scenes in Ion Maiden.
git-svn-id: https://svn.eduke32.com/eduke32@7282 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:39:41 +00:00
terminx 30cc6a35e8 I don't see a reason for these operations to be separated
git-svn-id: https://svn.eduke32.com/eduke32@7281 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:39:36 +00:00
terminx ea94b36dec Fix function that some sadist formatted with 3 spaces
git-svn-id: https://svn.eduke32.com/eduke32@7280 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:39:31 +00:00
terminx 06ac4f88b9 This fixes S_CheckSoundPlaying() and makes CON_IFSOUND work correctly in scripts that run during menus. These changes together fix the exchange between Duke and Lani at the end of episode 3 of Duke3D.
git-svn-id: https://svn.eduke32.com/eduke32@7279 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:39:25 +00:00
terminx 5102281e0e This makes the output from r_showfps 3, cl_showcoords 1, and what is printed after DNDEBUG all happily coexist. The display of g_moveActorsTime and g_moveWorldTime has also been moved from cl_showcoords to r_showfps.
git-svn-id: https://svn.eduke32.com/eduke32@7278 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:39:19 +00:00
terminx ef91435120 Fix CON commands leaving useless extra values in the bytecode. They were only valid outside of executable blocks so it was never noticed.
git-svn-id: https://svn.eduke32.com/eduke32@7277 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:39:14 +00:00
terminx c287866954 Fix CON compiler line number accounting problem introduced with the optimization that transforms CON_SETVARVAR -> CON_SETVAR if the second parameter is a constant
git-svn-id: https://svn.eduke32.com/eduke32@7276 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:39:08 +00:00
terminx b4404978d6 Change A_AddToDeleteQueue() to call A_DeleteSprite() on sprites it removes from the queue directly, as sprites with statnums other than STAT_ACTOR and STAT_MISC are not deleted automatically when their xrepeat is 0. This fixes using CON_INSERTSPRITEQ with sprites of statnums other than STAT_ACTOR and STAT_MISC.
git-svn-id: https://svn.eduke32.com/eduke32@7275 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:39:03 +00:00
terminx 49f77b0a21 This is never going to work. When it was first programmed, it was done under the assumption that dividing an integer by a power of 2 was always the same as shifting it. It turns out that this isn't the case and I'm a dumbass. :D
git-svn-id: https://svn.eduke32.com/eduke32@7274 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:38:58 +00:00
terminx cad5a5b8c5 Move the debug_break() call in the default case of VM_Execute() to after the call to VM_ScriptInfo().
git-svn-id: https://svn.eduke32.com/eduke32@7273 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:38:53 +00:00
terminx d35058a8e5 Fix error building the transpal utility
git-svn-id: https://svn.eduke32.com/eduke32@7272 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:38:48 +00:00
terminx 8f7e842beb After some refactoring, several CON error checks done at runtime stood out as things that could be determined at script compile time. They have been moved.
git-svn-id: https://svn.eduke32.com/eduke32@7271 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:38:43 +00:00
terminx 3d4d640be3 Attempting to compile a CON with something stupid like "mul var 0" or "div var 0" in it now throws an error
git-svn-id: https://svn.eduke32.com/eduke32@7270 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:38:38 +00:00
terminx 2be7afd33c cmenu console command now opens the menu if it isn't already open
git-svn-id: https://svn.eduke32.com/eduke32@7269 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:38:32 +00:00
terminx d2f16606c5 Comment out actor and player versions of gamevar manipulation opcodes as they aren't performant with our current switch-based method of processing instructions. This also tweaks the beginning of VM_Execute() to gain a little more performance.
git-svn-id: https://svn.eduke32.com/eduke32@7268 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:38:27 +00:00
terminx fad17a83c0 WIP work on fixing CON_DIVVAR/CON_MULVAR optimization
git-svn-id: https://svn.eduke32.com/eduke32@7267 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:38:22 +00:00
terminx cf95da82e9 Implement individual opcodes for all the gamevar if checks and the functions that do math on vars
git-svn-id: https://svn.eduke32.com/eduke32@7266 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:38:16 +00:00
terminx ace77922b1 Global var opcodes for common conditional statements. Decent performance gain!
git-svn-id: https://svn.eduke32.com/eduke32@7265 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:38:10 +00:00
terminx 6dfafc49b1 Change goofy check for g_errorCnt and g_warningCnt in gamedef
git-svn-id: https://svn.eduke32.com/eduke32@7264 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:38:05 +00:00
terminx dbdf662790 Use separate instructions in the bytecode for manipulating global variables versus more complex variable types. The optimization that transforms CON_DIVVAR and CON_MULVAR into CON_SHIFTVARR and CON_SHIFTVARL plus CON_INV has been disabled for now until I can debug a problem with it.
git-svn-id: https://svn.eduke32.com/eduke32@7263 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:38:00 +00:00
terminx 702d30f2b5 Replace pointer with reference in VM_Execute()
git-svn-id: https://svn.eduke32.com/eduke32@7262 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:37:54 +00:00
terminx 72d80890e2 CON cleanup/tweaks. This improves the game update time by about 5% in some of my test scenarios.
git-svn-id: https://svn.eduke32.com/eduke32@7261 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:37:49 +00:00
terminx 0bbde29c85 Use reference to clean up CON_QSPRINTF
git-svn-id: https://svn.eduke32.com/eduke32@7260 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:37:44 +00:00
terminx 76edec81ac CON cleanups
git-svn-id: https://svn.eduke32.com/eduke32@7259 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:37:39 +00:00
terminx cdefc293c0 Fix setvar console command, and add a line of output so you know it did something
git-svn-id: https://svn.eduke32.com/eduke32@7258 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:37:34 +00:00
terminx 6696cb0036 This just shuffles some things around and these aren't (or shouldn't be) functional changes.
git-svn-id: https://svn.eduke32.com/eduke32@7257 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:37:29 +00:00
terminx ae39954376 Initialize rottile values to -1 with a loop like this instead, because doing it the C++ way increases the binary size by like 120KB
git-svn-id: https://svn.eduke32.com/eduke32@7255 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:37:19 +00:00
terminx 891bac2b0f This is a cool CON compiler optimization that replaces all of the "varvar" commands and conditional checks in the compiled code with the "var" version if the value supplied to the function is a constant
git-svn-id: https://svn.eduke32.com/eduke32@7254 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:37:13 +00:00
terminx f782a86675 I'm pretty sure this is a bug
git-svn-id: https://svn.eduke32.com/eduke32@7253 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:37:08 +00:00
terminx b3d1002b58 Move CON_STARTTRACK in gamedef.cpp so it isn't in between the related CON_IFXXX stuff nearby
git-svn-id: https://svn.eduke32.com/eduke32@7252 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:37:03 +00:00
terminx 7fb84c7a69 Include build.h from player.h to satisfy the need for MAXPLAYERS and compat.h stuff that build.h pulls in
git-svn-id: https://svn.eduke32.com/eduke32@7251 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:36:58 +00:00
terminx 07d2222dfa Bump MAXANGVEL and MAXHORIZ
git-svn-id: https://svn.eduke32.com/eduke32@7250 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:36:53 +00:00
terminx 5c6d2d706f Use LINE_NUMBER macro in gamedef.cpp
git-svn-id: https://svn.eduke32.com/eduke32@7249 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:36:48 +00:00
terminx 8ff047a82e More minor CON parser cleanup. This commit is not incredibly meaningful.
git-svn-id: https://svn.eduke32.com/eduke32@7248 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:36:42 +00:00
terminx 41c33af8e0 This fixes a small oversight with r7238
git-svn-id: https://svn.eduke32.com/eduke32@7247 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:36:37 +00:00
terminx f40026a0be Add bounds check to C_GetNextLabelName(). This isn't really necessary because the extra writes to the label buffer are immediately overwritten by the next label found, but I could see it causing a crash in an edge case where somehow the maximum number of labels had been defined.
git-svn-id: https://svn.eduke32.com/eduke32@7246 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:36:32 +00:00
terminx 8b0cce6cb7 Convert *(g_scriptPtr-x) syntax in gamedef.cpp to g_scriptPtr[-x], as it should ultimately be more readable and less prone to programming errors.
git-svn-id: https://svn.eduke32.com/eduke32@7245 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:36:27 +00:00
terminx b9fa88b5ed This was worth a couple fps in classic mode for me with particularly heavy CON scripts
git-svn-id: https://svn.eduke32.com/eduke32@7244 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:36:21 +00:00
terminx ef6a60396c Remove unnecessary spriteNum argument from P_Submerge() and P_Emerge()
git-svn-id: https://svn.eduke32.com/eduke32@7243 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-15 01:36:15 +00:00
seventyfive 87cf4495bf - Packet code implementation (merge from private c/s repo), world updates are now synced through snapshots. See tag SVN_SyncPoint_Dec2018 on master of the other repo.
- "Scratch pad" sprites implementation, to avoid desyncs in sprite indexes, clients will insert temporary sprites which are cleared out when they receive the next snapshot from the server.
- Patches from Striker which fix player stomping frag counts, the accept button when hosting a game through the menu, and a "noffire" command line parameter.
- Patches from NY00123: t_data sync optimizations to improve some jittery behavior on the client side.

git-svn-id: https://svn.eduke32.com/eduke32@7242 1a8010ca-5511-0410-912e-c29ae57300e0
2018-12-08 00:40:39 +00:00
terminx 7bd5fa42ee macOS build fix
git-svn-id: https://svn.eduke32.com/eduke32@7241 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 21:25:44 +00:00
terminx 252fb58321 Fix oversight with wall texture rotation on tile 0
git-svn-id: https://svn.eduke32.com/eduke32@7240 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 21:17:59 +00:00
terminx 1c83bd0a01 Fix issue with a couple symbols from cmdline.h sometimes picking up different linkage due to accidental double definition in game.h
git-svn-id: https://svn.eduke32.com/eduke32@7239 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 19:03:40 +00:00
terminx 6d7537aa27 CON syntax extension: the empty "[]" shortcut for accessing a struct at index THISACTOR can now be omitted.
This allows cleaner syntax such as "geta .x temp", "ife sprite.x temp", etc.

git-svn-id: https://svn.eduke32.com/eduke32@7238 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:14:54 +00:00
terminx 7fd81960e2 Add unsigned access to actor .htmovflag through actor .htumovflag
git-svn-id: https://svn.eduke32.com/eduke32@7237 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:14:49 +00:00
terminx 38c473851b Misc CON fixups
git-svn-id: https://svn.eduke32.com/eduke32@7236 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:14:43 +00:00
terminx 2f9f16de7f Further clean up C_SetScriptSize(). This also fixes a bug in the function where when expanding the buffer size, most of the extra space was left uninitialized due to bad parameters passed to memset().
git-svn-id: https://svn.eduke32.com/eduke32@7235 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:14:38 +00:00
terminx c29ffec9cb Clean up A_InsertSprite() and the beginning of A_Spawn()
git-svn-id: https://svn.eduke32.com/eduke32@7234 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:14:33 +00:00
terminx c4f76e55a6 Shuffle things around so most of the script structure access stuff actually resides in gamestructures.cpp
git-svn-id: https://svn.eduke32.com/eduke32@7233 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:14:26 +00:00
terminx 4bc7963f48 Minor CON compiler cleanup
git-svn-id: https://svn.eduke32.com/eduke32@7232 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:14:20 +00:00
terminx 5998256125 This should improve the reliability of CON_SWITCH, and maybe allow nesting them to work.
git-svn-id: https://svn.eduke32.com/eduke32@7231 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:14:15 +00:00
terminx 67a3ffd44b Small cleanup in gameexec
git-svn-id: https://svn.eduke32.com/eduke32@7230 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:14:10 +00:00
terminx 0aff0aaf20 This is a little bit more readable
git-svn-id: https://svn.eduke32.com/eduke32@7229 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:14:05 +00:00
terminx 6da9b537e5 Fix Gv_GetArrayOrStruct() error message
git-svn-id: https://svn.eduke32.com/eduke32@7228 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:14:00 +00:00
terminx 54bc64ea10 EDUKE32_STANDALONE guard some more Duke3D-specific behavior
git-svn-id: https://svn.eduke32.com/eduke32@7227 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:13:55 +00:00
terminx 4861d1fc3d WIP wall texture rotation bit
git-svn-id: https://svn.eduke32.com/eduke32@7226 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:13:48 +00:00
terminx c1caf149d7 Compile without -fno-strict-aliasing.
git-svn-id: https://svn.eduke32.com/eduke32@7224 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:13:33 +00:00
terminx 1cbdb901bd This one is for Hendricks
git-svn-id: https://svn.eduke32.com/eduke32@7223 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:13:25 +00:00
terminx 279bdca726 Was checking something out for a mapper and noticed this block of code should be nested deeper.
git-svn-id: https://svn.eduke32.com/eduke32@7222 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:13:19 +00:00
terminx 592ee52d2b Improve selection of a failsafe video mode if videoSetGameMode() fails at game startup
git-svn-id: https://svn.eduke32.com/eduke32@7221 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:13:14 +00:00
terminx 992d5abac2 Mapster32: stop playing sounds when entering the tile selector in 3d mode
git-svn-id: https://svn.eduke32.com/eduke32@7220 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:13:09 +00:00
terminx 21958bc110 Minor start window cleanup. This ended up touching a bunch of other files due to variable renaming, but there are zero functional changes to anything but the startup window in this commit.
git-svn-id: https://svn.eduke32.com/eduke32@7219 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:13:02 +00:00
terminx e77324a6d8 Fix whitespace in gameres.rc
git-svn-id: https://svn.eduke32.com/eduke32@7218 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:12:54 +00:00
terminx 0a84672121 Use clamp in mact LIMITCONTROL macro
git-svn-id: https://svn.eduke32.com/eduke32@7216 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:12:43 +00:00
terminx 81d0632099 These changes aren't particularly meaningful
git-svn-id: https://svn.eduke32.com/eduke32@7215 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:12:38 +00:00
terminx b3195ad6b4 Moved a few things in mact around while I stared at it thinking about what to do with it
git-svn-id: https://svn.eduke32.com/eduke32@7214 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:12:33 +00:00
terminx 022eb02c5e Move hash_getcode() and inthash_getcode() to hash.h so they can be used in places other than hash.cpp
git-svn-id: https://svn.eduke32.com/eduke32@7213 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:12:28 +00:00
terminx 073987fa42 After parsing the cfg, fill in the default bindings for any control functions that are completely missing, with function unbound and key unused by anything else.
git-svn-id: https://svn.eduke32.com/eduke32@7212 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:12:21 +00:00
terminx ca1494262c Convert some unwieldly g_player[myconnectindex].ps->gm crap to references
git-svn-id: https://svn.eduke32.com/eduke32@7211 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:12:16 +00:00
terminx bb8e441d0d Slightly simplify S_OpenAudio()...
git-svn-id: https://svn.eduke32.com/eduke32@7210 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:12:11 +00:00
terminx 871207294e Use MODE_RESTART in osdcmd_map() when already in a game
git-svn-id: https://svn.eduke32.com/eduke32@7209 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:12:06 +00:00
terminx fb15d84982 Rename Gv_GetSpecialVar() to Gv_GetArrayOrStruct() and fix what would be a bug in Gv_GetVarDataPtr() if we were using it for something more than the single thing we use it for now
git-svn-id: https://svn.eduke32.com/eduke32@7208 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:12:01 +00:00
terminx 23308603c5 Prevent crash in the editor if newnumwalls and numwalls are both somehow -1
git-svn-id: https://svn.eduke32.com/eduke32@7207 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:11:56 +00:00
terminx 6618883d7e Fix crash when attempting to load a corrupt map
git-svn-id: https://svn.eduke32.com/eduke32@7206 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:11:50 +00:00
terminx 0d652ae063 Switch VM_EventCommon to use references
git-svn-id: https://svn.eduke32.com/eduke32@7205 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:11:44 +00:00
terminx 3b7f41e2bb sdlayer: pass SDL_WINDOW_FULLSCREEN_DESKTOP to SDL_SetWindowFullscreen() when setting a windowed mode that matches the desktop resolution
git-svn-id: https://svn.eduke32.com/eduke32@7204 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:11:38 +00:00
terminx 6ef3c4c00f Convert the Gv_GetVar and Gv_SetVar family of functions into something similar to the setup for VM_OnEvent, where multiple versions of the functions are generated by the compiler via forced inlining. This makes the functions much easier to maintain.
git-svn-id: https://svn.eduke32.com/eduke32@7203 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:11:32 +00:00
terminx a7a1ada83d Tiny cleanups
git-svn-id: https://svn.eduke32.com/eduke32@7202 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:11:27 +00:00
terminx 32057d2e19 Direct struct access for tsprite, and break special gamevar access out of Gv_GetVar() and into a separate function like it already was with Gv_GetVarX()
git-svn-id: https://svn.eduke32.com/eduke32@7201 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:11:21 +00:00
terminx 18916ddaf6 Clean up Gv_AddSystemVars() and Gv_RefreshPointers()
git-svn-id: https://svn.eduke32.com/eduke32@7200 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:11:14 +00:00
terminx dc519575d4 Add LAST_LABEL macro
git-svn-id: https://svn.eduke32.com/eduke32@7199 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:11:09 +00:00
terminx 893bcbd603 Direct access for the actor structs
git-svn-id: https://svn.eduke32.com/eduke32@7198 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:11:04 +00:00
terminx 34c6fcc69f gamedef.cpp and friends: use preprocessor defines instead of hard-coded values for gamevar IDs that are really constants or arrays or structs
git-svn-id: https://svn.eduke32.com/eduke32@7197 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:10:57 +00:00
terminx 2c3ba0fdb6 Clean up VM array handling with references
git-svn-id: https://svn.eduke32.com/eduke32@7196 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:10:51 +00:00
terminx 7540f590f1 Refine CON VM error handling behavior.
Old behavior: when an operation failed, execution attempted to continue from the next command as if nothing had happened. This behavior was poorly defined and often had unintended consequences; e.g a "random" sprite being operated on because an operation that was supposed to place a sprite id in a gamevar failed, and the previous value was taken as a sprite id instead.

New behavior: execution of the state/actor/event halts. Failure of a particular actor is more immediately obvious and unwanted trampling on other parts of the game state does not occur.

git-svn-id: https://svn.eduke32.com/eduke32@7195 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:10:45 +00:00
terminx eb546f111e WIP: direct CON read/write access to structure members via pointer and offset instead of translation function. This is only enabled for wall and sector structure members in this commit.
git-svn-id: https://svn.eduke32.com/eduke32@7194 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:10:39 +00:00
terminx 076cc306f8 Remove CON ERROR_OPENBRACKET and ERROR_CLOSEBRACKET and add ERROR_NOTTOPLEVEL
git-svn-id: https://svn.eduke32.com/eduke32@7193 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:10:32 +00:00
terminx 90bfd3d374 Minor gamedef.cpp cleanup
git-svn-id: https://svn.eduke32.com/eduke32@7191 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:10:21 +00:00
terminx a0562d5e69 Formatting
git-svn-id: https://svn.eduke32.com/eduke32@7190 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:10:15 +00:00
terminx f14bae5098 Use reference in G_DoGameStartup().
git-svn-id: https://svn.eduke32.com/eduke32@7189 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:10:10 +00:00
terminx 04c9f99620 Add a new member to memberlabel_t to hold the offset of a structure member for CON access. This will be used in a future commit.
git-svn-id: https://svn.eduke32.com/eduke32@7188 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:10:04 +00:00
terminx acf477c09d Sorting and formatting for [names|sound]dyn.[cpp|h]
git-svn-id: https://svn.eduke32.com/eduke32@7187 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:09:58 +00:00
terminx e513e1ceae Cleanup includes
git-svn-id: https://svn.eduke32.com/eduke32@7186 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:09:48 +00:00
terminx 9c0ee3d557 Use references in G_UpdatePlayerFromMenu() and G_BackToMenu() for readability
git-svn-id: https://svn.eduke32.com/eduke32@7184 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:09:09 +00:00
terminx 89fe17e673 This does nothing but fix indentation of a single block of code
git-svn-id: https://svn.eduke32.com/eduke32@7183 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:09:04 +00:00
terminx 52eed46aa9 Remove dead code that once opened a browser to the store page for Duke Nukem 3D: Megaton Edition on Steam
git-svn-id: https://svn.eduke32.com/eduke32@7182 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:08:59 +00:00
terminx 5164ab4a25 More control/input cleanup
git-svn-id: https://svn.eduke32.com/eduke32@7181 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:08:53 +00:00
terminx a4182305d0 Clean up some of the remaining stuff in duke3d/src/config.cpp a bit. Not very meaningful changes... just things I saw when trying to decide how to tackle some of this mess.
git-svn-id: https://svn.eduke32.com/eduke32@7180 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:08:44 +00:00
terminx c927da7687 Remove the "ConsoleKeys[]" array from osdcmds.cpp in favor of accessing mact's sctokeylut[]
git-svn-id: https://svn.eduke32.com/eduke32@7179 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:08:38 +00:00
terminx 339c2ec3b4 Move sctokeylut[] in mact to keyboard.h from keyboard.cpp
git-svn-id: https://svn.eduke32.com/eduke32@7178 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:08:32 +00:00
terminx b97074eece Remove several unused player struct members and bump BYTEVERSION
git-svn-id: https://svn.eduke32.com/eduke32@7177 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:08:26 +00:00
terminx 741d362228 Split some of the title screen display stuff into separate functions
git-svn-id: https://svn.eduke32.com/eduke32@7176 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:08:20 +00:00
terminx e06962460b More premap cleanup
git-svn-id: https://svn.eduke32.com/eduke32@7175 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:08:14 +00:00
terminx 9f81e7150c This is starting to feel like distilling diarrhea into grey water
git-svn-id: https://svn.eduke32.com/eduke32@7174 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:08:08 +00:00
terminx 635a25db72 Add the formats supported by libxmp-lite to the list of extensions to check for in G_SetupFilenameBasedMusic()
git-svn-id: https://svn.eduke32.com/eduke32@7173 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:08:02 +00:00
terminx 949feae240 Introduce some more meaningful function names and structure to the code touched in the last commit
git-svn-id: https://svn.eduke32.com/eduke32@7172 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:07:57 +00:00
terminx 3aaa5e04aa Clean up some of the level initialization and player value reset functions that live in premap.cpp
git-svn-id: https://svn.eduke32.com/eduke32@7171 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:07:51 +00:00
terminx beafd13b1a Derp
git-svn-id: https://svn.eduke32.com/eduke32@7170 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:07:44 +00:00
terminx 86496a8126 CON structure member access readability cleanup
git-svn-id: https://svn.eduke32.com/eduke32@7169 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:07:38 +00:00
terminx 17c63da906 Replace A_ResetVars() with a simpler version and tweak GAMEVAR_Q16PTR handling in VM_GAMEVAR_OPERATOR macro. The other couple things aren't functional changes at all.
git-svn-id: https://svn.eduke32.com/eduke32@7168 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:07:30 +00:00
terminx 336a4650d5 This is supposed to fix some errors with HIGH_PRECISION_SPRITE reported by a static analyzer, wherein 32-bit values were shifted and truncated as 32-bit before being widened to a 64-bit type, which didn't seem like the intended behavior. This is the commit to look at if anything is suddenly fucked up in the classic software renderer.
git-svn-id: https://svn.eduke32.com/eduke32@7167 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:07:25 +00:00
terminx 0c74991a21 Fix a couple of issues that cropped up after some of the previous OSD refactoring commits
git-svn-id: https://svn.eduke32.com/eduke32@7166 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:07:20 +00:00
terminx 369c671632 OSD warning fix
git-svn-id: https://svn.eduke32.com/eduke32@7165 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:07:15 +00:00
terminx 6d4b0f7731 The most minor of minor changes
git-svn-id: https://svn.eduke32.com/eduke32@7164 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:07:10 +00:00
terminx 0f0974874b Set XMP_PLAYER_INTERP to XMP_INTERP_SPLINE as it seems to sound better than the default setting
git-svn-id: https://svn.eduke32.com/eduke32@7163 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:07:04 +00:00
terminx e6955694e2 Fix a null pointer dereference in G_GameExit() so we don't crash while we're crashing
git-svn-id: https://svn.eduke32.com/eduke32@7162 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:06:58 +00:00
terminx cde7529e39 This bounds check is useless
git-svn-id: https://svn.eduke32.com/eduke32@7161 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:06:53 +00:00
terminx 4206cc1786 Use auto in ldist() and dist() because it looks nicer than vec3_t const *const
git-svn-id: https://svn.eduke32.com/eduke32@7160 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:06:48 +00:00
terminx 06f0e5e946 Move g_defaultVideoModes[] and g_keyAsciiTable[] from baselayer.cpp to baselayer.h and make them constexpr
git-svn-id: https://svn.eduke32.com/eduke32@7159 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:06:43 +00:00
terminx 22e1c21f47 Just cleaning up a dump(er)
git-svn-id: https://svn.eduke32.com/eduke32@7158 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:06:38 +00:00
terminx 3cfda9858d Use tabledivide64() in Gv_GetArrayCountFromFile()
git-svn-id: https://svn.eduke32.com/eduke32@7157 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:06:33 +00:00
terminx 1cae4ce7e3 Same shit, different diff
git-svn-id: https://svn.eduke32.com/eduke32@7156 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:06:27 +00:00
terminx 59fde95785 Another bunch of non-functional cleanup changes to the OSD
git-svn-id: https://svn.eduke32.com/eduke32@7155 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:06:21 +00:00
terminx f7fac7d9e0 "using osdcmdptr_t = osdfuncparm_t const * const" because I'm tired of seeing it everywhere
git-svn-id: https://svn.eduke32.com/eduke32@7154 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:06:15 +00:00
terminx ff410796a1 More incremental improvements to horrible decade-old OSD code
git-svn-id: https://svn.eduke32.com/eduke32@7153 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:06:07 +00:00
terminx eb81507565 Fix up osdfunc_exec()
git-svn-id: https://svn.eduke32.com/eduke32@7152 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:06:01 +00:00
terminx 60e9bca926 Reduced buffer size used for scanning GRPs to display in the startup window from 8MB to 64K, in line with the previous commit that changed osdfunc_fileinfo(). I benchmarked this several times and could not find a case in which the 8MB buffer was faster.
git-svn-id: https://svn.eduke32.com/eduke32@7151 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:05:56 +00:00
terminx a35ffd976f Rework osdfunc_fileinfo()
git-svn-id: https://svn.eduke32.com/eduke32@7150 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:05:51 +00:00
terminx 14f1ea1c05 Use "int" for OSD command return values and a few trivial globals. Our current usage of the return values would have even worked with bool, but we might want to add error conditions or something later.
git-svn-id: https://svn.eduke32.com/eduke32@7149 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:05:45 +00:00
terminx b1b01c759e Rename a couple of things in osd.cpp. There should be no change to functionality.
git-svn-id: https://svn.eduke32.com/eduke32@7148 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:05:37 +00:00
terminx 0ea33b1775 Small cleanups to OSD and game keybinding code before larger changes. Everything still works at this point.
git-svn-id: https://svn.eduke32.com/eduke32@7147 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:05:32 +00:00
terminx a6e60e9723 Move pow2char and pow2long to build.h and make them constexpr
git-svn-id: https://svn.eduke32.com/eduke32@7146 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:05:26 +00:00
terminx 786a0cc6a3 Rename the implementation of _lrotl() found at the top of kplib.cpp to klrotl() and use it unconditionally on platforms other than Win32 (it's only used in .bmp rendering).
git-svn-id: https://svn.eduke32.com/eduke32@7145 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:05:20 +00:00
terminx 7f54981f4f Improve P_GetInput() a little
git-svn-id: https://svn.eduke32.com/eduke32@7144 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:05:15 +00:00
terminx f60c353810 Improve OSD_Dispatch() a little
git-svn-id: https://svn.eduke32.com/eduke32@7143 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:05:10 +00:00
terminx 9ab8ebce20 Improve CONTROL_GetMouseDelta()
git-svn-id: https://svn.eduke32.com/eduke32@7142 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:05:03 +00:00
terminx 04e477557a Remove some effectively dead code that handled loading from duke3d.cfg if eduke32.cfg was not found. This has been useless for about a decade.
git-svn-id: https://svn.eduke32.com/eduke32@7141 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-18 18:04:57 +00:00
hendricks266 fd175086a3 Move the LZW compression functions out of cache1d.cpp into their own object, klzw.cpp.
This eliminates the hackiness of libcache1d.so (now libkzlw.so) and CACHE1D_COMPRESS_ONLY.

git-svn-id: https://svn.eduke32.com/eduke32@7140 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-05 07:28:07 +00:00
hendricks266 de5d358d32 Refresh BUILDLIC copyright headers
git-svn-id: https://svn.eduke32.com/eduke32@7139 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-05 07:28:01 +00:00
hendricks266 cc65440315 ifdef out all use of libc's FILE in libxmp-lite
git-svn-id: https://svn.eduke32.com/eduke32@7138 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-29 06:34:25 +00:00
hendricks266 696ddec8a8 Fix a big fail in my implementation of CON_DIVR and CON_DIVRU.
git-svn-id: https://svn.eduke32.com/eduke32@7137 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-29 06:34:19 +00:00
terminx 7c4ba73bfd Move CONTROL_ProcessBinds() call to P_GetInput()
git-svn-id: https://svn.eduke32.com/eduke32@7135 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:34:08 +00:00
terminx 7edcdb0ae4 Fix usages of tab characters that slipped into menus.h at some point, and fix declaration of function Menu_Change() to match its definition
git-svn-id: https://svn.eduke32.com/eduke32@7134 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:34:03 +00:00
terminx 69a1d8d953 Very (very) slightly less terrible G_CheckPlayerColor() function.
git-svn-id: https://svn.eduke32.com/eduke32@7133 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:33:58 +00:00
terminx e7798d12dc Additional const and constexpr usage in compat.h and pragmas
git-svn-id: https://svn.eduke32.com/eduke32@7132 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:33:52 +00:00
terminx fecbe7ad8b Using automatic typing here improves the readability of this code.
git-svn-id: https://svn.eduke32.com/eduke32@7131 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:33:47 +00:00
terminx ad7d61baa1 Use range-based loops for simplicity
git-svn-id: https://svn.eduke32.com/eduke32@7130 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:33:40 +00:00
terminx 3b782aba60 Add CSTAT_SPRITE_ALIGNMENT_MASK. It's identical to CSTAT_SPRITE_ALIGNMENT_SLAB, but should be used in cases where you're checking either CSTAT_SPRITE_ALIGNMENT_WALL or CSTAT_SPRITE_ALIGNMENT_FLOOR rather than checking for a slab (voxel).
git-svn-id: https://svn.eduke32.com/eduke32@7129 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:33:32 +00:00
terminx 4059e1918e Mark libdivide constructors explicit
git-svn-id: https://svn.eduke32.com/eduke32@7128 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:33:26 +00:00
terminx 28bed56348 The last of my audiolib changes for now. These change no functionality.
git-svn-id: https://svn.eduke32.com/eduke32@7127 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:33:21 +00:00
terminx 890341d3af Fix screwed up spacing in a few audiolib files. No functional changes.
git-svn-id: https://svn.eduke32.com/eduke32@7126 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:33:14 +00:00
terminx cbb9018728 This precaching stuff doesn't belong in EDUKE32_STANDALONE builds
git-svn-id: https://svn.eduke32.com/eduke32@7125 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:33:09 +00:00
terminx 51d4347e2c Remove unnecessary "Playing" member of VoiceNode struct
git-svn-id: https://svn.eduke32.com/eduke32@7124 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:33:04 +00:00
terminx 16c9a58daa Lower DEFAULTMOUSESENSITIVITY to 4
git-svn-id: https://svn.eduke32.com/eduke32@7123 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:32:57 +00:00
terminx ed2f9f247b Rework volume control to not completely suck
git-svn-id: https://svn.eduke32.com/eduke32@7122 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:32:50 +00:00
terminx 6513d9f3e3 Make ASS's mixing functions take a pointer to a voice instead of passing a bunch of parameters separately
git-svn-id: https://svn.eduke32.com/eduke32@7121 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:32:41 +00:00
terminx 6d226cf0da Mixer function fixups from H266
git-svn-id: https://svn.eduke32.com/eduke32@7120 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:32:35 +00:00
terminx 1c007c56c5 More sound work
git-svn-id: https://svn.eduke32.com/eduke32@7119 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:32:29 +00:00
terminx 374a09536d Add per-sound volume support to audiolib. This allows you to control the volume of sounds independently from the distance-based system exposed through CON. To use this, you must define your sounds via the .def syntax and set the "volume" property--default is 1.0.
git-svn-id: https://svn.eduke32.com/eduke32@7117 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:32:14 +00:00
terminx 98f42cba6f Add support for defining all sound parameters through the .def syntax, instead of just the filename
git-svn-id: https://svn.eduke32.com/eduke32@7116 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:32:05 +00:00
terminx 5c1e350d79 sdlayer: don't add windowed modes that are larger than the monitor's actual resolution
git-svn-id: https://svn.eduke32.com/eduke32@7115 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:32:00 +00:00
terminx b16d7a412b Don't use size_t for loop iterators (or other things not counted in bytes, realistically)
git-svn-id: https://svn.eduke32.com/eduke32@7114 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:31:54 +00:00
terminx 9447d2c3ff Fix issue with Bgetsysmemsize() on some platforms after the changeover to ::min and ::max.
git-svn-id: https://svn.eduke32.com/eduke32@7113 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:31:49 +00:00
terminx 71c06d5d95 Savegame cleanup
git-svn-id: https://svn.eduke32.com/eduke32@7112 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:31:45 +00:00
terminx a6e7f601d3 Fix HIGH_PRECISION_SPRITE, broken when switching to std::min and std::max.
git-svn-id: https://svn.eduke32.com/eduke32@7111 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:31:40 +00:00
terminx 50ea556fc6 Clean up a few functions in mact scriplib
git-svn-id: https://svn.eduke32.com/eduke32@7110 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:31:35 +00:00
terminx 59196c42ea This commit is useless
git-svn-id: https://svn.eduke32.com/eduke32@7109 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:31:30 +00:00
terminx a7746f9cd2 Make tabledivide64 actually return an int64_t...
git-svn-id: https://svn.eduke32.com/eduke32@7108 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:31:25 +00:00
terminx cee9a65970 userbytever is uint32_t and needs %u instead of %d
git-svn-id: https://svn.eduke32.com/eduke32@7107 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:31:20 +00:00
terminx 797a724069 Fix derpy menu bug
git-svn-id: https://svn.eduke32.com/eduke32@7106 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:31:15 +00:00
terminx 8461fb0cb9 Use _strlwr and _strupr with MSVC
git-svn-id: https://svn.eduke32.com/eduke32@7105 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:31:10 +00:00
terminx 385562d143 Fix bounds checks occurring after array access in tessectrap() and polymost_precache() with very minor cleanup of surrounding lines.
git-svn-id: https://svn.eduke32.com/eduke32@7104 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:31:05 +00:00
terminx ad8a65d154 Small cleanups to fogcalc() and fogcalc_old()
git-svn-id: https://svn.eduke32.com/eduke32@7103 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:31:01 +00:00
terminx ffab1f7d71 Slightly simplify TrackedType operator stuff
git-svn-id: https://svn.eduke32.com/eduke32@7102 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:30:56 +00:00
terminx f1cf0bafdd pitch.cpp cleanup.
git-svn-id: https://svn.eduke32.com/eduke32@7101 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:30:51 +00:00
terminx c0889dab31 Untabify minidumper
git-svn-id: https://svn.eduke32.com/eduke32@7100 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:30:46 +00:00
terminx 2b01ea19b1 Shut up a warning about potentially passing a null ptr to strlen() by way of a bad FILE ptr. The condition wasn't actually possible, but this is just as or more correct than it was before. This sure is a long commit message for something that only adds an 'else'.
git-svn-id: https://svn.eduke32.com/eduke32@7099 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:30:41 +00:00
terminx a6021590f7 Remember to free library in minidumper
git-svn-id: https://svn.eduke32.com/eduke32@7098 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:30:37 +00:00
terminx 3d7a827b3d Update miniz to 3616bf804b1e7b9be5e2769b1e4a7d74d575b13c
git-svn-id: https://svn.eduke32.com/eduke32@7097 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:30:32 +00:00
terminx f93e228e2a Fix printf format specifier mismatches in G_PrintFPS()
git-svn-id: https://svn.eduke32.com/eduke32@7096 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:30:27 +00:00
terminx 175ac6dc6b This looks dumb as fuck, but it tells static analysis tools that our memory allocation functions literally never return a null pointer
git-svn-id: https://svn.eduke32.com/eduke32@7095 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:30:22 +00:00
terminx b65120200a Clean up Bgethomedir() and a few of the other directory functions
git-svn-id: https://svn.eduke32.com/eduke32@7094 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:30:17 +00:00
terminx 9987b1ffa0 Return invalid keyword string instead of null when passing a bad ID to VM_GetKeywordForID()
git-svn-id: https://svn.eduke32.com/eduke32@7093 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:30:12 +00:00
terminx 76e86ddcea Replace player number check with equivalent null pointer check
git-svn-id: https://svn.eduke32.com/eduke32@7092 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:30:08 +00:00
terminx 7bd8c55e32 Useless warning silencing
git-svn-id: https://svn.eduke32.com/eduke32@7091 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:30:03 +00:00
terminx 4c57c4dd46 imo auto is cleaner here because the cast of the rvalue makes the resulting type explicitly clear
git-svn-id: https://svn.eduke32.com/eduke32@7089 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:29:54 +00:00
terminx bac01d8e2a Completely unused struct...?
git-svn-id: https://svn.eduke32.com/eduke32@7088 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:29:49 +00:00
terminx 82fcd89ed5 Add debug_break() to default case in VM_Execute()
git-svn-id: https://svn.eduke32.com/eduke32@7087 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:29:44 +00:00
terminx 9079beadb4 Remove some dead statements, useless assigments, etc
git-svn-id: https://svn.eduke32.com/eduke32@7086 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:29:38 +00:00
terminx 1d71ea3fc0 polymost_setTexturePosSize() and polymost_setHalfTexelSize(): pass vec4f_t and vec2f_t by const reference instead of by value
git-svn-id: https://svn.eduke32.com/eduke32@7085 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:29:30 +00:00
terminx 03332e8812 Fix double free in osdcmd_do() and clean up the variable definitions while we're there
git-svn-id: https://svn.eduke32.com/eduke32@7084 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:29:25 +00:00
terminx 4bb9a4b792 sscanf format parameter fixups
git-svn-id: https://svn.eduke32.com/eduke32@7083 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:29:20 +00:00
terminx 9e68009725 Fix downmix_int_8bit() in libxmp-lite assuming char is a signed type
git-svn-id: https://svn.eduke32.com/eduke32@7082 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:29:13 +00:00
terminx 688fadd729 macOS build fix
git-svn-id: https://svn.eduke32.com/eduke32@7081 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:29:08 +00:00
terminx 75e141ec81 Fix potential buffer overruns in sdlayer
git-svn-id: https://svn.eduke32.com/eduke32@7080 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:29:04 +00:00
terminx 1f8b23152e Replace remaining instances of regular malloc/calloc/realloc/strdup with our memory error handler versions
git-svn-id: https://svn.eduke32.com/eduke32@7079 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-25 23:28:56 +00:00
terminx 9613bbac33 Use std::min and std::max instead of min and max macros.
git-svn-id: https://svn.eduke32.com/eduke32@7078 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-16 06:09:54 +00:00
terminx e77325f2a4 Remove redundant assignments
git-svn-id: https://svn.eduke32.com/eduke32@7077 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-16 06:09:42 +00:00
terminx 2ff98ca1ce Bump BYTEVERSION for previous change
git-svn-id: https://svn.eduke32.com/eduke32@7076 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-16 06:09:37 +00:00
terminx 2132fe978a The LZ4 versions of kdfread and kdfwrite don't have the size limitations that the LZW versions have
git-svn-id: https://svn.eduke32.com/eduke32@7075 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-16 06:09:32 +00:00
terminx e69aac2b93 Remove duplicated line
git-svn-id: https://svn.eduke32.com/eduke32@7074 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-16 06:09:26 +00:00
terminx ebcebbde5e Update engine headers so that argument names in function declarations match the actual function definitions. This also removes const from function declarations in cases when it isn't meaningful.
git-svn-id: https://svn.eduke32.com/eduke32@7073 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-16 06:09:20 +00:00
terminx 2e2731c119 Same sort of thing as the previous commits, but for the engine. Forward declaration cleanup and constification.
git-svn-id: https://svn.eduke32.com/eduke32@7072 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-16 06:09:09 +00:00
terminx 342b32c4aa Update duke3d headers so that argument names in function declarations match the actual function definitions. This also removes const from function declarations in cases when it isn't meaningful.
git-svn-id: https://svn.eduke32.com/eduke32@7071 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-16 06:08:58 +00:00
terminx af728b2641 Remove a few useless forward declarations and const-ify a couple of function parameters. Yawn.
git-svn-id: https://svn.eduke32.com/eduke32@7070 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-16 06:08:50 +00:00
terminx e9797fe24d Remove redundant return statements
git-svn-id: https://svn.eduke32.com/eduke32@7069 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-16 06:08:42 +00:00
terminx dcb0f9d8bb Convert a couple of strings with escaped characters to raw string literals
git-svn-id: https://svn.eduke32.com/eduke32@7068 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-16 06:08:36 +00:00
pogokeen 4b89c095e2 engine.cpp: fix crash when calling `setrendermode 3` where PolymostProcessVoxels would be called before Polymost is initialized.
PolymostProcessVoxels would call videoNextPage during processing which would attempt to render the OSD and lead to a segfault due to Polymost not being properly initialized.

git-svn-id: https://svn.eduke32.com/eduke32@7067 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-10 21:04:42 +00:00
terminx 7b1cdb6f12 Remove redundant statements. This commit doesn't actually do anything.
git-svn-id: https://svn.eduke32.com/eduke32@7066 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-10 19:15:38 +00:00
terminx d2f980694b P_UpdateScreenPal() seems to belong here instead
git-svn-id: https://svn.eduke32.com/eduke32@7065 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-10 19:15:33 +00:00
terminx da040c0690 Increase size of text buffer used for editor 3d mode info display--it was possible to overflow it
git-svn-id: https://svn.eduke32.com/eduke32@7064 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-10 19:15:28 +00:00
terminx cc6e458d00 Prevent g_sounds[] buffer overflow when attempting to define a sound with an index higher than MAXSOUNDS-1. This reduces the number of sound definitions available by 1 as the last slot is now reserved for the error condition.
git-svn-id: https://svn.eduke32.com/eduke32@7063 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-10 19:15:22 +00:00
terminx 6248cc9cee Remove redundant assignment and null ptr check
git-svn-id: https://svn.eduke32.com/eduke32@7062 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-10 19:15:17 +00:00
terminx 941aa87bce Fix usage of pointer to stack allocated array outside of the scope the array was declared in
git-svn-id: https://svn.eduke32.com/eduke32@7061 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-10 19:15:12 +00:00
terminx b50b1ad198 Fix huge bug in CON_COPY
git-svn-id: https://svn.eduke32.com/eduke32@7060 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-10 19:15:06 +00:00
terminx 1c5ddca44a Clarify assignment in ternary condition as not a bug
git-svn-id: https://svn.eduke32.com/eduke32@7059 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-10 19:15:01 +00:00
terminx 3e380309ce Replace error condition in rejectQueue_remove() with an assertion, because the NULL pointer it would return if something was fucked up would be unconditionally dereferenced in kdtree_add().
git-svn-id: https://svn.eduke32.com/eduke32@7058 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-10 19:14:56 +00:00
terminx bcb1374391 Static analyzer says this condition is never true
git-svn-id: https://svn.eduke32.com/eduke32@7057 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-10 19:14:51 +00:00
terminx 15008d7aec Revert r7017. I misread the code mismeasured the result.
git-svn-id: https://svn.eduke32.com/eduke32@7056 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-10 19:14:46 +00:00
terminx 1d3f77b46b Clean up error handling in shitty G_GetVersionFromWebsite() function
git-svn-id: https://svn.eduke32.com/eduke32@7055 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-10 19:14:41 +00:00
terminx e6c36442bd Add missing ifdef guards to namesdyn.h
git-svn-id: https://svn.eduke32.com/eduke32@7054 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-10 19:14:36 +00:00
terminx 7763a379ef Revert part of r7031 and fix the issue a different way
git-svn-id: https://svn.eduke32.com/eduke32@7053 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-10 19:14:31 +00:00
terminx b3914431b0 Fix memory leaks in editor sound list
git-svn-id: https://svn.eduke32.com/eduke32@7052 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-10 19:14:26 +00:00
terminx f354f824f4 Add missing ifdef guards to soundsdyn.h
git-svn-id: https://svn.eduke32.com/eduke32@7051 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-10 19:14:20 +00:00
pogokeen f876e8ad0c polymost.cpp: temporarily disable experimental r_enablepolymost2 cvar
git-svn-id: https://svn.eduke32.com/eduke32@7050 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-10 15:08:08 +00:00
pogokeen 0b41a17f6b polymost.h: fix order of parameters to match polymost.cpp
git-svn-id: https://svn.eduke32.com/eduke32@7049 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-10 14:37:06 +00:00
pogokeen d291a81ccd polymost.cpp: fix lockup bug that would occur with polymost_waitForSubBuffer() when glClientWaitSync consistently returned GL_WAIT_FAILED on certain hardware/drivers.
Additionally, fix conditional check for r_persistentStreamBuffer requirements in polymost_glinit().

git-svn-id: https://svn.eduke32.com/eduke32@7048 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-10 14:37:03 +00:00
terminx eee0a71496 Remove dead code branch from RECON (logic oversight) and get rid of a useless fallthrough__
git-svn-id: https://svn.eduke32.com/eduke32@7047 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:23:53 +00:00
terminx 59214a2d78 Fix off-by-one error in currently not very useful dedicated server text console input
git-svn-id: https://svn.eduke32.com/eduke32@7046 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:23:48 +00:00
terminx 3689f9c70c Useless yet innocuous sdlayer fixes
git-svn-id: https://svn.eduke32.com/eduke32@7045 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:23:44 +00:00
terminx 78a3797295 Use a local variable in SDL_GL_ATTRIBUTES macro instead of relying on it being declared in the function calling the macro
git-svn-id: https://svn.eduke32.com/eduke32@7044 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:23:39 +00:00
terminx aa939642d6 Fix MV_GetNextWAVBlock() to no longer check if the unsigned BlockLength value is less than 0.
git-svn-id: https://svn.eduke32.com/eduke32@7043 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:23:34 +00:00
terminx f5928ad5c7 Correct some fuckery in inflineintersect()
git-svn-id: https://svn.eduke32.com/eduke32@7042 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:23:29 +00:00
terminx f7c8eab261 Further revise a couple of null pointer checks in Polymost
git-svn-id: https://svn.eduke32.com/eduke32@7041 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:23:25 +00:00
terminx 217849b2a3 OSD strtoken maintenance
git-svn-id: https://svn.eduke32.com/eduke32@7040 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:23:20 +00:00
terminx 2d25aaee95 Variable scope reductions
git-svn-id: https://svn.eduke32.com/eduke32@7038 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:23:10 +00:00
terminx f67f935807 Fix some weirdness in osdcmd_setactorvar() and remove an unused counter var from osdcmd_map()
git-svn-id: https://svn.eduke32.com/eduke32@7037 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:23:05 +00:00
terminx 2f410776ec Parentheses around ternary conditions so CppCheck will stfu
git-svn-id: https://svn.eduke32.com/eduke32@7036 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:23:00 +00:00
terminx 008056763a Tweak gamevar struct shortcut error handling
git-svn-id: https://svn.eduke32.com/eduke32@7035 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:22:55 +00:00
terminx 3d9df928a5 Remove unused g_skipKeywordCheck
git-svn-id: https://svn.eduke32.com/eduke32@7034 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:22:51 +00:00
terminx 33f57d4bb6 Fix off-by-one error in CON_DEFINESOUND and null pointer arithmetic in CON_CASE and CON_DEFAULT (!)
git-svn-id: https://svn.eduke32.com/eduke32@7033 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:22:46 +00:00
terminx e6039031fe Variable scope reduction. This commit is boring as fuck.
git-svn-id: https://svn.eduke32.com/eduke32@7032 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:22:41 +00:00
terminx 3082d381b9 Fix more possible null pointer dereferences in mdsprite
git-svn-id: https://svn.eduke32.com/eduke32@7031 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:22:36 +00:00
terminx a3bfaed262 Mostly useless const-ifying and minor variable scope reduction in cache1d
git-svn-id: https://svn.eduke32.com/eduke32@7030 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:22:32 +00:00
terminx c2f26439d1 Fix filename string bounds check in kzipopen()
git-svn-id: https://svn.eduke32.com/eduke32@7029 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:22:27 +00:00
terminx c67cdc00f8 Fix leaked sockets when failing to check for updates
git-svn-id: https://svn.eduke32.com/eduke32@7028 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:22:22 +00:00
terminx eb08f1443e Pass vec2_ts to get_screen_coords() by reference instead of by value
git-svn-id: https://svn.eduke32.com/eduke32@7027 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:22:17 +00:00
terminx 2206581952 Prevent OOB array access when EVENT_INVENTORYLEFT or EVENT_INVENTORYRIGHT returns a bad value
git-svn-id: https://svn.eduke32.com/eduke32@7026 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:22:13 +00:00
terminx eeba7847eb Hoist strlen() outside loop in kzopen()
git-svn-id: https://svn.eduke32.com/eduke32@7025 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:22:08 +00:00
terminx a677b18b2d Hoist strlen() outside loop in osdfunc_listsymbols()
git-svn-id: https://svn.eduke32.com/eduke32@7024 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:22:03 +00:00
terminx 4f590f59c1 Fix potential OOB spriteext[] access when checking SPREXT_NOTMD to determine whether or not to render a sprite's model, if available
git-svn-id: https://svn.eduke32.com/eduke32@7023 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:21:58 +00:00
terminx 870f1c4dab Oh look, the first 3 arguments passed to parascan() are completely useless
git-svn-id: https://svn.eduke32.com/eduke32@7022 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:21:53 +00:00
terminx 756369dc22 Silence warning about truncating the result of memcmp
git-svn-id: https://svn.eduke32.com/eduke32@7021 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:21:49 +00:00
terminx f4227dcbc1 Tweak osdfunc_setrendermode() to report whether the classic renderer is the C or ASM version
git-svn-id: https://svn.eduke32.com/eduke32@7020 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:21:43 +00:00
terminx 0d843526f0 Fix null pointer deference when attempting to load a model with improper or missing skin definitions
git-svn-id: https://svn.eduke32.com/eduke32@7019 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:21:39 +00:00
terminx cab65752b5 Untabify kplib.cpp
git-svn-id: https://svn.eduke32.com/eduke32@7018 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:21:34 +00:00
terminx 12a77176e8 Fix overcomputation in the classic renderer due to a bug caused by a previous optimization attempt
git-svn-id: https://svn.eduke32.com/eduke32@7017 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:21:29 +00:00
terminx 9ae3a3ecb8 Slightly reorganize Bdirent struct for efficiency. Despite being "Bdirent", this struct in no way matches the system provided dirent struct.
git-svn-id: https://svn.eduke32.com/eduke32@7016 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:21:24 +00:00
terminx 6d7e0518cf Add debug_break() to the top of handle_memerr()
git-svn-id: https://svn.eduke32.com/eduke32@7015 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:21:20 +00:00
terminx 489ed5b803 Fix false positive buffer overflow report in PVS-Studio
git-svn-id: https://svn.eduke32.com/eduke32@7014 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:21:15 +00:00
terminx a7a2c3d12a Fix types of vars passed into sscanf() for use as return values
git-svn-id: https://svn.eduke32.com/eduke32@7013 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:21:10 +00:00
terminx 7f5f22e184 Fix issue in the C version of the classic renderer where someone had attempted to negate a bool
git-svn-id: https://svn.eduke32.com/eduke32@7012 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:21:06 +00:00
terminx 2f65866167 Fix bad logic for kill counter in G_DisplayRest()
git-svn-id: https://svn.eduke32.com/eduke32@7011 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:21:01 +00:00
terminx e1c1cebfbb Fix accidental double assignment of pPlayer->jetpack_on in P_ResetStatus()
git-svn-id: https://svn.eduke32.com/eduke32@7010 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:20:56 +00:00
terminx 0a84e2caef Untabify polymost.h
git-svn-id: https://svn.eduke32.com/eduke32@7009 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:20:52 +00:00
terminx 39c0c93615 Slightly increase efficiency of osd_findsymbol() (this is the slow one that has to handle partial matches)
git-svn-id: https://svn.eduke32.com/eduke32@7008 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:20:47 +00:00
terminx b0e0cfa2c9 Comment out bad entry in SDL keycode translation table
git-svn-id: https://svn.eduke32.com/eduke32@7007 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:20:42 +00:00
terminx 875a5afa93 Replace APLAYER picnum check in A_ShootWithZvel() with null pointer check
git-svn-id: https://svn.eduke32.com/eduke32@7006 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:20:37 +00:00
terminx 0757a6570b Replace spritenum check with ptr check in VM_ScriptInfo()
git-svn-id: https://svn.eduke32.com/eduke32@7005 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:20:33 +00:00
terminx d5381e701f Fix potential null pointer dereferencing
git-svn-id: https://svn.eduke32.com/eduke32@7004 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:20:28 +00:00
terminx e449408b57 Fix minor bug where a null pointer was passed into free() unconditionally
git-svn-id: https://svn.eduke32.com/eduke32@7003 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:20:23 +00:00
terminx 9157ae2776 Fix potential texcache issue with HICTINT_IN_MEMORY and HICTINT_APPLYOVERALTPAL due to a mistake involving operator precedence
git-svn-id: https://svn.eduke32.com/eduke32@7002 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:20:19 +00:00
terminx d7772a0100 Fix potential uninitialized use of highlightx/y/1/2 in the editor and convert them to vec2_t in the process
git-svn-id: https://svn.eduke32.com/eduke32@7001 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:20:14 +00:00
terminx 2f3e78a4b8 Fix potential dereference of null pointer when calling polymost_bindPth()
git-svn-id: https://svn.eduke32.com/eduke32@7000 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:20:09 +00:00
terminx 8b2d546774 Fix potential null pointer dereference in S_DefineAudioIfSupported() when passing filenames without extensions
git-svn-id: https://svn.eduke32.com/eduke32@6999 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:20:04 +00:00
terminx 2cb5d948e8 Move SE40 floor/ceilingstat and Z coordinate backups to global variables instead of allocating them on the stack.
git-svn-id: https://svn.eduke32.com/eduke32@6998 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:20:00 +00:00
terminx 7eb3436bad Fix potential null pointer dereferences when rendering a model with no animations (?)
git-svn-id: https://svn.eduke32.com/eduke32@6997 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:19:55 +00:00
terminx fbbaeff95a Fix potential null pointer dereference
git-svn-id: https://svn.eduke32.com/eduke32@6996 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:19:50 +00:00
terminx 065bd8df60 Fix a couple of things with the dreaded crosshair coloration functions. ;)
git-svn-id: https://svn.eduke32.com/eduke32@6995 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-07 05:19:45 +00:00
terminx ece6082d2b Add debugbreak.h from https://github.com/scottt/debugbreak
git-svn-id: https://svn.eduke32.com/eduke32@6990 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-04 04:19:46 +00:00
terminx c33d6a6e89 https://imgur.com/N2v8kjU
git-svn-id: https://svn.eduke32.com/eduke32@6989 1a8010ca-5511-0410-912e-c29ae57300e0
2018-10-03 00:43:31 +00:00
terminx a8cee68a7e "@Dick can you make it so that its impossible to pan the floor texture in 2d mode if the texture isnt visible?"
git-svn-id: https://svn.eduke32.com/eduke32@6988 1a8010ca-5511-0410-912e-c29ae57300e0
2018-09-29 01:54:58 +00:00
terminx dd1058c767 Actually fix savegame crash... probably.
git-svn-id: https://svn.eduke32.com/eduke32@6987 1a8010ca-5511-0410-912e-c29ae57300e0
2018-09-29 01:54:52 +00:00
terminx 6aeab6561d Fix embarrassing Windows-centric fuckup
git-svn-id: https://svn.eduke32.com/eduke32@6986 1a8010ca-5511-0410-912e-c29ae57300e0
2018-09-28 07:07:04 +00:00
terminx 89d5305ee3 Fix VS warning
git-svn-id: https://svn.eduke32.com/eduke32@6984 1a8010ca-5511-0410-912e-c29ae57300e0
2018-09-28 04:27:53 +00:00
terminx 220d86a583 Fix savegame crash issue
git-svn-id: https://svn.eduke32.com/eduke32@6983 1a8010ca-5511-0410-912e-c29ae57300e0
2018-09-28 04:27:48 +00:00
terminx d4c9cc28d5 Minor fixups needed to build as a native VS project
git-svn-id: https://svn.eduke32.com/eduke32@6982 1a8010ca-5511-0410-912e-c29ae57300e0
2018-09-28 04:27:42 +00:00
terminx 64d464e988 EDUKE32_STANDALONE stuff
git-svn-id: https://svn.eduke32.com/eduke32@6980 1a8010ca-5511-0410-912e-c29ae57300e0
2018-09-28 04:27:23 +00:00
terminx 8a2651ac55 Remove apScriptEvents from savegames
git-svn-id: https://svn.eduke32.com/eduke32@6979 1a8010ca-5511-0410-912e-c29ae57300e0
2018-09-28 04:27:17 +00:00
terminx f3e0a0b892 Revise r6974
git-svn-id: https://svn.eduke32.com/eduke32@6978 1a8010ca-5511-0410-912e-c29ae57300e0
2018-09-06 19:07:02 +00:00
terminx 4c4c5f569c Fix parameter aliasing warning in G_LoadGroups()
git-svn-id: https://svn.eduke32.com/eduke32@6977 1a8010ca-5511-0410-912e-c29ae57300e0
2018-09-06 19:06:55 +00:00
terminx e6277dd8da Replace a bunch of fall-through comments with our fallthrough__ macro.
git-svn-id: https://svn.eduke32.com/eduke32@6976 1a8010ca-5511-0410-912e-c29ae57300e0
2018-09-04 05:57:41 +00:00
terminx 8d72c6e5c5 Disable a few more hard-coded sounds in EDUKE32_STANDALONE builds
git-svn-id: https://svn.eduke32.com/eduke32@6975 1a8010ca-5511-0410-912e-c29ae57300e0
2018-09-01 19:36:20 +00:00
terminx 2738d8e2a4 Add PROJECTILE_RPG_IMPACT_DAMAGE flag for projectiles, 0x00400000. This makes PROJECTILE_RPG_IMPACT function more or less how it did prior to late 2016 when an issue involving the damage was identified and fixed, and moves the damage to the new flag.
git-svn-id: https://svn.eduke32.com/eduke32@6974 1a8010ca-5511-0410-912e-c29ae57300e0
2018-09-01 19:36:15 +00:00
terminx 388a649ee5 Don't invalidate saves based on the compiled script CRC if the script hasn't been compiled yet
git-svn-id: https://svn.eduke32.com/eduke32@6973 1a8010ca-5511-0410-912e-c29ae57300e0
2018-09-01 19:36:10 +00:00
terminx 3ba8cb7d05 Xmalloc() -> Xrealloc() in C_AllocProjectile()
git-svn-id: https://svn.eduke32.com/eduke32@6972 1a8010ca-5511-0410-912e-c29ae57300e0
2018-09-01 19:36:05 +00:00
terminx e8b042899b Apply the same autoaim Z position offsetting logic used on GREENSLIME and ROTATEGUN to any sprite with CSTAT_SPRITE_YCENTER set
git-svn-id: https://svn.eduke32.com/eduke32@6971 1a8010ca-5511-0410-912e-c29ae57300e0
2018-09-01 19:36:01 +00:00
terminx 41ed560c45 Reword error message displayed at startup when game data is missing
git-svn-id: https://svn.eduke32.com/eduke32@6970 1a8010ca-5511-0410-912e-c29ae57300e0
2018-09-01 19:35:55 +00:00
terminx 0cc54720db Silence less stupid fucking warning
git-svn-id: https://svn.eduke32.com/eduke32@6969 1a8010ca-5511-0410-912e-c29ae57300e0
2018-08-09 16:07:14 +00:00
terminx e9961ec5a3 Silence stupid fucking warnings
git-svn-id: https://svn.eduke32.com/eduke32@6968 1a8010ca-5511-0410-912e-c29ae57300e0
2018-08-09 16:07:09 +00:00
terminx 2c993de792 Bump BYTEVERSION
git-svn-id: https://svn.eduke32.com/eduke32@6967 1a8010ca-5511-0410-912e-c29ae57300e0
2018-08-09 16:07:04 +00:00
terminx a919fecdbb Don't play DUKE_GOTHEALTHATLOW sound in standalone builds
git-svn-id: https://svn.eduke32.com/eduke32@6966 1a8010ca-5511-0410-912e-c29ae57300e0
2018-08-09 16:07:00 +00:00
terminx f8fc87db78 Work around strange internal compiler error with gcc 8.2.0...
git-svn-id: https://svn.eduke32.com/eduke32@6965 1a8010ca-5511-0410-912e-c29ae57300e0
2018-08-09 16:06:55 +00:00
terminx f1cedd03f4 Remove compiled CON script from savegames in favor of storing a simple CRC32 value computed from the uncompiled CON text--this means that savegames can now only be loaded if the currently loaded CONs match what was in use when the game was saved.
git-svn-id: https://svn.eduke32.com/eduke32@6964 1a8010ca-5511-0410-912e-c29ae57300e0
2018-08-09 16:06:49 +00:00
pogokeen 448dd1cd01 screens.cpp: Show average game update time over the last 100 game updates
git-svn-id: https://svn.eduke32.com/eduke32@6963 1a8010ca-5511-0410-912e-c29ae57300e0
2018-08-02 07:53:09 +00:00
hendricks266 bf043adb73 [facepalm emoji]
git-svn-id: https://svn.eduke32.com/eduke32@6962 1a8010ca-5511-0410-912e-c29ae57300e0
2018-08-02 01:21:19 +00:00
hendricks266 e38dc3f674 Remove redundant code from Polymost fog
Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6961 1a8010ca-5511-0410-912e-c29ae57300e0
2018-08-02 01:21:16 +00:00
pogokeen eb964f15d8 polymost.cpp/glsurface.cpp: Don't print shader compile status to the console on success.
git-svn-id: https://svn.eduke32.com/eduke32@6960 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-30 23:01:48 +00:00
terminx c536225555 Mapste32: echo successful script commands invoked from the console with "do" back to the console in green to indicate success.
git-svn-id: https://svn.eduke32.com/eduke32@6959 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-29 19:31:18 +00:00
terminx e92e9d4f04 "Lomont then searched for a constant optimal even after one and two Newton iterations and found 0x5F375A86, which is more accurate than the original at every iteration stage."
git-svn-id: https://svn.eduke32.com/eduke32@6958 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-29 19:31:12 +00:00
terminx ddd8b7e5bb Cheap fix for load game menu crash
git-svn-id: https://svn.eduke32.com/eduke32@6957 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-26 16:34:03 +00:00
terminx c5054af778 Add missing USERDEFS_USERBYTEVERSION to VM_SetUserdef()
git-svn-id: https://svn.eduke32.com/eduke32@6956 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-26 16:33:57 +00:00
hendricks266 0a7f148a8b Create P_GetOverheadPal() and restore the DOS definition of it.
DOS: the player sprite's pal (including pants color and frozenness), unaffected by sector floor pal
what the code had for some reason: the sector's floor pal, neglecting the nofloorpal bit, frozenness, and the player's pants color

I contend that it is okay for the automap sprite to ignore the sector's color for map legibility purposes.

git-svn-id: https://svn.eduke32.com/eduke32@6955 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-23 02:56:11 +00:00
hendricks266 5cf6c2110c Factor out P_GetKneePal().
git-svn-id: https://svn.eduke32.com/eduke32@6954 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-23 02:56:08 +00:00
hendricks266 e14d92a2af Clean up variables in overhead map player sprite draw code.
git-svn-id: https://svn.eduke32.com/eduke32@6953 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-23 02:56:05 +00:00
hendricks266 1839427f0d Menus: Make some non-functional changes for clarity in Menu_RunInput_EntryRange*_Movement.
git-svn-id: https://svn.eduke32.com/eduke32@6952 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-23 02:56:02 +00:00
hendricks266 d1ea5176ff Fix -Wformat-overflow warnings
git-svn-id: https://svn.eduke32.com/eduke32@6951 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-23 02:55:59 +00:00
hendricks266 cc999ff883 Fix warning: 'void* memset(void*, int, size_t)' clearing an object of non-trivial type 'struct menusave_t'; use assignment or value-initialization instead [-Wclass-memaccess]
git-svn-id: https://svn.eduke32.com/eduke32@6950 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-23 02:55:56 +00:00
hendricks266 104bdb131b Fix warning: type qualifiers ignored on cast result type [-Wignored-qualifiers]
git-svn-id: https://svn.eduke32.com/eduke32@6949 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-23 02:55:53 +00:00
hendricks266 a0c87b5fda Update glad to 0.1.25
Includes https://github.com/Dav1dde/glad/pull/140

git-svn-id: https://svn.eduke32.com/eduke32@6948 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-23 02:55:49 +00:00
hendricks266 0116b51b2d softsurface: Perform a "divisor known at compile time" optimization
git-svn-id: https://svn.eduke32.com/eduke32@6947 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-23 02:55:46 +00:00
hendricks266 142b97b9fb Fix variable capitalization in Dependencies.mak files
git-svn-id: https://svn.eduke32.com/eduke32@6946 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-23 02:55:42 +00:00
terminx f181db5776 MSVC build fix
git-svn-id: https://svn.eduke32.com/eduke32@6945 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-21 00:18:18 +00:00
terminx 89cfe15d64 Limit classic upscaling to 2x and 4x until issues with rotatesprite can be ironed out
git-svn-id: https://svn.eduke32.com/eduke32@6944 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-21 00:18:13 +00:00
terminx a9db35a808 CON_SWITCH maintenance
git-svn-id: https://svn.eduke32.com/eduke32@6943 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-21 00:18:08 +00:00
terminx b2e788b7e9 EDUKE32_STANDALONE stuff
git-svn-id: https://svn.eduke32.com/eduke32@6942 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-21 00:18:03 +00:00
terminx 1cfe23b348 Change sv prefix applied to savegame control cvars to cl for client (sv is reserved for server vars in multiplayer)
git-svn-id: https://svn.eduke32.com/eduke32@6941 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-21 00:17:57 +00:00
pogokeen 8f579cbd09 menus.cpp: Don't show texture filtering, anisotropy, or palette emulation options when EDUKE32_STANDALONE is defined
git-svn-id: https://svn.eduke32.com/eduke32@6940 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-18 00:24:03 +00:00
pogokeen 1df7127609 Support software renderer upscaling engine-side in sdlayer and sdlayer12 with various scaling factors (beyond just pixel doubling).
When glsurface is available, use GL to upscale the render buffer.
Additionally, fix build issues with sdlayer12 introduced by GLAD changes (r6656).

git-svn-id: https://svn.eduke32.com/eduke32@6939 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-14 21:36:44 +00:00
pogokeen 1b932fddaf sdlayer.cpp: Don't destroy window resouces if switching between software rendering on glsurface and Polymost/Polymer
git-svn-id: https://svn.eduke32.com/eduke32@6938 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-14 21:36:34 +00:00
pogokeen a13a8bf579 polymost.cpp: make c_wrapThreshold consistent between POLYMOST1_BASIC_FRAGMENT_SHADER_CODE and POLYMOST1_EXTENDED_FRAGMENT_SHADER_CODE
git-svn-id: https://svn.eduke32.com/eduke32@6937 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-03 04:29:23 +00:00
pogokeen facc69f142 polymost.cpp: fix rendering for indexed colour textures to match original behaviour when !r_usetileshades or globalflags & GLOBAL_NO_GL_TILESHADES
Additionally, fix issue in polymost_setShade() where shade calculation was happening after a check for whether or not the shade needed to be updated.

git-svn-id: https://svn.eduke32.com/eduke32@6936 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-03 04:29:19 +00:00
terminx 16cdad6bca Rename console command 'sv_cleanup' to 'purgesaves', as sv_ is a prefix for cvars, not console commands
git-svn-id: https://svn.eduke32.com/eduke32@6935 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-01 04:51:25 +00:00
terminx ba7340ca47 Reduce default snd_numvoices to 64 and reduce max to 128
git-svn-id: https://svn.eduke32.com/eduke32@6934 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-01 04:51:19 +00:00
pogokeen 29c2863750 sdlayer.cpp: fix software renderer crash affecting Mapster32 due to improper handling of lockcount in videoBeginDrawing()/videoEndDrawing() when using glsurface
git-svn-id: https://svn.eduke32.com/eduke32@6933 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-28 02:00:42 +00:00
pogokeen 9e90b0633b glsurface.h/.cpp: change how the palette is handled and fix tinting/fading
git-svn-id: https://svn.eduke32.com/eduke32@6932 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-25 14:53:46 +00:00
pogokeen a0faeaf8f6 Revert a number of changes from r6929 and r6930 that are no longer necessary.
Fix root causes of issues causing crash and black screen in Mapster32 when switching back and forth between 3D & 2D modes

git-svn-id: https://svn.eduke32.com/eduke32@6931 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-25 14:53:42 +00:00
terminx d0e73aa85e Temporary workaround for palette or GL surface issue wherein launching Mapster32 into 2d mode produces a black screen until switching to 3d mode and back
git-svn-id: https://svn.eduke32.com/eduke32@6930 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-24 00:55:29 +00:00
terminx bcb7815118 Fix crash in Mapster32 when switching from GL 3d mode to 2d mode.
git-svn-id: https://svn.eduke32.com/eduke32@6929 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-24 00:55:23 +00:00
terminx cbf6dc3c42 Use aligned memory allocation for GL surface
git-svn-id: https://svn.eduke32.com/eduke32@6928 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-24 00:55:17 +00:00
terminx 983781b56d Fix issue with viewing the player sprite through a security camera
git-svn-id: https://svn.eduke32.com/eduke32@6927 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-21 04:12:04 +00:00
terminx e1a532a15d Fix inclusion of sdl_inc.h in Duke3D's config.cpp
git-svn-id: https://svn.eduke32.com/eduke32@6926 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-14 21:25:20 +00:00
terminx 84cae053c1 Fix error with initputs symbol when linking the Build tools in some environments
git-svn-id: https://svn.eduke32.com/eduke32@6925 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-14 21:25:14 +00:00
terminx 652c0044a1 Fix building the Build tools
git-svn-id: https://svn.eduke32.com/eduke32@6924 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-14 17:49:53 +00:00
terminx f873b551a8 Fix building with winlayer
git-svn-id: https://svn.eduke32.com/eduke32@6923 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-14 17:49:46 +00:00
pogokeen ffee0f8ae9 Add glsurface.cpp/h and tilepacker.cpp/h to Visual Studio Project
git-svn-id: https://svn.eduke32.com/eduke32@6922 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-13 19:15:26 +00:00
pogokeen d5b669ebe5 Don't allow GL modes if GL Major Version is less than 2.
Additionally, fix build issues for RENDERTYPE=WIN introduced in r6827.

git-svn-id: https://svn.eduke32.com/eduke32@6921 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-13 19:15:22 +00:00
pogokeen 7fd844a795 sdlayer.cpp: don't alter desktop composition using win_setvideomode() if we're creating an SDL window for rendering GL
git-svn-id: https://svn.eduke32.com/eduke32@6920 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-13 19:15:19 +00:00
pogokeen 9d243606d0 When OpenGL is available, prefer using the new glsurface to blit the classic renderer's 8-bit buffer to the screen.
git-svn-id: https://svn.eduke32.com/eduke32@6919 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-13 19:15:16 +00:00
pogokeen 38de24d7eb tilepacker.cpp: instead of maintaining the heap on each insertion, maxheap_buildHeap() on tilepacker_pack()
git-svn-id: https://svn.eduke32.com/eduke32@6918 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-13 19:15:10 +00:00
pogokeen 58132c2353 anim.cpp: timerUpdate() before setting the start time of the animation so that delays outside of animation playback won't cause animations to skip
git-svn-id: https://svn.eduke32.com/eduke32@6917 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-12 20:28:02 +00:00
pogokeen e75e8cc4aa astub.cpp: fix issue where globalpal was not declared if polymost.h was not included
git-svn-id: https://svn.eduke32.com/eduke32@6916 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-12 02:13:39 +00:00
pogokeen 054f25d7ef palette.cpp: don't call uploadbasepalette() if USE_OPENGL is not defined
git-svn-id: https://svn.eduke32.com/eduke32@6915 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-12 02:13:32 +00:00
terminx 725d556bc4 Fix conveyor belt speed in IM, but not Duke because it breaks gameplay
git-svn-id: https://svn.eduke32.com/eduke32@6914 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-09 20:36:47 +00:00
terminx fb301ddae7 Rename KXDWN macro and GAMEFLAG_KXDWN to IONMAIDEN and GAMEFLAG_IONMAIDEN
git-svn-id: https://svn.eduke32.com/eduke32@6913 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-09 20:36:42 +00:00
terminx 2c80af8c12 Remove dead code branch from A_DoWaterTracers() and rename the function to Proj_DoWaterTracers()
git-svn-id: https://svn.eduke32.com/eduke32@6912 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-09 20:36:37 +00:00
terminx 0dd623a7fe Don't spawn hardcoded Duke3D debris/guts/glass sprites when compiled as EDUKE32_STANDALONE
git-svn-id: https://svn.eduke32.com/eduke32@6911 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-09 20:36:31 +00:00
terminx 9c313158e8 Rework SE26 movement to function more like SE14 than SE24
git-svn-id: https://svn.eduke32.com/eduke32@6910 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-09 20:36:24 +00:00
terminx 66dadaaa71 Fix issues with running the game fullscreen on Windows 10 with high DPI setups
git-svn-id: https://svn.eduke32.com/eduke32@6909 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-05 21:59:59 +00:00
terminx 326af0d062 Fix SFLAG_WAKEUPBADGUYS
git-svn-id: https://svn.eduke32.com/eduke32@6908 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-05 21:59:52 +00:00
pogokeen 8bf9ad1c31 engine.cpp: fix issue introduced in r6905 where voxels with fractional scaling would not be handled correctly in Polymost
git-svn-id: https://svn.eduke32.com/eduke32@6907 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-30 12:01:42 +00:00
pogokeen 014cf67753 tiles.cpp: fix texcache.cpp:CLEAR_GL_ERRORS() hang on some drivers when trying to create GL textures for tiles when we have no GL context.
This could occur when returning to 2D mode from 3D mode in Mapster32 as videoSet2DMode() does not affect the result of videoGetRenderMode() despite destroying the GL context.

git-svn-id: https://svn.eduke32.com/eduke32@6906 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-26 22:11:25 +00:00
pogokeen db1220cd11 engine.cpp: fix issue with voxmodel_t voxels not having their scale set properly due to defs being processed before PolymostProcessVoxels()
git-svn-id: https://svn.eduke32.com/eduke32@6905 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-23 15:04:56 +00:00
pogokeen 5ff4e22eb9 engine.cpp: fix classicDrawVoxel() positioning bugs by:
+avoid adding the pivot's z offset again after it was already added in classicDrawSprite()
+offset the voxel object by half of the voxel object's z size

git-svn-id: https://svn.eduke32.com/eduke32@6904 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-23 15:04:52 +00:00
hendricks266 5629f4f433 Manually rebasing my r6899 over the formatting atrocity in r6895 broke my work.
git-svn-id: https://svn.eduke32.com/eduke32@6903 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-23 06:01:53 +00:00
hendricks266 48f86ce594 CON: Add "swaparrays" command, which performs a pointer-swap on arrays of the same storage class.
git-svn-id: https://svn.eduke32.com/eduke32@6902 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-23 05:58:21 +00:00
hendricks266 2a9c846a49 CON: Factor out the parsing of gamearray names.
git-svn-id: https://svn.eduke32.com/eduke32@6901 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-23 05:58:17 +00:00
hendricks266 a442c4f7bf CON: Remix resizearray in the following ways:
Make only one allocation instead of two.
Calculate array byte sizes in a way compatible with GAMEARRAY_BOOLEAN.
Clear the expanded part of grown arrays using correct counts for non-int32 sizes.
Support resizing an array to 0 to free it.

git-svn-id: https://svn.eduke32.com/eduke32@6900 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-23 05:58:12 +00:00
hendricks266 cb86c86ee1 CON: Implement the copy command for GAMEARRAY_BOOLEAN.
git-svn-id: https://svn.eduke32.com/eduke32@6899 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-23 05:58:09 +00:00
hendricks266 064ff3a403 CON: Fix two regressions completely breaking the correctness of the copy command, introduced in r6343.
git-svn-id: https://svn.eduke32.com/eduke32@6898 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-23 05:58:03 +00:00
hendricks266 749d79dcdd Fix the vertical position of the level stats when using the original mini-HUD.
Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6897 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-23 05:57:58 +00:00
hendricks266 9b495ea67f Ensure that anywhere the def parser takes a tilenum or palnum accepts defined tokens in addition to integer literals, if it doesn't already.
Affects fogpal, nofloorpalrange, setuptilerange, dummytilerange, undefinetilerange, definemodelframe, definevoxeltiles, texhitscanrange, nofullbrightrange, and light.

git-svn-id: https://svn.eduke32.com/eduke32@6896 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-23 05:43:35 +00:00
terminx d2e4823feb Move some of the more commonly used CON functions to the top of the switch in VM_Execute(), and promote some of the loop's variables to native_t. Unfortunately, Visual Studio's new clang-format integration took it upon itself to reformat everything. Use diff -w.
git-svn-id: https://svn.eduke32.com/eduke32@6895 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-22 19:03:44 +00:00
terminx 18a289d762 CON: make setting a sector's .wallptr call setfirstwall() instead of setting it directly and corrupting the map
git-svn-id: https://svn.eduke32.com/eduke32@6894 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-22 19:03:24 +00:00
pogokeen 712646f713 actors.cpp: improve SE_11_SWINGING_DOOR detection and handling of players that block a door's path
git-svn-id: https://svn.eduke32.com/eduke32@6893 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-22 10:01:17 +00:00
hendricks266 7c7b8f62a9 CON: Revert r6526 and r6527. This restores the longstanding behavior of the killit command, and setting sprites' xrepeat to zero, to not actually delete sprites unless their statnum is STAT_ACTOR or STAT_MISC. Be sure to set a sprite's statnum to one of these statnums if you want it to be deleted.
This should fix the broken E1L1 sector warp in the existing release of the Duke 64 mod, and the Polymer light culling used in HHR.

git-svn-id: https://svn.eduke32.com/eduke32@6892 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-22 05:59:08 +00:00
hendricks266 6cb29c820c sdlmusic: Slight cosmetic cleanup
git-svn-id: https://svn.eduke32.com/eduke32@6891 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-19 14:14:25 +00:00
hendricks266 b5caf1cd1e sdlmusic: Implement graceful playback failure
git-svn-id: https://svn.eduke32.com/eduke32@6890 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-19 14:14:22 +00:00
hendricks266 03f2cdd9b3 Fix MIDI playback on non-Windows platforms
git-svn-id: https://svn.eduke32.com/eduke32@6889 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-19 14:14:18 +00:00
pogokeen 5ee2bbc771 polymost_drawpoly(): fix issue where mirrors wouldn't update the depth buffer
git-svn-id: https://svn.eduke32.com/eduke32@6888 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-17 22:33:13 +00:00
pogokeen e87b6b902f G_HandleMirror(): When choosing which mirror to render, only choose from mirrors that are potentially visible.
git-svn-id: https://svn.eduke32.com/eduke32@6887 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-17 00:35:26 +00:00
pogokeen d6d078114c engine.cpp/.h: clean up & fix lintersect(). Additionally, add support for finding intersections of collinear line segments.
git-svn-id: https://svn.eduke32.com/eduke32@6886 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-15 16:45:34 +00:00
pogokeen a4736f6bf7 polymost_bindPth(): Fix issue where non-indexed colour, non-hightile textures (including those with polytintflags HICTINT_USEONART or HICTINT_ALWAYSUSEART) would not render correctly while r_useindexedcolortextures is set.
git-svn-id: https://svn.eduke32.com/eduke32@6885 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-08 22:47:55 +00:00
pogokeen 38e3784549 Incrementing ud.executions is now done in app_main() instead of CONFIG_WriteSetup() so that it is only incremented once per execution.
git-svn-id: https://svn.eduke32.com/eduke32@6884 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-08 17:32:19 +00:00
pogokeen dcdffb73d0 Dynamic tilepacking for indexed colour textures
git-svn-id: https://svn.eduke32.com/eduke32@6883 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-08 17:32:16 +00:00
pogokeen 3ad44df555 ud.showfps > 2 now shows Game Update time and Game Update & Draw time (along with the min & max Game Update time) for easier performance analysis
git-svn-id: https://svn.eduke32.com/eduke32@6882 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-08 17:32:11 +00:00
pogokeen fdaf5a8ac7 polymost_resetVertexPointers(): remove erroneous glBindBuffer call
git-svn-id: https://svn.eduke32.com/eduke32@6881 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-08 17:32:07 +00:00
hendricks266 9db0358472 Amend r6870 and r6871 to only apply in WW2GI mode.
git-svn-id: https://svn.eduke32.com/eduke32@6880 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-08 00:01:14 +00:00
terminx a6c41df404 Revert r6870
git-svn-id: https://svn.eduke32.com/eduke32@6879 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-07 17:08:54 +00:00
terminx dcdf3b79b2 Ignore cache size setting in .cfg if the value is less than the hard-coded default
git-svn-id: https://svn.eduke32.com/eduke32@6878 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-04 22:42:42 +00:00
terminx bbae62868a Very light sound cleanup
git-svn-id: https://svn.eduke32.com/eduke32@6877 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-04 22:42:37 +00:00
terminx 2e45801d43 Add quick save and quick load to the keyboard configuration menu
git-svn-id: https://svn.eduke32.com/eduke32@6876 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-04 22:42:31 +00:00
hendricks266 00d1c5fc5b Bump the default cache size to 96 MiB.
git-svn-id: https://svn.eduke32.com/eduke32@6875 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-03 06:05:56 +00:00
hendricks266 d31ae817f1 Disable S_ClearSoundLocks, preventing sounds from being marking purgable, and causing them to get prematurely evicted.
This fixes the absent sound issues in WWII GI.

git-svn-id: https://svn.eduke32.com/eduke32@6874 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-03 04:44:36 +00:00
hendricks266 6688860ef7 WWII GI: Remove the hack/approximation for the bazooka display code because one of the general weapon system fixes made it work incorrectly, and also made a direct port of the original code work correctly. Accuracy FTW!
git-svn-id: https://svn.eduke32.com/eduke32@6873 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-03 04:44:33 +00:00
hendricks266 58f5b34143 Fix some printf warnings.
git-svn-id: https://svn.eduke32.com/eduke32@6872 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-02 07:13:04 +00:00
hendricks266 b3bd2e686c WWII GI: Fix the chaingun replacement to always reload even if you continue holding down fire.
git-svn-id: https://svn.eduke32.com/eduke32@6871 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-02 07:13:01 +00:00
hendricks266 e9aa30ceee WWII GI: Fix the chaingun replacement to not fire in bursts of 3 per fire button press.
git-svn-id: https://svn.eduke32.com/eduke32@6870 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-02 07:12:58 +00:00
hendricks266 1d75fa13a4 WWII GI: Fix mistakes in our version of the weapon display code.
git-svn-id: https://svn.eduke32.com/eduke32@6869 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-02 07:12:55 +00:00
hendricks266 aba749c3bd WWII GI: Update the default values of the weapon gamevars to correctly match the original game.
git-svn-id: https://svn.eduke32.com/eduke32@6868 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-02 07:12:52 +00:00
hendricks266 2ae24e56f2 Fix some inaccuracies to the released versions of NAM and WWII GI.
*Both: Reload frame display for weapon 1
*WW2GI: Some effect bits for changes in ammo amount of weapon 11 in the status bar

Thanks to NY00123 for detailed comparisons of the released source code to the original binaries!

git-svn-id: https://svn.eduke32.com/eduke32@6867 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-02 07:12:49 +00:00
hendricks266 e36607fd88 NAM: Fix the M16's autoaim.
Reported by Little Tijn.

git-svn-id: https://svn.eduke32.com/eduke32@6866 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-02 07:12:42 +00:00
terminx 64b37dc581 Direct cache1d error messages to log instead of stdout
git-svn-id: https://svn.eduke32.com/eduke32@6865 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-29 17:20:11 +00:00
terminx 5b20947da6 Add 'P' hotkey to change palette in tile selector, and clean up the info at the bottom of the screen a bit
git-svn-id: https://svn.eduke32.com/eduke32@6864 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-29 17:20:07 +00:00
terminx 07ec86c4af Mapster32: second attempt at preventing extra wall points from being inserted on some walls with the batch point insert tool
git-svn-id: https://svn.eduke32.com/eduke32@6863 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-29 17:20:01 +00:00
terminx 2b80de8a8c Mapster32: in tile selector, make backspace set palette to 0
git-svn-id: https://svn.eduke32.com/eduke32@6862 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-23 10:51:12 +00:00
terminx a075f8e22b Mapster32: use object's current palette on tile selection screen and allow cycling object palettes from tile selection screen with - and =
git-svn-id: https://svn.eduke32.com/eduke32@6861 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-23 10:15:32 +00:00
terminx a407661354 Mapster32: use sc_XXX defines from scancodes.h instead of unlabeled hex scancodes when checking keystatus[]
git-svn-id: https://svn.eduke32.com/eduke32@6860 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-23 10:15:27 +00:00
terminx b1c44af6f8 Indentation
git-svn-id: https://svn.eduke32.com/eduke32@6858 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-23 10:15:17 +00:00
terminx b4a8656910 Fix Mapster32 bug where sometimes you'd get two points instead of one when pressing enter to insert points where the lines intersect with the wall drawing tool
git-svn-id: https://svn.eduke32.com/eduke32@6857 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-23 10:15:12 +00:00
terminx 16696dbe0b LZ4 warning silencing I accidentally left out of a previous commit
git-svn-id: https://svn.eduke32.com/eduke32@6856 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-23 10:15:03 +00:00
terminx b932485a1d macOS build fix
git-svn-id: https://svn.eduke32.com/eduke32@6855 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-23 06:36:14 +00:00
terminx e682986e69 Readability improvements for gamestructures.cpp
git-svn-id: https://svn.eduke32.com/eduke32@6854 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-23 06:36:08 +00:00
terminx 21c9f6dd7e Use references in some gamevar stuff
git-svn-id: https://svn.eduke32.com/eduke32@6853 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-23 06:36:02 +00:00
terminx f903aac29f Fix warning
git-svn-id: https://svn.eduke32.com/eduke32@6852 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-23 06:35:57 +00:00
terminx df50dcd897 Change mouseGrabInput()'s parameter to a bool
git-svn-id: https://svn.eduke32.com/eduke32@6851 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-23 06:35:52 +00:00
terminx ee4df7fde5 Fix a couple of warnings in the new versions of LZ4 and Miniz
git-svn-id: https://svn.eduke32.com/eduke32@6850 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-23 06:35:45 +00:00
terminx 4cd19d5435 Update Miniz
git-svn-id: https://svn.eduke32.com/eduke32@6849 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-23 06:35:34 +00:00
terminx 5522ac0f2d Rename int64.h to fix16_int64.h
git-svn-id: https://svn.eduke32.com/eduke32@6848 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-23 06:35:25 +00:00
terminx 64b0755ec5 Update xxHash
git-svn-id: https://svn.eduke32.com/eduke32@6847 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-23 06:35:17 +00:00
terminx b3aa64a026 Update lz4
git-svn-id: https://svn.eduke32.com/eduke32@6846 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-23 06:35:11 +00:00
terminx ef9845a947 Merge our changes to libdivide back in
git-svn-id: https://svn.eduke32.com/eduke32@6845 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-23 06:35:06 +00:00
terminx bd2019435a Update libdivide.h to latest release
git-svn-id: https://svn.eduke32.com/eduke32@6844 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-23 06:35:00 +00:00
terminx 30e1659214 Oops, I made a fuck
git-svn-id: https://svn.eduke32.com/eduke32@6843 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-23 06:34:55 +00:00
terminx 64c82e7b0d Remove no longer used glext.h
git-svn-id: https://svn.eduke32.com/eduke32@6842 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-23 06:34:49 +00:00
terminx 70b03fd608 This is probably faster
git-svn-id: https://svn.eduke32.com/eduke32@6841 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-23 06:34:43 +00:00
terminx 4551b276a1 MSVC warning fix
git-svn-id: https://svn.eduke32.com/eduke32@6840 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-23 06:34:33 +00:00
terminx daa033d56a Replace sound callback mutex with atomic operation
git-svn-id: https://svn.eduke32.com/eduke32@6839 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-21 06:04:56 +00:00
terminx b92d4f6c1b Slight change to FX_DetectFormat(); format specifications seem to say there's no such thing as WAVE without RIFF.
git-svn-id: https://svn.eduke32.com/eduke32@6837 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-21 06:04:44 +00:00
terminx f952a77c9e Sound code tweaks
git-svn-id: https://svn.eduke32.com/eduke32@6836 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-21 06:04:39 +00:00
terminx 461561d2d0 Fix a bunch of off-by-one errors in the sound system, made apparent by a change to some related code.
git-svn-id: https://svn.eduke32.com/eduke32@6834 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-12 21:04:12 +00:00
terminx 1cb6ab9db1 Prevent divide by 0 when SDL_GetCurrentDisplayMode()/SDL_GetClosestDisplayMode() say the refresh rate is 0
git-svn-id: https://svn.eduke32.com/eduke32@6833 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-12 21:04:07 +00:00
terminx 87d19d5cde More function name shit
git-svn-id: https://svn.eduke32.com/eduke32@6832 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-12 21:04:00 +00:00
terminx 19c43b84b3 Function names
git-svn-id: https://svn.eduke32.com/eduke32@6831 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-12 21:03:47 +00:00
terminx e5bcc1cf81 More function name cleanup
git-svn-id: https://svn.eduke32.com/eduke32@6830 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-12 21:03:30 +00:00
terminx 1fd209444f Continuing the quest for clearer function names
git-svn-id: https://svn.eduke32.com/eduke32@6829 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-12 21:03:12 +00:00
terminx 0340e3cc0f Engine function name cleanup round 2
git-svn-id: https://svn.eduke32.com/eduke32@6828 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-12 21:02:51 +00:00
terminx ee63d2c070 Beginnings of baselayer.cpp/.h refactor. This is 99.9% renames.
git-svn-id: https://svn.eduke32.com/eduke32@6827 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-12 21:02:31 +00:00
terminx f41dc7b9c4 This is supposed to enable the discrete GPU on NVIDIA Optimus and AMD PowerXpress setups
git-svn-id: https://svn.eduke32.com/eduke32@6826 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-12 21:02:18 +00:00
hendricks266 84183c439b SW: Fix NORM_(SPRITE|WALL|SECTOR) macros to use MAX$1 instead of ARRAY_SIZE, which would fail due to the structs not being statically allocated.
Patch prepared by Striker.

git-svn-id: https://svn.eduke32.com/eduke32@6825 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-11 03:34:03 +00:00
hendricks266 6eeb14a12f CON: Add spawnceilingglass, spawnwallglass, and spawnwallstainedglass commands.
Patch from Striker.

git-svn-id: https://svn.eduke32.com/eduke32@6824 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-11 03:33:59 +00:00
hendricks266 d41f233045 CON: Add resetplayerflag 8, which mandates reload and not savegame load in single player.
git-svn-id: https://svn.eduke32.com/eduke32@6823 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-11 03:33:54 +00:00
pogokeen c11adbb0d4 Temporarily remove the option to enable texture filtering when building with EDUKE32_STANDALONE until indexed colour texture rendering supports filtering.
git-svn-id: https://svn.eduke32.com/eduke32@6822 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-08 19:41:09 +00:00
terminx 4dabba7bb6 Oh hey I fucked something up... again... :D
git-svn-id: https://svn.eduke32.com/eduke32@6821 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-06 01:43:27 +00:00
terminx d20df1ec9a Bump MAXSPRITESONSCREEN from 2048 to 2560
git-svn-id: https://svn.eduke32.com/eduke32@6820 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-06 01:43:22 +00:00
terminx 7d0249b9ee I don't know if this is actually better or not but it feels like it should be
git-svn-id: https://svn.eduke32.com/eduke32@6819 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-06 01:43:17 +00:00
terminx 260fb278d9 EDUKE32_STANDALONE guard some HoloDuke behavior in CON_IFCANSEE and remove a branch from GAMEARRAY_BITMAP processing in CON_SETARRAY
git-svn-id: https://svn.eduke32.com/eduke32@6818 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-06 01:43:12 +00:00
terminx bcd5e48c8c EDUKE32_STANDALONE guard some hard-coded Duke3D sound behavior
git-svn-id: https://svn.eduke32.com/eduke32@6817 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-06 01:43:08 +00:00
terminx ad75d09d57 Use FindDistance3D() instead of sepdist() directly because we don't need/want it inlined here
git-svn-id: https://svn.eduke32.com/eduke32@6816 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-06 01:43:03 +00:00
terminx 55a436651a Remove a couple of unnecessary calls to S_ClearSoundLocks()
git-svn-id: https://svn.eduke32.com/eduke32@6815 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-06 01:42:58 +00:00
terminx 6cd5baf5c7 Replace a couple checks for qsetmode==200 with in3dmode(), because it's literally a macro that does that
git-svn-id: https://svn.eduke32.com/eduke32@6814 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-06 01:42:53 +00:00
terminx 4b5b6de13c Remove useless switch/case setup in nextpage()
git-svn-id: https://svn.eduke32.com/eduke32@6813 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-06 01:42:47 +00:00
terminx d2a3e2a70d Revert a small change to cache1d and default lz4CompressionLevel to 5
git-svn-id: https://svn.eduke32.com/eduke32@6812 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-06 01:42:43 +00:00
terminx 851c7755c2 Use CSTAT_SPRITE_ALIGNMENT_* enums in a couple places
git-svn-id: https://svn.eduke32.com/eduke32@6811 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-06 01:42:38 +00:00
terminx 6acd592ae2 Fix up some dynamic tile remapping cruft in A_Spawn() for less branching
git-svn-id: https://svn.eduke32.com/eduke32@6810 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-06 01:42:33 +00:00
terminx 16a72c4530 Untabify engine_priv.h
git-svn-id: https://svn.eduke32.com/eduke32@6809 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-06 01:42:27 +00:00
terminx 86a4158b8a Epic fuckup
git-svn-id: https://svn.eduke32.com/eduke32@6808 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-05 05:39:33 +00:00
terminx 1b2ab0edad cache1d changes, also implements lz4compressionlevel cvar to control the speed vs side trade-off for savegame compression
git-svn-id: https://svn.eduke32.com/eduke32@6807 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-05 04:39:30 +00:00
terminx 34525aa853 Standalone build warning fix
git-svn-id: https://svn.eduke32.com/eduke32@6806 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-05 04:39:23 +00:00
terminx 23471fdf0a Build fixes, oops
git-svn-id: https://svn.eduke32.com/eduke32@6805 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-04 21:06:07 +00:00
terminx 316db0ee5e Guards
git-svn-id: https://svn.eduke32.com/eduke32@6804 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-04 20:48:15 +00:00
terminx 3d0a4c37d4 Minor png writer fixups
git-svn-id: https://svn.eduke32.com/eduke32@6803 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-04 20:48:10 +00:00
terminx 5214bc68dc More EDUKE32_STANDALONE guards
git-svn-id: https://svn.eduke32.com/eduke32@6802 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-04 20:48:05 +00:00
terminx 61215ef0ba Re-arrange some of the hard-coded stuff in A_Spawn(). Just re-organizations, no changes to the blocks that moved.
git-svn-id: https://svn.eduke32.com/eduke32@6800 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-04 20:47:55 +00:00
terminx d10dcd971c More EDUKE32_STANDALONE guarding. Next commit will merge some of the guarded blocks together for simplicity.
git-svn-id: https://svn.eduke32.com/eduke32@6799 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-04 20:47:48 +00:00
terminx d9b24b8f5c #ifndef EDUKE32_STANDALONE guard a bunch of hardcoded behavior
git-svn-id: https://svn.eduke32.com/eduke32@6798 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-02 22:00:44 +00:00
terminx 7fc541f0d5 #if guard unncessary mouse position check with SDL2
git-svn-id: https://svn.eduke32.com/eduke32@6797 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-02 22:00:38 +00:00
terminx f978ba0d07 Optimize A_RadiusDamage()
git-svn-id: https://svn.eduke32.com/eduke32@6796 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-02 22:00:33 +00:00
terminx 3f47f2fccb Redundant return
git-svn-id: https://svn.eduke32.com/eduke32@6795 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-02 22:00:28 +00:00
terminx f3843a9a3a Branchless sectorofwall_internal()
git-svn-id: https://svn.eduke32.com/eduke32@6794 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-02 22:00:23 +00:00
terminx aba97eb6a9 Fix hitradius performance when affecting tons of walls
git-svn-id: https://svn.eduke32.com/eduke32@6793 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-02 22:00:17 +00:00
terminx bb8ceefa95 Sound cleanup. Eliminates on-demand loading of sounds--all sounds are cached before level load.
git-svn-id: https://svn.eduke32.com/eduke32@6792 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-02 22:00:11 +00:00
terminx 4b4994b99a Save/load cache1d size from config
git-svn-id: https://svn.eduke32.com/eduke32@6791 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-02 22:00:05 +00:00
terminx fbf1d6ae08 Formatting
git-svn-id: https://svn.eduke32.com/eduke32@6790 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-02 21:59:59 +00:00
pogokeen 136dd514e1 Switched Duke3D to use new LZ4 dfwrite()/kdfread() implementations to improve compression/decompression speed.
SV_MINOR_VER is incremented as using this alternate compression algorithm is not backwards compatible with older saves/demos.

git-svn-id: https://svn.eduke32.com/eduke32@6789 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-23 21:41:02 +00:00
pogokeen b969687689 texcache.cpp: Override PTH_INDEXED and fall back to pre-processing tiles if high colour tint effects are being used on indexed colour art
git-svn-id: https://svn.eduke32.com/eduke32@6788 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-23 04:02:35 +00:00
pogokeen 337a07ab75 menus.cpp: disable palette emulation menu options when in Polymost and r_useindexedcolortextures is 1
git-svn-id: https://svn.eduke32.com/eduke32@6787 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-22 07:13:36 +00:00
pogokeen b61ade4b66 menus.cpp: Allow setting anisotropy when not in Polymost regardless of whether r_useindexedcolortextures is set
git-svn-id: https://svn.eduke32.com/eduke32@6786 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-22 07:13:33 +00:00
pogokeen c1d7d1bfe0 Fix console background disappearing intermittently
git-svn-id: https://svn.eduke32.com/eduke32@6785 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-22 07:13:30 +00:00
pogokeen ab07afad76 polymost.cpp: fix shadeFactor not being set properly for non-indexed colour textures
git-svn-id: https://svn.eduke32.com/eduke32@6784 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-22 07:13:25 +00:00
hendricks266 a3586ffc20 MIDI/Windows: Immediately MPU_Init after MPU_Reset so that MIDI_Reset can take effect.
git-svn-id: https://svn.eduke32.com/eduke32@6783 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-22 04:48:57 +00:00
hendricks266 eee1fd6e2c MIDI/Windows: Return early from MPU_Init if MPU_Reset was not previously called to shut the MPU down.
git-svn-id: https://svn.eduke32.com/eduke32@6782 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-22 04:48:54 +00:00
hendricks266 2e059e8f9d Update glad to 0.1.18a0
git-svn-id: https://svn.eduke32.com/eduke32@6780 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-22 04:48:47 +00:00
hendricks266 9d2eb4e076 Don't apply weapon shade interpolation to the shrinker/expander crystal at all.
git-svn-id: https://svn.eduke32.com/eduke32@6779 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-22 04:48:41 +00:00
hendricks266 084d363364 Replace individual developer email addresses in error messages
git-svn-id: https://svn.eduke32.com/eduke32@6778 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-22 04:48:36 +00:00
pogokeen 7b2c468f04 Polymost: center texel fetches for palette lookups and add various optimizations related to indexed texture changes
git-svn-id: https://svn.eduke32.com/eduke32@6777 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-21 20:41:32 +00:00
pogokeen a364b7bbfd Polymost palette-indexed texture rendering
git-svn-id: https://svn.eduke32.com/eduke32@6776 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-21 20:41:26 +00:00
hendricks266 f19607daa8 Fix build
git-svn-id: https://svn.eduke32.com/eduke32@6775 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-17 06:44:27 +00:00
terminx 18b9113c50 Fix weird bug with the shotgun caused by leftover code from the electric gun in LameDuke.
No, really.

git-svn-id: https://svn.eduke32.com/eduke32@6774 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-17 03:44:10 +00:00
terminx 9ea4f8f802 Useless cleanup of a function I saw when investigating a problem
git-svn-id: https://svn.eduke32.com/eduke32@6773 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-17 03:44:05 +00:00
terminx be5cf71c83 Remove 144 fps option from the menu, because it doesn't work right
git-svn-id: https://svn.eduke32.com/eduke32@6772 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-17 03:43:33 +00:00
hendricks266 928ce686a6 CON: Add EVENT_DAMAGESPRITE, EVENT_POSTDAMAGESPRITE, EVENT_DAMAGEWALL, EVENT_DAMAGECEILING, and EVENT_DAMAGEFLOOR.
In these events, THISACTOR is the projectile (or source of damage), and RETURN is the sprite/wall/sector affected.
Set RETURN to -1 to cancel any hardcoded effects.
ud.return 1 through 5 are the parameters passed to hitradius if RADIUSEXPLOSION is the source of the damage. ud.return 1 is -1 otherwise.

New tokens "damageeventtile" and "damageeventtilerange" or tiledata[].gameflags & SFLAG_DAMAGEEVENT to enable processing for receivers with corresponding tilenums.

CON commands to replicate hardcoded effects (beyond switching tilenums, such as spawning glass) are forthcoming.

Use of EVENT_DAMAGEHPLANE is hereby discouraged.

Patch from Striker, based on work by Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6771 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-17 03:26:10 +00:00
hendricks266 cab8c9aadf Fix MSVC build
git-svn-id: https://svn.eduke32.com/eduke32@6770 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-17 03:26:05 +00:00
hendricks266 01606bb6fb Instrument the code to build without the struct trackers and disable them when the build options eliminate all uses of them (currently USE_OPENGL=0).
git-svn-id: https://svn.eduke32.com/eduke32@6769 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-17 03:26:01 +00:00
hendricks266 9462ad4076 Minor cleanup regarding buildtypes.h
git-svn-id: https://svn.eduke32.com/eduke32@6768 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-17 03:25:57 +00:00
hendricks266 a250f69a20 Fix horizoff with q16. This solve the problem with horiz returning to center after standing on a sloped floor.
Patch from Fox.

git-svn-id: https://svn.eduke32.com/eduke32@6767 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-15 07:53:02 +00:00
hendricks266 ed38f0a75d CON: Add gettiledata/settiledata. Same members as tiledata[] quick access struct. Not all fields writable.
Patch from Striker.

git-svn-id: https://svn.eduke32.com/eduke32@6766 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-15 01:19:27 +00:00
hendricks266 548d335316 Polymer: Fix smoothness of q16 mouse aiming
git-svn-id: https://svn.eduke32.com/eduke32@6765 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-13 23:29:42 +00:00
hendricks266 607ddc45e0 xa.cpp: Tabs to spaces.
git-svn-id: https://svn.eduke32.com/eduke32@6764 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-13 23:29:38 +00:00
hendricks266 6acbb77ac5 xa.cpp: Fix the crackling noise.
git-svn-id: https://svn.eduke32.com/eduke32@6763 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-13 23:29:35 +00:00
hendricks266 5f52049948 xa.cpp: Cleanup that didn't help the crackling noise.
git-svn-id: https://svn.eduke32.com/eduke32@6762 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-13 23:29:31 +00:00
hendricks266 1460dec6d8 In case a requested quick load upon death cannot be completed, perform a pistol start instead of doing nothing
git-svn-id: https://svn.eduke32.com/eduke32@6761 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-11 03:47:11 +00:00
terminx 491783d81e Fix Polymer issues introduced with change to Q16.16 view angles
git-svn-id: https://svn.eduke32.com/eduke32@6760 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-09 10:20:53 +00:00
terminx ef853e8b92 Inline drawrooms() wrapper
git-svn-id: https://svn.eduke32.com/eduke32@6759 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-09 05:55:50 +00:00
hendricks266 bfc6b7589e Improve file loading
git-svn-id: https://svn.eduke32.com/eduke32@6757 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-09 03:10:53 +00:00
hendricks266 f21d36403f Fix save deletion in the load menu not closing the verification prompt appropriately.
While here, also fix the formatting of the save cleanup verification prompt to center vertically since the message was expanded to 3 lines.

git-svn-id: https://svn.eduke32.com/eduke32@6756 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-09 02:51:28 +00:00
hendricks266 fba53b144a Accept "BUILDART" prepended to ART files
git-svn-id: https://svn.eduke32.com/eduke32@6755 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-09 02:51:24 +00:00
terminx ae0b6e87be Display number of savegames to be deleted before removing, automatically remove old savegames from the install dir in EDUKE32_STANDALONE builds. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@6754 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-08 05:15:11 +00:00
terminx 8b80937424 CSV format for CON timing output
git-svn-id: https://svn.eduke32.com/eduke32@6753 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-08 05:15:05 +00:00
hendricks266 9e0c1277ba Remove " Settings" from user profile folders on Windows
git-svn-id: https://svn.eduke32.com/eduke32@6752 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-08 03:55:52 +00:00
hendricks266 6895ca0fc0 Menu stuff
git-svn-id: https://svn.eduke32.com/eduke32@6751 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-08 03:55:48 +00:00
hendricks266 328fec27fb Add verification screens for deleting saves
git-svn-id: https://svn.eduke32.com/eduke32@6750 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-08 03:55:45 +00:00
hendricks266 10d67bdf9e Menus: "Clean Up Obsolete Saves"
git-svn-id: https://svn.eduke32.com/eduke32@6749 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-08 03:55:41 +00:00
hendricks266 d3882d2c2c Autosave culling
git-svn-id: https://svn.eduke32.com/eduke32@6748 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-08 03:55:36 +00:00
hendricks266 210df6f92d Saves: Make the save filename counter automatically take the highest number present so as to not fill in gaps (which would make sorting inaccurate)
git-svn-id: https://svn.eduke32.com/eduke32@6747 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-08 03:55:32 +00:00
hendricks266 d04d0128e3 ReadSaveGameHeaders at start and close
git-svn-id: https://svn.eduke32.com/eduke32@6746 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-08 03:55:28 +00:00
hendricks266 867b4db1a0 Menus: Delete key in save/load game menu
git-svn-id: https://svn.eduke32.com/eduke32@6745 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-08 03:55:25 +00:00
hendricks266 8019d8f6f0 Saves: Sort saves Z-A by filename and internally preserve the names of ones deemed unfit to display
git-svn-id: https://svn.eduke32.com/eduke32@6744 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-08 03:55:21 +00:00
hendricks266 b437636528 Saves: implement isAutoSave for headers
git-svn-id: https://svn.eduke32.com/eduke32@6743 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-08 03:55:17 +00:00
hendricks266 b80501b2c2 Menus: Add "Save Setup" menu, currently for standalone builds only
git-svn-id: https://svn.eduke32.com/eduke32@6742 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-08 03:55:12 +00:00
hendricks266 3d8e1afba9 Saves: Add userbyteversion to savegame header and userdef
git-svn-id: https://svn.eduke32.com/eduke32@6741 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-08 03:55:07 +00:00
hendricks266 4c48a848a3 Saves: Overload ptrsize as a bitfield
git-svn-id: https://svn.eduke32.com/eduke32@6740 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-08 03:55:02 +00:00
hendricks266 f4ba85b600 Saves: Change header string to "E32SAVEGAME" (but still accept "EDuke32SAVE")
git-svn-id: https://svn.eduke32.com/eduke32@6739 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-08 03:54:58 +00:00