-Fixes the synth brain transplant rename prompt being a) broken, and b) having the capability to force a contaminated and unsanitized real_name var for the body, which in turn has the capability to kill regex and cause big issues.
In other words: an unnamed synth body wearing a person's ID gets their display name shown as "Unknown (as name)". The problematic part is that the brain transplant procedure here forces the new body to rename itself by the copied display name, AND also forces the real_name var into that without sanitizing. This causes the chat mention system to divide the unsanitized name into 3 names "Unknown", "(as", and "name)" and to shove these into regex to look for, and the rogue () in the names makes regex commit die and likely also break map loading and stuff.
Brains now retain languages from the mob they were removed from, rather than forgetting them. Languages are also retained when a brain is transplanted into a new body.
AIs, as well as cyborgs/robots/drones, will load languages from your currently-active preferences when they spawn (just like humanoid mobs do). Brains removed from cyborgs/robots/drones will retain their original languages regardless of the current module.
Brains in MMIs can now speak EAL if they know it, and additionally fixes#2832 - sign language will no longer be usable when lacking both hands. Also fixes silicons being told the wrong language prefix by the known languages window, as it was still showing ':', leading to much confusion among new borg players.
Known issues:
AIs who can use sign language can use it even without a holopad - I'm not sure how to have it check for that. This could be seen as a non-issue, as signs could conceivably be displayed on the AI's screen.
AIs signing over holopad will also have the language verbs overridden by the synth speech verbs (states/queries/declares). I'm pretty sure this has something to do with the already-existing bug that all languages can be understood by everyone when an AI speaks them over holopad.
Right now if you try to put an empty posibrain into a mob it won't let you. But with resleeving, this might be just the step before putting a mind in them, so that's sort of not how it should work. When it was just a ghost-trap object that ghosts could get into, maybe, but it's moved beyond that.
Print 'em out, slap an MMI or Posibrain in. They come from a new machine, the Prosthetics Fabricator. You can order license discs from cargo to print the proprietary limbs. Making FBPs requires a bit of research as well, otherwise you only get arms/legs. Also requires a bit of plasteel to make the critical parts. Mostly just need every limb, plus eyes. Torso comes with the snowflakey FBP battery.
Also adds an FBP 'self-diagnostics' verb. More vague than an analyzer.
**This adds a machine that needs to be placed on the map. "/obj/machinery/pros_fabricator"**
Personally, I would replace the right-side exosuit fab with it. I can add this to my PR but I'm unsure how you guys feel about non-devs submitting map changes.
* Consolidates copypasta for repairing robolimbs
Also prevents self-repairing a limb you are using to hold the tool
* Fixes robot organs becoming undamagable after reaching cap
* Fixes repairing with cable not using any cable, repairing with weldingtool not doing eyecheck
* Removes ORGAN_ROBOT and ORGAN_ASSISTED flags, fixes#13123
* Fixes damage to robotic limbs not triggering organ processing
At the same time, robotic limbs with damage don't need to process.
However, it's much safer to explicitly have robot limbs return 0 from
needs_process() instead of not rechecking bad external organs.
* Build on HarpyEagle changes to apply to Polaris
Had to apply the change from flag to an enumeration.
* Removes unneeded file
* Fix bruisepacks, remove heart
Well, the unused bay version of the heart anyway
* Tweaks examine, reverts isSynthetic
Reverted that because Bay doesn't use it the same way. Also changed Examine to not list every robo-limb on non-FBPs in red, but left them listed as normal per Spookerton