Goober5000
c18b1b63fd
another model to model_instance refactor
...
Remove arc information from bsp_info and move it to submodel_instance. Add a model instance to each debris chunk to keep track of it.
2020-12-20 14:51:05 -05:00
Baezon
303ee3fca1
const objp for object_get_model
2020-09-04 22:29:31 -04:00
FSCyborg
601fa75d50
Change while(0) to while(false)
...
Travis is complaining about while(0), so we're getting it off of our back by switching to while(false).
2019-11-03 16:27:23 -05:00
CasparKielwein
271d3f97bd
remove unused functions obj_add_pair and obj_add_pairs in object code.
...
These functions where not used anymore and probably made redundant
by swifties changes to the collision system in 2012.
2019-05-04 11:30:54 +02:00
asarium
e9f4c1618e
Add unit tests for validating pilot loading
2018-09-17 19:22:50 +02:00
asarium
3cd2c40331
Clear objects on game close
2018-07-23 19:21:16 +02:00
asarium
9651e7dca6
Add more generic scripting callback system
...
The current scripting hook is pretty simple and straight forward but it
makes a couple of scripting applications harder to implement than
needed.
For example, a lot of scripts need to do some work every frame
for all or some objects. The script needs to manage an internal list of
all the objects that are affected by that list which includes removing
invalid objects to conserve resources. This effectively mirrors what the
engine already does and adds unnecessary overhead.
In these changes I added a generic event system which can be used by any
part of the code for providing callbacks when a specific event occurs.
As an example, I added hooks for the pre- and post-move events to the
object class which are called before and after physics are applied to an
object.
I integrated that feature into the scripting system so now a script can
simply register a function as a callback which will be called whenever
the target event is executed.
2018-07-02 22:56:45 +02:00
m!m
2e213d5c97
Merge pull request #1659 from The-E/fix/1653
...
Delete all objects on mission end (Fix for #1653 )
2018-06-17 12:14:22 +02:00
asarium
68372b18a2
Enable performance clang-tidy warnings
2018-04-13 12:08:56 +02:00
Fabian Woltermann
18c2dbbde9
WIP fix for #1653 .
...
This adds a step to the post-mission cleanup where we explicitly go through Objects and call obj_delete on everything not already deleted; this obviously needs testing.
Also a few cleanup steps in lab_init to make sure the lab isn't contaminated by leftover data from previously played missions.
2018-03-16 12:59:43 +01:00
asarium
32b6696162
Fix qtfred code
2017-05-25 23:42:44 +02:00
asarium
842858f9b8
Adjust object_h validity check to avoid assertion failure
...
I found this issue while debugging the JAD gauntlet where a script calls
getSignature() on an invalid object. However, object_h does not see the
object as invalid even though its signature is 0 which is defined to be
an invalid sigature. This should fix that by making sure that
object_h::isValid returns false if the saved signature is not valid.
2017-03-03 17:46:00 +01:00
z64555
6577d53df8
Fixes red-alert missions where escorted ships were dead or otherwise not carried into the red-alert mission.
...
*Use existing methods to determine dock status and find the head of the dock list.
*Fixes a derp with dock_dead_undock_all()
*Doccument some docking methods in object.h
*Address requested changes.
2017-02-01 01:35:09 -06:00
asarium
4a9f1a2d56
Fix the rest of the string conversion warnings
2017-01-05 00:15:01 +01:00
Samuel Cho
347dca5e60
Renamed draw_list to a more descriptive model_draw_list. Removed unlit maps since those aren't needed anymore. Changed transforms in model_draw_list to use the transform_stack instead of using duplicate code. Removed some unused graphics code. Fixed scaling when using batched transforms.
2017-01-02 20:15:37 -08:00
z64555
f4b455dd98
Replace apply_damage_to_shield() with shield_apply_damage().
...
Also remove a declaration of shield_get_max_quad() in object.h
2016-11-25 15:12:09 -06:00
z64555
b0d9c53688
Remove duplicate function get_max_shield_quad()
2016-11-25 15:07:37 -06: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
m!m
22c0255277
Fix a bunch of 64-bit MSVC warnings ( #709 )
...
* Fix a bunch of 64-bit warnings
* Fix Linux compilation error
* Fix Mac error
* Fix some issues
* Fix more GCC warnings
* Remote unwanted change
* Remove accidentally readded file
* Fix wrong limit check
* Use BEAM_INDEX macro for getting beam object index
* Fix 32-bit warning
* Use BEAM_INDEX instead of pointer arithmetic
2016-08-09 11:08:54 -07:00
asarium
bbeaaa1565
Add a new particle effect system
...
This is similar to the script I wrote a few years ago but unlike that
one, this solution doesn't kill the performance.
2016-08-04 11:08:39 +02:00
SamuelCho
1ef7688fa1
Strip out unused rendering code.
2016-07-10 19:29:11 -07:00
asarium
e075241e54
Fix unneded check for this != nullptr in object.h
2015-08-19 11:26:31 +02: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
Swifty
c620372357
Soft shadows, deferred lighting, and various major graphics optimizations.
2015-05-02 14:35:37 -07:00
m_m
de57f043da
From MageKing17 and me: Fix for Mantis 3128: Docking related crash - dock_list isn't initialized This patch makes the copy constructor and the assignment operator of the object class private as it contains members that should not be copied.
...
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@11170 387891d4-d844-0410-90c0-e4c51a9137d3
2014-11-08 10:57:03 +10:00
m_m
bd602cc1a3
Revert 11158 as it breaks FRED compilation.
...
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@11159 387891d4-d844-0410-90c0-e4c51a9137d3
2014-10-27 18:23:02 +10:00
m_m
89cd36a242
Fix a crash reported by Axem related to freeing the dock list of an object. This was caused by freeing the dock list from the destructor of an object which meant that copies of an object would corrupt the original object instance. To make sure that doesn't happen again the copy constructor and assignment operator of object have been made private.
...
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@11158 387891d4-d844-0410-90c0-e4c51a9137d3
2014-10-27 18:23:02 +10:00
m_m
9689711149
From FUBAR-BDHR, chief1983, m!m and MageKing17: Fix for Mantis 2887: Additional workaround for mantis 2693
...
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@10969 387891d4-d844-0410-90c0-e4c51a9137d3
2014-08-06 19:39:34 +10:00
Echelon9
7a56e7ff4a
Fix Clang warnings about incorrect type given different pointer sizes for the architecture. Use the standard compliant ptrdiff_t
...
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@10867 387891d4-d844-0410-90c0-e4c51a9137d3
2014-07-05 10:38:09 +10:00
zookeeper
8cd19aa588
Merged model point shields from zookeeper branch.
...
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@10135 387891d4-d844-0410-90c0-e4c51a9137d3
2013-11-25 19:29:36 +10:00
Goober5000
5aa3bddf70
change object from a struct to a class, since it contains the objsnd_num field :-/
...
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@9995 387891d4-d844-0410-90c0-e4c51a9137d3
2013-11-10 18:28:55 +10:00
karajorma
54f6d864a0
alter-ship-flag SEXP. Now does AI flags too.
2012-10-23 12:02:28 +00:00
Swifty
c6c12fc251
go_even_faster: Improved collision detection performance by rewriting broadphase and narrowphase testing.
2012-08-11 21:14:53 +00:00
Echelon9
164581168d
Fix Mantis 2632: Sounds assigned to objects get dropped when limit hardcoded gets reached. Patch from m_m
2012-04-02 21:32:47 +00:00
Echelon9
5bf63e8c8d
Third part of fixing jump_nodes refactor, remove the union approach to linking Jump_nodes into Objects[]. First go at clearing the FRED errors.
2011-11-19 04:07:30 +00:00
Echelon9
d340f7ec2e
Documentation: Take out some old commented out code
2011-11-19 03:25:52 +00:00
The_E
59cbde3d9e
Adds sexps to manipulate a ships' collision groups. If two objects are members of the same collision group, they will not collide with each other.
2011-06-28 08:36:54 +00:00
Goober5000
eae11de29b
commit the "immobile" flag, requested by Black Wolf, Diaspora, etc. This is just the infrastructure; the flag doesn't actually do anything yet.
2011-01-30 08:19:17 +00:00
Goober5000
110cd3bccc
add turret-protect-ship and turret-unprotect-ship
2011-01-21 08:55:26 +00:00
Echelon9
7fa59778c5
Fix a comment typo
2010-12-27 06:47:03 +00:00
The_E
044df34584
Adding the "force-glide" sexp by request of Axem
2010-10-01 00:38:58 +00:00
karajorma
abd020529d
Ironically OF_REFERENCED isn't referenced anywhere in the code.
2010-02-28 14:07:49 +00:00
Goober5000
4efaaf4523
clarify difference between knossos warpin and warpout in the code -- this should fix Mantis #2128
...
"mabye" -> "maybe"
2010-02-15 11:01:29 +00:00
Wanderer
cd15f39847
lua handled collision groups and lua bitwise ops library
2010-01-05 18:00:01 +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
WMCoolmon
c9e3d746d4
Added object_get_model; moved object_h to object.h
2008-08-30 11:02:36 +00:00
WMCoolmon
7e7d77c8d7
*Drumroll* The official scripting system commit to the stable branch!
2008-03-15 08:56:43 +00:00
turey
d5aa9ccba8
Bunch of stuff already in HEAD. Shouldn't break anything.
2007-12-20 01:57:45 +00:00
Goober5000
b73b258942
another patch by razorjack -- remove something that never worked
2007-09-30 22:28:29 +00:00
Goober5000
bd7be99c55
this should really be capitalized
2007-07-28 21:31:11 +00:00