diff --git a/code/datums/mutations/_combined.dm b/code/datums/mutations/_combined.dm index baa7c2c1215b5..5b7b5d429015e 100644 --- a/code/datums/mutations/_combined.dm +++ b/code/datums/mutations/_combined.dm @@ -52,3 +52,7 @@ /datum/generecipe/heckacious required = "/datum/mutation/human/wacky; /datum/mutation/human/stoner" result = /datum/mutation/human/heckacious + +/datum/generecipe/ork + required = "/datum/mutation/human/hulk; /datum/mutation/human/clumsy" + result = /datum/mutation/human/hulk/ork diff --git a/code/datums/mutations/hulk.dm b/code/datums/mutations/hulk.dm index 4b9a57e5a0c84..dbe91091ab89c 100644 --- a/code/datums/mutations/hulk.dm +++ b/code/datums/mutations/hulk.dm @@ -9,8 +9,10 @@ species_allowed = list(SPECIES_HUMAN) //no skeleton/lizard hulk health_req = 25 instability = POSITIVE_INSTABILITY_MAJOR + conflicts = list(/datum/mutation/human/hulk/ork) var/scream_delay = 50 var/last_scream = 0 + var/bodypart_color = COLOR_DARK_LIME /// List of traits to add/remove when someone gets this mutation. mutation_traits = list( TRAIT_CHUNKYFINGERS, @@ -22,13 +24,16 @@ /datum/mutation/human/hulk/New(class, timer, datum/mutation/human/copymut) . = ..() + add_speechmod() + +/datum/mutation/human/hulk/proc/add_speechmod() AddComponent(/datum/component/speechmod, replacements = list("." = "!"), end_string = "!!", uppercase = TRUE) /datum/mutation/human/hulk/on_acquiring(mob/living/carbon/human/owner) if(..()) return for(var/obj/item/bodypart/part as anything in owner.bodyparts) - part.variable_color = COLOR_DARK_LIME + part.variable_color = bodypart_color owner.update_body_parts() owner.add_mood_event("hulk", /datum/mood_event/hulk) RegisterSignal(owner, COMSIG_LIVING_EARLY_UNARMED_ATTACK, PROC_REF(on_attack_hand)) @@ -282,4 +287,14 @@ /datum/mutation/human/hulk/superhuman/on_life(seconds_per_tick, times_fired) return +/datum/mutation/human/hulk/ork + name = "Ork" + desc = "A mutation caused by a mixup of hulk genes which severely impacts speech centers in owners' brains." + text_gain_indication = span_notice("You feel significantly dumber!") + bodypart_color = COLOR_ASSISTANT_OLIVE + conflicts = list(/datum/mutation/human/hulk) + +/datum/mutation/human/hulk/ork/add_speechmod() + AddComponent(/datum/component/speechmod, replacements = strings("ork_replacement.json", "ork"), end_string = "!!", uppercase = TRUE) + #undef HULK_TAILTHROW_STEPS diff --git a/strings/ork_replacement.json b/strings/ork_replacement.json new file mode 100644 index 0000000000000..d80ba2ce12f59 --- /dev/null +++ b/strings/ork_replacement.json @@ -0,0 +1,116 @@ +{ + "ork": { + "gun": "blasta", + "ammo": "dakka", + "bullets": "dakka", + "rockets": "bigger dakka", + "grenade": "bomb", + "rifle": "shoota", + "pistol": "short boomstick", + "shotgun": "boomstick", + "launcher": "bomb throwa", + "sword": "harder choppa", + "knife": "choppa", + "spear": "long choppa", + "disk": "disky", + "nuke disk": "disky", + "captain": "warboss", + "security": "warboyz", + "cap ": "boss ", + " cap": " boss", + "science": "smarty thinking", + "scientist": "brain boy", + "engineer": "mekkanik", + "engineering": "tinkerin'", + "technician": "mekboy", + "botanist": "green feeda", + "botany": "green feed", + "felinid": "talking kitty", + "robotics": "kanna maka", + "roboticist": "kanna boy", + "cat": "kitty", + "moth": "bug", + "mothperson": "bugga", + "plasmaman": "fire skellyton", + "plasmamen": "fire skellytons", + "skeleton": "skellyton", + "lizard": "tailswingah", + "lizardperson": "tailswingah", + "ethereal": "zappy boy", + "car": "trukk", + "power": "lektricity", + "cable": "zap rope", + "human": "humie", + "fly": "buzz", + "flyperson": "buzzah", + "run": "charge", + "fight": "crump", + "revolution": "dust up", + "nuke": "bomb", + "ai ": "talky box ", + "artificial intelligence": "talky box", + "shuttle": "winged trukk", + "miner": "rockkrusha", + "mining": "rock krushing", + "maintenance": "tunnel", + "maint": "tunnel", + "singularity": "space hole", + "supermatter": "angry rock", + "war ": "WAAAGH! ", + "hos ": "nob ", + "the ": "da ", + ".": "!", + "one ": "wun ", + "fast": "fastah", + "faster": "fastah", + "exosuit": "killa kan", + "mech": "killa kan", + "mecha": "killa kan", + "rocket": "rokkit", + "flame": "burna", + "doctor": "dok", + "medic": "doka", + "medical": "healy", + "cmo": "mad dok", + "ce": "big mek", + "thing": "fing", + "want to": "wanna", + "need to": "needa", + "got to": "gotta", + " my": " me", + "my ": "me ", + " you": " ya", + "you ": "ya ", + "you've": "yoos", + "you have": "yoos", + " in a ": " ina ", + "more": "moar", + "teeth": "teef", + "ing ": "in' ", + "proper": "proppa", + "something": "sumfing", + "i am ": "I iz ", + "i'm ": "I'ze ", + "we're ": "we'ze ", + "you're ": "you'ze ", + "here": "'ere", + "this ": "dis ", + "that ": "dat ", + "them ": "dem ", + "those ": "dose ", + "your ": "ya ", + "says": "sez", + "with": "wiv", + "what": "wot", + "who": "oo", + "who's": "oo'z", + "whose": "oo'z", + "strong": "'ard", + "tough": "'ard", + "hard": "'ard", + "robust": "well 'ard", + "what's that": "wuzzat", + "wizard": "weirdah", + "heretic": "weirdah" + } +}