diff --git a/code/__DEFINES/genetics.dm b/code/__DEFINES/genetics.dm index 938a30a2107..9c4080a6cfd 100644 --- a/code/__DEFINES/genetics.dm +++ b/code/__DEFINES/genetics.dm @@ -15,7 +15,18 @@ #define RACEMUT "Monkified" #define BADSIGHT "Near Sightness" #define LASEREYES "Laser Eyes" - +#define STEALTH "Cloak Of Darkness" +#define CHAMELEON "Chameleon" +#define WACKY "Wacky" +#define JOKE "Joke" +#define VINETA "Vineta" +#define PAPYRUS "Papyrus" +#define MUT_MUTE "Mute" +#define SMILE "Smile" +#define UNINTELLIGABLE "Unintelligable" +#define SWEDISH "Swedish" +#define CHAV "Chav" +#define ELVIS "Elvis" // String identifiers for associative list lookup @@ -53,7 +64,7 @@ #define DNA_FACIAL_HAIR_STYLE_BLOCK 6 #define DNA_HAIR_STYLE_BLOCK 7 -#define DNA_STRUC_ENZYMES_BLOCKS 14 +#define DNA_STRUC_ENZYMES_BLOCKS 26 #define DNA_UNIQUE_ENZYMES_LEN 32 //Transformation proc stuff diff --git a/code/_onclick/click.dm b/code/_onclick/click.dm index c6827293901..d3acf80de85 100644 --- a/code/_onclick/click.dm +++ b/code/_onclick/click.dm @@ -126,7 +126,7 @@ W.afterattack(A,src,0,params) // 0: not Adjacent else RangedAttack(A, params) - + last_movement=world.time return /mob/proc/changeNext_move(num) diff --git a/code/datums/goon_mutations_disabilities.dm b/code/datums/goon_mutations_disabilities.dm new file mode 100644 index 00000000000..8e19a7e13c3 --- /dev/null +++ b/code/datums/goon_mutations_disabilities.dm @@ -0,0 +1,219 @@ +/datum/mutation/human/wacky + name = "Wacky" + quality = MINOR_NEGATIVE + text_gain_indication = "You feel an off sensation in your voicebox." + text_lose_indication = "The off sensation passes." + +/datum/mutation/human/wacky/say_mod(var/message) + if(message) + message = "[message]" + return message + +/datum/mutation/human/joke + name = "Joke" + quality = MINOR_NEGATIVE + text_gain_indication = "You feel an off sensation in your voicebox." + text_lose_indication = "The off sensation passes." + +/datum/mutation/human/joke/say_mod(var/message) + if(message) + message = "[message]" + return message + +/datum/mutation/human/papyrus + name = "Papyrus" + quality = MINOR_NEGATIVE + text_gain_indication = "You feel an off sensation in your voicebox." + text_lose_indication = "The off sensation passes." + +/datum/mutation/human/papyrus/say_mod(var/message) + if(message) + message = "[message]" + return message + +/datum/mutation/human/vineta + name = "Vineta" + quality = MINOR_NEGATIVE + text_gain_indication = "You feel an off sensation in your voicebox." + text_lose_indication = "The off sensation passes." + +/datum/mutation/human/vineta/say_mod(var/message) + if(message) + message = "[message]" + return message + + +/datum/mutation/human/mute + name = "Mute" + quality = NEGATIVE + text_gain_indication = "You feel unable to express yourself at all." + text_lose_indication = "You feel able to speak freely again." + +/datum/mutation/human/mute/on_acquiring(mob/living/carbon/human/owner) + if(..()) return + owner.disabilities |= MUTE + +/datum/mutation/human/mute/on_losing(mob/living/carbon/human/owner) + if(..()) return + owner.disabilities &= ~MUTE + +/datum/mutation/human/smile + name = "Smile" + quality = MINOR_NEGATIVE + text_gain_indication = "You feel so happy. Nothing can be wrong with anything. :)" + text_lose_indication = "Everything is terrible again. :(" + +/datum/mutation/human/smile/say_mod(var/message) + if(message) + //Time for a friendly game of SS13 + message = replacetext(message,"stupid","smart") + message = replacetext(message,"retard","genius") + message = replacetext(message,"unrobust","robust") + message = replacetext(message,"dumb","smart") + message = replacetext(message,"awful","great") + message = replacetext(message,"gay",pick("nice","ok","alright")) + message = replacetext(message,"horrible","fun") + message = replacetext(message,"terrible","terribly fun") + message = replacetext(message,"terrifying","wonderful") + message = replacetext(message,"gross","cool") + message = replacetext(message,"disgusting","amazing") + message = replacetext(message,"loser","winner") + message = replacetext(message,"useless","useful") + message = replacetext(message,"oh god","cheese and crackers") + message = replacetext(message,"jesus","gee wiz") + message = replacetext(message,"weak","strong") + message = replacetext(message,"kill","hug") + message = replacetext(message,"murder","tease") + message = replacetext(message,"ugly","beautiful") + message = replacetext(message,"douchbag","nice guy") + message = replacetext(message,"whore","lady") + message = replacetext(message,"nerd","smart guy") + message = replacetext(message,"moron","fun person") + message = replacetext(message,"IT'S LOOSE","EVERYTHING IS FINE") + message = replacetext(message,"sex","hug fight") + message = replacetext(message,"idiot","genius") + message = replacetext(message,"fat","thin") + message = replacetext(message,"beer","water with ice") + message = replacetext(message,"drink","water") + message = replacetext(message,"feminist","empowered woman") + message = replacetext(message,"i hate you","you're mean") + message = replacetext(message,"nigger","african american") + message = replacetext(message,"jew","jewish") + message = replacetext(message,"shit","shiz") + message = replacetext(message,"crap","poo") + message = replacetext(message,"slut","tease") + message = replacetext(message,"ass","butt") + message = replacetext(message,"damn","dang") + message = replacetext(message,"fuck","") + message = replacetext(message,"penis","privates") + message = replacetext(message,"cunt","privates") + message = replacetext(message,"dick","jerk") + message = replacetext(message,"vagina","privates") + return message + +/datum/mutation/human/unintelligable + name = "Unintelligable" + quality = NEGATIVE + text_gain_indication = "You can't seem to form any coherent thoughts!" + text_lose_indication = "Your mind feels more clear." + +/datum/mutation/human/unintelligable/say_mod(var/message) + if(message) + var/prefix=copytext(message,1,2) + if(prefix == ";") + message = copytext(message,2) + else if(prefix in list(":","#")) + prefix += copytext(message,2,3) + message = copytext(message,3) + else + prefix="" + + var/list/words = text2list(message," ") + var/list/rearranged = list() + for(var/i=1;i<=words.len;i++) + var/cword = pick(words) + words.Remove(cword) + var/suffix = copytext(cword,length(cword)-1,length(cword)) + while(length(cword)>0 && suffix in list(".",",",";","!",":","?")) + cword = copytext(cword,1 ,length(cword)-1) + suffix = copytext(cword,length(cword)-1,length(cword) ) + if(length(cword)) + rearranged += cword + message = "[prefix][uppertext(list2text(rearranged," "))]!!" + return message + +/datum/mutation/human/swedish + name = "Swedish" + quality = MINOR_NEGATIVE + text_gain_indication = "You feel Swedish, however that works." + text_lose_indication = "The feeling of Swedishness passes." + +/datum/mutation/human/swedish/say_mod(var/message) + if(message) + message = replacetext(message,"w","v") + if(prob(30)) + message += " Bork[pick("",", bork",", bork, bork")]!" + return message + +/datum/mutation/human/chav + name = "Chav" + quality = MINOR_NEGATIVE + text_gain_indication = "Ye feel like a reet prat like, innit?" + text_lose_indication = "You no longer feel like being rude and sassy." + +/datum/mutation/human/chav/say_mod(var/message) + if(message) + message = replacetext(message,"dick","prat") + message = replacetext(message,"comdom","knob'ead") + message = replacetext(message,"looking at","gawpin' at") + message = replacetext(message,"great","bangin'") + message = replacetext(message,"man","mate") + message = replacetext(message,"friend",pick("mate","bruv","bledrin")) + message = replacetext(message,"what","wot") + message = replacetext(message,"drink","wet") + message = replacetext(message,"get","giz") + message = replacetext(message,"what","wot") + message = replacetext(message,"no thanks","wuddent fukken do one") + message = replacetext(message,"i don't know","wot mate") + message = replacetext(message,"no","naw") + message = replacetext(message,"robust","chin") + message = replacetext(message,"hi","how what how") + message = replacetext(message,"hello","sup bruv") + message = replacetext(message,"kill","bang") + message = replacetext(message,"murder","bang") + message = replacetext(message,"windows","windies") + message = replacetext(message,"window","windy") + message = replacetext(message,"break","do") + message = replacetext(message,"your","yer") + message = replacetext(message,"security","coppers") + return message + +/datum/mutation/human/elvis + name = "Elvis" + quality = MINOR_NEGATIVE + text_gain_indication = "You feel pretty good, honeydoll." + text_lose_indication = "You feel a little less conversation would be great." + +/datum/mutation/human/elvis/on_life(mob/living/carbon/human/owner) + switch(pick(1,2)) + if(1) + if(prob(15)) + var/list/dancetypes = list("swinging", "fancy", "stylish", "20'th century", "jivin'", "rock and roller", "cool", "salacious", "bashing", "smashing") + var/dancemoves = pick(dancetypes) + owner.visible_message("[owner] busts out some [dancemoves] moves!") + if(2) + if(prob(15)) + owner.visible_message("[owner] [pick("jiggles their hips", "rotates their hips", "gyrates their hips", "taps their foot", "dances to an imaginary song", "jiggles their legs", "snaps their fingers")]!") + +/datum/mutation/human/elvis/say_mod(var/message) + if(message) + message = replacetext(message,"i'm not","I aint") + message = replacetext(message,"girl",pick("honey","baby","baby doll")) + message = replacetext(message,"man",pick("son","buddy","brother", "pal", "friendo")) + message = replacetext(message,"out of","outta") + message = replacetext(message,"thank you","thank you, thank you very much") + message = replacetext(message,"what are you","whatcha") + message = replacetext(message,"yes",pick("sure", "yea")) + message = replacetext(message,"faggot","square") + message = replacetext(message,"muh valids","getting my kicks") + return message \ No newline at end of file diff --git a/code/datums/goon_mutations_powers.dm b/code/datums/goon_mutations_powers.dm new file mode 100644 index 00000000000..cab817b019e --- /dev/null +++ b/code/datums/goon_mutations_powers.dm @@ -0,0 +1,35 @@ +/datum/mutation/human/stealth + name = "Cloak Of Darkness" + quality = POSITIVE + get_chance = 10 + lowest_value = 256 * 14 + text_gain_indication = "You begin to fade into the shadows." + text_lose_indication = "You become fully visible." + +/datum/mutation/human/stealth/on_life(mob/living/carbon/human/owner) + var/turf/simulated/T = get_turf(owner) + if(!istype(T)) + return + if(T.lighting_lumcount <= 2) + owner.alpha -= 25 + else + owner.alpha = round(255 * 0.80) + +/datum/mutation/human/stealth/on_losing(mob/living/carbon/human/owner) + ..() + owner.alpha = 255 + +/datum/mutation/human/chameleon + name = "Chameleon" + text_gain_indication = "You feel one with your surroundings." + text_lose_indication = "You feel oddly exposed." + +/datum/mutation/human/chameleon/on_life(mob/living/carbon/human/owner) + if((world.time - owner.last_movement) >= 30 && !owner.stat && owner.canmove && !owner.restrained()) + owner.alpha -= 25 + else + owner.alpha = round(255 * 0.80) + +/datum/mutation/human/chameleon/on_losing(mob/living/carbon/human/owner) + ..() + owner.alpha = 255 \ No newline at end of file diff --git a/code/datums/mutations.dm b/code/datums/mutations.dm index b5f1279d655..d6046324421 100644 --- a/code/datums/mutations.dm +++ b/code/datums/mutations.dm @@ -14,7 +14,8 @@ var/quality var/get_chance = 100 var/lowest_value = 256 * 8 - var/text_indication = "" + var/text_gain_indication = "" + var/text_lose_indication = "" var/list/visual_indicators = list() /datum/mutation/human/proc/force_give(mob/living/carbon/human/owner) @@ -53,7 +54,7 @@ return 1 owner.dna.mutations.Add(src) gain_indication(owner) - owner << text_indication + owner << text_gain_indication /datum/mutation/human/proc/gain_indication(mob/living/carbon/human/owner) owner.overlays.Add(visual_indicators) @@ -79,16 +80,21 @@ /datum/mutation/human/proc/on_losing(mob/living/carbon/human/owner) if(owner.dna.mutations.Remove(src)) lose_indication(owner) + owner << text_lose_indication return 0 return 1 +/datum/mutation/human/proc/say_mod(var/message) + if(message) + return message + /datum/mutation/human/hulk name = "Hulk" quality = POSITIVE get_chance = 5 lowest_value = 256 * 14 - text_indication = "Your muscles hurt!" + text_gain_indication = "Your muscles hurt!" /datum/mutation/human/hulk/New() ..() @@ -118,13 +124,18 @@ ..() owner.status_flags |= CANSTUN | CANWEAKEN | CANPARALYSE | CANPUSH +/datum/mutation/human/hulk/say_mod(var/message) + if(message) + message = "[uppertext(replacetext(message, ".", "!"))]!!" + return message + /datum/mutation/human/telekinesis name = "Telekinesis" quality = POSITIVE get_chance = 10 lowest_value = 256 * 14 - text_indication = "You feel smarter!" + text_gain_indication = "You feel smarter!" /datum/mutation/human/telekinesis/New() ..() @@ -139,7 +150,7 @@ quality = POSITIVE get_chance = 10 lowest_value = 256 * 12 - text_indication = "Your body feels warm!" + text_gain_indication = "Your body feels warm!" /datum/mutation/human/cold_resistance/New() ..() @@ -156,7 +167,7 @@ quality = POSITIVE get_chance = 10 lowest_value = 256 * 15 - text_indication = "The walls suddenly disappear!" + text_gain_indication = "The walls suddenly disappear!" /datum/mutation/human/x_ray/on_acquiring(mob/living/carbon/human/owner) if(..()) return @@ -175,7 +186,7 @@ name = "Near Sightness" quality = MINOR_NEGATIVE - text_indication = "You can't see very well." + text_gain_indication = "You can't see very well." /datum/mutation/human/nearsight/on_acquiring(mob/living/carbon/human/owner) if(..()) return @@ -189,7 +200,7 @@ name = "Epilepsy" quality = NEGATIVE - text_indication = "You get a headache." + text_gain_indication = "You get a headache." /datum/mutation/human/epilepsy/on_life(mob/living/carbon/human/owner) if ((prob(1) && owner.paralysis < 1)) @@ -203,7 +214,7 @@ name = "Unstable DNA" quality = NEGATIVE - text_indication = "You feel strange." + text_gain_indication = "You feel strange." /datum/mutation/human/bad_dna/on_acquiring(var/mob/living/carbon/human/owner) var/mob/new_mob @@ -223,7 +234,7 @@ name = "Cough" quality = MINOR_NEGATIVE - text_indication = "You start coughing." + text_gain_indication = "You start coughing." /datum/mutation/human/cough/on_life(mob/living/carbon/human/owner) if((prob(5) && owner.paralysis <= 1)) @@ -234,7 +245,7 @@ name = "Clumsiness" quality = MINOR_NEGATIVE - text_indication = "You feel lightheaded." + text_gain_indication = "You feel lightheaded." /datum/mutation/human/clumsy/on_acquiring(mob/living/carbon/human/owner) if(..()) return @@ -248,7 +259,7 @@ name = "Tourettes Syndrome" quality = NEGATIVE - text_indication = "You twitch." + text_gain_indication = "You twitch." /datum/mutation/human/tourettes/on_life(mob/living/carbon/human/owner) if((prob(10) && owner.paralysis <= 1)) @@ -269,7 +280,7 @@ name = "Nervousness" quality = MINOR_NEGATIVE - text_indication = "You feel nervous." + text_gain_indication = "You feel nervous." /datum/mutation/human/nervousness/on_life(mob/living/carbon/human/owner) if(prob(10)) @@ -279,7 +290,7 @@ name = "Deafness" quality = NEGATIVE - text_indication = "You can't seem to hear anything." + text_gain_indication = "You can't seem to hear anything." /datum/mutation/human/deaf/on_acquiring(mob/living/carbon/human/owner) if(..()) return @@ -293,7 +304,7 @@ name = "Blindness" quality = NEGATIVE - text_indication = "You can't seem to see anything." + text_gain_indication = "You can't seem to see anything." /datum/mutation/human/blind/on_acquiring(mob/living/carbon/human/owner) if(..()) return @@ -327,8 +338,8 @@ name = "Laser Eyes" quality = POSITIVE dna_block = NON_SCANNABLE - text_indication = "You feel pressure building up behind your eyes." + text_gain_indication = "You feel pressure building up behind your eyes." /datum/mutation/human/laser_eyes/on_ranged_attack(mob/living/carbon/human/owner, atom/target) if(owner.a_intent == "harm") - owner.LaserEyes(target) \ No newline at end of file + owner.LaserEyes(target) diff --git a/code/game/dna.dm b/code/game/dna.dm index 4a5f055f640..7aa1c3a06cb 100644 --- a/code/game/dna.dm +++ b/code/game/dna.dm @@ -83,7 +83,7 @@ /datum/dna/proc/generate_struc_enzymes(mob/living/carbon/character) var/list/L = list("0","1","2","3","4","5","6") var/list/sorting = list() - sorting.len = 14 + sorting.len = DNA_STRUC_ENZYMES_BLOCKS var/result for(var/datum/mutation/human/A in good_mutations + bad_mutations + not_good_mutations) if(A.name == RACEMUT && istype(character,/mob/living/carbon/monkey)) @@ -105,6 +105,12 @@ . += repeat_string(DNA_UNIQUE_ENZYMES_LEN, "0") return . +/datum/dna/proc/mutations_say_mods(var/message) + if(message) + for(var/datum/mutation/human/M in mutations) + message = M.say_mod(message) + return message + /proc/hardset_dna(mob/living/carbon/owner, ui, se, real_name, blood_type, datum/species/mrace, mcolor) if(!istype(owner, /mob/living/carbon/monkey) && !istype(owner, /mob/living/carbon/human)) return diff --git a/code/game/objects/items/weapons/dna_injector.dm b/code/game/objects/items/weapons/dna_injector.dm index c3eb29eea81..ded1bc0db3f 100644 --- a/code/game/objects/items/weapons/dna_injector.dm +++ b/code/game/objects/items/weapons/dna_injector.dm @@ -249,4 +249,149 @@ desc = "Will make you...less hairy." New() ..() - remove_mutations.Add(mutations_list[RACEMUT]) \ No newline at end of file + remove_mutations.Add(mutations_list[RACEMUT]) + +/obj/item/weapon/dnainjector/antistealth + name = "\improper DNA injector (Anti-Cloak Of Darkness)" + New() + ..() + remove_mutations.Add(mutations_list[STEALTH]) + +/obj/item/weapon/dnainjector/stealthmut + name = "\improper DNA injector (Cloak of Darkness)" + desc = "Enables the subject to bend low levels of light around themselves, creating a cloaking effect." + New() + ..() + add_mutations.Add(mutations_list[STEALTH]) + +/obj/item/weapon/dnainjector/antichameleon + name = "\improper DNA injector (Anti-Chameleon)" + New() + ..() + remove_mutations.Add(mutations_list[CHAMELEON]) + +/obj/item/weapon/dnainjector/chameleonmut + name = "\improper DNA injector (Chameleon)" + New() + ..() + add_mutations.Add(mutations_list[CHAMELEON]) + +/obj/item/weapon/dnainjector/antiwacky + name = "\improper DNA injector (Anti-Wacky)" + New() + ..() + remove_mutations.Add(mutations_list[WACKY]) + +/obj/item/weapon/dnainjector/wackymut + name = "\improper DNA injector (Wacky)" + New() + ..() + add_mutations.Add(mutations_list[WACKY]) + +/obj/item/weapon/dnainjector/antijoke + name = "\improper DNA injector (Anti-joke)" + New() + ..() + remove_mutations.Add(mutations_list[JOKE]) + +/obj/item/weapon/dnainjector/jokemut + name = "\improper DNA injector (Joke)" + New() + ..() + add_mutations.Add(mutations_list[JOKE]) + +/obj/item/weapon/dnainjector/antipapyrus + name = "\improper DNA injector (Anti-Papyrus)" + New() + ..() + remove_mutations.Add(mutations_list[PAPYRUS]) + +/obj/item/weapon/dnainjector/papyrusmut + name = "\improper DNA injector (Papyrus)" + New() + ..() + add_mutations.Add(mutations_list[PAPYRUS]) + +/obj/item/weapon/dnainjector/antivineta + name = "\improper DNA injector (Anti-Vineta)" + New() + ..() + remove_mutations.Add(mutations_list[VINETA]) + +/obj/item/weapon/dnainjector/vinetamut + name = "\improper DNA injector (Vineta)" + New() + ..() + add_mutations.Add(mutations_list[VINETA]) + +/obj/item/weapon/dnainjector/antimute + name = "\improper DNA injector (Anti-Mute)" + New() + ..() + remove_mutations.Add(mutations_list[MUT_MUTE]) + +/obj/item/weapon/dnainjector/mutemut + name = "\improper DNA injector (Mute)" + New() + ..() + add_mutations.Add(mutations_list[MUT_MUTE]) + +/obj/item/weapon/dnainjector/antismile + name = "\improper DNA injector (Anti-Smile)" + New() + ..() + remove_mutations.Add(mutations_list[SMILE]) + +/obj/item/weapon/dnainjector/smilemut + name = "\improper DNA injector (Smile)" + New() + ..() + add_mutations.Add(mutations_list[SMILE]) + +/obj/item/weapon/dnainjector/unintelligablemut + name = "\improper DNA injector (Unintelligable)" + New() + ..() + add_mutations.Add(mutations_list[UNINTELLIGABLE]) + +/obj/item/weapon/dnainjector/antiunintelligable + name = "\improper DNA injector (Anti-Unintelligable)" + New() + ..() + remove_mutations.Add(mutations_list[UNINTELLIGABLE]) + +/obj/item/weapon/dnainjector/swedishmut + name = "\improper DNA injector (Swedish)" + New() + ..() + add_mutations.Add(mutations_list[SWEDISH]) + +/obj/item/weapon/dnainjector/antiswedish + name = "\improper DNA injector (Anti-Swedish)" + New() + ..() + remove_mutations.Add(mutations_list[SWEDISH]) + +/obj/item/weapon/dnainjector/chavmut + name = "\improper DNA injector (Chav)" + New() + ..() + add_mutations.Add(mutations_list[CHAV]) + +/obj/item/weapon/dnainjector/antichav + name = "\improper DNA injector (Anti-Chav)" + New() + ..() + remove_mutations.Add(mutations_list[CHAV]) + +/obj/item/weapon/dnainjector/elvismut + name = "\improper DNA injector (Elvis)" + New() + ..() + add_mutations.Add(mutations_list[ELVIS]) + +/obj/item/weapon/dnainjector/antielvis + name = "\improper DNA injector (Anti-Elvis)" + New() + ..() + remove_mutations.Add(mutations_list[ELVIS]) \ No newline at end of file diff --git a/code/modules/mob/living/carbon/human/say.dm b/code/modules/mob/living/carbon/human/say.dm index 3da77b6b76f..71b54ef8970 100644 --- a/code/modules/mob/living/carbon/human/say.dm +++ b/code/modules/mob/living/carbon/human/say.dm @@ -21,9 +21,7 @@ /mob/living/carbon/human/treat_message(message) if(dna) message = dna.species.handle_speech(message,src) - - if (dna.check_mutation(HULK)) - message = "[uppertext(replacetext(message, ".", "!"))]!!" //because I don't know how to code properly in getting vars from other files -Bro + message = dna.mutations_say_mods(message) if(viruses.len) for(var/datum/disease/pierrot_throat/D in viruses) @@ -38,7 +36,6 @@ temp_message[H] = "HONK" pick_list -= H //Make sure that you dont HONK the same word twice message = list2text(temp_message, " ") - message = ..(message) return message diff --git a/code/modules/mob/mob_defines.dm b/code/modules/mob/mob_defines.dm index 7a18315e8cb..94b6d8b68f1 100644 --- a/code/modules/mob/mob_defines.dm +++ b/code/modules/mob/mob_defines.dm @@ -160,3 +160,4 @@ var/atom/movable/remote_control //Calls relaymove() to whatever it is var/turf/listed_turf = null //the current turf being examined in the stat panel + var/last_movement = 0 // Last world.time the mob actually moved of its own accord. \ No newline at end of file diff --git a/code/modules/mob/mob_movement.dm b/code/modules/mob/mob_movement.dm index 7c542c14e3e..e528a81b7ca 100644 --- a/code/modules/mob/mob_movement.dm +++ b/code/modules/mob/mob_movement.dm @@ -199,6 +199,7 @@ step(mob, pick(cardinal)) else . = ..() + mob.last_movement=world.time moving = 0 if(mob && .) diff --git a/html/changelogs/Iamgoofball.yml b/html/changelogs/Iamgoofball.yml new file mode 100644 index 00000000000..262ee8b9468 --- /dev/null +++ b/html/changelogs/Iamgoofball.yml @@ -0,0 +1,6 @@ + +author: Iamgoofball +delete-after: True + +changes: + - rscadd: "Adds 9 new Disabilites and 2 new genetic powers." diff --git a/interface/stylesheet.dm b/interface/stylesheet.dm index f9153693e70..fdaaea68b82 100644 --- a/interface/stylesheet.dm +++ b/interface/stylesheet.dm @@ -67,6 +67,11 @@ h1.alert, h2.alert {color: #000000;} .interface {color: #330033;} +.sans {font-family: "Comic Sans MS", cursive, sans-serif;} +.papyrus {font-family: "Papyrus", cursive, sans-serif;} +.vineta {font-family: "Vineta BT", cursive, sans-serif;} +.jokerman {font-family: "Jokerman", cursive, sans-serif;} + BIG IMG.icon {width: 32px; height: 32px;} "} diff --git a/tgstation.dme b/tgstation.dme index e0d96f0935e..b627c71b213 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -148,6 +148,8 @@ #include "code\datums\datacore.dm" #include "code\datums\datumvars.dm" #include "code\datums\gas_mixture.dm" +#include "code\datums\goon_mutations_disabilities.dm" +#include "code\datums\goon_mutations_powers.dm" #include "code\datums\hud.dm" #include "code\datums\mind.dm" #include "code\datums\mixed.dm"