Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

New station trait: Clown Bridge Access! #9797

Closed
wants to merge 10 commits into from
1 change: 1 addition & 0 deletions code/__DEFINES/traits.dm
Original file line number Diff line number Diff line change
Expand Up @@ -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"
Expand Down
8 changes: 8 additions & 0 deletions code/datums/station_traits/negative_traits.dm
Original file line number Diff line number Diff line change
Expand Up @@ -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
4 changes: 4 additions & 0 deletions code/game/objects/items/cards_ids.dm
Original file line number Diff line number Diff line change
Expand Up @@ -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.\n<b>You can see the word \"<span class='honk'>BRIDGE</span>\" hastily scribbled over it in crayon, and nobody knows why the system recognizes this as valid.</sb"

/obj/item/card/id/job/mime
name = "Job card (Serv) - Mime"
icon_state = "mime"
Expand Down
29 changes: 24 additions & 5 deletions code/modules/jobs/job_types/clown.dm
Original file line number Diff line number Diff line change
Expand Up @@ -30,14 +30,18 @@

minimal_lightup_areas = list(/area/crew_quarters/theatre)

/datum/job/clown/New()
. = ..()
if(HAS_TRAIT(SSstation, STATION_TRAIT_CLOWN_BRIDGE))
outfit = /datum/outfit/job/clown/bridge

/datum/job/clown/after_spawn(mob/living/carbon/human/H, mob/M, latejoin = FALSE, client/preference_source, on_dummy = FALSE)
. = ..()
if(!ishuman(H))
return
if(!M.client || on_dummy)
if(!ishuman(H) || !M.client || on_dummy)
return
H.apply_pref_name(/datum/preference/name/clown, preference_source)

if(HAS_TRAIT(SSstation, STATION_TRAIT_CLOWN_BRIDGE))
to_chat(M, "<span class='notice bold'>The <span class='honk bold'>Clown Planet</span> has given all clowns access to a specific weakness in airlock ID scanners, resulting in all clowns having <b>bridge access</b>! Honk!</span>")
Absolucy marked this conversation as resolved.
Show resolved Hide resolved

/datum/outfit/job/clown
name = JOB_NAME_CLOWN
Expand Down Expand Up @@ -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)
5 changes: 5 additions & 0 deletions tgui/packages/tgui-panel/styles/goon/chat-dark.scss
Original file line number Diff line number Diff line change
Expand Up @@ -1381,3 +1381,8 @@ em {
.stat_br {
color: #2ace53;
}

.honk {
color: #ff70c1;
font-family: 'Comic Sans MS', cursive, sans-serif;
}
5 changes: 5 additions & 0 deletions tgui/packages/tgui-panel/styles/goon/chat-light.scss
Original file line number Diff line number Diff line change
Expand Up @@ -1386,3 +1386,8 @@ h2.alert {
.stat_br {
color: #2ace53;
}

.honk {
color: #ff69bf;
font-family: 'Comic Sans MS', cursive, sans-serif;
}
Loading