mirror of
https://github.com/SPLURT-Station/S.P.L.U.R.T-Station-13.git
synced 2025-12-09 16:07:40 +00:00
Merge branch 'master' into Dispencer-UI-change
This commit is contained in:
@@ -53,7 +53,7 @@ GLOBAL_LIST_EMPTY(loadout_whitelist_ids)
|
||||
var/path //item-to-spawn path
|
||||
var/cost = 1 //normally, each loadout costs a single point.
|
||||
var/geargroupID //defines the ID that the gear inherits from the config
|
||||
var/loadout_flags = 0
|
||||
var/loadout_flags = LOADOUT_CAN_NAME | LOADOUT_CAN_DESCRIPTION
|
||||
var/list/loadout_initial_colors = list()
|
||||
|
||||
//NEW DONATOR SYTSEM STUFF
|
||||
|
||||
@@ -15,6 +15,18 @@
|
||||
name = "Black beret"
|
||||
path = /obj/item/clothing/head/beret/black
|
||||
|
||||
/datum/gear/head/redberet
|
||||
name = "Red beret"
|
||||
path = /obj/item/clothing/head/beret
|
||||
|
||||
/datum/gear/head/purpleberet
|
||||
name = "Purple beret"
|
||||
path = /obj/item/clothing/head/beret/purple
|
||||
|
||||
/datum/gear/head/blueberet
|
||||
name = "Blue beret"
|
||||
path = /obj/item/clothing/head/beret/blue
|
||||
|
||||
/datum/gear/head/flatcap
|
||||
name = "Flat cap"
|
||||
path = /obj/item/clothing/head/flatcap
|
||||
|
||||
@@ -20,3 +20,14 @@
|
||||
path = /obj/item/clothing/mask/gas
|
||||
cost = 2
|
||||
restricted_roles = list("Chief Engineer", "Atmospheric Technician", "Station Engineer") //*shrug
|
||||
|
||||
/datum/gear/mask/sterile
|
||||
name = "Aesthetic sterile mask"
|
||||
path = /obj/item/clothing/mask/surgical/aesthetic
|
||||
cost = 2
|
||||
|
||||
/datum/gear/mask/paper
|
||||
name = "Paper mask"
|
||||
path = /obj/item/clothing/mask/paper
|
||||
cost = 2
|
||||
|
||||
|
||||
@@ -30,6 +30,10 @@
|
||||
name = "Choker"
|
||||
path = /obj/item/clothing/neck/petcollar/choker
|
||||
|
||||
/datum/gear/neck/cowbell
|
||||
name = "Cowbell collar"
|
||||
path = /obj/item/clothing/neck/necklace/cowbell
|
||||
|
||||
/datum/gear/neck/scarf
|
||||
name = "White scarf"
|
||||
subcategory = LOADOUT_SUBCATEGORY_NECK_SCARVES
|
||||
@@ -86,7 +90,7 @@
|
||||
/datum/gear/neck/polycloak
|
||||
name = "Polychromatic Cloak"
|
||||
path = /obj/item/clothing/neck/cloak/polychromic
|
||||
loadout_flags = LOADOUT_CAN_COLOR_POLYCHROMIC
|
||||
loadout_flags = LOADOUT_CAN_NAME | LOADOUT_CAN_DESCRIPTION | LOADOUT_CAN_COLOR_POLYCHROMIC
|
||||
loadout_initial_colors = list("#FFFFFF", "#FFFFFF", "#808080")
|
||||
|
||||
/datum/gear/neck/altpolycloak
|
||||
|
||||
@@ -101,7 +101,7 @@
|
||||
name = "Polychromic winter coat"
|
||||
path = /obj/item/clothing/suit/hooded/wintercoat/polychromic
|
||||
cost = 4 //too many people with neon green coats is hard on the eyes
|
||||
loadout_flags = LOADOUT_CAN_COLOR_POLYCHROMIC
|
||||
loadout_flags = LOADOUT_CAN_NAME | LOADOUT_CAN_DESCRIPTION | LOADOUT_CAN_COLOR_POLYCHROMIC
|
||||
loadout_initial_colors = list("#6A6964", "#C4B8A6", "#0000FF")
|
||||
|
||||
/datum/gear/suit/coat/med
|
||||
|
||||
@@ -47,7 +47,7 @@
|
||||
/datum/gear/uniform/maidcostume/polychromic
|
||||
name = "Polychromic maid costume"
|
||||
path = /obj/item/clothing/under/rank/civilian/janitor/maid/polychromic
|
||||
loadout_flags = LOADOUT_CAN_COLOR_POLYCHROMIC
|
||||
loadout_flags = LOADOUT_CAN_NAME | LOADOUT_CAN_DESCRIPTION | LOADOUT_CAN_COLOR_POLYCHROMIC
|
||||
loadout_initial_colors = list("#FFFFFF", "#000000")
|
||||
|
||||
/datum/gear/uniform/mailmanuniform
|
||||
@@ -229,49 +229,49 @@
|
||||
name = "Polychromic Jumpsuit"
|
||||
path = /obj/item/clothing/under/misc/polyjumpsuit
|
||||
cost = 2
|
||||
loadout_flags = LOADOUT_CAN_COLOR_POLYCHROMIC
|
||||
loadout_flags = LOADOUT_CAN_NAME | LOADOUT_CAN_DESCRIPTION | LOADOUT_CAN_COLOR_POLYCHROMIC
|
||||
loadout_initial_colors = list("#FFFFFF", "#808080", "#353535")
|
||||
|
||||
/datum/gear/uniform/skirt/poly
|
||||
name = "Polychromic Jumpskirt"
|
||||
path = /obj/item/clothing/under/dress/skirt/polychromic
|
||||
cost = 2
|
||||
loadout_flags = LOADOUT_CAN_COLOR_POLYCHROMIC
|
||||
loadout_flags = LOADOUT_CAN_NAME | LOADOUT_CAN_DESCRIPTION | LOADOUT_CAN_COLOR_POLYCHROMIC
|
||||
loadout_initial_colors = list("#FFFFFF", "#F08080", "#808080")
|
||||
|
||||
/datum/gear/uniform/suit/poly
|
||||
name = "Polychromic Button-up Shirt"
|
||||
path = /obj/item/clothing/under/misc/poly_shirt
|
||||
cost = 3
|
||||
loadout_flags = LOADOUT_CAN_COLOR_POLYCHROMIC
|
||||
loadout_flags = LOADOUT_CAN_NAME | LOADOUT_CAN_DESCRIPTION | LOADOUT_CAN_COLOR_POLYCHROMIC
|
||||
loadout_initial_colors = list("#FFFFFF", "#353535", "#353535")
|
||||
|
||||
/datum/gear/uniform/skirt/poly/pleated
|
||||
name = "Polychromic Pleated Sweaterskirt"
|
||||
path = /obj/item/clothing/under/dress/skirt/polychromic/pleated
|
||||
cost = 3
|
||||
loadout_flags = LOADOUT_CAN_COLOR_POLYCHROMIC
|
||||
loadout_flags = LOADOUT_CAN_NAME | LOADOUT_CAN_DESCRIPTION | LOADOUT_CAN_COLOR_POLYCHROMIC
|
||||
loadout_initial_colors = list("#8CC6FF", "#808080", "#FF3535")
|
||||
|
||||
/datum/gear/uniform/polykilt
|
||||
name = "Polychromic Kilt"
|
||||
path = /obj/item/clothing/under/costume/kilt/polychromic
|
||||
cost = 3
|
||||
loadout_flags = LOADOUT_CAN_COLOR_POLYCHROMIC
|
||||
loadout_flags = LOADOUT_CAN_NAME | LOADOUT_CAN_DESCRIPTION | LOADOUT_CAN_COLOR_POLYCHROMIC
|
||||
loadout_initial_colors = list("#FFFFFF", "#F08080")
|
||||
|
||||
/datum/gear/uniform/shorts/poly
|
||||
name = "Polychromic Shorts"
|
||||
path = /obj/item/clothing/under/misc/polyshorts
|
||||
cost = 3
|
||||
loadout_flags = LOADOUT_CAN_COLOR_POLYCHROMIC
|
||||
loadout_flags = LOADOUT_CAN_NAME | LOADOUT_CAN_DESCRIPTION | LOADOUT_CAN_COLOR_POLYCHROMIC
|
||||
loadout_initial_colors = list("#353535", "#808080", "#808080")
|
||||
|
||||
/datum/gear/uniform/shorts/poly/athletic
|
||||
name = "Polychromic Athletic Shorts"
|
||||
path = /obj/item/clothing/under/shorts/polychromic
|
||||
cost = 2
|
||||
loadout_flags = LOADOUT_CAN_COLOR_POLYCHROMIC
|
||||
loadout_flags = LOADOUT_CAN_NAME | LOADOUT_CAN_DESCRIPTION | LOADOUT_CAN_COLOR_POLYCHROMIC
|
||||
loadout_initial_colors = list("#FFFFFF", "#F08080")
|
||||
|
||||
/datum/gear/uniform/hopcasual
|
||||
|
||||
@@ -27,4 +27,4 @@
|
||||
path = /obj/item/bedsheet/unlockable/miner
|
||||
|
||||
progress_required = 100000
|
||||
progress_key = "miner"
|
||||
progress_key = "miner"
|
||||
|
||||
@@ -51,58 +51,58 @@
|
||||
blood_overlay_type = "coat"
|
||||
body_parts_covered = CHEST|GROIN|ARMS
|
||||
allowed = list(
|
||||
/obj/item/tank/internals/emergency_oxygen,
|
||||
/obj/item/flashlight,
|
||||
/obj/item/analyzer,
|
||||
/obj/item/radio,
|
||||
/obj/item/gun,
|
||||
/obj/item/melee/baton,
|
||||
/obj/item/restraints/handcuffs,
|
||||
/obj/item/reagent_containers/hypospray,
|
||||
/obj/item/hypospray,
|
||||
/obj/item/healthanalyzer,
|
||||
/obj/item/reagent_containers/syringe,
|
||||
/obj/item/reagent_containers/glass/bottle/vial,
|
||||
/obj/item/reagent_containers/glass/beaker,
|
||||
/obj/item/storage/pill_bottle,
|
||||
/obj/item/taperecorder)
|
||||
/obj/item/tank/internals/emergency_oxygen,
|
||||
/obj/item/flashlight,
|
||||
/obj/item/analyzer,
|
||||
/obj/item/radio,
|
||||
/obj/item/gun,
|
||||
/obj/item/melee/baton,
|
||||
/obj/item/restraints/handcuffs,
|
||||
/obj/item/reagent_containers/hypospray,
|
||||
/obj/item/hypospray,
|
||||
/obj/item/healthanalyzer,
|
||||
/obj/item/reagent_containers/syringe,
|
||||
/obj/item/reagent_containers/glass/bottle/vial,
|
||||
/obj/item/reagent_containers/glass/beaker,
|
||||
/obj/item/storage/pill_bottle,
|
||||
/obj/item/taperecorder)
|
||||
armor = list("melee" = 0, "bullet" = 0, "laser" = 0,"energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 0, "acid" = 0)
|
||||
var/unbuttoned = 0
|
||||
var/unbuttoned = FALSE
|
||||
|
||||
verb/toggle()
|
||||
set name = "Toggle coat buttons"
|
||||
set category = "Object"
|
||||
set src in usr
|
||||
/obj/item/clothing/suit/storage/fluff/fedcoat/verb/toggle()
|
||||
set name = "Toggle coat buttons"
|
||||
set category = "Object"
|
||||
set src in usr
|
||||
|
||||
var/mob/living/L = usr
|
||||
if(!istype(L) || !CHECK_MOBILITY(L, MOBILITY_USE))
|
||||
return FALSE
|
||||
var/mob/living/L = usr
|
||||
if(!istype(L) || !CHECK_MOBILITY(L, MOBILITY_USE))
|
||||
return FALSE
|
||||
|
||||
switch(unbuttoned)
|
||||
if(0)
|
||||
icon_state = "[initial(icon_state)]_open"
|
||||
item_state = "[initial(item_state)]_open"
|
||||
unbuttoned = 1
|
||||
to_chat(usr,"You unbutton the coat.")
|
||||
if(1)
|
||||
icon_state = "[initial(icon_state)]"
|
||||
item_state = "[initial(item_state)]"
|
||||
unbuttoned = 0
|
||||
to_chat(usr,"You button up the coat.")
|
||||
usr.update_inv_wear_suit()
|
||||
switch(unbuttoned)
|
||||
if(FALSE)
|
||||
icon_state = "[initial(icon_state)]_open"
|
||||
item_state = "[initial(item_state)]_open"
|
||||
unbuttoned = TRUE
|
||||
to_chat(usr,"You unbutton the coat.")
|
||||
if(TRUE)
|
||||
icon_state = "[initial(icon_state)]"
|
||||
item_state = "[initial(item_state)]"
|
||||
unbuttoned = FALSE
|
||||
to_chat(usr,"You button up the coat.")
|
||||
usr.update_inv_wear_suit()
|
||||
|
||||
//Variants
|
||||
//Variants
|
||||
/obj/item/clothing/suit/storage/fluff/fedcoat/medsci
|
||||
icon_state = "fedblue"
|
||||
item_state = "fedblue"
|
||||
icon_state = "fedblue"
|
||||
item_state = "fedblue"
|
||||
|
||||
/obj/item/clothing/suit/storage/fluff/fedcoat/eng
|
||||
icon_state = "fedeng"
|
||||
item_state = "fedeng"
|
||||
icon_state = "fedeng"
|
||||
item_state = "fedeng"
|
||||
|
||||
/obj/item/clothing/suit/storage/fluff/fedcoat/capt
|
||||
icon_state = "fedcapt"
|
||||
item_state = "fedcapt"
|
||||
icon_state = "fedcapt"
|
||||
item_state = "fedcapt"
|
||||
|
||||
//"modern" ones for fancy
|
||||
|
||||
@@ -124,18 +124,18 @@
|
||||
)
|
||||
armor = list("melee" = 0, "bullet" = 0, "laser" = 0,"energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 0, "acid" = 0)
|
||||
|
||||
//Variants
|
||||
//Variants
|
||||
/obj/item/clothing/suit/storage/fluff/modernfedcoat/medsci
|
||||
icon_state = "fedmodernblue"
|
||||
item_state = "fedmodernblue"
|
||||
icon_state = "fedmodernblue"
|
||||
item_state = "fedmodernblue"
|
||||
|
||||
/obj/item/clothing/suit/storage/fluff/modernfedcoat/eng
|
||||
icon_state = "fedmoderneng"
|
||||
item_state = "fedmoderneng"
|
||||
icon_state = "fedmoderneng"
|
||||
item_state = "fedmoderneng"
|
||||
|
||||
/obj/item/clothing/suit/storage/fluff/modernfedcoat/sec
|
||||
icon_state = "fedmodernsec"
|
||||
item_state = "fedmodernsec"
|
||||
icon_state = "fedmodernsec"
|
||||
item_state = "fedmodernsec"
|
||||
|
||||
/obj/item/clothing/head/caphat/formal/fedcover
|
||||
name = "Federation Officer's Cap"
|
||||
@@ -146,22 +146,22 @@
|
||||
mob_overlay_icon = 'modular_citadel/icons/mob/clothing/trek_mob_icon.dmi'
|
||||
item_state = "fedcapofficer"
|
||||
|
||||
//Variants
|
||||
//Variants
|
||||
/obj/item/clothing/head/caphat/formal/fedcover/medsci
|
||||
icon_state = "fedcapsci"
|
||||
item_state = "fedcapsci"
|
||||
icon_state = "fedcapsci"
|
||||
item_state = "fedcapsci"
|
||||
|
||||
/obj/item/clothing/head/caphat/formal/fedcover/eng
|
||||
icon_state = "fedcapeng"
|
||||
item_state = "fedcapeng"
|
||||
icon_state = "fedcapeng"
|
||||
item_state = "fedcapeng"
|
||||
|
||||
/obj/item/clothing/head/caphat/formal/fedcover/sec
|
||||
icon_state = "fedcapsec"
|
||||
item_state = "fedcapsec"
|
||||
icon_state = "fedcapsec"
|
||||
item_state = "fedcapsec"
|
||||
|
||||
/obj/item/clothing/head/caphat/formal/fedcover/black
|
||||
icon_state = "fedcapblack"
|
||||
item_state = "fedcapblack"
|
||||
icon_state = "fedcapblack"
|
||||
item_state = "fedcapblack"
|
||||
|
||||
//orvilike caps
|
||||
/obj/item/clothing/head/kepi/orvi
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
The Recolourable Energy Gun
|
||||
*//////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
obj/item/gun/energy/e_gun/cx
|
||||
/obj/item/gun/energy/e_gun/cx
|
||||
name = "\improper CX Model D Energy Gun"
|
||||
desc = "An overpriced hybrid energy gun with two settings: disable, and kill. Manufactured by CX Armories. Has a polychromic coating."
|
||||
icon = 'modular_citadel/icons/obj/guns/cit_guns.dmi'
|
||||
@@ -14,18 +14,18 @@ obj/item/gun/energy/e_gun/cx
|
||||
flight_y_offset = 10
|
||||
var/body_color = "#252528"
|
||||
|
||||
obj/item/gun/energy/e_gun/cx/ComponentInitialize()
|
||||
/obj/item/gun/energy/e_gun/cx/ComponentInitialize()
|
||||
. = ..()
|
||||
AddElement(/datum/element/update_icon_updates_onmob)
|
||||
|
||||
obj/item/gun/energy/e_gun/cx/update_overlays()
|
||||
/obj/item/gun/energy/e_gun/cx/update_overlays()
|
||||
. = ..()
|
||||
var/mutable_appearance/body_overlay = mutable_appearance('modular_citadel/icons/obj/guns/cit_guns.dmi', "cxegun_body")
|
||||
if(body_color)
|
||||
body_overlay.color = body_color
|
||||
. += body_overlay
|
||||
|
||||
obj/item/gun/energy/e_gun/cx/AltClick(mob/living/user)
|
||||
/obj/item/gun/energy/e_gun/cx/AltClick(mob/living/user)
|
||||
. = ..()
|
||||
if(!in_range(src, user)) //Basic checks to prevent abuse
|
||||
return
|
||||
@@ -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, used_state, 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")
|
||||
|
||||
@@ -30,7 +30,6 @@
|
||||
inverse_chem = /datum/reagent/fermi/BEsmaller //At really impure vols, it just becomes 100% inverse
|
||||
can_synth = FALSE
|
||||
value = REAGENT_VALUE_VERY_RARE
|
||||
var/message_spam = FALSE
|
||||
|
||||
/datum/reagent/fermi/breast_enlarger/on_mob_metabolize(mob/living/M)
|
||||
. = ..()
|
||||
@@ -81,16 +80,7 @@
|
||||
H.reagents.remove_reagent(type, 5)
|
||||
B.Insert(H)
|
||||
|
||||
//If they have them, increase size. If size is comically big, limit movement and rip clothes.
|
||||
B.modify_size(0.05)
|
||||
|
||||
if (ISINRANGE_EX(B.cached_size, 8.5, 9) && (H.w_uniform || H.wear_suit))
|
||||
var/target = H.get_bodypart(BODY_ZONE_CHEST)
|
||||
if(!message_spam)
|
||||
to_chat(H, "<span class='danger'>Your breasts begin to strain against your clothes tightly!</b></span>")
|
||||
message_spam = TRUE
|
||||
H.adjustOxyLoss(5, 0)
|
||||
H.apply_damage(1, BRUTE, target)
|
||||
return ..()
|
||||
|
||||
/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.
|
||||
@@ -189,7 +179,6 @@
|
||||
inverse_chem = /datum/reagent/fermi/PEsmaller //At really impure vols, it just becomes 100% inverse and shrinks instead.
|
||||
can_synth = FALSE
|
||||
value = REAGENT_VALUE_VERY_RARE
|
||||
var/message_spam = FALSE
|
||||
|
||||
/datum/reagent/fermi/penis_enlarger/on_mob_metabolize(mob/living/M)
|
||||
. = ..()
|
||||
@@ -232,14 +221,6 @@
|
||||
P.Insert(H)
|
||||
|
||||
P.modify_size(0.1)
|
||||
var/max_D = CONFIG_GET(number/penis_max_inches_prefs)
|
||||
if (ISINRANGE_EX(P.length, max_D + 0.5, max_D + 1) && (H.w_uniform || H.wear_suit))
|
||||
var/target = H.get_bodypart(BODY_ZONE_CHEST)
|
||||
if(!message_spam)
|
||||
to_chat(H, "<span class='danger'>Your cock begin to strain against your clothes tightly!</b></span>")
|
||||
message_spam = TRUE
|
||||
H.apply_damage(2.5, BRUTE, target)
|
||||
|
||||
return ..()
|
||||
|
||||
/datum/reagent/fermi/penis_enlarger/overdose_process(mob/living/carbon/human/M) //Turns you into a male if female and ODing, doesn't touch nonbinary and object genders.
|
||||
|
||||
@@ -216,7 +216,6 @@
|
||||
..()
|
||||
|
||||
/datum/reagent/fermi/nanite_b_gone/overdose_process(mob/living/carbon/C)
|
||||
//var/component/nanites/N = M.GetComponent(/datum/component/nanites)
|
||||
var/datum/component/nanites/N = C.GetComponent(/datum/component/nanites)
|
||||
if(prob(5))
|
||||
to_chat(C, "<span class='warning'>The residual voltage from the nanites causes you to seize up!</b></span>")
|
||||
@@ -230,7 +229,7 @@
|
||||
N.adjust_nanites(-10*cached_purity)
|
||||
..()
|
||||
|
||||
datum/reagent/fermi/nanite_b_gone/reaction_obj(obj/O, reac_volume)
|
||||
/datum/reagent/fermi/nanite_b_gone/reaction_obj(obj/O, reac_volume)
|
||||
for(var/active_obj in react_objs)
|
||||
if(O == active_obj)
|
||||
return
|
||||
|
||||
@@ -93,9 +93,8 @@
|
||||
e.set_up(round((volume/28)*(pH-9)), T, 0, 0)
|
||||
e.start()
|
||||
|
||||
if(!ImpureTot == 0) //If impure, v.small emp (0.6 or less)
|
||||
ImpureTot *= volume
|
||||
empulse(T, volume, 1)
|
||||
if(ImpureTot) //If impure, v.small emp (0.6 or less)
|
||||
empulse(T, ImpureTot, 1)
|
||||
|
||||
my_atom.reagents.clear_reagents() //just in case
|
||||
return
|
||||
|
||||
Reference in New Issue
Block a user