/tg/ Station 13 - Modules - TypesVar Details - Proc Details

mind

Vars

active_addictionsAssoc list of key active addictions and value amount of cycles that it has been active.
addiction_pointsAssoc list of addiction values, key is the type of withdrawal (as singleton type), and the value is the amount of addiction points (as number)
assigned_roleJob datum indicating the mind's role. This should always exist after initialization, as a reference to a singleton.
current_scar_slot_indexThe index for our current scar slot, so we don't have to constantly check the savefile (unlike the slots themselves, this index is independent of selected char slot, and increments whenever a valid char is joined with)
experience_multiplierSkill multiplier, adjusts how much xp you get/loose from adjust_xp. Dont override it directly, add your reason to experience_multiplier_reasons and use that as a key to put your value in there.
experience_multiplier_reasonsSkill multiplier list, just slap your multiplier change onto this with the type it is coming from as key.
failed_special_equipmentList of objective-specific equipment that couldn't properly be given to the mind
known_skillsAssoc list of skills. Use SKILL_LVL to access level, and SKILL_EXP to access skill's exp.
memoriesa list of /datum/memories. assoc type of memory = memory datum. only one type of memory will be stored, new ones of the same type overriding the last.
memory_panelreference to the memory panel tgui
original_characterWeakref to thecharacter we joined in as- either at roundstart or latejoin, so we know for persistent scars if we ended as the same person or not
original_character_slot_indexThe index for what character slot, if any, we were loaded from, so we can track persistent scars on a per-character basis. Each character slot gets PERSISTENT_SCAR_SLOTS scar slots
skills_rewardedList of skills the user has received a reward for. Should not be used to keep track of currently known skills. Lazy list because it shouldnt be filled often
special_statusesA lazy list of statuses to add next to this mind in the traitor panel

Procs

add_addiction_pointsAdds addiction points to the specified addiction
add_memoryadd_memory
adjust_experienceAdjust experience of a specific skill
build_story_detailreturns the story name of anything
build_story_mobreturns the story name of a mob
exp_needed_to_level_upReturn the amount of EXP needed to go to the next level. Returns 0 if max level
get_hijack_speedSets our can_hijack to the fastest speed our antag datums allow.
get_skill_expGets the player's current exp from the relevant skill
get_skill_levelGets the player's current level number from the relevant skill
get_skill_modifierGets the skill's singleton and returns the result of its get_skill_modifier
give_uplink
remove_addiction_pointsAdds addiction points to the specified addiction
remove_antags_for_borgingRemove the antagonists that should not persist when being borged
select_memorysane proc for giving a mob with a mind the option to select one of their memories, returns the memory selected (null otherwise)
set_assigned_roleSetter for the assigned_role job datum.
set_experienceSet experience of a specific skill to a number
set_levelSet level of a specific skill
try_give_equipment_fallbackChecks to see if the mind has an accessible uplink (their own, if they are a traitor; any unlocked uplink otherwise), and gives them a fallback spell if no uplink was found
update_skill_levelCheck what the current skill level is based on that skill's exp
wipe_memorysmall helper to clean out memories

Var Details

active_addictions

Assoc list of key active addictions and value amount of cycles that it has been active.

addiction_points

Assoc list of addiction values, key is the type of withdrawal (as singleton type), and the value is the amount of addiction points (as number)

assigned_role

Job datum indicating the mind's role. This should always exist after initialization, as a reference to a singleton.

current_scar_slot_index

The index for our current scar slot, so we don't have to constantly check the savefile (unlike the slots themselves, this index is independent of selected char slot, and increments whenever a valid char is joined with)

experience_multiplier

Skill multiplier, adjusts how much xp you get/loose from adjust_xp. Dont override it directly, add your reason to experience_multiplier_reasons and use that as a key to put your value in there.

experience_multiplier_reasons

Skill multiplier list, just slap your multiplier change onto this with the type it is coming from as key.

failed_special_equipment

List of objective-specific equipment that couldn't properly be given to the mind

known_skills

Assoc list of skills. Use SKILL_LVL to access level, and SKILL_EXP to access skill's exp.

memories

a list of /datum/memories. assoc type of memory = memory datum. only one type of memory will be stored, new ones of the same type overriding the last.

memory_panel

reference to the memory panel tgui

original_character

Weakref to thecharacter we joined in as- either at roundstart or latejoin, so we know for persistent scars if we ended as the same person or not

original_character_slot_index

The index for what character slot, if any, we were loaded from, so we can track persistent scars on a per-character basis. Each character slot gets PERSISTENT_SCAR_SLOTS scar slots

skills_rewarded

List of skills the user has received a reward for. Should not be used to keep track of currently known skills. Lazy list because it shouldnt be filled often

special_statuses

A lazy list of statuses to add next to this mind in the traitor panel

Proc Details

add_addiction_points

Adds addiction points to the specified addiction

add_memory

add_memory

Adds a memory to a mob's mind if conditions are met, called wherever the memory takes place (memory for catching on fire in mob's fire code, for example) Argument:

adjust_experience

Adjust experience of a specific skill

build_story_detail

returns the story name of anything

build_story_mob

returns the story name of a mob

exp_needed_to_level_up

Return the amount of EXP needed to go to the next level. Returns 0 if max level

get_hijack_speed

Sets our can_hijack to the fastest speed our antag datums allow.

get_skill_exp

Gets the player's current exp from the relevant skill

get_skill_level

Gets the player's current level number from the relevant skill

get_skill_modifier

Gets the skill's singleton and returns the result of its get_skill_modifier

A mind proc for giving anyone an uplink. arguments:

remove_addiction_points

Adds addiction points to the specified addiction

remove_antags_for_borging

Remove the antagonists that should not persist when being borged

select_memory

sane proc for giving a mob with a mind the option to select one of their memories, returns the memory selected (null otherwise)

set_assigned_role

Setter for the assigned_role job datum.

set_experience

Set experience of a specific skill to a number

set_level

Set level of a specific skill

try_give_equipment_fallback

Checks to see if the mind has an accessible uplink (their own, if they are a traitor; any unlocked uplink otherwise), and gives them a fallback spell if no uplink was found

update_skill_level

Check what the current skill level is based on that skill's exp

wipe_memory

small helper to clean out memories