diff --git a/baystation12.dme b/baystation12.dme index d5d6d41162..dc575ec001 100644 --- a/baystation12.dme +++ b/baystation12.dme @@ -1293,6 +1293,7 @@ #include "code\modules\mob\living\carbon\human\species\outsider\vox.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\resomi.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\xenomorphs\alien_embryo.dm" @@ -1448,6 +1449,7 @@ #include "code\modules\organs\wound.dm" #include "code\modules\organs\subtypes\diona.dm" #include "code\modules\organs\subtypes\machine.dm" +#include "code\modules\organs\subtypes\resomi.dm" #include "code\modules\organs\subtypes\standard.dm" #include "code\modules\organs\subtypes\unbreakable.dm" #include "code\modules\organs\subtypes\xenos.dm" diff --git a/code/__defines/species_languages.dm b/code/__defines/species_languages.dm index 27dae81e72..fccfbaa2ef 100644 --- a/code/__defines/species_languages.dm +++ b/code/__defines/species_languages.dm @@ -20,6 +20,7 @@ #define HAS_LIPS 0x4 // Lips are drawn onto the mob icon. (lipstick) #define HAS_UNDERWEAR 0x8 // Underwear is drawn onto the mob icon. #define HAS_EYE_COLOR 0x10 // Eye colour selectable in chargen. (RGB) +#define HAS_HAIR_COLOR 0x20 // Hair colour selectable in chargen. (RGB) // Languages. #define LANGUAGE_SOL_COMMON "Sol Common" diff --git a/code/defines/obj/weapon.dm b/code/defines/obj/weapon.dm index d4633e3f07..54ca78aa39 100644 --- a/code/defines/obj/weapon.dm +++ b/code/defines/obj/weapon.dm @@ -174,6 +174,7 @@ w_class = 3.0 origin_tech = list(TECH_MATERIAL = 1) var/breakouttime = 300 //Deciseconds = 30s = 0.5 minute + sprite_sheets = list("Resomi" = 'icons/mob/species/resomi/handcuffs.dmi') /obj/item/weapon/caution desc = "Caution! Wet Floor!" diff --git a/code/game/objects/items/devices/PDA/PDA.dm b/code/game/objects/items/devices/PDA/PDA.dm index 57c5dd95af..7400b3bcca 100644 --- a/code/game/objects/items/devices/PDA/PDA.dm +++ b/code/game/objects/items/devices/PDA/PDA.dm @@ -11,6 +11,7 @@ var/global/list/obj/item/device/pda/PDAs = list() item_state = "electronic" w_class = 2.0 slot_flags = SLOT_ID | SLOT_BELT + sprite_sheets = list("Resomi" = 'icons/mob/species/resomi/id.dmi') //Main variables var/owner = null diff --git a/code/game/objects/items/devices/radio/headset.dm b/code/game/objects/items/devices/radio/headset.dm index bcf932009d..4769103c39 100644 --- a/code/game/objects/items/devices/radio/headset.dm +++ b/code/game/objects/items/devices/radio/headset.dm @@ -17,6 +17,8 @@ var/ks1type = /obj/item/device/encryptionkey var/ks2type = null + sprite_sheets = list("Resomi" = 'icons/mob/species/resomi/ears.dmi') + /obj/item/device/radio/headset/New() ..() internal_channels.Cut() diff --git a/code/game/objects/items/weapons/cards_ids.dm b/code/game/objects/items/weapons/cards_ids.dm index 93bc14399d..cc805cf95b 100644 --- a/code/game/objects/items/weapons/cards_ids.dm +++ b/code/game/objects/items/weapons/cards_ids.dm @@ -93,6 +93,11 @@ desc = "A card used to provide ID and determine access across the station." icon_state = "id" item_state = "card-id" + + sprite_sheets = list( + "Resomi" = 'icons/mob/species/resomi/id.dmi' + ) + var/access = list() var/registered_name = "Unknown" // The name registered_name on the card slot_flags = SLOT_ID diff --git a/code/game/objects/items/weapons/handcuffs.dm b/code/game/objects/items/weapons/handcuffs.dm index 524f70e029..c88ad3e641 100644 --- a/code/game/objects/items/weapons/handcuffs.dm +++ b/code/game/objects/items/weapons/handcuffs.dm @@ -16,6 +16,7 @@ var/breakouttime = 1200 //Deciseconds = 120s = 2 minutes var/cuff_sound = 'sound/weapons/handcuffs.ogg' var/cuff_type = "handcuffs" + sprite_sheets = list("Resomi" = 'icons/mob/species/resomi/handcuffs.dmi') /obj/item/weapon/handcuffs/attack(var/mob/living/carbon/C, var/mob/living/user) diff --git a/code/game/objects/items/weapons/storage/backpack.dm b/code/game/objects/items/weapons/storage/backpack.dm index 227191d617..d3c26d453c 100644 --- a/code/game/objects/items/weapons/storage/backpack.dm +++ b/code/game/objects/items/weapons/storage/backpack.dm @@ -17,6 +17,9 @@ slot_l_hand_str = "backpack", slot_r_hand_str = "backpack", ) + sprite_sheets = list( + "Resomi" = 'icons/mob/species/resomi/back.dmi' + ) w_class = 4 slot_flags = SLOT_BACK max_w_class = 3 diff --git a/code/game/objects/items/weapons/storage/belt.dm b/code/game/objects/items/weapons/storage/belt.dm index 7080cd1931..6870d2f13d 100644 --- a/code/game/objects/items/weapons/storage/belt.dm +++ b/code/game/objects/items/weapons/storage/belt.dm @@ -6,7 +6,7 @@ item_state = "utility" slot_flags = SLOT_BELT attack_verb = list("whipped", "lashed", "disciplined") - + sprite_sheets = list("Resomi" = 'icons/mob/species/resomi/belt.dmi') /obj/item/weapon/storage/update_icon() if (ismob(src.loc)) diff --git a/code/game/objects/items/weapons/tanks/tanks.dm b/code/game/objects/items/weapons/tanks/tanks.dm index 8746b5142a..43f40b4c23 100644 --- a/code/game/objects/items/weapons/tanks/tanks.dm +++ b/code/game/objects/items/weapons/tanks/tanks.dm @@ -15,6 +15,10 @@ throw_speed = 1 throw_range = 4 + sprite_sheets = list( + "Resomi" = 'icons/mob/species/resomi/back.dmi' + ) + var/datum/gas_mixture/air_contents = null var/distribute_pressure = ONE_ATMOSPHERE var/integrity = 3 diff --git a/code/modules/clothing/head/collectable.dm b/code/modules/clothing/head/collectable.dm index bc6c993351..35c48d58e7 100644 --- a/code/modules/clothing/head/collectable.dm +++ b/code/modules/clothing/head/collectable.dm @@ -9,7 +9,10 @@ name = "ultra rare hat" desc = "an ultra rare hat. It commands a certain respect." icon_state = "petehat" - sprite_sheets = list("Vox" = 'icons/mob/species/vox/head.dmi') + sprite_sheets = list( + "Vox" = 'icons/mob/species/vox/head.dmi', + "Resomi" = 'icons/mob/species/resomi/head.dmi' + ) /obj/item/clothing/head/collectable/slime name = "collectable slime cap!" diff --git a/code/modules/clothing/head/helmet.dm b/code/modules/clothing/head/helmet.dm index 795e413473..d7024f967a 100644 --- a/code/modules/clothing/head/helmet.dm +++ b/code/modules/clothing/head/helmet.dm @@ -59,7 +59,7 @@ icon_state = "swathelm" sprite_sheets = list( "Tajara" = 'icons/mob/species/tajaran/helmet.dmi', - "Unathi" = 'icons/mob/species/unathi/helmet.dmi', + "Unathi" = 'icons/mob/species/unathi/helmet.dmi' ) armor = list(melee = 62, bullet = 50, laser = 50,energy = 35, bomb = 10, bio = 2, rad = 0) diff --git a/code/modules/clothing/masks/breath.dm b/code/modules/clothing/masks/breath.dm index 78bd0f2163..f966b37f29 100644 --- a/code/modules/clothing/masks/breath.dm +++ b/code/modules/clothing/masks/breath.dm @@ -8,11 +8,6 @@ w_class = 2 gas_transfer_coefficient = 0.10 permeability_coefficient = 0.50 - - sprite_sheets = list( - "Vox" = 'icons/mob/species/vox/masks.dmi' - ) - var/hanging = 0 /obj/item/clothing/mask/breath/proc/adjust_mask(mob/user) diff --git a/code/modules/clothing/spacesuits/alien.dm b/code/modules/clothing/spacesuits/alien.dm index 9d1156da9f..9dfa5418e5 100644 --- a/code/modules/clothing/spacesuits/alien.dm +++ b/code/modules/clothing/spacesuits/alien.dm @@ -40,14 +40,12 @@ heat_protection = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS max_heat_protection_temperature = SPACE_SUIT_MAX_HEAT_PROTECTION_TEMPERATURE species_restricted = list("Vox") - sprite_sheets = list("Vox" = 'icons/mob/species/vox/suit.dmi') /obj/item/clothing/head/helmet/space/vox armor = list(melee = 60, bullet = 50, laser = 30, energy = 15, bomb = 30, bio = 30, rad = 30) siemens_coefficient = 0.6 item_flags = STOPPRESSUREDAMAGE species_restricted = list("Vox") - sprite_sheets = list("Vox" = 'icons/mob/species/vox/head.dmi') /obj/item/clothing/head/helmet/space/vox/pressure name = "alien helmet" @@ -122,7 +120,7 @@ siemens_coefficient = 0 permeability_coefficient = 0.05 species_restricted = list("Vox") - sprite_sheets = list("Vox" = 'icons/mob/species/vox/gloves.dmi') + /obj/item/clothing/shoes/magboots/vox desc = "A pair of heavy, jagged armoured foot pieces, seemingly suitable for a velociraptor." diff --git a/code/modules/clothing/spacesuits/rig/rig_pieces.dm b/code/modules/clothing/spacesuits/rig/rig_pieces.dm index 0a6b029f15..8fb63bb169 100644 --- a/code/modules/clothing/spacesuits/rig/rig_pieces.dm +++ b/code/modules/clothing/spacesuits/rig/rig_pieces.dm @@ -10,7 +10,11 @@ heat_protection = HEAD|FACE|EYES cold_protection = HEAD|FACE|EYES brightness_on = 4 - sprite_sheets = list("Tajara" = 'icons/mob/species/tajaran/helmet.dmi',"Skrell" = 'icons/mob/species/skrell/helmet.dmi',"Unathi" = 'icons/mob/species/unathi/helmet.dmi') + sprite_sheets = list( + "Tajara" = 'icons/mob/species/tajaran/helmet.dmi', + "Skrell" = 'icons/mob/species/skrell/helmet.dmi', + "Unathi" = 'icons/mob/species/unathi/helmet.dmi' + ) species_restricted = null /obj/item/clothing/gloves/rig @@ -44,7 +48,10 @@ breach_threshold = 38 resilience = 0.2 can_breach = 1 - sprite_sheets = list("Tajara" = 'icons/mob/species/tajaran/suit.dmi',"Unathi" = 'icons/mob/species/unathi/suit.dmi') + sprite_sheets = list( + "Tajara" = 'icons/mob/species/tajaran/suit.dmi', + "Unathi" = 'icons/mob/species/unathi/suit.dmi' + ) supporting_limbs = list() //TODO: move this to modules diff --git a/code/modules/clothing/suits/jobs.dm b/code/modules/clothing/suits/jobs.dm index e4188212c7..dfe81ca755 100644 --- a/code/modules/clothing/suits/jobs.dm +++ b/code/modules/clothing/suits/jobs.dm @@ -11,7 +11,7 @@ blood_overlay_type = "armor" body_parts_covered = 0 allowed = list (/obj/item/weapon/reagent_containers/spray/plantbgone,/obj/item/device/analyzer/plant_analyzer,/obj/item/seeds,/obj/item/weapon/reagent_containers/glass/fertilizer,/obj/item/weapon/material/minihoe) - sprite_sheets = list("Vox" = 'icons/mob/species/vox/suit.dmi') + //Captain /obj/item/clothing/suit/captunic name = "captain's parade tunic" @@ -20,7 +20,6 @@ item_state = "captunic" body_parts_covered = UPPER_TORSO|ARMS flags_inv = HIDEJUMPSUIT - sprite_sheets = list("Vox" = 'icons/mob/species/vox/suit.dmi') /obj/item/clothing/suit/captunic/capjacket name = "captain's uniform jacket" @@ -37,7 +36,6 @@ icon_state = "chaplain_hoodie" item_state = "chaplain_hoodie" body_parts_covered = UPPER_TORSO|ARMS - sprite_sheets = list("Vox" = 'icons/mob/species/vox/suit.dmi') //Chaplain /obj/item/clothing/suit/nun @@ -47,7 +45,6 @@ item_state = "nun" body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS flags_inv = HIDESHOES|HIDEJUMPSUIT - sprite_sheets = list("Vox" = 'icons/mob/species/vox/suit.dmi') //Chef /obj/item/clothing/suit/chef @@ -59,7 +56,6 @@ permeability_coefficient = 0.50 body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS allowed = list (/obj/item/weapon/material/knife) - sprite_sheets = list("Vox" = 'icons/mob/species/vox/suit.dmi') //Chef /obj/item/clothing/suit/chef/classic @@ -102,7 +98,6 @@ body_parts_covered = UPPER_TORSO|ARMS allowed = list(/obj/item/weapon/tank/emergency_oxygen, /obj/item/device/flashlight,/obj/item/weapon/gun/energy,/obj/item/weapon/gun/projectile,/obj/item/ammo_magazine,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/handcuffs,/obj/item/weapon/storage/fancy/cigarettes,/obj/item/weapon/flame/lighter,/obj/item/device/detective_scanner,/obj/item/device/taperecorder) armor = list(melee = 50, bullet = 10, laser = 25, energy = 10, bomb = 0, bio = 0, rad = 0) - sprite_sheets = list("Vox" = 'icons/mob/species/vox/suit.dmi') /obj/item/clothing/suit/storage/det_suit/black icon_state = "detective2" @@ -138,8 +133,6 @@ /obj/item/clothing/mask/gas, /obj/item/taperoll/engineering) body_parts_covered = UPPER_TORSO - sprite_sheets = list("Vox" = 'icons/mob/species/vox/suit.dmi') - //Lawyer /obj/item/clothing/suit/storage/toggle/lawyer/bluejacket name = "Blue Suit Jacket" diff --git a/code/modules/clothing/suits/labcoat.dm b/code/modules/clothing/suits/labcoat.dm index d176574757..be8cddd310 100644 --- a/code/modules/clothing/suits/labcoat.dm +++ b/code/modules/clothing/suits/labcoat.dm @@ -9,7 +9,6 @@ body_parts_covered = UPPER_TORSO|ARMS allowed = list(/obj/item/device/analyzer,/obj/item/stack/medical,/obj/item/weapon/dnainjector,/obj/item/weapon/reagent_containers/dropper,/obj/item/weapon/reagent_containers/syringe,/obj/item/weapon/reagent_containers/hypospray,/obj/item/device/healthanalyzer,/obj/item/device/flashlight/pen,/obj/item/weapon/reagent_containers/glass/bottle,/obj/item/weapon/reagent_containers/glass/beaker,/obj/item/weapon/reagent_containers/pill,/obj/item/weapon/storage/pill_bottle,/obj/item/weapon/paper) armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 50, rad = 0) - sprite_sheets = list("Vox" = 'icons/mob/species/vox/suit.dmi') /obj/item/clothing/suit/storage/toggle/labcoat/red name = "red labcoat" diff --git a/code/modules/mob/holder.dm b/code/modules/mob/holder.dm index 71a19a2de2..c327f1c435 100644 --- a/code/modules/mob/holder.dm +++ b/code/modules/mob/holder.dm @@ -6,7 +6,12 @@ var/list/holder_mob_icon_cache = list() desc = "You shouldn't ever see this." icon = 'icons/obj/objects.dmi' slot_flags = SLOT_HEAD - sprite_sheets = list("Vox" = 'icons/mob/species/vox/head.dmi') + + sprite_sheets = list( + "Vox" = 'icons/mob/species/vox/head.dmi', + "Resomi" = 'icons/mob/species/resomi/head.dmi' + ) + origin_tech = null item_icons = list( slot_l_hand_str = 'icons/mob/items/lefthand_holder.dmi', diff --git a/code/modules/mob/living/carbon/human/species/species_attack.dm b/code/modules/mob/living/carbon/human/species/species_attack.dm index afdb202f6a..365109d7cf 100644 --- a/code/modules/mob/living/carbon/human/species/species_attack.dm +++ b/code/modules/mob/living/carbon/human/species/species_attack.dm @@ -69,4 +69,15 @@ /datum/unarmed_attack/slime_glomp/apply_effects() //Todo, maybe have a chance of causing an electrical shock? - return \ No newline at end of file + return + +/datum/unarmed_attack/stomp/weak + attack_verb = list("jumped on") + +/datum/unarmed_attack/stomp/weak/get_unarmed_damage() + return damage + +/datum/unarmed_attack/stomp/weak/show_attack(var/mob/living/carbon/human/user, var/mob/living/carbon/human/target, var/zone, var/attack_damage) + var/obj/item/organ/external/affecting = target.get_organ(zone) + user.visible_message("[user] jumped up and down on \the [target]'s [affecting.name]!") + playsound(user.loc, attack_sound, 25, 1, -1) \ No newline at end of file diff --git a/code/modules/mob/living/carbon/human/species/station/resomi.dm b/code/modules/mob/living/carbon/human/species/station/resomi.dm new file mode 100644 index 0000000000..8cde5eeb79 --- /dev/null +++ b/code/modules/mob/living/carbon/human/species/station/resomi.dm @@ -0,0 +1,107 @@ +/datum/species/resomi + name = "Resomi" + name_plural = "Resomii" + blurb = "A race of feathered raptors who developed on a cold world, almost \ + outside of the Goldilocks zone. Extremely fragile, they developed hunting skills \ + that emphasized taking out their prey without themselves getting hit. They are an \ + advanced post-scarcity culture on good terms with Skrellian and Human interests." + + num_alternate_languages = 2 + secondary_langs = list("Sol Common") + + blood_color = "#D514F7" + flesh_color = "#5F7BB0" + base_color = "#001144" + + icobase = 'icons/mob/human_races/r_resomi.dmi' + deform = 'icons/mob/human_races/r_resomi.dmi' + eyes = "eyes_resomi" + slowdown = -2 + total_health = 50 + brute_mod = 1.35 + burn_mod = 1.35 + is_small = 1 + holder_type = /obj/item/weapon/holder/human + short_sighted = 1 + gluttonous = 1 + + spawn_flags = CAN_JOIN | IS_WHITELISTED + appearance_flags = HAS_HAIR_COLOR | HAS_SKIN_COLOR | HAS_EYE_COLOR + bump_flag = MONKEY + swap_flags = MONKEY|SLIME|SIMPLE_ANIMAL + push_flags = MONKEY|SLIME|SIMPLE_ANIMAL|ALIEN + + cold_level_1 = 180 + cold_level_2 = 130 + cold_level_3 = 70 + heat_level_1 = 320 + heat_level_2 = 370 + heat_level_3 = 600 + heat_discomfort_level = 292 + heat_discomfort_strings = list( + "Your feathers prickle in the heat.", + "You feel uncomfortably warm.", + ) + cold_discomfort_level = 180 + + has_limbs = list( + "chest" = list("path" = /obj/item/organ/external/chest), + "groin" = list("path" = /obj/item/organ/external/groin/resomi), + "head" = list("path" = /obj/item/organ/external/head), + "l_arm" = list("path" = /obj/item/organ/external/arm), + "r_arm" = list("path" = /obj/item/organ/external/arm/right), + "l_leg" = list("path" = /obj/item/organ/external/leg), + "r_leg" = list("path" = /obj/item/organ/external/leg/right), + "l_hand" = list("path" = /obj/item/organ/external/hand/resomi), + "r_hand" = list("path" = /obj/item/organ/external/hand/right/resomi), + "l_foot" = list("path" = /obj/item/organ/external/foot/resomi), + "r_foot" = list("path" = /obj/item/organ/external/foot/right/resomi) + ) + + has_organ = list( + "heart" = /obj/item/organ/heart, + "lungs" = /obj/item/organ/lungs, + "liver" = /obj/item/organ/liver, + "kidneys" = /obj/item/organ/kidneys, + "brain" = /obj/item/organ/brain, + "eyes" = /obj/item/organ/eyes + ) + + unarmed_types = list( + /datum/unarmed_attack/bite/sharp, + /datum/unarmed_attack/claws, + /datum/unarmed_attack/stomp/weak + ) + + var/shock_cap = 30 + var/hallucination_cap = 25 + +// I'm... so... ronrery, so ronery... +/datum/species/resomi/handle_environment_special(var/mob/living/carbon/human/H) + + // If they're dead or unconcious they're a bit beyond this kind of thing. + if(H.stat) + return + + // No point processing if we're already stressing the hell out. + if(H.hallucination >= hallucination_cap && H.shock_stage >= shock_cap) + return + + // Check for company. + for(var/mob/living/M in viewers(H)) + if(M == H || M.stat == DEAD || M.invisibility > H.see_invisible) + continue + if(M.faction == "neutral" || M.faction == H.faction) + return + + // No company? Suffer :( + if(H.shock_stage < shock_cap) + H.shock_stage += 1 + if(H.shock_stage >= shock_cap && H.hallucination < hallucination_cap) + H.hallucination += 2.5 + +/datum/species/resomi/get_vision_flags(var/mob/living/carbon/human/H) + if(!(H.sdisabilities & DEAF) && !H.ear_deaf) + return SEE_SELF|SEE_MOBS + else + return SEE_SELF diff --git a/code/modules/mob/living/carbon/human/species/station/station.dm b/code/modules/mob/living/carbon/human/species/station/station.dm index 032cf51db9..d8db8c7ae3 100644 --- a/code/modules/mob/living/carbon/human/species/station/station.dm +++ b/code/modules/mob/living/carbon/human/species/station/station.dm @@ -12,7 +12,7 @@ secondary_langs = list("Sol Common") spawn_flags = CAN_JOIN - appearance_flags = HAS_SKIN_TONE | HAS_LIPS | HAS_UNDERWEAR | HAS_EYE_COLOR + appearance_flags = HAS_HAIR_COLOR | HAS_SKIN_TONE | HAS_LIPS | HAS_UNDERWEAR | HAS_EYE_COLOR /datum/species/unathi name = "Unathi" @@ -45,7 +45,7 @@ heat_level_3 = 1100 //Default 1000 spawn_flags = CAN_JOIN | IS_WHITELISTED - appearance_flags = HAS_LIPS | HAS_UNDERWEAR | HAS_SKIN_COLOR | HAS_EYE_COLOR + appearance_flags = HAS_HAIR_COLOR | HAS_LIPS | HAS_UNDERWEAR | HAS_SKIN_COLOR | HAS_EYE_COLOR flesh_color = "#34AF10" @@ -103,7 +103,7 @@ primitive_form = "Farwa" spawn_flags = CAN_JOIN | IS_WHITELISTED - appearance_flags = HAS_LIPS | HAS_UNDERWEAR | HAS_SKIN_COLOR | HAS_EYE_COLOR + appearance_flags = HAS_HAIR_COLOR | HAS_LIPS | HAS_UNDERWEAR | HAS_SKIN_COLOR | HAS_EYE_COLOR flesh_color = "#AFA59E" base_color = "#333333" @@ -137,7 +137,7 @@ secondary_langs = list("Skrellian") spawn_flags = CAN_JOIN | IS_WHITELISTED - appearance_flags = HAS_LIPS | HAS_UNDERWEAR | HAS_SKIN_COLOR + appearance_flags = HAS_HAIR_COLOR | HAS_LIPS | HAS_UNDERWEAR | HAS_SKIN_COLOR flesh_color = "#8CD7A3" blood_color = "#1D2CBF" diff --git a/code/modules/mob/new_player/sprite_accessories.dm b/code/modules/mob/new_player/sprite_accessories.dm index dde2d734c5..e068b2c214 100644 --- a/code/modules/mob/new_player/sprite_accessories.dm +++ b/code/modules/mob/new_player/sprite_accessories.dm @@ -57,6 +57,21 @@ name = "Short Hair" // try to capatilize the names please~ icon_state = "hair_a" // you do not need to define _s or _l sub-states, game automatically does this for you + resomi + name = "Resomi Plumage" + icon_state = "resomi_default" + species_allowed = list("Resomi") + + resomi_ears + name = "Resomi Ears" + icon_state = "resomi_ears" + species_allowed = list("Resomi") + + resomi_excited + name = "Resomi Spiky" + icon_state = "resomi_spiky" + species_allowed = list("Resomi") + cut name = "Cut Hair" icon_state = "hair_c" diff --git a/code/modules/organs/subtypes/resomi.dm b/code/modules/organs/subtypes/resomi.dm new file mode 100644 index 0000000000..e9c6c3cf38 --- /dev/null +++ b/code/modules/organs/subtypes/resomi.dm @@ -0,0 +1,10 @@ +/obj/item/organ/external/foot/resomi + body_hair = "feathers" +/obj/item/organ/external/foot/right/resomi + body_hair = "feathers" +/obj/item/organ/external/hand/resomi + body_hair = "feathers" +/obj/item/organ/external/hand/right/resomi + body_hair = "feathers" +/obj/item/organ/external/groin/resomi + body_hair = "feathers" diff --git a/icons/mob/human_face.dmi b/icons/mob/human_face.dmi index cf23b8482b..1974fadd93 100644 Binary files a/icons/mob/human_face.dmi and b/icons/mob/human_face.dmi differ diff --git a/icons/mob/human_races/r_resomi.dmi b/icons/mob/human_races/r_resomi.dmi new file mode 100644 index 0000000000..bbcbe14c15 Binary files /dev/null and b/icons/mob/human_races/r_resomi.dmi differ diff --git a/icons/mob/species/resomi/back.dmi b/icons/mob/species/resomi/back.dmi new file mode 100644 index 0000000000..66455ffb3c Binary files /dev/null and b/icons/mob/species/resomi/back.dmi differ diff --git a/icons/mob/species/resomi/belt.dmi b/icons/mob/species/resomi/belt.dmi new file mode 100644 index 0000000000..19a4a78cd9 Binary files /dev/null and b/icons/mob/species/resomi/belt.dmi differ diff --git a/icons/mob/species/resomi/ears.dmi b/icons/mob/species/resomi/ears.dmi new file mode 100644 index 0000000000..5ebdd8a5ee Binary files /dev/null and b/icons/mob/species/resomi/ears.dmi differ diff --git a/icons/mob/species/resomi/eyes.dmi b/icons/mob/species/resomi/eyes.dmi new file mode 100644 index 0000000000..17a41de747 Binary files /dev/null and b/icons/mob/species/resomi/eyes.dmi differ diff --git a/icons/mob/species/resomi/gloves.dmi b/icons/mob/species/resomi/gloves.dmi new file mode 100644 index 0000000000..7ff6c97e69 Binary files /dev/null and b/icons/mob/species/resomi/gloves.dmi differ diff --git a/icons/mob/species/resomi/handcuffs.dmi b/icons/mob/species/resomi/handcuffs.dmi new file mode 100644 index 0000000000..12b35d4e9c Binary files /dev/null and b/icons/mob/species/resomi/handcuffs.dmi differ diff --git a/icons/mob/species/resomi/head.dmi b/icons/mob/species/resomi/head.dmi new file mode 100644 index 0000000000..1bb1cf3fc5 Binary files /dev/null and b/icons/mob/species/resomi/head.dmi differ diff --git a/icons/mob/species/resomi/id.dmi b/icons/mob/species/resomi/id.dmi new file mode 100644 index 0000000000..fb4d5b6e58 Binary files /dev/null and b/icons/mob/species/resomi/id.dmi differ diff --git a/icons/mob/species/resomi/masks.dmi b/icons/mob/species/resomi/masks.dmi new file mode 100644 index 0000000000..6fba9ed578 Binary files /dev/null and b/icons/mob/species/resomi/masks.dmi differ diff --git a/icons/mob/species/resomi/shoes.dmi b/icons/mob/species/resomi/shoes.dmi new file mode 100644 index 0000000000..f901a71cb8 Binary files /dev/null and b/icons/mob/species/resomi/shoes.dmi differ diff --git a/icons/mob/species/resomi/suit.dmi b/icons/mob/species/resomi/suit.dmi new file mode 100644 index 0000000000..e846a35cc6 Binary files /dev/null and b/icons/mob/species/resomi/suit.dmi differ diff --git a/icons/mob/species/resomi/uniform.dmi b/icons/mob/species/resomi/uniform.dmi new file mode 100644 index 0000000000..f6b2333729 Binary files /dev/null and b/icons/mob/species/resomi/uniform.dmi differ