diff --git a/hyperstation/code/modules/barber.dm b/hyperstation/code/modules/salon/barber.dm similarity index 75% rename from hyperstation/code/modules/barber.dm rename to hyperstation/code/modules/salon/barber.dm index b602bfeef..572235bfe 100644 --- a/hyperstation/code/modules/barber.dm +++ b/hyperstation/code/modules/salon/barber.dm @@ -1,7 +1,7 @@ /obj/structure/chair/barber_chair name = "barbers chair" desc = "You sit in this, and your hair shall be cut." - icon = 'hyperstation/icons/obj/chairs.dmi' + icon = 'icons/obj/chairs.dmi' icon_state = "barber_chair" //Brush @@ -59,7 +59,6 @@ //fur dyer -/* Gotta port/workaround a lot of things to make do #define COLOR_MODE_SPECIFIC "Specific Marking" #define COLOR_MODE_GENERAL "General Color" @@ -70,12 +69,12 @@ icon_state = "fur_sprayer" w_class = WEIGHT_CLASS_TINY - var/mode = COLOR_MODE_SPECIFIC - + var/mode = COLOR_MODE_GENERAL +/* /obj/item/fur_dyer/Initialize(mapload) . = ..() AddComponent(/datum/component/cell) - +*/ /obj/item/fur_dyer/attack_self(mob/user, modifiers) . = ..() if(mode == COLOR_MODE_SPECIFIC) @@ -93,25 +92,22 @@ switch(mode) if(COLOR_MODE_SPECIFIC) - dye_marking(target_human, user) + to_chat(user, "The device resonates ominously, and stops. It seems to be interfered by an Engram.") + //dye_marking(target_human, user) if(COLOR_MODE_GENERAL) dye_general(target_human, user) /obj/item/fur_dyer/proc/dye_general(mob/living/carbon/human/target_human, mob/living/user) - var/selected_mutant_color = tgui_alert(user, "Please select which mutant color you'd like to change", "Select Color", list("One", "Two", "Three")) + var/selected_mutant_color = tgalert(user, "Please select which mutant color you'd like to change", "Select Color", "One", "Two", "Three") if(!selected_mutant_color) return - if(!(item_use_power(power_use_amount, user, TRUE) & COMPONENT_POWER_SUCCESS)) - to_chat(user, "A red light blinks!") - return - var/selected_color = input( user, "Select marking color", null, - COLOR_WHITE, + "#FFFFFF" ) as color | null if(!selected_color) @@ -131,12 +127,14 @@ target_human.dna.features["mcolor2"] = selected_color target_human.regenerate_icons() - item_use_power(power_use_amount, user) + //use power - visible_message("[user] finishes painting [target_human]!")) + visible_message("[user] finishes painting [target_human]!") playsound(src.loc, 'sound/effects/spray2.ogg', 50, TRUE) + +/* We don't have markings that can be colored separately yet, so this is not needed /obj/item/fur_dyer/proc/dye_marking(mob/living/carbon/human/target_human, mob/living/user) var/list/list/current_markings = target_human.dna.body_markings.Copy() @@ -145,17 +143,15 @@ to_chat(user, "[target_human] has no markings!") return - if(!(item_use_power(power_use_amount, user, TRUE) & COMPONENT_POWER_SUCCESS)) - to_chat(user, "A red light blinks!") - return + //power stuff here - var/selected_marking_area = user.zone_selected + /var/selected_marking_area = user.zone_selected if(!current_markings[selected_marking_area]) to_chat(user, "[target_human] has no bodymarkings on this limb!") return - var/selected_marking_id = tgui_input_list(user, "Please select which marking you'd like to color!", "Select marking", current_markings[selected_marking_area]) + var/selected_marking_id = input(user, "Please select which marking you'd like to color!", "Select marking", current_markings[selected_marking_area]) if(!selected_marking_id) return @@ -164,7 +160,7 @@ user, "Select marking color", null, - COLOR_WHITE, + "#FFFFFF" ) as color | null if(!selected_color) @@ -181,9 +177,49 @@ target_human.regenerate_icons() - item_use_power(power_use_amount, user) + //item_use_power(power_use_amount, user) visible_message("[user] finishes painting [target_human]!") playsound(src.loc, 'sound/effects/spray2.ogg', 50, TRUE) */ + +/obj/machinery/dryer + name = "hand dryer" + desc = "The Breath Of Lizads-3000, an experimental dryer." + icon = 'hyperstation/icons/obj/dryer.dmi' + icon_state = "dryer" + density = FALSE + anchored = TRUE + var/busy = FALSE + +/obj/machinery/dryer/attack_hand(mob/user) + if(iscyborg(user) || isAI(user)) + return + + if(!can_interact(user)) + return + + if(busy) + to_chat(user, "Someone is already drying here.") + return + + to_chat(user, "You start drying your hands.") + playsound(src, 'hyperstation/sound/salon/drying.ogg', 50) + add_fingerprint(user) + busy = TRUE + if(do_after(user, 4 SECONDS, src)) + busy = FALSE + user.visible_message("[user] dried their hands using \the [src].") + else + busy = FALSE + +/obj/item/reagent_containers/dropper/precision + name = "pipette" + desc = "A high precision pippette. Holds 1 unit." + icon = 'hyperstation/icons/obj/barber.dmi' + icon_state = "pipette1" + amount_per_transfer_from_this = 1 + possible_transfer_amounts = list(0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1) + volume = 1 + w_class = WEIGHT_CLASS_TINY diff --git a/hyperstation/icons/obj/dryer.dmi b/hyperstation/icons/obj/dryer.dmi new file mode 100644 index 000000000..ab02432a8 Binary files /dev/null and b/hyperstation/icons/obj/dryer.dmi differ diff --git a/hyperstation/sound/salon/drying.ogg b/hyperstation/sound/salon/drying.ogg new file mode 100644 index 000000000..0f977fb90 Binary files /dev/null and b/hyperstation/sound/salon/drying.ogg differ diff --git a/hyperstation/sound/salon/haircut.ogg b/hyperstation/sound/salon/haircut.ogg new file mode 100644 index 000000000..160bfc369 Binary files /dev/null and b/hyperstation/sound/salon/haircut.ogg differ diff --git a/icons/obj/chairs.dmi b/icons/obj/chairs.dmi index 3963e9254..d523c66ee 100644 Binary files a/icons/obj/chairs.dmi and b/icons/obj/chairs.dmi differ diff --git a/tgstation.dme b/tgstation.dme index 46c106753..48f765040 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -3120,7 +3120,6 @@ #include "hyperstation\code\mobs\hugbot.dm" #include "hyperstation\code\mobs\mimic.dm" #include "hyperstation\code\mobs\werewolf.dm" -#include "hyperstation\code\modules\barber.dm" #include "hyperstation\code\modules\pen.dm" #include "hyperstation\code\modules\traits.dm" #include "hyperstation\code\modules\admin\verbs\hyperverbs.dm" @@ -3186,6 +3185,7 @@ #include "hyperstation\code\modules\resize\resizing.dm" #include "hyperstation\code\modules\resize\sizechems.dm" #include "hyperstation\code\modules\resize\sizegun.dm" +#include "hyperstation\code\modules\salon\barber.dm" #include "hyperstation\code\modules\surgery\organs\augments_arms.dm" #include "hyperstation\code\modules\uplink\uplink_items.dm" #include "hyperstation\code\modules\vending\teavendomatic.dm"