From 9500df95d33902edafbc0cedbc7cbec9bb87f998 Mon Sep 17 00:00:00 2001 From: AzuleUtama <44248086+AzuleUtama@users.noreply.github.com> Date: Sat, 22 Jun 2019 14:06:07 +0100 Subject: [PATCH] Traitor thermals and security HUD now use chameleon code --- code/datums/uplink_item.dm | 8 +-- .../objects/items/weapons/storage/backpack.dm | 2 +- .../items/weapons/storage/uplink_kits.dm | 4 +- code/modules/clothing/chameleon.dm | 29 +++++++++ code/modules/clothing/glasses/glasses.dm | 64 ------------------- code/modules/clothing/glasses/hud.dm | 8 --- 6 files changed, 36 insertions(+), 79 deletions(-) diff --git a/code/datums/uplink_item.dm b/code/datums/uplink_item.dm index b6167338ad3..f60c9b83c69 100644 --- a/code/datums/uplink_item.dm +++ b/code/datums/uplink_item.dm @@ -1107,10 +1107,10 @@ GLOBAL_LIST_INIT(uplink_items, subtypesof(/datum/uplink_item)) cost = 2 /datum/uplink_item/stealthy_tools/thermal - name = "Thermal Imaging Glasses" - desc = "These glasses are thermals disguised as engineers' optical meson scanners. They allow you to see organisms through walls by capturing the upper portion of the infra-red light spectrum, emitted as heat and light by objects. Hotter objects, such as warm bodies, cybernetic organisms and artificial intelligence cores emit more of this light than cooler objects like walls and airlocks." + name = "Thermal Chameleon Glasses" + desc = "These glasses are thermals with Syndicate chameleon technology built into them. They allow you to see organisms through walls by capturing the upper portion of the infra-red light spectrum, emitted as heat and light by objects. Hotter objects, such as warm bodies, cybernetic organisms and artificial intelligence cores emit more of this light than cooler objects like walls and airlocks." reference = "THIG" - item = /obj/item/clothing/glasses/thermal/syndi + item = /obj/item/clothing/glasses/chameleon/thermal cost = 6 /datum/uplink_item/stealthy_tools/traitor_belt @@ -1627,7 +1627,7 @@ GLOBAL_LIST_INIT(uplink_items, subtypesof(/datum/uplink_item)) reference = "CIB" item = /obj/item/storage/box/cyber_implants/bundle cost = 40 - + /datum/uplink_item/bundles_TC/medical name = "Medical Bundle" desc = "The support specialist: Aid your fellow operatives with this medical bundle. Contains a tactical medkit, \ diff --git a/code/game/objects/items/weapons/storage/backpack.dm b/code/game/objects/items/weapons/storage/backpack.dm index 83e6f8e95f8..db968b57723 100644 --- a/code/game/objects/items/weapons/storage/backpack.dm +++ b/code/game/objects/items/weapons/storage/backpack.dm @@ -383,7 +383,7 @@ new /obj/item/gun/projectile/automatic/shotgun/bulldog(src) new /obj/item/ammo_box/magazine/m12g(src) new /obj/item/ammo_box/magazine/m12g(src) - new /obj/item/clothing/glasses/thermal/syndi(src) + new /obj/item/clothing/glasses/chameleon/thermal(src) /obj/item/storage/backpack/duffel/syndie/med/medicalbundle desc = "A large duffel bag containing a tactical medkit, a Donksoft machine gun and a big jumbo box of riot darts." diff --git a/code/game/objects/items/weapons/storage/uplink_kits.dm b/code/game/objects/items/weapons/storage/uplink_kits.dm index 5d31cc3f59b..3736d93f3f6 100644 --- a/code/game/objects/items/weapons/storage/uplink_kits.dm +++ b/code/game/objects/items/weapons/storage/uplink_kits.dm @@ -20,7 +20,7 @@ if("thief") // 40TC new /obj/item/gun/energy/kinetic_accelerator/crossbow(src) // 12TC new /obj/item/chameleon(src) // 8TC - new /obj/item/clothing/glasses/thermal/syndi(src) // 6TC + new /obj/item/clothing/glasses/chameleon/thermal(src) // 6TC new /obj/item/clothing/gloves/color/black/thief(src) // 6TC new /obj/item/card/id/syndicate(src) // 2TC new /obj/item/clothing/shoes/chameleon/noslip(src) // 2TC @@ -108,7 +108,7 @@ new /obj/item/gun/projectile/automatic/sniper_rifle/syndicate/penetrator(src) // 16TC new /obj/item/ammo_box/magazine/sniper_rounds/penetrator(src) // 5TC new /obj/item/ammo_box/magazine/sniper_rounds/soporific(src) // 3TC - new /obj/item/clothing/glasses/thermal/syndi/sunglasses(src) // 6TC + new /obj/item/clothing/glasses/chameleon/thermal(src) // 6TC new /obj/item/clothing/gloves/combat(src) // 0 TC new /obj/item/clothing/under/suit_jacket/really_black(src) // 0 TC new /obj/item/clothing/suit/storage/lawyer/blackjacket/armored(src) // 0TC diff --git a/code/modules/clothing/chameleon.dm b/code/modules/clothing/chameleon.dm index 0a0a2e45abd..913ef849bbd 100644 --- a/code/modules/clothing/chameleon.dm +++ b/code/modules/clothing/chameleon.dm @@ -276,6 +276,35 @@ . = ..() chameleon_action.emp_randomise(INFINITY) +/obj/item/clothing/glasses/chameleon/thermal + origin_tech = "magnets=3;syndicate=4" + vision_flags = SEE_MOBS + lighting_alpha = LIGHTING_PLANE_ALPHA_MOSTLY_VISIBLE + flash_protect = -1 + prescription_upgradable = 1 + +/obj/item/clothing/glasses/hud/security/chameleon + desc = "A heads-up display that scans the humans in view and provides accurate data about their ID status and security records." + flash_protect = 1 + + var/datum/action/item_action/chameleon/change/chameleon_action + +/obj/item/clothing/glasses/hud/security/chameleon/Initialize() + . = ..() + chameleon_action = new(src) + chameleon_action.chameleon_type = /obj/item/clothing/glasses + chameleon_action.chameleon_name = "HUD" + chameleon_action.chameleon_blacklist = list() + chameleon_action.initialize_disguises() + +/obj/item/clothing/glasses/hud/security/chameleon/emp_act(severity) + . = ..() + chameleon_action.emp_randomise() + +/obj/item/clothing/glasses/hud/security/chameleon/broken/Initialize() + . = ..() + chameleon_action.emp_randomise(INFINITY) + /obj/item/clothing/gloves/chameleon desc = "These gloves will protect the wearer from electric shock." name = "insulated gloves" diff --git a/code/modules/clothing/glasses/glasses.dm b/code/modules/clothing/glasses/glasses.dm index d965166fdb2..47d0d8300f8 100644 --- a/code/modules/clothing/glasses/glasses.dm +++ b/code/modules/clothing/glasses/glasses.dm @@ -413,19 +413,6 @@ M.CureNearsighted() ..() -/obj/item/clothing/glasses/thermal/syndi //These are now a traitor item, concealed as mesons. -Pete - name = "Optical Meson Scanner" - desc = "Used for seeing walls, floors, and stuff through anything." - icon_state = "meson" - origin_tech = "magnets=3;syndicate=4" - prescription_upgradable = 1 - -/obj/item/clothing/glasses/thermal/syndi/sunglasses - name = "sunglasses" - desc = "Strangely ancient technology used to help provide rudimentary eye cover." - icon_state = "sun" - item_state = "sunglasses" - sprite_sheets = list( "Vox" = 'icons/mob/species/vox/eyes.dmi', "Drask" = 'icons/mob/species/drask/eyes.dmi', @@ -457,57 +444,6 @@ item_state = "eyepatch" flags = NODROP -/obj/item/clothing/glasses/proc/chameleon(var/mob/user) - var/input_glasses = input(user, "Choose a piece of eyewear to disguise as.", "Choose glasses style.") as null|anything in list("Sunglasses", "Medical HUD", "Mesons", "Science Goggles", "Glasses", "Security Sunglasses","Eyepatch","Welding","Gar") - - if(user && src in user.contents) - switch(input_glasses) - if("Sunglasses") - desc = "Strangely ancient technology used to help provide rudimentary eye cover. Enhanced shielding blocks many flashes." - name = "sunglasses" - icon_state = "sun" - item_state = "sunglasses" - if("Medical HUD") - name = "Health Scanner HUD" - desc = "A heads-up display that scans the humans in view and provides accurate data about their health status." - icon_state = "healthhud" - item_state = "healthhud" - if("Mesons") - name = "Optical Meson Scanner" - desc = "Used by engineering and mining staff to see basic structural and terrain layouts through walls, regardless of lighting condition." - icon_state = "meson" - item_state = "meson" - if("Science Goggles") - name = "Science Goggles" - desc = "A pair of snazzy goggles used to protect against chemical spills." - icon_state = "purple" - item_state = "glasses" - if("Glasses") - name = "Prescription Glasses" - desc = "Made by Nerd. Co." - icon_state = "glasses" - item_state = "glasses" - if("Security Sunglasses") - name = "HUDSunglasses" - desc = "Sunglasses with a HUD." - icon_state = "sunhud" - item_state = "sunglasses" - if("Eyepatch") - name = "eyepatch" - desc = "Yarr." - icon_state = "eyepatch" - item_state = "eyepatch" - if("Welding") - name = "welding goggles" - desc = "Protects the eyes from welders; approved by the mad scientist association." - icon_state = "welding-g" - item_state = "welding-g" - if("Gar") - desc = "Just who the hell do you think I am?!" - name = "gar glasses" - icon_state = "gar" - item_state = "gar" - /obj/item/clothing/glasses/godeye name = "eye of god" desc = "A strange eye, said to have been torn from an omniscient creature that used to roam the wastes." diff --git a/code/modules/clothing/glasses/hud.dm b/code/modules/clothing/glasses/hud.dm index 59ebb6c9446..049710bbe3e 100644 --- a/code/modules/clothing/glasses/hud.dm +++ b/code/modules/clothing/glasses/hud.dm @@ -91,14 +91,6 @@ "Grey" = 'icons/mob/species/grey/eyes.dmi' ) -/obj/item/clothing/glasses/hud/security/chameleon - name = "Chameleon Security HUD" - desc = "A stolen security HUD integrated with Syndicate chameleon technology. Toggle to disguise the HUD. Provides flash protection." - flash_protect = 1 - -/obj/item/clothing/glasses/hud/security/chameleon/attack_self(mob/user) - chameleon(user) - /obj/item/clothing/glasses/hud/security/sunglasses/jensenshades name = "augmented shades" desc = "Polarized bioneural eyewear, designed to augment your vision."