Adds the "Jestographic Sequencer", a clown-exclusive traitor item (#18933)

* Initial commit

* Removes ability for AI/door remotes to interface with cmagged doors

* Adds cleaning method, fixes windoor functionality, makes cmag slippery

* Cleaning cmagged doors checks for remaining space cleaner, cleanup

* Reduced TC cost from 6 to 4, fixed small bug

* Code review super happy funtime

* Adds cooldown to cmag airlock chuckle

* Cleanup, cmag door laugh no longer sounds through walls (again)

* Prevents blank spare IDs from passing through cmagged airlocks

* Cleanup

* Cmagged state is now carried by a trait instead of a global var, cleanup

* Adds early return that I missed, fixes small bug)
This commit is contained in:
FloFluoro
2022-09-05 16:35:45 -04:00
committed by GitHub
parent 53f70608a2
commit 87caa9532b
10 changed files with 165 additions and 4 deletions
+3
View File
@@ -48,6 +48,9 @@
/obj/item/door_remote/afterattack(obj/machinery/door/airlock/D, mob/user)
if(!istype(D))
return
if(HAS_TRAIT(D, TRAIT_CMAGGED))
to_chat(user, "<span class='danger'>The door doesn't respond to [src]!</span>")
return
if(D.is_special)
to_chat(user, "<span class='danger'>[src] cannot access this kind of door!</span>")
return
@@ -80,6 +80,27 @@
return
A.emag_act(user)
/obj/item/card/cmag
desc = "It's a card coated in a slurry of electromagnetic bananium."
name = "jestographic sequencer"
icon_state = "cmag"
item_state = "card-id"
origin_tech = "magnets=2;syndicate=2"
flags = NOBLUDGEON
flags_2 = NO_MAT_REDEMPTION_2
/obj/item/card/cmag/Initialize(mapload)
. = ..()
AddComponent(/datum/component/slippery, src, 16 SECONDS, 100)
/obj/item/card/cmag/attack()
return
/obj/item/card/cmag/afterattack(atom/target, mob/user, proximity)
if(!proximity)
return
target.cmag_act(user)
/obj/item/card/id
name = "identification card"
desc = "A card used to provide ID and determine access across the station."