carbon

Vars | |
all_scars | All of the scars a carbon has afflicted throughout their limbs |
---|---|
all_wounds | All of the wounds a carbon has afflicted throughout their limbs |
bodyparts | Gets filled up in [create_bodyparts()][/mob/living/carbon/proc/create_bodyparts] |
can_be_shoved_into | Can other carbons be shoved into this one to make it fall? |
cold_protection | Protection (insulation) from the cold, Value 0-1 corresponding to the percentage of protection |
dna | Carbon |
dreaming | How many dream images we have left to send |
drunkenness | Overall drunkenness |
ears | only used by humans. |
failed_last_breath | This is used to determine if the mob failed a breath. If they did fail a brath, they will attempt to breathe each tick, otherwise just once per 4 ticks. |
glasses | only used by humans. |
gloves | only used by humans |
hand_bodyparts | A collection of arms (or actually whatever the fug /bodyparts you monsters use to wreck my systems) |
handcuffed | Whether or not the mob is handcuffed |
heat_protection | Protection (insulation) from the heat, Value 0-1 corresponding to the percentage of protection |
internal_organs | List of /obj/item/organ in the mob. They don't go in the contents for some reason I don't want to know. |
internal_organs_slot | Same as above, but stores "slot ID" - "organ" pairs for easy access. |
last_mind | last mind to control this mob, for blood-based cloning |
legcuffed | Same as handcuffs but for legs. Bear traps use this. |
shoes | only used by humans. |
silent | Can't talk. Value goes down every life proc. NOTE TO FUTURE CODERS: DO NOT INITIALIZE NUMERICAL VARS AS NULL OR I WILL MURDER YOU. |
skillchip_complexity_modifier | Simple modifier for whether this mob can handle greater or lesser skillchip complexity. See /datum/mutation/human/biotechcompat/ for example. |
stam_regen_start_time | used to halt stamina regen temporarily |
tinttotal | Total level of visualy impairing items |
transformation_timer | Timer id of any transformation |
Procs | |
add_bodypart | Proc to hook behavior on bodypart additions. |
adjustOrganLoss | If an organ exists in the slot requested, and we are capable of taking damage (we don't have [GODMODE] on), call the damage proc on that organ. |
adjust_bodytemperature | Adjust the body temperature of a mob expanded for carbon mobs allowing the use of insulation and change steps |
adjust_skillchip_complexity_modifier | Modifies max_skillchip_count and updates active skillchips |
bleed_warn | bleed_warn() is used to for carbons with an active client to occasionally receive messages warning them about their bleeding status (if applicable) |
check_self_for_injuries | Check ourselves to see if we've got any shrapnel, return true if we do. This is a much simpler version of what humans do, we only indicate we're checking ourselves if there's actually shrapnel |
check_virus | Medical HUD! Basic mode needs suit sensors on. |
clone_skillchip_list | Creates a list of new skillchips cloned from old skillchips in the mob's brain. |
destroy_all_skillchips | Destroys all skillchips in the brain, handling appropriate cleanup and event calls. |
disarm | Attempt to disarm the target mob. Will shove the target mob back, and drop them if they're in front of something dense or another carbon. |
electrocute_act | Adds to the parent by also adding functionality to propagate shocks through pulling and doing some fluff effects. |
expel_ingested | Expel the reagents you just tried to ingest |
generate_fake_scars | generate_fake_scars()- for when you want to scar someone, but you don't want to hurt them first. These scars don't count for temporal scarring (hence, fake) |
getOrganLoss | If an organ exists in the slot requested, return the amount of damage that organ has |
get_biological_state | get_biological_state is a helper used to see what kind of wounds we roll for. By default we just assume carbons (read:monkeys) are flesh and bone, but humans rely on their species datums |
get_bleed_rate | A helper to see how much blood we're losing per tick |
get_blood_dna_list | Get the mobs dna list |
get_cold_protection | This returns the percentage of protection from cold as a value from 0 - 1 temperature is the temperature you're being exposed to |
get_damageable_bodyparts | Returns a list of damageable bodyparts |
get_damaged_bodyparts | Returns a list of damaged bodyparts |
get_heat_protection | This returns the percentage of protection from heat as a value from 0 - 1 temperature is the temperature you're being exposed to |
get_insulation_protection | Get the insulation that is appropriate to the temperature you're being exposed to. All clothing, natural insulation, and traits are combined returning a single value. |
get_total_bleed_rate | get our total bleedrate |
get_traumas | TRAUMAS |
get_wounded_bodyparts | Returns a list of bodyparts with wounds (in case someone has a wound on an otherwise fully healed limb) |
give | Proc called when giving an item to another player |
handle_environment | Base carbon environment handler, adds natural stabilization |
handle_liver | Check to see if we have the liver, if not automatically gives you last-stage effects of lacking a liver. |
has_equipped | This proc is called after an item has been successfully handled and equipped to a slot. |
heal_bodypart_damage | Heals ONE bodypart randomly selected from damaged ones. |
heal_overall_damage | Heal MANY bodyparts, in random order |
humanize | Humanize |
immortality | For the Wishgranter |
implant_skillchip | Attempts to implant this skillchip into the target carbon's brain. |
is_bleeding | if any of our bodyparts are bleeding |
lying_angle_on_lying_down | Special carbon interaction on lying down, to transform its sprite by a rotation. |
natural_bodytemperature_stabilization | Used to stabilize the body temperature back to normal on living mobs |
offer_high_five | Spin-off of /mob/living/carbon/proc/give exclusively for high-fiving |
on_nobreath_trait_gain | On gain of TRAIT_NOBREATH |
on_nometabolism_trait_gain | On gain of TRAIT_NOMETABOLISM |
remove_all_embedded_objects | Remove all embedded objects from all limbs on the carbon mob |
remove_bodypart | Proc to hook behavior on bodypart removals. |
remove_embedded_object | Remove a specific embedded item from the carbon mob |
remove_skillchip | Attempts to remove this skillchip from the target carbon's brain. |
secondary_shock | Called slightly after electrocute act to reduce jittering and apply a secondary stun. |
setOrganLoss | If an organ exists in the slot requested, and we are capable of taking damage (we don't have [GODMODE] on), call the set damage proc on that organ, which can set or clear the failing variable on that organ, making it either cease or start functions again, unlike adjustOrganLoss. |
set_handcuffed | Modifies the handcuffed value if a different value is passed, returning FALSE otherwise. The variable should only be changed through this proc. |
share_bodytemperature | Have two mobs share body heat between each other. Account for the insulation and max temperature change range for the mob |
should_electrocute | Returns whether or not the carbon should be able to be shocked |
take | Proc called when the player clicks the give alert |
take_bodypart_damage | Damages ONE bodypart randomly selected from damagable ones. |
take_overall_damage | damage MANY bodyparts, in random order |
wearing_shock_proof_gloves | Returns if the carbon is wearing shock proof gloves |
Var Details
all_scars

All of the scars a carbon has afflicted throughout their limbs
all_wounds

All of the wounds a carbon has afflicted throughout their limbs
bodyparts

Gets filled up in [create_bodyparts()][/mob/living/carbon/proc/create_bodyparts]
can_be_shoved_into

Can other carbons be shoved into this one to make it fall?
cold_protection

Protection (insulation) from the cold, Value 0-1 corresponding to the percentage of protection
dna

Carbon
dreaming

How many dream images we have left to send
drunkenness

Overall drunkenness
ears

only used by humans.
failed_last_breath

This is used to determine if the mob failed a breath. If they did fail a brath, they will attempt to breathe each tick, otherwise just once per 4 ticks.
glasses

only used by humans.
gloves

only used by humans
hand_bodyparts

A collection of arms (or actually whatever the fug /bodyparts you monsters use to wreck my systems)
handcuffed

Whether or not the mob is handcuffed
heat_protection

Protection (insulation) from the heat, Value 0-1 corresponding to the percentage of protection
internal_organs

List of /obj/item/organ in the mob. They don't go in the contents for some reason I don't want to know.
internal_organs_slot

Same as above, but stores "slot ID" - "organ" pairs for easy access.
last_mind

last mind to control this mob, for blood-based cloning
legcuffed

Same as handcuffs but for legs. Bear traps use this.
shoes

only used by humans.
silent

Can't talk. Value goes down every life proc. NOTE TO FUTURE CODERS: DO NOT INITIALIZE NUMERICAL VARS AS NULL OR I WILL MURDER YOU.
skillchip_complexity_modifier

Simple modifier for whether this mob can handle greater or lesser skillchip complexity. See /datum/mutation/human/biotechcompat/ for example.
stam_regen_start_time

used to halt stamina regen temporarily
tinttotal

Total level of visualy impairing items
transformation_timer

Timer id of any transformation
Proc Details
add_bodypart
Proc to hook behavior on bodypart additions.
adjustOrganLoss
If an organ exists in the slot requested, and we are capable of taking damage (we don't have [GODMODE] on), call the damage proc on that organ.
Arguments:
- slot - organ slot, like [ORGAN_SLOT_HEART]
- amount - damage to be done
- maximum - currently an arbitrarily large number, can be set so as to limit damage
adjust_bodytemperature
Adjust the body temperature of a mob expanded for carbon mobs allowing the use of insulation and change steps
vars:
- amount The amount of degrees to change body temperature by
- min_temp (optional) The minimum body temperature after adjustment
- max_temp (optional) The maximum body temperature after adjustment
- use_insulation (optional) modifies the amount based on the amount of insulation the mob has
- use_steps (optional) Use the body temp divisors and max change rates
- capped (optional) default True used to cap step mode
adjust_skillchip_complexity_modifier
Modifies max_skillchip_count and updates active skillchips
bleed_warn
bleed_warn() is used to for carbons with an active client to occasionally receive messages warning them about their bleeding status (if applicable)
Arguments:
- bleed_amt- When we run this from /mob/living/carbon/human/proc/handle_blood we already know how much blood we're losing this tick, so we can skip tallying it again with this
- forced-
check_self_for_injuries
Check ourselves to see if we've got any shrapnel, return true if we do. This is a much simpler version of what humans do, we only indicate we're checking ourselves if there's actually shrapnel
check_virus
Medical HUD! Basic mode needs suit sensors on.
clone_skillchip_list
Creates a list of new skillchips cloned from old skillchips in the mob's brain.
Returns a complete list of new skillchips cloned from the mob's brain's existing skillchip stock. Rumour has it that Changelings just LOVE this proc. Arguments:
- cloned_chip_holder - The new holder for the cloned chips. Please don't be null.
- not_removable - Special override, whether or not to force cloned chips to be non-removable, i.e. to delete on removal.
destroy_all_skillchips
Destroys all skillchips in the brain, handling appropriate cleanup and event calls.
disarm
Attempt to disarm the target mob. Will shove the target mob back, and drop them if they're in front of something dense or another carbon.
electrocute_act
Adds to the parent by also adding functionality to propagate shocks through pulling and doing some fluff effects.
expel_ingested
Expel the reagents you just tried to ingest
When you try to ingest reagents but you do not have a stomach you will spew the reagents on the floor.
Vars:
- bite: /atom the reagents to expel
- amount: int The amount of reagent
generate_fake_scars
generate_fake_scars()- for when you want to scar someone, but you don't want to hurt them first. These scars don't count for temporal scarring (hence, fake)
If you want a specific wound scar, pass that wound type as the second arg, otherwise you can pass a list like WOUND_LIST_SLASH to generate a random cut scar.
Arguments:
- num_scars- A number for how many scars you want to add
- forced_type- Which wound or category of wounds you want to choose from, WOUND_LIST_BLUNT, WOUND_LIST_SLASH, or WOUND_LIST_BURN (or some combination). If passed a list, picks randomly from the listed wounds. Defaults to all 3 types
getOrganLoss
If an organ exists in the slot requested, return the amount of damage that organ has
Arguments:
- slot - organ slot, like [ORGAN_SLOT_HEART]
get_biological_state
get_biological_state is a helper used to see what kind of wounds we roll for. By default we just assume carbons (read:monkeys) are flesh and bone, but humans rely on their species datums
go look at the species def for more info /datum/species/proc/get_biological_state
get_bleed_rate
A helper to see how much blood we're losing per tick
get_blood_dna_list
Get the mobs dna list
get_cold_protection
This returns the percentage of protection from cold as a value from 0 - 1 temperature is the temperature you're being exposed to
get_damageable_bodyparts
Returns a list of damageable bodyparts
get_damaged_bodyparts
Returns a list of damaged bodyparts
get_heat_protection
This returns the percentage of protection from heat as a value from 0 - 1 temperature is the temperature you're being exposed to
get_insulation_protection
Get the insulation that is appropriate to the temperature you're being exposed to. All clothing, natural insulation, and traits are combined returning a single value.
required temperature The Temperature that you're being exposed to
return the percentage of protection as a value from 0 - 1
get_total_bleed_rate
get our total bleedrate
get_traumas
TRAUMAS
get_wounded_bodyparts
Returns a list of bodyparts with wounds (in case someone has a wound on an otherwise fully healed limb)
give
Proc called when giving an item to another player
This handles creating an alert and adding an overlay to it
handle_environment
Base carbon environment handler, adds natural stabilization
handle_liver
Check to see if we have the liver, if not automatically gives you last-stage effects of lacking a liver.
has_equipped
This proc is called after an item has been successfully handled and equipped to a slot.
heal_bodypart_damage
Heals ONE bodypart randomly selected from damaged ones.
It automatically updates damage overlays if necessary
It automatically updates health status
heal_overall_damage
Heal MANY bodyparts, in random order
humanize
Humanize
immortality
For the Wishgranter
implant_skillchip
Attempts to implant this skillchip into the target carbon's brain.
Returns whether the skillchip was inserted or not. Can optionally give chat message notification to the mob. Arguments:
- skillchip - The skillchip you want to insert.
- silent - Whether or not to display the implanting message.
- force - Whether to force the implant to happen, including forcing activating if activate = TRUE. Ignores incompatibility checks. Used by changelings.
is_bleeding
if any of our bodyparts are bleeding
lying_angle_on_lying_down
Special carbon interaction on lying down, to transform its sprite by a rotation.
natural_bodytemperature_stabilization
Used to stabilize the body temperature back to normal on living mobs
Arguments:
- environemnt: The environment gas mix
- delta_time: The amount of time that has elapsed since the last tick
- times_fired: The number of times SSmobs has ticked
offer_high_five
Spin-off of /mob/living/carbon/proc/give exclusively for high-fiving
on_nobreath_trait_gain
On gain of TRAIT_NOBREATH
This will clear all alerts and moods related to breathing.
on_nometabolism_trait_gain
On gain of TRAIT_NOMETABOLISM
This will clear all moods related to addictions and stop metabolization.
remove_all_embedded_objects
Remove all embedded objects from all limbs on the carbon mob
remove_bodypart
Proc to hook behavior on bodypart removals.
remove_embedded_object
Remove a specific embedded item from the carbon mob
remove_skillchip
Attempts to remove this skillchip from the target carbon's brain.
Returns FALSE when the skillchip couldn't be removed for some reason, including the target or brain not existing or the skillchip not being in the brain. Arguments:
- target - The living carbon whose brain you want to remove the chip from.
- silent - Whether or not to display the removal message.
secondary_shock
Called slightly after electrocute act to reduce jittering and apply a secondary stun.
setOrganLoss
If an organ exists in the slot requested, and we are capable of taking damage (we don't have [GODMODE] on), call the set damage proc on that organ, which can set or clear the failing variable on that organ, making it either cease or start functions again, unlike adjustOrganLoss.
Arguments:
- slot - organ slot, like [ORGAN_SLOT_HEART]
- amount - damage to be set to
set_handcuffed
Modifies the handcuffed value if a different value is passed, returning FALSE otherwise. The variable should only be changed through this proc.
share_bodytemperature
Have two mobs share body heat between each other. Account for the insulation and max temperature change range for the mob
vars:
- M The mob/living/carbon that is sharing body heat
should_electrocute
Returns whether or not the carbon should be able to be shocked
take
Proc called when the player clicks the give alert
Handles checking if the player taking the item has open slots and is in range of the giver Also deals with the actual transferring of the item to the players hands Arguments:
- giver - The person giving the original item
- I - The item being given by the giver
take_bodypart_damage
Damages ONE bodypart randomly selected from damagable ones.
It automatically updates damage overlays if necessary
It automatically updates health status
take_overall_damage
damage MANY bodyparts, in random order
wearing_shock_proof_gloves
Returns if the carbon is wearing shock proof gloves