refactoring altclick interaction to allow parent calls without forcing the turf contents stat menu open.

This commit is contained in:
Ghommie
2019-11-29 00:40:16 +01:00
parent 8cec8fa506
commit 3b8aebbbc2
99 changed files with 269 additions and 162 deletions
+5 -7
View File
@@ -253,16 +253,14 @@ BLIND // can't see anything
H.update_suit_sensors()
/obj/item/clothing/under/AltClick(mob/user)
if(..())
return 1
. = ..()
if(!istype(user) || !user.canUseTopic(src, BE_CLOSE, ismonkey(user)))
return
if(attached_accessory)
remove_accessory(user)
else
if(attached_accessory)
remove_accessory(user)
else
rolldown()
rolldown()
return TRUE
/obj/item/clothing/under/verb/jumpsuit_adjust()
set name = "Adjust Jumpsuit Style"
+9 -11
View File
@@ -427,19 +427,17 @@
..()
/obj/item/clothing/glasses/AltClick(mob/user)
. = ..()
if(glass_colour_type && ishuman(user))
var/mob/living/carbon/human/H = user
if(H.client)
if(H.client.prefs)
if(src == H.glasses)
H.client.prefs.uses_glasses_colour = !H.client.prefs.uses_glasses_colour
if(H.client.prefs.uses_glasses_colour)
to_chat(H, "You will now see glasses colors.")
else
to_chat(H, "You will no longer see glasses colors.")
H.update_glasses_color(src, 1)
else
return ..()
if(H.client?.prefs && src == H.glasses)
H.client.prefs.uses_glasses_colour = !H.client.prefs.uses_glasses_colour
if(H.client.prefs.uses_glasses_colour)
to_chat(H, "You will now see glasses colors.")
else
to_chat(H, "You will no longer see glasses colors.")
H.update_glasses_color(src, 1)
return TRUE
/obj/item/clothing/glasses/proc/change_glass_color(mob/living/carbon/human/H, datum/client_colour/glass_colour/new_color_type)
var/old_colour_type = glass_colour_type
+2
View File
@@ -116,8 +116,10 @@
toggle_helmet_light(user)
/obj/item/clothing/head/hardhat/weldhat/AltClick(mob/user)
. = ..()
if(user.canUseTopic(src, BE_CLOSE))
toggle_welding_screen(user)
return TRUE
/obj/item/clothing/head/hardhat/weldhat/proc/toggle_welding_screen(mob/living/user)
if(weldingvisortoggle(user))
+10 -10
View File
@@ -104,16 +104,16 @@
. += "<span class='notice'>Alt-click to take a candy corn.</span>"
/obj/item/clothing/head/fedora/det_hat/AltClick(mob/user)
if(user.canUseTopic(src, BE_CLOSE, ismonkey(user)))
..()
if(loc == user)
if(candy_cooldown < world.time)
var/obj/item/reagent_containers/food/snacks/candy_corn/CC = new /obj/item/reagent_containers/food/snacks/candy_corn(src)
user.put_in_hands(CC)
to_chat(user, "You slip a candy corn from your hat.")
candy_cooldown = world.time+1200
else
to_chat(user, "You just took a candy corn! You should wait a couple minutes, lest you burn through your stash.")
. = ..()
if(loc == user && user.canUseTopic(src, BE_CLOSE, ismonkey(user)))
if(candy_cooldown < world.time)
var/obj/item/reagent_containers/food/snacks/candy_corn/CC = new /obj/item/reagent_containers/food/snacks/candy_corn(src)
user.put_in_hands(CC)
to_chat(user, "You slip a candy corn from your hat.")
candy_cooldown = world.time+1200
else
to_chat(user, "You just took a candy corn! You should wait a couple minutes, lest you burn through your stash.")
return TRUE
//Mime
+3 -3
View File
@@ -22,11 +22,11 @@
/obj/item/clothing/head/soft/AltClick(mob/user)
..()
. = ..()
if(!user.canUseTopic(src, BE_CLOSE, ismonkey(user)))
return
else
flip(user)
flip(user)
return TRUE
/obj/item/clothing/head/soft/proc/flip(mob/user)
+3 -3
View File
@@ -23,11 +23,11 @@
adjustmask(user)
/obj/item/clothing/mask/breath/AltClick(mob/user)
..()
. = ..()
if(!user.canUseTopic(src, BE_CLOSE, ismonkey(user)))
return
else
adjustmask(user)
adjustmask(user)
return TRUE
/obj/item/clothing/mask/breath/examine(mob/user)
. = ..()
+6 -6
View File
@@ -964,13 +964,12 @@
. += energy_overlay
/obj/item/clothing/suit/space/hardsuit/lavaknight/AltClick(mob/living/user)
if(user.incapacitated() || !istype(user))
. = ..()
if(!in_range(src, user) || !istype(user))
return
if(user.incapacitated())
to_chat(user, "<span class='warning'>You can't do that right now!</span>")
return
if(!in_range(src, user))
return
if(user.incapacitated() || !istype(user) || !in_range(src, user))
return
return TRUE
if(alert("Are you sure you want to recolor your armor stripes?", "Confirm Repaint", "Yes", "No") == "Yes")
var/energy_color_input = input(usr,"","Choose Energy Color",energy_color) as color|null
@@ -986,6 +985,7 @@
user.update_inv_wear_suit()
light_color = energy_color
update_light()
return TRUE
/obj/item/clothing/suit/space/hardsuit/lavaknight/examine(mob/user)
. = ..()
+3 -3
View File
@@ -92,11 +92,11 @@
//Toggle exosuits for different aesthetic styles (hoodies, suit jacket buttons, etc)
/obj/item/clothing/suit/toggle/AltClick(mob/user)
..()
. = ..()
if(!user.canUseTopic(src, BE_CLOSE, ismonkey(user)))
return
else
suit_toggle(user)
suit_toggle(user)
return TRUE
/obj/item/clothing/suit/toggle/ui_action_click()
suit_toggle()
@@ -67,10 +67,12 @@
return
/obj/item/clothing/accessory/AltClick(mob/user)
. = ..()
if(istype(user) && user.canUseTopic(src, BE_CLOSE, ismonkey(user)))
if(initial(above_suit))
above_suit = !above_suit
to_chat(user, "[src] will be worn [above_suit ? "above" : "below"] your suit.")
return TRUE
/obj/item/clothing/accessory/examine(mob/user)
. = ..()