Goober5000
2147571dff
make several miscellaneous timestamps type-safe
...
Trail timestamps and a few top-level timestamps. Also a few `static` and `constexpr` keywords for good measure.
2024-03-02 00:10:31 -05:00
Goober5000
58053a02b2
several coverity fixes
...
Some false positive annotations, some range checks, and commenting dead code.
2024-03-01 13:47:00 -05:00
Goober5000
f4669db41c
constify some turret code
...
Apply `const` to a whole bunch of functions. Also change a bunch of ints to bools.
2023-12-30 00:00:31 -05:00
Goober5000
46293ad0fe
add should-be-dead checks for all ship iterations
...
When iterating through `Ship_obj_list`, check the `Should_be_dead` flag before using the object. This fixes #4990 and adds defense-in-depth checks to guard against similar errors elsewhere.
I considered moving the `Ship_obj_list` removal from `obj_delete` to `ship_cleanup`, but decided it would be prudent to avoid fundamental changes to lifecycle management.
2022-12-23 00:51:31 -05:00
Goober5000
1070d1dbea
patch hud-lock iteration for objects that aren't ships
...
Add a few more safety checks; don't assume every item is a ship.
2022-12-21 00:40:09 -05:00
MjnMixael
735b41631d
ship flag to exempt it from targeting restrictions ( #4878 )
...
* ship flag to exempt it from nebula targeting restrictions
* Make this flag more generic
* address feedback
2022-11-17 07:38:37 -05:00
Taylor Richards
2d7aaa576c
set up awacs team arrays just the once
...
Awacs team arrays only need to be initialized once but were
expanded by Iff_info.size() every second of a mission and never
cleared.
(Also includes cleanup)
2021-12-29 07:12:59 -05:00
Taylor Richards
a40dfd7756
fix multi awacs crash due to code init order
2021-12-22 19:35:30 -05:00
BMagnu
391de411ee
Vectorize IFF Defs for unlimited IFFs ( #3634 )
...
* make IFF limit a vector
* Also change QTFred
* Warnings
* remove decltypes, wrap arrays in unique_ptr
2021-09-30 14:17:28 +09:00
Fabian Woltermann
1acfaa8157
Converts model subsystem flags
2016-08-19 14:59:15 +02:00
asarium
925e8df36e
Fix wrong condition introduced by #829
2016-08-15 22:21:10 +02:00
asarium
86cdb905db
Add support for indexing flagset with multiple flags
...
This uses the , operator for combining the flag values.
2016-08-15 15:24:48 +02:00
Fabian Woltermann
770fce8de5
Bitset flags -- take 2 ( #775 )
...
This introduces a new mechanism for handling bit flags. Instead of using an int (or two, or three) to write bits into, this uses the std::bitset in a wrapper class that accepts an enum class as input. This means that certain classes of errors we've had a few of in the engine, where a coder used the wrong set of flags or checked them against the wrong variable (SF_STEALTH vs SIF_STEALTH, for example) can now be detected at a compiler level rather than not at all.
2016-08-12 16:13:50 -07:00
Echelon9
c5493bb480
Scripted sort and uniq on (internal) project includes. Improves search time and as a by product removed a number of duplicative includes.
2015-06-22 20:24:30 +10:00
Goober5000
599efc960f
follow-up to 8299: we need to check visibility for our own team in case we have a friendly-stealth-invisible ship covered by AWACS, or something
2012-01-22 06:51:53 +00:00
Goober5000
149797ae75
the proper way to fix Mantis #2441 is by modifying the team_visibility_update function
...
also, clarify terminology: in-frustum/not-in-frustum replaces visible/invisible
and do some minor rewrites for additional clarification
2012-01-22 05:37:09 +00:00
The_E
f93cd55032
Fix for Mantis 2441: "friendly-stealth-invisible" flag doesn't work
2012-01-15 14:14:46 +00:00
Goober5000
600936b331
reverting 7211 because it is not a proper fix
2011-05-29 06:56:17 +00:00
The_E
23b121a108
Patch for Mantis 2441 (friendly-stealth-invisible" flag doesn't work) from pyro3d
2011-05-27 09:11:51 +00:00
Zacam
3e613ff431
Let see how unreachable all this really was.
2010-10-25 03:48:01 +00:00
Goober5000
5c88548cab
more warning fixage
2009-11-23 03:24:10 +00:00
Goober5000
9ee90c41b7
remove this extra friendly-stealth-invisible check; it's redundant and incorrect
2009-11-16 07:01:49 +00:00
portej05
719825f80d
The big CVS comment removal. This chops approx. 3.5mb off a full checkout.
...
I've tested this through compiling and through hand checking.
Normalises line endings in ALL files to \n.
2009-06-20 08:08:20 +00:00
Goober5000
5dc5be5a70
implement the targeting cutoff properly (Mantis #1468 )
2008-01-19 01:23:41 +00:00
taylor
c399c9a68f
compiler warning fixes
2006-09-11 01:10:00 +00:00
taylor
2e28cb4907
rest of the map/glow changes
...
- put glowmap activity back on a per-ship basis (via a SF2_* flag) rather than per-model
- same for glowpoints, back on a per-ship basis
- put specmaps and bumpmap back on a LOD0 and LOD1 affect (got changed to LOD0 only recently)
- fix glowmaps for shockwaves again
- add support for animated specmaps (mainly for TBP and Starfox mods)
some minor code cleanup and compiler warning fixes
2006-07-06 21:53:59 +00:00
Goober5000
dbd19036cb
change back to ubyte
...
--Goober5000
2006-06-26 17:31:49 +00:00
Goober5000
3a541ceba6
cosmetics, plus revert an unnecessary if
2006-06-24 04:48:08 +00:00
taylor
8d84c36c72
make sure we only do ship related setup on actual ships
2006-06-20 20:04:42 +00:00
taylor
d8997a3169
fix out-of-bounds problem in awacs checking (full neb missions may have been a bit freaky from this)
2006-03-18 10:28:25 +00:00
Goober5000
549be4382f
fix stealth
...
--Goober5000
2006-02-19 03:17:01 +00:00
Goober5000
4d5a477f71
übercommit of custom IFF stuff :)
2006-01-13 03:31:20 +00:00
taylor
d3481714d0
remove NO_NETWORK
2005-10-10 17:21:11 +00:00
wmcoolmon
0dbb5e657c
New SEXP stuff
2005-10-09 08:03:21 +00:00
Goober5000
4cf60293d3
clarification
...
--Goober5000
2005-09-27 02:36:58 +00:00
Goober5000
81784bfa63
hopefully complete species upgrade
...
--Goober5000
2005-09-25 05:13:07 +00:00
Goober5000
5fb5c7faf7
various code cleanups, tweaks, and fixes; most notably the MISSION_FLAG_USE_NEW_AI
...
should now be added to all places where it is needed (except the turret code, which I still
have to to review)
--Goober5000
2005-07-25 03:13:26 +00:00
Goober5000
2a307d099a
CVS header tweaks
...
--Goober5000
2005-07-22 10:18:41 +00:00
Goober5000
2394e9801b
remove PreProcDefine #includes in FS2
...
--Goober5000
2005-07-13 03:35:36 +00:00
Goober5000
76d05268fd
improved species support and removed need for #define
...
--Goober5000
2005-07-13 00:44:24 +00:00
taylor
7f786136a6
s/vector/vec3d/g, better support for different compilers (Jens Granseuer)
2005-04-05 05:53:25 +00:00
taylor
91e9fb4433
more NO_NETWORK/INF_BUILD goodness for Windows, takes care of a few warnings too
2005-03-02 21:24:48 +00:00
Kazan
864e1b5922
remove MCD complete
2004-07-26 20:47:56 +00:00
Kazan
428b3dcbc9
MCD - define _MCD_CHECK to use memory tracking
2004-07-12 16:33:09 +00:00
Goober5000
7ef2ab2e39
Uber pass at reducing #includes
...
--Goober5000
2004-03-05 09:02:13 +00:00
Goober5000
ffbbe7aff8
whew - I just went through all the code I ever added (or at least, that I could
...
find that I commented with a Goober5000 tag) and added a bunch of Asserts
and error-checking
--Goober5000
2004-01-30 07:39:09 +00:00
Goober5000
458634292a
implemented the custom hitpoints mod
...
--Goober5000
2003-04-29 01:03:24 +00:00
Goober5000
c9ea61c266
fixed bug I inadvertently introduced by modifying SIF_ flags with sexps rather
...
than SF_ flags
--Goober5000
2003-01-18 09:25:42 +00:00
Goober5000
b53761bbd4
Fixed some minor bugs, and added a primitive-sensors flag, where if a ship
...
has primitive sensors it can't target anything and objects don't appear
on radar if they're outside a certain range. This range can be modified
via the sexp primitive-sensors-set-range.
--Goober5000
2003-01-03 21:58:08 +00:00
Goober5000
ba5816809b
removed the existing stealth sexps and replaced them with the following...
...
ship-stealthy
ship-unstealthy
is-ship-stealthy
friendly-stealth-invisible
friendly-stealth-visible
is-friendly-stealth-visible
--Goober5000
2002-12-27 02:57:51 +00:00