MjnMixael
aaee1e5a32
enhance handling of motion debris ( #5022 )
...
* enhance handling of motion debris
* dunno what i was thinking here
* address feedback
* require all four bitmaps to be defined in new parsing method
* address feedback
2023-02-15 17:13:48 +09:00
MjnMixael
ce274209c1
adds hudgage and event to the valid types of a Lua Sexp parameter ( #5018 )
2023-02-15 17:13:38 +09:00
Goober5000
fe4d93393b
Merge pull request #5122 from Goober5000/parse_object_colgroup
...
make collision_group_id accessible to parse objects
2023-02-14 18:45:06 -05:00
Goober5000
60e5ba9541
Merge pull request #5139 from MjnMixael/has_armor_sexp
...
has-armor-type sexp
2023-02-12 15:40:53 -05:00
Goober5000
eaa063ba65
Merge pull request #5152 from Goober5000/mission_versioning
...
add versioning support to missions
2023-02-11 16:19:33 -05:00
Goober5000
0d75790a6a
Merge pull request #5138 from MjnMixael/force_emp_sexp
...
hud-force-emp-effect sexp
2023-02-11 15:36:48 -05:00
Goober5000
85e11ecd6d
Merge pull request #5096 from MjnMixael/opf_turret_type
...
Implement opf_turret_type
2023-02-11 15:36:35 -05:00
Goober5000
3651239a6b
Merge pull request #5010 from Goober5000/more_category_updates
...
more category updates
2023-02-11 15:33:28 -05:00
Goober5000
3c723c9ea9
add versioning support to missions
...
This finally enables the `$Version:` field in FreeSpace missions, which has been present ever since the beginning of FS1's development but has never been used for its intended purpose. This field now stores the version of FSO that is required to run the mission. If the version of the engine is not sufficient to run the version of the mission, then a) the mission is hidden from the mission listing, or b) a friendly notification is displayed if the mission is loaded anyway (for example, through a campaign). Furthermore, FRED will notify the user if the mission's version is migrated from any version other than the legacy 0.10.
It will be the responsibility of coders who modify the mission format to also update the `MISSION_VERSION` constant with the appropriate major/minor/build/revision of the format change.
2023-01-28 18:01:51 -05:00
mjn-mixael
6162c475a0
float
2023-01-26 08:34:34 -06:00
mjn-mixael
9419f24184
warning
2023-01-26 08:30:26 -06:00
mjn-mixael
236b648b11
address feedback
2023-01-25 08:43:11 -06:00
mjn-mixael
414c630d04
address feedback
2023-01-25 08:31:36 -06:00
mjn-mixael
d7bbecfa16
has-armor-type sexp
2023-01-24 11:20:25 -06:00
mjn-mixael
d2e1e2b5de
hud-force-emp-effect sexp
2023-01-23 21:50:36 -06:00
Asteroth
3047a226a3
Better account for runtime gravity changes ( #5130 )
...
* better account for changing gravity
* use `obj_used_list`
* check should_be_dead
2023-01-22 14:40:13 -05:00
Goober5000
11f2635abd
add parse object collision group to sexps
2023-01-21 18:53:40 -05:00
Goober5000
add6a60439
Merge pull request #5129 from MjnMixael/more_asteroid_sexp_fixes
...
Move these checks into asteroid.cpp
2023-01-20 21:26:50 -05:00
Goober5000
5c8806d040
Merge pull request #5127 from Goober5000/dont_blast_nocollide
...
don't blast no-collide objects
2023-01-19 21:38:57 -05:00
mjn-mixael
798e47409a
Move these checkes into asteroid.cpp
2023-01-18 16:24:48 -06:00
Goober5000
f8acd4f898
don't blast no-collide objects
...
In the same way that navbuoys aren't blasted by explosions, no-collide objects shouldn't be blasted either.
Fixes #5068 .
2023-01-18 01:59:20 -05:00
mjn-mixael
d8a052128e
remove returns
2023-01-14 17:29:32 -06:00
mjn-mixael
fa3631c9b9
make sure we have an argument
2023-01-14 17:24:43 -06:00
Fabian Woltermann and Fabian Woltermann
264a44085d
when checking sexp text strings, make sure to account for usages of <argument> ( #5100 )
...
Co-authored-by: Fabian Woltermann <[email protected] >
2023-01-10 21:33:39 +01:00
mjn-mixael
5ca15685ef
Add missing help for ship-untag sexp
2023-01-09 11:37:41 -06:00
mjn-mixael
2a5b930941
implement opf_turret_type for turret-protect-ship and turret-unprotect-ship
2023-01-09 11:13:37 -06:00
Goober5000
d8fe4a11be
Merge pull request #5042 from MjnMixael/asteroid_sexp_missed_items
...
A few missed items and fixes to the asteroid debris sexp
2023-01-05 21:11:00 -05:00
Goober5000
0d56bb9999
restore retail behavior of chaining to repeating events
...
To avoid changing behavior of existing mods, simulate the retail behavior unless the bugfix is explicitly activated. The buggy retail behavior is to evaluate a chained event, not skip it, if the event is repeating, regardless of whether the repeat timestamp has elapsed.
2023-01-03 01:37:18 -05:00
Goober5000
07924f078a
use Missile_obj_list or Asteroid_obj_list instead of obj_used_list where appropriate
2023-01-01 18:13:29 -05:00
Goober5000
6de5c96127
add should-be-dead checks for object iterations ( #5050 )
...
Follow-up to #5040 . This extends the checks to most iterations over `obj_used_list` in FSO. There are a few exceptions such as `waypoint_add` and `waypoint_remove`, plus a few others. And none of the object iterations in FRED have the guard because FRED does not use the same object life cycle as FSO.
2022-12-31 23:23:39 -05:00
Goober5000
5485efe904
fix wing cues and add some more error checks
...
Fixes #5045 by correctly initializing wing arrival and departure cues. Follow-up to #4856 . Also adds a bit more SEXP error checking.
2022-12-27 01:33:53 -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
mjn-mixael
fc21e12dfd
A few missed items and fixes to the asteroid debris sexp
2022-12-21 21:11:14 -06:00
Goober5000
87a051a933
Merge branch 'master' into more_category_updates
2022-12-18 01:31:47 -05:00
Goober5000
47564d1505
Merge pull request #5008 from MjnMixael/asteroid_sexp_error_checks
...
Add missing asteroid debris argument type error checking
2022-12-16 23:04:13 -05:00
mjn-mixael
e0eb7ef3d6
this should have a more unique name
2022-12-14 22:49:41 -06:00
mjn-mixael
2909e8fa2b
address feedback
2022-12-14 22:32:51 -06:00
mjn-mixael
a47658b336
address feedback
2022-12-14 15:41:36 -06:00
mjn-mixael
42a88a9e3f
Comment
2022-12-14 13:54:17 -06:00
mjn-mixael
174976d2bb
Better global name
2022-12-14 13:52:50 -06:00
mjn-mixael
911639d1b0
Add missing asteroid debris argument type error checking
2022-12-14 13:46:40 -06:00
mjn-mixael
5366f235ca
Allow custom Lua Enums
2022-12-14 13:45:14 -06:00
mjn-mixael
49b486a326
use enum for list types
2022-12-14 09:12:11 -06:00
Goober5000
d722f50f8b
more category updates
...
1. Allow categories, not just subcategories, to be added by scripted SEXPs.
2. Allow subcategories in different categories to have the same name.
2022-12-13 21:16:26 -05:00
Goober5000
922be2ff36
Merge pull request #4999 from BMagnu/problematic_counter_lib
...
Remove problematic counter library
2022-12-13 13:52:52 -05:00
BMagnu
af1f0eaeca
Rework Script Conditions ( #4960 )
...
* add skeleton for hook condition API
* Begin Scripting Hook refactor
* Program Hook Conditions for current new-style hooks
* Replace more hooks
* Fully transition global hooks
* Convert legacy hooks pt. 1
* Convert legacy hooks pt. 2
* Convert legacy hooks pt. 3
* Post-conversion cleanup
* restore parsing
* Add Documentation and fix parsing
* Fixup engine ingame hook adding
* Fixup engine ingame hook adding again
* Fix warnings
* Fix GCC unqualified template base lookup
* unqualified lookup v2
* Virtual Destrcutors
* Fix Clang
* Fix ship objp hook condition shadow
* Remove global hook include in ship.h
* Incorporate Feedback
* Incorporate Feedback 2
* Add revision to inline version specififer
2022-12-14 03:51:27 +09:00
Birk Magnussen
6b3f99eafd
comment for OP_NOT_AN_OP
2022-12-13 18:43:01 +01:00
Birk Magnussen
cb008706a4
Tidy up comment
2022-12-13 18:37:08 +01:00
Birk Magnussen
9366963e42
Fix formatting
2022-12-13 18:32:27 +01:00
Birk Magnussen
7ed7b37f9a
Replace enum in switch for readability purposes
2022-12-13 18:25:26 +01:00