* first pass, something's afoot
* BUI cleanup, fix metadata cast
* SetupBoundUI: use CreateWindow, not new
* fix dependency order
* more dependency order fixes
* Remove all IPrototypeManager instances
* Remove redundant IComponentFactory instances too
* Found some stragglers
* DestructibleSystem.PrototypeManager: no dependency
* not based
* init
TODO:
Make this part of the surveillance camera system
Make this be bearable when unpowered(Probably commented out until we make AI lose vision without power)
Remove leftover shit
Probably clean up the camera RSI
* move to surv cameras, unpowered, remove leftovers
* silly
* review
* review
* I can see the light
* reverse fixtures
* review
* dependency query
* unused oops
* Camera map
* I hope this helps
* Review 1
* Review 2
* Review 3
* Review 4
* Review 5
* Colorblind mode support
* Review 6
* Change design
* Map wire
* Logic fix
* Fix a terrible mistake
* Fix
* Fix 2
* Small rename
* More fix
* Better removal
* And another fix
* Will it work?
* It is literally pointless
* some small things
* Fix usages of TryIndex()
Most usages of TryIndex() were using it incorrectly. Checking whether prototype IDs specified in prototypes actually existed before using them. This is not appropriate as it's just hiding bugs that should be getting caught by the YAML linter and other tools. (#39115)
This then resulted in TryIndex() getting modified to log errors (94f98073b0), which is incorrect as it causes false-positive errors in proper uses of the API: external data validation. (#39098)
This commit goes through and checks every call site of TryIndex() to see whether they were correct. Most call sites were replaced with the new Resolve(), which is suitable for these "defensive programming" use cases.
Fixes#39115
Breaking change: while doing this I noticed IdCardComponent and related systems were erroneously using ProtoId<AccessLevelPrototype> for job prototypes. This has been corrected.
* fix tests
---------
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* Replace usages of customTypeSerializer PrototypeIdListSerializer with something that doesn't take 20 separate words to type out
* Missed one
* Missed another
* Fix data field ids
* Predict dumping
- This got soaped really fucking hard.
- Dumping is predicted, this required disposals to be predicte.d
- Disposals required mailing (because it's tightly coupled), and a smidge of other content systems.
- I also had to fix a compnetworkgenerator issue at the same time so it wouldn't mispredict.
* Fix a bunch of stuff
* nasty merge
* Some reviews
* Some more reviews while I stash
* Fix merge
* Fix merge
* Half of review
* Review
* re(h)f
* lizards
* feexes
* feex
* Power stuff
- Add shared IsPowered
- Add shared ResolveApc
- Move PowerChangedEvent to shared for now
- Add SlimPoweredLight that actually functions how you'd expect a PoweredLight to function it id didn't have a bunch of bloat on it.
* big update
* boing
* Make anomaly, artifact and gifts events announcement sound optional
* Requested changes + Added new "GameRuleAfterAddedEvent" for StationEventSystem
We need to call "Add" in "StationEventSystem" after others GameRule's in case if we need to change StationEventComponent variables.
* Fix margins
* Makes use of GameRuleComponent.Delay and remove station system handling of delays plus small cleanup
* Fix merge
---------
Co-authored-by: AJCM <AJCM@tutanota.com>
* remove deprecated entity coordinate extension functions. Reduces warning count by approximately 50
* final toCoords Removed
* Remove all unused variables and dead code paths
* remove always true variable, should be a cvar or something instead
* remove superfluous variables from tests
* Predict two-way levers
Annoys me the rare occasions I touch cargo. Doesn't predict the signal but at least the lever responds immediately.
* space
* a
* Fix ActivatableUIRequiresPowerCellComponent stopping power draw when one of two people closes the UI.
Also fixes it to check UiKey properly.
* Remove unnecessary CrewManifestViewer on PDAs
This is for a pop-up crew manifest UI, which the PDA doesn't use.
* Fix BoundUIClosedEvents that didn't check UI key/not correctly at least.
Uses the new helper method in engine.
* Fix drone (cargo shuttle) pilot console UI breaking if two people open it and one person closes it.
* Fixes for disposal router/tagger UI.
Code was badly copy pasted without changing identifiers, never worked.
Also cleaned up some of the logic (text trimming, sounds).
Also removed the "refuse to work if you have something in your active hand" check like why.
* Avoid running most ActivatableUIComponent logic when closing a UI via toggle
Activating the UI while it's already open closes it via toggle. Except it still ran 99% of the "attempting to open" logic which makes no sense.
This probably fixes a bug or some other dumb behavior somewhere.
* Bitch