diff --git a/code/__defines/chemistry_vr.dm b/code/__defines/chemistry_vr.dm new file mode 100644 index 00000000000..7c29bced618 --- /dev/null +++ b/code/__defines/chemistry_vr.dm @@ -0,0 +1,4 @@ +// More for our custom races +#define IS_SERGAL 10 +#define IS_AKULA 11 +#define IS_NEVREAN 12 \ No newline at end of file diff --git a/code/modules/mob/language/station_vr.dm b/code/modules/mob/language/station_vr.dm new file mode 100644 index 00000000000..8abb49d1c7a --- /dev/null +++ b/code/modules/mob/language/station_vr.dm @@ -0,0 +1,26 @@ +/* 'basic' language; spoken by default. +/datum/language/common + name = "Galactic Common" + desc = "The common galactic tongue." + speech_verb = "says" + whisper_verb = "whispers" + key = "0" + flags = RESTRICTED + syllables = list("blah","blah","blah","bleh","meh","neh","nah","wah") +*/ + +/datum/language/birdsong + name = "Birdsong" + desc = "A language primarily spoken by Narvians" + speech_verb = "chirps" + colour = "birdsongc" + key = "7" + syllables = list ("cheep", "peep", "tweet") + +/datum/language/sergal + name = "Sagaru" + desc = "The dominant language of the Sergal homeworld, Vilous. It consists of aggressive low-pitched hissing and throaty growling." + speech_verb = "snarls" + colour = "sergal" + key = "z" + syllables = list ("grr", "gah", "woof", "arf", "arra", "rah", "wor", "sarg") \ No newline at end of file diff --git a/code/modules/mob/living/carbon/human/species/species_vr.dm b/code/modules/mob/living/carbon/human/species/species_vr.dm new file mode 100644 index 00000000000..dc0f247aac0 --- /dev/null +++ b/code/modules/mob/living/carbon/human/species/species_vr.dm @@ -0,0 +1,8 @@ +/datum/species + //This is used in character setup preview generation (prefences_setup.dm) and human mob + //rendering (update_icons.dm) + var/color_mult = 0 + + //This is for overriding tail rendering with a specific icon in icobase, for static + //tails only, since tails would wag when dead if you used this + var/icobase_tail = 0 \ No newline at end of file diff --git a/code/modules/mob/living/carbon/human/species/station/monkey_vr.dm b/code/modules/mob/living/carbon/human/species/station/monkey_vr.dm new file mode 100644 index 00000000000..dd9164e4937 --- /dev/null +++ b/code/modules/mob/living/carbon/human/species/station/monkey_vr.dm @@ -0,0 +1,35 @@ +/datum/species/monkey/shark + name = "Sobaka" + voice_name = "Sobaka" + speak_emote = list("squeaks") + icon_state = "sharkpup1" + greaterform = "Akula" + +/datum/species/monkey/sergal + name = "Sergaling" + voice_name = "Sergaling" + speak_emote = list("growls") + icon_state = "sergal1" + greaterform = "Sergal" + +/datum/species/monkey/sparra + name = "Sparra" + voice_name = "Sparra" + speak_emote = list("chirps") + icon_state = "sparra1" + greaterform = "Nevrean" + +/* Example from Polaris code +/datum/species/monkey/tajaran + name = "Farwa" + name_plural = "Farwa" + + icobase = 'icons/mob/human_races/monkeys/r_farwa.dmi' + deform = 'icons/mob/human_races/monkeys/r_farwa.dmi' + + greater_form = "Tajaran" + default_language = "Farwa" + flesh_color = "#AFA59E" + base_color = "#333333" + tail = "farwatail" +*/ diff --git a/code/modules/mob/living/carbon/human/species/station/station_vr.dm b/code/modules/mob/living/carbon/human/species/station/station_vr.dm new file mode 100644 index 00000000000..72f9e658234 --- /dev/null +++ b/code/modules/mob/living/carbon/human/species/station/station_vr.dm @@ -0,0 +1,123 @@ +/datum/species/sergal + name = "Sergal" + name_plural = "Sergals" + icobase = 'icons/mob/human_races/r_sergal.dmi' + deform = 'icons/mob/human_races/r_def_sergal.dmi' + tail = "tail" + icobase_tail = 1 + unarmed_types = list(/datum/unarmed_attack/stomp, /datum/unarmed_attack/kick, /datum/unarmed_attack/claws, /datum/unarmed_attack/bite/sharp) + //darksight = 8 + //slowdown = -0.5 + //brute_mod = 1.15 + //burn_mod = 1.15 + //gluttonous = 1 + num_alternate_languages = 2 + secondary_langs = list("Sagaru") + name_language = "Sagaru" + color_mult = 1 + + min_age = 17 + max_age = 80 + + blurb = "There are two subspecies of Sergal; Southern and Northern. Northern sergals are a highly aggressive race \ + that lives in the plains and tundra of their homeworld. They are characterized by long, fluffy fur bodies with cold colors; \ + usually with white abdomens, somewhat short ears, and thick faces. Southern sergals are much more docile and live in the \ + Gold Ring City and are scattered around the outskirts in rural areas and small towns. They usually have short, brown or yellow \ + (or other 'earthy' colors) fur, long ears, and a long, thin face. They are smaller than their Northern relatives. Both have strong \ + racial tensions which has resulted in more than a number of wars and outright attempts at genocide. Sergals have an incredibly long \ + lifespan, but due to their lust for violence, only a handful have ever survived beyond the age of 80, such as the infamous and \ + legendary General Rain Silves who is claimed to have lived to 5000." + + primitive_form = "Farwa" //POLARISTODO - Add other monkeytypes + + spawn_flags = CAN_JOIN + appearance_flags = HAS_HAIR_COLOR | HAS_LIPS | HAS_UNDERWEAR | HAS_SKIN_COLOR | HAS_EYE_COLOR + + flesh_color = "#AFA59E" + base_color = "#333333" + + reagent_tag = IS_SERGAL + + heat_discomfort_strings = list( + "Your fur prickles in the heat.", + "You feel uncomfortably warm.", + "Your overheated skin itches." + ) + +/datum/species/akula + name = "Akula" + name_plural = "Akula" + icobase = 'icons/mob/human_races/r_akula.dmi' + deform = 'icons/mob/human_races/r_def_akula.dmi' + tail = "tail" + icobase_tail = 1 + unarmed_types = list(/datum/unarmed_attack/stomp, /datum/unarmed_attack/kick, /datum/unarmed_attack/claws, /datum/unarmed_attack/bite/sharp) + //darksight = 8 + //slowdown = -0.5 + //brute_mod = 1.15 + //burn_mod = 1.15 + //gluttonous = 1 + num_alternate_languages = 2 + secondary_langs = list("Skrellian") + name_language = "Skrellian" + color_mult = 1 + + min_age = 17 + max_age = 80 + + blurb = "The Akula are a species of amphibious humanoids like the Skrell, but have an appearance very similar to that of a shark. \ + They were first discovered as a primitive race of underwater dwelling tribal creatures by the Skrell. At first they were not believed \ + to be noteworthy, but the Akula proved to be such swift and clever learners that the Skrell reclassified them as sentients. Allegedly, \ + the Akula were also the first sentient life that the Skrell had ever encountered beside themselves, and thus the two species became swift \ + allies over the next few hundred years. With the help of Skrellean technology, the Akula had their genome modified to be capable of \ + surviving in open air for long periods of time. However, Akula even today still require a high humidity environment to avoid drying out \ + after a few days, which would make life on an arid world like Virgo-Prime nearly impossible if it were not for Skrellean technology to aid them." + + primitive_form = "Farwa" //POLARISTODO - Add other monkeytypes + + spawn_flags = CAN_JOIN + appearance_flags = HAS_HAIR_COLOR | HAS_LIPS | HAS_UNDERWEAR | HAS_SKIN_COLOR | HAS_EYE_COLOR + + flesh_color = "#AFA59E" + base_color = "#333333" + + reagent_tag = IS_AKULA + +/datum/species/nevrean + name = "Nevrean" + name_plural = "Nevreans" + icobase = 'icons/mob/human_races/r_nevrean.dmi' + deform = 'icons/mob/human_races/r_def_nevrean.dmi' + tail = "tail" + icobase_tail = 1 + unarmed_types = list(/datum/unarmed_attack/stomp, /datum/unarmed_attack/kick, /datum/unarmed_attack/claws, /datum/unarmed_attack/bite/sharp) + //darksight = 8 + //slowdown = -0.5 + //brute_mod = 1.15 + //burn_mod = 1.15 + //gluttonous = 1 + num_alternate_languages = 2 + secondary_langs = list("Birdsong") + name_language = "Birdsong" + color_mult = 1 + + min_age = 17 + max_age = 80 + + blurb = "Nevreans are a race of avian and dinosaur-like creatures living on Tal. They belong to a group of races that hails from Eltus. " + + primitive_form = "Farwa" //POLARISTODO - Add other monkeytypes + + spawn_flags = CAN_JOIN + appearance_flags = HAS_HAIR_COLOR | HAS_LIPS | HAS_UNDERWEAR | HAS_SKIN_COLOR | HAS_EYE_COLOR + + flesh_color = "#AFA59E" + base_color = "#333333" + + reagent_tag = IS_SERGAL + + heat_discomfort_strings = list( + "Your fur prickles in the heat.", + "You feel uncomfortably warm.", + "Your overheated skin itches." + ) \ No newline at end of file diff --git a/code/modules/mob/living/life.dm b/code/modules/mob/living/life.dm index 76122a914ba..fa66258ef46 100644 --- a/code/modules/mob/living/life.dm +++ b/code/modules/mob/living/life.dm @@ -38,7 +38,7 @@ handle_fire() //stuff in the stomach - handle_stomach() + //handle_stomach() //VOREStation Code update_gravity(mob_has_gravity()) diff --git a/code/modules/mob/new_player/preferences_setup.dm b/code/modules/mob/new_player/preferences_setup.dm index ae75216c4eb..16ae76dbbb7 100644 --- a/code/modules/mob/new_player/preferences_setup.dm +++ b/code/modules/mob/new_player/preferences_setup.dm @@ -232,7 +232,12 @@ limb_icon = new /icon(icobase, "[name]") // Skin color if(current_species && (current_species.appearance_flags & HAS_SKIN_COLOR)) - limb_icon.Blend(rgb(r_skin, g_skin, b_skin), ICON_ADD) + //VOREStation Code Start + if(current_species.color_mult) + limb_icon.Blend(rgb(r_skin, g_skin, b_skin), ICON_MULTIPLY) + else + limb_icon.Blend(rgb(r_skin, g_skin, b_skin), ICON_ADD) + //VOREstation Code End // Skin tone if(current_species && (current_species.appearance_flags & HAS_SKIN_TONE)) if (s_tone >= 0) diff --git a/code/modules/mob/new_player/sprite_accessories_vr.dm b/code/modules/mob/new_player/sprite_accessories_vr.dm new file mode 100644 index 00000000000..05d1c614c28 --- /dev/null +++ b/code/modules/mob/new_player/sprite_accessories_vr.dm @@ -0,0 +1,26 @@ +//////////////////////// +// For sergals and stuff +//////////////////////// +/datum/sprite_accessory/hair/vr + + icon = 'icons/mob/human_face_vr.dmi' + + sergal_plain + name = "Sergal Plain" + icon_state = "serg_plain" + species_allowed = list("Sergal") + + sergal_plain + name = "Sergal Medicore" + icon_state = "serg_medicore" + species_allowed = list("Sergal") + + sergal_plain + name = "Sergal Tapered" + icon_state = "serg_tapered" + species_allowed = list("Sergal") + + sergal_plain + name = "Sergal Fairytail" + icon_state = "serg_fairytail" + species_allowed = list("Sergal") \ No newline at end of file diff --git a/icons/mob/human_face_vr.dmi b/icons/mob/human_face_vr.dmi new file mode 100644 index 00000000000..6afc04bfb56 Binary files /dev/null and b/icons/mob/human_face_vr.dmi differ diff --git a/icons/mob/human_races/r_akula.dmi b/icons/mob/human_races/r_akula.dmi new file mode 100644 index 00000000000..114d5c0fa9e Binary files /dev/null and b/icons/mob/human_races/r_akula.dmi differ diff --git a/icons/mob/human_races/r_def_akula.dmi b/icons/mob/human_races/r_def_akula.dmi new file mode 100644 index 00000000000..3b99d8c82b5 Binary files /dev/null and b/icons/mob/human_races/r_def_akula.dmi differ diff --git a/icons/mob/human_races/r_def_nevrean.dmi b/icons/mob/human_races/r_def_nevrean.dmi new file mode 100644 index 00000000000..42c18e18d6c Binary files /dev/null and b/icons/mob/human_races/r_def_nevrean.dmi differ diff --git a/icons/mob/human_races/r_def_sergal.dmi b/icons/mob/human_races/r_def_sergal.dmi new file mode 100644 index 00000000000..c43a5835f8a Binary files /dev/null and b/icons/mob/human_races/r_def_sergal.dmi differ diff --git a/icons/mob/human_races/r_nevrean.dmi b/icons/mob/human_races/r_nevrean.dmi new file mode 100644 index 00000000000..d1a590c800f Binary files /dev/null and b/icons/mob/human_races/r_nevrean.dmi differ diff --git a/icons/mob/human_races/r_sergal.dmi b/icons/mob/human_races/r_sergal.dmi new file mode 100644 index 00000000000..fc073254c0b Binary files /dev/null and b/icons/mob/human_races/r_sergal.dmi differ diff --git a/icons/mob/species/akula/tail.dmi b/icons/mob/species/akula/tail.dmi new file mode 100644 index 00000000000..20327c86baa Binary files /dev/null and b/icons/mob/species/akula/tail.dmi differ diff --git a/icons/mob/species/nevrean/tail.dmi b/icons/mob/species/nevrean/tail.dmi new file mode 100644 index 00000000000..5d3027f6b73 Binary files /dev/null and b/icons/mob/species/nevrean/tail.dmi differ diff --git a/icons/mob/species/sergal/tail.dmi b/icons/mob/species/sergal/tail.dmi new file mode 100644 index 00000000000..87e1f6a40b0 Binary files /dev/null and b/icons/mob/species/sergal/tail.dmi differ diff --git a/vorestation.dme b/vorestation.dme index 90aa859559c..66a1ec71b93 100644 --- a/vorestation.dme +++ b/vorestation.dme @@ -24,6 +24,7 @@ #include "code\__defines\atmos.dm" #include "code\__defines\belly_modes_vr.dm" #include "code\__defines\chemistry.dm" +#include "code\__defines\chemistry_vr.dm" #include "code\__defines\damage_organs.dm" #include "code\__defines\dna.dm" #include "code\__defines\gamemode.dm" @@ -1296,6 +1297,7 @@ #include "code\modules\mob\language\monkey.dm" #include "code\modules\mob\language\outsider.dm" #include "code\modules\mob\language\station.dm" +#include "code\modules\mob\language\station_vr.dm" #include "code\modules\mob\language\synthetic.dm" #include "code\modules\mob\living\autohiss.dm" #include "code\modules\mob\living\damage_procs.dm" @@ -1380,12 +1382,14 @@ #include "code\modules\mob\living\carbon\human\species\species.dm" #include "code\modules\mob\living\carbon\human\species\species_attack.dm" #include "code\modules\mob\living\carbon\human\species\species_hud.dm" +#include "code\modules\mob\living\carbon\human\species\species_vr.dm" #include "code\modules\mob\living\carbon\human\species\outsider\shadow.dm" #include "code\modules\mob\living\carbon\human\species\station\golem.dm" #include "code\modules\mob\living\carbon\human\species\station\monkey.dm" #include "code\modules\mob\living\carbon\human\species\station\seromi.dm" #include "code\modules\mob\living\carbon\human\species\station\slime.dm" #include "code\modules\mob\living\carbon\human\species\station\station.dm" +#include "code\modules\mob\living\carbon\human\species\station\station_vr.dm" #include "code\modules\mob\living\carbon\metroid\death.dm" #include "code\modules\mob\living\carbon\metroid\emote.dm" #include "code\modules\mob\living\carbon\metroid\examine.dm" @@ -1501,6 +1505,7 @@ #include "code\modules\mob\new_player\preferences_setup.dm" #include "code\modules\mob\new_player\skill.dm" #include "code\modules\mob\new_player\sprite_accessories.dm" +#include "code\modules\mob\new_player\sprite_accessories_vr.dm" #include "code\modules\multiz\_stubs.dm" #include "code\modules\multiz\basic.dm" #include "code\modules\multiz\movement.dm"