Commit graph

7719 commits

Author SHA1 Message Date
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
Christoph Oelckers
795f25bd68 - manually fix conflict 2019-09-19 14:32:05 +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