Skip to content

Commit

Permalink
give'r or leave'r, buddy.
Browse files Browse the repository at this point in the history
  • Loading branch information
Ghommie committed Jun 9, 2019
1 parent c3fa360 commit cb255b8
Show file tree
Hide file tree
Showing 4 changed files with 109 additions and 25 deletions.
1 change: 0 additions & 1 deletion code/__DEFINES/DNA.dm
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,6 @@
#define SWEDISH "Swedish"
#define CHAV "Chav"
#define ELVIS "Elvis"
#define YELLING "Yelling"

#define UI_CHANGED "ui changed"
#define UE_CHANGED "ue changed"
Expand Down
15 changes: 1 addition & 14 deletions code/datums/mutations/speech.dm
Original file line number Diff line number Diff line change
Expand Up @@ -229,17 +229,4 @@
/datum/mutation/human/stoner/on_losing(mob/living/carbon/human/owner)
..()
owner.grant_language(/datum/language/common)
owner.remove_language(/datum/language/beachbum)

/datum/mutation/human/yelling
name = "Yelling"
desc = "A mutation that forces the host to constantly yell their sentences out."
quality = MINOR_NEGATIVE
locked = TRUE
text_gain_indication = "<span class='danger'>You feel really angry.</span>"
text_lose_indication = "<span class='notice'>You feel calmer.</span>"

/datum/mutation/human/yelling/say_mod(message)
if(message)
message = "[uppertext(replacetext(message, ".", "!"))]!"
return (message)
owner.remove_language(/datum/language/beachbum)
73 changes: 63 additions & 10 deletions code/modules/clothing/head/jobs.dm
Original file line number Diff line number Diff line change
@@ -1,3 +1,8 @@
//defines the drill hat's yelling setting
#define DRILL_DEFAULT "default"
#define DRILL_SHOUTING "shouting"
#define DRILL_YELLING "yelling"
#define DRILL_CANADIAN "canadian"

//Chef
/obj/item/clothing/head/chefhat
Expand Down Expand Up @@ -149,20 +154,63 @@
dog_fashion = /datum/dog_fashion/head/warden

/obj/item/clothing/head/warden/drill
name = "warden's drill hat"
name = "warden's campaign hat"
desc = "A special armored campaign hat with the security insignia emblazoned on it. Uses reinforced fabric to offer sufficient protection. Has the letters 'FMJ' enscribed on its side."
icon_state = "wardendrill"
item_state = "wardendrill"
dog_fashion = null

/obj/item/clothing/head/warden/drill/equipped(mob/living/carbon/human/user, slot)
. = ..()
if(slot == SLOT_HEAD)
user.dna.add_mutation(YELLING)

/obj/item/clothing/head/warden/drill/dropped(mob/living/carbon/human/user)
. = ..()
user.dna.remove_mutation(YELLING)
var/mode = DRILL_DEFAULT

/obj/item/clothing/head/warden/drill/screwdriver_act(mob/living/carbon/human/user, obj/item/I)
if(..())
return TRUE
switch(mode)
if(DRILL_DEFAULT)
to_chat(user, "<span class='notice'>You set the voice circuit to the middle position.</span>")
mode = DRILL_SHOUTING
if(DRILL_SHOUTING)
to_chat(user, "<span class='notice'>You set the voice circuit to the last position.</span>")
mode = DRILL_YELLING
if(DRILL_YELLING)
to_chat(user, "<span class='notice'>You set the voice circuit to the first position.</span>")
mode = DRILL_DEFAULT
if(DRILL_CANADIAN)
to_chat(user, "<span class='danger'>You adjust voice circuit but nothing happens, probably because it's broken.</span>")
return TRUE

/obj/item/clothing/head/warden/drill/wirecutter_act(mob/living/user, obj/item/I)
if(mode != DRILL_CANADIAN)
to_chat(user, "<span class='danger'>You broke the voice circuit!</span>")
mode = DRILL_CANADIAN
return TRUE

/obj/item/clothing/head/warden/drill/speechModification(M)
if(copytext(M, 1, 2) != "*")
if(mode == DRILL_DEFAULT)
M = " [M]"
return trim(M)
if(mode == DRILL_SHOUTING)
M = " [M]!"
return trim(M)
if(mode == DRILL_YELLING)
M = " [M]!!"
return trim(M)
if(mode == DRILL_CANADIAN)
M = " [M]"
var/list/canadian_words = strings("canadian_replacement.json", "canadian")

for(var/key in canadian_words)
var/value = canadian_words[key]
if(islist(value))
value = pick(value)

M = replacetextEx(M, " [uppertext(key)]", " [uppertext(value)]")
M = replacetextEx(M, " [capitalize(key)]", " [capitalize(value)]")
M = replacetextEx(M, " [key]", " [value]")

if(prob(30))
M += pick(", eh?", ", EH?")
return trim(M)

/obj/item/clothing/head/beret/sec
name = "security beret"
Expand Down Expand Up @@ -217,3 +265,8 @@
name = "quartermaster's beret"
desc = "This headwear shows off your Cargonian leadership"
icon_state = "qmberet"

#undef DRILL_DEFAULT
#undef DRILL_SHOUTING
#undef DRILL_YELLING
#undef DRILL_CANADIAN
45 changes: 45 additions & 0 deletions strings/canadian_replacement.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
{

"canadian": {
"toilet": "washroom",
"bathroom": "washroom",
"restroom": "washroom",
"coffee": "doubledouble",
"backpack": "knapsack",
"rucksack": "knapsack",
"candybar": "chocolate bar",
"about": "aboot",
"friend": "buddy",
"pal": "buddy",
"donut": "doughnut",
"faucet": "tap",
"give": "give'r",
"bar": "boozecan",
"leave": "leave'r",
"scruffle": "kerfuffle",
"couch": "chesterfield",
"sofa": "chesterfield",
"alcohol": "mickey",
"shoes": "runners",
"cigarrete": "dart",
"cig": "dart",
"color": "colour",
"armor": "armour",
"armory": "armoury",
"defense": "defence",
"honor": "honour",
"labor": "labour",
"humor": "humour",
"humorous": "humourous",
"gray": "grey",
"labeled": "labelled",
"luster": "lustre",
"inch": "centimetre",
"yard": "metre",
"tumor": "tumour",
"mile": "kilometre",
"pound": "kilogram"
}


}

0 comments on commit cb255b8

Please sign in to comment.