Mushroom people, revived!
This commit is contained in:
committed by
CitadelStationBot
parent
4d0b7133c8
commit
e559fdca2c
@@ -13,7 +13,7 @@
|
|||||||
init_sprite_accessory_subtypes(/datum/sprite_accessory/undershirt, GLOB.undershirt_list, GLOB.undershirt_m, GLOB.undershirt_f)
|
init_sprite_accessory_subtypes(/datum/sprite_accessory/undershirt, GLOB.undershirt_list, GLOB.undershirt_m, GLOB.undershirt_f)
|
||||||
//socks
|
//socks
|
||||||
init_sprite_accessory_subtypes(/datum/sprite_accessory/socks, GLOB.socks_list)
|
init_sprite_accessory_subtypes(/datum/sprite_accessory/socks, GLOB.socks_list)
|
||||||
//lizard bodyparts (blizzard intensifies)
|
//bodypart accessories (blizzard intensifies)
|
||||||
init_sprite_accessory_subtypes(/datum/sprite_accessory/body_markings, GLOB.body_markings_list)
|
init_sprite_accessory_subtypes(/datum/sprite_accessory/body_markings, GLOB.body_markings_list)
|
||||||
init_sprite_accessory_subtypes(/datum/sprite_accessory/tails/lizard, GLOB.tails_list_lizard)
|
init_sprite_accessory_subtypes(/datum/sprite_accessory/tails/lizard, GLOB.tails_list_lizard)
|
||||||
init_sprite_accessory_subtypes(/datum/sprite_accessory/tails_animated/lizard, GLOB.animated_tails_list_lizard)
|
init_sprite_accessory_subtypes(/datum/sprite_accessory/tails_animated/lizard, GLOB.animated_tails_list_lizard)
|
||||||
@@ -29,7 +29,7 @@
|
|||||||
init_sprite_accessory_subtypes(/datum/sprite_accessory/spines_animated, GLOB.animated_spines_list)
|
init_sprite_accessory_subtypes(/datum/sprite_accessory/spines_animated, GLOB.animated_spines_list)
|
||||||
init_sprite_accessory_subtypes(/datum/sprite_accessory/legs, GLOB.legs_list)
|
init_sprite_accessory_subtypes(/datum/sprite_accessory/legs, GLOB.legs_list)
|
||||||
init_sprite_accessory_subtypes(/datum/sprite_accessory/wings, GLOB.r_wings_list,roundstart = TRUE)
|
init_sprite_accessory_subtypes(/datum/sprite_accessory/wings, GLOB.r_wings_list,roundstart = TRUE)
|
||||||
//moffs
|
init_sprite_accessory_subtypes(/datum/sprite_accessory/caps, GLOB.caps_list)
|
||||||
init_sprite_accessory_subtypes(/datum/sprite_accessory/moth_wings, GLOB.moth_wings_list)
|
init_sprite_accessory_subtypes(/datum/sprite_accessory/moth_wings, GLOB.moth_wings_list)
|
||||||
|
|
||||||
//CIT CHANGES START HERE, ADDS SNOWFLAKE BODYPARTS AND MORE
|
//CIT CHANGES START HERE, ADDS SNOWFLAKE BODYPARTS AND MORE
|
||||||
|
|||||||
@@ -74,6 +74,7 @@
|
|||||||
if(!GLOB.moth_wings_list.len)
|
if(!GLOB.moth_wings_list.len)
|
||||||
init_sprite_accessory_subtypes(/datum/sprite_accessory/moth_wings, GLOB.moth_wings_list)
|
init_sprite_accessory_subtypes(/datum/sprite_accessory/moth_wings, GLOB.moth_wings_list)
|
||||||
|
|
||||||
|
<<<<<<< HEAD
|
||||||
//CIT CHANGES - genitals and such
|
//CIT CHANGES - genitals and such
|
||||||
if(!GLOB.cock_shapes_list.len)
|
if(!GLOB.cock_shapes_list.len)
|
||||||
init_sprite_accessory_subtypes(/datum/sprite_accessory/penis, GLOB.cock_shapes_list)
|
init_sprite_accessory_subtypes(/datum/sprite_accessory/penis, GLOB.cock_shapes_list)
|
||||||
@@ -166,6 +167,11 @@
|
|||||||
"womb_efficiency" = CUM_EFFICIENCY,
|
"womb_efficiency" = CUM_EFFICIENCY,
|
||||||
"womb_fluid" = "femcum",
|
"womb_fluid" = "femcum",
|
||||||
"flavor_text" = ""))
|
"flavor_text" = ""))
|
||||||
|
=======
|
||||||
|
//For now we will always return none for tail_human and ears.
|
||||||
|
return(list("mcolor" = pick("FFFFFF","7F7F7F", "7FFF7F", "7F7FFF", "FF7F7F", "7FFFFF", "FF7FFF", "FFFF7F"), "tail_lizard" = pick(GLOB.tails_list_lizard), "tail_human" = "None", "wings" = "None", "snout" = pick(GLOB.snouts_list), "horns" = pick(GLOB.horns_list), "ears" = "None", "frills" = pick(GLOB.frills_list), "spines" = pick(GLOB.spines_list), "body_markings" = pick(GLOB.body_markings_list), "legs" = "Normal Legs", "caps" = pick(GLOB.caps_list), "moth_wings" = pick(GLOB.moth_wings_list)))
|
||||||
|
|
||||||
|
>>>>>>> 84d4b3a... Mushroom people, revived! (#35858)
|
||||||
/proc/random_hair_style(gender)
|
/proc/random_hair_style(gender)
|
||||||
switch(gender)
|
switch(gender)
|
||||||
if(MALE)
|
if(MALE)
|
||||||
|
|||||||
@@ -1,3 +1,4 @@
|
|||||||
|
<<<<<<< HEAD
|
||||||
//Preferences stuff
|
//Preferences stuff
|
||||||
//Hairstyles
|
//Hairstyles
|
||||||
GLOBAL_LIST_EMPTY(hair_styles_list) //stores /datum/sprite_accessory/hair indexed by name
|
GLOBAL_LIST_EMPTY(hair_styles_list) //stores /datum/sprite_accessory/hair indexed by name
|
||||||
@@ -128,3 +129,136 @@ GLOBAL_LIST_INIT(numbers_as_words, world.file2list("strings/numbers_as_words.txt
|
|||||||
GLOBAL_LIST_INIT(station_numerals, greek_letters + phonetic_alphabet + numbers_as_words + generate_number_strings())
|
GLOBAL_LIST_INIT(station_numerals, greek_letters + phonetic_alphabet + numbers_as_words + generate_number_strings())
|
||||||
|
|
||||||
GLOBAL_LIST_INIT(admiral_messages, list("Do you know how expensive these stations are?","Stop wasting my time.","I was sleeping, thanks a lot.","Stand and fight you cowards!","You knew the risks coming in.","Stop being paranoid.","Whatever's broken just build a new one.","No.", "<i>null</i>","<i>Error: No comment given.</i>", "It's a good day to die!"))
|
GLOBAL_LIST_INIT(admiral_messages, list("Do you know how expensive these stations are?","Stop wasting my time.","I was sleeping, thanks a lot.","Stand and fight you cowards!","You knew the risks coming in.","Stop being paranoid.","Whatever's broken just build a new one.","No.", "<i>null</i>","<i>Error: No comment given.</i>", "It's a good day to die!"))
|
||||||
|
=======
|
||||||
|
//Preferences stuff
|
||||||
|
//Hairstyles
|
||||||
|
GLOBAL_LIST_EMPTY(hair_styles_list) //stores /datum/sprite_accessory/hair indexed by name
|
||||||
|
GLOBAL_LIST_EMPTY(hair_styles_male_list) //stores only hair names
|
||||||
|
GLOBAL_LIST_EMPTY(hair_styles_female_list) //stores only hair names
|
||||||
|
GLOBAL_LIST_EMPTY(facial_hair_styles_list) //stores /datum/sprite_accessory/facial_hair indexed by name
|
||||||
|
GLOBAL_LIST_EMPTY(facial_hair_styles_male_list) //stores only hair names
|
||||||
|
GLOBAL_LIST_EMPTY(facial_hair_styles_female_list) //stores only hair names
|
||||||
|
//Underwear
|
||||||
|
GLOBAL_LIST_EMPTY(underwear_list) //stores /datum/sprite_accessory/underwear indexed by name
|
||||||
|
GLOBAL_LIST_EMPTY(underwear_m) //stores only underwear name
|
||||||
|
GLOBAL_LIST_EMPTY(underwear_f) //stores only underwear name
|
||||||
|
//Undershirts
|
||||||
|
GLOBAL_LIST_EMPTY(undershirt_list) //stores /datum/sprite_accessory/undershirt indexed by name
|
||||||
|
GLOBAL_LIST_EMPTY(undershirt_m) //stores only undershirt name
|
||||||
|
GLOBAL_LIST_EMPTY(undershirt_f) //stores only undershirt name
|
||||||
|
//Socks
|
||||||
|
GLOBAL_LIST_EMPTY(socks_list) //stores /datum/sprite_accessory/socks indexed by name
|
||||||
|
//Lizard Bits (all datum lists indexed by name)
|
||||||
|
GLOBAL_LIST_EMPTY(body_markings_list)
|
||||||
|
GLOBAL_LIST_EMPTY(tails_list_lizard)
|
||||||
|
GLOBAL_LIST_EMPTY(animated_tails_list_lizard)
|
||||||
|
GLOBAL_LIST_EMPTY(snouts_list)
|
||||||
|
GLOBAL_LIST_EMPTY(horns_list)
|
||||||
|
GLOBAL_LIST_EMPTY(frills_list)
|
||||||
|
GLOBAL_LIST_EMPTY(spines_list)
|
||||||
|
GLOBAL_LIST_EMPTY(legs_list)
|
||||||
|
GLOBAL_LIST_EMPTY(animated_spines_list)
|
||||||
|
|
||||||
|
//Mutant Human bits
|
||||||
|
GLOBAL_LIST_EMPTY(tails_list_human)
|
||||||
|
GLOBAL_LIST_EMPTY(animated_tails_list_human)
|
||||||
|
GLOBAL_LIST_EMPTY(ears_list)
|
||||||
|
GLOBAL_LIST_EMPTY(wings_list)
|
||||||
|
GLOBAL_LIST_EMPTY(wings_open_list)
|
||||||
|
GLOBAL_LIST_EMPTY(r_wings_list)
|
||||||
|
GLOBAL_LIST_EMPTY(moth_wings_list)
|
||||||
|
GLOBAL_LIST_EMPTY(caps_list)
|
||||||
|
|
||||||
|
GLOBAL_LIST_INIT(ghost_forms_with_directions_list, list("ghost")) //stores the ghost forms that support directional sprites
|
||||||
|
GLOBAL_LIST_INIT(ghost_forms_with_accessories_list, list("ghost")) //stores the ghost forms that support hair and other such things
|
||||||
|
|
||||||
|
GLOBAL_LIST_INIT(security_depts_prefs, list(SEC_DEPT_RANDOM, SEC_DEPT_NONE, SEC_DEPT_ENGINEERING, SEC_DEPT_MEDICAL, SEC_DEPT_SCIENCE, SEC_DEPT_SUPPLY))
|
||||||
|
|
||||||
|
//Backpacks
|
||||||
|
#define GBACKPACK "Grey Backpack"
|
||||||
|
#define GSATCHEL "Grey Satchel"
|
||||||
|
#define GDUFFELBAG "Grey Duffel Bag"
|
||||||
|
#define LSATCHEL "Leather Satchel"
|
||||||
|
#define DBACKPACK "Department Backpack"
|
||||||
|
#define DSATCHEL "Department Satchel"
|
||||||
|
#define DDUFFELBAG "Department Duffel Bag"
|
||||||
|
GLOBAL_LIST_INIT(backbaglist, list(DBACKPACK, DSATCHEL, DDUFFELBAG, GBACKPACK, GSATCHEL, GDUFFELBAG, LSATCHEL))
|
||||||
|
|
||||||
|
//Uplink spawn loc
|
||||||
|
#define UPLINK_PDA "PDA"
|
||||||
|
#define UPLINK_RADIO "Radio"
|
||||||
|
#define UPLINK_PEN "Pen" //like a real spy!
|
||||||
|
GLOBAL_LIST_INIT(uplink_spawn_loc_list, list(UPLINK_PDA, UPLINK_RADIO, UPLINK_PEN))
|
||||||
|
|
||||||
|
//Female Uniforms
|
||||||
|
GLOBAL_LIST_EMPTY(female_clothing_icons)
|
||||||
|
|
||||||
|
//radical shit
|
||||||
|
GLOBAL_LIST_INIT(hit_appends, list("-OOF", "-ACK", "-UGH", "-HRNK", "-HURGH", "-GLORF"))
|
||||||
|
|
||||||
|
GLOBAL_LIST_INIT(scarySounds, list('sound/weapons/thudswoosh.ogg','sound/weapons/taser.ogg','sound/weapons/armbomb.ogg','sound/voice/hiss1.ogg','sound/voice/hiss2.ogg','sound/voice/hiss3.ogg','sound/voice/hiss4.ogg','sound/voice/hiss5.ogg','sound/voice/hiss6.ogg','sound/effects/glassbr1.ogg','sound/effects/glassbr2.ogg','sound/effects/glassbr3.ogg','sound/items/welder.ogg','sound/items/welder2.ogg','sound/machines/airlock.ogg','sound/effects/clownstep1.ogg','sound/effects/clownstep2.ogg'))
|
||||||
|
|
||||||
|
|
||||||
|
// Reference list for disposal sort junctions. Set the sortType variable on disposal sort junctions to
|
||||||
|
// the index of the sort department that you want. For example, sortType set to 2 will reroute all packages
|
||||||
|
// tagged for the Cargo Bay.
|
||||||
|
|
||||||
|
/* List of sortType codes for mapping reference
|
||||||
|
0 Waste
|
||||||
|
1 Disposals
|
||||||
|
2 Cargo Bay
|
||||||
|
3 QM Office
|
||||||
|
4 Engineering
|
||||||
|
5 CE Office
|
||||||
|
6 Atmospherics
|
||||||
|
7 Security
|
||||||
|
8 HoS Office
|
||||||
|
9 Medbay
|
||||||
|
10 CMO Office
|
||||||
|
11 Chemistry
|
||||||
|
12 Research
|
||||||
|
13 RD Office
|
||||||
|
14 Robotics
|
||||||
|
15 HoP Office
|
||||||
|
16 Library
|
||||||
|
17 Chapel
|
||||||
|
18 Theatre
|
||||||
|
19 Bar
|
||||||
|
20 Kitchen
|
||||||
|
21 Hydroponics
|
||||||
|
22 Janitor
|
||||||
|
23 Genetics
|
||||||
|
*/
|
||||||
|
|
||||||
|
GLOBAL_LIST_INIT(TAGGERLOCATIONS, list("Disposals",
|
||||||
|
"Cargo Bay", "QM Office", "Engineering", "CE Office",
|
||||||
|
"Atmospherics", "Security", "HoS Office", "Medbay",
|
||||||
|
"CMO Office", "Chemistry", "Research", "RD Office",
|
||||||
|
"Robotics", "HoP Office", "Library", "Chapel", "Theatre",
|
||||||
|
"Bar", "Kitchen", "Hydroponics", "Janitor Closet","Genetics"))
|
||||||
|
|
||||||
|
GLOBAL_LIST_INIT(guitar_notes, flist("sound/guitar/"))
|
||||||
|
|
||||||
|
GLOBAL_LIST_INIT(station_prefixes, world.file2list("strings/station_prefixes.txt") + "")
|
||||||
|
|
||||||
|
GLOBAL_LIST_INIT(station_names, world.file2list("strings/station_names.txt" + ""))
|
||||||
|
|
||||||
|
GLOBAL_LIST_INIT(station_suffixes, world.file2list("strings/station_suffixes.txt"))
|
||||||
|
|
||||||
|
GLOBAL_LIST_INIT(greek_letters, world.file2list("strings/greek_letters.txt"))
|
||||||
|
|
||||||
|
GLOBAL_LIST_INIT(phonetic_alphabet, world.file2list("strings/phonetic_alphabet.txt"))
|
||||||
|
|
||||||
|
GLOBAL_LIST_INIT(numbers_as_words, world.file2list("strings/numbers_as_words.txt"))
|
||||||
|
|
||||||
|
/proc/generate_number_strings()
|
||||||
|
var/list/L[198]
|
||||||
|
for(var/i in 1 to 99)
|
||||||
|
L += "[i]"
|
||||||
|
L += "\Roman[i]"
|
||||||
|
return L
|
||||||
|
|
||||||
|
GLOBAL_LIST_INIT(station_numerals, greek_letters + phonetic_alphabet + numbers_as_words + generate_number_strings())
|
||||||
|
|
||||||
|
GLOBAL_LIST_INIT(admiral_messages, list("Do you know how expensive these stations are?","Stop wasting my time.","I was sleeping, thanks a lot.","Stand and fight you cowards!","You knew the risks coming in.","Stop being paranoid.","Whatever's broken just build a new one.","No.", "<i>null</i>","<i>Error: No comment given.</i>", "It's a good day to die!"))
|
||||||
|
>>>>>>> 84d4b3a... Mushroom people, revived! (#35858)
|
||||||
|
|||||||
@@ -0,0 +1,36 @@
|
|||||||
|
/datum/martial_art/mushpunch
|
||||||
|
name = "Mushroom Punch"
|
||||||
|
|
||||||
|
/datum/martial_art/mushpunch/basic_hit(mob/living/carbon/human/A, mob/living/carbon/human/D)
|
||||||
|
var/atk_verb
|
||||||
|
to_chat(A, "<span class='spider'>You begin to wind up an attack...</span>")
|
||||||
|
if(do_after(A, 25, target = D))
|
||||||
|
A.do_attack_animation(D, ATTACK_EFFECT_PUNCH)
|
||||||
|
atk_verb = pick("punches", "smashes", "ruptures", "cracks")
|
||||||
|
D.visible_message("<span class='danger'>[A] [atk_verb] [D] with inhuman strength, sending [D.p_them()] flying backwards!</span>", \
|
||||||
|
"<span class='userdanger'>[A] [atk_verb] you with inhuman strength, sending you flying backwards!</span>")
|
||||||
|
D.apply_damage(rand(15,30), BRUTE)
|
||||||
|
playsound(get_turf(D), 'sound/effects/meteorimpact.ogg', 25, 1, -1)
|
||||||
|
var/throwtarget = get_edge_target_turf(A, get_dir(A, get_step_away(D, A)))
|
||||||
|
D.throw_at(throwtarget, 4, 2, A)//So stuff gets tossed around at the same time.
|
||||||
|
D.Knockdown(20)
|
||||||
|
if(atk_verb)
|
||||||
|
add_logs(A, D, "[atk_verb] (Mushroom Punch)")
|
||||||
|
return TRUE
|
||||||
|
return FALSE
|
||||||
|
|
||||||
|
/obj/item/mushpunch
|
||||||
|
name = "mysterious mushroom"
|
||||||
|
desc = "<I>Sapienza Ophioglossoides</I>:An odd mushroom from the flesh of a mushroom person. it has apparently retained some innate power of it's owner, as it quivers with barely-contained POWER!"
|
||||||
|
icon = 'icons/obj/hydroponics/growing_mushrooms.dmi'
|
||||||
|
icon_state = "mycelium-angel"
|
||||||
|
|
||||||
|
/obj/item/mushpunch/attack_self(mob/living/carbon/human/user)
|
||||||
|
if(!istype(user) || !user)
|
||||||
|
return
|
||||||
|
var/message = "<span class='spider'>You devour [src], and a confluence of skill and power from the mushroom enhances your punches! You do need a short moment to charge these powerful punches.</span>"
|
||||||
|
to_chat(user, message)
|
||||||
|
var/datum/martial_art/mushpunch/mush = new(null)
|
||||||
|
mush.teach(user)
|
||||||
|
qdel(src)
|
||||||
|
visible_message("<span class='warning'>[user] devours [src].</span>")
|
||||||
@@ -22,7 +22,7 @@
|
|||||||
/obj/item/reagent_containers/food/snacks/egg)
|
/obj/item/reagent_containers/food/snacks/egg)
|
||||||
|
|
||||||
/obj/effect/spawner/bundle/costume/gladiator
|
/obj/effect/spawner/bundle/costume/gladiator
|
||||||
name = "gladitator costume spawner"
|
name = "gladiator costume spawner"
|
||||||
items = list(
|
items = list(
|
||||||
/obj/item/clothing/under/gladiator,
|
/obj/item/clothing/under/gladiator,
|
||||||
/obj/item/clothing/head/helmet/gladiator)
|
/obj/item/clothing/head/helmet/gladiator)
|
||||||
|
|||||||
@@ -90,7 +90,7 @@
|
|||||||
name = "magic mirror"
|
name = "magic mirror"
|
||||||
desc = "Turn and face the strange... face."
|
desc = "Turn and face the strange... face."
|
||||||
icon_state = "magic_mirror"
|
icon_state = "magic_mirror"
|
||||||
var/list/races_blacklist = list("skeleton", "agent", "angel", "military_synth", "memezombies", "clockwork golem servant", "android", "synth")
|
var/list/races_blacklist = list("skeleton", "agent", "angel", "military_synth", "memezombies", "clockwork golem servant", "android", "synth", "mush")
|
||||||
var/list/choosable_races = list()
|
var/list/choosable_races = list()
|
||||||
|
|
||||||
/obj/structure/mirror/magic/New()
|
/obj/structure/mirror/magic/New()
|
||||||
|
|||||||
@@ -23,9 +23,6 @@
|
|||||||
growing_icon = 'icons/obj/hydroponics/growing_mushrooms.dmi'
|
growing_icon = 'icons/obj/hydroponics/growing_mushrooms.dmi'
|
||||||
reagents_add = list("morphine" = 0.35, "charcoal" = 0.35, "nutriment" = 0)
|
reagents_add = list("morphine" = 0.35, "charcoal" = 0.35, "nutriment" = 0)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/obj/item/reagent_containers/food/snacks/grown/mushroom/reishi
|
/obj/item/reagent_containers/food/snacks/grown/mushroom/reishi
|
||||||
seed = /obj/item/seeds/reishi
|
seed = /obj/item/seeds/reishi
|
||||||
name = "reishi"
|
name = "reishi"
|
||||||
|
|||||||
@@ -0,0 +1,11 @@
|
|||||||
|
/datum/language/mushroom
|
||||||
|
name = "Mushroom"
|
||||||
|
desc = "A language that consists of the sound of periodic gusts of spore-filled air being released."
|
||||||
|
speech_verb = "puffs"
|
||||||
|
ask_verb = "puffs inquisitively"
|
||||||
|
exclaim_verb = "poofs loudly"
|
||||||
|
whisper_verb = "puffs quietly"
|
||||||
|
key = "y"
|
||||||
|
sentence_chance = 0
|
||||||
|
default_priority = 80
|
||||||
|
syllables = list("poof", "pff", "pFfF", "piff", "puff", "pooof", "pfffff", "piffpiff", "puffpuff", "poofpoof", "pifpafpofpuf")
|
||||||
@@ -1402,6 +1402,14 @@
|
|||||||
/datum/sprite_accessory/legs/digitigrade_lizard
|
/datum/sprite_accessory/legs/digitigrade_lizard
|
||||||
name = "Digitigrade Legs"
|
name = "Digitigrade Legs"
|
||||||
|
|
||||||
|
/datum/sprite_accessory/caps
|
||||||
|
icon = 'icons/mob/mutant_bodyparts.dmi'
|
||||||
|
color_src = HAIR
|
||||||
|
|
||||||
|
/datum/sprite_accessory/caps/round
|
||||||
|
name = "Round"
|
||||||
|
icon_state = "round"
|
||||||
|
|
||||||
/datum/sprite_accessory/moth_wings
|
/datum/sprite_accessory/moth_wings
|
||||||
icon = 'icons/mob/wings.dmi'
|
icon = 'icons/mob/wings.dmi'
|
||||||
color_src = null
|
color_src = null
|
||||||
|
|||||||
@@ -683,6 +683,7 @@ GLOBAL_LIST_EMPTY(roundstart_races)
|
|||||||
S = GLOB.legs_list[H.dna.features["legs"]]
|
S = GLOB.legs_list[H.dna.features["legs"]]
|
||||||
if("moth_wings")
|
if("moth_wings")
|
||||||
S = GLOB.moth_wings_list[H.dna.features["moth_wings"]]
|
S = GLOB.moth_wings_list[H.dna.features["moth_wings"]]
|
||||||
|
<<<<<<< HEAD
|
||||||
|
|
||||||
//Mammal Bodyparts
|
//Mammal Bodyparts
|
||||||
if("mam_tail")
|
if("mam_tail")
|
||||||
@@ -704,6 +705,10 @@ GLOBAL_LIST_EMPTY(roundstart_races)
|
|||||||
if("xenotail")
|
if("xenotail")
|
||||||
S = GLOB.xeno_tail_list[H.dna.features["xenotail"]]
|
S = GLOB.xeno_tail_list[H.dna.features["xenotail"]]
|
||||||
|
|
||||||
|
=======
|
||||||
|
if("caps")
|
||||||
|
S = GLOB.caps_list[H.dna.features["caps"]]
|
||||||
|
>>>>>>> 84d4b3a... Mushroom people, revived! (#35858)
|
||||||
if(!S || S.icon_state == "none")
|
if(!S || S.icon_state == "none")
|
||||||
continue
|
continue
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,60 @@
|
|||||||
|
/datum/species/mush //mush mush codecuck
|
||||||
|
name = "Mushroomperson"
|
||||||
|
id = "mush"
|
||||||
|
mutant_bodyparts = list("caps")
|
||||||
|
default_features = list("caps" = "Round")
|
||||||
|
|
||||||
|
fixed_mut_color = "DBBF92"
|
||||||
|
hair_color = "FF4B19" //cap color, spot color uses eye color
|
||||||
|
nojumpsuit = TRUE
|
||||||
|
|
||||||
|
say_mod = "poofs" //what does a mushroom sound like
|
||||||
|
species_traits = list(MUTCOLORS, NOEYES, NO_UNDERWEAR)
|
||||||
|
inherent_traits = list(TRAIT_NOBREATH)
|
||||||
|
speedmod = 1.5 //faster than golems but not by much
|
||||||
|
|
||||||
|
punchdamagelow = 6
|
||||||
|
punchdamagehigh = 14
|
||||||
|
punchstunthreshold = 14 //about 44% chance to stun
|
||||||
|
|
||||||
|
no_equip = list(slot_wear_mask, slot_wear_suit, slot_gloves, slot_shoes, slot_w_uniform)
|
||||||
|
|
||||||
|
burnmod = 1.25
|
||||||
|
heatmod = 1.5
|
||||||
|
|
||||||
|
mutanteyes = /obj/item/organ/eyes/night_vision/mushroom
|
||||||
|
use_skintones = FALSE
|
||||||
|
var/datum/martial_art/mushpunch/mush
|
||||||
|
|
||||||
|
/datum/species/mush/check_roundstart_eligible()
|
||||||
|
return FALSE //hard locked out of roundstart on the order of design lead kor, this can be removed in the future when planetstation is here OR SOMETHING but right now we have a problem with races.
|
||||||
|
|
||||||
|
/datum/species/mush/after_equip_job(datum/job/J, mob/living/carbon/human/H)
|
||||||
|
H.grant_language(/datum/language/mushroom) //pomf pomf
|
||||||
|
|
||||||
|
/datum/species/mush/on_species_gain(mob/living/carbon/C, datum/species/old_species)
|
||||||
|
. = ..()
|
||||||
|
if(ishuman(C))
|
||||||
|
var/mob/living/carbon/human/H = C
|
||||||
|
if(!H.dna.features["caps"])
|
||||||
|
H.dna.features["caps"] = "Round"
|
||||||
|
handle_mutant_bodyparts(H)
|
||||||
|
H.faction |= "mushroom"
|
||||||
|
mush = new(null)
|
||||||
|
mush.teach(H)
|
||||||
|
|
||||||
|
/datum/species/mush/on_species_loss(mob/living/carbon/C)
|
||||||
|
. = ..()
|
||||||
|
C.faction -= "mushroom"
|
||||||
|
mush.remove(C)
|
||||||
|
QDEL_NULL(mush)
|
||||||
|
|
||||||
|
/datum/species/mush/handle_chemicals(datum/reagent/chem, mob/living/carbon/human/H)
|
||||||
|
if(chem.id == "weedkiller")
|
||||||
|
H.adjustToxLoss(3)
|
||||||
|
H.reagents.remove_reagent(chem.id, REAGENTS_METABOLISM)
|
||||||
|
return TRUE
|
||||||
|
|
||||||
|
/datum/species/mush/handle_mutant_bodyparts(mob/living/carbon/human/H, forced_colour)
|
||||||
|
forced_colour = FALSE
|
||||||
|
..()
|
||||||
@@ -77,6 +77,10 @@
|
|||||||
desc = "Even without their shadowy owner, looking at these eyes gives you a sense of dread."
|
desc = "Even without their shadowy owner, looking at these eyes gives you a sense of dread."
|
||||||
icon_state = "burning_eyes"
|
icon_state = "burning_eyes"
|
||||||
|
|
||||||
|
/obj/item/organ/eyes/night_vision/mushroom
|
||||||
|
name = "fung-eye"
|
||||||
|
desc = "While on the outside they look inert and dead, the eyes of mushroom people are actually very advanced."
|
||||||
|
|
||||||
///Robotic
|
///Robotic
|
||||||
|
|
||||||
/obj/item/organ/eyes/robotic
|
/obj/item/organ/eyes/robotic
|
||||||
|
|||||||
Binary file not shown.
|
Before Width: | Height: | Size: 32 KiB After Width: | Height: | Size: 33 KiB |
@@ -397,6 +397,7 @@
|
|||||||
#include "code\datums\martial\boxing.dm"
|
#include "code\datums\martial\boxing.dm"
|
||||||
#include "code\datums\martial\cqc.dm"
|
#include "code\datums\martial\cqc.dm"
|
||||||
#include "code\datums\martial\krav_maga.dm"
|
#include "code\datums\martial\krav_maga.dm"
|
||||||
|
#include "code\datums\martial\mushpunch.dm"
|
||||||
#include "code\datums\martial\plasma_fist.dm"
|
#include "code\datums\martial\plasma_fist.dm"
|
||||||
#include "code\datums\martial\psychotic_brawl.dm"
|
#include "code\datums\martial\psychotic_brawl.dm"
|
||||||
#include "code\datums\martial\sleeping_carp.dm"
|
#include "code\datums\martial\sleeping_carp.dm"
|
||||||
@@ -1668,6 +1669,7 @@
|
|||||||
#include "code\modules\language\language_menu.dm"
|
#include "code\modules\language\language_menu.dm"
|
||||||
#include "code\modules\language\machine.dm"
|
#include "code\modules\language\machine.dm"
|
||||||
#include "code\modules\language\monkey.dm"
|
#include "code\modules\language\monkey.dm"
|
||||||
|
#include "code\modules\language\mushroom.dm"
|
||||||
#include "code\modules\language\narsian.dm"
|
#include "code\modules\language\narsian.dm"
|
||||||
#include "code\modules\language\ratvarian.dm"
|
#include "code\modules\language\ratvarian.dm"
|
||||||
#include "code\modules\language\slime.dm"
|
#include "code\modules\language\slime.dm"
|
||||||
@@ -1859,6 +1861,7 @@
|
|||||||
#include "code\modules\mob\living\carbon\human\species_types\jellypeople.dm"
|
#include "code\modules\mob\living\carbon\human\species_types\jellypeople.dm"
|
||||||
#include "code\modules\mob\living\carbon\human\species_types\lizardpeople.dm"
|
#include "code\modules\mob\living\carbon\human\species_types\lizardpeople.dm"
|
||||||
#include "code\modules\mob\living\carbon\human\species_types\mothmen.dm"
|
#include "code\modules\mob\living\carbon\human\species_types\mothmen.dm"
|
||||||
|
#include "code\modules\mob\living\carbon\human\species_types\mushpeople.dm"
|
||||||
#include "code\modules\mob\living\carbon\human\species_types\plasmamen.dm"
|
#include "code\modules\mob\living\carbon\human\species_types\plasmamen.dm"
|
||||||
#include "code\modules\mob\living\carbon\human\species_types\podpeople.dm"
|
#include "code\modules\mob\living\carbon\human\species_types\podpeople.dm"
|
||||||
#include "code\modules\mob\living\carbon\human\species_types\shadowpeople.dm"
|
#include "code\modules\mob\living\carbon\human\species_types\shadowpeople.dm"
|
||||||
|
|||||||
Reference in New Issue
Block a user