mirror of
https://github.com/CHOMPstation/CHOMPstation.git
synced 2026-07-18 18:42:59 +01:00
Makes it possible for syndicate borgs to copy access from other ids.
This commit is contained in:
@@ -74,7 +74,7 @@
|
||||
W.access = list()
|
||||
if(corpseidjob)
|
||||
W.assignment = corpseidjob
|
||||
W.set_owner_info(M)
|
||||
M.set_id_info(W)
|
||||
M.equip_to_slot_or_del(W, slot_wear_id)
|
||||
qdel(src)
|
||||
|
||||
|
||||
@@ -53,8 +53,6 @@ var/global/list/robot_modules = list(
|
||||
R.choose_icon(R.module_sprites.len + 1, R.module_sprites)
|
||||
|
||||
/obj/item/weapon/robot_module/proc/Reset(var/mob/living/silicon/robot/R)
|
||||
R.module = null
|
||||
|
||||
remove_camera_networks(R)
|
||||
remove_languages(R)
|
||||
remove_subsystems(R)
|
||||
@@ -64,15 +62,15 @@ var/global/list/robot_modules = list(
|
||||
R.radio.recalculateChannels()
|
||||
R.choose_icon(0, R.set_module_sprites(list("Default" = "robot")))
|
||||
|
||||
qdel(src)
|
||||
|
||||
/obj/item/weapon/robot_module/Destroy()
|
||||
qdel(modules)
|
||||
qdel(synths)
|
||||
for(var/module in modules)
|
||||
qdel(module)
|
||||
for(var/synth in synths)
|
||||
qdel(synths)
|
||||
modules.Cut()
|
||||
synths.Cut()
|
||||
qdel(emag)
|
||||
qdel(jetpack)
|
||||
modules = null
|
||||
synths = null
|
||||
emag = null
|
||||
jetpack = null
|
||||
return ..()
|
||||
@@ -624,6 +622,7 @@ var/global/list/robot_modules = list(
|
||||
sprites = list(
|
||||
"Dread" = "securityrobot",
|
||||
)
|
||||
var/id
|
||||
|
||||
/obj/item/weapon/robot_module/syndicate/New(var/mob/living/silicon/robot/R)
|
||||
..()
|
||||
@@ -635,8 +634,16 @@ var/global/list/robot_modules = list(
|
||||
var/jetpack = new/obj/item/weapon/tank/jetpack/carbondioxide(src)
|
||||
src.modules += jetpack
|
||||
R.internals = jetpack
|
||||
|
||||
id = R.idcard
|
||||
src.modules += id
|
||||
return
|
||||
|
||||
/obj/item/weapon/robot_module/syndicate/Destroy()
|
||||
src.modules -= id
|
||||
id = null
|
||||
return ..()
|
||||
|
||||
/obj/item/weapon/robot_module/security/combat
|
||||
name = "combat robot module"
|
||||
sprites = list("Combat Android" = "droid-combat")
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
icon_state = "securityrobot"
|
||||
modtype = "Security"
|
||||
lawchannel = "State"
|
||||
idcard_type = /obj/item/weapon/card/id/syndicate
|
||||
|
||||
/mob/living/silicon/robot/syndicate/New()
|
||||
if(!cell)
|
||||
@@ -14,11 +15,11 @@
|
||||
..()
|
||||
|
||||
/mob/living/silicon/robot/syndicate/init()
|
||||
idcard = new/obj/item/weapon/card/id/syndicate(src)
|
||||
aiCamera = new/obj/item/device/camera/siliconcam/robot_camera(src)
|
||||
|
||||
laws = new /datum/ai_laws/syndicate_override
|
||||
overlays.Cut()
|
||||
init_id()
|
||||
new /obj/item/weapon/robot_module/syndicate(src)
|
||||
|
||||
radio.keyslot = new /obj/item/device/encryptionkey/syndicate(radio)
|
||||
|
||||
@@ -25,6 +25,7 @@
|
||||
|
||||
var/list/access_rights
|
||||
var/obj/item/weapon/card/id/idcard
|
||||
var/idcard_type = /obj/item/weapon/card/id/captains_spare
|
||||
|
||||
#define SEC_HUD 1 //Security HUD mode
|
||||
#define MED_HUD 2 //Medical HUD mode
|
||||
@@ -33,9 +34,8 @@
|
||||
silicon_mob_list |= src
|
||||
..()
|
||||
add_language("Galactic Common")
|
||||
init_id()
|
||||
init_subsystems()
|
||||
if(!idcard)
|
||||
idcard = new/obj/item/weapon/card/id/captains_spare(src)
|
||||
|
||||
/mob/living/silicon/Destroy()
|
||||
silicon_mob_list -= src
|
||||
@@ -43,6 +43,12 @@
|
||||
AH.unregister(src)
|
||||
..()
|
||||
|
||||
/mob/living/silicon/proc/init_id()
|
||||
if(idcard)
|
||||
return
|
||||
idcard = new idcard_type(src)
|
||||
set_id_info(idcard)
|
||||
|
||||
/mob/living/silicon/proc/SetName(pickedName as text)
|
||||
real_name = pickedName
|
||||
name = real_name
|
||||
|
||||
Reference in New Issue
Block a user