diff --git a/code/__DEFINES/traits.dm b/code/__DEFINES/traits.dm index c4c8cfba9ad69..ff4fc7a0b6efe 100644 --- a/code/__DEFINES/traits.dm +++ b/code/__DEFINES/traits.dm @@ -412,6 +412,7 @@ Remember to update _globalvars/traits.dm if you're adding/removing/renaming trai #define STATION_TRAIT_DISTANT_SUPPLY_LINES "distant_supply_lines" #define STATION_TRAIT_STRONG_SUPPLY_LINES "strong_supply_lines" #define STATION_TRAIT_UNITED_BUDGET "united_budget" +#define STATION_TRAIT_CLOWN_BRIDGE "clown_bridge" /// Trait applied when the MMI component is added to an [/obj/item/integrated_circuit] #define TRAIT_COMPONENT_MMI "component_mmi" diff --git a/code/datums/station_traits/negative_traits.dm b/code/datums/station_traits/negative_traits.dm index ec73d828df3ce..df08ee16f7fee 100644 --- a/code/datums/station_traits/negative_traits.dm +++ b/code/datums/station_traits/negative_traits.dm @@ -196,3 +196,11 @@ "Due to the budget cuts in Nanotrasen Space Finance,", "Since \[REDACTED\] has been \[REDACTED\] by \[REDACTED\],")) report_message = "[event_source] all station budgets have been united into one, and all budget cards will be linked to one account." + +/datum/station_trait/clown_bridge + name = "Clown Bridge Access" + trait_type = STATION_TRAIT_NEGATIVE + weight = 2 + show_in_report = TRUE + report_message = "The Clown Planet has discovered a weakness in the ID scanners of specific airlocks." + trait_to_give = STATION_TRAIT_CLOWN_BRIDGE diff --git a/code/game/objects/items/cards_ids.dm b/code/game/objects/items/cards_ids.dm index 6398a7c817689..031ef9b350bdb 100644 --- a/code/game/objects/items/cards_ids.dm +++ b/code/game/objects/items/cards_ids.dm @@ -1083,6 +1083,10 @@ update_label("John Doe", "Clowny") assignment = JOB_NAME_CLOWN hud_state = JOB_HUD_CLOWN +/obj/item/card/id/job/clown/bridge + name = "Job card (Serv) - Clown (+bridge)" + desc = "A card used to provide ID and determine access across the station.\nYou can see the word \"BRIDGE\" hastily scribbled over it in crayon, and nobody knows why the system recognizes this as valid.The Clown Planet has given all clowns access to a specific weakness in airlock ID scanners, resulting in all clowns having bridge access! Honk!") /datum/outfit/job/clown name = JOB_NAME_CLOWN @@ -76,7 +80,22 @@ ..() if(visualsOnly) return - H.fully_replace_character_name(H.real_name, pick(GLOB.clown_names)) //rename the mob AFTER they're equipped so their ID gets updated properly. H.dna.add_mutation(CLOWNMUT) ADD_TRAIT(H, TRAIT_NAIVE, JOB_TRAIT) + +/datum/outfit/job/clown/bridge + id = /obj/item/card/id/job/clown/bridge + +/datum/outfit/job/clown/bridge/New() + . = ..() + name = "[name] (Bridge Access)" + +/datum/outfit/job/clown/bridge/post_equip(mob/living/carbon/human/H, visualsOnly) + . = ..() + if(visualsOnly) + return + var/obj/item/card/id/id = H.get_idcard(FALSE) + if(!istype(id)) + return + id.access |= list(ACCESS_HEADS) diff --git a/tgui/packages/tgui-panel/styles/goon/chat-dark.scss b/tgui/packages/tgui-panel/styles/goon/chat-dark.scss index 686b416cbfd82..5adfe6edd338a 100644 --- a/tgui/packages/tgui-panel/styles/goon/chat-dark.scss +++ b/tgui/packages/tgui-panel/styles/goon/chat-dark.scss @@ -1381,3 +1381,8 @@ em { .stat_br { color: #2ace53; } + +.honk { + color: #ff70c1; + font-family: 'Comic Sans MS', cursive, sans-serif; +} diff --git a/tgui/packages/tgui-panel/styles/goon/chat-light.scss b/tgui/packages/tgui-panel/styles/goon/chat-light.scss index ca7541d6074f5..43a0996468e72 100644 --- a/tgui/packages/tgui-panel/styles/goon/chat-light.scss +++ b/tgui/packages/tgui-panel/styles/goon/chat-light.scss @@ -1386,3 +1386,8 @@ h2.alert { .stat_br { color: #2ace53; } + +.honk { + color: #ff69bf; + font-family: 'Comic Sans MS', cursive, sans-serif; +}