mirror of
https://github.com/VOREStation/VOREStation.git
synced 2026-08-29 15:08:34 +01:00
WIP.
This commit is contained in:
@@ -51,6 +51,14 @@
|
||||
SC.emote_into(nifmessage,src)
|
||||
return 1
|
||||
|
||||
if("chirp")
|
||||
if(src.species.name == "Chirret")
|
||||
message = "<B>The [src.name]</B> chirps!"
|
||||
playsound(src.loc, 'sound/misc/nymphchirp.ogg', 50, 0)
|
||||
m_type = 2
|
||||
else
|
||||
src << "<span class='warning'>You can't chirp without being a Chirret!</span>"
|
||||
|
||||
if ("flip")
|
||||
var/danger = 1 //Base 1% chance to break something.
|
||||
var/list/involved_parts = list(BP_L_LEG, BP_R_LEG, BP_L_FOOT, BP_R_FOOT)
|
||||
|
||||
@@ -15,4 +15,7 @@
|
||||
..(new_loc, "Xenomorph Hybrid")
|
||||
|
||||
/mob/living/carbon/human/spider/New(var/new_loc)
|
||||
..(new_loc, "Vasilissan")
|
||||
..(new_loc, "Vasilissan")
|
||||
|
||||
/mob/living/carbon/human/chirret/New(var/new_loc)
|
||||
..(new_loc, "Chirret")
|
||||
@@ -1,7 +1,7 @@
|
||||
/datum/species/shapeshifter/promethean
|
||||
min_age = 18
|
||||
max_age = 80
|
||||
valid_transform_species = list("Human", "Unathi", "Tajara", "Skrell", "Diona", "Teshari", "Monkey","Sergal","Akula","Nevrean","Highlander Zorren","Flatland Zorren", "Vulpkanin", "Vasilissan", "Rapala", "Neaera", "Stok", "Farwa", "Sobaka", "Wolpin", "Saru", "Sparra")
|
||||
valid_transform_species = list("Human", "Unathi", "Tajara", "Skrell", "Diona", "Teshari", "Monkey","Sergal","Akula","Nevrean","Highlander Zorren","Flatland Zorren", "Vulpkanin", "Vasilissan", "Rapala", "Neaera", "Stok", "Farwa", "Sobaka", "Wolpin", "Saru", "Sparra", "Chirret")
|
||||
heal_rate = 0.2 //They heal .2, along with the natural .2 heal per tick when below the organ natural heal damage threshhold.
|
||||
siemens_coefficient = 1 //Prevents them from being immune to tasers and stun weapons.
|
||||
death_message = "goes limp, their body becoming softer..."
|
||||
|
||||
@@ -841,3 +841,41 @@
|
||||
C.anchored = 0
|
||||
else
|
||||
return
|
||||
|
||||
|
||||
/obj/structure/closet/body_bag/chirret
|
||||
name = "odd silk webbing"
|
||||
desc = "Some odd silk webbing. It looks as though it could hold someone!"
|
||||
icon = 'icons/obj/bodybag_vr.dmi'
|
||||
icon_state = "silk_closed"
|
||||
icon_closed = "silk_closed"
|
||||
icon_opened = "silk_open"
|
||||
open_sound = 'sound/effects/rustle1.ogg'
|
||||
close_sound = 'sound/effects/rustle1.ogg'
|
||||
item_path = null
|
||||
density = 0
|
||||
storage_capacity = (MOB_MEDIUM * 2) - 1
|
||||
|
||||
|
||||
/mob/living/carbon/human/proc/create_silk()
|
||||
var/mob/living/carbon/human/O = src
|
||||
var/obj/item/weapon/grab/G = src.get_active_hand()
|
||||
last_special = world.time + 600 //60 seconds. You don't get
|
||||
if(!istype(G))
|
||||
var/silk_path = /obj/structure/closet/body_bag/chirret
|
||||
new silk_path(O) //For modifications in the future.
|
||||
to_chat(O, "<span class='notice'>You create a soft silk cocoon!</span>")
|
||||
O.visible_message("<font color='notice'>[O] creates a soft silk cocoon!</font>")
|
||||
return
|
||||
var/mob/living/carbon/human/T = G.affecting
|
||||
//If they're holding someone, cocoon them.
|
||||
O.visible_message("<font color='notice'>[O] begins to encase [T] in soft silk!</font>")
|
||||
if(do_after(O, 200, T)) //20 seconds to cocoon someone.
|
||||
if(!Adjacent(T)) return
|
||||
var/silk_path = /obj/structure/closet/body_bag/chirret
|
||||
var/obj/structure/closet/body_bag/chirret/chirrret_silk = new silk_path(O)
|
||||
T.forceMove(chirrret_silk) //Put them in the body bag!
|
||||
to_chat(T, "<span class='notice'>You're encased in a soft silk cocoon by [O]!</span>")
|
||||
to_chat(O, "<span class='notice'>Your encase [T] in a soft silk cocoon!</span>")
|
||||
O.visible_message("<font color='notice'>[O] encases [T] in a soft silk cocoon!</font>")
|
||||
|
||||
|
||||
@@ -35,9 +35,11 @@
|
||||
min_age = 18
|
||||
max_age = 80
|
||||
|
||||
blurb = "Some amalgamation of different species from across the universe,with extremely unstable DNA, making them unfit for regular cloners. \
|
||||
Widely known for their voracious nature and violent tendencies when stressed or left unfed for long periods of time. \
|
||||
Most, if not all chimeras possess the ability to undergo some type of regeneration process, at the cost of energy."
|
||||
blurb = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Maecenas purus eros, egestas in sapien non, \
|
||||
eleifend suscipit ligula. Donec malesuada lectus odio, ut pretium massa semper eu. Quisque posuere, odio viverra rutrum auctor, nisl erat finibus velit, \
|
||||
a pretium justo ante id ex. Sed volutpat libero eu arcu efficitur dictum. Nullam egestas ornare nisl, nec faucibus enim. Vestibulum semper dolor magna, eget sodales arcu ullamcorper sed. \
|
||||
Duis sit amet ante sagittis, tincidunt lectus sit amet, bibendum dui. Quisque in dolor venenatis est consectetur dignissim. Nunc nulla ante, lobortis nec posuere in, rhoncus eget velit. \
|
||||
Sed ligula justo, molestie quis tellus."
|
||||
|
||||
hazard_low_pressure = -1 //Prevents them from dying normally in space. Special code handled below.
|
||||
cold_level_1 = -5000 // All cold debuffs are handled below in handle_environment_special
|
||||
@@ -312,3 +314,100 @@
|
||||
H.eye_blurry = 5
|
||||
H.shock_stage = min(H.shock_stage + coldshock, 160) //cold hurts and gives them pain messages, eventually weakening and paralysing, but doesn't damage.
|
||||
return
|
||||
|
||||
///////////////////////
|
||||
////////Chirret////////
|
||||
///////////////////////
|
||||
/datum/species/chirret
|
||||
name = "Chirret"
|
||||
name_plural = "Chirrets"
|
||||
icobase = 'icons/mob/human_races/r_chirret.dmi'
|
||||
deform = 'icons/mob/human_races/r_def_chirret.dmi'
|
||||
unarmed_types = list(/datum/unarmed_attack/stomp, /datum/unarmed_attack/kick, /datum/unarmed_attack/claws, /datum/unarmed_attack/bite/sharp)
|
||||
darksight = 8 //Darksight+
|
||||
slowdown = -0.5 //Haste
|
||||
total_health = 80
|
||||
brute_mod = 1.25
|
||||
burn_mod = 0.75
|
||||
can_fly = 1
|
||||
trashcan = 1 //Yes.
|
||||
reagent_tag = IS_CHIRRET //Sugar messses them up. Coffee makes them jittery.
|
||||
|
||||
num_alternate_languages = 3
|
||||
secondary_langs = list("Sol Common")
|
||||
//color_mult = 1
|
||||
tail = "tail" //Scree's tail. Can be disabled in the vore tab by choosing "hide species specific tail sprite"
|
||||
icobase_tail = 1
|
||||
inherent_verbs = list(
|
||||
/mob/living/carbon/human/proc/begin_reconstitute_form,
|
||||
/mob/living/carbon/human/proc/sonar_ping,
|
||||
/mob/living/carbon/human/proc/succubus_drain,
|
||||
/mob/living/carbon/human/proc/succubus_drain_finialize,
|
||||
/mob/living/carbon/human/proc/succubus_drain_lethal,
|
||||
/mob/living/carbon/human/proc/bloodsuck,
|
||||
/mob/living/carbon/human/proc/shred_limb,
|
||||
/mob/living/carbon/human/proc/create_silk) //Chirrets get all the special verbs since they can't select traits.
|
||||
|
||||
male_cough_sounds = list('sound/effects/mob_effects/tesharicougha.ogg','sound/effects/mob_effects/tesharicoughb.ogg')
|
||||
female_cough_sounds = list('sound/effects/mob_effects/tesharicougha.ogg','sound/effects/mob_effects/tesharicoughb.ogg')
|
||||
male_sneeze_sound = 'sound/effects/mob_effects/tesharisneeze.ogg'
|
||||
female_sneeze_sound = 'sound/effects/mob_effects/tesharisneeze.ogg'
|
||||
|
||||
min_age = 18
|
||||
max_age = 80
|
||||
|
||||
blurb = "Some amalgamation of different species from across the universe,with extremely unstable DNA, making them unfit for regular cloners. \
|
||||
Widely known for their voracious nature and violent tendencies when stressed or left unfed for long periods of time. \
|
||||
Most, if not all chimeras possess the ability to undergo some type of regeneration process, at the cost of energy."
|
||||
|
||||
hazard_low_pressure = -1 //Prevents them from dying normally in space. Special code handled below.
|
||||
cold_level_1 = -5000 //Temp immune
|
||||
cold_level_2 = -5000
|
||||
cold_level_3 = -5000
|
||||
heat_level_1 = 500000 //Handled below. Temperature immune, but confusion at 45c, unconscious at 60+, organs take damage at 80c+
|
||||
heat_level_2 = 500000
|
||||
heat_level_3 = 500000
|
||||
breath_heat_level_1 = 500000
|
||||
breath_heat_level_2 = 500000
|
||||
breath_heat_level_3 = 500000
|
||||
|
||||
has_organ = list(
|
||||
O_HEART = /obj/item/organ/internal/heart/chirret,
|
||||
O_LUNGS = /obj/item/organ/internal/lungs/chirret,
|
||||
O_LIVER = /obj/item/organ/internal/liver/chirret,
|
||||
O_KIDNEYS = /obj/item/organ/internal/kidneys/,
|
||||
O_BRAIN = /obj/item/organ/internal/brain/chirret,
|
||||
O_EYES = /obj/item/organ/internal/eyes/,
|
||||
O_SILKSPINNER = /obj/item/organ/internal/silkspinner,
|
||||
O_NUTRIENT = /obj/item/organ/internal/diona/nutrients/chirret)
|
||||
|
||||
|
||||
hazard_high_pressure = (HAZARD_HIGH_PRESSURE + 10)
|
||||
warning_high_pressure = (WARNING_HIGH_PRESSURE + 10)
|
||||
warning_low_pressure = (WARNING_LOW_PRESSURE - 10)
|
||||
hazard_low_pressure = (HAZARD_LOW_PRESSURE - 10)
|
||||
|
||||
|
||||
//primitive_form = "Farwa"
|
||||
|
||||
spawn_flags = SPECIES_CAN_JOIN | SPECIES_IS_WHITELISTED //Whitelisted as restricted is broken.
|
||||
flags = NO_MINOR_CUT
|
||||
appearance_flags = HAS_HAIR_COLOR | HAS_LIPS | HAS_UNDERWEAR | HAS_SKIN_COLOR | HAS_EYE_COLOR
|
||||
|
||||
flesh_color = "#AFA59E"
|
||||
base_color = "#333333"
|
||||
blood_color = "#14AD8B"
|
||||
|
||||
|
||||
/datum/species/chirret/handle_environment_special(var/mob/living/carbon/human/H)
|
||||
if(H.stat == 2)
|
||||
return
|
||||
|
||||
if(H.bodytemperature >= 318.15 && H.bodytemperature < 333.15) //45C
|
||||
H.confused = max(H.confused, 20)
|
||||
else if(H.bodytemperature >= 333.15 && H.bodytemperature < 353.15) //60C
|
||||
H.sleeping = max(H.sleeping, 20)
|
||||
else if(H.bodytemperature >= 353.15) //80C
|
||||
var/obj/item/organ/internal/O = pick(H.internal_organs)
|
||||
if(O) //In case they have no internal organs but are still alive by some magic. Prevents runtimes.
|
||||
O.take_damage(5) //Welp.
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
icon = 'icons/mob/human_face_or_vr.dmi'
|
||||
//var/icon_add = 'icons/mob/human_face.dmi' //Already defined in sprite_accessories.dm line 49.
|
||||
var/color_blend_mode = ICON_MULTIPLY
|
||||
species_allowed = list("Human","Skrell","Unathi","Tajara", "Teshari", "Nevrean", "Akula", "Sergal", "Flatland Zorren", "Highlander Zorren", "Vulpkanin", "Xenochimera", "Xenomorph Hybrid", "Vasilissan", "Rapala") //This lets all races use the default hairstyles.
|
||||
species_allowed = list("Human","Skrell","Unathi","Tajara", "Teshari", "Nevrean", "Akula", "Sergal", "Flatland Zorren", "Highlander Zorren", "Vulpkanin", "Xenochimera", "Xenomorph Hybrid", "Vasilissan", "Rapala", "Chirret") //This lets all races use the default hairstyles.
|
||||
|
||||
awoohair
|
||||
name = "Shoulder-length Messy"
|
||||
@@ -69,7 +69,7 @@
|
||||
name = "Bald"
|
||||
icon_state = "bald"
|
||||
gender = MALE
|
||||
species_allowed = list("Human","Skrell","Unathi","Tajara", "Teshari", "Nevrean", "Akula", "Sergal", "Flatland Zorren", "Highlander Zorren", "Vulpkanin", "Xenochimera", "Xenomorph Hybrid", "Vasilissan", "Xenochimera", "Rapala") //Lets all the races be bald if they want.
|
||||
species_allowed = list("Human","Skrell","Unathi","Tajara", "Teshari", "Nevrean", "Akula", "Sergal", "Flatland Zorren", "Highlander Zorren", "Vulpkanin", "Xenochimera", "Xenomorph Hybrid", "Vasilissan", "Xenochimera", "Rapala", "Chirret") //Lets all the races be bald if they want.
|
||||
|
||||
ponytail6_fixed //Eggnerd's done with waiting for upstream fixes lmao.
|
||||
name = "Ponytail 6 but fixed"
|
||||
@@ -385,13 +385,13 @@
|
||||
/datum/sprite_accessory/facial_hair
|
||||
icon = 'icons/mob/human_face_or_vr.dmi'
|
||||
var/color_blend_mode = ICON_MULTIPLY
|
||||
species_allowed = list("Human","Skrell","Unathi","Tajara", "Teshari", "Nevrean", "Akula", "Sergal", "Flatland Zorren", "Highlander Zorren", "Vulpkanin", "Xenochimera", "Xenomorph Hybrid", "Vasilissan", "Rapala") //This lets all races use the facial hair styles.
|
||||
species_allowed = list("Human","Skrell","Unathi","Tajara", "Teshari", "Nevrean", "Akula", "Sergal", "Flatland Zorren", "Highlander Zorren", "Vulpkanin", "Xenochimera", "Xenomorph Hybrid", "Vasilissan", "Rapala", "Chirret") //This lets all races use the facial hair styles.
|
||||
|
||||
shaved
|
||||
name = "Shaved"
|
||||
icon_state = "bald"
|
||||
gender = NEUTER
|
||||
species_allowed = list("Human","Skrell","Unathi","Tajara", "Teshari", "Nevrean", "Akula", "Sergal", "Flatland Zorren", "Highlander Zorren", "Vulpkanin", "Xenochimera", "Xenomorph Hybrid", "Vasilissan", "Rapala") //This needed to be manually defined, apparantly.
|
||||
species_allowed = list("Human","Skrell","Unathi","Tajara", "Teshari", "Nevrean", "Akula", "Sergal", "Flatland Zorren", "Highlander Zorren", "Vulpkanin", "Xenochimera", "Xenomorph Hybrid", "Vasilissan", "Rapala", "Chirret") //This needed to be manually defined, apparantly.
|
||||
|
||||
|
||||
vulp_none
|
||||
@@ -727,6 +727,26 @@
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
body_parts = list(BP_L_FOOT,BP_R_FOOT,BP_L_HAND,BP_R_HAND)
|
||||
|
||||
chirret_cheeks
|
||||
name = "Chirret Cheeks"
|
||||
icon_state = "chirret_cheeks"
|
||||
body_parts = list(BP_HEAD)
|
||||
|
||||
chirret_cheeks
|
||||
name = "Chirret Claws"
|
||||
icon_state = "chirret_claws"
|
||||
body_parts = list(BP_L_FOOT,BP_R_FOOT,BP_L_HAND,BP_R_HAND)
|
||||
|
||||
chirret_face_and_belly_v1
|
||||
name = "Chirret Face and Belly Variant 1"
|
||||
icon_state = "chirret_fb_1"
|
||||
body_parts = list(BP_L_FOOT,BP_R_FOOT,BP_L_HAND,BP_R_HAND)
|
||||
|
||||
chirret_face_and_belly_v2
|
||||
name = "Chirret Face and Belly Variant 2"
|
||||
icon_state = "chirret_fb_2"
|
||||
body_parts = list(BP_L_FOOT,BP_R_FOOT,BP_L_HAND,BP_R_HAND)
|
||||
|
||||
harpy_feathers
|
||||
name = "Rapala leg Feather"
|
||||
icon_state = "harpy-feathers"
|
||||
|
||||
@@ -0,0 +1,18 @@
|
||||
/obj/item/organ/internal/heart/chirret
|
||||
icon = 'icons/obj/surgery_vr.dmi'
|
||||
name = "alien heart"
|
||||
/obj/item/organ/internal/lungs/chirret
|
||||
icon = 'icons/obj/surgery_vr.dmi'
|
||||
name = "alien lungs"
|
||||
/obj/item/organ/internal/liver/chirret
|
||||
icon = 'icons/obj/surgery_vr.dmi'
|
||||
name = "alien liver"
|
||||
/obj/item/organ/internal/brain/chirret
|
||||
icon = 'icons/obj/surgery_vr.dmi'
|
||||
name = "alien silk spinner"
|
||||
/obj/item/organ/internal/silkspinner
|
||||
icon = 'icons/obj/surgery_vr.dmi'
|
||||
name = "alien silk spinner"
|
||||
icon_state = "silk"
|
||||
/obj/item/organ/internal/diona/nutrients/chirret
|
||||
name = "alien organ"
|
||||
@@ -414,6 +414,20 @@
|
||||
else
|
||||
M.sleeping = max(M.sleeping, 20)
|
||||
M.drowsyness = max(M.drowsyness, 60)
|
||||
else if(alien == IS_CHIRRET) //VOREStation Edit Start
|
||||
if(effective_dose < 2)
|
||||
if(effective_dose == metabolism * 2 || prob(5))
|
||||
M.make_dizzy(6)
|
||||
M.slurring = max(M.slurring, 30)
|
||||
M.eye_blurry = max(M.eye_blurry, 10)
|
||||
else if(effective_dose < 10)
|
||||
M.slurring = max(M.slurring, 30)
|
||||
M.eye_blurry = max(M.eye_blurry, 10)
|
||||
M.drowsyness = max(M.drowsyness, 20)
|
||||
M.eye_blurry = max(M.eye_blurry, 10)
|
||||
M.confused = max(M.confused, 20)
|
||||
else
|
||||
M.paralysis = max(M.paralysis, 20)//VOREStation Edit End
|
||||
|
||||
/datum/reagent/sulfur
|
||||
name = "Sulfur"
|
||||
|
||||
@@ -804,6 +804,8 @@
|
||||
//if(alien == IS_TAJARA) //VOREStation Edit Begin
|
||||
//M.adjustToxLoss(0.5 * removed)
|
||||
//M.make_jittery(4) //extra sensitive to caffine
|
||||
if(alien == IS_CHIRRET)
|
||||
M.make_jittery(20) //VOREStation Edit End
|
||||
if(adj_temp > 0)
|
||||
holder.remove_reagent("frostoil", 10 * removed)
|
||||
|
||||
|
||||
@@ -90,6 +90,13 @@
|
||||
do_colouration = 1
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
|
||||
/datum/sprite_accessory/ears/antennae
|
||||
name = "chirret antennae, colorable"
|
||||
desc = ""
|
||||
icon_state = "antennae_chirret"
|
||||
do_colouration = 1
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
|
||||
/datum/sprite_accessory/ears/oni_h1
|
||||
name = "oni horns"
|
||||
desc = ""
|
||||
@@ -845,6 +852,14 @@
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
extra_overlay = "sergal_mark"
|
||||
|
||||
/datum/sprite_accessory/tail/sergaltaildc
|
||||
name = "chirret, dual-color"
|
||||
desc = ""
|
||||
icon_state = "chirret"
|
||||
do_colouration = 1
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
extra_overlay = "chirret_mark"
|
||||
|
||||
//For all species tails. Includes haircolored tails.
|
||||
/datum/sprite_accessory/tail/special
|
||||
name = "Blank tail. Do not select."
|
||||
|
||||
Reference in New Issue
Block a user