Some Silicon Code (#8394)

Tweaked a hell of a lot of silicon code to make synthetics better.

Synths with scrambled codes that prevent them from being on robotics computers will now appear on Merc camera networks.

Both variants of the engineering borg can now deploy the malf borging machine.

Medical borgs no longer get polyacid sprays, instead getting Wulumunusha CMO Hyposprays, which cause muteness.

You must now be on help intent to use items like crowbars and screwdrivers on borgs. Otherwise you hit them with it.
This commit is contained in:
Geeves
2020-03-13 13:29:35 +01:00
committed by GitHub
parent 5a8f0451a4
commit 1a7cc1a1c7
64 changed files with 1865 additions and 2028 deletions
+5 -5
View File
@@ -41,7 +41,7 @@
data["name"] = carded_ai.name
data["hardware_integrity"] = carded_ai.hardware_integrity()
data["backup_capacitor"] = carded_ai.backup_capacitor()
data["radio"] = !carded_ai.aiRadio.disabledAi
data["radio"] = !carded_ai.ai_radio.disabledAi
data["wireless"] = !carded_ai.control_disabled
data["operational"] = carded_ai.stat != DEAD
data["flushing"] = flush
@@ -79,9 +79,9 @@
sleep(10)
flush = 0
if (href_list["radio"])
carded_ai.aiRadio.disabledAi = text2num(href_list["radio"])
to_chat(carded_ai, "<span class='warning'>Your Subspace Transceiver has been [carded_ai.aiRadio.disabledAi ? "disabled" : "enabled"]!</span>")
to_chat(user, "<span class='notice'>You [carded_ai.aiRadio.disabledAi ? "disable" : "enable"] the AI's Subspace Transceiver.</span>")
carded_ai.ai_radio.disabledAi = text2num(href_list["radio"])
to_chat(carded_ai, "<span class='warning'>Your Subspace Transceiver has been [carded_ai.ai_radio.disabledAi ? "disabled" : "enabled"]!</span>")
to_chat(user, "<span class='notice'>You [carded_ai.ai_radio.disabledAi ? "disable" : "enable"] the AI's Subspace Transceiver.</span>")
if (href_list["wireless"])
carded_ai.control_disabled = text2num(href_list["wireless"])
to_chat(carded_ai, "<span class='warning'>Your wireless interface has been [carded_ai.control_disabled ? "disabled" : "enabled"]!</span>")
@@ -125,7 +125,7 @@
ai.destroy_eyeobj(src)
ai.cancel_camera()
ai.control_disabled = 1
ai.aiRestorePowerRoutine = 0
ai.ai_restore_power_routine = 0
carded_ai = ai
if(ai.client)
+6 -6
View File
@@ -55,16 +55,16 @@
playsound(src.loc, 'sound/machines/buzz-two.ogg', 20, 0)
return 0
pai.idcard.access.Cut()
pai.idcard.access = card.access.Copy()
pai.idcard.registered_name = card.registered_name
pai.id_card.access.Cut()
pai.id_card.access = card.access.Copy()
pai.id_card.registered_name = card.registered_name
playsound(src.loc, 'sound/machines/ping.ogg', 50, 0)
to_chat(user, "<span class='notice'>ID Registration for [pai.idcard.registered_name] is a success. PAI access updated!</span>")
to_chat(user, "<span class='notice'>ID Registration for [pai.id_card.registered_name] is a success. PAI access updated!</span>")
return 1
/obj/item/device/paicard/proc/ID_readout()
if (pai.idcard.registered_name)
return "<span class='notice'>Identity of owner: [pai.idcard.registered_name] registered.</span>"
if (pai.id_card.registered_name)
return "<span class='notice'>Identity of owner: [pai.id_card.registered_name] registered.</span>"
else
return "<span class='warning'>No ID card registered! Please scan your ID to share access.</span>"
@@ -89,6 +89,14 @@
. = ..()
src.updateicon()
/obj/item/robot_parts/robot_suit/equipped/Initialize()
. = ..()
l_leg = new /obj/item/robot_parts/l_leg(src)
r_leg = new /obj/item/robot_parts/r_leg(src)
l_arm = new /obj/item/robot_parts/l_arm(src)
r_arm = new /obj/item/robot_parts/r_arm(src)
updateicon()
/obj/item/robot_parts/robot_suit/proc/updateicon()
cut_overlays()
if(src.l_arm)
@@ -26,7 +26,7 @@
/obj/item/borg/upgrade/reset/action(var/mob/living/silicon/robot/R)
if(..()) return 0
R.uneq_all()
R.modtype = initial(R.modtype)
R.mod_type = initial(R.mod_type)
R.hands.icon_state = initial(R.hands.icon_state)
R.notify_ai(ROBOT_NOTIFICATION_MODULE_RESET, R.module.name)
@@ -64,11 +64,11 @@
/obj/item/borg/upgrade/floodlight/action(var/mob/living/silicon/robot/R)
if(..()) return 0
if(R.intenselight)
if(R.intense_light)
to_chat(usr, "<span class='notice'>This cyborg's light was already upgraded </span>")
return 0
else
R.intenselight = 1
R.intense_light = 1
R.update_robot_light()
to_chat(R, "Lighting systems upgrade detected.")
return 1
@@ -124,7 +124,7 @@
return 0
R.emagged = 1
R.fakeemagged = 1
R.fake_emagged = 1
return 1
/obj/item/borg/upgrade/combat
@@ -47,7 +47,7 @@ AI MODULES
to_chat(comp.current, "These are your laws now:")
comp.current.show_laws()
for(var/mob/living/silicon/robot/R in mob_list)
if(R.lawupdate && (R.connected_ai == comp.current))
if(R.law_update && (R.connected_ai == comp.current))
to_chat(R, "These are your laws now:")
R.show_laws()
to_chat(usr, "Upload complete. The AI's laws have been modified.")