/obj/item/weapon/stamp name = "\improper rubber stamp" desc = "A rubber stamp for stamping important documents." icon = 'icons/obj/bureaucracy.dmi' icon_state = "stamp-ok" item_state = "stamp" throwforce = 0 w_class = 1.0 throw_speed = 3 throw_range = 7 m_amt = 60 _color = "cargo" pressure_resistance = 2 attack_verb = list("stamped") /obj/item/weapon/stamp/suicide_act(mob/user) user.visible_message("[user] stamps 'VOID' on \his forehead, then promptly falls over, dead.") return (OXYLOSS) /obj/item/weapon/stamp/qm name = "Quartermaster's rubber stamp" icon_state = "stamp-qm" _color = "qm" /obj/item/weapon/stamp/law name = "Law office's rubber stamp" icon_state = "stamp-law" _color = "cargo" /obj/item/weapon/stamp/captain name = "captain's rubber stamp" icon_state = "stamp-cap" _color = "captain" /obj/item/weapon/stamp/hop name = "head of personnel's rubber stamp" icon_state = "stamp-hop" _color = "hop" /obj/item/weapon/stamp/hos name = "head of security's rubber stamp" icon_state = "stamp-hos" _color = "hosred" /obj/item/weapon/stamp/ce name = "chief engineer's rubber stamp" icon_state = "stamp-ce" _color = "chief" /obj/item/weapon/stamp/rd name = "research director's rubber stamp" icon_state = "stamp-rd" _color = "director" /obj/item/weapon/stamp/cmo name = "chief medical officer's rubber stamp" icon_state = "stamp-cmo" _color = "medical" /obj/item/weapon/stamp/granted name = "\improper GRANTED rubber stamp" icon_state = "stamp-ok" _color = "qm" /obj/item/weapon/stamp/denied name = "\improper DENIED rubber stamp" icon_state = "stamp-deny" _color = "redcoat" /obj/item/weapon/stamp/clown name = "clown's rubber stamp" icon_state = "stamp-clown" _color = "clown" /obj/item/weapon/stamp/centcom name = "Nanotrasen Representative's rubber stamp" icon_state = "stamp-cent" _color = "internalaffairs" // Syndicate stamp to forge documents. /obj/item/weapon/stamp/chameleon/attack_self(mob/user as mob) var/list/stamp_types = typesof(/obj/item/weapon/stamp) - src.type // Get all stamp types except our own var/list/stamps = list() // Generate them into a list for(var/stamp_type in stamp_types) var/obj/item/weapon/stamp/S = new stamp_type stamps[capitalize(S.name)] = S var/list/show_stamps = list("EXIT" = null) + sortList(stamps) // the list that will be shown to the user to pick from var/input_stamp = input(user, "Choose a stamp to disguise as.", "Choose a stamp.") in show_stamps if(user && src in user.contents) var/obj/item/weapon/stamp/chosen_stamp = stamps[capitalize(input_stamp)] if(chosen_stamp) name = chosen_stamp.name icon_state = chosen_stamp.icon_state _color = chosen_stamp._color