mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-28 07:38:05 +01:00
You can now push Wraith Spectacles up (#22188)
* You can now push Wraith Spectacles up * you need to... actually LOSE the xray vision * Don't flicker toooo much * for bonus points, let's us refactor status effects while we're here * might as well keep that around
This commit is contained in:
@@ -685,25 +685,31 @@ BLIND // can't see anything
|
||||
body_parts_covered |= CHEST
|
||||
return adjusted
|
||||
|
||||
/obj/item/clothing/proc/weldingvisortoggle() //Malk: proc to toggle welding visors on helmets, masks, goggles, etc.
|
||||
if(!can_use(usr))
|
||||
return
|
||||
/obj/item/clothing/proc/weldingvisortoggle(mob/user) //proc to toggle welding visors on helmets, masks, goggles, etc.
|
||||
if(!can_use(user))
|
||||
return FALSE
|
||||
|
||||
up ^= 1
|
||||
flags ^= visor_flags
|
||||
flags_inv ^= visor_flags_inv
|
||||
flags_cover ^= initial(flags_cover)
|
||||
icon_state = "[initial(icon_state)][up ? "up" : ""]"
|
||||
usr << "<span class='notice'>You adjust \the [src] [up ? "up" : "down"].</span>"
|
||||
flash_protect ^= initial(flash_protect)
|
||||
tint ^= initial(tint)
|
||||
visor_toggling()
|
||||
|
||||
if(istype(usr, /mob/living/carbon))
|
||||
var/mob/living/carbon/C = usr
|
||||
user << "<span class='notice'>You adjust \the [src] [up ? "up" : "down"].</span>"
|
||||
|
||||
if(istype(user, /mob/living/carbon))
|
||||
var/mob/living/carbon/C = user
|
||||
C.head_update(src, forced = 1)
|
||||
for(var/X in actions)
|
||||
var/datum/action/A = X
|
||||
A.UpdateButtonIcon()
|
||||
return TRUE
|
||||
|
||||
/obj/item/clothing/proc/visor_toggling() //handles all the actual toggling of flags
|
||||
up = !up
|
||||
flags ^= visor_flags
|
||||
flags_inv ^= visor_flags_inv
|
||||
flags_cover ^= initial(flags_cover)
|
||||
icon_state = "[initial(icon_state)][up ? "up" : ""]"
|
||||
flash_protect ^= initial(flash_protect)
|
||||
tint ^= initial(tint)
|
||||
|
||||
|
||||
/obj/item/clothing/proc/can_use(mob/user)
|
||||
if(user && ismob(user))
|
||||
|
||||
@@ -3,6 +3,17 @@
|
||||
materials = list(MAT_GLASS = 250)
|
||||
var/glass_colour_type = null //colors your vision when worn
|
||||
|
||||
/obj/item/clothing/glasses/visor_toggling()
|
||||
..()
|
||||
vision_flags ^= initial(vision_flags)
|
||||
darkness_view ^= initial(darkness_view)
|
||||
invis_view ^= initial(invis_view)
|
||||
|
||||
/obj/item/clothing/glasses/weldingvisortoggle(mob/user)
|
||||
. = ..()
|
||||
if(. && user)
|
||||
user.update_sight()
|
||||
|
||||
//called when thermal glasses are emped.
|
||||
/obj/item/clothing/glasses/proc/thermal_overload()
|
||||
if(ishuman(src.loc))
|
||||
@@ -202,17 +213,8 @@
|
||||
visor_flags_inv = HIDEEYES
|
||||
glass_colour_type = /datum/client_colour/glass_colour/gray
|
||||
|
||||
|
||||
/obj/item/clothing/glasses/welding/attack_self()
|
||||
toggle()
|
||||
|
||||
|
||||
/obj/item/clothing/glasses/welding/verb/toggle()
|
||||
set category = "Object"
|
||||
set name = "Adjust welding goggles"
|
||||
set src in usr
|
||||
|
||||
weldingvisortoggle()
|
||||
/obj/item/clothing/glasses/welding/attack_self(mob/user)
|
||||
weldingvisortoggle(user)
|
||||
|
||||
|
||||
/obj/item/clothing/glasses/sunglasses/blindfold
|
||||
|
||||
@@ -28,16 +28,8 @@
|
||||
visor_flags_cover = HEADCOVERSEYES | HEADCOVERSMOUTH
|
||||
resistance_flags = FIRE_PROOF
|
||||
|
||||
/obj/item/clothing/head/welding/attack_self()
|
||||
toggle()
|
||||
|
||||
|
||||
/obj/item/clothing/head/welding/verb/toggle()
|
||||
set category = "Object"
|
||||
set name = "Adjust welding helmet"
|
||||
set src in usr
|
||||
|
||||
weldingvisortoggle()
|
||||
/obj/item/clothing/head/welding/attack_self(mob/user)
|
||||
weldingvisortoggle(user)
|
||||
|
||||
|
||||
/*
|
||||
|
||||
@@ -29,15 +29,9 @@
|
||||
visor_flags_cover = MASKCOVERSEYES
|
||||
resistance_flags = FIRE_PROOF
|
||||
|
||||
/obj/item/clothing/mask/gas/welding/attack_self()
|
||||
toggle()
|
||||
/obj/item/clothing/mask/gas/welding/attack_self(mob/user)
|
||||
weldingvisortoggle(user)
|
||||
|
||||
/obj/item/clothing/mask/gas/welding/verb/toggle()
|
||||
set category = "Object"
|
||||
set name = "Adjust welding mask"
|
||||
set src in usr
|
||||
|
||||
weldingvisortoggle()
|
||||
|
||||
// ********************************************************************
|
||||
|
||||
|
||||
@@ -72,4 +72,6 @@
|
||||
var/blood_volume = 0 //how much blood the mob has
|
||||
var/obj/effect/proc_holder/ranged_ability //Any ranged ability the mob has, as a click override
|
||||
|
||||
var/list/status_effects //a list of all status effects the mob has
|
||||
|
||||
var/slipping = FALSE
|
||||
Reference in New Issue
Block a user