/obj/structure/sign icon = 'icons/obj/decals.dmi' anchored = TRUE opacity = 0 density = FALSE plane = ABOVE_WALL_PLANE layer = SIGN_LAYER max_integrity = 100 armor = list("melee" = 50, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 50, "acid" = 50) var/buildable_sign = 1 //unwrenchable and modifiable rad_flags = RAD_PROTECT_CONTENTS | RAD_NO_CONTAMINATE /obj/structure/sign/basic name = "blank sign" desc = "How can signs be real if our eyes aren't real?" icon_state = "backing" /obj/structure/sign/play_attack_sound(damage_amount, damage_type = BRUTE, damage_flag = 0) switch(damage_type) if(BRUTE) if(damage_amount) playsound(src.loc, 'sound/weapons/slash.ogg', 80, 1) else playsound(loc, 'sound/weapons/tap.ogg', 50, 1) if(BURN) playsound(loc, 'sound/items/welder.ogg', 80, 1) /obj/structure/sign/attackby(obj/item/I, mob/user, params) if(istype(I, /obj/item/wrench) && buildable_sign) user.visible_message("[user] starts removing [src]...", \ "You start unfastening [src].") I.play_tool_sound(src) if(I.use_tool(src, user, 40)) playsound(src, 'sound/items/deconstruct.ogg', 50, 1) user.visible_message("[user] unfastens [src].", \ "You unfasten [src].") var/obj/item/sign_backing/SB = new (get_turf(user)) SB.icon_state = icon_state SB.set_custom_materials(custom_materials) //This is here so picture frames and wooden things don't get messed up. SB.sign_path = type SB.setDir(dir) qdel(src) return else if(istype(I, /obj/item/pen) && buildable_sign) var/list/sign_types = list("Secure Area", "Biohazard", "High Voltage", "Radiation", "Hard Vacuum Ahead", "Disposal: Leads To Space", "Danger: Fire", "No Smoking", "Medbay", "Science", "Chemistry", \ "Hydroponics", "Xenobiology") var/obj/structure/sign/sign_type switch(input(user, "Select a sign type.", "Sign Customization") as null|anything in sign_types) if("Blank") sign_type = /obj/structure/sign/basic if("Secure Area") sign_type = /obj/structure/sign/warning/securearea if("Biohazard") sign_type = /obj/structure/sign/warning/biohazard if("High Voltage") sign_type = /obj/structure/sign/warning/electricshock if("Radiation") sign_type = /obj/structure/sign/warning/radiation if("Hard Vacuum Ahead") sign_type = /obj/structure/sign/warning/vacuum if("Disposal: Leads To Space") sign_type = /obj/structure/sign/warning/deathsposal if("Danger: Fire") sign_type = /obj/structure/sign/warning/fire if("No Smoking") sign_type = /obj/structure/sign/warning/nosmoking/circle if("Medbay") sign_type = /obj/structure/sign/departments/medbay/alt if("Science") sign_type = /obj/structure/sign/departments/science if("Chemistry") sign_type = /obj/structure/sign/departments/chemistry if("Hydroponics") sign_type = /obj/structure/sign/departments/botany if("Xenobiology") sign_type = /obj/structure/sign/departments/xenobio //Make sure user is adjacent still if(!Adjacent(user)) return if(!sign_type) return //It's import to clone the pixel layout information //Otherwise signs revert to being on the turf and //move jarringly var/obj/structure/sign/newsign = new sign_type(get_turf(src)) newsign.pixel_x = pixel_x newsign.pixel_y = pixel_y qdel(src) else return ..() /obj/item/sign_backing name = "sign backing" desc = "A sign with adhesive backing." icon = 'icons/obj/decals.dmi' icon_state = "backing" w_class = WEIGHT_CLASS_NORMAL resistance_flags = FLAMMABLE var/sign_path = /obj/structure/sign/basic //the type of sign that will be created when placed on a turf /obj/item/sign_backing/afterattack(atom/target, mob/user, proximity) . = ..() if(isturf(target) && proximity) var/turf/T = target user.visible_message("[user] fastens [src] to [T].", \ "You attach the sign to [T].") playsound(T, 'sound/items/deconstruct.ogg', 50, 1) var/obj/structure/sign/S = new sign_path(T) S.setDir(dir) qdel(src) /obj/item/sign_backing/Move(atom/new_loc, direct = 0) // pulling, throwing, or conveying a sign backing does not rotate it var/old_dir = dir . = ..() setDir(old_dir) /obj/item/sign_backing/attack_self(mob/user) . = ..() setDir(turn(dir, 90)) /obj/structure/sign/nanotrasen name = "\improper Nanotrasen Logo" desc = "A sign with the Nanotrasen Logo on it. Glory to Nanotrasen!" icon_state = "nanotrasen" /obj/structure/sign/logo name = "nanotrasen logo" desc = "The Nanotrasen corporate logo." icon_state = "nanotrasen_sign1"