adds more markings and changes the way digitigrade markings are handled
3
code/__defines/mobs_ch.dm
Normal file
@@ -0,0 +1,3 @@
|
||||
#define MARKING_NONDIGI_ONLY (1 << 0)
|
||||
#define MARKING_DIGITIGRADE_ONLY (1 << 1)
|
||||
#define MARKING_ALL_LEGS MARKING_NONDIGI_ONLY|MARKING_DIGITIGRADE_ONLY
|
||||
@@ -14,6 +14,24 @@
|
||||
do_colouration = 1
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
|
||||
/datum/sprite_accessory/ears/protogen
|
||||
name = "Protogen"
|
||||
desc = ""
|
||||
icon = 'icons/mob/vore/ears_ch.dmi'
|
||||
icon_state = "protogen"
|
||||
extra_overlay = "protogen_fluff"
|
||||
do_colouration = 1
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
|
||||
/datum/sprite_accessory/ears/miqote
|
||||
name = "Miqo'te"
|
||||
desc = ""
|
||||
icon = 'icons/mob/vore/ears_ch.dmi'
|
||||
icon_state = "miqote"
|
||||
extra_overlay = "miqote_inner"
|
||||
do_colouration = 1
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
|
||||
/datum/sprite_accessory/ears/vale
|
||||
name = "VALE Model Ear Coloring"
|
||||
desc = ""
|
||||
|
||||
@@ -1,3 +1,7 @@
|
||||
/datum/sprite_accessory/marking
|
||||
var/digitigrade_acceptance = MARKING_NONDIGI_ONLY
|
||||
var/digitigrade_icon = 'icons/mob/human_races/markings_digi_ch.dmi'
|
||||
|
||||
/datum/sprite_accessory/marking/ch
|
||||
icon = 'icons/mob/human_races/markings_ch.dmi'
|
||||
|
||||
@@ -149,65 +153,196 @@
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
body_parts = list(BP_HEAD)
|
||||
|
||||
/datum/sprite_accessory/marking/ch/protogen_snout
|
||||
name = "Protogen Snout"
|
||||
icon_state = "protogen_snout"
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
body_parts = list(BP_HEAD)
|
||||
|
||||
/datum/sprite_accessory/marking/ch/hshark_snout
|
||||
name = "HShark Snout"
|
||||
icon_state = "hshark_snout"
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
body_parts = list(BP_HEAD)
|
||||
|
||||
/datum/sprite_accessory/marking/ch/hshark_head
|
||||
name = "HShark Head"
|
||||
icon_state = "hshark"
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
body_parts = list(BP_HEAD)
|
||||
|
||||
/datum/sprite_accessory/marking/ch/ram_horns
|
||||
name = "Ram Horns"
|
||||
icon_state = "ram_horns"
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
body_parts = list(BP_HEAD)
|
||||
|
||||
/datum/sprite_accessory/marking/ch/neckfluff
|
||||
name = "Neck Fluff"
|
||||
icon_state = "neckfluff"
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
body_parts = list(BP_HEAD)
|
||||
|
||||
/datum/sprite_accessory/marking/ch/husky_chest
|
||||
name = "Husky Chest"
|
||||
icon_state = "husky"
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
body_parts = list(BP_TORSO, BP_GROIN)
|
||||
|
||||
/datum/sprite_accessory/marking/ch/fox_head
|
||||
name = "Fox Head"
|
||||
icon_state = "fox"
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
body_parts = list(BP_HEAD)
|
||||
|
||||
/datum/sprite_accessory/marking/ch/fox_chest
|
||||
name = "Fox Chest"
|
||||
icon_state = "fox"
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
body_parts = list(BP_TORSO, BP_GROIN)
|
||||
|
||||
/datum/sprite_accessory/marking/ch/fox_hsocks
|
||||
name = "Fox Hand Socks"
|
||||
icon_state = "fox"
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
body_parts = list(BP_R_ARM, BP_R_HAND, BP_L_ARM, BP_L_HAND)
|
||||
|
||||
/datum/sprite_accessory/marking/ch/fox_lsocks
|
||||
name = "Fox Leg Socks"
|
||||
icon_state = "fox"
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
body_parts = list(BP_R_LEG,BP_R_FOOT,BP_L_LEG,BP_L_FOOT)
|
||||
digitigrade_acceptance = MARKING_ALL_LEGS
|
||||
|
||||
/datum/sprite_accessory/marking/ch/tiger_head
|
||||
name = "Tiger Head"
|
||||
icon_state = "tiger"
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
body_parts = list(BP_HEAD)
|
||||
|
||||
/datum/sprite_accessory/marking/ch/tiger_chest
|
||||
name = "Tiger Chest"
|
||||
icon_state = "tiger"
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
body_parts = list(BP_TORSO, BP_GROIN)
|
||||
|
||||
/datum/sprite_accessory/marking/ch/tiger_arms
|
||||
name = "Tiger Arms"
|
||||
icon_state = "tiger"
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
body_parts = list(BP_R_ARM, BP_R_HAND, BP_L_ARM, BP_L_HAND)
|
||||
|
||||
/datum/sprite_accessory/marking/ch/tiger_legs
|
||||
name = "Tiger Legs"
|
||||
icon_state = "tiger"
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
body_parts = list(BP_R_LEG,BP_R_FOOT,BP_L_LEG,BP_L_FOOT)
|
||||
digitigrade_acceptance = MARKING_ALL_LEGS
|
||||
|
||||
/datum/sprite_accessory/marking/ch/gradient_arms
|
||||
name = "Gradient Arms"
|
||||
icon_state = "gradient"
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
body_parts = list(BP_R_ARM, BP_R_HAND, BP_L_ARM, BP_L_HAND)
|
||||
|
||||
/datum/sprite_accessory/marking/ch/gradient_legs
|
||||
name = "Gradient Legs"
|
||||
icon_state = "gradient"
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
body_parts = list(BP_R_LEG,BP_R_FOOT,BP_L_LEG,BP_L_FOOT)
|
||||
digitigrade_acceptance = MARKING_ALL_LEGS
|
||||
|
||||
/datum/sprite_accessory/marking/ch/hawk_talons
|
||||
name = "Hawk Talons (Legs)"
|
||||
icon_state = "hawktalon"
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
body_parts = list(BP_R_LEG,BP_R_FOOT,BP_L_LEG,BP_L_FOOT)
|
||||
digitigrade_acceptance = MARKING_ALL_LEGS
|
||||
|
||||
/datum/sprite_accessory/marking/ch/deer_hooves
|
||||
name = "Deer Hooves"
|
||||
icon_state = "deerhoof"
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
body_parts = list(BP_R_FOOT, BP_L_FOOT)
|
||||
digitigrade_acceptance = MARKING_ALL_LEGS
|
||||
|
||||
/datum/sprite_accessory/marking/ch/frills_simple
|
||||
name = "Frills (Simple)"
|
||||
icon_state = "frills_simple"
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
body_parts = list(BP_HEAD)
|
||||
|
||||
/datum/sprite_accessory/marking/ch/frills_short
|
||||
name = "Frills (Short)"
|
||||
icon_state = "frills_short"
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
body_parts = list(BP_HEAD)
|
||||
|
||||
/datum/sprite_accessory/marking/ch/frills_aquatic
|
||||
name = "Frills (Aquatic)"
|
||||
icon_state = "frills_aqua"
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
body_parts = list(BP_HEAD)
|
||||
|
||||
/datum/sprite_accessory/marking/ch/guilmonhead
|
||||
name = "Guilmon head"
|
||||
icon_state = "guilmon_head"
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
body_parts = list(BP_HEAD)
|
||||
name = "Guilmon head"
|
||||
icon_state = "guilmon_head"
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
body_parts = list(BP_HEAD)
|
||||
|
||||
/datum/sprite_accessory/marking/ch/guilmonchest
|
||||
name = "Guilmon Chest"
|
||||
icon_state = "guilmon_chest"
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
body_parts = list(BP_TORSO)
|
||||
name = "Guilmon Chest"
|
||||
icon_state = "guilmon_chest"
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
body_parts = list(BP_TORSO)
|
||||
|
||||
/datum/sprite_accessory/marking/ch/guilmonchestmarking
|
||||
name = "Guilmon Chest Markings"
|
||||
icon_state = "guilmon_marking"
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
body_parts = list(BP_TORSO)
|
||||
name = "Guilmon Chest Markings"
|
||||
icon_state = "guilmon_marking"
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
body_parts = list(BP_TORSO)
|
||||
|
||||
/datum/sprite_accessory/marking/ch/guilmonarms
|
||||
name = "Guilmon arms"
|
||||
icon_state = "guilmon"
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
body_parts = list(BP_R_ARM,BP_L_ARM,BP_R_HAND,BP_L_HAND)
|
||||
name = "Guilmon arms"
|
||||
icon_state = "guilmon"
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
body_parts = list(BP_R_ARM,BP_L_ARM,BP_R_HAND,BP_L_HAND)
|
||||
|
||||
/datum/sprite_accessory/marking/ch/guilmonRLeg
|
||||
name = "Guilmon Right leg"
|
||||
icon_state = "guilmon"
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
body_parts = list(BP_R_LEG)
|
||||
name = "Guilmon Right leg"
|
||||
icon_state = "guilmon"
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
body_parts = list(BP_R_LEG)
|
||||
|
||||
/datum/sprite_accessory/marking/ch/guilmonLleg
|
||||
name = "Guilmon Left leg"
|
||||
icon_state = "guilmon"
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
body_parts = list(BP_L_LEG)
|
||||
name = "Guilmon Left leg"
|
||||
icon_state = "guilmon"
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
body_parts = list(BP_L_LEG)
|
||||
|
||||
/datum/sprite_accessory/marking/ch/guilmondigiRleg1
|
||||
name = "Guilmon digigrade right leg 1"
|
||||
icon_state = "guilmon_digitigrade_1"
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
body_parts = list(BP_R_LEG)
|
||||
name = "Guilmon digigrade right leg 1"
|
||||
icon_state = "guilmon_digitigrade_1"
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
body_parts = list(BP_R_LEG)
|
||||
|
||||
/datum/sprite_accessory/marking/ch/guilmondigiLleg1
|
||||
name = "Guilmon digigrade left leg 1"
|
||||
icon_state = "guilmon_digitigrade_1"
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
body_parts = list(BP_L_LEG)
|
||||
name = "Guilmon digigrade left leg 1"
|
||||
icon_state = "guilmon_digitigrade_1"
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
body_parts = list(BP_L_LEG)
|
||||
|
||||
/datum/sprite_accessory/marking/ch/guilmondigiRleg2
|
||||
name = "Guilmon digigrade right leg 2"
|
||||
icon_state = "guilmon_digitigrade_2"
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
body_parts = list(BP_R_LEG)
|
||||
name = "Guilmon digigrade right leg 2"
|
||||
icon_state = "guilmon_digitigrade_2"
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
body_parts = list(BP_R_LEG)
|
||||
|
||||
/datum/sprite_accessory/marking/ch/guilmondigiLleg2
|
||||
name = "Guilmon digigrade left leg 2"
|
||||
icon_state = "guilmon_digitigrade_2"
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
body_parts = list(BP_L_LEG)
|
||||
name = "Guilmon digigrade left leg 2"
|
||||
icon_state = "guilmon_digitigrade_2"
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
body_parts = list(BP_L_LEG)
|
||||
|
||||
/datum/sprite_accessory/tail/special/orca_tail
|
||||
name = "Orca Tail"
|
||||
@@ -332,6 +467,7 @@
|
||||
//Digitigrade markings
|
||||
/datum/sprite_accessory/marking/digi
|
||||
icon = 'icons/mob/human_races/markings_digi_ch.dmi'
|
||||
digitigrade_acceptance = MARKING_DIGITIGRADE_ONLY
|
||||
|
||||
/datum/sprite_accessory/marking/digi/fullleft
|
||||
name = "Digitigrade Full Left Leg(Only works with digitigrade legs)"
|
||||
|
||||
@@ -22,6 +22,17 @@
|
||||
icon = 'icons/mob/vore/tails_ch.dmi'
|
||||
icon_state = "zorgoia"
|
||||
extra_overlay = "zorgoia_fluff"
|
||||
extra_overlay2 = "zorgoia_fluff_top"
|
||||
do_colouration = 1
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
|
||||
/datum/sprite_accessory/tail/leopard
|
||||
name = "Leopard tail, dual-color (vwag)"
|
||||
icon = 'icons/mob/vore/tails_ch.dmi'
|
||||
icon_state = "leopard"
|
||||
ani_state = "leopard_w"
|
||||
extra_overlay = "leopard_spots"
|
||||
extra_overlay_w = "leopard_spots_w"
|
||||
do_colouration = 1
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
|
||||
@@ -144,17 +155,17 @@
|
||||
extra_overlay = "bigringtail_markings"
|
||||
|
||||
/datum/sprite_accessory/tail/longtail/desert_nightstalker
|
||||
name = "Desert Nightstalker Tail (vwag)"
|
||||
icon = 'icons/mob/vore/taurs_ch.dmi'
|
||||
icon_state = "nightstalker_desert"
|
||||
ani_state = "nightstalker_desert_w"
|
||||
do_colouration = 0 // We're not coloring this, these are pre-colored
|
||||
color_blend_mode = ICON_ADD
|
||||
name = "Desert Nightstalker Tail (vwag)"
|
||||
icon = 'icons/mob/vore/taurs_ch.dmi'
|
||||
icon_state = "nightstalker_desert"
|
||||
ani_state = "nightstalker_desert_w"
|
||||
do_colouration = 0 // We're not coloring this, these are pre-colored
|
||||
color_blend_mode = ICON_ADD
|
||||
|
||||
/datum/sprite_accessory/tail/longtail/diamondback_nightstalker
|
||||
name = "Diamondback Nightstalker Tail (dual-color, vwag)"
|
||||
icon = 'icons/mob/vore/taurs_ch.dmi'
|
||||
icon_state = "nightstalker_diamondback"
|
||||
ani_state = "nightstalker_diamondback_w"
|
||||
extra_overlay = "nightstalker_diamondback_markings"
|
||||
extra_overlay_w = "nightstalker_diamondback_markings_w"
|
||||
name = "Diamondback Nightstalker Tail (dual-color, vwag)"
|
||||
icon = 'icons/mob/vore/taurs_ch.dmi'
|
||||
icon_state = "nightstalker_diamondback"
|
||||
ani_state = "nightstalker_diamondback_w"
|
||||
extra_overlay = "nightstalker_diamondback_markings"
|
||||
extra_overlay_w = "nightstalker_diamondback_markings_w"
|
||||
|
||||
|
Before Width: | Height: | Size: 35 KiB After Width: | Height: | Size: 39 KiB |
|
Before Width: | Height: | Size: 3.8 KiB After Width: | Height: | Size: 14 KiB |
|
Before Width: | Height: | Size: 2.6 KiB After Width: | Height: | Size: 2.9 KiB |
|
Before Width: | Height: | Size: 5.5 KiB After Width: | Height: | Size: 8.0 KiB |
@@ -4,10 +4,11 @@
|
||||
// preferentially take digitigrade value from owner if available, THEN DNA.
|
||||
// this allows limbs to be set properly when being printed in the bioprinter without an owner
|
||||
// this also allows the preview mannequin to update properly because customisation topic calls don't call a DNA check
|
||||
var/check_digi = istype(src,/obj/item/organ/external/leg) || istype(src,/obj/item/organ/external/foot)
|
||||
if(owner)
|
||||
digitigrade = owner.digitigrade && (istype(src,/obj/item/organ/external/leg) || istype(src,/obj/item/organ/external/foot))
|
||||
digitigrade = check_digi && owner.digitigrade
|
||||
else if(dna)
|
||||
digitigrade = dna.digitigrade && (istype(src,/obj/item/organ/external/leg) || istype(src,/obj/item/organ/external/foot))
|
||||
digitigrade = check_digi && dna.digitigrade
|
||||
|
||||
var/robotic_digi = prosthetic_digi && digitigrade //could make it so the prosthetic digi var is more of a "does this limb have a custom digitigrade sprite for its robospriting" but this is fine for now
|
||||
|
||||
@@ -57,13 +58,15 @@
|
||||
if((!istype(src,/obj/item/organ/external/head) && !(force_icon && !robotic_digi)) || (model && owner && owner.synth_markings))
|
||||
for(var/M in markings)
|
||||
var/datum/sprite_accessory/marking/mark_style = markings[M]["datum"]
|
||||
var/isdigitype = istype(mark_style,/datum/sprite_accessory/marking/digi)
|
||||
if(!(digitigrade ^ isdigitype)) //Equivalent to XNOR; this code will only run if either both digitigrade and isdigitype are true, or if both are false.
|
||||
var/icon/mark_s = new/icon("icon" = mark_style.icon, "icon_state" = "[mark_style.icon_state]-[organ_tag]")
|
||||
mark_s.Blend(markings[M]["color"], mark_style.color_blend_mode) // VOREStation edit
|
||||
add_overlay(mark_s) //So when it's not on your body, it has icons
|
||||
mob_icon.Blend(mark_s, ICON_OVERLAY) //So when it's on your body, it has icons
|
||||
icon_cache_key += "[M][markings[M]["color"]]"
|
||||
var/isdigitype = mark_style.digitigrade_acceptance
|
||||
if(check_digi)
|
||||
if (!(isdigitype & (digitigrade ? MARKING_DIGITIGRADE_ONLY : MARKING_NONDIGI_ONLY))) //checks flags based on which digitigrade type the limb is
|
||||
continue
|
||||
var/icon/mark_s = new/icon("icon" = digitigrade ? mark_style.digitigrade_icon : mark_style.icon, "icon_state" = "[mark_style.icon_state]-[organ_tag]")
|
||||
mark_s.Blend(markings[M]["color"], mark_style.color_blend_mode) // VOREStation edit
|
||||
add_overlay(mark_s) //So when it's not on your body, it has icons
|
||||
mob_icon.Blend(mark_s, ICON_OVERLAY) //So when it's on your body, it has icons
|
||||
icon_cache_key += "[M][markings[M]["color"]]"
|
||||
if(body_hair && islist(h_col) && h_col.len >= 3)
|
||||
var/cache_key = "[body_hair]-[icon_name]-[h_col[1]][h_col[2]][h_col[3]]"
|
||||
if(!limb_icon_cache[cache_key])
|
||||
|
||||
@@ -71,6 +71,7 @@
|
||||
#include "code\__defines\misc_ch.dm"
|
||||
#include "code\__defines\misc_vr.dm"
|
||||
#include "code\__defines\mobs.dm"
|
||||
#include "code\__defines\mobs_ch.dm"
|
||||
#include "code\__defines\mobs_vr.dm"
|
||||
#include "code\__defines\mobs_yw.dm"
|
||||
#include "code\__defines\nifsoft.dm"
|
||||
|
||||