Merge remote-tracking branch 'upstream/master' into loadout-json
This commit is contained in:
@@ -86,3 +86,7 @@
|
||||
/datum/gear/neck/polycloak
|
||||
name = "Polychromatic Cloak"
|
||||
path = /obj/item/clothing/neck/cloak/polychromic
|
||||
|
||||
/datum/gear/neck/altpolycloak
|
||||
name = "Alternate Cloak"
|
||||
path = /obj/item/clothing/neck/cloak/alt/polychromic
|
||||
|
||||
@@ -211,6 +211,14 @@
|
||||
name = "Keyhole Sweater"
|
||||
path = /obj/item/clothing/under/misc/keyholesweater
|
||||
|
||||
/datum/gear/uniform/tealturtle
|
||||
name = "Teal Turtleneck"
|
||||
path = /obj/item/clothing/under/suit/turtle/teal
|
||||
|
||||
/datum/gear/uniform/greyturtle
|
||||
name = "Grey Turtleneck"
|
||||
path = /obj/item/clothing/under/suit/turtle/grey
|
||||
|
||||
/datum/gear/uniform/polyjump
|
||||
name = "Polychromic Jumpsuit"
|
||||
path = /obj/item/clothing/under/misc/polyjumpsuit
|
||||
@@ -246,6 +254,127 @@
|
||||
path = /obj/item/clothing/under/shorts/polychromic
|
||||
cost = 2
|
||||
|
||||
/datum/gear/uniform/hopcasual
|
||||
name = "Casual Head of Personnel's uniform"
|
||||
path = /obj/item/clothing/under/rank/civilian/head_of_personnel/whimsy
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_JOBS
|
||||
restricted_desc = "Head of Personnel"
|
||||
restricted_roles = list("Head of Personnel")
|
||||
|
||||
/datum/gear/uniform/robosleek
|
||||
name = "Sleek roboticist's jumpsuit"
|
||||
path = /obj/item/clothing/under/rank/rnd/roboticist/sleek
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_JOBS
|
||||
restricted_desc = "Roboticist"
|
||||
restricted_roles = list("Roboticist")
|
||||
|
||||
/datum/gear/uniform/seccorp
|
||||
name = "Corporate Security Uniform"
|
||||
path = /obj/item/clothing/under/rank/security/officer/blueshirt/seccorp
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_JOBS
|
||||
restricted_desc = "Security Officer"
|
||||
restricted_roles = list("Security Officer")
|
||||
|
||||
/datum/gear/uniform/wardencorp
|
||||
name = "Corporate Warden's Uniform"
|
||||
path = /obj/item/clothing/under/rank/security/officer/blueshirt/seccorp/wardencorp
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_JOBS
|
||||
restricted_desc = "Warden"
|
||||
restricted_roles = list("Warden")
|
||||
|
||||
/datum/gear/uniform/hoscorp
|
||||
name = "Corporate Head of Security's Uniform"
|
||||
path = /obj/item/clothing/under/rank/security/officer/blueshirt/seccorp/hoscorp
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_JOBS
|
||||
restricted_desc = "Head Of Security"
|
||||
restricted_roles = list("Head Of Security")
|
||||
|
||||
/datum/gear/uniform/detcorp
|
||||
name = "Corporate Detective's Uniform"
|
||||
path = /obj/item/clothing/under/rank/security/officer/blueshirt/seccorp/detcorp
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_JOBS
|
||||
restricted_desc = "Detective"
|
||||
restricted_roles = list("Detective")
|
||||
|
||||
/datum/gear/uniform/detbrown
|
||||
name = "Brown Worn Suit"
|
||||
path = /obj/item/clothing/under/rank/security/detective/brown
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_JOBS
|
||||
restricted_desc = "Detective"
|
||||
restricted_roles = list("Detective")
|
||||
|
||||
/datum/gear/uniform/detbrown/detbrown2
|
||||
name = "Padded Worn Suit"
|
||||
path = /obj/item/clothing/under/rank/security/detective/brown/brown2
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_JOBS
|
||||
restricted_desc = "Detective"
|
||||
restricted_roles = list("Detective")
|
||||
|
||||
|
||||
// Grey utility
|
||||
|
||||
/datum/gear/uniform/grey
|
||||
name = "Grey Uniform"
|
||||
path = /obj/item/clothing/under/rank/civilian/util/greyshirt
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_GENERAL
|
||||
|
||||
/datum/gear/uniform/grey/util
|
||||
name = "Grey Utility Uniform"
|
||||
path = /obj/item/clothing/under/rank/civilian/util
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_GENERAL
|
||||
|
||||
/datum/gear/uniform/grey/sec
|
||||
name = "Security Utility Uniform"
|
||||
path = /obj/item/clothing/under/rank/security/officer/util
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_JOBS
|
||||
restricted_desc = "Security"
|
||||
restricted_roles = list("Detective", "Security Officer", "Warden", "Head of Security")
|
||||
|
||||
/datum/gear/uniform/grey/sci
|
||||
name = "Science Utility Uniform"
|
||||
path = /obj/item/clothing/under/rank/rnd/scientist/util
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_JOBS
|
||||
restricted_desc = "Science"
|
||||
restricted_roles = list("Scientist", "Roboticist", "Research Director", "Geneticist")
|
||||
|
||||
/datum/gear/uniform/grey/med
|
||||
name = "Medical Utility Uniform"
|
||||
path = /obj/item/clothing/under/rank/medical/doctor/util
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_JOBS
|
||||
restricted_desc = "Medical"
|
||||
restricted_roles = list("Medical Doctor", "Virologist", "Chemist", "Geneticist", "Paramedic")
|
||||
|
||||
/datum/gear/uniform/grey/eng
|
||||
name = "Engineering Utility Uniform"
|
||||
path = /obj/item/clothing/under/rank/engineering/engineer/util
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_JOBS
|
||||
restricted_desc = "Engineering"
|
||||
restricted_roles = list("Station Engineer", "Atmospheric Technician", "Chief Engineer")
|
||||
|
||||
/datum/gear/uniform/grey/supply
|
||||
name = "Supply Utility Uniform"
|
||||
path = /obj/item/clothing/under/rank/cargo/util
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_JOBS
|
||||
restricted_desc = "Supply"
|
||||
restricted_roles = list("Shaft Miner", "Cargo Technician", "Quartermaster")
|
||||
|
||||
/datum/gear/uniform/grey/com
|
||||
name = "Command Utility Uniform"
|
||||
path = /obj/item/clothing/under/rank/captain/util
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_JOBS
|
||||
restricted_desc = "Command"
|
||||
restricted_roles = list("Quartermaster", "Research Director", "Chief Medical Officer", "Head Of Security", "Head Of Personnel", "Captain")
|
||||
|
||||
/datum/gear/uniform/grey/eng/mech
|
||||
name = "Mechanic's Uniform"
|
||||
path = /obj/item/clothing/under/rank/engineering/engineer/mechanic
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_JOBS
|
||||
|
||||
/datum/gear/unifrom/grey/med/red
|
||||
name = "Red Paramedic's Uniform"
|
||||
path = /obj/item/clothing/under/rank/medical/paramedic/red
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_JOBS
|
||||
|
||||
// Trekie things
|
||||
//TOS
|
||||
/datum/gear/uniform/trekcmdtos
|
||||
@@ -540,3 +669,9 @@
|
||||
/datum/gear/uniform/kimono/sakura
|
||||
name = "Sakura kimono"
|
||||
path = /obj/item/clothing/under/costume/kimono/sakura
|
||||
|
||||
/datum/gear/uniform/ctlong
|
||||
name = "cargo tech's jumpsuit (long pants)"
|
||||
path = /obj/item/clothing/under/rank/cargo/tech/long
|
||||
subcategory = LOADOUT_SUBCATEGORY_UNIFORM_JOBS
|
||||
restricted_roles = list("Cargo Technician")
|
||||
|
||||
@@ -1,16 +1,3 @@
|
||||
/mob/living/carbon/adjustStaminaLossBuffered(amount, updating_health = 1)
|
||||
if(status_flags & GODMODE)
|
||||
return 0
|
||||
if(CONFIG_GET(flag/disable_stambuffer))
|
||||
return
|
||||
var/directstamloss = (bufferedstam + amount) - stambuffer
|
||||
if(directstamloss > 0)
|
||||
adjustStaminaLoss(directstamloss)
|
||||
bufferedstam = clamp(bufferedstam + amount, 0, stambuffer)
|
||||
stambufferregentime = world.time + 10
|
||||
if(updating_health)
|
||||
update_health_hud()
|
||||
|
||||
/mob/living/carbon/adjustStaminaLoss(amount, updating_health = TRUE, forced = FALSE, affected_zone = BODY_ZONE_CHEST)
|
||||
if(!forced && (status_flags & GODMODE))
|
||||
return FALSE
|
||||
|
||||
@@ -1,2 +0,0 @@
|
||||
/mob/living/proc/adjustStaminaLossBuffered(amount, updating_health = TRUE, forced = FALSE)
|
||||
return
|
||||
@@ -1,5 +1,3 @@
|
||||
/mob/living
|
||||
|
||||
/atom
|
||||
var/pseudo_z_axis
|
||||
|
||||
@@ -24,26 +22,3 @@
|
||||
if(.)
|
||||
pseudo_z_axis = newloc.get_fake_z()
|
||||
pixel_z = pseudo_z_axis
|
||||
|
||||
/mob/living/carbon/update_stamina()
|
||||
var/total_health = getStaminaLoss()
|
||||
if(total_health >= STAMINA_SOFTCRIT)
|
||||
if(!(combat_flags & COMBAT_FLAG_SOFT_STAMCRIT))
|
||||
ENABLE_BITFIELD(combat_flags, COMBAT_FLAG_SOFT_STAMCRIT)
|
||||
else
|
||||
if(combat_flags & COMBAT_FLAG_SOFT_STAMCRIT)
|
||||
DISABLE_BITFIELD(combat_flags, COMBAT_FLAG_SOFT_STAMCRIT)
|
||||
if(total_health)
|
||||
if(!(combat_flags & COMBAT_FLAG_HARD_STAMCRIT) && total_health >= STAMINA_CRIT && !stat)
|
||||
to_chat(src, "<span class='notice'>You're too exhausted to keep going...</span>")
|
||||
set_resting(TRUE, FALSE, FALSE)
|
||||
SEND_SIGNAL(src, COMSIG_DISABLE_COMBAT_MODE)
|
||||
ENABLE_BITFIELD(combat_flags, COMBAT_FLAG_HARD_STAMCRIT)
|
||||
filters += CIT_FILTER_STAMINACRIT
|
||||
update_mobility()
|
||||
if((combat_flags & COMBAT_FLAG_HARD_STAMCRIT) && total_health <= STAMINA_SOFTCRIT)
|
||||
to_chat(src, "<span class='notice'>You don't feel nearly as exhausted anymore.</span>")
|
||||
DISABLE_BITFIELD(combat_flags, COMBAT_FLAG_HARD_STAMCRIT | COMBAT_FLAG_SOFT_STAMCRIT)
|
||||
filters -= CIT_FILTER_STAMINACRIT
|
||||
update_mobility()
|
||||
update_health_hud()
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
var/recentpump = 0 // to prevent spammage
|
||||
|
||||
/obj/item/gun/energy/pumpaction/emp_act(severity) //makes it not rack itself when emp'd
|
||||
cell.use(round(cell.charge / severity))
|
||||
cell.use(round(cell.charge * severity/100))
|
||||
chambered = null //we empty the chamber
|
||||
update_icon()
|
||||
|
||||
|
||||
@@ -36,6 +36,11 @@ IMPORTANT FACTORS TO CONSIDER WHILE BALANCING
|
||||
6. Giving this to someone without concent is against space law and gets you sent to gulag.
|
||||
*/
|
||||
|
||||
#define POLICYCONFIG_SDGF "SDGF"
|
||||
#define POLICYCONFIG_SDGF_GOOD "SDGF_ALIGNED"
|
||||
#define POLICYCONFIG_SDGF_BAD "SDGF_UNALIGNED"
|
||||
|
||||
|
||||
//Clone serum #chemClone
|
||||
/datum/reagent/fermi/SDGF //vars, mostly only care about keeping track if there's a player in the clone or not.
|
||||
name = "synthetic-derived growth factor"
|
||||
@@ -45,7 +50,7 @@ IMPORTANT FACTORS TO CONSIDER WHILE BALANCING
|
||||
var/unitCheck = FALSE
|
||||
metabolization_rate = 0.5 * REAGENTS_METABOLISM
|
||||
taste_description = "a weird chemical fleshy flavour"
|
||||
var/list/candies = list()
|
||||
var/list/ghosts = list()
|
||||
var/pollStarted = FALSE
|
||||
var/startHunger
|
||||
impure_chem = /datum/reagent/impure/SDGFtox
|
||||
@@ -63,10 +68,11 @@ IMPORTANT FACTORS TO CONSIDER WHILE BALANCING
|
||||
startHunger = M.nutrition
|
||||
if(pollStarted == FALSE)
|
||||
pollStarted = TRUE
|
||||
candies = pollGhostCandidates("Do you want to play as [M]'s defective clone? (Don't ERP without permission from the original)", ignore_category = POLL_IGNORE_CLONE)
|
||||
ghosts = pollGhostCandidates("Do you want to play as [M]'s SDGF clone? (Don't ERP without permission from the original, and respect their character.)", ignore_category = POLL_IGNORE_CLONE)
|
||||
log_reagent("FERMICHEM: [M] ckey: [M.key] has taken SDGF, and ghosts have been polled.")
|
||||
to_chat(M,"<span class='notice'>If a ghost takes your clone, they will be identical to you. You may wish to add note (IC tab) to help them play your character better, and keep them up on the situation.</span>")
|
||||
if(20 to INFINITY)
|
||||
if(LAZYLEN(candies) && playerClone == FALSE) //If there's candidates, clone the person and put them in there!
|
||||
if(LAZYLEN(ghosts) && playerClone == FALSE) //If there's candidates, clone the person and put them in there!
|
||||
to_chat(M, "<span class='warning'>The cells reach a critical micelle concentration, nucleating rapidly within your body!</span>")
|
||||
var/typepath = M.type
|
||||
var/mob/living/carbon/human/fermi_Gclone = new typepath(M.loc)
|
||||
@@ -74,18 +80,22 @@ IMPORTANT FACTORS TO CONSIDER WHILE BALANCING
|
||||
if(istype(SM) && istype(M))
|
||||
SM.real_name = M.real_name
|
||||
M.dna.transfer_identity(SM)
|
||||
SM.underwear = "nude"
|
||||
SM.socks = "nude"
|
||||
SM.undershirt = "nude"
|
||||
M.transfer_trait_datums(SM)
|
||||
SM.updateappearance(mutcolor_update=1)
|
||||
|
||||
//Process the willing ghosts, and make sure they're actually in the body when they're moved into it!
|
||||
candies = shuffle(candies)//Shake those ghosts up!
|
||||
for(var/mob/dead/observer/C2 in candies)
|
||||
ghosts = shuffle(ghosts)//Shake those ghosts up!
|
||||
for(var/mob/dead/observer/C2 in ghosts)
|
||||
if(C2.key && C2)
|
||||
C2.transfer_ckey(SM, FALSE)
|
||||
message_admins("Ghost candidate found! [C2] key [C2.key] is becoming a clone of [M] key: [M.key] (They agreed to respect the character they're becoming, and agreed to not ERP without express permission from the original.)")
|
||||
log_reagent("FERMICHEM: [M] ckey: [M.key] is creating a clone, controlled by [C2]")
|
||||
break
|
||||
else
|
||||
candies -= C2
|
||||
ghosts -= C2
|
||||
if(!SM.mind) //Something went wrong, use alt mechanics
|
||||
return ..()
|
||||
SM.mind.enslave_mind_to_creator(M)
|
||||
@@ -99,16 +109,28 @@ IMPORTANT FACTORS TO CONSIDER WHILE BALANCING
|
||||
ZI.Insert(SM)
|
||||
log_reagent("FERMICHEM: [M] ckey: [M.key]'s zombie_infection has been transferred to their clone")
|
||||
|
||||
to_chat(SM, "<span class='warning'>You feel a strange sensation building in your mind as you realise there's two of you, before you get a chance to think about it, you suddenly split from your old body, and find yourself face to face with your original, a perfect clone of your origin.</span>")
|
||||
|
||||
if(prob(50))
|
||||
to_chat(SM, "<span class='userdanger'>While you find your newfound existence strange, you share the same memories as [M.real_name]. However, You find yourself indifferent to the goals you previously had, and take more interest in your newfound independence, but still have an indescribable care for the safety of your original.</span>")
|
||||
log_reagent("FERMICHEM: [SM] ckey: [SM.key]'s is not bound by [M] ckey [M.key]'s will, and is free to determine their own goals, while respecting and acting as their origin.")
|
||||
else
|
||||
to_chat(SM, "<span class='userdanger'>While you find your newfound existence strange, you share the same memories as [M.real_name]. Your mind has not deviated from the tasks you set out to do, and now that there's two of you the tasks should be much easier.</span>")
|
||||
var/list/policies = CONFIG_GET(keyed_list/policyconfig)
|
||||
var/policy = policies[POLICYCONFIG_SDGF]
|
||||
if(policy)
|
||||
to_chat(SM,policy)
|
||||
if(prob((purity**3) * 80)) // 80% chance at 100% purity, 0% chance at 0 purity
|
||||
policy = policies[POLICYCONFIG_SDGF_GOOD]
|
||||
if(policy)
|
||||
to_chat(SM,policy)
|
||||
else
|
||||
to_chat(SM, "<span class='userdanger'>While you find your newfound existence strange, you share the same memories as [M.real_name]. Your mind has not deviated from the tasks you set out to do, and now that there's two of you the tasks should be much easier.</span>")
|
||||
log_reagent("FERMICHEM: [SM] ckey: [SM.key]'s is bound by [M] ckey [M.key]'s objectives, and is encouraged to help them complete them.")
|
||||
|
||||
to_chat(M, "<span class='warning'>You feel a strange sensation building in your mind as you realise there's two of you, before you get a chance to think about it, you suddenly split from your old body, and find yourself face to face with yourself.</span>")
|
||||
else
|
||||
policy = policies[POLICYCONFIG_SDGF_BAD]
|
||||
if(policy)
|
||||
to_chat(SM,policy)
|
||||
else
|
||||
to_chat(SM, "<span class='userdanger'>While you find your newfound existence strange, you share the same memories as [M.real_name]. However, You find yourself indifferent to the goals you previously had, and take more interest in your newfound independence, but still have an indescribable care for the safety of your original.</span>")
|
||||
log_reagent("FERMICHEM: [SM] ckey: [SM.key]'s is not bound by [M] ckey [M.key]'s will, and is free to determine their own goals, while respecting and acting as their origin.")
|
||||
|
||||
to_chat(SM, "<span class='warning'>You feel a strange sensation building in your mind as you realise there's two of you. Before you get a chance to think about it, you suddenly split from your old body, and find yourself face to face with your original, a perfect clone of your origin.</span>")
|
||||
SM.client?.change_view(CONFIG_GET(string/default_view))
|
||||
to_chat(M, "<span class='warning'>You feel a strange sensation building in your mind as you realise there's two of you. Before you get a chance to think about it, a mass splits from you, and find yourself face to face with yourself.</span>")
|
||||
M.visible_message("[M] suddenly shudders, and splits into two identical twins!")
|
||||
SM.copy_languages(M, LANGUAGE_MIND)
|
||||
playerClone = TRUE
|
||||
@@ -170,18 +192,22 @@ IMPORTANT FACTORS TO CONSIDER WHILE BALANCING
|
||||
//clone
|
||||
var/typepath = M.type
|
||||
var/mob/living/fermi_Clone = new typepath(M.loc)
|
||||
var/mob/living/carbon/C = fermi_Clone
|
||||
var/mob/living/carbon/human/SM = fermi_Clone
|
||||
|
||||
if(istype(C) && istype(M))
|
||||
C.real_name = M.real_name
|
||||
M.dna.transfer_identity(C, transfer_SE=1)
|
||||
C.updateappearance(mutcolor_update=1)
|
||||
C.apply_status_effect(/datum/status_effect/chem/SGDF)
|
||||
var/datum/status_effect/chem/SGDF/S = C.has_status_effect(/datum/status_effect/chem/SGDF)
|
||||
if(istype(SM) && istype(M))
|
||||
SM.real_name = M.real_name
|
||||
M.dna.transfer_identity(SM, transfer_SE=1)
|
||||
SM.underwear = "nude"
|
||||
SM.socks = "nude"
|
||||
SM.undershirt = "nude"
|
||||
SM.updateappearance(mutcolor_update=1)
|
||||
M.transfer_trait_datums(SM)
|
||||
SM.real_name = M.real_name
|
||||
SM.apply_status_effect(/datum/status_effect/chem/SGDF)
|
||||
var/datum/status_effect/chem/SGDF/S = SM.has_status_effect(/datum/status_effect/chem/SGDF)
|
||||
S.original = M
|
||||
S.originalmind = M.mind
|
||||
S.status_set = TRUE
|
||||
|
||||
log_reagent("FERMICHEM: [M] ckey: [M.key] has created a mindless clone of themselves")
|
||||
SSblackbox.record_feedback("tally", "fermi_chem", 1, "Braindead clones made")
|
||||
if(87 to INFINITY)
|
||||
@@ -236,6 +262,7 @@ IMPORTANT FACTORS TO CONSIDER WHILE BALANCING
|
||||
SM.real_name = M.real_name
|
||||
M.dna.transfer_identity(SM)
|
||||
SM.updateappearance(mutcolor_update=1)
|
||||
M.transfer_trait_datums(SM)
|
||||
M.mind.transfer_to(SM)
|
||||
M.visible_message("<span class='warning'>[M]'s body shudders, the growth factor rapidly splitting into a new clone of [M].</span>")
|
||||
|
||||
|
||||
@@ -221,7 +221,7 @@
|
||||
C.electrocute_act(10, (get_turf(C)), 1, SHOCK_ILLUSION)
|
||||
if(prob(10))
|
||||
var/atom/T = C
|
||||
T.emp_act(EMP_HEAVY)
|
||||
T.emp_act(80)
|
||||
to_chat(C, "<span class='warning'>You feel a strange tingling sensation come from your core.</b></span>")
|
||||
if(isnull(N))
|
||||
return ..()
|
||||
@@ -233,7 +233,7 @@ datum/reagent/fermi/nanite_b_gone/reaction_obj(obj/O, reac_volume)
|
||||
if(O == active_obj)
|
||||
return
|
||||
react_objs += O
|
||||
O.emp_act(EMP_HEAVY)
|
||||
O.emp_act(80)
|
||||
|
||||
/datum/reagent/fermi/nanite_b_goneTox
|
||||
name = "Electromagnetic crystals"
|
||||
@@ -248,7 +248,7 @@ datum/reagent/fermi/nanite_b_gone/reaction_obj(obj/O, reac_volume)
|
||||
C.electrocute_act(10, (get_turf(C)), 1, SHOCK_ILLUSION)
|
||||
if(prob(50))
|
||||
var/atom/T = C
|
||||
T.emp_act(EMP_HEAVY)
|
||||
T.emp_act(80)
|
||||
to_chat(C, "<span class='warning'>You feel your hair stand on end as you glow brightly for a moment!</b></span>")
|
||||
..()
|
||||
|
||||
|
||||
@@ -95,8 +95,7 @@
|
||||
|
||||
if(!ImpureTot == 0) //If impure, v.small emp (0.6 or less)
|
||||
ImpureTot *= volume
|
||||
var/empVol = clamp(volume/10, 0, 15)
|
||||
empulse(T, empVol, ImpureTot/10, 1)
|
||||
empulse(T, volume, 1)
|
||||
|
||||
my_atom.reagents.clear_reagents() //just in case
|
||||
return
|
||||
|
||||
Reference in New Issue
Block a user