/obj/item/mecha_equipment/mounted_system/rfd name = "mounted rfd" icon_state = "mecha_rfd" holding_type = /obj/item/rfd/construction/mounted/exosuit restricted_hardpoints = list(HARDPOINT_LEFT_HAND, HARDPOINT_RIGHT_HAND) restricted_software = list(MECH_SOFTWARE_ENGINEERING) module_hints = list( "Control Click(Self): Activate the RFD's mode selection radial menu.", "Left Click(Target): Use the RFD on the target.", "Matter used for the RFD is synthesized directly from the mech's power supply via a phoron-catalyzed mass fabricator.", ) /obj/item/mecha_equipment/mounted_system/rfd/CtrlClick(mob/user) if(owner && istype(holding, /obj/item/rfd/construction/mounted/exosuit)) var/obj/item/rfd/construction/mounted/exosuit/R = holding var/current_mode = show_radial_menu(user, owner, R.radial_modes, radius = 42, require_near = FALSE , tooltips = TRUE) switch(current_mode) if("Floors and Walls") R.mode = RFD_FLOORS_AND_WALL if("Windows and Grille") R.mode = RFD_WINDOW_AND_FRAME if("Airlock") R.mode = RFD_AIRLOCK if("Deconstruct") R.mode = RFD_DECONSTRUCT else R.mode = RFD_FLOORS_AND_WALL if(current_mode) to_chat(user, SPAN_NOTICE("You set the device to \"[current_mode]\".")) if(R.mode == 3) playsound(get_turf(src), 'sound/weapons/laser_safetyoff.ogg', 50, FALSE) else playsound(get_turf(src), 'sound/weapons/laser_safetyon.ogg', 50, FALSE) else return /obj/item/rfd/construction/mounted/exosuit/attack_self(mob/user) //we don't want this attack_self, as it would target the pilot not the exosuit. return /obj/item/rfd/construction/mounted/exosuit/get_hardpoint_maptext() var/obj/item/mecha_equipment/mounted_system/MS = loc if(istype(MS) && MS.owner) var/obj/item/cell/C = MS.owner.get_cell() if(istype(C)) return "[round(C.charge)]/[round(C.maxcharge)]" return null /obj/item/rfd/construction/mounted/exosuit/get_hardpoint_status_value() var/obj/item/mecha_equipment/mounted_system/MS = loc if(istype(MS) && MS.owner) var/obj/item/cell/C = MS.owner.get_cell() if(istype(C)) return C.charge/C.maxcharge return null /obj/item/extinguisher/mech name = "mounted fire extinguisher" max_water = 4000 //Good is gooder icon = 'icons/mecha/mech_equipment.dmi' icon_state = "mecha_exting" safety = FALSE /obj/item/extinguisher/mech/New() reagents = new/datum/reagents(max_water) reagents.my_atom = src reagents.add_reagent(/singleton/reagent/toxin/fertilizer/monoammoniumphosphate, max_water) ..() /obj/item/extinguisher/mech/get_hardpoint_maptext() return "[reagents.total_volume]/[max_water]" /obj/item/extinguisher/mech/get_hardpoint_status_value() return reagents.total_volume/max_water /obj/item/mecha_equipment/mounted_system/extinguisher name = "mounted extinguisher" icon_state = "mecha_exting" holding_type = /obj/item/extinguisher/mech restricted_hardpoints = list(HARDPOINT_LEFT_HAND, HARDPOINT_RIGHT_HAND) restricted_software = list(MECH_SOFTWARE_ENGINEERING)