mirror of
https://github.com/VOREStation/VOREStation.git
synced 2026-08-23 12:08:28 +01:00
Brain transplants, synthetics, and languages
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.
This commit is contained in:
@@ -82,6 +82,8 @@
|
||||
if(H.mind)
|
||||
H.mind.transfer_to(brainmob)
|
||||
|
||||
brainmob.languages = H.languages
|
||||
|
||||
brainmob << "<span class='notice'>You feel slightly disoriented. That's normal when you're just \a [initial(src.name)].</span>"
|
||||
callHook("debrain", list(brainmob))
|
||||
|
||||
|
||||
@@ -62,6 +62,8 @@
|
||||
stored_mmi.icon_state = "mmi_full"
|
||||
icon_state = stored_mmi.icon_state
|
||||
|
||||
stored_mmi.brainmob.languages = owner.languages
|
||||
|
||||
if(owner && owner.stat == DEAD)
|
||||
owner.stat = 0
|
||||
dead_mob_list -= owner
|
||||
@@ -91,6 +93,8 @@
|
||||
stored_mmi.icon_state = "posibrain-occupied"
|
||||
icon_state = stored_mmi.icon_state
|
||||
|
||||
stored_mmi.brainmob.languages = owner.languages
|
||||
|
||||
/obj/item/organ/internal/mmi_holder/robot
|
||||
name = "digital brain interface"
|
||||
brain_type = /obj/item/device/mmi/digital/robot
|
||||
@@ -99,4 +103,6 @@
|
||||
/obj/item/organ/internal/mmi_holder/robot/update_from_mmi()
|
||||
..()
|
||||
stored_mmi.icon_state = "mainboard"
|
||||
icon_state = stored_mmi.icon_state
|
||||
icon_state = stored_mmi.icon_state
|
||||
|
||||
stored_mmi.brainmob.languages = owner.languages
|
||||
|
||||
Reference in New Issue
Block a user