diff --git a/code/game/machinery/computer/buildandrepair.dm b/code/game/machinery/computer/buildandrepair.dm index eec567dab79..f833b642fa8 100644 --- a/code/game/machinery/computer/buildandrepair.dm +++ b/code/game/machinery/computer/buildandrepair.dm @@ -164,6 +164,8 @@ if(user.combat_mode) return ..() +/obj/structure/frame/computer/AltClick(mob/user) + return ..() // This hotkey is BLACKLISTED since it's used by /datum/component/simple_rotation /obj/structure/frame/computer/deconstruct(disassembled = TRUE) if(!(flags_1 & NODECONSTRUCT_1)) diff --git a/code/game/machinery/doppler_array.dm b/code/game/machinery/doppler_array.dm index a99dd24d2e3..9167c93220e 100644 --- a/code/game/machinery/doppler_array.dm +++ b/code/game/machinery/doppler_array.dm @@ -125,6 +125,9 @@ return return ..() +/obj/machinery/doppler_array/AltClick(mob/user) + return ..() // This hotkey is BLACKLISTED since it's used by /datum/component/simple_rotation + /obj/machinery/doppler_array/proc/RotationMessage(mob/user) to_chat(user, span_notice("You adjust [src]'s dish to face to the [dir2text(dir)].")) playsound(src, 'sound/items/screwdriver2.ogg', 50, TRUE) diff --git a/code/game/machinery/pipe/construction.dm b/code/game/machinery/pipe/construction.dm index d090382e48f..ab71b554508 100644 --- a/code/game/machinery/pipe/construction.dm +++ b/code/game/machinery/pipe/construction.dm @@ -312,6 +312,9 @@ Buildable meters balloon_alert(user, "pipe layer set to [piping_layer]") return SECONDARY_ATTACK_CANCEL_ATTACK_CHAIN +/obj/item/pipe/AltClick(mob/user) + return ..() // This hotkey is BLACKLISTED since it's used by /datum/component/simple_rotation + /obj/item/pipe/trinary/flippable/examine(mob/user) . = ..() . += span_notice("You can flip the device by Right-Clicking it.") diff --git a/code/game/objects/structures/beds_chairs/chair.dm b/code/game/objects/structures/beds_chairs/chair.dm index 02592ad3193..ad0fd5b4779 100644 --- a/code/game/objects/structures/beds_chairs/chair.dm +++ b/code/game/objects/structures/beds_chairs/chair.dm @@ -68,6 +68,9 @@ return . = ..() +/obj/structure/chair/AltClick(mob/user) + return ..() // This hotkey is BLACKLISTED since it's used by /datum/component/simple_rotation + ///allows each chair to request the electrified_buckle component with overlays that dont look ridiculous /obj/structure/chair/proc/electrify_self(obj/item/assembly/shock_kit/input_shock_kit, mob/user, list/overlays_from_child_procs) SHOULD_CALL_PARENT(TRUE) diff --git a/code/game/objects/structures/railings.dm b/code/game/objects/structures/railings.dm index c9cc37b4089..2a6ac08dee6 100644 --- a/code/game/objects/structures/railings.dm +++ b/code/game/objects/structures/railings.dm @@ -51,6 +51,9 @@ to_chat(user, span_warning("[src] is already in good condition!")) return +/obj/structure/railing/AltClick(mob/user) + return ..() // This hotkey is BLACKLISTED since it's used by /datum/component/simple_rotation + /obj/structure/railing/wirecutter_act(mob/living/user, obj/item/I) . = ..() if(!anchored) diff --git a/code/game/objects/structures/shower.dm b/code/game/objects/structures/shower.dm index 614c192f04a..00d6440ce17 100644 --- a/code/game/objects/structures/shower.dm +++ b/code/game/objects/structures/shower.dm @@ -194,6 +194,10 @@ desc = "A shower frame, that needs a water recycler to finish construction." anchored = FALSE +/obj/structure/showerframe/Initialize(mapload) + . = ..() + AddComponent(/datum/component/simple_rotation) + /obj/structure/showerframe/attackby(obj/item/I, mob/living/user, params) if(istype(I, /obj/item/stock_parts/water_recycler)) qdel(I) @@ -203,9 +207,8 @@ return return ..() -/obj/structure/showerframe/Initialize(mapload) - . = ..() - AddComponent(/datum/component/simple_rotation) +/obj/structure/showerframe/AltClick(mob/user) + return ..() // This hotkey is BLACKLISTED since it's used by /datum/component/simple_rotation /obj/effect/mist name = "mist" diff --git a/code/game/objects/structures/transit_tubes/transit_tube_construction.dm b/code/game/objects/structures/transit_tubes/transit_tube_construction.dm index 93fd564e303..8f73c76d48a 100644 --- a/code/game/objects/structures/transit_tubes/transit_tube_construction.dm +++ b/code/game/objects/structures/transit_tubes/transit_tube_construction.dm @@ -52,6 +52,9 @@ qdel(src) return TRUE +/obj/structure/c_transit_tube/AltClick(mob/user) + return ..() // This hotkey is BLACKLISTED since it's used by /datum/component/simple_rotation + // transit tube station /obj/structure/c_transit_tube/station name = "unattached through station" diff --git a/code/game/objects/structures/windoor_assembly.dm b/code/game/objects/structures/windoor_assembly.dm index 0d0a0df7d52..3852bc3267f 100644 --- a/code/game/objects/structures/windoor_assembly.dm +++ b/code/game/objects/structures/windoor_assembly.dm @@ -322,6 +322,9 @@ //Update to reflect changes(if applicable) update_appearance() +/obj/structure/windoor_assembly/AltClick(mob/user) + return ..() // This hotkey is BLACKLISTED since it's used by /datum/component/simple_rotation + //Flips the windoor assembly, determines whather the door opens to the left or the right /obj/structure/windoor_assembly/verb/flip() set name = "Flip Windoor Assembly" diff --git a/code/game/objects/structures/window.dm b/code/game/objects/structures/window.dm index dc2b65f61ec..a8c7ac774b5 100644 --- a/code/game/objects/structures/window.dm +++ b/code/game/objects/structures/window.dm @@ -226,6 +226,9 @@ return ..() +/obj/structure/window/AltClick(mob/user) + return ..() // This hotkey is BLACKLISTED since it's used by /datum/component/simple_rotation + /obj/structure/window/set_anchored(anchorvalue) ..() air_update_turf(TRUE, anchorvalue) diff --git a/code/modules/art/statues.dm b/code/modules/art/statues.dm index ec46422a0ee..421234337f9 100644 --- a/code/modules/art/statues.dm +++ b/code/modules/art/statues.dm @@ -41,6 +41,9 @@ return return ..() +/obj/structure/statue/AltClick(mob/user) + return ..() // This hotkey is BLACKLISTED since it's used by /datum/component/simple_rotation + /obj/structure/statue/deconstruct(disassembled = TRUE) if(!(flags_1 & NODECONSTRUCT_1)) var/amount_mod = disassembled ? 0 : -2 diff --git a/code/modules/assembly/holder.dm b/code/modules/assembly/holder.dm index b3e80dc378b..6ea9b5f8511 100644 --- a/code/modules/assembly/holder.dm +++ b/code/modules/assembly/holder.dm @@ -111,6 +111,9 @@ if(a_right) a_right.attack_hand() +/obj/item/assembly_holder/AltClick(mob/user) + return ..() // This hotkey is BLACKLISTED since it's used by /datum/component/simple_rotation + /obj/item/assembly_holder/screwdriver_act(mob/user, obj/item/tool) if(..()) return TRUE diff --git a/code/modules/assembly/infrared.dm b/code/modules/assembly/infrared.dm index 73222df5825..ca35ced6c6b 100644 --- a/code/modules/assembly/infrared.dm +++ b/code/modules/assembly/infrared.dm @@ -23,6 +23,9 @@ /obj/item/assembly/infra/proc/AfterRotation(mob/user, degrees) refreshBeam() +/obj/item/assembly/infra/AltClick(mob/user) + return ..() // This hotkey is BLACKLISTED since it's used by /datum/component/simple_rotation + /obj/item/assembly/infra/Destroy() STOP_PROCESSING(SSobj, src) listeningTo = null diff --git a/code/modules/atmospherics/machinery/components/binary_devices/circulator.dm b/code/modules/atmospherics/machinery/components/binary_devices/circulator.dm index f82bf4a280c..af52c1a78a8 100644 --- a/code/modules/atmospherics/machinery/components/binary_devices/circulator.dm +++ b/code/modules/atmospherics/machinery/components/binary_devices/circulator.dm @@ -25,6 +25,9 @@ . = ..() AddComponent(/datum/component/simple_rotation) +/obj/machinery/atmospherics/components/binary/circulator/AltClick(mob/user) + return ..() // This hotkey is BLACKLISTED since it's used by /datum/component/simple_rotation + //default cold circ for mappers /obj/machinery/atmospherics/components/binary/circulator/cold mode = CIRCULATOR_COLD diff --git a/code/modules/hydroponics/hydroponics.dm b/code/modules/hydroponics/hydroponics.dm index 8f111139f4b..9b56c72a772 100644 --- a/code/modules/hydroponics/hydroponics.dm +++ b/code/modules/hydroponics/hydroponics.dm @@ -173,7 +173,7 @@ /obj/machinery/hydroponics/constructable/examine(mob/user) . = ..() - . += span_notice("Use Ctrl-Click to activate autogrow. Alt-Click to empty the tray's nutrients.") + . += span_notice("Use Ctrl-Click to activate autogrow. RMB to empty the tray's nutrients.") if(in_range(user, src) || isobserver(user)) . += span_notice("The status display reads: Tray efficiency at [rating*100]%.") @@ -975,7 +975,12 @@ to_chat(user, span_notice("You [self_sustaining ? "activate" : "deactivated"] [src]'s autogrow function[self_sustaining ? ", maintaining the tray's health while using high amounts of power" : ""].")) /obj/machinery/hydroponics/AltClick(mob/user) + return ..() // This hotkey is BLACKLISTED since it's used by /datum/component/simple_rotation + +/obj/machinery/hydroponics/attack_hand_secondary(mob/user, list/modifiers) . = ..() + if(. == SECONDARY_ATTACK_CANCEL_ATTACK_CHAIN) + return if(!anchored) update_appearance() return FALSE @@ -983,6 +988,7 @@ if(warning == "Yes" && user.canUseTopic(src, BE_CLOSE, FALSE, NO_TK)) reagents.clear_reagents() to_chat(user, span_warning("You empty [src]'s nutrient tank.")) + return SECONDARY_ATTACK_CANCEL_ATTACK_CHAIN /** * Update Tray Proc diff --git a/code/modules/plumbing/plumbers/_plumb_machinery.dm b/code/modules/plumbing/plumbers/_plumb_machinery.dm index 04c9c69138c..a957d23937c 100644 --- a/code/modules/plumbing/plumbers/_plumb_machinery.dm +++ b/code/modules/plumbing/plumbers/_plumb_machinery.dm @@ -27,6 +27,9 @@ . = ..() . += span_notice("The maximum volume display reads: [reagents.maximum_volume] units.") +/obj/machinery/plumbing/AltClick(mob/user) + return ..() // This hotkey is BLACKLISTED since it's used by /datum/component/simple_rotation + /obj/machinery/plumbing/wrench_act(mob/living/user, obj/item/I) ..() default_unfasten_wrench(user, I) diff --git a/code/modules/power/generator.dm b/code/modules/power/generator.dm index 4df2c9be02f..e3e84e04511 100644 --- a/code/modules/power/generator.dm +++ b/code/modules/power/generator.dm @@ -215,6 +215,9 @@ default_deconstruction_crowbar(I) return TRUE +/obj/machinery/power/generator/AltClick(mob/user) + return ..() // This hotkey is BLACKLISTED since it's used by /datum/component/simple_rotation + /obj/machinery/power/generator/on_deconstruction() kill_circs() diff --git a/code/modules/power/singularity/emitter.dm b/code/modules/power/singularity/emitter.dm index 42b35fabbfc..0a71c1e4f6b 100644 --- a/code/modules/power/singularity/emitter.dm +++ b/code/modules/power/singularity/emitter.dm @@ -334,6 +334,9 @@ return return ..() +/obj/machinery/power/emitter/AltClick(mob/user) + return ..() // This hotkey is BLACKLISTED since it's used by /datum/component/simple_rotation + /obj/machinery/power/emitter/proc/integrate(obj/item/gun/energy/energy_gun, mob/user) if(!istype(energy_gun, /obj/item/gun/energy)) return diff --git a/code/modules/reagents/chemistry/machinery/chem_dispenser.dm b/code/modules/reagents/chemistry/machinery/chem_dispenser.dm index 2365ce5ec15..621ce65cdc8 100644 --- a/code/modules/reagents/chemistry/machinery/chem_dispenser.dm +++ b/code/modules/reagents/chemistry/machinery/chem_dispenser.dm @@ -111,6 +111,7 @@ . += "The status display reads:\n\ Recharging [recharge_amount] power units per interval.\n\ Power efficiency increased by [round((powerefficiency*1000)-100, 1)]%." + . += span_notice("Use RMB to eject a stored beaker.") /obj/machinery/chem_dispenser/on_set_is_operational(old_value) @@ -431,38 +432,17 @@ beaker = null return ..() -/obj/machinery/chem_dispenser/AltClick(mob/living/user) +/obj/machinery/chem_dispenser/attack_hand_secondary(mob/user, list/modifiers) . = ..() + if(. == SECONDARY_ATTACK_CANCEL_ATTACK_CHAIN) + return if(!can_interact(user) || !user.canUseTopic(src, BE_CLOSE, FALSE, NO_TK)) return replace_beaker(user) + return SECONDARY_ATTACK_CANCEL_ATTACK_CHAIN -/obj/machinery/chem_dispenser/drinks/Initialize(mapload) - . = ..() - AddComponent(/datum/component/simple_rotation) - -/obj/machinery/chem_dispenser/drinks/setDir() - var/old = dir - . = ..() - if(dir != old) - update_appearance() // the beaker needs to be re-positioned if we rotate - -/obj/machinery/chem_dispenser/drinks/display_beaker() - var/mutable_appearance/b_o = beaker_overlay || mutable_appearance(icon, "disp_beaker") - switch(dir) - if(NORTH) - b_o.pixel_y = 7 - b_o.pixel_x = rand(-9, 9) - if(EAST) - b_o.pixel_x = 4 - b_o.pixel_y = rand(-5, 7) - if(WEST) - b_o.pixel_x = -5 - b_o.pixel_y = rand(-5, 7) - else//SOUTH - b_o.pixel_y = -7 - b_o.pixel_x = rand(-9, 9) - return b_o +/obj/machinery/chem_dispenser/AltClick(mob/user) + return ..() // This hotkey is BLACKLISTED since it's used by /datum/component/simple_rotation /obj/machinery/chem_dispenser/drinks name = "soda dispenser" @@ -512,6 +492,33 @@ /datum/reagent/toxin/staminatoxin ) +/obj/machinery/chem_dispenser/drinks/Initialize(mapload) + . = ..() + AddComponent(/datum/component/simple_rotation) + +/obj/machinery/chem_dispenser/drinks/setDir() + var/old = dir + . = ..() + if(dir != old) + update_appearance() // the beaker needs to be re-positioned if we rotate + +/obj/machinery/chem_dispenser/drinks/display_beaker() + var/mutable_appearance/b_o = beaker_overlay || mutable_appearance(icon, "disp_beaker") + switch(dir) + if(NORTH) + b_o.pixel_y = 7 + b_o.pixel_x = rand(-9, 9) + if(EAST) + b_o.pixel_x = 4 + b_o.pixel_y = rand(-5, 7) + if(WEST) + b_o.pixel_x = -5 + b_o.pixel_y = rand(-5, 7) + else//SOUTH + b_o.pixel_y = -7 + b_o.pixel_x = rand(-9, 9) + return b_o + /obj/machinery/chem_dispenser/drinks/fullupgrade //fully ugpraded stock parts, emagged desc = "Contains a large reservoir of soft drinks. This model has had its safeties shorted out." obj_flags = CAN_BE_HIT | EMAGGED diff --git a/code/modules/reagents/reagent_dispenser.dm b/code/modules/reagents/reagent_dispenser.dm index d0e7d636186..986fccb9946 100644 --- a/code/modules/reagents/reagent_dispenser.dm +++ b/code/modules/reagents/reagent_dispenser.dm @@ -250,6 +250,9 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/structure/reagent_dispensers/wall/virusfood, 30 . = ..() AddComponent(/datum/component/simple_rotation) +/obj/structure/reagent_dispensers/plumbed/storage/AltClick(mob/user) + return ..() // This hotkey is BLACKLISTED since it's used by /datum/component/simple_rotation + /obj/structure/reagent_dispensers/plumbed/storage/update_overlays() . = ..() if(!reagents) diff --git a/code/modules/recycling/disposal/construction.dm b/code/modules/recycling/disposal/construction.dm index 65af3f28653..5f24bc63241 100644 --- a/code/modules/recycling/disposal/construction.dm +++ b/code/modules/recycling/disposal/construction.dm @@ -95,6 +95,9 @@ pipe_type = initial(temp.flip_type) update_appearance() +/obj/structure/disposalconstruct/AltClick(mob/user) + return ..() // This hotkey is BLACKLISTED since it's used by /datum/component/simple_rotation + // construction/deconstruction // wrench: (un)anchor // weldingtool: convert to real pipe diff --git a/code/modules/vehicles/wheelchair.dm b/code/modules/vehicles/wheelchair.dm index c7b319053bc..6dee4da1d05 100644 --- a/code/modules/vehicles/wheelchair.dm +++ b/code/modules/vehicles/wheelchair.dm @@ -31,7 +31,6 @@ . = ..() playsound(src, 'sound/effects/roll.ogg', 75, TRUE) - /obj/vehicle/ridden/wheelchair/post_buckle_mob(mob/living/user) . = ..() update_appearance() @@ -50,6 +49,9 @@ qdel(src) return TRUE +/obj/vehicle/ridden/wheelchair/AltClick(mob/user) + return ..() // This hotkey is BLACKLISTED since it's used by /datum/component/simple_rotation + /obj/vehicle/ridden/wheelchair/update_overlays() . = ..() if(has_buckled_mobs())