Conflict fixes

This commit is contained in:
Artur
2020-04-14 09:27:54 +03:00
720 changed files with 148595 additions and 8360 deletions
@@ -302,10 +302,21 @@
if(!S || S.icon_state == "none")
continue
var/aroused_state = G.aroused_state && S.alt_aroused
var/accessory_icon = S.icon
var/do_center = S.center
var/dim_x = S.dimension_x
var/dim_y = S.dimension_y
if(G.genital_flags & GENITAL_CAN_TAUR && S.taur_icon && (!S.feat_taur || dna.features[S.feat_taur]) && dna.species.mutant_bodyparts["taur"])
var/datum/sprite_accessory/taur/T = GLOB.taur_list[dna.features["taur"]]
if(T?.taur_mode & S.accepted_taurs)
accessory_icon = S.taur_icon
do_center = TRUE
dim_x = S.taur_dimension_x
dim_y = S.taur_dimension_y
var/mutable_appearance/genital_overlay = mutable_appearance(S.icon, layer = -layer)
if(S.center)
genital_overlay = center_image(genital_overlay, S.dimension_x, S.dimension_y)
var/mutable_appearance/genital_overlay = mutable_appearance(accessory_icon, layer = -layer)
if(do_center)
genital_overlay = center_image(genital_overlay, dim_x, dim_y)
if(dna.species.use_skintones && dna.features["genitals_use_skintone"])
genital_overlay.color = "#[skintone2hex(skin_tone)]"
@@ -353,11 +364,10 @@
if(ishuman(src) && dna.species.id == "human")
dna.features["genitals_use_skintone"] = TRUE
dna.species.use_skintones = TRUE
if(MUTCOLORS)
if(src.dna.species.fixed_mut_color)
dna.features["cock_color"] = "[dna.species.fixed_mut_color]"
dna.features["breasts_color"] = "[dna.species.fixed_mut_color]"
return
if(src.dna.species.fixed_mut_color)
dna.features["cock_color"] = "[dna.species.fixed_mut_color]"
dna.features["breasts_color"] = "[dna.species.fixed_mut_color]"
return
//So people who haven't set stuff up don't get rainbow surprises.
dna.features["cock_color"] = "[dna.features["mcolor"]]"
dna.features["breasts_color"] = "[dna.features["mcolor"]]"
@@ -1,5 +1,10 @@
/datum/sprite_accessory
var/alt_aroused = FALSE //CIT CODE if this is TRUE, then the genitals will use an alternate icon_state when aroused.
var/taur_icon //leave null if the genital doesn't have a taur counterpart.
var/accepted_taurs = STYLE_HOOF_TAURIC|STYLE_PAW_TAURIC //Types that match with the accessory.
var/feat_taur //the text string of the dna feature to check for those who want to opt out.
var/taur_dimension_y = 32
var/taur_dimension_x = 32
//DICKS,COCKS,PENISES,WHATEVER YOU WANT TO CALL THEM
@@ -8,6 +13,7 @@
name = "penis" //the preview name of the accessory
color_src = "cock_color"
alt_aroused = TRUE
feat_taur = "cock_taur"
/datum/sprite_accessory/penis/human
icon_state = "human"
@@ -16,10 +22,14 @@
/datum/sprite_accessory/penis/knotted
icon_state = "knotted"
name = "Knotted"
taur_icon = 'modular_citadel/icons/obj/genitals/taur_penis_onmob.dmi'
taur_dimension_y = 64
/datum/sprite_accessory/penis/flared
icon_state = "flared"
name = "Flared"
taur_icon = 'modular_citadel/icons/obj/genitals/taur_penis_onmob.dmi'
taur_dimension_y = 64
/datum/sprite_accessory/penis/barbknot
icon_state = "barbknot"
@@ -28,6 +38,8 @@
/datum/sprite_accessory/penis/tapered
icon_state = "tapered"
name = "Tapered"
taur_icon = 'modular_citadel/icons/obj/genitals/taur_penis_onmob.dmi'
taur_dimension_y = 64
/datum/sprite_accessory/penis/tentacle
icon_state = "tentacle"
@@ -41,33 +53,7 @@
icon_state = "hemiknot"
name = "Knotted Hemi"
////////////////////////
// Taur cocks go here //
////////////////////////
/datum/sprite_accessory/penis/taur_flared
icon = 'modular_citadel/icons/obj/genitals/taur_penis_onmob.dmi' //Needed larger width
icon_state = "flared"
name = "Taur, Flared"
center = TRUE //Center the image 'cause 2-tile wide.
dimension_x = 64
/datum/sprite_accessory/penis/taur_knotted
icon = 'modular_citadel/icons/obj/genitals/taur_penis_onmob.dmi' //Needed larger width
icon_state = "knotted"
name = "Taur, Knotted"
center = TRUE //Center the image 'cause 2-tile wide.
dimension_x = 64
/datum/sprite_accessory/penis/taur_tapered
icon = 'modular_citadel/icons/obj/genitals/taur_penis_onmob.dmi' //Needed larger width
icon_state = "tapered"
name = "Taur, Tapered"
center = TRUE //Center the image 'cause 2-tile wide.
dimension_x = 64
//Testicles
//These ones aren't inert
/datum/sprite_accessory/testicles
icon = 'modular_citadel/icons/obj/genitals/testicles_onmob.dmi'
icon_state = "testicle"
@@ -8,7 +8,7 @@
masturbation_verb = "stroke"
arousal_verb = "You pop a boner"
unarousal_verb = "Your boner goes down"
genital_flags = CAN_MASTURBATE_WITH|CAN_CLIMAX_WITH|GENITAL_CAN_AROUSE|UPDATE_OWNER_APPEARANCE|GENITAL_UNDIES_HIDDEN
genital_flags = CAN_MASTURBATE_WITH|CAN_CLIMAX_WITH|GENITAL_CAN_AROUSE|UPDATE_OWNER_APPEARANCE|GENITAL_UNDIES_HIDDEN|GENITAL_CAN_TAUR
linked_organ_slot = ORGAN_SLOT_TESTICLES
fluid_transfer_factor = 0.5
shape = DEF_COCK_SHAPE
@@ -79,7 +79,6 @@
var/icon_shape = S ? S.icon_state : "human"
icon_state = "penis_[icon_shape]_[size]"
var/lowershape = lowertext(shape)
desc = "You see [aroused_state ? "an erect" : "a flaccid"] [lowershape] [name]. You estimate it's about [round(length, 0.25)] inch[round(length, 0.25) != 1 ? "es" : ""] long and [round(diameter, 0.25)] inch[round(diameter, 0.25) != 1 ? "es" : ""] in diameter."
if(owner)
if(owner.dna.species.use_skintones && owner.dna.features["genitals_use_skintone"])
@@ -89,6 +88,12 @@
icon_state += "_s"
else
color = "#[owner.dna.features["cock_color"]]"
if(genital_flags & GENITAL_CAN_TAUR && S?.taur_icon && (!S.feat_taur || owner.dna.features[S.feat_taur]) && owner.dna.species.mutant_bodyparts["taur"])
var/datum/sprite_accessory/taur/T = GLOB.taur_list[owner.dna.features["taur"]]
if(T.taur_mode & S.accepted_taurs) //looks out of place on those.
lowershape = "taur, [lowershape]"
desc = "You see [aroused_state ? "an erect" : "a flaccid"] [lowershape] [name]. You estimate it's about [round(length, 0.25)] inch[round(length, 0.25) != 1 ? "es" : ""] long and [round(diameter, 0.25)] inch[round(diameter, 0.25) != 1 ? "es" : ""] in diameter."
/obj/item/organ/genital/penis/get_features(mob/living/carbon/human/H)
var/datum/dna/D = H.dna
@@ -7,7 +7,7 @@
icon = 'modular_citadel/icons/obj/clothing/cit_neck.dmi'
item_state = "undertale"
icon_state = "undertale"
alternate_worn_icon = 'modular_citadel/icons/mob/clothing/necks.dmi'
mob_overlay_icon = 'modular_citadel/icons/mob/clothing/necks.dmi'
resistance_flags = FIRE_PROOF
actions_types = list(/datum/action/item_action/zanderlocket)
var/toggled = FALSE
@@ -1,40 +0,0 @@
/obj/item/clothing/neck/cloak/polychromic //enables all three overlays to reduce copypasta and defines basic stuff
name = "polychromic cloak"
desc = "For when you want to show off your horrible colour coordination skills."
icon = 'modular_citadel/icons/polyclothes/item/neck.dmi'
alternate_worn_icon = 'modular_citadel/icons/polyclothes/mob/neck.dmi'
icon_state = "polyce"
item_color = "polyce"
item_state = "qmcloak"
hasprimary = TRUE
hassecondary = TRUE
hastertiary = TRUE
primary_color = "#FFFFFF" //RGB in hexcode
secondary_color = "#FFFFFF"
tertiary_color = "#808080"
/obj/item/clothing/neck/cloak/polychromic/worn_overlays(isinhands, icon_file, style_flags = NONE) //this is where the main magic happens. Also mandates that ALL polychromic stuff MUST USE alternate_worn_icon
. = ..()
if(hasprimary | hassecondary | hastertiary)
if(!isinhands) //prevents the worn sprites from showing up if you're just holding them
if(hasprimary) //checks if overlays are enabled
var/mutable_appearance/primary_worn = mutable_appearance(alternate_worn_icon, "[item_color]-primary") //automagical sprite selection
primary_worn.color = primary_color //colors the overlay
. += primary_worn //adds the overlay onto the buffer list to draw on the mob sprite.
if(hassecondary)
var/mutable_appearance/secondary_worn = mutable_appearance(alternate_worn_icon, "[item_color]-secondary")
secondary_worn.color = secondary_color
. += secondary_worn
if(hastertiary)
var/mutable_appearance/tertiary_worn = mutable_appearance(alternate_worn_icon, "[item_color]-tertiary")
tertiary_worn.color = tertiary_color
. += tertiary_worn
/obj/item/clothing/neck/cloak/polychromic/polyce //DONATOR ITEM
name = "polychromic embroidered cloak"
desc = "A fancy cloak embroidered with polychromatic thread in a pattern that reminds one of the wielders of unlimited power."
icon_state = "polyce"
item_color = "polyce"
primary_color = "#808080" //RGB in hexcode
secondary_color = "#8CC6FF"
tertiary_color = "#FF3535"
@@ -8,7 +8,7 @@
/obj/item/clothing/suit/armor/hos/trenchcoat/cloak
name = "armored trenchcloak"
desc = "A trenchcoat enchanced with a special lightweight kevlar. This one appears to be designed to be draped over one's shoulders rather than worn normally.."
alternate_worn_icon = 'modular_citadel/icons/mob/citadel/suit.dmi'
mob_overlay_icon = 'modular_citadel/icons/mob/citadel/suit.dmi'
icon_state = "hostrench"
item_state = "hostrench"
mutantrace_variation = NONE
@@ -15,7 +15,7 @@
desc = "The overcoat worn by all officers of the 2380s."
icon = 'modular_citadel/icons/obj/clothing/trek_item_icon.dmi'
icon_state = "trek_ds9_coat"
alternate_worn_icon = 'modular_citadel/icons/mob/clothing/trek_mob_icon.dmi'
mob_overlay_icon = 'modular_citadel/icons/mob/clothing/trek_mob_icon.dmi'
item_state = "trek_ds9_coat"
body_parts_covered = CHEST|GROIN|ARMS
mutantrace_variation = NONE
@@ -44,7 +44,7 @@
name = "Federation Uniform Jacket"
desc = "A uniform jacket from the United Federation. Set phasers to awesome."
icon = 'modular_citadel/icons/obj/clothing/trek_item_icon.dmi'
alternate_worn_icon = 'modular_citadel/icons/mob/clothing/trek_mob_icon.dmi'
mob_overlay_icon = 'modular_citadel/icons/mob/clothing/trek_mob_icon.dmi'
icon_state = "fedcoat"
item_state = "fedcoat"
mutantrace_variation = NONE
@@ -110,7 +110,7 @@
name = "Modern Federation Uniform Jacket"
desc = "A modern uniform jacket from the United Federation."
icon = 'modular_citadel/icons/obj/clothing/trek_item_icon.dmi'
alternate_worn_icon = 'modular_citadel/icons/mob/clothing/trek_mob_icon.dmi'
mob_overlay_icon = 'modular_citadel/icons/mob/clothing/trek_mob_icon.dmi'
icon_state = "fedmodern"
item_state = "fedmodern"
body_parts_covered = CHEST|GROIN|ARMS
@@ -142,7 +142,7 @@
desc = "An officer's cap that demands discipline from the one who wears it."
icon = 'modular_citadel/icons/obj/clothing/trek_item_icon.dmi'
icon_state = "fedcapofficer"
alternate_worn_icon = 'modular_citadel/icons/mob/clothing/trek_mob_icon.dmi'
mob_overlay_icon = 'modular_citadel/icons/mob/clothing/trek_mob_icon.dmi'
item_state = "fedcapofficer"
//Variants
@@ -26,7 +26,7 @@
desc = "The design on this seems a little too familiar."
icon = 'icons/obj/custom.dmi'
icon_state = "infcloak"
alternate_worn_icon = 'icons/mob/custom_w.dmi'
mob_overlay_icon = 'icons/mob/clothing/custom_w.dmi'
item_state = "infcloak"
w_class = WEIGHT_CLASS_SMALL
body_parts_covered = CHEST|GROIN|LEGS|ARMS
@@ -36,9 +36,8 @@
desc = "A soft black collar that seems to stretch to fit whoever wears it."
icon = 'icons/obj/custom.dmi'
icon_state = "infcollar"
alternate_worn_icon = 'icons/mob/custom_w.dmi'
mob_overlay_icon = 'icons/mob/clothing/custom_w.dmi'
item_state = "infcollar"
item_color = null
tagname = null
/obj/item/clothing/accessory/medal/steele
@@ -46,14 +45,13 @@
desc = "An intricate pendant given to those who help a key member of the Steele Corporation."
icon = 'icons/obj/custom.dmi'
icon_state = "steele"
item_color = "steele"
medaltype = "medal-silver"
/obj/item/toy/darksabre
name = "Kiara's Sabre"
desc = "This blade looks as dangerous as its owner."
icon = 'icons/obj/custom.dmi'
alternate_worn_icon = 'icons/mob/custom_w.dmi'
mob_overlay_icon = 'icons/mob/clothing/custom_w.dmi'
icon_state = "darksabre"
item_state = "darksabre"
lefthand_file = 'modular_citadel/icons/mob/inhands/stunsword_left.dmi'
@@ -70,7 +68,7 @@
name = "Ornate Sheathe"
desc = "An ornate and rather sinister looking sabre sheathe."
icon = 'icons/obj/custom.dmi'
alternate_worn_icon = 'icons/mob/custom_w.dmi'
mob_overlay_icon = 'icons/mob/clothing/custom_w.dmi'
icon_state = "darksheath"
item_state = "darksheath"
fitting_swords = list(/obj/item/toy/darksabre)
@@ -80,7 +78,7 @@
name = "Dark Armor"
desc = "A dark, non-functional piece of armor sporting a red and black finish."
icon = 'icons/obj/custom.dmi'
alternate_worn_icon = 'icons/mob/custom_w.dmi'
mob_overlay_icon = 'icons/mob/clothing/custom_w.dmi'
icon_state = "darkcarapace"
item_state = "darkcarapace"
blood_overlay_type = "armor"
@@ -107,8 +105,7 @@
icon = 'icons/obj/custom.dmi'
icon_state = "zombscarf"
desc = "A fashionable collar"
alternate_worn_icon = 'icons/mob/custom_w.dmi'
item_color = "zombscarf"
mob_overlay_icon = 'icons/mob/clothing/custom_w.dmi'
dog_fashion = /datum/dog_fashion/head
/obj/item/clothing/suit/toggle/labcoat/mad/red
@@ -116,7 +113,7 @@
desc = "An oddly special looking coat."
icon = 'icons/obj/custom.dmi'
icon_state = "labred"
alternate_worn_icon = 'icons/mob/custom_w.dmi'
mob_overlay_icon = 'icons/mob/clothing/custom_w.dmi'
item_state = "labred"
mutantrace_variation = NONE
@@ -125,7 +122,7 @@
desc = "An oddly special looking coat."
icon = 'icons/obj/custom.dmi'
icon_state = "labredblack"
alternate_worn_icon = 'icons/mob/custom_w.dmi'
mob_overlay_icon = 'icons/mob/clothing/custom_w.dmi'
item_state = "labredblack"
mutantrace_variation = NONE
@@ -144,7 +141,7 @@
name = "carrot cloak"
desc = "A cloak in the shape and color of a carrot!"
icon = 'icons/obj/custom.dmi'
alternate_worn_icon = 'icons/mob/custom_w.dmi'
mob_overlay_icon = 'icons/mob/clothing/custom_w.dmi'
icon_state = "carrotcloak"
item_state = "carrotcloak"
w_class = WEIGHT_CLASS_SMALL
@@ -156,7 +153,7 @@
icon = 'icons/obj/custom.dmi'
icon_state = "satchel_carrot"
item_state = "satchel_carrot"
alternate_worn_icon = 'icons/mob/custom_w.dmi'
mob_overlay_icon = 'icons/mob/clothing/custom_w.dmi'
/obj/item/storage/backpack/satchel/carrot/Initialize()
. = ..()
@@ -179,7 +176,7 @@
icon = 'icons/obj/custom.dmi'
icon_state = "festive"
item_state = "festive"
alternate_worn_icon = 'icons/mob/custom_w.dmi'
mob_overlay_icon = 'icons/mob/clothing/custom_w.dmi'
w_class = WEIGHT_CLASS_SMALL
body_parts_covered = CHEST|GROIN|LEGS|ARMS
@@ -187,7 +184,7 @@
name = "Alboroto Rosa mask"
icon = 'icons/obj/custom.dmi'
icon_state = "lucharzigfie"
alternate_worn_icon = 'icons/mob/custom_w.dmi'
mob_overlay_icon = 'icons/mob/clothing/custom_w.dmi'
item_state = "lucharzigfie"
/obj/item/clothing/head/hardhat/reindeer/fluff
@@ -195,7 +192,7 @@
desc = "Some fake antlers and a very fake red nose - Sponsored by PWR Game(tm)"
icon_state = "hardhat0_reindeer"
item_state = "hardhat0_reindeer"
item_color = "reindeer"
hat_type = "reindeer"
flags_inv = 0
armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0, fire = 0, acid = 0)
brightness_on = 0 //luminosity when on
@@ -220,7 +217,7 @@
name = "The Hollow heart"
desc = "Sometimes things are too much to hide."
icon = 'icons/obj/custom.dmi'
alternate_worn_icon = 'icons/mob/custom_w.dmi'
mob_overlay_icon = 'icons/mob/clothing/custom_w.dmi'
icon_state = "hheart"
item_state = "hheart"
flags_inv = HIDEFACE|HIDEFACIALHAIR
@@ -230,7 +227,7 @@
desc = "You would swear this was in your nightmares after eating too many veggies."
icon = 'icons/obj/custom.dmi'
icon_state = "hos-g"
alternate_worn_icon = 'icons/mob/custom_w.dmi'
mob_overlay_icon = 'icons/mob/clothing/custom_w.dmi'
item_state = "hos-g"
body_parts_covered = CHEST|GROIN|ARMS|LEGS
mutantrace_variation = NONE
@@ -247,7 +244,7 @@
desc = "Smells like reactor four."
icon = 'icons/obj/custom.dmi'
item_state = "stalker"
alternate_worn_icon = 'icons/mob/custom_w.dmi'
mob_overlay_icon = 'icons/mob/clothing/custom_w.dmi'
icon_state = "stalker"
/obj/item/reagent_containers/food/drinks/flask/steel
@@ -262,7 +259,7 @@
desc = "It's a collar..."
icon = 'icons/obj/custom.dmi'
icon_state = "petcollar-stripe"
alternate_worn_icon = 'icons/mob/custom_w.dmi'
mob_overlay_icon = 'icons/mob/clothing/custom_w.dmi'
item_state = "petcollar-stripe"
tagname = null
@@ -271,9 +268,8 @@
desc = "Just looking at this makes you want to sing."
icon = 'icons/obj/custom.dmi'
icon_state = "singer"
alternate_worn_icon = 'icons/mob/custom_w.dmi'
mob_overlay_icon = 'icons/mob/clothing/custom_w.dmi'
item_state = "singer"
item_color = "singer"
fitted = NO_FEMALE_UNIFORM
alternate_worn_layer = ABOVE_SHOES_LAYER
can_adjust = 0
@@ -282,7 +278,7 @@
/obj/item/clothing/shoes/sneakers/pink
icon = 'icons/obj/custom.dmi'
icon_state = "pink"
alternate_worn_icon = 'icons/mob/custom_w.dmi'
mob_overlay_icon = 'icons/mob/clothing/custom_w.dmi'
item_state = "pink"
mutantrace_variation = NONE
@@ -291,13 +287,13 @@
desc = "A neosilk clip-on tie. This one has a black S on the tipping and looks rather unique."
icon = 'icons/obj/custom.dmi'
icon_state = "bloodredtie"
alternate_worn_icon = 'icons/mob/custom_w.dmi'
mob_overlay_icon = 'icons/mob/clothing/custom_w.dmi'
/obj/item/clothing/suit/puffydress
name = "Puffy Dress"
desc = "A formal puffy black and red Victorian dress."
icon = 'icons/obj/custom.dmi'
alternate_worn_icon = 'icons/mob/custom_w.dmi'
mob_overlay_icon = 'icons/mob/clothing/custom_w.dmi'
icon_state = "puffydress"
item_state = "puffydress"
body_parts_covered = CHEST|GROIN|LEGS
@@ -310,7 +306,7 @@
item_state = "vermillion"
body_parts_covered = CHEST|GROIN|LEGS|ARMS|HANDS
icon = 'icons/obj/custom.dmi'
alternate_worn_icon = 'icons/mob/custom_w.dmi'
mob_overlay_icon = 'icons/mob/clothing/custom_w.dmi'
mutantrace_variation = NONE
/obj/item/clothing/under/sweater/black/naomi
@@ -327,7 +323,7 @@
desc = "This cloak doesn't seem too special."
icon = 'icons/obj/custom.dmi'
icon_state = "wintergreencloak"
alternate_worn_icon = 'icons/mob/custom_w.dmi'
mob_overlay_icon = 'icons/mob/clothing/custom_w.dmi'
item_state = "wintergreencloak"
w_class = WEIGHT_CLASS_SMALL
body_parts_covered = CHEST|GROIN|LEGS|ARMS
@@ -343,7 +339,7 @@
desc = "An oddly special looking coat."
icon = 'icons/obj/custom.dmi'
icon_state = "rdcoat"
alternate_worn_icon = 'icons/mob/custom_w.dmi'
mob_overlay_icon = 'icons/mob/clothing/custom_w.dmi'
item_state = "rdcoat"
mutantrace_variation = NONE
@@ -359,7 +355,7 @@
desc = "These strange wings look like they once attached to something... or someone...? Whatever the case, their presence makes you feel uneasy.."
icon = 'icons/obj/custom.dmi'
icon_state = "devilwings"
alternate_worn_icon = 'modular_citadel/icons/mob/clothing/devilwings64x64.dmi'
mob_overlay_icon = 'modular_citadel/icons/mob/clothing/devilwings64x64.dmi'
item_state = "devilwings"
worn_x_dimension = 64
worn_y_dimension = 34
@@ -369,14 +365,14 @@
desc = "A truly patriotic form of heroic attire."
icon = 'icons/obj/custom.dmi'
resistance_flags = FLAMMABLE
alternate_worn_icon = 'icons/mob/custom_w.dmi'
mob_overlay_icon = 'icons/mob/clothing/custom_w.dmi'
icon_state = "flagcape"
item_state = "flagcape"
/obj/item/clothing/shoes/lucky
name = "Lucky Jackboots"
icon = 'icons/obj/custom.dmi'
alternate_worn_icon = 'icons/mob/custom_w.dmi'
mob_overlay_icon = 'icons/mob/clothing/custom_w.dmi'
desc = "Comfy Lucky Jackboots with the word Luck on them."
item_state = "luckyjack"
icon_state = "luckyjack"
@@ -385,7 +381,7 @@
/obj/item/clothing/under/custom/lunasune
name = "Divine Robes"
icon = 'icons/obj/custom.dmi'
alternate_worn_icon = 'icons/mob/custom_w.dmi'
mob_overlay_icon = 'icons/mob/clothing/custom_w.dmi'
desc = "Heavenly robes of the kitsune Luna Pumpkin,you can feel radiance coming from them."
item_state = "Divine_robes"
icon_state = "Divine_robes"
@@ -394,7 +390,7 @@
/obj/item/clothing/under/custom/leoskimpy
name = "Leon's Skimpy Outfit"
icon = 'icons/obj/custom.dmi'
alternate_worn_icon = 'icons/mob/custom_w.dmi'
mob_overlay_icon = 'icons/mob/clothing/custom_w.dmi'
desc = "A rather skimpy outfit."
item_state = "shark_cloth"
icon_state = "shark_cloth"
@@ -403,7 +399,7 @@
/obj/item/clothing/under/custom/mimeoveralls
name = "Mime's Overalls"
icon = 'icons/obj/custom.dmi'
alternate_worn_icon = 'icons/mob/custom_w.dmi'
mob_overlay_icon = 'icons/mob/clothing/custom_w.dmi'
desc = "A less-than-traditional mime's attire, completed by a set of dorky-looking overalls."
item_state = "moveralls"
icon_state = "moveralls"
@@ -415,7 +411,7 @@
icon_state = "zuliecloak"
item_state = "zuliecloak"
icon = 'icons/obj/custom.dmi'
alternate_worn_icon = 'icons/mob/custom_w.dmi'
mob_overlay_icon = 'icons/mob/clothing/custom_w.dmi'
hoodtype = /obj/item/clothing/head/hooded/cloakhood/zuliecloak
body_parts_covered = CHEST|GROIN|ARMS
slot_flags = SLOT_WEAR_SUIT | ITEM_SLOT_NECK //it's a cloak. it's cosmetic. so why the hell not? what could possibly go wrong?
@@ -427,7 +423,7 @@
icon_state = "zuliecap"
item_state = "zuliecap"
icon = 'icons/obj/custom.dmi'
alternate_worn_icon = 'icons/mob/custom_w.dmi'
mob_overlay_icon = 'icons/mob/clothing/custom_w.dmi'
flags_inv = HIDEEARS|HIDEHAIR
mutantrace_variation = NONE
@@ -435,7 +431,7 @@
name = "Multicolor Coat"
desc = "An oddly special looking coat with black, red, and gold"
icon = 'icons/obj/custom.dmi'
alternate_worn_icon = 'icons/mob/custom_w.dmi'
mob_overlay_icon = 'icons/mob/clothing/custom_w.dmi'
icon_state = "redgoldjacket"
item_state = "redgoldjacket"
body_parts_covered = CHEST|GROIN|LEGS|ARMS
@@ -447,7 +443,7 @@
icon_state = "kimono"
item_state = "kimono"
icon = 'icons/obj/custom.dmi'
alternate_worn_icon = 'icons/mob/custom_w.dmi'
mob_overlay_icon = 'icons/mob/clothing/custom_w.dmi'
body_parts_covered = CHEST|GROIN|LEGS|ARMS
mutantrace_variation = NONE
@@ -457,7 +453,7 @@
icon_state = "commjacket"
item_state = "commjacket"
icon = 'icons/obj/custom.dmi'
alternate_worn_icon = 'icons/mob/custom_w.dmi'
mob_overlay_icon = 'icons/mob/clothing/custom_w.dmi'
body_parts_covered = CHEST|GROIN|LEGS|ARMS
mutantrace_variation = NONE
@@ -467,7 +463,7 @@
icon_state = "mw2_russian_para"
item_state = "mw2_russian_para"
icon = 'icons/obj/custom.dmi'
alternate_worn_icon = 'icons/mob/custom_w.dmi'
mob_overlay_icon = 'icons/mob/clothing/custom_w.dmi'
mutantrace_variation = NONE
/obj/item/clothing/gloves/longblackgloves
@@ -476,7 +472,7 @@
icon_state = "longblackgloves"
item_state = "longblackgloves"
icon = 'icons/obj/custom.dmi'
alternate_worn_icon = 'icons/mob/custom_w.dmi'
mob_overlay_icon = 'icons/mob/clothing/custom_w.dmi'
/obj/item/clothing/under/custom/trendy_fit
name = "Trendy Fitting Clothing"
@@ -484,7 +480,7 @@
icon_state = "trendy_fit"
item_state = "trendy_fit"
icon = 'icons/obj/custom.dmi'
alternate_worn_icon = 'icons/mob/custom_w.dmi'
mob_overlay_icon = 'icons/mob/clothing/custom_w.dmi'
mutantrace_variation = NONE
/obj/item/clothing/head/blueberet
@@ -493,7 +489,7 @@
icon_state = "blueberet"
item_state = "blueberet"
icon = 'icons/obj/custom.dmi'
alternate_worn_icon = 'icons/mob/custom_w.dmi'
mob_overlay_icon = 'icons/mob/clothing/custom_w.dmi'
dynamic_hair_suffix = ""
/obj/item/clothing/head/flight
@@ -502,7 +498,7 @@
icon_state = "flight-g"
item_state = "flight-g"
icon = 'icons/obj/custom.dmi'
alternate_worn_icon = 'icons/mob/custom_w.dmi'
mob_overlay_icon = 'icons/mob/clothing/custom_w.dmi'
/obj/item/clothing/neck/necklace/onion
name = "Onion Necklace"
@@ -510,7 +506,7 @@
icon = 'icons/obj/custom.dmi'
icon_state = "onion"
item_state = "onion"
alternate_worn_icon = 'icons/mob/custom_w.dmi'
mob_overlay_icon = 'icons/mob/clothing/custom_w.dmi'
/obj/item/clothing/under/custom/mikubikini
name = "starlight singer bikini"
@@ -518,7 +514,7 @@
icon_state = "mikubikini"
item_state = "mikubikini"
icon = 'icons/obj/custom.dmi'
alternate_worn_icon = 'icons/mob/custom_w.dmi'
mob_overlay_icon = 'icons/mob/clothing/custom_w.dmi'
mutantrace_variation = NONE
/obj/item/clothing/suit/mikujacket
@@ -527,7 +523,7 @@
icon_state = "mikujacket"
item_state = "mikujacket"
icon = 'icons/obj/custom.dmi'
alternate_worn_icon = 'icons/mob/custom_w.dmi'
mob_overlay_icon = 'icons/mob/clothing/custom_w.dmi'
mutantrace_variation = NONE
/obj/item/clothing/head/mikuhair
@@ -536,7 +532,7 @@
icon_state = "mikuhair"
item_state = "mikuhair"
icon = 'icons/obj/custom.dmi'
alternate_worn_icon = 'icons/mob/custom_w.dmi'
mob_overlay_icon = 'icons/mob/clothing/custom_w.dmi'
mutantrace_variation = NONE
flags_inv = HIDEHAIR
@@ -546,7 +542,7 @@
icon_state = "mikugloves"
item_state = "mikugloves"
icon = 'icons/obj/custom.dmi'
alternate_worn_icon = 'icons/mob/custom_w.dmi'
mob_overlay_icon = 'icons/mob/clothing/custom_w.dmi'
mutantrace_variation = NONE
/obj/item/clothing/shoes/sneakers/mikuleggings
@@ -555,7 +551,7 @@
icon_state = "mikuleggings"
item_state = "mikuleggings"
icon = 'icons/obj/custom.dmi'
alternate_worn_icon = 'icons/mob/custom_w.dmi'
mob_overlay_icon = 'icons/mob/clothing/custom_w.dmi'
mutantrace_variation = NONE
/obj/item/toy/plush/mammal/dog/fritz
@@ -567,3 +563,8 @@
unique_reskin = list("Goodboye" = "fritz", "Badboye" = "fritz_bad")
mutantrace_variation = NONE
/obj/item/clothing/neck/cloak/polychromic/polyce
name = "polychromic embroidered cloak"
desc = "A fancy cloak embroidered with polychromatic thread in a pattern that reminds one of the wielders of unlimited power."
icon_state = "polyce"
poly_colors = list("#808080", "#8CC6FF", "#FF3535")
@@ -424,15 +424,15 @@ SLEEPER CODE IS IN game/objects/items/devices/dogborg_sleeper.dm !
if(hit_atom)
if(isliving(hit_atom))
var/mob/living/L = hit_atom
if(!L.check_shields(0, "the [name]", src, attack_type = LEAP_ATTACK))
if(L.run_block(0, "the [name]", src, ATTACK_TYPE_TACKLE, 0, src) & BLOCK_SUCCESS)
DefaultCombatKnockdown(15, 1, 1)
else
L.visible_message("<span class ='danger'>[src] pounces on [L]!</span>", "<span class ='userdanger'>[src] pounces on you!</span>")
L.DefaultCombatKnockdown(iscarbon(L) ? 60 : 45, override_stamdmg = CLAMP(pounce_stamloss, 0, pounce_stamloss_cap-L.getStaminaLoss())) // Temporary. If someone could rework how dogborg pounces work to accomodate for combat changes, that'd be nice.
playsound(src, 'sound/weapons/Egloves.ogg', 50, 1)
sleep(2)//Runtime prevention (infinite bump() calls on hulks)
step_towards(src,L)
log_combat(src, L, "borg pounced")
else
DefaultCombatKnockdown(15, 1, 1)
pounce_cooldown = !pounce_cooldown
spawn(pounce_cooldown_time) //3s by default
@@ -1,34 +1,3 @@
////////////Anti Tank Pistol////////////
/obj/item/gun/ballistic/automatic/pistol/antitank
name = "Anti Tank Pistol"
desc = "A massively impractical and silly monstrosity of a pistol that fires .50 calliber rounds. The recoil is likely to dislocate your wrist."
icon = 'modular_citadel/icons/obj/guns/cit_guns.dmi'
icon_state = "atp"
item_state = "pistol"
recoil = 4
mag_type = /obj/item/ammo_box/magazine/sniper_rounds
fire_delay = 50
burst_size = 1
can_suppress = 0
w_class = WEIGHT_CLASS_NORMAL
actions_types = list()
fire_sound = 'sound/weapons/blastcannon.ogg'
spread = 20 //damn thing has no rifling.
/obj/item/gun/ballistic/automatic/pistol/antitank/update_icon()
..()
if(magazine)
cut_overlays()
add_overlay("atp-mag")
else
cut_overlays()
icon_state = "[initial(icon_state)][chambered ? "" : "-e"]"
/obj/item/gun/ballistic/automatic/pistol/antitank/syndicate
name = "Syndicate Anti Tank Pistol"
desc = "A massively impractical and silly monstrosity of a pistol that fires .50 calliber rounds. The recoil is likely to dislocate a variety of joints without proper bracing."
pin = /obj/item/firing_pin/implant/pindicate
///foam stealth pistol///
@@ -56,75 +25,6 @@
cut_overlays()
icon_state = "[initial(icon_state)][chambered ? "" : "-e"]"
//////10mm soporific bullets//////
obj/item/projectile/bullet/c10mm/soporific
name ="10mm soporific bullet"
armour_penetration = 0
nodamage = TRUE
dismemberment = 0
knockdown = 0
/obj/item/projectile/bullet/c10mm/soporific/on_hit(atom/target, blocked = FALSE)
. = ..()
if((blocked != 100) && isliving(target))
var/mob/living/L = target
L.blur_eyes(6)
if(L.getStaminaLoss() >= 60)
L.Sleeping(300)
else
L.adjustStaminaLoss(25)
/obj/item/ammo_casing/c10mm/soporific
name = ".10mm soporific bullet casing"
desc = "A 10mm soporific bullet casing."
projectile_type = /obj/item/projectile/bullet/c10mm/soporific
/obj/item/ammo_box/magazine/m10mm/soporific
name = "pistol magazine (10mm soporific)"
icon = 'modular_citadel/icons/obj/guns/cit_guns.dmi'
icon_state = "9x19pS"
desc = "A gun magazine. Loaded with rounds which inject the target with a variety of illegal substances to induce sleep in the target."
ammo_type = /obj/item/ammo_casing/c10mm/soporific
/obj/item/ammo_box/c10mm/soporific
name = "ammo box (10mm soporific)"
ammo_type = /obj/item/ammo_casing/c10mm/soporific
max_ammo = 24
//////modular pistol////// (reskinnable stetchkins)
/obj/item/gun/ballistic/automatic/pistol/modular
name = "modular pistol"
desc = "A small, easily concealable 10mm handgun. Has a threaded barrel for suppressors."
icon = 'modular_citadel/icons/obj/guns/cit_guns.dmi'
icon_state = "cde"
can_unsuppress = TRUE
obj_flags = UNIQUE_RENAME
unique_reskin = list("Default" = "cde",
"NT-99" = "n99",
"Stealth" = "stealthpistol",
"HKVP-78" = "vp78",
"Luger" = "p08b",
"Mk.58" = "secguncomp",
"PX4 Storm" = "px4"
)
/obj/item/gun/ballistic/automatic/pistol/modular/update_icon()
..()
if(current_skin)
icon_state = "[unique_reskin[current_skin]][chambered ? "" : "-e"][suppressed ? "-suppressed" : ""]"
else
icon_state = "[initial(icon_state)][chambered ? "" : "-e"][suppressed ? "-suppressed" : ""]"
if(magazine && suppressed)
cut_overlays()
add_overlay("[unique_reskin[current_skin]]-magazine-sup") //Yes, this means the default iconstate can't have a magazine overlay
else if (magazine)
cut_overlays()
add_overlay("[unique_reskin[current_skin]]-magazine")
else
cut_overlays()
/////////RAYGUN MEMES/////////
/obj/item/projectile/beam/lasertag/ray //the projectile, compatible with regular laser tag armor
@@ -144,4 +44,4 @@ obj/item/projectile/bullet/c10mm/soporific
icon_state = "raygun"
desc = "A toy laser with a classic, retro feel and look. Compatible with existing laser tag systems."
ammo_type = list(/obj/item/ammo_casing/energy/laser/raytag)
selfcharge = EGUN_SELFCHARGE
selfcharge = EGUN_SELFCHARGE
@@ -39,7 +39,7 @@ obj/item/gun/energy/e_gun/cx/AltClick(mob/living/user)
body_color = sanitize_hexcolor(body_color_input, desired_format=6, include_crunch=1)
update_icon()
obj/item/gun/energy/e_gun/cx/worn_overlays(isinhands, icon_file, style_flags = NONE)
obj/item/gun/energy/e_gun/cx/worn_overlays(isinhands, icon_file, used_state, style_flags = NONE)
. = ..()
if(isinhands)
var/mutable_appearance/body_inhand = mutable_appearance(icon_file, "cxe_body")
@@ -87,7 +87,7 @@
. = ..()
. += "<span class='notice'>Alt-click to change firing modes.</span>"
/obj/item/gun/energy/pumpaction/worn_overlays(isinhands, icon_file, style_flags = NONE) //ammo counter for inhands
/obj/item/gun/energy/pumpaction/worn_overlays(isinhands, icon_file, used_state, style_flags = NONE) //ammo counter for inhands
. = ..()
var/ratio = CEILING((cell.charge / cell.maxcharge) * charge_sections, 1)
var/obj/item/ammo_casing/energy/shot = ammo_type[current_firemode_index]
@@ -54,15 +54,15 @@
return..()
var/mob/living/carbon/human/H = M
var/obj/item/organ/genital/breasts/B = M.getorganslot(ORGAN_SLOT_BREASTS)
//If they've opted out, then route processing though liver.
if(!(H.client?.prefs.cit_toggles & BREAST_ENLARGEMENT))
var/obj/item/organ/liver/L = H.getorganslot(ORGAN_SLOT_LIVER)
if(L)
L.swelling += 0.05
L.applyOrganDamage(0.25)
else
H.adjustToxLoss(1)
return..()
var/obj/item/organ/genital/breasts/B = M.getorganslot(ORGAN_SLOT_BREASTS)
//otherwise proceed as normal
if(!B) //If they don't have breasts, give them breasts.
@@ -95,7 +95,8 @@
/datum/reagent/fermi/breast_enlarger/overdose_process(mob/living/carbon/M) //Turns you into a female if male and ODing, doesn't touch nonbinary and object genders.
if(!(M.client?.prefs.cit_toggles & FORCED_FEM))
var/obj/item/organ/liver/L = M.getorganslot(ORGAN_SLOT_LIVER)
L.swelling+= 0.05
if(L)
L.applyOrganDamage(0.25)
return ..()
var/obj/item/organ/genital/penis/P = M.getorganslot(ORGAN_SLOT_PENIS)
@@ -130,7 +131,8 @@
var/obj/item/organ/genital/breasts/B = M.getorganslot(ORGAN_SLOT_BREASTS)
if(!(M.client?.prefs.cit_toggles & BREAST_ENLARGEMENT) || !B)
var/obj/item/organ/liver/L = M.getorganslot(ORGAN_SLOT_LIVER)
L.swelling-= 0.05
if(L)
L.applyOrganDamage(-0.25)
return ..()
B.modify_size(-0.05)
return ..()
@@ -208,14 +210,14 @@
if(!ishuman(M))
return ..()
var/mob/living/carbon/human/H = M
var/obj/item/organ/genital/penis/P = H.getorganslot(ORGAN_SLOT_PENIS)
if(!(H.client?.prefs.cit_toggles & PENIS_ENLARGEMENT))
var/obj/item/organ/liver/L = H.getorganslot(ORGAN_SLOT_LIVER)
if(L)
L.swelling += 0.05
L.applyOrganDamage(0.25)
else
H.adjustToxLoss(1)
return ..()
var/obj/item/organ/genital/penis/P = H.getorganslot(ORGAN_SLOT_PENIS)
//otherwise proceed as normal
if(!P)//They do have a preponderance for escapism, or so I've heard.
@@ -241,7 +243,8 @@
return ..()
if(!(M.client?.prefs.cit_toggles & FORCED_MASC))
var/obj/item/organ/liver/L = M.getorganslot(ORGAN_SLOT_LIVER)
L.swelling+= 0.05
if(L)
L.applyOrganDamage(0.25)
return..()
var/obj/item/organ/genital/breasts/B = M.getorganslot(ORGAN_SLOT_BREASTS)
@@ -278,7 +281,8 @@
var/obj/item/organ/genital/penis/P = H.getorganslot(ORGAN_SLOT_PENIS)
if(!(H.client?.prefs.cit_toggles & PENIS_ENLARGEMENT) || !P)
var/obj/item/organ/liver/L = M.getorganslot(ORGAN_SLOT_LIVER)
L.swelling-= 0.05
if(L)
L.applyOrganDamage(-0.25)
return..()
P.modify_size(-0.1)
@@ -54,7 +54,6 @@
to_chat(user, "<span class='warning'>[src] is empty!</span>")
add_fingerprint(user)
return
..()
/obj/item/fermichem/pHpaper
name = "pH indicator strip"
@@ -95,6 +95,7 @@
taste_description = "strawberry roofies"
taste_mult = 2 //Hide the roofies in stronger flavors
color = "#FFADFF"//PINK, rgb(255, 173, 255)
can_synth = FALSE
/datum/reagent/drug/aphrodisiac/on_mob_life(mob/living/M)
if(M && M.client?.prefs.arousable && !(M.client?.prefs.cit_toggles & NO_APHRO))
@@ -120,6 +121,7 @@
color = "#FF2BFF"//dark pink
addiction_threshold = 20
overdose_threshold = 20
can_synth = FALSE
/datum/reagent/drug/aphrodisiacplus/on_mob_life(mob/living/M)
if(M && M.client?.prefs.arousable && !(M.client?.prefs.cit_toggles & NO_APHRO))
@@ -174,6 +176,7 @@
taste_mult = 2
color = "#D9D9D9"//rgb(217, 217, 217)
reagent_state = SOLID
can_synth = FALSE
/datum/reagent/drug/anaphrodisiac/on_mob_life(mob/living/M)
if(M && M.client?.prefs.arousable && prob(16))
@@ -191,6 +194,7 @@
color = "#D9D9D9"//rgb(217, 217, 217)
reagent_state = SOLID
overdose_threshold = 20
can_synth = FALSE
/datum/reagent/drug/anaphrodisiacplus/on_mob_life(mob/living/M)
if(M && M.client?.prefs.arousable)