* Fixes species uplinks (#64816)
I was fucking deranged when I originally made this. I not only didn't actually include the assigned species to the uplink's ui data, but I made the code add each objective item to the uplink list twice. This fixes both of those problems, and makes it more readable.
Fixes a mistake I caused.
Closes#64806 (Species-Restricted uplink items don't appear)
Role-restricted and species restricted items can be purchased again.
Species-restricted items no longer appear in surplus.
* Fixes species uplinks
Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>
* Add new surgery tgui (#64579)
* Move element to component, start UI, move assets into their own directory
* Complete UI
* Stop when another surgery is started
* Set your real zone since I forgot you actually need to start the surgery too
* Bring this back since I was just removing it as part of a cleanup for asset cache, but I can't prove it's not used anymore
* Remove unnecessary constructor I was using for something else
* Fix signal override
* Add new surgery tgui that provides a built in body zone selector and doesn't let you start surgeries if their body is covered. Replaces some stuff with balloon alerts
Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>