diff --git a/.nojekyll b/.nojekyll new file mode 100644 index 0000000000000..e69de29bb2d1d diff --git a/area.html b/area.html new file mode 100644 index 0000000000000..bbb7cd231ef00 --- /dev/null +++ b/area.html @@ -0,0 +1,141 @@ + + + + + + + /area - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

area + + + +

+ + + + + + + + + + + + + + + + + +

Vars

all_fire_doorsKeeps a lit of adjacent firelocks, used for alarms/ZAS
area_flavorstring used to determine specific icon variants when structures are used in an area
area_has_base_lightingWhether this area has a currently active base lighting, bool
area_limited_icon_smoothingBoolean to limit the areas (subtypes included) that atoms in this area can smooth with. Used for shuttles.
base_lighting_alphaalpha 0-255 of lighting_effect and thus baselighting intensity
base_lighting_colorThe colour of the light acting on this area
camerasCameras in this area
ceilingthe material the ceiling is made of. Used for debris from airstrikes and orbital beacons in ceiling_debris()
fake_zlevelUsed in designating the "level" of maps pretending to be multi-z one Z
lighting_effectThe mutable appearance we underlay to show light
max_ambience_cooldownUsed to decide what the maximum time between ambience is
min_ambience_cooldownUsed to decide what the minimum time between ambience is
outsideIs this area considered inside or outside
static_lightingWhether this area allows static lighting and thus loads the lighting objects

Procs

get_apcReturns the first APC it finds in an area
get_apc_listReturns a list of APCs in this area
+

Var Details

all_fire_doors + + + + +

+

Keeps a lit of adjacent firelocks, used for alarms/ZAS

area_flavor + + + + +

+

string used to determine specific icon variants when structures are used in an area

area_has_base_lighting + + + + +

+

Whether this area has a currently active base lighting, bool

area_limited_icon_smoothing + + + + +

+

Boolean to limit the areas (subtypes included) that atoms in this area can smooth with. Used for shuttles.

base_lighting_alpha + + + + +

+

alpha 0-255 of lighting_effect and thus baselighting intensity

base_lighting_color + + + + +

+

The colour of the light acting on this area

cameras + + + + +

+

Cameras in this area

ceiling + + + + +

+

the material the ceiling is made of. Used for debris from airstrikes and orbital beacons in ceiling_debris()

fake_zlevel + + + + +

+

Used in designating the "level" of maps pretending to be multi-z one Z

lighting_effect + + + + +

+

The mutable appearance we underlay to show light

max_ambience_cooldown + + + + +

+

Used to decide what the maximum time between ambience is

min_ambience_cooldown + + + + +

+

Used to decide what the minimum time between ambience is

outside + + + + +

+

Is this area considered inside or outside

static_lighting + + + + +

+

Whether this area allows static lighting and thus loads the lighting objects

Proc Details

get_apc +

+

Returns the first APC it finds in an area

get_apc_list +

+

Returns a list of APCs in this area

+ + + diff --git a/area/shuttle.html b/area/shuttle.html new file mode 100644 index 0000000000000..e40eb0cdf74ad --- /dev/null +++ b/area/shuttle.html @@ -0,0 +1,35 @@ + + + + + + + /area/shuttle - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

shuttle + + + +

+ + +

Procs

PlaceOnTopReactarea/shuttle/Initialize(mapload)

Proc Details

PlaceOnTopReact +

+

area/shuttle/Initialize(mapload)

+ + + diff --git a/area/shuttle/dropship.html b/area/shuttle/dropship.html new file mode 100644 index 0000000000000..094d05bfb4fa1 --- /dev/null +++ b/area/shuttle/dropship.html @@ -0,0 +1,35 @@ + + + + + + + /area/shuttle/dropship - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

dropship + + + +

+ + +

Procs

InitializeSingle-area shuttles

Proc Details

Initialize +

+

Single-area shuttles

+ + + diff --git a/area/space.html b/area/space.html new file mode 100644 index 0000000000000..a20b472d87037 --- /dev/null +++ b/area/space.html @@ -0,0 +1,36 @@ + + + + + + + /area/space - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

space + + + +

+ + +

Vars

debuff_typeWhat type of debuff do we apply when someone enters this area?
+

Var Details

debuff_type + + + + +

+

What type of debuff do we apply when someone enters this area?

+ + + diff --git a/atom.html b/atom.html new file mode 100644 index 0000000000000..e092bea8cedf9 --- /dev/null +++ b/atom.html @@ -0,0 +1,1136 @@ + + + + + + + /atom - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

atom + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

add_overlaysa very temporary list of overlays to add
allow_pass_flagsThings can move past this atom if they have the corrosponding flag
alternate_appearancesThe list of alternate appearances for this atom
articleIf non-null, overrides a/an/some in all cases
atom_coloursused to store the different colors on an atom. its inherent color, the colored paint applied on it, special color effect etc...
base_icon_stateUsed for changing icon states for different base sprites.
bottom_left_cornerSmoothing variable
bottom_right_cornerSmoothing variable
buckle_message_cooldownCooldown for telling someone they're buckled
canSmoothWithList of smoothing groups this atom can smooth with. If this is null and atom is smooth, it smooths only with itself.
chat_colorLast color calculated for the the chatmessage overlays
chat_color_darkenedA luminescence-shifted value of the last color calculated for chatmessage overlays
chat_color_nameLast name used to calculate a color for the chatmessage overlays
display_iconsRelated to do_after/do_mob overlays, I can't get my hopes high.
examine_thatsText that appears preceding the name in /atom/proc/examine_title. +Don't include spaces after this, since that proc adds a space on its own.
explosion_blockHow much does this atom block the explosion's shock wave.
greyscale_colorsA string of hex format colors to be used by greyscale sprites, ex: "#0054aa#badcff"
greyscale_configThe config type to use for greyscaled sprites. Both this and greyscale_colors must be assigned to work.
hud_listThis atom's HUD (med/sec, etc) images. Associative list.
hud_possibleHUD images that this mob can provide.
hybrid_light_sourcesAny light sources that are "inside" of us, for example, if src here was a mob that's carrying a flashlight, that flashlight's light source would be part of this list.
lightOur light source. Don't fuck with this directly unless you have a good reason!
light_colorHexadecimal RGB string representing the colour of the light. White by default.
light_mask_typetypepath for the lighting maskfor dynamic light sources
light_onBoolean variable for toggleable lights. Has no effect without the proper light_system, light_range and light_power values.
light_pixel_xx offset for dynamic lights on this atom
light_pixel_yy offset for dynamic lights on this atom
light_powerIntensity of the light. The stronger, the less shadows you will see on the lit area.
light_rangeRange of the light in tiles. Zero means no light.
light_systemLight systems, only one of the three should be active at the same time.
managed_overlaysoverlays managed by update_overlays to prevent removing overlays that weren't added by the same proc. Single items are stored on their own, not in a list.
managed_vis_overlaysvis overlays managed by SSvis_overlays to automaticaly turn them like other overlays.
minimap_colorThe color this atom will be if we choose to draw it on the minimap
remove_overlaysa very temporary list of overlays to remove
smoothing_behaviorWhether this atom smooths with things around it, and what type of smoothing if any.
smoothing_flagsIcon-smoothing behavior.
smoothing_groupsWhat smoothing groups does this atom belongs to, to match canSmoothWith. If null, nobody can smooth with it.
smoothing_junctionWhat directions this is currently smoothing with. IMPORTANT: This uses the smoothing direction flags as defined in icon_smoothing.dm, instead of the BYOND flags.
static_lightThe light source, datum. Dont fuck with this directly
static_light_sourcesStatic light sources currently attached to this atom, this includes ones owned by atoms inside this atom
storage_datumvar containing our storage, see atom/proc/create_storage()
top_left_cornerSmoothing variable
top_right_cornerSmoothing variable

Procs

AltRightClickCalled when a mob Alt + Rightmouseclicks this atom, given that mobs Altclick() does not return TRUE
CanAllowThroughReturns true or false to allow the mover to move through src
CanPassCan the mover object pass this atom, while heading for the target turf
CheckPartsEnsure a list of atoms/reagents exists inside this atom
ExitAn atom is attempting to exit this atom's contents
GetAllContentsReturns the src and all recursive contents as a list.
HandleTurfChangecalled when the turf the atom resides on is ChangeTurfed
InitializeThe primary method that objects are setup in SS13 with
LateInitializecalled if Initialize returns INITIALIZE_HINT_LATELOAD
RightClickCalled when a mob Rightmouseclicks this atom
ShakePerform a shake on an atom, resets its position afterwards
ShiftRightClickCalled when a mob Shift + Rightmouseclicks this atom
accelerate_crosserSpeeds up xeno on crossed
add_bloodadd_blood
add_debris_elementAdds the debris element for projectile impacts
animation_spinSpins the atom
apply_fire_support_laserSets a laser overlay for fire support binos
attack_hand_alternateThis proc is called when a human user right clicks on an atom with an empty hand
attack_powerloaderThis proc is called when an atom gets attacked (clicked on) by a powerloader clamp
audible_messageShow a message to all mobs in earshot of this atom +Use for objects performing audible actions +message is the message output to anyone who can hear. +deaf_message (optional) is what deaf people will see. +hearing_distance (optional) is the range, how many tiles away the message can be heard.
balloon_alertCreates text that will float from the atom upwards to the viewer.
balloon_alert_to_viewersCreate balloon alerts (text that floats up) to everything within range. +Will only display to people who can see.
beamThis is what you use to start a beam. Example: origin.Beam(target, args). Store the return of this proc if you don't set maxdist or time, you need it to delete the beam.
calculate_adjacenciesScans all adjacent turfs to find targets to smooth with.
can_slipFunction that determines if we can slip when we walk over this atom.
clean_bloodRemoves blood from our atom
connect_to_shuttleThis proc is called on atoms when they are loaded into a shuttle
create_reagentsConvenience proc to create a reagents holder for an atom +Max vol is maximum volume of holder
create_storageHelper proc to give something storage
cut_overlays
dissolvabilityreturns if we can melt an object, but also the speed at which it happens. 1 just means we melt it. 0,5 means we need a higher strength acid. higher than 1 just makes it melt faster
do_acid_meltWhat happens when with atom is melted by acid
do_jitter_animationDoes a jitter animation, with a few settings so as to allow changing the animation as needed:
ex_actReact to being hit by an explosion
examineCalled when a mob examines this atom. /mob/verb/examinate
examine_descriptorThis is called when we want to get a sort-of "descriptor" for this item, where applicable.
examine_tagsA list of "tags" displayed after atom's description in examine. +This should return an assoc list of tags -> tooltips for them. +Should probably be calling parent so signals can modify it.
examine_titleGenerate the full examine string of this atom (including icon for chat)
find_all_cells_containingdebug proc for checking if a movable is in multiple cells when it shouldnt be (ie always unless multitile entering is implemented)
find_grid_statistics_for_z_leveldebug proc for finding how full the cells of src's z level are
find_type_in_directionScans direction to find targets to smooth with.
fire_actEffects of fire
get_all_contents_typeidentical to getallcontents but returns a list of atoms of the type passed in the argument.
get_all_orbitersRecursive getter method to return a list of all ghosts orbitting this atom
get_examine_iconIcon displayed in examine. Really just an icon2html wrapper, +BUT we can override this on something like a mob if it has issues with icon2html
get_examine_nameGet the name of this object for examine
get_hard_armorReturns the hard armor for the given atom. If human and a limb is specified, gets the armor for that specific limb.
get_self_acidChecks if there is acid melting this atom
get_soft_armorReturns the soft armor for the given atom. If human and a limb is specified, gets the armor for that specific limb.
grab_interactInteraction for using a grab on an atom
is_open_containerConvenience proc for reagents handling.
lava_actEffects of lava. Return true where we want the lava to keep processing
link_interiorgeneric linkage proc for atoms to an interior. e.g loading the tank
log_messageGeneric logging helper
log_talkHelper for logging chat messages or other logs with arbitrary inputs (e.g. announcements)
mech_melee_attack
mech_shift_clickMech shift click functionality
modify_by_armorReturns a number after taking into account both soft and hard armor for the specified damage type, usually damage
plastique_actHandles the effect of c4 on the atom - overridden as needed
plastique_time_modAllows the c4 timer to be tweaked on certain atoms as required
psi_actPsionic interaction with this atom
punch_actHandles anything that should happen when the Warrior's punch hits any atom.
rc_vc_msg_prefs_checkReturns the client runechat visible messages preference according to the message type.
relaydriveA special case of relaymove() in which the person relaying the move may be "driving" this atom
remove_fire_support_laserRemoves a laser overlay for fire support binos
reset_lightTurn on the light, should be called by a timer
search_contents_foratom/proc/search_contents_for(path,list/filter_path=null) +Recursevly searches all atom contens (including contents contents and so on).
set_greyscale_colorsChecks if the colors given are different and if so causes a greyscale icon update +The colors argument can be either a list or the full color string
set_greyscale_configChecks if the greyscale config given is different and if so causes a greyscale icon update
set_opacityUpdates the atom's opacity value.
set_smoothed_icon_stateChanges the icon state based on the new junction bitmask.
should_apply_acidreturns if we are able to apply acid to the atom, also checks if there is already a stronger acid on this atom
shuttleRotateBase proc
static_update_lightPretty simple, just updates static lights on this atom
turn_lightIf this object has lights, turn it on/off. +user: the mob actioning this +toggle_on: if TRUE, will try to turn ON the light. Opposite if FALSE +cooldown: how long until you can toggle the light on/off again +sparks: if a spark effect will be generated +forced: if TRUE and toggle_on = FALSE, will cause the light to turn on in cooldown second +originated_turf: if not null, will check if the obj_turf is closer than distance_max to originated_turf, and the proc will return if not +distance_max: used to check if originated_turf is close to obj.loc
update_appearanceUpdates the appearence of the icon
update_descUpdates the description of the atom
update_greyscaleChecks if this atom uses the GAS system and if so updates the icon
update_iconUpdates the icon of the atom
update_icon_stateUpdates the icon state of the atom
update_lightWill update the light (duh).Creates or destroys it if needed, makes it update values, makes sure it's got the correct source turf...
update_nameUpdates the name of the atom
update_overlaysUpdates the overlays of the atom
vehicle_collisionThis proc is called when a atom is crashed into by a armored vehicle. Damage is then dealt to both the vehicle and atom
visible_messageShow a message to all player mobs who sees this atom +Show a message to the src mob (if the src is a mob) +Use for atoms performing visible actions +message is output to anyone who can see, e.g. "The [src] does something!" +self_message (optional) is what the src mob sees e.g. "You do something!" +blind_message (optional) is what blind people will hear e.g. "You hear something!" +vision_distance (optional) define how many tiles away the message can be seen. +ignored_mob (optional) doesn't show any message to a given mob if TRUE.
washWash this atom
+

Var Details

add_overlays + + + + +

+

a very temporary list of overlays to add

allow_pass_flags + + + + +

+

Things can move past this atom if they have the corrosponding flag

alternate_appearances + + + + +

+

The list of alternate appearances for this atom

article + + + + +

+

If non-null, overrides a/an/some in all cases

atom_colours + + + + +

+

used to store the different colors on an atom. its inherent color, the colored paint applied on it, special color effect etc...

base_icon_state + + + + +

+

Used for changing icon states for different base sprites.

bottom_left_corner + + + + +

+

Smoothing variable

bottom_right_corner + + + + +

+

Smoothing variable

buckle_message_cooldown + + + + +

+

Cooldown for telling someone they're buckled

canSmoothWith + + + + +

+

List of smoothing groups this atom can smooth with. If this is null and atom is smooth, it smooths only with itself.

chat_color + + + + +

+

Last color calculated for the the chatmessage overlays

chat_color_darkened + + + + +

+

A luminescence-shifted value of the last color calculated for chatmessage overlays

chat_color_name + + + + +

+

Last name used to calculate a color for the chatmessage overlays

display_icons + + + + +

+

Related to do_after/do_mob overlays, I can't get my hopes high.

examine_thats + + + + +

+

Text that appears preceding the name in /atom/proc/examine_title. +Don't include spaces after this, since that proc adds a space on its own.

explosion_block + + + + +

+

How much does this atom block the explosion's shock wave.

greyscale_colors + + + + +

+

A string of hex format colors to be used by greyscale sprites, ex: "#0054aa#badcff"

greyscale_config + + + + +

+

The config type to use for greyscaled sprites. Both this and greyscale_colors must be assigned to work.

hud_list + + + + +

+

This atom's HUD (med/sec, etc) images. Associative list.

hud_possible + + + + +

+

HUD images that this mob can provide.

hybrid_light_sources + + + + +

+

Any light sources that are "inside" of us, for example, if src here was a mob that's carrying a flashlight, that flashlight's light source would be part of this list.

light + + + + +

+

Our light source. Don't fuck with this directly unless you have a good reason!

light_color + + + + +

+

Hexadecimal RGB string representing the colour of the light. White by default.

light_mask_type + + + + +

+

typepath for the lighting maskfor dynamic light sources

light_on + + + + +

+

Boolean variable for toggleable lights. Has no effect without the proper light_system, light_range and light_power values.

light_pixel_x + + + + +

+

x offset for dynamic lights on this atom

light_pixel_y + + + + +

+

y offset for dynamic lights on this atom

light_power + + + + +

+

Intensity of the light. The stronger, the less shadows you will see on the lit area.

light_range + + + + +

+

Range of the light in tiles. Zero means no light.

light_system + + + + +

+

Light systems, only one of the three should be active at the same time.

managed_overlays + + + + +

+

overlays managed by update_overlays to prevent removing overlays that weren't added by the same proc. Single items are stored on their own, not in a list.

managed_vis_overlays + + + + +

+

vis overlays managed by SSvis_overlays to automaticaly turn them like other overlays.

minimap_color + + + + +

+

The color this atom will be if we choose to draw it on the minimap

remove_overlays + + + + +

+

a very temporary list of overlays to remove

smoothing_behavior + + + + +

+

Whether this atom smooths with things around it, and what type of smoothing if any.

smoothing_flags + + + + +

+

Icon-smoothing behavior.

smoothing_groups + + + + +

+

What smoothing groups does this atom belongs to, to match canSmoothWith. If null, nobody can smooth with it.

smoothing_junction + + + + +

+

What directions this is currently smoothing with. IMPORTANT: This uses the smoothing direction flags as defined in icon_smoothing.dm, instead of the BYOND flags.

static_light + + + + +

+

The light source, datum. Dont fuck with this directly

static_light_sources + + + + +

+

Static light sources currently attached to this atom, this includes ones owned by atoms inside this atom

storage_datum + + + + +

+

var containing our storage, see atom/proc/create_storage()

top_left_corner + + + + +

+

Smoothing variable

top_right_corner + + + + +

+

Smoothing variable

Proc Details

AltRightClick +

+

Called when a mob Alt + Rightmouseclicks this atom, given that mobs Altclick() does not return TRUE

CanAllowThrough +

+

Returns true or false to allow the mover to move through src

CanPass +

+

Can the mover object pass this atom, while heading for the target turf

CheckParts +

+

Ensure a list of atoms/reagents exists inside this atom

+

Goes throught he list of passed in parts, if they're reagents, adds them to our reagent holder +creating the reagent holder if it exists.

+

If the part is a moveable atom and the previous location of the item was a mob/living, +it calls the inventory handler transferItemToLoc for that mob/living and transfers the part +to this atom

+

Otherwise it simply forceMoves the atom into this atom

Exit +

+

An atom is attempting to exit this atom's contents

+

Default behaviour is to send the [COMSIG_ATOM_EXIT]

GetAllContents +

+

Returns the src and all recursive contents as a list.

HandleTurfChange +

+

called when the turf the atom resides on is ChangeTurfed

Initialize +

+

The primary method that objects are setup in SS13 with

+

we don't use New as we have better control over when this is called and we can choose +to delay calls or hook other logic in and so forth

+

During roundstart map parsing, atoms are queued for intialization in the base atom/New(), +After the map has loaded, then Initalize is called on all atoms one by one. NB: this +is also true for loading map templates as well, so they don't Initalize until all objects +in the map file are parsed and present in the world

+

If you're creating an object at any point after SSInit has run then this proc will be +immediately be called from New.

+

mapload: This parameter is true if the atom being loaded is either being intialized during +the Atom subsystem intialization, or if the atom is being loaded from the map template. +If the item is being created at runtime any time after the Atom subsystem is intialized then +it's false.

+

You must always call the parent of this proc, otherwise failures will occur as the item +will not be seen as initalized (this can lead to all sorts of strange behaviour, like +the item being completely unclickable)

+

You must not sleep in this proc, or any subprocs

+

Any parameters from new are passed through (excluding loc), naturally if you're loading from a map +there are no other arguments

+

Must return an [initialization hint][INITIALIZE_HINT_NORMAL] or a runtime will occur.

+

Note: the following functions don't call the base for optimization and must copypasta handling:

+

LateInitialize +

+

called if Initialize returns INITIALIZE_HINT_LATELOAD

RightClick +

+

Called when a mob Rightmouseclicks this atom

Shake +

+

Perform a shake on an atom, resets its position afterwards

ShiftRightClick +

+

Called when a mob Shift + Rightmouseclicks this atom

accelerate_crosser +

+

Speeds up xeno on crossed

add_blood +

+

add_blood

add_debris_element +

+

Adds the debris element for projectile impacts

animation_spin +

+

Spins the atom

apply_fire_support_laser +

+

Sets a laser overlay for fire support binos

attack_hand_alternate +

+

This proc is called when a human user right clicks on an atom with an empty hand

+

Arguments:

+

attack_powerloader +

+

This proc is called when an atom gets attacked (clicked on) by a powerloader clamp

+

Arguments:

+

audible_message +

+

Show a message to all mobs in earshot of this atom +Use for objects performing audible actions +message is the message output to anyone who can hear. +deaf_message (optional) is what deaf people will see. +hearing_distance (optional) is the range, how many tiles away the message can be heard.

balloon_alert +

+

Creates text that will float from the atom upwards to the viewer.

balloon_alert_to_viewers +

+

Create balloon alerts (text that floats up) to everything within range. +Will only display to people who can see.

beam +

+

This is what you use to start a beam. Example: origin.Beam(target, args). Store the return of this proc if you don't set maxdist or time, you need it to delete the beam.

+

Unless you're making a custom beam effect (see the beam_type argument), you won't actually have to mess with any other procs. Make sure you store the return of this Proc, you'll need it +to kill the beam. +Arguments: +BeamTarget: Where you're beaming from. Where do you get origin? You didn't read the docs, fuck you. +icon_state: What the beam's icon_state is. The datum effect isn't the ebeam object, it doesn't hold any icon and isn't type dependent. +icon: What the beam's icon file is. Don't change this, man. All beam icons should be in beam.dmi anyways. +maxdistance: how far the beam will go before stopping itself. Used mainly for two things: preventing lag if the beam may go in that direction and setting a range to abilities that use beams. +beam_type: The type of your custom beam. This is for adding other wacky stuff for your beam only. Most likely, you won't (and shouldn't) change it.

calculate_adjacencies +

+

Scans all adjacent turfs to find targets to smooth with.

can_slip +

+

Function that determines if we can slip when we walk over this atom.

+

Returns true if we can, false if we can't. Put your special checks here.

clean_blood +

+

Removes blood from our atom

connect_to_shuttle +

+

This proc is called on atoms when they are loaded into a shuttle

create_reagents +

+

Convenience proc to create a reagents holder for an atom +Max vol is maximum volume of holder

create_storage +

+

Helper proc to give something storage

cut_overlays +

+

dissolvability +

+

returns if we can melt an object, but also the speed at which it happens. 1 just means we melt it. 0,5 means we need a higher strength acid. higher than 1 just makes it melt faster

do_acid_melt +

+

What happens when with atom is melted by acid

do_jitter_animation +

+

Does a jitter animation, with a few settings so as to allow changing the animation as needed:

+

ex_act +

+

React to being hit by an explosion

+

Default behaviour is to call [contents_explosion][/atom/proc/contents_explosion] and send the [COMSIG_ATOM_EX_ACT] signal

examine +

+

Called when a mob examines this atom. /mob/verb/examinate

+

This is the actual proc that generates the text for examining something

+

Default behaviour is to get the name and icon of the object and its reagents where +the TRANSPARENT flag is set on the reagents holder

+

SIGNAL FUN: +Produces a signal COMSIG_ATOM_EXAMINE - can use this to directly modify/add stuff to the examine list

examine_descriptor +

+

This is called when we want to get a sort-of "descriptor" for this item, where applicable.

+

Must return a string. Can be something like "item" "weapon" etc.

+

Used for [/obj/item/examine_tags], will appear in the weight class tooltip, like: +It is a normal-sized (whatever this returns).

examine_tags +

+

A list of "tags" displayed after atom's description in examine. +This should return an assoc list of tags -> tooltips for them. +Should probably be calling parent so signals can modify it.

+Things to keep in mind: + +

Example usage:

+
.["small"] = "It is a small [examine_descriptor(user)]." // It is a small item.
+.["fireproof"] = "It is made of fire-retardant materials."
+.["and conductive"] = "Blah blah blah." // Using 'and' in the final element's main text will work aswell.
+
+

This will result in

+

It is small, fireproof and conductive.

+

SIGNAL FUN: +Produces a signal COMSIG_ATOM_EXAMINE_TAGS - can use this to directly modify/add stuff to the examine tags list

examine_title +

+

Generate the full examine string of this atom (including icon for chat)

find_all_cells_containing +

+

debug proc for checking if a movable is in multiple cells when it shouldnt be (ie always unless multitile entering is implemented)

find_grid_statistics_for_z_level +

+

debug proc for finding how full the cells of src's z level are

find_type_in_direction +

+

Scans direction to find targets to smooth with.

fire_act +

+

Effects of fire

get_all_contents_type +

+

identical to getallcontents but returns a list of atoms of the type passed in the argument.

get_all_orbiters +

+

Recursive getter method to return a list of all ghosts orbitting this atom

+

This will work fine without manually passing arguments.

get_examine_icon +

+

Icon displayed in examine. Really just an icon2html wrapper, +BUT we can override this on something like a mob if it has issues with icon2html

get_examine_name +

+

Get the name of this object for examine

+

You can override what is returned from this proc by registering to listen for the +COMSIG_ATOM_GET_EXAMINE_NAME signal

get_hard_armor +

+

Returns the hard armor for the given atom. If human and a limb is specified, gets the armor for that specific limb.

get_self_acid +

+

Checks if there is acid melting this atom

get_soft_armor +

+

Returns the soft armor for the given atom. If human and a limb is specified, gets the armor for that specific limb.

grab_interact +

+

Interaction for using a grab on an atom

is_open_container +

+

Convenience proc for reagents handling.

lava_act +

+

Effects of lava. Return true where we want the lava to keep processing

+

generic linkage proc for atoms to an interior. e.g loading the tank

log_message +

+

Generic logging helper

+

reads the type of the log +and writes it to the respective log file +unless log_globally is FALSE +Arguments:

+

log_talk +

+

Helper for logging chat messages or other logs with arbitrary inputs (e.g. announcements)

+

This proc compiles a log string by prefixing the tag to the message +and suffixing what it was forced_by if anything +if the message lacks a tag and suffix then it is logged on its own +Arguments:

+

mech_melee_attack +

+ Mech melee attack +

Called when a mech melees a target with fists +Handles damaging the target & associated effects +return value is number of damage dealt +Arguments:

+

mech_shift_click +

+

Mech shift click functionality

modify_by_armor +

+

Returns a number after taking into account both soft and hard armor for the specified damage type, usually damage

+

Arguments

+ +

Hard armor reduces penetration by a flat amount, and sunder in the case of xenos +Penetration reduces soft armor by a flat amount. +Damage cannot go into the negative, or exceed the original amount.

plastique_act +

+

Handles the effect of c4 on the atom - overridden as needed

plastique_time_mod +

+

Allows the c4 timer to be tweaked on certain atoms as required

psi_act +

+

Psionic interaction with this atom

punch_act +

+

Handles anything that should happen when the Warrior's punch hits any atom.

rc_vc_msg_prefs_check +

+

Returns the client runechat visible messages preference according to the message type.

relaydrive +

+

A special case of relaymove() in which the person relaying the move may be "driving" this atom

+

This is a special case for vehicles and ridden animals where the relayed movement may be handled +by the riding component attached to this atom. Returns TRUE as long as there's nothing blocking +the movement, or FALSE if the signal gets a reply that specifically blocks the movement

remove_fire_support_laser +

+

Removes a laser overlay for fire support binos

reset_light +

+

Turn on the light, should be called by a timer

search_contents_for +

+

atom/proc/search_contents_for(path,list/filter_path=null) +Recursevly searches all atom contens (including contents contents and so on).

+

ARGS: +path - search atom contents for atoms of this type +list/filter_path - if set, contents of atoms not of types in this list are excluded from search.

+

RETURNS: list of found atoms

set_greyscale_colors +

+

Checks if the colors given are different and if so causes a greyscale icon update +The colors argument can be either a list or the full color string

set_greyscale_config +

+

Checks if the greyscale config given is different and if so causes a greyscale icon update

set_opacity +

+

Updates the atom's opacity value.

+

This exists to act as a hook for associated behavior. +It notifies (potentially) affected light sources so they can update (if needed).

set_smoothed_icon_state +

+

Changes the icon state based on the new junction bitmask.

should_apply_acid +

+

returns if we are able to apply acid to the atom, also checks if there is already a stronger acid on this atom

shuttleRotate +

+

Base proc

static_update_light +

+

Pretty simple, just updates static lights on this atom

turn_light +

+

If this object has lights, turn it on/off. +user: the mob actioning this +toggle_on: if TRUE, will try to turn ON the light. Opposite if FALSE +cooldown: how long until you can toggle the light on/off again +sparks: if a spark effect will be generated +forced: if TRUE and toggle_on = FALSE, will cause the light to turn on in cooldown second +originated_turf: if not null, will check if the obj_turf is closer than distance_max to originated_turf, and the proc will return if not +distance_max: used to check if originated_turf is close to obj.loc

update_appearance +

+

Updates the appearence of the icon

+

Mostly delegates to update_name, update_desc, and update_icon

+

Arguments:

+

update_desc +

+

Updates the description of the atom

update_greyscale +

+

Checks if this atom uses the GAS system and if so updates the icon

update_icon +

+

Updates the icon of the atom

update_icon_state +

+

Updates the icon state of the atom

update_light +

+

Will update the light (duh).Creates or destroys it if needed, makes it update values, makes sure it's got the correct source turf...

update_name +

+

Updates the name of the atom

update_overlays +

+

Updates the overlays of the atom

vehicle_collision +

+

This proc is called when a atom is crashed into by a armored vehicle. Damage is then dealt to both the vehicle and atom

+

visible_message +

+

Show a message to all player mobs who sees this atom +Show a message to the src mob (if the src is a mob) +Use for atoms performing visible actions +message is output to anyone who can see, e.g. "The [src] does something!" +self_message (optional) is what the src mob sees e.g. "You do something!" +blind_message (optional) is what blind people will hear e.g. "You hear something!" +vision_distance (optional) define how many tiles away the message can be seen. +ignored_mob (optional) doesn't show any message to a given mob if TRUE.

wash +

+

Wash this atom

+

This will clean it off any temporary stuff like blood. Override this in your item to add custom cleaning behavior. +Returns true if any washing was necessary and thus performed

+ + + diff --git a/atom/movable.html b/atom/movable.html new file mode 100644 index 0000000000000..9df786ac235d3 --- /dev/null +++ b/atom/movable.html @@ -0,0 +1,482 @@ + + + + + + + /atom/movable - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

movable + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

affected_movable_lightsLazylist to keep track on the sources of illumination.
affecting_dynamic_lumiHighest-intensity light affecting us, which determines our visibility.
blocks_emissiveEither FALSE, EMISSIVE_BLOCK_GENERIC, or EMISSIVE_BLOCK_UNIQUE
client_mobs_in_contentscontains every client mob corresponding to every client eye in this container. lazily updated by SSparallax and is sparse: +only the last container of a client eye has this list assuming no movement since SSparallax's last fire
drag_delayDelay added to mob's move_delay when pulling it.
drag_windupWind-up before the mob can pull an object.
em_blockInternal holder for emissive blocker object, do not use directly use blocks_emissive
important_recursive_contentsan associative lazylist of relevant nested contents by "channel", the list is of the form: list(channel = list(important nested contents of that type)) +each channel has a specific purpose and is meant to replace potentially expensive nested contents iteration. +do NOT add channels to this for little reason as it can add considerable memory usage.
move_forceHow much the atom tries to push things out its way
move_resistHow much the atom resists being thrown or moved.
moving_diagonallyTRUE if we should not push or shuffle on bump/enter
pass_flagsWhat things this atom can move past, if it has the corrosponding flag
pitchThe pitch adjustment that this movable uses when speaking.
thrown_speedSpeed of the current throw. 0 When not throwing.
tts_silicon_voice_effectSet to anything other than "" to activate the silicon voice effect for TTS messages.
voiceThe voice that this movable makes when speaking
voice_filterThe filter to apply to the voice when processing the TTS audio message.

Procs

CanPassThroughReturns true or false to allow src to move through the blocker, mover has final say
CanReachA backwards depth-limited breadth-first-search to see if the target is +logically "in" anything adjacent to us.
Crosseddefault byond proc that is deprecated for us in lieu of signals. do not call
MoveThe move proc is responsible for (in order):
UncrossUncross() is a default BYOND proc that is called when something is going +to exit this atom's turf. It is prefered over Uncrossed when you want to +deny that movement, such as in the case of border objects, objects that allow +you to walk through them in any direction except the one they block +(think side windows).
Uncrosseddefault byond proc that is normally called on everything inside the previous turf +a movable was in after moving to its current turf +this is wasteful since the vast majority of objects do not use Uncrossed +use connect_loc to register to COMSIG_ATOM_EXITED instead
_do_submergeAdds submerge effects to the AM. Should never be called directly
_reset_transformation_animationResets filters and removes transformation animations helper objects from vis contents.
abstract_movemeant for movement with zero side effects. only use for objects that are supposed to move "invisibly" (like camera mobs or ghosts) +if you want something to move onto a tile with a beartrap or recycler or tripmine or mouse without that object knowing about it at all, use this +most of the time you want forceMove()
add_nosubmerge_traitWrapper for setting the submerge trait. This trait should ALWAYS be set via this proc so we can listen for the trait removal in all cases
become_hearing_sensitiveallows this movable to hear and adds itself to the important_recursive_contents list of itself and every movable loc its in
cancel_override_minimap_trackingStops minimap override tracking
compose_name_hrefAllows us to wrap the name for specific cases like AI tracking or observer tracking
face_atomChange the direction of the atom to face the targeted atom
footstep_overrideoverrides the turf's normal footstep sound
force_pushreturns bool for if we want to get handle forcepushing, return is bool if we can move an anchored obj
force_pushedreturns bool for if we want to get forcepushed
get_export_valueGetter proc for the point value of this object
get_gravityChecks the gravity the atom is subjected to
lose_hearing_sensitivityremoves the hearing sensitivity channel from the important_recursive_contents list of this and all nested locs containing us if there are no more sources of the trait left +since RECURSIVE_CONTENTS_HEARING_SENSITIVE is also a spatial grid content type, removes us from the spatial grid if the trait is removed
move_crushreturns bool for if we want to get handle move crushing, return is bool if we can move an anchored obj
move_crushedreturns bool for if we want to get crushed
on_changed_z_levelCalled when a movable changes z-levels.
override_minimap_trackingUsed to handle minimap tracking inside other movables
set_flyingToggles AM between flying states
set_light_range_power_colorHelper to change several lighting overlay settings.
set_submerge_levelSets the submerged level of an AM based on its turf
set_throwingToggles AM between throwing states
stop_throwClean up all throw vars
supply_exportFunction that sells whatever object this is to the faction_selling; returns a /datum/export_report if successful
throw_bounceBounces the AM off hit_atom
throw_impactcalled when src is thrown into hit_atom
transformation_animationCreates animation that turns current icon into result appearance from top down.
turf_collisionThis is called when the AM is thrown into a dense turf
turf_cover_checkreturns that src is covering its turf. Used to prevent turf interactions such as water
update_dynamic_luminosityKeeps track of the sources of dynamic luminosity and updates our visibility with the highest.
update_emissive_blockUpdates this movables emissive overlay
+

Var Details

affected_movable_lights + + + + +

+

Lazylist to keep track on the sources of illumination.

affecting_dynamic_lumi + + + + +

+

Highest-intensity light affecting us, which determines our visibility.

blocks_emissive + + + + +

+

Either FALSE, EMISSIVE_BLOCK_GENERIC, or EMISSIVE_BLOCK_UNIQUE

client_mobs_in_contents + + + + +

+

contains every client mob corresponding to every client eye in this container. lazily updated by SSparallax and is sparse: +only the last container of a client eye has this list assuming no movement since SSparallax's last fire

drag_delay + + + + +

+

Delay added to mob's move_delay when pulling it.

drag_windup + + + + +

+

Wind-up before the mob can pull an object.

em_block + + + + +

+

Internal holder for emissive blocker object, do not use directly use blocks_emissive

important_recursive_contents + + + + +

+

an associative lazylist of relevant nested contents by "channel", the list is of the form: list(channel = list(important nested contents of that type)) +each channel has a specific purpose and is meant to replace potentially expensive nested contents iteration. +do NOT add channels to this for little reason as it can add considerable memory usage.

move_force + + + + +

+

How much the atom tries to push things out its way

move_resist + + + + +

+

How much the atom resists being thrown or moved.

moving_diagonally + + + + +

+

TRUE if we should not push or shuffle on bump/enter

pass_flags + + + + +

+

What things this atom can move past, if it has the corrosponding flag

pitch + + + + +

+

The pitch adjustment that this movable uses when speaking.

thrown_speed + + + + +

+

Speed of the current throw. 0 When not throwing.

tts_silicon_voice_effect + + + + +

+

Set to anything other than "" to activate the silicon voice effect for TTS messages.

voice + + + + +

+

The voice that this movable makes when speaking

voice_filter + + + + +

+

The filter to apply to the voice when processing the TTS audio message.

Proc Details

CanPassThrough +

+

Returns true or false to allow src to move through the blocker, mover has final say

CanReach +

+

A backwards depth-limited breadth-first-search to see if the target is +logically "in" anything adjacent to us.

Crossed +

+

default byond proc that is deprecated for us in lieu of signals. do not call

Move +

+

The move proc is responsible for (in order):

+ +

A diagonal move is slightly different as Moved, entered and exited is called only once +In order of calling:

+ +

Warning : Doesn't support well multi-tile diagonal moves

Uncross +

+

Uncross() is a default BYOND proc that is called when something is going +to exit this atom's turf. It is prefered over Uncrossed when you want to +deny that movement, such as in the case of border objects, objects that allow +you to walk through them in any direction except the one they block +(think side windows).

+

While being seemingly harmless, most everything doesn't actually want to +use this, meaning that we are wasting proc calls for every single atom +on a turf, every single time something exits it, when basically nothing +cares.

+

This overhead caused real problems on Sybil round #159709, where lag +attributed to Uncross was so bad that the entire master controller +collapsed and people made Among Us lobbies in OOC.

+

If you want to replicate the old Uncross() behavior, the most apt +replacement is [/datum/element/connect_loc] while hooking onto +[COMSIG_ATOM_EXIT].

Uncrossed +

+

default byond proc that is normally called on everything inside the previous turf +a movable was in after moving to its current turf +this is wasteful since the vast majority of objects do not use Uncrossed +use connect_loc to register to COMSIG_ATOM_EXITED instead

_do_submerge +

+

Adds submerge effects to the AM. Should never be called directly

_reset_transformation_animation +

+

Resets filters and removes transformation animations helper objects from vis contents.

abstract_move +

+

meant for movement with zero side effects. only use for objects that are supposed to move "invisibly" (like camera mobs or ghosts) +if you want something to move onto a tile with a beartrap or recycler or tripmine or mouse without that object knowing about it at all, use this +most of the time you want forceMove()

add_nosubmerge_trait +

+

Wrapper for setting the submerge trait. This trait should ALWAYS be set via this proc so we can listen for the trait removal in all cases

become_hearing_sensitive +

+

allows this movable to hear and adds itself to the important_recursive_contents list of itself and every movable loc its in

cancel_override_minimap_tracking +

+

Stops minimap override tracking

compose_name_href +

+

Allows us to wrap the name for specific cases like AI tracking or observer tracking

+

Arguments

+

face_atom +

+

Change the direction of the atom to face the targeted atom

footstep_override +

+

overrides the turf's normal footstep sound

force_push +

+

returns bool for if we want to get handle forcepushing, return is bool if we can move an anchored obj

force_pushed +

+

returns bool for if we want to get forcepushed

get_export_value +

+

Getter proc for the point value of this object

+

Returns:

+

get_gravity +

+

Checks the gravity the atom is subjected to

lose_hearing_sensitivity +

+

removes the hearing sensitivity channel from the important_recursive_contents list of this and all nested locs containing us if there are no more sources of the trait left +since RECURSIVE_CONTENTS_HEARING_SENSITIVE is also a spatial grid content type, removes us from the spatial grid if the trait is removed

+

move_crush +

+

returns bool for if we want to get handle move crushing, return is bool if we can move an anchored obj

move_crushed +

+

returns bool for if we want to get crushed

on_changed_z_level +

+

Called when a movable changes z-levels.

+

Arguments:

+

override_minimap_tracking +

+

Used to handle minimap tracking inside other movables

set_flying +

+

Toggles AM between flying states

set_light_range_power_color +

+

Helper to change several lighting overlay settings.

set_submerge_level +

+

Sets the submerged level of an AM based on its turf

set_throwing +

+

Toggles AM between throwing states

stop_throw +

+

Clean up all throw vars

supply_export +

+

Function that sells whatever object this is to the faction_selling; returns a /datum/export_report if successful

throw_bounce +

+

Bounces the AM off hit_atom

throw_impact +

+

called when src is thrown into hit_atom

transformation_animation +

+

Creates animation that turns current icon into result appearance from top down.

+

result_appearance - End result appearance/atom/image +time - Animation duration +transform_appearance - Appearance/atom/image of effect that moves along the animation - should be horizonatally centered

turf_collision +

+

This is called when the AM is thrown into a dense turf

turf_cover_check +

+

returns that src is covering its turf. Used to prevent turf interactions such as water

update_dynamic_luminosity +

+

Keeps track of the sources of dynamic luminosity and updates our visibility with the highest.

update_emissive_block +

+

Updates this movables emissive overlay

+ + + diff --git a/atom/movable/effect/rappel_rope.html b/atom/movable/effect/rappel_rope.html new file mode 100644 index 0000000000000..cfb6e66a20096 --- /dev/null +++ b/atom/movable/effect/rappel_rope.html @@ -0,0 +1,42 @@ + + + + + + + /atom/movable/effect/rappel_rope - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

rappel_rope + + + +

+ + + +

Procs

ropeanimationStarts the rope animation
ropeanimation_stopEnd the animation and qdels

Proc Details

ropeanimation +

+

Starts the rope animation

ropeanimation_stop +

+

End the animation and qdels

+ + + diff --git a/atom/movable/emissive_blocker.html b/atom/movable/emissive_blocker.html new file mode 100644 index 0000000000000..63f7842f42116 --- /dev/null +++ b/atom/movable/emissive_blocker.html @@ -0,0 +1,32 @@ + + + + + + + /atom/movable/emissive_blocker - byond + + +
+ byond - + Modules - + Types +
+
+

emissive_blocker + + + +

+ +

Internal atom that copies an appearance on to the blocker plane

+

Copies an appearance vis render_target and render_source on to the emissive blocking plane. +This means that the atom in question will block any emissive sprites. +This should only be used internally. If you are directly creating more of these, you're +almost guaranteed to be doing something wrong.

+ + + diff --git a/atom/movable/hitscan_projectile_effect.html b/atom/movable/hitscan_projectile_effect.html new file mode 100644 index 0000000000000..85cbcd7da28e1 --- /dev/null +++ b/atom/movable/hitscan_projectile_effect.html @@ -0,0 +1,35 @@ + + + + + + + /atom/movable/hitscan_projectile_effect - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

hitscan_projectile_effect + + + +

+ + +

Procs

remove_effectSignal handler to delete this effect

Proc Details

remove_effect +

+

Signal handler to delete this effect

+ + + diff --git a/atom/movable/lighting_mask.html b/atom/movable/lighting_mask.html new file mode 100644 index 0000000000000..7c5205fad813c --- /dev/null +++ b/atom/movable/lighting_mask.html @@ -0,0 +1,213 @@ + + + + + + + /atom/movable/lighting_mask - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

lighting_mask + + + +

+ + + + + + + + + + + + + + + + + + + + + + + +

Vars

affecting_turfsTurfs that are being affected by this mask, this is for the sake of luminosity
attached_atomThe atom that we are attached to, does not need hard del protection as we are deleted with it
awaiting_updatePrevents us from registering for update twice before SSlighting init
current_angleThe current angle the item is pointing at
is_directionalSet to TRUE if you want the light to rotate with the owner
mask_holderReference to the holder /obj/effect
radiusThe radius of illumination of the mask
shadowslist of mutable appearance shadows

Procs

apply_matrixif you want the matrix to grow or shrink, you can do that using this proc when applyng it
calculate_lighting_shadowsReturns a list of matrices corresponding to the matrices that should be applied to triangles of +coordinates (0,0),(1,0),(0,1) to create a triangcalculate_shadows_matricesle that respresents the shadows +takes in the old turf to smoothly animate shadow movement
calculate_triangle_verticesBasically takes the 2-4 corners, extends them and then generates triangle coordinates representing shadows +Input: list(list(list(x, y), list(x, y))) +Layer 1: Lines +Layer 2: Vertex +Layer 3: X/Y value +OUTPUT: The same thing but with 3 lists embedded rather than 2 because they are triangles not lines now.
cull_blocked_in_groupTakes in the list of lines and sight blockers and returns only the lines that are not blocked
get_corners_from_coordsConverts the corners into the 3 (or 2) valid points +For example if a wall is top right of the source, the bottom left wall corner +can be removed otherwise the wall itself will be in the shadow. +Input: list(list(x1, y1), list(x2, y2)) +Output: list(list(list(x, y), list(x, y))) <-- 2 coordinates that form a line
get_matrixCreates a matrix for the lighting mak to use
group_atomsGroups things into vertical and horizontal lines. +Input: All atoms ungrouped list(atom1, atom2, atom3) +Output: List(List(Group), list(group2), ... , list(groupN)) +Output: List(List(atom1, atom2), list(atom3, atom4...), ... , list(atom))
queue_mask_updateEnqueues the mask in the queue properly
rotateRotates the light source to angle degrees.
rotate_mask_on_holder_turnThe holder atom turned, spins the mask if it's needed
set_colorSetter proc for colors
set_intensitySetter proc for the intensity of the mask
set_radiusSets the radius of the mask, and updates everything that needs to be updated
triangle_to_matrixConverts a triangle into a matrix that can be applied to a standardized triangle +to make it represent the points.
+

Var Details

affecting_turfs + + + + +

+

Turfs that are being affected by this mask, this is for the sake of luminosity

attached_atom + + + + +

+

The atom that we are attached to, does not need hard del protection as we are deleted with it

awaiting_update + + + + +

+

Prevents us from registering for update twice before SSlighting init

current_angle + + + + +

+

The current angle the item is pointing at

is_directional + + + + +

+

Set to TRUE if you want the light to rotate with the owner

mask_holder + + + + +

+

Reference to the holder /obj/effect

radius + + + + +

+

The radius of illumination of the mask

shadows + + + + +

+

list of mutable appearance shadows

Proc Details

apply_matrix +

+

if you want the matrix to grow or shrink, you can do that using this proc when applyng it

calculate_lighting_shadows +

+

Returns a list of matrices corresponding to the matrices that should be applied to triangles of +coordinates (0,0),(1,0),(0,1) to create a triangcalculate_shadows_matricesle that respresents the shadows +takes in the old turf to smoothly animate shadow movement

calculate_triangle_vertices +

+

Basically takes the 2-4 corners, extends them and then generates triangle coordinates representing shadows +Input: list(list(list(x, y), list(x, y))) +Layer 1: Lines +Layer 2: Vertex +Layer 3: X/Y value +OUTPUT: The same thing but with 3 lists embedded rather than 2 because they are triangles not lines now.

cull_blocked_in_group +

+

Takes in the list of lines and sight blockers and returns only the lines that are not blocked

get_corners_from_coords +

+

Converts the corners into the 3 (or 2) valid points +For example if a wall is top right of the source, the bottom left wall corner +can be removed otherwise the wall itself will be in the shadow. +Input: list(list(x1, y1), list(x2, y2)) +Output: list(list(list(x, y), list(x, y))) <-- 2 coordinates that form a line

get_matrix +

+

Creates a matrix for the lighting mak to use

group_atoms +

+

Groups things into vertical and horizontal lines. +Input: All atoms ungrouped list(atom1, atom2, atom3) +Output: List(List(Group), list(group2), ... , list(groupN)) +Output: List(List(atom1, atom2), list(atom3, atom4...), ... , list(atom))

queue_mask_update +

+

Enqueues the mask in the queue properly

rotate +

+

Rotates the light source to angle degrees.

rotate_mask_on_holder_turn +

+

The holder atom turned, spins the mask if it's needed

set_color +

+

Setter proc for colors

set_intensity +

+

Setter proc for the intensity of the mask

set_radius +

+

Sets the radius of the mask, and updates everything that needs to be updated

triangle_to_matrix +

+

Converts a triangle into a matrix that can be applied to a standardized triangle +to make it represent the points.

+ + + diff --git a/atom/movable/screen.html b/atom/movable/screen.html new file mode 100644 index 0000000000000..9f50e0c17f658 --- /dev/null +++ b/atom/movable/screen.html @@ -0,0 +1,89 @@ + + + + + + + /atom/movable/screen - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

screen + + + +

+ + + + + + + +

Vars

assigned_mapMap name assigned to this object. +Automatically set by /client/proc/add_obj_to_map.
default_clickIf TRUE, clicking the screen element will fall through and perform a default "Click" call +Obviously this requires your Click override, if any, to call parent on their own. +This is set to FALSE to default to dissade you from doing this. +Generally we don't want default Click stuff, which results in bugs like using Telekinesis on a screen element +or trying to point your gun at your screen.
del_on_map_removalMark this object as garbage-collectible after you clean the map +it was registered on.
hudA reference to the owner HUD, if any.

Procs

fill_rectSets screen_loc to fill a rectangular area of the map.
set_positionSets screen_loc of this screen object, in form of point coordinates, +with optional pixel offset (px, py).
+

Var Details

assigned_map + + + + +

+

Map name assigned to this object. +Automatically set by /client/proc/add_obj_to_map.

default_click + + + + +

+

If TRUE, clicking the screen element will fall through and perform a default "Click" call +Obviously this requires your Click override, if any, to call parent on their own. +This is set to FALSE to default to dissade you from doing this. +Generally we don't want default Click stuff, which results in bugs like using Telekinesis on a screen element +or trying to point your gun at your screen.

del_on_map_removal + + + + +

+

Mark this object as garbage-collectible after you clean the map +it was registered on.

+

This could probably be changed to be a proc, for conditional removal. +But for now, this works.

hud + + + + +

+

A reference to the owner HUD, if any.

Proc Details

fill_rect +

+

Sets screen_loc to fill a rectangular area of the map.

+

If applicable, "assigned_map" has to be assigned before this proc call.

set_position +

+

Sets screen_loc of this screen object, in form of point coordinates, +with optional pixel offset (px, py).

+

If applicable, "assigned_map" has to be assigned before this proc call.

+ + + diff --git a/atom/movable/screen/admin_popup.html b/atom/movable/screen/admin_popup.html new file mode 100644 index 0000000000000..eed53ebf099f6 --- /dev/null +++ b/atom/movable/screen/admin_popup.html @@ -0,0 +1,43 @@ + + + + + + + /atom/movable/screen/admin_popup - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

admin_popup + + + +

+ +

The UI element for admin popups

+ +

Vars

last_color_indexThe last color chosen in the animation, sourced from the static list colors.
last_update_timeThe world.time when the last color update occurred.
+

Var Details

last_color_index + + + + +

+

The last color chosen in the animation, sourced from the static list colors.

last_update_time + + + + +

+

The world.time when the last color update occurred.

+ + + diff --git a/atom/movable/screen/ammo.html b/atom/movable/screen/ammo.html new file mode 100644 index 0000000000000..2c5648e7f6043 --- /dev/null +++ b/atom/movable/screen/ammo.html @@ -0,0 +1,72 @@ + + + + + + + /atom/movable/screen/ammo - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

ammo + + + +

+ +

HUD ammo indicator

+

Displays a number and an icon representing the ammo for up to 4 at a time

+ + + + + +

Vars

ammo_screen_loc_listList of possible screen locs
flash_holderHolder for playing a out of ammo animation so that it doesnt get cut during updates
warnedIf the user has already had their warning played for running out of ammo

Procs

add_hudwrapper to add this to the users screen with a owner
remove_hudwrapper to removing this ammo hud from the users screen
update_hudactually handles upadating the hud
+

Var Details

ammo_screen_loc_list + + + + +

+

List of possible screen locs

flash_holder + + + + +

+

Holder for playing a out of ammo animation so that it doesnt get cut during updates

warned + + + + +

+

If the user has already had their warning played for running out of ammo

Proc Details

add_hud +

+

wrapper to add this to the users screen with a owner

remove_hud +

+

wrapper to removing this ammo hud from the users screen

update_hud +

+

actually handles upadating the hud

+ + + diff --git a/atom/movable/screen/arrow.html b/atom/movable/screen/arrow.html new file mode 100644 index 0000000000000..bba2a5d7561c8 --- /dev/null +++ b/atom/movable/screen/arrow.html @@ -0,0 +1,64 @@ + + + + + + + /atom/movable/screen/arrow - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

arrow + + + +

+ + + + + + +

Vars

del_timerholder for the deletation timer
durationThe duration of the effect
targetThe target which the arrow points to
trackerThe mob for which the arrow appears

Procs

kill_arrowStop the arrow to avoid runtime and hard del
+

Var Details

del_timer + + + + +

+

holder for the deletation timer

duration + + + + +

+

The duration of the effect

target + + + + +

+

The target which the arrow points to

tracker + + + + +

+

The mob for which the arrow appears

Proc Details

kill_arrow +

+

Stop the arrow to avoid runtime and hard del

+ + + diff --git a/atom/movable/screen/buildmode.html b/atom/movable/screen/buildmode.html new file mode 100644 index 0000000000000..a8799439b5776 --- /dev/null +++ b/atom/movable/screen/buildmode.html @@ -0,0 +1,35 @@ + + + + + + + /atom/movable/screen/buildmode - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

buildmode + + + +

+ + +

Procs

clean_bdClean the bd var

Proc Details

clean_bd +

+

Clean the bd var

+ + + diff --git a/atom/movable/screen/buildmode/bdir.html b/atom/movable/screen/buildmode/bdir.html new file mode 100644 index 0000000000000..8c7e084e9c072 --- /dev/null +++ b/atom/movable/screen/buildmode/bdir.html @@ -0,0 +1,35 @@ + + + + + + + /atom/movable/screen/buildmode/bdir - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

bdir + + + +

+ + +

Procs

update_dirUpdates the direction of the buildmode

Proc Details

update_dir +

+

Updates the direction of the buildmode

+ + + diff --git a/atom/movable/screen/fullscreen.html b/atom/movable/screen/fullscreen.html new file mode 100644 index 0000000000000..7bc0719109daa --- /dev/null +++ b/atom/movable/screen/fullscreen.html @@ -0,0 +1,36 @@ + + + + + + + /atom/movable/screen/fullscreen - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

fullscreen + + + +

+ + +

Vars

removal_timerHolder for deletion timer
+

Var Details

removal_timer + + + + +

+

Holder for deletion timer

+ + + diff --git a/atom/movable/screen/interaction.html b/atom/movable/screen/interaction.html new file mode 100644 index 0000000000000..b39a55bf44368 --- /dev/null +++ b/atom/movable/screen/interaction.html @@ -0,0 +1,106 @@ + + + + + + + /atom/movable/screen/interaction - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

interaction + + + +

+ + + + + + + + + + + + +

Vars

initiatorThe mob that initiated the interaction
interaction_soundSound filed played when interaction is successful
ownerWho this offer for interaction is being made to
timeoutClear itself after a certain amount of time
timer_idThe reference to the existing timer

Procs

end_interactionFunctions to end the interaction
failure_messageReturns a string for unsuccessful interactions
interactees_movedWhat to do when either the owner or the initiating mob moves
interaction_animationSeperate proc meant to be overriden for unique animations
register_movement_signalsSeparate proc to register signals; not on Initialize because owner and initiator are not set yet
success_messageReturns a string for successful interactions
+

Var Details

initiator + + + + +

+

The mob that initiated the interaction

interaction_sound + + + + +

+

Sound filed played when interaction is successful

owner + + + + +

+

Who this offer for interaction is being made to

timeout + + + + +

+

Clear itself after a certain amount of time

timer_id + + + + +

+

The reference to the existing timer

Proc Details

end_interaction +

+

Functions to end the interaction

failure_message +

+

Returns a string for unsuccessful interactions

interactees_moved +

+

What to do when either the owner or the initiating mob moves

interaction_animation +

+

Seperate proc meant to be overriden for unique animations

register_movement_signals +

+

Separate proc to register signals; not on Initialize because owner and initiator are not set yet

success_message +

+

Returns a string for successful interactions

+ + + diff --git a/atom/movable/screen/inventory/hand.html b/atom/movable/screen/inventory/hand.html new file mode 100644 index 0000000000000..c44217224eab3 --- /dev/null +++ b/atom/movable/screen/inventory/hand.html @@ -0,0 +1,36 @@ + + + + + + + /atom/movable/screen/inventory/hand - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

hand + + + +

+ + +

Vars

hand_tagThe tag used by this hand, used for activate_hand()
+

Var Details

hand_tag + + + + +

+

The tag used by this hand, used for activate_hand()

+ + + diff --git a/atom/movable/screen/map_view.html b/atom/movable/screen/map_view.html new file mode 100644 index 0000000000000..85ec5669f964f --- /dev/null +++ b/atom/movable/screen/map_view.html @@ -0,0 +1,37 @@ + + + + + + + /atom/movable/screen/map_view - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

map_view + + + +

+ + +

Procs

NewA screen object, which acts as a container for turfs and other things +you want to show on the map, which you usually attach to "vis_contents".

Proc Details

New +

+

A screen object, which acts as a container for turfs and other things +you want to show on the map, which you usually attach to "vis_contents".

+ + + diff --git a/atom/movable/screen/mech_builder_view.html b/atom/movable/screen/mech_builder_view.html new file mode 100644 index 0000000000000..c0e10d7ca842d --- /dev/null +++ b/atom/movable/screen/mech_builder_view.html @@ -0,0 +1,36 @@ + + + + + + + /atom/movable/screen/mech_builder_view - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

mech_builder_view + + + +

+ + +

Vars

plane_masterslist of plane masters to apply to owners
+

Var Details

plane_masters + + + + +

+

list of plane masters to apply to owners

+ + + diff --git a/atom/movable/screen/mech_view.html b/atom/movable/screen/mech_view.html new file mode 100644 index 0000000000000..2653dd519108d --- /dev/null +++ b/atom/movable/screen/mech_view.html @@ -0,0 +1,43 @@ + + + + + + + /atom/movable/screen/mech_view - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

mech_view + + + +

+ +

A preview of the mech for the UI

+ +

Vars

ownerThe body that is displayed
plane_masterslist of plane masters to apply to owners
+

Var Details

owner + + + + +

+

The body that is displayed

plane_masters + + + + +

+

list of plane masters to apply to owners

+ + + diff --git a/atom/movable/screen/minimap.html b/atom/movable/screen/minimap.html new file mode 100644 index 0000000000000..9b52c460d70e4 --- /dev/null +++ b/atom/movable/screen/minimap.html @@ -0,0 +1,71 @@ + + + + + + + /atom/movable/screen/minimap - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

minimap + + + +

+ +

Default HUD screen minimap object

+ + + +

Vars

choices_by_mobassoc list of mob choices by clicking on coords. only exists fleetingly for the wait loop in [/proc/get_coords_from_click]
stop_pollingshould get_coords_from_click stop waiting for an input?

Procs

get_coords_from_clicklets the user get coordinates by clicking the actual map +Returns a list(x_coord, y_coord) +note: sleeps until the user makes a choice, stop_polling is set to TRUE or they disconnect
on_clickHandles fetching the targetted coordinates when the mob tries to click on this map +does the following: +turns map targetted pixel into a list(x, y) +gets z level of this map +x and y minimap centering is reverted, then the x2 scaling of the map is removed +round up to correct if an odd pixel was clicked and make sure its valid
+

Var Details

choices_by_mob + + + + +

+

assoc list of mob choices by clicking on coords. only exists fleetingly for the wait loop in [/proc/get_coords_from_click]

stop_polling + + + + +

+

should get_coords_from_click stop waiting for an input?

Proc Details

get_coords_from_click +

+

lets the user get coordinates by clicking the actual map +Returns a list(x_coord, y_coord) +note: sleeps until the user makes a choice, stop_polling is set to TRUE or they disconnect

on_click +

+

Handles fetching the targetted coordinates when the mob tries to click on this map +does the following: +turns map targetted pixel into a list(x, y) +gets z level of this map +x and y minimap centering is reverted, then the x2 scaling of the map is removed +round up to correct if an odd pixel was clicked and make sure its valid

+ + + diff --git a/atom/movable/screen/minimap_locator.html b/atom/movable/screen/minimap_locator.html new file mode 100644 index 0000000000000..ef4251a5e5555 --- /dev/null +++ b/atom/movable/screen/minimap_locator.html @@ -0,0 +1,35 @@ + + + + + + + /atom/movable/screen/minimap_locator - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

minimap_locator + + + +

+ + +

Procs

updateupdates the screen loc of the locator so that it's on the movers location on the minimap

Proc Details

update +

+

updates the screen loc of the locator so that it's on the movers location on the minimap

+ + + diff --git a/atom/movable/screen/minimap_tool.html b/atom/movable/screen/minimap_tool.html new file mode 100644 index 0000000000000..82970f1d45b73 --- /dev/null +++ b/atom/movable/screen/minimap_tool.html @@ -0,0 +1,87 @@ + + + + + + + /atom/movable/screen/minimap_tool - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

minimap_tool + + + +

+ + + + + + + + + +

Vars

active_mouse_iconactive mouse icon when the tool is selected
drawn_imagereference to the icon we are manipulating when drawing, fetched during initialize
minimap_flagone minimap flag that this tool will be drawing on
x_offsetx offset of the minimap icon for this zlevel. mostly used for shorthand
y_offsety offset of the minimap icon for this zlevel. mostly used for shorthand
zlevelzlevel that this minimap tool applies to and which it will be drawing on

Procs

on_mousedownhandles actions when the mouse is held down while the tool is active. +returns COMSIG_MOB_CLICK_CANCELED to continue handling, NONE to cancel
set_zlevelSetter for the offsets of the x and y of drawing based on the input z, and the drawn_image
+

Var Details

active_mouse_icon + + + + +

+

active mouse icon when the tool is selected

drawn_image + + + + +

+

reference to the icon we are manipulating when drawing, fetched during initialize

minimap_flag + + + + +

+

one minimap flag that this tool will be drawing on

x_offset + + + + +

+

x offset of the minimap icon for this zlevel. mostly used for shorthand

y_offset + + + + +

+

y offset of the minimap icon for this zlevel. mostly used for shorthand

zlevel + + + + +

+

zlevel that this minimap tool applies to and which it will be drawing on

Proc Details

on_mousedown +

+

handles actions when the mouse is held down while the tool is active. +returns COMSIG_MOB_CLICK_CANCELED to continue handling, NONE to cancel

set_zlevel +

+

Setter for the offsets of the x and y of drawing based on the input z, and the drawn_image

+ + + diff --git a/atom/movable/screen/minimap_tool/draw_tool.html b/atom/movable/screen/minimap_tool/draw_tool.html new file mode 100644 index 0000000000000..a6aafc43aa583 --- /dev/null +++ b/atom/movable/screen/minimap_tool/draw_tool.html @@ -0,0 +1,50 @@ + + + + + + + /atom/movable/screen/minimap_tool/draw_tool - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

draw_tool + + + +

+ + + + +

Vars

starting_coordstemporary existing list used to calculate a line between the start of a click and the end of a click

Procs

draw_lineproc for drawing a line from list(startx, starty) to list(endx, endy) on the screen. yes this is aa ripoff of [/proc/getline]
on_mouseupCalled when the mouse is released again to finish the drag-draw
+

Var Details

starting_coords + + + + +

+

temporary existing list used to calculate a line between the start of a click and the end of a click

Proc Details

draw_line +

+

proc for drawing a line from list(startx, starty) to list(endx, endy) on the screen. yes this is aa ripoff of [/proc/getline]

on_mouseup +

+

Called when the mouse is released again to finish the drag-draw

+ + + diff --git a/atom/movable/screen/minimap_tool/label.html b/atom/movable/screen/minimap_tool/label.html new file mode 100644 index 0000000000000..ab0786c8e2906 --- /dev/null +++ b/atom/movable/screen/minimap_tool/label.html @@ -0,0 +1,50 @@ + + + + + + + /atom/movable/screen/minimap_tool/label - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

label + + + +

+ + + + +

Vars

labelled_turfsList of turfs that have labels attached to them. kept around so it can be cleared

Procs

async_mousedownasync mousedown for the actual label placement handling
clear_labelsClears all labels and logs who did it
+

Var Details

labelled_turfs + + + + +

+

List of turfs that have labels attached to them. kept around so it can be cleared

Proc Details

async_mousedown +

+

async mousedown for the actual label placement handling

clear_labels +

+

Clears all labels and logs who did it

+ + + diff --git a/atom/movable/screen/plane_master.html b/atom/movable/screen/plane_master.html new file mode 100644 index 0000000000000..0f9ebe3e6aebe --- /dev/null +++ b/atom/movable/screen/plane_master.html @@ -0,0 +1,211 @@ + + + + + + + /atom/movable/screen/plane_master - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

plane_master + + + +

+ + + + + + + + + + + + + + + + + + + + +

Vars

allows_offsettingIf our plane master allows for offsetting +Mostly used for planes that really don't need to be duplicated, like the hud planes
blend_mode_overrideinteger: blend mode to apply to the render relay in case you dont want to use the plane_masters blend_mode
criticalBitfield that describes how this plane master will render if its z layer is being "optimized" +If a plane master is NOT critical, it will be completely dropped if we start to render outside a client's multiz boundary prefs +Of note: most of the time we will relay renders to non critical planes in this stage. so the plane master will end up drawing roughly "in order" with its friends +This is NOT done for parallax and other problem children, because the rules of BLEND_MULTIPLY appear to not behave as expected :( +This will also just make debugging harder, because we do fragile things in order to ensure things operate as epected. I'm sorry +Compile time +See code__DEFINES\layers.dm for our bitflags
force_hiddenIf this plane master is being forced to hide. +Hidden PMs will dump ANYTHING relayed or drawn onto them. Be careful with this +Remember: a hidden plane master will dump anything drawn directly to it onto the output render. It does NOT hide its contents +Use alpha for that
generate_render_targetbool: Whether this plane should get a render target automatically generated
is_outside_boundsIf this plane master is outside of our visual bounds right now
multiz_scaledIf this plane should be scaled by multiz +Planes with this set should NEVER be relay'd into each other, as that will cause visual fuck
offsetOur offset from our "true" plane, see below
real_planeWhen rendering multiz, lower levels get their own set of plane masters +Real plane here represents the "true" plane value of something, ignoring the offset required to handle lower levels
relayreference to render relay screen object to avoid backdropping multiple times
relayslist of current relays this plane is utilizing to render
render_relay_planeinteger: what plane we will relay this planes render to
start_hiddenIf this plane master should be hidden from the player at roundstart +We do this so PMs can opt into being temporary, to reduce load on clients

Procs

check_outside_boundsHook to allow planes to work around is_outside_bounds +Return false to allow a show, true otherwise
hide_fromHides a plane master from the passeed in mob +Do your effect cleanup here
hide_planeForces this plane master to hide, until unhide_plane is called +This allows us to disable unused PMs without breaking anything else
relay_render_to_planePlane master proc called in backdrop() that creates a relay object, sets it as needed and then adds it to the clients screen +Sets:
show_toShows a plane master to the passed in mob +Override this to apply unique effects and such +Returns TRUE if the call is allowed, FALSE otherwise
unhide_planeDisables any forced hiding, allows the plane master to be used as normal
+

Var Details

allows_offsetting + + + + +

+

If our plane master allows for offsetting +Mostly used for planes that really don't need to be duplicated, like the hud planes

blend_mode_override + + + + +

+

integer: blend mode to apply to the render relay in case you dont want to use the plane_masters blend_mode

critical + + + + +

+

Bitfield that describes how this plane master will render if its z layer is being "optimized" +If a plane master is NOT critical, it will be completely dropped if we start to render outside a client's multiz boundary prefs +Of note: most of the time we will relay renders to non critical planes in this stage. so the plane master will end up drawing roughly "in order" with its friends +This is NOT done for parallax and other problem children, because the rules of BLEND_MULTIPLY appear to not behave as expected :( +This will also just make debugging harder, because we do fragile things in order to ensure things operate as epected. I'm sorry +Compile time +See code__DEFINES\layers.dm for our bitflags

force_hidden + + + + +

+

If this plane master is being forced to hide. +Hidden PMs will dump ANYTHING relayed or drawn onto them. Be careful with this +Remember: a hidden plane master will dump anything drawn directly to it onto the output render. It does NOT hide its contents +Use alpha for that

generate_render_target + + + + +

+

bool: Whether this plane should get a render target automatically generated

is_outside_bounds + + + + +

+

If this plane master is outside of our visual bounds right now

multiz_scaled + + + + +

+

If this plane should be scaled by multiz +Planes with this set should NEVER be relay'd into each other, as that will cause visual fuck

offset + + + + +

+

Our offset from our "true" plane, see below

real_plane + + + + +

+

When rendering multiz, lower levels get their own set of plane masters +Real plane here represents the "true" plane value of something, ignoring the offset required to handle lower levels

relay + + + + +

+

reference to render relay screen object to avoid backdropping multiple times

relays + + + + +

+

list of current relays this plane is utilizing to render

render_relay_plane + + + + +

+

integer: what plane we will relay this planes render to

start_hidden + + + + +

+

If this plane master should be hidden from the player at roundstart +We do this so PMs can opt into being temporary, to reduce load on clients

Proc Details

check_outside_bounds +

+

Hook to allow planes to work around is_outside_bounds +Return false to allow a show, true otherwise

hide_from +

+

Hides a plane master from the passeed in mob +Do your effect cleanup here

hide_plane +

+

Forces this plane master to hide, until unhide_plane is called +This allows us to disable unused PMs without breaking anything else

relay_render_to_plane +

+

Plane master proc called in backdrop() that creates a relay object, sets it as needed and then adds it to the clients screen +Sets:

+

show_to +

+

Shows a plane master to the passed in mob +Override this to apply unique effects and such +Returns TRUE if the call is allowed, FALSE otherwise

unhide_plane +

+

Disables any forced hiding, allows the plane master to be used as normal

+ + + diff --git a/atom/movable/screen/plane_master/rendering_plate.html b/atom/movable/screen/plane_master/rendering_plate.html new file mode 100644 index 0000000000000..d0183084ce513 --- /dev/null +++ b/atom/movable/screen/plane_master/rendering_plate.html @@ -0,0 +1,33 @@ + + + + + + + /atom/movable/screen/plane_master/rendering_plate - byond + + +
+ byond - + Modules - + Types +
+
+

rendering_plate + + + +

+ +Rendering plate +

Acts like a plane master, but for plane masters +Renders other planes onto this plane, through the use of render objects +Any effects applied onto this plane will act on the unified plane +IE a bulge filter will apply as if the world was one object +remember that once planes are unified on a render plate you cant change the layering of them!

+ + + diff --git a/atom/movable/screen/text/lobby.html b/atom/movable/screen/text/lobby.html new file mode 100644 index 0000000000000..d7b2f1935bdaa --- /dev/null +++ b/atom/movable/screen/text/lobby.html @@ -0,0 +1,35 @@ + + + + + + + /atom/movable/screen/text/lobby - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

lobby + + + +

+ +

Unclickable Lobby UI objects

+

Procs

update_textThis proc updates the maptext of the buttons.

Proc Details

update_text +

+

This proc updates the maptext of the buttons.

+ + + diff --git a/atom/movable/screen/text/lobby/clickable/polls.html b/atom/movable/screen/text/lobby/clickable/polls.html new file mode 100644 index 0000000000000..1ab8fdb549068 --- /dev/null +++ b/atom/movable/screen/text/lobby/clickable/polls.html @@ -0,0 +1,35 @@ + + + + + + + /atom/movable/screen/text/lobby/clickable/polls - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

polls + + + +

+ + +

Procs

fetch_pollsProc that fetches the polls, exists so we can async it in update_text

Proc Details

fetch_polls +

+

Proc that fetches the polls, exists so we can async it in update_text

+ + + diff --git a/atom/movable/screen/text/lobby/clickable/setup_character.html b/atom/movable/screen/text/lobby/clickable/setup_character.html new file mode 100644 index 0000000000000..c31188b3b673c --- /dev/null +++ b/atom/movable/screen/text/lobby/clickable/setup_character.html @@ -0,0 +1,36 @@ + + + + + + + /atom/movable/screen/text/lobby/clickable/setup_character - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

setup_character + + + +

+ + +

Vars

registeredBool, whether we registered to listen for charachter updates already
+

Var Details

registered + + + + +

+

Bool, whether we registered to listen for charachter updates already

+ + + diff --git a/atom/movable/screen/text/screen_text.html b/atom/movable/screen/text/screen_text.html new file mode 100644 index 0000000000000..72241320f2a0c --- /dev/null +++ b/atom/movable/screen/text/screen_text.html @@ -0,0 +1,111 @@ + + + + + + + /atom/movable/screen/text/screen_text - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

screen_text + + + +

+ + + + + + + + + + + + +

Vars

fade_in_timeTime taken to fade in as we start printing text
fade_out_delayTime before fade out after printing is finished
fade_out_timeTime taken when fading out after fade_out_delay
letters_per_updateletters to update by per text to per play_delay
play_delaydelay between playing each letter. in general use 1 for fluff and 0.5 for time sensitive messsages
style_closeclosing styling for the message
style_openopening styling for the message
text_to_playvar for the text we are going to play

Procs

after_playhandles post-play effects like fade out after the fade out delay
end_playends the play then deletes this screen object and plays the next one in queue if it exists
play_to_clientproc for actually playing this screen_text on a mob. +Arguments:
+

Var Details

fade_in_time + + + + +

+

Time taken to fade in as we start printing text

fade_out_delay + + + + +

+

Time before fade out after printing is finished

fade_out_time + + + + +

+

Time taken when fading out after fade_out_delay

letters_per_update + + + + +

+

letters to update by per text to per play_delay

play_delay + + + + +

+

delay between playing each letter. in general use 1 for fluff and 0.5 for time sensitive messsages

style_close + + + + +

+

closing styling for the message

style_open + + + + +

+

opening styling for the message

text_to_play + + + + +

+

var for the text we are going to play

Proc Details

after_play +

+

handles post-play effects like fade out after the fade out delay

end_play +

+

ends the play then deletes this screen object and plays the next one in queue if it exists

play_to_client +

+

proc for actually playing this screen_text on a mob. +Arguments:

+
+ + + diff --git a/atom/movable/screen/text/screen_text/picture.html b/atom/movable/screen/text/screen_text/picture.html new file mode 100644 index 0000000000000..ac7c1de56185d --- /dev/null +++ b/atom/movable/screen/text/screen_text/picture.html @@ -0,0 +1,50 @@ + + + + + + + /atom/movable/screen/text/screen_text/picture - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

picture + + + +

+ + + + +

Vars

image_to_playimage that will display on the left of the screen alert
image_to_play_offset_xx offset of image
image_to_play_offset_yy offset of image
+

Var Details

image_to_play + + + + +

+

image that will display on the left of the screen alert

image_to_play_offset_x + + + + +

+

x offset of image

image_to_play_offset_y + + + + +

+

y offset of image

+ + + diff --git a/atom/movable/screen/text/screen_timer.html b/atom/movable/screen/text/screen_timer.html new file mode 100644 index 0000000000000..c4612f4a6e0f5 --- /dev/null +++ b/atom/movable/screen/text/screen_timer.html @@ -0,0 +1,106 @@ + + + + + + + /atom/movable/screen/text/screen_timer - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

screen_timer + + + +

+ +

A screen object that shows the time left on a timer

+ + + + + + + + + + +

Vars

maptext_stringThe actual displayed content of the maptext, use ${timer}, and it'll be replaced with the time left
maptext_style_leftLeft side of the HTML tag for maptext, style is also included
maptext_style_rightEnd tag of the HTML tag for maptext
timer_idTimer ID that we're tracking, the time left of this is displayed as maptext
timer_mobsThe list of mobs that we're attached to, and care about

Procs

apply_toAdds the object to the client.screen of all mobs in the list, and registers the needed signals
attachAdds the object to the client.screen of the mob, or removes it if add_to_screen is FALSE
de_attachSignal handler to run attach with specific args
delete_selfMainly a signal handler so we can run qdel()
remove_fromRemoves the object from the client.screen of all mobs in the list, and unregisters the needed signals, while also stopping processing if there's no more mobs in the screen timers mob list
update_maptextUpdates the maptext to show the current time left on the timer
+

Var Details

maptext_string + + + + +

+

The actual displayed content of the maptext, use ${timer}, and it'll be replaced with the time left

maptext_style_left + + + + +

+

Left side of the HTML tag for maptext, style is also included

maptext_style_right + + + + +

+

End tag of the HTML tag for maptext

timer_id + + + + +

+

Timer ID that we're tracking, the time left of this is displayed as maptext

timer_mobs + + + + +

+

The list of mobs that we're attached to, and care about

Proc Details

apply_to +

+

Adds the object to the client.screen of all mobs in the list, and registers the needed signals

attach +

+

Adds the object to the client.screen of the mob, or removes it if add_to_screen is FALSE

de_attach +

+

Signal handler to run attach with specific args

delete_self +

+

Mainly a signal handler so we can run qdel()

remove_from +

+

Removes the object from the client.screen of all mobs in the list, and unregisters the needed signals, while also stopping processing if there's no more mobs in the screen timers mob list

update_maptext +

+

Updates the maptext to show the current time left on the timer

+ + + diff --git a/atom/movable/vis_obj/turret_overlay.html b/atom/movable/vis_obj/turret_overlay.html new file mode 100644 index 0000000000000..6c040548c3e3d --- /dev/null +++ b/atom/movable/vis_obj/turret_overlay.html @@ -0,0 +1,43 @@ + + + + + + + /atom/movable/vis_obj/turret_overlay - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

turret_overlay + + + +

+ + + +

Vars

primary_overlayoverlay obj for for the attached gun
secondary_overlayicon state for the secondary
+

Var Details

primary_overlay + + + + +

+

overlay obj for for the attached gun

secondary_overlay + + + + +

+

icon state for the secondary

+ + + diff --git a/atom/movable/vis_obj/xeno_wounds/backpack_overlay.html b/atom/movable/vis_obj/xeno_wounds/backpack_overlay.html new file mode 100644 index 0000000000000..c20af13e81599 --- /dev/null +++ b/atom/movable/vis_obj/xeno_wounds/backpack_overlay.html @@ -0,0 +1,36 @@ + + + + + + + /atom/movable/vis_obj/xeno_wounds/backpack_overlay - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

backpack_overlay + + + +

+ +

Used to display xeno wounds & equipment without rapidly switching overlays

+

Vars

ownerThe xeno this overlay belongs to
+

Var Details

owner + + + + +

+

The xeno this overlay belongs to

+ + + diff --git a/atom/movable/vis_obj/xeno_wounds/fire_overlay.html b/atom/movable/vis_obj/xeno_wounds/fire_overlay.html new file mode 100644 index 0000000000000..f755510d69788 --- /dev/null +++ b/atom/movable/vis_obj/xeno_wounds/fire_overlay.html @@ -0,0 +1,43 @@ + + + + + + + /atom/movable/vis_obj/xeno_wounds/fire_overlay - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

fire_overlay + + + +

+ + + +

Vars

ownerThe xeno this belongs to

Procs

update_flame_lightAdjusts the light emitted by the flame
+

Var Details

owner + + + + +

+

The xeno this belongs to

Proc Details

update_flame_light +

+

Adjusts the light emitted by the flame

+ + + diff --git a/client.html b/client.html new file mode 100644 index 0000000000000..a7faa8900e9d5 --- /dev/null +++ b/client.html @@ -0,0 +1,458 @@ + + + + + + + /client - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

client + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

admin_music_volumeAdmin music volume, from 0 to 1.
client_keysend_amountAmount of keydowns in the last keysend checking interval
completed_asset_jobsList of all completed blocking send jobs awaiting acknowledgement by send_asset
dont_animate_parallaxworld.time of when we can state animate()ing parallax again
intended_directionThe direction we WANT to move, based off our keybinds +Will be udpated to be the actual direction later on
keysend_trippedWhen set to true, user will be autokicked if they trip the keysends in a second limit again
last_asset_jobLast asset send job id.
last_parallax_shiftworld.time of last parallax update
movement_keyscustom movement keys for this client
next_keysend_resetWorld tick time where client_keysend_amount will reset
next_keysend_trip_resetWorld tick time where keysend_tripped will reset back to false
obj_windowOur object window datum. It stores info about and handles behavior for the object tab
panel_tabslist of all tabs
parallax_throttleds between parallax updates
recent_examinesA lazy list of atoms we've examined in the last RECENT_EXAMINE_MAX_WINDOW (default 2) seconds, so that we will call [/atom/proc/examine_more] instead of /atom/proc/examine on them when examining
screen_mapsAssoc list with all the active maps - when a screen obj is added to +a map, it's put in here as well.
screen_textslazylist of screen_texts for this client, first in this list is the one playing
script!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +!!!!!!!!!!HEY LISTEN!!!!!!!!!!!!!!!!!!!!!!!! +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
seen_messagesMessages currently seen by this client
spell_tabslist of tabs containing spells and abilities
stat_panelStat panel window declaration
stat_tabour current tab
tgui_cache_reloadedglobal
tgui_sayAssigned say modal of the client
tgui_windowsglobal
view_sizedatum wrapper for client view

Procs

apply_clickcatcherCreates and applies a clickcatcher
asset_cache_confirm_arrivalProcess asset cache client topic calls for "asset_cache_confirm_arrival=[INT]"
asset_cache_preload_dataProcess asset cache client topic calls for "asset_cache_preload_data=[HTML+JSON_STRING]
asset_cache_update_jsonUpdates the client side stored json file used to keep track of what assets the client has between restarts/reconnects.
browse_queue_flushBlocks until all currently sending browse and browse_rsc assets have been sent. +Due to byond limitations, this proc will sleep for 1 client round trip even if the client has no pending asset sends. +This proc will return an untrue value if it had to return before confirming the send, such as timeout or the client going away.
clear_all_mapsClears all the maps of registered screen objects.
clear_mapClears the map of registered screen objects.
close_popupCloses a popup.
create_popupCreates a popup window with a basic map element in it, without any +further initialization.
fix_tgui_paneltgui panel / chat troubleshooting verb
handle_popup_closeWhen the popup closes in any way (player or proc call) it calls this.
init_verbscompiles a full list of verbs and sends it to the browser
keyUpCheck if the key is short enough to even be a real key
mark_datum
on_stat_panel_messageHandles incoming messages from the stat-panel TGUI.
open_particle_editoropens the particle editor UI for the in_atom object for this client
reestablish_tts_connectionA debug verb to try and re-establish a connection with the TTS server and to refetch TTS voices. +Since voices are cached beforehand, this is unlikely to update preferences.
register_map_objRegisters screen obj with the client, which makes it visible on the +assigned map, and becomes a part of the assigned map's lifecycle.
reset_held_keysManually clears any held keys, in case due to lag or other undefined behavior a key gets stuck.
send_resourcesSend resources to the client. Sends both game resources and browser assets.
set_fullscreenChange the fullscreen setting of the client
set_round_end_soundclient verb to set round end sound
setup_popupCreate the popup, and get it ready for generic use by giving +it a background.
tgui_say_create_open_commandCreates a JSON encoded message to open TGUI say modals properly.
toggle_tgui_fancySame thing as the character creator preference, but as a byond verb, because not everyone can reach it in tgui preference menu
uicloseverb
update_ambience_prefupdates with the ambience preferrences of the user
update_special_keybindsUpdates the keybinds for special keys
+

Var Details

admin_music_volume + + + + +

+

Admin music volume, from 0 to 1.

client_keysend_amount + + + + +

+

Amount of keydowns in the last keysend checking interval

completed_asset_jobs + + + + +

+

List of all completed blocking send jobs awaiting acknowledgement by send_asset

dont_animate_parallax + + + + +

+

world.time of when we can state animate()ing parallax again

intended_direction + + + + +

+

The direction we WANT to move, based off our keybinds +Will be udpated to be the actual direction later on

keysend_tripped + + + + +

+

When set to true, user will be autokicked if they trip the keysends in a second limit again

last_asset_job + + + + +

+

Last asset send job id.

last_parallax_shift + + + + +

+

world.time of last parallax update

movement_keys + + + + +

+

custom movement keys for this client

next_keysend_reset + + + + +

+

World tick time where client_keysend_amount will reset

next_keysend_trip_reset + + + + +

+

World tick time where keysend_tripped will reset back to false

obj_window + + + + +

+

Our object window datum. It stores info about and handles behavior for the object tab

panel_tabs + + + + +

+

list of all tabs

parallax_throttle + + + + +

+

ds between parallax updates

recent_examines + + + + +

+

A lazy list of atoms we've examined in the last RECENT_EXAMINE_MAX_WINDOW (default 2) seconds, so that we will call [/atom/proc/examine_more] instead of /atom/proc/examine on them when examining

screen_maps + + + + +

+

Assoc list with all the active maps - when a screen obj is added to +a map, it's put in here as well.

+

Format: list( = list(/atom/movable/screen))

screen_texts + + + + +

+

lazylist of screen_texts for this client, first in this list is the one playing

script + + + + +

+

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +!!!!!!!!!!HEY LISTEN!!!!!!!!!!!!!!!!!!!!!!!! +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

seen_messages + + + + +

+

Messages currently seen by this client

spell_tabs + + + + +

+

list of tabs containing spells and abilities

stat_panel + + + + +

+

Stat panel window declaration

stat_tab + + + + +

+

our current tab

tgui_cache_reloaded + + + + +

+

global

+

TRUE if cache was reloaded by tgui dev server at least once.

tgui_say + + + + +

+

Assigned say modal of the client

tgui_windows + + + + +

+

global

+

Tracks open windows for a user.

view_size + + + + +

+

datum wrapper for client view

Proc Details

apply_clickcatcher +

+

Creates and applies a clickcatcher

asset_cache_confirm_arrival +

+

Process asset cache client topic calls for "asset_cache_confirm_arrival=[INT]"

asset_cache_preload_data +

+

Process asset cache client topic calls for "asset_cache_preload_data=[HTML+JSON_STRING]

asset_cache_update_json +

+

Updates the client side stored json file used to keep track of what assets the client has between restarts/reconnects.

browse_queue_flush +

+

Blocks until all currently sending browse and browse_rsc assets have been sent. +Due to byond limitations, this proc will sleep for 1 client round trip even if the client has no pending asset sends. +This proc will return an untrue value if it had to return before confirming the send, such as timeout or the client going away.

clear_all_maps +

+

Clears all the maps of registered screen objects.

clear_map +

+

Clears the map of registered screen objects.

+

Not really needed most of the time, as the client's screen list gets reset +on relog. any of the buttons are going to get caught by garbage collection +anyway. they're effectively qdel'd.

close_popup +

+

Closes a popup.

create_popup +

+

Creates a popup window with a basic map element in it, without any +further initialization.

+

Ratio is how many pixels by how many pixels (keep it simple).

+

Returns a map name.

fix_tgui_panel +

+

tgui panel / chat troubleshooting verb

handle_popup_close +

+

When the popup closes in any way (player or proc call) it calls this.

init_verbs +

+

compiles a full list of verbs and sends it to the browser

keyUp +

+

Check if the key is short enough to even be a real key

mark_datum +

+ mark_datum(datum/D) +

This proc marks a datum for the holder of this client, by setting the holder's marked_datum var. +If the holder already had a marked datum, unmarks said datum beforehand. +The client obviously must have a holder for this to work.

+

on_stat_panel_message +

+

Handles incoming messages from the stat-panel TGUI.

open_particle_editor +

+

opens the particle editor UI for the in_atom object for this client

reestablish_tts_connection +

+

A debug verb to try and re-establish a connection with the TTS server and to refetch TTS voices. +Since voices are cached beforehand, this is unlikely to update preferences.

register_map_obj +

+

Registers screen obj with the client, which makes it visible on the +assigned map, and becomes a part of the assigned map's lifecycle.

reset_held_keys +

+

Manually clears any held keys, in case due to lag or other undefined behavior a key gets stuck.

+

Hardcoded to the ESC key.

send_resources +

+

Send resources to the client. Sends both game resources and browser assets.

set_fullscreen +

+

Change the fullscreen setting of the client

set_round_end_sound +

+

client verb to set round end sound

setup_popup +

+

Create the popup, and get it ready for generic use by giving +it a background.

+

Width and height are multiplied by 64 by default.

tgui_say_create_open_command +

+

Creates a JSON encoded message to open TGUI say modals properly.

+

Arguments: +channel - The channel to open the modal in. +Returns: +string - A JSON encoded message to open the modal.

toggle_tgui_fancy +

+

Same thing as the character creator preference, but as a byond verb, because not everyone can reach it in tgui preference menu

uiclose +

+

verb

+

Called by UIs when they are closed. +Must be a verb so winset() can call it.

+

required uiref ref The UI that was closed.

update_ambience_pref +

+

updates with the ambience preferrences of the user

update_special_keybinds +

+

Updates the keybinds for special keys

+

Handles adding macros for the keys that need it +And adding movement keys to the clients movement_keys list +At the time of writing this, communication(OOC, Say, IC, ASAY, MSAY) require macros +Arguments:

+
+ + + diff --git a/code/__DEFINES/MC.html b/code/__DEFINES/MC.html new file mode 100644 index 0000000000000..be522e8dd442e --- /dev/null +++ b/code/__DEFINES/MC.html @@ -0,0 +1,133 @@ + + + + + + + code/__DEFINES/MC.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/MC.dm + +

+ + + + + + + + + + + + + + + + + + + +
MC_RUNNINGReturns true if the MC is initialized and running. +Optional argument init_stage controls what stage the mc must have initializted to count as initialized. Defaults to INITSTAGE_MAX if not specified.

SubSystem flags (Please design any new flags so that the default is off, to make adding flags to subsystems easier)

SS_NO_INITsubsystem does not initialize.
SS_NO_FIREsubsystem does not fire. +(like can_fire = 0, but keeps it from getting added to the processing subsystems list) +(Requires a MC restart to change)
SS_BACKGROUNDsubsystem only runs on spare cpu (after all non-background subsystems have ran that tick) +SS_BACKGROUND has its own priority bracket
SS_TICKERTreat wait as a tick count, not DS, run every wait ticks. +(also forces it to run first in the tick, above even SS_NO_TICK_CHECK subsystems) +(implies all runlevels because of how it works) +(overrides SS_BACKGROUND) +This is designed for basically anything that works as a mini-mc (like SStimer)
SS_KEEP_TIMINGkeep the subsystem's timing on point by firing early if it fired late last fire because of lag +ie: if a 20ds subsystem fires say 5 ds late due to lag or what not, its next fire would be in 15ds, not 20ds.
SS_POST_FIRE_TIMINGCalculate its next fire after its fired. +(IE: if a 5ds wait SS takes 2ds to run, its next fire should be 5ds away, not 3ds like it normally would be) +This flag overrides SS_KEEP_TIMING

SUBSYSTEM STATES

+
SS_IDLEaint doing shit.
SS_QUEUEDqueued to run
SS_RUNNINGactively running
SS_PAUSEDpaused by mc_tick_check
SS_SLEEPINGfire() slept.
SS_PAUSINGin the middle of pausing
INITSTAGE_EARLYEarly init stuff that doesn't need to wait for mapload
INITSTAGE_MAINMain init stage
INITSTAGE_MAXHighest initstage.

Define Details

+

INITSTAGE_EARLY + + +

+

Early init stuff that doesn't need to wait for mapload

INITSTAGE_MAIN + + +

+

Main init stage

INITSTAGE_MAX + + +

+

Highest initstage.

MC_RUNNING + + + +

+

Returns true if the MC is initialized and running. +Optional argument init_stage controls what stage the mc must have initializted to count as initialized. Defaults to INITSTAGE_MAX if not specified.

SS_BACKGROUND + + +

+

subsystem only runs on spare cpu (after all non-background subsystems have ran that tick) +SS_BACKGROUND has its own priority bracket

SS_IDLE + + +

+

aint doing shit.

SS_KEEP_TIMING + + +

+

keep the subsystem's timing on point by firing early if it fired late last fire because of lag +ie: if a 20ds subsystem fires say 5 ds late due to lag or what not, its next fire would be in 15ds, not 20ds.

SS_NO_FIRE + + +

+

subsystem does not fire. +(like can_fire = 0, but keeps it from getting added to the processing subsystems list) +(Requires a MC restart to change)

SS_NO_INIT + + +

+

subsystem does not initialize.

SS_PAUSED + + +

+

paused by mc_tick_check

SS_PAUSING + + +

+

in the middle of pausing

SS_POST_FIRE_TIMING + + +

+

Calculate its next fire after its fired. +(IE: if a 5ds wait SS takes 2ds to run, its next fire should be 5ds away, not 3ds like it normally would be) +This flag overrides SS_KEEP_TIMING

SS_QUEUED + + +

+

queued to run

SS_RUNNING + + +

+

actively running

SS_SLEEPING + + +

+

fire() slept.

SS_TICKER + + +

+

Treat wait as a tick count, not DS, run every wait ticks. +(also forces it to run first in the tick, above even SS_NO_TICK_CHECK subsystems) +(implies all runlevels because of how it works) +(overrides SS_BACKGROUND) +This is designed for basically anything that works as a mini-mc (like SStimer)

+ + + diff --git a/code/__DEFINES/_click.html b/code/__DEFINES/_click.html new file mode 100644 index 0000000000000..73be052243fe7 --- /dev/null +++ b/code/__DEFINES/_click.html @@ -0,0 +1,49 @@ + + + + + + + code/__DEFINES/_click.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/_click.dm + +

+ + + + + +
BUTTONMouse button that was just clicked/released +if(modifiersBUTTON == LEFT_CLICK)
MOUSE_OPACITY_TRANSPARENTObjects will ignore being clicked on regardless of their transparency (used in parallax, lighting effects, holograms, lasers, etc.)
MOUSE_OPACITY_ICONObjects will be clicked on if it is the topmost object and the pixel isn't transparent at the position of the mouse (default behavior for 99.99% of game objects)
MOUSE_OPACITY_OPAQUEObjects will be always be clicked on regardless of pixel transparency or other objects at that location (used in space vines, megafauna, storage containers)

Define Details

+

BUTTON + + +

+

Mouse button that was just clicked/released +if(modifiersBUTTON == LEFT_CLICK)

MOUSE_OPACITY_ICON + + +

+

Objects will be clicked on if it is the topmost object and the pixel isn't transparent at the position of the mouse (default behavior for 99.99% of game objects)

MOUSE_OPACITY_OPAQUE + + +

+

Objects will be always be clicked on regardless of pixel transparency or other objects at that location (used in space vines, megafauna, storage containers)

MOUSE_OPACITY_TRANSPARENT + + +

+

Objects will ignore being clicked on regardless of their transparency (used in parallax, lighting effects, holograms, lasers, etc.)

+ + + diff --git a/code/__DEFINES/_globals.html b/code/__DEFINES/_globals.html new file mode 100644 index 0000000000000..9006646f848a4 --- /dev/null +++ b/code/__DEFINES/_globals.html @@ -0,0 +1,39 @@ + + + + + + + code/__DEFINES/_globals.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/_globals.dm + +

+ + + +
GLOBAL_REAL_VARStandard BYOND global, seriously do not use without an earthshakingly good reason
GLOBAL_REALStandard typed BYOND global, seriously do not use without an earthshakingly good reason

Define Details

+

GLOBAL_REAL + + + +

+

Standard typed BYOND global, seriously do not use without an earthshakingly good reason

GLOBAL_REAL_VAR + + + +

+

Standard BYOND global, seriously do not use without an earthshakingly good reason

+ + + diff --git a/code/__DEFINES/_helpers.html b/code/__DEFINES/_helpers.html new file mode 100644 index 0000000000000..c4ff5c2ebec76 --- /dev/null +++ b/code/__DEFINES/_helpers.html @@ -0,0 +1,66 @@ + + + + + + + code/__DEFINES/_helpers.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/_helpers.dm + +

+ + + + + + + +
STRINGIFYStringifies whatever you put into it.
subtypesofsubtypesof(), typesof() without the parent path
UNTILUntil a condition is true, sleep
SLEEP_NOT_DELSleep if we haven't been deleted +Otherwise, return
text_refTakes a datum as input, returns its ref string
EMPTY_BLOCK_GUARDA null statement to guard against EmptyBlock lint without necessitating the use of pass() +Used to avoid proc-call overhead. But use sparingly. Probably pointless in most places.

Define Details

+

EMPTY_BLOCK_GUARD + + +

+

A null statement to guard against EmptyBlock lint without necessitating the use of pass() +Used to avoid proc-call overhead. But use sparingly. Probably pointless in most places.

SLEEP_NOT_DEL + + + +

+

Sleep if we haven't been deleted +Otherwise, return

STRINGIFY + + + +

+

Stringifies whatever you put into it.

UNTIL + + + +

+

Until a condition is true, sleep

subtypesof + + + +

+

subtypesof(), typesof() without the parent path

text_ref + + + +

+

Takes a datum as input, returns its ref string

+ + + diff --git a/code/__DEFINES/_math.html b/code/__DEFINES/_math.html new file mode 100644 index 0000000000000..f1ee88dd03228 --- /dev/null +++ b/code/__DEFINES/_math.html @@ -0,0 +1,33 @@ + + + + + + + code/__DEFINES/_math.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/_math.dm + +

+ + +
randfloatrand() but for floats, returns a random floating point number between low and high

Define Details

+

randfloat + + + +

+

rand() but for floats, returns a random floating point number between low and high

+ + + diff --git a/code/__DEFINES/_radio.html b/code/__DEFINES/_radio.html new file mode 100644 index 0000000000000..a2d43a6a6d31a --- /dev/null +++ b/code/__DEFINES/_radio.html @@ -0,0 +1,32 @@ + + + + + + + code/__DEFINES/_radio.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/_radio.dm + +

+ + +
RADIO_NO_Z_LEVEL_RESTRICTIONgive this to can_receive to specify that there is no restriction on what z level this signal is sent to

Define Details

+

RADIO_NO_Z_LEVEL_RESTRICTION + + +

+

give this to can_receive to specify that there is no restriction on what z level this signal is sent to

+ + + diff --git a/code/__DEFINES/_subsystems.html b/code/__DEFINES/_subsystems.html new file mode 100644 index 0000000000000..89ae9c0d2a6f1 --- /dev/null +++ b/code/__DEFINES/_subsystems.html @@ -0,0 +1,117 @@ + + + + + + + code/__DEFINES/_subsystems.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/_subsystems.dm + +

+ + + + + + + + + + + + + + +
TIMER_DELETE_MEDelete the timer on parent datum Destroy() and when deltimer'd
PROCESS_KILLUsed to trigger object removal from a processing list
INITIALIZE_HINT_QDEL_FORCECall qdel with a force of TRUE after initialization
SS initialization hints
SS_INIT_FAILURENegative values incidate a failure or warning of some kind, positive are good. +0 and 1 are unused so that TRUE and FALSE are guarenteed to be invalid values. +Subsystem failed to initialize entirely. Print a warning, log, and disable firing.
SS_INIT_NONEThe default return value which must be overriden. Will succeed with a warning.
SS_INIT_SUCCESSSubsystem initialized sucessfully.
SS_INIT_NO_NEEDSuccessful, but don't print anything. Useful if subsystem was disabled.
SS initialization load orders
SSEXPLOSIONS_MOVABLESExplosion Subsystem subtasks
addtimerCreate a new timer and add it to the queue.
SS_INIT_TIMER_KEYThe timer key used to know how long subsystem initialization takes
SS_MOBS_BUCKET_DELAYMobs subsystem defines +The mobs subsystem buckets up mobs to smooth out processing load, +each 5 ticks it fires, but won't actually run Life on every fire() +Instead it buckets mobs and ends up running Life on every mob every 2 seconds +but since subsystem wait only considers the last fire, +we need to multiply wait enough that it matches the 2 second interval Life is actually running on

Define Details

+

INITIALIZE_HINT_QDEL_FORCE + + +

+

Call qdel with a force of TRUE after initialization

PROCESS_KILL + + +

+

Used to trigger object removal from a processing list

SSEXPLOSIONS_MOVABLES + + +

+

Explosion Subsystem subtasks

SS_INIT_FAILURE + + +

+

Negative values incidate a failure or warning of some kind, positive are good. +0 and 1 are unused so that TRUE and FALSE are guarenteed to be invalid values. +Subsystem failed to initialize entirely. Print a warning, log, and disable firing.

SS_INIT_NONE + + +

+

The default return value which must be overriden. Will succeed with a warning.

SS_INIT_NO_NEED + + +

+

Successful, but don't print anything. Useful if subsystem was disabled.

SS_INIT_SUCCESS + + +

+

Subsystem initialized sucessfully.

SS_INIT_TIMER_KEY + + +

+

The timer key used to know how long subsystem initialization takes

SS_MOBS_BUCKET_DELAY + + +

+

Mobs subsystem defines +The mobs subsystem buckets up mobs to smooth out processing load, +each 5 ticks it fires, but won't actually run Life on every fire() +Instead it buckets mobs and ends up running Life on every mob every 2 seconds +but since subsystem wait only considers the last fire, +we need to multiply wait enough that it matches the 2 second interval Life is actually running on

TIMER_DELETE_ME + + +

+

Delete the timer on parent datum Destroy() and when deltimer'd

addtimer + + + +

+

Create a new timer and add it to the queue.

+
+ + + diff --git a/code/__DEFINES/_tick.html b/code/__DEFINES/_tick.html new file mode 100644 index 0000000000000..08042f0e96122 --- /dev/null +++ b/code/__DEFINES/_tick.html @@ -0,0 +1,97 @@ + + + + + + + code/__DEFINES/_tick.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/_tick.dm + +

+ + + + + + + + + + + + + + + +
MAPTICK_MC_MIN_RESERVEPercentage of tick to leave for master controller to run
TICK_BYOND_RESERVEAmount of a tick to reserve for byond if MAPTICK_LAST_INTERNAL_TICK_USAGE is 0 or not working.
TICK_LIMIT_RUNNINGTick limit while running normally
TICK_MIN_RUNTIMEPrecent of a tick to require to even bother running anything. (10 percent of the tick_limit_running by default)
TICK_LIMIT_TO_RUNTick limit used to resume things in stoplag
TICK_LIMIT_MCTick limit for MC while running
TICK_USAGEfor general usage of tick_usage
TICK_USAGE_REALto be used where the result isn't checked
TICK_CHECKReturns true if tick_usage is above the limit
CHECK_TICKruns stoplag if tick_usage is above the limit
RUNNING_BEFORE_MASTERChecks if a sleeping proc is running before or after the master controller
VERB_SHOULD_YIELDReturns true if a verb ought to yield to the MC (IE: queue up to be processed by a subsystem)
TICK_CHECK_HIGH_PRIORITYReturns true if tick usage is above 95, for high priority usage
CHECK_TICK_HIGH_PRIORITYruns stoplag if tick_usage is above 95, for high priority usage

Define Details

+

CHECK_TICK + + +

+

runs stoplag if tick_usage is above the limit

CHECK_TICK_HIGH_PRIORITY + + +

+

runs stoplag if tick_usage is above 95, for high priority usage

MAPTICK_MC_MIN_RESERVE + + +

+

Percentage of tick to leave for master controller to run

RUNNING_BEFORE_MASTER + + +

+

Checks if a sleeping proc is running before or after the master controller

TICK_BYOND_RESERVE + + +

+

Amount of a tick to reserve for byond if MAPTICK_LAST_INTERNAL_TICK_USAGE is 0 or not working.

TICK_CHECK + + +

+

Returns true if tick_usage is above the limit

TICK_CHECK_HIGH_PRIORITY + + +

+

Returns true if tick usage is above 95, for high priority usage

TICK_LIMIT_MC + + +

+

Tick limit for MC while running

TICK_LIMIT_RUNNING + + +

+

Tick limit while running normally

TICK_LIMIT_TO_RUN + + +

+

Tick limit used to resume things in stoplag

TICK_MIN_RUNTIME + + +

+

Precent of a tick to require to even bother running anything. (10 percent of the tick_limit_running by default)

TICK_USAGE + + +

+

for general usage of tick_usage

TICK_USAGE_REAL + + +

+

to be used where the result isn't checked

VERB_SHOULD_YIELD + + +

+

Returns true if a verb ought to yield to the MC (IE: queue up to be processed by a subsystem)

+ + + diff --git a/code/__DEFINES/action.html b/code/__DEFINES/action.html new file mode 100644 index 0000000000000..0c4febec26e9e --- /dev/null +++ b/code/__DEFINES/action.html @@ -0,0 +1,91 @@ + + + + + + + code/__DEFINES/action.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/action.dm + +

+ + + + + + + + + + + + + + +

This is just a file holding string defines for reference retrieval on /action datums +ideally you should never override the base list , and just add onto its length +The noting system for these is +VREF_[DATA_TYPE]_[WHAT_IS_IT_USED_FOR]

VREF_MUTABLE_LINKED_OBJA define for accesing the mutable appearance of the linked obj. Holds a reference of the objects appearance
VREF_MUTABLE_ACTION_STATEA mutable appearance of icon made with action_icon_state and action_icon
VREF_MUTABLE_MAPTEXTA mutable appearance for keybinding maptext
VREF_MUTABLE_SELECTED_FRAMEA mutable appearance to add a "selected" frame around the edges
VREF_IMAGE_ONTOPA misc image holder for stuff thats meant to be added ontop , used by a few actions
VREF_MUTABLE_EMPOWERED_FRAMEA mutable appearance to add the "empowered" frame around the edges
VREF_MUTABLE_BUILDING_COUNTERA reference for the build counter of a xeno
ACTION_TOGGLEActions that toggle on click/trigger
ACTION_CLICKActions that trigger when clicked/triggered
ACTION_SELECTActions that get selected and can be targeted when clicked/triggered
KEYBINDING_NORMALNormal keybinding , calls keybind_activation
KEYBINDING_ALTERNATEAlternate keybinding , calls alternate_ability_activation

Define Details

+

ACTION_CLICK + + +

+

Actions that trigger when clicked/triggered

ACTION_SELECT + + +

+

Actions that get selected and can be targeted when clicked/triggered

ACTION_TOGGLE + + +

+

Actions that toggle on click/trigger

KEYBINDING_ALTERNATE + + +

+

Alternate keybinding , calls alternate_ability_activation

KEYBINDING_NORMAL + + +

+

Normal keybinding , calls keybind_activation

VREF_IMAGE_ONTOP + + +

+

A misc image holder for stuff thats meant to be added ontop , used by a few actions

VREF_MUTABLE_ACTION_STATE + + +

+

A mutable appearance of icon made with action_icon_state and action_icon

VREF_MUTABLE_BUILDING_COUNTER + + +

+

A reference for the build counter of a xeno

VREF_MUTABLE_EMPOWERED_FRAME + + +

+

A mutable appearance to add the "empowered" frame around the edges

VREF_MUTABLE_LINKED_OBJ + + +

+

A define for accesing the mutable appearance of the linked obj. Holds a reference of the objects appearance

VREF_MUTABLE_MAPTEXT + + +

+

A mutable appearance for keybinding maptext

VREF_MUTABLE_SELECTED_FRAME + + +

+

A mutable appearance to add a "selected" frame around the edges

+ + + diff --git a/code/__DEFINES/admin.html b/code/__DEFINES/admin.html new file mode 100644 index 0000000000000..a5ff70e4cc436 --- /dev/null +++ b/code/__DEFINES/admin.html @@ -0,0 +1,72 @@ + + + + + + + code/__DEFINES/admin.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/admin.dm + +

+ + + + + + + + + + +
MESSAGE_FLAG_ADMINSpam filter info that this message is admin-related and shouldn't count towards admin spam limit (not needed currently due to admins bypassing it but eh!)
MESSAGE_FLAG_MENTORSpam filter info that this message is mentor-related and shouldn't count towards a mentor's spam limit.
MAX_KEYPRESS_COMMANDLENGTHMax length of a keypress command before it's considered to be a forged packet/bogus command
MAX_COMMANDS_PER_KEYMaximum keys that can be bound to one button
MAX_KEYPRESS_AUTOKICKMax amount of keypress messages per second over two seconds before client is autokicked
HELD_KEY_BUFFER_LENGTHLength of held key buffer
MAX_KEYS_PER_KEYBINDMaximum keys allowed per keybind
POLICY_VERB_HEADERShown on top of policy verb window
ADMINSAY_PING_UNDERLINE_NAME_INDEXfor asay pings, this is the index in the return list for /proc/check_admin_pings that contains the message modified with underlines for the spotted names

Define Details

+

ADMINSAY_PING_UNDERLINE_NAME_INDEX + + +

+

for asay pings, this is the index in the return list for /proc/check_admin_pings that contains the message modified with underlines for the spotted names

HELD_KEY_BUFFER_LENGTH + + +

+

Length of held key buffer

MAX_COMMANDS_PER_KEY + + +

+

Maximum keys that can be bound to one button

MAX_KEYPRESS_AUTOKICK + + +

+

Max amount of keypress messages per second over two seconds before client is autokicked

MAX_KEYPRESS_COMMANDLENGTH + + +

+

Max length of a keypress command before it's considered to be a forged packet/bogus command

MAX_KEYS_PER_KEYBIND + + +

+

Maximum keys allowed per keybind

MESSAGE_FLAG_ADMIN + + +

+

Spam filter info that this message is admin-related and shouldn't count towards admin spam limit (not needed currently due to admins bypassing it but eh!)

MESSAGE_FLAG_MENTOR + + +

+

Spam filter info that this message is mentor-related and shouldn't count towards a mentor's spam limit.

POLICY_VERB_HEADER + + +

+

Shown on top of policy verb window

+ + + diff --git a/code/__DEFINES/ai.html b/code/__DEFINES/ai.html new file mode 100644 index 0000000000000..bad1c924e2bd9 --- /dev/null +++ b/code/__DEFINES/ai.html @@ -0,0 +1,91 @@ + + + + + + + code/__DEFINES/ai.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/ai.dm + +

+ + + + + + + + + + + + + +
REASON_FINISHED_NODE_MOVEThe AI component has finished moving towards a node, change the state because of that certain thing happening
REASON_TARGET_KILLEDSignal that's sent whenever the AI component kills off it's current target, this triggers a state change which could then go into a "patrol" or decide to attack another nearby target
REASON_TARGET_SPOTTEDAI component spotted a valid target and wants to attack it
REASON_REFRESH_TARGETRepick targets every so often so we don't get stuck on a single thing forever
MOVING_TO_NODEAI component state where it's moving towards a node
ESCORTING_ATOMAI component state where we're escorting something and looking for a target nearby
MOVING_TO_ATOMAI component state where we're moving towards something, probably something we want to hit
MOVING_TO_SAFETYAi component state where the ai tries to flee to heal
IDLEAi component state where the ai just does nothing
FOLLOWING_PATHAi component state where the ai is following a tile path
NODE_LAST_VISITEDA define for a node variable which is the last world.time that a AI visited it
IDENTIFIER_XENOIdentifier tags +Ultilized for having AI look at weights based on if they're a "marine human" or a "xenomorph" or something else +This is mainly used for deciding what weights are to be looked at when determing a node waypoint of going towards

Define Details

+

ESCORTING_ATOM + + +

+

AI component state where we're escorting something and looking for a target nearby

FOLLOWING_PATH + + +

+

Ai component state where the ai is following a tile path

IDENTIFIER_XENO + + +

+

Identifier tags +Ultilized for having AI look at weights based on if they're a "marine human" or a "xenomorph" or something else +This is mainly used for deciding what weights are to be looked at when determing a node waypoint of going towards

IDLE + + +

+

Ai component state where the ai just does nothing

MOVING_TO_ATOM + + +

+

AI component state where we're moving towards something, probably something we want to hit

MOVING_TO_NODE + + +

+

AI component state where it's moving towards a node

MOVING_TO_SAFETY + + +

+

Ai component state where the ai tries to flee to heal

NODE_LAST_VISITED + + +

+

A define for a node variable which is the last world.time that a AI visited it

REASON_FINISHED_NODE_MOVE + + +

+

The AI component has finished moving towards a node, change the state because of that certain thing happening

REASON_REFRESH_TARGET + + +

+

Repick targets every so often so we don't get stuck on a single thing forever

REASON_TARGET_KILLED + + +

+

Signal that's sent whenever the AI component kills off it's current target, this triggers a state change which could then go into a "patrol" or decide to attack another nearby target

REASON_TARGET_SPOTTED + + +

+

AI component spotted a valid target and wants to attack it

+ + + diff --git a/code/__DEFINES/alerts.html b/code/__DEFINES/alerts.html new file mode 100644 index 0000000000000..73ca9f873c750 --- /dev/null +++ b/code/__DEFINES/alerts.html @@ -0,0 +1,62 @@ + + + + + + + code/__DEFINES/alerts.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/alerts.dm + +

+ + + + + + + + +
ALERT_CHARGESilicon related
ALERT_MECH_DAMAGEMech related
ALERT_NOT_ENOUGH_OXYGENActively suffocating
ALERT_FIREOn fire.
ALERT_TEMPERATUREHolds temperature related alerts.
ALERT_PRESSUREHolds pressure related alerts.
ALERT_NUTRITIONHolds food related alerts.

Define Details

+

ALERT_CHARGE + + +

+

Silicon related

ALERT_FIRE + + +

+

On fire.

ALERT_MECH_DAMAGE + + +

+

Mech related

ALERT_NOT_ENOUGH_OXYGEN + + +

+

Actively suffocating

ALERT_NUTRITION + + +

+

Holds food related alerts.

ALERT_PRESSURE + + +

+

Holds pressure related alerts.

ALERT_TEMPERATURE + + +

+

Holds temperature related alerts.

+ + + diff --git a/code/__DEFINES/announce.html b/code/__DEFINES/announce.html new file mode 100644 index 0000000000000..16700c798cb1e --- /dev/null +++ b/code/__DEFINES/announce.html @@ -0,0 +1,52 @@ + + + + + + + code/__DEFINES/announce.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/announce.dm + +

+ + + + + + +
ANNOUNCEMENT_REGULARRegular gameplay, not too important
ANNOUNCEMENT_PRIORITYProbably round outcome changing, like OBs and Alamo fun
ANNOUNCEMENT_COMMANDCommand alerts
OOC_ALERT_ADMINAdmin or OOC sources. Yellow
OOC_ALERT_GAMEGame alerts, like roundend. Red

Define Details

+

ANNOUNCEMENT_COMMAND + + +

+

Command alerts

ANNOUNCEMENT_PRIORITY + + +

+

Probably round outcome changing, like OBs and Alamo fun

ANNOUNCEMENT_REGULAR + + +

+

Regular gameplay, not too important

OOC_ALERT_ADMIN + + +

+

Admin or OOC sources. Yellow

OOC_ALERT_GAME + + +

+

Game alerts, like roundend. Red

+ + + diff --git a/code/__DEFINES/apc_defines.html b/code/__DEFINES/apc_defines.html new file mode 100644 index 0000000000000..931d8b476df86 --- /dev/null +++ b/code/__DEFINES/apc_defines.html @@ -0,0 +1,152 @@ + + + + + + + code/__DEFINES/apc_defines.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/apc_defines.dm + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
APC_ELECTRONICS_MISSINGThere are no electronics in the APC.
APC_ELECTRONICS_INSTALLEDThe electronics are installed but not secured.
APC_ELECTRONICS_SECUREDThe electronics are installed and secured.
APC_COVER_CLOSEDThe APCs cover is closed.
APC_COVER_OPENEDThe APCs cover is open.
APC_COVER_REMOVEDThe APCs cover is missing.
APC_NOT_CHARGINGThe APC is not charging.
APC_CHARGINGThe APC is charging.
APC_FULLY_CHARGEDThe APC is fully charged.
APC_CHANNEL_OFFThe APCs power channel is manually set off.
APC_CHANNEL_AUTO_OFFThe APCs power channel is automatically off.
APC_CHANNEL_ONThe APCs power channel is manually set on.
APC_CHANNEL_AUTO_ONThe APCs power channel is automatically on.
UPSTATE_COVER_SHIFTThe bit shift for the APCs cover status.
UPSTATE_OPENED1The bitflag representing the APCs cover being open for icon purposes.
UPSTATE_OPENED2The bitflag representing the APCs cover being missing for icon purposes.
UPSTATE_BROKEThe APC is broken or damaged.
UPSTATE_MAINTThe APC is undergoing maintenance.
UPSTATE_WIREEXPThe APCs wires are exposed.
UPOVERLAY_OPERATINGBitflag indicating that the APCs operating status overlay should be shown.
UPOVERLAY_LOCKEDBitflag indicating that the APCs locked status overlay should be shown.
UPOVERLAY_CHARGING_SHIFTBit shift for the charging status of the APC.
UPOVERLAY_EQUIPMENT_SHIFTBit shift for the equipment status of the APC.
UPOVERLAY_LIGHTING_SHIFTBit shift for the lighting channel status of the APC.
UPOVERLAY_ENVIRON_SHIFTBit shift for the environment channel status of the APC.

Define Details

+

APC_CHANNEL_AUTO_OFF + + +

+

The APCs power channel is automatically off.

APC_CHANNEL_AUTO_ON + + +

+

The APCs power channel is automatically on.

APC_CHANNEL_OFF + + +

+

The APCs power channel is manually set off.

APC_CHANNEL_ON + + +

+

The APCs power channel is manually set on.

APC_CHARGING + + +

+

The APC is charging.

APC_COVER_CLOSED + + +

+

The APCs cover is closed.

APC_COVER_OPENED + + +

+

The APCs cover is open.

APC_COVER_REMOVED + + +

+

The APCs cover is missing.

APC_ELECTRONICS_INSTALLED + + +

+

The electronics are installed but not secured.

APC_ELECTRONICS_MISSING + + +

+

There are no electronics in the APC.

APC_ELECTRONICS_SECURED + + +

+

The electronics are installed and secured.

APC_FULLY_CHARGED + + +

+

The APC is fully charged.

APC_NOT_CHARGING + + +

+

The APC is not charging.

UPOVERLAY_CHARGING_SHIFT + + +

+

Bit shift for the charging status of the APC.

UPOVERLAY_ENVIRON_SHIFT + + +

+

Bit shift for the environment channel status of the APC.

UPOVERLAY_EQUIPMENT_SHIFT + + +

+

Bit shift for the equipment status of the APC.

UPOVERLAY_LIGHTING_SHIFT + + +

+

Bit shift for the lighting channel status of the APC.

UPOVERLAY_LOCKED + + +

+

Bitflag indicating that the APCs locked status overlay should be shown.

UPOVERLAY_OPERATING + + +

+

Bitflag indicating that the APCs operating status overlay should be shown.

UPSTATE_BROKE + + +

+

The APC is broken or damaged.

UPSTATE_COVER_SHIFT + + +

+

The bit shift for the APCs cover status.

UPSTATE_MAINT + + +

+

The APC is undergoing maintenance.

UPSTATE_OPENED1 + + +

+

The bitflag representing the APCs cover being open for icon purposes.

UPSTATE_OPENED2 + + +

+

The bitflag representing the APCs cover being missing for icon purposes.

UPSTATE_WIREEXP + + +

+

The APCs wires are exposed.

+ + + diff --git a/code/__DEFINES/area.html b/code/__DEFINES/area.html new file mode 100644 index 0000000000000..57cf03d256d5c --- /dev/null +++ b/code/__DEFINES/area.html @@ -0,0 +1,67 @@ + + + + + + + code/__DEFINES/area.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/area.dm + +

+ + + + + + + + + +
DISALLOW_WEEDINGWhen present prevents xenos from weeding this area
NEAR_FOBWhen present, monitor will consider marines inside it to be at FOB
NO_DROPPODWhen present, this will prevent the drop pod to land there (usually kill zones)
OB_CAS_IMMUNEMake this area immune to cas/ob laser. Explosions can still go through if the ob is called in a nearby area
MARINE_BASEPrevent wraith from portaling there, and hivemind to weed there when shutters are closed
ALWAYS_RADIOradio works even underground
NO_CONSTRUCTIONprevents construction in area
CANNOT_NUKEDisallows nuke timer to be activated in area

Define Details

+

ALWAYS_RADIO + + +

+

radio works even underground

CANNOT_NUKE + + +

+

Disallows nuke timer to be activated in area

DISALLOW_WEEDING + + +

+

When present prevents xenos from weeding this area

MARINE_BASE + + +

+

Prevent wraith from portaling there, and hivemind to weed there when shutters are closed

NEAR_FOB + + +

+

When present, monitor will consider marines inside it to be at FOB

NO_CONSTRUCTION + + +

+

prevents construction in area

NO_DROPPOD + + +

+

When present, this will prevent the drop pod to land there (usually kill zones)

OB_CAS_IMMUNE + + +

+

Make this area immune to cas/ob laser. Explosions can still go through if the ob is called in a nearby area

+ + + diff --git a/code/__DEFINES/assert.html b/code/__DEFINES/assert.html new file mode 100644 index 0000000000000..556af69a00a91 --- /dev/null +++ b/code/__DEFINES/assert.html @@ -0,0 +1,35 @@ + + + + + + + code/__DEFINES/assert.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/assert.dm + +

+ + + + +
ASSERTOverride BYOND's native ASSERT to optionally specify a message
/proc/assertion_messageUsed by ASSERT to add a more detailed context to CRASH messages

Define Details

+

ASSERT + + + +

+

Override BYOND's native ASSERT to optionally specify a message

+ + + diff --git a/code/__DEFINES/atmospherics.html b/code/__DEFINES/atmospherics.html new file mode 100644 index 0000000000000..7460aec26d4f3 --- /dev/null +++ b/code/__DEFINES/atmospherics.html @@ -0,0 +1,42 @@ + + + + + + + code/__DEFINES/atmospherics.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/atmospherics.dm + +

+ + + + +
PRESSURE_DAMAGE_COEFFICIENTThe amount of pressure damage someone takes is equal to (pressure / HAZARD_HIGH_PRESSURE)*PRESSURE_DAMAGE_COEFFICIENT, with the maximum of MAX_PRESSURE_DAMAGE
MAX_HIGH_PRESSURE_DAMAGEMaximum amount of damage someone can take from being in a too-high pressure area
LOW_PRESSURE_DAMAGEThe amounb of damage someone takes when in a low pressure area (The pressure threshold is so low that it doesn't make sense to do any calculations, so it just applies this flat value).

Define Details

+

LOW_PRESSURE_DAMAGE + + +

+

The amounb of damage someone takes when in a low pressure area (The pressure threshold is so low that it doesn't make sense to do any calculations, so it just applies this flat value).

MAX_HIGH_PRESSURE_DAMAGE + + +

+

Maximum amount of damage someone can take from being in a too-high pressure area

PRESSURE_DAMAGE_COEFFICIENT + + +

+

The amount of pressure damage someone takes is equal to (pressure / HAZARD_HIGH_PRESSURE)*PRESSURE_DAMAGE_COEFFICIENT, with the maximum of MAX_PRESSURE_DAMAGE

+ + + diff --git a/code/__DEFINES/atom.html b/code/__DEFINES/atom.html new file mode 100644 index 0000000000000..79135c1092cb1 --- /dev/null +++ b/code/__DEFINES/atom.html @@ -0,0 +1,42 @@ + + + + + + + code/__DEFINES/atom.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/atom.dm + +

+ + + + +
ATOM_CAN_ACIDAcid can melt this atom
ATOM_CANNOT_ACIDAcid cannot melt this atom
ATOM_STRONGER_ACIDAcid equal or stronger is already on this atom

Define Details

+

ATOM_CANNOT_ACID + + +

+

Acid cannot melt this atom

ATOM_CAN_ACID + + +

+

Acid can melt this atom

ATOM_STRONGER_ACID + + +

+

Acid equal or stronger is already on this atom

+ + + diff --git a/code/__DEFINES/atom_movable.html b/code/__DEFINES/atom_movable.html new file mode 100644 index 0000000000000..8acab20588145 --- /dev/null +++ b/code/__DEFINES/atom_movable.html @@ -0,0 +1,37 @@ + + + + + + + code/__DEFINES/atom_movable.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/atom_movable.dm + +

+ + + +
AM_SUBMERGE_MASKThe alpha mask used on AM's submerged on turfs
AM_SUBMERGE_MASK_HEIGHTThe height of the MASK itself in the icon state (not icon height). NOTE: Changes to the icon requires a change to this define

Define Details

+

AM_SUBMERGE_MASK + + +

+

The alpha mask used on AM's submerged on turfs

AM_SUBMERGE_MASK_HEIGHT + + +

+

The height of the MASK itself in the icon state (not icon height). NOTE: Changes to the icon requires a change to this define

+ + + diff --git a/code/__DEFINES/calibers.html b/code/__DEFINES/calibers.html new file mode 100644 index 0000000000000..8fadfe77d9949 --- /dev/null +++ b/code/__DEFINES/calibers.html @@ -0,0 +1,32 @@ + + + + + + + code/__DEFINES/calibers.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/calibers.dm + +

+ + +
CALIBER_30X17MMVehicles

Define Details

+

CALIBER_30X17MM + + +

+

Vehicles

+ + + diff --git a/code/__DEFINES/callbacks.html b/code/__DEFINES/callbacks.html new file mode 100644 index 0000000000000..6a3c0455e4e9d --- /dev/null +++ b/code/__DEFINES/callbacks.html @@ -0,0 +1,67 @@ + + + + + + + code/__DEFINES/callbacks.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/callbacks.dm + +

+ + + + + + + + +
CALLBACKA shorthand for the callback datum, documented here
INVOKE_NEXT_TICKShorthand for invoking a proc next tick
MAKE_SPAWN_ACT_LIKE_WAITFORPer the DM reference, spawn(-1) will execute the spawned code immediately until a block is met.
ASYNCCreate a codeblock that will not block the callstack if a block is met.
VERB_CALLBACKlike CALLBACK but specifically for verb callbacks
VARSET_CALLBACKSet a var to x in y time
VARSET_WEAK_CALLBACKSame as VARSET_CALLBACK, but uses a weakref to the datum. +Use this if the timer is exceptionally long.

Define Details

+

ASYNC + + +

+

Create a codeblock that will not block the callstack if a block is met.

CALLBACK + + +

+

A shorthand for the callback datum, documented here

INVOKE_NEXT_TICK + + + +

+

Shorthand for invoking a proc next tick

MAKE_SPAWN_ACT_LIKE_WAITFOR + + +

+

Per the DM reference, spawn(-1) will execute the spawned code immediately until a block is met.

VARSET_CALLBACK + + + +

+

Set a var to x in y time

VARSET_WEAK_CALLBACK + + + +

+

Same as VARSET_CALLBACK, but uses a weakref to the datum. +Use this if the timer is exceptionally long.

VERB_CALLBACK + + +

+

like CALLBACK but specifically for verb callbacks

+ + + diff --git a/code/__DEFINES/campaign.html b/code/__DEFINES/campaign.html new file mode 100644 index 0000000000000..b31ca2d3ae8d2 --- /dev/null +++ b/code/__DEFINES/campaign.html @@ -0,0 +1,117 @@ + + + + + + + code/__DEFINES/campaign.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/campaign.dm + +

+ + + + + + + + + + + + + + + + + + + +
CAMPAIGN_MAX_VICTORY_POINTSNumber of victory points before a faction wins a campaign
CAMPAIGN_RESPAWN_TIMERespawn time in campaign mode
CAMPAIGN_TEAM_MISSION_SELECT_ALLOWEDThis faction is allowed to select the next mission
CAMPAIGN_TEAM_HAS_SET_ATTRITIONThis faction has already set attrition this mission
AFTER_MISSION_TELEPORT_DELAYHow long after a mission ends players are returned to base
AFTER_MISSION_LEADER_DELAYHow long after a mission ends a new leader is picked
CAMPAIGN_AUTOBALANCE_DELAYHow long after a mission is selected that team balance is checked
CAMPAIGN_AUTOBALANCE_DECISION_TIMEHow long players get to choose to autobalance or not
CAMPAIGN_STANDARD_MISSION_QUANTITYStandard amount of missions for a faction to have
CAMPAIGN_LOSS_BONUSAttrition bonus for losing
CAMPAIGN_MAX_LOSS_BONUSMax losing bonus
CAMPAIGN_LOADOUT_MULT_MAXLimited loadout items can be multiplied by up to this mult, based on pop
CAMPAIGN_LOADOUT_POP_MINPop floor to for base loadout amount
CAMPAIGN_LOADOUT_POP_MAXPop required to reach max loadout mult
MISSION_STATE_NEWMission has not been loaded
MISSION_STATE_LOADEDMission loaded but not yet active
MISSION_STATE_ACTIVEMission actively running
MISSION_STATE_FINISHEDMission ended

Define Details

+

AFTER_MISSION_LEADER_DELAY + + +

+

How long after a mission ends a new leader is picked

AFTER_MISSION_TELEPORT_DELAY + + +

+

How long after a mission ends players are returned to base

CAMPAIGN_AUTOBALANCE_DECISION_TIME + + +

+

How long players get to choose to autobalance or not

CAMPAIGN_AUTOBALANCE_DELAY + + +

+

How long after a mission is selected that team balance is checked

CAMPAIGN_LOADOUT_MULT_MAX + + +

+

Limited loadout items can be multiplied by up to this mult, based on pop

CAMPAIGN_LOADOUT_POP_MAX + + +

+

Pop required to reach max loadout mult

CAMPAIGN_LOADOUT_POP_MIN + + +

+

Pop floor to for base loadout amount

CAMPAIGN_LOSS_BONUS + + +

+

Attrition bonus for losing

CAMPAIGN_MAX_LOSS_BONUS + + +

+

Max losing bonus

CAMPAIGN_MAX_VICTORY_POINTS + + +

+

Number of victory points before a faction wins a campaign

CAMPAIGN_RESPAWN_TIME + + +

+

Respawn time in campaign mode

CAMPAIGN_STANDARD_MISSION_QUANTITY + + +

+

Standard amount of missions for a faction to have

CAMPAIGN_TEAM_HAS_SET_ATTRITION + + +

+

This faction has already set attrition this mission

CAMPAIGN_TEAM_MISSION_SELECT_ALLOWED + + +

+

This faction is allowed to select the next mission

MISSION_STATE_ACTIVE + + +

+

Mission actively running

MISSION_STATE_FINISHED + + +

+

Mission ended

MISSION_STATE_LOADED + + +

+

Mission loaded but not yet active

MISSION_STATE_NEW + + +

+

Mission has not been loaded

+ + + diff --git a/code/__DEFINES/cas.html b/code/__DEFINES/cas.html new file mode 100644 index 0000000000000..ea9902df2356a --- /dev/null +++ b/code/__DEFINES/cas.html @@ -0,0 +1,48 @@ + + + + + + + code/__DEFINES/cas.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/cas.dm + +

+ + + + + +
LOW_FUEL_TAKEOFF_THRESHOLDfuel count at which to forbid pilot from taking off
LOW_FUEL_LANDING_THRESHOLDfuel count at which to force plane to land due to low fuel
LOW_FUEL_WARNING_THRESHOLD% at which to warn pilot that there is low fuel
CAS_JUMP_LINKProvide a link for CAS users to click to jump to.

Define Details

+ +

Provide a link for CAS users to click to jump to.

LOW_FUEL_LANDING_THRESHOLD + + +

+

fuel count at which to force plane to land due to low fuel

LOW_FUEL_TAKEOFF_THRESHOLD + + +

+

fuel count at which to forbid pilot from taking off

LOW_FUEL_WARNING_THRESHOLD + + +

+

% at which to warn pilot that there is low fuel

+ + + diff --git a/code/__DEFINES/chat.html b/code/__DEFINES/chat.html new file mode 100644 index 0000000000000..5129cc3bd7c87 --- /dev/null +++ b/code/__DEFINES/chat.html @@ -0,0 +1,92 @@ + + + + + + + code/__DEFINES/chat.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/chat.dm + +

+ + + + + + + + + + + + + +

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

CHAT_RELIABILITY_HISTORY_SIZEHow many chat payloads to keep in history
CHAT_RELIABILITY_MAX_RESENDSHow many resends to allow before giving up
debug_worldUsed for debug messages to the world
debug_usrUsed for debug messages to the player
debug_adminsUsed for debug messages to the admins
debug_world_logUsed for debug messages to the server
examine_blockAdds a generic box around whatever message you're sending in chat. Really makes things stand out.
fieldset_blockMakes a fieldset with a name in the middle top part. Can apply additional classes
separator_hrMakes a horizontal line with text in the middle
examine_headerHeader for use in examine blocks
EXAMINE_SECTION_BREAKA horizontal line for use in examine blocks

Define Details

+

CHAT_RELIABILITY_HISTORY_SIZE + + +

+

How many chat payloads to keep in history

CHAT_RELIABILITY_MAX_RESENDS + + +

+

How many resends to allow before giving up

EXAMINE_SECTION_BREAK + + +

+

A horizontal line for use in examine blocks

debug_admins + + + +

+

Used for debug messages to the admins

debug_usr + + + +

+

Used for debug messages to the player

debug_world + + + +

+

Used for debug messages to the world

debug_world_log + + + +

+

Used for debug messages to the server

examine_block + + + +

+

Adds a generic box around whatever message you're sending in chat. Really makes things stand out.

examine_header + + + +

+

Header for use in examine blocks

fieldset_block + + + +

+

Makes a fieldset with a name in the middle top part. Can apply additional classes

separator_hr + + + +

+

Makes a horizontal line with text in the middle

+ + + diff --git a/code/__DEFINES/chat_filter.html b/code/__DEFINES/chat_filter.html new file mode 100644 index 0000000000000..de6150b03683e --- /dev/null +++ b/code/__DEFINES/chat_filter.html @@ -0,0 +1,49 @@ + + + + + + + code/__DEFINES/chat_filter.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/chat_filter.dm + +

+ + + + + +
CHAT_FILTER_INDEX_WORDThe index of the word that was filtered in a is_*_filtered proc
CHAT_FILTER_INDEX_REASONThe index of the reason why a word was filtered in a is_*_filtered proc
REPORT_CHAT_FILTER_TO_USERGiven a chat filter result, will send a to_chat to the user telling them about why their message was blocked
CAN_BYPASS_FILTERGiven a user, returns TRUE if they are allowed to bypass the filter.

Define Details

+

CAN_BYPASS_FILTER + + + +

+

Given a user, returns TRUE if they are allowed to bypass the filter.

CHAT_FILTER_INDEX_REASON + + +

+

The index of the reason why a word was filtered in a is_*_filtered proc

CHAT_FILTER_INDEX_WORD + + +

+

The index of the word that was filtered in a is_*_filtered proc

REPORT_CHAT_FILTER_TO_USER + + + +

+

Given a chat filter result, will send a to_chat to the user telling them about why their message was blocked

+ + + diff --git a/code/__DEFINES/colors.html b/code/__DEFINES/colors.html new file mode 100644 index 0000000000000..600ab768bdc16 --- /dev/null +++ b/code/__DEFINES/colors.html @@ -0,0 +1,197 @@ + + + + + + + code/__DEFINES/colors.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/colors.dm + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ADMIN_COLOR_PRIORITYOnly used by rare effects like greentext coloring mobs and when admins varedit color
TEMPORARY_COLOR_PRIORITYe.g. purple effect of the revenant on a mob, black effect when mob electrocuted
WASHABLE_COLOR_PRIORITYColor splashed onto an atom (e.g. paint on turf)
FIXED_COLOR_PRIORITYColor inherent to the atom (e.g. blob color)
COLOR_PRIORITY_AMOUNThow many colour priority levels there are.
COLOR_SOFT_REDWarm but extremely diluted red. rgb(250, 130, 130)
LIGHT_COLOR_WHITEFull white. rgb(255, 255, 255)
LIGHT_COLOR_GREENBright but quickly dissipating neon green. rgb(100, 200, 100)
LIGHT_COLOR_REDWarm red color rgb(250, 66, 66)
LIGHT_COLOR_ELECTRIC_GREENElectric green. rgb(0, 255, 0)
LIGHT_COLOR_BLUECold, diluted blue. rgb(100, 150, 250)
LIGHT_COLOR_BLUEGREENLight blueish green. rgb(125, 225, 175)
LIGHT_COLOR_CYANDiluted cyan. rgb(125, 225, 225)
LIGHT_COLOR_ELECTRIC_CYANElectric cyan rgb(0, 255, 255)
LIGHT_COLOR_LIGHT_CYANMore-saturated cyan. rgb(16, 21, 22)
LIGHT_COLOR_DARK_BLUESaturated blue. rgb(51, 117, 248)
LIGHT_COLOR_PINKDiluted, mid-warmth pink. rgb(225, 125, 225)
LIGHT_COLOR_YELLOWDimmed yellow, leaning kaki. rgb(225, 225, 125)
LIGHT_COLOR_BROWNClear brown, mostly dim. rgb(150, 100, 50)
LIGHT_COLOR_ORANGEMostly pure orange. rgb(250, 150, 50)
LIGHT_COLOR_PURPLELight Purple. rgb(149, 44, 244)
LIGHT_COLOR_LAVENDERLess-saturated light purple. rgb(155, 81, 255)
LIGHT_COLOR_PURPLE_PINKlighter, pinker purple
LIGHT_COLOR_HOLY_MAGICslightly desaturated bright yellow.
LIGHT_COLOR_BLOOD_MAGICdeep crimson
LIGHT_COLOR_FIREWarm orange color, leaning strongly towards yellow. rgb(250, 160, 25)
LIGHT_COLOR_LAVAVery warm yellow, leaning slightly towards orange. rgb(196, 138, 24)
LIGHT_COLOR_FLAREBright, non-saturated red. Leaning slightly towards pink for visibility. rgb(250, 100, 75)
LIGHT_COLOR_SLIME_LAMPWeird color, between yellow and green, very slimy. rgb(175, 200, 75)
LIGHT_COLOR_TUNGSTENExtremely diluted yellow, close to skin color (for some reason). rgb(250, 225, 175)
LIGHT_COLOR_HALOGENBarely visible cyan-ish hue, as the doctor prescribed. rgb(240, 250, 250)
LIGHT_COLOR_FLAMEMore bright and rich in color compared to lava. rgb(248, 136, 24)
LIGHT_COLOR_BLUE_FLAMERich and bright blue. rgb(0, 183, 255)
LIGHT_COLOR_RED_ORANGEStrong red orange

Define Details

+

ADMIN_COLOR_PRIORITY + + +

+

Only used by rare effects like greentext coloring mobs and when admins varedit color

COLOR_PRIORITY_AMOUNT + + +

+

how many colour priority levels there are.

COLOR_SOFT_RED + + +

+

Warm but extremely diluted red. rgb(250, 130, 130)

FIXED_COLOR_PRIORITY + + +

+

Color inherent to the atom (e.g. blob color)

LIGHT_COLOR_BLOOD_MAGIC + + +

+

deep crimson

LIGHT_COLOR_BLUE + + +

+

Cold, diluted blue. rgb(100, 150, 250)

LIGHT_COLOR_BLUEGREEN + + +

+

Light blueish green. rgb(125, 225, 175)

LIGHT_COLOR_BLUE_FLAME + + +

+

Rich and bright blue. rgb(0, 183, 255)

LIGHT_COLOR_BROWN + + +

+

Clear brown, mostly dim. rgb(150, 100, 50)

LIGHT_COLOR_CYAN + + +

+

Diluted cyan. rgb(125, 225, 225)

LIGHT_COLOR_DARK_BLUE + + +

+

Saturated blue. rgb(51, 117, 248)

LIGHT_COLOR_ELECTRIC_CYAN + + +

+

Electric cyan rgb(0, 255, 255)

LIGHT_COLOR_ELECTRIC_GREEN + + +

+

Electric green. rgb(0, 255, 0)

LIGHT_COLOR_FIRE + + +

+

Warm orange color, leaning strongly towards yellow. rgb(250, 160, 25)

LIGHT_COLOR_FLAME + + +

+

More bright and rich in color compared to lava. rgb(248, 136, 24)

LIGHT_COLOR_FLARE + + +

+

Bright, non-saturated red. Leaning slightly towards pink for visibility. rgb(250, 100, 75)

LIGHT_COLOR_GREEN + + +

+

Bright but quickly dissipating neon green. rgb(100, 200, 100)

LIGHT_COLOR_HALOGEN + + +

+

Barely visible cyan-ish hue, as the doctor prescribed. rgb(240, 250, 250)

LIGHT_COLOR_HOLY_MAGIC + + +

+

slightly desaturated bright yellow.

LIGHT_COLOR_LAVA + + +

+

Very warm yellow, leaning slightly towards orange. rgb(196, 138, 24)

LIGHT_COLOR_LAVENDER + + +

+

Less-saturated light purple. rgb(155, 81, 255)

LIGHT_COLOR_LIGHT_CYAN + + +

+

More-saturated cyan. rgb(16, 21, 22)

LIGHT_COLOR_ORANGE + + +

+

Mostly pure orange. rgb(250, 150, 50)

LIGHT_COLOR_PINK + + +

+

Diluted, mid-warmth pink. rgb(225, 125, 225)

LIGHT_COLOR_PURPLE + + +

+

Light Purple. rgb(149, 44, 244)

LIGHT_COLOR_PURPLE_PINK + + +

+

lighter, pinker purple

LIGHT_COLOR_RED + + +

+

Warm red color rgb(250, 66, 66)

LIGHT_COLOR_RED_ORANGE + + +

+

Strong red orange

LIGHT_COLOR_SLIME_LAMP + + +

+

Weird color, between yellow and green, very slimy. rgb(175, 200, 75)

LIGHT_COLOR_TUNGSTEN + + +

+

Extremely diluted yellow, close to skin color (for some reason). rgb(250, 225, 175)

LIGHT_COLOR_WHITE + + +

+

Full white. rgb(255, 255, 255)

LIGHT_COLOR_YELLOW + + +

+

Dimmed yellow, leaning kaki. rgb(225, 225, 125)

TEMPORARY_COLOR_PRIORITY + + +

+

e.g. purple effect of the revenant on a mob, black effect when mob electrocuted

WASHABLE_COLOR_PRIORITY + + +

+

Color splashed onto an atom (e.g. paint on turf)

+ + + diff --git a/code/__DEFINES/combat.html b/code/__DEFINES/combat.html new file mode 100644 index 0000000000000..41b913c14207b --- /dev/null +++ b/code/__DEFINES/combat.html @@ -0,0 +1,102 @@ + + + + + + + code/__DEFINES/combat.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/combat.dm + +

+ + + + + + + + + + + + + + + + +
MELEEInvolves a melee attack or a thrown object.
BULLETInvolves a solid projectile.
LASERInvolves a laser.
ENERGYInvolves an EMP or energy-based projectile.
BOMBInvolves a shockwave, usually from an explosion.
BIOInvolved in checking whether a disease can infect or spread. Also involved in xeno neurotoxin.
FIREInvolves fire or temperature extremes.
ACIDInvolves corrosive substances.
COMBAT_MELEE_ATTACKMelee damage
COMBAT_PROJ_ATTACKProjectile damage
COMBAT_TOUCH_ATTACKPotentially hostile interactions that aren't actually damage, such as disarms or grabs
SHIELD_TOGGLECan be toggled on and off
SHIELD_PURE_BLOCKINGShield works by % chance to simply block the attack entirely, instead of normal reductive calc
SHIELD_PARENT_INTEGRITYTransfers damage to parent's integrity
XENO_DEFAULT_ACCURACYXenomorph accuracy

Define Details

+

ACID + + +

+

Involves corrosive substances.

BIO + + +

+

Involved in checking whether a disease can infect or spread. Also involved in xeno neurotoxin.

BOMB + + +

+

Involves a shockwave, usually from an explosion.

BULLET + + +

+

Involves a solid projectile.

COMBAT_MELEE_ATTACK + + +

+

Melee damage

COMBAT_PROJ_ATTACK + + +

+

Projectile damage

COMBAT_TOUCH_ATTACK + + +

+

Potentially hostile interactions that aren't actually damage, such as disarms or grabs

ENERGY + + +

+

Involves an EMP or energy-based projectile.

FIRE + + +

+

Involves fire or temperature extremes.

LASER + + +

+

Involves a laser.

MELEE + + +

+

Involves a melee attack or a thrown object.

SHIELD_PARENT_INTEGRITY + + +

+

Transfers damage to parent's integrity

SHIELD_PURE_BLOCKING + + +

+

Shield works by % chance to simply block the attack entirely, instead of normal reductive calc

SHIELD_TOGGLE + + +

+

Can be toggled on and off

XENO_DEFAULT_ACCURACY + + +

+

Xenomorph accuracy

+ + + diff --git a/code/__DEFINES/conflict.html b/code/__DEFINES/conflict.html new file mode 100644 index 0000000000000..d60be64f51ead --- /dev/null +++ b/code/__DEFINES/conflict.html @@ -0,0 +1,142 @@ + + + + + + + code/__DEFINES/conflict.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/conflict.dm + +

+ + + + + + + + + + + + + + + + + + + + + + + + +
AMMO_TARGET_TURFAmmo will impact a targeted open turf instead of continuing past it
AMMO_XENOXeno type projectile
AMMO_UNWIELDYpoor accuracy against humans
AMMO_ENERGYAmmo will pass through windows and has damage reduced by smokes with SMOKE_NERF_BEAM
AMMO_SNIPERAmmo is more likely to continue past cover such as cades
AMMO_INCENDIARYAmmo will attempt to add firestacks and ignite a hit mob if it deals any damage. Armor applies, regardless of AMMO_IGNORE_ARMOR
AMMO_SKIPS_ALIENSAmmo type entirely ignores xenos
AMMO_BALLISTICGenerates blood splatters on mob hit
AMMO_SPECIAL_PROCESSAmmo processes while traveling
AMMO_FLAMEUsed to identify flamethrower projectiles and similar projectiles
AMMO_IFFUsed to identify ammo that have intrinsec IFF properties
AMMO_HITSCANIf the projectile from this ammo is hitscan
AMMO_LEAVE_TURFIf the projectile does something with on_leave_turf()
AMMO_PASS_THROUGH_TURFIf the projectile passes through walls causing damage to them
AMMO_PASS_THROUGH_MOVABLEIf the projectile passes through mobs and objects causing damage to them
AMMO_PASS_THROUGH_MOBIf the projectile passes through mobs only causing damage to them
AMMO_SOUND_PITCHIf the projectile ricochet and miss sound is pitched up
MAGAZINE_SHOW_AMMOammo count shown on mag sprite
SMOKE_PURGERPurges all types of smoke
CAVE_NO_INTERFERENCENo impact on comms.
CAVE_MINOR_INTERFERENCEScrambles outgoing messages, no impact on incoming.
CAVE_FULL_INTERFERENCEPrevents incoming and outgoing messages.
ANTENNA_SYNCING_TIMETime needed to initially configure an antenna module after equipping.

Define Details

+

AMMO_BALLISTIC + + +

+

Generates blood splatters on mob hit

AMMO_ENERGY + + +

+

Ammo will pass through windows and has damage reduced by smokes with SMOKE_NERF_BEAM

AMMO_FLAME + + +

+

Used to identify flamethrower projectiles and similar projectiles

AMMO_HITSCAN + + +

+

If the projectile from this ammo is hitscan

AMMO_IFF + + +

+

Used to identify ammo that have intrinsec IFF properties

AMMO_INCENDIARY + + +

+

Ammo will attempt to add firestacks and ignite a hit mob if it deals any damage. Armor applies, regardless of AMMO_IGNORE_ARMOR

AMMO_LEAVE_TURF + + +

+

If the projectile does something with on_leave_turf()

AMMO_PASS_THROUGH_MOB + + +

+

If the projectile passes through mobs only causing damage to them

AMMO_PASS_THROUGH_MOVABLE + + +

+

If the projectile passes through mobs and objects causing damage to them

AMMO_PASS_THROUGH_TURF + + +

+

If the projectile passes through walls causing damage to them

AMMO_SKIPS_ALIENS + + +

+

Ammo type entirely ignores xenos

AMMO_SNIPER + + +

+

Ammo is more likely to continue past cover such as cades

AMMO_SOUND_PITCH + + +

+

If the projectile ricochet and miss sound is pitched up

AMMO_SPECIAL_PROCESS + + +

+

Ammo processes while traveling

AMMO_TARGET_TURF + + +

+

Ammo will impact a targeted open turf instead of continuing past it

AMMO_UNWIELDY + + +

+

poor accuracy against humans

AMMO_XENO + + +

+

Xeno type projectile

ANTENNA_SYNCING_TIME + + +

+

Time needed to initially configure an antenna module after equipping.

CAVE_FULL_INTERFERENCE + + +

+

Prevents incoming and outgoing messages.

CAVE_MINOR_INTERFERENCE + + +

+

Scrambles outgoing messages, no impact on incoming.

CAVE_NO_INTERFERENCE + + +

+

No impact on comms.

MAGAZINE_SHOW_AMMO + + +

+

ammo count shown on mag sprite

SMOKE_PURGER + + +

+

Purges all types of smoke

+ + + diff --git a/code/__DEFINES/cooldowns.html b/code/__DEFINES/cooldowns.html new file mode 100644 index 0000000000000..0e39ba60b44f4 --- /dev/null +++ b/code/__DEFINES/cooldowns.html @@ -0,0 +1,58 @@ + + + + + + + code/__DEFINES/cooldowns.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/cooldowns.dm + +

+ + + + + +
COOLDOWN_BORG_SELF_REPAIRCOOLDOWN SYSTEMS
TIMER_COOLDOWN_CHECKReturns TRUE if still cooling down, FALSE otherwise
S_TIMER_COOLDOWN_STARTStoppable timer cooldowns. +Use indexes the same as the regular tiemr cooldowns. +They make use of the TIMER_COOLDOWN_CHECK() and TIMER_COOLDOWN_END() macros the same, just not the TIMER_COOLDOWN_START() one. +A bit more expensive than the regular timers, but can be reset before they end and the time left can be checked.
COOLDOWN_DECLARECooldown system based on storing world.time on a variable, plus the cooldown time. +Better performance over timer cooldowns, lower control. Same functionality.

Define Details

+

COOLDOWN_BORG_SELF_REPAIR + + +

+

COOLDOWN SYSTEMS

COOLDOWN_DECLARE + + + +

+

Cooldown system based on storing world.time on a variable, plus the cooldown time. +Better performance over timer cooldowns, lower control. Same functionality.

S_TIMER_COOLDOWN_START + + + +

+

Stoppable timer cooldowns. +Use indexes the same as the regular tiemr cooldowns. +They make use of the TIMER_COOLDOWN_CHECK() and TIMER_COOLDOWN_END() macros the same, just not the TIMER_COOLDOWN_START() one. +A bit more expensive than the regular timers, but can be reset before they end and the time left can be checked.

TIMER_COOLDOWN_CHECK + + + +

+

Returns TRUE if still cooling down, FALSE otherwise

+ + + diff --git a/code/__DEFINES/coordinates.html b/code/__DEFINES/coordinates.html new file mode 100644 index 0000000000000..c03c4e9b50975 --- /dev/null +++ b/code/__DEFINES/coordinates.html @@ -0,0 +1,33 @@ + + + + + + + code/__DEFINES/coordinates.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/coordinates.dm + +

+ + +
ABS_COORTile coordinates (x, y) to absolute coordinates (in number of pixels). Center of a tile is generally assumed to be (16,16), but can be offset.

Define Details

+

ABS_COOR + + + +

+

Tile coordinates (x, y) to absolute coordinates (in number of pixels). Center of a tile is generally assumed to be (16,16), but can be offset.

+ + + diff --git a/code/__DEFINES/crafting.html b/code/__DEFINES/crafting.html new file mode 100644 index 0000000000000..dffa584688411 --- /dev/null +++ b/code/__DEFINES/crafting.html @@ -0,0 +1,77 @@ + + + + + + + code/__DEFINES/crafting.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/crafting.dm + +

+ + + + + + + + + + + +
CRAFTING_MACHINERY_CONSUMEIf the machine is used/deleted in the crafting process
CRAFTING_STRUCTURE_CONSUMEIf the structure is used/deleted in the crafting process
CRAFTING_MACHINERY_USEIf the machine is only "used" i.e. it checks to see if it's nearby and allows crafting, but doesn't delete it
CRAFTING_STRUCTURE_USEIf the structure is only "used" i.e. it checks to see if it's nearby and allows crafting, but doesn't delete it
CRAFT_MUST_BE_LEARNEDIf this craft must be learned before it becomes available
CRAFT_ONE_PER_TURFShould only one object exist on the same turf?
CRAFT_IS_FULLTILESetting this to true will effectively set check_direction to true.
CRAFT_CHECK_DIRECTIONIf this craft should run the direction check, for use when building things like directional windows where you can have more than one per turf
CRAFT_ON_SOLID_GROUNDIf the craft requires a floor below
CRAFT_CHECK_DENSITYIf the craft checks that there are objects with density in the same turf when being built

Define Details

+

CRAFTING_MACHINERY_CONSUME + + +

+

If the machine is used/deleted in the crafting process

CRAFTING_MACHINERY_USE + + +

+

If the machine is only "used" i.e. it checks to see if it's nearby and allows crafting, but doesn't delete it

CRAFTING_STRUCTURE_CONSUME + + +

+

If the structure is used/deleted in the crafting process

CRAFTING_STRUCTURE_USE + + +

+

If the structure is only "used" i.e. it checks to see if it's nearby and allows crafting, but doesn't delete it

CRAFT_CHECK_DENSITY + + +

+

If the craft checks that there are objects with density in the same turf when being built

CRAFT_CHECK_DIRECTION + + +

+

If this craft should run the direction check, for use when building things like directional windows where you can have more than one per turf

CRAFT_IS_FULLTILE + + +

+

Setting this to true will effectively set check_direction to true.

CRAFT_MUST_BE_LEARNED + + +

+

If this craft must be learned before it becomes available

CRAFT_ONE_PER_TURF + + +

+

Should only one object exist on the same turf?

CRAFT_ON_SOLID_GROUND + + +

+

If the craft requires a floor below

+ + + diff --git a/code/__DEFINES/dcs/flags.html b/code/__DEFINES/dcs/flags.html new file mode 100644 index 0000000000000..a76c8468c414c --- /dev/null +++ b/code/__DEFINES/dcs/flags.html @@ -0,0 +1,107 @@ + + + + + + + code/__DEFINES/dcs/flags.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/dcs/flags.dm + +

+ + + + + + + + + + + + + +
COMPONENT_INCOMPATIBLEReturn this from /datum/component/Initialize or datum/component/OnTransfer to have the component be deleted if it's applied to an incorrect type. +parent must not be modified if this is to be returned. +This will be noted in the runtime logs
COMPONENT_NOTRANSFERReturned in PostTransfer to prevent transfer, similar to COMPONENT_INCOMPATIBLE
ELEMENT_INCOMPATIBLEReturn value to cancel attaching
ELEMENT_DETACH_ON_HOST_DESTROYCauses the detach proc to be called when the host object is being deleted. +Should only be used if you need to perform cleanup not related to the host object. +You do not need this if you are only unregistering signals, for instance. +You would need it if you are doing something like removing the target from a processing list.
ELEMENT_BESPOKEOnly elements created with the same arguments given after argument_hash_start_idx share an element instance +The arguments are the same when the text and number values are the same and all other values have the same ref
ELEMENT_COMPLEX_DETACHCauses all detach arguments to be passed to detach instead of only being used to identify the element +When this is used your Detach proc should have the same signature as your Attach proc
COMPONENT_DUPE_HIGHLANDERold component is deleted (default)
COMPONENT_DUPE_ALLOWEDduplicates allowed
COMPONENT_DUPE_UNIQUEnew component is deleted
COMPONENT_DUPE_SOURCESComponent uses source tracking to manage adding and removal logic. +Add a source/spawn to/the component by using AddComponentFrom(source, component_type, args...) +Only the first args will be respected, and you should instead handle most of your logic in the on_source_added proc. +Removing the last source will automatically remove the component from the parent.
COMPONENT_DUPE_UNIQUE_PASSARGSold component is given the initialization args of the new
COMPONENT_DUPE_SELECTIVEeach component of the same type is consulted as to whether the duplicate should be allowed

Define Details

+

COMPONENT_DUPE_ALLOWED + + +

+

duplicates allowed

COMPONENT_DUPE_HIGHLANDER + + +

+

old component is deleted (default)

COMPONENT_DUPE_SELECTIVE + + +

+

each component of the same type is consulted as to whether the duplicate should be allowed

COMPONENT_DUPE_SOURCES + + +

+

Component uses source tracking to manage adding and removal logic. +Add a source/spawn to/the component by using AddComponentFrom(source, component_type, args...) +Only the first args will be respected, and you should instead handle most of your logic in the on_source_added proc. +Removing the last source will automatically remove the component from the parent.

COMPONENT_DUPE_UNIQUE + + +

+

new component is deleted

COMPONENT_DUPE_UNIQUE_PASSARGS + + +

+

old component is given the initialization args of the new

COMPONENT_INCOMPATIBLE + + +

+

Return this from /datum/component/Initialize or datum/component/OnTransfer to have the component be deleted if it's applied to an incorrect type. +parent must not be modified if this is to be returned. +This will be noted in the runtime logs

COMPONENT_NOTRANSFER + + +

+

Returned in PostTransfer to prevent transfer, similar to COMPONENT_INCOMPATIBLE

ELEMENT_BESPOKE + + +

+

Only elements created with the same arguments given after argument_hash_start_idx share an element instance +The arguments are the same when the text and number values are the same and all other values have the same ref

ELEMENT_COMPLEX_DETACH + + +

+

Causes all detach arguments to be passed to detach instead of only being used to identify the element +When this is used your Detach proc should have the same signature as your Attach proc

ELEMENT_DETACH_ON_HOST_DESTROY + + +

+

Causes the detach proc to be called when the host object is being deleted. +Should only be used if you need to perform cleanup not related to the host object. +You do not need this if you are only unregistering signals, for instance. +You would need it if you are doing something like removing the target from a processing list.

ELEMENT_INCOMPATIBLE + + +

+

Return value to cancel attaching

+ + + diff --git a/code/__DEFINES/dcs/helpers.html b/code/__DEFINES/dcs/helpers.html new file mode 100644 index 0000000000000..430eb33097a9f --- /dev/null +++ b/code/__DEFINES/dcs/helpers.html @@ -0,0 +1,85 @@ + + + + + + + code/__DEFINES/dcs/helpers.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/dcs/helpers.dm + +

+ + + + + + + + + +
SEND_SIGNALUsed to trigger signals and call procs registered for that signal +The datum hosting the signal is automaticaly added as the first argument +Returns a bitfield gathered from all registered procs +Arguments given here are packaged in a list and given to _SendSignal
SIGNAL_HANDLERSignifies that this proc is used to handle signals. +Every proc you pass to RegisterSignal must have this.
SIGNAL_HANDLER_DOES_SLEEPSignifies that this proc is used to handle signals, but also sleeps. +Do not use this for new work.
AddElementA wrapper for _AddElement that allows us to pretend we're using normal named arguments
RemoveElementA wrapper for _RemoveElement that allows us to pretend we're using normal named arguments
AddComponentA wrapper for _AddComponent that allows us to pretend we're using normal named arguments
AddComponentFromA wrapper for _AddComonent that passes in a source. +Necessary if dupe_mode is set to COMPONENT_DUPE_SOURCES.
LoadComponentA wrapper for _LoadComponent that allows us to pretend we're using normal named arguments

Define Details

+

AddComponent + + + +

+

A wrapper for _AddComponent that allows us to pretend we're using normal named arguments

AddComponentFrom + + + +

+

A wrapper for _AddComonent that passes in a source. +Necessary if dupe_mode is set to COMPONENT_DUPE_SOURCES.

AddElement + + + +

+

A wrapper for _AddElement that allows us to pretend we're using normal named arguments

LoadComponent + + + +

+

A wrapper for _LoadComponent that allows us to pretend we're using normal named arguments

RemoveElement + + + +

+

A wrapper for _RemoveElement that allows us to pretend we're using normal named arguments

SEND_SIGNAL + + + +

+

Used to trigger signals and call procs registered for that signal +The datum hosting the signal is automaticaly added as the first argument +Returns a bitfield gathered from all registered procs +Arguments given here are packaged in a list and given to _SendSignal

SIGNAL_HANDLER + + +

+

Signifies that this proc is used to handle signals. +Every proc you pass to RegisterSignal must have this.

SIGNAL_HANDLER_DOES_SLEEP + + +

+

Signifies that this proc is used to handle signals, but also sleeps. +Do not use this for new work.

+ + + diff --git a/code/__DEFINES/dcs/signals/signals.html b/code/__DEFINES/dcs/signals/signals.html new file mode 100644 index 0000000000000..a53b7515c7d3f --- /dev/null +++ b/code/__DEFINES/dcs/signals/signals.html @@ -0,0 +1,713 @@ + + + + + + + code/__DEFINES/dcs/signals/signals.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/dcs/signals/signals.dm + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
COMSIG_GLOB_NEW_Zfrom base of datum/controller/subsystem/mapping/proc/add_new_zlevel(): (list/args)
COMSIG_GLOB_CRASH_SHIP_LANDEDMarine ship in Crash gamemode has landed
COMSIG_GLOB_GAMESTATE_GROUNDSIDEGamemode changed to groundside state
COMSIG_GLOB_GAMESTATE_SHIPSIDEGamemode changed to shipside state
COMSIG_GLOB_MACHINERY_ANCHORED_CHANGEfrom /obj/machinery/setAnchored(): (machine, anchoredstate)
COMSIG_GLOB_VAR_EDITcalled after a successful var edit somewhere in the world: (list/args)
COMSIG_GLOB_EXPLOSIONcalled after an explosion happened : (epicenter, devastation_range, heavy_impact_range, light_impact_range, weak_impact_range, took, orig_dev_range, orig_heavy_range, orig_light_range)
COMSIG_GLOB_GAMEMODE_LOADEDGamemode has successfully loaded
COMSIG_GLOB_CLIENT_CONNECTa client (re)connected, after all /client/New() checks have passed : (client/connected_client)
COMSIG_GLOB_DROPSHIP_TRANSITSent when a marine dropship enters transit level
COMSIG_GLOB_DROPSHIP_HIJACKEDSent when xenos launch a hijacked dropship
COMSIG_GLOB_LIGHT_OFFSent when nightfall is casted
COMSIG_GLOB_FLOODLIGHT_SWITCHSent when the floodlight switch is powered
COMSIG_GLOB_DROPSHIP_CONTROLS_CORRUPTEDSent when the xenos lock the dropship controls
COMSIG_GLOB_MINI_DROPSHIP_DESTROYEDSent when the xenos destroy the tadpole controls
COMSIG_GLOB_EXPANDED_WORLD_BOUNDSsent after world.maxx and/or world.maxy are expanded: (has_exapnded_world_maxx, has_expanded_world_maxy)
COMSIG_GLOB_CLONE_PRODUCEDcalled after a clone is produced and leaves his vat
COMSIG_GLOB_HOLOPAD_AI_CALLEDcalled when an AI is requested by a holopad
COMSIG_GLOB_HVH_DEPLOY_POINT_ACTIVATEDSent when mob is deployed via a patrol point
COMSIG_GLOB_OPEN_CAMPAIGN_SHUTTERS_TGMCOpens the TGMC shipside shutters on campaign
COMSIG_GLOB_OPEN_CAMPAIGN_SHUTTERS_SOMOpens the SOM shipside shutters on campaign
COMSIG_GLOB_CAMPAIGN_MISSION_LOADEDSent when a new campaign mission is loaded
COMSIG_GLOB_CAMPAIGN_MISSION_STARTEDSent when a campaign mission is started
COMSIG_GLOB_CAMPAIGN_MISSION_ENDEDSent when a campaign mission ends
COMSIG_GLOB_CAMPAIGN_OBJECTIVE_DESTROYEDSent when a campaign objective has been destroyed
COMSIG_GLOB_CAMPAIGN_CAPTURE_OBJECTIVE_CAPTUREDSent when a campaign capture objective has been captured
COMSIG_GLOB_CAMPAIGN_CAPTURE_OBJECTIVE_DECAPTUREDSent when a campaign capture objective has been decaptured
COMSIG_GLOB_CAMPAIGN_CAPTURE_OBJECTIVE_CAP_STARTEDSent when a campaign capture objective has started the capture process
COMSIG_GLOB_CAMPAIGN_ENABLE_DROPPODSEnables droppod use during campaign
COMSIG_GLOB_CAMPAIGN_DISABLE_DROPPODSDisables droppod use during campaign
COMSIG_GLOB_CAMPAIGN_TELEBLOCKER_DISABLEDRemoves teleporter restrictions from a mission
COMSIG_GLOB_CAMPAIGN_DROPBLOCKER_DISABLEDRemoves droppod restrictions from a mission
COMSIG_GLOB_CAMPAIGN_NT_OVERRIDE_CODEOverride code for NT base rescue mission
COMSIG_GLOB_CAMPAIGN_NT_OVERRIDE_RUNNINGCode computer starts running
COMSIG_GLOB_CAMPAIGN_NT_OVERRIDE_STOP_RUNNINGCode computer stops running
COMSIG_GLOB_CAMPAIGN_OB_BEACON_ACTIVATIONCampaign OB beacon deployed
COMSIG_GLOB_CAMPAIGN_OB_BEACON_TRIGGEREDCampaign OB beacon going off
COMSIG_GLOB_TELEPORTER_ARRAY_ENABLEDEnables the teleporter array
COMSIG_FIND_FOOTSTEP_SOUNDfrom turf/open/get_footstep_override(), to find an override footstep sound
COMSIG_ELEMENT_JUMP_STARTEDfrom /datum/element/jump when a jump has started and ended
COMSIG_ADMIN_HELP_MADE_INACTIVEAdmin helps +From /datum/admin_help/RemoveActive(). +Fired when an adminhelp is made inactive either due to closing or resolving.
COMSIG_ADMIN_HELP_REPLIEDCalled when the player replies. From /client/proc/cmd_admin_pm().
COMSIG_CLIENT_VERB_ADDEDCalled after one or more verbs are added: (list of verbs added)
COMSIG_CLIENT_VERB_REMOVEDCalled after one or more verbs are removed: (list of verbs added)
COMSIG_CLIENT_MOB_LOGINCalled on the client that just logged into a mob
COMSIG_CLIENT_MOB_LOGOUTCalled on the client that just logged out from the mob: (/mob)
COMSIG_CLIENT_GET_LARVA_QUEUE_POSITIONfrom /datum/component/larva_queue
COMSIG_CLIENT_SET_LARVA_QUEUE_POSITIONfrom /datum/component/larva_queue
COMSIG_COMPONENT_CLEAN_ACTCalled on an object to "clean it", such as removing blood decals/overlays, etc. The clean types bitfield is sent with it. Return TRUE if any cleaning was necessary and thus performed.
COMPONENT_CLEANEDReturned by cleanable components when they are cleaned.
ATOM_MAX_STACK_MERGINGfrom base of atom/max_stack_merging(): (obj/item/stack/S)
ATOM_RECALCULATE_STORAGE_SPACEfrom base of atom/recalculate_storage_space(): ()
COMSIG_ATOM_BUMPEDfrom base of atom/Bumped(): (/atom/movable)
COMSIG_ATOM_EMP_ACTfrom base of atom/emp_act(): (severity)
COMSIG_ATOM_EXAMINEfrom base of atom/examine(): (/mob, list/examine_text)
COMSIG_ATOM_EXAMINE_TAGSfrom base of atom/examine_tags(): (/mob, list/examine_tags)
COMSIG_ATOM_GET_EXAMINE_NAMEfrom base of atom/get_examine_name(): (/mob, list/overrides)
COMSIG_ATOM_GET_MECHANICS_INFOfrom base of atom/get_mechanics_info(): (/mob)
COMSIG_ATOM_UPDATE_APPEARANCEfrom base of /atom/proc/update_appearance: (updates)
COMSIG_ATOM_NO_UPDATE_NAMEIf returned from COMSIG_ATOM_UPDATE_APPEARANCE it prevents the atom from updating its name.
COMSIG_ATOM_NO_UPDATE_DESCIf returned from COMSIG_ATOM_UPDATE_APPEARANCE it prevents the atom from updating its desc.
COMSIG_ATOM_NO_UPDATE_ICONIf returned from COMSIG_ATOM_UPDATE_APPEARANCE it prevents the atom from updating its icon.
COMSIG_ATOM_UPDATE_NAMEfrom base of /atom/proc/update_name: (updates)
COMSIG_ATOM_UPDATE_DESCfrom base of /atom/proc/update_desc: (updates)
COMSIG_ATOM_UPDATE_ICONfrom base of /atom/update_icon: ()
COMSIG_ATOM_NO_UPDATE_ICON_STATEIf returned from COMSIG_ATOM_UPDATE_ICON it prevents the atom from updating its icon state.
COMSIG_ATOM_NO_UPDATE_OVERLAYSIf returned from COMSIG_ATOM_UPDATE_ICON it prevents the atom from updating its overlays.
COMSIG_ATOM_UPDATE_ICON_STATEfrom base of atom/update_icon_state: ()
COMSIG_ATOM_UPDATE_OVERLAYSfrom base of /atom/update_overlays: (list/new_overlays)
COMSIG_ATOM_UPDATED_ICONfrom base of /atom/update_icon: (signalOut, did_anything)
COMSIG_CONTENTS_EX_ACTfrom base of atom/contents_explosion(): (severity)
COMSIG_ATOM_SET_OPACITYfrom base of atom/set_opacity(): (new_opacity)
COMSIG_ATOM_SET_LIGHT_RANGECalled right before the atom changes the value of light_range to a different one, from base atom/set_light_range(): (new_range)
COMSIG_ATOM_SET_LIGHT_POWERCalled right before the atom changes the value of light_power to a different one, from base atom/set_light_power(): (new_power)
COMSIG_ATOM_SET_LIGHT_COLORCalled right before the atom changes the value of light_color to a different one, from base atom/set_light_color(): (new_color)
COMSIG_ATOM_SET_LIGHT_ONCalled right before the atom changes the value of light_on to a different one, from base atom/set_light_on(): (new_value)
COMSIG_ATOM_SET_LIGHT_FLAGSCalled right before the atom changes the value of light_flags to a different one, from base atom/set_light_flags(): (new_value)
COMSIG_ATOM_GET_SELF_ACIDFrom base of atom/get_self_acid
COMSIG_MOVABLE_CROSSfrom base of atom/movable/Cross(): (/atom/movable)
COMSIG_MOVABLE_LOCATION_CHANGEfrom base of atom/movable/update_loc(): (/atom/oldloc)
COMSIG_MOVABLE_PREBUCKLEfrom /atom/movable/proc/buckle_mob(): (mob/living/M, force, check_loc, buckle_mob_flags)
COMSIG_VEHICLE_GRANT_CONTROL_FLAGfrom /obj/vehicle/add_control_flags
COMSIG_VEHICLE_REVOKE_CONTROL_FLAGfrom /obj/vehicle/remove_control_flags
COMSIG_VEHICLE_MOVEfrom /obj/vehicle/sealed/proc/driver_move
COMSIG_MULTITILE_VEHICLE_ROTATEDFrom obj/hitbox/owner_turned
COMSIG_RIDDEN_DRIVER_MOVEfrom /obj/vehicle/proc/driver_move, caught by the riding component to check and execute the driver trying to drive the vehicle
COMSIG_MOVABLE_SHUTTLE_CRUSHsent before a thing is crushed by a shuttle
COMSIG_MOVABLE_PATROL_DEPLOYEDMovable deployed via a patrol point
COMSIG_OBJ_HIDEfrom base of /turf/proc/levelupdate(). (intact) true to hide and false to unhide
COMSIG_MACHINERY_POWEREDfrom /obj/machinery/proc/powered: ()
COMSIG_MACHINERY_USE_POWERfrom /obj/machinery/proc/use_power: (amount, chan, list/power_sources)
COMSIG_PORTGEN_POWER_TOGGLEfrom /obj/machinery/power/port_gen/proc/TogglePower: ()
COMSIG_PORTGEN_PROCESSfrom /obj/machinery/power/port_gen/process: ()
COMSIG_UNMANNED_TURRET_UPDATEDfrom /obj/vehicle/unmanned/attackby: (newtype)
COMSIG_ITEM_ATTEMPT_PICK_UPFrom /obj/item/proc/pickup(): (/obj/item/picked_up_item)
COMSIG_ITEM_QUICK_EQUIPfrom base of obj/item/quick_equip(): (mob/user)
COMSIG_MOUSEDROP_ONTOfrom base of atom/MouseDrop(): (/atom/over, /mob/user)
COMSIG_MOUSEDROPPED_ONTOfrom base of atom/MouseDrop_T: (/atom/from, /mob/user)
COMSIG_MOB_EXAMINATEfrom base of /mob/verb/examinate(): (atom/target)
COMSIG_ITEM_GRILLEDCalled when an object is grilled ontop of a griddle
COMSIG_GRILL_COMPLETEDCalled when an object is turned into another item through grilling ontop of a griddle
COMSIG_MOB_GET_STATUS_TAB_ITEMSfrom mob/get_status_tab_items(): (list/items)
COMSIG_MOB_DROPPING_ITEMfrom mob/proc/dropItemToGround()
MOB_GET_DO_AFTER_COEFFICIENTFrom mob/do_after_coefficent()
MOB_GET_MISS_CHANCE_MODFrom get_zone_with_miss_chance
COMSIG_LIVING_SET_LYING_ANGLEfrom /mob/living/proc/set_lying_angle
COMSIG_LIVING_TREAT_MESSAGEFrom mob/living/treat_message(): (list/message_args)
TREAT_MESSAGE_ARGThe index of message_args that corresponds to the actual message
COMSIG_LIVING_POST_FULLY_HEALfrom end of fully_heal(): (admin_revive)
COMSIG_LIVING_WEEDS_AT_LOC_CREATEDfrom obj/alien/weeds/Initialize()
COMSIG_LIVING_WEEDS_ADJACENT_REMOVEDfrom obj/alien/weeds/Destroy()
COMSIG_LIVING_SET_JUMP_COMPONENTFrom base of mob/living/set_jump_component()
COMSIG_LIVING_PICKED_UP_ITEMFrom /obj/item/proc/pickup(): (/obj/item/picked_up_item)
COMSIG_HUMAN_APPLY_OVERLAYfrom [/mob/living/carbon/human/proc/apply_overlay]: (cache_index, list/overlays_to_apply)
COMSIG_HUMAN_REMOVE_OVERLAYfrom [/mob/living/carbon/human/proc/remove_overlay]: (cache_index, list/overlays_to_remove)
COMSIG_XENOMORPH_ATTACK_LIVINGfrom /mob/living/proc/attack_alien_harm(mob/living/carbon/xenomorph/X, dam_bonus, set_location, random_location, no_head, no_crit, force_intent)
COMSIG_XENOMORPH_POSTATTACK_LIVINGafter attacking, accounts for armor
COMSIG_XENO_OBJ_THROW_HITfrom [/mob/living/carbon/xenomorph/throw_impact]: (obj/target, speed)
COMSIG_XENO_LIVING_THROW_HITfrom [/mob/living/carbon/xenomorph/throw_impact]: (mob/living/target)
COMSIG_XENO_PROJECTILE_HITfrom [/mob/living/carbon/xenomorph/projectile_hit] called when a projectile hits a xeno but before confirmation of a hit (can miss due to inaccuracy/evasion)
COMSIG_XENO_IFF_CHECKSignal used by certain IFF checking things to see if a xeno carries an IFF tag of the faction.
COMSIG_SONG_STARTsent to the instrument when a song starts playing
COMSIG_SONG_ENDsent to the instrument when a song stops playing
COMSIG_MECHA_ACTION_TRIGGERsent from mecha action buttons to the mecha they're linked to
COMSIG_MECHA_MELEE_CLICKsent from clicking while you have no equipment selected. Sent before cooldown and adjacency checks, so you can use this for infinite range things if you want.
COMPONENT_CANCEL_MELEE_CLICKPrevents click from happening.
COMSIG_MECHA_EQUIPMENT_CLICKsent from clicking while you have equipment selected.
COMPONENT_CANCEL_EQUIPMENT_CLICKPrevents click from happening.
COMSIG_ACTION_TRIGGERNon-Signal Component Related Defines
COMSIG_REEQUIP_FAILUREFrom reequip components
SPATIAL_GRID_CELL_ENTEREDCalled from base of /datum/controller/subsystem/spatial_grid/proc/enter_cell: (/atom/movable)
SPATIAL_GRID_CELL_EXITEDCalled from base of /datum/controller/subsystem/spatial_grid/proc/exit_cell: (/atom/movable)
COMSIG_CAVE_INTERFERENCE_CHECKCave comms interference check signal.
COMSIG_CAMPAIGN_NEW_ASSETCampaign asset obtained for the first time
COMSIG_CAMPAIGN_ASSET_ACTIVATIONCampaign asset activation successful
COMSIG_CAMPAIGN_DISABLER_ACTIVATIONCampaign asset disabler activated

Define Details

+

ATOM_MAX_STACK_MERGING + + +

+

from base of atom/max_stack_merging(): (obj/item/stack/S)

ATOM_RECALCULATE_STORAGE_SPACE + + +

+

from base of atom/recalculate_storage_space(): ()

COMPONENT_CANCEL_EQUIPMENT_CLICK + + +

+

Prevents click from happening.

COMPONENT_CANCEL_MELEE_CLICK + + +

+

Prevents click from happening.

COMPONENT_CLEANED + + +

+

Returned by cleanable components when they are cleaned.

COMSIG_ACTION_TRIGGER + + +

+

Non-Signal Component Related Defines

COMSIG_ADMIN_HELP_MADE_INACTIVE + + +

+

Admin helps +From /datum/admin_help/RemoveActive(). +Fired when an adminhelp is made inactive either due to closing or resolving.

COMSIG_ADMIN_HELP_REPLIED + + +

+

Called when the player replies. From /client/proc/cmd_admin_pm().

COMSIG_ATOM_BUMPED + + +

+

from base of atom/Bumped(): (/atom/movable)

COMSIG_ATOM_EMP_ACT + + +

+

from base of atom/emp_act(): (severity)

COMSIG_ATOM_EXAMINE + + +

+

from base of atom/examine(): (/mob, list/examine_text)

COMSIG_ATOM_EXAMINE_TAGS + + +

+

from base of atom/examine_tags(): (/mob, list/examine_tags)

COMSIG_ATOM_GET_EXAMINE_NAME + + +

+

from base of atom/get_examine_name(): (/mob, list/overrides)

COMSIG_ATOM_GET_MECHANICS_INFO + + +

+

from base of atom/get_mechanics_info(): (/mob)

COMSIG_ATOM_GET_SELF_ACID + + +

+

From base of atom/get_self_acid

COMSIG_ATOM_NO_UPDATE_DESC + + +

+

If returned from COMSIG_ATOM_UPDATE_APPEARANCE it prevents the atom from updating its desc.

COMSIG_ATOM_NO_UPDATE_ICON + + +

+

If returned from COMSIG_ATOM_UPDATE_APPEARANCE it prevents the atom from updating its icon.

COMSIG_ATOM_NO_UPDATE_ICON_STATE + + +

+

If returned from COMSIG_ATOM_UPDATE_ICON it prevents the atom from updating its icon state.

COMSIG_ATOM_NO_UPDATE_NAME + + +

+

If returned from COMSIG_ATOM_UPDATE_APPEARANCE it prevents the atom from updating its name.

COMSIG_ATOM_NO_UPDATE_OVERLAYS + + +

+

If returned from COMSIG_ATOM_UPDATE_ICON it prevents the atom from updating its overlays.

COMSIG_ATOM_SET_LIGHT_COLOR + + +

+

Called right before the atom changes the value of light_color to a different one, from base atom/set_light_color(): (new_color)

COMSIG_ATOM_SET_LIGHT_FLAGS + + +

+

Called right before the atom changes the value of light_flags to a different one, from base atom/set_light_flags(): (new_value)

COMSIG_ATOM_SET_LIGHT_ON + + +

+

Called right before the atom changes the value of light_on to a different one, from base atom/set_light_on(): (new_value)

COMSIG_ATOM_SET_LIGHT_POWER + + +

+

Called right before the atom changes the value of light_power to a different one, from base atom/set_light_power(): (new_power)

COMSIG_ATOM_SET_LIGHT_RANGE + + +

+

Called right before the atom changes the value of light_range to a different one, from base atom/set_light_range(): (new_range)

COMSIG_ATOM_SET_OPACITY + + +

+

from base of atom/set_opacity(): (new_opacity)

COMSIG_ATOM_UPDATED_ICON + + +

+

from base of /atom/update_icon: (signalOut, did_anything)

COMSIG_ATOM_UPDATE_APPEARANCE + + +

+

from base of /atom/proc/update_appearance: (updates)

COMSIG_ATOM_UPDATE_DESC + + +

+

from base of /atom/proc/update_desc: (updates)

COMSIG_ATOM_UPDATE_ICON + + +

+

from base of /atom/update_icon: ()

COMSIG_ATOM_UPDATE_ICON_STATE + + +

+

from base of atom/update_icon_state: ()

COMSIG_ATOM_UPDATE_NAME + + +

+

from base of /atom/proc/update_name: (updates)

COMSIG_ATOM_UPDATE_OVERLAYS + + +

+

from base of /atom/update_overlays: (list/new_overlays)

COMSIG_CAMPAIGN_ASSET_ACTIVATION + + +

+

Campaign asset activation successful

COMSIG_CAMPAIGN_DISABLER_ACTIVATION + + +

+

Campaign asset disabler activated

COMSIG_CAMPAIGN_NEW_ASSET + + +

+

Campaign asset obtained for the first time

COMSIG_CAVE_INTERFERENCE_CHECK + + +

+

Cave comms interference check signal.

COMSIG_CLIENT_GET_LARVA_QUEUE_POSITION + + +

+

from /datum/component/larva_queue

COMSIG_CLIENT_MOB_LOGIN + + +

+

Called on the client that just logged into a mob

COMSIG_CLIENT_MOB_LOGOUT + + +

+

Called on the client that just logged out from the mob: (/mob)

COMSIG_CLIENT_SET_LARVA_QUEUE_POSITION + + +

+

from /datum/component/larva_queue

COMSIG_CLIENT_VERB_ADDED + + +

+

Called after one or more verbs are added: (list of verbs added)

COMSIG_CLIENT_VERB_REMOVED + + +

+

Called after one or more verbs are removed: (list of verbs added)

COMSIG_COMPONENT_CLEAN_ACT + + +

+

Called on an object to "clean it", such as removing blood decals/overlays, etc. The clean types bitfield is sent with it. Return TRUE if any cleaning was necessary and thus performed.

COMSIG_CONTENTS_EX_ACT + + +

+

from base of atom/contents_explosion(): (severity)

COMSIG_ELEMENT_JUMP_STARTED + + +

+

from /datum/element/jump when a jump has started and ended

COMSIG_FIND_FOOTSTEP_SOUND + + +

+

from turf/open/get_footstep_override(), to find an override footstep sound

COMSIG_GLOB_CAMPAIGN_CAPTURE_OBJECTIVE_CAPTURED + + +

+

Sent when a campaign capture objective has been captured

COMSIG_GLOB_CAMPAIGN_CAPTURE_OBJECTIVE_CAP_STARTED + + +

+

Sent when a campaign capture objective has started the capture process

COMSIG_GLOB_CAMPAIGN_CAPTURE_OBJECTIVE_DECAPTURED + + +

+

Sent when a campaign capture objective has been decaptured

COMSIG_GLOB_CAMPAIGN_DISABLE_DROPPODS + + +

+

Disables droppod use during campaign

COMSIG_GLOB_CAMPAIGN_DROPBLOCKER_DISABLED + + +

+

Removes droppod restrictions from a mission

COMSIG_GLOB_CAMPAIGN_ENABLE_DROPPODS + + +

+

Enables droppod use during campaign

COMSIG_GLOB_CAMPAIGN_MISSION_ENDED + + +

+

Sent when a campaign mission ends

COMSIG_GLOB_CAMPAIGN_MISSION_LOADED + + +

+

Sent when a new campaign mission is loaded

COMSIG_GLOB_CAMPAIGN_MISSION_STARTED + + +

+

Sent when a campaign mission is started

COMSIG_GLOB_CAMPAIGN_NT_OVERRIDE_CODE + + +

+

Override code for NT base rescue mission

COMSIG_GLOB_CAMPAIGN_NT_OVERRIDE_RUNNING + + +

+

Code computer starts running

COMSIG_GLOB_CAMPAIGN_NT_OVERRIDE_STOP_RUNNING + + +

+

Code computer stops running

COMSIG_GLOB_CAMPAIGN_OBJECTIVE_DESTROYED + + +

+

Sent when a campaign objective has been destroyed

COMSIG_GLOB_CAMPAIGN_OB_BEACON_ACTIVATION + + +

+

Campaign OB beacon deployed

COMSIG_GLOB_CAMPAIGN_OB_BEACON_TRIGGERED + + +

+

Campaign OB beacon going off

COMSIG_GLOB_CAMPAIGN_TELEBLOCKER_DISABLED + + +

+

Removes teleporter restrictions from a mission

COMSIG_GLOB_CLIENT_CONNECT + + +

+

a client (re)connected, after all /client/New() checks have passed : (client/connected_client)

COMSIG_GLOB_CLONE_PRODUCED + + +

+

called after a clone is produced and leaves his vat

COMSIG_GLOB_CRASH_SHIP_LANDED + + +

+

Marine ship in Crash gamemode has landed

COMSIG_GLOB_DROPSHIP_CONTROLS_CORRUPTED + + +

+

Sent when the xenos lock the dropship controls

COMSIG_GLOB_DROPSHIP_HIJACKED + + +

+

Sent when xenos launch a hijacked dropship

COMSIG_GLOB_DROPSHIP_TRANSIT + + +

+

Sent when a marine dropship enters transit level

COMSIG_GLOB_EXPANDED_WORLD_BOUNDS + + +

+

sent after world.maxx and/or world.maxy are expanded: (has_exapnded_world_maxx, has_expanded_world_maxy)

COMSIG_GLOB_EXPLOSION + + +

+

called after an explosion happened : (epicenter, devastation_range, heavy_impact_range, light_impact_range, weak_impact_range, took, orig_dev_range, orig_heavy_range, orig_light_range)

COMSIG_GLOB_FLOODLIGHT_SWITCH + + +

+

Sent when the floodlight switch is powered

COMSIG_GLOB_GAMEMODE_LOADED + + +

+

Gamemode has successfully loaded

COMSIG_GLOB_GAMESTATE_GROUNDSIDE + + +

+

Gamemode changed to groundside state

COMSIG_GLOB_GAMESTATE_SHIPSIDE + + +

+

Gamemode changed to shipside state

COMSIG_GLOB_HOLOPAD_AI_CALLED + + +

+

called when an AI is requested by a holopad

COMSIG_GLOB_HVH_DEPLOY_POINT_ACTIVATED + + +

+

Sent when mob is deployed via a patrol point

COMSIG_GLOB_LIGHT_OFF + + +

+

Sent when nightfall is casted

COMSIG_GLOB_MACHINERY_ANCHORED_CHANGE + + +

+

from /obj/machinery/setAnchored(): (machine, anchoredstate)

COMSIG_GLOB_MINI_DROPSHIP_DESTROYED + + +

+

Sent when the xenos destroy the tadpole controls

COMSIG_GLOB_NEW_Z + + +

+

from base of datum/controller/subsystem/mapping/proc/add_new_zlevel(): (list/args)

COMSIG_GLOB_OPEN_CAMPAIGN_SHUTTERS_SOM + + +

+

Opens the SOM shipside shutters on campaign

COMSIG_GLOB_OPEN_CAMPAIGN_SHUTTERS_TGMC + + +

+

Opens the TGMC shipside shutters on campaign

COMSIG_GLOB_TELEPORTER_ARRAY_ENABLED + + +

+

Enables the teleporter array

COMSIG_GLOB_VAR_EDIT + + +

+

called after a successful var edit somewhere in the world: (list/args)

COMSIG_GRILL_COMPLETED + + +

+

Called when an object is turned into another item through grilling ontop of a griddle

COMSIG_HUMAN_APPLY_OVERLAY + + +

+

from [/mob/living/carbon/human/proc/apply_overlay]: (cache_index, list/overlays_to_apply)

COMSIG_HUMAN_REMOVE_OVERLAY + + +

+

from [/mob/living/carbon/human/proc/remove_overlay]: (cache_index, list/overlays_to_remove)

COMSIG_ITEM_ATTEMPT_PICK_UP + + +

+

From /obj/item/proc/pickup(): (/obj/item/picked_up_item)

COMSIG_ITEM_GRILLED + + +

+

Called when an object is grilled ontop of a griddle

COMSIG_ITEM_QUICK_EQUIP + + +

+

from base of obj/item/quick_equip(): (mob/user)

COMSIG_LIVING_PICKED_UP_ITEM + + +

+

From /obj/item/proc/pickup(): (/obj/item/picked_up_item)

COMSIG_LIVING_POST_FULLY_HEAL + + +

+

from end of fully_heal(): (admin_revive)

COMSIG_LIVING_SET_JUMP_COMPONENT + + +

+

From base of mob/living/set_jump_component()

COMSIG_LIVING_SET_LYING_ANGLE + + +

+

from /mob/living/proc/set_lying_angle

COMSIG_LIVING_TREAT_MESSAGE + + +

+

From mob/living/treat_message(): (list/message_args)

COMSIG_LIVING_WEEDS_ADJACENT_REMOVED + + +

+

from obj/alien/weeds/Destroy()

COMSIG_LIVING_WEEDS_AT_LOC_CREATED + + +

+

from obj/alien/weeds/Initialize()

COMSIG_MACHINERY_POWERED + + +

+

from /obj/machinery/proc/powered: ()

COMSIG_MACHINERY_USE_POWER + + +

+

from /obj/machinery/proc/use_power: (amount, chan, list/power_sources)

COMSIG_MECHA_ACTION_TRIGGER + + +

+

sent from mecha action buttons to the mecha they're linked to

COMSIG_MECHA_EQUIPMENT_CLICK + + +

+

sent from clicking while you have equipment selected.

COMSIG_MECHA_MELEE_CLICK + + +

+

sent from clicking while you have no equipment selected. Sent before cooldown and adjacency checks, so you can use this for infinite range things if you want.

COMSIG_MOB_DROPPING_ITEM + + +

+

from mob/proc/dropItemToGround()

COMSIG_MOB_EXAMINATE + + +

+

from base of /mob/verb/examinate(): (atom/target)

COMSIG_MOB_GET_STATUS_TAB_ITEMS + + +

+

from mob/get_status_tab_items(): (list/items)

COMSIG_MOUSEDROPPED_ONTO + + +

+

from base of atom/MouseDrop_T: (/atom/from, /mob/user)

COMSIG_MOUSEDROP_ONTO + + +

+

from base of atom/MouseDrop(): (/atom/over, /mob/user)

COMSIG_MOVABLE_CROSS + + +

+

from base of atom/movable/Cross(): (/atom/movable)

COMSIG_MOVABLE_LOCATION_CHANGE + + +

+

from base of atom/movable/update_loc(): (/atom/oldloc)

COMSIG_MOVABLE_PATROL_DEPLOYED + + +

+

Movable deployed via a patrol point

COMSIG_MOVABLE_PREBUCKLE + + +

+

from /atom/movable/proc/buckle_mob(): (mob/living/M, force, check_loc, buckle_mob_flags)

COMSIG_MOVABLE_SHUTTLE_CRUSH + + +

+

sent before a thing is crushed by a shuttle

COMSIG_MULTITILE_VEHICLE_ROTATED + + +

+

From obj/hitbox/owner_turned

COMSIG_OBJ_HIDE + + +

+

from base of /turf/proc/levelupdate(). (intact) true to hide and false to unhide

COMSIG_PORTGEN_POWER_TOGGLE + + +

+

from /obj/machinery/power/port_gen/proc/TogglePower: ()

COMSIG_PORTGEN_PROCESS + + +

+

from /obj/machinery/power/port_gen/process: ()

COMSIG_REEQUIP_FAILURE + + +

+

From reequip components

COMSIG_RIDDEN_DRIVER_MOVE + + +

+

from /obj/vehicle/proc/driver_move, caught by the riding component to check and execute the driver trying to drive the vehicle

COMSIG_SONG_END + + +

+

sent to the instrument when a song stops playing

COMSIG_SONG_START + + +

+

sent to the instrument when a song starts playing

COMSIG_UNMANNED_TURRET_UPDATED + + +

+

from /obj/vehicle/unmanned/attackby: (newtype)

COMSIG_VEHICLE_GRANT_CONTROL_FLAG + + +

+

from /obj/vehicle/add_control_flags

COMSIG_VEHICLE_MOVE + + +

+

from /obj/vehicle/sealed/proc/driver_move

COMSIG_VEHICLE_REVOKE_CONTROL_FLAG + + +

+

from /obj/vehicle/remove_control_flags

COMSIG_XENOMORPH_ATTACK_LIVING + + +

+

from /mob/living/proc/attack_alien_harm(mob/living/carbon/xenomorph/X, dam_bonus, set_location, random_location, no_head, no_crit, force_intent)

COMSIG_XENOMORPH_POSTATTACK_LIVING + + +

+

after attacking, accounts for armor

COMSIG_XENO_IFF_CHECK + + +

+

Signal used by certain IFF checking things to see if a xeno carries an IFF tag of the faction.

COMSIG_XENO_LIVING_THROW_HIT + + +

+

from [/mob/living/carbon/xenomorph/throw_impact]: (mob/living/target)

COMSIG_XENO_OBJ_THROW_HIT + + +

+

from [/mob/living/carbon/xenomorph/throw_impact]: (obj/target, speed)

COMSIG_XENO_PROJECTILE_HIT + + +

+

from [/mob/living/carbon/xenomorph/projectile_hit] called when a projectile hits a xeno but before confirmation of a hit (can miss due to inaccuracy/evasion)

MOB_GET_DO_AFTER_COEFFICIENT + + +

+

From mob/do_after_coefficent()

MOB_GET_MISS_CHANCE_MOD + + +

+

From get_zone_with_miss_chance

SPATIAL_GRID_CELL_ENTERED + + + +

+

Called from base of /datum/controller/subsystem/spatial_grid/proc/enter_cell: (/atom/movable)

SPATIAL_GRID_CELL_EXITED + + + +

+

Called from base of /datum/controller/subsystem/spatial_grid/proc/exit_cell: (/atom/movable)

TREAT_MESSAGE_ARG + + +

+

The index of message_args that corresponds to the actual message

+ + + diff --git a/code/__DEFINES/dcs/signals/signals_atom/signals_atom_mouse.html b/code/__DEFINES/dcs/signals/signals_atom/signals_atom_mouse.html new file mode 100644 index 0000000000000..956e1302dc65c --- /dev/null +++ b/code/__DEFINES/dcs/signals/signals_atom/signals_atom_mouse.html @@ -0,0 +1,32 @@ + + + + + + + code/__DEFINES/dcs/signals/signals_atom/signals_atom_mouse.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/dcs/signals/signals_atom/signals_atom_mouse.dm + +

+ + +
COMSIG_SCREEN_ELEMENT_CLICKFrom /atom/movable/screen/click(): (atom/target, atom/location, control, params, mob/user)

Define Details

+

COMSIG_SCREEN_ELEMENT_CLICK + + +

+

From /atom/movable/screen/click(): (atom/target, atom/location, control, params, mob/user)

+ + + diff --git a/code/__DEFINES/dcs/signals/signals_atom/signals_atom_x_act.html b/code/__DEFINES/dcs/signals/signals_atom/signals_atom_x_act.html new file mode 100644 index 0000000000000..20d4bc501ab98 --- /dev/null +++ b/code/__DEFINES/dcs/signals/signals_atom/signals_atom_x_act.html @@ -0,0 +1,37 @@ + + + + + + + code/__DEFINES/dcs/signals/signals_atom/signals_atom_x_act.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/dcs/signals/signals_atom/signals_atom_x_act.dm + +

+ + + +
COMSIG_ATOM_CHECKPARTSfrom base of atom/CheckParts(): (list/parts_list, datum/crafting_recipe/R)
COMSIG_ATOM_USED_IN_CRAFTfrom base of atom/CheckParts(): (atom/movable/new_craft) - The atom has just been used in a crafting recipe and has been moved inside new_craft.

Define Details

+

COMSIG_ATOM_CHECKPARTS + + +

+

from base of atom/CheckParts(): (list/parts_list, datum/crafting_recipe/R)

COMSIG_ATOM_USED_IN_CRAFT + + +

+

from base of atom/CheckParts(): (atom/movable/new_craft) - The atom has just been used in a crafting recipe and has been moved inside new_craft.

+ + + diff --git a/code/__DEFINES/dcs/signals/signals_datum.html b/code/__DEFINES/dcs/signals/signals_datum.html new file mode 100644 index 0000000000000..27900b558a2b0 --- /dev/null +++ b/code/__DEFINES/dcs/signals/signals_datum.html @@ -0,0 +1,76 @@ + + + + + + + code/__DEFINES/dcs/signals/signals_datum.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/dcs/signals/signals_datum.dm + +

+ + + + + + + + + + +
COMSIG_COMPONENT_ADDEDwhen a component is added to a datum: (/datum/component)
COMSIG_COMPONENT_REMOVINGbefore a component is removed from a datum because of ClearFromParent: (/datum/component)
COMSIG_PREQDELETEDbefore a datum's Destroy() is called: (force), returning a nonzero value will cancel the qdel operation +you should only be using this if you want to block deletion +that's the only functional difference between it and COMSIG_QDELETING, outside setting QDELETING to detect
COMSIG_QDELETINGjust before a datum's Destroy() is called: (force), at this point none of the other components chose to interrupt qdel and Destroy will be called
COMSIG_TOPICgeneric topic handler (usr, href_list)
COMSIG_VV_TOPIChandler for vv_do_topic (usr, href_list)
COMSIG_UI_ACTfrom datum ui_act (usr, action)
COMSIG_ELEMENT_ATTACHfires on the target datum when an element is attached to it (/datum/element)
COMSIG_ELEMENT_DETACHfires on the target datum when an element is attached to it (/datum/element)

Define Details

+

COMSIG_COMPONENT_ADDED + + +

+

when a component is added to a datum: (/datum/component)

COMSIG_COMPONENT_REMOVING + + +

+

before a component is removed from a datum because of ClearFromParent: (/datum/component)

COMSIG_ELEMENT_ATTACH + + +

+

fires on the target datum when an element is attached to it (/datum/element)

COMSIG_ELEMENT_DETACH + + +

+

fires on the target datum when an element is attached to it (/datum/element)

COMSIG_PREQDELETED + + +

+

before a datum's Destroy() is called: (force), returning a nonzero value will cancel the qdel operation +you should only be using this if you want to block deletion +that's the only functional difference between it and COMSIG_QDELETING, outside setting QDELETING to detect

COMSIG_QDELETING + + +

+

just before a datum's Destroy() is called: (force), at this point none of the other components chose to interrupt qdel and Destroy will be called

COMSIG_TOPIC + + +

+

generic topic handler (usr, href_list)

COMSIG_UI_ACT + + +

+

from datum ui_act (usr, action)

COMSIG_VV_TOPIC + + +

+

handler for vv_do_topic (usr, href_list)

+ + + diff --git a/code/__DEFINES/dcs/signals/signals_food.html b/code/__DEFINES/dcs/signals/signals_food.html new file mode 100644 index 0000000000000..9ba353dc1df5f --- /dev/null +++ b/code/__DEFINES/dcs/signals/signals_food.html @@ -0,0 +1,32 @@ + + + + + + + code/__DEFINES/dcs/signals/signals_food.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/dcs/signals/signals_food.dm + +

+ + +
COMSIG_GLASS_DRANKfrom base of obj/item/reagent_containers/cup/attack(): (mob/M, mob/user)

Define Details

+

COMSIG_GLASS_DRANK + + +

+

from base of obj/item/reagent_containers/cup/attack(): (mob/M, mob/user)

+ + + diff --git a/code/__DEFINES/dcs/signals/signals_keybindings.html b/code/__DEFINES/dcs/signals/signals_keybindings.html new file mode 100644 index 0000000000000..b5a067e21cb4e --- /dev/null +++ b/code/__DEFINES/dcs/signals/signals_keybindings.html @@ -0,0 +1,27 @@ + + + + + + + code/__DEFINES/dcs/signals/signals_keybindings.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__DEFINES/dcs/signals/signals_keybindings.dm + +

+ + +

Contains keybinding signals

+ + + diff --git a/code/__DEFINES/dcs/signals/signals_mind.html b/code/__DEFINES/dcs/signals/signals_mind.html new file mode 100644 index 0000000000000..1f85bb9cdbe9b --- /dev/null +++ b/code/__DEFINES/dcs/signals/signals_mind.html @@ -0,0 +1,42 @@ + + + + + + + code/__DEFINES/dcs/signals/signals_mind.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/dcs/signals/signals_mind.dm + +

+ + + + +
COMSIG_MIND_TRANSFERREDfrom mind/transfer_to. Sent after the mind has been transferred: (mob/previous_body)
COMSIG_ANTAGONIST_GAINEDCalled on the mind when an antagonist is being gained, after the antagonist list has updated (datum/antagonist/antagonist)
COMSIG_ANTAGONIST_REMOVEDCalled on the mind when an antagonist is being removed, after the antagonist list has updated (datum/antagonist/antagonist)

Define Details

+

COMSIG_ANTAGONIST_GAINED + + +

+

Called on the mind when an antagonist is being gained, after the antagonist list has updated (datum/antagonist/antagonist)

COMSIG_ANTAGONIST_REMOVED + + +

+

Called on the mind when an antagonist is being removed, after the antagonist list has updated (datum/antagonist/antagonist)

COMSIG_MIND_TRANSFERRED + + +

+

from mind/transfer_to. Sent after the mind has been transferred: (mob/previous_body)

+ + + diff --git a/code/__DEFINES/dcs/signals/signals_reagent.html b/code/__DEFINES/dcs/signals/signals_reagent.html new file mode 100644 index 0000000000000..4499a4b116e23 --- /dev/null +++ b/code/__DEFINES/dcs/signals/signals_reagent.html @@ -0,0 +1,77 @@ + + + + + + + code/__DEFINES/dcs/signals/signals_reagent.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/dcs/signals/signals_reagent.dm + +

+ + + + + + + + + + + +
COMSIG_REAGENTS_PRE_ADD_REAGENTfrom base of [/datum/reagents/proc/add_reagent] - Sent before the reagent is added: (reagenttype, amount, reagtemp, data, no_react)
COMPONENT_CANCEL_REAGENT_ADDPrevents the reagent from being added.
COMSIG_REAGENTS_NEW_REAGENTfrom base of [/datum/reagents/proc/add_reagent]: (reagent_type, amount, reagtemp, data, no_react)
COMSIG_REAGENTS_ADD_REAGENTfrom base of [/datum/reagents/proc/add_reagent]: (reagent_type, amount, reagtemp, data, no_react)
COMSIG_REAGENTS_DEL_REAGENTfrom base of /datum/reagents/proc/del_reagent: (reagent_type)
COMSIG_REAGENTS_REM_REAGENTfrom base of /datum/reagents/proc/remove_reagent: (reagent_type, amount)
COMSIG_REAGENTS_CLEAR_REAGENTSfrom base of /datum/reagents/proc/clear_reagents: ()
COMSIG_REAGENTS_CRAFTING_PINGfrom base of [/datum/component/personal_crafting/proc/del_reqs]: ()
COMSIG_REAGENTS_CUP_TRANSFER_TOsent when reagents are transfered from a cup, to something refillable (atom/transfer_to)
COMSIG_REAGENTS_CUP_TRANSFER_FROMsent when reagents are transfered from some reagent container, to a cup (atom/transfer_from)

Define Details

+

COMPONENT_CANCEL_REAGENT_ADD + + +

+

Prevents the reagent from being added.

COMSIG_REAGENTS_ADD_REAGENT + + +

+

from base of [/datum/reagents/proc/add_reagent]: (reagent_type, amount, reagtemp, data, no_react)

COMSIG_REAGENTS_CLEAR_REAGENTS + + +

+

from base of /datum/reagents/proc/clear_reagents: ()

COMSIG_REAGENTS_CRAFTING_PING + + +

+

from base of [/datum/component/personal_crafting/proc/del_reqs]: ()

COMSIG_REAGENTS_CUP_TRANSFER_FROM + + +

+

sent when reagents are transfered from some reagent container, to a cup (atom/transfer_from)

COMSIG_REAGENTS_CUP_TRANSFER_TO + + +

+

sent when reagents are transfered from a cup, to something refillable (atom/transfer_to)

COMSIG_REAGENTS_DEL_REAGENT + + +

+

from base of /datum/reagents/proc/del_reagent: (reagent_type)

COMSIG_REAGENTS_NEW_REAGENT + + +

+

from base of [/datum/reagents/proc/add_reagent]: (reagent_type, amount, reagtemp, data, no_react)

COMSIG_REAGENTS_PRE_ADD_REAGENT + + +

+

from base of [/datum/reagents/proc/add_reagent] - Sent before the reagent is added: (reagenttype, amount, reagtemp, data, no_react)

COMSIG_REAGENTS_REM_REAGENT + + +

+

from base of /datum/reagents/proc/remove_reagent: (reagent_type, amount)

+ + + diff --git a/code/__DEFINES/dcs/signals/signals_subsystem.html b/code/__DEFINES/dcs/signals/signals_subsystem.html new file mode 100644 index 0000000000000..645d35bb6b05b --- /dev/null +++ b/code/__DEFINES/dcs/signals/signals_subsystem.html @@ -0,0 +1,64 @@ + + + + + + + code/__DEFINES/dcs/signals/signals_subsystem.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/dcs/signals/signals_subsystem.dm + +

+ + + + + + + + +
COMSIG_SUBSYSTEM_POST_INITIALIZESubsystem signals +From base of datum/controller/subsystem/Initialize
COMSIG_TICKER_ENTER_PREGAMECalled when the ticker enters the pre-game phase
COMSIG_TICKER_ENTER_SETTING_UPCalled when the ticker sets up the game for start
COMSIG_TICKER_ERROR_SETTING_UPCalled when the ticker fails to set up the game for start
COMSIG_TICKER_ROUND_STARTINGCalled when the round has started, but before GAME_STATE_PLAYING.
COMSIG_ADDED_POINT_OF_INTERESTSent from base of /datum/controller/subsystem/points_of_interest/proc/on_poi_element_added : (atom/new_poi)
COMSIG_REMOVED_POINT_OF_INTERESTSent from base of /datum/controller/subsystem/points_of_interest/proc/on_poi_element_removed : (atom/old_poi)

Define Details

+

COMSIG_ADDED_POINT_OF_INTEREST + + +

+

Sent from base of /datum/controller/subsystem/points_of_interest/proc/on_poi_element_added : (atom/new_poi)

COMSIG_REMOVED_POINT_OF_INTEREST + + +

+

Sent from base of /datum/controller/subsystem/points_of_interest/proc/on_poi_element_removed : (atom/old_poi)

COMSIG_SUBSYSTEM_POST_INITIALIZE + + +

+

Subsystem signals +From base of datum/controller/subsystem/Initialize

COMSIG_TICKER_ENTER_PREGAME + + +

+

Called when the ticker enters the pre-game phase

COMSIG_TICKER_ENTER_SETTING_UP + + +

+

Called when the ticker sets up the game for start

COMSIG_TICKER_ERROR_SETTING_UP + + +

+

Called when the ticker fails to set up the game for start

COMSIG_TICKER_ROUND_STARTING + + +

+

Called when the round has started, but before GAME_STATE_PLAYING.

+ + + diff --git a/code/__DEFINES/defibrillator.html b/code/__DEFINES/defibrillator.html new file mode 100644 index 0000000000000..d486c8de382ce --- /dev/null +++ b/code/__DEFINES/defibrillator.html @@ -0,0 +1,77 @@ + + + + + + + code/__DEFINES/defibrillator.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/defibrillator.dm + +

+ + + + + + + + + + +
DEFIBRILLATOR_BASE_HEALING_VALUEThe base healing number for a defibrillator.
DEFIBRILLATOR_HEALING_TIMES_SKILLA macro for healing with a defibrillator.
DEFIB_POSSIBLEReady to defibrillate
DEFIB_FAIL_DECAPITATEDMissing a head
DEFIB_FAIL_BRAINDEADThey have TRAIT_UNDEFIBBABLE
DEFIB_FAIL_BAD_ORGANSDoesn't have the required organs to sustain life OR heart is broken
DEFIB_FAIL_TOO_MUCH_DAMAGEToo much damage
DEFIB_PREVENT_REVIVE_STATESRevival states that strictly entail permadeath. These will prevent defibrillation
DEFIB_REVIVABLE_STATESAll defibrillation outcomes that leave a revivable patient

Define Details

+

DEFIBRILLATOR_BASE_HEALING_VALUE + + +

+

The base healing number for a defibrillator.

DEFIBRILLATOR_HEALING_TIMES_SKILL + + + +

+

A macro for healing with a defibrillator.

+

DEFIB_FAIL_BAD_ORGANS + + +

+

Doesn't have the required organs to sustain life OR heart is broken

DEFIB_FAIL_BRAINDEAD + + +

+

They have TRAIT_UNDEFIBBABLE

DEFIB_FAIL_DECAPITATED + + +

+

Missing a head

DEFIB_FAIL_TOO_MUCH_DAMAGE + + +

+

Too much damage

DEFIB_POSSIBLE + + +

+

Ready to defibrillate

DEFIB_PREVENT_REVIVE_STATES + + +

+

Revival states that strictly entail permadeath. These will prevent defibrillation

DEFIB_REVIVABLE_STATES + + +

+

All defibrillation outcomes that leave a revivable patient

+ + + diff --git a/code/__DEFINES/dropship_equipment.html b/code/__DEFINES/dropship_equipment.html new file mode 100644 index 0000000000000..2a524d6be6fef --- /dev/null +++ b/code/__DEFINES/dropship_equipment.html @@ -0,0 +1,59 @@ + + + + + + + code/__DEFINES/dropship_equipment.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/dropship_equipment.dm + +

+ + + + + + + +
IS_NOT_REMOVABLEdropship equipment flags +The dropship equipment cannot be rmeoved
USES_AMMOThe equipment uses ammo
IS_WEAPONThe equipment is a weapon
FIRE_MISSION_ONLYThis equipment can only be used in firemissions
IS_INTERACTABLEWhether we can interact with this equipment
CAS_LASER_BATTERYAmmo type defines

Define Details

+

CAS_LASER_BATTERY + + +

+

Ammo type defines

FIRE_MISSION_ONLY + + +

+

This equipment can only be used in firemissions

IS_INTERACTABLE + + +

+

Whether we can interact with this equipment

IS_NOT_REMOVABLE + + +

+

dropship equipment flags +The dropship equipment cannot be rmeoved

IS_WEAPON + + +

+

The equipment is a weapon

USES_AMMO + + +

+

The equipment uses ammo

+ + + diff --git a/code/__DEFINES/equipment.html b/code/__DEFINES/equipment.html new file mode 100644 index 0000000000000..37722e7305218 --- /dev/null +++ b/code/__DEFINES/equipment.html @@ -0,0 +1,297 @@ + + + + + + + code/__DEFINES/equipment.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/equipment.dm + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
PASS_LOW_STRUCTUREPass low objects like tables or windowframes
PASS_GLASSlasers and the like can pass unobstructed
PASS_GRILLEPass grilles
PASS_MOBPass mobs
PASS_DEFENSIVE_STRUCTUREPass defensive structures like barricades
PASS_FIREAllows Mobs to pass fire without ignition
PASS_XENOPass xenos
PASS_THROWyou can throw past
PASS_PROJECTILEprojectiles can pass
PASS_AIRnon-airtight, gas/fire can pass
PASS_WALKOVERMobs can walk freely between turfs with walkover flagged objects
PASS_TANKwhen jumping, mobs can pass onto tanks
AI_BLOCKEDPrevent ai from going onto this turf
NOINTERACTYou can't interact with it, at all. Useful when doing certain animations.
CONDUCTconducts electricity (metal etc.)
ON_BORDER'border object'. item has priority to check when entering or leaving
NOBLOODYDon't want a blood overlay on this one.
DIRLOCKmovable atom won't change direction when Moving()ing. Useful for items that have several dir states.
INITIALIZEDWhether /atom/Initialize() has already run for the object
PREVENT_CLICK_UNDERPrevent clicking things below it on the same turf
CRITICAL_ATOMUse when this shouldn't be obscured by large icons.
PREVENT_CONTENTS_EXPLOSIONDoes not cascade explosions to its contents.
ADMIN_SPAWNEDwas this spawned by an admin? used for stat tracking stuff.
BUMP_ATTACKABLECan this atom be bumped attack
SHUTTLE_IMMUNEThis atom will not be qdeled when a shuttle lands on it; it will just move onto the shuttle tile. It will stay on the ground when the shuttle takes off
HTML_USE_INITAL_ICON_1Should we use the initial icon for display? Mostly used by overlay only objects
NOBLUDGEONwhen an item has this it produces no "X has been hit by Y with Z" message with the default handler
DELONDROPDeletes on drop instead of falling on the floor.
TWOHANDEDThe item is twohanded.
WIELDEDThe item is wielded with both hands.
ITEM_ABSTRACTThe item is abstract (grab, powerloader_clamp, etc)
DOES_NOT_NEED_HANDSDont need hands to use it
SYNTH_RESTRICTEDPrevents synths from wearing items with this flag
IMPEDE_JETPACKReduce the range of jetpack
CAN_BUMP_ATTACKItem triggers bump attack
IS_DEPLOYABLEItem can be deployed into a machine
DEPLOY_ON_INITIALIZEItem deploys on initialize
IS_DEPLOYEDIf this is on an item, said item is currently deployed
DEPLOYED_NO_PICKUPDisables deployed item pickup
DEPLOYED_NO_ROTATEDisables deployed item rotation abilities to rotate.
DEPLOYED_NO_ROTATE_ANCHOREDDisables deployed item rotation if anchored.
DEPLOYED_WRENCH_DISASSEMBLEIf this is on an item, the item can only be disassembled using a wrench once deployed.
DEPLOYED_ANCHORED_FIRING_ONLYDisables firing deployable if it is not anchored.
FULLY_WIELDEDIf the item is properly wielded. Used for guns
HAS_UNDERLAYIf a holster has underlay sprites
IN_INVENTORYis this item equipped into an inventory slot or hand of a mob?
AUTOBALANCE_CHECKThis item is used for autobalance calculations or excluded, such as valhalla items
IN_STORAGEThis item is in any storage
CAN_REFILLIf an item can be restocked/refilled in a vendor, despite not being infinite supply
BYPASS_VENDOR_CHECKIf a storage container can be restocked into a vendor
CAN_BUY_LOADOUTIf you can get buy a loadout
USED_GHMMEIf you have used the GHMME
SLOT_DRAW_ORDEREach slot you can draw from, used and messed with in your preferences.
VALID_EQUIP_SLOTSA list of equip slots that are valid for quick equip preferences

Define Details

+

ADMIN_SPAWNED + + +

+

was this spawned by an admin? used for stat tracking stuff.

AI_BLOCKED + + +

+

Prevent ai from going onto this turf

AUTOBALANCE_CHECK + + +

+

This item is used for autobalance calculations or excluded, such as valhalla items

BUMP_ATTACKABLE + + +

+

Can this atom be bumped attack

BYPASS_VENDOR_CHECK + + +

+

If a storage container can be restocked into a vendor

CAN_BUMP_ATTACK + + +

+

Item triggers bump attack

CAN_BUY_LOADOUT + + +

+

If you can get buy a loadout

CAN_REFILL + + +

+

If an item can be restocked/refilled in a vendor, despite not being infinite supply

CONDUCT + + +

+

conducts electricity (metal etc.)

CRITICAL_ATOM + + +

+

Use when this shouldn't be obscured by large icons.

DELONDROP + + +

+

Deletes on drop instead of falling on the floor.

DEPLOYED_ANCHORED_FIRING_ONLY + + +

+

Disables firing deployable if it is not anchored.

DEPLOYED_NO_PICKUP + + +

+

Disables deployed item pickup

DEPLOYED_NO_ROTATE + + +

+

Disables deployed item rotation abilities to rotate.

DEPLOYED_NO_ROTATE_ANCHORED + + +

+

Disables deployed item rotation if anchored.

DEPLOYED_WRENCH_DISASSEMBLE + + +

+

If this is on an item, the item can only be disassembled using a wrench once deployed.

DEPLOY_ON_INITIALIZE + + +

+

Item deploys on initialize

DIRLOCK + + +

+

movable atom won't change direction when Moving()ing. Useful for items that have several dir states.

DOES_NOT_NEED_HANDS + + +

+

Dont need hands to use it

FULLY_WIELDED + + +

+

If the item is properly wielded. Used for guns

HAS_UNDERLAY + + +

+

If a holster has underlay sprites

HTML_USE_INITAL_ICON_1 + + +

+

Should we use the initial icon for display? Mostly used by overlay only objects

IMPEDE_JETPACK + + +

+

Reduce the range of jetpack

INITIALIZED + + +

+

Whether /atom/Initialize() has already run for the object

IN_INVENTORY + + +

+

is this item equipped into an inventory slot or hand of a mob?

IN_STORAGE + + +

+

This item is in any storage

IS_DEPLOYABLE + + +

+

Item can be deployed into a machine

IS_DEPLOYED + + +

+

If this is on an item, said item is currently deployed

ITEM_ABSTRACT + + +

+

The item is abstract (grab, powerloader_clamp, etc)

NOBLOODY + + +

+

Don't want a blood overlay on this one.

NOBLUDGEON + + +

+

when an item has this it produces no "X has been hit by Y with Z" message with the default handler

NOINTERACT + + +

+

You can't interact with it, at all. Useful when doing certain animations.

ON_BORDER + + +

+

'border object'. item has priority to check when entering or leaving

PASS_AIR + + +

+

non-airtight, gas/fire can pass

PASS_DEFENSIVE_STRUCTURE + + +

+

Pass defensive structures like barricades

PASS_FIRE + + +

+

Allows Mobs to pass fire without ignition

PASS_GLASS + + +

+

lasers and the like can pass unobstructed

PASS_GRILLE + + +

+

Pass grilles

PASS_LOW_STRUCTURE + + +

+

Pass low objects like tables or windowframes

PASS_MOB + + +

+

Pass mobs

PASS_PROJECTILE + + +

+

projectiles can pass

PASS_TANK + + +

+

when jumping, mobs can pass onto tanks

PASS_THROW + + +

+

you can throw past

PASS_WALKOVER + + +

+

Mobs can walk freely between turfs with walkover flagged objects

PASS_XENO + + +

+

Pass xenos

PREVENT_CLICK_UNDER + + +

+

Prevent clicking things below it on the same turf

PREVENT_CONTENTS_EXPLOSION + + +

+

Does not cascade explosions to its contents.

SHUTTLE_IMMUNE + + +

+

This atom will not be qdeled when a shuttle lands on it; it will just move onto the shuttle tile. It will stay on the ground when the shuttle takes off

SLOT_DRAW_ORDER + + +

+

Each slot you can draw from, used and messed with in your preferences.

SYNTH_RESTRICTED + + +

+

Prevents synths from wearing items with this flag

TWOHANDED + + +

+

The item is twohanded.

USED_GHMME + + +

+

If you have used the GHMME

VALID_EQUIP_SLOTS + + +

+

A list of equip slots that are valid for quick equip preferences

WIELDED + + +

+

The item is wielded with both hands.

+ + + diff --git a/code/__DEFINES/factions.html b/code/__DEFINES/factions.html new file mode 100644 index 0000000000000..d8a3643005a59 --- /dev/null +++ b/code/__DEFINES/factions.html @@ -0,0 +1,47 @@ + + + + + + + code/__DEFINES/factions.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/factions.dm + +

+ + + + + +
ALIGNEMENT_NEUTRALMob with a neutral alignement cannot be sold by anyone
ALIGNEMENT_HOSTILEMob with an hostile alignement can be sold by everyone except members of their own faction
ALIGNEMENT_FRIENDLYMob with friendly alignement can only be sold by mob of the hostile or neutral alignement
TGMC_LOYALIST_IFFIff signals for factions

Define Details

+

ALIGNEMENT_FRIENDLY + + +

+

Mob with friendly alignement can only be sold by mob of the hostile or neutral alignement

ALIGNEMENT_HOSTILE + + +

+

Mob with an hostile alignement can be sold by everyone except members of their own faction

ALIGNEMENT_NEUTRAL + + +

+

Mob with a neutral alignement cannot be sold by anyone

TGMC_LOYALIST_IFF + + +

+

Iff signals for factions

+ + + diff --git a/code/__DEFINES/fire_support.html b/code/__DEFINES/fire_support.html new file mode 100644 index 0000000000000..72f4afdcc76f2 --- /dev/null +++ b/code/__DEFINES/fire_support.html @@ -0,0 +1,137 @@ + + + + + + + code/__DEFINES/fire_support.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/fire_support.dm + +

+ + + + + + + + + + + + + + + + + + + + + + + +
FIRESUPPORT_AVAILABLECan this firesupport type be used
FIRESUPPORT_TYPE_GUNGAU gun run
FIRESUPPORT_TYPE_LASERLaser beam run
FIRESUPPORT_TYPE_ROCKETSRocket barrage
FIRESUPPORT_TYPE_CRUISE_MISSILECruise missile strike
FIRESUPPORT_TYPE_SENTRY_PODSentry drop pod
FIRESUPPORT_TYPE_SUPPLY_PODSupply drop pod
FIRESUPPORT_TYPE_VOLKITEVolkite gun run
FIRESUPPORT_TYPE_INCEND_ROCKETSSOM Incendiary rocket barrage
FIRESUPPORT_TYPE_RAD_MISSILERadioactive missile
FIRESUPPORT_TYPE_HE_MORTARHE Mortar barrage
FIRESUPPORT_TYPE_INCENDIARY_MORTARIncendiary mortar barrage
FIRESUPPORT_TYPE_SMOKE_MORTARSmoke mortar barrage
FIRESUPPORT_TYPE_ACID_SMOKE_MORTARAcid smoke mortar barrage
FIRESUPPORT_TYPE_HE_MORTAR_SOMSOM HE Mortar barrage
FIRESUPPORT_TYPE_INCENDIARY_MORTAR_SOMSOM Incendiary mortar barrage
FIRESUPPORT_TYPE_SMOKE_MORTAR_SOMSOM Smoke mortar barrage
FIRESUPPORT_TYPE_SATRAPINE_SMOKE_MORTARSatrapine smoke mortar barrage
FIRESUPPORT_TYPE_TELE_COPETeleported COPE sentry
FIRESUPPORT_TYPE_GUN_UNLIMITEDUnlimited GAU for regular gamemodes
FIRESUPPORT_TYPE_ROCKETS_UNLIMITEDUnlimited rocket barrage for regular gamemodes
FIRESUPPORT_TYPE_CRUISE_MISSILE_UNLIMITEDUnlimited cruise missile for regular gamemodes

Define Details

+

FIRESUPPORT_AVAILABLE + + +

+

Can this firesupport type be used

FIRESUPPORT_TYPE_ACID_SMOKE_MORTAR + + +

+

Acid smoke mortar barrage

FIRESUPPORT_TYPE_CRUISE_MISSILE + + +

+

Cruise missile strike

FIRESUPPORT_TYPE_CRUISE_MISSILE_UNLIMITED + + +

+

Unlimited cruise missile for regular gamemodes

FIRESUPPORT_TYPE_GUN + + +

+

GAU gun run

FIRESUPPORT_TYPE_GUN_UNLIMITED + + +

+

Unlimited GAU for regular gamemodes

FIRESUPPORT_TYPE_HE_MORTAR + + +

+

HE Mortar barrage

FIRESUPPORT_TYPE_HE_MORTAR_SOM + + +

+

SOM HE Mortar barrage

FIRESUPPORT_TYPE_INCENDIARY_MORTAR + + +

+

Incendiary mortar barrage

FIRESUPPORT_TYPE_INCENDIARY_MORTAR_SOM + + +

+

SOM Incendiary mortar barrage

FIRESUPPORT_TYPE_INCEND_ROCKETS + + +

+

SOM Incendiary rocket barrage

FIRESUPPORT_TYPE_LASER + + +

+

Laser beam run

FIRESUPPORT_TYPE_RAD_MISSILE + + +

+

Radioactive missile

FIRESUPPORT_TYPE_ROCKETS + + +

+

Rocket barrage

FIRESUPPORT_TYPE_ROCKETS_UNLIMITED + + +

+

Unlimited rocket barrage for regular gamemodes

FIRESUPPORT_TYPE_SATRAPINE_SMOKE_MORTAR + + +

+

Satrapine smoke mortar barrage

FIRESUPPORT_TYPE_SENTRY_POD + + +

+

Sentry drop pod

FIRESUPPORT_TYPE_SMOKE_MORTAR + + +

+

Smoke mortar barrage

FIRESUPPORT_TYPE_SMOKE_MORTAR_SOM + + +

+

SOM Smoke mortar barrage

FIRESUPPORT_TYPE_SUPPLY_POD + + +

+

Supply drop pod

FIRESUPPORT_TYPE_TELE_COPE + + +

+

Teleported COPE sentry

FIRESUPPORT_TYPE_VOLKITE + + +

+

Volkite gun run

+ + + diff --git a/code/__DEFINES/flags.html b/code/__DEFINES/flags.html new file mode 100644 index 0000000000000..e70d4265e0006 --- /dev/null +++ b/code/__DEFINES/flags.html @@ -0,0 +1,62 @@ + + + + + + + code/__DEFINES/flags.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/flags.dm + +

+ + + + + + + + +
MAX_BITFLAG_DIGITS33554431 (2^24 - 1) is the maximum value our bitflags can reach.
ALL_CARDINALSAll the cardinal direction bitflags.
UPDATE_NAMEUpdate the atom's name
UPDATE_DESCUpdate the atom's desc
UPDATE_ICON_STATEUpdate the atom's icon state
UPDATE_OVERLAYSUpdate the atom's overlays
UPDATE_ICONUpdate the atom's icon

Define Details

+

ALL_CARDINALS + + +

+

All the cardinal direction bitflags.

MAX_BITFLAG_DIGITS + + +

+

33554431 (2^24 - 1) is the maximum value our bitflags can reach.

UPDATE_DESC + + +

+

Update the atom's desc

UPDATE_ICON + + +

+

Update the atom's icon

UPDATE_ICON_STATE + + +

+

Update the atom's icon state

UPDATE_NAME + + +

+

Update the atom's name

UPDATE_OVERLAYS + + +

+

Update the atom's overlays

+ + + diff --git a/code/__DEFINES/fonts.html b/code/__DEFINES/fonts.html new file mode 100644 index 0000000000000..6f3834ea581c4 --- /dev/null +++ b/code/__DEFINES/fonts.html @@ -0,0 +1,67 @@ + + + + + + + code/__DEFINES/fonts.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/fonts.dm + +

+ + + + + + + + + +
PEN_FONTFont used by regular pens
FOUNTAIN_PEN_FONTFont used by fancy pens
CRAYON_FONTFont used by crayons
PRINTER_FONTFont used by printers
CHARCOAL_FONTFont used by charcoal pens
SIGNATURE_FONTFont used when signing on paper.
EMOJI_SETEmoji icon set TODO make this used everywhere properly
INCLUDE_ACInclude leading A width and trailing C width in GetWidth() or in DrawText()

Define Details

+

CHARCOAL_FONT + + +

+

Font used by charcoal pens

CRAYON_FONT + + +

+

Font used by crayons

EMOJI_SET + + +

+

Emoji icon set TODO make this used everywhere properly

FOUNTAIN_PEN_FONT + + +

+

Font used by fancy pens

INCLUDE_AC + + +

+

Include leading A width and trailing C width in GetWidth() or in DrawText()

PEN_FONT + + +

+

Font used by regular pens

PRINTER_FONT + + +

+

Font used by printers

SIGNATURE_FONT + + +

+

Font used when signing on paper.

+ + + diff --git a/code/__DEFINES/food.html b/code/__DEFINES/food.html new file mode 100644 index 0000000000000..eeb28d5cde09e --- /dev/null +++ b/code/__DEFINES/food.html @@ -0,0 +1,37 @@ + + + + + + + code/__DEFINES/food.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/food.dm + +

+ + + +
FOOD_FLAGSA list of food type names, in order of their flags
FOOD_FLAGS_ICIC meaning (more or less) for food flags

Define Details

+

FOOD_FLAGS + + +

+

A list of food type names, in order of their flags

FOOD_FLAGS_IC + + +

+

IC meaning (more or less) for food flags

+ + + diff --git a/code/__DEFINES/generators.html b/code/__DEFINES/generators.html new file mode 100644 index 0000000000000..71e5024ed3c99 --- /dev/null +++ b/code/__DEFINES/generators.html @@ -0,0 +1,32 @@ + + + + + + + code/__DEFINES/generators.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/generators.dm + +

+ + +
P_DATA_GENERATORparticle editor var modifiers

Define Details

+

P_DATA_GENERATOR + + +

+

particle editor var modifiers

+ + + diff --git a/code/__DEFINES/hud.html b/code/__DEFINES/hud.html new file mode 100644 index 0000000000000..99b2baa399c37 --- /dev/null +++ b/code/__DEFINES/hud.html @@ -0,0 +1,68 @@ + + + + + + + code/__DEFINES/hud.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/hud.dm + +

+ + + + + + + + + +
HUD_STYLE_STANDARDStandard hud
HUD_STYLE_REDUCEDReduced hud (just hands and intent switcher)
HUD_STYLE_NOHUDNo hud (for screenshots)
HUD_VERSIONSUsed in show_hud(); Please ensure this is the same as the maximum index.
APPEARANCE_UI_IGNORE_ALPHAUsed for progress bars and chat messages
APPEARANCE_UIUsed for HUD objects
PLANE_GROUP_MAINThe primary group, holds everything on the main window
PLANE_GROUP_POPUP_WINDOWA secondary group, used when a client views a generic window

Define Details

+

APPEARANCE_UI + + +

+

Used for HUD objects

APPEARANCE_UI_IGNORE_ALPHA + + +

+

Used for progress bars and chat messages

HUD_STYLE_NOHUD + + +

+

No hud (for screenshots)

HUD_STYLE_REDUCED + + +

+

Reduced hud (just hands and intent switcher)

HUD_STYLE_STANDARD + + +

+

Standard hud

HUD_VERSIONS + + +

+

Used in show_hud(); Please ensure this is the same as the maximum index.

PLANE_GROUP_MAIN + + +

+

The primary group, holds everything on the main window

PLANE_GROUP_POPUP_WINDOW + + + +

+

A secondary group, used when a client views a generic window

+ + + diff --git a/code/__DEFINES/icon_smoothing.html b/code/__DEFINES/icon_smoothing.html new file mode 100644 index 0000000000000..b348ece9c7655 --- /dev/null +++ b/code/__DEFINES/icon_smoothing.html @@ -0,0 +1,386 @@ + + + + + + + code/__DEFINES/icon_smoothing.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/icon_smoothing.dm + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SMOOTH_CORNERSSmoothing system in where adjacencies are calculated and used to build an image by mounting each corner at runtime.
SMOOTH_BITMASKSmoothing system in where adjacencies are calculated and used to select a pre-baked icon_state, encoded by bitmasking.
SMOOTH_DIAGONAL_CORNERSAtom has diagonal corners, with underlays under them.
SMOOTH_BORDERAtom will smooth with the borders of the map.
SMOOTH_QUEUEDAtom is currently queued to smooth.
SMOOTH_OBJSmooths with objects, and will thus need to scan turfs for contents.
S_TURF*SMOOTHING GROUPS
SMOOTH_GROUP_TURF_OPENturf/open
SMOOTH_GROUP_TURF_CHASMturf/open/chasm, /turf/open/floor/fakepit
SMOOTH_GROUP_FLOOR_LAVAturf/open/lava/smooth
SMOOTH_GROUP_FLOOR_TRANSPARENT_GLASSturf/open/transparent/glass
SMOOTH_GROUP_OPEN_FLOORturf/open/floor
SMOOTH_GROUP_FLOOR_ASHturf/open/floor/plating/ashplanet/ash
SMOOTH_GROUP_FLOOR_ASH_ROCKYturf/open/floor/plating/ashplanet/rocky
SMOOTH_GROUP_FLOOR_ICEturf/open/floor/plating/ice
SMOOTH_GROUP_FLOOR_SNOWEDturf/open/floor/plating/snowed
SMOOTH_GROUP_CARPETturf/open/floor/carpet
SMOOTH_GROUP_CARPET_BLACKturf/open/floor/carpet/black
SMOOTH_GROUP_CARPET_BLUEturf/open/floor/carpet/blue
SMOOTH_GROUP_CARPET_CYANturf/open/floor/carpet/cyan
SMOOTH_GROUP_CARPET_GREENturf/open/floor/carpet/green
SMOOTH_GROUP_CARPET_ORANGEturf/open/floor/carpet/orange
SMOOTH_GROUP_CARPET_PURPLEturf/open/floor/carpet/purple
SMOOTH_GROUP_CARPET_REDturf/open/floor/carpet/red
SMOOTH_GROUP_CARPET_ROYAL_BLACKturf/open/floor/carpet/royalblack
SMOOTH_GROUP_CARPET_ROYAL_BLUEturf/open/floor/carpet/royalblue
SMOOTH_GROUP_CLOSED_TURFSturf/closed
SMOOTH_GROUP_MATERIAL_WALLSturf/closed/wall/material
SMOOTH_GROUP_SYNDICATE_WALLSturf/closed/wall/r_wall/syndicate
SMOOTH_GROUP_HOTEL_WALLSturf/closed/indestructible/hotelwall
SMOOTH_GROUP_MINERAL_WALLSturf/closed/mineral, /turf/closed/indestructible
SMOOTH_GROUP_BOSS_WALLSturf/closed/indestructible/riveted/boss
SMOOTH_GROUP_SURVIVAL_TITANIUM_WALLSturf/closed/wall/mineral/titanium/survival
SMOOTH_GROUP_SURVIVAL_TITANIUM_WALLS_TWOturf/closed/wall/mineral/titanium/survival
SMOOTH_GROUP_WALLSturf/closed/wall, /obj/structure/falsewall
SMOOTH_GROUP_URANIUM_WALLSturf/closed/wall/mineral/uranium, /obj/structure/falsewall/uranium
SMOOTH_GROUP_GOLD_WALLSturf/closed/wall/mineral/gold, /obj/structure/falsewall/gold
SMOOTH_GROUP_SILVER_WALLSturf/closed/wall/mineral/silver, /obj/structure/falsewall/silver
SMOOTH_GROUP_DIAMOND_WALLSturf/closed/wall/mineral/diamond, /obj/structure/falsewall/diamond
SMOOTH_GROUP_PLASMA_WALLSturf/closed/wall/mineral/plasma, /obj/structure/falsewall/plasma
SMOOTH_GROUP_BANANIUM_WALLSturf/closed/wall/mineral/bananium, /obj/structure/falsewall/bananium
SMOOTH_GROUP_SANDSTONE_WALLSturf/closed/wall/mineral/sandstone, /obj/structure/falsewall/sandstone
SMOOTH_GROUP_WOOD_WALLSturf/closed/wall/mineral/wood, /obj/structure/falsewall/wood
SMOOTH_GROUP_IRON_WALLSturf/closed/wall/mineral/iron, /obj/structure/falsewall/iron
SMOOTH_GROUP_ABDUCTOR_WALLSturf/closed/wall/mineral/abductor, /obj/structure/falsewall/abductor
SMOOTH_GROUP_TITANIUM_WALLSturf/closed/wall/mineral/titanium, /obj/structure/falsewall/titanium
SMOOTH_GROUP_PLASTITANIUM_WALLSturf/closed/wall/mineral/plastitanium, /obj/structure/falsewall/plastitanium
SMOOTH_GROUP_SURVIVAL_TIANIUM_PODturf/closed/wall/mineral/titanium/survival/pod, /obj/machinery/door/airlock/survival_pod, /obj/structure/window/shuttle/survival_pod
SMOOTH_GROUP_HIERO_WALLobj/effect/temp_visual/elite_tumor_wall, /obj/effect/temp_visual/hierophant/wall
SMOOTH_GROUP_PAPERFRAMEobj/structure/window/paperframe, /obj/structure/mineral_door/paperframe
SMOOTH_GROUP_WINDOW_FULLTILEobj/structure/window/fulltile, /obj/structure/window/reinforced/fulltile, /obj/structure/window/reinforced/tinted/fulltile, /obj/structure/window/plasma/fulltile, /obj/structure/window/plasma/reinforced/fulltile
SMOOTH_GROUP_WINDOW_FULLTILE_BRONZEobj/structure/window/bronze/fulltile
SMOOTH_GROUP_WINDOW_FULLTILE_PLASTITANIUMturf/closed/indestructible/opsglass, /obj/structure/window/plasma/reinforced/plastitanium
SMOOTH_GROUP_WINDOW_FULLTILE_SHUTTLEobj/structure/window/shuttle
SMOOTH_GROUP_AIRLOCKobj/structure/lattice
SMOOTH_GROUP_WOOD_TABLESobj/structure/table/wood
SMOOTH_GROUP_FANCY_WOOD_TABLESobj/structure/table/wood/fancy
SMOOTH_GROUP_BRONZE_TABLESobj/structure/table/bronze
SMOOTH_GROUP_ABDUCTOR_TABLESobj/structure/table/abductor
SMOOTH_GROUP_GLASS_TABLESobj/structure/table/glass
SMOOTH_GROUP_ALIEN_NESTobj/structure/bed/nest
SMOOTH_GROUP_ALIEN_RESINobj/structure/alien/resin
SMOOTH_GROUP_ALIEN_WALLSobj/structure/alien/resin/wall, /obj/structure/alien/resin/membrane
SMOOTH_GROUP_ALIEN_WEEDSobj/structure/alien/weeds
SMOOTH_GROUP_SECURITY_BARRICADEobj/structure/barricade/security
SMOOTH_GROUP_SANDBAGSobj/structure/barricade/sandbags
SMOOTH_GROUP_HEDGE_FLUFFobj/structure/fluff/hedge
SMOOTH_GROUP_SHUTTLE_PARTSobj/structure/window/shuttle, /obj/structure/shuttle/engine/heater
SMOOTH_GROUP_CLEANABLE_DIRTobj/effect/decal/cleanable/dirt

Define Details

+

SMOOTH_BITMASK + + +

+

Smoothing system in where adjacencies are calculated and used to select a pre-baked icon_state, encoded by bitmasking.

SMOOTH_BORDER + + +

+

Atom will smooth with the borders of the map.

SMOOTH_CORNERS + + +

+

Smoothing system in where adjacencies are calculated and used to build an image by mounting each corner at runtime.

SMOOTH_DIAGONAL_CORNERS + + +

+

Atom has diagonal corners, with underlays under them.

SMOOTH_GROUP_ABDUCTOR_TABLES + + +

+

obj/structure/table/abductor

SMOOTH_GROUP_ABDUCTOR_WALLS + + +

+

turf/closed/wall/mineral/abductor, /obj/structure/falsewall/abductor

SMOOTH_GROUP_AIRLOCK + + +

+

obj/structure/lattice

SMOOTH_GROUP_ALIEN_NEST + + +

+

obj/structure/bed/nest

SMOOTH_GROUP_ALIEN_RESIN + + +

+

obj/structure/alien/resin

SMOOTH_GROUP_ALIEN_WALLS + + +

+

obj/structure/alien/resin/wall, /obj/structure/alien/resin/membrane

SMOOTH_GROUP_ALIEN_WEEDS + + +

+

obj/structure/alien/weeds

SMOOTH_GROUP_BANANIUM_WALLS + + +

+

turf/closed/wall/mineral/bananium, /obj/structure/falsewall/bananium

SMOOTH_GROUP_BOSS_WALLS + + +

+

turf/closed/indestructible/riveted/boss

SMOOTH_GROUP_BRONZE_TABLES + + +

+

obj/structure/table/bronze

SMOOTH_GROUP_CARPET + + +

+

turf/open/floor/carpet

SMOOTH_GROUP_CARPET_BLACK + + +

+

turf/open/floor/carpet/black

SMOOTH_GROUP_CARPET_BLUE + + +

+

turf/open/floor/carpet/blue

SMOOTH_GROUP_CARPET_CYAN + + +

+

turf/open/floor/carpet/cyan

SMOOTH_GROUP_CARPET_GREEN + + +

+

turf/open/floor/carpet/green

SMOOTH_GROUP_CARPET_ORANGE + + +

+

turf/open/floor/carpet/orange

SMOOTH_GROUP_CARPET_PURPLE + + +

+

turf/open/floor/carpet/purple

SMOOTH_GROUP_CARPET_RED + + +

+

turf/open/floor/carpet/red

SMOOTH_GROUP_CARPET_ROYAL_BLACK + + +

+

turf/open/floor/carpet/royalblack

SMOOTH_GROUP_CARPET_ROYAL_BLUE + + +

+

turf/open/floor/carpet/royalblue

SMOOTH_GROUP_CLEANABLE_DIRT + + +

+

obj/effect/decal/cleanable/dirt

SMOOTH_GROUP_CLOSED_TURFS + + +

+

turf/closed

SMOOTH_GROUP_DIAMOND_WALLS + + +

+

turf/closed/wall/mineral/diamond, /obj/structure/falsewall/diamond

SMOOTH_GROUP_FANCY_WOOD_TABLES + + +

+

obj/structure/table/wood/fancy

SMOOTH_GROUP_FLOOR_ASH + + +

+

turf/open/floor/plating/ashplanet/ash

SMOOTH_GROUP_FLOOR_ASH_ROCKY + + +

+

turf/open/floor/plating/ashplanet/rocky

SMOOTH_GROUP_FLOOR_ICE + + +

+

turf/open/floor/plating/ice

SMOOTH_GROUP_FLOOR_LAVA + + +

+

turf/open/lava/smooth

SMOOTH_GROUP_FLOOR_SNOWED + + +

+

turf/open/floor/plating/snowed

SMOOTH_GROUP_FLOOR_TRANSPARENT_GLASS + + +

+

turf/open/transparent/glass

SMOOTH_GROUP_GLASS_TABLES + + +

+

obj/structure/table/glass

SMOOTH_GROUP_GOLD_WALLS + + +

+

turf/closed/wall/mineral/gold, /obj/structure/falsewall/gold

SMOOTH_GROUP_HEDGE_FLUFF + + +

+

obj/structure/fluff/hedge

SMOOTH_GROUP_HIERO_WALL + + +

+

obj/effect/temp_visual/elite_tumor_wall, /obj/effect/temp_visual/hierophant/wall

SMOOTH_GROUP_HOTEL_WALLS + + +

+

turf/closed/indestructible/hotelwall

SMOOTH_GROUP_IRON_WALLS + + +

+

turf/closed/wall/mineral/iron, /obj/structure/falsewall/iron

SMOOTH_GROUP_MATERIAL_WALLS + + +

+

turf/closed/wall/material

SMOOTH_GROUP_MINERAL_WALLS + + +

+

turf/closed/mineral, /turf/closed/indestructible

SMOOTH_GROUP_OPEN_FLOOR + + +

+

turf/open/floor

SMOOTH_GROUP_PAPERFRAME + + +

+

obj/structure/window/paperframe, /obj/structure/mineral_door/paperframe

SMOOTH_GROUP_PLASMA_WALLS + + +

+

turf/closed/wall/mineral/plasma, /obj/structure/falsewall/plasma

SMOOTH_GROUP_PLASTITANIUM_WALLS + + +

+

turf/closed/wall/mineral/plastitanium, /obj/structure/falsewall/plastitanium

SMOOTH_GROUP_SANDBAGS + + +

+

obj/structure/barricade/sandbags

SMOOTH_GROUP_SANDSTONE_WALLS + + +

+

turf/closed/wall/mineral/sandstone, /obj/structure/falsewall/sandstone

SMOOTH_GROUP_SECURITY_BARRICADE + + +

+

obj/structure/barricade/security

SMOOTH_GROUP_SHUTTLE_PARTS + + +

+

obj/structure/window/shuttle, /obj/structure/shuttle/engine/heater

SMOOTH_GROUP_SILVER_WALLS + + +

+

turf/closed/wall/mineral/silver, /obj/structure/falsewall/silver

SMOOTH_GROUP_SURVIVAL_TIANIUM_POD + + +

+

turf/closed/wall/mineral/titanium/survival/pod, /obj/machinery/door/airlock/survival_pod, /obj/structure/window/shuttle/survival_pod

SMOOTH_GROUP_SURVIVAL_TITANIUM_WALLS + + +

+

turf/closed/wall/mineral/titanium/survival

SMOOTH_GROUP_SURVIVAL_TITANIUM_WALLS_TWO + + +

+

turf/closed/wall/mineral/titanium/survival

SMOOTH_GROUP_SYNDICATE_WALLS + + +

+

turf/closed/wall/r_wall/syndicate

SMOOTH_GROUP_TITANIUM_WALLS + + +

+

turf/closed/wall/mineral/titanium, /obj/structure/falsewall/titanium

SMOOTH_GROUP_TURF_CHASM + + +

+

turf/open/chasm, /turf/open/floor/fakepit

SMOOTH_GROUP_TURF_OPEN + + +

+

turf/open

SMOOTH_GROUP_URANIUM_WALLS + + +

+

turf/closed/wall/mineral/uranium, /obj/structure/falsewall/uranium

SMOOTH_GROUP_WALLS + + +

+

turf/closed/wall, /obj/structure/falsewall

SMOOTH_GROUP_WINDOW_FULLTILE + + +

+

obj/structure/window/fulltile, /obj/structure/window/reinforced/fulltile, /obj/structure/window/reinforced/tinted/fulltile, /obj/structure/window/plasma/fulltile, /obj/structure/window/plasma/reinforced/fulltile

SMOOTH_GROUP_WINDOW_FULLTILE_BRONZE + + +

+

obj/structure/window/bronze/fulltile

SMOOTH_GROUP_WINDOW_FULLTILE_PLASTITANIUM + + +

+

turf/closed/indestructible/opsglass, /obj/structure/window/plasma/reinforced/plastitanium

SMOOTH_GROUP_WINDOW_FULLTILE_SHUTTLE + + +

+

obj/structure/window/shuttle

SMOOTH_GROUP_WOOD_TABLES + + +

+

obj/structure/table/wood

SMOOTH_GROUP_WOOD_WALLS + + +

+

turf/closed/wall/mineral/wood, /obj/structure/falsewall/wood

SMOOTH_OBJ + + +

+

Smooths with objects, and will thus need to scan turfs for contents.

SMOOTH_QUEUED + + +

+

Atom is currently queued to smooth.

S_TURF + + + +

+

*SMOOTHING GROUPS

+
+ + + diff --git a/code/__DEFINES/implants.html b/code/__DEFINES/implants.html new file mode 100644 index 0000000000000..e1974b2ee13a6 --- /dev/null +++ b/code/__DEFINES/implants.html @@ -0,0 +1,47 @@ + + + + + + + code/__DEFINES/implants.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/implants.dm + +

+ + + + + +
ACTIVATE_ON_HEARSome kind of hearing/voice activation
BENEFICIAL_IMPLANTThe implant is something you want
DUPLICATE_IMPLANT_ALLOWEDCan have more than one of the same implant in a limb
HIGHLANDER_IMPLANTOnly one implant can be in a limb

Define Details

+

ACTIVATE_ON_HEAR + + +

+

Some kind of hearing/voice activation

BENEFICIAL_IMPLANT + + +

+

The implant is something you want

DUPLICATE_IMPLANT_ALLOWED + + +

+

Can have more than one of the same implant in a limb

HIGHLANDER_IMPLANT + + +

+

Only one implant can be in a limb

+ + + diff --git a/code/__DEFINES/instruments.html b/code/__DEFINES/instruments.html new file mode 100644 index 0000000000000..c756a3123c618 --- /dev/null +++ b/code/__DEFINES/instruments.html @@ -0,0 +1,57 @@ + + + + + + + code/__DEFINES/instruments.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/instruments.dm + +

+ + + + + + + +
CHANNELS_PER_INSTRUMENTMax number of playing notes per instrument.
INSTRUMENT_DISTANCE_FALLOFF_BUFFDistance multiplier that makes us not be impacted by 3d sound as much. This is a multiplier so lower it is the closer we will pretend to be to people.
INSTRUMENT_DISTANCE_NO_FALLOFFHow many tiles instruments have no falloff for
INSTRUMENT_MAX_TOTAL_SUSTAINMaximum length a note should ever go for
INSTRUMENT_EXP_FALLOFF_MINThese are per decisecond.
INSTRUMENT_MIN_SUSTAIN_DROPOFFMinimum volume for when the sound is considered dead.

Define Details

+

CHANNELS_PER_INSTRUMENT + + +

+

Max number of playing notes per instrument.

INSTRUMENT_DISTANCE_FALLOFF_BUFF + + +

+

Distance multiplier that makes us not be impacted by 3d sound as much. This is a multiplier so lower it is the closer we will pretend to be to people.

INSTRUMENT_DISTANCE_NO_FALLOFF + + +

+

How many tiles instruments have no falloff for

INSTRUMENT_EXP_FALLOFF_MIN + + +

+

These are per decisecond.

INSTRUMENT_MAX_TOTAL_SUSTAIN + + +

+

Maximum length a note should ever go for

INSTRUMENT_MIN_SUSTAIN_DROPOFF + + +

+

Minimum volume for when the sound is considered dead.

+ + + diff --git a/code/__DEFINES/items.html b/code/__DEFINES/items.html new file mode 100644 index 0000000000000..d9b458cd87360 --- /dev/null +++ b/code/__DEFINES/items.html @@ -0,0 +1,37 @@ + + + + + + + code/__DEFINES/items.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/items.dm + +

+ + + +
WEIGHT_CLASS_TEXTThe text for weight class data lists (item examine)
WEIGHT_CLASS_TOOLTIPThe tooltip desc for weight class data lists (item examine)

Define Details

+

WEIGHT_CLASS_TEXT + + +

+

The text for weight class data lists (item examine)

WEIGHT_CLASS_TOOLTIP + + +

+

The tooltip desc for weight class data lists (item examine)

+ + + diff --git a/code/__DEFINES/jobs.html b/code/__DEFINES/jobs.html new file mode 100644 index 0000000000000..a62bbe02cf3db --- /dev/null +++ b/code/__DEFINES/jobs.html @@ -0,0 +1,57 @@ + + + + + + + code/__DEFINES/jobs.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/jobs.dm + +

+ + + + + + + +
JOB_FLAG_LOUDER_TTSJob has a TTS volume bonus
XENO_MARINE_RATIOHow many marines per xeno at optimal ratio
DEFAULT_TOTAL_BUY_POINTSHow many points a marine can spend in job specific vendors by default
MEDIC_TOTAL_BUY_POINTSHow many points a medic can spend on pills
ENGINEER_TOTAL_BUY_POINTSHow many points an engineer can spend
COMMANDER_TOTAL_BUY_POINTSHow many points the field commander can spend

Define Details

+

COMMANDER_TOTAL_BUY_POINTS + + +

+

How many points the field commander can spend

DEFAULT_TOTAL_BUY_POINTS + + +

+

How many points a marine can spend in job specific vendors by default

ENGINEER_TOTAL_BUY_POINTS + + +

+

How many points an engineer can spend

JOB_FLAG_LOUDER_TTS + + +

+

Job has a TTS volume bonus

MEDIC_TOTAL_BUY_POINTS + + +

+

How many points a medic can spend on pills

XENO_MARINE_RATIO + + +

+

How many marines per xeno at optimal ratio

+ + + diff --git a/code/__DEFINES/layers.html b/code/__DEFINES/layers.html new file mode 100644 index 0000000000000..e7166c517c4a2 --- /dev/null +++ b/code/__DEFINES/layers.html @@ -0,0 +1,91 @@ + + + + + + + code/__DEFINES/layers.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/layers.dm + +

+ + + + + + + + + + + + + +
SEETHROUGH_PLANESlightly above the game plane but does not catch mouse clicks. Useful for certain visuals that should be clicked through, like seethrough trees
ABOVE_MOB_PLATFORM_LAYERfor platform corner structures
EMISSIVE_PLANEThis plane masks out lighting to create an "emissive" effect, ie for glowing lights in otherwise dark areas.
EMISSIVE_RENDER_TARGETThe render target used by the emissive layer.
EMISSIVE_LAYER_UNBLOCKABLEThe layer you should use if you really don't want an emissive overlay to be blocked.
BALLOON_CHAT_PLANEPlane for balloon text (text that fades up)
TYPING_LAYERBubble for typing indicators
PLANE_RANGEThe range unique planes can be in +Try and keep this to a nice whole number, so it's easy to look at a plane var and know what's going on
PLANE_MASTERS_GAMEPlane master controller keys
PLANE_CRITICAL_DISPLAYThis plane master will not go away if its layer is culled. useful for preserving effects
PLANE_CRITICAL_NO_RELAYThis plane master will temporarially remove relays to all other planes +Allows us to retain the effects of a plane while cutting off the changes it makes
PLANE_CRITICAL_CUT_RENDERWe assume this plane master has a render target starting with *, it'll be removed, forcing it to render in place

Define Details

+

ABOVE_MOB_PLATFORM_LAYER + + +

+

for platform corner structures

BALLOON_CHAT_PLANE + + +

+

Plane for balloon text (text that fades up)

EMISSIVE_LAYER_UNBLOCKABLE + + +

+

The layer you should use if you really don't want an emissive overlay to be blocked.

EMISSIVE_PLANE + + +

+

This plane masks out lighting to create an "emissive" effect, ie for glowing lights in otherwise dark areas.

EMISSIVE_RENDER_TARGET + + +

+

The render target used by the emissive layer.

PLANE_CRITICAL_CUT_RENDER + + +

+

We assume this plane master has a render target starting with *, it'll be removed, forcing it to render in place

PLANE_CRITICAL_DISPLAY + + +

+

This plane master will not go away if its layer is culled. useful for preserving effects

PLANE_CRITICAL_NO_RELAY + + +

+

This plane master will temporarially remove relays to all other planes +Allows us to retain the effects of a plane while cutting off the changes it makes

PLANE_MASTERS_GAME + + +

+

Plane master controller keys

PLANE_RANGE + + +

+

The range unique planes can be in +Try and keep this to a nice whole number, so it's easy to look at a plane var and know what's going on

SEETHROUGH_PLANE + + +

+

Slightly above the game plane but does not catch mouse clicks. Useful for certain visuals that should be clicked through, like seethrough trees

TYPING_LAYER + + +

+

Bubble for typing indicators

+ + + diff --git a/code/__DEFINES/lighting.html b/code/__DEFINES/lighting.html new file mode 100644 index 0000000000000..4ca806db5f677 --- /dev/null +++ b/code/__DEFINES/lighting.html @@ -0,0 +1,116 @@ + + + + + + + code/__DEFINES/lighting.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/lighting.dm + +

+ + + + + + + + + + + + + + + + + + +
NO_LIGHT_SUPPORTObject doesn't use any of the light systems. Should be changed to add a light source to the object.
STATIC_LIGHTLight made with the lighting datums, applying a matrix.
MOVABLE_LIGHTLight made by masking the lighting darkness plane.
HYBRID_LIGHTA mix of the above, cheaper on moving items than dynamic, but heavier on rendering than movable
LIGHTING_ICON_BIGicon used for lighting shading effects
EMISSIVE_BLOCK_GENERICUses vis_overlays to leverage caching so that very few new items need to be made for the overlay. For anything that doesn't change outline or opaque area much or at all.
EMISSIVE_BLOCK_UNIQUEUses a dedicated render_target object to copy the entire appearance in real time to the blocking layer. For things that can change in appearance a lot from the base state, like humans.
EMISSIVE_BLOCK_NONEDon't block any emissives. Useful for things like, pieces of paper?
EMISSIVE_COLORThe color matrix applied to all emissive overlays. Should be solely dependent on alpha and not have RGB overlap with EM_BLOCK_COLOR.
EM_BLOCK_COLORThe color matrix applied to all emissive blockers. Should be solely dependent on alpha and not have RGB overlap with EMISSIVE_COLOR.
EMISSIVE_APPEARANCE_FLAGSA set of appearance flags applied to all emissive and emissive blocker overlays.
EM_MASK_MATRIXThe color matrix used to mask out emissive blockers on the emissive plane. Alpha should default to zero, be solely dependent on the RGB value of EMISSIVE_COLOR, and be independant of the RGB value of EM_BLOCK_COLOR.
GETREDPARTReturns the red part of a #RRGGBB hex sequence as number
GETGREENPARTReturns the green part of a #RRGGBB hex sequence as number
GETBLUEPARTReturns the blue part of a #RRGGBB hex sequence as number
PARSE_LIGHT_COLORParse the hexadecimal color into lumcounts of each perspective.
LIGHTING_SOFT_THRESHOLDIf the max of the lighting lumcounts of each spectrum drops below this, disable luminosity on the lighting objects. Set to zero to disable soft lighting. Luminosity changes then work if it's lit at all.

Define Details

+

EMISSIVE_APPEARANCE_FLAGS + + +

+

A set of appearance flags applied to all emissive and emissive blocker overlays.

EMISSIVE_BLOCK_GENERIC + + +

+

Uses vis_overlays to leverage caching so that very few new items need to be made for the overlay. For anything that doesn't change outline or opaque area much or at all.

EMISSIVE_BLOCK_NONE + + +

+

Don't block any emissives. Useful for things like, pieces of paper?

EMISSIVE_BLOCK_UNIQUE + + +

+

Uses a dedicated render_target object to copy the entire appearance in real time to the blocking layer. For things that can change in appearance a lot from the base state, like humans.

EMISSIVE_COLOR + + +

+

The color matrix applied to all emissive overlays. Should be solely dependent on alpha and not have RGB overlap with EM_BLOCK_COLOR.

EM_BLOCK_COLOR + + +

+

The color matrix applied to all emissive blockers. Should be solely dependent on alpha and not have RGB overlap with EMISSIVE_COLOR.

EM_MASK_MATRIX + + +

+

The color matrix used to mask out emissive blockers on the emissive plane. Alpha should default to zero, be solely dependent on the RGB value of EMISSIVE_COLOR, and be independant of the RGB value of EM_BLOCK_COLOR.

GETBLUEPART + + + +

+

Returns the blue part of a #RRGGBB hex sequence as number

GETGREENPART + + + +

+

Returns the green part of a #RRGGBB hex sequence as number

GETREDPART + + + +

+

Returns the red part of a #RRGGBB hex sequence as number

HYBRID_LIGHT + + +

+

A mix of the above, cheaper on moving items than dynamic, but heavier on rendering than movable

LIGHTING_ICON_BIG + + +

+

icon used for lighting shading effects

LIGHTING_SOFT_THRESHOLD + + +

+

If the max of the lighting lumcounts of each spectrum drops below this, disable luminosity on the lighting objects. Set to zero to disable soft lighting. Luminosity changes then work if it's lit at all.

MOVABLE_LIGHT + + +

+

Light made by masking the lighting darkness plane.

NO_LIGHT_SUPPORT + + +

+

Object doesn't use any of the light systems. Should be changed to add a light source to the object.

PARSE_LIGHT_COLOR + + + +

+

Parse the hexadecimal color into lumcounts of each perspective.

STATIC_LIGHT + + +

+

Light made with the lighting datums, applying a matrix.

+ + + diff --git a/code/__DEFINES/loadout.html b/code/__DEFINES/loadout.html new file mode 100644 index 0000000000000..66e824295677a --- /dev/null +++ b/code/__DEFINES/loadout.html @@ -0,0 +1,37 @@ + + + + + + + code/__DEFINES/loadout.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/loadout.dm + +

+ + + +
MAXIMUM_LOADOUTThe maximum number of loadouts one player can have
CURRENT_LOADOUT_VERSIONThe current loadout version

Define Details

+

CURRENT_LOADOUT_VERSION + + +

+

The current loadout version

MAXIMUM_LOADOUT + + +

+

The maximum number of loadouts one player can have

+ + + diff --git a/code/__DEFINES/logging.html b/code/__DEFINES/logging.html new file mode 100644 index 0000000000000..80d2935b06dc8 --- /dev/null +++ b/code/__DEFINES/logging.html @@ -0,0 +1,46 @@ + + + + + + + code/__DEFINES/logging.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/logging.dm + +

+ + + + +
CONFIG_MAX_CACHED_LOG_ENTRIESThe number of entries to store per category, don't make this too large or you'll start to see performance issues
LOG_UPDATE_TIMEOUTThe number of minimum ticks between each log re-render, making this small will cause performance issues +Admins can still manually request a re-render
ENTRY_USE_DATA_W_READABLEEnables data list usage for readable log entries +You'll likely want to disable internal formatting to make this work properly

Define Details

+

CONFIG_MAX_CACHED_LOG_ENTRIES + + +

+

The number of entries to store per category, don't make this too large or you'll start to see performance issues

ENTRY_USE_DATA_W_READABLE + + +

+

Enables data list usage for readable log entries +You'll likely want to disable internal formatting to make this work properly

LOG_UPDATE_TIMEOUT + + +

+

The number of minimum ticks between each log re-render, making this small will cause performance issues +Admins can still manually request a re-render

+ + + diff --git a/code/__DEFINES/map_switch.html b/code/__DEFINES/map_switch.html new file mode 100644 index 0000000000000..c6830a884fd9e --- /dev/null +++ b/code/__DEFINES/map_switch.html @@ -0,0 +1,33 @@ + + + + + + + code/__DEFINES/map_switch.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/map_switch.dm + +

+ + +
MAP_SWITCHUses the left operator when compiling, uses the right operator when not compiling.

Define Details

+

MAP_SWITCH + + + +

+

Uses the left operator when compiling, uses the right operator when not compiling.

+ + + diff --git a/code/__DEFINES/maths.html b/code/__DEFINES/maths.html new file mode 100644 index 0000000000000..c7f366cf8a075 --- /dev/null +++ b/code/__DEFINES/maths.html @@ -0,0 +1,47 @@ + + + + + + + code/__DEFINES/maths.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/maths.dm + +

+ + + + +
SIGNGets the sign of x, returns -1 if negative, 0 if 0, 1 if positive
SPT_PROB_RATEConverts a probability/second chance to probability/seconds_per_tick chance +For example, if you want an event to happen with a 10% per second chance, but your proc only runs every 5 seconds, do if(prob(100*SPT_PROB_RATE(0.1, 5)))
SPT_PROBLike SPT_PROB_RATE but easier to use, simply put if(SPT_PROB(10, 5))

Define Details

+

SIGN + + + +

+

Gets the sign of x, returns -1 if negative, 0 if 0, 1 if positive

SPT_PROB + + + +

+

Like SPT_PROB_RATE but easier to use, simply put if(SPT_PROB(10, 5))

SPT_PROB_RATE + + + +

+

Converts a probability/second chance to probability/seconds_per_tick chance +For example, if you want an event to happen with a 10% per second chance, but your proc only runs every 5 seconds, do if(prob(100*SPT_PROB_RATE(0.1, 5)))

+ + + diff --git a/code/__DEFINES/matrices.html b/code/__DEFINES/matrices.html new file mode 100644 index 0000000000000..6a7315e0e43df --- /dev/null +++ b/code/__DEFINES/matrices.html @@ -0,0 +1,86 @@ + + + + + + + code/__DEFINES/matrices.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/matrices.dm + +

+ + + + + + + + + + + +
TRANSLATE_MATRIXHelper macro for creating a matrix at the given offsets. +Works at compile time.
COLOR_MATRIX_IDENTITYThe color matrix of an image which colors haven't been altered. Does nothing.
COLOR_MATRIX_INVERTColor inversion
COLOR_MATRIX_SEPIATONESepiatone
COLOR_MATRIX_GRAYSCALEGrayscale
COLOR_MATRIX_POLAROIDPolaroid colors
COLOR_MATRIX_BRGConverts reds to blue, green to red and blue to green.
COLOR_MATRIX_BLACK_WHITEBlack & White
COLOR_MATRIX_LIGHTNESSAdds/subtracts overall lightness +0 is identity, 1 makes everything white, -1 makes everything black
COLOR_MATRIX_CONTRASTChanges distance colors have from rgb(127,127,127) grey +1 is identity. 0 makes everything grey >1 blows out colors and greys

Define Details

+

COLOR_MATRIX_BLACK_WHITE + + +

+

Black & White

COLOR_MATRIX_BRG + + +

+

Converts reds to blue, green to red and blue to green.

COLOR_MATRIX_CONTRAST + + + +

+

Changes distance colors have from rgb(127,127,127) grey +1 is identity. 0 makes everything grey >1 blows out colors and greys

COLOR_MATRIX_GRAYSCALE + + +

+

Grayscale

COLOR_MATRIX_IDENTITY + + +

+

The color matrix of an image which colors haven't been altered. Does nothing.

COLOR_MATRIX_INVERT + + +

+

Color inversion

COLOR_MATRIX_LIGHTNESS + + + +

+

Adds/subtracts overall lightness +0 is identity, 1 makes everything white, -1 makes everything black

COLOR_MATRIX_POLAROID + + +

+

Polaroid colors

COLOR_MATRIX_SEPIATONE + + +

+

Sepiatone

TRANSLATE_MATRIX + + + +

+

Helper macro for creating a matrix at the given offsets. +Works at compile time.

+ + + diff --git a/code/__DEFINES/mecha.html b/code/__DEFINES/mecha.html new file mode 100644 index 0000000000000..17544f8729e32 --- /dev/null +++ b/code/__DEFINES/mecha.html @@ -0,0 +1,117 @@ + + + + + + + code/__DEFINES/mecha.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/mecha.dm + +

+ + + + + + + + + + + + + + + + + + + +
CANNOT_INTERACTblocks using equipment and melee attacking.
OMNIDIRECTIONAL_ATTACKSCan click from any direction and perform stuff
MECHA_SKILL_LOCKEDDo you need mech skill to pilot this mech
MECHA_EMPEDIs currently suffering from an EMP
EXOSUIT_MODULE_RIPLEYModule is compatible with Ripley Exosuit models
EXOSUIT_MODULE_ODYSSEUSModule is compatible with Odyseeus Exosuit models
EXOSUIT_MODULE_GYGAXModule is compatible with Gygax Exosuit models
EXOSUIT_MODULE_DURANDModule is compatible with Durand Exosuit models
EXOSUIT_MODULE_HONKModule is compatible with H.O.N.K Exosuit models
EXOSUIT_MODULE_PHAZONModule is compatible with Phazon Exosuit models
EXOSUIT_MODULE_SAVANNAHModule is compatible with Savannah Exosuit models
EXOSUIT_MODULE_GREYSCALEModule is compatible with Greyscale Exosuit models
EXOSUIT_MODULE_WORKINGModule is compatible with "Working" Exosuit models - Ripley and Clarke
EXOSUIT_MODULE_COMBATModule is compatible with "Combat" Exosuit models - Gygax, H.O.N.K, Durand and Phazon
EXOSUIT_MODULE_MEDICALModule is compatible with "Medical" Exosuit modelsm - Odysseus
MECH_FIRE_CONE_ALLOWEDdegree of cone in front of which mech is allowed to fire at
ARMORED_FIRE_CONE_ALLOWEDdegree of cone in front of which armored vehicles are allowed to fire at
MECH_VANGUARDgreyscale mech shenanigans

Define Details

+

ARMORED_FIRE_CONE_ALLOWED + + +

+

degree of cone in front of which armored vehicles are allowed to fire at

CANNOT_INTERACT + + +

+

blocks using equipment and melee attacking.

EXOSUIT_MODULE_COMBAT + + +

+

Module is compatible with "Combat" Exosuit models - Gygax, H.O.N.K, Durand and Phazon

EXOSUIT_MODULE_DURAND + + +

+

Module is compatible with Durand Exosuit models

EXOSUIT_MODULE_GREYSCALE + + +

+

Module is compatible with Greyscale Exosuit models

EXOSUIT_MODULE_GYGAX + + +

+

Module is compatible with Gygax Exosuit models

EXOSUIT_MODULE_HONK + + +

+

Module is compatible with H.O.N.K Exosuit models

EXOSUIT_MODULE_MEDICAL + + +

+

Module is compatible with "Medical" Exosuit modelsm - Odysseus

EXOSUIT_MODULE_ODYSSEUS + + +

+

Module is compatible with Odyseeus Exosuit models

EXOSUIT_MODULE_PHAZON + + +

+

Module is compatible with Phazon Exosuit models

EXOSUIT_MODULE_RIPLEY + + +

+

Module is compatible with Ripley Exosuit models

EXOSUIT_MODULE_SAVANNAH + + +

+

Module is compatible with Savannah Exosuit models

EXOSUIT_MODULE_WORKING + + +

+

Module is compatible with "Working" Exosuit models - Ripley and Clarke

MECHA_EMPED + + +

+

Is currently suffering from an EMP

MECHA_SKILL_LOCKED + + +

+

Do you need mech skill to pilot this mech

MECH_FIRE_CONE_ALLOWED + + +

+

degree of cone in front of which mech is allowed to fire at

MECH_VANGUARD + + +

+

greyscale mech shenanigans

OMNIDIRECTIONAL_ATTACKS + + +

+

Can click from any direction and perform stuff

+ + + diff --git a/code/__DEFINES/minimap.html b/code/__DEFINES/minimap.html new file mode 100644 index 0000000000000..4e3e58acb4640 --- /dev/null +++ b/code/__DEFINES/minimap.html @@ -0,0 +1,33 @@ + + + + + + + code/__DEFINES/minimap.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/minimap.dm + +

+ + +
MINIMAP_PIXEL_FROM_WORLDConverts the overworld x and y to minimap x and y values

Define Details

+

MINIMAP_PIXEL_FROM_WORLD + + + +

+

Converts the overworld x and y to minimap x and y values

+ + + diff --git a/code/__DEFINES/misc.html b/code/__DEFINES/misc.html new file mode 100644 index 0000000000000..9327e8b7cd592 --- /dev/null +++ b/code/__DEFINES/misc.html @@ -0,0 +1,43 @@ + + + + + + + code/__DEFINES/misc.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/misc.dm + +

+ + + + +
BULLETHOLE_STATESHow many variations of bullethole patterns there are
BULLETHOLE_MAXMaximum possible bullet holes in a closed turf
SPACE_ICON_STATEThe icon_state for space. There is 25 total icon states that vary based on the x/y/z position of the turf

Define Details

+

BULLETHOLE_MAX + + +

+

Maximum possible bullet holes in a closed turf

BULLETHOLE_STATES + + +

+

How many variations of bullethole patterns there are

SPACE_ICON_STATE + + + +

+

The icon_state for space. There is 25 total icon states that vary based on the x/y/z position of the turf

+ + + diff --git a/code/__DEFINES/mobs.html b/code/__DEFINES/mobs.html new file mode 100644 index 0000000000000..7ad4dc0676154 --- /dev/null +++ b/code/__DEFINES/mobs.html @@ -0,0 +1,327 @@ + + + + + + + code/__DEFINES/mobs.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/mobs.dm + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
AI_VOXComment out if you don't want VOX to be enabled and have players download the voice sounds.
MOB_WALK_MOVE_MODSpeed mod for walk intent
MOB_RUN_MOVE_MODSpeed mod for run intent
DIAG_MOVEMENT_ADDED_DELAY_MULTIPLIERMove mod for going diagonally
CARBON_CRIT_MAX_OXYLOSSThe amount of damage you'll take per tick when you can't breath. Default value is 1
CARBON_RECOVERY_OXYLOSSthe amount of oxyloss recovery per successful breath tick.
HUMAN_BLOODTYPESHUMAN BLOODTYPES
MOVE_INTENT_WALKMOVE DEFINES
ORGAN_ASSISTEDINTERNAL ORGANS DEFINES
SURGERY_CANNOT_USESURGERY DEFINES
LIVING_DEFAULT_MAX_HEALTHDefault living maxHealth
LIVING_STAMINA_EXHAUSTION_COOLDOWNStamina exhaustion
XENO_LEAPINGXeno is currently performing a leap/dash attack
XENO_LEADERHive leader
XENO_ZOOMEDZoomed out
XENO_MOBHUDmobhud on
XENO_ROUNYrouny mode
PYROGEN_DAMAGE_PER_STACKDamage per melting fire stack
PYROGEN_ASSIST_REMOVAL_STRENGTHAmount of ticks of fire removed when helped by another human to extinguish
PYROGEN_CHARGESPEEDHow fast the pyrogen moves when charging using fire charge
PYROGEN_CHARGEDISTANCEMaximum charge distance.
PYROGEN_FIRECHARGE_DAMAGEDamage on hitting a mob using fire charge
PYROGEN_FIRECHARGE_DAMAGE_PER_STACKBonus damage per fire stack
PYROGEN_FIREBALL_DIRECT_DAMAGEBonus damage for directly hitting someone
PYROGEN_FIREBALL_AOE_DAMAGEDamage in a 3x3 AOE when we hit anything
PYROGEN_FIREBALL_VEHICLE_AOE_DAMAGEDamage in a 3x3 AOE when we hit a vehicle
PYROGEN_FIREBALL_MELTING_STACKSFire stacks on FIREBALL burst in the 3x3 AOE
PYROGEN_FIREBALL_MAXDISTHow many turfs can our fireball move
PYROGEN_FIREBALL_SPEEDHow fast the fireball moves
PYROGEN_MELTING_FIRE_DAMAGEHow much damage the fire does per tick or cross.
PYROGEN_MELTING_FIRE_EFFECT_STACKHow many melting fire effect stacks we give per tick or cross
PYROGEN_FIRESTORM_TORNADE_COUNTHow many tornadoes we unleash when using the firestorm
PYROGEN_TORNADE_HIT_DAMAGEDamage on fire tornado hit
PYROGEN_TORNADO_MELTING_FIRE_STACKSmelting fire stacks on fire tornado hit
PYROGEN_HEATRAY_HIT_DAMAGEdamage on direct hit with the heatray
PYROGEN_HEATRAY_VEHICLE_HIT_DAMAGEdamage on vehicles with the heatray
PYROGEN_HEATRAY_BONUS_DAMAGE_PER_MELTING_STACKdamage per melting fire stack
PYROGEN_HEATRAY_RANGERange for the heatray
PYROGEN_HEATRAY_CHARGEUPTime before the beam fires
PYROGEN_HEATRAY_MAXDURATIONMax duration of the heatray
PYROGEN_HEATRAY_REFIRE_TIMETime between each refire of the pyrogen heatray (in 3 seconds it will fire 3 times)
PYROGEN_MELTING_FIRE_STACKS_PER_RESISTAmount of stacks removed per resist.
BANELING_SMOKE_DURATIONNot specified in seconds because it causes smoke to last almost four times as long if done so
IGNORE_USER_LOC_CHANGECan do the action even if mob moves location
IGNORE_TARGET_LOC_CHANGECan do the action even if the target moves location
IGNORE_HELD_ITEMCan do the action even if the item is no longer being held
IGNORE_INCAPACITATEDCan do the action even if the mob is incapacitated (ex. handcuffed)
IGNORE_SLOWDOWNSUsed to prevent important slowdowns from being abused by drugs like kronkaine
MOB_WATER_SLOWDOWNDefault slowdown for mobs moving through liquid
XENO_WATER_SLOWDOWNSlowdown for xenos moving through liquid
BOILER_WATER_SLOWDOWNSlowdown for boilers moving through liquid
WARLOCK_WATER_SLOWDOWNSlowdown for warlocks moving through liquid
SPECIES_HUMANHuman species or those that functional behave like them. Default species
SPECIES_COMBAT_ROBOTCombat robot species
GRAB_SLAM_DELAYNextmove delay after performing an interaction with a grab on something
BASE_OBJ_SLAM_DAMAGEDefault damage for slamming a mob against an object
BASE_WALL_SLAM_DAMAGEDefault damage for slamming a mob against a wall
BASE_MOB_SLAM_DAMAGEDefault damage for slamming a mob against another mob
CARBON_LYING_Y_OFFSETPixel_y offset when lying down
ILLUSION_HIT_FILTERFilter name for illusion impacts

Define Details

+

AI_VOX + + +

+

Comment out if you don't want VOX to be enabled and have players download the voice sounds.

BANELING_SMOKE_DURATION + + +

+

Not specified in seconds because it causes smoke to last almost four times as long if done so

BASE_MOB_SLAM_DAMAGE + + +

+

Default damage for slamming a mob against another mob

BASE_OBJ_SLAM_DAMAGE + + +

+

Default damage for slamming a mob against an object

BASE_WALL_SLAM_DAMAGE + + +

+

Default damage for slamming a mob against a wall

BOILER_WATER_SLOWDOWN + + +

+

Slowdown for boilers moving through liquid

CARBON_CRIT_MAX_OXYLOSS + + +

+

The amount of damage you'll take per tick when you can't breath. Default value is 1

CARBON_LYING_Y_OFFSET + + +

+

Pixel_y offset when lying down

CARBON_RECOVERY_OXYLOSS + + +

+

the amount of oxyloss recovery per successful breath tick.

DIAG_MOVEMENT_ADDED_DELAY_MULTIPLIER + + +

+

Move mod for going diagonally

GRAB_SLAM_DELAY + + +

+

Nextmove delay after performing an interaction with a grab on something

HUMAN_BLOODTYPES + + +

+

HUMAN BLOODTYPES

IGNORE_HELD_ITEM + + +

+

Can do the action even if the item is no longer being held

IGNORE_INCAPACITATED + + +

+

Can do the action even if the mob is incapacitated (ex. handcuffed)

IGNORE_SLOWDOWNS + + +

+

Used to prevent important slowdowns from being abused by drugs like kronkaine

IGNORE_TARGET_LOC_CHANGE + + +

+

Can do the action even if the target moves location

IGNORE_USER_LOC_CHANGE + + +

+

Can do the action even if mob moves location

ILLUSION_HIT_FILTER + + +

+

Filter name for illusion impacts

LIVING_DEFAULT_MAX_HEALTH + + +

+

Default living maxHealth

LIVING_STAMINA_EXHAUSTION_COOLDOWN + + +

+

Stamina exhaustion

MOB_RUN_MOVE_MOD + + +

+

Speed mod for run intent

MOB_WALK_MOVE_MOD + + +

+

Speed mod for walk intent

MOB_WATER_SLOWDOWN + + +

+

Default slowdown for mobs moving through liquid

MOVE_INTENT_WALK + + +

+

MOVE DEFINES

ORGAN_ASSISTED + + +

+

INTERNAL ORGANS DEFINES

PYROGEN_ASSIST_REMOVAL_STRENGTH + + +

+

Amount of ticks of fire removed when helped by another human to extinguish

PYROGEN_CHARGEDISTANCE + + +

+

Maximum charge distance.

PYROGEN_CHARGESPEED + + +

+

How fast the pyrogen moves when charging using fire charge

PYROGEN_DAMAGE_PER_STACK + + +

+

Damage per melting fire stack

PYROGEN_FIREBALL_AOE_DAMAGE + + +

+

Damage in a 3x3 AOE when we hit anything

PYROGEN_FIREBALL_DIRECT_DAMAGE + + +

+

Bonus damage for directly hitting someone

PYROGEN_FIREBALL_MAXDIST + + +

+

How many turfs can our fireball move

PYROGEN_FIREBALL_MELTING_STACKS + + +

+

Fire stacks on FIREBALL burst in the 3x3 AOE

PYROGEN_FIREBALL_SPEED + + +

+

How fast the fireball moves

PYROGEN_FIREBALL_VEHICLE_AOE_DAMAGE + + +

+

Damage in a 3x3 AOE when we hit a vehicle

PYROGEN_FIRECHARGE_DAMAGE + + +

+

Damage on hitting a mob using fire charge

PYROGEN_FIRECHARGE_DAMAGE_PER_STACK + + +

+

Bonus damage per fire stack

PYROGEN_FIRESTORM_TORNADE_COUNT + + +

+

How many tornadoes we unleash when using the firestorm

PYROGEN_HEATRAY_BONUS_DAMAGE_PER_MELTING_STACK + + +

+

damage per melting fire stack

PYROGEN_HEATRAY_CHARGEUP + + +

+

Time before the beam fires

PYROGEN_HEATRAY_HIT_DAMAGE + + +

+

damage on direct hit with the heatray

PYROGEN_HEATRAY_MAXDURATION + + +

+

Max duration of the heatray

PYROGEN_HEATRAY_RANGE + + +

+

Range for the heatray

PYROGEN_HEATRAY_REFIRE_TIME + + +

+

Time between each refire of the pyrogen heatray (in 3 seconds it will fire 3 times)

PYROGEN_HEATRAY_VEHICLE_HIT_DAMAGE + + +

+

damage on vehicles with the heatray

PYROGEN_MELTING_FIRE_DAMAGE + + +

+

How much damage the fire does per tick or cross.

PYROGEN_MELTING_FIRE_EFFECT_STACK + + +

+

How many melting fire effect stacks we give per tick or cross

PYROGEN_MELTING_FIRE_STACKS_PER_RESIST + + +

+

Amount of stacks removed per resist.

PYROGEN_TORNADE_HIT_DAMAGE + + +

+

Damage on fire tornado hit

PYROGEN_TORNADO_MELTING_FIRE_STACKS + + +

+

melting fire stacks on fire tornado hit

SPECIES_COMBAT_ROBOT + + +

+

Combat robot species

SPECIES_HUMAN + + +

+

Human species or those that functional behave like them. Default species

SURGERY_CANNOT_USE + + +

+

SURGERY DEFINES

WARLOCK_WATER_SLOWDOWN + + +

+

Slowdown for warlocks moving through liquid

XENO_LEADER + + +

+

Hive leader

XENO_LEAPING + + +

+

Xeno is currently performing a leap/dash attack

XENO_MOBHUD + + +

+

mobhud on

XENO_ROUNY + + +

+

rouny mode

XENO_WATER_SLOWDOWN + + +

+

Slowdown for xenos moving through liquid

XENO_ZOOMED + + +

+

Zoomed out

+ + + diff --git a/code/__DEFINES/mode.html b/code/__DEFINES/mode.html new file mode 100644 index 0000000000000..762c809a7ac54 --- /dev/null +++ b/code/__DEFINES/mode.html @@ -0,0 +1,37 @@ + + + + + + + code/__DEFINES/mode.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/mode.dm + +

+ + + +
SILO_BASE_OUTPUT_PER_MARINEHow each alive marine contributes to burrower larva output per minute. So with one pool, 15 marines are giving 0.375 points per minute, so it's a new xeno every 22 minutes
SILO_OUTPUT_PONDERATIONThis is used to ponderate the number of silo, so to reduces the diminishing returns of having more and more silos

Define Details

+

SILO_BASE_OUTPUT_PER_MARINE + + +

+

How each alive marine contributes to burrower larva output per minute. So with one pool, 15 marines are giving 0.375 points per minute, so it's a new xeno every 22 minutes

SILO_OUTPUT_PONDERATION + + +

+

This is used to ponderate the number of silo, so to reduces the diminishing returns of having more and more silos

+ + + diff --git a/code/__DEFINES/monitor.html b/code/__DEFINES/monitor.html new file mode 100644 index 0000000000000..f7346e9182268 --- /dev/null +++ b/code/__DEFINES/monitor.html @@ -0,0 +1,32 @@ + + + + + + + code/__DEFINES/monitor.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/monitor.dm + +

+ + +
MAXIMUM_XENO_BUFF_POSSIBLE50% is the maximum buff that xeno can receive

Define Details

+

MAXIMUM_XENO_BUFF_POSSIBLE + + +

+

50% is the maximum buff that xeno can receive

+ + + diff --git a/code/__DEFINES/movement.html b/code/__DEFINES/movement.html new file mode 100644 index 0000000000000..6c8245df02cc2 --- /dev/null +++ b/code/__DEFINES/movement.html @@ -0,0 +1,49 @@ + + + + + + + code/__DEFINES/movement.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/movement.dm + +

+ + + +
DELAY_TO_GLIDE_SIZEBroken down, here's what this does: +divides the world icon_size (32) by delay divided by ticklag to get the number of pixels something should be moving each tick. +The division result is given a min value of 1 to prevent obscenely slow glide sizes from being set +Then that's multiplied by the global glide size multiplier. 1.25 by default feels pretty close to spot on. This is just to try to get byond to behave. +The whole result is then clamped to within the range above. +Not very readable but it works
MOVEMENT_ADJUSTED_GLIDE_SIZESimilar to DELAY_TO_GLIDE_SIZE, except without the clamping, and it supports piping in an unrelated scalar

Define Details

+

DELAY_TO_GLIDE_SIZE + + + +

+

Broken down, here's what this does: +divides the world icon_size (32) by delay divided by ticklag to get the number of pixels something should be moving each tick. +The division result is given a min value of 1 to prevent obscenely slow glide sizes from being set +Then that's multiplied by the global glide size multiplier. 1.25 by default feels pretty close to spot on. This is just to try to get byond to behave. +The whole result is then clamped to within the range above. +Not very readable but it works

MOVEMENT_ADJUSTED_GLIDE_SIZE + + + +

+

Similar to DELAY_TO_GLIDE_SIZE, except without the clamping, and it supports piping in an unrelated scalar

+ + + diff --git a/code/__DEFINES/obj_flags.html b/code/__DEFINES/obj_flags.html new file mode 100644 index 0000000000000..8e588022c361f --- /dev/null +++ b/code/__DEFINES/obj_flags.html @@ -0,0 +1,82 @@ + + + + + + + code/__DEFINES/obj_flags.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/obj_flags.dm + +

+ + + + + + + + + + + + +
IN_USEIf we have a user using us, this will be set on. We will check if the user has stopped using us, and thus stop updating and LAGGING EVERYTHING!
CAN_BE_HITCan this be bludgeoned by items?
PROJ_IGNORE_DENSITYIf non-dense structures can still get hit by projectiles
LIGHT_CAN_BE_SHUTIs sensible to nightfall ability, and its light will be turned off
DANGEROUS_POSSESSIONAdmin possession yes/no
BLOCKS_CONSTRUCTION! Does this object prevent things from being built on it?
BLOCKS_CONSTRUCTION_DIR! Does this object prevent same-direction things from being built on it?
IGNORE_DENSITY! Can we ignore density when building on this object? (for example, directional windows and grilles)
PROJECTILE_FROZENIndicates a projectile is no longer moving
PROJECTILE_HITIndicates we've hit something
PROJECTILE_PRECISE_TARGETThis projectile will ignore non targetted mobs

Define Details

+

BLOCKS_CONSTRUCTION + + +

+

! Does this object prevent things from being built on it?

BLOCKS_CONSTRUCTION_DIR + + +

+

! Does this object prevent same-direction things from being built on it?

CAN_BE_HIT + + +

+

Can this be bludgeoned by items?

DANGEROUS_POSSESSION + + +

+

Admin possession yes/no

IGNORE_DENSITY + + +

+

! Can we ignore density when building on this object? (for example, directional windows and grilles)

IN_USE + + +

+

If we have a user using us, this will be set on. We will check if the user has stopped using us, and thus stop updating and LAGGING EVERYTHING!

LIGHT_CAN_BE_SHUT + + +

+

Is sensible to nightfall ability, and its light will be turned off

PROJECTILE_FROZEN + + +

+

Indicates a projectile is no longer moving

PROJECTILE_HIT + + +

+

Indicates we've hit something

PROJECTILE_PRECISE_TARGET + + +

+

This projectile will ignore non targetted mobs

PROJ_IGNORE_DENSITY + + +

+

If non-dense structures can still get hit by projectiles

+ + + diff --git a/code/__DEFINES/objects.html b/code/__DEFINES/objects.html new file mode 100644 index 0000000000000..a65cf680278c2 --- /dev/null +++ b/code/__DEFINES/objects.html @@ -0,0 +1,52 @@ + + + + + + + code/__DEFINES/objects.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/objects.dm + +

+ + + + + + +
DROPPOD_DEPLOY_DELAYThis number + standard alamo launch time is when droppods are allowed to launch
LAVA_BURN_LEVELBurn level applied by lava if it calls fire_act
CATWALK_ROD_REQRods needed to build a catwalk
REINFORCED_FLOOR_ROD_REQRods needed to reinforce a floor
EXTINGUISH_AMOUNTAmount of fire stacks removed by extinguishers or similar effects

Define Details

+

CATWALK_ROD_REQ + + +

+

Rods needed to build a catwalk

DROPPOD_DEPLOY_DELAY + + +

+

This number + standard alamo launch time is when droppods are allowed to launch

EXTINGUISH_AMOUNT + + +

+

Amount of fire stacks removed by extinguishers or similar effects

LAVA_BURN_LEVEL + + +

+

Burn level applied by lava if it calls fire_act

REINFORCED_FLOOR_ROD_REQ + + +

+

Rods needed to reinforce a floor

+ + + diff --git a/code/__DEFINES/overlays.html b/code/__DEFINES/overlays.html new file mode 100644 index 0000000000000..6c1a82bd6dfd1 --- /dev/null +++ b/code/__DEFINES/overlays.html @@ -0,0 +1,39 @@ + + + + + + + code/__DEFINES/overlays.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/overlays.dm + +

+ + + +
VALIDATE_OVERLAY_LIMITChecks if an atom has reached the overlay limit, and make a loud error if it does.
POST_OVERLAY_CHANGEPerforms any operations that ought to run after an appearance change

Define Details

+

POST_OVERLAY_CHANGE + + + +

+

Performs any operations that ought to run after an appearance change

VALIDATE_OVERLAY_LIMIT + + + +

+

Checks if an atom has reached the overlay limit, and make a loud error if it does.

+ + + diff --git a/code/__DEFINES/preferences.html b/code/__DEFINES/preferences.html new file mode 100644 index 0000000000000..79e8c1e128e08 --- /dev/null +++ b/code/__DEFINES/preferences.html @@ -0,0 +1,39 @@ + + + + + + + code/__DEFINES/preferences.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/preferences.dm + +

+ + + +
MAX_QUICK_EQUIP_SLOTSThe amount of quick equip slots there should have. If someone doesn't have this many slots, their prefs will reset to get the new ones. +This adds only the buttons, to make the hotkeys usable in-game you need to make a keybind for it.
QUICK_EQUIP_ORDERThe default Quick equip order list, adding/removing slots from this list will increase the amount of quick equip slots. Update the define above when

Define Details

+

MAX_QUICK_EQUIP_SLOTS + + +

+

The amount of quick equip slots there should have. If someone doesn't have this many slots, their prefs will reset to get the new ones. +This adds only the buttons, to make the hotkeys usable in-game you need to make a keybind for it.

QUICK_EQUIP_ORDER + + +

+

The default Quick equip order list, adding/removing slots from this list will increase the amount of quick equip slots. Update the define above when

+ + + diff --git a/code/__DEFINES/procpath.html b/code/__DEFINES/procpath.html new file mode 100644 index 0000000000000..5893ffc60b774 --- /dev/null +++ b/code/__DEFINES/procpath.html @@ -0,0 +1,27 @@ + + + + + + + code/__DEFINES/procpath.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__DEFINES/procpath.dm + +

+ + +
/procpathRepresents a proc or verb path.
+ + + diff --git a/code/__DEFINES/qdel.html b/code/__DEFINES/qdel.html new file mode 100644 index 0000000000000..4c3f4be282798 --- /dev/null +++ b/code/__DEFINES/qdel.html @@ -0,0 +1,99 @@ + + + + + + + code/__DEFINES/qdel.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/qdel.dm + +

+ + + + + + + + + + + + + + + + +

Defines that give qdel hints.

+

These can be given as a return in [/atom/proc/Destroy] or by calling /proc/qdel.

QDEL_HINT_QUEUEqdel should queue the object for deletion.
QDEL_HINT_LETMELIVEqdel should let the object live after calling [/atom/proc/Destroy].
QDEL_HINT_IWILLGCFunctionally the same as the above. qdel should assume the object will gc on its own, and not check it.
QDEL_HINT_HARDDELQdel should assume this object won't GC, and queue a hard delete using a hard reference.
GC_QUEUE_FILTERshort queue to filter out quick gc successes so they don't hang around in the main queue for 5 minutes
GC_QUEUE_CHECKmain queue that waits 5 minutes because thats the longest byond can hold a reference to our shit.
GC_QUEUE_HARDDELETEshort queue for things that hard delete instead of going thru the gc subsystem, this is purely so if they can softdelete, they will soft delete rather then wasting time with a hard delete.
GC_QUEUE_COUNTNumber of queues, used for allocating the nested lists. Don't forget to increase this if you add a new queue stage
GC_QUEUE_ITEM_QUEUE_TIMETime this item entered the queue
GC_QUEUE_ITEM_REFRef to the item
GC_QUEUE_ITEM_GCD_DESTROYEDItem's gc_destroyed var value. Used to detect ref reuse.
GC_QUEUE_ITEM_INDEX_COUNTNumber of item indexes, used for allocating the nested lists. Don't forget to increase this if you add a new queue item index
QDEL_ITEM_ADMINS_WARNEDSet when admins are told about lag causing qdels in this type.
QDEL_ITEM_SUSPENDED_FOR_LAGSet when a type can no longer be hard deleted on failure because of lag it causes while this happens.

Define Details

+

GC_QUEUE_CHECK + + +

+

main queue that waits 5 minutes because thats the longest byond can hold a reference to our shit.

GC_QUEUE_COUNT + + +

+

Number of queues, used for allocating the nested lists. Don't forget to increase this if you add a new queue stage

GC_QUEUE_FILTER + + +

+

short queue to filter out quick gc successes so they don't hang around in the main queue for 5 minutes

GC_QUEUE_HARDDELETE + + +

+

short queue for things that hard delete instead of going thru the gc subsystem, this is purely so if they can softdelete, they will soft delete rather then wasting time with a hard delete.

GC_QUEUE_ITEM_GCD_DESTROYED + + +

+

Item's gc_destroyed var value. Used to detect ref reuse.

GC_QUEUE_ITEM_INDEX_COUNT + + +

+

Number of item indexes, used for allocating the nested lists. Don't forget to increase this if you add a new queue item index

GC_QUEUE_ITEM_QUEUE_TIME + + +

+

Time this item entered the queue

GC_QUEUE_ITEM_REF + + +

+

Ref to the item

QDEL_HINT_HARDDEL + + +

+

Qdel should assume this object won't GC, and queue a hard delete using a hard reference.

QDEL_HINT_IWILLGC + + +

+

Functionally the same as the above. qdel should assume the object will gc on its own, and not check it.

QDEL_HINT_LETMELIVE + + +

+

qdel should let the object live after calling [/atom/proc/Destroy].

QDEL_HINT_QUEUE + + +

+

qdel should queue the object for deletion.

QDEL_ITEM_ADMINS_WARNED + + +

+

Set when admins are told about lag causing qdels in this type.

QDEL_ITEM_SUSPENDED_FOR_LAG + + +

+

Set when a type can no longer be hard deleted on failure because of lag it causes while this happens.

+ + + diff --git a/code/__DEFINES/reagents.html b/code/__DEFINES/reagents.html new file mode 100644 index 0000000000000..474e8208bade3 --- /dev/null +++ b/code/__DEFINES/reagents.html @@ -0,0 +1,67 @@ + + + + + + + code/__DEFINES/reagents.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/reagents.dm + +

+ + + + + + + + + +
INJECTABLEMakes it possible to add reagents through droppers and syringes
DRAWABLEMakes it possible to remove reagents through syringes
REFILLABLEMakes it possible to add reagents through any reagent container
DRAINABLEMakes it possible to remove reagents through any reagent container
TRANSPARENTUsed on containers which you want to be able to see the reagents off
AMOUNT_VISIBLEFor non-transparent containers that still have the general amount of reagents in them visible.
AMOUNT_SKILLCHECKFor containers which apply a skill check for wheter showing their reagents to the user or not.
AMOUNT_ESTIMEEFor containers without volume meters on (e.g. drinking glasses, cans, sprays)

Define Details

+

AMOUNT_ESTIMEE + + +

+

For containers without volume meters on (e.g. drinking glasses, cans, sprays)

AMOUNT_SKILLCHECK + + +

+

For containers which apply a skill check for wheter showing their reagents to the user or not.

AMOUNT_VISIBLE + + +

+

For non-transparent containers that still have the general amount of reagents in them visible.

DRAINABLE + + +

+

Makes it possible to remove reagents through any reagent container

DRAWABLE + + +

+

Makes it possible to remove reagents through syringes

INJECTABLE + + +

+

Makes it possible to add reagents through droppers and syringes

REFILLABLE + + +

+

Makes it possible to add reagents through any reagent container

TRANSPARENT + + +

+

Used on containers which you want to be able to see the reagents off

+ + + diff --git a/code/__DEFINES/rust_g.html b/code/__DEFINES/rust_g.html new file mode 100644 index 0000000000000..013144d32a91b --- /dev/null +++ b/code/__DEFINES/rust_g.html @@ -0,0 +1,171 @@ + + + + + + + code/__DEFINES/rust_g.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/rust_g.dm + +

+ + + + + + + + + + + + + + + + + +
/proc/rustg_get_versionGets the version of rust_g
rustg_setup_acreplaceSets up the Aho-Corasick automaton with its default options.
rustg_setup_acreplace_with_optionsSets up the Aho-Corasick automaton using supplied options.
rustg_acreplaceRun the specified replacement engine with the provided haystack text to replace, returning replaced text.
rustg_acreplace_with_replacementsRun the specified replacement engine with the provided haystack text to replace, returning replaced text.
rustg_cnoise_generateThis proc generates a cellular automata noise grid which can be used in procedural generation methods.
rustg_dmi_icon_statesinput: must be a path, not an /icon; you have to do your own handling if it is one, as icon objects can't be directly passed to rustg.
rustg_git_revparseReturns the git hash of the given revision, ex. "HEAD".
rustg_git_commit_dateReturns the date of the given revision in the format YYYY-MM-DD. +Returns null if the revision is invalid.
rustg_register_nodes_astarRegister a list of nodes into a rust library. This list of nodes must have been serialized in a json. +Node {// Index of this node in the list of nodes +unique_id: usize, +// Position of the node in byond +x: usize, +y: usize, +z: usize, +// Indexes of nodes connected to this one +connected_nodes_id: Vec} +It is important that the node with the unique_id 0 is the first in the json, unique_id 1 right after that, etc. +It is also important that all unique ids follow. {0, 1, 2, 4} is not a correct list and the registering will fail +Nodes should not link across z levels. +A node cannot link twice to the same node and shouldn't link itself either
rustg_add_node_astarAdd a new node to the static list of nodes. Same rule as registering_nodes applies. +This node unique_id must be equal to the current length of the static list of nodes
rustg_remove_node_astar*²
rustg_generate_path_astarCompute the shortest path between start_node and goal_node using A*. Heuristic used is simple geometric distance
/proc/rustg_unix_timestampReturns the timestamp as a string

Define Details

+

rustg_acreplace + + + +

+

Run the specified replacement engine with the provided haystack text to replace, returning replaced text.

+

Arguments:

+

rustg_acreplace_with_replacements + + + +

+

Run the specified replacement engine with the provided haystack text to replace, returning replaced text.

+

Arguments:

+

rustg_add_node_astar + + + +

+

Add a new node to the static list of nodes. Same rule as registering_nodes applies. +This node unique_id must be equal to the current length of the static list of nodes

rustg_cnoise_generate + + + +

+

This proc generates a cellular automata noise grid which can be used in procedural generation methods.

+

Returns a single string that goes row by row, with values of 1 representing an alive cell, and a value of 0 representing a dead cell.

+

Arguments:

+

rustg_dmi_icon_states + + + +

+

input: must be a path, not an /icon; you have to do your own handling if it is one, as icon objects can't be directly passed to rustg.

+

output: json_encode'd list. json_decode to get a flat list with icon states in the order they're in inside the .dmi

rustg_generate_path_astar + + + +

+

Compute the shortest path between start_node and goal_node using A*. Heuristic used is simple geometric distance

rustg_git_commit_date + + + +

+

Returns the date of the given revision in the format YYYY-MM-DD. +Returns null if the revision is invalid.

rustg_git_revparse + + + +

+

Returns the git hash of the given revision, ex. "HEAD".

rustg_register_nodes_astar + + + +

+

Register a list of nodes into a rust library. This list of nodes must have been serialized in a json. +Node {// Index of this node in the list of nodes +unique_id: usize, +// Position of the node in byond +x: usize, +y: usize, +z: usize, +// Indexes of nodes connected to this one +connected_nodes_id: Vec} +It is important that the node with the unique_id 0 is the first in the json, unique_id 1 right after that, etc. +It is also important that all unique ids follow. {0, 1, 2, 4} is not a correct list and the registering will fail +Nodes should not link across z levels. +A node cannot link twice to the same node and shouldn't link itself either

rustg_remove_node_astar + + + +

+

*²

+

rustg_setup_acreplace + + + +

+

Sets up the Aho-Corasick automaton with its default options.

+

The search patterns list and the replacements must be of the same length when replace is run, but an empty replacements list is allowed if replacements are supplied with the replace call +Arguments:

+

rustg_setup_acreplace_with_options + + + +

+

Sets up the Aho-Corasick automaton using supplied options.

+

The search patterns list and the replacements must be of the same length when replace is run, but an empty replacements list is allowed if replacements are supplied with the replace call +Arguments:

+
+ + + diff --git a/code/__DEFINES/say.html b/code/__DEFINES/say.html new file mode 100644 index 0000000000000..41e4cf636175e --- /dev/null +++ b/code/__DEFINES/say.html @@ -0,0 +1,44 @@ + + + + + + + code/__DEFINES/say.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/say.dm + +

+ + + + +
RECURSIVE_CONTENTS_AREA_SENSITIVEthe area channel of the important_recursive_contents list, everything in here will be sent a signal when their last holding object changes areas
RECURSIVE_CONTENTS_HEARING_SENSITIVEthe hearing channel of the important_recursive_contents list, everything in here will count as a hearing atom
RECURSIVE_CONTENTS_CLIENT_MOBSthe client mobs channel of the important_recursive_contents list, everything in here will be a mob with an attached client +this is given to both a clients mob, and a clients eye, both point to the clients mob

Define Details

+

RECURSIVE_CONTENTS_AREA_SENSITIVE + + +

+

the area channel of the important_recursive_contents list, everything in here will be sent a signal when their last holding object changes areas

RECURSIVE_CONTENTS_CLIENT_MOBS + + +

+

the client mobs channel of the important_recursive_contents list, everything in here will be a mob with an attached client +this is given to both a clients mob, and a clients eye, both point to the clients mob

RECURSIVE_CONTENTS_HEARING_SENSITIVE + + +

+

the hearing channel of the important_recursive_contents list, everything in here will count as a hearing atom

+ + + diff --git a/code/__DEFINES/shuttles.html b/code/__DEFINES/shuttles.html new file mode 100644 index 0000000000000..5828058c7425c --- /dev/null +++ b/code/__DEFINES/shuttles.html @@ -0,0 +1,32 @@ + + + + + + + code/__DEFINES/shuttles.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/shuttles.dm + +

+ + +
GAMEMODE_IMMUNEshuttle is immune to gamemode timer restrictions

Define Details

+

GAMEMODE_IMMUNE + + +

+

shuttle is immune to gamemode timer restrictions

+ + + diff --git a/code/__DEFINES/skills.html b/code/__DEFINES/skills.html new file mode 100644 index 0000000000000..5d9f663996e0e --- /dev/null +++ b/code/__DEFINES/skills.html @@ -0,0 +1,157 @@ + + + + + + + code/__DEFINES/skills.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/skills.dm + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
SKILL_UNARMEDUNARMED skill; higher disarm chance on humans(+5% per level); slight increase in punch damage.
UNARMED_SKILL_DAMAGE_MODUnarmed damage mod from UNARMED skill
UNARMED_SKILL_DISARM_MODDisarm chance mod from UNARMED skill
SKILL_MELEE_WEAPONSMelee skill; 15% extra damage per skill level
MELEE_SKILL_DAM_BUFFThe amount of extra damage per melee skill level
SKILL_COMBATCombat skill; Increase or decrase accuracy, recoil, damage, and firing delay of most guns; ability to tac reload
COMBAT_SKILL_DAM_MODDamage mod for having the weapon specific skill above 0
SKILL_PISTOLSPistols skill; Increase accuracy, recoil, and damage of pistols and revolvers.
SKILL_SMGSSMG skill; Increase accuracy, recoil, and damage of SMGs.
SKILL_RIFLESRifles skill; Increase accuracy, recoil, and damage of rifles.
SKILL_SHOTGUNSShotgun skill; Increase accuracy, recoil, and damage of shotguns.
SKILL_HEAVY_WEAPONSHeavy weapons skill; Increase accuracy, recoil, damage, and firing delay of heavy weapons (eg. machineguns, pulse rifles, flamethrower).
SKILL_SMARTGUNSmartgun skill; Increase or decrase accuracy, recoil, damage, and firing delay for smartgun, and whether we can use smartguns at all.
SKILL_ENGINEEREngineer skill; higher levels means faster engine repair and more integrity repair off welding
SKILL_CONSTRUCTIONConstruction skill; higher levels means faster buidling
SKILL_MEDICALMedical skill; higher levels means faster syringe use and better defibrillation
SKILL_SURGERYSurgery skill; higher levels means faster surgery, less fumble time to start surgery
SKILL_LEADERSHIPLeadership skill; order strength + range of effect
SKILL_PILOTPilot skill, hidden; affects dropship weapon usage (not called anywhere on Condor)
SKILL_POLICEPolice skill; use of special equipment
SKILL_POWERLOADERPowerloader skill; movespeed when using a powerloader
SKILL_LARGE_VEHICLEMultitile vehicle skill; can you use the vehicle or not
SKILL_STAMINAStamina skill - you do cardio, right?; buff stamina-related things
STAMINA_SKILL_COOLDOWN_MODStamina cooldown after you use it and before it starts to regenerate
STAMINA_SKILL_REGEN_MODStamina skill regen multiplier increase for when stamina skill goes up
SKILL_TASK_TRIVIALSkill-related fumble and delay times; in deciseconds

Define Details

+

COMBAT_SKILL_DAM_MOD + + +

+

Damage mod for having the weapon specific skill above 0

MELEE_SKILL_DAM_BUFF + + +

+

The amount of extra damage per melee skill level

SKILL_COMBAT + + +

+

Combat skill; Increase or decrase accuracy, recoil, damage, and firing delay of most guns; ability to tac reload

SKILL_CONSTRUCTION + + +

+

Construction skill; higher levels means faster buidling

SKILL_ENGINEER + + +

+

Engineer skill; higher levels means faster engine repair and more integrity repair off welding

SKILL_HEAVY_WEAPONS + + +

+

Heavy weapons skill; Increase accuracy, recoil, damage, and firing delay of heavy weapons (eg. machineguns, pulse rifles, flamethrower).

SKILL_LARGE_VEHICLE + + +

+

Multitile vehicle skill; can you use the vehicle or not

SKILL_LEADERSHIP + + +

+

Leadership skill; order strength + range of effect

SKILL_MEDICAL + + +

+

Medical skill; higher levels means faster syringe use and better defibrillation

SKILL_MELEE_WEAPONS + + +

+

Melee skill; 15% extra damage per skill level

SKILL_PILOT + + +

+

Pilot skill, hidden; affects dropship weapon usage (not called anywhere on Condor)

SKILL_PISTOLS + + +

+

Pistols skill; Increase accuracy, recoil, and damage of pistols and revolvers.

SKILL_POLICE + + +

+

Police skill; use of special equipment

SKILL_POWERLOADER + + +

+

Powerloader skill; movespeed when using a powerloader

SKILL_RIFLES + + +

+

Rifles skill; Increase accuracy, recoil, and damage of rifles.

SKILL_SHOTGUNS + + +

+

Shotgun skill; Increase accuracy, recoil, and damage of shotguns.

SKILL_SMARTGUN + + +

+

Smartgun skill; Increase or decrase accuracy, recoil, damage, and firing delay for smartgun, and whether we can use smartguns at all.

SKILL_SMGS + + +

+

SMG skill; Increase accuracy, recoil, and damage of SMGs.

SKILL_STAMINA + + +

+

Stamina skill - you do cardio, right?; buff stamina-related things

SKILL_SURGERY + + +

+

Surgery skill; higher levels means faster surgery, less fumble time to start surgery

SKILL_TASK_TRIVIAL + + +

+

Skill-related fumble and delay times; in deciseconds

SKILL_UNARMED + + +

+

UNARMED skill; higher disarm chance on humans(+5% per level); slight increase in punch damage.

STAMINA_SKILL_COOLDOWN_MOD + + +

+

Stamina cooldown after you use it and before it starts to regenerate

STAMINA_SKILL_REGEN_MOD + + +

+

Stamina skill regen multiplier increase for when stamina skill goes up

UNARMED_SKILL_DAMAGE_MOD + + +

+

Unarmed damage mod from UNARMED skill

UNARMED_SKILL_DISARM_MOD + + +

+

Disarm chance mod from UNARMED skill

+ + + diff --git a/code/__DEFINES/sound.html b/code/__DEFINES/sound.html new file mode 100644 index 0000000000000..0160fa5f8696e --- /dev/null +++ b/code/__DEFINES/sound.html @@ -0,0 +1,62 @@ + + + + + + + code/__DEFINES/sound.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/sound.dm + +

+ + + + + + + + +
SOUND_RANGEDefault range of a sound.
SHORT_RANGE_SOUND_EXTRARANGEdefault extra range for sounds considered to be quieter
SILENCED_SOUND_EXTRARANGEThe range deducted from sound range for things that are considered silent / sneaky
SOUND_DEFAULT_FALLOFF_DISTANCEPercentage of sound's range where no falloff is applied
SOUND_FALLOFF_EXPONENTThe default exponent of sound falloff
GET_RAND_FREQUENCYFrequency stuff only works with 45kbps oggs.
SFX_SHATTERList of all of our sound keys.

Define Details

+

GET_RAND_FREQUENCY + + +

+

Frequency stuff only works with 45kbps oggs.

SFX_SHATTER + + +

+

List of all of our sound keys.

SHORT_RANGE_SOUND_EXTRARANGE + + +

+

default extra range for sounds considered to be quieter

SILENCED_SOUND_EXTRARANGE + + +

+

The range deducted from sound range for things that are considered silent / sneaky

SOUND_DEFAULT_FALLOFF_DISTANCE + + +

+

Percentage of sound's range where no falloff is applied

SOUND_FALLOFF_EXPONENT + + +

+

The default exponent of sound falloff

SOUND_RANGE + + +

+

Default range of a sound.

+ + + diff --git a/code/__DEFINES/spaceman_dmm.html b/code/__DEFINES/spaceman_dmm.html new file mode 100644 index 0000000000000..608014a074588 --- /dev/null +++ b/code/__DEFINES/spaceman_dmm.html @@ -0,0 +1,121 @@ + + + + + + + code/__DEFINES/spaceman_dmm.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/spaceman_dmm.dm + +

+ + + + + + + + + + + + + + +
RETURN_TYPESets a return type expression for a proc. The return type can take the forms:
SHOULD_CALL_PARENTIf set, will enable a diagnostic on children of the proc it is set on which do +not contain any ..() parent calls. This can help with finding situations +where a signal or other important handling in the parent proc is being skipped. +Child procs may set this setting to 0 instead to override the check.
SHOULD_NOT_OVERRIDEIf set, raise a warning for any child procs that override this one, +regardless of if it calls parent or not. +This functions in a similar way to the final keyword in some languages. +This cannot be disabled by child overrides.
SHOULD_NOT_SLEEPIf set, raise a warning if the proc or one of the sub-procs it calls +uses a blocking call, such as sleep() or input() without using set waitfor = 0 +This cannot be disabled by child overrides.
SHOULD_BE_PUREIf set, ensure a proc is 'pure', such that it does not make any changes +outside itself or output. This also checks to make sure anything using +this proc doesn't invoke it without making use of the return value. +This cannot be disabled by child overrides.
PRIVATE_PROCPrivate procs can only be called by things of exactly the same type.
PROTECTED_PROCProtected procs can only be call by things of the same type or subtypes.
UNLINTIf set, will not lint.
VAR_FINALIf set, overriding their value isn't permitted by types that inherit it.
VAR_PRIVATEPrivate vars can only be called by things of exactly the same type.
VAR_PROTECTEDProtected vars can only be called by things of the same type or subtypes.
/proc/auxtools_expr_stubauxtools expression evaluation

Define Details

+

PRIVATE_PROC + + + +

+

Private procs can only be called by things of exactly the same type.

PROTECTED_PROC + + + +

+

Protected procs can only be call by things of the same type or subtypes.

RETURN_TYPE + + + +

+

Sets a return type expression for a proc. The return type can take the forms:

+

/typepath - a raw typepath. The return type of the proc is the type named.

+

param - a typepath given as a parameter, for procs which return an instance of the passed-in type.

+

param.type - the static type of a passed-in parameter, for procs which +return their input or otherwise another value of the same type.

+

param[_].type - the static type of a passed-in parameter, with one level +of /list stripped, for procs which select one item from a list. The [_] +may be repeated to strip more levels of /list.

SHOULD_BE_PURE + + + +

+

If set, ensure a proc is 'pure', such that it does not make any changes +outside itself or output. This also checks to make sure anything using +this proc doesn't invoke it without making use of the return value. +This cannot be disabled by child overrides.

SHOULD_CALL_PARENT + + + +

+

If set, will enable a diagnostic on children of the proc it is set on which do +not contain any ..() parent calls. This can help with finding situations +where a signal or other important handling in the parent proc is being skipped. +Child procs may set this setting to 0 instead to override the check.

SHOULD_NOT_OVERRIDE + + + +

+

If set, raise a warning for any child procs that override this one, +regardless of if it calls parent or not. +This functions in a similar way to the final keyword in some languages. +This cannot be disabled by child overrides.

SHOULD_NOT_SLEEP + + + +

+

If set, raise a warning if the proc or one of the sub-procs it calls +uses a blocking call, such as sleep() or input() without using set waitfor = 0 +This cannot be disabled by child overrides.

UNLINT + + + +

+

If set, will not lint.

VAR_FINAL + + +

+

If set, overriding their value isn't permitted by types that inherit it.

VAR_PRIVATE + + +

+

Private vars can only be called by things of exactly the same type.

VAR_PROTECTED + + +

+

Protected vars can only be called by things of the same type or subtypes.

+ + + diff --git a/code/__DEFINES/spatial_gridmap.html b/code/__DEFINES/spatial_gridmap.html new file mode 100644 index 0000000000000..a714463cd0e5b --- /dev/null +++ b/code/__DEFINES/spatial_gridmap.html @@ -0,0 +1,48 @@ + + + + + + + code/__DEFINES/spatial_gridmap.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/spatial_gridmap.dm + +

+ + + + + +
SPATIAL_GRID_CELLSIZEeach cell in a spatial_grid is this many turfs in length and width
SPATIAL_GRID_CONTENTS_TYPE_HEARINGeverything that is hearing sensitive is stored in this channel
SPATIAL_GRID_CONTENTS_TYPE_CLIENTSevery movable that has a client in it is stored in this channel
HAS_SPATIAL_GRID_CONTENTSwhether movable is itself or containing something which should be in one of the spatial grid channels.

Define Details

+

HAS_SPATIAL_GRID_CONTENTS + + + +

+

whether movable is itself or containing something which should be in one of the spatial grid channels.

SPATIAL_GRID_CELLSIZE + + +

+

each cell in a spatial_grid is this many turfs in length and width

SPATIAL_GRID_CONTENTS_TYPE_CLIENTS + + +

+

every movable that has a client in it is stored in this channel

SPATIAL_GRID_CONTENTS_TYPE_HEARING + + +

+

everything that is hearing sensitive is stored in this channel

+ + + diff --git a/code/__DEFINES/status_effects.html b/code/__DEFINES/status_effects.html new file mode 100644 index 0000000000000..a03da791a4b6c --- /dev/null +++ b/code/__DEFINES/status_effects.html @@ -0,0 +1,42 @@ + + + + + + + code/__DEFINES/status_effects.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/status_effects.dm + +

+ + + + +
STATUS_EFFECT_MELTINGdamage and sunder over time
STATUS_EFFECT_MICROWAVEdamage over time
STATUS_EFFECT_SHATTERarmor reduction

Define Details

+

STATUS_EFFECT_MELTING + + +

+

damage and sunder over time

STATUS_EFFECT_MICROWAVE + + +

+

damage over time

STATUS_EFFECT_SHATTER + + +

+

armor reduction

+ + + diff --git a/code/__DEFINES/stripping.html b/code/__DEFINES/stripping.html new file mode 100644 index 0000000000000..552bbfe0809dd --- /dev/null +++ b/code/__DEFINES/stripping.html @@ -0,0 +1,42 @@ + + + + + + + code/__DEFINES/stripping.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/stripping.dm + +

+ + + + +
STRIPPABLE_OBSCURING_NONEThis slot is not obscured.
STRIPPABLE_OBSCURING_COMPLETELYThis slot is completely obscured, and cannot be accessed.
STRIPPABLE_OBSCURING_HIDDENThis slot can't be seen, but can be accessed.

Define Details

+

STRIPPABLE_OBSCURING_COMPLETELY + + +

+

This slot is completely obscured, and cannot be accessed.

STRIPPABLE_OBSCURING_HIDDEN + + +

+

This slot can't be seen, but can be accessed.

STRIPPABLE_OBSCURING_NONE + + +

+

This slot is not obscured.

+ + + diff --git a/code/__DEFINES/synthetic.html b/code/__DEFINES/synthetic.html new file mode 100644 index 0000000000000..b7d7247684e85 --- /dev/null +++ b/code/__DEFINES/synthetic.html @@ -0,0 +1,32 @@ + + + + + + + code/__DEFINES/synthetic.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/synthetic.dm + +

+ + +
SYNTHETIC_CRIT_THRESHOLDThe threshold that synthetics enter their special critical condition phase and overheat

Define Details

+

SYNTHETIC_CRIT_THRESHOLD + + +

+

The threshold that synthetics enter their special critical condition phase and overheat

+ + + diff --git a/code/__DEFINES/text.html b/code/__DEFINES/text.html new file mode 100644 index 0000000000000..46dafa7e5450c --- /dev/null +++ b/code/__DEFINES/text.html @@ -0,0 +1,104 @@ + + + + + + + code/__DEFINES/text.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/text.dm + +

+ + + + + + + + + + + +
MAPTEXTPrepares a text to be used for maptext. Use this so it doesn't look hideous.
MAPTEXT_PIXELLARIPixel-perfect scaled fonts for use in the MAP element as defined in skin.dmf
MAPTEXT_GRAND9KStandard size (ie: normal runechat) - Size options: 6pt 12pt 18pt.
MAPTEXT_TINY_UNICODESmall size. (ie: context subtooltips, spell delays) - Size options: 12pt 24pt.
MAPTEXT_SPESSFONTSmallest size. (ie: whisper runechat) - Size options: 6pt 12pt 18pt.
MAPTEXT_VCR_OSD_MONOPrepares a text to be used for maptext, using a variable size font.
WXH_TO_HEIGHTMacro from Lummox used to get height from a MeasureText proc +resolves the MeasureText() return value once, then resolves the height, then sets return_var to that.
SANITIZE_FILENAMERemoves characters incompatible with file names.
STRIP_HTML_SIMPLESimply removes the < and > characters, and limits the length of the message.
LOWER_TEXTBYOND's string procs don't support being used on datum references (as in it doesn't look for a name for stringification) +We just use this macro to ensure that we will only pass strings to this BYOND-level function without developers needing to really worry about it.

Define Details

+

LOWER_TEXT + + + +

+

BYOND's string procs don't support being used on datum references (as in it doesn't look for a name for stringification) +We just use this macro to ensure that we will only pass strings to this BYOND-level function without developers needing to really worry about it.

MAPTEXT + + + +

+

Prepares a text to be used for maptext. Use this so it doesn't look hideous.

MAPTEXT_GRAND9K + + + +

+

Standard size (ie: normal runechat) - Size options: 6pt 12pt 18pt.

MAPTEXT_PIXELLARI + + + +

+

Pixel-perfect scaled fonts for use in the MAP element as defined in skin.dmf

+

Four sizes to choose from, use the sizes as mentioned below. +Between the variations and a step there should be an option that fits your use case. +BYOND uses pt sizing, different than px used in TGUI. Using px will make it look blurry due to poor antialiasing.

+

Default sizes are prefilled in the macro for ease of use and a consistent visual look. +To use a step other than the default in the macro, specify it in a span style. +For example: MAPTEXT_PIXELLARI("Some large maptext here") +Large size (ie: context tooltips) - Size options: 12pt 24pt.

MAPTEXT_SPESSFONT + + + +

+

Smallest size. (ie: whisper runechat) - Size options: 6pt 12pt 18pt.

MAPTEXT_TINY_UNICODE + + + +

+

Small size. (ie: context subtooltips, spell delays) - Size options: 12pt 24pt.

MAPTEXT_VCR_OSD_MONO + + + +

+

Prepares a text to be used for maptext, using a variable size font.

+

More flexible but doesn't scale pixel perfect to BYOND icon resolutions. +(May be blurry.) Can use any size in pt or px.

+

You MUST Specify the size when using the macro +For example: MAPTEXT_VCR_OSD_MONO("Some large maptext here") +Prepares a text to be used for maptext, using a variable size font. +Variable size font. More flexible but doesn't scale pixel perfect to BYOND icon resolutions. (May be blurry.) Can use any size in pt or px.

SANITIZE_FILENAME + + + +

+

Removes characters incompatible with file names.

STRIP_HTML_SIMPLE + + + +

+

Simply removes the < and > characters, and limits the length of the message.

WXH_TO_HEIGHT + + + +

+

Macro from Lummox used to get height from a MeasureText proc +resolves the MeasureText() return value once, then resolves the height, then sets return_var to that.

+ + + diff --git a/code/__DEFINES/tgs.html b/code/__DEFINES/tgs.html new file mode 100644 index 0000000000000..9882c97d6ca88 --- /dev/null +++ b/code/__DEFINES/tgs.html @@ -0,0 +1,237 @@ + + + + + + + code/__DEFINES/tgs.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/tgs.dm + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TGS_FILE2TEXT_NATIVEConsumers SHOULD create this define if you want to do TGS configuration outside of this file.
TGS_EVENT_REBOOT_MODE_CHANGEBefore a reboot mode change, extras parameters are the current and new reboot mode enums.
TGS_EVENT_PORT_SWAPBefore a port change is about to happen, extra parameters is new port.
TGS_EVENT_INSTANCE_RENAMEDBefore the instance is renamed, extra parameter is the new name.
TGS_EVENT_WATCHDOG_REATTACHAfter the watchdog reattaches to DD, extra parameter is the new /datum/tgs_version of the server.
TGS_EVENT_HEALTH_CHECKWhen the watchdog sends a health check to DD. No parameters.
TGS_EVENT_REPO_RESET_ORIGINWhen the repository is reset to its origin reference. Parameters: Reference name, Commit SHA.
TGS_EVENT_REPO_CHECKOUTWhen the repository performs a checkout. Parameters: Checkout git object.
TGS_EVENT_REPO_FETCHWhen the repository performs a fetch operation. No parameters.
TGS_EVENT_REPO_MERGE_PULL_REQUESTWhen the repository test merges. Parameters: PR Number, PR Sha, (Nullable) Comment made by TGS user.
TGS_EVENT_REPO_PRE_SYNCHRONIZEBefore the repository makes a sychronize operation. Parameters: Absolute repostiory path.
TGS_EVENT_ENGINE_INSTALL_STARTBefore a engine install operation begins. Parameters: Version string of the installing engine.
TGS_EVENT_ENGINE_INSTALL_FAILWhen a engine install operation fails. Parameters: Error message
TGS_EVENT_ENGINE_ACTIVE_VERSION_CHANGEWhen the active engine version changes. Parameters: (Nullable) Version string of the current engine, version string of the new engine.
TGS_EVENT_COMPILE_STARTWhen the compiler starts running. Parameters: Game directory path, origin commit SHA.
TGS_EVENT_COMPILE_CANCELLEDWhen a compile is cancelled. No parameters.
TGS_EVENT_COMPILE_FAILUREWhen a compile fails. Parameters: Game directory path, [TRUE]/[FALSE] based on if the cause for failure was DMAPI validation.
TGS_EVENT_COMPILE_COMPLETEWhen a compile operation completes. Note, this event fires before the new .dmb is loaded into the watchdog. Consider using the TGS_EVENT_DEPLOYMENT_COMPLETE instead. Parameters: Game directory path.
TGS_EVENT_INSTANCE_AUTO_UPDATE_STARTWhen an automatic update for the current instance begins. No parameters.
TGS_EVENT_REPO_MERGE_CONFLICTWhen the repository encounters a merge conflict: Parameters: Base SHA, target SHA, base reference, target reference.
TGS_EVENT_DEPLOYMENT_COMPLETEWhen a deployment completes. No Parameters.
TGS_EVENT_WATCHDOG_SHUTDOWNBefore the watchdog shuts down. Not sent for graceful shutdowns. No parameters.
TGS_EVENT_WATCHDOG_DETACHBefore the watchdog detaches for a TGS update/restart. No parameters.
TGS_EVENT_WORLD_PRIMEWatchdog event when TgsInitializationComplete() is called. No parameters.
TGS_EVENT_REPO_SUBMODULE_UPDATEAfter a single submodule update is performed. Parameters: Updated submodule name.
TGS_EVENT_PRE_DREAM_MAKERAfter CodeModifications are applied, before DreamMaker is run. Parameters: Game directory path, origin commit sha, version string of the used engine.
TGS_EVENT_DEPLOYMENT_CLEANUPWhenever a deployment folder is deleted from disk. Parameters: Game directory path.
TGS_REBOOT_MODE_NORMALThe server will reboot normally.
TGS_REBOOT_MODE_SHUTDOWNThe server will stop running on reboot.
TGS_REBOOT_MODE_RESTARTThe watchdog will restart on reboot.
TGS_SECURITY_TRUSTEDDreamDaemon Trusted security level.
TGS_SECURITY_SAFEDreamDaemon Safe security level.
TGS_SECURITY_ULTRASAFEDreamDaemon Ultrasafe security level.
TGS_VISIBILITY_PUBLICDreamDaemon public visibility level.
TGS_VISIBILITY_PRIVATEDreamDaemon private visibility level.
TGS_VISIBILITY_INVISIBLEDreamDaemon invisible visibility level.
TGS_ENGINE_TYPE_BYONDThe Build Your Own Net Dream engine.
TGS_ENGINE_TYPE_OPENDREAMThe OpenDream engine.
TGS_TOPICConsumers MUST run this macro at the start of [/world/proc/Topic].
/datum/tgs_revision_informationRepresents git revision information.
/datum/tgs_versionRepresents a version.
/datum/tgs_revision_information/test_mergeRepresents a merge of a GitHub pull request.
/datum/tgs_chat_channelRepresents a connected chat channel.
/datum/tgs_event_handlerUser definable handler for TGS events This abstract version SHOULD be overridden to be used.
/datum/tgs_http_handlerUser definable handler for HTTP calls. This abstract version MUST be overridden to be used.
/datum/tgs_http_resultResult of a /datum/tgs_http_handler call. MUST NOT be overridden.
/datum/tgs_chat_commandUser definable chat command. This abstract version MUST be overridden to be used.
/datum/tgs_message_contentUser definable chat message. MUST NOT be overridden.
/datum/tgs_chat_embed/structureUser definable chat embed. Currently mirrors Discord chat embeds. See https://discord.com/developers/docs/resources/message#embed-object for details.
/datum/tgs_chat_embed/mediaCommon datum for similar Discord embed medias.
/datum/tgs_chat_embed/footerSee https://discord.com/developers/docs/resources/message#embed-object-embed-footer-structure for details.
/datum/tgs_chat_embed/providerSee https://discord.com/developers/docs/resources/message#embed-object-embed-provider-structure for details.
/datum/tgs_chat_embed/provider/authorSee https://discord.com/developers/docs/resources/message#embed-object-embed-author-structure for details. Must have name set in New().
/datum/tgs_chat_embed/fieldSee https://discord.com/developers/docs/resources/message#embed-object-embed-field-structure for details.

Define Details

+

TGS_ENGINE_TYPE_BYOND + + +

+

The Build Your Own Net Dream engine.

TGS_ENGINE_TYPE_OPENDREAM + + +

+

The OpenDream engine.

TGS_EVENT_COMPILE_CANCELLED + + +

+

When a compile is cancelled. No parameters.

TGS_EVENT_COMPILE_COMPLETE + + +

+

When a compile operation completes. Note, this event fires before the new .dmb is loaded into the watchdog. Consider using the TGS_EVENT_DEPLOYMENT_COMPLETE instead. Parameters: Game directory path.

TGS_EVENT_COMPILE_FAILURE + + +

+

When a compile fails. Parameters: Game directory path, [TRUE]/[FALSE] based on if the cause for failure was DMAPI validation.

TGS_EVENT_COMPILE_START + + +

+

When the compiler starts running. Parameters: Game directory path, origin commit SHA.

TGS_EVENT_DEPLOYMENT_CLEANUP + + +

+

Whenever a deployment folder is deleted from disk. Parameters: Game directory path.

TGS_EVENT_DEPLOYMENT_COMPLETE + + +

+

When a deployment completes. No Parameters.

TGS_EVENT_ENGINE_ACTIVE_VERSION_CHANGE + + +

+

When the active engine version changes. Parameters: (Nullable) Version string of the current engine, version string of the new engine.

TGS_EVENT_ENGINE_INSTALL_FAIL + + +

+

When a engine install operation fails. Parameters: Error message

TGS_EVENT_ENGINE_INSTALL_START + + +

+

Before a engine install operation begins. Parameters: Version string of the installing engine.

TGS_EVENT_HEALTH_CHECK + + +

+

When the watchdog sends a health check to DD. No parameters.

TGS_EVENT_INSTANCE_AUTO_UPDATE_START + + +

+

When an automatic update for the current instance begins. No parameters.

TGS_EVENT_INSTANCE_RENAMED + + +

+

Before the instance is renamed, extra parameter is the new name.

TGS_EVENT_PORT_SWAP + + +

+

Before a port change is about to happen, extra parameters is new port.

TGS_EVENT_PRE_DREAM_MAKER + + +

+

After CodeModifications are applied, before DreamMaker is run. Parameters: Game directory path, origin commit sha, version string of the used engine.

TGS_EVENT_REBOOT_MODE_CHANGE + + +

+

Before a reboot mode change, extras parameters are the current and new reboot mode enums.

TGS_EVENT_REPO_CHECKOUT + + +

+

When the repository performs a checkout. Parameters: Checkout git object.

TGS_EVENT_REPO_FETCH + + +

+

When the repository performs a fetch operation. No parameters.

TGS_EVENT_REPO_MERGE_CONFLICT + + +

+

When the repository encounters a merge conflict: Parameters: Base SHA, target SHA, base reference, target reference.

TGS_EVENT_REPO_MERGE_PULL_REQUEST + + +

+

When the repository test merges. Parameters: PR Number, PR Sha, (Nullable) Comment made by TGS user.

TGS_EVENT_REPO_PRE_SYNCHRONIZE + + +

+

Before the repository makes a sychronize operation. Parameters: Absolute repostiory path.

TGS_EVENT_REPO_RESET_ORIGIN + + +

+

When the repository is reset to its origin reference. Parameters: Reference name, Commit SHA.

TGS_EVENT_REPO_SUBMODULE_UPDATE + + +

+

After a single submodule update is performed. Parameters: Updated submodule name.

TGS_EVENT_WATCHDOG_DETACH + + +

+

Before the watchdog detaches for a TGS update/restart. No parameters.

TGS_EVENT_WATCHDOG_REATTACH + + +

+

After the watchdog reattaches to DD, extra parameter is the new /datum/tgs_version of the server.

TGS_EVENT_WATCHDOG_SHUTDOWN + + +

+

Before the watchdog shuts down. Not sent for graceful shutdowns. No parameters.

TGS_EVENT_WORLD_PRIME + + +

+

Watchdog event when TgsInitializationComplete() is called. No parameters.

TGS_FILE2TEXT_NATIVE + + +

+

Consumers SHOULD create this define if you want to do TGS configuration outside of this file.

TGS_REBOOT_MODE_NORMAL + + +

+

The server will reboot normally.

TGS_REBOOT_MODE_RESTART + + +

+

The watchdog will restart on reboot.

TGS_REBOOT_MODE_SHUTDOWN + + +

+

The server will stop running on reboot.

TGS_SECURITY_SAFE + + +

+

DreamDaemon Safe security level.

TGS_SECURITY_TRUSTED + + +

+

DreamDaemon Trusted security level.

TGS_SECURITY_ULTRASAFE + + +

+

DreamDaemon Ultrasafe security level.

TGS_TOPIC + + +

+

Consumers MUST run this macro at the start of [/world/proc/Topic].

TGS_VISIBILITY_INVISIBLE + + +

+

DreamDaemon invisible visibility level.

TGS_VISIBILITY_PRIVATE + + +

+

DreamDaemon private visibility level.

TGS_VISIBILITY_PUBLIC + + +

+

DreamDaemon public visibility level.

+ + + diff --git a/code/__DEFINES/tgui.html b/code/__DEFINES/tgui.html new file mode 100644 index 0000000000000..0db4bd0e15dbc --- /dev/null +++ b/code/__DEFINES/tgui.html @@ -0,0 +1,100 @@ + + + + + + + code/__DEFINES/tgui.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/tgui.dm + +

+ + + + + + + + + + + + + + + +
UI_INTERACTIVEGreen eye; fully interactive
UI_UPDATEOrange eye; updates but is not interactive
UI_DISABLEDRed eye; disabled, does not update
UI_CLOSEUI Should close
TGUI_WINDOW_SOFT_LIMITMaximum number of windows that can be suspended/reused
TGUI_WINDOW_HARD_LIMITMaximum number of open windows
TGUI_PING_TIMEOUTMaximum ping timeout allowed to detect husk windows
TGUI_REFRESH_FULL_UPDATE_COOLDOWNUsed for rate-limiting to prevent DoS by excessively refreshing a TGUI window
TGUI_WINDOW_CLOSEDWindow does not exist
TGUI_WINDOW_LOADINGWindow was just opened, but is still not ready to be sent data
TGUI_WINDOW_READYWindow is free and ready to receive data
TGUI_WINDOW_IDGet a window id based on the provided pool index
TGUI_WINDOW_INDEXGet a pool index of the provided window id
TGUI_CREATE_MESSAGECreates a message packet for sending via output()

Define Details

+

TGUI_CREATE_MESSAGE + + + +

+

Creates a message packet for sending via output()

TGUI_PING_TIMEOUT + + +

+

Maximum ping timeout allowed to detect husk windows

TGUI_REFRESH_FULL_UPDATE_COOLDOWN + + +

+

Used for rate-limiting to prevent DoS by excessively refreshing a TGUI window

TGUI_WINDOW_CLOSED + + +

+

Window does not exist

TGUI_WINDOW_HARD_LIMIT + + +

+

Maximum number of open windows

TGUI_WINDOW_ID + + + +

+

Get a window id based on the provided pool index

TGUI_WINDOW_INDEX + + + +

+

Get a pool index of the provided window id

TGUI_WINDOW_LOADING + + +

+

Window was just opened, but is still not ready to be sent data

TGUI_WINDOW_READY + + +

+

Window is free and ready to receive data

TGUI_WINDOW_SOFT_LIMIT + + +

+

Maximum number of windows that can be suspended/reused

UI_CLOSE + + +

+

UI Should close

UI_DISABLED + + +

+

Red eye; disabled, does not update

UI_INTERACTIVE + + +

+

Green eye; fully interactive

UI_UPDATE + + +

+

Orange eye; updates but is not interactive

+ + + diff --git a/code/__DEFINES/traits.html b/code/__DEFINES/traits.html new file mode 100644 index 0000000000000..7438fc1115ef9 --- /dev/null +++ b/code/__DEFINES/traits.html @@ -0,0 +1,169 @@ + + + + + + + code/__DEFINES/traits.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/traits.dm + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TRAIT_TOO_TALLMakes you way too tall. Like just too much, dude, it's kind of creepy. Humanoid only.
STATUS_EFFECT_TRAITA trait given by any status effect
TRAIT_STATUS_EFFECTA trait given by a specific status effect (not sure why we need both but whatever!)
REAGENT_TRAITTrait from a reagent of the given name
VEHICLE_TRAITinherited from riding vehicles
TRAIT_SUBMERGEDAM is currently submerged
TRAIT_NOSUBMERGEAM will not be submerged. Trait must ALWAYS be added via the add_nosubmerge_trait proc for correct behavior
TRAIT_WAS_RENAMEDTrait that tracks if something has been renamed. Typically holds a REF() to the object itself (AKA src) for wide addition/removal.
TRAIT_SILENT_FOOTSTEPSMakes no footsteps at all
TRAIT_LIGHT_STEPquieter footsteps
TRAIT_HEAVY_STEPnoisier footsteps
TRAIT_MAPSPAWNEDindicates this mob was spawned by a corpse spawner
TRAIT_MINDMELDEDMindmelded with another mob
TRAIT_AXE_EXPERTYou swing axe good
TRAIT_SWORD_EXPERTYou swing sword good
TRAIT_LIGHT_PAIN_RESISTPain reduction light
TRAIT_MEDIUM_PAIN_RESISTPain reduction medium
TRAIT_TANK_DESANTis currently riding an armored vehicle
TRAIT_SUPERIOR_BUILDERBuilds things better
TRAIT_HANDS_BLOCKEDPrevents usage of manipulation appendages (picking, holding or using items, manipulating storage).
TRAIT_XENOMORPH_INVISIBLE_BLOODThe target xenomorph's wound overlays won't be visible
TRAIT_NON_FLAMMABLEPrevent mob from being ignited due to IgniteMob()
TRAIT_CANT_RIDEPrevents mob from riding mobs when buckled onto something
TRAIT_IGNORE_SUFFOCATIONPrevents humans from gaining oxyloss in their handle_breath()
TRAIT_UI_BLOCKEDInability to access UI hud elements.
TRAIT_PRESERVE_UI_WITHOUT_CLIENTThis mob should never close UI even if it doesn't have a client
TRAIT_STOPS_TANK_COLLISIONstops tanks from being able to ram this mob
CAMPAIGN_MISSION_TIMER_PAUSEDPauses campaign mission timer

Define Details

+

CAMPAIGN_MISSION_TIMER_PAUSED + + +

+

Pauses campaign mission timer

REAGENT_TRAIT + + + +

+

Trait from a reagent of the given name

STATUS_EFFECT_TRAIT + + +

+

A trait given by any status effect

TRAIT_AXE_EXPERT + + +

+

You swing axe good

TRAIT_CANT_RIDE + + +

+

Prevents mob from riding mobs when buckled onto something

TRAIT_HANDS_BLOCKED + + +

+

Prevents usage of manipulation appendages (picking, holding or using items, manipulating storage).

TRAIT_HEAVY_STEP + + +

+

noisier footsteps

TRAIT_IGNORE_SUFFOCATION + + +

+

Prevents humans from gaining oxyloss in their handle_breath()

TRAIT_LIGHT_PAIN_RESIST + + +

+

Pain reduction light

TRAIT_LIGHT_STEP + + +

+

quieter footsteps

TRAIT_MAPSPAWNED + + +

+

indicates this mob was spawned by a corpse spawner

TRAIT_MEDIUM_PAIN_RESIST + + +

+

Pain reduction medium

TRAIT_MINDMELDED + + +

+

Mindmelded with another mob

TRAIT_NON_FLAMMABLE + + +

+

Prevent mob from being ignited due to IgniteMob()

TRAIT_NOSUBMERGE + + +

+

AM will not be submerged. Trait must ALWAYS be added via the add_nosubmerge_trait proc for correct behavior

TRAIT_PRESERVE_UI_WITHOUT_CLIENT + + +

+

This mob should never close UI even if it doesn't have a client

TRAIT_SILENT_FOOTSTEPS + + +

+

Makes no footsteps at all

TRAIT_STATUS_EFFECT + + + +

+

A trait given by a specific status effect (not sure why we need both but whatever!)

TRAIT_STOPS_TANK_COLLISION + + +

+

stops tanks from being able to ram this mob

TRAIT_SUBMERGED + + +

+

AM is currently submerged

TRAIT_SUPERIOR_BUILDER + + +

+

Builds things better

TRAIT_SWORD_EXPERT + + +

+

You swing sword good

TRAIT_TANK_DESANT + + +

+

is currently riding an armored vehicle

TRAIT_TOO_TALL + + +

+

Makes you way too tall. Like just too much, dude, it's kind of creepy. Humanoid only.

TRAIT_UI_BLOCKED + + +

+

Inability to access UI hud elements.

TRAIT_WAS_RENAMED + + +

+

Trait that tracks if something has been renamed. Typically holds a REF() to the object itself (AKA src) for wide addition/removal.

TRAIT_XENOMORPH_INVISIBLE_BLOOD + + +

+

The target xenomorph's wound overlays won't be visible

VEHICLE_TRAIT + + +

+

inherited from riding vehicles

+ + + diff --git a/code/__DEFINES/tts.html b/code/__DEFINES/tts.html new file mode 100644 index 0000000000000..1458cdf00ac47 --- /dev/null +++ b/code/__DEFINES/tts.html @@ -0,0 +1,37 @@ + + + + + + + code/__DEFINES/tts.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/tts.dm + +

+ + + +
TTS_FILTER_RADIOTTS filter to activate start/stop radio clicks on speech.
TTS_FILTER_SILICONTTS filter to activate a silicon effect on speech.

Define Details

+

TTS_FILTER_RADIO + + +

+

TTS filter to activate start/stop radio clicks on speech.

TTS_FILTER_SILICON + + +

+

TTS filter to activate a silicon effect on speech.

+ + + diff --git a/code/__DEFINES/unit_tests.html b/code/__DEFINES/unit_tests.html new file mode 100644 index 0000000000000..ed41019580705 --- /dev/null +++ b/code/__DEFINES/unit_tests.html @@ -0,0 +1,63 @@ + + + + + + + code/__DEFINES/unit_tests.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/unit_tests.dm + +

+ + + + +
PERFORM_ALL_TESTSAre tests enabled with no focus? +Use this when performing test assertions outside of a unit test, +since a focused test means that you're trying to run a test quickly. +If a parameter is provided, will check if the focus is on that test name. +For example, PERFORM_ALL_TESTS(log_mapping) will only run if either +no test is focused, or the focus is log_mapping.
TEST_ONLY_ASSERTASSERT(), but it only actually does anything during unit tests
REGISTER_REQUIRED_MAP_ITEMUsed for registering typepaths of item to be tracked as a "required map item" +This is used to ensure that that all station maps have certain items mapped in that they should have +Or that people aren't mapping in an excess of items that they shouldn't be +(For example, all map should only ever have 1 Pun Pun)

Define Details

+

PERFORM_ALL_TESTS + + + +

+

Are tests enabled with no focus? +Use this when performing test assertions outside of a unit test, +since a focused test means that you're trying to run a test quickly. +If a parameter is provided, will check if the focus is on that test name. +For example, PERFORM_ALL_TESTS(log_mapping) will only run if either +no test is focused, or the focus is log_mapping.

REGISTER_REQUIRED_MAP_ITEM + + + +

+

Used for registering typepaths of item to be tracked as a "required map item" +This is used to ensure that that all station maps have certain items mapped in that they should have +Or that people aren't mapping in an excess of items that they shouldn't be +(For example, all map should only ever have 1 Pun Pun)

+

Min is inclusive, Max is inclusive (so 1, 1 means min of 1, max of 1, or only 1 allowed)

+

This should only be used in Initialize(). And don't forget to update the unit test with the type itself!

TEST_ONLY_ASSERT + + + +

+

ASSERT(), but it only actually does anything during unit tests

+ + + diff --git a/code/__DEFINES/vehicles.html b/code/__DEFINES/vehicles.html new file mode 100644 index 0000000000000..0e0c68a2bb8c9 --- /dev/null +++ b/code/__DEFINES/vehicles.html @@ -0,0 +1,102 @@ + + + + + + + code/__DEFINES/vehicles.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/vehicles.dm + +

+ + + + + + + + + + + + + + + + +
VEHICLE_CONTROL_DRIVEcontrols the vehicles movement
VEHICLE_CONTROL_KIDNAPPEDCan't leave vehicle voluntarily, has to resist.
VEHICLE_CONTROL_MELEEmelee attacks/shoves a vehicle may have
VEHICLE_CONTROL_EQUIPMENTusing equipment/weapons on the vehicle
VEHICLE_CONTROL_SETTINGSchanging around settings and the like.
FULL_MECHA_CONTROLez define for giving a single pilot mech all the flags it needs.
CAN_KIDNAPWill this car kidnap people by ramming into them?
RIDER_NEEDS_ARMSDoes our vehicle require arms to operate? Also used for piggybacking on humans to reserve arms on the rider
RIDER_NEEDS_LEGSDo we need legs to ride this (checks against TRAIT_FLOORED)
UNBUCKLE_DISABLED_RIDERIf the rider is disabled or loses their needed limbs, do they fall off?
ARMORED_WRECKABLETurns into a wreck instead of being destroyed
ARMORED_IS_WRECKIs currently a wreck
MODULE_FIXED_FIRE_ARCCan only shoot in the direction of the turret
MODULE_NOT_FABRICABLENot available in the tank fab
TANK_MOD_NOT_FABRICABLENot available in the tank fab

Define Details

+

ARMORED_IS_WRECK + + +

+

Is currently a wreck

ARMORED_WRECKABLE + + +

+

Turns into a wreck instead of being destroyed

CAN_KIDNAP + + +

+

Will this car kidnap people by ramming into them?

FULL_MECHA_CONTROL + + +

+

ez define for giving a single pilot mech all the flags it needs.

MODULE_FIXED_FIRE_ARC + + +

+

Can only shoot in the direction of the turret

MODULE_NOT_FABRICABLE + + +

+

Not available in the tank fab

RIDER_NEEDS_ARMS + + +

+

Does our vehicle require arms to operate? Also used for piggybacking on humans to reserve arms on the rider

RIDER_NEEDS_LEGS + + +

+

Do we need legs to ride this (checks against TRAIT_FLOORED)

TANK_MOD_NOT_FABRICABLE + + +

+

Not available in the tank fab

UNBUCKLE_DISABLED_RIDER + + +

+

If the rider is disabled or loses their needed limbs, do they fall off?

VEHICLE_CONTROL_DRIVE + + +

+

controls the vehicles movement

VEHICLE_CONTROL_EQUIPMENT + + +

+

using equipment/weapons on the vehicle

VEHICLE_CONTROL_KIDNAPPED + + +

+

Can't leave vehicle voluntarily, has to resist.

VEHICLE_CONTROL_MELEE + + +

+

melee attacks/shoves a vehicle may have

VEHICLE_CONTROL_SETTINGS + + +

+

changing around settings and the like.

+ + + diff --git a/code/__DEFINES/vv.html b/code/__DEFINES/vv.html new file mode 100644 index 0000000000000..d27cd7c043321 --- /dev/null +++ b/code/__DEFINES/vv.html @@ -0,0 +1,43 @@ + + + + + + + code/__DEFINES/vv.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/vv.dm + +

+ + + + +
IS_VALID_ASSOC_KEYBasically a combination of the following: (istext(V) || ispath(V) || isdatum(V) || islist(V))
VV_HK_VARNAMEname or index of var for 1 variable targeting hrefs.
VV_ALWAYS_CONTRACT_LISTALWAYS render a reduced list, useful for fuckoff big datums that need to be condensed for the sake of client load

Define Details

+

IS_VALID_ASSOC_KEY + + + +

+

Basically a combination of the following: (istext(V) || ispath(V) || isdatum(V) || islist(V))

VV_ALWAYS_CONTRACT_LIST + + +

+

ALWAYS render a reduced list, useful for fuckoff big datums that need to be condensed for the sake of client load

VV_HK_VARNAME + + +

+

name or index of var for 1 variable targeting hrefs.

+ + + diff --git a/code/__DEFINES/xeno.html b/code/__DEFINES/xeno.html new file mode 100644 index 0000000000000..8f76d3a8b468f --- /dev/null +++ b/code/__DEFINES/xeno.html @@ -0,0 +1,118 @@ + + + + + + + code/__DEFINES/xeno.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__DEFINES/xeno.dm + +

+ + + + + + + + + + + + + + + + + + +
XENO_STRUCT_WARNING_RADIUSStructure will warn when hostiles are nearby
XENO_STRUCT_DAMAGE_ALERTStructure will warn when damaged
UPGRADE_FLAG_MESSAGE_HIVEMessage the hive when we buy this upgrade
HEAL_XENO_DAMAGEHeals a xeno, respecting different types of damage
adjustOverhealAdjusts overheal and returns the amount by which it was adjusted
NO_ERRORUsed by the is_valid_for_resin_structure proc. +0 is considered valid , anything thats not 0 is false +Simply not allowed by the area to build
ERROR_NO_WEEDNo weeds here, but it is weedable
ERROR_CANT_WEEDArea is not weedable
ERROR_FOGGamemode-fog prevents spawn-building
ERROR_BLOCKERBlocked by a xeno
ERROR_NO_SUPPORTNo adjaecent wall or door tile
ERROR_CONSTRUCTFailed to other blockers such as egg, power plant , coocon , traps
XENO_HUD_ICON_BUCKETSNumber of icon states to show health and plasma on the side UI buttons
XENO_PER_SECOND_LIFE_MODLife runs every 2 seconds, but we don't want to multiply all healing by 2 due to seconds_per_tick
XENO_STRUCTURE_HEALTH_ALERT_COOLDOWNHow frequently the damage alert can go off
XENO_STRUCTURE_DETECTION_COOLDOWNHow frequently the proximity alert can go off
XENO_STRUCTURE_DETECTION_RANGEProxy detection radius

Define Details

+

ERROR_BLOCKER + + +

+

Blocked by a xeno

ERROR_CANT_WEED + + +

+

Area is not weedable

ERROR_CONSTRUCT + + +

+

Failed to other blockers such as egg, power plant , coocon , traps

ERROR_FOG + + +

+

Gamemode-fog prevents spawn-building

ERROR_NO_SUPPORT + + +

+

No adjaecent wall or door tile

ERROR_NO_WEED + + +

+

No weeds here, but it is weedable

HEAL_XENO_DAMAGE + + + +

+

Heals a xeno, respecting different types of damage

NO_ERROR + + +

+

Used by the is_valid_for_resin_structure proc. +0 is considered valid , anything thats not 0 is false +Simply not allowed by the area to build

UPGRADE_FLAG_MESSAGE_HIVE + + +

+

Message the hive when we buy this upgrade

XENO_HUD_ICON_BUCKETS + + +

+

Number of icon states to show health and plasma on the side UI buttons

XENO_PER_SECOND_LIFE_MOD + + +

+

Life runs every 2 seconds, but we don't want to multiply all healing by 2 due to seconds_per_tick

XENO_STRUCTURE_DETECTION_COOLDOWN + + +

+

How frequently the proximity alert can go off

XENO_STRUCTURE_DETECTION_RANGE + + +

+

Proxy detection radius

XENO_STRUCTURE_HEALTH_ALERT_COOLDOWN + + +

+

How frequently the damage alert can go off

XENO_STRUCT_DAMAGE_ALERT + + +

+

Structure will warn when damaged

XENO_STRUCT_WARNING_RADIUS + + +

+

Structure will warn when hostiles are nearby

adjustOverheal + + + +

+

Adjusts overheal and returns the amount by which it was adjusted

+ + + diff --git a/code/__HELPERS/_lists.html b/code/__HELPERS/_lists.html new file mode 100644 index 0000000000000..ace390ffa2b40 --- /dev/null +++ b/code/__HELPERS/_lists.html @@ -0,0 +1,241 @@ + + + + + + + code/__HELPERS/_lists.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__HELPERS/_lists.dm + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
LIST_VALUE_WRAP_LISTSIf value is a list, wrap it in a list so it can be used with list add/remove operations
UNTYPED_LIST_ADDAdd an untyped item to a list, taking care to handle list items by wrapping them in a list to remove the footgun
UNTYPED_LIST_REMOVERemove an untyped item to a list, taking care to handle list items by wrapping them in a list to remove the footgun
LAZYINITLISTInitialize the lazylist
UNSETEMPTYIf the provided list is empty, set it to null
ASSOC_UNSETEMPTYIf the provided key -> list is empty, remove it from the list
LAZYLISTDUPLICATELike LAZYCOPY - copies an input list if the list has entries, If it doesn't the assigned list is nulled
LAZYREMOVERemove an item from the list, set the list to null if empty
LAZYADDAdd an item to the list, if the list is null it will initialize it
LAZYORAdd an item to the list if not already present, if the list is null it will initialize it
LAZYFINDReturns the key of the submitted item in the list
LAZYACCESSreturns L[I] if L exists and I is a valid index of L, runtimes if L is not a list
LAZYSETSets the item K to the value V, if the list is null it will initialize it
LAZYSETLENSets the length of a lazylist
LAZYLENReturns the length of the list
LAZYNULLSets a list to null
LAZYADDASSOCSIMPLEAdds to the item K the value V, if the list is null it will initialize it
LAZYADDASSOCLISTThis is used to add onto lazy assoc list when the value you're adding is a /list/. This one has extra safety over lazyaddassoc because the value could be null (and thus cant be used to += objects)
LAZYREMOVEASSOCRemoves the value V from the item K, if the item K is empty will remove it from the list, if the list is empty will set the list to null
LAZYACCESSASSOCAccesses an associative list, returns null if nothing is found
QDEL_LAZYLISTQdel every item in the list before setting the list to null
LAZYCOPYUse LAZYLISTDUPLICATE instead if you want it to null with no entries
LAZYCLEARLISTConsider LAZYNULL instead
SANITIZE_LISTReturns the list if it's actually a valid list, otherwise will initialize it
LAZYORASSOCLISTPerforms an insertion on the given lazy list with the given key and value. If the value already exists, a new one will not be made.
COMPARE_KEYPassed into BINARY_INSERT to compare keys
COMPARE_VALUEPassed into BINARY_INSERT to compare values
BINARY_INSERTBinary search sorted insert +INPUT: Object to be inserted +LIST: List to insert object into +TYPECONT: The typepath of the contents of the list +COMPARE: The object to compare against, usualy the same as INPUT +COMPARISON: The variable on the objects to compare +COMPTYPE: How should the values be compared? Either COMPARE_KEY or COMPARE_VALUE.
listclearnullsRemoves any null entries from the list +Returns TRUE if the list had nulls, FALSE otherwise
/proc/pickweightPicks a random element from a list based on a weighting system. +For example, given the following list: +A = 6, B = 3, C = 1, D = 0 +A would have a 60% chance of being picked, +B would have a 30% chance of being picked, +C would have a 10% chance of being picked, +and D would have a 0% chance of being picked. +You should only pass integers in.
/proc/unique_listReturn a list with no duplicate entries
/proc/unique_list_in_placesame as unique_list, but returns nothing and acts on list in place (also handles associated values properly)
/proc/assoc_to_keysTurns an associative list into a flat list of keys
/proc/compare_listflat list comparison, checks if two lists have the same contents
/proc/pick_weight_recursiveLike pickweight, but allowing for nested lists.
/proc/list_clear_nullsRemoves any null entries from the list +Returns TRUE if the list had nulls, FALSE otherwise
/proc/sort_listsort any value in a list
/proc/sort_namesuses sort_list() but uses the var's name specifically. This should probably be using mergeAtom() instead
/proc/bitfield_to_listConverts a bitfield to a list of numbers (or words if a wordlist is provided)

Define Details

+

ASSOC_UNSETEMPTY + + + +

+

If the provided key -> list is empty, remove it from the list

BINARY_INSERT + + + +

+

Binary search sorted insert +INPUT: Object to be inserted +LIST: List to insert object into +TYPECONT: The typepath of the contents of the list +COMPARE: The object to compare against, usualy the same as INPUT +COMPARISON: The variable on the objects to compare +COMPTYPE: How should the values be compared? Either COMPARE_KEY or COMPARE_VALUE.

COMPARE_KEY + + +

+

Passed into BINARY_INSERT to compare keys

COMPARE_VALUE + + +

+

Passed into BINARY_INSERT to compare values

LAZYACCESS + + + +

+

returns L[I] if L exists and I is a valid index of L, runtimes if L is not a list

LAZYACCESSASSOC + + + +

+

Accesses an associative list, returns null if nothing is found

LAZYADD + + + +

+

Add an item to the list, if the list is null it will initialize it

LAZYADDASSOCLIST + + + +

+

This is used to add onto lazy assoc list when the value you're adding is a /list/. This one has extra safety over lazyaddassoc because the value could be null (and thus cant be used to += objects)

LAZYADDASSOCSIMPLE + + + +

+

Adds to the item K the value V, if the list is null it will initialize it

LAZYCLEARLIST + + + +

+

Consider LAZYNULL instead

LAZYCOPY + + + +

+

Use LAZYLISTDUPLICATE instead if you want it to null with no entries

LAZYFIND + + + +

+

Returns the key of the submitted item in the list

LAZYINITLIST + + + +

+

Initialize the lazylist

LAZYLEN + + + +

+

Returns the length of the list

LAZYLISTDUPLICATE + + + +

+

Like LAZYCOPY - copies an input list if the list has entries, If it doesn't the assigned list is nulled

LAZYNULL + + + +

+

Sets a list to null

LAZYOR + + + +

+

Add an item to the list if not already present, if the list is null it will initialize it

LAZYORASSOCLIST + + + +

+

Performs an insertion on the given lazy list with the given key and value. If the value already exists, a new one will not be made.

LAZYREMOVE + + + +

+

Remove an item from the list, set the list to null if empty

LAZYREMOVEASSOC + + + +

+

Removes the value V from the item K, if the item K is empty will remove it from the list, if the list is empty will set the list to null

LAZYSET + + + +

+

Sets the item K to the value V, if the list is null it will initialize it

LAZYSETLEN + + + +

+

Sets the length of a lazylist

LIST_VALUE_WRAP_LISTS + + + +

+

If value is a list, wrap it in a list so it can be used with list add/remove operations

QDEL_LAZYLIST + + + +

+

Qdel every item in the list before setting the list to null

SANITIZE_LIST + + + +

+

Returns the list if it's actually a valid list, otherwise will initialize it

UNSETEMPTY + + + +

+

If the provided list is empty, set it to null

UNTYPED_LIST_ADD + + + +

+

Add an untyped item to a list, taking care to handle list items by wrapping them in a list to remove the footgun

UNTYPED_LIST_REMOVE + + + +

+

Remove an untyped item to a list, taking care to handle list items by wrapping them in a list to remove the footgun

listclearnulls + + + +

+

Removes any null entries from the list +Returns TRUE if the list had nulls, FALSE otherwise

+ + + diff --git a/code/__HELPERS/_planes.html b/code/__HELPERS/_planes.html new file mode 100644 index 0000000000000..9534904d3e261 --- /dev/null +++ b/code/__HELPERS/_planes.html @@ -0,0 +1,135 @@ + + + + + + + code/__HELPERS/_planes.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__HELPERS/_planes.dm + +

+ + + + + + + + + + + + + + + +
SET_PLANETakes an atom to change the plane of, a new plane value, and something that can be used as a reference to a z level as input +Modifies the new value to match the plane we actually want. Note, if you pass in an already offset plane the offsets will add up +Use PLANE_TO_TRUE() to avoid this
MUTATE_PLANETakes a plane and a z reference, and offsets the plane by the mutation +The SSmapping.max_plane_offset bit here is technically redundant, but saves a bit of work in the base case +And the base case is important to me. Non multiz shouldn't get hit too bad by this code
GET_TURF_PLANE_OFFSETTakes a z reference that we are unsure of, sanity checks it +Returns either its offset, or 0 if it's not a valid ref +Will return the reference's PLANE'S offset if we can't get anything out of the z level. We do our best
GET_Z_PLANE_OFFSETEssentially just an unsafe version of GET_TURF_PLANE_OFFSET() +Takes a z value we returns its offset with a list lookup +Will runtime during parts of init. Be careful :)
GET_NEW_PLANETakes a plane to offset, and the multiplier to use, and well, does the offsetting +Respects a blacklist we use to remove redundant plane masters, such as hud objects
SET_PLANE_W_SCALARTakes an object, new plane, and multipler, and offsets the plane +This is for cases where you have a multipler precalculated, and just want to use it +Often an optimization, sometimes a necessity
SET_PLANE_IMPLICITImplicit plane set. We take the turf from the object we're changing the plane of, and use ITS z as a spokesperson for our plane value
GET_LOWEST_STACK_OFFSETTakes a z level, gets the lowest plane offset in its "stack"
PLANE_TO_TRUETakes a plane, returns the canonical, unoffset plane it represents
PLANE_TO_OFFSETTakes a plane, returns the offset it uses
PLANE_IS_CRITICALTakes a plane, returns TRUE if it is of critical priority, FALSE otherwise
TRUE_PLANE_TO_OFFSETSTakes a true plane, returns the offset planes that would canonically represent it
OFFSET_RENDER_TARGETTakes a render target and an offset, returns a canonical render target string for it
_OFFSET_RENDER_TARGETHelper macro for the above +Honestly just exists to make the pattern of render target strings more readable

Define Details

+

GET_LOWEST_STACK_OFFSET + + + +

+

Takes a z level, gets the lowest plane offset in its "stack"

GET_NEW_PLANE + + + +

+

Takes a plane to offset, and the multiplier to use, and well, does the offsetting +Respects a blacklist we use to remove redundant plane masters, such as hud objects

GET_TURF_PLANE_OFFSET + + + +

+

Takes a z reference that we are unsure of, sanity checks it +Returns either its offset, or 0 if it's not a valid ref +Will return the reference's PLANE'S offset if we can't get anything out of the z level. We do our best

GET_Z_PLANE_OFFSET + + + +

+

Essentially just an unsafe version of GET_TURF_PLANE_OFFSET() +Takes a z value we returns its offset with a list lookup +Will runtime during parts of init. Be careful :)

MUTATE_PLANE + + + +

+

Takes a plane and a z reference, and offsets the plane by the mutation +The SSmapping.max_plane_offset bit here is technically redundant, but saves a bit of work in the base case +And the base case is important to me. Non multiz shouldn't get hit too bad by this code

OFFSET_RENDER_TARGET + + + +

+

Takes a render target and an offset, returns a canonical render target string for it

PLANE_IS_CRITICAL + + + +

+

Takes a plane, returns TRUE if it is of critical priority, FALSE otherwise

PLANE_TO_OFFSET + + + +

+

Takes a plane, returns the offset it uses

PLANE_TO_TRUE + + + +

+

Takes a plane, returns the canonical, unoffset plane it represents

SET_PLANE + + + +

+

Takes an atom to change the plane of, a new plane value, and something that can be used as a reference to a z level as input +Modifies the new value to match the plane we actually want. Note, if you pass in an already offset plane the offsets will add up +Use PLANE_TO_TRUE() to avoid this

SET_PLANE_IMPLICIT + + + +

+

Implicit plane set. We take the turf from the object we're changing the plane of, and use ITS z as a spokesperson for our plane value

SET_PLANE_W_SCALAR + + + +

+

Takes an object, new plane, and multipler, and offsets the plane +This is for cases where you have a multipler precalculated, and just want to use it +Often an optimization, sometimes a necessity

TRUE_PLANE_TO_OFFSETS + + + +

+

Takes a true plane, returns the offset planes that would canonically represent it

_OFFSET_RENDER_TARGET + + + +

+

Helper macro for the above +Honestly just exists to make the pattern of render target strings more readable

+ + + diff --git a/code/__HELPERS/ai.html b/code/__HELPERS/ai.html new file mode 100644 index 0000000000000..bf1fe59f9de1a --- /dev/null +++ b/code/__HELPERS/ai.html @@ -0,0 +1,41 @@ + + + + + + + code/__HELPERS/ai.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/ai.dm + +

+ + + + + + + + + + + + + + + +
/proc/cheap_get_living_nearReturns a list of mobs/living via get_dist and same z level method, very cheap compared to range()
/proc/cheap_get_humans_nearReturns a list of humans via get_dist and same z level method, very cheap compared to range()
/proc/cheap_get_xenos_nearReturns a list of xenos via get_dist and same z level method, very cheap compared to range()
/proc/cheap_get_mechs_nearReturns a list of mechs via get_dist and same z level method, very cheap compared to range()
/proc/cheap_get_tanks_nearReturns a list of vehicles via get_dist and same z level method, very cheap compared to range()
/proc/get_nearest_targetReturns the nearest target that has the right target flag
/proc/cheap_get_atomThis proc attempts to get an instance of an atom type within distance, with center as the center. +Arguments
+ + + diff --git a/code/__HELPERS/announce.html b/code/__HELPERS/announce.html new file mode 100644 index 0000000000000..06ffa6e134490 --- /dev/null +++ b/code/__HELPERS/announce.html @@ -0,0 +1,34 @@ + + + + + + + code/__HELPERS/announce.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/announce.dm + +

+ + + + + + + + + +
/proc/assemble_alertDesign a faction alert. Returns a string.
/proc/priority_announceMake a priority announcement to a target
/proc/print_command_reportSpawns a paper at each communications printer
/proc/minor_announceMake a minor announcement to a target
+ + + diff --git a/code/__HELPERS/bitflag_lists.html b/code/__HELPERS/bitflag_lists.html new file mode 100644 index 0000000000000..63d39dcb129a7 --- /dev/null +++ b/code/__HELPERS/bitflag_lists.html @@ -0,0 +1,41 @@ + + + + + + + code/__HELPERS/bitflag_lists.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__HELPERS/bitflag_lists.dm + +

+ + +
SET_BITFLAG_LISTSystem for storing bitflags past the 24 limit, making use of an associative list.

Define Details

+

SET_BITFLAG_LIST + + + +

+

System for storing bitflags past the 24 limit, making use of an associative list.

+

Macro converts a list of integers into an associative list of bitflag entries for quicker comparison. +Example: list(0, 4, 26, 32)) => list( "0" = ( (1<<0) | (1<<4) ), "1" = ( (1<<2) | (1<<8) ) ) +Lists are cached into a global list of lists to avoid identical duplicates. +This system makes value comparisons faster than pairing every element of one list with every element of the other for evaluation.

+

Arguments:

+
+ + + diff --git a/code/__HELPERS/chat.html b/code/__HELPERS/chat.html new file mode 100644 index 0000000000000..694e45962e791 --- /dev/null +++ b/code/__HELPERS/chat.html @@ -0,0 +1,30 @@ + + + + + + + code/__HELPERS/chat.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/chat.dm + +

+ + + + + +
/proc/send2chatSends a message to TGS chat channels.
/proc/send2adminchatSends a message to TGS admin chat channels.
+ + + diff --git a/code/__HELPERS/chat_filter.html b/code/__HELPERS/chat_filter.html new file mode 100644 index 0000000000000..1b055f45717bd --- /dev/null +++ b/code/__HELPERS/chat_filter.html @@ -0,0 +1,46 @@ + + + + + + + code/__HELPERS/chat_filter.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/chat_filter.dm + +

+ + + + + + + + + + + + + + + +
/proc/is_ic_filteredGiven a text, will return what word is on the IC filter, with the reason. +Returns null if the message is OK.
/proc/is_ic_filtered_for_bombvestsGiven a text, will return what word is on the IC filter, or bomb vest filter, with the reason. +Returns null if the message is OK.
/proc/is_ooc_filteredGiven a text, will return what word is on the OOC filter, with the reason. +Returns null if the message is OK.
/proc/is_soft_ic_filteredGiven a text, will return what word is on the soft IC filter, with the reason. +Returns null if the message is OK.
/proc/is_soft_ic_filtered_for_bombvestsGiven a text, will return what word is on the soft IC filter, ignoring words allowed on the PDA, with the reason. +Returns null if the message is OK.
/proc/is_soft_ooc_filteredGiven a text, will return that word is on the soft OOC filter, with the reason. +Returns null if the message is OK.
/proc/log_filterLogs to the filter log with the given message, match, and scope
+ + + diff --git a/code/__HELPERS/cmp.html b/code/__HELPERS/cmp.html new file mode 100644 index 0000000000000..95f2085a96226 --- /dev/null +++ b/code/__HELPERS/cmp.html @@ -0,0 +1,28 @@ + + + + + + + code/__HELPERS/cmp.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/cmp.dm + +

+ + + +
/proc/cmp_crafting_req_prioritySorts crafting recipe requirements before the crafting recipe is inserted into GLOB.crafting_recipes
+ + + diff --git a/code/__HELPERS/datums.html b/code/__HELPERS/datums.html new file mode 100644 index 0000000000000..3f7146a835e21 --- /dev/null +++ b/code/__HELPERS/datums.html @@ -0,0 +1,28 @@ + + + + + + + code/__HELPERS/datums.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/datums.dm + +

+ + + +
/proc/is_valid_srcCheck if a datum has not been deleted and is a valid source
+ + + diff --git a/code/__HELPERS/files.html b/code/__HELPERS/files.html new file mode 100644 index 0000000000000..a1dac61357e02 --- /dev/null +++ b/code/__HELPERS/files.html @@ -0,0 +1,31 @@ + + + + + + + code/__HELPERS/files.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/files.dm + +

+ + + + + +
/proc/md5filepathReturns the md5 of a file at a given path.
/proc/md5asfileSave file as an external file then md5 it. +Used because md5ing files stored in the rsc sometimes gives incorrect md5 results.
+ + + diff --git a/code/__HELPERS/game.html b/code/__HELPERS/game.html new file mode 100644 index 0000000000000..f879fc3325d71 --- /dev/null +++ b/code/__HELPERS/game.html @@ -0,0 +1,34 @@ + + + + + + + code/__HELPERS/game.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/game.dm + +

+ + + + + + + + + +
/proc/is_valid_for_resin_structureChecks all conditions if a spot is valid for construction , will return TRUE
/proc/remove_image_from_clientRemoves an image from a client's .images. Useful as a callback.
/proc/remove_images_from_clientsRemoves an image from a list of client's images
/proc/flick_overlay_viewwrapper for flick_overlay(), flicks to everyone who can see the target atom
+ + + diff --git a/code/__HELPERS/generators.html b/code/__HELPERS/generators.html new file mode 100644 index 0000000000000..3968d42348e14 --- /dev/null +++ b/code/__HELPERS/generators.html @@ -0,0 +1,29 @@ + + + + + + + code/__HELPERS/generators.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/generators.dm + +

+ + + +
/proc/return_generator_argsreturns the arguments given to a generator and manually extracts them from the internal byond object +returns:
+ + + diff --git a/code/__HELPERS/global_lists.html b/code/__HELPERS/global_lists.html new file mode 100644 index 0000000000000..63c48fb7e9ca3 --- /dev/null +++ b/code/__HELPERS/global_lists.html @@ -0,0 +1,34 @@ + + + + + + + code/__HELPERS/global_lists.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/global_lists.dm + +

+ + + + + + + + + +
/proc/init_sprite_accessoriesInitial Building
/proc/make_datum_reference_listsThese should be replaced with proper _INIT macros
/proc/init_crafting_recipesInits crafting recipe lists
/proc/init_crafting_recipes_atomsInits atoms used in crafting recipes
+ + + diff --git a/code/__HELPERS/icon_smoothing.html b/code/__HELPERS/icon_smoothing.html new file mode 100644 index 0000000000000..e432168b1b486 --- /dev/null +++ b/code/__HELPERS/icon_smoothing.html @@ -0,0 +1,32 @@ + + + + + + + code/__HELPERS/icon_smoothing.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__HELPERS/icon_smoothing.dm + +

+ + +
BLANK_ICON_STATEThe icon_state for space. There is 25 total icon states that vary based on the x/y/z position of the turf

Define Details

+

BLANK_ICON_STATE + + +

+

The icon_state for space. There is 25 total icon states that vary based on the x/y/z position of the turf

+ + + diff --git a/code/__HELPERS/icons.html b/code/__HELPERS/icons.html new file mode 100644 index 0000000000000..c6bac1be5a0a9 --- /dev/null +++ b/code/__HELPERS/icons.html @@ -0,0 +1,62 @@ + + + + + + + code/__HELPERS/icons.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/icons.dm + +

+ + + + + + + + + + + + + + + + + +
/proc/generate_and_hash_rsc_filegenerates a filename for a given asset. +like generate_asset_name(), except returns the rsc reference and the rsc file hash as well as the asset name (sans extension) +used so that certain asset files dont have to be hashed twice
/proc/generate_asset_nameGenerate a filename for this asset +The same asset will always lead to the same asset name +(Generated names do not include file extention.)
/proc/icon2base64Converts an icon to base64. Operates by putting the icon in the iconCache savefile, +exporting it as text, and then parsing the base64 from that. +(This relies on byond automatically storing icons in savefiles as base64)
/proc/is_valid_dmi_filegiven a text string, returns whether it is a valid dmi icons folder path
/proc/get_icon_dmi_pathgiven an icon object, dmi file path, or atom/image/mutable_appearance, attempts to find and return an associated dmi file path. +a weird quirk about dm is that /icon objects represent both compile-time or dynamic icons in the rsc, +but stringifying rsc references returns a dmi file path +ONLY if that icon represents a completely unchanged dmi file from when the game was compiled. +so if the given object is associated with an icon that was in the rsc when the game was compiled, this returns a path. otherwise it returns ""
/proc/icon2htmlthe dmi file path we attempt to return if the given object argument is associated with a stringifiable icon +if successful, this looks like "icons/path/to/dmi_file.dmi" +but they pass both isicon() and isfile() checks. theyre the easiest case since stringifying them gives us the path we want +generate an asset for the given icon or the icon of the given appearance for [thing], and send it to any clients in target. +Arguments:
/proc/center_imageCenter's an image. +Requires: +The Image +The x dimension of the icon file used in the image +The y dimension of the icon file used in the image +eg: center_image(image_to_center, 32,32) +eg2: center_image(image_to_center, 96,96)
/proc/icon_existsChecks if the given iconstate exists in the given file, caching the result. Setting scream to TRUE will print a stack trace ONCE.
+ + + diff --git a/code/__HELPERS/jatum.html b/code/__HELPERS/jatum.html new file mode 100644 index 0000000000000..53de3d480a7ab --- /dev/null +++ b/code/__HELPERS/jatum.html @@ -0,0 +1,36 @@ + + + + + + + code/__HELPERS/jatum.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__HELPERS/jatum.dm + +

+ + + + + + +
JATUM_VERSIONThe JATUM version used for serializing and deserializing
/proc/jatum_serializeAttempt to serialize a given value to the JATUM format.
/proc/jatum_deserializeAttempt to create a value from a JATUN JSON.

Define Details

+

JATUM_VERSION + + +

+

The JATUM version used for serializing and deserializing

+ + + diff --git a/code/__HELPERS/lighting.html b/code/__HELPERS/lighting.html new file mode 100644 index 0000000000000..bac5dd14adeee --- /dev/null +++ b/code/__HELPERS/lighting.html @@ -0,0 +1,32 @@ + + + + + + + code/__HELPERS/lighting.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/lighting.dm + +

+ + + + + + + +
/proc/emissive_appearanceProduces a mutable appearance glued to the EMISSIVE_PLANE dyed to be the EMISSIVE_COLOR.
/proc/emissive_blockerProduces a mutable appearance glued to the EMISSIVE_PLANE dyed to be the EM_BLOCK_COLOR.
/proc/set_z_lightingModifies the lighting for a z_level
+ + + diff --git a/code/__HELPERS/logging/_logging.html b/code/__HELPERS/logging/_logging.html new file mode 100644 index 0000000000000..0dd89d23de5de --- /dev/null +++ b/code/__HELPERS/logging/_logging.html @@ -0,0 +1,31 @@ + + + + + + + code/__HELPERS/logging/_logging.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/logging/_logging.dm + +

+ + + + + +
/proc/__check_serialization_semverChecks if the actual semver is equal or later than the wanted semver +Must be passed as TEXT; you're probably looking for CHECK_SERIALIZATION_SEMVER, look right above
/proc/start_logship both attack logs and victim logs to the end of round attack.log just to ensure we don't lose information
+ + + diff --git a/code/__HELPERS/logging/admin.html b/code/__HELPERS/logging/admin.html new file mode 100644 index 0000000000000..434a6b6918d1c --- /dev/null +++ b/code/__HELPERS/logging/admin.html @@ -0,0 +1,36 @@ + + + + + + + code/__HELPERS/logging/admin.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/logging/admin.dm + +

+ + + + + + + + + + + +
/proc/log_adminGeneral logging for admin actions
/proc/log_admin_privateGeneral logging for admin actions
/proc/log_adminsayLogging for AdminSay (ASAY) messages
/proc/log_mentorsayLogging for MentorSay (MSAY) messages
/proc/log_dsayLogging for DeadchatSay (DSAY) messages
+ + + diff --git a/code/__HELPERS/logging/attack.html b/code/__HELPERS/logging/attack.html new file mode 100644 index 0000000000000..e731ce8fa2e42 --- /dev/null +++ b/code/__HELPERS/logging/attack.html @@ -0,0 +1,34 @@ + + + + + + + code/__HELPERS/logging/attack.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/logging/attack.dm + +

+ + + + + + + + + +
/proc/log_attackGeneric attack logging
/proc/log_ffattackGeneric attack logging for friendly fire
/proc/log_combatLog a combat message in the attack log
/proc/log_bomberLogging for bombs detonating
+ + + diff --git a/code/__HELPERS/logging/debug.html b/code/__HELPERS/logging/debug.html new file mode 100644 index 0000000000000..d81135e923cd8 --- /dev/null +++ b/code/__HELPERS/logging/debug.html @@ -0,0 +1,43 @@ + + + + + + + code/__HELPERS/logging/debug.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/logging/debug.dm + +

+ + + + + + + + + + + + + + + + + +
/proc/log_assetLogging for loading and caching assets
/proc/log_configLogging for config errors +Rarely gets called; just here in case the config breaks.
/proc/log_job_debugLogging for job slot changes
/proc/log_mappingLogging for mapping errors
/proc/log_qdelLogging for hard deletes
/proc/log_sqlLogging for DB errors
/proc/log_topicLogging for world/Topic
/proc/log_worldLog to both DD and the logfile.
+ + + diff --git a/code/__HELPERS/logging/game.html b/code/__HELPERS/logging/game.html new file mode 100644 index 0000000000000..4305288c434d4 --- /dev/null +++ b/code/__HELPERS/logging/game.html @@ -0,0 +1,48 @@ + + + + + + + code/__HELPERS/logging/game.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/logging/game.dm + +

+ + + + + + + + + + + + + + + + + + + + + + + +
/proc/log_gameLogging for generic/unsorted game messages
/proc/log_emoteLogging for emotes
/proc/log_hivemindLogging for hivemind messages
/proc/log_oocLogging for messages sent in OOC
/proc/log_loocLogging for messages sent in LOOC
/proc/log_xoocLogging for messages sent in XOOC
/proc/log_moocLogging for messages sent in MOOC
/proc/log_prayerLogging for prayed messages
/proc/log_accessLogging for logging in & out of the game, with error messages.
/proc/log_voteLogging for OOC votes
/proc/log_minimap_drawingLogging for drawing on minimap
+ + + diff --git a/code/__HELPERS/logging/manifest.html b/code/__HELPERS/logging/manifest.html new file mode 100644 index 0000000000000..0d511b3a1debf --- /dev/null +++ b/code/__HELPERS/logging/manifest.html @@ -0,0 +1,28 @@ + + + + + + + code/__HELPERS/logging/manifest.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/logging/manifest.dm + +

+ + + +
/proc/log_manifestLogging for player manifest (ckey, name, job, special role, roundstart/latejoin)
+ + + diff --git a/code/__HELPERS/logging/mecha.html b/code/__HELPERS/logging/mecha.html new file mode 100644 index 0000000000000..c2d38326343e0 --- /dev/null +++ b/code/__HELPERS/logging/mecha.html @@ -0,0 +1,28 @@ + + + + + + + code/__HELPERS/logging/mecha.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/logging/mecha.dm + +

+ + + +
/proc/log_mechaLogging for mech actions
+ + + diff --git a/code/__HELPERS/logging/paper.html b/code/__HELPERS/logging/paper.html new file mode 100644 index 0000000000000..e4c064b447d9f --- /dev/null +++ b/code/__HELPERS/logging/paper.html @@ -0,0 +1,28 @@ + + + + + + + code/__HELPERS/logging/paper.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/logging/paper.dm + +

+ + + +
/proc/log_paperLogging for writing made on paper
+ + + diff --git a/code/__HELPERS/logging/talk.html b/code/__HELPERS/logging/talk.html new file mode 100644 index 0000000000000..29f8685c9dd01 --- /dev/null +++ b/code/__HELPERS/logging/talk.html @@ -0,0 +1,36 @@ + + + + + + + code/__HELPERS/logging/talk.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/logging/talk.dm + +

+ + + + + + + + + + + +
/proc/log_sayLogging for generic spoken messages
/proc/log_whisperLogging for whispered messages
/proc/log_directed_talkHelper for logging of messages with only one sender and receiver (i.e. mind links)
/proc/log_telecommsLogging for speech taking place over comms, as well as tcomms equipment
/proc/log_speech_indicatorsLogging for speech indicators.
+ + + diff --git a/code/__HELPERS/logging/tool.html b/code/__HELPERS/logging/tool.html new file mode 100644 index 0000000000000..e15f45831bd9f --- /dev/null +++ b/code/__HELPERS/logging/tool.html @@ -0,0 +1,28 @@ + + + + + + + code/__HELPERS/logging/tool.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/logging/tool.dm + +

+ + + +
/proc/log_toolLogging for tool usage
+ + + diff --git a/code/__HELPERS/logging/ui.html b/code/__HELPERS/logging/ui.html new file mode 100644 index 0000000000000..4c1006774c944 --- /dev/null +++ b/code/__HELPERS/logging/ui.html @@ -0,0 +1,28 @@ + + + + + + + code/__HELPERS/logging/ui.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/logging/ui.dm + +

+ + + +
/proc/log_tguiAppends a tgui-related log entry. All arguments are optional.
+ + + diff --git a/code/__HELPERS/math.html b/code/__HELPERS/math.html new file mode 100644 index 0000000000000..5fd90fddd195e --- /dev/null +++ b/code/__HELPERS/math.html @@ -0,0 +1,34 @@ + + + + + + + code/__HELPERS/math.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/math.dm + +

+ + + + + + + + + +
/proc/get_lineGet a list of turfs in a line from starting_atom to ending_atom.
/proc/can_see_throughReturns if a turf can be seen from another turf.
/proc/line_of_sightChecks if ending atom is viewable by starting atom, uses bresenham line algorithm but checks some extra tiles on a diagonal next tile
/proc/get_dist_manhattanReturns the manhattan distance between two atoms. Returns INFINITY if either are not on a turf, for BYOND get_dist() parity.
+ + + diff --git a/code/__HELPERS/mech.html b/code/__HELPERS/mech.html new file mode 100644 index 0000000000000..8239383372ba8 --- /dev/null +++ b/code/__HELPERS/mech.html @@ -0,0 +1,28 @@ + + + + + + + code/__HELPERS/mech.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/mech.dm + +

+ + + +
/proc/get_mech_limbhelper that converts greyscale mech slots and types into typepaths
+ + + diff --git a/code/__HELPERS/mobs.html b/code/__HELPERS/mobs.html new file mode 100644 index 0000000000000..a777a9287512b --- /dev/null +++ b/code/__HELPERS/mobs.html @@ -0,0 +1,33 @@ + + + + + + + code/__HELPERS/mobs.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/mobs.dm + +

+ + + + + + + +
/proc/random_tts_voicereturns a random tts voice based on gender. Assumes theres 30 voices, not actually how many there are but yolo. todo should return based on gender but we need voice tags for that
/proc/do_afterA delayed action with adjustable checks
/proc/deadchat_broadcastDisplays a message in deadchat, sent by source. Source is not linkified, message is, to avoid stuff like character names to be linkified. +Automatically gives the class deadsay to the whole message (message + source)
+ + + diff --git a/code/__HELPERS/ooc_announcement.html b/code/__HELPERS/ooc_announcement.html new file mode 100644 index 0000000000000..a36fd80b03047 --- /dev/null +++ b/code/__HELPERS/ooc_announcement.html @@ -0,0 +1,30 @@ + + + + + + + code/__HELPERS/ooc_announcement.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/ooc_announcement.dm + +

+ + + + + +
/proc/send_ooc_announcementSends a div formatted chat box announcement
/proc/create_ooc_announcement_divInserts a span styled message into an OOC alert style div
+ + + diff --git a/code/__HELPERS/sanitize_values.html b/code/__HELPERS/sanitize_values.html new file mode 100644 index 0000000000000..8b8a8ee43df65 --- /dev/null +++ b/code/__HELPERS/sanitize_values.html @@ -0,0 +1,38 @@ + + + + + + + code/__HELPERS/sanitize_values.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/sanitize_values.dm + +

+ + + + + + + +
/proc/sanitize_islistMakes sure value is a list +Args: +value - The list we're ensuring is actually a list +default - The set default that will be given as fallback. +required_amount - The required length of value for it to be valid, otherwise will continue to check for a fallback default. +check_valid - If we should check if the values are all in the list of possible inputs +possible_input_list - The list of possible valid inputs this list can hold, only gets checked if check_valid is TRUE
/proc/sanitize_is_full_emote_listSanitize the custom emote list
/proc/sanitize_inlist_ttsa wrapper with snowflake handling for tts
+ + + diff --git a/code/__HELPERS/screen_objs.html b/code/__HELPERS/screen_objs.html new file mode 100644 index 0000000000000..7a9775f47e763 --- /dev/null +++ b/code/__HELPERS/screen_objs.html @@ -0,0 +1,40 @@ + + + + + + + code/__HELPERS/screen_objs.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/screen_objs.dm + +

+ + + + + + + + + +
/proc/screen_loc_to_offsetTakes a screen loc string in the format +"+-left-offset:+-pixel,+-bottom-offset:+-pixel" +Where the :pixel is optional, and returns +A list in the format (x_offset, y_offset) +We require context to get info out of screen locs that contain relative info, so NORTH, SOUTH, etc
/proc/offset_to_screen_locTakes a list in the form (x_offset, y_offset) +And converts it to a screen loc string +Accepts an optional view string/size to force the screen_loc around, so it can't go out of scope
/proc/get_valid_screen_locationReturns a valid location to place a screen object without overflowing the viewport
/proc/cut_relative_directionTakes a screen_loc string and cut out any directions like NORTH or SOUTH
+ + + diff --git a/code/__HELPERS/spatial_info.html b/code/__HELPERS/spatial_info.html new file mode 100644 index 0000000000000..d5afcd7f9513f --- /dev/null +++ b/code/__HELPERS/spatial_info.html @@ -0,0 +1,66 @@ + + + + + + + code/__HELPERS/spatial_info.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/spatial_info.dm + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
/mob/oranges_ear
/proc/get_hearers_in_viewreturns every hearaing movable in view to the turf of source not taking into account lighting +useful when you need to maintain always being able to hear something if a sound is emitted from it and you can see it (and youre in range). +otherwise this is just a more expensive version of get_hearers_in_LOS()
/proc/get_hearers_in_LOSReturns a list of movable atoms that are hearing sensitive in view_radius and line of sight to source +the majority of the work is passed off to the spatial grid if view_radius > 0 +because view() isnt a raycasting algorithm, this does not hold symmetry to it. something in view might not be hearable with this. +if you want that use get_hearers_in_view() - however thats significantly more expensive
/proc/inLineOfSightCalculate if two atoms are in sight, returns TRUE or FALSE
/proc/circle_rangeReturns all atoms present in a circle around the center
/proc/circle_viewReturns all atoms present in a circle around the center but uses view() instead of range() (Currently not used)
/proc/get_dist_euclidianReturns the distance between two atoms
/proc/circle_range_turfsReturns a list of turfs around a center based on RANGE_TURFS()
/proc/circle_view_turfsReturns a list of turfs around a center based on view()
/proc/get_bbox_of_atomsGet a bounding box of a list of atoms.
/proc/get_hearLike view but bypasses luminosity check
/proc/get_open_turf_in_dirReturns the open turf next to the center in a specific direction
/proc/get_adjacent_open_turfsReturns a list with all the adjacent open turfs. Clears the list of nulls in the end.
/proc/get_adjacent_open_areasReturns a list with all the adjacent areas by getting the adjacent open turfs
/proc/get_areas_in_rangeReturns a list with the names of the areas around a center at a certain distance +Returns the local area if no distance is indicated +Returns an empty list if the center is null
/proc/get_adjacent_areasReturns a list of all areas that are adjacent to the center atom's area, clear the list of nulls at the end.
/proc/alone_in_areaChecks if the mob provided (must_be_alone) is alone in an area
+ + + diff --git a/code/__HELPERS/string_lists.html b/code/__HELPERS/string_lists.html new file mode 100644 index 0000000000000..ce617e7c28702 --- /dev/null +++ b/code/__HELPERS/string_lists.html @@ -0,0 +1,28 @@ + + + + + + + code/__HELPERS/string_lists.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/string_lists.dm + +

+ + + +
/proc/string_listCaches lists with non-numeric stringify-able values (text or typepath).
+ + + diff --git a/code/__HELPERS/text.html b/code/__HELPERS/text.html new file mode 100644 index 0000000000000..d123f22f741e1 --- /dev/null +++ b/code/__HELPERS/text.html @@ -0,0 +1,40 @@ + + + + + + + code/__HELPERS/text.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/text.dm + +

+ + + + + + + + + + + + + + + +
/proc/sanitizeRuns byond's html encoding sanitization proc, after replacing new-lines and tabs for the # character.
/proc/strip_htmlRuns STRIP_HTML_SIMPLE and sanitize.
/proc/adminscrubRuns STRIP_HTML_SIMPLE and byond's sanitization proc.
/proc/reject_bad_textReturns the text if properly formatted, or null else.
/proc/stripped_inputUsed to get a properly sanitized input. Returns null if cancel is pressed.
/proc/stripped_multiline_inputUsed to get a properly sanitized input in a larger box. Works very similarly to stripped_input.
/proc/siunitFormats a number to human readable form with the appropriate SI unit.
+ + + diff --git a/code/__HELPERS/traits.html b/code/__HELPERS/traits.html new file mode 100644 index 0000000000000..da49e3b09d793 --- /dev/null +++ b/code/__HELPERS/traits.html @@ -0,0 +1,30 @@ + + + + + + + code/__HELPERS/traits.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/traits.dm + +

+ + + + + +
/proc/___TraitAddDO NOT USE ___TraitAdd OR ___TraitRemove as a replacement for ADD_TRAIT / REMOVE_TRAIT defines. To be used explicitly for callback.
/proc/___TraitRemoveDO NOT USE ___TraitAdd OR ___TraitRemove as a replacement for ADD_TRAIT / REMOVE_TRAIT defines. To be used explicitly for callback.
+ + + diff --git a/code/__HELPERS/turfs.html b/code/__HELPERS/turfs.html new file mode 100644 index 0000000000000..5e1795b20f24a --- /dev/null +++ b/code/__HELPERS/turfs.html @@ -0,0 +1,29 @@ + + + + + + + code/__HELPERS/turfs.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/turfs.dm + +

+ + + +
/proc/valid_build_directionChecks whether the target turf is in a valid state to accept a directional construction +such as windows or railings.
+ + + diff --git a/code/__HELPERS/type2type.html b/code/__HELPERS/type2type.html new file mode 100644 index 0000000000000..337939a8cb081 --- /dev/null +++ b/code/__HELPERS/type2type.html @@ -0,0 +1,34 @@ + + + + + + + code/__HELPERS/type2type.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/type2type.dm + +

+ + + + + + + +
/proc/url2htmlloaderReturn html to load a url. +for use inside of browse() calls to html assets that might be loaded on a cdn.
/proc/color_hex2color_matrixTakes a hex color provided as string and returns the proper color matrix using hex2num.
/proc/color_matrix2color_hexwill drop all values not on the diagonal +returns a hex color
+ + + diff --git a/code/__HELPERS/type_processing.html b/code/__HELPERS/type_processing.html new file mode 100644 index 0000000000000..2abdf615719e1 --- /dev/null +++ b/code/__HELPERS/type_processing.html @@ -0,0 +1,39 @@ + + + + + + + code/__HELPERS/type_processing.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/type_processing.dm + +

+ + + + + + + + + + + +
/proc/make_types_fancyTurns a list of typepaths into 'fancy' titles for admins.
/proc/get_fancy_list_of_atom_typesGenerates a static list of 'fancy' atom types, or returns that if its already been generated.
/proc/get_fancy_list_of_datum_typesGenerates a static list of 'fancy' datum types, excluding everything atom, or returns that if its already been generated.
/proc/filter_fancy_listTakes a given fancy list and filters out a given filter text. +Args: +fancy_list - The list provided we filter. +filter - the text we use to filter fancy_list
/proc/return_typenamesSplits the type with parenthesis between each word so admins visually tell it is a typepath.
+ + + diff --git a/code/__HELPERS/unsorted.html b/code/__HELPERS/unsorted.html new file mode 100644 index 0000000000000..d77a0f7fc5713 --- /dev/null +++ b/code/__HELPERS/unsorted.html @@ -0,0 +1,118 @@ + + + + + + + code/__HELPERS/unsorted.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__HELPERS/unsorted.dm + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NAMEOFNAMEOF: Compile time checked variable name to string conversion +evaluates to a string equal to "X", but compile errors if X isn't a var on datum. +datum may be null, but it does need to be a typed var.
NAMEOF_STATICNAMEOF that actually works in static definitions because src::type requires src to be defined
/proc/angle_to_dirReturns one of the 8 directions based on an angle
/proc/angle_to_cardinal_dirReturns one of the 4 cardinal directions based on an angle
/proc/get_between_anglesreturns degrees between two angles
/proc/LinkBlockedReturns true if the path from A to B is blocked. Checks both paths where the direction is diagonal +Variables: +bypass_window - check for PASS_GLASS - laser like behavior +projectile - check for PASS_PROJECTILE - bullet like behavior +bypass_xeno - whether to bypass dense xeno structures like flamers +air_pass - whether to bypass non airtight atoms
/proc/DirBlockedChecks if moving in a direction is blocked
/proc/TurfBlockedNonWindowReturns true if any object on a turf is both dense and not a window
/proc/closest_cardinal_dirIf given a diagonal dir, return a corresponding cardinal dir. East/west preferred
/proc/params2screenpixelConverts a screen loc param to a x,y coordinate pixel on the screen
/proc/weight_class_to_textReturns a string based on the weight class define used as argument.
/proc/weight_class_dataReturns an assoc list of WEIGHT CLASS TEXT = DESCRIPTION based on the arg you provide. +Used by examine tags for giving each weight class a special description.
/proc/semver_to_listConverts a semver string into a list of numbers
/proc/get_atom_on_turfReturns the top-most atom sitting on the turf. +For example, using this on a disk, which is in a bag, on a mob, +will return the mob because it's on the turf.
/proc/dviewVersion of view() which ignores darkness, because BYOND doesn't have it (I actually suggested it but it was tagged redundant, BUT HEARERS IS A T- /rant).
/proc/getpoisReturns a list of all items of interest with their name
/proc/LeftAndRightOfDirReturns the left and right dir of the input dir, used for AI stutter step while attacking
/proc/get_areasTakes: Area type as text string or as typepath OR an instance of the area. Returns: A list of all areas of that type in the world.
/proc/generate_coneGenerates a cone shape. Any other checks should be handled with the resulting list. Can work with up to 359 degrees +Variables: +center - where the cone begins, or center of a circle drawn with this +max_row_count - how many rows are checked +starting_row - from how far should the turfs start getting included in the cone +cone_width - big the angle of the cone is +cone_direction - at what angle should the cone be made, relative to the game board's orientation +blocked - whether the cone should take into consideration solid walls
/proc/get_nested_locsthe 3 directions in the direction on the cone that will be checked +turfs that are checked whether the cone can continue further from them +Returns a list of all locations (except the area) the movable is within.
/proc/generate_true_coneGenerates a cone shape. Any other checks should be handled with the resulting list. Can work with up to 359 degrees +Variables: +center - where the cone begins, or center of a circle drawn with this +max_row_count - how many rows are checked +starting_row - from how far should the turfs start getting included in the cone. -1 required to include center turf due to byond +cone_width - big the angle of the cone is +cone_direction - at what angle should the cone be made, relative to the game board's orientation +blocked - whether the cone should take into consideration solid walls +bypass_window - whether it will go through transparent windows like lasers +projectile - whether PASS_PROJECTILE will be checked to ignore dense objects like projectiles +bypass_xeno - whether to bypass dense xeno structures like flamers +air_pass - whether to bypass non airtight atoms
/proc/check_pathDraws a line between two atoms, then checks if the path is blocked. +Variables: +start -start point of the path +end - end point of the path +bypass_window - whether it will go through transparent windows in the same way as lasers +projectile - whether PASS_PROJECTILE will be checked to ignore dense objects in the same way as projectiles +bypass_xeno - whether to bypass dense xeno structures in the same way as flamers +air_pass - whether to bypass non airtight atoms

Define Details

+

NAMEOF + + + +

+

NAMEOF: Compile time checked variable name to string conversion +evaluates to a string equal to "X", but compile errors if X isn't a var on datum. +datum may be null, but it does need to be a typed var.

NAMEOF_STATIC + + + +

+

NAMEOF that actually works in static definitions because src::type requires src to be defined

+ + + diff --git a/code/__HELPERS/verbs.html b/code/__HELPERS/verbs.html new file mode 100644 index 0000000000000..b88364da2ace2 --- /dev/null +++ b/code/__HELPERS/verbs.html @@ -0,0 +1,30 @@ + + + + + + + code/__HELPERS/verbs.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/verbs.dm + +

+ + + + + +
/proc/add_verbhandles adding verbs and updating the stat panel browser
/proc/remove_verbhandles removing verb and sending it to browser to update, use this for removing verbs
+ + + diff --git a/code/__HELPERS/view.html b/code/__HELPERS/view.html new file mode 100644 index 0000000000000..cd16c8eee4d27 --- /dev/null +++ b/code/__HELPERS/view.html @@ -0,0 +1,32 @@ + + + + + + + code/__HELPERS/view.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/__HELPERS/view.dm + +

+ + + + + + + +
/proc/in_view_rangeReturns TRUE if the atom is in the user view range.
/proc/get_view_centerReturn the center turf of the user's view
/proc/view_to_pixelsTakes a string or num view, and converts it to pixel width/height in a list(pixel_width, pixel_height)
+ + + diff --git a/code/__byond_version_compat.html b/code/__byond_version_compat.html new file mode 100644 index 0000000000000..19a27e6511a87 --- /dev/null +++ b/code/__byond_version_compat.html @@ -0,0 +1,57 @@ + + + + + + + code/__byond_version_compat.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/__byond_version_compat.dm + +

+ + + + + + +
PROC_REFCall by name proc references, checks if the proc exists on either this type or as a global proc.
VERB_REFCall by name verb references, checks if the verb exists on either this type or as a global verb.
TYPE_PROC_REFCall by name proc reference, checks if the proc exists on either the given type or as a global proc
TYPE_VERB_REFCall by name verb reference, checks if the verb exists on either the given type or as a global verb
GLOBAL_PROC_REFCall by name proc reference, checks if the proc is an existing global proc

Define Details

+

GLOBAL_PROC_REF + + + +

+

Call by name proc reference, checks if the proc is an existing global proc

PROC_REF + + + +

+

Call by name proc references, checks if the proc exists on either this type or as a global proc.

TYPE_PROC_REF + + + +

+

Call by name proc reference, checks if the proc exists on either the given type or as a global proc

TYPE_VERB_REF + + + +

+

Call by name verb reference, checks if the verb exists on either the given type or as a global verb

VERB_REF + + + +

+

Call by name verb references, checks if the verb exists on either this type or as a global verb.

+ + + diff --git a/code/_compile_options.html b/code/_compile_options.html new file mode 100644 index 0000000000000..364d68cf649ff --- /dev/null +++ b/code/_compile_options.html @@ -0,0 +1,34 @@ + + + + + + + code/_compile_options.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/_compile_options.dm + +

+ + +
PRELOAD_RSCIf this is uncommented, we set up the ref tracker to be used in a live environment +And to log events to [log_dir]/harddels.log

Define Details

+

PRELOAD_RSC + + +

+

If this is uncommented, we set up the ref tracker to be used in a live environment +And to log events to [log_dir]/harddels.log

+ + + diff --git a/code/_globalvars/admin.html b/code/_globalvars/admin.html new file mode 100644 index 0000000000000..f32d0db8317a7 --- /dev/null +++ b/code/_globalvars/admin.html @@ -0,0 +1,33 @@ + + + + + + + code/_globalvars/admin.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/_globalvars/admin.dm + +

+ + +
NON_ASCII_CHECKReturns true if this contains text that is not ASCII

Define Details

+

NON_ASCII_CHECK + + + +

+

Returns true if this contains text that is not ASCII

+ + + diff --git a/code/_globalvars/lists/flavor_misc.html b/code/_globalvars/lists/flavor_misc.html new file mode 100644 index 0000000000000..84c04f668dc1c --- /dev/null +++ b/code/_globalvars/lists/flavor_misc.html @@ -0,0 +1,38 @@ + + + + + + + code/_globalvars/lists/flavor_misc.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/_globalvars/lists/flavor_misc.dm + +

+ + + + + + + + + + + + + +
/proc/init_ethnicitiesEthnicity - Initialise all /datum/ethnicity into a list indexed by ethnicity name
/proc/init_minimap_iconsPopulates minimap_icons
/proc/init_campaign_asset_iconsPopulates campaign_asset_icons
/proc/init_campaign_mission_iconsPopulates campaign_mission_icons
/proc/init_campaign_perk_iconsPopulates campaign_perk_icons
/proc/init_campaign_loadout_item_iconsPopulates campaign_loadout_item_icons
+ + + diff --git a/code/_globalvars/lists/keybinding.html b/code/_globalvars/lists/keybinding.html new file mode 100644 index 0000000000000..75171d0d6bc1e --- /dev/null +++ b/code/_globalvars/lists/keybinding.html @@ -0,0 +1,32 @@ + + + + + + + code/_globalvars/lists/keybinding.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/_globalvars/lists/keybinding.dm + +

+ + + + + + + +
/proc/init_keybindingsCreates and sorts all the keybinding datums
/proc/add_keybindingAdds an instanced keybinding to the global tracker
/proc/init_emote_keybindsCreate a keybind for each datum/emote
+ + + diff --git a/code/_globalvars/lists/vending.html b/code/_globalvars/lists/vending.html new file mode 100644 index 0000000000000..f357b70bf2e7d --- /dev/null +++ b/code/_globalvars/lists/vending.html @@ -0,0 +1,32 @@ + + + + + + + code/_globalvars/lists/vending.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/_globalvars/lists/vending.dm + +

+ + +

These are global lists for vending machines that all share the same inventory, it's format is simply: +list(typepath = list(records)) +so all the vendors of same type have same inventory +it starts empty and is filled by first vendor initialized(unless its already filled). +the subsequent iniatilized vendors just uses the filled list. +there's one list for normal records, contraband and coin.

+ + + diff --git a/code/_onclick/hud/map_popups.html b/code/_onclick/hud/map_popups.html new file mode 100644 index 0000000000000..4e6b004f9af83 --- /dev/null +++ b/code/_onclick/hud/map_popups.html @@ -0,0 +1,29 @@ + + + + + + + code/_onclick/hud/map_popups.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/_onclick/hud/map_popups.dm + +

+ + +
/atom/movable/screen/backgroundA generic background object. +It is also implicitly used to allocate a rectangle on the map, which will +be used for auto-scaling the map.
+ + + diff --git a/code/_onclick/hud/rendering/_plane_master.html b/code/_onclick/hud/rendering/_plane_master.html new file mode 100644 index 0000000000000..19cecad275942 --- /dev/null +++ b/code/_onclick/hud/rendering/_plane_master.html @@ -0,0 +1,42 @@ + + + + + + + code/_onclick/hud/rendering/_plane_master.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/_onclick/hud/rendering/_plane_master.dm + +

+ + + + + + + + + +
/atom/movable/screen/plane_master/openspace_backdropThings rendered on "openspace"; holes in multi-z
/atom/movable/screen/plane_master/floorContains just the floor
/atom/movable/screen/plane_master/game_worldContains most things in the game world
/atom/movable/screen/plane_master/blacknessPlane master handling byond internal blackness +vars are set as to replicate behavior when rendering to other planes +do not touch this unless you know what you are doing

This system works by exploiting BYONDs color matrix filter to use layers to handle emissive blockers.

+

Emissive overlays are pasted with an atom color that converts them to be entirely some specific color. +Emissive blockers are pasted with an atom color that converts them to be entirely some different color. +Emissive overlays and emissive blockers are put onto the same plane. +The layers for the emissive overlays and emissive blockers cause them to mask eachother similar to normal BYOND objects. +A color matrix filter is applied to the emissive plane to mask out anything that isn't whatever the emissive color is. +This is then used to alpha mask the lighting plane.

/atom/movable/screen/plane_master/lightingContains all lighting objects
/atom/movable/screen/plane_master/emissiveHandles emissive overlays and emissive blockers.
/atom/movable/screen/plane_master/parallaxContains space parallax
+ + + diff --git a/code/_onclick/hud/rendering/_render_readme.html b/code/_onclick/hud/rendering/_render_readme.html new file mode 100644 index 0000000000000..66557c73bb436 --- /dev/null +++ b/code/_onclick/hud/rendering/_render_readme.html @@ -0,0 +1,63 @@ + + + + + + + code/_onclick/hud/rendering/_render_readme.md - byond + + +
+ byond - + Modules - + Types +
+
+

The Render Readme + +

+ + +
    +
  1. Byond internal functionality
  2. +
  3. Known internal snowflake
  4. +
  5. The rendering solution
  6. +
  7. Render plates
  8. +
+Byond internal functionality +

This part of the guide will assume that you have read the byond reference entry for rendering at www.byond.com/docs/ref//#/{notes}/renderer

+

When you create an atom, this will always create an internal byond structure called an "appearance". This appearance you will likely be familiar with, as it is exposed through the /atom/var/appearance var. This appearance var holds data on how to render the object, ie what icon/icon_state/color etc it is using. Note that appearance vars will always copy, and do not hold a reference. When you update a var, for example lets pretend we add a filter, the appearance will be updated to include the filter. Note that, however, vis_contents objets are uniquely excluded from appearances. Then, when the filter is updated, the appearance will be recreated, and the atom marked as "dirty". After it has been updated, the SendMaps() function (sometimes also called maptick), which is a internal byond function that iterates over all objects in a clients view and in the clients.mob.contents, checks for "dirty" atoms, then resends any "dirty" appearances to clients as needed and unmarks them as dirty. This function is notoriosly slow, but we can see it's tick usage through the world.map_cpu var. We can also avoid more complex checks checking whether an object is visible on a clients screen by using the TILE_BOUND appearance flag.

+

Finally, we arrive at clientside behavior, where we have two main clientside functions: GetMapIcons, and Render. GetMapIcons is repsonsible for actual rendering calculations on the clientside, such as "Group Icons and Set bounds", which performs clientside calculations for transform matrixes. Note that particles here are handled in a seperate thread and are not diplayed in the clientside profiler. Render handles the actual drawing of the screen.

+Known internal snowflake +

The following is an incomplete list of pitfalls that come from byond snowflake that are known, this list is obviously incomplete.

+
    +
  1. Transforms are very slow on clientside. This is not usually noticable, but if you start using large amounts of them it will grind you to a halt quickly, regardless of whether its on overlays or objs
  2. +
  3. The darkness plane. The darkness plane has specific variables it needs to render correctly, and these can be found in the plane masters file. it is composed internally of two parts, a black mask over the clients screen, and a non rendering mask that blocks all luminosity=0 turfs and their contents from rendering if the SEE_BLACKNESS flag is set properly. It behaves very oddly, such as forcing itself to ALWAYS render or pre-render on blend_multiply blend mode or refusing to render the black mask properly otherwise. The blocker will always block rendering but the mask can be layered under other objects.
  4. +
  5. render_target/source. Render_target/source will only copy certain rendering instructions, and these are only defined as "etc." in the byond reference. Known non copied appearance vars include: blend_mode, plane, layer, vis_contents, mouse_opacity...
  6. +
  7. Large icons on the screen that peek over the edge will instead of only rendering partly like you would expect will instead stretch the screen while not adgusting the render buffer, which means that you can actively see as tiles and map objects are rendered. You can use this for an easy "offscreen" UI.
  8. +
  9. Numerically large filters on objects of any size will torpedo performance, even though large objects with small filters will perform massively better. (ie blur(size=20) BAD)
  10. +
  11. Texture Atlas: the texture atlas byond uses to render icons is very susceptible to corruption and can regularily replace icons with other icons or just not render at all. This can be exasperated by alt tabbing or pausing the dreamseeker process.
  12. +
  13. The renderer is awful code and lummox said he will try changing a large part of it for 515 so keep an eye on that
  14. +
  15. Byond uses DirectX 9 (Lummox said he wants to update to DirectX 11)
  16. +
  17. Particles are just fancy overlays and are not independent of their owner
  18. +
  19. Maptick items inside mob.contents are cheaper compared to most other movables
  20. +
+The rendering solution +

One of the main issues with making pretty effects is how objects can only render to one plane, and how filters can only be applied to single objects. Quite simply it means we cant apply effects to multiple planes at once, and an effect to one plane only by treating it as a single unit:

+

+

A semi-fix to stop from having to apply effects to every single plane is to use the render controllers, to automatically apply filters and colors automatically onto their controlled planes.

+

The solution is thus instead we replace plane masters rendering directly to client with planes that render multiple planes onto them as objects in order to be able to affect multiple planes while treating them as a single object. This is done by relaying the plane using a "render relay" onto a "render plate" which acts as a plane master of plane masters of sorts, and since planes are rendered onto it as single objects any filters we apply to them will render over the planes, treating them as a single unit.

+

+

We can also choose to render these by decreasing the scaling all applied effects (effect_size/number_of_plates_rendered_to) then rendering it onto multiple planes:

+

+

Through these this allows us to treat planes as single objects, and lets us distort them as a single unit, most notably works wonders with the displacement filter. Specifically, here you can displacement_filter a plane onto a plate, which then will treat all the other planes rendered on that plate as a single unit.

+Render plates +

The rendering system uses two objects to unify planes: render_relay and render_plates. Render relays use render_target/source and the relay_render_to_plane proc to replicate the plane master on the render relay. This render relay is then rendered onto a render_plate, which is a plane master that renders the render_relays onto itself. This plate can then be hierachically rendered with the same process until it reaches the master render_plate, which is the plate that will actually render to the player. These plates naturally in the byond style have quirks. For example, rendering to two plates will double any effects such as color or filters, and as such you need to carefully manage how you render them. Keep in mind as well that when sorting the layers for rendering on a plane that they should not be negative, this is handled automatically in relay_render_to_plane. When debugging note that mouse_opacity can act bizzarly with this method, such as only allowing you to click things that are layered over objects on a certain plane but auomatically setting the mouse_opacity should be handling this. Note that if you decide to manipulate a plane with internal byond objects that you will have to manually extrapolate the vars that are set if you want to render them to another plane (See blackness plane for example), and that this is not documented anywhere.

+

Goodluck and godspeed with coding +- Just another contributor

+ + + diff --git a/code/_onclick/hud/rendering/plane_master_group.html b/code/_onclick/hud/rendering/plane_master_group.html new file mode 100644 index 0000000000000..aa7ccbe67e95b --- /dev/null +++ b/code/_onclick/hud/rendering/plane_master_group.html @@ -0,0 +1,43 @@ + + + + + + + code/_onclick/hud/rendering/plane_master_group.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/_onclick/hud/rendering/plane_master_group.dm + +

+ + + + + + +
/datum/plane_master_groupDatum that represents one "group" of plane masters +So all the main window planes would be in one, all the spyglass planes in another +Etc
/datum/plane_master_group/popupHolds plane masters for popups, like camera windows +Note: We do not scale this plane, even though we could +This is because it's annoying to get turfs to position inside it correctly +If you wanna try someday feel free, but I can't manage it
MAX_CLIENT_BUILD_WITH_WORKING_SECONDARY_MAPSThis is janky as hell but since something changed with CENTER positioning after build 1614 we have to switch to the bandaid LEFT,TOP positioning +using LEFT,TOP at or before 1614 will result in another broken offset for cameras
/datum/plane_master_group/mainHolds the main plane master
/datum/plane_master_group/hudlessHudless group. Exists for testing

Define Details

+

MAX_CLIENT_BUILD_WITH_WORKING_SECONDARY_MAPS + + +

+

This is janky as hell but since something changed with CENTER positioning after build 1614 we have to switch to the bandaid LEFT,TOP positioning +using LEFT,TOP at or before 1614 will result in another broken offset for cameras

+ + + diff --git a/code/_onclick/hud/rendering/render_plate.html b/code/_onclick/hud/rendering/render_plate.html new file mode 100644 index 0000000000000..fcfa0cc60b98a --- /dev/null +++ b/code/_onclick/hud/rendering/render_plate.html @@ -0,0 +1,34 @@ + + + + + + + code/_onclick/hud/rendering/render_plate.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/_onclick/hud/rendering/render_plate.dm + +

+ + + + + + + +

Custom rendering solution to allow for advanced effects +We (ab)use plane masters and render source/target to cheaply render 2+ planes as 1 +if you want to read more read the _render_readme.md

/atom/movable/render_plane_relayRender relay object assigned to a plane master to be able to relay it's render onto other planes that are not it's own
/atom/movable/screen/plane_master/rendering_plate
/atom/movable/screen/plane_master/rendering_plate/masterthis plate renders the final screen to show to the player
/atom/movable/screen/plane_master/rendering_plate/game_worldrenders general in charachter game objects
/atom/movable/screen/plane_master/rendering_plate/non_gamerender plate for OOC stuff like ghosts, hud-screen effects, etc
+ + + diff --git a/code/_onclick/hud/screen_objects/menu_text_objects.html b/code/_onclick/hud/screen_objects/menu_text_objects.html new file mode 100644 index 0000000000000..435bac2316c00 --- /dev/null +++ b/code/_onclick/hud/screen_objects/menu_text_objects.html @@ -0,0 +1,33 @@ + + + + + + + code/_onclick/hud/screen_objects/menu_text_objects.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/_onclick/hud/screen_objects/menu_text_objects.dm + +

+ + + + +

Screen Lobby objects +Uses maptext to display the objects +Automatically will align in the order that they are defined +Stuff happens on Click(), although hrefs are also valid to get stuff done +hrefs will make the text blue though so dont do it :/

/atom/movable/screen/text/lobbyUnclickable Lobby UI objects
/atom/movable/screen/text/lobby/clickableClickable UI lobby objects which do stuff on Click() when pressed
+ + + diff --git a/code/_onclick/hud/screen_objects/screen_objects.html b/code/_onclick/hud/screen_objects/screen_objects.html new file mode 100644 index 0000000000000..37765efcd13fb --- /dev/null +++ b/code/_onclick/hud/screen_objects/screen_objects.html @@ -0,0 +1,27 @@ + + + + + + + code/_onclick/hud/screen_objects/screen_objects.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/_onclick/hud/screen_objects/screen_objects.dm + +

+ + +
/atom/movable/screen/ammoHUD ammo indicator
+ + + diff --git a/code/_onclick/hud/screen_objects/text_objects.html b/code/_onclick/hud/screen_objects/text_objects.html new file mode 100644 index 0000000000000..52d6524bf8d6a --- /dev/null +++ b/code/_onclick/hud/screen_objects/text_objects.html @@ -0,0 +1,28 @@ + + + + + + + code/_onclick/hud/screen_objects/text_objects.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/_onclick/hud/screen_objects/text_objects.dm + +

+ + + +
/atom/movable/screen/textUI obj holders for all your maptext needs
/atom/movable/screen/text/screen_timerA screen object that shows the time left on a timer
+ + + diff --git a/code/controllers/configuration/config_entry.html b/code/controllers/configuration/config_entry.html new file mode 100644 index 0000000000000..f73945a6227f3 --- /dev/null +++ b/code/controllers/configuration/config_entry.html @@ -0,0 +1,27 @@ + + + + + + + code/controllers/configuration/config_entry.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/controllers/configuration/config_entry.dm + +

+ + +
/datum/config_entry/str_listList config entry, used for configuring a list of strings
+ + + diff --git a/code/controllers/configuration/entries/game_options.html b/code/controllers/configuration/entries/game_options.html new file mode 100644 index 0000000000000..156d4e71472f8 --- /dev/null +++ b/code/controllers/configuration/entries/game_options.html @@ -0,0 +1,27 @@ + + + + + + + code/controllers/configuration/entries/game_options.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/controllers/configuration/entries/game_options.dm + +

+ + +
/datum/config_entry/flag/roonyIf TRUE, the evo proc will consider spawn roony instead of runner on evo
+ + + diff --git a/code/controllers/configuration/entries/general.html b/code/controllers/configuration/entries/general.html new file mode 100644 index 0000000000000..765c31b2b35e3 --- /dev/null +++ b/code/controllers/configuration/entries/general.html @@ -0,0 +1,34 @@ + + + + + + + code/controllers/configuration/entries/general.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/controllers/configuration/entries/general.dm + +

+ + + + + + + + + +
/datum/config_entry/string/centcom_ban_dbURL for the CentCom Galactic Ban DB API
/datum/config_entry/string/webmap_hostHost of the webmap
/datum/config_entry/flag/log_speech_indicatorslog speech indicators(started/stopped speaking)
/datum/config_entry/flag/log_mechalog mech data
/datum/config_entry/flag/log_job_debuglog roundstart divide occupations debug information to a file
/datum/config_entry/flag/log_as_human_readableLog human readable versions of json log entries
/datum/config_entry/flag/popup_admin_pmGives the ability to send players a maptext popup.
/datum/config_entry/number/panic_bunker_livingliving time in minutes that a player needs to pass the panic bunker
+ + + diff --git a/code/controllers/failsafe.html b/code/controllers/failsafe.html new file mode 100644 index 0000000000000..4ce8af7ed62d9 --- /dev/null +++ b/code/controllers/failsafe.html @@ -0,0 +1,32 @@ + + + + + + + code/controllers/failsafe.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/controllers/failsafe.dm + +

+ + + + + + + +
/var/FailsafeFailsafe
/proc/recover_all_SS_and_recreate_masterRecreate all SSs which will still cause data survive due to Recover(), the new Master will then find and take them from global.vars
/proc/delete_all_SS_and_recreate_masterDelete all existing SS to basically start over
+ + + diff --git a/code/controllers/master.html b/code/controllers/master.html new file mode 100644 index 0000000000000..47beac667863f --- /dev/null +++ b/code/controllers/master.html @@ -0,0 +1,32 @@ + + + + + + + code/controllers/master.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/controllers/master.dm + +

+ + + + +
/var/MasterStonedMC
/datum/controller/masterStart of queue linked list +End of queue linked list (used for appending to the list) +Are we loading in a new map? +for scheduling different subsystems for different stages of the round
+ + + diff --git a/code/controllers/subsystem/advanced_pathfinding.html b/code/controllers/subsystem/advanced_pathfinding.html new file mode 100644 index 0000000000000..97e51c584521a --- /dev/null +++ b/code/controllers/subsystem/advanced_pathfinding.html @@ -0,0 +1,29 @@ + + + + + + + code/controllers/subsystem/advanced_pathfinding.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/controllers/subsystem/advanced_pathfinding.dm + +

+ + + + +
/datum/path_stepBasic implementation of A* using atoms. Very cheap, at max it will do about 50-100 distance check for a whole path, but typically it will do 10-20
/proc/get_pathReturns the most optimal path to get from starting atom to goal atom
+ + + diff --git a/code/controllers/subsystem/ambience.html b/code/controllers/subsystem/ambience.html new file mode 100644 index 0000000000000..c5cc8873c9494 --- /dev/null +++ b/code/controllers/subsystem/ambience.html @@ -0,0 +1,28 @@ + + + + + + + code/controllers/subsystem/ambience.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/controllers/subsystem/ambience.dm + +

+ + + +
/var/SSambienceThe subsystem used to play ambience to users every now and then, makes them real excited.
+ + + diff --git a/code/controllers/subsystem/asset_loading.html b/code/controllers/subsystem/asset_loading.html new file mode 100644 index 0000000000000..c2f448ed13afd --- /dev/null +++ b/code/controllers/subsystem/asset_loading.html @@ -0,0 +1,30 @@ + + + + + + + code/controllers/subsystem/asset_loading.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/controllers/subsystem/asset_loading.dm + +

+ + + +
/var/SSasset_loadingAllows us to lazyload asset datums +Anything inserted here will fully load if directly gotten +So this just serves to remove the requirement to load assets fully during init
+ + + diff --git a/code/controllers/subsystem/aura.html b/code/controllers/subsystem/aura.html new file mode 100644 index 0000000000000..36306ff0582e7 --- /dev/null +++ b/code/controllers/subsystem/aura.html @@ -0,0 +1,29 @@ + + + + + + + code/controllers/subsystem/aura.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/controllers/subsystem/aura.dm + +

+ + + + +
/var/SSauraTracks aura emitters and tells them to pulse. Also used for creating new ones.
/datum/aura_bearerThe thing that actually pushes out auras to nearby mobs.
+ + + diff --git a/code/controllers/subsystem/autofire.html b/code/controllers/subsystem/autofire.html new file mode 100644 index 0000000000000..de2bc43318792 --- /dev/null +++ b/code/controllers/subsystem/autofire.html @@ -0,0 +1,40 @@ + + + + + + + code/controllers/subsystem/autofire.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/controllers/subsystem/autofire.dm + +

+ + + + + +
BUCKET_LENControls how many buckets should be kept, each representing a tick. Max is ten seconds, to have better perf.
BUCKET_POSHelper for getting the correct bucket
/var/SSautomatedfire

Define Details

+

BUCKET_LEN + + +

+

Controls how many buckets should be kept, each representing a tick. Max is ten seconds, to have better perf.

BUCKET_POS + + + +

+

Helper for getting the correct bucket

+ + + diff --git a/code/controllers/subsystem/chat.html b/code/controllers/subsystem/chat.html new file mode 100644 index 0000000000000..93c07ecfdcd4e --- /dev/null +++ b/code/controllers/subsystem/chat.html @@ -0,0 +1,28 @@ + + + + + + + code/controllers/subsystem/chat.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/controllers/subsystem/chat.dm + +

+ + +

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

+ + + diff --git a/code/controllers/subsystem/early_asset.html b/code/controllers/subsystem/early_asset.html new file mode 100644 index 0000000000000..fd766d63d62df --- /dev/null +++ b/code/controllers/subsystem/early_asset.html @@ -0,0 +1,28 @@ + + + + + + + code/controllers/subsystem/early_asset.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/controllers/subsystem/early_asset.dm + +

+ + + +
/var/SSearly_assetsInitializes any assets that need to be loaded ASAP, before the atoms SS initializes.
+ + + diff --git a/code/controllers/subsystem/excavation.html b/code/controllers/subsystem/excavation.html new file mode 100644 index 0000000000000..e6bae0d7391cb --- /dev/null +++ b/code/controllers/subsystem/excavation.html @@ -0,0 +1,32 @@ + + + + + + + code/controllers/subsystem/excavation.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/controllers/subsystem/excavation.dm + +

+ + +
MAX_ACTIVE_EXCAVATIONSExcavation event subsystem

Define Details

+

MAX_ACTIVE_EXCAVATIONS + + +

+

Excavation event subsystem

+ + + diff --git a/code/controllers/subsystem/garbage.html b/code/controllers/subsystem/garbage.html new file mode 100644 index 0000000000000..ddb821160d23d --- /dev/null +++ b/code/controllers/subsystem/garbage.html @@ -0,0 +1,58 @@ + + + + + + + code/controllers/subsystem/garbage.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/controllers/subsystem/garbage.dm + +

+ + + + + + +
Debugging GC issues +

In order to debug qdel() failures, there are several tools available. +To enable these tools, define TESTING and 'REFERENCE_TRACKING' in _compile_options.dm.

+

First is a verb called "Find References", which lists every refererence to an object in the world. This allows you to track down any indirect or obfuscated references that you might have missed.

+

Complementing this is another verb, "qdel() then Find References". +This does exactly what you'd expect; it calls qdel() on the object and then it finds all references remaining. +This is great, because it means that Destroy() will have been called before it starts to find references, +so the only references you'll find will be the ones preventing the object from qdel()ing gracefully.

+

If you have a datum or something you are not destroying directly (say via the singulo), +the next tool is QDEL_HINT_FINDREFERENCE. You can return this in Destroy() (where you would normally return ..()), +to print a list of references once it enters the GC queue.

+

You can define 'GC_FAILURE_HARD_LOOKUP' to check for references on all hard_dels. Defining 'FIND_REF_NO_CHECK_TICK' will cause the game to +freeze, so do not define this on live.

+

If you are only using the reference_tracking system, you do not need to define 'TESTING'; All results are logged in runtime logs

+

Finally is a verb, "Show qdel() Log", which shows the deletion log that the garbage subsystem keeps. This is helpful if you are having race conditions or need to review the order of deletions.

+

By using these methods of finding references, you can make your life far, far easier when dealing with qdel() failures.

/datum/qdel_itemQdel Item: Holds statistics on each type that passes thru qdel +Holds the type as a string for this type +Total number of times it's passed thru qdel. +Total amount of milliseconds spent processing this type's Destroy() +Times it was queued for soft deletion but failed to soft delete. +Different from failures because it also includes QDEL_HINT_HARDDEL deletions +Total amount of milliseconds spent hard deleting this type. +Highest time spent hard_deleting this in ms. +Number of times hard deletes took longer than the configured threshold +Number of times it's not respected force=TRUE +Number of times it's not even bother to give a qdel hint +Number of times it's slept in its destroy

Flags related to this type's trip thru qdel.

+
/proc/qdelShould be treated as a replacement for the 'del' keyword.
+ + + diff --git a/code/controllers/subsystem/lighting.html b/code/controllers/subsystem/lighting.html new file mode 100644 index 0000000000000..a6c785fbe1b89 --- /dev/null +++ b/code/controllers/subsystem/lighting.html @@ -0,0 +1,30 @@ + + + + + + + code/controllers/subsystem/lighting.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/controllers/subsystem/lighting.dm + +

+ + + +
/datum/controller/subsystem/lightingList of static lighting sources queued for update. +List of lighting corners queued for update. +List of lighting objects queued for update.

List of hybrid lighting sources queued for update.

+ + + diff --git a/code/controllers/subsystem/minimaps.html b/code/controllers/subsystem/minimaps.html new file mode 100644 index 0000000000000..42f6802ce3169 --- /dev/null +++ b/code/controllers/subsystem/minimaps.html @@ -0,0 +1,35 @@ + + + + + + + code/controllers/subsystem/minimaps.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/controllers/subsystem/minimaps.dm + +

+ + + + + + + +
/var/SSminimaps
/datum/hud_displaysHolder datum for a zlevels data, concerning the overlays and the drawn level itself +The individual image trackers have a raw and a normal list +raw lists just store the images, while the normal ones are assoc list of [tracked_atom] = image +the raw lists are to speed up the Fire() of the subsystem so we dont have to filter through
/datum/minimap_updatorHolder datum to ease updating of atoms to update
/atom/movable/screen/minimapDefault HUD screen minimap object
/datum/action/minimapAction that gives the owner access to the minimap pool
+ + + diff --git a/code/controllers/subsystem/overlays.html b/code/controllers/subsystem/overlays.html new file mode 100644 index 0000000000000..2e7cb2adf47d7 --- /dev/null +++ b/code/controllers/subsystem/overlays.html @@ -0,0 +1,30 @@ + + + + + + + code/controllers/subsystem/overlays.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/controllers/subsystem/overlays.dm + +

+ + + +
/proc/overlays2textConverts an overlay list into text for debug printing +Of note: overlays aren't actually mutable appearances, they're just appearances +Don't have access to that type tho, so this is the best you're gonna get
+ + + diff --git a/code/controllers/subsystem/persistence.html b/code/controllers/subsystem/persistence.html new file mode 100644 index 0000000000000..4cbe6021bd01e --- /dev/null +++ b/code/controllers/subsystem/persistence.html @@ -0,0 +1,27 @@ + + + + + + + code/controllers/subsystem/persistence.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/controllers/subsystem/persistence.dm + +

+ + +
/datum/season_datumUsed to make item buckets for the seasonal items system
+ + + diff --git a/code/controllers/subsystem/ping.html b/code/controllers/subsystem/ping.html new file mode 100644 index 0000000000000..fef1e3d780d21 --- /dev/null +++ b/code/controllers/subsystem/ping.html @@ -0,0 +1,28 @@ + + + + + + + code/controllers/subsystem/ping.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/controllers/subsystem/ping.dm + +

+ + +

Copyright (c) 2022 Aleksej Komarov +SPDX-License-Identifier: MIT

+ + + diff --git a/code/controllers/subsystem/shuttle.html b/code/controllers/subsystem/shuttle.html new file mode 100644 index 0000000000000..61c04316fb9ff --- /dev/null +++ b/code/controllers/subsystem/shuttle.html @@ -0,0 +1,32 @@ + + + + + + + code/controllers/subsystem/shuttle.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/controllers/subsystem/shuttle.dm + +

+ + +
SHUTTLE_SPAWN_BUFFERGive a shuttle 10 "fires" (~10 seconds) to spawn before it can be cleaned up.

Define Details

+

SHUTTLE_SPAWN_BUFFER + + +

+

Give a shuttle 10 "fires" (~10 seconds) to spawn before it can be cleaned up.

+ + + diff --git a/code/controllers/subsystem/spatial_gridmap.html b/code/controllers/subsystem/spatial_gridmap.html new file mode 100644 index 0000000000000..1102658b58823 --- /dev/null +++ b/code/controllers/subsystem/spatial_gridmap.html @@ -0,0 +1,51 @@ + + + + + + + code/controllers/subsystem/spatial_gridmap.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/controllers/subsystem/spatial_gridmap.dm + +

+ + + + + + + +
NUMBER_OF_PREGENERATED_ORANGES_EARSthe subsystem creates this many /mob/oranges_ear mob instances during init. allocations that require more than this create more.
/datum/spatial_grid_cellused by /datum/controller/subsystem/spatial_grid to cover every z level so that the coordinates of every turf in the world corresponds to one of these in +the subsystems list of grid cells by z level. each one of these contains content lists holding all atoms meeting a certain criteria that is in our borders. +these datums shouldnt have significant behavior, they should just hold data. the lists are filled and emptied by the subsystem.
/var/SSspatial_grid
BOUNDING_BOX_MINthe left or bottom side index of a box composed of spatial grid cells with the given actual center x or y coordinate
BOUNDING_BOX_MAXthe right or upper side index of a box composed of spatial grid cells with the given center x or y coordinate. +outputted value cant exceed the number of cells on that axis

Define Details

+

BOUNDING_BOX_MAX + + + +

+

the right or upper side index of a box composed of spatial grid cells with the given center x or y coordinate. +outputted value cant exceed the number of cells on that axis

BOUNDING_BOX_MIN + + + +

+

the left or bottom side index of a box composed of spatial grid cells with the given actual center x or y coordinate

NUMBER_OF_PREGENERATED_ORANGES_EARS + + +

+

the subsystem creates this many /mob/oranges_ear mob instances during init. allocations that require more than this create more.

+ + + diff --git a/code/controllers/subsystem/spawning.html b/code/controllers/subsystem/spawning.html new file mode 100644 index 0000000000000..08d670aa95879 --- /dev/null +++ b/code/controllers/subsystem/spawning.html @@ -0,0 +1,27 @@ + + + + + + + code/controllers/subsystem/spawning.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/controllers/subsystem/spawning.dm + +

+ + +
/datum/spawnerdataHolder datum for various data relating to individual spawners
+ + + diff --git a/code/controllers/subsystem/speech_controller.html b/code/controllers/subsystem/speech_controller.html new file mode 100644 index 0000000000000..2a7b762b7c220 --- /dev/null +++ b/code/controllers/subsystem/speech_controller.html @@ -0,0 +1,27 @@ + + + + + + + code/controllers/subsystem/speech_controller.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/controllers/subsystem/speech_controller.dm + +

+ + +

Todo replace me with VERB_MANAGER_SUBSYSTEM_DEF, see TG

+ + + diff --git a/code/controllers/subsystem/statpanel.html b/code/controllers/subsystem/statpanel.html new file mode 100644 index 0000000000000..f4a280150c6f7 --- /dev/null +++ b/code/controllers/subsystem/statpanel.html @@ -0,0 +1,29 @@ + + + + + + + code/controllers/subsystem/statpanel.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/controllers/subsystem/statpanel.dm + +

+ + +
/datum/object_window_infoDatum that holds and tracks info about a client's object window +Really only exists because I want to be able to do logic with signals +And need a safe place to do the registration
+ + + diff --git a/code/controllers/subsystem/tgui.html b/code/controllers/subsystem/tgui.html new file mode 100644 index 0000000000000..332377b57959b --- /dev/null +++ b/code/controllers/subsystem/tgui.html @@ -0,0 +1,30 @@ + + + + + + + code/controllers/subsystem/tgui.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/controllers/subsystem/tgui.dm + +

+ + + + +

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

/var/SStguitgui subsystem
+ + + diff --git a/code/controllers/subsystem/timer.html b/code/controllers/subsystem/timer.html new file mode 100644 index 0000000000000..a8579423ad17b --- /dev/null +++ b/code/controllers/subsystem/timer.html @@ -0,0 +1,60 @@ + + + + + + + code/controllers/subsystem/timer.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/controllers/subsystem/timer.dm + +

+ + + + + + + + + + + + + + +
BUCKET_LENControls how many buckets should be kept, each representing a tick. (1 minutes worth)
BUCKET_POSHelper for getting the correct bucket for a given timer
TIMER_MAXGets the maximum time at which timers will be invoked from buckets, used for deferring to secondary queue
TIMER_ID_MAXMax float with integer precision
/var/SStimer
/datum/timedeventThis is the actual timer, it contains the callback and necessary data to maintain +the timer.
/proc/_addtimerCreate a new timer and insert it in the queue. +You should not call this directly, and should instead use the addtimer macro, which includes source information.
/proc/deltimerDelete a timer
/proc/timeleftGet the remaining deciseconds on a timer

Define Details

+

BUCKET_LEN + + +

+

Controls how many buckets should be kept, each representing a tick. (1 minutes worth)

BUCKET_POS + + + +

+

Helper for getting the correct bucket for a given timer

TIMER_ID_MAX + + +

+

Max float with integer precision

TIMER_MAX + + + +

+

Gets the maximum time at which timers will be invoked from buckets, used for deferring to secondary queue

+ + + diff --git a/code/controllers/subsystem/tts.html b/code/controllers/subsystem/tts.html new file mode 100644 index 0000000000000..4728cd53f3a33 --- /dev/null +++ b/code/controllers/subsystem/tts.html @@ -0,0 +1,27 @@ + + + + + + + code/controllers/subsystem/tts.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/controllers/subsystem/tts.dm + +

+ + +
/datum/tts_requestA struct containing information on an individual player or mob who has made a TTS request
+ + + diff --git a/code/controllers/subsystem/tutorials.html b/code/controllers/subsystem/tutorials.html new file mode 100644 index 0000000000000..356076cff1273 --- /dev/null +++ b/code/controllers/subsystem/tutorials.html @@ -0,0 +1,28 @@ + + + + + + + code/controllers/subsystem/tutorials.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/controllers/subsystem/tutorials.dm + +

+ + + +
/var/SStutorialsNamespace for housing code relating to giving contextual tutorials to users.
+ + + diff --git a/code/datums/beam.html b/code/datums/beam.html new file mode 100644 index 0000000000000..5f1a8e06e350e --- /dev/null +++ b/code/datums/beam.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/beam.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/beam.dm + +

+ + +
/datum/beam
+ + + diff --git a/code/datums/browser.html b/code/datums/browser.html new file mode 100644 index 0000000000000..bad2176a1469b --- /dev/null +++ b/code/datums/browser.html @@ -0,0 +1,28 @@ + + + + + + + code/datums/browser.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/browser.dm + +

+ + + +
/proc/tgalertDEPRECATED: USE tgui_alert(...) INSTEAD
+ + + diff --git a/code/datums/callback.html b/code/datums/callback.html new file mode 100644 index 0000000000000..d28f3b0ad6ff2 --- /dev/null +++ b/code/datums/callback.html @@ -0,0 +1,30 @@ + + + + + + + code/datums/callback.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/callback.dm + +

+ + + + + +
/datum/callbackA datum that holds a proc to be called on another object, used to track proccalls to other objects
/datum/callback_selectHelper datum for the select callbacks proc
/proc/callback_selectRuns a list of callbacks asyncronously, returning only when all have finished
+ + + diff --git a/code/datums/chat_payload.html b/code/datums/chat_payload.html new file mode 100644 index 0000000000000..9fadaaa239420 --- /dev/null +++ b/code/datums/chat_payload.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/chat_payload.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/chat_payload.dm + +

+ + +
/datum/chat_payloadStores information about a chat payload
+ + + diff --git a/code/datums/chatmessage.html b/code/datums/chatmessage.html new file mode 100644 index 0000000000000..bb43939867ca1 --- /dev/null +++ b/code/datums/chatmessage.html @@ -0,0 +1,83 @@ + + + + + + + code/datums/chatmessage.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/datums/chatmessage.dm + +

+ + + + + + + + + + + + + +
CHAT_MESSAGE_SPAWN_TIMEHow long the chat message's spawn-in animation will occur for
CHAT_MESSAGE_LIFESPANHow long the chat message will exist prior to any exponential decay
CHAT_MESSAGE_EOL_FADEHow long the chat message's end of life fading animation will occur for
CHAT_MESSAGE_GRACE_PERIODGrace period for fade before we actually delete the chat message
CHAT_MESSAGE_EXP_DECAYFactor of how much the message index (number of messages) will account to exponential decay
CHAT_MESSAGE_HEIGHT_DECAYFactor of how much height will account to exponential decay
CHAT_MESSAGE_APPROX_LHEIGHTApproximate height in pixels of an 'average' line, used for height decay
CHAT_MESSAGE_WIDTHMax width of chat message in pixels
CHAT_MESSAGE_MAX_LENGTHMax length of chat message in characters
CHAT_LAYER_Z_STEPMaximum precision of float before rounding errors occur (in this context)
CHAT_LAYER_MAX_ZThe number of z-layer 'slices' usable by the chat message layering
/datum/chatmessageDatum for generating a message overlay on the map

Define Details

+

CHAT_LAYER_MAX_Z + + +

+

The number of z-layer 'slices' usable by the chat message layering

CHAT_LAYER_Z_STEP + + +

+

Maximum precision of float before rounding errors occur (in this context)

CHAT_MESSAGE_APPROX_LHEIGHT + + +

+

Approximate height in pixels of an 'average' line, used for height decay

CHAT_MESSAGE_EOL_FADE + + +

+

How long the chat message's end of life fading animation will occur for

CHAT_MESSAGE_EXP_DECAY + + +

+

Factor of how much the message index (number of messages) will account to exponential decay

CHAT_MESSAGE_GRACE_PERIOD + + +

+

Grace period for fade before we actually delete the chat message

CHAT_MESSAGE_HEIGHT_DECAY + + +

+

Factor of how much height will account to exponential decay

CHAT_MESSAGE_LIFESPAN + + +

+

How long the chat message will exist prior to any exponential decay

CHAT_MESSAGE_MAX_LENGTH + + +

+

Max length of chat message in characters

CHAT_MESSAGE_SPAWN_TIME + + +

+

How long the chat message's spawn-in animation will occur for

CHAT_MESSAGE_WIDTH + + +

+

Max width of chat message in pixels

+ + + diff --git a/code/datums/components/_component.html b/code/datums/components/_component.html new file mode 100644 index 0000000000000..d4e3dd070bc73 --- /dev/null +++ b/code/datums/components/_component.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/components/_component.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/components/_component.dm + +

+ + +
/datum/componentThe component datum
+ + + diff --git a/code/datums/components/admin_popup.html b/code/datums/components/admin_popup.html new file mode 100644 index 0000000000000..c74092e792c74 --- /dev/null +++ b/code/datums/components/admin_popup.html @@ -0,0 +1,32 @@ + + + + + + + code/datums/components/admin_popup.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/components/admin_popup.dm + +

+ + + + + +
/datum/component/admin_popupApplied to clients when they receive an admin popup, alerting them to +their ticket.
/atom/movable/screen/admin_popupThe UI element for admin popups
/proc/give_admin_popupTries to give the target an admin popup. +If it fails, will send the error to the passed admin.
+ + + diff --git a/code/datums/components/ai.html b/code/datums/components/ai.html new file mode 100644 index 0000000000000..a926b4d12e66d --- /dev/null +++ b/code/datums/components/ai.html @@ -0,0 +1,36 @@ + + + + + + + code/datums/components/ai.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/datums/components/ai.dm + +

+ + +
AI_INSTANCE_HARDCAPAn absolute hardcap on the # of instances of /datum/component/ai_controller that can exist. +Should a ai component get initialized while there's already enough instances of said thing, it will deny the initialization of the component but NOT the mob it's being attached to. +This is mainly here because admins keep on spamming AI without caring for the server's ability to handle hundreds/thousands of AI.

Define Details

+

AI_INSTANCE_HARDCAP + + +

+

An absolute hardcap on the # of instances of /datum/component/ai_controller that can exist. +Should a ai component get initialized while there's already enough instances of said thing, it will deny the initialization of the component but NOT the mob it's being attached to. +This is mainly here because admins keep on spamming AI without caring for the server's ability to handle hundreds/thousands of AI.

+ + + diff --git a/code/datums/components/beacon.html b/code/datums/components/beacon.html new file mode 100644 index 0000000000000..06a4a2180c6cb --- /dev/null +++ b/code/datums/components/beacon.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/components/beacon.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/components/beacon.dm + +

+ + +
/datum/component/beaconThis component is used to give stuff beacon functionality.
+ + + diff --git a/code/datums/components/chem_booster.html b/code/datums/components/chem_booster.html new file mode 100644 index 0000000000000..4c55e5b0160fd --- /dev/null +++ b/code/datums/components/chem_booster.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/components/chem_booster.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/components/chem_booster.dm + +

+ + +
/datum/component/chem_boosterChem booster component
+ + + diff --git a/code/datums/components/companion.html b/code/datums/components/companion.html new file mode 100644 index 0000000000000..bfa593b52f047 --- /dev/null +++ b/code/datums/components/companion.html @@ -0,0 +1,40 @@ + + + + + + + code/datums/components/companion.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/datums/components/companion.dm + +

+ + + + +
COMPANION_SAYWrapper for say
COMPANION_EMOTEWrapper for emote
/datum/component/companionCompanion component

Define Details

+

COMPANION_EMOTE + + + +

+

Wrapper for emote

COMPANION_SAY + + + +

+

Wrapper for say

+ + + diff --git a/code/datums/components/connect_loc_behalf.html b/code/datums/components/connect_loc_behalf.html new file mode 100644 index 0000000000000..ac2be4bb379e4 --- /dev/null +++ b/code/datums/components/connect_loc_behalf.html @@ -0,0 +1,30 @@ + + + + + + + code/datums/components/connect_loc_behalf.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/components/connect_loc_behalf.dm + +

+ + +
/datum/component/connect_loc_behalfThis component behaves similar to connect_loc, hooking into a signal on a tracked object's turf +It has the ability to react to that signal on behalf of a seperate listener however +This has great use, primarially for components, but it carries with it some overhead +So we do it seperately as it needs to hold state which is very likely to lead to bugs if it remains as an element.
+ + + diff --git a/code/datums/components/connect_mob_behalf.html b/code/datums/components/connect_mob_behalf.html new file mode 100644 index 0000000000000..a6277c0110842 --- /dev/null +++ b/code/datums/components/connect_mob_behalf.html @@ -0,0 +1,29 @@ + + + + + + + code/datums/components/connect_mob_behalf.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/components/connect_mob_behalf.dm + +

+ + +
/datum/component/connect_mob_behalfThis component behaves similar to connect_loc_behalf, but working off clients and mobs instead of loc +To be clear, we hook into a signal on a tracked client's mob +We retain the ability to react to that signal on a seperate listener, which makes this quite powerful
+ + + diff --git a/code/datums/components/crafting/crafting.html b/code/datums/components/crafting/crafting.html new file mode 100644 index 0000000000000..d1e06c076176b --- /dev/null +++ b/code/datums/components/crafting/crafting.html @@ -0,0 +1,37 @@ + + + + + + + code/datums/components/crafting/crafting.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/datums/components/crafting/crafting.dm + +

+ + + +
STACK_CHECK_CARDINALSChecks if there is an object of the result type in any of the cardinal directions
STACK_CHECK_ADJACENTChecks if there is an object of the result type within one tile

Define Details

+

STACK_CHECK_ADJACENT + + +

+

Checks if there is an object of the result type within one tile

STACK_CHECK_CARDINALS + + +

+

Checks if there is an object of the result type in any of the cardinal directions

+ + + diff --git a/code/datums/components/jump.html b/code/datums/components/jump.html new file mode 100644 index 0000000000000..083af48cb3130 --- /dev/null +++ b/code/datums/components/jump.html @@ -0,0 +1,32 @@ + + + + + + + code/datums/components/jump.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/datums/components/jump.dm + +

+ + +
MAX_JUMP_CHARGE_TIMETime to max out a charged jump

Define Details

+

MAX_JUMP_CHARGE_TIME + + +

+

Time to max out a charged jump

+ + + diff --git a/code/datums/components/largeobjecttransparency.html b/code/datums/components/largeobjecttransparency.html new file mode 100644 index 0000000000000..3fe3747d719a5 --- /dev/null +++ b/code/datums/components/largeobjecttransparency.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/components/largeobjecttransparency.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/components/largeobjecttransparency.dm + +

+ + +
/datum/component/largetransparencyMakes large icons partially see through if high priority atoms are behind them.
+ + + diff --git a/code/datums/components/larva_queue.html b/code/datums/components/larva_queue.html new file mode 100644 index 0000000000000..ee1fd4c581381 --- /dev/null +++ b/code/datums/components/larva_queue.html @@ -0,0 +1,28 @@ + + + + + + + code/datums/components/larva_queue.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/components/larva_queue.dm + +

+ + + +
/datum/component/larva_queueHandles clients getting the action to join the larva queue when they're eligible
/datum/action/join_larva_queueAction for joining the larva queue
+ + + diff --git a/code/datums/components/mobile_power.html b/code/datums/components/mobile_power.html new file mode 100644 index 0000000000000..27517a854b5d1 --- /dev/null +++ b/code/datums/components/mobile_power.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/components/mobile_power.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/components/mobile_power.dm + +

+ + +
/datum/component/mobile_powerThis component powers things in a range via signal intercepts instead of via area
+ + + diff --git a/code/datums/components/mounted_gun.html b/code/datums/components/mounted_gun.html new file mode 100644 index 0000000000000..8bc3f31c1d74f --- /dev/null +++ b/code/datums/components/mounted_gun.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/components/mounted_gun.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/components/mounted_gun.dm + +

+ + +
/datum/component/vehicle_mounted_weaponThis component allows gun mounting on vehicle types
+ + + diff --git a/code/datums/components/overlay_lighting.html b/code/datums/components/overlay_lighting.html new file mode 100644 index 0000000000000..b51011700988d --- /dev/null +++ b/code/datums/components/overlay_lighting.html @@ -0,0 +1,33 @@ + + + + + + + code/datums/components/overlay_lighting.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/datums/components/overlay_lighting.dm + +

+ + + +
LIGHTING_ONFor switchable lights, is it on and currently emitting light?
/datum/component/overlay_lightingMovable atom overlay-based lighting component.

Define Details

+

LIGHTING_ON + + +

+

For switchable lights, is it on and currently emitting light?

+ + + diff --git a/code/datums/components/reequip.html b/code/datums/components/reequip.html new file mode 100644 index 0000000000000..b9b2370480b03 --- /dev/null +++ b/code/datums/components/reequip.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/components/reequip.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/components/reequip.dm + +

+ + +
/datum/component/reequipComponent to automatically attempt to equip an item to a list of slots after it is dropped by a human
+ + + diff --git a/code/datums/components/riding/riding.html b/code/datums/components/riding/riding.html new file mode 100644 index 0000000000000..61caf276669be --- /dev/null +++ b/code/datums/components/riding/riding.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/components/riding/riding.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/components/riding/riding.dm + +

+ + +
/datum/component/ridingThis is the riding component, which is applied to a movable atom by the ridable element when a mob is successfully buckled to said movable.
+ + + diff --git a/code/datums/components/seethrough_mob.html b/code/datums/components/seethrough_mob.html new file mode 100644 index 0000000000000..8a655de066117 --- /dev/null +++ b/code/datums/components/seethrough_mob.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/components/seethrough_mob.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/components/seethrough_mob.dm + +

+ + +
/datum/component/seethrough_mobA component that lets you turn your character transparent in order to see and click through yourself.
+ + + diff --git a/code/datums/components/slippery.html b/code/datums/components/slippery.html new file mode 100644 index 0000000000000..aed5cbb5aaa78 --- /dev/null +++ b/code/datums/components/slippery.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/components/slippery.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/components/slippery.dm + +

+ + +
/datum/component/slipperySlippery component, for making anything slippery. Of course.
+ + + diff --git a/code/datums/components/suit_autodoc.html b/code/datums/components/suit_autodoc.html new file mode 100644 index 0000000000000..8074040e8fcae --- /dev/null +++ b/code/datums/components/suit_autodoc.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/components/suit_autodoc.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/components/suit_autodoc.dm + +

+ + +
/datum/component/suit_autodocAutodoc component
+ + + diff --git a/code/datums/components/tac_reload_storage.html b/code/datums/components/tac_reload_storage.html new file mode 100644 index 0000000000000..28351186e8e55 --- /dev/null +++ b/code/datums/components/tac_reload_storage.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/components/tac_reload_storage.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/components/tac_reload_storage.dm + +

+ + +

Component for making something capable of tactical reload via right click.

+ + + diff --git a/code/datums/components/takes_reagent_appearance.html b/code/datums/components/takes_reagent_appearance.html new file mode 100644 index 0000000000000..457234e66a716 --- /dev/null +++ b/code/datums/components/takes_reagent_appearance.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/components/takes_reagent_appearance.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/components/takes_reagent_appearance.dm + +

+ + +
/datum/component/takes_reagent_appearance
+ + + diff --git a/code/datums/components/throw_parry.html b/code/datums/components/throw_parry.html new file mode 100644 index 0000000000000..39d12bbaec25f --- /dev/null +++ b/code/datums/components/throw_parry.html @@ -0,0 +1,29 @@ + + + + + + + code/datums/components/throw_parry.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/components/throw_parry.dm + +

+ + +
/datum/component/throw_parryThis component allows a mob/living to parry thrown objects back towards its source provided certain conditions are met. +COMSIG_PARRY_TRIGGER together with a duration enables parrying for this time frame, durations do not stack and only the current latest ending one is used. +A thrown item being parried will prevent the throw from ending and returns said thrown object back towards its source with half its speed.
+ + + diff --git a/code/datums/components/udder.html b/code/datums/components/udder.html new file mode 100644 index 0000000000000..3391e84013da1 --- /dev/null +++ b/code/datums/components/udder.html @@ -0,0 +1,29 @@ + + + + + + + code/datums/components/udder.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/components/udder.dm + +

+ + + +
/datum/component/udderUdder component; for farm animals to generate milk.
/obj/item/udderAbstract item that is held in nullspace and manages reagents. Created by udder component. +While perhaps reagents created by udder component COULD be managed in the mob, it would be somewhat finnicky and I actually like the abstract udders.
+ + + diff --git a/code/datums/components/xeno_iff.html b/code/datums/components/xeno_iff.html new file mode 100644 index 0000000000000..e1d3ee8b330ca --- /dev/null +++ b/code/datums/components/xeno_iff.html @@ -0,0 +1,28 @@ + + + + + + + code/datums/components/xeno_iff.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/components/xeno_iff.dm + +

+ + +
/datum/component/xeno_iffA special component that reacts to certain things that check for IFF and returns the IFF attached. +Applied by xeno IFF tags and meant for xenos only.
+ + + diff --git a/code/datums/datum.html b/code/datums/datum.html new file mode 100644 index 0000000000000..30e70424f4319 --- /dev/null +++ b/code/datums/datum.html @@ -0,0 +1,31 @@ + + + + + + + code/datums/datum.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/datum.dm + +

+ + + + + + +
/datumThe absolute base class for everything
/proc/json_serialize_datumConvert a datum into a json blob
/proc/json_deserialize_datumConvert a list of json to datum
+ + + diff --git a/code/datums/elements/_element.html b/code/datums/elements/_element.html new file mode 100644 index 0000000000000..a3b8551f2b718 --- /dev/null +++ b/code/datums/elements/_element.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/elements/_element.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/elements/_element.dm + +

+ + +
/datum/elementA holder for simple behaviour that can be attached to many different types
+ + + diff --git a/code/datums/elements/connect_loc.html b/code/datums/elements/connect_loc.html new file mode 100644 index 0000000000000..17d3bc145afeb --- /dev/null +++ b/code/datums/elements/connect_loc.html @@ -0,0 +1,28 @@ + + + + + + + code/datums/elements/connect_loc.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/elements/connect_loc.dm + +

+ + +
/datum/element/connect_locThis element hooks a signal onto the loc the current object is on. +When the object moves, it will unhook the signal and rehook it to the new object.
+ + + diff --git a/code/datums/elements/directional_attack.html b/code/datums/elements/directional_attack.html new file mode 100644 index 0000000000000..bd479b4f6afb8 --- /dev/null +++ b/code/datums/elements/directional_attack.html @@ -0,0 +1,28 @@ + + + + + + + code/datums/elements/directional_attack.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/elements/directional_attack.dm + +

+ + +

This element allows the mob its attached to the ability to click an adjacent mob by clicking a distant atom +that is in the general direction relative to the parent.

+ + + diff --git a/code/datums/elements/footstep.html b/code/datums/elements/footstep.html new file mode 100644 index 0000000000000..cd1ea13cb945c --- /dev/null +++ b/code/datums/elements/footstep.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/elements/footstep.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/elements/footstep.dm + +

+ + +
/datum/element/footstepFootstep element. Plays footsteps at parents location when it is appropriate.
+ + + diff --git a/code/datums/elements/keybinding_update.html b/code/datums/elements/keybinding_update.html new file mode 100644 index 0000000000000..0281eccb922a8 --- /dev/null +++ b/code/datums/elements/keybinding_update.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/elements/keybinding_update.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/elements/keybinding_update.dm + +

+ + +
/datum/element/keybinding_updateUpdates a mob's action keybinding text that shows on its maptext
+ + + diff --git a/code/datums/elements/light_blocking.html b/code/datums/elements/light_blocking.html new file mode 100644 index 0000000000000..eb146aac8b312 --- /dev/null +++ b/code/datums/elements/light_blocking.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/elements/light_blocking.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/elements/light_blocking.dm + +

+ + +
/datum/element/light_blockingAttached to movable atoms with opacity. Listens to them move and updates their old and new turf loc's opacity accordingly.
+ + + diff --git a/code/datums/elements/riding.html b/code/datums/elements/riding.html new file mode 100644 index 0000000000000..22a0e25d8d318 --- /dev/null +++ b/code/datums/elements/riding.html @@ -0,0 +1,28 @@ + + + + + + + code/datums/elements/riding.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/elements/riding.dm + +

+ + +
/datum/element/ridableThis element is used to indicate that a movable atom can be mounted by mobs in order to ride it. The movable is considered mounted when a mob is buckled to it, +at which point a riding component is created on the movable, and that component handles the actual riding behavior.
+ + + diff --git a/code/datums/elements/special_clothing_overlay.html b/code/datums/elements/special_clothing_overlay.html new file mode 100644 index 0000000000000..dc104e7000436 --- /dev/null +++ b/code/datums/elements/special_clothing_overlay.html @@ -0,0 +1,29 @@ + + + + + + + code/datums/elements/special_clothing_overlay.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/elements/special_clothing_overlay.dm + +

+ + + +
/datum/element/special_clothing_overlayHandles special clothing overlays for humans that cannot use the standing overlays system +Example uses include the use of emissives and similar
/datum/element/special_clothing_overlay/modular_helmet_visorAdds an emissive greyscale overlay to the wearer as the helmets visor
+ + + diff --git a/code/datums/elements/strippable.html b/code/datums/elements/strippable.html new file mode 100644 index 0000000000000..bcad02097abc6 --- /dev/null +++ b/code/datums/elements/strippable.html @@ -0,0 +1,32 @@ + + + + + + + code/datums/elements/strippable.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/elements/strippable.dm + +

+ + + + + + + +
/datum/element/strippableAn element for atoms that, when dragged and dropped onto a mob, opens a strip panel.
/datum/strippable_itemA representation of an item that can be stripped down
/datum/strippable_item/mob_item_slotA preset for equipping items onto mob slots
/datum/strip_menuA representation of the stripping UI
/proc/create_strippable_listCreates an assoc list of keys to /datum/strippable_item
+ + + diff --git a/code/datums/elements/undertile.html b/code/datums/elements/undertile.html new file mode 100644 index 0000000000000..94ede99544c4a --- /dev/null +++ b/code/datums/elements/undertile.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/elements/undertile.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/elements/undertile.dm + +

+ + +
/datum/element/undertileAdd to an object if you want to be able to be hidden under tiles
+ + + diff --git a/code/datums/elements/wall_speedup.html b/code/datums/elements/wall_speedup.html new file mode 100644 index 0000000000000..e655f6b9a931b --- /dev/null +++ b/code/datums/elements/wall_speedup.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/elements/wall_speedup.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/elements/wall_speedup.dm + +

+ + +
/datum/element/wall_speedupThis element makes you move faster when opposite adjacent turfs are closed, you get a flat movement speed bonus
+ + + diff --git a/code/datums/fluff_emails.html b/code/datums/fluff_emails.html new file mode 100644 index 0000000000000..d586eb14eb90a --- /dev/null +++ b/code/datums/fluff_emails.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/fluff_emails.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/fluff_emails.dm + +

+ + +
/datum/fluff_emailokay snapper
+ + + diff --git a/code/datums/gamemodes/campaign/campaign_assets.html b/code/datums/gamemodes/campaign/campaign_assets.html new file mode 100644 index 0000000000000..56c9b4b4bdd6c --- /dev/null +++ b/code/datums/gamemodes/campaign/campaign_assets.html @@ -0,0 +1,82 @@ + + + + + + + code/datums/gamemodes/campaign/campaign_assets.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/datums/gamemodes/campaign/campaign_assets.dm + +

+ + + + + + + + + + + + +
ASSET_CONSUMEDWhether this asset has been completed used and has no further effect
ASSET_ACTIVATED_EFFECTThis asset must be explicitly activated
ASSET_IMMEDIATE_EFFECTThis asset is active as soon as it is won
ASSET_PASSIVE_EFFECTThis asset has a passive effect
ASSET_ACTIVE_MISSION_ONLYCan't activate unless mission is starting or started
ASSET_DISABLEDTemporarily unusable
ASSET_ACTIVECurrently active
ASSET_DEBUFFdebuff, used for UI purposes
ASSET_SL_AVAILABLESL's can activate this asset
ASSET_DISALLOW_REPEAT_USECan only use one per mission or until otherwise deactivated
ASSET_DISABLE_ON_MISSION_ENDReward will be marked as 'active'and be disabled at the end of the mission

Define Details

+

ASSET_ACTIVATED_EFFECT + + +

+

This asset must be explicitly activated

ASSET_ACTIVE + + +

+

Currently active

ASSET_ACTIVE_MISSION_ONLY + + +

+

Can't activate unless mission is starting or started

ASSET_CONSUMED + + +

+

Whether this asset has been completed used and has no further effect

ASSET_DEBUFF + + +

+

debuff, used for UI purposes

ASSET_DISABLED + + +

+

Temporarily unusable

ASSET_DISABLE_ON_MISSION_END + + +

+

Reward will be marked as 'active'and be disabled at the end of the mission

ASSET_DISALLOW_REPEAT_USE + + +

+

Can only use one per mission or until otherwise deactivated

ASSET_IMMEDIATE_EFFECT + + +

+

This asset is active as soon as it is won

ASSET_PASSIVE_EFFECT + + +

+

This asset has a passive effect

ASSET_SL_AVAILABLE + + +

+

SL's can activate this asset

+ + + diff --git a/code/datums/gamemodes/campaign/campaign_mission.html b/code/datums/gamemodes/campaign/campaign_mission.html new file mode 100644 index 0000000000000..00c5ed178cd19 --- /dev/null +++ b/code/datums/gamemodes/campaign/campaign_mission.html @@ -0,0 +1,28 @@ + + + + + + + code/datums/gamemodes/campaign/campaign_mission.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/gamemodes/campaign/campaign_mission.dm + +

+ + + +
/proc/get_current_missionReturns the current mission, if its the campaign gamemode
+ + + diff --git a/code/datums/gamemodes/campaign/loadout_items.html b/code/datums/gamemodes/campaign/loadout_items.html new file mode 100644 index 0000000000000..f44ea04210c11 --- /dev/null +++ b/code/datums/gamemodes/campaign/loadout_items.html @@ -0,0 +1,42 @@ + + + + + + + code/datums/gamemodes/campaign/loadout_items.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/datums/gamemodes/campaign/loadout_items.dm + +

+ + + + +
LOADOUT_ITEM_ROUNDSTART_OPTIONAvailable by default
LOADOUT_ITEM_DEFAULT_CHOICEThis is the default option for this slot
LOADOUT_ITEM_ROUNDSTART_UNLOCKABLEAvailable for unlock by default

Define Details

+

LOADOUT_ITEM_DEFAULT_CHOICE + + +

+

This is the default option for this slot

LOADOUT_ITEM_ROUNDSTART_OPTION + + +

+

Available by default

LOADOUT_ITEM_ROUNDSTART_UNLOCKABLE + + +

+

Available for unlock by default

+ + + diff --git a/code/datums/gamemodes/campaign/missions/destroy_mission.html b/code/datums/gamemodes/campaign/missions/destroy_mission.html new file mode 100644 index 0000000000000..89296442e9c03 --- /dev/null +++ b/code/datums/gamemodes/campaign/missions/destroy_mission.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/gamemodes/campaign/missions/destroy_mission.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/gamemodes/campaign/missions/destroy_mission.dm + +

+ + +
/datum/campaign_mission/destroy_missionbasic destroy stuff mission
+ + + diff --git a/code/datums/gamemodes/campaign/missions/patrol_mission.html b/code/datums/gamemodes/campaign/missions/patrol_mission.html new file mode 100644 index 0000000000000..1b32946c1272f --- /dev/null +++ b/code/datums/gamemodes/campaign/missions/patrol_mission.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/gamemodes/campaign/missions/patrol_mission.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/gamemodes/campaign/missions/patrol_mission.dm + +

+ + +
/datum/campaign_mission/tdm/oriontest missions
+ + + diff --git a/code/datums/gamemodes/objective.html b/code/datums/gamemodes/objective.html new file mode 100644 index 0000000000000..d3f4d03397a77 --- /dev/null +++ b/code/datums/gamemodes/objective.html @@ -0,0 +1,28 @@ + + + + + + + code/datums/gamemodes/objective.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/gamemodes/objective.dm + +

+ + + +
/proc/considered_escapedChecks if the passed mind is considered "escaped".
+ + + diff --git a/code/datums/greyscale.html b/code/datums/greyscale.html new file mode 100644 index 0000000000000..49973231e075d --- /dev/null +++ b/code/datums/greyscale.html @@ -0,0 +1,96 @@ + + + + + + + code/datums/greyscale/README.md - byond + + +
+ byond - + Modules - + Types +
+
+

Greyscale Auto-Generated Sprites (GAGS) + +

+ + +

If you're wanting to add easy recolors for your sprite then this is the system for you. Features include:

+
    +
  • Multiple color layers so your sprite can be generated from more than one color.
  • +
  • Mixed greyscale and colored sprite layers; You can choose to only greyscale a part of the sprite or have premade filters applied to layers.
  • +
  • Blend modes; Instead of just putting layers of sprites on top of eachother you can use the more advanced blend modes.
  • +
  • Reusable configurations; You can reference greyscale sprites from within the configuration of another, allowing you to have a bunch of styles with minimal additional configuration.
  • +
+Broad overview +

There are three main parts to GAGS that you'll need to be aware of when adding a new greyscale sprite:

+
    +
  • The json configuration
  • +
+

All configuration files can be found in code/datums/greyscale/json_configs and is where you control how your icons are combined together along with the colors specified from in code.

+
    +
  • The dmi file
  • +
+

It contains the sprites that will be used as the basis for the rest of the generation process. You can only have one dmi file specified per configuration but if you want to split up your sprites you can reference other configurations instead.

+
    +
  • The configuration type
  • +
+

This is simply some pointers in the code linking together your dmi and the json configuration.

+Json Configuration File +

The json is made up of some metadata and a list of layers used while creating the sprite. Inner lists are processed as their own chunk before being applied elsewhere, this is useful when you start using more advanced blend modes. Most of the time though you're just going to want a list of icons overlaid on top of eachother.

+
{
+	"icon_state_name": [
+		{
+			"type": "reference",
+			"reference_type": "/datum/greyscale_config/some_other_config",
+			"blend_mode": "overlay",
+			"color_ids": [ 1 ]
+		},
+		[
+			{
+				"type": "icon_state",
+				"icon_state": "highlights",
+				"blend_mode": "overlay",
+				"color_ids": [ 2 ]
+			},
+			{
+				"type": "reference",
+				"reference_type": "/datum/greyscale_config/sparkle_effect",
+				"blend_mode": "add"
+			}
+		]
+	]
+}
+
+

In this example, we start off by creating a sprite specified by a different configuration. The "type" key is required to specify the kind of layer you defining. Once that is done, the next two layers are grouped together, so they will be generated into one sprite before being applied to any sprites outside their group. You can think of it as an order of operations.

+

The first of the two in the inner group is an "icon_state", this means that the icon will be retrieved from the associated dmi file using the "icon_state" key.

+

The last layer is another reference type. Note that you don't need to give colors to every layer if the layer does not need any colors applied to it.

+

"blend_mode" and "color_ids" are special, all layer types have them. The blend mode is what controls how that layer's finished product gets merged together with the rest of the sprite. The color ids control what colors are passed in to the layer.

+

Once it is done generating it will be placed in an icon file with the icon state of "icon_state_name". You can use any name you like here.

+Dmi File +

There are no special requirements from the dmi file to work with this system. You just need to specify the icon file in code and the icon_state in the json configuration.

+Dm Code +

While the amount of dm code required to make a greyscale sprite was minimized as much as possible, some small amount is required anyway if you want anything to use it.

+

As an example:

+
/datum/greyscale_config/canister
+	icon_file = 'icons/obj/atmospherics/canisters/default.dmi'
+	json_config = 'code/datums/greyscale/json_configs/canister_default.json'
+
+

And that's all you need to make it usable by other code:

+
/obj/machinery/portable_atmospherics/canister
+	...
+	greyscale_config = /datum/greyscale_config/canister
+	greyscale_colors = "#ee4242"
+
+

More configurations can be found in code/datums/greyscale/greyscale_configs.dm

+Debugging +

If you're making a new greyscale sprite you sometimes want to be able to see how layers got generated or maybe you're just tweaking some colors. Rather than rebooting the server with every change there is a greyscale modification menu that can be found in the vv dropdown menu for the greyscale object. Here you can change colors, preview the results, and reload everything from their files.

+ + + diff --git a/code/datums/greyscale/greyscale_configs.html b/code/datums/greyscale/greyscale_configs.html new file mode 100644 index 0000000000000..88d99ab97952d --- /dev/null +++ b/code/datums/greyscale/greyscale_configs.html @@ -0,0 +1,28 @@ + + + + + + + code/datums/greyscale/greyscale_configs.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/greyscale/greyscale_configs.dm + +

+ + + +
/datum/greyscale_config/ammoAMMO - for both bullets and magazines
/datum/greyscale_config/projectilePROJECTILES
+ + + diff --git a/code/datums/greyscale/layer.html b/code/datums/greyscale/layer.html new file mode 100644 index 0000000000000..57481a9c8b776 --- /dev/null +++ b/code/datums/greyscale/layer.html @@ -0,0 +1,28 @@ + + + + + + + code/datums/greyscale/layer.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/greyscale/layer.dm + +

+ + + +
/datum/greyscale_layer/icon_stateThe most basic greyscale layer; a layer which is created from a single icon_state in the given icon file
/datum/greyscale_layer/referenceA layer created by using another greyscale icon's configuration
+ + + diff --git a/code/datums/helper_datums/stack_end_detector.html b/code/datums/helper_datums/stack_end_detector.html new file mode 100644 index 0000000000000..576c017b4cdc0 --- /dev/null +++ b/code/datums/helper_datums/stack_end_detector.html @@ -0,0 +1,29 @@ + + + + + + + code/datums/helper_datums/stack_end_detector.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/helper_datums/stack_end_detector.dm + +

+ + + +
/datum/stack_end_detectorStack End Detector. +Can detect if a given code stack has exited, used by the mc for stack overflow detection.
/datum/stack_canaryStack canary. Will go away if the stack it was primed by is ended by byond for return or stack overflow reasons.
+ + + diff --git a/code/datums/jobs/job/freelancers.html b/code/datums/jobs/job/freelancers.html new file mode 100644 index 0000000000000..032e32ab2d08a --- /dev/null +++ b/code/datums/jobs/job/freelancers.html @@ -0,0 +1,32 @@ + + + + + + + code/datums/jobs/job/freelancers.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/jobs/job/freelancers.dm + +

+ + + + + + + +
/datum/outfit/job/freelancer/standard/twom16 ugl
/datum/outfit/job/freelancer/standard/threetx11
/datum/outfit/job/freelancer/grenadier/twomachine gunner
/datum/outfit/job/freelancer/grenadier/threeactual grenadier
/datum/outfit/job/freelancer/leader/twotx11
/datum/outfit/job/freelancer/leader/threetx55
+ + + diff --git a/code/datums/jobs/job/marines.html b/code/datums/jobs/job/marines.html new file mode 100644 index 0000000000000..0664dd876730c --- /dev/null +++ b/code/datums/jobs/job/marines.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/jobs/job/marines.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/jobs/job/marines.dm + +

+ + +
/datum/job/terragov/squad/standardyes i know istype(src) is gross but we literally have 1 child type we would want to ignore so
+ + + diff --git a/code/datums/jobs/squads.html b/code/datums/jobs/squads.html new file mode 100644 index 0000000000000..e4aa21a28ea44 --- /dev/null +++ b/code/datums/jobs/squads.html @@ -0,0 +1,30 @@ + + + + + + + code/datums/jobs/squads.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/jobs/squads.dm + +

+ + + + + +
/proc/handle_initial_squadA generic proc for handling the initial squad role assignment in SSjob
/proc/create_squadinitializes a new custom squad. all args mandatory
+ + + diff --git a/code/datums/loadout/item_representation/_item_representation.html b/code/datums/loadout/item_representation/_item_representation.html new file mode 100644 index 0000000000000..d4dde9c6ebba7 --- /dev/null +++ b/code/datums/loadout/item_representation/_item_representation.html @@ -0,0 +1,33 @@ + + + + + + + code/datums/loadout/item_representation/_item_representation.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/loadout/item_representation/_item_representation.dm + +

+ + + + + +
/datum/item_representationLight weight representation of an obj/item +This allow us to manipulate and store a lot of item-like objects, without it costing a ton of memory or having to instantiate all items +This also allow to save loadouts with jatum, because it doesn't accept obj/item
/datum/item_representation/storageAllow to representate a storage +This is only able to represent /obj/item/storage
/datum/item_representation/stackAllow to representate stacks of item of type /obj/item/stack
/datum/item_representation/idAllow to representate an id card (/obj/item/card/id)
+ + + diff --git a/code/datums/loadout/item_representation/armor_representation.html b/code/datums/loadout/item_representation/armor_representation.html new file mode 100644 index 0000000000000..6a4ea1bd19a33 --- /dev/null +++ b/code/datums/loadout/item_representation/armor_representation.html @@ -0,0 +1,32 @@ + + + + + + + code/datums/loadout/item_representation/armor_representation.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/loadout/item_representation/armor_representation.dm + +

+ + + + +
/datum/item_representation/armor_suitAllow to representate a armor with any modules it might have +This is only able to representate items of type /obj/item/clothing/suit
/datum/item_representation/armor_suit/modular_armorAllow to representate a armor with any modules it might have +This is only able to representate items of type /obj/item/clothing/suit
/datum/item_representation/armor_moduleAllow to representate an module of a jaeger +This is only able to representate items of type /obj/item/armor_module
+ + + diff --git a/code/datums/loadout/item_representation/gun_representation.html b/code/datums/loadout/item_representation/gun_representation.html new file mode 100644 index 0000000000000..2aab03a90ae79 --- /dev/null +++ b/code/datums/loadout/item_representation/gun_representation.html @@ -0,0 +1,30 @@ + + + + + + + code/datums/loadout/item_representation/gun_representation.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/loadout/item_representation/gun_representation.dm + +

+ + + + +
/datum/item_representation/gunAllow to representate a gun with its attachements +This is only able to represent guns and child of gun
/datum/item_representation/gun_attachementAllow to representate a gun attachement
/datum/item_representation/handful_representationAble to representate a handfull
+ + + diff --git a/code/datums/loadout/item_representation/helmet_representation.html b/code/datums/loadout/item_representation/helmet_representation.html new file mode 100644 index 0000000000000..9fe4b4576acc5 --- /dev/null +++ b/code/datums/loadout/item_representation/helmet_representation.html @@ -0,0 +1,30 @@ + + + + + + + code/datums/loadout/item_representation/helmet_representation.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/loadout/item_representation/helmet_representation.dm + +

+ + + +
/datum/item_representation/hatAllow to representate a hat +This is only able to representate items of type /obj/item/clothing/head
/datum/item_representation/hat/modular_helmetAllow to representate a modular helmet, and to color it +This is only able to representate items of type /obj/item/clothing/head/modular
+ + + diff --git a/code/datums/loadout/item_representation/uniform_representation.html b/code/datums/loadout/item_representation/uniform_representation.html new file mode 100644 index 0000000000000..a00126ec1fd7f --- /dev/null +++ b/code/datums/loadout/item_representation/uniform_representation.html @@ -0,0 +1,28 @@ + + + + + + + code/datums/loadout/item_representation/uniform_representation.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/loadout/item_representation/uniform_representation.dm + +

+ + +
/datum/item_representation/uniform_representationAllow to representate an uniform and its tie (webbings and such) +This is only able to represent /obj/item/clothing/under
+ + + diff --git a/code/datums/loadout/loadout_helper.html b/code/datums/loadout/loadout_helper.html new file mode 100644 index 0000000000000..3c4329d25bf90 --- /dev/null +++ b/code/datums/loadout/loadout_helper.html @@ -0,0 +1,46 @@ + + + + + + + code/datums/loadout/loadout_helper.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/loadout/loadout_helper.dm + +

+ + + + + + + + + + + + + + + + + + + + + +
/proc/create_empty_loadoutReturn a new empty loayout
/proc/buy_item_in_vendorReturn true if the item was found in a linked vendor and successfully bought
/proc/buy_stackCheck if that stack is buyable in a points vendor (currently, only metal, sandbags and plasteel)
/proc/item2representation_typeReturn wich type of item_representation should representate any item_type
/proc/is_handful_buyableReturn TRUE if this handful should be buyable, aka if it's corresponding aka box is in a linked vendor
/proc/give_free_headsetWill give a headset corresponding to the user job to the user
/proc/can_buy_categoryWill check if the selected category can be bought according to the category choices left
/proc/buy_categoryReturn true if you can buy this category, and also change the loadout seller buying bitfield
/proc/get_item_stack_numberIf the item is not a stack, return 1. If it is a stack, return the stack size
/proc/get_item_stack_representation_amountIf the item representation is not a stack, return 1. Else, return the satck size
+ + + diff --git a/code/datums/loadout/loadout_manager.html b/code/datums/loadout/loadout_manager.html new file mode 100644 index 0000000000000..f2ec8f4e2cb83 --- /dev/null +++ b/code/datums/loadout/loadout_manager.html @@ -0,0 +1,28 @@ + + + + + + + code/datums/loadout/loadout_manager.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/loadout/loadout_manager.dm + +

+ + +
/datum/loadout_managerThis datum in charge with selecting wich loadout is currently being edited +It also contains a tgui to navigate beetween loadouts
+ + + diff --git a/code/datums/loadout/loadout_seller.html b/code/datums/loadout/loadout_seller.html new file mode 100644 index 0000000000000..35bcdae38003f --- /dev/null +++ b/code/datums/loadout/loadout_seller.html @@ -0,0 +1,32 @@ + + + + + + + code/datums/loadout/loadout_seller.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/loadout/loadout_seller.dm + +

+ + +
/datum/loadout_sellerSmall loadout in charge of dealing with a user trying to equip a saved loadout +First it will reserve all items that can be bought, and save the name of all items that cannot be bought +If the list of items that cannot be bought is empty, the transaction will be automaticly accepted and the loadout will be equipped on the user +If it's not empty, it will warn the user and give him the list of non-buyable items. +The user can chose to proceed with the buy, and he is equipped with what was already be bought, +or he can chose to refuse, and then the items are put back in the vendors
+ + + diff --git a/code/datums/looping_sounds/_looping_sound.html b/code/datums/looping_sounds/_looping_sound.html new file mode 100644 index 0000000000000..cbe093dda5fee --- /dev/null +++ b/code/datums/looping_sounds/_looping_sound.html @@ -0,0 +1,28 @@ + + + + + + + code/datums/looping_sounds/_looping_sound.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/looping_sounds/_looping_sound.dm + +

+ + +
/datum/looping_soundUsed to play sound(s) on repeat until they are stopped +Processed by the SSloopingsounds /datum/controller/subsystem/loopingsounds
+ + + diff --git a/code/datums/movement_detector.html b/code/datums/movement_detector.html new file mode 100644 index 0000000000000..916342ffffe11 --- /dev/null +++ b/code/datums/movement_detector.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/movement_detector.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/movement_detector.dm + +

+ + +
/datum/movement_detectorA datum to handle the busywork of registering signals to handle in depth tracking of a movable
+ + + diff --git a/code/datums/quick_load_beginners.html b/code/datums/quick_load_beginners.html new file mode 100644 index 0000000000000..4ef7dabde8eda --- /dev/null +++ b/code/datums/quick_load_beginners.html @@ -0,0 +1,28 @@ + + + + + + + code/datums/quick_load_beginners.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/quick_load_beginners.dm + +

+ + + +

Any loadout that is intended for the new player loadout vendor

/datum/outfit/quick/beginnerWhen making new loadouts, remember to also add the typepath to the list under init_beginner_loadouts() or else it won't show up in the vendor
+ + + diff --git a/code/datums/quick_load_civil_war.html b/code/datums/quick_load_civil_war.html new file mode 100644 index 0000000000000..e1a77ad32eb87 --- /dev/null +++ b/code/datums/quick_load_civil_war.html @@ -0,0 +1,28 @@ + + + + + + + code/datums/quick_load_civil_war.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/quick_load_civil_war.dm + +

+ + + +

Any loadout that is intended for civil war vendors.

/datum/outfit/quick/civil_warWhen making new loadouts, remember to also add the typepath to the list under init_civil_war_loadouts() or else it won't show up in the vendor
+ + + diff --git a/code/datums/quick_load_outfits.html b/code/datums/quick_load_outfits.html new file mode 100644 index 0000000000000..7accf587f72ab --- /dev/null +++ b/code/datums/quick_load_outfits.html @@ -0,0 +1,28 @@ + + + + + + + code/datums/quick_load_outfits.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/quick_load_outfits.dm + +

+ + + +
/datum/outfit/quick/tgmcTGMC
/datum/outfit/quick/somSOM loadouts
+ + + diff --git a/code/datums/quick_load_robots.html b/code/datums/quick_load_robots.html new file mode 100644 index 0000000000000..850aec4146cb9 --- /dev/null +++ b/code/datums/quick_load_robots.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/quick_load_robots.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/quick_load_robots.dm + +

+ + +

Any loadout that is intended for the new player loadout vendor FOR ROBOTS

+ + + diff --git a/code/datums/status_effects/debuffs.html b/code/datums/status_effects/debuffs.html new file mode 100644 index 0000000000000..2f189aa256e0f --- /dev/null +++ b/code/datums/status_effects/debuffs.html @@ -0,0 +1,54 @@ + + + + + + + code/datums/status_effects/debuffs.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/datums/status_effects/debuffs.dm + +

+ + + + + + + + +
/datum/status_effect/incapacitating/repair_modeBasically a temporary self-inflicted shutdown for maintenance
/datum/status_effect/incapacitating/irradiatedirradiated mob
STATUS_EFFECT_MELTING_DAMAGEamount of damage done per tick by the melting status effect
STATUS_EFFECT_MELTING_SUNDER_DAMAGESunder inflicted per tick by the melting status effect
MICROWAVE_STATUS_DAMAGE_MULTamount of damage done per tick by the microwave status effect
MICROWAVE_STATUS_DURATIONduration of the microwave effect. Refreshed on application
SHATTER_STATUS_EFFECT_ARMOR_MULTPercentage reduction of armor removed by the shatter status effect

Define Details

+

MICROWAVE_STATUS_DAMAGE_MULT + + +

+

amount of damage done per tick by the microwave status effect

MICROWAVE_STATUS_DURATION + + +

+

duration of the microwave effect. Refreshed on application

SHATTER_STATUS_EFFECT_ARMOR_MULT + + +

+

Percentage reduction of armor removed by the shatter status effect

STATUS_EFFECT_MELTING_DAMAGE + + +

+

amount of damage done per tick by the melting status effect

STATUS_EFFECT_MELTING_SUNDER_DAMAGE + + +

+

Sunder inflicted per tick by the melting status effect

+ + + diff --git a/code/datums/status_effects/xeno_buffs.html b/code/datums/status_effects/xeno_buffs.html new file mode 100644 index 0000000000000..815994e1c0f4a --- /dev/null +++ b/code/datums/status_effects/xeno_buffs.html @@ -0,0 +1,33 @@ + + + + + + + code/datums/status_effects/xeno_buffs.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/datums/status_effects/xeno_buffs.dm + +

+ + +
CALC_PLASMA_MODCalculates the effectiveness of parts of the status based on plasma of owner

Define Details

+

CALC_PLASMA_MOD + + + +

+

Calculates the effectiveness of parts of the status based on plasma of owner

+ + + diff --git a/code/datums/storage/storage.html b/code/datums/storage/storage.html new file mode 100644 index 0000000000000..a026aa92c40fc --- /dev/null +++ b/code/datums/storage/storage.html @@ -0,0 +1,28 @@ + + + + + + + code/datums/storage/storage.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/storage/storage.dm + +

+ + +

Datumized Storage +Eliminates the need for custom signals specifically for the storage component, and attaches a storage variable (storage_datum) to every atom.

+ + + diff --git a/code/datums/storage/subtypes/holster.html b/code/datums/storage/subtypes/holster.html new file mode 100644 index 0000000000000..9f226bfee2d4a --- /dev/null +++ b/code/datums/storage/subtypes/holster.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/storage/subtypes/holster.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/storage/subtypes/holster.dm + +

+ + +
/datum/storage/holster/backholster/rpg0 out for satchel types
+ + + diff --git a/code/datums/storage/subtypes/tank.html b/code/datums/storage/subtypes/tank.html new file mode 100644 index 0000000000000..bf392c53f1b91 --- /dev/null +++ b/code/datums/storage/subtypes/tank.html @@ -0,0 +1,28 @@ + + + + + + + code/datums/storage/subtypes/tank.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/storage/subtypes/tank.dm + +

+ + +

Anything tank related +Basically ammo racks

+ + + diff --git a/code/datums/view.html b/code/datums/view.html new file mode 100644 index 0000000000000..0ed250cd7c9c8 --- /dev/null +++ b/code/datums/view.html @@ -0,0 +1,29 @@ + + + + + + + code/datums/view.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/view.dm + +

+ + + + +
/datum/view_dataContainer for client viewsize
/proc/get_screen_sizegets the current screen size as defined in config
+ + + diff --git a/code/datums/weakrefs.html b/code/datums/weakrefs.html new file mode 100644 index 0000000000000..a4cf85300af75 --- /dev/null +++ b/code/datums/weakrefs.html @@ -0,0 +1,31 @@ + + + + + + + code/datums/weakrefs.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/weakrefs.dm + +

+ + + + +
/proc/WEAKREFCreates a weakref to the given input. +See /datum/weakref's documentation for more information.
/datum/weakrefA weakref holds a non-owning reference to a datum. +The datum can be referenced again using resolve().
+ + + diff --git a/code/datums/weather/weather.html b/code/datums/weather/weather.html new file mode 100644 index 0000000000000..a1529baeb57cc --- /dev/null +++ b/code/datums/weather/weather.html @@ -0,0 +1,27 @@ + + + + + + + code/datums/weather/weather.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/datums/weather/weather.dm + +

+ + +
/datum/weatherCauses weather to occur on a z level in certain area types
+ + + diff --git a/code/game/area/general.html b/code/game/area/general.html new file mode 100644 index 0000000000000..3900ca584f7ae --- /dev/null +++ b/code/game/area/general.html @@ -0,0 +1,28 @@ + + + + + + + code/game/area/general.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/area/general.dm + +

+ + + +
/area/quartermaster/sortingWORK IN PROGRESS
/area/quartermaster/officeWORK IN PROGRESS
+ + + diff --git a/code/game/atoms/atom_examine.html b/code/game/atoms/atom_examine.html new file mode 100644 index 0000000000000..b59d0662d126e --- /dev/null +++ b/code/game/atoms/atom_examine.html @@ -0,0 +1,29 @@ + + + + + + + code/game/atoms/atom_examine.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/atoms/atom_examine.dm + +

+ + + +

This file contains all the procs related to examining atoms, +except the verb you use to examine someone (see /mob/verb/examinate)

/mob/living/silicon/aiThis elevator serves me alone. I have complete control over this entire level. With cameras as my eyes and nodes as my hands, I rule here, insect.
+ + + diff --git a/code/game/data_huds.html b/code/game/data_huds.html new file mode 100644 index 0000000000000..4c5d9fc6d1799 --- /dev/null +++ b/code/game/data_huds.html @@ -0,0 +1,28 @@ + + + + + + + code/game/data_huds.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/data_huds.dm + +

+ + + +
/datum/atom_hud/xeno_tacticalhud component for revealing tactical elements to xenos
/datum/atom_hud/xeno_debuffhud component for revealing xeno specific status effect debuffs to xenos
+ + + diff --git a/code/game/objects/effects/decals/hybrisa_decals.html b/code/game/objects/effects/decals/hybrisa_decals.html new file mode 100644 index 0000000000000..613a51c73c672 --- /dev/null +++ b/code/game/objects/effects/decals/hybrisa_decals.html @@ -0,0 +1,29 @@ + + + + + + + code/game/objects/effects/decals/hybrisa_decals.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/effects/decals/hybrisa_decals.dm + +

+ + + + +
/obj/effect/urbanUrban Decals
/obj/effect/urban/decal/dirtDirt & Grime
/obj/effect/urban/decal/engineership_cornersEngineer_ship
+ + + diff --git a/code/game/objects/effects/decals/turfdecals/markings.html b/code/game/objects/effects/decals/turfdecals/markings.html new file mode 100644 index 0000000000000..68b62262bd312 --- /dev/null +++ b/code/game/objects/effects/decals/turfdecals/markings.html @@ -0,0 +1,28 @@ + + + + + + + code/game/objects/effects/decals/turfdecals/markings.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/effects/decals/turfdecals/markings.dm + +

+ + + +
/obj/effect/turf_decal/strata_decals/rocksOUTDOOR STUFF
/obj/effect/turf_decal/strata_decals/grimeINDOORS STUFF
+ + + diff --git a/code/game/objects/effects/decals/turfdecals/tilecoloring.html b/code/game/objects/effects/decals/turfdecals/tilecoloring.html new file mode 100644 index 0000000000000..6c6f31f419c40 --- /dev/null +++ b/code/game/objects/effects/decals/turfdecals/tilecoloring.html @@ -0,0 +1,39 @@ + + + + + + + code/game/objects/effects/decals/turfdecals/tilecoloring.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/effects/decals/turfdecals/tilecoloring.dm + +

+ + + + + + + + + + + + + + +
/obj/effect/turf_decal/tile/transparent/blueBlue tiles
/obj/effect/turf_decal/tile/transparent/dark_blueDark blue tiles
/obj/effect/turf_decal/tile/transparent/greenGreen tiles
/obj/effect/turf_decal/tile/transparent/dark_greenDark green tiles
/obj/effect/turf_decal/tile/transparent/yellowYellow tiles
/obj/effect/turf_decal/tile/transparent/redRed tiles
/obj/effect/turf_decal/tile/transparent/dark_redDark red tiles
/obj/effect/turf_decal/tile/transparent/barBar tiles
/obj/effect/turf_decal/tile/transparent/purplePurple tiles
/obj/effect/turf_decal/tile/transparent/brownBrown tiles
/obj/effect/turf_decal/tile/transparent/neutralNeutral tiles
/obj/effect/turf_decal/tile/transparent/darkDark tiles
/obj/effect/turf_decal/tile/transparent/randomRandom tiles
+ + + diff --git a/code/game/objects/effects/effect_system/effect_system.html b/code/game/objects/effects/effect_system/effect_system.html new file mode 100644 index 0000000000000..7beac769e09e6 --- /dev/null +++ b/code/game/objects/effects/effect_system/effect_system.html @@ -0,0 +1,30 @@ + + + + + + + code/game/objects/effects/effect_system/effect_system.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/effects/effect_system/effect_system.dm + +

+ + +
/obj/effect/particle_effect/ion_trails///// Attach an Ion trail to any object, that spawns when it moves (like for the jetpack) +just pass in the object to attach it to in set_up +Then do start() to start it and stop() to stop it, obviously +and don't call start() in a loop that will be repeated otherwise it'll get spammed!
+ + + diff --git a/code/game/objects/effects/effect_system/smoke.html b/code/game/objects/effects/effect_system/smoke.html new file mode 100644 index 0000000000000..6e1b9246bc829 --- /dev/null +++ b/code/game/objects/effects/effect_system/smoke.html @@ -0,0 +1,31 @@ + + + + + + + code/game/objects/effects/effect_system/smoke.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/effects/effect_system/smoke.dm + +

+ + + + + + +
/obj/effect/particle_effect/smokeSMOKE SYSTEMS
/obj/effect/particle_effect/smoke/xeno/neuro/mediumXeno neurotox smoke for Defilers; doesn't extinguish
/obj/effect/particle_effect/smoke/xeno/neuro/lightXeno neurotox smoke for neurospit; doesn't extinguish or blind
/obj/effect/particle_effect/smoke/xeno/ozelomelynXeno ozelomelyn in smoke form for Defiler.
/obj/effect/particle_effect/smoke/xeno/pyrogen_fireSmoke that constantly makes pyrogen fire.
+ + + diff --git a/code/game/objects/effects/landmarks/corpsespawner.html b/code/game/objects/effects/landmarks/corpsespawner.html new file mode 100644 index 0000000000000..3f1e18651d399 --- /dev/null +++ b/code/game/objects/effects/landmarks/corpsespawner.html @@ -0,0 +1,30 @@ + + + + + + + code/game/objects/effects/landmarks/corpsespawner.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/effects/landmarks/corpsespawner.dm + +

+ + + + + +
/obj/effect/landmark/corpsespawnerLANDMARK CORPSE
/obj/effect/landmark/corpsespawner/prisonerCivilians
/obj/effect/landmark/corpsespawner/bridgeofficerOfficers
/obj/effect/landmark/corpsespawner/marineMarine
+ + + diff --git a/code/game/objects/effects/landmarks/excavation_site_spawner.html b/code/game/objects/effects/landmarks/excavation_site_spawner.html new file mode 100644 index 0000000000000..cd8cff4c6464e --- /dev/null +++ b/code/game/objects/effects/landmarks/excavation_site_spawner.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/effects/landmarks/excavation_site_spawner.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/effects/landmarks/excavation_site_spawner.dm + +

+ + +
/datum/excavation_rewardsExcavation rewards buckets
+ + + diff --git a/code/game/objects/effects/landmarks/landmarks.html b/code/game/objects/effects/landmarks/landmarks.html new file mode 100644 index 0000000000000..1f52f5f9f2917 --- /dev/null +++ b/code/game/objects/effects/landmarks/landmarks.html @@ -0,0 +1,30 @@ + + + + + + + code/game/objects/effects/landmarks/landmarks.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/effects/landmarks/landmarks.dm + +

+ + + +
/obj/effect/landmark/unit_test_bottom_leftMarks the bottom left of the testing zone. +In landmarks.dm and not unit_test.dm so it is always active in the mapping tools.
/obj/effect/landmark/unit_test_top_rightMarks the top right of the testing zone. +In landmarks.dm and not unit_test.dm so it is always active in the mapping tools.
+ + + diff --git a/code/game/objects/effects/overlays.html b/code/game/objects/effects/overlays.html new file mode 100644 index 0000000000000..5d8817fb58609 --- /dev/null +++ b/code/game/objects/effects/overlays.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/effects/overlays.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/effects/overlays.dm + +

+ + +
/obj/effect/overlay/light_visibleLighting overlay for the Light overlay component
+ + + diff --git a/code/game/objects/effects/particle_holder.html b/code/game/objects/effects/particle_holder.html new file mode 100644 index 0000000000000..b9930c22b86dc --- /dev/null +++ b/code/game/objects/effects/particle_holder.html @@ -0,0 +1,28 @@ + + + + + + + code/game/objects/effects/particle_holder.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/effects/particle_holder.dm + +

+ + +
/obj/effect/abstract/particle_holderobjects can only have one particle on them at a time, so we use these abstract effects to hold and display the effects. You know, so multiple particle effects can exist at once. +also because some objects do not display particles due to how their visuals are built
+ + + diff --git a/code/game/objects/effects/spawners/modularmappingspawner.html b/code/game/objects/effects/spawners/modularmappingspawner.html new file mode 100644 index 0000000000000..82d3f3a509ce6 --- /dev/null +++ b/code/game/objects/effects/spawners/modularmappingspawner.html @@ -0,0 +1,33 @@ + + + + + + + code/game/objects/effects/spawners/modularmappingspawner.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/effects/spawners/modularmappingspawner.dm + +

+ + + + + + + + +
/obj/effect/spawner/modularmap/prison/civressouthTypes
/obj/effect/spawner/modularmap/lv624/hydroroadLV 624
/obj/effect/spawner/modularmap/bigred/operationsBIG RED
/obj/effect/spawner/modularmap/oscaroutposttophalfOSCAR OUTPOST
/obj/effect/spawner/modularmap/admin/eorgEORG
/obj/effect/spawner/modularmap/jungle_outpost/westtowerJungle Outpost
/obj/effect/spawner/modularmap/corsat/domeCORSAT
+ + + diff --git a/code/game/objects/effects/spawners/random/clothing.html b/code/game/objects/effects/spawners/random/clothing.html new file mode 100644 index 0000000000000..ca23a298761ac --- /dev/null +++ b/code/game/objects/effects/spawners/random/clothing.html @@ -0,0 +1,28 @@ + + + + + + + code/game/objects/effects/spawners/random/clothing.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/effects/spawners/random/clothing.dm + +

+ + + +
/obj/effect/spawner/random/clothingrandom civilian clothing for flavor
/obj/effect/spawner/random/clothing/hatsrandom civilian hats for flavor
+ + + diff --git a/code/game/objects/effects/spawners/random/food_or_drink.html b/code/game/objects/effects/spawners/random/food_or_drink.html new file mode 100644 index 0000000000000..ca8d30998ebc3 --- /dev/null +++ b/code/game/objects/effects/spawners/random/food_or_drink.html @@ -0,0 +1,29 @@ + + + + + + + code/game/objects/effects/spawners/random/food_or_drink.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/effects/spawners/random/food_or_drink.dm + +

+ + + + +
/obj/effect/spawner/random/food_or_drink/drink_alcohol_bottleBooze in a bottle. Glass. Classy.
/obj/effect/spawner/random/food_or_drink/sugary_snackStuff that's more like candies and all. Stale the hunger or buy in a vending machine.
/obj/effect/spawner/random/food_or_drink/outdoors_snacksStuff you might expect to eat in the street.
+ + + diff --git a/code/game/objects/effects/spawners/random/misc_item.html b/code/game/objects/effects/spawners/random/misc_item.html new file mode 100644 index 0000000000000..b8c8b131f12b1 --- /dev/null +++ b/code/game/objects/effects/spawners/random/misc_item.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/effects/spawners/random/misc_item.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/effects/spawners/random/misc_item.dm + +

+ + +
/obj/effect/spawner/random/misc/trashAll the trash.
+ + + diff --git a/code/game/objects/effects/spawners/random/random.html b/code/game/objects/effects/spawners/random/random.html new file mode 100644 index 0000000000000..8364317fe4036 --- /dev/null +++ b/code/game/objects/effects/spawners/random/random.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/effects/spawners/random/random.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/effects/spawners/random/random.dm + +

+ + +
/obj/effect/spawner/randomBase class for all random spawners.
+ + + diff --git a/code/game/objects/effects/spawners/random/weaponry.html b/code/game/objects/effects/spawners/random/weaponry.html new file mode 100644 index 0000000000000..81641c9596b11 --- /dev/null +++ b/code/game/objects/effects/spawners/random/weaponry.html @@ -0,0 +1,38 @@ + + + + + + + code/game/objects/effects/spawners/random/weaponry.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/effects/spawners/random/weaponry.dm + +

+ + + + + + + + + + + +
/obj/effect/spawner/random/weaponry/gun/shotgunrandom shotguns
/obj/effect/spawner/random/weaponry/gun/machinegunsrandom machineguns
/obj/effect/spawner/random/weaponry/gun/riflesrandom rifles
/obj/effect/spawner/random/weaponry/gun/sidearmsrandom sidearms
/obj/effect/spawner/random/weaponry/meleerandom melee weapons
/obj/effect/spawner/random/weaponry/ammoBALLISTIC WEAPON AMMO/// +random ammunition
/obj/effect/spawner/random/weaponry/ammo/shotgunfor specific ranged weapon ammo spawners we don't spawn anything that marines couldn't get back on their ship +random shotgun ammunition
/obj/effect/spawner/random/weaponry/ammo/machinegunrandom machinegun ammunition
/obj/effect/spawner/random/weaponry/ammo/riflerandom rifle ammunition
/obj/effect/spawner/random/weaponry/ammo/sidearmrandom sidearm ammunition
+ + + diff --git a/code/game/objects/effects/step_triggers.html b/code/game/objects/effects/step_triggers.html new file mode 100644 index 0000000000000..2590d6627e515 --- /dev/null +++ b/code/game/objects/effects/step_triggers.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/effects/step_triggers.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/effects/step_triggers.dm + +

+ + +
/obj/effect/step_triggerTODO ALL THIS SHIT IS SHITCODE. SHOULD BE ELEMENTS AT MINIMUM IF ITS EVEN USED. CONSIDER DELETING
+ + + diff --git a/code/game/objects/effects/temporary_visuals/temporary_visual.html b/code/game/objects/effects/temporary_visuals/temporary_visual.html new file mode 100644 index 0000000000000..55d7107e632d1 --- /dev/null +++ b/code/game/objects/effects/temporary_visuals/temporary_visual.html @@ -0,0 +1,28 @@ + + + + + + + code/game/objects/effects/temporary_visuals/temporary_visual.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/effects/temporary_visuals/temporary_visual.dm + +

+ + + +
/obj/effect/temp_visualTemporary visual effects
/obj/effect/temp_visual/xenomorph/xeno_tracker_targetImage that appears at the Xeno Rally target; only Xenos can see it
+ + + diff --git a/code/game/objects/empulse.html b/code/game/objects/empulse.html new file mode 100644 index 0000000000000..adcd679a29f2f --- /dev/null +++ b/code/game/objects/empulse.html @@ -0,0 +1,28 @@ + + + + + + + code/game/objects/empulse.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/empulse.dm + +

+ + + +
/proc/empulseEMP's everything in a specified radius, similar to an explosion
+ + + diff --git a/code/game/objects/items.html b/code/game/objects/items.html new file mode 100644 index 0000000000000..6107c62e6c369 --- /dev/null +++ b/code/game/objects/items.html @@ -0,0 +1,32 @@ + + + + + + + code/game/objects/items.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/game/objects/items.dm + +

+ + +
ITEM_LIQUID_TURF_ALPHA_MULTMult on submerge height for changing the alpha of submerged items

Define Details

+

ITEM_LIQUID_TURF_ALPHA_MULT + + +

+

Mult on submerge height for changing the alpha of submerged items

+ + + diff --git a/code/game/objects/items/books/manuals.html b/code/game/objects/items/books/manuals.html new file mode 100644 index 0000000000000..bf6f56e61220f --- /dev/null +++ b/code/game/objects/items/books/manuals.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/books/manuals.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/items/books/manuals.dm + +

+ + +
/obj/item/book/manualMANUALS (BOOKS)
+ + + diff --git a/code/game/objects/items/coins.html b/code/game/objects/items/coins.html new file mode 100644 index 0000000000000..bca5964a492af --- /dev/null +++ b/code/game/objects/items/coins.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/coins.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/items/coins.dm + +

+ + +
/obj/item/coinCoin
+ + + diff --git a/code/game/objects/items/defibrillator.html b/code/game/objects/items/defibrillator.html new file mode 100644 index 0000000000000..df2e9deb51130 --- /dev/null +++ b/code/game/objects/items/defibrillator.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/defibrillator.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/items/defibrillator.dm + +

+ + +
/obj/item/defibrillator/internalused for advanced medical (defibrillator) gloves: defibrillator_gloves.dm
+ + + diff --git a/code/game/objects/items/devices/minimap_tablet.html b/code/game/objects/items/devices/minimap_tablet.html new file mode 100644 index 0000000000000..cb944b9a0acc1 --- /dev/null +++ b/code/game/objects/items/devices/minimap_tablet.html @@ -0,0 +1,32 @@ + + + + + + + code/game/objects/items/devices/minimap_tablet.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/game/objects/items/devices/minimap_tablet.dm + +

+ + +
LABEL_REMOVE_RANGErange that we can remove labels when we click near them with the removal tool

Define Details

+

LABEL_REMOVE_RANGE + + +

+

range that we can remove labels when we click near them with the removal tool

+ + + diff --git a/code/game/objects/items/explosives/grenades/bullet_grenade.html b/code/game/objects/items/explosives/grenades/bullet_grenade.html new file mode 100644 index 0000000000000..c926392b3342a --- /dev/null +++ b/code/game/objects/items/explosives/grenades/bullet_grenade.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/explosives/grenades/bullet_grenade.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/items/explosives/grenades/bullet_grenade.dm + +

+ + +
/obj/item/explosive/grenade/bulletbullet grenade: shoots bullets out from itself in a ring
+ + + diff --git a/code/game/objects/items/explosives/grenades/flares.html b/code/game/objects/items/explosives/grenades/flares.html new file mode 100644 index 0000000000000..5866514235bcd --- /dev/null +++ b/code/game/objects/items/explosives/grenades/flares.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/explosives/grenades/flares.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/items/explosives/grenades/flares.dm + +

+ + +
/obj/item/explosive/grenade/flare/strongerflareFlares that the tadpole flare launcher launches
+ + + diff --git a/code/game/objects/items/explosives/mine.html b/code/game/objects/items/explosives/mine.html new file mode 100644 index 0000000000000..f27e845ec7759 --- /dev/null +++ b/code/game/objects/items/explosives/mine.html @@ -0,0 +1,29 @@ + + + + + + + code/game/objects/items/explosives/mine.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/items/explosives/mine.dm + +

+ + + + +
/obj/item/explosive/mineMines
/obj/effect/mine_tripwireThis is a mine_tripwire that is basically used to extend the mine and capture bump movement further infront of the mine
/obj/item/explosive/mine/pmcPMC specific mine, with IFF for PMC units
+ + + diff --git a/code/game/objects/items/flashlight.html b/code/game/objects/items/flashlight.html new file mode 100644 index 0000000000000..abeac55328c48 --- /dev/null +++ b/code/game/objects/items/flashlight.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/flashlight.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/items/flashlight.dm + +

+ + +
/obj/item/flashlight/lanternLantern
+ + + diff --git a/code/game/objects/items/implants/implant_items.html b/code/game/objects/items/implants/implant_items.html new file mode 100644 index 0000000000000..d82003f003cf7 --- /dev/null +++ b/code/game/objects/items/implants/implant_items.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/implants/implant_items.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/items/implants/implant_items.dm + +

+ + +
/obj/item/implant/deployitemDeployitem implant, holds a item that can then be placed inhand to do whatever with
+ + + diff --git a/code/game/objects/items/implants/implant_suicidedust.html b/code/game/objects/items/implants/implant_suicidedust.html new file mode 100644 index 0000000000000..a2615664dbbd5 --- /dev/null +++ b/code/game/objects/items/implants/implant_suicidedust.html @@ -0,0 +1,28 @@ + + + + + + + code/game/objects/items/implants/implant_suicidedust.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/items/implants/implant_suicidedust.dm + +

+ + +
/obj/item/implant/suicide_dustImplant meant for admin ERTs that will dust a body upon death. +In order to prevent Marines from looting things they should not ever have
+ + + diff --git a/code/game/objects/items/marine_gear.html b/code/game/objects/items/marine_gear.html new file mode 100644 index 0000000000000..fa6fd5288d6a4 --- /dev/null +++ b/code/game/objects/items/marine_gear.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/marine_gear.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/items/marine_gear.dm + +

+ + +
/obj/item/flashlight/combatMarine Gear
+ + + diff --git a/code/game/objects/items/multitool.html b/code/game/objects/items/multitool.html new file mode 100644 index 0000000000000..4d7c5515152c9 --- /dev/null +++ b/code/game/objects/items/multitool.html @@ -0,0 +1,28 @@ + + + + + + + code/game/objects/items/multitool.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/items/multitool.dm + +

+ + +
/obj/item/tool/multitoolMultitool -- A multitool is used for hacking electronic devices. +TO-DO -- Using it as a power measurement tool for cables etc. Nannek.
+ + + diff --git a/code/game/objects/items/plantable_flags.html b/code/game/objects/items/plantable_flags.html new file mode 100644 index 0000000000000..0ecd61f01bb93 --- /dev/null +++ b/code/game/objects/items/plantable_flags.html @@ -0,0 +1,52 @@ + + + + + + + code/game/objects/items/plantable_flags.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/game/objects/items/plantable_flags.dm + +

+ + + + + + +
FLAG_AURA_RANGERange of the aura
FLAG_AURA_DEPLOYED_RANGERange of the aura when deployed
FLAG_WARCRY_RANGEThe range in tiles which the flag makes people warcry
FLAG_AURA_STRENGTHStrength of the aura
LOST_FLAG_AURA_STRENGTHPenalty aura for losing or otherwise disgracing the flag

Define Details

+

FLAG_AURA_DEPLOYED_RANGE + + +

+

Range of the aura when deployed

FLAG_AURA_RANGE + + +

+

Range of the aura

FLAG_AURA_STRENGTH + + +

+

Strength of the aura

FLAG_WARCRY_RANGE + + +

+

The range in tiles which the flag makes people warcry

LOST_FLAG_AURA_STRENGTH + + +

+

Penalty aura for losing or otherwise disgracing the flag

+ + + diff --git a/code/game/objects/items/shooting_range.html b/code/game/objects/items/shooting_range.html new file mode 100644 index 0000000000000..6dad5e8107509 --- /dev/null +++ b/code/game/objects/items/shooting_range.html @@ -0,0 +1,28 @@ + + + + + + + code/game/objects/items/shooting_range.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/items/shooting_range.dm + +

+ + + +
/obj/structure/target_stakeBasically these are for the firing range
/obj/structure/target_stake/occupiedThese are occupied variations for targetting stakes
+ + + diff --git a/code/game/objects/items/stacks/stack.html b/code/game/objects/items/stacks/stack.html new file mode 100644 index 0000000000000..80df093242cc0 --- /dev/null +++ b/code/game/objects/items/stacks/stack.html @@ -0,0 +1,37 @@ + + + + + + + code/game/objects/items/stacks/stack.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/game/objects/items/stacks/stack.dm + +

+ + + +
STACK_CHECK_CARDINALSChecks if there is an object of the result type in any of the cardinal directions
STACK_CHECK_ADJACENTChecks if there is an object of the result type within one tile

Define Details

+

STACK_CHECK_ADJACENT + + +

+

Checks if there is an object of the result type within one tile

STACK_CHECK_CARDINALS + + +

+

Checks if there is an object of the result type in any of the cardinal directions

+ + + diff --git a/code/game/objects/items/storage/boxes.html b/code/game/objects/items/storage/boxes.html new file mode 100644 index 0000000000000..f7c4ccbe9a038 --- /dev/null +++ b/code/game/objects/items/storage/boxes.html @@ -0,0 +1,30 @@ + + + + + + + code/game/objects/items/storage/boxes.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/items/storage/boxes.dm + +

+ + + +
/obj/item/storage/box/explosive_minesMARINES BOXES
/obj/item/storage/box/visualDeployable box with fancy visuals of its contents +Visual content defined in the icon_state_mini var in /obj/item +All other visuals that do not have a icon_state_mini defined are in var/assoc_overlay
+ + + diff --git a/code/game/objects/items/storage/holsters.html b/code/game/objects/items/storage/holsters.html new file mode 100644 index 0000000000000..b930aa6af38fb --- /dev/null +++ b/code/game/objects/items/storage/holsters.html @@ -0,0 +1,31 @@ + + + + + + + code/game/objects/items/storage/holsters.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/items/storage/holsters.dm + +

+ + + + + + +

Contains holster subtype, which is a form of storage with a snowflake item we are particularly interested in

/obj/item/storage/holsterParent item for all holster type storage items
/obj/item/storage/holster/backholster/rpgRR bag
/obj/item/storage/holster/bladeswords
/obj/item/storage/holster/beltGUN BELTS
+ + + diff --git a/code/game/objects/items/storage/pouch.html b/code/game/objects/items/storage/pouch.html new file mode 100644 index 0000000000000..c17018c957285 --- /dev/null +++ b/code/game/objects/items/storage/pouch.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/storage/pouch.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/items/storage/pouch.dm + +

+ + +
/obj/item/storage/pouch/magazineMAGAZINE POUCHES
+ + + diff --git a/code/game/objects/items/storage/storage.html b/code/game/objects/items/storage/storage.html new file mode 100644 index 0000000000000..343c825a1a82b --- /dev/null +++ b/code/game/objects/items/storage/storage.html @@ -0,0 +1,31 @@ + + + + + + + code/game/objects/items/storage/storage.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/items/storage/storage.dm + +

+ + + +

Contains obj/item/storage template

/obj/item/storageWhen creating a new storage, you may use /obj/item/storage as a template which automates create_storage() on .../Initialize +However, this is no longer a hard requirement, since storage is a /datum now +Just make sure to pass whatever arguments you need to create_storage() which is an /atom level proc +(This means that any atom can have storage :D )
+ + + diff --git a/code/game/objects/items/tools/mining_tools.html b/code/game/objects/items/tools/mining_tools.html new file mode 100644 index 0000000000000..95644cb10f9d5 --- /dev/null +++ b/code/game/objects/items/tools/mining_tools.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/tools/mining_tools.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/items/tools/mining_tools.dm + +

+ + +
/obj/item/tool/pickaxePickaxe
+ + + diff --git a/code/game/objects/items/tools/shovel_tools.html b/code/game/objects/items/tools/shovel_tools.html new file mode 100644 index 0000000000000..7eab9bc6c5e69 --- /dev/null +++ b/code/game/objects/items/tools/shovel_tools.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/items/tools/shovel_tools.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/items/tools/shovel_tools.dm + +

+ + +
/obj/item/tool/shovelShovels
+ + + diff --git a/code/game/objects/items/weapons/twohanded.html b/code/game/objects/items/weapons/twohanded.html new file mode 100644 index 0000000000000..e2abd8d59b462 --- /dev/null +++ b/code/game/objects/items/weapons/twohanded.html @@ -0,0 +1,28 @@ + + + + + + + code/game/objects/items/weapons/twohanded.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/items/weapons/twohanded.dm + +

+ + + +
/obj/item/weapon/twohanded/offhandOFFHAND
/obj/item/weapon/twohanded/chainsawChainsword & Chainsaw
+ + + diff --git a/code/game/objects/machinery/bots/cleanbot.html b/code/game/objects/machinery/bots/cleanbot.html new file mode 100644 index 0000000000000..8fb45ba09d7df --- /dev/null +++ b/code/game/objects/machinery/bots/cleanbot.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/machinery/bots/cleanbot.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/machinery/bots/cleanbot.dm + +

+ + +
/obj/machinery/bot/cleanbotA medical bot designed to clean up blood and other trash that accumulates in medbay
+ + + diff --git a/code/game/objects/machinery/bots/roomba.html b/code/game/objects/machinery/bots/roomba.html new file mode 100644 index 0000000000000..5dae950df7a8b --- /dev/null +++ b/code/game/objects/machinery/bots/roomba.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/machinery/bots/roomba.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/machinery/bots/roomba.dm + +

+ + +
/obj/machinery/bot/roombaA cheap little roomba that runs around and keeps prep clean to decrease maptick and prep always being a fucking mess
+ + + diff --git a/code/game/objects/machinery/cloning/cloning.html b/code/game/objects/machinery/cloning/cloning.html new file mode 100644 index 0000000000000..cb555d7f6fddf --- /dev/null +++ b/code/game/objects/machinery/cloning/cloning.html @@ -0,0 +1,29 @@ + + + + + + + code/game/objects/machinery/cloning/cloning.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/machinery/cloning/cloning.dm + +

+ + + +
/obj/machinery/cloningMarine cloning.
/obj/machinery/computer/cloning_console/vatsThese automatically generate marine bodies based on a timer. +These hold the body until taken by a ghost where they "burst" from the vat.
+ + + diff --git a/code/game/objects/machinery/doors/multi_tile.html b/code/game/objects/machinery/doors/multi_tile.html new file mode 100644 index 0000000000000..1e426cee89681 --- /dev/null +++ b/code/game/objects/machinery/doors/multi_tile.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/machinery/doors/multi_tile.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/machinery/doors/multi_tile.dm + +

+ + +
/obj/machinery/door/airlock/multi_tile/glassDue to inheritance from parent we need no icon_state, just icon
+ + + diff --git a/code/game/objects/machinery/doors/shutters.html b/code/game/objects/machinery/doors/shutters.html new file mode 100644 index 0000000000000..16898ec28813e --- /dev/null +++ b/code/game/objects/machinery/doors/shutters.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/machinery/doors/shutters.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/machinery/doors/shutters.dm + +

+ + +
/obj/machinery/door/poddoor/shutters/urbanurban shutters
+ + + diff --git a/code/game/objects/machinery/holosign.html b/code/game/objects/machinery/holosign.html new file mode 100644 index 0000000000000..7a461ba1f273a --- /dev/null +++ b/code/game/objects/machinery/holosign.html @@ -0,0 +1,28 @@ + + + + + + + code/game/objects/machinery/holosign.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/machinery/holosign.dm + +

+ + + +
/obj/machinery/holosignHOLOSIGN
/obj/machinery/holosign_switchSWITCH
+ + + diff --git a/code/game/objects/machinery/kitchen/smartfridge.html b/code/game/objects/machinery/kitchen/smartfridge.html new file mode 100644 index 0000000000000..def31e327aa0a --- /dev/null +++ b/code/game/objects/machinery/kitchen/smartfridge.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/machinery/kitchen/smartfridge.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/machinery/kitchen/smartfridge.dm + +

+ + +
/obj/machinery/smartfridge/seedsSmartfridge types
+ + + diff --git a/code/game/objects/machinery/miner.html b/code/game/objects/machinery/miner.html new file mode 100644 index 0000000000000..cacda309ce1ed --- /dev/null +++ b/code/game/objects/machinery/miner.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/machinery/miner.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/machinery/miner.dm + +

+ + +
/obj/machinery/minerResource generator that produces a certain material that can be repaired by marines and attacked by xenos, Intended as an objective for marines to play towards to get more req gear
+ + + diff --git a/code/game/objects/machinery/overwatch.html b/code/game/objects/machinery/overwatch.html new file mode 100644 index 0000000000000..a5e9aa2739325 --- /dev/null +++ b/code/game/objects/machinery/overwatch.html @@ -0,0 +1,34 @@ + + + + + + + code/game/objects/machinery/overwatch.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/game/objects/machinery/overwatch.dm + +

+ + +
MAX_COMMAND_MESSAGE_LENGTHThe maximum length we should use for sending messages with stuff like message_member, +message_squad etc.

Define Details

+

MAX_COMMAND_MESSAGE_LENGTH + + +

+

The maximum length we should use for sending messages with stuff like message_member, +message_squad etc.

+ + + diff --git a/code/game/objects/machinery/research.html b/code/game/objects/machinery/research.html new file mode 100644 index 0000000000000..7ae315bcaa0db --- /dev/null +++ b/code/game/objects/machinery/research.html @@ -0,0 +1,35 @@ + + + + + + + code/game/objects/machinery/research.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/game/objects/machinery/research.dm + +

+ + + + +
RES_MONEYResearch system
/obj/item/research_resourceResearch materials
/obj/item/research_productItems designed to be products of research +It isn't required for a product of research to be subtype of these

Define Details

+

RES_MONEY + + +

+

Research system

+ + + diff --git a/code/game/objects/machinery/status_display.html b/code/game/objects/machinery/status_display.html new file mode 100644 index 0000000000000..9620a25c64e4d --- /dev/null +++ b/code/game/objects/machinery/status_display.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/machinery/status_display.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/machinery/status_display.dm + +

+ + +
/obj/machinery/status_displayStatus display which can show images and scrolling text.
+ + + diff --git a/code/game/objects/machinery/street_lamps.html b/code/game/objects/machinery/street_lamps.html new file mode 100644 index 0000000000000..b60783beefc2c --- /dev/null +++ b/code/game/objects/machinery/street_lamps.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/machinery/street_lamps.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/machinery/street_lamps.dm + +

+ + +
/obj/machinery/streetlight/streetIf you are adding more pictures, don't forget to complete the list in AI_verbs.dm
+ + + diff --git a/code/game/objects/machinery/telecomms/broadcasting.html b/code/game/objects/machinery/telecomms/broadcasting.html new file mode 100644 index 0000000000000..a483914ec83b0 --- /dev/null +++ b/code/game/objects/machinery/telecomms/broadcasting.html @@ -0,0 +1,28 @@ + + + + + + + code/game/objects/machinery/telecomms/broadcasting.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/machinery/telecomms/broadcasting.dm + +

+ + +
/datum/signal/subspaceHere is the big, bad function that broadcasts a message given the appropriate +parameters.
+ + + diff --git a/code/game/objects/machinery/vending/new_marine_vendors.html b/code/game/objects/machinery/vending/new_marine_vendors.html new file mode 100644 index 0000000000000..ee7dc9bc305c5 --- /dev/null +++ b/code/game/objects/machinery/vending/new_marine_vendors.html @@ -0,0 +1,28 @@ + + + + + + + code/game/objects/machinery/vending/new_marine_vendors.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/machinery/vending/new_marine_vendors.dm + +

+ + + +
/obj/machinery/marine_selector/gearGear
/obj/effect/vendor_bundleSpawns a set of objects from specified typepaths. For vendors to spawn multiple items while only needing one path.
+ + + diff --git a/code/game/objects/machinery/vending/quick_vendor.html b/code/game/objects/machinery/vending/quick_vendor.html new file mode 100644 index 0000000000000..c22e1b05ba71e --- /dev/null +++ b/code/game/objects/machinery/vending/quick_vendor.html @@ -0,0 +1,28 @@ + + + + + + + code/game/objects/machinery/vending/quick_vendor.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/machinery/vending/quick_vendor.dm + +

+ + + +
/proc/init_quick_loadoutsThe list is shared across all quick vendors, but they will only display the tabs specified by the vendor, and only show the loadouts with jobs that match the displayed tabs.
+ + + diff --git a/code/game/objects/structures/campaign_structures/orbital_beacons.html b/code/game/objects/structures/campaign_structures/orbital_beacons.html new file mode 100644 index 0000000000000..e0e79a1db8321 --- /dev/null +++ b/code/game/objects/structures/campaign_structures/orbital_beacons.html @@ -0,0 +1,32 @@ + + + + + + + code/game/objects/structures/campaign_structures/orbital_beacons.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/game/objects/structures/campaign_structures/orbital_beacons.dm + +

+ + +
CAMPAIGN_OB_BEACON_IMPACT_DELAYDelay between beacon timer finishing and the actual explosion

Define Details

+

CAMPAIGN_OB_BEACON_IMPACT_DELAY + + +

+

Delay between beacon timer finishing and the actual explosion

+ + + diff --git a/code/game/objects/structures/cas_plane_parts.html b/code/game/objects/structures/cas_plane_parts.html new file mode 100644 index 0000000000000..76958e228bdd8 --- /dev/null +++ b/code/game/objects/structures/cas_plane_parts.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/structures/cas_plane_parts.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/structures/cas_plane_parts.dm + +

+ + +
/obj/structure/caspartBase cas plane structure, we use this instead of turfs if we want to peek onto the turfs below
+ + + diff --git a/code/game/objects/structures/crates_lockers/closets/secure/cargo.html b/code/game/objects/structures/crates_lockers/closets/secure/cargo.html new file mode 100644 index 0000000000000..ea1617b9d1aa1 --- /dev/null +++ b/code/game/objects/structures/crates_lockers/closets/secure/cargo.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/structures/crates_lockers/closets/secure/cargo.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/structures/crates_lockers/closets/secure/cargo.dm + +

+ + +
/obj/structure/closet/secure_closet/minerMiner Lockers
+ + + diff --git a/code/game/objects/structures/crates_lockers/closets/secure/cm_closets.html b/code/game/objects/structures/crates_lockers/closets/secure/cm_closets.html new file mode 100644 index 0000000000000..27855347035fa --- /dev/null +++ b/code/game/objects/structures/crates_lockers/closets/secure/cm_closets.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/structures/crates_lockers/closets/secure/cm_closets.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/structures/crates_lockers/closets/secure/cm_closets.dm + +

+ + +
/obj/structure/closet/secure_closet/military_policeMilitary Police Gear
+ + + diff --git a/code/game/objects/structures/crates_lockers/largecrate.html b/code/game/objects/structures/crates_lockers/largecrate.html new file mode 100644 index 0000000000000..b33b41a826d7a --- /dev/null +++ b/code/game/objects/structures/crates_lockers/largecrate.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/structures/crates_lockers/largecrate.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/structures/crates_lockers/largecrate.dm + +

+ + +
/obj/structure/largecrate/randomCM largecrates
+ + + diff --git a/code/game/objects/structures/crates_lockers/walllocker.html b/code/game/objects/structures/crates_lockers/walllocker.html new file mode 100644 index 0000000000000..d6d8e95a6c3ff --- /dev/null +++ b/code/game/objects/structures/crates_lockers/walllocker.html @@ -0,0 +1,28 @@ + + + + + + + code/game/objects/structures/crates_lockers/walllocker.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/structures/crates_lockers/walllocker.dm + +

+ + + +
/obj/structure/closet/secure_closet/walllockerSECURE WALL LOCKERS
/obj/structure/closet/secure_closet/personal/walllockerPERSONAL SECURE WALL LOCKER
+ + + diff --git a/code/game/objects/structures/droppod.html b/code/game/objects/structures/droppod.html new file mode 100644 index 0000000000000..37b7b69918483 --- /dev/null +++ b/code/game/objects/structures/droppod.html @@ -0,0 +1,43 @@ + + + + + + + code/game/objects/structures/droppod.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/game/objects/structures/droppod.dm + +

+ + + + + +
DROPPOD_TRANSIT_TIMETime drop pod spends in the transit z, mostly for visual flavor
LEADER_POD_DISPERSIONradius of dispersion for leader pods
DROPPOD_BASE_DISPERSIONradius of dispersion for pods for randomisation or obstacle avoidance
/obj/structure/droppodbase marine drop pod. can be controlled by an attached /obj/structure/droppod/leader or /obj/machinery/computer/droppod_control

Define Details

+

DROPPOD_BASE_DISPERSION + + +

+

radius of dispersion for pods for randomisation or obstacle avoidance

DROPPOD_TRANSIT_TIME + + +

+

Time drop pod spends in the transit z, mostly for visual flavor

LEADER_POD_DISPERSION + + +

+

radius of dispersion for leader pods

+ + + diff --git a/code/game/objects/structures/dropship_ammo.html b/code/game/objects/structures/dropship_ammo.html new file mode 100644 index 0000000000000..79047a507fea0 --- /dev/null +++ b/code/game/objects/structures/dropship_ammo.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/structures/dropship_ammo.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/structures/dropship_ammo.dm + +

+ + +
/obj/structure/ship_ammodropship weapon ammunition
+ + + diff --git a/code/game/objects/structures/dropship_equipment.html b/code/game/objects/structures/dropship_equipment.html new file mode 100644 index 0000000000000..6cfdcfd97e338 --- /dev/null +++ b/code/game/objects/structures/dropship_equipment.html @@ -0,0 +1,34 @@ + + + + + + + code/game/objects/structures/dropship_equipment.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/structures/dropship_equipment.dm + +

+ + + + + + + + + +
/obj/structure/dropship_equipment::
/obj/structure/dropship_equipment/shuttle/flare_launcherflare launcher
/obj/structure/dropship_equipment/shuttle/sentry_holderturret holders
/obj/structure/dropship_equipment/fuelFUEL EQUIPMENT
/obj/structure/dropship_equipment/electronicsELECTRONICS
/obj/structure/dropship_equipment/adv_compCOMPUTERS
/obj/structure/dropship_equipment/cas/weaponWEAPONS
/obj/structure/dropship_equipment/shuttle/operatingtableOTHER EQUIPMENT
+ + + diff --git a/code/game/objects/structures/hybrisa_props.html b/code/game/objects/structures/hybrisa_props.html new file mode 100644 index 0000000000000..28d77f16ebc5f --- /dev/null +++ b/code/game/objects/structures/hybrisa_props.html @@ -0,0 +1,28 @@ + + + + + + + code/game/objects/structures/hybrisa_props.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/structures/hybrisa_props.dm + +

+ + + +
/obj/structure/prop/urban/fakeplatformsFake Platforms
/obj/structure/prop/urban/billboardsandsigns/bigbillboardsAlien Isolation - posters used as reference (direct downscale of the image for some) If anyone wants to name the billboards individually
+ + + diff --git a/code/game/objects/structures/kitchen_spike.html b/code/game/objects/structures/kitchen_spike.html new file mode 100644 index 0000000000000..bad50a7de3eff --- /dev/null +++ b/code/game/objects/structures/kitchen_spike.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/structures/kitchen_spike.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/structures/kitchen_spike.dm + +

+ + +
/obj/structure/kitchenspikeKitchen Spike
+ + + diff --git a/code/game/objects/structures/platforms.html b/code/game/objects/structures/platforms.html new file mode 100644 index 0000000000000..ffbbdd0526070 --- /dev/null +++ b/code/game/objects/structures/platforms.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/structures/platforms.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/structures/platforms.dm + +

+ + +
/obj/structure/platform/hybrisaHybrisa Platforms
+ + + diff --git a/code/game/objects/structures/prop.html b/code/game/objects/structures/prop.html new file mode 100644 index 0000000000000..07a7341d5203a --- /dev/null +++ b/code/game/objects/structures/prop.html @@ -0,0 +1,28 @@ + + + + + + + code/game/objects/structures/prop.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/structures/prop.dm + +

+ + + +
/obj/structure/prop/brokenvendorBROKEN MARINE VENDOR PROPS
/obj/structure/prop/vehicleBROKEN VEHICLE PROPS
+ + + diff --git a/code/game/objects/structures/rappel_system.html b/code/game/objects/structures/rappel_system.html new file mode 100644 index 0000000000000..22f77f222bb48 --- /dev/null +++ b/code/game/objects/structures/rappel_system.html @@ -0,0 +1,35 @@ + + + + + + + code/game/objects/structures/rappel_system.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/game/objects/structures/rappel_system.dm + +

+ + + + +
RAPPEL_REPAIR_TIMERAPPEL SYSTEM
/obj/effect/rappel_rope/tadpoleThis is the rope that the system deploys, a subtype of the HvH deployment rappel. +Created by the rappel system on init and stored in the rappel system when it's not in use
/obj/item/spare_cordReplacement rappel cord, necessary to fully repair a damaged rappel system

Define Details

+

RAPPEL_REPAIR_TIME + + +

+

RAPPEL SYSTEM

+ + + diff --git a/code/game/objects/structures/stool_bed_chair_nest/janicart.html b/code/game/objects/structures/stool_bed_chair_nest/janicart.html new file mode 100644 index 0000000000000..442cf3bc9e7da --- /dev/null +++ b/code/game/objects/structures/stool_bed_chair_nest/janicart.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/structures/stool_bed_chair_nest/janicart.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/structures/stool_bed_chair_nest/janicart.dm + +

+ + +
/obj/structure/bed/chair/janicartold style janicart
+ + + diff --git a/code/game/objects/structures/stool_bed_chair_nest/xeno_nest.html b/code/game/objects/structures/stool_bed_chair_nest/xeno_nest.html new file mode 100644 index 0000000000000..f1fa7df003f4f --- /dev/null +++ b/code/game/objects/structures/stool_bed_chair_nest/xeno_nest.html @@ -0,0 +1,27 @@ + + + + + + + code/game/objects/structures/stool_bed_chair_nest/xeno_nest.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/objects/structures/stool_bed_chair_nest/xeno_nest.dm + +

+ + +
/obj/structure/bed/nestAlium nests. Essentially beds with an unbuckle delay that only aliums can buckle mobs to.
+ + + diff --git a/code/game/sound.html b/code/game/sound.html new file mode 100644 index 0000000000000..734e5b3e6db4b --- /dev/null +++ b/code/game/sound.html @@ -0,0 +1,38 @@ + + + + + + + code/game/sound.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/sound.dm + +

+ + + + + + + + + + + + +
/soundBase proc to trigger the smoothing system. It will behave according to the smoothing atom's system. +Default override for echo
/proc/playsound
/proc/playsound_zPlay sound for all online mobs on a given Z-level. Good for ambient sounds.
/proc/playsound_z_humansPlay a sound for all cliented humans and ghosts by zlevel
/proc/playsound_z_xenosPlay a sound for all cliented xenos and ghosts by hive on a zlevel
/proc/get_sfxUsed to convert a SFX define into a .ogg so we can add some variance to sounds. If soundin is already a .ogg, we simply return it
+ + + diff --git a/code/game/turfs/floor_ground.html b/code/game/turfs/floor_ground.html new file mode 100644 index 0000000000000..78a3d7f11055e --- /dev/null +++ b/code/game/turfs/floor_ground.html @@ -0,0 +1,28 @@ + + + + + + + code/game/turfs/floor_ground.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/turfs/floor_ground.dm + +

+ + + +
/turf/open/floor/plating/groundPlanet
/turf/open/floor/chasmThese are entirely for decoration purposes, do not make them functional, it will cause salt.
+ + + diff --git a/code/game/turfs/floor_types.html b/code/game/turfs/floor_types.html new file mode 100644 index 0000000000000..0dcd462e0f6e9 --- /dev/null +++ b/code/game/turfs/floor_types.html @@ -0,0 +1,28 @@ + + + + + + + code/game/turfs/floor_types.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/turfs/floor_types.dm + +

+ + + +
/turf/open/floor/placeholderturfgrayscale floor for easy recoloring
/turf/open/floor/mech_bay_recharge_floorMechbay /////////////////:
+ + + diff --git a/code/game/turfs/markings.html b/code/game/turfs/markings.html new file mode 100644 index 0000000000000..0333ea3abf315 --- /dev/null +++ b/code/game/turfs/markings.html @@ -0,0 +1,41 @@ + + + + + + + code/game/turfs/markings.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/turfs/markings.dm + +

+ + + + + + + + + + + + + + + + +
/obj/effect/turf_decal/raven_ship_signNTSS RAVEN EMERGENCY SHUTTLE LOGO
/obj/effect/turf_decal/syndicateemblem/bottom/leftSYNDICATE EMBLEM
/obj/effect/turf_decal/trimlineTrimlines
/obj/effect/turf_decal/trimline/whiteWhite trimlines
/obj/effect/turf_decal/trimline/redRed trimlines
/obj/effect/turf_decal/trimline/dark_redDark red trimlines
/obj/effect/turf_decal/trimline/greenGreen trimlines
/obj/effect/turf_decal/trimline/dark_greenDark green Trimlines
/obj/effect/turf_decal/trimline/blueBlue trimlines
/obj/effect/turf_decal/trimline/dark_blueDark blue trimlines
/obj/effect/turf_decal/trimline/yellowYellow trimlines
/obj/effect/turf_decal/trimline/purplePurple trimlines
/obj/effect/turf_decal/trimline/brownBrown trimlines
/obj/effect/turf_decal/trimline/neutralNeutral trimlines
/obj/effect/turf_decal/trimline/darkDark trimlines
+ + + diff --git a/code/game/turfs/space/transit.html b/code/game/turfs/space/transit.html new file mode 100644 index 0000000000000..03a9682b1127a --- /dev/null +++ b/code/game/turfs/space/transit.html @@ -0,0 +1,27 @@ + + + + + + + code/game/turfs/space/transit.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/turfs/space/transit.dm + +

+ + +
/turf/open/space/transit/southturf/open/space/transit/get_smooth_underlay_icon(mutable_appearance/underlay_appearance, turf/asking_turf, adjacency_dir)
+ + + diff --git a/code/game/turfs/walls/resin.html b/code/game/turfs/walls/resin.html new file mode 100644 index 0000000000000..4a2968f4e5419 --- /dev/null +++ b/code/game/turfs/walls/resin.html @@ -0,0 +1,28 @@ + + + + + + + code/game/turfs/walls/resin.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/game/turfs/walls/resin.dm + +

+ + + +
/turf/closed/wall/resinResin walls
/turf/closed/wall/resin/regeneratingRegenerating walls that start with lower health, but grow to a much higher hp over time
+ + + diff --git a/code/modules/admin/callproc.html b/code/modules/admin/callproc.html new file mode 100644 index 0000000000000..4d9ad692f62c5 --- /dev/null +++ b/code/modules/admin/callproc.html @@ -0,0 +1,35 @@ + + + + + + + code/modules/admin/callproc.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/admin/callproc.dm + +

+ + + + + + + + +
/mob/proccall_handlerUsed to handle proccalls called indirectly by an admin (e.g. tgs, circuits). +Has to be a mob because IsAdminAdvancedProcCall() checks usr, which is a mob variable. +So usr is set to this for any proccalls that don't have any usr mob/client to refer to.
/proc/HandleUserlessProcCallHandles a userless proccall, used by circuits.
/proc/HandleUserlessSDQLHandles a userless sdql, used by circuits and tgs.
/proc/WrapAdminProcCallWrapper for proccalls where the datum is flagged as vareditted
+ + + diff --git a/code/modules/admin/smites/ai_replacement.html b/code/modules/admin/smites/ai_replacement.html new file mode 100644 index 0000000000000..e6485bdd4de24 --- /dev/null +++ b/code/modules/admin/smites/ai_replacement.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/admin/smites/ai_replacement.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/admin/smites/ai_replacement.dm + +

+ + +
/datum/smite/ai_replacementFattens the target
+ + + diff --git a/code/modules/admin/smites/bloodless.html b/code/modules/admin/smites/bloodless.html new file mode 100644 index 0000000000000..8f9d26c1df477 --- /dev/null +++ b/code/modules/admin/smites/bloodless.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/admin/smites/bloodless.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/admin/smites/bloodless.dm + +

+ + +
/datum/smite/bloodlessDrains targets blood
+ + + diff --git a/code/modules/admin/smites/boneless.html b/code/modules/admin/smites/boneless.html new file mode 100644 index 0000000000000..44dcae327f897 --- /dev/null +++ b/code/modules/admin/smites/boneless.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/admin/smites/boneless.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/admin/smites/boneless.dm + +

+ + +
/datum/smite/bonelessBreaks the targets bones
+ + + diff --git a/code/modules/admin/smites/brain_damage.html b/code/modules/admin/smites/brain_damage.html new file mode 100644 index 0000000000000..1f11b84aef5b5 --- /dev/null +++ b/code/modules/admin/smites/brain_damage.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/admin/smites/brain_damage.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/admin/smites/brain_damage.dm + +

+ + +
/datum/smite/brain_damageInflicts crippling brain damage on the target
+ + + diff --git a/code/modules/admin/smites/bread.html b/code/modules/admin/smites/bread.html new file mode 100644 index 0000000000000..a41f6e620be14 --- /dev/null +++ b/code/modules/admin/smites/bread.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/admin/smites/bread.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/admin/smites/bread.dm + +

+ + +
/datum/smite/breadTurns the target into bread
+ + + diff --git a/code/modules/admin/smites/bsa.html b/code/modules/admin/smites/bsa.html new file mode 100644 index 0000000000000..eddd925b226ea --- /dev/null +++ b/code/modules/admin/smites/bsa.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/admin/smites/bsa.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/admin/smites/bsa.dm + +

+ + +
/datum/smite/bsaFires the BSA at the target
+ + + diff --git a/code/modules/admin/smites/fake_bwoink.html b/code/modules/admin/smites/fake_bwoink.html new file mode 100644 index 0000000000000..5cc0c7a160792 --- /dev/null +++ b/code/modules/admin/smites/fake_bwoink.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/admin/smites/fake_bwoink.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/admin/smites/fake_bwoink.dm + +

+ + +
/datum/smite/fake_bwoinkSends the target a fake adminhelp sound
+ + + diff --git a/code/modules/admin/smites/fat.html b/code/modules/admin/smites/fat.html new file mode 100644 index 0000000000000..633bfada25594 --- /dev/null +++ b/code/modules/admin/smites/fat.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/admin/smites/fat.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/admin/smites/fat.dm + +

+ + +
/datum/smite/fatFattens the target
+ + + diff --git a/code/modules/admin/smites/gib.html b/code/modules/admin/smites/gib.html new file mode 100644 index 0000000000000..bfae037fecb9a --- /dev/null +++ b/code/modules/admin/smites/gib.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/admin/smites/gib.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/admin/smites/gib.dm + +

+ + +
/datum/smite/gibGibs the target
+ + + diff --git a/code/modules/admin/smites/knot_shoes.html b/code/modules/admin/smites/knot_shoes.html new file mode 100644 index 0000000000000..751f41f4db5c4 --- /dev/null +++ b/code/modules/admin/smites/knot_shoes.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/admin/smites/knot_shoes.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/admin/smites/knot_shoes.dm + +

+ + +
/datum/smite/knot_shoesTies the target's shoes
+ + + diff --git a/code/modules/admin/smites/lightning.html b/code/modules/admin/smites/lightning.html new file mode 100644 index 0000000000000..85400d62f2999 --- /dev/null +++ b/code/modules/admin/smites/lightning.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/admin/smites/lightning.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/admin/smites/lightning.dm + +

+ + +
/datum/smite/lightningStrikes the target with a lightning bolt
+ + + diff --git a/code/modules/admin/smites/nugget.html b/code/modules/admin/smites/nugget.html new file mode 100644 index 0000000000000..20f0a3e456a9a --- /dev/null +++ b/code/modules/admin/smites/nugget.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/admin/smites/nugget.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/admin/smites/nugget.dm + +

+ + +
/datum/smite/nuggetRips off all the limbs of the target
+ + + diff --git a/code/modules/admin/smites/puzzle.html b/code/modules/admin/smites/puzzle.html new file mode 100644 index 0000000000000..2c08ab509c2e6 --- /dev/null +++ b/code/modules/admin/smites/puzzle.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/admin/smites/puzzle.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/admin/smites/puzzle.dm + +

+ + +
/datum/smite/puzzleTurns the user into a sliding puzzle
+ + + diff --git a/code/modules/admin/smites/smite.html b/code/modules/admin/smites/smite.html new file mode 100644 index 0000000000000..3709ef4f730dc --- /dev/null +++ b/code/modules/admin/smites/smite.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/admin/smites/smite.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/admin/smites/smite.dm + +

+ + +
/datum/smiteA smite, used by admins to punish players, or for their own amusement
+ + + diff --git a/code/modules/admin/tag.html b/code/modules/admin/tag.html new file mode 100644 index 0000000000000..7f4f247d5f815 --- /dev/null +++ b/code/modules/admin/tag.html @@ -0,0 +1,33 @@ + + + + + + + code/modules/admin/tag.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/modules/admin/tag.dm + +

+ + +
TAG_DELQuick define for readability

Define Details

+

TAG_DEL + + + +

+

Quick define for readability

+ + + diff --git a/code/modules/admin/verbs/adminhelp.html b/code/modules/admin/verbs/adminhelp.html new file mode 100644 index 0000000000000..9bf75f8ae3566 --- /dev/null +++ b/code/modules/admin/verbs/adminhelp.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/admin/verbs/adminhelp.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/admin/verbs/adminhelp.dm + +

+ + + +
/proc/check_admin_pingsChecks a given message to see if any of the words contain an active admin's ckey with an @ before it
+ + + diff --git a/code/modules/admin/verbs/poll_managment.html b/code/modules/admin/verbs/poll_managment.html new file mode 100644 index 0000000000000..8f4306da03d7e --- /dev/null +++ b/code/modules/admin/verbs/poll_managment.html @@ -0,0 +1,30 @@ + + + + + + + code/modules/admin/verbs/poll_managment.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/admin/verbs/poll_managment.dm + +

+ + + + + +
/datum/poll_questionDatum which holds details of a running poll loaded from the database and supplementary info.
/datum/poll_optionDatum which holds details of a poll option loaded from the database.
/proc/load_poll_dataLoads all current and future server polls and their options to store both as datums.
+ + + diff --git a/code/modules/admin/view_variables/debug_variables.html b/code/modules/admin/view_variables/debug_variables.html new file mode 100644 index 0000000000000..e3879bc6de771 --- /dev/null +++ b/code/modules/admin/view_variables/debug_variables.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/admin/view_variables/debug_variables.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/admin/view_variables/debug_variables.dm + +

+ + + +
/proc/debug_variableGet displayed variable in VV variable list
+ + + diff --git a/code/modules/admin/view_variables/nobody_wants_to_learn_matrix_math.html b/code/modules/admin/view_variables/nobody_wants_to_learn_matrix_math.html new file mode 100644 index 0000000000000..e68345f734f4e --- /dev/null +++ b/code/modules/admin/view_variables/nobody_wants_to_learn_matrix_math.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/admin/view_variables/nobody_wants_to_learn_matrix_math.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/admin/view_variables/nobody_wants_to_learn_matrix_math.dm + +

+ + +
/datum/nobody_wants_to_learn_matrix_math
+ + + diff --git a/code/modules/ai/spawners/xeno.html b/code/modules/ai/spawners/xeno.html new file mode 100644 index 0000000000000..bb8055d3557b7 --- /dev/null +++ b/code/modules/ai/spawners/xeno.html @@ -0,0 +1,31 @@ + + + + + + + code/modules/ai/spawners/xeno.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/ai/spawners/xeno.dm + +

+ + + + + +
/obj/effect/ai_node/spawner/xeno/runnergangGeneric xeno spawners +//Tier ones
/obj/effect/ai_node/spawner/xeno/spitterTier twos
/obj/effect/ai_node/spawner/xeno/ravagerTier 3s
/obj/effect/ai_node/spawner/xeno/queenTier 4s
+ + + diff --git a/code/modules/assembly/infrared.html b/code/modules/assembly/infrared.html new file mode 100644 index 0000000000000..1fdd57441995d --- /dev/null +++ b/code/modules/assembly/infrared.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/assembly/infrared.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/assembly/infrared.dm + +

+ + +
/obj/effect/beam/i_beamIBeam
+ + + diff --git a/code/modules/asset_cache.html b/code/modules/asset_cache.html new file mode 100644 index 0000000000000..1ea735138836b --- /dev/null +++ b/code/modules/asset_cache.html @@ -0,0 +1,43 @@ + + + + + + + code/modules/asset_cache/readme.md - byond + + +
+ byond - + Modules - + Types +
+
+

Asset cache system + +

+ + +
Framework for managing browser assets (javascript,css,images,etc) +

This manages getting the asset to the client without doing unneeded re-sends, as well as utilizing any configured cdns.

+

There are two frameworks for using this system:

+Asset datum: +

Make a datum in asset_list_items.dm with your browser assets for your thing.

+

Checkout asset_list.dm for the helper subclasses

+

The simple subclass will most likely be of use for most cases.

+

Call get_asset_datum() with the type of the datum you created to get your asset cache datum

+

Call .send(client|usr) on that datum to send the asset to the client. Depending on the asset transport this may or may not block.

+

Call .get_url_mappings() to get an associated list with the urls your assets can be found at.

+Manual backend: +

See the documentation for /datum/asset_transport for the backend api the asset datums utilize.

+

The global variable SSassets.transport contains the currently configured transport.

+Notes: +

Because byond browse() calls use non-blocking queues, if your code uses output() (which bypasses all of these queues) to invoke javascript functions you will need to first have the javascript announce to the server it has loaded before trying to invoke js functions.

+

To make your code work with any CDNs configured by the server, you must make sure assets are referenced from the url returned by get_url_mappings() or by asset_transport's get_asset_url(). (TGUI also has helpers for this.) If this can not be easily done, you can bypass the cdn using legacy assets, see the simple asset datum for details.

+

CSS files that use url() can be made to use the CDN without needing to rewrite all url() calls in code by using the namespaced helper datum. See the documentation for /datum/asset/simple/namespaced for details.

+ + + diff --git a/code/modules/asset_cache/asset_cache_item.html b/code/modules/asset_cache/asset_cache_item.html new file mode 100644 index 0000000000000..2a5bfee3296fa --- /dev/null +++ b/code/modules/asset_cache/asset_cache_item.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/asset_cache/asset_cache_item.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/asset_cache/asset_cache_item.dm + +

+ + +
/datum/asset_cache_itemAn internal datum containing info on items in the asset cache. Mainly used to cache md5 info for speed.
+ + + diff --git a/code/modules/asset_cache/asset_list.html b/code/modules/asset_cache/asset_list.html new file mode 100644 index 0000000000000..a8bcd3192bba2 --- /dev/null +++ b/code/modules/asset_cache/asset_list.html @@ -0,0 +1,33 @@ + + + + + + + code/modules/asset_cache/asset_list.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/asset_cache/asset_list.dm + +

+ + + + +
/datum/asset/simpleIf you don't need anything complicated.
/datum/asset/simple/namespacedNamespace'ed assets (for static css and html files) +When sent over a cdn transport, all assets in the same asset datum will exist in the same folder, as their plain names. +Used to ensure css files can reference files by url() without having to generate the css at runtime, both the css file and the files it depends on must exist in the same namespace asset datum. (Also works for html) +For example blah.css with asset blah.png will get loaded as namespaces/a3d..14f/f12..d3c.css and namespaces/a3d..14f/blah.png. allowing the css file to load blah.png by a relative url rather then compute the generated url with get_url_mappings(). +The namespace folder's name will change if any of the assets change. (excluding parent assets)
/datum/asset/jsonA subtype to generate a JSON file from a list
+ + + diff --git a/code/modules/asset_cache/assets/crafting.html b/code/modules/asset_cache/assets/crafting.html new file mode 100644 index 0000000000000..896138574cf2e --- /dev/null +++ b/code/modules/asset_cache/assets/crafting.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/asset_cache/assets/crafting.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/asset_cache/assets/crafting.dm + +

+ + +
/datum/asset/spritesheet/craftingRepresentative icons for the contents of each crafting recipe
+ + + diff --git a/code/modules/asset_cache/transports/asset_transport.html b/code/modules/asset_cache/transports/asset_transport.html new file mode 100644 index 0000000000000..c6add7748f10c --- /dev/null +++ b/code/modules/asset_cache/transports/asset_transport.html @@ -0,0 +1,33 @@ + + + + + + + code/modules/asset_cache/transports/asset_transport.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/modules/asset_cache/transports/asset_transport.dm + +

+ + + +
ASSET_CACHE_TELL_CLIENT_AMOUNTWhen sending mutiple assets, how many before we give the client a quaint little sending resources message
/datum/asset_transportBase browse_rsc asset transport

Define Details

+

ASSET_CACHE_TELL_CLIENT_AMOUNT + + +

+

When sending mutiple assets, how many before we give the client a quaint little sending resources message

+ + + diff --git a/code/modules/asset_cache/transports/webroot_transport.html b/code/modules/asset_cache/transports/webroot_transport.html new file mode 100644 index 0000000000000..e5b4614db3df5 --- /dev/null +++ b/code/modules/asset_cache/transports/webroot_transport.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/asset_cache/transports/webroot_transport.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/asset_cache/transports/webroot_transport.dm + +

+ + +
/datum/asset_transport/webrootCDN Webroot asset transport.
+ + + diff --git a/code/modules/balloon_alert/balloon_alert.html b/code/modules/balloon_alert/balloon_alert.html new file mode 100644 index 0000000000000..fd4d23d3cbb74 --- /dev/null +++ b/code/modules/balloon_alert/balloon_alert.html @@ -0,0 +1,37 @@ + + + + + + + code/modules/balloon_alert/balloon_alert.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/modules/balloon_alert/balloon_alert.dm + +

+ + + +
BALLOON_TEXT_CHAR_LIFETIME_INCREASE_MULTThe increase in duration per character in seconds
BALLOON_TEXT_CHAR_LIFETIME_INCREASE_MINThe amount of characters needed before this increase takes into effect

Define Details

+

BALLOON_TEXT_CHAR_LIFETIME_INCREASE_MIN + + +

+

The amount of characters needed before this increase takes into effect

BALLOON_TEXT_CHAR_LIFETIME_INCREASE_MULT + + +

+

The increase in duration per character in seconds

+ + + diff --git a/code/modules/buildmode.html b/code/modules/buildmode.html new file mode 100644 index 0000000000000..f3271cd5ee380 --- /dev/null +++ b/code/modules/buildmode.html @@ -0,0 +1,230 @@ + + + + + + + code/modules/buildmode/README.md - byond + + +
+ byond - + Modules - + Types +
+
+

Buildmode + +

+ + +
Code layoutBuildmode +

Manager for buildmode modes. Contains logic to manage switching between each mode, and presenting a suitable user interface.

+Effects +

Special graphics used by buildmode modes for user interface purposes.

+Buildmode Mode +

Implementer of buildmode behaviors.

+

Existing varieties:

+
    +
  • +

    Basic

    +

    Description:

    +

    Allows creation of simple structures consisting of floors, walls, windows, and airlocks.

    +

    Controls:

    +
      +
    • +

      Left click a turf:

      +

      "Upgrades" the turf based on the following rules below:

      +
        +
      • Space -> Tiled floor
      • +
      • Simulated floor -> Regular wall
      • +
      • Wall -> Reinforced wall
      • +
      +
    • +
    • +

      Right click a turf:

      +

      "Downgrades" the turf based on the following rules below:

      +
        +
      • Reinforced wall -> Regular wall
      • +
      • Wall -> Tiled floor
      • +
      • Simulated floor -> Space
      • +
      +
    • +
    • +

      Right click an object:

      +

      Deletes the clicked object.

      +
    • +
    • +

      Alt+Left click a location:

      +

      Places an airlock at the clicked location.

      +
    • +
    • +

      Ctrl+Left click a location:

      +

      Places a window at the clicked location.

      +
    • +
    +
  • +
  • +

    Advanced

    +

    Description:

    +

    Creates an instance of a configurable atom path where you click.

    +

    Controls:

    +
      +
    • +

      Right click on the mode selector:

      +

      Choose a path to spawn.

      +
    • +
    • +

      Left click a location (requires chosen path):

      +

      Place an instance of the chosen path at the location.

      +
    • +
    • +

      Right click an object:

      +

      Delete the object.

      +
    • +
    +
  • +
  • +

    Fill

    +

    Description:

    +

    Creates an instance of an atom path on every tile in a chosen region.

    +

    With a special control input, instead deletes everything within the region.

    +

    Controls:

    +
      +
    • +

      Right click on the mode selector:

      +

      Choose a path to spawn.

      +
    • +
    • +

      Left click on a region (requires chosen path):

      +

      Fill the region with the chosen path.

      +
    • +
    • +

      Alt+Left click on a region:

      +

      Deletes everything within the region.

      +
    • +
    • +

      Right click during region selection:

      +

      Cancel region selection.

      +
    • +
    +
  • +
  • +

    Copy

    +

    Description:

    +

    Take an existing object in the world, and place duplicates with identical attributes where you click.

    +

    May not always work nicely - "deep" variables such as lists or datums may malfunction.

    +

    Controls:

    +
      +
    • +

      Right click an existing object:

      +

      Select the clicked object as a template.

      +
    • +
    • +

      Left click a location (Requires a selected object as template):

      +

      Place a duplicate of the template at the clicked location.

      +
    • +
    +
  • +
  • +

    Area Edit

    +

    Description:

    +

    Modifies and creates areas.

    +

    The active area will be highlighted in yellow.

    +

    Controls:

    +
      +
    • +

      Right click the mode selector:

      +

      Create a new area, and make it active.

      +
    • +
    • +

      Right click an existing area:

      +

      Make the clicked area active.

      +
    • +
    • +

      Left click a turf:

      +

      When an area is active, adds the turf to the active area.

      +
    • +
    +
  • +
  • +

    Var Edit

    +

    Description:

    +

    Allows for setting and resetting variables of objects with a click.

    +

    If the object does not have the var, will do nothing and print a warning message.

    +

    Controls:

    +
      +
    • +

      Right click the mode selector:

      +

      Choose which variable to set, and what to set it to.

      +
    • +
    • +

      Left click an atom:

      +

      Change the clicked atom's variables as configured.

      +
    • +
    • +

      Right click an atom:

      +

      Reset the targeted variable to its original value in the code.

      +
    • +
    +
  • +
  • +

    Map Generator

    +

    Description:

    +

    Fills rectangular regions with algorithmically generated content. Right click during region selection to cancel.

    +

    See the procedural_mapping module for the generators themselves.

    +

    Controls:

    +
      +
    • +

      Right-click on the mode selector:

      +

      Select a map generator from all the generators present in the codebase.

      +
    • +
    • +

      Left click two corners of an area:

      +

      Use the generator to populate the region.

      +
    • +
    • +

      Right click during region selection:

      +

      Cancel region selection.

      +
    • +
    +
  • +
  • +

    Throwing

    +

    Description:

    +

    Select an object with left click, and right click to throw it towards where you clicked.

    +

    Controls:

    +
      +
    • +

      Left click on a movable atom:

      +

      Select the atom for throwing.

      +
    • +
    • +

      Right click on a location:

      +

      Throw the selected atom towards that location.

      +
    • +
    +
  • +
  • +

    Boom

    +

    Description:

    +

    Make explosions where you click.

    +

    Controls:

    +
      +
    • +

      Right click the mode selector:

      +

      Configure the explosion size.

      +
    • +
    • +

      Left click a location:

      +

      Cause an explosion where you clicked.

      +
    • +
    +
  • +
+ + + diff --git a/code/modules/clothing/modular_armor/attachments.html b/code/modules/clothing/modular_armor/attachments.html new file mode 100644 index 0000000000000..202df921ca539 --- /dev/null +++ b/code/modules/clothing/modular_armor/attachments.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/clothing/modular_armor/attachments.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/clothing/modular_armor/attachments.dm + +

+ + +
/obj/item/armor_module/armorThese are the basic type for armor armor_modules. What seperates these from /armor_module is that these are designed to be recolored. +These include Leg plates, Chest plates, Shoulder Plates and Visors. This could be expanded to anything that functions like armor and has greyscale functionality.
+ + + diff --git a/code/modules/clothing/modular_armor/attachments/arm_plates.html b/code/modules/clothing/modular_armor/attachments/arm_plates.html new file mode 100644 index 0000000000000..e715f15ba9e93 --- /dev/null +++ b/code/modules/clothing/modular_armor/attachments/arm_plates.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/clothing/modular_armor/attachments/arm_plates.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/clothing/modular_armor/attachments/arm_plates.dm + +

+ + +
/obj/item/armor_module/armor/armsArms pieces
+ + + diff --git a/code/modules/clothing/modular_armor/attachments/chest_plates.html b/code/modules/clothing/modular_armor/attachments/chest_plates.html new file mode 100644 index 0000000000000..2341c1e0088f2 --- /dev/null +++ b/code/modules/clothing/modular_armor/attachments/chest_plates.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/clothing/modular_armor/attachments/chest_plates.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/clothing/modular_armor/attachments/chest_plates.dm + +

+ + +
/obj/item/armor_module/armor/chestChestplates
+ + + diff --git a/code/modules/clothing/modular_armor/attachments/leg_plates.html b/code/modules/clothing/modular_armor/attachments/leg_plates.html new file mode 100644 index 0000000000000..3613c5408306e --- /dev/null +++ b/code/modules/clothing/modular_armor/attachments/leg_plates.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/clothing/modular_armor/attachments/leg_plates.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/clothing/modular_armor/attachments/leg_plates.dm + +

+ + +
/obj/item/armor_module/armor/legsLeg Pieces
+ + + diff --git a/code/modules/clothing/modular_armor/attachments/modules.html b/code/modules/clothing/modular_armor/attachments/modules.html new file mode 100644 index 0000000000000..c515c9604aaff --- /dev/null +++ b/code/modules/clothing/modular_armor/attachments/modules.html @@ -0,0 +1,35 @@ + + + + + + + code/modules/clothing/modular_armor/attachments/modules.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/clothing/modular_armor/attachments/modules.dm + +

+ + + + + + + + + + +
/obj/item/armor_module/module
/obj/item/armor_module/module/pt_beltPT belt
/obj/item/armor_module/module/better_shoulder_lampShoulder lamp strength module
/obj/item/armor_module/module/valkyrie_autodocMini autodoc module
/obj/item/armor_module/module/fire_proofFire poof module
/obj/item/armor_module/module/tyr_extra_armorExtra armor module
/obj/item/armor_module/module/mimir_environment_protectionEnvironment protection module
/obj/item/armor_module/module/ballistic_armorExtra armor module
/obj/item/armor_module/module/weldingHelmet Modules
+ + + diff --git a/code/modules/clothing/modular_armor/attachments/storage.html b/code/modules/clothing/modular_armor/attachments/storage.html new file mode 100644 index 0000000000000..a1494e66c2273 --- /dev/null +++ b/code/modules/clothing/modular_armor/attachments/storage.html @@ -0,0 +1,30 @@ + + + + + + + code/modules/clothing/modular_armor/attachments/storage.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/clothing/modular_armor/attachments/storage.dm + +

+ + + + +

Modular armor storage storage attachments +These are storage attachments that equip into storage slots on modular armor

/obj/item/armor_module/storageStorage modules
/obj/item/armor_module/storage/generalGeneral storage
+ + + diff --git a/code/modules/clothing/modular_armor/attachments/visors.html b/code/modules/clothing/modular_armor/attachments/visors.html new file mode 100644 index 0000000000000..f554b783710bf --- /dev/null +++ b/code/modules/clothing/modular_armor/attachments/visors.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/clothing/modular_armor/attachments/visors.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/clothing/modular_armor/attachments/visors.dm + +

+ + +
/obj/item/armor_module/armor/visorVisors +Visors are slightly different than the other armor types. They allow emissives. If visor_emissive_on is TRUE then it will be applying an emissve to it. +If allow_emissive is TRUE, Right clicking the Parent item will toggle the emissive.
+ + + diff --git a/code/modules/clothing/modular_armor/modular.html b/code/modules/clothing/modular_armor/modular.html new file mode 100644 index 0000000000000..d687f91e673e8 --- /dev/null +++ b/code/modules/clothing/modular_armor/modular.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/clothing/modular_armor/modular.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/clothing/modular_armor/modular.dm + +

+ + + + +
/obj/item/clothing/suit/modularModular armor
/obj/item/clothing/head/modularCore helmet module
/obj/item/clothing/mask/gas/modularColorable masks
+ + + diff --git a/code/modules/clothing/suits/jobs.html b/code/modules/clothing/suits/jobs.html new file mode 100644 index 0000000000000..afed3ee545b3a --- /dev/null +++ b/code/modules/clothing/suits/jobs.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/clothing/suits/jobs.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/clothing/suits/jobs.dm + +

+ + +
/obj/item/clothing/suit/storage/apronJob related clothing
+ + + diff --git a/code/modules/clothing/suits/marine_armor.html b/code/modules/clothing/suits/marine_armor.html new file mode 100644 index 0000000000000..0b3164ab55c71 --- /dev/null +++ b/code/modules/clothing/suits/marine_armor.html @@ -0,0 +1,30 @@ + + + + + + + code/modules/clothing/suits/marine_armor.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/clothing/suits/marine_armor.dm + +

+ + + + + +
/obj/item/clothing/suit/storage/faction/UPP/hvhModified version of the armor for HvH combat. Stats are based on medium armor, with tyr mark 2.
/obj/item/clothing/suit/storage/faction/UPP/commando/hvhModified version of the armor for HvH combat. Stats are based on medium armor, with tyr mark 2.
/obj/item/clothing/suit/storage/faction/UPP/heavy/hvhModified version of the armor for HvH combat. Stats are based on heavy armor, with tyr mark 2.
/obj/item/clothing/suit/storage/marine/smartgunner/UPP/hvhModified version of the armor for HvH combat. Stats are based on heavy armor, with tyr mark 2.
+ + + diff --git a/code/modules/clothing/under/marine_uniform.html b/code/modules/clothing/under/marine_uniform.html new file mode 100644 index 0000000000000..31d0a5553122f --- /dev/null +++ b/code/modules/clothing/under/marine_uniform.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/clothing/under/marine_uniform.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/clothing/under/marine_uniform.dm + +

+ + + +
/obj/item/clothing/under/marineMARINES
/obj/item/clothing/under/pizzaCivilians
+ + + diff --git a/code/modules/detectivework/forensics.html b/code/modules/detectivework/forensics.html new file mode 100644 index 0000000000000..b5e33ba32daeb --- /dev/null +++ b/code/modules/detectivework/forensics.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/detectivework/forensics.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/detectivework/forensics.dm + +

+ + +

todo: is this entire file deprecated and should be removed?

+ + + diff --git a/code/modules/events/_events.html b/code/modules/events/_events.html new file mode 100644 index 0000000000000..d91fab0fc5629 --- /dev/null +++ b/code/modules/events/_events.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/events/_events.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/events/_events.dm + +

+ + +
/datum/round_event_controlthis datum is used by the events controller to dictate how it selects events
+ + + diff --git a/code/modules/factory/parts.html b/code/modules/factory/parts.html new file mode 100644 index 0000000000000..bfeb8e5aca7b2 --- /dev/null +++ b/code/modules/factory/parts.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/factory/parts.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/factory/parts.dm + +

+ + +
/obj/item/factory_partBase item used in factories, only changes icon and stage for the item then creates a new item when its done +in order to set a recipe set recipe = GLOB.myrecipe in Initialize
+ + + diff --git a/code/modules/food_and_drinks/recipes/recipes_drink.html b/code/modules/food_and_drinks/recipes/recipes_drink.html new file mode 100644 index 0000000000000..09d7c012cf41d --- /dev/null +++ b/code/modules/food_and_drinks/recipes/recipes_drink.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/food_and_drinks/recipes/recipes_drink.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/food_and_drinks/recipes/recipes_drink.dm + +

+ + + +
/datum/crafting_recipe/moonshinejugBooze & Bottles
/datum/crafting_recipe/holybottleNon-alcoholic recipes
+ + + diff --git a/code/modules/instruments/instrument_data/_instrument_data.html b/code/modules/instruments/instrument_data/_instrument_data.html new file mode 100644 index 0000000000000..f302ab442c19a --- /dev/null +++ b/code/modules/instruments/instrument_data/_instrument_data.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/instruments/instrument_data/_instrument_data.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/instruments/instrument_data/_instrument_data.dm + +

+ + + + +
/proc/get_allowed_instrument_idsGet all non admin_only instruments as a list of text ids.
/datum/instrumentInstrument datums hold the data for any given instrument, as well as data on how to play it and what bounds there are to playing it.
+ + + diff --git a/code/modules/instruments/instrument_data/_instrument_key.html b/code/modules/instruments/instrument_data/_instrument_key.html new file mode 100644 index 0000000000000..6a125ce0d3fc7 --- /dev/null +++ b/code/modules/instruments/instrument_data/_instrument_key.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/instruments/instrument_data/_instrument_key.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/instruments/instrument_data/_instrument_key.dm + +

+ + +
/datum/instrument_keyInstrument key datums contain everything needed to know how to play a specific +note of an instrument.*
+ + + diff --git a/code/modules/instruments/songs/_song.html b/code/modules/instruments/songs/_song.html new file mode 100644 index 0000000000000..38766fda08c7a --- /dev/null +++ b/code/modules/instruments/songs/_song.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/instruments/songs/_song.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/instruments/songs/_song.dm + +

+ + +
/datum/songThese are the actual backend behind instruments. +They attach to an atom and provide the editor + playback functionality.
+ + + diff --git a/code/modules/keybindings.html b/code/modules/keybindings.html new file mode 100644 index 0000000000000..1b2ae48747584 --- /dev/null +++ b/code/modules/keybindings.html @@ -0,0 +1,60 @@ + + + + + + + code/modules/keybindings/readme.md - byond + + +
+ byond - + Modules - + Types +
+
+

In-code keypress handling system + +

+ + +

This whole system is heavily based off of forum_account's keyboard library. +Thanks to forum_account for saving the day, the library can be found +here!

+

.dmf macros have some very serious shortcomings. For example, they do not allow reusing parts +of one macro in another, so giving cyborgs their own shortcuts to swap active module couldn't +inherit the movement that all mobs should have anyways. The webclient only supports one macro, +so having more than one was problematic. Additionally each keybind has to call an actual +verb, which meant a lot of hidden verbs that just call one other proc. Also our existing +macro was really bad and tied unrelated behavior into Northeast(), Southeast(), Northwest(), +and Southwest().

+

The basic premise of this system is to not screw with .dmf macro setup at all and handle +pressing those keys in the code instead. We have every key call client.keyDown() +or client.keyUp() with the pressed key as an argument. Certain keys get processed +directly by the client because they should be doable at any time, then we call +keyDown() or keyUp() on the client's holder and the client's mob's focus. +By default mob.focus is the mob itself, but you can set it to any datum to give control of a +client's keypresses to another object. This would be a good way to handle a menu or driving +a mech. You can also set it to null to disregard input from a certain user.

+

Movement is handled by having each client call client.keyLoop() every game tick. +As above, this calls holder and focus.keyLoop(). atom/movable/keyLoop() handles movement +Try to keep the calculations in this proc light. It runs every tick for every client after all!

+

You can also tell which keys are being held down now. Each client a list of keys pressed called +keys_held. Each entry is a key as a text string associated with the world.time when it was +pressed.

+

No client-set keybindings at this time, but it shouldn't be too hard if someone wants.

+

Notes about certain keys:

+
    +
  • Tab has client-sided behavior but acts normally
  • +
  • T, O, and M move focus to the input when pressed. This fires the keyUp macro right away.
  • +
  • \ needs to be escaped in the dmf so any usage is \\
  • +
+

You cannot TICK_CHECK or check world.tick_usage inside of procs called by key down and up +events. They happen outside of a byond tick and have no meaning there. Key looping +works correctly since it's part of a subsystem, not direct input.

+ + + diff --git a/code/modules/lighting/emissive_blocker.html b/code/modules/lighting/emissive_blocker.html new file mode 100644 index 0000000000000..ac5570dcd1e66 --- /dev/null +++ b/code/modules/lighting/emissive_blocker.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/lighting/emissive_blocker.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/lighting/emissive_blocker.dm + +

+ + +
/atom/movable/emissive_blockerInternal atom that copies an appearance on to the blocker plane
+ + + diff --git a/code/modules/lighting/lighting_mask/lighting_mask.html b/code/modules/lighting/lighting_mask/lighting_mask.html new file mode 100644 index 0000000000000..4f2daecce4caa --- /dev/null +++ b/code/modules/lighting/lighting_mask/lighting_mask.html @@ -0,0 +1,41 @@ + + + + + + + code/modules/lighting/lighting_mask/lighting_mask.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/modules/lighting/lighting_mask/lighting_mask.dm + +

+ + + + + + + +
LIGHTING_MASK_RADIUSLighting mask sprite radius in tiles
LIGHTING_MASK_SPRITE_SIZELighting mask sprite diameter in pixels
/atom/movable/lighting_mask/flickerFlickering lighting mask
/atom/movable/lighting_mask/conicalConical Light mask
/atom/movable/lighting_mask/rotatingRotating Light mask
/atom/movable/lighting_mask/rotating_conicalrotating light mask, but only pointing in one direction

Define Details

+

LIGHTING_MASK_RADIUS + + +

+

Lighting mask sprite radius in tiles

LIGHTING_MASK_SPRITE_SIZE + + +

+

Lighting mask sprite diameter in pixels

+ + + diff --git a/code/modules/lighting/lighting_mask/lighting_mask_holder.html b/code/modules/lighting/lighting_mask/lighting_mask_holder.html new file mode 100644 index 0000000000000..30e98b0970377 --- /dev/null +++ b/code/modules/lighting/lighting_mask/lighting_mask_holder.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/lighting/lighting_mask/lighting_mask_holder.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/lighting/lighting_mask/lighting_mask_holder.dm + +

+ + +
/obj/effect/lighting_mask_holderHolder for lighting mask, this is done for ensuing correct render as a viscontents
+ + + diff --git a/code/modules/lighting/lighting_mask/shadow_calculator.html b/code/modules/lighting/lighting_mask/shadow_calculator.html new file mode 100644 index 0000000000000..ca867727ce80a --- /dev/null +++ b/code/modules/lighting/lighting_mask/shadow_calculator.html @@ -0,0 +1,40 @@ + + + + + + + code/modules/lighting/lighting_mask/shadow_calculator.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/modules/lighting/lighting_mask/shadow_calculator.dm + +

+ + + + + +
RADIUS_BASED_OFFSETEyeball number for radius based offsets do not touch
COORD_LIST_ADDInserts a coord list into a grouped list
/proc/extend_line_to_radiusgets a line from a x and y, to the offset x and y of length radius

Define Details

+

COORD_LIST_ADD + + + +

+

Inserts a coord list into a grouped list

RADIUS_BASED_OFFSET + + +

+

Eyeball number for radius based offsets do not touch

+ + + diff --git a/code/modules/lighting/lighting_turf.html b/code/modules/lighting/lighting_turf.html new file mode 100644 index 0000000000000..c53f36984dc27 --- /dev/null +++ b/code/modules/lighting/lighting_turf.html @@ -0,0 +1,37 @@ + + + + + + + code/modules/lighting/lighting_turf.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/modules/lighting/lighting_turf.dm + +

+ + +
LIGHT_POWER_ESTIMATIONEstimates the light power based on the alpha of the light and the range. +Assumes a linear fallout at (0, alpha/255) to (range, 0) +Used for lightig mask lumcount calculations

Define Details

+

LIGHT_POWER_ESTIMATION + + + +

+

Estimates the light power based on the alpha of the light and the range. +Assumes a linear fallout at (0, alpha/255) to (range, 0) +Used for lightig mask lumcount calculations

+ + + diff --git a/code/modules/logging/log_category.html b/code/modules/logging/log_category.html new file mode 100644 index 0000000000000..dbccf1fd4f1e2 --- /dev/null +++ b/code/modules/logging/log_category.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/logging/log_category.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/logging/log_category.dm + +

+ + + +
/datum/log_categoryThe main datum that contains all log entries for a category
/datum/log_category/backup_category_not_foundBackup log category to catch attempts to log to a category that doesn't exist
+ + + diff --git a/code/modules/logging/log_entry.html b/code/modules/logging/log_entry.html new file mode 100644 index 0000000000000..04250b4a30607 --- /dev/null +++ b/code/modules/logging/log_entry.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/logging/log_entry.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/logging/log_entry.dm + +

+ + +
/datum/log_entryA datum which contains log information.
+ + + diff --git a/code/modules/logging/log_holder.html b/code/modules/logging/log_holder.html new file mode 100644 index 0000000000000..7fa7b5a0672a2 --- /dev/null +++ b/code/modules/logging/log_holder.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/logging/log_holder.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/logging/log_holder.dm + +

+ + +
/datum/log_holderMain datum to manage logging actions
+ + + diff --git a/code/modules/mapping.html b/code/modules/mapping.html new file mode 100644 index 0000000000000..66f80aae4e7b9 --- /dev/null +++ b/code/modules/mapping.html @@ -0,0 +1,79 @@ + + + + + + + code/modules/mapping/README.txt - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/mapping/README.txt + +

+ + +
The code in this module originally evolved from dmm_suite and has since been
+specialized for SS13 and otherwise tweaked to fit /tg/station's needs.
+
+dmm_suite version 1.0
+	Released January 30th, 2011.
+
+NOTE: Map saving functionality removed
+
+defines the object /dmm_suite
+	- Provides the proc load_map()
+		- Loads the specified map file onto the specified z-level.
+	- provides the proc write_map()
+		- Returns a text string of the map in dmm format
+			ready for output to a file.
+	- provides the proc save_map()
+		- Returns a .dmm file if map is saved
+		- Returns FALSE if map fails to save
+
+The dmm_suite provides saving and loading of map files in BYOND's native DMM map
+format. It approximates the map saving and loading processes of the Dream Maker
+and Dream Seeker programs so as to allow editing, saving, and loading of maps at
+runtime.
+
+------------------------
+
+To save a map at runtime, create an instance of /dmm_suite, and then call
+write_map(), which accepts three arguments:
+	- A turf representing one corner of a three dimensional grid (Required).
+	- Another turf representing the other corner of the same grid (Required).
+	- Any, or a combination, of several bit flags (Optional, see documentation).
+
+The order in which the turfs are supplied does not matter, the /dmm_writer will
+determine the grid containing both, in much the same way as DM's block() function.
+write_map() will then return a string representing the saved map in dmm format;
+this string can then be saved to a file, or used for any other purose.
+
+------------------------
+
+To load a map at runtime, create an instance of /dmm_suite, and then call load_map(),
+which accepts two arguments:
+	- A .dmm file to load (Required).
+	- A number representing the z-level on which to start loading the map (Optional).
+
+The /dmm_suite will load the map file starting on the specified z-level. If no
+z-level	was specified, world.maxz will be increased so as to fit the map. Note
+that if you wish to load a map onto a z-level that already has objects on it,
+you will have to handle the removal of those objects. Otherwise the new map will
+simply load the new objects on top of the old ones.
+
+Also note that all type paths specified in the .dmm file must exist in the world's
+code, and that the /dmm_reader trusts that files to be loaded are in fact valid
+.dmm files. Errors in the .dmm format will cause runtime errors.
+
+ + + diff --git a/code/modules/mapping/mapping_helpers.html b/code/modules/mapping/mapping_helpers.html new file mode 100644 index 0000000000000..6258251017579 --- /dev/null +++ b/code/modules/mapping/mapping_helpers.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/mapping/mapping_helpers.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/mapping/mapping_helpers.dm + +

+ + +
/obj/effect/mapping_helpers/light/flickering/enable_random_flickeringenable random flickering on lights, to make this effect happen the light has be flickering in the first place
+ + + diff --git a/code/modules/mapping/preloader.html b/code/modules/mapping/preloader.html new file mode 100644 index 0000000000000..cbd494ba773cb --- /dev/null +++ b/code/modules/mapping/preloader.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/mapping/preloader.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/mapping/preloader.dm + +

+ + +
/datum/map_preloaderPreloader datum
+ + + diff --git a/code/modules/mapping/reader.html b/code/modules/mapping/reader.html new file mode 100644 index 0000000000000..abfc99c0271a6 --- /dev/null +++ b/code/modules/mapping/reader.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/mapping/reader.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/mapping/reader.dm + +

+ + + +
/proc/load_mapShortcut function to parse a map and apply it to the world.
+ + + diff --git a/code/modules/mapping/verify.html b/code/modules/mapping/verify.html new file mode 100644 index 0000000000000..9a5df31ffae67 --- /dev/null +++ b/code/modules/mapping/verify.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/mapping/verify.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/mapping/verify.dm + +

+ + +
/datum/map_reportAn error report generated by [parsed_map/check_for_errors].
+ + + diff --git a/code/modules/mining/machine_processing.html b/code/modules/mining/machine_processing.html new file mode 100644 index 0000000000000..8da1db5dbc1f3 --- /dev/null +++ b/code/modules/mining/machine_processing.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/mining/machine_processing.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/mining/machine_processing.dm + +

+ + +
/obj/machinery/mineral/processing_unit_consoleMineral processing unit console
+ + + diff --git a/code/modules/mining/machine_stacking.html b/code/modules/mining/machine_stacking.html new file mode 100644 index 0000000000000..9b11ba37cc0e0 --- /dev/null +++ b/code/modules/mining/machine_stacking.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/mining/machine_stacking.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/mining/machine_stacking.dm + +

+ + +
/obj/machinery/mineral/stacking_unit_consoleMineral stacking unit console
+ + + diff --git a/code/modules/mining/machine_unloading.html b/code/modules/mining/machine_unloading.html new file mode 100644 index 0000000000000..f3653085420be --- /dev/null +++ b/code/modules/mining/machine_unloading.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/mining/machine_unloading.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/mining/machine_unloading.dm + +

+ + +
/obj/machinery/mineral/unloading_machineUnloading unit
+ + + diff --git a/code/modules/mob/living/brain/MMI.html b/code/modules/mob/living/brain/MMI.html new file mode 100644 index 0000000000000..efb71bf615fea --- /dev/null +++ b/code/modules/mob/living/brain/MMI.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/mob/living/brain/MMI.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/mob/living/brain/MMI.dm + +

+ + +
/obj/item/mmithis code sucks dont use it
+ + + diff --git a/code/modules/mob/living/carbon/carbon_stripping.html b/code/modules/mob/living/carbon/carbon_stripping.html new file mode 100644 index 0000000000000..ded8552c364f4 --- /dev/null +++ b/code/modules/mob/living/carbon/carbon_stripping.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/mob/living/carbon/carbon_stripping.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/mob/living/carbon/carbon_stripping.dm + +

+ + +
/datum/strippable_item/handA strippable item for a hand
+ + + diff --git a/code/modules/mob/living/carbon/human/_species.html b/code/modules/mob/living/carbon/human/_species.html new file mode 100644 index 0000000000000..6892cb99ed31f --- /dev/null +++ b/code/modules/mob/living/carbon/human/_species.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/mob/living/carbon/human/_species.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/mob/living/carbon/human/_species.dm + +

+ + +
/datum/speciesThis datum handles different species in the game, such as synthetics, mothmen, combat robots, skeletons, etc. +It is used in mob/living/carbon/human to determine many things about them, including damage resistance, appearance, special behaviors, and more.
+ + + diff --git a/code/modules/mob/living/carbon/human/species_types/combat_robots.html b/code/modules/mob/living/carbon/human/species_types/combat_robots.html new file mode 100644 index 0000000000000..9c6fdb1aea9ca --- /dev/null +++ b/code/modules/mob/living/carbon/human/species_types/combat_robots.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/mob/living/carbon/human/species_types/combat_robots.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/mob/living/carbon/human/species_types/combat_robots.dm + +

+ + +
/datum/action/repair_selfLets a robot repair itself over time at the cost of being stunned and blind
+ + + diff --git a/code/modules/mob/living/carbon/xenomorph/abilities.html b/code/modules/mob/living/carbon/xenomorph/abilities.html new file mode 100644 index 0000000000000..e7ee03376b872 --- /dev/null +++ b/code/modules/mob/living/carbon/xenomorph/abilities.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/mob/living/carbon/xenomorph/abilities.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/mob/living/carbon/xenomorph/abilities.dm + +

+ + +
/datum/action/ability/xeno_action/rally_hiveRally Hive
+ + + diff --git a/code/modules/mob/living/carbon/xenomorph/castes/behemoth/abilities_behemoth.html b/code/modules/mob/living/carbon/xenomorph/castes/behemoth/abilities_behemoth.html new file mode 100644 index 0000000000000..731b847902e30 --- /dev/null +++ b/code/modules/mob/living/carbon/xenomorph/castes/behemoth/abilities_behemoth.html @@ -0,0 +1,30 @@ + + + + + + + code/modules/mob/living/carbon/xenomorph/castes/behemoth/abilities_behemoth.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/mob/living/carbon/xenomorph/castes/behemoth/abilities_behemoth.dm + +

+ + + + + +
/proc/behemoth_area_attackChecks for any atoms caught in the attack's range, and applies several effects based on the atom's type.
/proc/do_warningWarns nearby players, in any way or form, of the incoming ability and the range it will affect.
+ + + diff --git a/code/modules/mob/living/carbon/xenomorph/castes/carrier/castedatum_carrier.html b/code/modules/mob/living/carbon/xenomorph/castes/carrier/castedatum_carrier.html new file mode 100644 index 0000000000000..3a18a3c07ee85 --- /dev/null +++ b/code/modules/mob/living/carbon/xenomorph/castes/carrier/castedatum_carrier.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/mob/living/carbon/xenomorph/castes/carrier/castedatum_carrier.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/mob/living/carbon/xenomorph/castes/carrier/castedatum_carrier.dm + +

+ + +
/datum/xeno_caste/carrierDispayed number of huggers
+ + + diff --git a/code/modules/mob/living/carbon/xenomorph/castes/widow/abilities_widow.html b/code/modules/mob/living/carbon/xenomorph/castes/widow/abilities_widow.html new file mode 100644 index 0000000000000..1016a2be98f17 --- /dev/null +++ b/code/modules/mob/living/carbon/xenomorph/castes/widow/abilities_widow.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/mob/living/carbon/xenomorph/castes/widow/abilities_widow.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/mob/living/carbon/xenomorph/castes/widow/abilities_widow.dm + +

+ + +
/atom/movable/web_hookOur web hook that we throw
+ + + diff --git a/code/modules/mob/living/carbon/xenomorph/castes/wraith/abilities_wraith.html b/code/modules/mob/living/carbon/xenomorph/castes/wraith/abilities_wraith.html new file mode 100644 index 0000000000000..a2b84299c51e3 --- /dev/null +++ b/code/modules/mob/living/carbon/xenomorph/castes/wraith/abilities_wraith.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/mob/living/carbon/xenomorph/castes/wraith/abilities_wraith.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/mob/living/carbon/xenomorph/castes/wraith/abilities_wraith.dm + +

+ + + +
/proc/turf_block_checkReturn TRUE if we have a block, return FALSE otherwise
+ + + diff --git a/code/modules/mob/living/carbon/xenomorph/damage_procs.html b/code/modules/mob/living/carbon/xenomorph/damage_procs.html new file mode 100644 index 0000000000000..a79ffbdfa08a5 --- /dev/null +++ b/code/modules/mob/living/carbon/xenomorph/damage_procs.html @@ -0,0 +1,33 @@ + + + + + + + code/modules/mob/living/carbon/xenomorph/damage_procs.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/modules/mob/living/carbon/xenomorph/damage_procs.dm + +

+ + +
HANDLE_OVERHEALHandles overheal for xeno receiving damage

Define Details

+

HANDLE_OVERHEAL + + + +

+

Handles overheal for xeno receiving damage

+ + + diff --git a/code/modules/mob/living/carbon/xenomorph/evo_datum.html b/code/modules/mob/living/carbon/xenomorph/evo_datum.html new file mode 100644 index 0000000000000..c0ddbf8c1b30a --- /dev/null +++ b/code/modules/mob/living/carbon/xenomorph/evo_datum.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/mob/living/carbon/xenomorph/evo_datum.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/mob/living/carbon/xenomorph/evo_datum.dm + +

+ + + +

TODO: this needs a refactor/UI rewor at some point, we've probably bolted too much onto this over time

/datum/evolution_panelEmpty datum parent for use as evolution panel entrance.
+ + + diff --git a/code/modules/mob/living/carbon/xenomorph/facehuggers.html b/code/modules/mob/living/carbon/xenomorph/facehuggers.html new file mode 100644 index 0000000000000..985000c08aee8 --- /dev/null +++ b/code/modules/mob/living/carbon/xenomorph/facehuggers.html @@ -0,0 +1,39 @@ + + + + + + + code/modules/mob/living/carbon/xenomorph/facehuggers.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/modules/mob/living/carbon/xenomorph/facehuggers.dm + +

+ + + + + +
FACEHUGGER_DEATHAfter how much time of being active we die
IMPREGNATION_TIMETime it takes to impregnate someone
/obj/item/clothing/mask/facehuggerFacehuggers
/obj/item/clothing/mask/facehugger/combatParent type for all non-larval huggers: can't be worn, is sterile

Define Details

+

FACEHUGGER_DEATH + + +

+

After how much time of being active we die

IMPREGNATION_TIME + + +

+

Time it takes to impregnate someone

+ + + diff --git a/code/modules/mob/living/carbon/xenomorph/update_icons.html b/code/modules/mob/living/carbon/xenomorph/update_icons.html new file mode 100644 index 0000000000000..4c74b14327751 --- /dev/null +++ b/code/modules/mob/living/carbon/xenomorph/update_icons.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/mob/living/carbon/xenomorph/update_icons.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/mob/living/carbon/xenomorph/update_icons.dm + +

+ + +
/atom/movable/vis_obj/xeno_wounds/backpack_overlayUsed to display xeno wounds & equipment without rapidly switching overlays
+ + + diff --git a/code/modules/mob/living/carbon/xenomorph/xenoprocs.html b/code/modules/mob/living/carbon/xenomorph/xenoprocs.html new file mode 100644 index 0000000000000..1fbba5be1980d --- /dev/null +++ b/code/modules/mob/living/carbon/xenomorph/xenoprocs.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/mob/living/carbon/xenomorph/xenoprocs.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/mob/living/carbon/xenomorph/xenoprocs.dm + +

+ + + +
/proc/xeno_messageSend a message to all xenos. Force forces the message whether or not the hivemind is intact. Target is an atom that is pointed out to the hive. Filter list is a list of xenos we don't message.
+ + + diff --git a/code/modules/mob/living/silicon/ai/freelook.html b/code/modules/mob/living/silicon/ai/freelook.html new file mode 100644 index 0000000000000..9c11a8b6c1388 --- /dev/null +++ b/code/modules/mob/living/silicon/ai/freelook.html @@ -0,0 +1,57 @@ + + + + + + + code/modules/mob/living/silicon/ai/freelook/README.md - byond + + +
+ byond - + Modules - + Types +
+
+

WHAT IS THIS? + +

+ + +

This is a replacement for the current camera movement system, of the AI. Before this, the AI had to move between cameras and could +only see what the cameras could see. Not only this but the cameras could see through walls, which created problems. +With this, the AI controls an "AI Eye" mob, which moves just like a ghost; such as moving through walls and being invisible to players. +The AI's eye is set to this mob and then we use a system (explained below) to determine what the cameras around the AI Eye can and +cannot see. If the camera cannot see a turf, it will black it out, otherwise it won't and the AI will be able to see it. +This creates several features, such as.. no more see-through-wall cameras, easier to control camera movement, easier tracking, +the AI only being able to track mobs which are visible to a camera, only trackable mobs appearing on the mob list and many more.

+HOW IT WORKS +

It works by first creating a camera network datum. Inside of this camera network are "chunks" (which will be +explained later) and "cameras". The cameras list is kept up to date by obj/machinery/camera/Initialize(mapload) and Destroy().

+

Next the camera network has chunks. These chunks are a 16x16 tile block of turfs and cameras contained inside the chunk. +These turfs are then sorted out based on what the cameras can and cannot see. If none of the cameras can see the turf, inside +the 16x16 block, it is listed as an "obscured" turf. Meaning the AI won't be able to see it.

+HOW IT UPDATES +

The camera network uses a streaming method in order to effeciently update chunks. Since the server will have doors opening, doors closing, +turf being destroyed and other lag inducing stuff, we want to update it under certain conditions and not every tick.

+

The chunks are not created straight away, only when an AI eye moves into it's area is when it gets created. +One a chunk is created, when a non glass door opens/closes or an opacity turf is destroyed, we check to see if an AI Eye is looking in the area. +We do this with the "seenby" list, which updates everytime an AI is near a chunk. If there is an AI eye inside the area, we update the chunk +that the changed atom is inside and all surrounding chunks, since a camera's vision could leak onto another chunk. If there is no AI Eye, we instead +flag the chunk to update whenever it is loaded by an AI Eye. This is basically how the chunks update and keep it in sync. We then add some lag reducing +measures, such as an UPDATE_BUFFER which stops a chunk from updating too many times in a certain time-frame, only updating if the changed atom was blocking +sight; for example, we don't update glass airlocks or floors.

+WHERE IS EVERYTHING? +

cameranet.dm = Everything about the cameranet datum. +chunk.dm = Everything about the chunk datum. +eye.dm = Everything about the AI and the AIEye.

+CREDITS +

Initial code credit for this goes to Uristqwerty. +Debugging, functionality, all comments and porting by Giacom.

+

Everything about freelook (or what we can put in here) will be stored here.

+ + + diff --git a/code/modules/mob/living/silicon/ai/say.html b/code/modules/mob/living/silicon/ai/say.html new file mode 100644 index 0000000000000..3810b53a4fdca --- /dev/null +++ b/code/modules/mob/living/silicon/ai/say.html @@ -0,0 +1,36 @@ + + + + + + + code/modules/mob/living/silicon/ai/say.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/modules/mob/living/silicon/ai/say.dm + +

+ + + + +
VOX_DELAYMake sure that the code compiles with AI_VOX undefined +cooldown between vox announcements, divide by 10 to get the time in seconds
/proc/play_vox_wordplay vox words for mobs on our zlevel

Define Details

+

VOX_DELAY + + +

+

Make sure that the code compiles with AI_VOX undefined +cooldown between vox announcements, divide by 10 to get the time in seconds

+ + + diff --git a/code/modules/mob/mob_helpers.html b/code/modules/mob/mob_helpers.html new file mode 100644 index 0000000000000..832b4558d1979 --- /dev/null +++ b/code/modules/mob/mob_helpers.html @@ -0,0 +1,37 @@ + + + + + + + code/modules/mob/mob_helpers.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/mob/mob_helpers.dm + +

+ + + + + + + + + + + +
/proc/starsConvert random parts of a passed in message to stars
/proc/slurMakes you speak like you're drunk +todo remove, deprecated
/proc/stutterAdds stuttering to the message passed in, todo remove, deprecated
/proc/GibberishTurn text into complete gibberish!
/proc/recoil_cameraMakes a recoil-like animation on the mob camera.
+ + + diff --git a/code/modules/mob/mob_movespeed.html b/code/modules/mob/mob_movespeed.html new file mode 100644 index 0000000000000..2c5808aff9107 --- /dev/null +++ b/code/modules/mob/mob_movespeed.html @@ -0,0 +1,53 @@ + + + + + + + code/modules/mob/mob_movespeed.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/mob/mob_movespeed.dm + +

+ + + + +

How move speed for mobs works

+

Move speed is now calculated by using a list of movespeed modifiers, which is a list itself (to avoid datum overhead)

+

This gives us the ability to have multiple sources of movespeed, reliabily keep them applied and remove them when they should be

+

THey can have unique sources and a bunch of extra fancy flags that control behaviour

+

Previously trying to update move speed was a shot in the dark that usually meant mobs got stuck going faster or slower

+

This list takes the following format

+
		list(
+			id = list(
+				priority,
+				flags,
+				legacy slowdown/speedup amount,
+				conflict
+			)
+		)
+
+

WHen update movespeed is called, the list of items is iterated, according to flags priority and a bunch of conditions +this spits out a final calculated value which is used as a modifer to last_move + modifier for calculating when a mob +can next move

+

Key procs

+
/proc/movespeed_data_null_checkChecks if a move speed modifier is valid and not missing any data
+ + + diff --git a/code/modules/mob/mob_verbs.html b/code/modules/mob/mob_verbs.html new file mode 100644 index 0000000000000..9bb23ac761137 --- /dev/null +++ b/code/modules/mob/mob_verbs.html @@ -0,0 +1,30 @@ + + + + + + + code/modules/mob/mob_verbs.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/mob/mob_verbs.dm + +

+ + + +
/proc/do_eord_respawnGrabs a mob, if it's human, check uniform, if it has one just stops there, otherwise proceeds. if it's not human, creates a human mob and transfers the mind there. Proceeds to outfit either result with the loadout of various factions. +7% chance to be a separate rare strong or funny faction. Tiny additional 2% chance if that procs to be a deathsquad! +SOM and TG loadouts are handled differently, taking subtypes from the HvH loadout sets.
+ + + diff --git a/code/modules/organs/limbs.html b/code/modules/organs/limbs.html new file mode 100644 index 0000000000000..698e70b27d89f --- /dev/null +++ b/code/modules/organs/limbs.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/organs/limbs.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/organs/limbs.dm + +

+ + + +
/datum/limbEXTERNAL ORGANS
/datum/limb/chestLIMB TYPES
+ + + diff --git a/code/modules/organs/organ_internal.html b/code/modules/organs/organ_internal.html new file mode 100644 index 0000000000000..22b45525b495b --- /dev/null +++ b/code/modules/organs/organ_internal.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/organs/organ_internal.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/organs/organ_internal.dm + +

+ + + +
/datum/internal_organINTERNAL ORGANS
/datum/internal_organ/heartINTERNAL ORGANS TYPES
+ + + diff --git a/code/modules/organs/wound.html b/code/modules/organs/wound.html new file mode 100644 index 0000000000000..55c2b89491867 --- /dev/null +++ b/code/modules/organs/wound.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/organs/wound.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/organs/wound.dm + +

+ + + +
/datum/woundWOUNDS
/datum/wound/internal_bleedingINTERNAL BLEEDING
+ + + diff --git a/code/modules/power/cable.html b/code/modules/power/cable.html new file mode 100644 index 0000000000000..2b52e34bf12cc --- /dev/null +++ b/code/modules/power/cable.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/power/cable.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/power/cable.dm + +

+ + +
/obj/structure/cable/multilayermultilayer cable to connect different layers
+ + + diff --git a/code/modules/power/lighting.html b/code/modules/power/lighting.html new file mode 100644 index 0000000000000..bf640e78999a2 --- /dev/null +++ b/code/modules/power/lighting.html @@ -0,0 +1,32 @@ + + + + + + + code/modules/power/lighting.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/modules/power/lighting.dm + +

+ + +
LIGHTING_POWER_FACTORPower usage mult by luminosity

Define Details

+

LIGHTING_POWER_FACTOR + + +

+

Power usage mult by luminosity

+ + + diff --git a/code/modules/power/power.html b/code/modules/power/power.html new file mode 100644 index 0000000000000..972f084933060 --- /dev/null +++ b/code/modules/power/power.html @@ -0,0 +1,30 @@ + + + + + + + code/modules/power/power.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/power/power.dm + +

+ + + + + +
/proc/propagate_networkremove the old powernet and replace it with a new one throughout the network.
/proc/electrocute_mobDetermines how strong could be shock, deals damage to mob, uses power.
+ + + diff --git a/code/modules/projectiles/ammo_datums.html b/code/modules/projectiles/ammo_datums.html new file mode 100644 index 0000000000000..c154fc3e5a4a2 --- /dev/null +++ b/code/modules/projectiles/ammo_datums.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/projectiles/ammo_datums.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/projectiles/ammo_datums.dm + +

+ + +
/datum/ammoThis datum is the base for absolutely every ammo type in the game.
+ + + diff --git a/code/modules/projectiles/ammo_types/xenos/spits_xenoammo.html b/code/modules/projectiles/ammo_types/xenos/spits_xenoammo.html new file mode 100644 index 0000000000000..bd4341df9a350 --- /dev/null +++ b/code/modules/projectiles/ammo_types/xenos/spits_xenoammo.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/projectiles/ammo_types/xenos/spits_xenoammo.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/projectiles/ammo_types/xenos/spits_xenoammo.dm + +

+ + +
/datum/ammo/xeno/acid/heavy/scatterFor the Spitter's Scatterspit ability
+ + + diff --git a/code/modules/projectiles/gun_attachables/attachable.html b/code/modules/projectiles/gun_attachables/attachable.html new file mode 100644 index 0000000000000..a924a3d8c185f --- /dev/null +++ b/code/modules/projectiles/gun_attachables/attachable.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/projectiles/gun_attachables/attachable.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/projectiles/gun_attachables/attachable.dm + +

+ + +
/obj/item/attachable
+ + + diff --git a/code/modules/projectiles/gun_attachables/flamer.html b/code/modules/projectiles/gun_attachables/flamer.html new file mode 100644 index 0000000000000..82c50ce5a6f86 --- /dev/null +++ b/code/modules/projectiles/gun_attachables/flamer.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/projectiles/gun_attachables/flamer.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/projectiles/gun_attachables/flamer.dm + +

+ + + +
/obj/item/attachable/flamer_nozzle/wide/redFunny red wide nozzle that can fill entire screens with flames. Admeme only.
/obj/item/attachable/flamer_nozzle/longFlamer ammo is a normal ammo datum, which means we can shoot it if we want
+ + + diff --git a/code/modules/projectiles/gun_helpers.html b/code/modules/projectiles/gun_helpers.html new file mode 100644 index 0000000000000..d4826d7b79008 --- /dev/null +++ b/code/modules/projectiles/gun_helpers.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/projectiles/gun_helpers.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/projectiles/gun_helpers.dm + +

+ + + +
/proc/get_turf_on_clickcatcherHelper proc that processes a clicked target, if the target is not black tiles, it will not change it. If they are it will return the turf of the black tiles. It will return null if the object is a screen object other than black tiles.
+ + + diff --git a/code/modules/projectiles/guns/energy.html b/code/modules/projectiles/guns/energy.html new file mode 100644 index 0000000000000..c8dd544747c76 --- /dev/null +++ b/code/modules/projectiles/guns/energy.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/projectiles/guns/energy.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/projectiles/guns/energy.dm + +

+ + +
/obj/item/weapon/gun/energy/lasgun/lasrifle/standard_marine_pistolTE Standard Laser Pistol
+ + + diff --git a/code/modules/projectiles/guns/mounted.html b/code/modules/projectiles/guns/mounted.html new file mode 100644 index 0000000000000..d98302b10e6c5 --- /dev/null +++ b/code/modules/projectiles/guns/mounted.html @@ -0,0 +1,31 @@ + + + + + + + code/modules/projectiles/guns/mounted.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/projectiles/guns/mounted.dm + +

+ + + + + + +
/obj/item/storage/box/hsg_102box for storage of ammo and gun
/obj/item/weapon/gun/hsg_102HSG-102, now with full auto. It is not a superclass of deployed guns, however there are a few varients.
/obj/item/weapon/gun/hsg_102/hsg_nestUnmovable ship mounted version.
/obj/item/weapon/gun/standard_minigun/nestUnmovable ship mounted version.
/obj/item/weapon/gun/hsg_102/deathThis is my meme version, the first version of the HSG-102 to have auto-fire, revel in its presence.
+ + + diff --git a/code/modules/projectiles/magazines/mounted.html b/code/modules/projectiles/magazines/mounted.html new file mode 100644 index 0000000000000..1ff01c42c1cdb --- /dev/null +++ b/code/modules/projectiles/magazines/mounted.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/projectiles/magazines/mounted.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/projectiles/magazines/mounted.dm + +

+ + + + +
/obj/item/ammo_magazine/hsg_102Default ammo for the HSG-102.
/obj/item/ammo_magazine/hsg_102/hsg_nestThis is the one that comes in the mapbound and dropship mounted version of the HSG-102, it has a stupid amount of ammo. Even more than the ammo counter can display.
/obj/item/ammo_magazine/icc_hmgDefault ammo for the ML-91 and its export variants.
+ + + diff --git a/code/modules/projectiles/projectile.html b/code/modules/projectiles/projectile.html new file mode 100644 index 0000000000000..37e61280f020e --- /dev/null +++ b/code/modules/projectiles/projectile.html @@ -0,0 +1,30 @@ + + + + + + + code/modules/projectiles/projectile.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/projectiles/projectile.dm + +

+ + + + +
/obj/projectile/greyscale_configgreyscale support
/proc/bullet_burstFires a list of projectile objects in a circle around an atom +Arguments:
+ + + diff --git a/code/modules/projectiles/sentries.html b/code/modules/projectiles/sentries.html new file mode 100644 index 0000000000000..a297e82ce2ba9 --- /dev/null +++ b/code/modules/projectiles/sentries.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/projectiles/sentries.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/projectiles/sentries.dm + +

+ + + +
/proc/set_sentry_ignore_ListCreates the list of atoms that will be ignored by sentry target pathing
+ + + diff --git a/code/modules/reagents/chemistry.html b/code/modules/reagents/chemistry.html new file mode 100644 index 0000000000000..c4c39ab165907 --- /dev/null +++ b/code/modules/reagents/chemistry.html @@ -0,0 +1,298 @@ + + + + + + + code/modules/reagents/chemistry/readme.md - byond + + +
+ byond - + Modules - + Types +
+
+

Reagents + +

+ + +

NOTE: IF YOU UPDATE THE REAGENT-SYSTEM, ALSO UPDATE THIS README.

+Structure: +
		///////////////////          //////////////////////////
+		// Mob or object // -------> // Reagents var (datum)
+									 // Is a reference to the datum that holds the reagents.
+		///////////////////          //////////////////////////
+				|				    			 |
+	The object that holds everything.   			 V
+										reagent_list var (list)   	A List of datums, each datum is a reagent.
+
+										|        |         |
+										V          V          V
+
+											reagents (datums)	    	Reagents. I.e. Water , dylovene or mercury.
+
+Random important notes: +
An objects on_reagent_change will be called every time the objects reagents change.
+Useful if you want to update the objects icon etc.
+
+About the Holder: +
The holder (reagents datum) is the datum that holds a list of all reagents
+currently in the object.It also has all the procs needed to manipulate reagents
+
+	remove_any(amount)
+		This proc removes reagents from the holder until the passed amount
+		is matched. It'll try to remove some of ALL reagents contained.
+
+	trans_to(obj/target, amount)
+		This proc equally transfers the contents of the holder to another
+		objects holder. You need to pass it the object (not the holder) you want
+		to transfer to and the amount you want to transfer. Its return value is the
+		actual amount transfered (if one of the objects is full/empty)
+
+	trans_id_to(obj/target, reagent, amount)
+		Same as above but only for a specific reagent in the reagent list.
+		If the specified amount is greater than what is available, it will use
+		the amount of the reagent that is available. If no reagent exists, returns null.
+
+	metabolize(mob/M)
+		This proc is called by the mobs life proc. It simply calls on_mob_life for
+		all contained reagents. You shouldnt have to use this one directly.
+
+	handle_reactions()
+		This proc check all recipes and, on a match, uses them.
+		It will also call the recipe's on_reaction proc (for explosions or w/e).
+		Currently, this proc is automatically called by trans_to.
+		- Modified from the original to preserve reagent data across reactions (originally for xenoarchaeology)
+
+	isolate_reagent(reagent)
+		Pass it a reagent id and it will remove all reagents but that one.
+		It's that simple.
+
+	del_reagent(reagent)
+		Completely remove the reagent with the matching id.
+
+	reaction_fire(exposed_temp)
+		Simply calls the reaction_fire procs of all contained reagents.
+
+	update_total()
+		This one simply updates the total volume of the holder.
+		(the volume of all reagents added together)
+
+	clear_reagents()
+		This proc removes ALL reagents from the holder.
+
+	reaction(atom/A, method = TOUCH, volume_modifier = 0)
+		This proc calls the appropriate reaction procs of the reagents.
+		I.e. if A is an object, it will call the reagents reaction_obj
+		proc. The method var is used for reaction on mobs. It simply tells
+		us if the mob TOUCHed, INGESTed, or was VAPORed/PATCHed by, the reagent.
+		Since the volume can be checked in a reagents proc, you might want to
+		use the volume_modifier var to modifiy the passed value without actually
+		changing the volume of the reagents.
+		If you're not sure if you need to use this the answer is very most likely 'No'.
+		You'll want to use this proc whenever an atom first comes in
+		contact with the reagents of a holder. (in the 'splash' part of a beaker i.e.)
+		More on the reaction in the reagent part of this readme.
+
+	add_reagent(reagent, amount, data)
+		Attempts to add X of the matching reagent to the holder.
+		You wont use this much. Mostly in new procs for pre-filled
+		objects.
+
+	remove_reagent(reagent, amount)
+		The exact opposite of the add_reagent proc.
+		- Modified from original to return the reagent's data, in order to preserve reagent data across reactions (originally for xenoarchaeology)
+
+	has_reagent(reagent, amount)
+		Returns TRUE if the holder contains this reagent.
+		Or FALSE if not.
+		If you pass it an amount it will additionally check
+		if the amount is matched. This is optional.
+
+	get_reagent_amount(reagent)
+		Returns the amount of the matching reagent inside the
+		holder. Returns FALSE if the reagent is missing.
+
+	Important variables:
+
+		total_volume
+			This variable contains the total volume of all reagents in this holder.
+
+		reagent_flags
+			a bitfield used to specify the properties of the holder, such as if it's OPENCONTAINER or TRASPARENT (the volume can be examined).
+			for the bitflags and their infos, check __DEFINES/reagents.dm.
+
+		reagent_list
+			This is a list of all contained reagents. More specifically, references
+			to the reagent datums.
+
+		maximum_volume
+			This is the maximum volume of the holder.
+
+		my_atom
+			This is the weakref to the atom the holder is 'in'. Useful if you need to find the location.
+			(i.e. for explosions)
+
+About Reagents: +
Reagents are all the things you can mix and fille in bottles etc. This can be anything from
+rejuvs over water to ... iron. Each reagent also has a few procs - i'll explain those below.
+
+	reaction_mob(mob/M, method = TOUCH)
+		This is called by the holder's reation proc.
+		This version is only called when the reagent
+		reacts with a mob. The method arg should be either
+		TOUCH, INGEST, VAPOR or PATCH. You'll want to put stuff like
+		acid-facemelting in here.
+
+	reaction_obj(obj/O)
+		This is called by the holder's reation proc.
+		This version is called when the reagents reacts
+		with an object. You'll want to put stuff like
+		object melting in here ... or something. i dunno.
+
+	reaction_turf(turf/T)
+		This is called by the holder's reaction proc.
+		This version is called when the reagents reacts
+		with a turf. You'll want to put stuff like extra
+		slippery floors for lube or something in here.
+
+	on_mob_life(mob/M)
+		This proc is called everytime the mobs life proc executes.
+		This is the place where you put damage for toxins ,
+		drowsyness for sleep toxins etc etc.
+		You'll want to call the parents proc at the end by using return ..() .
+		If you don't, the chemical will stay in the mob forever -
+		unless you write your own piece of code to slowly remove it.
+		(Should be pretty easy, 1 line of code)
+
+Important variables:
+
+	holder
+		This variable contains a reference to the holder the chemical is 'in'
+
+	volume
+		This is the volume of the reagent.
+
+	id
+		The id of the reagent
+
+	name
+		The name of the reagent.
+
+	data
+		This var can be used for whatever the fuck you want. I used it for the sleep
+		toxins to make them work slowly instead of instantly. You could also use this
+		for DNA in a blood reagent or ... well whatever you want.
+
+	color
+		This is a hexadecimal color that represents the reagent outside of containers,
+		you define it as "#RRGGBB", or, red green blue. You can also define it using the
+		rgb() proc, which returns a hexadecimal value too. The color is black by default.
+
+		A good website for color calculations: http://www.psyclops.com/tools/rgb/
+
+About Recipes: +
Recipes are simple datums that contain a list of required reagents and a result.
+They also have a proc that is called when the recipe is matched.
+
+	on_reaction(datum/reagents/holder, created_volume)
+		This proc is called when the recipe is matched.
+		You'll want to add explosions etc here.
+		To find the location you'll have to do something
+		like get_turf(holder.my_atom)
+
+	name & id
+		Should be pretty obvious.
+
+	result
+		This var contains the id of the resulting reagent.
+
+	required_reagents
+		This is a list of ids of the required reagents.
+		Each id also needs an associated value that gives us the minimum required amount
+		of that reagent. The handle_reaction proc can detect mutiples of the same recipes
+		so for most cases you want to set the required amount to 1.
+
+	required_catalysts
+		This is a list of the ids of the required catalysts.
+		Functionally similar to required_reagents, it is a list of reagents that are required
+		for the reaction. However, unlike required_reagents, catalysts are NOT consumed.
+		They mearly have to be present in the container.
+
+	result_amount
+		This is the amount of the resulting reagent this recipe will produce.
+		I recommend you set this to the total volume of all required reagent.
+
+	required_temp
+		The necessary temperature required for the reaction to occur, if is_cold_recipe is TRUE,
+		it will check if the temperature is lower than the threshold, otherwise if greater.
+
+	is_cold_recipe.
+		See above.
+
+	mix_message
+		The visible message displayed upon reaction.
+
+	mix_sound
+		The sound heard upon reaction.
+
+	required_container
+		The container the recipe has to take place in in order to happen. Leave this blank/null
+		if you want the reaction to happen anywhere.
+
+	required_other
+		Basically like a reagent's data variable. You can set extra requirements for a
+		reaction with this.
+
+	hidden_from_codex
+		Wheter this reagent can be searched up through the codex or not.
+
+About the Tools: +
By default, all atom have a reagents var - but its null. if you want to use an object for the chem.
+system, that should be done by calling this convenience proc:
+
+	atom/proc/create_reagents(max_volume, new_flags, list/initial_reagents, data)
+		This will create a new reagents datum with the max_volume arg as maximum volume,
+		new_flags used as its new reagent_flags bitflags.
+		list/initial_reagents and data are both used to add the initial reagents to the holder through add_reagent_list().
+
+Other important stuff:
+
+	amount_per_transfer_from_this var
+		This var is mostly used by beakers and bottles.
+		It simply tells us how much to transfer when
+		'pouring' our reagents into something else.
+
+	/atom/proc/is_open_container()
+		checks if both is_refillable() and is_drainable() return TRUE.
+		If TRUE, you can freely use syringes, beakers etc to manipulate its reagents,
+		otherwise some functionalities may be unavailable.
+
+	/atom/proc/is_refillable()
+		checks if the reagents exist and their REFILLABLE reagents_flag is enabled
+		If TRUE, it can be freely refilled through reagent dispensers, syringes, beakers etc.
+
+	/atom/proc/is_drainable()
+		checks if the reagents exist and their DRAINABLE bitflag is enabled.
+		if TRUE, it can be freely drained to other beakers etc as long as the latters are refillable.
+
+	/atom/proc/is_injectable(allowmobs = TRUE)
+		checks if the reagents exist and their INJECTABLE or REFILLABLE bitflags are enabled.
+		if the atom happens to be a living mob and allowmobs is FALSE, it will return FALSE
+		otherwise it will check their can_inject() proc instead.
+		if TRUE, it can be freely injected by syringes, hyposprays etc.
+
+	/atom/proc/is_drawable(allowmobs = TRUE)
+		checks if the reagents exist and their DRAWABLE or DRAINABLE bitflags are enabled.
+		if the atom happens to be a living mob and allowmobs is FALSE, it will return FALSE
+		otherwise it will check their can_inject() proc instead.
+		if TRUE, its reagents can be freely drawed by syringes, hyposprays etc.
+
+ + + diff --git a/code/modules/reagents/chemistry/holder/holder.html b/code/modules/reagents/chemistry/holder/holder.html new file mode 100644 index 0000000000000..eb18a10ecb47a --- /dev/null +++ b/code/modules/reagents/chemistry/holder/holder.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/reagents/chemistry/holder/holder.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/reagents/chemistry/holder/holder.dm + +

+ + + +
/proc/get_random_reagent_idReturns a random reagent ID minus blacklisted reagents
+ + + diff --git a/code/modules/reagents/chemistry/reagents.html b/code/modules/reagents/chemistry/reagents.html new file mode 100644 index 0000000000000..fa0c69a5649d7 --- /dev/null +++ b/code/modules/reagents/chemistry/reagents.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/reagents/chemistry/reagents.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/reagents/chemistry/reagents.dm + +

+ + + + +
/datum/reagentA single reagent
/proc/pretty_string_from_reagent_listConvert reagent list to a printable string for logging etc
+ + + diff --git a/code/modules/reagents/chemistry/reagents/food.html b/code/modules/reagents/chemistry/reagents/food.html new file mode 100644 index 0000000000000..9accb1f925940 --- /dev/null +++ b/code/modules/reagents/chemistry/reagents/food.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/reagents/chemistry/reagents/food.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/reagents/chemistry/reagents/food.dm + +

+ + +
/datum/reagent/consumableFood Reagents
+ + + diff --git a/code/modules/reagents/chemistry/reagents/toxin.html b/code/modules/reagents/chemistry/reagents/toxin.html new file mode 100644 index 0000000000000..973c2a280b0e2 --- /dev/null +++ b/code/modules/reagents/chemistry/reagents/toxin.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/reagents/chemistry/reagents/toxin.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/reagents/chemistry/reagents/toxin.dm + +

+ + + +
/datum/reagent/toxinPoison stuff
/datum/reagent/toxin/scannableFor medicines that generate toxin reagent when metabolized
+ + + diff --git a/code/modules/reagents/chemistry/recipes/food_drink.html b/code/modules/reagents/chemistry/recipes/food_drink.html new file mode 100644 index 0000000000000..5c4082283694f --- /dev/null +++ b/code/modules/reagents/chemistry/recipes/food_drink.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/reagents/chemistry/recipes/food_drink.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/reagents/chemistry/recipes/food_drink.dm + +

+ + +
/datum/chemical_reaction/tofurecipeFOOD MIXTURES
+ + + diff --git a/code/modules/reagents/reagent_containers/cups/_glass_datum.html b/code/modules/reagents/reagent_containers/cups/_glass_datum.html new file mode 100644 index 0000000000000..9582be20afd13 --- /dev/null +++ b/code/modules/reagents/reagent_containers/cups/_glass_datum.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/reagents/reagent_containers/cups/_glass_datum.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/reagents/reagent_containers/cups/_glass_datum.dm + +

+ + + + +
/proc/create_glass_stylesConstructs a nested list of glass style singletons
/datum/glass_style
+ + + diff --git a/code/modules/reagents/reagent_containers/cups/bottle.html b/code/modules/reagents/reagent_containers/cups/bottle.html new file mode 100644 index 0000000000000..91e259d9ba662 --- /dev/null +++ b/code/modules/reagents/reagent_containers/cups/bottle.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/reagents/reagent_containers/cups/bottle.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/reagents/reagent_containers/cups/bottle.dm + +

+ + + +
/obj/item/reagent_containers/food/drinks/bottleAlchohol bottles! -Agouri
/obj/item/reagent_containers/food/drinks/bottle/orangejuiceJUICES AND STUFF
+ + + diff --git a/code/modules/reagents/reagent_containers/cups/drinks.html b/code/modules/reagents/reagent_containers/cups/drinks.html new file mode 100644 index 0000000000000..e188d3b2c8c6e --- /dev/null +++ b/code/modules/reagents/reagent_containers/cups/drinks.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/reagents/reagent_containers/cups/drinks.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/reagents/reagent_containers/cups/drinks.dm + +

+ + + + +
/obj/item/reagent_containers/cup/glassDrinks.
/obj/item/reagent_containers/cup/glass/coffeeDrinks
/obj/item/reagent_containers/cup/glass/flaskdrinkingglass and shaker
+ + + diff --git a/code/modules/reagents/reagent_containers/cups/glassbottle.html b/code/modules/reagents/reagent_containers/cups/glassbottle.html new file mode 100644 index 0000000000000..2af1f13e0cdbf --- /dev/null +++ b/code/modules/reagents/reagent_containers/cups/glassbottle.html @@ -0,0 +1,33 @@ + + + + + + + code/modules/reagents/reagent_containers/cups/glassbottle.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/reagents/reagent_containers/cups/glassbottle.dm + +

+ + + + + +
/proc/init_alcohol_containers////////////////////////////////////////////Alchohol bottles! -Agouri ////////////////////////// +Initializes GLOB.alcohol_containers, only containers that actually have reagents are added to the list.
/obj/item/reagent_containers/cup/glass/bottle/smallThe froth fountain that we are sticking onto the bottle
/obj/item/reagent_containers/cup/glass/bottle/juiceCartons +Subtype of glass that don't break, and share a common carton hand state. +Meant to be a subtype for use in Molotovs
+ + + diff --git a/code/modules/reagents/reagent_containers/cups/soda.html b/code/modules/reagents/reagent_containers/cups/soda.html new file mode 100644 index 0000000000000..73346a45758ab --- /dev/null +++ b/code/modules/reagents/reagent_containers/cups/soda.html @@ -0,0 +1,39 @@ + + + + + + + code/modules/reagents/reagent_containers/cups/soda.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/modules/reagents/reagent_containers/cups/soda.dm + +

+ + + +
SODA_FIZZINESS_THROWN///////////////////////soda_cans// +How much fizziness is added to the can of soda by throwing it, in percentage points
SODA_FIZZINESS_SHAKEHow much fizziness is added to the can of soda by shaking it, in percentage points

Define Details

+

SODA_FIZZINESS_SHAKE + + +

+

How much fizziness is added to the can of soda by shaking it, in percentage points

SODA_FIZZINESS_THROWN + + +

+

///////////////////////soda_cans// +How much fizziness is added to the can of soda by throwing it, in percentage points

+ + + diff --git a/code/modules/reagents/reagent_containers/dropper.html b/code/modules/reagents/reagent_containers/dropper.html new file mode 100644 index 0000000000000..d4855424219e9 --- /dev/null +++ b/code/modules/reagents/reagent_containers/dropper.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/reagents/reagent_containers/dropper.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/reagents/reagent_containers/dropper.dm + +

+ + +
/obj/item/reagent_containers/dropperDroppers.
+ + + diff --git a/code/modules/reagents/reagent_containers/food.html b/code/modules/reagents/reagent_containers/food.html new file mode 100644 index 0000000000000..9a896f6be8cd5 --- /dev/null +++ b/code/modules/reagents/reagent_containers/food.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/reagents/reagent_containers/food.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/reagents/reagent_containers/food.dm + +

+ + +
/obj/item/reagent_containers/foodDroppers. END
+ + + diff --git a/code/modules/reagents/reagent_containers/food/condiment.html b/code/modules/reagents/reagent_containers/food/condiment.html new file mode 100644 index 0000000000000..a377dd3ba1aca --- /dev/null +++ b/code/modules/reagents/reagent_containers/food/condiment.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/reagents/reagent_containers/food/condiment.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/reagents/reagent_containers/food/condiment.dm + +

+ + +
/obj/item/reagent_containers/food/condimentCondiments
+ + + diff --git a/code/modules/reagents/reagent_containers/food/drinks.html b/code/modules/reagents/reagent_containers/food/drinks.html new file mode 100644 index 0000000000000..050b80c675e15 --- /dev/null +++ b/code/modules/reagents/reagent_containers/food/drinks.html @@ -0,0 +1,30 @@ + + + + + + + code/modules/reagents/reagent_containers/food/drinks.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/reagents/reagent_containers/food/drinks.dm + +

+ + + + + +
/obj/item/reagent_containers/food/drinksDrinks.
/obj/item/reagent_containers/food/drinks/golden_cupDrinks. END
/obj/item/reagent_containers/food/drinks/milkDrinks
/obj/item/reagent_containers/food/drinks/shakerdrinkingglass and shaker
+ + + diff --git a/code/modules/reagents/reagent_containers/food/pizzapasta.html b/code/modules/reagents/reagent_containers/food/pizzapasta.html new file mode 100644 index 0000000000000..2aca5583e911a --- /dev/null +++ b/code/modules/reagents/reagent_containers/food/pizzapasta.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/reagents/reagent_containers/food/pizzapasta.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/reagents/reagent_containers/food/pizzapasta.dm + +

+ + +
/obj/item/reagent_containers/food/snacks/pizzapasta//////////////////////////////////////////////PIZZA//////////////////////////////////////// +spaghetti prototype used by all subtypes
+ + + diff --git a/code/modules/reagents/reagent_containers/food/snacks.html b/code/modules/reagents/reagent_containers/food/snacks.html new file mode 100644 index 0000000000000..ca6ad39ae5253 --- /dev/null +++ b/code/modules/reagents/reagent_containers/food/snacks.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/reagents/reagent_containers/food/snacks.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/reagents/reagent_containers/food/snacks.dm + +

+ + + + +
/obj/item/reagent_containers/food/snacks/honeycomb/////////////////////////////////////////Snacks
/obj/item/reagent_containers/food/snacks/donkpocketDONK POCKETS
/obj/item/reagent_containers/food/snacks/sliceableSliceable
+ + + diff --git a/code/modules/reagents/reagent_containers/glass.html b/code/modules/reagents/reagent_containers/glass.html new file mode 100644 index 0000000000000..623f11a21e8af --- /dev/null +++ b/code/modules/reagents/reagent_containers/glass.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/reagents/reagent_containers/glass.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/reagents/reagent_containers/glass.dm + +

+ + +
/obj/item/reagent_containers/glass(Mixing) Glass
+ + + diff --git a/code/modules/reagents/reagent_containers/hypospray.html b/code/modules/reagents/reagent_containers/hypospray.html new file mode 100644 index 0000000000000..652e2dfbb467f --- /dev/null +++ b/code/modules/reagents/reagent_containers/hypospray.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/reagents/reagent_containers/hypospray.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/reagents/reagent_containers/hypospray.dm + +

+ + +
/obj/item/reagent_containers/hyposprayHYPOSPRAY
+ + + diff --git a/code/modules/reagents/reagent_containers/pill.html b/code/modules/reagents/reagent_containers/pill.html new file mode 100644 index 0000000000000..709a7e96ed456 --- /dev/null +++ b/code/modules/reagents/reagent_containers/pill.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/reagents/reagent_containers/pill.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/reagents/reagent_containers/pill.dm + +

+ + + +
/obj/item/reagent_containers/pillPills.
/obj/item/reagent_containers/pill/dylovenePills. END
+ + + diff --git a/code/modules/reagents/reagent_containers/syringes.html b/code/modules/reagents/reagent_containers/syringes.html new file mode 100644 index 0000000000000..e9a4d4b8ffd91 --- /dev/null +++ b/code/modules/reagents/reagent_containers/syringes.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/reagents/reagent_containers/syringes.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/reagents/reagent_containers/syringes.dm + +

+ + + +

Contains Syringes and subtypes

/obj/item/reagent_containers/syringe/inaprovalineSyringes. END
+ + + diff --git a/code/modules/recycling/conveyor2.html b/code/modules/recycling/conveyor2.html new file mode 100644 index 0000000000000..ca0fc375f1b32 --- /dev/null +++ b/code/modules/recycling/conveyor2.html @@ -0,0 +1,63 @@ + + + + + + + code/modules/recycling/conveyor2.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/modules/recycling/conveyor2.dm + +

+ + + + + + + + + +
MAX_CONVEYOR_ITEMS_MOVEMax amount of items it will try move in one go
CONVEYOR_OFFIt don't go
CONVEYOR_ON_FORWARDSIt go forwards
CONVEYOR_ON_REVERSEIt go back
CONVEYOR_OPERABLEtrue if can operate (no broken segments in this belt run)
CONVEYOR_INVERTEDInverts the direction the conveyor belt moves, only particularly relevant for diagonals
CONVEYOR_IS_CONVEYINGCurrently has things scheduled for movement. Required to reduce lag
/obj/machinery/conveyor_switchthe conveyor control switch

Define Details

+

CONVEYOR_INVERTED + + +

+

Inverts the direction the conveyor belt moves, only particularly relevant for diagonals

CONVEYOR_IS_CONVEYING + + +

+

Currently has things scheduled for movement. Required to reduce lag

CONVEYOR_OFF + + +

+

It don't go

CONVEYOR_ON_FORWARDS + + +

+

It go forwards

CONVEYOR_ON_REVERSE + + +

+

It go back

CONVEYOR_OPERABLE + + +

+

true if can operate (no broken segments in this belt run)

MAX_CONVEYOR_ITEMS_MOVE + + +

+

Max amount of items it will try move in one go

+ + + diff --git a/code/modules/remote_fob/actions_misc.html b/code/modules/remote_fob/actions_misc.html new file mode 100644 index 0000000000000..075eedbca734e --- /dev/null +++ b/code/modules/remote_fob/actions_misc.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/remote_fob/actions_misc.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/remote_fob/actions_misc.dm + +

+ + +
/datum/action/innate/remote_fobPlacement Actions
+ + + diff --git a/code/modules/remote_fob/computer.html b/code/modules/remote_fob/computer.html new file mode 100644 index 0000000000000..fd265dfc0d02f --- /dev/null +++ b/code/modules/remote_fob/computer.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/remote_fob/computer.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/remote_fob/computer.dm + +

+ + +
/obj/machinery/computer/camera_advanced/remote_fobthe camera computer
+ + + diff --git a/code/modules/remote_fob/drone.html b/code/modules/remote_fob/drone.html new file mode 100644 index 0000000000000..374516dfd84b2 --- /dev/null +++ b/code/modules/remote_fob/drone.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/remote_fob/drone.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/remote_fob/drone.dm + +

+ + +
/mob/camera/aiEye/remote/fobdroneDrone Mob
+ + + diff --git a/code/modules/reqs/supply.html b/code/modules/reqs/supply.html new file mode 100644 index 0000000000000..7df32b70470bc --- /dev/null +++ b/code/modules/reqs/supply.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/reqs/supply.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/reqs/supply.dm + +

+ + + +
/proc/armored_init_guntypesim a lazy bum who cant use initial on lists, so we just load everything into a list
+ + + diff --git a/code/modules/reqs/supplypacks.html b/code/modules/reqs/supplypacks.html new file mode 100644 index 0000000000000..f51e129391599 --- /dev/null +++ b/code/modules/reqs/supplypacks.html @@ -0,0 +1,37 @@ + + + + + + + code/modules/reqs/supplypacks.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/reqs/supplypacks.dm + +

+ + + + + + + + + + + + +
/datum/supply_packs/operationsOPERATIONS
/datum/supply_packs/weaponsWEAPONS
/datum/supply_packs/explosivesEXPLOSIVES
/datum/supply_packs/armorARMOR
/datum/supply_packs/clothingCLOTHING
/datum/supply_packs/medicalMEDICAL
/datum/supply_packs/engineeringENGINEERING
/datum/supply_packs/suppliesSUPPLIES
/datum/supply_packs/importsImports
/datum/supply_packs/vehiclesVEHICLES
/datum/supply_packs/factoryFACTORY
+ + + diff --git a/code/modules/requisitions/supply_export.html b/code/modules/requisitions/supply_export.html new file mode 100644 index 0000000000000..5bdb875ccb909 --- /dev/null +++ b/code/modules/requisitions/supply_export.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/requisitions/supply_export.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/requisitions/supply_export.dm + +

+ + + +
/proc/can_sell_human_bodyReturn TRUE if the relation between the two factions are bad enough that a bounty is on the human_to_sell head
+ + + diff --git a/code/modules/shuttle/marine_dropship.html b/code/modules/shuttle/marine_dropship.html new file mode 100644 index 0000000000000..ec2d416ffe41c --- /dev/null +++ b/code/modules/shuttle/marine_dropship.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/shuttle/marine_dropship.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/shuttle/marine_dropship.dm + +

+ + +
/obj/machinery/computer/shuttle/shuttle_control/dropshipThe preferred shuttleId to link to if it exists.
+ + + diff --git a/code/modules/surgery/generic.html b/code/modules/surgery/generic.html new file mode 100644 index 0000000000000..ecb5c38b4ae07 --- /dev/null +++ b/code/modules/surgery/generic.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/surgery/generic.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/surgery/generic.dm + +

+ + +
/datum/surgery_step/generic/repairSewing people closed. Not fast, but works on corpses.
+ + + diff --git a/code/modules/surgery/surgery.html b/code/modules/surgery/surgery.html new file mode 100644 index 0000000000000..dd92162c903be --- /dev/null +++ b/code/modules/surgery/surgery.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/surgery/surgery.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/surgery/surgery.dm + +

+ + + +
/proc/init_surgerySurgery Steps - Initialize all /datum/surgery_step into a list
+ + + diff --git a/code/modules/tgchat.html b/code/modules/tgchat.html new file mode 100644 index 0000000000000..6f501b0f3514f --- /dev/null +++ b/code/modules/tgchat.html @@ -0,0 +1,46 @@ + + + + + + + code/modules/tgchat/README.md - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgchat/README.md + +

+ + +
/TG/ Chat +

/TG/ Chat, which will be referred to as TgChat from this point onwards, is a system in which we can send messages to clients in a controlled and semi-reliable manner. The standard way of sending messages to BYOND clients simply dumps whatever you output to them directly into their chat window, however BYOND allows us to load our own code on the client to change this behaviour in a way that allows us to do some pretty neat things.

+Message Format +

TgChat handles sending messages from the server to the client through the use of JSON payloads, of which the format will change depending on the type of message and the intended client endpoint. An example of the payload for chat messages is as follows:

+
{
+	"sequence": 0,
+	"content": {
+		"type": ". . .", // ?optional
+		"text": ". . .", // ?optional !atleast-one
+		"html": ". . .", // ?optional !atleast-one
+		"avoidHighlighting": 0 // ?optional
+	},
+}
+
+Reliability +

In the past there have been issues where BYOND will silently and without reason lose a message we sent to the client, to detect this and recover from it seamlessly TgChat also has a baked in reliability layer. This reliability layer is very primitive, and simply keeps track of recieved sequence numbers. Should the client recieve an unexpected sequence number TgChat asks the server to resend any missing packets.

+Ping System +

TgChat supports a round trip time ping measurement, which is displayed to the client so they can know how long it takes for their commands and inputs to reach the server. This is done by sending the client a ping request, ping/soft, which tells the client to send a ping to the server. When the server recieves said ping it sends a reply, ping/reply, to the client with a payload containing the current DateTime which the client can reference against the initial ping request.

+Chat Tabs, Local Storage, and Highlighting +

To make organizing and managing chat easier and more functional for both players and admins, TgChat has the ability to filter out messages based on their primary tag, such as individual departmental radios, to a dedicated chat tab for easier reading and comprehension. These tabs can also be configured to highlist messages based on a simple keyword search. You can set a multitude of different keywords to search for and they will be highlighting for instant alerting of the client. Said tabs, highlighting rules, and your chat history will persist thanks to use of local storage on the client. Using local storage TgChat can ensure that your preferences are saved and maintained between client restarts and switching between other /TG/ servers. Local Storage is also used to keep your chat history aswell, should you need to scroll through your chat logs.

+ + + diff --git a/code/modules/tgchat/message.html b/code/modules/tgchat/message.html new file mode 100644 index 0000000000000..8a74513967a7d --- /dev/null +++ b/code/modules/tgchat/message.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgchat/message.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgchat/message.dm + +

+ + + +
/proc/message_to_htmlMessage-related procs
+ + + diff --git a/code/modules/tgchat/to_chat.html b/code/modules/tgchat/to_chat.html new file mode 100644 index 0000000000000..61bc47cb8f7ec --- /dev/null +++ b/code/modules/tgchat/to_chat.html @@ -0,0 +1,33 @@ + + + + + + + code/modules/tgchat/to_chat.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgchat/to_chat.dm + +

+ + + + + + +

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

/proc/to_chat_immediateCircumvents the message queue and sends the message +to the recipient (target) as soon as possible.
/proc/to_chatSends the message to the recipient (target).
+ + + diff --git a/code/modules/tgs.html b/code/modules/tgs.html new file mode 100644 index 0000000000000..f9427898d8765 --- /dev/null +++ b/code/modules/tgs.html @@ -0,0 +1,40 @@ + + + + + + + code/modules/tgs/README.md - byond + + +
+ byond - + Modules - + Types +
+
+

DMAPI Internals + +

+ + +

This folder should be placed on its own inside a codebase that wishes to use the TGS DMAPI. Warranty void if modified.

+
    +
  • includes.dm is the file that should be included by DM code, it handles including the rest.
  • +
  • The core folder includes all code not directly part of any API version.
  • +
  • The other versioned folders contain code for the different DMAPI versions. +
      +
    • v3210 contains the final TGS3 API.
    • +
    • v4 is the legacy DMAPI 4 (Used in TGS 4.0.X versions).
    • +
    • v5 is the current DMAPI version used by TGS >=4.1.
    • +
    +
  • +
  • LICENSE is the MIT license for the DMAPI.
  • +
+

APIs communicate with TGS in two ways. All versions implement TGS -> DM communication using /world/Topic. DM -> TGS communication, called the bridge method, is different for each version.

+ + + diff --git a/code/modules/tgs/core.html b/code/modules/tgs/core.html new file mode 100644 index 0000000000000..c2ae6d3024b4a --- /dev/null +++ b/code/modules/tgs/core.html @@ -0,0 +1,34 @@ + + + + + + + code/modules/tgs/core/README.md - byond + + +
+ byond - + Modules - + Types +
+
+

Core DMAPI functions + +

+ + +

This folder contains all DMAPI code not directly involved in an API.

+
    +
  • _definitions.dm contains defines needed across DMAPI internals.
  • +
  • byond_world_export.dm contains the default /datum/tgs_http_handler implementation which uses world.Export().
  • +
  • core.dm contains the implementations of the /world/proc/TgsXXX() procs. Many map directly to the /datum/tgs_api functions. It also contains the /datum selection and setup code.
  • +
  • datum.dm contains the /datum/tgs_api declarations that all APIs must implement.
  • +
  • tgs_version.dm contains the /datum/tgs_version definition
  • +
+ + + diff --git a/code/modules/tgs/v3210.html b/code/modules/tgs/v3210.html new file mode 100644 index 0000000000000..f292e4686395d --- /dev/null +++ b/code/modules/tgs/v3210.html @@ -0,0 +1,31 @@ + + + + + + + code/modules/tgs/v3210/README.md - byond + + +
+ byond - + Modules - + Types +
+
+

DMAPI V3 + +

+ + +

This DMAPI implements bridge using file output which TGS monitors for.

+
    +
  • api.dm contains the bulk of the API code.
  • +
  • commands.dm contains functions relating to /datum/tgs_chat_commands.
  • +
+ + + diff --git a/code/modules/tgs/v4.html b/code/modules/tgs/v4.html new file mode 100644 index 0000000000000..ad26d651e02fb --- /dev/null +++ b/code/modules/tgs/v4.html @@ -0,0 +1,31 @@ + + + + + + + code/modules/tgs/v4/README.md - byond + + +
+ byond - + Modules - + Types +
+
+

DMAPI V4 + +

+ + +

This DMAPI implements bridge requests using file output which TGS monitors for. It has a safe mode restriction.

+
    +
  • api.dm contains the bulk of the API code.
  • +
  • commands.dm contains functions relating to /datum/tgs_chat_commands.
  • +
+ + + diff --git a/code/modules/tgs/v5.html b/code/modules/tgs/v5.html new file mode 100644 index 0000000000000..481a2ffd4c1b4 --- /dev/null +++ b/code/modules/tgs/v5.html @@ -0,0 +1,38 @@ + + + + + + + code/modules/tgs/v5/README.md - byond + + +
+ byond - + Modules - + Types +
+
+

DMAPI V5 + +

+ + +

This DMAPI implements bridge requests using HTTP GET requests to TGS. It has no security restrictions.

+
    +
  • __interop_version.dm contains the version of the API used between the DMAPI and TGS.
  • +
  • _defines.dm contains constant definitions.
  • +
  • api.dm contains the bulk of the API code.
  • +
  • bridge.dm contains functions related to making bridge requests.
  • +
  • chunking.dm contains common function for splitting large raw data sets into chunks BYOND can natively process.
  • +
  • commands.dm contains functions relating to /datum/tgs_chat_commands.
  • +
  • serializers.dm contains function to help convert interop /datums into a JSON encodable list() format.
  • +
  • topic.dm contains functions related to processing topic requests.
  • +
  • undefs.dm Undoes the work of _defines.dm.
  • +
+ + + diff --git a/code/modules/tgui/external.html b/code/modules/tgui/external.html new file mode 100644 index 0000000000000..e142308f72eb3 --- /dev/null +++ b/code/modules/tgui/external.html @@ -0,0 +1,31 @@ + + + + + + + code/modules/tgui/external.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui/external.dm + +

+ + + + +

External tgui definitions, such as src_object APIs.

+

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

/proc/tgui_TopicMiddleware for /client/Topic.
+ + + diff --git a/code/modules/tgui/states.html b/code/modules/tgui/states.html new file mode 100644 index 0000000000000..1e35f934e67c6 --- /dev/null +++ b/code/modules/tgui/states.html @@ -0,0 +1,30 @@ + + + + + + + code/modules/tgui/states.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui/states.dm + +

+ + +

Base state and helpers for states. Just does some sanity checks, +implement a proper state for in-depth checks.

+

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

+ + + diff --git a/code/modules/tgui/states/admin.html b/code/modules/tgui/states/admin.html new file mode 100644 index 0000000000000..5dba79b4a5562 --- /dev/null +++ b/code/modules/tgui/states/admin.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgui/states/admin.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui/states/admin.dm + +

+ + +

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

+ + + diff --git a/code/modules/tgui/states/always.html b/code/modules/tgui/states/always.html new file mode 100644 index 0000000000000..37baef601f71b --- /dev/null +++ b/code/modules/tgui/states/always.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgui/states/always.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui/states/always.dm + +

+ + +

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

+ + + diff --git a/code/modules/tgui/states/conscious.html b/code/modules/tgui/states/conscious.html new file mode 100644 index 0000000000000..632ad4ce2b102 --- /dev/null +++ b/code/modules/tgui/states/conscious.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgui/states/conscious.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui/states/conscious.dm + +

+ + +

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

+ + + diff --git a/code/modules/tgui/states/contained.html b/code/modules/tgui/states/contained.html new file mode 100644 index 0000000000000..0dbe45254eb15 --- /dev/null +++ b/code/modules/tgui/states/contained.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgui/states/contained.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui/states/contained.dm + +

+ + +

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

+ + + diff --git a/code/modules/tgui/states/deep_inventory.html b/code/modules/tgui/states/deep_inventory.html new file mode 100644 index 0000000000000..5781c817aaec0 --- /dev/null +++ b/code/modules/tgui/states/deep_inventory.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgui/states/deep_inventory.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui/states/deep_inventory.dm + +

+ + +

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

+ + + diff --git a/code/modules/tgui/states/default.html b/code/modules/tgui/states/default.html new file mode 100644 index 0000000000000..2e66de3dc9e1b --- /dev/null +++ b/code/modules/tgui/states/default.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgui/states/default.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui/states/default.dm + +

+ + +

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

+ + + diff --git a/code/modules/tgui/states/fun.html b/code/modules/tgui/states/fun.html new file mode 100644 index 0000000000000..e4f6d4e7aaba2 --- /dev/null +++ b/code/modules/tgui/states/fun.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgui/states/fun.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui/states/fun.dm + +

+ + +

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

+ + + diff --git a/code/modules/tgui/states/hands.html b/code/modules/tgui/states/hands.html new file mode 100644 index 0000000000000..22bdda02b764c --- /dev/null +++ b/code/modules/tgui/states/hands.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgui/states/hands.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui/states/hands.dm + +

+ + +

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

+ + + diff --git a/code/modules/tgui/states/human_adjacent.html b/code/modules/tgui/states/human_adjacent.html new file mode 100644 index 0000000000000..2973af1213c8f --- /dev/null +++ b/code/modules/tgui/states/human_adjacent.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgui/states/human_adjacent.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui/states/human_adjacent.dm + +

+ + +

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

+ + + diff --git a/code/modules/tgui/states/inventory.html b/code/modules/tgui/states/inventory.html new file mode 100644 index 0000000000000..eedb760843d8e --- /dev/null +++ b/code/modules/tgui/states/inventory.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgui/states/inventory.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui/states/inventory.dm + +

+ + +

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

+ + + diff --git a/code/modules/tgui/states/language_menu.html b/code/modules/tgui/states/language_menu.html new file mode 100644 index 0000000000000..f366bd99adc30 --- /dev/null +++ b/code/modules/tgui/states/language_menu.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgui/states/language_menu.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui/states/language_menu.dm + +

+ + +

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

+ + + diff --git a/code/modules/tgui/states/never.html b/code/modules/tgui/states/never.html new file mode 100644 index 0000000000000..c32c63022370b --- /dev/null +++ b/code/modules/tgui/states/never.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgui/states/never.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui/states/never.dm + +

+ + +

Copyright (c) 2021 Arm A. Hammer +SPDX-License-Identifier: MIT

+ + + diff --git a/code/modules/tgui/states/not_incapacitated.html b/code/modules/tgui/states/not_incapacitated.html new file mode 100644 index 0000000000000..b551d59540f6e --- /dev/null +++ b/code/modules/tgui/states/not_incapacitated.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgui/states/not_incapacitated.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui/states/not_incapacitated.dm + +

+ + +

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

+ + + diff --git a/code/modules/tgui/states/notcontained.html b/code/modules/tgui/states/notcontained.html new file mode 100644 index 0000000000000..99a143ded105a --- /dev/null +++ b/code/modules/tgui/states/notcontained.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgui/states/notcontained.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui/states/notcontained.dm + +

+ + +

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

+ + + diff --git a/code/modules/tgui/states/observer.html b/code/modules/tgui/states/observer.html new file mode 100644 index 0000000000000..4d3740b7be7c5 --- /dev/null +++ b/code/modules/tgui/states/observer.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgui/states/observer.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui/states/observer.dm + +

+ + +

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

+ + + diff --git a/code/modules/tgui/states/physical.html b/code/modules/tgui/states/physical.html new file mode 100644 index 0000000000000..db37e027f21c6 --- /dev/null +++ b/code/modules/tgui/states/physical.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgui/states/physical.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui/states/physical.dm + +

+ + +

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

+ + + diff --git a/code/modules/tgui/states/reverse_contained.html b/code/modules/tgui/states/reverse_contained.html new file mode 100644 index 0000000000000..d9d9d81009b96 --- /dev/null +++ b/code/modules/tgui/states/reverse_contained.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/tgui/states/reverse_contained.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui/states/reverse_contained.dm + +

+ + +

Not copyrighted, but magatsuchi made it.

+ + + diff --git a/code/modules/tgui/states/self.html b/code/modules/tgui/states/self.html new file mode 100644 index 0000000000000..30eb093ed924f --- /dev/null +++ b/code/modules/tgui/states/self.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgui/states/self.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui/states/self.dm + +

+ + +

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

+ + + diff --git a/code/modules/tgui/states/zlevel.html b/code/modules/tgui/states/zlevel.html new file mode 100644 index 0000000000000..6c6b75e8c5c06 --- /dev/null +++ b/code/modules/tgui/states/zlevel.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgui/states/zlevel.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui/states/zlevel.dm + +

+ + +

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

+ + + diff --git a/code/modules/tgui/status_composers.html b/code/modules/tgui/status_composers.html new file mode 100644 index 0000000000000..0fa6f83834eaf --- /dev/null +++ b/code/modules/tgui/status_composers.html @@ -0,0 +1,56 @@ + + + + + + + code/modules/tgui/status_composers.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui/status_composers.dm + +

+ + + + + + + + + + + + + + + + + + + +
/proc/default_ui_stateThe sane defaults for a UI such as a computer or a machine.
/proc/ui_status_user_is_adjacentReturns a UI status such that users adjacent to source will be able to interact, +far away users will be able to see, and anyone farther won't see anything. +Dead users will receive updates no matter what, though you likely want to add +a [ui_status_only_living] check for finer observer interactions.
/proc/ui_status_only_livingReturns a UI status such that the dead will be able to watch, but not interact.
/proc/ui_status_user_is_abledReturns a UI status such that users with debilitating conditions, such as +being dead or not having power for silicons, will not be able to interact. +Being dead will disable UI, being incapacitated will continue updating it, +and anything else will make it interactive.
/proc/ui_status_user_has_free_handsReturns a UI status such that those without blocked hands will be able to interact, +but everyone else can only watch.
/proc/ui_status_user_is_advanced_tool_userReturns a UI status such that advanced tool users will be able to interact, +but everyone else can only watch.
/proc/ui_status_silicon_has_accessReturns a UI status such that silicons will be able to interact with whatever +they would have access to if this was a machine. For example, AIs can +interact if there's cameras with wireless control is enabled.
/proc/ui_status_user_is_conscious_and_lying_downReturns UI_INTERACTIVE if the user is conscious and lying down. +Returns UI_UPDATE otherwise.
/proc/ui_status_user_strictly_adjacentReturn UI_INTERACTIVE if the user is strictly adjacent to the target atom, whether they can see it or not. +Return UI_CLOSE otherwise.
+ + + diff --git a/code/modules/tgui/tgui.html b/code/modules/tgui/tgui.html new file mode 100644 index 0000000000000..987069d88cbd9 --- /dev/null +++ b/code/modules/tgui/tgui.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/tgui/tgui.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui/tgui.dm + +

+ + + +

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

/datum/tguitgui datum (represents a UI).
+ + + diff --git a/code/modules/tgui/tgui_window.html b/code/modules/tgui/tgui_window.html new file mode 100644 index 0000000000000..9192d1d73d7df --- /dev/null +++ b/code/modules/tgui/tgui_window.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgui/tgui_window.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui/tgui_window.dm + +

+ + +

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

+ + + diff --git a/code/modules/tgui_input/alert.html b/code/modules/tgui_input/alert.html new file mode 100644 index 0000000000000..3ff5e636c02a7 --- /dev/null +++ b/code/modules/tgui_input/alert.html @@ -0,0 +1,30 @@ + + + + + + + code/modules/tgui_input/alert.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui_input/alert.dm + +

+ + + + +
/proc/tgui_alertCreates a TGUI alert window and returns the user's response.
/datum/tgui_alertDatum used for instantiating and using a TGUI-controlled modal that prompts the user with +a message and has buttons for responses.
+ + + diff --git a/code/modules/tgui_input/checkboxes.html b/code/modules/tgui_input/checkboxes.html new file mode 100644 index 0000000000000..d3250f69f1c65 --- /dev/null +++ b/code/modules/tgui_input/checkboxes.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/tgui_input/checkboxes.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui_input/checkboxes.dm + +

+ + + + +
/proc/tgui_input_checkboxes
/datum/tgui_checkbox_inputWindow for tgui_input_checkboxes
+ + + diff --git a/code/modules/tgui_input/list.html b/code/modules/tgui_input/list.html new file mode 100644 index 0000000000000..77e2efdd821ba --- /dev/null +++ b/code/modules/tgui_input/list.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/tgui_input/list.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui_input/list.dm + +

+ + + + +
/proc/tgui_input_listCreates a TGUI input list window and returns the user's response.
/datum/tgui_list_inputClient does NOT have tgui_input on: Returns regular input
+ + + diff --git a/code/modules/tgui_input/number.html b/code/modules/tgui_input/number.html new file mode 100644 index 0000000000000..ac64a5887b25d --- /dev/null +++ b/code/modules/tgui_input/number.html @@ -0,0 +1,30 @@ + + + + + + + code/modules/tgui_input/number.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui_input/number.dm + +

+ + + + +
/proc/tgui_input_numberCreates a TGUI window with a number input. Returns the user's response as num | null.
/datum/tgui_input_numberDatum used for instantiating and using a TGUI-controlled number input that prompts the user with +a message and has an input for number entry.
+ + + diff --git a/code/modules/tgui_input/say_modal/modal.html b/code/modules/tgui_input/say_modal/modal.html new file mode 100644 index 0000000000000..835ec9a39119e --- /dev/null +++ b/code/modules/tgui_input/say_modal/modal.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/tgui_input/say_modal/modal.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui_input/say_modal/modal.dm + +

+ + +
/datum/tgui_sayThe tgui say modal. This initializes an input window which hides until +the user presses one of the speech hotkeys. Once something is entered, it will +delegate the speech to the proper channel.
+ + + diff --git a/code/modules/tgui_input/text.html b/code/modules/tgui_input/text.html new file mode 100644 index 0000000000000..b606d17aca10e --- /dev/null +++ b/code/modules/tgui_input/text.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/tgui_input/text.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui_input/text.dm + +

+ + + + +
/proc/tgui_input_textCreates a TGUI window with a text input. Returns the user's response.
/datum/tgui_input_texttgui_input_text
+ + + diff --git a/code/modules/tgui_panel/audio.html b/code/modules/tgui_panel/audio.html new file mode 100644 index 0000000000000..2dda8e0ab297e --- /dev/null +++ b/code/modules/tgui_panel/audio.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgui_panel/audio.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui_panel/audio.dm + +

+ + +

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

+ + + diff --git a/code/modules/tgui_panel/external.html b/code/modules/tgui_panel/external.html new file mode 100644 index 0000000000000..dabc9d68dc8f1 --- /dev/null +++ b/code/modules/tgui_panel/external.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tgui_panel/external.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui_panel/external.dm + +

+ + +

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

+ + + diff --git a/code/modules/tgui_panel/telemetry.html b/code/modules/tgui_panel/telemetry.html new file mode 100644 index 0000000000000..07e848cf9320b --- /dev/null +++ b/code/modules/tgui_panel/telemetry.html @@ -0,0 +1,41 @@ + + + + + + + code/modules/tgui_panel/telemetry.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/modules/tgui_panel/telemetry.dm + +

+ + + + +

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

TGUI_TELEMETRY_MAX_CONNECTIONSMaximum number of connection records allowed to analyze. +Should match the value set in the browser.
TGUI_TELEMETRY_RESPONSE_WINDOWMaximum time allocated for sending a telemetry packet.

Define Details

+

TGUI_TELEMETRY_MAX_CONNECTIONS + + +

+

Maximum number of connection records allowed to analyze. +Should match the value set in the browser.

TGUI_TELEMETRY_RESPONSE_WINDOW + + +

+

Maximum time allocated for sending a telemetry packet.

+ + + diff --git a/code/modules/tgui_panel/tgui_panel.html b/code/modules/tgui_panel/tgui_panel.html new file mode 100644 index 0000000000000..9513fd3b1756c --- /dev/null +++ b/code/modules/tgui_panel/tgui_panel.html @@ -0,0 +1,30 @@ + + + + + + + code/modules/tgui_panel/tgui_panel.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tgui_panel/tgui_panel.dm + +

+ + + +

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

/datum/tgui_paneltgui_panel datum +Hosts tgchat and other nice features.
+ + + diff --git a/code/modules/tutorials/_tutorial.html b/code/modules/tutorials/_tutorial.html new file mode 100644 index 0000000000000..2ff3701a6784a --- /dev/null +++ b/code/modules/tutorials/_tutorial.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/tutorials/_tutorial.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tutorials/_tutorial.dm + +

+ + + +
/datum/tutorialThe base for a contextual tutorial. +In order to give a tutorial to someone, use SStutorials.suggest_tutorial(user, /datum/tutorial/subtype)
/datum/tutorial_managerA singleton that manages when to create tutorials of a specific tutorial type.
+ + + diff --git a/code/modules/tutorials/tutorials/drop.html b/code/modules/tutorials/tutorials/drop.html new file mode 100644 index 0000000000000..a50d3060fca9b --- /dev/null +++ b/code/modules/tutorials/tutorials/drop.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tutorials/tutorials/drop.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tutorials/tutorials/drop.dm + +

+ + +
/datum/tutorial/dropTutorial for showing how to drop items. +Fired when clicking on an item with another item with a filled inactive hand.
+ + + diff --git a/code/modules/tutorials/tutorials/switch_hands.html b/code/modules/tutorials/tutorials/switch_hands.html new file mode 100644 index 0000000000000..e59047eca1cfb --- /dev/null +++ b/code/modules/tutorials/tutorials/switch_hands.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/tutorials/tutorials/switch_hands.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/tutorials/tutorials/switch_hands.dm + +

+ + +
/datum/tutorial/switch_handsTutorial for showing how to switch hands. +Fired when clicking on an item with another item with an empty inactive hand.
+ + + diff --git a/code/modules/unit_tests.html b/code/modules/unit_tests.html new file mode 100644 index 0000000000000..d10d024f1debb --- /dev/null +++ b/code/modules/unit_tests.html @@ -0,0 +1,71 @@ + + + + + + + code/modules/unit_tests/README.md - byond + + +
+ byond - + Modules - + Types +
+
+

Unit Tests + +

+ + +
What is unit testing? +

Unit tests are automated code to verify that parts of the game work exactly as they should. For example, a test to make sure that the amputation surgery actually amputates the limb. These are ran every time a PR is made, and thus are very helpful for preventing bugs from cropping up in your code that would've otherwise gone unnoticed. For example, would you have thought to check that beach boys would still work the same after editing pizza? If you value your time, probably not.

+

On their most basic level, when UNIT_TESTS is defined, all subtypes of /datum/unit_test will have their Run proc executed. From here, if Fail is called at any point, then the tests will report as failed.

+How do I write one? +
    +
  1. Find a relevant file.
  2. +
+

All unit test related code is in code/modules/unit_tests. If you are adding a new test for a surgery, for example, then you'd open surgeries.dm. If a relevant file does not exist, simply create one in this folder, then #include it in _unit_tests.dm.

+
    +
  1. Create the unit test.
  2. +
+

To make a new unit test, you simply need to define a /datum/unit_test.

+

For example, let's suppose that we are creating a test to make sure a proc square correctly raises inputs to the power of two. We'd start with first:

+
/datum/unit_test/square/Run()
+
+

This defines our new unit test, /datum/unit_test/square. Inside this function, we're then going to run through whatever we want to check. Tests provide a few assertion functions to make this easy. For now, we're going to use TEST_ASSERT_EQUAL.

+
/datum/unit_test/square/Run()
+    TEST_ASSERT_EQUAL(square(3), 9, "square(3) did not return 9")
+    TEST_ASSERT_EQUAL(square(4), 16, "square(4) did not return 16")
+
+

As you can hopefully tell, we're simply checking if the output of square matches the output we are expecting. If the test fails, it'll report the error message given as well as whatever the actual output was.

+
    +
  1. Run the unit test
  2. +
+

Open code/_compile_options.dm and uncomment the following line.

+
//#define UNIT_TESTS			//If this is uncommented, we do a single run though of the game setup and tear down process with unit tests in between
+
+

Then, run tgmc.dmb in Dream Daemon. Don't bother trying to connect, you won't need to. You'll be able to see the outputs of all the tests. You'll get to see which tests failed and for what reason. If they all pass, you're set!

+How to think about tests +

Unit tests exist to prevent bugs that would happen in a real game. Thus, they should attempt to emulate the game world wherever possible. For example, the quick swap sanity test emulates a real scenario of the bug it fixed occurring by creating a character and giving it real items. The unrecommended alternative would be to create special test-only items. This isn't a hard rule, the reagent method exposure tests create a test-only reagent for example, but do keep it in mind.

+

Unit tests should also be just that--testing units of code. For example, instead of having one massive test for reagents, there are instead several smaller tests for testing exposure, metabolization, etc.

+The unit testing API +

You can find more information about all of these from their respective doc comments, but for a brief overview:

+

/datum/unit_test - The base for all tests to be ran. Subtypes must override Run(). New() and Destroy() can be used for setup and teardown. To fail, use Fail(reason).

+

/datum/unit_test/proc/allocate(type, ...) - Allocates an instance of the provided type with the given arguments. Is automatically destroyed when the test is over. Commonly seen in the form of var/mob/living/carbon/human/human = allocate(/mob/living/carbon/human).

+

TEST_ASSERT(assertion, reason) - Stops the unit test and fails if the assertion is not met. For example: TEST_ASSERT(powered(), "Machine is not powered").

+

TEST_ASSERT_EQUAL(a, b, message) - Same as TEST_ASSERT, but checks if a == b. If not, gives a helpful message showing what both a and b were. For example: TEST_ASSERT_EQUAL(2 + 2, 4, "The universe is falling apart before our eyes!").

+

TEST_ASSERT_NOTEQUAL(a, b, message) - Same as TEST_ASSERT_EQUAL, but reversed.

+

TEST_FOCUS(test_path) - Only run the test provided within the parameters. Useful for reducing noise. For example, if we only want to run our example square test, we can add TEST_FOCUS(/datum/unit_test/square). Should never be pushed in a pull request--you will be laughed at.

+Final Notes +
    +
  • Writing tests before you attempt to fix the bug can actually speed up development a lot! It means you don't have to go in game and folllow the same exact steps manually every time. This process is known as "TDD" (test driven development). Write the test first, make sure it fails, then start work on the fix/feature, and you'll know you're done when your tests pass. If you do try this, do make sure to confirm in a non-testing environment just to double check.
  • +
  • Make sure that your tests don't accidentally call RNG functions like prob. Since RNG is seeded during tests, you may not realize you have until someone else makes a PR and the tests fail!
  • +
  • Do your best not to change the behavior of non-testing code during tests. While it may sometimes be necessary in the case of situations such as the above, it is still a slippery slope that can lead to the code you're testing being too different from the production environment to be useful.
  • +
+ + + diff --git a/code/modules/unit_tests/_unit_tests.html b/code/modules/unit_tests/_unit_tests.html new file mode 100644 index 0000000000000..f8aa31daf6596 --- /dev/null +++ b/code/modules/unit_tests/_unit_tests.html @@ -0,0 +1,84 @@ + + + + + + + code/modules/unit_tests/_unit_tests.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/modules/unit_tests/_unit_tests.dm + +

+ + + + + + + + + +
TEST_FAILFor advanced cases, fail unconditionally but don't return (so a test can return multiple results)
TEST_ASSERTAsserts that a condition is true +If the condition is not true, fails the test
TEST_ASSERT_NOTNULLAsserts that a parameter is not null
TEST_ASSERT_NULLAsserts that a parameter is null
TEST_ASSERT_EQUALAsserts that the two parameters passed are equal, fails otherwise +Optionally allows an additional message in the case of a failure
TEST_ASSERT_NOTEQUALAsserts that the two parameters passed are not equal, fails otherwise +Optionally allows an additional message in the case of a failure
TEST_FOCUSOnly run the test provided within the parentheses +This is useful for debugging when you want to reduce noise, but should never be pushed +Intended to be used in the manner of TEST_FOCUS(/datum/unit_test/math)
UNIT_TEST_PASSEDConstants indicating unit test completion status

Define Details

+

TEST_ASSERT + + + +

+

Asserts that a condition is true +If the condition is not true, fails the test

TEST_ASSERT_EQUAL + + + +

+

Asserts that the two parameters passed are equal, fails otherwise +Optionally allows an additional message in the case of a failure

TEST_ASSERT_NOTEQUAL + + + +

+

Asserts that the two parameters passed are not equal, fails otherwise +Optionally allows an additional message in the case of a failure

TEST_ASSERT_NOTNULL + + + +

+

Asserts that a parameter is not null

TEST_ASSERT_NULL + + + +

+

Asserts that a parameter is null

TEST_FAIL + + + +

+

For advanced cases, fail unconditionally but don't return (so a test can return multiple results)

TEST_FOCUS + + + +

+

Only run the test provided within the parentheses +This is useful for debugging when you want to reduce noise, but should never be pushed +Intended to be used in the manner of TEST_FOCUS(/datum/unit_test/math)

UNIT_TEST_PASSED + + +

+

Constants indicating unit test completion status

+ + + diff --git a/code/modules/unit_tests/chat_filter.html b/code/modules/unit_tests/chat_filter.html new file mode 100644 index 0000000000000..249834b1f7bac --- /dev/null +++ b/code/modules/unit_tests/chat_filter.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/unit_tests/chat_filter.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/unit_tests/chat_filter.dm + +

+ + +
/datum/unit_test/chat_filter_sanityTests the sanity of the chat filter, ensuring it properly blocks words and gives the reason
+ + + diff --git a/code/modules/unit_tests/connect_loc.html b/code/modules/unit_tests/connect_loc.html new file mode 100644 index 0000000000000..908e46467e887 --- /dev/null +++ b/code/modules/unit_tests/connect_loc.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/unit_tests/connect_loc.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/unit_tests/connect_loc.dm + +

+ + + + +
/datum/unit_test/connect_loc_basicTest that the connect_loc element handles basic movement cases
/datum/unit_test/connect_loc_change_turfTest that the connect_loc element handles turf changes
/datum/unit_test/connect_loc_multiple_on_turfTests that multiple objects can have connect_loc on the same turf without runtimes.
+ + + diff --git a/code/modules/unit_tests/create_and_destroy.html b/code/modules/unit_tests/create_and_destroy.html new file mode 100644 index 0000000000000..a86fb33f8448c --- /dev/null +++ b/code/modules/unit_tests/create_and_destroy.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/unit_tests/create_and_destroy.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/unit_tests/create_and_destroy.dm + +

+ + +
/datum/unit_test/create_and_destroyDelete one of every type, sleep a while, then check to see if anything has gone fucky
+ + + diff --git a/code/modules/unit_tests/dcs_get_id_from_elements.html b/code/modules/unit_tests/dcs_get_id_from_elements.html new file mode 100644 index 0000000000000..119636bf56d4c --- /dev/null +++ b/code/modules/unit_tests/dcs_get_id_from_elements.html @@ -0,0 +1,34 @@ + + + + + + + code/modules/unit_tests/dcs_get_id_from_elements.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/unit_tests/dcs_get_id_from_elements.dm + +

+ + +
/datum/unit_test/dcs_get_id_from_argumentsBase type doesn't have a seed type +Base type doesn't have a list of stuff to spawn +Base type doesn't have a list of weapons to spawn +Base type that is missing a lot of stuff needed, let's just not +Base type doesn't have any variations in it's variation list +Base type with no disk type +forcespawned abstract type for vehicles, will never spawn outside of it +Tests that DCS' GetIdFromArguments works as expected with standard and odd cases
+ + + diff --git a/code/modules/unit_tests/drink_icons.html b/code/modules/unit_tests/drink_icons.html new file mode 100644 index 0000000000000..daaa231d6fdab --- /dev/null +++ b/code/modules/unit_tests/drink_icons.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/unit_tests/drink_icons.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/unit_tests/drink_icons.dm + +

+ + + + +
/datum/unit_test/glass_style_iconsUnit tests all glass style datums with icons / icon states that those are valid and not missing.
/datum/unit_test/glass_style_functionalityUnit tests glass style datums are applied to drinking glasses
/datum/unit_test/drink_iconsUnit tests glass subtypes have a valid icon setup
+ + + diff --git a/code/modules/unit_tests/focus_only_tests.html b/code/modules/unit_tests/focus_only_tests.html new file mode 100644 index 0000000000000..5a5be09b23c94 --- /dev/null +++ b/code/modules/unit_tests/focus_only_tests.html @@ -0,0 +1,33 @@ + + + + + + + code/modules/unit_tests/focus_only_tests.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/unit_tests/focus_only_tests.dm + +

+ + + +
/datum/unit_test/focus_onlyThese tests perform no behavior of their own, and have their tests offloaded onto other procs. +This is useful in cases like in build_appearance_list where we want to know if any fail, +but is not useful to right a test for. +This file exists so that you can change any of these to TEST_FOCUS and only check for that test. +For example, change /datum/unit_test/focus_only/invalid_overlays to TEST_FOCUS(/datum/unit_test/focus_only/invalid_overlays), +and you will only test the check for invalid overlays in appearance building.
/datum/unit_test/focus_only/bad_cooking_crafting_iconsChecks for bad icon / icon state setups in cooking crafting menu
+ + + diff --git a/code/modules/unit_tests/implanting.html b/code/modules/unit_tests/implanting.html new file mode 100644 index 0000000000000..98c767d8fcb65 --- /dev/null +++ b/code/modules/unit_tests/implanting.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/unit_tests/implanting.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/unit_tests/implanting.dm + +

+ + +
/datum/unit_test/implantingImplants a human to make sure it effectively is inserted and deleted.
+ + + diff --git a/code/modules/unit_tests/mapping.html b/code/modules/unit_tests/mapping.html new file mode 100644 index 0000000000000..999b0ed0f92c9 --- /dev/null +++ b/code/modules/unit_tests/mapping.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/unit_tests/mapping.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/unit_tests/mapping.dm + +

+ + +
/datum/unit_test/log_mappingConveys all log_mapping messages as unit test failures, as they all indicate mapping problems.
+ + + diff --git a/code/modules/unit_tests/tgui_create_message.html b/code/modules/unit_tests/tgui_create_message.html new file mode 100644 index 0000000000000..692d5cd159d87 --- /dev/null +++ b/code/modules/unit_tests/tgui_create_message.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/unit_tests/tgui_create_message.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/unit_tests/tgui_create_message.dm + +

+ + +
/datum/unit_test/tgui_create_messageTest that TGUI_CREATE_MESSAGE is correctly implemented
+ + + diff --git a/code/modules/unit_tests/tutorial_sanity.html b/code/modules/unit_tests/tutorial_sanity.html new file mode 100644 index 0000000000000..87b76844adef5 --- /dev/null +++ b/code/modules/unit_tests/tutorial_sanity.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/unit_tests/tutorial_sanity.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/unit_tests/tutorial_sanity.dm + +

+ + +
/datum/unit_test/tutorial_sanityVerifies that every tutorial has properly set variables
+ + + diff --git a/code/modules/unit_tests/verify_emoji_names.html b/code/modules/unit_tests/verify_emoji_names.html new file mode 100644 index 0000000000000..2d0fe1d203243 --- /dev/null +++ b/code/modules/unit_tests/verify_emoji_names.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/unit_tests/verify_emoji_names.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/unit_tests/verify_emoji_names.dm + +

+ + +
/datum/unit_test/verify_emoji_namesApparently, spritesheets (or maybe how the CSS backend works) do not respond well to icon_state names that are just pure numbers (which was a behavior in emoji.dmi). +In case we add more emoji, let's just make sure that we don't have any pure numbers in the emoji.dmi file if we ever add more.
+ + + diff --git a/code/modules/vehicles/_hitbox.html b/code/modules/vehicles/_hitbox.html new file mode 100644 index 0000000000000..7bd36850a5e34 --- /dev/null +++ b/code/modules/vehicles/_hitbox.html @@ -0,0 +1,32 @@ + + + + + + + code/modules/vehicles/_hitbox.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/vehicles/_hitbox.dm + +

+ + + +
/obj/hitboxHITBOX +The core of multitile. Acts as a relay for damage and stops people from walking onto the multitle sprite +has changed bounds and as thus must always be forcemoved so it doesnt break everything +I would use pixel movement but the maptick caused by it is way too high and a fake tile based movement might work? but I want this to at least pretend to be generic +Thus we just use this relay. it's an obj so we can make sure all the damage procs that work on root also work on the hitbox
/obj/hitbox/medium2x2 hitbox version
+ + + diff --git a/code/modules/vehicles/armored/armored_actions.html b/code/modules/vehicles/armored/armored_actions.html new file mode 100644 index 0000000000000..d2ac5bb1ec892 --- /dev/null +++ b/code/modules/vehicles/armored/armored_actions.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/vehicles/armored/armored_actions.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/vehicles/armored/armored_actions.dm + +

+ + +
/datum/action/vehicle/sealed/armoredyes this is a blatant mech copypaste
+ + + diff --git a/code/modules/vehicles/armored/armored_modules.html b/code/modules/vehicles/armored/armored_modules.html new file mode 100644 index 0000000000000..dee43bb5f7d79 --- /dev/null +++ b/code/modules/vehicles/armored/armored_modules.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/vehicles/armored/armored_modules.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/vehicles/armored/armored_modules.dm + +

+ + +
/obj/item/tank_moduleTANK MODULES
+ + + diff --git a/code/modules/vehicles/armored/interiors/ammo_rack.html b/code/modules/vehicles/armored/interiors/ammo_rack.html new file mode 100644 index 0000000000000..9194d1bbb3e5c --- /dev/null +++ b/code/modules/vehicles/armored/interiors/ammo_rack.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/vehicles/armored/interiors/ammo_rack.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/vehicles/armored/interiors/ammo_rack.dm + +

+ + +

Contains ammo racks for tank ammo storage

+ + + diff --git a/code/modules/vehicles/armored/som_armored_weapons.html b/code/modules/vehicles/armored/som_armored_weapons.html new file mode 100644 index 0000000000000..0775a7ea26c08 --- /dev/null +++ b/code/modules/vehicles/armored/som_armored_weapons.html @@ -0,0 +1,32 @@ + + + + + + + code/modules/vehicles/armored/som_armored_weapons.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/modules/vehicles/armored/som_armored_weapons.dm + +

+ + +
CARRONADE_BEAM_TIMEActual time for the visual beam effect

Define Details

+

CARRONADE_BEAM_TIME + + +

+

Actual time for the visual beam effect

+ + + diff --git a/code/modules/vehicles/armored/som_tank.html b/code/modules/vehicles/armored/som_tank.html new file mode 100644 index 0000000000000..e81919d45e212 --- /dev/null +++ b/code/modules/vehicles/armored/som_tank.html @@ -0,0 +1,32 @@ + + + + + + + code/modules/vehicles/armored/som_tank.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/modules/vehicles/armored/som_tank.dm + +

+ + +
SOM_TANK_HOVER_HEIGHTpixel_y offset for drop shadow filter

Define Details

+

SOM_TANK_HOVER_HEIGHT + + +

+

pixel_y offset for drop shadow filter

+ + + diff --git a/code/modules/vehicles/mecha/_mecha.html b/code/modules/vehicles/mecha/_mecha.html new file mode 100644 index 0000000000000..f2895d79a8774 --- /dev/null +++ b/code/modules/vehicles/mecha/_mecha.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/vehicles/mecha/_mecha.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/vehicles/mecha/_mecha.dm + +

+ + +
/obj/vehicle/sealed/mechaWELCOME TO MECHA.DM, ENJOY YOUR STAY
+ + + diff --git a/code/modules/vehicles/mecha/combat/greyscale/greyscale_constructor.html b/code/modules/vehicles/mecha/combat/greyscale/greyscale_constructor.html new file mode 100644 index 0000000000000..4d6d0b97ac50a --- /dev/null +++ b/code/modules/vehicles/mecha/combat/greyscale/greyscale_constructor.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/vehicles/mecha/combat/greyscale/greyscale_constructor.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/vehicles/mecha/combat/greyscale/greyscale_constructor.dm + +

+ + + +
/proc/generate_greyscale_weapons_datagenerates the static list data containig all printable mech equipment modules for greyscale
+ + + diff --git a/code/modules/vehicles/mecha/combat/greyscale/greyscale_limbs.html b/code/modules/vehicles/mecha/combat/greyscale/greyscale_limbs.html new file mode 100644 index 0000000000000..5dae125c68ef7 --- /dev/null +++ b/code/modules/vehicles/mecha/combat/greyscale/greyscale_limbs.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/vehicles/mecha/combat/greyscale/greyscale_limbs.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/vehicles/mecha/combat/greyscale/greyscale_limbs.dm + +

+ + +
/datum/mech_limb/headMECH HEAD
+ + + diff --git a/code/modules/vehicles/mecha/combat/savannah_ivanov.html b/code/modules/vehicles/mecha/combat/savannah_ivanov.html new file mode 100644 index 0000000000000..817b3b80e50ce --- /dev/null +++ b/code/modules/vehicles/mecha/combat/savannah_ivanov.html @@ -0,0 +1,45 @@ + + + + + + + code/modules/vehicles/mecha/combat/savannah_ivanov.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/modules/vehicles/mecha/combat/savannah_ivanov.dm + +

+ + + + + + + +
SKYFALL_SINGLE_CHARGE_TIMEhow much time between charge_level going up by 1
SKYFALL_CHARGELEVEL_LAUNCHenough charge level to take off, basically done charging
TOTAL_SKYFALL_LEAP_TIMEhow much time you're in the air
/obj/vehicle/sealed/mecha/combat/savannah_ivanov
/datum/action/vehicle/sealed/mecha/skyfallSavannah Skyfall
/obj/effect/skyfall_landingzone

Define Details

+

SKYFALL_CHARGELEVEL_LAUNCH + + +

+

enough charge level to take off, basically done charging

SKYFALL_SINGLE_CHARGE_TIME + + +

+

how much time between charge_level going up by 1

TOTAL_SKYFALL_LEAP_TIME + + +

+

how much time you're in the air

+ + + diff --git a/code/modules/vehicles/mecha/equipment/mecha_equipment.html b/code/modules/vehicles/mecha/equipment/mecha_equipment.html new file mode 100644 index 0000000000000..3d5f27027a542 --- /dev/null +++ b/code/modules/vehicles/mecha/equipment/mecha_equipment.html @@ -0,0 +1,28 @@ + + + + + + + code/modules/vehicles/mecha/equipment/mecha_equipment.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/vehicles/mecha/equipment/mecha_equipment.dm + +

+ + +
/obj/item/mecha_parts/mecha_equipmentMecha Equipment +All mech equippables are currently childs of this
+ + + diff --git a/code/modules/vehicles/mecha/equipment/tools/other_tools.html b/code/modules/vehicles/mecha/equipment/tools/other_tools.html new file mode 100644 index 0000000000000..1cf18a3e9b0a4 --- /dev/null +++ b/code/modules/vehicles/mecha/equipment/tools/other_tools.html @@ -0,0 +1,29 @@ + + + + + + + code/modules/vehicles/mecha/equipment/tools/other_tools.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/vehicles/mecha/equipment/tools/other_tools.dm + +

+ + + + +
/obj/item/mecha_parts/mecha_equipment/armorARMOR BOOSTER MODULES
/obj/item/mecha_parts/mecha_equipment/repair_droidREPAIR DROID
/obj/item/mecha_parts/mecha_equipment/generatorGENERATOR
+ + + diff --git a/code/modules/vehicles/mecha/equipment/weapons/greyscale_weapons.html b/code/modules/vehicles/mecha/equipment/weapons/greyscale_weapons.html new file mode 100644 index 0000000000000..240a7b0299d5a --- /dev/null +++ b/code/modules/vehicles/mecha/equipment/weapons/greyscale_weapons.html @@ -0,0 +1,35 @@ + + + + + + + code/modules/vehicles/mecha/equipment/weapons/greyscale_weapons.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/vehicles/mecha/equipment/weapons/greyscale_weapons.dm + +

+ + +

Greyscale mech equipment file

+

Basically all equipment that you can add onto a mech should go here +naming scheme is [Greek titan/titan relative] + [weapon type] +when setting variance remember that it's negatively modified by the arm it's attached to +note that weapon vars are not the same as guns +Notably: +No autoburst var, uses basic var instead +only one firemode per gun +equip_cooldown gets overriden unless propjectile is thrown

+ + + diff --git a/code/modules/vehicles/mecha/mecha_actions.html b/code/modules/vehicles/mecha/mecha_actions.html new file mode 100644 index 0000000000000..8f575e8893ed6 --- /dev/null +++ b/code/modules/vehicles/mecha/mecha_actions.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/vehicles/mecha/mecha_actions.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/vehicles/mecha/mecha_actions.dm + +

+ + +
/datum/action/vehicle/sealed/mecha/swap_seatswap seats, for two person mecha
+ + + diff --git a/code/modules/vehicles/mecha/mecha_damage.html b/code/modules/vehicles/mecha/mecha_damage.html new file mode 100644 index 0000000000000..f67cbe339578f --- /dev/null +++ b/code/modules/vehicles/mecha/mecha_damage.html @@ -0,0 +1,36 @@ + + + + + + + code/modules/vehicles/mecha/mecha_damage.dm - byond + + +
+ byond - + Modules - + Types +
+
+

Mecha defence explanation + +

+ + +

Mechs focus is on a more heavy-but-slower damage approach +For this they have the following mechanics

+Backstab +

Basically the tldr is that mechs are less flexible so we encourage good positioning, pretty simple

+Armor modules +

Pretty simple, adds armor, you can choose against what

+Internal damage +

When taking damage will force you to take some time to repair, encourages improvising in a fight +Targetting different def zones will damage them to encurage a more strategic approach to fights +where they target the "dangerous" modules

+ + + diff --git a/code/modules/vehicles/mecha/mecha_defense.html b/code/modules/vehicles/mecha/mecha_defense.html new file mode 100644 index 0000000000000..b2e355f74981a --- /dev/null +++ b/code/modules/vehicles/mecha/mecha_defense.html @@ -0,0 +1,36 @@ + + + + + + + code/modules/vehicles/mecha/mecha_defense.dm - byond + + +
+ byond - + Modules - + Types +
+
+

Mecha defence explanation + +

+ + +

Mechs focus is on a more heavy-but-slower damage approach +For this they have the following mechanics

+Backstab +

Basically the tldr is that mechs are less flexible so we encourage good positioning, pretty simple

+Armor modules +

Pretty simple, adds armor, you can choose against what

+Internal damage +

When taking damage will force you to take some time to repair, encourages improvising in a fight +Targetting different def zones will damage them to encurage a more strategic approach to fights +where they target the "dangerous" modules

+ + + diff --git a/code/modules/vehicles/mecha/mecha_parts.html b/code/modules/vehicles/mecha/mecha_parts.html new file mode 100644 index 0000000000000..07e3b863d04e0 --- /dev/null +++ b/code/modules/vehicles/mecha/mecha_parts.html @@ -0,0 +1,36 @@ + + + + + + + code/modules/vehicles/mecha/mecha_parts.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/vehicles/mecha/mecha_parts.dm + +

+ + + + + + + + + + + +
/obj/item/mecha_partsMecha Parts
/obj/item/mecha_parts/chassis/ripleyRipley
/obj/item/mecha_parts/chassis/firefighterFirefighter
/obj/item/mecha_parts/chassis/odysseusOdysseus
/obj/item/mecha_parts/chassis/gygaxGygax
/obj/item/mecha_parts/chassis/durandDurand
/obj/item/mecha_parts/chassis/clarkeClarke
/obj/item/mecha_parts/chassis/honkerHONK
/obj/item/mecha_parts/chassis/phazonPhazon
/obj/item/circuitboard/mechaCircuitboards
+ + + diff --git a/code/modules/vehicles/mecha/mecha_ui.html b/code/modules/vehicles/mecha/mecha_ui.html new file mode 100644 index 0000000000000..a4774f66356b9 --- /dev/null +++ b/code/modules/vehicles/mecha/mecha_ui.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/vehicles/mecha/mecha_ui.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/vehicles/mecha/mecha_ui.dm + +

+ + +
/atom/movable/screen/mech_viewA preview of the mech for the UI
+ + + diff --git a/code/modules/vehicles/mecha/mecha_wreckage.html b/code/modules/vehicles/mecha/mecha_wreckage.html new file mode 100644 index 0000000000000..0430d11ce76c3 --- /dev/null +++ b/code/modules/vehicles/mecha/mecha_wreckage.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/vehicles/mecha/mecha_wreckage.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/vehicles/mecha/mecha_wreckage.dm + +

+ + +
/obj/structure/mecha_wreckageMecha wreckage
+ + + diff --git a/code/modules/vehicles/motorbike.html b/code/modules/vehicles/motorbike.html new file mode 100644 index 0000000000000..75bb4a28f2783 --- /dev/null +++ b/code/modules/vehicles/motorbike.html @@ -0,0 +1,33 @@ + + + + + + + code/modules/vehicles/motorbike.dm - byond + + +
+ byond - + Modules - + Types + — Define Details
+
+

code/modules/vehicles/motorbike.dm + +

+ + + +
LOW_FUEL_LEFT_MESSAGEFuel limit when you will recieve an alert for low fuel message
/obj/item/sidecarSidecar that when attached lets you put two people on the bike

Define Details

+

LOW_FUEL_LEFT_MESSAGE + + +

+

Fuel limit when you will recieve an alert for low fuel message

+ + + diff --git a/code/modules/vehicles/train.html b/code/modules/vehicles/train.html new file mode 100644 index 0000000000000..cfd89f6958182 --- /dev/null +++ b/code/modules/vehicles/train.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/vehicles/train.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/vehicles/train.dm + +

+ + +
/obj/vehicle/trainbroken and in need of refactor
+ + + diff --git a/code/modules/vehicles/unmanned/unmanned_droid.html b/code/modules/vehicles/unmanned/unmanned_droid.html new file mode 100644 index 0000000000000..a48dcc0ec6550 --- /dev/null +++ b/code/modules/vehicles/unmanned/unmanned_droid.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/vehicles/unmanned/unmanned_droid.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/vehicles/unmanned/unmanned_droid.dm + +

+ + +
/obj/vehicle/unmanned/droid/scoutstealth droid, like the normal droid but with stealthing ability on rclick
+ + + diff --git a/code/modules/vehicles/vehicle_actions.html b/code/modules/vehicles/vehicle_actions.html new file mode 100644 index 0000000000000..6143be307609f --- /dev/null +++ b/code/modules/vehicles/vehicle_actions.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/vehicles/vehicle_actions.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/vehicles/vehicle_actions.dm + +

+ + +
/datum/action/vehicleACTION DATUMS
+ + + diff --git a/code/modules/vehicles/vehicle_attachments/weapon_attachments.html b/code/modules/vehicles/vehicle_attachments/weapon_attachments.html new file mode 100644 index 0000000000000..122dbf03b6c51 --- /dev/null +++ b/code/modules/vehicles/vehicle_attachments/weapon_attachments.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/vehicles/vehicle_attachments/weapon_attachments.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/vehicles/vehicle_attachments/weapon_attachments.dm + +

+ + +
/obj/item/weapon/gun/energy/lasgun/lasrifle/volkite/demi_culverinbike volkite
+ + + diff --git a/code/modules/xenomorph/maw.html b/code/modules/xenomorph/maw.html new file mode 100644 index 0000000000000..befa43b206e37 --- /dev/null +++ b/code/modules/xenomorph/maw.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/xenomorph/maw.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/xenomorph/maw.dm + +

+ + +
/datum/maw_ammonon-singleton ammo datum for maw launches. One is created every time the maw fires for every fire.
+ + + diff --git a/code/modules/xenomorph/xeno_turret.html b/code/modules/xenomorph/xeno_turret.html new file mode 100644 index 0000000000000..d1a7d3bf4fcbe --- /dev/null +++ b/code/modules/xenomorph/xeno_turret.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/xenomorph/xeno_turret.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/xenomorph/xeno_turret.dm + +

+ + +
/obj/structure/xeno/xeno_turretWe find the tunnel, looking within 10 tiles of where the user clicked, excluding src
+ + + diff --git a/code/modules/xenomorph/xenoplant.html b/code/modules/xenomorph/xenoplant.html new file mode 100644 index 0000000000000..016f1cf17c64f --- /dev/null +++ b/code/modules/xenomorph/xenoplant.html @@ -0,0 +1,27 @@ + + + + + + + code/modules/xenomorph/xenoplant.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/modules/xenomorph/xenoplant.dm + +

+ + +
/obj/structure/xeno/plantThose structures need time to grow and are supposed to be extremely weak healh-wise
+ + + diff --git a/code/world.html b/code/world.html new file mode 100644 index 0000000000000..88dd626989ed1 --- /dev/null +++ b/code/world.html @@ -0,0 +1,27 @@ + + + + + + + code/world.dm - byond + + +
+ byond - + Modules - + Types +
+
+

code/world.dm + +

+ + +
/worldUsed to find the sources of harddels, quite laggy, don't be surpised if it freezes your client for a good while
+ + + diff --git a/datum.html b/datum.html new file mode 100644 index 0000000000000..876e613b15931 --- /dev/null +++ b/datum.html @@ -0,0 +1,682 @@ + + + + + + + /datum - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

datum + + + +

+ +

The absolute base class for everything

+

A datum instantiated has no physical world prescence, use an atom if you want something +that actually lives in the world

+

Be very mindful about adding variables to this class, they are inherited by every single +thing in the entire game, and so you can easily cause memory usage to rise a lot with careless +use of variables at this level

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

_active_timersActive timers with this datum as the target
_datum_componentsComponents attached to this datum
_listen_lookupAny datum registered to receive signals from this datum is in this list
_signal_procsLazy associated list in the structure of target -> list(signal -> proctype) that are run when the datum receives that signal
_status_traitsStatus traits attached to this datum. associative list of the form: list(trait name (string) = list(source1, source2, source3,...))
cached_refA cached version of our \ref +The brunt of \ref costs are in creating entries in the string tree (a tree of immutable strings) +This avoids doing that more then once per datum by ensuring ref strings always have a reference to them after they're first pulled
cooldownsLazy associative list of currently active cooldowns.
datum_flagsDatum level flags
filter_dataList for handling persistent filters.
gc_destroyedTick count time when this object was destroyed.
open_uisOpen uis owned by this datum +Lazy, since this case is semi rare
tgui_shared_statesglobal
weak_referenceA weak reference to another datum

Procs

DestroyDefault implementation of clean-up code.
GetComponentReturn any component assigned to this datum of the given type
GetComponentsGet all components of a given type that are attached to this datum
GetExactComponentReturn any component assigned to this datum of the exact given type
RegisterSignalRegister to listen for a signal from the passed in target
RegisterSignalsRegisters multiple signals to the same proc.
RemoveComponentSourceRemoves a component source from this datum
TakeComponentTransfer this component to another parent
TopicCalled when a href for this datum is clicked
TransferComponentsTransfer all components to target
UnregisterSignalStop listening to a given signal from target
_AddComponentCreates an instance of new_type in the datum and attaches to it as parent
_AddElementFinds the singleton for the element type given and attaches it to src
_LoadComponentGet existing component of type, or create it and return a reference to it
_RemoveElementFinds the singleton for the element type given and detaches it from src +You only need additional arguments beyond the type if you're using ELEMENT_BESPOKE
_SendSignalInternal proc to handle most all of the signaling procedure
add_filter
add_filtersA version of add_filter that takes a list of filters to add rather than being individual, to limit calls to update_filters().
add_traitsProc that handles adding multiple traits to a target via a list. Must have a common source and target.
change_filter_priorityUpdates the priority of the passed filter key
deserialize_jsonDeserializes from JSON. Does not parse type.
deserialize_listAccepts a LIST from deserialize_datum. Should return whether or not the deserialization was successful.
get_filterReturns the filter associated with the passed key
get_filter_indexReturns the indice in filters of the given filter name. +If it is not found, returns null.
jatum_new_arglistGets the flat list that can be passed in a new /type(argslist(retval)) expression to recreate the datum. Must only return a list containing values that can be JATUM serialized
modify_filter
ref_search_detailsReturn info about us for reference searching purposes +Will be logged as a representation of this datum if it's a part of a search chain
remove_componentRemoves a component of a specified type
remove_filterRemoves the passed filter, or multiple filters, if supplied with a list.
remove_traitsProc that handles removing multiple traits from a target via a list. Must have a common source and target.
serialize_jsonSerializes into JSON. Does not encode type.
serialize_listReturn a list of data which can be used to investigate the datum, also ensure that you set the semver in the options list
transition_filter
ui_actpublic
ui_assetspublic
ui_closepublic
ui_datapublic
ui_hostprivate
ui_interactpublic
ui_stateprivate
ui_static_datapublic
ui_statuspublic
update_filtersSorts our filters by priority and reapplies them
update_static_datapublic
update_static_data_for_all_viewerspublic
vv_do_topicThis proc is only called if everything topic-wise is verified. The only verifications that should happen here is things like permission checks! +href_list is a reference, modifying it in these procs WILL change the rest of the proc in topic.dm of admin/view_variables! +This proc is for "high level" actions like admin heal/set species/etc/etc. The low level debugging things should go in admin/view_variables/topic_basic.dm incase this runtimes.
vv_edit_varCalled when a var is edited with the new value to change to
vv_get_dropdownGets all the dropdown options in the vv menu. +When overriding, make sure to call . = ..() first and appent to the result, that way parent items are always at the top and child items are further down. +Add seperators by doing VV_DROPDOWN_OPTION("", "---")
+

Var Details

_active_timers + + + + +

+

Active timers with this datum as the target

_datum_components + + + + +

+

Components attached to this datum

+

Lazy associated list in the structure of type -> component/list of components

_listen_lookup + + + + +

+

Any datum registered to receive signals from this datum is in this list

+

Lazy associated list in the structure of signal -> registree/list of registrees

_signal_procs + + + + +

+

Lazy associated list in the structure of target -> list(signal -> proctype) that are run when the datum receives that signal

_status_traits + + + + +

+

Status traits attached to this datum. associative list of the form: list(trait name (string) = list(source1, source2, source3,...))

cached_ref + + + + +

+

A cached version of our \ref +The brunt of \ref costs are in creating entries in the string tree (a tree of immutable strings) +This avoids doing that more then once per datum by ensuring ref strings always have a reference to them after they're first pulled

cooldowns + + + + +

+

Lazy associative list of currently active cooldowns.

+

cooldowns [ COOLDOWN_INDEX ] = add_timer() +add_timer() returns the truthy value of -1 when not stoppable, and else a truthy numeric index

datum_flags + + + + +

+

Datum level flags

filter_data + + + + +

+

List for handling persistent filters.

gc_destroyed + + + + +

+

Tick count time when this object was destroyed.

+

If this is non zero then the object has been garbage collected and is awaiting either +a hard del by the GC subsystme, or to be autocollected (if it has no references)

open_uis + + + + +

+

Open uis owned by this datum +Lazy, since this case is semi rare

tgui_shared_states + + + + +

+

global

+

Associative list of JSON-encoded shared states that were set by +tgui clients.

weak_reference + + + + +

+

A weak reference to another datum

Proc Details

Destroy +

+

Default implementation of clean-up code.

+

This should be overridden to remove all references pointing to the object being destroyed, if +you do override it, make sure to call the parent and return it's return value by default

+

Return an appropriate QDEL_HINT to modify handling of your deletion; +in most cases this is QDEL_HINT_QUEUE.

+

The base case is responsible for doing the following

+ +

Returns QDEL_HINT_QUEUE

GetComponent +

+

Return any component assigned to this datum of the given type

+

This will throw an error if it's possible to have more than one component of that type on the parent

+

Arguments:

+

GetComponents +

+

Get all components of a given type that are attached to this datum

+

Arguments:

+

GetExactComponent +

+

Return any component assigned to this datum of the exact given type

+

This will throw an error if it's possible to have more than one component of that type on the parent

+

Arguments:

+

RegisterSignal +

+

Register to listen for a signal from the passed in target

+

This sets up a listening relationship such that when the target object emits a signal +the source datum this proc is called upon, will receive a callback to the given proctype +Use PROC_REF(procname), TYPE_PROC_REF(type,procname) or GLOBAL_PROC_REF(procname) macros to validate the passed in proc at compile time. +PROC_REF for procs defined on current type or it's ancestors, TYPE_PROC_REF for procs defined on unrelated type and GLOBAL_PROC_REF for global procs. +Return values from procs registered must be a bitfield

+

Arguments:

+

RegisterSignals +

+

Registers multiple signals to the same proc.

RemoveComponentSource +

+

Removes a component source from this datum

TakeComponent +

+

Transfer this component to another parent

+

Component is taken from source datum

+

Arguments:

+

Topic +

+

Called when a href for this datum is clicked

+

Sends a COMSIG_TOPIC signal

TransferComponents +

+

Transfer all components to target

+

All components from source datum are taken

+

Arguments:

+

UnregisterSignal +

+

Stop listening to a given signal from target

+

Breaks the relationship between target and source datum, removing the callback when the signal fires

+

Doesn't care if a registration exists or not

+

Arguments:

+

_AddComponent +

+

Creates an instance of new_type in the datum and attaches to it as parent

+

Sends the COMSIG_COMPONENT_ADDED signal to the datum

+

Returns the component that was created. Or the old component in a dupe situation where COMPONENT_DUPE_UNIQUE was set

+

If this tries to add an component to an incompatible type, the component will be deleted and the result will be null. This is very unperformant, try not to do it

+

Properly handles duplicate situations based on the dupe_mode var

_AddElement +

+

Finds the singleton for the element type given and attaches it to src

_LoadComponent +

+

Get existing component of type, or create it and return a reference to it

+

Use this if the item needs to exist at the time of this call, but may not have been created before now

+

Arguments:

+

_RemoveElement +

+

Finds the singleton for the element type given and detaches it from src +You only need additional arguments beyond the type if you're using ELEMENT_BESPOKE

_SendSignal +

+

Internal proc to handle most all of the signaling procedure

+

Will runtime if used on datums with an empty lookup list

+

Use the SEND_SIGNAL define instead

add_filter +

+

add_filters +

+

A version of add_filter that takes a list of filters to add rather than being individual, to limit calls to update_filters().

add_traits +

+

Proc that handles adding multiple traits to a target via a list. Must have a common source and target.

change_filter_priority +

+

Updates the priority of the passed filter key

deserialize_json +

+

Deserializes from JSON. Does not parse type.

deserialize_list +

+

Accepts a LIST from deserialize_datum. Should return whether or not the deserialization was successful.

get_filter +

+

Returns the filter associated with the passed key

get_filter_index +

+

Returns the indice in filters of the given filter name. +If it is not found, returns null.

jatum_new_arglist +

+

Gets the flat list that can be passed in a new /type(argslist(retval)) expression to recreate the datum. Must only return a list containing values that can be JATUM serialized

modify_filter +

+

ref_search_details +

+

Return info about us for reference searching purposes +Will be logged as a representation of this datum if it's a part of a search chain

remove_component +

+

Removes a component of a specified type

remove_filter +

+

Removes the passed filter, or multiple filters, if supplied with a list.

remove_traits +

+

Proc that handles removing multiple traits from a target via a list. Must have a common source and target.

serialize_json +

+

Serializes into JSON. Does not encode type.

serialize_list +

+

Return a list of data which can be used to investigate the datum, also ensure that you set the semver in the options list

transition_filter +

+

ui_act +

+

public

+

Called on a UI when the UI receieves a href. +Think of this as Topic().

+

required action string The action/button that has been invoked by the user. +required params list A list of parameters attached to the button.

+

return bool If the user's input has been handled and the UI should update.

ui_assets +

+

public

+

Called on an object when a tgui object is being created, allowing you to +push various assets to tgui, for examples spritesheets.

+

return list List of asset datums or file paths.

ui_close +

+

public

+

Called on a UI's object when the UI is closed, not to be confused with +client/verb/uiclose(), which closes the ui window

ui_data +

+

public

+

Data to be sent to the UI. +This must be implemented for a UI to work.

+

required user mob The mob interacting with the UI.

+

return list Data to be sent to the UI.

ui_host +

+

private

+

The UI's host object (usually src_object). +This allows modules/datums to have the UI attached to them, +and be a part of another object.

ui_interact +

+

public

+

Used to open and update UIs. +If this proc is not implemented properly, the UI will not update correctly.

+

required user mob The mob who opened/is using the UI. +optional ui datum/tgui The UI to be updated, if it exists.

ui_state +

+

private

+

The UI's state controller to be used for created uis +This is a proc over a var for memory reasons

ui_static_data +

+

public

+

Static Data to be sent to the UI.

+

Static data differs from normal data in that it's large data that should be +sent infrequently. This is implemented optionally for heavy uis that would +be sending a lot of redundant data frequently. Gets squished into one +object on the frontend side, but the static part is cached.

+

required user mob The mob interacting with the UI.

+

return list Statuic Data to be sent to the UI.

ui_status +

+

public

+

Checks the UI state for a mob.

+

required user mob The mob who opened/is using the UI. +required state datum/ui_state The state to check.

+

return UI_state The state of the UI.

update_filters +

+

Sorts our filters by priority and reapplies them

update_static_data +

+

public

+

Forces an update on static data. Should be done manually whenever something +happens to change static data.

+

required user the mob currently interacting with the ui +optional ui ui to be updated

update_static_data_for_all_viewers +

+

public

+

Will force an update on static data for all viewers. +Should be done manually whenever something happens to +change static data.

vv_do_topic +

+

This proc is only called if everything topic-wise is verified. The only verifications that should happen here is things like permission checks! +href_list is a reference, modifying it in these procs WILL change the rest of the proc in topic.dm of admin/view_variables! +This proc is for "high level" actions like admin heal/set species/etc/etc. The low level debugging things should go in admin/view_variables/topic_basic.dm incase this runtimes.

vv_edit_var +

+

Called when a var is edited with the new value to change to

vv_get_dropdown +

+

Gets all the dropdown options in the vv menu. +When overriding, make sure to call . = ..() first and appent to the result, that way parent items are always at the top and child items are further down. +Add seperators by doing VV_DROPDOWN_OPTION("", "---")

+ + + diff --git a/datum/action.html b/datum/action.html new file mode 100644 index 0000000000000..ec61148f110dd --- /dev/null +++ b/datum/action.html @@ -0,0 +1,166 @@ + + + + + + + /datum/action - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

action + + + +

+ + + + + + + + + + + + + + + + + + + + +

Vars

action_typeDefines what visual references will be initialized at round-start
hiddenIs this action explicitly hidden from the owner
keybinding_signalsUsed for keybindings , use KEYBINDING_NORMAL or KEYBINDING_ALTERNATE for keybinding_activation or alternate_ability_activate
toggledUsed for keeping track of the addition of the selected/active frames
visual_referencesHolds a set of misc visual references to use with the overlay API. Always atleast one

Procs

ai_should_start_considerShould a AI element occasionally see if this ability should be used?
ai_should_useWhen called, see if based on the surroundings should the AI use this ability
alternate_action_activateSignal Handler for alternate actions
clean_actionCleans up the action if the owner is deleted
deselectDeselecting this action for use
fail_activateassumption: if no keybind ref passed you want to call normally. +would use _listen_lookup but that'd start getting cursed and overly expensive for what it is +Add it if you need it
handle_button_status_visualsA proc called on update button action for additional visuals beyond the very base
keybind_activationSignal Handler for main action
keybind_triggerHandler for what action to trigger, inherit from this and call parent before for extra actions
selectSetting this action as the active action
set_toggleDepending on the action type , toggles the selected/active frame to show without allowing stacking multiple overlays
should_showWhether the owner can see this action
update_button_iconThe cutting needs to be done /BEFORE/ the string maptext gets changed. Since byond internally recognizes it as a different image, and doesn't cut it properly
update_map_textA handler used to update the maptext and show the change immediately.
+

Var Details

action_type + + + + +

+

Defines what visual references will be initialized at round-start

hidden + + + + +

+

Is this action explicitly hidden from the owner

keybinding_signals + + + + +

+

Used for keybindings , use KEYBINDING_NORMAL or KEYBINDING_ALTERNATE for keybinding_activation or alternate_ability_activate

toggled + + + + +

+

Used for keeping track of the addition of the selected/active frames

visual_references + + + + +

+

Holds a set of misc visual references to use with the overlay API. Always atleast one

Proc Details

ai_should_start_consider +

+

Should a AI element occasionally see if this ability should be used?

ai_should_use +

+

When called, see if based on the surroundings should the AI use this ability

alternate_action_activate +

+

Signal Handler for alternate actions

clean_action +

+

Cleans up the action if the owner is deleted

deselect +

+

Deselecting this action for use

fail_activate +

+

assumption: if no keybind ref passed you want to call normally. +would use _listen_lookup but that'd start getting cursed and overly expensive for what it is +Add it if you need it

handle_button_status_visuals +

+

A proc called on update button action for additional visuals beyond the very base

keybind_activation +

+

Signal Handler for main action

keybind_trigger +

+

Handler for what action to trigger, inherit from this and call parent before for extra actions

select +

+

Setting this action as the active action

set_toggle +

+

Depending on the action type , toggles the selected/active frame to show without allowing stacking multiple overlays

should_show +

+

Whether the owner can see this action

update_button_icon +

+

The cutting needs to be done /BEFORE/ the string maptext gets changed. Since byond internally recognizes it as a different image, and doesn't cut it properly

update_map_text +

+

A handler used to update the maptext and show the change immediately.

+ + + diff --git a/datum/action/ability.html b/datum/action/ability.html new file mode 100644 index 0000000000000..040e8d60cfdfc --- /dev/null +++ b/datum/action/ability.html @@ -0,0 +1,148 @@ + + + + + + + /datum/action/ability - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

ability + + + +

+ + + + + + + + + + + + + + + + + + +

Vars

ability_costThe cost of using this ability. Typically a plasma cost for xenos
cooldown_durationStandard cooldown for this ability
cooldown_timerthe actual cooldown timer
countdownCooldown map text holder
descIf you are going to add an explanation for an ability. don't use stats, give a very brief explanation of how to use it.
gamemode_flagsflags to restrict an ability to certain gamemode
keybind_flagsspecial behavior flags for how this ability is used
target_flagsany special flags for what this ability targets
use_state_flagsbypass use limitations checked by can_use_action()

Procs

action_cooldown_checkchecks if the linked ability is on some cooldown. The action can still be activated by clicking the button
add_cooldownAdds a cooldown to this ability
clear_cooldownRemoves the cooldown
cooldown_remainingTime remaining on cooldown
get_cooldownReturns the cooldown timer
on_cooldown_finishoverride this for cooldown completion
on_xeno_upgradeAny changes when a xeno with this ability evolves
succeed_activateability cost override allows for actions/abilities to override the normal ability costs
+

Var Details

ability_cost + + + + +

+

The cost of using this ability. Typically a plasma cost for xenos

cooldown_duration + + + + +

+

Standard cooldown for this ability

cooldown_timer + + + + +

+

the actual cooldown timer

countdown + + + + +

+

Cooldown map text holder

desc + + + + +

+

If you are going to add an explanation for an ability. don't use stats, give a very brief explanation of how to use it.

gamemode_flags + + + + +

+

flags to restrict an ability to certain gamemode

keybind_flags + + + + +

+

special behavior flags for how this ability is used

target_flags + + + + +

+

any special flags for what this ability targets

use_state_flags + + + + +

+

bypass use limitations checked by can_use_action()

Proc Details

action_cooldown_check +

+

checks if the linked ability is on some cooldown. The action can still be activated by clicking the button

add_cooldown +

+

Adds a cooldown to this ability

clear_cooldown +

+

Removes the cooldown

cooldown_remaining +

+

Time remaining on cooldown

get_cooldown +

+

Returns the cooldown timer

on_cooldown_finish +

+

override this for cooldown completion

on_xeno_upgrade +

+

Any changes when a xeno with this ability evolves

succeed_activate +

+

ability cost override allows for actions/abilities to override the normal ability costs

+ + + diff --git a/datum/action/ability/activable.html b/datum/action/ability/activable.html new file mode 100644 index 0000000000000..e59880f761e22 --- /dev/null +++ b/datum/action/ability/activable.html @@ -0,0 +1,70 @@ + + + + + + + /datum/action/ability/activable - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

activable + + + +

+ + + + + + + +

Procs

can_use_abilityoverride this
deselectDeselecting this ability for use
on_deselectionAny effects on deselecting this ability
on_selectionAny effects on selecting this ability
selectSetting this ability as the active ability
use_abilitythe thing to do when the selected action ability is selected and triggered by middle_click

Proc Details

can_use_ability +

+

override this

deselect +

+

Deselecting this ability for use

on_deselection +

+

Any effects on deselecting this ability

on_selection +

+

Any effects on selecting this ability

select +

+

Setting this ability as the active ability

use_ability +

+

the thing to do when the selected action ability is selected and triggered by middle_click

+ + + diff --git a/datum/action/ability/activable/item_toggle.html b/datum/action/ability/activable/item_toggle.html new file mode 100644 index 0000000000000..caa35a4b32d15 --- /dev/null +++ b/datum/action/ability/activable/item_toggle.html @@ -0,0 +1,45 @@ + + + + + + + /datum/action/ability/activable/item_toggle - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

item_toggle + + + +

+ + + +

Vars

holder_itemthe item that has this action in its list of actions. Is not necessarily the target +e.g. gun attachment action: target = attachment, holder = gun.
use_obj_appeareanceDefines wheter we overlay the image of the obj we are linked to
+

Var Details

holder_item + + + + +

+

the item that has this action in its list of actions. Is not necessarily the target +e.g. gun attachment action: target = attachment, holder = gun.

use_obj_appeareance + + + + +

+

Defines wheter we overlay the image of the obj we are linked to

+ + + diff --git a/datum/action/ability/activable/psionic_interact.html b/datum/action/ability/activable/psionic_interact.html new file mode 100644 index 0000000000000..67d43fc6dbefe --- /dev/null +++ b/datum/action/ability/activable/psionic_interact.html @@ -0,0 +1,50 @@ + + + + + + + /datum/action/ability/activable/psionic_interact - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

psionic_interact + + + +

+ + + + +

Vars

particle_holderUsed for particles. Holds the particles instead of the mob. See particle_holder for documentation.
psi_strengthPower of psi interactions
rangeAbility range
+

Var Details

particle_holder + + + + +

+

Used for particles. Holds the particles instead of the mob. See particle_holder for documentation.

psi_strength + + + + +

+

Power of psi interactions

range + + + + +

+

Ability range

+ + + diff --git a/datum/action/ability/activable/sectoid/fuse.html b/datum/action/ability/activable/sectoid/fuse.html new file mode 100644 index 0000000000000..185250036c532 --- /dev/null +++ b/datum/action/ability/activable/sectoid/fuse.html @@ -0,0 +1,36 @@ + + + + + + + /datum/action/ability/activable/sectoid/fuse - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

fuse + + + +

+ + +

Vars

particle_holderUsed for particles. Holds the particles instead of the mob. See particle_holder for documentation.
+

Var Details

particle_holder + + + + +

+

Used for particles. Holds the particles instead of the mob. See particle_holder for documentation.

+ + + diff --git a/datum/action/ability/activable/sectoid/mindfray.html b/datum/action/ability/activable/sectoid/mindfray.html new file mode 100644 index 0000000000000..496f9ec38c6b8 --- /dev/null +++ b/datum/action/ability/activable/sectoid/mindfray.html @@ -0,0 +1,36 @@ + + + + + + + /datum/action/ability/activable/sectoid/mindfray - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

mindfray + + + +

+ + +

Vars

damagedamage of this ability
+

Var Details

damage + + + + +

+

damage of this ability

+ + + diff --git a/datum/action/ability/activable/sectoid/mindmeld.html b/datum/action/ability/activable/sectoid/mindmeld.html new file mode 100644 index 0000000000000..04d75bee8e6a8 --- /dev/null +++ b/datum/action/ability/activable/sectoid/mindmeld.html @@ -0,0 +1,71 @@ + + + + + + + /datum/action/ability/activable/sectoid/mindmeld - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

mindmeld + + + +

+ + + + + + + +

Vars

accuracy_modProjectile accuracy buff
health_modMax health buff
max_rangeRange the linkees must be to each other to benefit
speed_modMovement speed buff
stun_resistance% chance to ignore stuns

Procs

end_abilityEnds the ability if the Enhancement buff is removed.
+

Var Details

accuracy_mod + + + + +

+

Projectile accuracy buff

health_mod + + + + +

+

Max health buff

max_range + + + + +

+

Range the linkees must be to each other to benefit

speed_mod + + + + +

+

Movement speed buff

stun_resistance + + + + +

+

% chance to ignore stuns

Proc Details

end_ability +

+

Ends the ability if the Enhancement buff is removed.

+ + + diff --git a/datum/action/ability/activable/sectoid/reanimate.html b/datum/action/ability/activable/sectoid/reanimate.html new file mode 100644 index 0000000000000..989245f378ef9 --- /dev/null +++ b/datum/action/ability/activable/sectoid/reanimate.html @@ -0,0 +1,43 @@ + + + + + + + /datum/action/ability/activable/sectoid/reanimate - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

reanimate + + + +

+ + + +

Vars

particle_holderUsed for particles. Holds the particles instead of the mob. See particle_holder for documentation.
zombie_listlist of
+

Var Details

particle_holder + + + + +

+

Used for particles. Holds the particles instead of the mob. See particle_holder for documentation.

zombie_list + + + + +

+

list of

+ + + diff --git a/datum/action/ability/activable/sectoid/reknit_form.html b/datum/action/ability/activable/sectoid/reknit_form.html new file mode 100644 index 0000000000000..3035410d797fe --- /dev/null +++ b/datum/action/ability/activable/sectoid/reknit_form.html @@ -0,0 +1,43 @@ + + + + + + + /datum/action/ability/activable/sectoid/reknit_form - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

reknit_form + + + +

+ + + +

Vars

particle_holderUsed for particles. Holds the particles instead of the mob. See particle_holder for documentation.
reknit_durationdamage of this ability
+

Var Details

particle_holder + + + + +

+

Used for particles. Holds the particles instead of the mob. See particle_holder for documentation.

reknit_duration + + + + +

+

damage of this ability

+ + + diff --git a/datum/action/ability/activable/sectoid/stasis.html b/datum/action/ability/activable/sectoid/stasis.html new file mode 100644 index 0000000000000..56f535e33bd2b --- /dev/null +++ b/datum/action/ability/activable/sectoid/stasis.html @@ -0,0 +1,50 @@ + + + + + + + /datum/action/ability/activable/sectoid/stasis - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

stasis + + + +

+ + + + +

Vars

particle_holderUsed for particles. Holds the particles instead of the mob. See particle_holder for documentation.
stasis_durationDuration of effect

Procs

end_effectsends all combat-relazted effects
+

Var Details

particle_holder + + + + +

+

Used for particles. Holds the particles instead of the mob. See particle_holder for documentation.

stasis_duration + + + + +

+

Duration of effect

Proc Details

end_effects +

+

ends all combat-relazted effects

+ + + diff --git a/datum/action/ability/activable/weapon_skill.html b/datum/action/ability/activable/weapon_skill.html new file mode 100644 index 0000000000000..e3b3fee1ace2a --- /dev/null +++ b/datum/action/ability/activable/weapon_skill.html @@ -0,0 +1,43 @@ + + + + + + + /datum/action/ability/activable/weapon_skill - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

weapon_skill + + + +

+ + + +

Vars

damageDamage of this attack
penetrationPenetration of this attack
+

Var Details

damage + + + + +

+

Damage of this attack

penetration + + + + +

+

Penetration of this attack

+ + + diff --git a/datum/action/ability/activable/weapon_skill/axe_sweep.html b/datum/action/ability/activable/weapon_skill/axe_sweep.html new file mode 100644 index 0000000000000..ebae94ea8270e --- /dev/null +++ b/datum/action/ability/activable/weapon_skill/axe_sweep.html @@ -0,0 +1,43 @@ + + + + + + + /datum/action/ability/activable/weapon_skill/axe_sweep - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

axe_sweep + + + +

+ + + +

Vars

particle_holderUsed for particles. Holds the particles instead of the mob. See particle_holder for documentation.

Procs

activate_particlesHandles the activation and deactivation of particles, as well as their appearance.
+

Var Details

particle_holder + + + + +

+

Used for particles. Holds the particles instead of the mob. See particle_holder for documentation.

Proc Details

activate_particles +

+

Handles the activation and deactivation of particles, as well as their appearance.

+ + + diff --git a/datum/action/ability/activable/weapon_skill/shield_bash.html b/datum/action/ability/activable/weapon_skill/shield_bash.html new file mode 100644 index 0000000000000..0fc3fd2d610f0 --- /dev/null +++ b/datum/action/ability/activable/weapon_skill/shield_bash.html @@ -0,0 +1,35 @@ + + + + + + + /datum/action/ability/activable/weapon_skill/shield_bash - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

shield_bash + + + +

+ + +

Procs

trigger_offhandShield bashes with right click when in offhand

Proc Details

trigger_offhand +

+

Shield bashes with right click when in offhand

+ + + diff --git a/datum/action/ability/activable/weapon_skill/sword_lunge.html b/datum/action/ability/activable/weapon_skill/sword_lunge.html new file mode 100644 index 0000000000000..9d56eec5aee30 --- /dev/null +++ b/datum/action/ability/activable/weapon_skill/sword_lunge.html @@ -0,0 +1,56 @@ + + + + + + + /datum/action/ability/activable/weapon_skill/sword_lunge - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

sword_lunge + + + +

+ + + + + +

Procs

charge_completeUnregisters signals after lunge complete
do_lunge_impactActual effects of lunge impact
lunge_impactSig handler for atom impacts during lunge
movement_fxCreate an after image

Proc Details

charge_complete +

+

Unregisters signals after lunge complete

do_lunge_impact +

+

Actual effects of lunge impact

lunge_impact +

+

Sig handler for atom impacts during lunge

movement_fx +

+

Create an after image

+ + + diff --git a/datum/action/ability/activable/xeno.html b/datum/action/ability/activable/xeno.html new file mode 100644 index 0000000000000..9c1e2cd56db9e --- /dev/null +++ b/datum/action/ability/activable/xeno.html @@ -0,0 +1,43 @@ + + + + + + + /datum/action/ability/activable/xeno - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

xeno + + + +

+ + + +

Vars

xeno_ownerTypecast owner since this is used constantly

Procs

teleport_debuff_aoeCalled by many of the Wraith's teleportation effects
+

Var Details

xeno_owner + + + + +

+

Typecast owner since this is used constantly

Proc Details

teleport_debuff_aoe +

+

Called by many of the Wraith's teleportation effects

+ + + diff --git a/datum/action/ability/activable/xeno/advance.html b/datum/action/ability/activable/xeno/advance.html new file mode 100644 index 0000000000000..4a98abc9a117f --- /dev/null +++ b/datum/action/ability/activable/xeno/advance.html @@ -0,0 +1,36 @@ + + + + + + + /datum/action/ability/activable/xeno/advance - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

advance + + + +

+ + +

Vars

advance_rangeMax charge range
+

Var Details

advance_range + + + + +

+

Max charge range

+ + + diff --git a/datum/action/ability/activable/xeno/articulate.html b/datum/action/ability/activable/xeno/articulate.html new file mode 100644 index 0000000000000..88fbca7a615b6 --- /dev/null +++ b/datum/action/ability/activable/xeno/articulate.html @@ -0,0 +1,43 @@ + + + + + + + /datum/action/ability/activable/xeno/articulate - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

articulate + + + +

+ + + +

Vars

active_targetour current target
talkingWhether we should cancel instead of doing the thing when activated
+

Var Details

active_target + + + + +

+

our current target

talking + + + + +

+

Whether we should cancel instead of doing the thing when activated

+ + + diff --git a/datum/action/ability/activable/xeno/banish.html b/datum/action/ability/activable/xeno/banish.html new file mode 100644 index 0000000000000..f2d7028ed2bca --- /dev/null +++ b/datum/action/ability/activable/xeno/banish.html @@ -0,0 +1,92 @@ + + + + + + + /datum/action/ability/activable/xeno/banish - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

banish + + + +

+ + + + + + + + + + +

Vars

backup_coordinatesBackup coordinates to teleport the banished to, in case the portal gets destroyed (shuttles!!)
banish_duration_timer_idThe timer ID of any Banish currently active
banishment_targetTarget we've banished
contained_livingliving mobs in the banished object so we can check they didnt get ejected
portalSFX indicating the banished target's position
rangeHow far can you banish
reserved_areaPhantom zone reserved area

Procs

banish_deactivateEnds the effect of the Banish ability
banish_warningWarns the user when Banish's duration is about to lapse.
+

Var Details

backup_coordinates + + + + +

+

Backup coordinates to teleport the banished to, in case the portal gets destroyed (shuttles!!)

banish_duration_timer_id + + + + +

+

The timer ID of any Banish currently active

banishment_target + + + + +

+

Target we've banished

contained_living + + + + +

+

living mobs in the banished object so we can check they didnt get ejected

portal + + + + +

+

SFX indicating the banished target's position

range + + + + +

+

How far can you banish

reserved_area + + + + +

+

Phantom zone reserved area

Proc Details

banish_deactivate +

+

Ends the effect of the Banish ability

banish_warning +

+

Warns the user when Banish's duration is about to lapse.

+ + + diff --git a/datum/action/ability/activable/xeno/blink.html b/datum/action/ability/activable/xeno/blink.html new file mode 100644 index 0000000000000..e2fc50f21ce6e --- /dev/null +++ b/datum/action/ability/activable/xeno/blink.html @@ -0,0 +1,42 @@ + + + + + + + /datum/action/ability/activable/xeno/blink - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

blink + + + +

+ + + +

Procs

check_blink_target_turf_densityCheck for whether the target turf has dense objects inside
check_blink_tileCheck target Blink turf to see if it can be blinked to

Proc Details

+

Check for whether the target turf has dense objects inside

+

Check target Blink turf to see if it can be blinked to

+ + + diff --git a/datum/action/ability/activable/xeno/bombard.html b/datum/action/ability/activable/xeno/bombard.html new file mode 100644 index 0000000000000..0cc0f56071117 --- /dev/null +++ b/datum/action/ability/activable/xeno/bombard.html @@ -0,0 +1,35 @@ + + + + + + + /datum/action/ability/activable/xeno/bombard - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

bombard + + + +

+ + +

Procs

on_ranged_attackSignal proc for clicking at a distance

Proc Details

on_ranged_attack +

+

Signal proc for clicking at a distance

+ + + diff --git a/datum/action/ability/activable/xeno/charge.html b/datum/action/ability/activable/xeno/charge.html new file mode 100644 index 0000000000000..9fad6014f9b10 --- /dev/null +++ b/datum/action/ability/activable/xeno/charge.html @@ -0,0 +1,57 @@ + + + + + + + /datum/action/ability/activable/xeno/charge - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

charge + + + +

+ + + + + +

Vars

charge_rangecharge distance

Procs

charge_completeCleans up after charge is finished
mob_hitDeals with hitting mobs. Triggered by bump instead of throw impact as we want to plow past mobs
obj_hitDeals with hitting objects
+

Var Details

charge_range + + + + +

+

charge distance

Proc Details

charge_complete +

+

Cleans up after charge is finished

mob_hit +

+

Deals with hitting mobs. Triggered by bump instead of throw impact as we want to plow past mobs

obj_hit +

+

Deals with hitting objects

+ + + diff --git a/datum/action/ability/activable/xeno/charge/acid_dash.html b/datum/action/ability/activable/xeno/charge/acid_dash.html new file mode 100644 index 0000000000000..1b370a6e60c4b --- /dev/null +++ b/datum/action/ability/activable/xeno/charge/acid_dash.html @@ -0,0 +1,57 @@ + + + + + + + /datum/action/ability/activable/xeno/charge/acid_dash - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

acid_dash + + + +

+ + + + + +

Vars

last_turfThe last tile we dashed through, used when swapping with a human
recastIs this the recast
recast_availableCan we use the ability again

Procs

acid_stepsDrops an acid puddle on the current owner's tile, will do 0 damage if the owner has no acid_spray_damage
+

Var Details

last_turf + + + + +

+

The last tile we dashed through, used when swapping with a human

recast + + + + +

+

Is this the recast

recast_available + + + + +

+

Can we use the ability again

Proc Details

acid_steps +

+

Drops an acid puddle on the current owner's tile, will do 0 damage if the owner has no acid_spray_damage

+ + + diff --git a/datum/action/ability/activable/xeno/charge/fire_charge.html b/datum/action/ability/activable/xeno/charge/fire_charge.html new file mode 100644 index 0000000000000..bf41e10554a66 --- /dev/null +++ b/datum/action/ability/activable/xeno/charge/fire_charge.html @@ -0,0 +1,49 @@ + + + + + + + /datum/action/ability/activable/xeno/charge/fire_charge - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

fire_charge + + + +

+ + + + +

Procs

charge_completeCleans up after charge is finished
mob_hitDeals with hitting mobs. Triggered by bump instead of throw impact as we want to plow past mobs
obj_hitDeals with hitting objects

Proc Details

charge_complete +

+

Cleans up after charge is finished

mob_hit +

+

Deals with hitting mobs. Triggered by bump instead of throw impact as we want to plow past mobs

obj_hit +

+

Deals with hitting objects

+ + + diff --git a/datum/action/ability/activable/xeno/charge/forward_charge.html b/datum/action/ability/activable/xeno/charge/forward_charge.html new file mode 100644 index 0000000000000..cb459c61c78fe --- /dev/null +++ b/datum/action/ability/activable/xeno/charge/forward_charge.html @@ -0,0 +1,43 @@ + + + + + + + /datum/action/ability/activable/xeno/charge/forward_charge - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

forward_charge + + + +

+ + + +

Vars

windup_timeHow long is the windup before charging

Procs

decrease_do_actionDecrease the do_actions of the owner
+

Var Details

windup_time + + + + +

+

How long is the windup before charging

Proc Details

decrease_do_action +

+

Decrease the do_actions of the owner

+ + + diff --git a/datum/action/ability/activable/xeno/cocoon.html b/datum/action/ability/activable/xeno/cocoon.html new file mode 100644 index 0000000000000..d0bc577ec7771 --- /dev/null +++ b/datum/action/ability/activable/xeno/cocoon.html @@ -0,0 +1,36 @@ + + + + + + + /datum/action/ability/activable/xeno/cocoon - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

cocoon + + + +

+ + +

Vars

cocoon_production_timeIn how much time the cocoon will be ejected
+

Var Details

cocoon_production_time + + + + +

+

In how much time the cocoon will be ejected

+ + + diff --git a/datum/action/ability/activable/xeno/command_minions.html b/datum/action/ability/activable/xeno/command_minions.html new file mode 100644 index 0000000000000..23eded26083bb --- /dev/null +++ b/datum/action/ability/activable/xeno/command_minions.html @@ -0,0 +1,36 @@ + + + + + + + /datum/action/ability/activable/xeno/command_minions - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

command_minions + + + +

+ + +

Vars

minions_agressiveIf minions should be agressive
+

Var Details

minions_agressive + + + + +

+

If minions should be agressive

+ + + diff --git a/datum/action/ability/activable/xeno/earth_riser.html b/datum/action/ability/activable/xeno/earth_riser.html new file mode 100644 index 0000000000000..da93c2b17f003 --- /dev/null +++ b/datum/action/ability/activable/xeno/earth_riser.html @@ -0,0 +1,73 @@ + + + + + + + /datum/action/ability/activable/xeno/earth_riser - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

earth_riser + + + +

+ + + + + + + +

Vars

active_pillarsList that contains all Earth Pillars created by this ability.
maximum_pillarsMaximum amount of Earth Pillars that this ability can have.

Procs

change_maximum_pillarsChanges the maximum amount of Earth Pillars that can be had. +If the user has more Earth Pillars active than the new maximum, it will destroy them, from oldest to newest, until meeting the new amount.
do_abilityChecks if there's any living mobs in the target turf, displaces them if so, then creates a new Earth Pillar and adds it to the list of active pillars.
pillar_destroyedremoves the pillar from active_pillars
pillar_thrownHandles the cooldown when a pillar is actually thrown
+

Var Details

active_pillars + + + + +

+

List that contains all Earth Pillars created by this ability.

maximum_pillars + + + + +

+

Maximum amount of Earth Pillars that this ability can have.

Proc Details

change_maximum_pillars +

+

Changes the maximum amount of Earth Pillars that can be had. +If the user has more Earth Pillars active than the new maximum, it will destroy them, from oldest to newest, until meeting the new amount.

do_ability +

+

Checks if there's any living mobs in the target turf, displaces them if so, then creates a new Earth Pillar and adds it to the list of active pillars.

pillar_destroyed +

+

removes the pillar from active_pillars

pillar_thrown +

+

Handles the cooldown when a pillar is actually thrown

+ + + diff --git a/datum/action/ability/activable/xeno/essence_link.html b/datum/action/ability/activable/xeno/essence_link.html new file mode 100644 index 0000000000000..8f4680682d73b --- /dev/null +++ b/datum/action/ability/activable/xeno/essence_link.html @@ -0,0 +1,57 @@ + + + + + + + /datum/action/ability/activable/xeno/essence_link - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

essence_link + + + +

+ + + + + +

Vars

attunement_cooldownTime it takes for the attunement levels to increase.
existing_linkUsed to determine whether there is an existing Essence Link or not. Also allows access to its vars.
linked_targetThe target of an existing link, if applicable.

Procs

end_abilityEnds the ability, removing signals and buffs.
+

Var Details

attunement_cooldown + + + + +

+

Time it takes for the attunement levels to increase.

+

Used to determine whether there is an existing Essence Link or not. Also allows access to its vars.

linked_target + + + + +

+

The target of an existing link, if applicable.

Proc Details

end_ability +

+

Ends the ability, removing signals and buffs.

+ + + diff --git a/datum/action/ability/activable/xeno/hunter_mark.html b/datum/action/ability/activable/xeno/hunter_mark.html new file mode 100644 index 0000000000000..e94c2609ce6e3 --- /dev/null +++ b/datum/action/ability/activable/xeno/hunter_mark.html @@ -0,0 +1,43 @@ + + + + + + + /datum/action/ability/activable/xeno/hunter_mark - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

hunter_mark + + + +

+ + + +

Vars

marked_targetthe target marked

Procs

unset_targetNulls the target of our hunter's mark
+

Var Details

marked_target + + + + +

+

the target marked

Proc Details

unset_target +

+

Nulls the target of our hunter's mark

+ + + diff --git a/datum/action/ability/activable/xeno/impale.html b/datum/action/ability/activable/xeno/impale.html new file mode 100644 index 0000000000000..0960772539d0f --- /dev/null +++ b/datum/action/ability/activable/xeno/impale.html @@ -0,0 +1,35 @@ + + + + + + + /datum/action/ability/activable/xeno/impale - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

impale + + + +

+ + +

Procs

try_impalePerforms the main effect of impale ability like animating and attacking.

Proc Details

try_impale +

+

Performs the main effect of impale ability like animating and attacking.

+ + + diff --git a/datum/action/ability/activable/xeno/landslide.html b/datum/action/ability/activable/xeno/landslide.html new file mode 100644 index 0000000000000..43c94c8600c2a --- /dev/null +++ b/datum/action/ability/activable/xeno/landslide.html @@ -0,0 +1,135 @@ + + + + + + + /datum/action/ability/activable/xeno/landslide - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

landslide + + + +

+ + + + + + + + + + + +

Vars

ability_activeWhether this ability is currently active or not.
current_chargesThe amount of charges we currently have.
maximum_chargesThe maximum amount of charges we can have.

Procs

change_maximum_chargesChanges the maximum amount of charges the ability can have. +This will also adjust the current amount of charges to account for the new difference, be it positive or negative.
do_chargeMoves the user in the specified direction. This simulates movement by using step() and repeatedly calling itself. +Will repeatedly check a 3x1 rectangle in front of the user, applying its effects to valid targets and stopping early if the path is blocked.
end_chargeEnds the charge.
enhanced_do_chargeMoves the user in the specified direction. This simulates movement by using step() and repeatedly calling itself. +Will repeatedly check a 3x1 rectangle in front of the user, applying its effects to valid targets and stopping early if the path is blocked.
get_affected_turfsGets a list of the turfs affected by this ability, based on direction and range.
hit_livingApplies several effects to a living target.
hit_objectAttempts to deconstruct the object in question if possible.
+

Var Details

ability_active + + + + +

+

Whether this ability is currently active or not.

current_charges + + + + +

+

The amount of charges we currently have.

maximum_charges + + + + +

+

The maximum amount of charges we can have.

Proc Details

change_maximum_charges +

+

Changes the maximum amount of charges the ability can have. +This will also adjust the current amount of charges to account for the new difference, be it positive or negative.

+

do_charge +

+

Moves the user in the specified direction. This simulates movement by using step() and repeatedly calling itself. +Will repeatedly check a 3x1 rectangle in front of the user, applying its effects to valid targets and stopping early if the path is blocked.

+

end_charge +

+

Ends the charge.

+

enhanced_do_charge +

+

Moves the user in the specified direction. This simulates movement by using step() and repeatedly calling itself. +Will repeatedly check a 3x1 rectangle in front of the user, applying its effects to valid targets and stopping early if the path is blocked.

+

get_affected_turfs +

+

Gets a list of the turfs affected by this ability, based on direction and range.

+

hit_living +

+

Applies several effects to a living target.

+

hit_object +

+

Attempts to deconstruct the object in question if possible.

+
+ + + diff --git a/datum/action/ability/activable/xeno/neurotox_sting.html b/datum/action/ability/activable/xeno/neurotox_sting.html new file mode 100644 index 0000000000000..5d66be763c4f5 --- /dev/null +++ b/datum/action/ability/activable/xeno/neurotox_sting.html @@ -0,0 +1,43 @@ + + + + + + + /datum/action/ability/activable/xeno/neurotox_sting - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

neurotox_sting + + + +

+ + + +

Vars

sting_chemicalWhatever our victim is injected with.

Procs

track_statsAdds ability tally to the end-round statistics.
+

Var Details

sting_chemical + + + + +

+

Whatever our victim is injected with.

Proc Details

track_stats +

+

Adds ability tally to the end-round statistics.

+ + + diff --git a/datum/action/ability/activable/xeno/neurotox_sting/ozelomelyn.html b/datum/action/ability/activable/xeno/neurotox_sting/ozelomelyn.html new file mode 100644 index 0000000000000..90ae1917f3734 --- /dev/null +++ b/datum/action/ability/activable/xeno/neurotox_sting/ozelomelyn.html @@ -0,0 +1,35 @@ + + + + + + + /datum/action/ability/activable/xeno/neurotox_sting/ozelomelyn - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

ozelomelyn + + + +

+ + +

Procs

track_statsAdds ability tally to the end-round statistics.

Proc Details

track_stats +

+

Adds ability tally to the end-round statistics.

+ + + diff --git a/datum/action/ability/activable/xeno/nightfall.html b/datum/action/ability/activable/xeno/nightfall.html new file mode 100644 index 0000000000000..da7b0d901fd17 --- /dev/null +++ b/datum/action/ability/activable/xeno/nightfall.html @@ -0,0 +1,43 @@ + + + + + + + /datum/action/ability/activable/xeno/nightfall - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

nightfall + + + +

+ + + +

Vars

durationHow long till the lights go on again
rangeHow far nightfall will have an effect
+

Var Details

duration + + + + +

+

How long till the lights go on again

range + + + + +

+

How far nightfall will have an effect

+ + + diff --git a/datum/action/ability/activable/xeno/oppose.html b/datum/action/ability/activable/xeno/oppose.html new file mode 100644 index 0000000000000..21b7edacb2613 --- /dev/null +++ b/datum/action/ability/activable/xeno/oppose.html @@ -0,0 +1,35 @@ + + + + + + + /datum/action/ability/activable/xeno/oppose - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

oppose + + + +

+ + +

Procs

stop_particlesStops particle spawning, then gives existing particles time to fade out before deleting them.

Proc Details

stop_particles +

+

Stops particle spawning, then gives existing particles time to fade out before deleting them.

+ + + diff --git a/datum/action/ability/activable/xeno/organic_bomb.html b/datum/action/ability/activable/xeno/organic_bomb.html new file mode 100644 index 0000000000000..8095da4a1fdcc --- /dev/null +++ b/datum/action/ability/activable/xeno/organic_bomb.html @@ -0,0 +1,49 @@ + + + + + + + /datum/action/ability/activable/xeno/organic_bomb - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

organic_bomb + + + +

+ + + + +

Procs

detonatedetonates a puppet causing a spray of acid
start_explodingasynchronous signal handler for start_exploding_async
start_exploding_asyncmakes a puppet start a do_after to dexplode

Proc Details

detonate +

+

detonates a puppet causing a spray of acid

start_exploding +

+

asynchronous signal handler for start_exploding_async

start_exploding_async +

+

makes a puppet start a do_after to dexplode

+ + + diff --git a/datum/action/ability/activable/xeno/plant_weeds.html b/datum/action/ability/activable/xeno/plant_weeds.html new file mode 100644 index 0000000000000..998d9c65eb662 --- /dev/null +++ b/datum/action/ability/activable/xeno/plant_weeds.html @@ -0,0 +1,92 @@ + + + + + + + /datum/action/ability/activable/xeno/plant_weeds - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

plant_weeds + + + +

+ + + + + + + + + + +

Vars

auto_weedingWhether automatic weeding is active
last_weeded_turfThe turf that was last weeded
max_rangethe maximum range of the ability
weed_typeThe seleted type of weeds

Procs

choose_weedChose which weed will be planted by the xeno owner or toggle automatic weeding
plant_weedsPlant a weeds node on the selected atom
toggle_auto_weedingToggles automatic weeding
update_ability_costUpdates the ability cost based on gamestate
weed_on_moveUsed for performing automatic weeding
+

Var Details

auto_weeding + + + + +

+

Whether automatic weeding is active

last_weeded_turf + + + + +

+

The turf that was last weeded

max_range + + + + +

+

the maximum range of the ability

weed_type + + + + +

+

The seleted type of weeds

Proc Details

choose_weed +

+

Chose which weed will be planted by the xeno owner or toggle automatic weeding

plant_weeds +

+

Plant a weeds node on the selected atom

toggle_auto_weeding +

+

Toggles automatic weeding

update_ability_cost +

+

Updates the ability cost based on gamestate

weed_on_move +

+

Used for performing automatic weeding

+ + + diff --git a/datum/action/ability/activable/xeno/pounce.html b/datum/action/ability/activable/xeno/pounce.html new file mode 100644 index 0000000000000..79eeb7d138f06 --- /dev/null +++ b/datum/action/ability/activable/xeno/pounce.html @@ -0,0 +1,43 @@ + + + + + + + /datum/action/ability/activable/xeno/pounce - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

pounce + + + +

+ + + +

Vars

pounce_rangeThe range of this ability.

Procs

trigger_pounce_effectTriggers the effect of a successful pounce on the target.
+

Var Details

pounce_range + + + + +

+

The range of this ability.

Proc Details

trigger_pounce_effect +

+

Triggers the effect of a successful pounce on the target.

+ + + diff --git a/datum/action/ability/activable/xeno/pounce/runner.html b/datum/action/ability/activable/xeno/pounce/runner.html new file mode 100644 index 0000000000000..d95c7bf1aa50f --- /dev/null +++ b/datum/action/ability/activable/xeno/pounce/runner.html @@ -0,0 +1,43 @@ + + + + + + + /datum/action/ability/activable/xeno/pounce/runner - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

runner + + + +

+ + + +

Vars

savage_activatedWhether Savage is active or not.
savage_cooldownSavage's cooldown.
+

Var Details

savage_activated + + + + +

+

Whether Savage is active or not.

savage_cooldown + + + + +

+

Savage's cooldown.

+ + + diff --git a/datum/action/ability/activable/xeno/psy_blast.html b/datum/action/ability/activable/xeno/psy_blast.html new file mode 100644 index 0000000000000..fddb7ed98770b --- /dev/null +++ b/datum/action/ability/activable/xeno/psy_blast.html @@ -0,0 +1,50 @@ + + + + + + + /datum/action/ability/activable/xeno/psy_blast - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

psy_blast + + + +

+ + + + +

Vars

particle_holderUsed for particles. Holds the particles instead of the mob. See particle_holder for documentation.
particle_typeThe particle type that will be created when using this ability

Procs

end_channelCleans up when the channel finishes or is cancelled
+

Var Details

particle_holder + + + + +

+

Used for particles. Holds the particles instead of the mob. See particle_holder for documentation.

particle_type + + + + +

+

The particle type that will be created when using this ability

Proc Details

end_channel +

+

Cleans up when the channel finishes or is cancelled

+ + + diff --git a/datum/action/ability/activable/xeno/psy_crush.html b/datum/action/ability/activable/xeno/psy_crush.html new file mode 100644 index 0000000000000..306217e241715 --- /dev/null +++ b/datum/action/ability/activable/xeno/psy_crush.html @@ -0,0 +1,141 @@ + + + + + + + /datum/action/ability/activable/xeno/psy_crush - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

psy_crush + + + +

+ + + + + + + + + + + + + + + + + +

Vars

ability_rangemax range at which we can cast out ability
channel_loop_timertimer hash for the timer we use when charging up
channel_particleThe particle type this ability uses
current_iterationsHow many times we have expanded our effect radius
effect_listlist of effects used to visualise area of effect
filters_appliedA list of all things that had a fliter applied
max_interationsThe number of times we can expand our effect radius. Effectively a max radius
orbHolder for the orb visual effect
particle_holderUsed for particles. Holds the particles instead of the mob. See particle_holder for documentation.
target_turfsList of turfs in the effect radius

Procs

apply_filtersApply a filter on all items in the list of turfs
check_distanceChecks if the owner is close enough/can see the target
crushcrushes all turfs in the AOE
do_channelIncreases the area of effect, or triggers the crush if we've reached max iterations
remove_all_filtersRemove all filters of items in filters_applied
stop_crushstops channeling and unregisters all listeners, resetting the ability
+

Var Details

ability_range + + + + +

+

max range at which we can cast out ability

channel_loop_timer + + + + +

+

timer hash for the timer we use when charging up

channel_particle + + + + +

+

The particle type this ability uses

current_iterations + + + + +

+

How many times we have expanded our effect radius

effect_list + + + + +

+

list of effects used to visualise area of effect

filters_applied + + + + +

+

A list of all things that had a fliter applied

max_interations + + + + +

+

The number of times we can expand our effect radius. Effectively a max radius

orb + + + + +

+

Holder for the orb visual effect

particle_holder + + + + +

+

Used for particles. Holds the particles instead of the mob. See particle_holder for documentation.

target_turfs + + + + +

+

List of turfs in the effect radius

Proc Details

apply_filters +

+

Apply a filter on all items in the list of turfs

check_distance +

+

Checks if the owner is close enough/can see the target

crush +

+

crushes all turfs in the AOE

do_channel +

+

Increases the area of effect, or triggers the crush if we've reached max iterations

remove_all_filters +

+

Remove all filters of items in filters_applied

stop_crush +

+

stops channeling and unregisters all listeners, resetting the ability

+ + + diff --git a/datum/action/ability/activable/xeno/psychic_cure/acidic_salve.html b/datum/action/ability/activable/xeno/psychic_cure/acidic_salve.html new file mode 100644 index 0000000000000..b9028d48498e4 --- /dev/null +++ b/datum/action/ability/activable/xeno/psychic_cure/acidic_salve.html @@ -0,0 +1,35 @@ + + + + + + + /datum/action/ability/activable/xeno/psychic_cure/acidic_salve - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

acidic_salve + + + +

+ + +

Procs

salve_healingHeals the target and gives them a regenerative buff, if applicable.

Proc Details

salve_healing +

+

Heals the target and gives them a regenerative buff, if applicable.

+ + + diff --git a/datum/action/ability/activable/xeno/psychic_cure/queen_give_heal.html b/datum/action/ability/activable/xeno/psychic_cure/queen_give_heal.html new file mode 100644 index 0000000000000..cf8c5232d1d41 --- /dev/null +++ b/datum/action/ability/activable/xeno/psychic_cure/queen_give_heal.html @@ -0,0 +1,36 @@ + + + + + + + /datum/action/ability/activable/xeno/psychic_cure/queen_give_heal - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

queen_give_heal + + + +

+ + +

Vars

hivemind_healShould this ability be usable on moving targets and use an alternative flavortext?
+

Var Details

hivemind_heal + + + + +

+

Should this ability be usable on moving targets and use an alternative flavortext?

+ + + diff --git a/datum/action/ability/activable/xeno/psychic_link.html b/datum/action/ability/activable/xeno/psychic_link.html new file mode 100644 index 0000000000000..f4dbe51f11554 --- /dev/null +++ b/datum/action/ability/activable/xeno/psychic_link.html @@ -0,0 +1,71 @@ + + + + + + + /datum/action/ability/activable/xeno/psychic_link - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

psychic_link + + + +

+ + + + + + + +

Vars

apply_psychic_link_timerTimer for activating the link
target_overlayOverlay applied on the target xeno while linking

Procs

apply_psychic_linkActivates the link
cancel_psychic_linkRemoves the status effect on unrest
link_cleanupClears up things used for the linking
status_removedCancels the status effect
+

Var Details

+

Timer for activating the link

target_overlay + + + + +

+

Overlay applied on the target xeno while linking

Proc Details

+

Activates the link

+

Removes the status effect on unrest

+

Clears up things used for the linking

status_removed +

+

Cancels the status effect

+ + + diff --git a/datum/action/ability/activable/xeno/psychic_shield.html b/datum/action/ability/activable/xeno/psychic_shield.html new file mode 100644 index 0000000000000..69b708b68b95c --- /dev/null +++ b/datum/action/ability/activable/xeno/psychic_shield.html @@ -0,0 +1,57 @@ + + + + + + + /datum/action/ability/activable/xeno/psychic_shield - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

psychic_shield + + + +

+ + + + + +

Vars

active_shieldThe actual shield object created by this ability.
alternative_reflectionWhether to use the alternative mode of projectile reflection. Makes shields weaker, but sends projectiles toward a selected target.

Procs

cancel_shieldRemoves the shield and resets the ability
shield_blastAOE knockback triggerable by ending the shield early
+

Var Details

active_shield + + + + +

+

The actual shield object created by this ability.

alternative_reflection + + + + +

+

Whether to use the alternative mode of projectile reflection. Makes shields weaker, but sends projectiles toward a selected target.

Proc Details

cancel_shield +

+

Removes the shield and resets the ability

shield_blast +

+

AOE knockback triggerable by ending the shield early

+ + + diff --git a/datum/action/ability/activable/xeno/psychic_vortex.html b/datum/action/ability/activable/xeno/psychic_vortex.html new file mode 100644 index 0000000000000..b7ab2ce70f48d --- /dev/null +++ b/datum/action/ability/activable/xeno/psychic_vortex.html @@ -0,0 +1,59 @@ + + + + + + + /datum/action/ability/activable/xeno/psychic_vortex - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

psychic_vortex + + + +

+ + + + + +

Vars

channel_particleThe particle type this ability uses
particle_holderUsed for particles. Holds the particles instead of the mob. See particle_holder for documentation.

Procs

vortex_pullChecks for any non-anchored movable atom, throwing them towards the shrike/owner using the ability. +While causing shake to anything in range with effects applied to humans affected.
vortex_pushRandomly throws movable atoms in the radius of the vortex abilites range, different each use.
+

Var Details

channel_particle + + + + +

+

The particle type this ability uses

particle_holder + + + + +

+

Used for particles. Holds the particles instead of the mob. See particle_holder for documentation.

Proc Details

vortex_pull +

+

Checks for any non-anchored movable atom, throwing them towards the shrike/owner using the ability. +While causing shake to anything in range with effects applied to humans affected.

vortex_push +

+

Randomly throws movable atoms in the radius of the vortex abilites range, different each use.

+ + + diff --git a/datum/action/ability/activable/xeno/psydrain.html b/datum/action/ability/activable/xeno/psydrain.html new file mode 100644 index 0000000000000..8b32f61bf7526 --- /dev/null +++ b/datum/action/ability/activable/xeno/psydrain.html @@ -0,0 +1,36 @@ + + + + + + + /datum/action/ability/activable/xeno/psydrain - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

psydrain + + + +

+ + +

Vars

larva_point_rewardHow much larva points it gives (8 points for one larva in distress)
+

Var Details

larva_point_reward + + + + +

+

How much larva points it gives (8 points for one larva in distress)

+ + + diff --git a/datum/action/ability/activable/xeno/queen_give_plasma.html b/datum/action/ability/activable/xeno/queen_give_plasma.html new file mode 100644 index 0000000000000..290619a58f808 --- /dev/null +++ b/datum/action/ability/activable/xeno/queen_give_plasma.html @@ -0,0 +1,35 @@ + + + + + + + /datum/action/ability/activable/xeno/queen_give_plasma - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

queen_give_plasma + + + +

+ + +

Procs

try_use_abilitySignal handler for the queen_give_plasma action that checks can_use

Proc Details

try_use_ability +

+

Signal handler for the queen_give_plasma action that checks can_use

+ + + diff --git a/datum/action/ability/activable/xeno/ravage.html b/datum/action/ability/activable/xeno/ravage.html new file mode 100644 index 0000000000000..538ba1d104835 --- /dev/null +++ b/datum/action/ability/activable/xeno/ravage.html @@ -0,0 +1,45 @@ + + + + + + + /datum/action/ability/activable/xeno/ravage - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

ravage + + + +

+ + + +

Vars

particle_holderUsed for particles. Holds the particles instead of the mob. See particle_holder for documentation.

Procs

activate_particlesactual target we will check adjacency with +Handles the activation and deactivation of particles, as well as their appearance.
+

Var Details

particle_holder + + + + +

+

Used for particles. Holds the particles instead of the mob. See particle_holder for documentation.

Proc Details

activate_particles +

+

actual target we will check adjacency with +Handles the activation and deactivation of particles, as well as their appearance.

+ + + diff --git a/datum/action/ability/activable/xeno/ravage/slow.html b/datum/action/ability/activable/xeno/ravage/slow.html new file mode 100644 index 0000000000000..c1e58dcf9f7a4 --- /dev/null +++ b/datum/action/ability/activable/xeno/ravage/slow.html @@ -0,0 +1,36 @@ + + + + + + + /datum/action/ability/activable/xeno/ravage/slow - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

slow + + + +

+ + +

Vars

cooldown_durationHow long is the windup before ravaging
+

Var Details

cooldown_duration + + + + +

+

How long is the windup before ravaging

+ + + diff --git a/datum/action/ability/activable/xeno/refurbish_husk.html b/datum/action/ability/activable/xeno/refurbish_husk.html new file mode 100644 index 0000000000000..a8c02508d239a --- /dev/null +++ b/datum/action/ability/activable/xeno/refurbish_husk.html @@ -0,0 +1,50 @@ + + + + + + + /datum/action/ability/activable/xeno/refurbish_husk - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

refurbish_husk + + + +

+ + + + +

Vars

puppetsList of all our puppets

Procs

add_puppetAdds a puppet to our list
remove_puppetCleans up puppet from our list
+

Var Details

puppets + + + + +

+

List of all our puppets

Proc Details

add_puppet +

+

Adds a puppet to our list

remove_puppet +

+

Cleans up puppet from our list

+ + + diff --git a/datum/action/ability/activable/xeno/rewind.html b/datum/action/ability/activable/xeno/rewind.html new file mode 100644 index 0000000000000..f873050b1976d --- /dev/null +++ b/datum/action/ability/activable/xeno/rewind.html @@ -0,0 +1,120 @@ + + + + + + + /datum/action/ability/activable/xeno/rewind - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

rewind + + + +

+ + + + + + + + + + + + + + +

Vars

last_target_locs_listList of locations the atom took since it was last saved
rangeHow far can you rewind someone
rewind_timerHolder for the rewind timer
start_rewindingHow long till the time rewinds
target_initial_brute_damageInitial brute damage of the target
target_initial_burn_damageInitial burn damage of the target
target_initial_fire_stacksInitial fire stacks of the target
target_initial_on_fireInitial on_fire value
target_initial_sunderInitial sunder of the target
targetedThe targeted atom

Procs

rewindMove the target two tiles per tick
save_moveSignal handler
start_rewindingStart the reset process
+

Var Details

last_target_locs_list + + + + +

+

List of locations the atom took since it was last saved

range + + + + +

+

How far can you rewind someone

rewind_timer + + + + +

+

Holder for the rewind timer

start_rewinding + + + + +

+

How long till the time rewinds

target_initial_brute_damage + + + + +

+

Initial brute damage of the target

target_initial_burn_damage + + + + +

+

Initial burn damage of the target

target_initial_fire_stacks + + + + +

+

Initial fire stacks of the target

target_initial_on_fire + + + + +

+

Initial on_fire value

target_initial_sunder + + + + +

+

Initial sunder of the target

targeted + + + + +

+

The targeted atom

Proc Details

rewind +

+

Move the target two tiles per tick

save_move +

+

Signal handler

start_rewinding +

+

Start the reset process

+ + + diff --git a/datum/action/ability/activable/xeno/screech.html b/datum/action/ability/activable/xeno/screech.html new file mode 100644 index 0000000000000..f32718d63f46c --- /dev/null +++ b/datum/action/ability/activable/xeno/screech.html @@ -0,0 +1,35 @@ + + + + + + + /datum/action/ability/activable/xeno/screech - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

screech + + + +

+ + +

Procs

switch_screechShows a radical menu that lets the owner choose which type of screech they want to use.

Proc Details

switch_screech +

+

Shows a radical menu that lets the owner choose which type of screech they want to use.

+ + + diff --git a/datum/action/ability/activable/xeno/secrete_resin.html b/datum/action/ability/activable/xeno/secrete_resin.html new file mode 100644 index 0000000000000..4dcf78dce0e42 --- /dev/null +++ b/datum/action/ability/activable/xeno/secrete_resin.html @@ -0,0 +1,99 @@ + + + + + + + /datum/action/ability/activable/xeno/secrete_resin - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

secrete_resin + + + +

+ + + + + + + + + + + +

Vars

base_waitMinimum time to build a resin structure
buildable_structuresList of buildable structures. Order corresponds with resin_images_list.
draggingUsed for the dragging functionality of pre-shuttter building
scaling_waitMultiplicator factor to add to the building time, depends on the health of the structure built

Procs

end_resin_dragHandles removing the dragging functionality from the action all-togheter on round-start (shutter open)
give_actionExtra handling for adding the action for draggin functionality (for instant building)
preshutter_build_resinA version of build_resin with the plasma drain and distance checks removed.
remove_actionExtra handling to remove the stuff needed for dragging
start_resin_dragHelper for handling the start of mouse-down and to begin the drag-building
stop_resin_dragHelper for ending drag-building , activated on mose-up
+

Var Details

base_wait + + + + +

+

Minimum time to build a resin structure

buildable_structures + + + + +

+

List of buildable structures. Order corresponds with resin_images_list.

dragging + + + + +

+

Used for the dragging functionality of pre-shuttter building

scaling_wait + + + + +

+

Multiplicator factor to add to the building time, depends on the health of the structure built

Proc Details

end_resin_drag +

+

Handles removing the dragging functionality from the action all-togheter on round-start (shutter open)

give_action +

+

Extra handling for adding the action for draggin functionality (for instant building)

preshutter_build_resin +

+

A version of build_resin with the plasma drain and distance checks removed.

remove_action +

+

Extra handling to remove the stuff needed for dragging

start_resin_drag +

+

Helper for handling the start of mouse-down and to begin the drag-building

stop_resin_drag +

+

Helper for ending drag-building , activated on mose-up

+ + + diff --git a/datum/action/ability/activable/xeno/secrete_special_resin.html b/datum/action/ability/activable/xeno/secrete_special_resin.html new file mode 100644 index 0000000000000..09b33c5826078 --- /dev/null +++ b/datum/action/ability/activable/xeno/secrete_special_resin.html @@ -0,0 +1,50 @@ + + + + + + + /datum/action/ability/activable/xeno/secrete_special_resin - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

secrete_special_resin + + + +

+ + + + +

Vars

base_waitMinimum time to build a special resin structure
buildable_special_structuresList of buildable structures. Order corresponds with resin_special_images_list.
scaling_waitMultiplicator factor to add to the building time, depends on the health of builder.
+

Var Details

base_wait + + + + +

+

Minimum time to build a special resin structure

buildable_special_structures + + + + +

+

List of buildable structures. Order corresponds with resin_special_images_list.

scaling_wait + + + + +

+

Multiplicator factor to add to the building time, depends on the health of builder.

+ + + diff --git a/datum/action/ability/activable/xeno/shattering_roar.html b/datum/action/ability/activable/xeno/shattering_roar.html new file mode 100644 index 0000000000000..cc3b696749e03 --- /dev/null +++ b/datum/action/ability/activable/xeno/shattering_roar.html @@ -0,0 +1,57 @@ + + + + + + + /datum/action/ability/activable/xeno/shattering_roar - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

shattering_roar + + + +

+ + + + + +

Vars

victims_hitTracks victims to make sure we only hit them once

Procs

attack_turfApplies attack effects to everything relevant on a given turf
execute_attackCarries out the attack iteratively based on distance from source
finish_chargingcleans up when the charge up is finished or interrupted
+

Var Details

victims_hit + + + + +

+

Tracks victims to make sure we only hit them once

Proc Details

attack_turf +

+

Applies attack effects to everything relevant on a given turf

execute_attack +

+

Carries out the attack iteratively based on distance from source

finish_charging +

+

cleans up when the charge up is finished or interrupted

+ + + diff --git a/datum/action/ability/activable/xeno/snatch.html b/datum/action/ability/activable/xeno/snatch.html new file mode 100644 index 0000000000000..92e08081408a8 --- /dev/null +++ b/datum/action/ability/activable/xeno/snatch.html @@ -0,0 +1,64 @@ + + + + + + + /datum/action/ability/activable/xeno/snatch - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

snatch + + + +

+ + + + + + +

Vars

slots_to_steal_fromA list of slot to check for items, in order of priority
stolen_appearanceMutable appearance of the stolen item
stolen_itemIf the runner have an item

Procs

drop_itemForce the xeno owner to drop the stolen item
owner_turnedSignal handler to update the item overlay when the owner is changing dir
+

Var Details

slots_to_steal_from + + + + +

+

A list of slot to check for items, in order of priority

stolen_appearance + + + + +

+

Mutable appearance of the stolen item

stolen_item + + + + +

+

If the runner have an item

Proc Details

drop_item +

+

Force the xeno owner to drop the stolen item

owner_turned +

+

Signal handler to update the item overlay when the owner is changing dir

+ + + diff --git a/datum/action/ability/activable/xeno/spray_acid/cone.html b/datum/action/ability/activable/xeno/spray_acid/cone.html new file mode 100644 index 0000000000000..956e790d418e3 --- /dev/null +++ b/datum/action/ability/activable/xeno/spray_acid/cone.html @@ -0,0 +1,49 @@ + + + + + + + /datum/action/ability/activable/xeno/spray_acid/cone - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

cone + + + +

+ + + + +

Procs

continue_acid_cone_sprayCall the next steps of the cone spray,
do_acid_cone_sprayCheck if it's possible to create a spray, and if yes, check if the spray must continue
start_acid_spray_coneStart the acid cone spray in the correct direction

Proc Details

continue_acid_cone_spray +

+

Call the next steps of the cone spray,

do_acid_cone_spray +

+

Check if it's possible to create a spray, and if yes, check if the spray must continue

start_acid_spray_cone +

+

Start the acid cone spray in the correct direction

+ + + diff --git a/datum/action/ability/activable/xeno/tentacle.html b/datum/action/ability/activable/xeno/tentacle.html new file mode 100644 index 0000000000000..b53cdfa294164 --- /dev/null +++ b/datum/action/ability/activable/xeno/tentacle.html @@ -0,0 +1,50 @@ + + + + + + + /datum/action/ability/activable/xeno/tentacle - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

tentacle + + + +

+ + + + +

Vars

tentaclereference to beam tentacle

Procs

delete_beamsignal handler to delete tetacle after we are done draggging owner along
finish_grabSignal handler to grab the target when we thentacle head hit something
+

Var Details

tentacle + + + + +

+

reference to beam tentacle

Proc Details

delete_beam +

+

signal handler to delete tetacle after we are done draggging owner along

finish_grab +

+

Signal handler to grab the target when we thentacle head hit something

+ + + diff --git a/datum/action/ability/activable/xeno/toxic_grenade.html b/datum/action/ability/activable/xeno/toxic_grenade.html new file mode 100644 index 0000000000000..d346bc776fb24 --- /dev/null +++ b/datum/action/ability/activable/xeno/toxic_grenade.html @@ -0,0 +1,36 @@ + + + + + + + /datum/action/ability/activable/xeno/toxic_grenade - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

toxic_grenade + + + +

+ + +

Vars

nade_typeType of nade to be thrown
+

Var Details

nade_type + + + + +

+

Type of nade to be thrown

+ + + diff --git a/datum/action/ability/activable/xeno/transfusion.html b/datum/action/ability/activable/xeno/transfusion.html new file mode 100644 index 0000000000000..dfc4f30082fab --- /dev/null +++ b/datum/action/ability/activable/xeno/transfusion.html @@ -0,0 +1,43 @@ + + + + + + + /datum/action/ability/activable/xeno/transfusion - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

transfusion + + + +

+ + + +

Vars

target_healthUsed to keep track of the target's previous health for extra_health_check()

Procs

extra_health_checkAn extra check for the do_mob in can_use_ability. If the target isn't immobile and has lost health, the ability is cancelled. The ability is also cancelled if the target is knocked into crit DURING the do_mob.
+

Var Details

target_health + + + + +

+

Used to keep track of the target's previous health for extra_health_check()

Proc Details

extra_health_check +

+

An extra check for the do_mob in can_use_ability. If the target isn't immobile and has lost health, the ability is cancelled. The ability is also cancelled if the target is knocked into crit DURING the do_mob.

+ + + diff --git a/datum/action/ability/activable/xeno/warrior.html b/datum/action/ability/activable/xeno/warrior.html new file mode 100644 index 0000000000000..ab41ef2108117 --- /dev/null +++ b/datum/action/ability/activable/xeno/warrior.html @@ -0,0 +1,56 @@ + + + + + + + /datum/action/ability/activable/xeno/warrior - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

warrior + + + +

+ + + + + +

Procs

add_empowered_frameAdds an outline around the ability button to represent Empower.
remove_empowered_frameRemoves the Empower outline.
throw_endedEnds the target's throw.
thrown_intoHandles anything that would happen when a target is thrown into an atom using an ability.

Proc Details

add_empowered_frame +

+

Adds an outline around the ability button to represent Empower.

remove_empowered_frame +

+

Removes the Empower outline.

throw_ended +

+

Ends the target's throw.

thrown_into +

+

Handles anything that would happen when a target is thrown into an atom using an ability.

+ + + diff --git a/datum/action/ability/activable/xeno/warrior/lunge.html b/datum/action/ability/activable/xeno/warrior/lunge.html new file mode 100644 index 0000000000000..48f1b9b3e84f5 --- /dev/null +++ b/datum/action/ability/activable/xeno/warrior/lunge.html @@ -0,0 +1,57 @@ + + + + + + + /datum/action/ability/activable/xeno/warrior/lunge - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

lunge + + + +

+ + + + + +

Vars

lunge_targetThe target of our lunge, we keep it to check if we are adjacent every time we move.

Procs

check_if_lunge_possibleCheck if we are close enough to grab.
clean_lunge_targetNull lunge target and reset related vars.
lunge_grabDo the grab on the target, and clean all previous vars
+

Var Details

lunge_target + + + + +

+

The target of our lunge, we keep it to check if we are adjacent every time we move.

Proc Details

check_if_lunge_possible +

+

Check if we are close enough to grab.

clean_lunge_target +

+

Null lunge target and reset related vars.

lunge_grab +

+

Do the grab on the target, and clean all previous vars

+ + + diff --git a/datum/action/ability/activable/xeno/warrior/punch.html b/datum/action/ability/activable/xeno/warrior/punch.html new file mode 100644 index 0000000000000..daaaa0122be4e --- /dev/null +++ b/datum/action/ability/activable/xeno/warrior/punch.html @@ -0,0 +1,35 @@ + + + + + + + /datum/action/ability/activable/xeno/warrior/punch - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

punch + + + +

+ + +

Procs

do_abilityDoes the ability. Exists because Punch is the parent of another ability, so this lets us separate functionality and avoid repeating a few lines of code.

Proc Details

do_ability +

+

Does the ability. Exists because Punch is the parent of another ability, so this lets us separate functionality and avoid repeating a few lines of code.

+ + + diff --git a/datum/action/ability/activable/xeno/warrior/punch/flurry.html b/datum/action/ability/activable/xeno/warrior/punch/flurry.html new file mode 100644 index 0000000000000..e3e1b6c231bb2 --- /dev/null +++ b/datum/action/ability/activable/xeno/warrior/punch/flurry.html @@ -0,0 +1,36 @@ + + + + + + + /datum/action/ability/activable/xeno/warrior/punch/flurry - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

flurry + + + +

+ + +

Vars

current_chargesThe amount of charges we currently have. Initial value is assumed to be the maximum.
+

Var Details

current_charges + + + + +

+

The amount of charges we currently have. Initial value is assumed to be the maximum.

+ + + diff --git a/datum/action/ability/activable/xeno/web_hook.html b/datum/action/ability/activable/xeno/web_hook.html new file mode 100644 index 0000000000000..5faa16f6fa6df --- /dev/null +++ b/datum/action/ability/activable/xeno/web_hook.html @@ -0,0 +1,42 @@ + + + + + + + /datum/action/ability/activable/xeno/web_hook - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

web_hook + + + +

+ + + +

Procs

delete_beamsignal handler to delete the web_hook after we are done draggging owner along
drag_widowThis throws widow wherever the web_hook landed, distance is dependant on if the web_hook hit a wall or just ground

Proc Details

delete_beam +

+

signal handler to delete the web_hook after we are done draggging owner along

drag_widow +

+

This throws widow wherever the web_hook landed, distance is dependant on if the web_hook hit a wall or just ground

+ + + diff --git a/datum/action/ability/activable/xeno/xeno_spit.html b/datum/action/ability/activable/xeno/xeno_spit.html new file mode 100644 index 0000000000000..bcefaefd37290 --- /dev/null +++ b/datum/action/ability/activable/xeno/xeno_spit.html @@ -0,0 +1,85 @@ + + + + + + + /datum/action/ability/activable/xeno/xeno_spit - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

xeno_spit + + + +

+ + + + + + + + + +

Vars

current_targetCurrent target that the xeno is targeting. This is for aiming.

Procs

change_targetChanges the current target.
clean_targetCleans the current target in case of Hardel
fireFires the spit projectile.
reset_fireResets the autofire component.
set_targetSets the current target and registers for qdel to prevent hardels
start_fireStarts the xeno firing.
stop_fireStops the Autofire component and resets the current cursor.
+

Var Details

current_target + + + + +

+

Current target that the xeno is targeting. This is for aiming.

Proc Details

change_target +

+

Changes the current target.

clean_target +

+

Cleans the current target in case of Hardel

fire +

+

Fires the spit projectile.

reset_fire +

+

Resets the autofire component.

set_target +

+

Sets the current target and registers for qdel to prevent hardels

start_fire +

+

Starts the xeno firing.

stop_fire +

+

Stops the Autofire component and resets the current cursor.

+ + + diff --git a/datum/action/ability/emit_gas.html b/datum/action/ability/emit_gas.html new file mode 100644 index 0000000000000..c27bda5fbca1b --- /dev/null +++ b/datum/action/ability/emit_gas.html @@ -0,0 +1,64 @@ + + + + + + + /datum/action/ability/emit_gas - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

emit_gas + + + +

+ + + + + + +

Vars

particle_holderUsed for particles. Holds the particles instead of the mob. See particle_holder for documentation.
smoke_durationThe duration of the smoke in 2 second ticks
smokeradiusradius this smoke grenade will encompass
smoketypesmoke type created when the grenade is primed

Procs

toggle_particlesToggles particles on or off
+

Var Details

particle_holder + + + + +

+

Used for particles. Holds the particles instead of the mob. See particle_holder for documentation.

smoke_duration + + + + +

+

The duration of the smoke in 2 second ticks

smokeradius + + + + +

+

radius this smoke grenade will encompass

smoketype + + + + +

+

smoke type created when the grenade is primed

Proc Details

toggle_particles +

+

Toggles particles on or off

+ + + diff --git a/datum/action/ability/xeno_action.html b/datum/action/ability/xeno_action.html new file mode 100644 index 0000000000000..02257c1560902 --- /dev/null +++ b/datum/action/ability/xeno_action.html @@ -0,0 +1,43 @@ + + + + + + + /datum/action/ability/xeno_action - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

xeno_action + + + +

+ + + +

Vars

descIf you are going to add an explanation for an ability. don't use stats, give a very brief explanation of how to use it.
xeno_ownerTypecast owner since this is used constantly
+

Var Details

desc + + + + +

+

If you are going to add an explanation for an ability. don't use stats, give a very brief explanation of how to use it.

xeno_owner + + + + +

+

Typecast owner since this is used constantly

+ + + diff --git a/datum/action/ability/xeno_action/attach_spiderlings.html b/datum/action/ability/xeno_action/attach_spiderlings.html new file mode 100644 index 0000000000000..2361b8ec6e08d --- /dev/null +++ b/datum/action/ability/xeno_action/attach_spiderlings.html @@ -0,0 +1,52 @@ + + + + + + + /datum/action/ability/xeno_action/attach_spiderlings - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

attach_spiderlings + + + +

+ + + + +

Vars

attach_attemptshow many times we attempt to attach adjacent spiderligns
attached_spiderlingsthe attached spiderlings

Procs

grab_spiderlingsyeet off all spiderlings if we are carrying any +this proc scoops up adjacent spiderlings and then calls ride_widow on them
+

Var Details

attach_attempts + + + + +

+

how many times we attempt to attach adjacent spiderligns

attached_spiderlings + + + + +

+

the attached spiderlings

Proc Details

grab_spiderlings +

+

yeet off all spiderlings if we are carrying any +this proc scoops up adjacent spiderlings and then calls ride_widow on them

+ + + diff --git a/datum/action/ability/xeno_action/baneling_explode.html b/datum/action/ability/xeno_action/baneling_explode.html new file mode 100644 index 0000000000000..8f2acd316c874 --- /dev/null +++ b/datum/action/ability/xeno_action/baneling_explode.html @@ -0,0 +1,50 @@ + + + + + + + /datum/action/ability/xeno_action/baneling_explode - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

baneling_explode + + + +

+ + + + +

Vars

baneling_smoke_listList of available reagants for baneling

Procs

ai_should_start_considerIf this proc is triggered by signal(so death), we want to divide range by 2
handle_smokeThis proc defines, and sets up and then lastly starts the smoke, if ability is false we divide range by 4.
+

Var Details

baneling_smoke_list + + + + +

+

List of available reagants for baneling

Proc Details

ai_should_start_consider +

+

If this proc is triggered by signal(so death), we want to divide range by 2

handle_smoke +

+

This proc defines, and sets up and then lastly starts the smoke, if ability is false we divide range by 4.

+ + + diff --git a/datum/action/ability/xeno_action/bloodthirst.html b/datum/action/ability/xeno_action/bloodthirst.html new file mode 100644 index 0000000000000..03ef3b835c926 --- /dev/null +++ b/datum/action/ability/xeno_action/bloodthirst.html @@ -0,0 +1,78 @@ + + + + + + + /datum/action/ability/xeno_action/bloodthirst - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

bloodthirst + + + +

+ + + + + + + + +

Vars

damage_delayonce bloodthirst hits 0 how long
decay_delaydelay until decaying starts
disintegratingused to track if effects played for disintegration start
hit_zero_timetime when we last hit 0 bloodthirst/plasma
last_fight_timetick time of last time we attacked a human

Procs

on_attacksig handler to track attacks for bloodthirst
on_take_damagesig handler to track last attacked for bloodthirst
+

Var Details

damage_delay + + + + +

+

once bloodthirst hits 0 how long

decay_delay + + + + +

+

delay until decaying starts

disintegrating + + + + +

+

used to track if effects played for disintegration start

hit_zero_time + + + + +

+

time when we last hit 0 bloodthirst/plasma

last_fight_time + + + + +

+

tick time of last time we attacked a human

Proc Details

on_attack +

+

sig handler to track attacks for bloodthirst

on_take_damage +

+

sig handler to track last attacked for bloodthirst

+ + + diff --git a/datum/action/ability/xeno_action/bulwark.html b/datum/action/ability/xeno_action/bulwark.html new file mode 100644 index 0000000000000..f30cadba82ef5 --- /dev/null +++ b/datum/action/ability/xeno_action/bulwark.html @@ -0,0 +1,50 @@ + + + + + + + /datum/action/ability/xeno_action/bulwark - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

bulwark + + + +

+ + + + +

Vars

armor_mod_keysassoc list xeno = armor_diff

Procs

apply_buffadds buff to xenos
remove_buffremoves the buff from xenos
+

Var Details

armor_mod_keys + + + + +

+

assoc list xeno = armor_diff

Proc Details

apply_buff +

+

adds buff to xenos

remove_buff +

+

removes the buff from xenos

+ + + diff --git a/datum/action/ability/xeno_action/burrow.html b/datum/action/ability/xeno_action/burrow.html new file mode 100644 index 0000000000000..c65eb5eccf5c5 --- /dev/null +++ b/datum/action/ability/xeno_action/burrow.html @@ -0,0 +1,48 @@ + + + + + + + /datum/action/ability/xeno_action/burrow - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

burrow + + + +

+ + + +

Procs

xeno_burrowWe need the list of spiderlings so that we can burrow them +Here we make every single spiderling that we have also burrow and assign a signal so that they unburrow too +Here we trigger the burrow proc, the registering happens there +Burrow code for xenomorphs
xeno_burrow_doafterCalled by xeno_burrow only when burrowing

Proc Details

xeno_burrow +

+

We need the list of spiderlings so that we can burrow them +Here we make every single spiderling that we have also burrow and assign a signal so that they unburrow too +Here we trigger the burrow proc, the registering happens there +Burrow code for xenomorphs

xeno_burrow_doafter +

+

Called by xeno_burrow only when burrowing

+ + + diff --git a/datum/action/ability/xeno_action/carrier_panic.html b/datum/action/ability/xeno_action/carrier_panic.html new file mode 100644 index 0000000000000..a16cb3b65386a --- /dev/null +++ b/datum/action/ability/xeno_action/carrier_panic.html @@ -0,0 +1,35 @@ + + + + + + + /datum/action/ability/xeno_action/carrier_panic - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

carrier_panic + + + +

+ + +

Procs

do_activateHelper proc for action acitvation via signal

Proc Details

do_activate +

+

Helper proc for action acitvation via signal

+ + + diff --git a/datum/action/ability/xeno_action/centrifugal_force.html b/datum/action/ability/xeno_action/centrifugal_force.html new file mode 100644 index 0000000000000..3800ed5098f86 --- /dev/null +++ b/datum/action/ability/xeno_action/centrifugal_force.html @@ -0,0 +1,57 @@ + + + + + + + /datum/action/ability/xeno_action/centrifugal_force - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

centrifugal_force + + + +

+ + + + + +

Vars

spin_loop_timertimer hash for the timer we use when spinning
step_tickbool whether we should take a random step this tick

Procs

do_spinruns a spin, then starts the timer for a new spin if needed
stop_spinstops spin and unregisters all listeners
+

Var Details

spin_loop_timer + + + + +

+

timer hash for the timer we use when spinning

step_tick + + + + +

+

bool whether we should take a random step this tick

Proc Details

do_spin +

+

runs a spin, then starts the timer for a new spin if needed

stop_spin +

+

stops spin and unregisters all listeners

+ + + diff --git a/datum/action/ability/xeno_action/create_spiderling.html b/datum/action/ability/xeno_action/create_spiderling.html new file mode 100644 index 0000000000000..95cd24822877c --- /dev/null +++ b/datum/action/ability/xeno_action/create_spiderling.html @@ -0,0 +1,73 @@ + + + + + + + /datum/action/ability/xeno_action/create_spiderling - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

create_spiderling + + + +

+ + + + + + + +

Vars

cannibalise_chargesCurrent amount of cannibalise charges
spiderlingsList of all our spiderlings

Procs

action_activateThe action to create spiderlings
add_spiderlingAdds spiderlings to spiderling list and registers them for death so we can remove them later
remove_spiderlingThis creates and stores the spiderling so we can reassign the owner for spider swarm and cap how many spiderlings you can have at once +Removes spiderling from spiderling list and unregisters death signal
use_cannibaliseBirth a spiderling and use up a charge of cannibalise
+

Var Details

cannibalise_charges + + + + +

+

Current amount of cannibalise charges

spiderlings + + + + +

+

List of all our spiderlings

Proc Details

action_activate +

+

The action to create spiderlings

add_spiderling +

+

Adds spiderlings to spiderling list and registers them for death so we can remove them later

remove_spiderling +

+

This creates and stores the spiderling so we can reassign the owner for spider swarm and cap how many spiderlings you can have at once +Removes spiderling from spiderling list and unregisters death signal

use_cannibalise +

+

Birth a spiderling and use up a charge of cannibalise

+ + + diff --git a/datum/action/ability/xeno_action/deathmark.html b/datum/action/ability/xeno_action/deathmark.html new file mode 100644 index 0000000000000..ca39c45be62f5 --- /dev/null +++ b/datum/action/ability/xeno_action/deathmark.html @@ -0,0 +1,42 @@ + + + + + + + /datum/action/ability/xeno_action/deathmark - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

deathmark + + + +

+ + + +

Procs

on_attackon attack for deathmark, tracks the amount of dmg dealt
on_deathmark_expireon expire after the timer, execute the owner if they gambled bad

Proc Details

on_attack +

+

on attack for deathmark, tracks the amount of dmg dealt

on_deathmark_expire +

+

on expire after the timer, execute the owner if they gambled bad

+ + + diff --git a/datum/action/ability/xeno_action/dodge.html b/datum/action/ability/xeno_action/dodge.html new file mode 100644 index 0000000000000..b608a16270728 --- /dev/null +++ b/datum/action/ability/xeno_action/dodge.html @@ -0,0 +1,57 @@ + + + + + + + /datum/action/ability/xeno_action/dodge - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

dodge + + + +

+ + + + + +

Vars

durationHow long the ability will last?
speed_buffThe increase of speed when ability is active.

Procs

on_moveAutomatically bumps living non-xenos if bump attacks are on.
remove_effectsRemoves the movespeed modifier and various pass_flags that was given by the dodge ability.
+

Var Details

duration + + + + +

+

How long the ability will last?

speed_buff + + + + +

+

The increase of speed when ability is active.

Proc Details

on_move +

+

Automatically bumps living non-xenos if bump attacks are on.

remove_effects +

+

Removes the movespeed modifier and various pass_flags that was given by the dodge ability.

+ + + diff --git a/datum/action/ability/xeno_action/emit_neurogas.html b/datum/action/ability/xeno_action/emit_neurogas.html new file mode 100644 index 0000000000000..ab273f5a8a0e4 --- /dev/null +++ b/datum/action/ability/xeno_action/emit_neurogas.html @@ -0,0 +1,36 @@ + + + + + + + /datum/action/ability/xeno_action/emit_neurogas - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

emit_neurogas + + + +

+ + +

Vars

particle_holderUsed for particles. Holds the particles instead of the mob. See particle_holder for documentation.
+

Var Details

particle_holder + + + + +

+

Used for particles. Holds the particles instead of the mob. See particle_holder for documentation.

+ + + diff --git a/datum/action/ability/xeno_action/empower.html b/datum/action/ability/xeno_action/empower.html new file mode 100644 index 0000000000000..327eb45fce131 --- /dev/null +++ b/datum/action/ability/xeno_action/empower.html @@ -0,0 +1,78 @@ + + + + + + + /datum/action/ability/xeno_action/empower - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

empower + + + +

+ + + + + + + + +

Vars

combo_countThe amount of abilities we've chained together.
empowerable_actionsList of abilities that can be empowered.
fade_timerHolds the fade-out timer.

Procs

activate_empowerHandles empowering, and gives visual feedback if applicable.
check_empowerChecks if Empower is capped and gives bonuses if so, otherwise increases combo count.
clear_empowerClears empowering, as well as visual feedback and combo count.
empower_fadeHappens when Empower fades.
+

Var Details

combo_count + + + + +

+

The amount of abilities we've chained together.

empowerable_actions + + + + +

+

List of abilities that can be empowered.

fade_timer + + + + +

+

Holds the fade-out timer.

Proc Details

activate_empower +

+

Handles empowering, and gives visual feedback if applicable.

check_empower +

+

Checks if Empower is capped and gives bonuses if so, otherwise increases combo count.

clear_empower +

+

Clears empowering, as well as visual feedback and combo count.

empower_fade +

+

Happens when Empower fades.

+ + + diff --git a/datum/action/ability/xeno_action/endure.html b/datum/action/ability/xeno_action/endure.html new file mode 100644 index 0000000000000..87ae5d89262d9 --- /dev/null +++ b/datum/action/ability/xeno_action/endure.html @@ -0,0 +1,71 @@ + + + + + + + /datum/action/ability/xeno_action/endure - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

endure + + + +

+ + + + + + + +

Vars

endure_durationTimer for Endure's duration
endure_thresholdHow low the Ravager's health can go while under the effects of Endure before it dies
endure_warning_durationTimer for Endure's warning

Procs

damage_takenWarns us when our health is critically low and tells us exactly how much more punishment we can take
endure_deactivateTurns off the Endure buff
endure_warningWarns the player when Endure is about to end
+

Var Details

endure_duration + + + + +

+

Timer for Endure's duration

endure_threshold + + + + +

+

How low the Ravager's health can go while under the effects of Endure before it dies

endure_warning_duration + + + + +

+

Timer for Endure's warning

Proc Details

damage_taken +

+

Warns us when our health is critically low and tells us exactly how much more punishment we can take

endure_deactivate +

+

Turns off the Endure buff

endure_warning +

+

Warns the player when Endure is about to end

+ + + diff --git a/datum/action/ability/xeno_action/enhancement.html b/datum/action/ability/xeno_action/enhancement.html new file mode 100644 index 0000000000000..30a1f592cd02e --- /dev/null +++ b/datum/action/ability/xeno_action/enhancement.html @@ -0,0 +1,78 @@ + + + + + + + /datum/action/ability/xeno_action/enhancement - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

enhancement + + + +

+ + + + + + + + +

Vars

damage_multiplierDamage bonus given by this ability.
essence_link_actionReferences Essence Link and its vars.
existing_enhancementUsed to determine whether Enhancement is already active or not. Also allows access to its vars.
speed_additionSpeed bonus given by this ability.

Procs

end_abilityEnds the ability if the Enhancement buff is removed.
link_essence_actionLinks this action to
unlink_essence_actionSignal proc to delink essence_link. Should only happen when the owner is being deleted to begin with
+

Var Details

damage_multiplier + + + + +

+

Damage bonus given by this ability.

+

References Essence Link and its vars.

existing_enhancement + + + + +

+

Used to determine whether Enhancement is already active or not. Also allows access to its vars.

speed_addition + + + + +

+

Speed bonus given by this ability.

Proc Details

end_ability +

+

Ends the ability if the Enhancement buff is removed.

+

Links this action to

+

Signal proc to delink essence_link. Should only happen when the owner is being deleted to begin with

+ + + diff --git a/datum/action/ability/xeno_action/evasion.html b/datum/action/ability/xeno_action/evasion.html new file mode 100644 index 0000000000000..93443f9c8209d --- /dev/null +++ b/datum/action/ability/xeno_action/evasion.html @@ -0,0 +1,110 @@ + + + + + + + /datum/action/ability/xeno_action/evasion - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

evasion + + + +

+ + + + + + + + + + + + +

Vars

auto_evasionWhether auto evasion is on or off.
evade_activeWhether evasion is currently active
evasion_durationHow long our Evasion will last.
evasion_stacksCurrent amount of Evasion stacks.

Procs

evasion_deactivateDeactivates Evasion, clearing signals, vars, etc.
evasion_debuff_checkCalled after getting hit with an Evasion disabling debuff. +Checks if evasion is active, and if the debuff inflicted any stacks, disabling Evasion if so.
evasion_dodgeThis is where the dodgy magic happens
evasion_dodge_fxHandles dodge effects and visuals for the Evasion ability.
evasion_flamer_hitCalled when the owner is hit by a flamethrower projectile. +Reduces evasion stacks based on the damage received.
evasion_throw_dodgeDetermines whether or not a thrown projectile is dodged while the Evasion ability is active
hud_set_evasionSets the evasion duration hud
+

Var Details

auto_evasion + + + + +

+

Whether auto evasion is on or off.

evade_active + + + + +

+

Whether evasion is currently active

evasion_duration + + + + +

+

How long our Evasion will last.

evasion_stacks + + + + +

+

Current amount of Evasion stacks.

Proc Details

evasion_deactivate +

+

Deactivates Evasion, clearing signals, vars, etc.

evasion_debuff_check +

+

Called after getting hit with an Evasion disabling debuff. +Checks if evasion is active, and if the debuff inflicted any stacks, disabling Evasion if so.

evasion_dodge +

+

This is where the dodgy magic happens

evasion_dodge_fx +

+

Handles dodge effects and visuals for the Evasion ability.

evasion_flamer_hit +

+

Called when the owner is hit by a flamethrower projectile. +Reduces evasion stacks based on the damage received.

evasion_throw_dodge +

+

Determines whether or not a thrown projectile is dodged while the Evasion ability is active

hud_set_evasion +

+

Sets the evasion duration hud

+ + + diff --git a/datum/action/ability/xeno_action/heatray.html b/datum/action/ability/xeno_action/heatray.html new file mode 100644 index 0000000000000..72ee780617f8b --- /dev/null +++ b/datum/action/ability/xeno_action/heatray.html @@ -0,0 +1,78 @@ + + + + + + + /datum/action/ability/xeno_action/heatray - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

heatray + + + +

+ + + + + + + + +

Vars

beamref to beam that is currently active
particlesparticle holder for the particle visual effects
started_firingworld time of the moment we started firing
targetslist of turfs we are hitting while shooting our beam
timer_refref to looping timer for the fire loop

Procs

execute_attackrecursive proc for firing the actual beam
stop_beamingGets rid of the beam.
+

Var Details

beam + + + + +

+

ref to beam that is currently active

particles + + + + +

+

particle holder for the particle visual effects

started_firing + + + + +

+

world time of the moment we started firing

targets + + + + +

+

list of turfs we are hitting while shooting our beam

timer_ref + + + + +

+

ref to looping timer for the fire loop

Proc Details

execute_attack +

+

recursive proc for firing the actual beam

stop_beaming +

+

Gets rid of the beam.

+ + + diff --git a/datum/action/ability/xeno_action/mirage.html b/datum/action/ability/xeno_action/mirage.html new file mode 100644 index 0000000000000..9cee438f50972 --- /dev/null +++ b/datum/action/ability/xeno_action/mirage.html @@ -0,0 +1,78 @@ + + + + + + + /datum/action/ability/xeno_action/mirage - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

mirage + + + +

+ + + + + + + + +

Vars

illusion_countHow many illusions are created
illusion_life_timeHow long will the illusions live
illusionsList of illusions
swap_usedIf swap has been used during the current set of illusions

Procs

clean_illusionsClean up the illusions list
spawn_illusionsSpawns a set of illusions around the hunter
swapSwap places of hunter and an illusion
+

Var Details

illusion_count + + + + +

+

How many illusions are created

illusion_life_time + + + + +

+

How long will the illusions live

illusions + + + + +

+

List of illusions

swap_used + + + + +

+

If swap has been used during the current set of illusions

Proc Details

clean_illusions +

+

Clean up the illusions list

spawn_illusions +

+

Spawns a set of illusions around the hunter

swap +

+

Swap places of hunter and an illusion

+ + + diff --git a/datum/action/ability/xeno_action/petrify.html b/datum/action/ability/xeno_action/petrify.html new file mode 100644 index 0000000000000..5cc39000d5cc7 --- /dev/null +++ b/datum/action/ability/xeno_action/petrify.html @@ -0,0 +1,57 @@ + + + + + + + /datum/action/ability/xeno_action/petrify - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

petrify + + + +

+ + + + + +

Vars

petrified_humansList of mobs currently petrified

Procs

end_effectsends all combat-relazted effects
finish_chargingcleans up when the charge up is finished or interrupted
remove_eyecallback for removing the eye from viscontents
+

Var Details

petrified_humans + + + + +

+

List of mobs currently petrified

Proc Details

end_effects +

+

ends all combat-relazted effects

finish_charging +

+

cleans up when the charge up is finished or interrupted

remove_eye +

+

callback for removing the eye from viscontents

+ + + diff --git a/datum/action/ability/xeno_action/portal.html b/datum/action/ability/xeno_action/portal.html new file mode 100644 index 0000000000000..a949978a1082f --- /dev/null +++ b/datum/action/ability/xeno_action/portal.html @@ -0,0 +1,64 @@ + + + + + + + /datum/action/ability/xeno_action/portal - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

portal + + + +

+ + + + + + +

Vars

portal_oneThe first portal
portal_twoThe second portal
rangeHow far can you link two portals

Procs

clean_portalsDestroy the portals when the wraith is no longer supporting them
link_portalsLink the two portals if possible
+

Var Details

portal_one + + + + +

+

The first portal

portal_two + + + + +

+

The second portal

range + + + + +

+

How far can you link two portals

Proc Details

clean_portals +

+

Destroy the portals when the wraith is no longer supporting them

+

Link the two portals if possible

+ + + diff --git a/datum/action/ability/xeno_action/primal_wrath.html b/datum/action/ability/xeno_action/primal_wrath.html new file mode 100644 index 0000000000000..4071f23036f02 --- /dev/null +++ b/datum/action/ability/xeno_action/primal_wrath.html @@ -0,0 +1,138 @@ + + + + + + + /datum/action/ability/xeno_action/primal_wrath - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

primal_wrath + + + +

+ + + + + + + + + + + + + + +

Vars

ability_activeWhether Primal Wrath is active or not.
block_overlayThe overlay used when Primal Wrath blocks fatal damage.
currently_roaringWhether we are currently roaring or not.
decay_amountBase amount of Wrath lost every valid tick.
decay_timeTimer that determines when Wrath will start decaying.
particle_holderUsed for particles. Holds the particles instead of the mob. See particle_holder for documentation.

Procs

ability_checkChecks if the affected target should no longer be affected by the ability.
change_costChanges the cost of all actions to use Wrath instead of plasma.
do_abilityDistorts the view of every valid living mob in range.
end_abilityEnds the ability.
stop_abilityStops processing, and unregisters related signals.
taking_damageWhen taking damage, resets decay and returns an amount of Wrath proportional to the damage. +If damage taken would kill the user, it is instead reduced, and
toggle_buffToggles the buff, which increases the owner's damage based on a multiplier, and gives them a particle effect.
+

Var Details

ability_active + + + + +

+

Whether Primal Wrath is active or not.

block_overlay + + + + +

+

The overlay used when Primal Wrath blocks fatal damage.

currently_roaring + + + + +

+

Whether we are currently roaring or not.

decay_amount + + + + +

+

Base amount of Wrath lost every valid tick.

decay_time + + + + +

+

Timer that determines when Wrath will start decaying.

particle_holder + + + + +

+

Used for particles. Holds the particles instead of the mob. See particle_holder for documentation.

Proc Details

ability_check +

+

Checks if the affected target should no longer be affected by the ability.

+

change_cost +

+

Changes the cost of all actions to use Wrath instead of plasma.

do_ability +

+

Distorts the view of every valid living mob in range.

+

end_ability +

+

Ends the ability.

stop_ability +

+

Stops processing, and unregisters related signals.

taking_damage +

+

When taking damage, resets decay and returns an amount of Wrath proportional to the damage. +If damage taken would kill the user, it is instead reduced, and

+

toggle_buff +

+

Toggles the buff, which increases the owner's damage based on a multiplier, and gives them a particle effect.

+
+ + + diff --git a/datum/action/ability/xeno_action/psychic_summon.html b/datum/action/ability/xeno_action/psychic_summon.html new file mode 100644 index 0000000000000..d1290c4c3531c --- /dev/null +++ b/datum/action/ability/xeno_action/psychic_summon.html @@ -0,0 +1,42 @@ + + + + + + + /datum/action/ability/xeno_action/psychic_summon - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

psychic_summon + + + +

+ + + +

Procs

is_active_summonChecks if our summon was cancelled
request_adminsSends a message to admins, prompting them if they want to cancel a psychic summon

Proc Details

is_active_summon +

+

Checks if our summon was cancelled

request_admins +

+

Sends a message to admins, prompting them if they want to cancel a psychic summon

+ + + diff --git a/datum/action/ability/xeno_action/psychic_trace.html b/datum/action/ability/xeno_action/psychic_trace.html new file mode 100644 index 0000000000000..8d2a3c3794be6 --- /dev/null +++ b/datum/action/ability/xeno_action/psychic_trace.html @@ -0,0 +1,35 @@ + + + + + + + /datum/action/ability/xeno_action/psychic_trace - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

psychic_trace + + + +

+ + +

Procs

calculate_mark_healthWhere we calculate the approximate health of our trace target

Proc Details

calculate_mark_health +

+

Where we calculate the approximate health of our trace target

+ + + diff --git a/datum/action/ability/xeno_action/rage.html b/datum/action/ability/xeno_action/rage.html new file mode 100644 index 0000000000000..0c4fba63d036f --- /dev/null +++ b/datum/action/ability/xeno_action/rage.html @@ -0,0 +1,71 @@ + + + + + + + /datum/action/ability/xeno_action/rage - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

rage + + + +

+ + + + + + + +

Vars

rage_plasmaDetermines the Plasma to remove when Rage ends
rage_powerDetermines the power of Rage's many effects. Power scales inversely with the Ravager's HP; min 0.25 at 50% of Max HP, max 1 while in negative HP. 0.5 and above triggers especial effects.
rage_sunderDetermines the Sunder to impose when Rage ends

Procs

drain_slashWarns the user when his rage is about to end.
rage_deactivateCalled when we want to end the Rage effect
rage_warningWarns the user when his rage is about to end.
+

Var Details

rage_plasma + + + + +

+

Determines the Plasma to remove when Rage ends

rage_power + + + + +

+

Determines the power of Rage's many effects. Power scales inversely with the Ravager's HP; min 0.25 at 50% of Max HP, max 1 while in negative HP. 0.5 and above triggers especial effects.

rage_sunder + + + + +

+

Determines the Sunder to impose when Rage ends

Proc Details

drain_slash +

+

Warns the user when his rage is about to end.

rage_deactivate +

+

Called when we want to end the Rage effect

rage_warning +

+

Warns the user when his rage is about to end.

+ + + diff --git a/datum/action/ability/xeno_action/rally_minion.html b/datum/action/ability/xeno_action/rally_minion.html new file mode 100644 index 0000000000000..53245f6faf976 --- /dev/null +++ b/datum/action/ability/xeno_action/rally_minion.html @@ -0,0 +1,36 @@ + + + + + + + /datum/action/ability/xeno_action/rally_minion - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

rally_minion + + + +

+ + +

Vars

minions_agressiveIf minions should be agressive
+

Var Details

minions_agressive + + + + +

+

If minions should be agressive

+ + + diff --git a/datum/action/ability/xeno_action/ready_charge.html b/datum/action/ability/xeno_action/ready_charge.html new file mode 100644 index 0000000000000..2ba52fcad9410 --- /dev/null +++ b/datum/action/ability/xeno_action/ready_charge.html @@ -0,0 +1,43 @@ + + + + + + + /datum/action/ability/xeno_action/ready_charge - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

ready_charge + + + +

+ + + +

Vars

agile_chargeIf this charge should keep momentum on dir change and if it can charge diagonally
should_start_onWhether this ability should be activated when given.
+

Var Details

agile_charge + + + + +

+

If this charge should keep momentum on dir change and if it can charge diagonally

should_start_on + + + + +

+

Whether this ability should be activated when given.

+ + + diff --git a/datum/action/ability/xeno_action/reagent_slash.html b/datum/action/ability/xeno_action/reagent_slash.html new file mode 100644 index 0000000000000..e831f21d15557 --- /dev/null +++ b/datum/action/ability/xeno_action/reagent_slash.html @@ -0,0 +1,71 @@ + + + + + + + /datum/action/ability/xeno_action/reagent_slash - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

reagent_slash + + + +

+ + + + + + + +

Vars

particle_holderUsed for particles. Holds the particles instead of the mob. See particle_holder for documentation.
reagent_slash_countHow many remaining reagent slashes the Defiler has
reagent_slash_duration_timer_idTimer ID for the Reagent Slashes timer; we reference this to delete the timer if the effect lapses before the timer does
reagent_slash_reagentDefines the reagent being used for reagent slashes; locks it to the selected reagent on activation

Procs

reagent_slashCalled when we slash while reagent slash is active
reagent_slash_deactivateCalled when the duration of reagent slash lapses
+

Var Details

particle_holder + + + + +

+

Used for particles. Holds the particles instead of the mob. See particle_holder for documentation.

reagent_slash_count + + + + +

+

How many remaining reagent slashes the Defiler has

reagent_slash_duration_timer_id + + + + +

+

Timer ID for the Reagent Slashes timer; we reference this to delete the timer if the effect lapses before the timer does

reagent_slash_reagent + + + + +

+

Defines the reagent being used for reagent slashes; locks it to the selected reagent on activation

Proc Details

reagent_slash +

+

Called when we slash while reagent slash is active

reagent_slash_deactivate +

+

Called when the duration of reagent slash lapses

+ + + diff --git a/datum/action/ability/xeno_action/seismic_fracture.html b/datum/action/ability/xeno_action/seismic_fracture.html new file mode 100644 index 0000000000000..3fdfe6684aca6 --- /dev/null +++ b/datum/action/ability/xeno_action/seismic_fracture.html @@ -0,0 +1,60 @@ + + + + + + + /datum/action/ability/xeno_action/seismic_fracture - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

seismic_fracture + + + +

+ + + +

Procs

do_abilityHandles the warnings, calling the following procs, as well as any alterations caused by Primal Wrath. +This has to be cut off from use_ability() to optimize code, due to an interaction with Earth Pillars. +Earth Pillars caught in the range of Seismic Fracture reflect the attack by calling this proc again.
do_attack_extraHandles the additional attacks caused by Primal Wrath. These are done iteratively rather than instantly, with a delay inbetween.

Proc Details

do_ability +

+

Handles the warnings, calling the following procs, as well as any alterations caused by Primal Wrath. +This has to be cut off from use_ability() to optimize code, due to an interaction with Earth Pillars. +Earth Pillars caught in the range of Seismic Fracture reflect the attack by calling this proc again.

+

do_attack_extra +

+

Handles the additional attacks caused by Primal Wrath. These are done iteratively rather than instantly, with a delay inbetween.

+
+ + + diff --git a/datum/action/ability/xeno_action/set_xeno_lead.html b/datum/action/ability/xeno_action/set_xeno_lead.html new file mode 100644 index 0000000000000..ce52c4828e8ee --- /dev/null +++ b/datum/action/ability/xeno_action/set_xeno_lead.html @@ -0,0 +1,56 @@ + + + + + + + /datum/action/ability/xeno_action/set_xeno_lead - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

set_xeno_lead + + + +

+ + + + + +

Procs

select_xeno_leaderCheck if there is an empty slot and promote the passed xeno to a hive leader
set_xeno_leaderPromote the passed xeno to a hive leader, should not be called direct
try_use_actionSignal handler for the set_xeno_lead action that checks can_use
unset_xeno_leaderRemove the passed xeno's leadership

Proc Details

select_xeno_leader +

+

Check if there is an empty slot and promote the passed xeno to a hive leader

set_xeno_leader +

+

Promote the passed xeno to a hive leader, should not be called direct

try_use_action +

+

Signal handler for the set_xeno_lead action that checks can_use

unset_xeno_leader +

+

Remove the passed xeno's leadership

+ + + diff --git a/datum/action/ability/xeno_action/sow.html b/datum/action/ability/xeno_action/sow.html new file mode 100644 index 0000000000000..8590ae0fda6a5 --- /dev/null +++ b/datum/action/ability/xeno_action/sow.html @@ -0,0 +1,35 @@ + + + + + + + /datum/action/ability/xeno_action/sow - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

sow + + + +

+ + +

Procs

choose_plantShows a radial menu to pick the plant they wish to put down when they use the ability

Proc Details

choose_plant +

+

Shows a radial menu to pick the plant they wish to put down when they use the ability

+ + + diff --git a/datum/action/ability/xeno_action/stealth.html b/datum/action/ability/xeno_action/stealth.html new file mode 100644 index 0000000000000..dea3e4c1b4aca --- /dev/null +++ b/datum/action/ability/xeno_action/stealth.html @@ -0,0 +1,113 @@ + + + + + + + /datum/action/ability/xeno_action/stealth - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

stealth + + + +

+ + + + + + + + + + + + + +

Vars

total_damage_takenDamage taken during stealth

Procs

cancel_stealthDisables stealth
damage_takenBreaks stealth if sufficient damage taken
handle_stealthUpdates or cancels stealth
handle_stealth_moveHandles moving while in stealth
mob_hitCallback for when a mob gets hit as part of a pounce
on_obj_attackSignal wrapper to verify that an object is damageable before breaking stealth
plasma_regenModifier to plasma regen when stealthed
sneak_attack_cooldownRe-enables sneak attack if still stealthed
sneak_attack_pounceCallback listening for a xeno using the pounce ability
sneak_attack_slashSpecial sneak attack when stealthed
sneak_attack_zoneMakes sneak attack always accurate to def zone
+

Var Details

total_damage_taken + + + + +

+

Damage taken during stealth

Proc Details

cancel_stealth +

+

Disables stealth

damage_taken +

+

Breaks stealth if sufficient damage taken

handle_stealth +

+

Updates or cancels stealth

handle_stealth_move +

+

Handles moving while in stealth

mob_hit +

+

Callback for when a mob gets hit as part of a pounce

on_obj_attack +

+

Signal wrapper to verify that an object is damageable before breaking stealth

plasma_regen +

+

Modifier to plasma regen when stealthed

sneak_attack_cooldown +

+

Re-enables sneak attack if still stealthed

sneak_attack_pounce +

+

Callback listening for a xeno using the pounce ability

sneak_attack_slash +

+

Special sneak attack when stealthed

sneak_attack_zone +

+

Makes sneak attack always accurate to def zone

+ + + diff --git a/datum/action/ability/xeno_action/sticky_grenade.html b/datum/action/ability/xeno_action/sticky_grenade.html new file mode 100644 index 0000000000000..44cda9a471b9c --- /dev/null +++ b/datum/action/ability/xeno_action/sticky_grenade.html @@ -0,0 +1,36 @@ + + + + + + + /datum/action/ability/xeno_action/sticky_grenade - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

sticky_grenade + + + +

+ + +

Vars

nade_typeType of nade to be thrown
+

Var Details

nade_type + + + + +

+

Type of nade to be thrown

+ + + diff --git a/datum/action/ability/xeno_action/teleport.html b/datum/action/ability/xeno_action/teleport.html new file mode 100644 index 0000000000000..41e3f53de0e43 --- /dev/null +++ b/datum/action/ability/xeno_action/teleport.html @@ -0,0 +1,36 @@ + + + + + + + /datum/action/ability/xeno_action/teleport - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

teleport + + + +

+ + +

Vars

showing_mapIs the map being shown to the player right now?
+

Var Details

showing_map + + + + +

+

Is the map being shown to the player right now?

+ + + diff --git a/datum/action/ability/xeno_action/timestop.html b/datum/action/ability/xeno_action/timestop.html new file mode 100644 index 0000000000000..19d85436c4e79 --- /dev/null +++ b/datum/action/ability/xeno_action/timestop.html @@ -0,0 +1,57 @@ + + + + + + + /datum/action/ability/xeno_action/timestop - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

timestop + + + +

+ + + + + +

Vars

durationHow long is the bullet freeze staying
rangeThe range of the ability

Procs

play_sound_stopPlay the end ability sound
remove_bullet_freezeRemove the bullet freeze effect on affected turfs
+

Var Details

duration + + + + +

+

How long is the bullet freeze staying

range + + + + +

+

The range of the ability

Proc Details

play_sound_stop +

+

Play the end ability sound

remove_bullet_freeze +

+

Remove the bullet freeze effect on affected turfs

+ + + diff --git a/datum/action/ability/xeno_action/toggle_agility.html b/datum/action/ability/xeno_action/toggle_agility.html new file mode 100644 index 0000000000000..6eef28244ed21 --- /dev/null +++ b/datum/action/ability/xeno_action/toggle_agility.html @@ -0,0 +1,36 @@ + + + + + + + /datum/action/ability/xeno_action/toggle_agility - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

toggle_agility + + + +

+ + +

Vars

ability_activeWhether the ability is active or not.
+

Var Details

ability_active + + + + +

+

Whether the ability is active or not.

+ + + diff --git a/datum/action/ability/xeno_action/toggle_bomb.html b/datum/action/ability/xeno_action/toggle_bomb.html new file mode 100644 index 0000000000000..0f642ae1a5779 --- /dev/null +++ b/datum/action/ability/xeno_action/toggle_bomb.html @@ -0,0 +1,39 @@ + + + + + + + /datum/action/ability/xeno_action/toggle_bomb - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

toggle_bomb + + + +

+ + +

Procs

select_glob_radialOpens a radial menu to select a glob in and sets current ammo to the selected result.

Proc Details

select_glob_radial +

+

Opens a radial menu to select a glob in and sets current ammo to the selected result.

+
+ + + diff --git a/datum/action/ability/xeno_action/toggle_long_range.html b/datum/action/ability/xeno_action/toggle_long_range.html new file mode 100644 index 0000000000000..e8ed674374559 --- /dev/null +++ b/datum/action/ability/xeno_action/toggle_long_range.html @@ -0,0 +1,43 @@ + + + + + + + /datum/action/ability/xeno_action/toggle_long_range - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

toggle_long_range + + + +

+ + + +

Vars

tile_offsetThe offset in a direction for zoom_in
view_sizeThe size of the zoom for zoom_in
+

Var Details

tile_offset + + + + +

+

The offset in a direction for zoom_in

view_size + + + + +

+

The size of the zoom for zoom_in

+ + + diff --git a/datum/action/ability/xeno_action/toxic_slash.html b/datum/action/ability/xeno_action/toxic_slash.html new file mode 100644 index 0000000000000..ac51a9a6344ce --- /dev/null +++ b/datum/action/ability/xeno_action/toxic_slash.html @@ -0,0 +1,71 @@ + + + + + + + /datum/action/ability/xeno_action/toxic_slash - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

toxic_slash + + + +

+ + + + + + + +

Vars

ability_durationTimer for the ability; we reference this to delete the timer if the effect lapses before the timer does.
intoxication_stacksThe amount of stacks to apply per hit.
particle_holderUsed for particles. Holds the particles instead of the mob. See particle_holder for documentation.
remaining_slashesThe remaining amount of Toxic Slashes.

Procs

toxic_slashCalled when Toxic Slash is active.
toxic_slash_deactivateCalled when Toxic Slash expires.
+

Var Details

ability_duration + + + + +

+

Timer for the ability; we reference this to delete the timer if the effect lapses before the timer does.

intoxication_stacks + + + + +

+

The amount of stacks to apply per hit.

particle_holder + + + + +

+

Used for particles. Holds the particles instead of the mob. See particle_holder for documentation.

remaining_slashes + + + + +

+

The remaining amount of Toxic Slashes.

Proc Details

toxic_slash +

+

Called when Toxic Slash is active.

toxic_slash_deactivate +

+

Called when Toxic Slash expires.

+ + + diff --git a/datum/action/ability/xeno_action/vampirism.html b/datum/action/ability/xeno_action/vampirism.html new file mode 100644 index 0000000000000..4ee272ce282d3 --- /dev/null +++ b/datum/action/ability/xeno_action/vampirism.html @@ -0,0 +1,57 @@ + + + + + + + /datum/action/ability/xeno_action/vampirism - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

vampirism + + + +

+ + + + + +

Vars

heal_delayhow long we have to wait before healing again
particle_holderUsed for particles. Holds the particles instead of the mob. See particle_holder for documentation.
timer_refRef to our particle deletion timer

Procs

on_slashAdds the slashed mob to tracked damage mobs
+

Var Details

heal_delay + + + + +

+

how long we have to wait before healing again

particle_holder + + + + +

+

Used for particles. Holds the particles instead of the mob. See particle_holder for documentation.

timer_ref + + + + +

+

Ref to our particle deletion timer

Proc Details

on_slash +

+

Adds the slashed mob to tracked damage mobs

+ + + diff --git a/datum/action/ability/xeno_action/zero_form_beam.html b/datum/action/ability/xeno_action/zero_form_beam.html new file mode 100644 index 0000000000000..d6d28f4ffad94 --- /dev/null +++ b/datum/action/ability/xeno_action/zero_form_beam.html @@ -0,0 +1,71 @@ + + + + + + + /datum/action/ability/xeno_action/zero_form_beam - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

zero_form_beam + + + +

+ + + + + + + +

Vars

beamref to beam that is currently active
particlesparticle holder for the particle visual effects
targetslist of turfs we are hitting while shooting our beam
timer_refref to looping timer for the fire loop

Procs

execute_attackrecursive proc for firing the actual beam
stop_beamingends and cleans up beam
+

Var Details

beam + + + + +

+

ref to beam that is currently active

particles + + + + +

+

particle holder for the particle visual effects

targets + + + + +

+

list of turfs we are hitting while shooting our beam

timer_ref + + + + +

+

ref to looping timer for the fire loop

Proc Details

execute_attack +

+

recursive proc for firing the actual beam

stop_beaming +

+

ends and cleans up beam

+ + + diff --git a/datum/action/antenna.html b/datum/action/antenna.html new file mode 100644 index 0000000000000..6714bdfac1bc0 --- /dev/null +++ b/datum/action/antenna.html @@ -0,0 +1,36 @@ + + + + + + + /datum/action/antenna - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

antenna + + + +

+ + +

Vars

ai_droidThe droid linked to this ability
+

Var Details

ai_droid + + + + +

+

The droid linked to this ability

+ + + diff --git a/datum/action/bump_attack_toggle.html b/datum/action/bump_attack_toggle.html new file mode 100644 index 0000000000000..4d9c92246a7af --- /dev/null +++ b/datum/action/bump_attack_toggle.html @@ -0,0 +1,36 @@ + + + + + + + /datum/action/bump_attack_toggle - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

bump_attack_toggle + + + +

+ + +

Vars

attackingIf we are toggled to attack whoever we bump onto, set by the bumping attack component when its toggled
+

Var Details

attacking + + + + +

+

If we are toggled to attack whoever we bump onto, set by the bumping attack component when its toggled

+ + + diff --git a/datum/action/chem_booster/power.html b/datum/action/chem_booster/power.html new file mode 100644 index 0000000000000..5a66c9412863a --- /dev/null +++ b/datum/action/chem_booster/power.html @@ -0,0 +1,43 @@ + + + + + + + /datum/action/chem_booster/power - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

power + + + +

+ + + +

Vars

last_activated_timeRecords the last time the action was used to avoid accidentally cancelling the effect when spamming the button in-combat

Procs

update_onoff_iconUpdate icon based on the suit
+

Var Details

last_activated_time + + + + +

+

Records the last time the action was used to avoid accidentally cancelling the effect when spamming the button in-combat

Proc Details

update_onoff_icon +

+

Update icon based on the suit

+ + + diff --git a/datum/action/control_vehicle.html b/datum/action/control_vehicle.html new file mode 100644 index 0000000000000..eb3c1f7d5ffbc --- /dev/null +++ b/datum/action/control_vehicle.html @@ -0,0 +1,43 @@ + + + + + + + /datum/action/control_vehicle - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

control_vehicle + + + +

+ + + +

Vars

vehicleThe current controlled vehicle

Procs

clear_vehicleSignal handler to clear vehicle and stop remote control
+

Var Details

vehicle + + + + +

+

The current controlled vehicle

Proc Details

clear_vehicle +

+

Signal handler to clear vehicle and stop remote control

+ + + diff --git a/datum/action/innate/message_squad.html b/datum/action/innate/message_squad.html new file mode 100644 index 0000000000000..d676ec74c6ff4 --- /dev/null +++ b/datum/action/innate/message_squad.html @@ -0,0 +1,43 @@ + + + + + + + /datum/action/innate/message_squad - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

message_squad + + + +

+ + + +

Vars

skill_minWhat minimum level in that skill is needed to have that action
skill_nameWhat skill is needed to have this action
+

Var Details

skill_min + + + + +

+

What minimum level in that skill is needed to have that action

skill_name + + + + +

+

What skill is needed to have this action

+ + + diff --git a/datum/action/innate/order.html b/datum/action/innate/order.html new file mode 100644 index 0000000000000..21f50a03ab7f5 --- /dev/null +++ b/datum/action/innate/order.html @@ -0,0 +1,85 @@ + + + + + + + /datum/action/innate/order - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

order + + + +

+ + + + + + + + + +

Vars

arrow_typethe type of arrow used in the order
skill_minWhat minimum level in that skill is needed to have that action
skill_nameWhat skill is needed to have this action
verb_namethe word used to describe the action when notifying marines
visual_typethe type of the visual added on the ground. If it has no visual type, the order can have any atom has a target

Procs

Deactivate_signal_handlerSignal handler for deactivating the order
on_cooldown_finishLets any other orders know when we're off CD
send_orderPrint order visual to all marines squad hud and give them an arrow to follow the waypoint
+

Var Details

arrow_type + + + + +

+

the type of arrow used in the order

skill_min + + + + +

+

What minimum level in that skill is needed to have that action

skill_name + + + + +

+

What skill is needed to have this action

verb_name + + + + +

+

the word used to describe the action when notifying marines

visual_type + + + + +

+

the type of the visual added on the ground. If it has no visual type, the order can have any atom has a target

Proc Details

Deactivate_signal_handler +

+

Signal handler for deactivating the order

on_cooldown_finish +

+

Lets any other orders know when we're off CD

send_order +

+

Print order visual to all marines squad hud and give them an arrow to follow the waypoint

+ + + diff --git a/datum/action/innate/set_drop_target.html b/datum/action/innate/set_drop_target.html new file mode 100644 index 0000000000000..82267fd4f0287 --- /dev/null +++ b/datum/action/innate/set_drop_target.html @@ -0,0 +1,36 @@ + + + + + + + /datum/action/innate/set_drop_target - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

set_drop_target + + + +

+ + +

Vars

choosingLocks activating this action again while choosing to prevent signal shenanigan runtimes.
+

Var Details

choosing + + + + +

+

Locks activating this action again while choosing to prevent signal shenanigan runtimes.

+ + + diff --git a/datum/action/innate/set_teleport_target.html b/datum/action/innate/set_teleport_target.html new file mode 100644 index 0000000000000..469350e353994 --- /dev/null +++ b/datum/action/innate/set_teleport_target.html @@ -0,0 +1,36 @@ + + + + + + + /datum/action/innate/set_teleport_target - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

set_teleport_target + + + +

+ + +

Vars

choosingLocks activating this action again while choosing to prevent signal shenanigan runtimes.
+

Var Details

choosing + + + + +

+

Locks activating this action again while choosing to prevent signal shenanigan runtimes.

+ + + diff --git a/datum/action/item_action.html b/datum/action/item_action.html new file mode 100644 index 0000000000000..b136bd2b764c5 --- /dev/null +++ b/datum/action/item_action.html @@ -0,0 +1,45 @@ + + + + + + + /datum/action/item_action - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

item_action + + + +

+ + + +

Vars

holder_itemthe item that has this action in its list of actions. Is not necessarily the target +e.g. gun attachment action: target = attachment, holder = gun.
use_obj_appeareanceDefines wheter we overlay the image of the obj we are linked to
+

Var Details

holder_item + + + + +

+

the item that has this action in its list of actions. Is not necessarily the target +e.g. gun attachment action: target = attachment, holder = gun.

use_obj_appeareance + + + + +

+

Defines wheter we overlay the image of the obj we are linked to

+ + + diff --git a/datum/action/item_action/coilgun_power.html b/datum/action/item_action/coilgun_power.html new file mode 100644 index 0000000000000..6ba2bbefea86a --- /dev/null +++ b/datum/action/item_action/coilgun_power.html @@ -0,0 +1,36 @@ + + + + + + + /datum/action/item_action/coilgun_power - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

coilgun_power + + + +

+ + +

Vars

holder_gunThe coilgun associated with this action
+

Var Details

holder_gun + + + + +

+

The coilgun associated with this action

+ + + diff --git a/datum/action/minimap.html b/datum/action/minimap.html new file mode 100644 index 0000000000000..c6fcdd211bf72 --- /dev/null +++ b/datum/action/minimap.html @@ -0,0 +1,113 @@ + + + + + + + /datum/action/minimap - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

minimap + + + +

+ +

Action that gives the owner access to the minimap pool

+ + + + + + + + + + + +

Vars

default_overwatch_levelSets a fixed z level to be tracked by this minimap action instead of being influenced by the owner's / locator override's z level.
locatorMinimap "You are here" indicator for when it's up
locator_overrideOverrides what the locator tracks aswell what z the map displays as opposed to always tracking the minimap's owner. Default behavior when null.
mapMinimap object we'll be displaying
marker_flagsmarker flags this will give the target, mostly used for marine minimaps
minimap_displayedboolean as to whether the minimap is currently shown
minimap_flagsFlags to allow the owner to see others of this type

Procs

clear_locator_overrideCLears the locator override in case the override target is deleted
on_exit_checkchecks if we should clear override if the owner exits this atom
on_owner_z_changeUpdates the map when the owner changes zlevel
override_locatorOverrides the minimap locator to a given atom
toggle_minimapToggles the minimap, has a variable to force on or off (most likely only going to be used to close it)
+

Var Details

default_overwatch_level + + + + +

+

Sets a fixed z level to be tracked by this minimap action instead of being influenced by the owner's / locator override's z level.

locator + + + + +

+

Minimap "You are here" indicator for when it's up

locator_override + + + + +

+

Overrides what the locator tracks aswell what z the map displays as opposed to always tracking the minimap's owner. Default behavior when null.

map + + + + +

+

Minimap object we'll be displaying

marker_flags + + + + +

+

marker flags this will give the target, mostly used for marine minimaps

minimap_displayed + + + + +

+

boolean as to whether the minimap is currently shown

minimap_flags + + + + +

+

Flags to allow the owner to see others of this type

Proc Details

clear_locator_override +

+

CLears the locator override in case the override target is deleted

on_exit_check +

+

checks if we should clear override if the owner exits this atom

on_owner_z_change +

+

Updates the map when the owner changes zlevel

override_locator +

+

Overrides the minimap locator to a given atom

toggle_minimap +

+

Toggles the minimap, has a variable to force on or off (most likely only going to be used to close it)

+ + + diff --git a/datum/action/set_agressivity.html b/datum/action/set_agressivity.html new file mode 100644 index 0000000000000..53ca72f76c06f --- /dev/null +++ b/datum/action/set_agressivity.html @@ -0,0 +1,36 @@ + + + + + + + /datum/action/set_agressivity - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

set_agressivity + + + +

+ + +

Vars

zombies_agressiveIf zombies should be agressive
+

Var Details

zombies_agressive + + + + +

+

If zombies should be agressive

+ + + diff --git a/datum/action/skill/issue_order.html b/datum/action/skill/issue_order.html new file mode 100644 index 0000000000000..f7ff1df377119 --- /dev/null +++ b/datum/action/skill/issue_order.html @@ -0,0 +1,35 @@ + + + + + + + /datum/action/skill/issue_order - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

issue_order + + + +

+ + +

Procs

on_cooldown_finishLets any other orders know when we're off CD

Proc Details

on_cooldown_finish +

+

Lets any other orders know when we're off CD

+ + + diff --git a/datum/action/suit_autodoc.html b/datum/action/suit_autodoc.html new file mode 100644 index 0000000000000..e218c45775d84 --- /dev/null +++ b/datum/action/suit_autodoc.html @@ -0,0 +1,35 @@ + + + + + + + /datum/action/suit_autodoc - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

suit_autodoc + + + +

+ + +

Procs

can_use_actionAction buttons

Proc Details

can_use_action +

+

Action buttons

+ + + diff --git a/datum/action/vehicle/sealed/armored.html b/datum/action/vehicle/sealed/armored.html new file mode 100644 index 0000000000000..b0693b41a5afa --- /dev/null +++ b/datum/action/vehicle/sealed/armored.html @@ -0,0 +1,36 @@ + + + + + + + /datum/action/vehicle/sealed/armored - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

armored + + + +

+ +

yes this is a blatant mech copypaste

+

Vars

chassismech owner of this action
+

Var Details

chassis + + + + +

+

mech owner of this action

+ + + diff --git a/datum/action/vehicle/sealed/armored/smoke_screen.html b/datum/action/vehicle/sealed/armored/smoke_screen.html new file mode 100644 index 0000000000000..0c90ea277d8f9 --- /dev/null +++ b/datum/action/vehicle/sealed/armored/smoke_screen.html @@ -0,0 +1,36 @@ + + + + + + + /datum/action/vehicle/sealed/armored/smoke_screen - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

smoke_screen + + + +

+ + +

Vars

shots_remainingUses of this ability remaining
+

Var Details

shots_remaining + + + + +

+

Uses of this ability remaining

+ + + diff --git a/datum/action/vehicle/sealed/armored/swap_seat.html b/datum/action/vehicle/sealed/armored/swap_seat.html new file mode 100644 index 0000000000000..dd4785ba94100 --- /dev/null +++ b/datum/action/vehicle/sealed/armored/swap_seat.html @@ -0,0 +1,35 @@ + + + + + + + /datum/action/vehicle/sealed/armored/swap_seat - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

swap_seat + + + +

+ + +

Procs

transfer_checkschecks if owner can still transfer

Proc Details

transfer_checks +

+

checks if owner can still transfer

+ + + diff --git a/datum/action/vehicle/sealed/mecha.html b/datum/action/vehicle/sealed/mecha.html new file mode 100644 index 0000000000000..893501fb320f0 --- /dev/null +++ b/datum/action/vehicle/sealed/mecha.html @@ -0,0 +1,36 @@ + + + + + + + /datum/action/vehicle/sealed/mecha - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

mecha + + + +

+ + +

Vars

chassismech owner of this action
+

Var Details

chassis + + + + +

+

mech owner of this action

+ + + diff --git a/datum/action/vehicle/sealed/mecha/ivanov_strike.html b/datum/action/vehicle/sealed/mecha/ivanov_strike.html new file mode 100644 index 0000000000000..39a1314e00914 --- /dev/null +++ b/datum/action/vehicle/sealed/mecha/ivanov_strike.html @@ -0,0 +1,96 @@ + + + + + + + /datum/action/vehicle/sealed/mecha/ivanov_strike - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

ivanov_strike + + + +

+ + + + + + + + + +

Vars

rockets_lefthow many rockets can we send with ivanov strike
strike_cooldown_timecooldown time between strike uses

Procs

drop_missile
end_missile_targeting
on_equipment_clicksignal called from clicking with equipment
on_melee_clicksignal called from clicking with no equipment
reset_button_icon
start_missile_targeting
+

Var Details

rockets_left + + + + +

+

how many rockets can we send with ivanov strike

strike_cooldown_time + + + + +

+

cooldown time between strike uses

Proc Details

drop_missile +

+ drop_missile +

Called via intercepted clicks when the missile ability is active +Spawns a droppod and starts the cooldown of the missile strike ability +arguments:

+

end_missile_targeting +

+ end_missile_targeting +

Called by the ivanov strike datum action or other actions that would end targetting +Unhooks signals into clicking to call drop_missile plus other flavor like the overlay

on_equipment_click +

+

signal called from clicking with equipment

on_melee_click +

+

signal called from clicking with no equipment

reset_button_icon +

+ reset_button_icon +

called after an addtimer when the cooldown is finished with the ivanov strike, resets the icon

start_missile_targeting +

+ start_missile_targeting +

Called by the ivanov strike datum action, hooks signals into clicking to call drop_missile +Plus other flavor like the overlay

+ + + diff --git a/datum/action/vehicle/sealed/mecha/skyfall.html b/datum/action/vehicle/sealed/mecha/skyfall.html new file mode 100644 index 0000000000000..1c27a7fc077a6 --- /dev/null +++ b/datum/action/vehicle/sealed/mecha/skyfall.html @@ -0,0 +1,87 @@ + + + + + + + /datum/action/vehicle/sealed/mecha/skyfall - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

skyfall + + + +

+ +

Savannah Skyfall

+ + + + + + +

Vars

skyfall_charge_levelskyfall builds up in charges every 2 seconds, when it reaches 5 charges the ability actually starts
skyfall_cooldown_timecooldown time between skyfall uses

Procs

abort_skyfall
begin_landing
land
reset_button_icon
skyfall_charge_loop
+

Var Details

skyfall_charge_level + + + + +

+

skyfall builds up in charges every 2 seconds, when it reaches 5 charges the ability actually starts

skyfall_cooldown_time + + + + +

+

cooldown time between skyfall uses

Proc Details

abort_skyfall +

+ abort_skyfall +

Called by skyfall_charge_loop if the charging is interrupted. +Applies cooldown and resets charge level

begin_landing +

+ begin_landing +

Called by skyfall_charge_loop after some time if it reaches full charge level. +it's just the animations of the mecha coming down + another timer for the final landing effect

land +

+ land +

Called by skyfall_charge_loop after some time if it reaches full charge level. +it's just the animations of the mecha coming down + another timer for the final landing effect

reset_button_icon +

+ reset_button_icon +

called after an addtimer when the cooldown is finished with the skyfall, resets the icon

skyfall_charge_loop +

+ skyfall_charge_loop +

The actual skyfall loop itself. Repeatedly calls itself after a do_after, so any interruptions will call abort_skyfall and end the loop +the other way the loop ends is if charge level (var it's ticking up) gets to SKYFALL_CHARGELEVEL_LAUNCH, in which case it ends the loop and does the ability.

+ + + diff --git a/datum/admins.html b/datum/admins.html new file mode 100644 index 0000000000000..1f01c78169a2e --- /dev/null +++ b/datum/admins.html @@ -0,0 +1,196 @@ + + + + + + + /datum/admins - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

admins + + + +

+ + + + + + + + + + + + + + + + + + + + + + + +

Vars

deadminedWhether this admin is currently deadminned or not
filterifficReference to filteriffic tgui holder datum
ghost_interactWhether this admin has ghost interaction enabled
invisiminedWhether this admin is invisiminning
particle_testReference to particle editor tgui holder datum
tagged_datumsA lazylist of tagged datums, for quick reference with the View Tags verb

Procs

add_tagged_datumInserts the target_datum into /datum/admins/var/tagged_datums, for later reference.
adjust_gravityAdjusts gravity, modifying the jump component for all mobs
create_ifriendHandles actually spawning in the friend, if the rest of the checks pass
delete_squadAdmin verb to delete a squad completely
display_tagsDisplay all of the tagged datums
handle_tagged_delGet ahead of the curve with deleting
open_campaign_panelOpens the campaign specific admin panel
poll_list_panelShows a list of all current and future polls and buttons to edit or delete them or create a new poll.
poll_management_panelShow the options for creating a poll or editing its parameters along with its linked options.
poll_option_panelShow the options for creating a poll option or editing its parameters.
poll_option_parse_hrefProcesses topic data from poll option panel.
poll_parse_hrefProcesses topic data from poll management panel.
remove_tagged_datumAttempts to remove the specified datum from /datum/admins/var/tagged_datums if it exists
set_xeno_stat_buffsWill apply on every xeno a multiplicative buff on health, regen and damage.
toggle_sdd_possesionToggles players' ability to take over SSD mobs
toggle_valhallaToggles players' ability to join valhalla
+

Var Details

deadmined + + + + +

+

Whether this admin is currently deadminned or not

filteriffic + + + + +

+

Reference to filteriffic tgui holder datum

ghost_interact + + + + +

+

Whether this admin has ghost interaction enabled

invisimined + + + + +

+

Whether this admin is invisiminning

particle_test + + + + +

+

Reference to particle editor tgui holder datum

tagged_datums + + + + +

+

A lazylist of tagged datums, for quick reference with the View Tags verb

Proc Details

add_tagged_datum +

+

Inserts the target_datum into /datum/admins/var/tagged_datums, for later reference.

+

Arguments:

+

adjust_gravity +

+

Adjusts gravity, modifying the jump component for all mobs

create_ifriend +

+

Handles actually spawning in the friend, if the rest of the checks pass

delete_squad +

+

Admin verb to delete a squad completely

display_tags +

+

Display all of the tagged datums

handle_tagged_del +

+

Get ahead of the curve with deleting

open_campaign_panel +

+

Opens the campaign specific admin panel

poll_list_panel +

+

Shows a list of all current and future polls and buttons to edit or delete them or create a new poll.

poll_management_panel +

+

Show the options for creating a poll or editing its parameters along with its linked options.

poll_option_panel +

+

Show the options for creating a poll option or editing its parameters.

poll_option_parse_href +

+

Processes topic data from poll option panel.

+

Reads through returned form data and assigns data to the option datum, creating a new one if required, before passing it to be saved. +Also does some simple error checking to ensure the option will be valid before creation.

poll_parse_href +

+

Processes topic data from poll management panel.

+

Reads through returned form data and assigns data to the poll datum, creating a new one if required, before passing it to be saved. +Also does some simple error checking to ensure the poll will be valid before creation.

remove_tagged_datum +

+

Attempts to remove the specified datum from /datum/admins/var/tagged_datums if it exists

+

Arguments:

+

set_xeno_stat_buffs +

+

Will apply on every xeno a multiplicative buff on health, regen and damage.

toggle_sdd_possesion +

+

Toggles players' ability to take over SSD mobs

toggle_valhalla +

+

Toggles players' ability to join valhalla

+ + + diff --git a/datum/ai_behavior.html b/datum/ai_behavior.html new file mode 100644 index 0000000000000..60101b191626a --- /dev/null +++ b/datum/ai_behavior.html @@ -0,0 +1,316 @@ + + + + + + + /datum/ai_behavior - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

ai_behavior + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

anti_stuck_timerWhen this timer is up, we force a change of node to ensure that the ai will never stay stuck trying to go to a specific node
atom_to_walk_toWhat atom is the ai moving to
base_actionThe standard ation of the AI, aka what it should do at the init or when going back to "normal" behavior
current_actionWhat the ai is doing right now
current_nodeCurrent node to use for calculating action states: this is the mob's node
distance_to_maintainHow far should we stay away from atom_to_walk_to
escorted_atomWhat we will escort
goal_nodeThe node goal of this ai
goal_nodesA list of nodes the ai should go to in order to go to goal_node
identifierAn identifier associated with this behavior, used for accessing specific values of a node's weights
is_offered_on_creationIf the mob attached to the ai is offered on xeno creation
minimum_healthMinimum health percentage before the ai tries to run away
mob_parentRef to the parent associated with this mind
registered_for_moveAre we already registered for normal pathfinding
registered_for_node_pathfindingAre we waiting for advanced pathfinding
sidestep_probProb chance of sidestepping (left or right) when distance maintained with target
target_distanceHow far will we look for targets
turfs_in_pathA list of turfs the ai should go in order to get to atom_to_walk_to
weak_escortShould we lose the escorted atom if we change action

Procs

ai_do_moveMoves the ai toward its atom_to_walk_to
ask_for_pathfindingRegister on advanced pathfinding subsytem to get a tile pathfinding
change_actionCleanup old state vars, start the movement towards our new target
clean_escorted_atomclean the escorted atom var to avoid harddels
clean_goal_nodeClean the goal node
cleanup_current_actionCleans up signals related to the action and element(s)
cleanup_signalsClean every signal on the ai_behavior
deal_with_obstacleSignal handler when the ai is blocked by an obstacle
finished_node_moveWe finished moving to a node, let's pick a random nearby one to travel to
finished_path_moveSignal handler when we reached our current tile goal
global_set_escorted_atomChange atom to walk to if the order comes from a corresponding commander
late_initializeSet behaviour to base behavior
look_for_new_stateCheck if we need to adopt a new state
look_for_next_nodeTry to find a node to go to. If ignore_current_node is true, we will just find the closest current_node, and not the current_node best adjacent node
look_for_node_pathLook for the a* node path to get to goal_node
look_for_tile_pathLook for the a* tile path to get to atom_to_walk_to
scheduled_moveMove the ai and schedule the next move
set_agressivitySet the target distance to be normal (initial) or very low (almost passive)
set_current_nodeSet the current node to next_node
set_escorted_atomSet the escorted atom.
set_goal_nodeSet the goal node
start_aiRegister ai behaviours
+

Var Details

anti_stuck_timer + + + + +

+

When this timer is up, we force a change of node to ensure that the ai will never stay stuck trying to go to a specific node

atom_to_walk_to + + + + +

+

What atom is the ai moving to

base_action + + + + +

+

The standard ation of the AI, aka what it should do at the init or when going back to "normal" behavior

current_action + + + + +

+

What the ai is doing right now

current_node + + + + +

+

Current node to use for calculating action states: this is the mob's node

distance_to_maintain + + + + +

+

How far should we stay away from atom_to_walk_to

escorted_atom + + + + +

+

What we will escort

goal_node + + + + +

+

The node goal of this ai

goal_nodes + + + + +

+

A list of nodes the ai should go to in order to go to goal_node

identifier + + + + +

+

An identifier associated with this behavior, used for accessing specific values of a node's weights

is_offered_on_creation + + + + +

+

If the mob attached to the ai is offered on xeno creation

minimum_health + + + + +

+

Minimum health percentage before the ai tries to run away

mob_parent + + + + +

+

Ref to the parent associated with this mind

registered_for_move + + + + +

+

Are we already registered for normal pathfinding

registered_for_node_pathfinding + + + + +

+

Are we waiting for advanced pathfinding

sidestep_prob + + + + +

+

Prob chance of sidestepping (left or right) when distance maintained with target

target_distance + + + + +

+

How far will we look for targets

turfs_in_path + + + + +

+

A list of turfs the ai should go in order to get to atom_to_walk_to

weak_escort + + + + +

+

Should we lose the escorted atom if we change action

Proc Details

ai_do_move +

+

Moves the ai toward its atom_to_walk_to

ask_for_pathfinding +

+

Register on advanced pathfinding subsytem to get a tile pathfinding

change_action +

+

Cleanup old state vars, start the movement towards our new target

clean_escorted_atom +

+

clean the escorted atom var to avoid harddels

clean_goal_node +

+

Clean the goal node

cleanup_current_action +

+

Cleans up signals related to the action and element(s)

cleanup_signals +

+

Clean every signal on the ai_behavior

deal_with_obstacle +

+

Signal handler when the ai is blocked by an obstacle

finished_node_move +

+

We finished moving to a node, let's pick a random nearby one to travel to

finished_path_move +

+

Signal handler when we reached our current tile goal

global_set_escorted_atom +

+

Change atom to walk to if the order comes from a corresponding commander

late_initialize +

+

Set behaviour to base behavior

look_for_new_state +

+

Check if we need to adopt a new state

look_for_next_node +

+

Try to find a node to go to. If ignore_current_node is true, we will just find the closest current_node, and not the current_node best adjacent node

look_for_node_path +

+

Look for the a* node path to get to goal_node

look_for_tile_path +

+

Look for the a* tile path to get to atom_to_walk_to

scheduled_move +

+

Move the ai and schedule the next move

set_agressivity +

+

Set the target distance to be normal (initial) or very low (almost passive)

set_current_node +

+

Set the current node to next_node

set_escorted_atom +

+

Set the escorted atom.

set_goal_node +

+

Set the goal node

start_ai +

+

Register ai behaviours

+ + + diff --git a/datum/ai_behavior/puppet.html b/datum/ai_behavior/puppet.html new file mode 100644 index 0000000000000..503ad3db31dbc --- /dev/null +++ b/datum/ai_behavior/puppet.html @@ -0,0 +1,171 @@ + + + + + + + /datum/ai_behavior/puppet - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

puppet + + + +

+ + + + + + + + + + + + + + + + + + + + + +

Vars

feedthe feed ability
master_refweakref to our puppeteer
too_far_escortshould we go back to escorting the puppeteer if we stray too far

Procs

attack_targetSignal handler to try to attack our target +Attack our current atom we are moving to, if targetted is specified attack that instead
change_orderchanges our current behavior with a define (order), optionally with a target, FALSE means fail and TRUE means success
cleanup_signalscleans up signals and unregisters obstructed move signal
climb_window_framemakes our parent climb over a turf with a window by setting its location to it
deal_with_obstaclebehavior to deal with obstacles
die_on_master_deathsignal handler for if the master (puppeteer) dies, gibs the puppet
do_feeduses our feed ability if possible and it exists, on the target
do_jumpresist when puppeter does
look_for_new_statelooks for a new state, handles recalling if too far and some AI shenanigans
parent_resistresist when puppeter does
register_action_signalsoverride for MOVING_TO_ATOM to register signals for maintaining distance with our target and attacking
seek_and_attackseeks a living humans in a 9 tile range near our parent, picks one, then changes our action to move towards it and attack.
seek_and_attack_closestattack the first closest human, by moving towards it
start_aistarts AI and registers obstructed move signal
start_restingrest when puppeter does
stop_restingstop resting when puppeter does
unregister_action_signalsoverride for MOVING_TO_ATOM to unregister signals for maintaining distance with our target and attacking
+

Var Details

feed + + + + +

+

the feed ability

master_ref + + + + +

+

weakref to our puppeteer

too_far_escort + + + + +

+

should we go back to escorting the puppeteer if we stray too far

Proc Details

attack_target +

+

Signal handler to try to attack our target +Attack our current atom we are moving to, if targetted is specified attack that instead

change_order +

+

changes our current behavior with a define (order), optionally with a target, FALSE means fail and TRUE means success

cleanup_signals +

+

cleans up signals and unregisters obstructed move signal

climb_window_frame +

+

makes our parent climb over a turf with a window by setting its location to it

deal_with_obstacle +

+

behavior to deal with obstacles

die_on_master_death +

+

signal handler for if the master (puppeteer) dies, gibs the puppet

do_feed +

+

uses our feed ability if possible and it exists, on the target

do_jump +

+

resist when puppeter does

look_for_new_state +

+

looks for a new state, handles recalling if too far and some AI shenanigans

parent_resist +

+

resist when puppeter does

register_action_signals +

+

override for MOVING_TO_ATOM to register signals for maintaining distance with our target and attacking

seek_and_attack +

+

seeks a living humans in a 9 tile range near our parent, picks one, then changes our action to move towards it and attack.

seek_and_attack_closest +

+

attack the first closest human, by moving towards it

start_ai +

+

starts AI and registers obstructed move signal

start_resting +

+

rest when puppeter does

stop_resting +

+

stop resting when puppeter does

unregister_action_signals +

+

override for MOVING_TO_ATOM to unregister signals for maintaining distance with our target and attacking

+ + + diff --git a/datum/ai_behavior/spiderling.html b/datum/ai_behavior/spiderling.html new file mode 100644 index 0000000000000..5663c1dd42598 --- /dev/null +++ b/datum/ai_behavior/spiderling.html @@ -0,0 +1,154 @@ + + + + + + + /datum/ai_behavior/spiderling - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

spiderling + + + +

+ + + + + + + + + + + + + + + + + + + +

Procs

apply_spiderling_jellySignal handler to apply resin jelly to the spiderling whenever widow gets it
attack_targetSignal handler to try to attack our target
attempt_guardIf the spiderling's mother goes into crit, the spiderlings will stop what they are doing and attempt to shield her
attempt_unguardSpiderling's mother woke up from crit; reset stuff back to normal
decide_markDecides what to do when widow uses spiderling mark ability
do_jumpSignal handler to make the spiderling jump when widow does
go_to_obj_targetSignal handler to check if we can attack the obj's that our escorted_atom is attacking
go_to_targetSignal handler to check if we can attack what our escorted_atom is attacking
guard_ownerMoves spiderlings to the widow
kill_parentThis kills the spiderling
look_for_new_stateCheck if escorted_atom moves away from the spiderling while it's attacking something, this is to always keep them close to escorted_atom
parent_resistresist when widow does
register_action_signalsCheck so that we dont keep attacking our target beyond it's death
revert_to_default_escortSets escorted atom to our pre-defined default escorted atom, which by default is this spiderling's widow, and commands the spiderling to follow it
spiderling_rageThis happens when the spiderlings mother dies, they move faster and will attack any nearby marines
start_restingrest when widow does
stop_restingstop resting when widow does, plus unbuckle all mobs so the widow won't get stuck
triggered_spiderling_rageMakes the spiderling roar and then kill themselves after some time

Proc Details

apply_spiderling_jelly +

+

Signal handler to apply resin jelly to the spiderling whenever widow gets it

attack_target +

+

Signal handler to try to attack our target

attempt_guard +

+

If the spiderling's mother goes into crit, the spiderlings will stop what they are doing and attempt to shield her

attempt_unguard +

+

Spiderling's mother woke up from crit; reset stuff back to normal

decide_mark +

+

Decides what to do when widow uses spiderling mark ability

do_jump +

+

Signal handler to make the spiderling jump when widow does

go_to_obj_target +

+

Signal handler to check if we can attack the obj's that our escorted_atom is attacking

go_to_target +

+

Signal handler to check if we can attack what our escorted_atom is attacking

guard_owner +

+

Moves spiderlings to the widow

kill_parent +

+

This kills the spiderling

look_for_new_state +

+

Check if escorted_atom moves away from the spiderling while it's attacking something, this is to always keep them close to escorted_atom

parent_resist +

+

resist when widow does

register_action_signals +

+

Check so that we dont keep attacking our target beyond it's death

revert_to_default_escort +

+

Sets escorted atom to our pre-defined default escorted atom, which by default is this spiderling's widow, and commands the spiderling to follow it

spiderling_rage +

+

This happens when the spiderlings mother dies, they move faster and will attack any nearby marines

start_resting +

+

rest when widow does

stop_resting +

+

stop resting when widow does, plus unbuckle all mobs so the widow won't get stuck

triggered_spiderling_rage +

+

Makes the spiderling roar and then kill themselves after some time

+ + + diff --git a/datum/ai_behavior/xeno.html b/datum/ai_behavior/xeno.html new file mode 100644 index 0000000000000..2e61edd193790 --- /dev/null +++ b/datum/ai_behavior/xeno.html @@ -0,0 +1,92 @@ + + + + + + + /datum/ai_behavior/xeno - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

xeno + + + +

+ + + + + + + + + + +

Vars

ability_listList of abilities to consider doing every Process()
can_healIf the mob parent can heal itself and so should flee

Procs

attack_targetSignal handler to try to attack our target
check_for_critical_healthCalled each time the ai takes damage; if we are below a certain health threshold, try to retreat
check_for_healthWait for the xeno to be full life and plasma to unrest
check_for_plasmaWait for the xeno to be full life and plasma to unrest
climb_window_frameMove the ai mob on top of the window_frame
refresh_abilitiesRefresh abilities-to-consider list
try_to_healWill try finding and resting on weeds
+

Var Details

ability_list + + + + +

+

List of abilities to consider doing every Process()

can_heal + + + + +

+

If the mob parent can heal itself and so should flee

Proc Details

attack_target +

+

Signal handler to try to attack our target

check_for_critical_health +

+

Called each time the ai takes damage; if we are below a certain health threshold, try to retreat

check_for_health +

+

Wait for the xeno to be full life and plasma to unrest

check_for_plasma +

+

Wait for the xeno to be full life and plasma to unrest

climb_window_frame +

+

Move the ai mob on top of the window_frame

refresh_abilities +

+

Refresh abilities-to-consider list

try_to_heal +

+

Will try finding and resting on weeds

+ + + diff --git a/datum/ai_behavior/xeno/illusion.html b/datum/ai_behavior/xeno/illusion.html new file mode 100644 index 0000000000000..f77c9caafa67f --- /dev/null +++ b/datum/ai_behavior/xeno/illusion.html @@ -0,0 +1,43 @@ + + + + + + + /datum/ai_behavior/xeno/illusion - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

illusion + + + +

+ + + +

Vars

illusion_react_rangeHow close a human has to be in order for illusions to react

Procs

look_for_new_stateWe want a separate look_for_new_state in order to make illusions behave as we wish
+

Var Details

illusion_react_range + + + + +

+

How close a human has to be in order for illusions to react

Proc Details

look_for_new_state +

+

We want a separate look_for_new_state in order to make illusions behave as we wish

+ + + diff --git a/datum/ammo.html b/datum/ammo.html new file mode 100644 index 0000000000000..98f2d9ffa581e --- /dev/null +++ b/datum/ammo.html @@ -0,0 +1,390 @@ + + + + + + + /datum/ammo - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

The base ammo datum + + + +

+ +

This datum is the base for absolutely every ammo type in the game.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

accuracyThis is added to the bullet's base accuracy
accuracy_var_lowHow much the accuracy varies when fired
accurate_rangeFor most guns, this is where the bullet dramatically looses accuracy. Not for snipers though
accurate_range_minSnipers use this to simulate poor accuracy at close ranges
airburst_multiplierhow much damage airbursts do to mobs around the target, multiplier of the bullet's damage
ammo_behavior_flagsWhat kind of behavior the ammo has
armor_typeDoes this have an override for the armor type the ammo should test? Bullet by default
barricade_clear_distanceHow far the bullet can travel before incurring a chance of hitting barricades; normally 1.
bonus_projectiles_amountHow many extra projectiles it shoots out. Works kind of like firing on burst, but all of the projectiles travel together
bonus_projectiles_scatterDegrees scattered per two projectiles, each in a different direction.
bonus_projectiles_typeType path of the extra projectiles
bullet_colorDetermines what color our bullet will be when it flies
damageThis is the base damage of the bullet as it is fired
damage_falloffHow much damage the bullet loses per turf traveled
damage_typeBRUTE, BURN, TOX, OXY, CLONE are the only things that should be in here
deflagrate_multiplierMultiplier for deflagrate chance
fire_burst_damageFlat damage caused if fire_burst is triggered by deflagrate
handful_amounthow much of this ammo you can carry in a handful
handful_greyscale_colorsgreyscale color for the bullet items associated with the ammo
handful_greyscale_configgreyscale config for the bullet items associated with the ammo
handful_icon_stateused in icons/obj/items/ammo for use in generating handful sprites
hitscan_effect_iconIf this ammo is hitscan, the icon of beam coming out from the gun
hud_stateBullet type on the Ammo HUD
incendiary_strengthBase fire stacks added on hit if the projectile has AMMO_INCENDIARY
max_rangeThis will de-increment a counter on the bullet
on_pierce_multiplierA multiplier applied to piercing projectile, that reduces its damage/penetration/sundering on hit
penetrationHow much armor it ignores before calculations take place
pingThe icon that is displayed when the bullet bounces off something.
point_blank_rangeWeapons will get a large accuracy buff at this short range
projectile_greyscale_colorsgreyscale color for the projectile associated with the ammo
projectile_greyscale_configgreyscale config for the projectile associated with the ammo
scatterHow much the ammo scatters when burst fired, added to gun scatter, along with other mods
shell_speedHow fast the projectile moves
shrapnel_chanceThe % chance it will imbed in a human
sound_armorWhen it's blocked by human armor.
sound_bounceWhen it bounces off something.
sound_hitWhen it deals damage.
sound_missWhen it misses someone.
sunderingHow many stacks of sundering to apply to a mob on hit

Procs

ammo_processcalled on projectile process() when AMMO_SPECIAL_PROCESS flag is active
deflagratehandles the probability of a projectile hit to trigger fire_burst, based off actual damage done
fire_bonus_projectilesFires additional projectiles, generally considered to still be originating from a gun +Such a buckshot +origin_override used to have the new projectile(s) originate from a different source than the main projectile
fire_burstthe actual fireblast triggered by deflagrate
fire_directionalburstA variant of Fire_bonus_projectiles without fixed scatter and no link between gun and bonus_projectile accuracy
on_hit_mobSpecial effects when hitting mobs.
on_hit_objSpecial effects when hitting objects.
on_hit_turfSpecial effects when hitting dense turfs.
on_leave_turfSpecial effects for leaving a turf. Only called if the projectile has AMMO_LEAVE_TURF enabled
on_shield_blockDoes it do something special when shield blocked? Ie. a flare or grenade that still blows up.
reflectbounces the projectile by creating a new projectile and calculating an angle of reflection
staggerstunHandles CC application on the victim
+

Var Details

accuracy + + + + +

+

This is added to the bullet's base accuracy

accuracy_var_low + + + + +

+

How much the accuracy varies when fired

accurate_range + + + + +

+

For most guns, this is where the bullet dramatically looses accuracy. Not for snipers though

accurate_range_min + + + + +

+

Snipers use this to simulate poor accuracy at close ranges

airburst_multiplier + + + + +

+

how much damage airbursts do to mobs around the target, multiplier of the bullet's damage

ammo_behavior_flags + + + + +

+

What kind of behavior the ammo has

armor_type + + + + +

+

Does this have an override for the armor type the ammo should test? Bullet by default

barricade_clear_distance + + + + +

+

How far the bullet can travel before incurring a chance of hitting barricades; normally 1.

bonus_projectiles_amount + + + + +

+

How many extra projectiles it shoots out. Works kind of like firing on burst, but all of the projectiles travel together

bonus_projectiles_scatter + + + + +

+

Degrees scattered per two projectiles, each in a different direction.

bonus_projectiles_type + + + + +

+

Type path of the extra projectiles

bullet_color + + + + +

+

Determines what color our bullet will be when it flies

damage + + + + +

+

This is the base damage of the bullet as it is fired

damage_falloff + + + + +

+

How much damage the bullet loses per turf traveled

damage_type + + + + +

+

BRUTE, BURN, TOX, OXY, CLONE are the only things that should be in here

deflagrate_multiplier + + + + +

+

Multiplier for deflagrate chance

fire_burst_damage + + + + +

+

Flat damage caused if fire_burst is triggered by deflagrate

handful_amount + + + + +

+

how much of this ammo you can carry in a handful

handful_greyscale_colors + + + + +

+

greyscale color for the bullet items associated with the ammo

handful_greyscale_config + + + + +

+

greyscale config for the bullet items associated with the ammo

handful_icon_state + + + + +

+

used in icons/obj/items/ammo for use in generating handful sprites

hitscan_effect_icon + + + + +

+

If this ammo is hitscan, the icon of beam coming out from the gun

hud_state + + + + +

+

Bullet type on the Ammo HUD

incendiary_strength + + + + +

+

Base fire stacks added on hit if the projectile has AMMO_INCENDIARY

max_range + + + + +

+

This will de-increment a counter on the bullet

on_pierce_multiplier + + + + +

+

A multiplier applied to piercing projectile, that reduces its damage/penetration/sundering on hit

penetration + + + + +

+

How much armor it ignores before calculations take place

ping + + + + +

+

The icon that is displayed when the bullet bounces off something.

point_blank_range + + + + +

+

Weapons will get a large accuracy buff at this short range

projectile_greyscale_colors + + + + +

+

greyscale color for the projectile associated with the ammo

projectile_greyscale_config + + + + +

+

greyscale config for the projectile associated with the ammo

scatter + + + + +

+

How much the ammo scatters when burst fired, added to gun scatter, along with other mods

shell_speed + + + + +

+

How fast the projectile moves

shrapnel_chance + + + + +

+

The % chance it will imbed in a human

sound_armor + + + + +

+

When it's blocked by human armor.

sound_bounce + + + + +

+

When it bounces off something.

sound_hit + + + + +

+

When it deals damage.

sound_miss + + + + +

+

When it misses someone.

sundering + + + + +

+

How many stacks of sundering to apply to a mob on hit

Proc Details

ammo_process +

+

called on projectile process() when AMMO_SPECIAL_PROCESS flag is active

deflagrate +

+

handles the probability of a projectile hit to trigger fire_burst, based off actual damage done

fire_bonus_projectiles +

+

Fires additional projectiles, generally considered to still be originating from a gun +Such a buckshot +origin_override used to have the new projectile(s) originate from a different source than the main projectile

fire_burst +

+

the actual fireblast triggered by deflagrate

fire_directionalburst +

+

A variant of Fire_bonus_projectiles without fixed scatter and no link between gun and bonus_projectile accuracy

on_hit_mob +

+

Special effects when hitting mobs.

on_hit_obj +

+

Special effects when hitting objects.

on_hit_turf +

+

Special effects when hitting dense turfs.

on_leave_turf +

+

Special effects for leaving a turf. Only called if the projectile has AMMO_LEAVE_TURF enabled

on_shield_block +

+

Does it do something special when shield blocked? Ie. a flare or grenade that still blows up.

reflect +

+

bounces the projectile by creating a new projectile and calculating an angle of reflection

staggerstun +

+

Handles CC application on the victim

+ + + diff --git a/datum/ammo/bullet/auto_cannon.html b/datum/ammo/bullet/auto_cannon.html new file mode 100644 index 0000000000000..4c0f8638cebc2 --- /dev/null +++ b/datum/ammo/bullet/auto_cannon.html @@ -0,0 +1,36 @@ + + + + + + + /datum/ammo/bullet/auto_cannon - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

auto_cannon + + + +

+ + +

Vars

autocannon_wall_bonusBonus flat damage to walls, balanced around resin walls.
+

Var Details

autocannon_wall_bonus + + + + +

+

Bonus flat damage to walls, balanced around resin walls.

+ + + diff --git a/datum/ammo/bullet/micro_rail.html b/datum/ammo/bullet/micro_rail.html new file mode 100644 index 0000000000000..599a67d1b9e09 --- /dev/null +++ b/datum/ammo/bullet/micro_rail.html @@ -0,0 +1,36 @@ + + + + + + + /datum/ammo/bullet/micro_rail - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

micro_rail + + + +

+ + +

Vars

bonus_projectile_quantityHow many bonus projectiles to generate. New var so it doesn't trigger on firing
+

Var Details

bonus_projectile_quantity + + + + +

+

How many bonus projectiles to generate. New var so it doesn't trigger on firing

+ + + diff --git a/datum/ammo/bullet/pepperball.html b/datum/ammo/bullet/pepperball.html new file mode 100644 index 0000000000000..93a71bda65f66 --- /dev/null +++ b/datum/ammo/bullet/pepperball.html @@ -0,0 +1,43 @@ + + + + + + + /datum/ammo/bullet/pepperball - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

pepperball + + + +

+ + + +

Vars

drain_multiplierpercentage of xenos total plasma to drain when hit by a pepperball
plasma_drainFlat plasma to drain, unaffected by caste plasma amount.
+

Var Details

drain_multiplier + + + + +

+

percentage of xenos total plasma to drain when hit by a pepperball

plasma_drain + + + + +

+

Flat plasma to drain, unaffected by caste plasma amount.

+ + + diff --git a/datum/ammo/bullet/smg/squash.html b/datum/ammo/bullet/smg/squash.html new file mode 100644 index 0000000000000..e5e8d6beb7967 --- /dev/null +++ b/datum/ammo/bullet/smg/squash.html @@ -0,0 +1,36 @@ + + + + + + + /datum/ammo/bullet/smg/squash - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

squash + + + +

+ + +

Vars

shatter_durationshatter effection duration when hitting mobs
+

Var Details

shatter_duration + + + + +

+

shatter effection duration when hitting mobs

+ + + diff --git a/datum/ammo/bullet/sniper/martini.html b/datum/ammo/bullet/sniper/martini.html new file mode 100644 index 0000000000000..9be6c717bf0f8 --- /dev/null +++ b/datum/ammo/bullet/sniper/martini.html @@ -0,0 +1,36 @@ + + + + + + + /datum/ammo/bullet/sniper/martini - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

martini + + + +

+ + +

Vars

shatter_durationshatter effection duration when hitting mobs
+

Var Details

shatter_duration + + + + +

+

shatter effection duration when hitting mobs

+ + + diff --git a/datum/ammo/bullet/tx54_spread/razor.html b/datum/ammo/bullet/tx54_spread/razor.html new file mode 100644 index 0000000000000..50f3f91227a50 --- /dev/null +++ b/datum/ammo/bullet/tx54_spread/razor.html @@ -0,0 +1,43 @@ + + + + + + + /datum/ammo/bullet/tx54_spread/razor - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

razor + + + +

+ + + +

Vars

chemical_payloadThe foam type loaded in this ammo
reagent_listThe reagent content of the projectile
+

Var Details

chemical_payload + + + + +

+

The foam type loaded in this ammo

reagent_list + + + + +

+

The reagent content of the projectile

+ + + diff --git a/datum/ammo/bullet/tx54_spread/smoke.html b/datum/ammo/bullet/tx54_spread/smoke.html new file mode 100644 index 0000000000000..47dddf2c4c0be --- /dev/null +++ b/datum/ammo/bullet/tx54_spread/smoke.html @@ -0,0 +1,36 @@ + + + + + + + /datum/ammo/bullet/tx54_spread/smoke - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

smoke + + + +

+ + +

Vars

trail_spread_systemThe smoke type loaded in this ammo
+

Var Details

trail_spread_system + + + + +

+

The smoke type loaded in this ammo

+ + + diff --git a/datum/ammo/energy/lasgun/marine/autolaser/melting.html b/datum/ammo/energy/lasgun/marine/autolaser/melting.html new file mode 100644 index 0000000000000..96098ebc22ab2 --- /dev/null +++ b/datum/ammo/energy/lasgun/marine/autolaser/melting.html @@ -0,0 +1,36 @@ + + + + + + + /datum/ammo/energy/lasgun/marine/autolaser/melting - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

melting + + + +

+ + +

Vars

melt_stacksnumber of melting stacks to apply when hitting mobs
+

Var Details

melt_stacks + + + + +

+

number of melting stacks to apply when hitting mobs

+ + + diff --git a/datum/ammo/energy/lasgun/marine/microwave.html b/datum/ammo/energy/lasgun/marine/microwave.html new file mode 100644 index 0000000000000..da9c7ba2fe366 --- /dev/null +++ b/datum/ammo/energy/lasgun/marine/microwave.html @@ -0,0 +1,36 @@ + + + + + + + /datum/ammo/energy/lasgun/marine/microwave - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

microwave + + + +

+ + +

Vars

microwave_stacksnumber of microwave stacks to apply when hitting mobvs
+

Var Details

microwave_stacks + + + + +

+

number of microwave stacks to apply when hitting mobvs

+ + + diff --git a/datum/ammo/energy/lasgun/marine/shatter.html b/datum/ammo/energy/lasgun/marine/shatter.html new file mode 100644 index 0000000000000..7a11254c768e3 --- /dev/null +++ b/datum/ammo/energy/lasgun/marine/shatter.html @@ -0,0 +1,36 @@ + + + + + + + /datum/ammo/energy/lasgun/marine/shatter - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

shatter + + + +

+ + +

Vars

shatter_durationshatter effection duration when hitting mobs
+

Var Details

shatter_duration + + + + +

+

shatter effection duration when hitting mobs

+ + + diff --git a/datum/ammo/energy/lasgun/marine/weakening.html b/datum/ammo/energy/lasgun/marine/weakening.html new file mode 100644 index 0000000000000..60ed9e2361e40 --- /dev/null +++ b/datum/ammo/energy/lasgun/marine/weakening.html @@ -0,0 +1,36 @@ + + + + + + + /datum/ammo/energy/lasgun/marine/weakening - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

weakening + + + +

+ + +

Vars

plasma_drainplasma drained per hit
+

Var Details

plasma_drain + + + + +

+

plasma drained per hit

+ + + diff --git a/datum/ammo/energy/plasma/blast/melting.html b/datum/ammo/energy/plasma/blast/melting.html new file mode 100644 index 0000000000000..cd42c7e0c157a --- /dev/null +++ b/datum/ammo/energy/plasma/blast/melting.html @@ -0,0 +1,36 @@ + + + + + + + /datum/ammo/energy/plasma/blast/melting - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

melting + + + +

+ + +

Vars

melting_stacksNumber of melting stacks to apply
+

Var Details

melting_stacks + + + + +

+

Number of melting stacks to apply

+ + + diff --git a/datum/ammo/energy/plasma_pistol.html b/datum/ammo/energy/plasma_pistol.html new file mode 100644 index 0000000000000..b794b9311b44b --- /dev/null +++ b/datum/ammo/energy/plasma_pistol.html @@ -0,0 +1,50 @@ + + + + + + + /datum/ammo/energy/plasma_pistol - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

plasma_pistol + + + +

+ + + + +

Vars

burn_damageFire damage
fire_colorFire color
heatFire burn time
+

Var Details

burn_damage + + + + +

+

Fire damage

fire_color + + + + +

+

Fire color

heat + + + + +

+

Fire burn time

+ + + diff --git a/datum/ammo/energy/xeno.html b/datum/ammo/energy/xeno.html new file mode 100644 index 0000000000000..1a4cd7960a816 --- /dev/null +++ b/datum/ammo/energy/xeno.html @@ -0,0 +1,50 @@ + + + + + + + /datum/ammo/energy/xeno - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

xeno + + + +

+ + + + +

Vars

ability_costPlasma cost to fire this projectile
channel_particleParticle type used when this ammo is used
glow_colorThe colour the xeno glows when using this ammo type
+

Var Details

ability_cost + + + + +

+

Plasma cost to fire this projectile

channel_particle + + + + +

+

Particle type used when this ammo is used

glow_color + + + + +

+

The colour the xeno glows when using this ammo type

+ + + diff --git a/datum/ammo/energy/xeno/psy_blast.html b/datum/ammo/energy/xeno/psy_blast.html new file mode 100644 index 0000000000000..3453c08dd25ac --- /dev/null +++ b/datum/ammo/energy/xeno/psy_blast.html @@ -0,0 +1,43 @@ + + + + + + + /datum/ammo/energy/xeno/psy_blast - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

psy_blast + + + +

+ + + +

Vars

aoe_damageAOE damage amount
aoe_rangeThe AOE for drop_nade
+

Var Details

aoe_damage + + + + +

+

AOE damage amount

aoe_range + + + + +

+

The AOE for drop_nade

+ + + diff --git a/datum/ammo/micro_rail_cluster.html b/datum/ammo/micro_rail_cluster.html new file mode 100644 index 0000000000000..5f3d0c5a29dfd --- /dev/null +++ b/datum/ammo/micro_rail_cluster.html @@ -0,0 +1,78 @@ + + + + + + + /datum/ammo/micro_rail_cluster - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

micro_rail_cluster + + + +

+ + + + + + + + +

Vars

explosion_damageTotal damage applied to victims by the exploding bomblet
explosion_rangerange of bomblet explosion
slow_amountAmount of slowdown applied by the exploding bomblet
smoketypethe smoke effect at the point of detonation
stagger_amountAmount of stagger applied by the exploding bomblet

Procs

detonatehandles the actual bomblet detonation
on_hit_mobchance to detonate early, scales with distance and capped, to avoid lots of immediate detonations, and nothing reach max range respectively.
+

Var Details

explosion_damage + + + + +

+

Total damage applied to victims by the exploding bomblet

explosion_range + + + + +

+

range of bomblet explosion

slow_amount + + + + +

+

Amount of slowdown applied by the exploding bomblet

smoketype + + + + +

+

the smoke effect at the point of detonation

stagger_amount + + + + +

+

Amount of stagger applied by the exploding bomblet

Proc Details

detonate +

+

handles the actual bomblet detonation

on_hit_mob +

+

chance to detonate early, scales with distance and capped, to avoid lots of immediate detonations, and nothing reach max range respectively.

+ + + diff --git a/datum/ammo/mortar/rocket/smoke.html b/datum/ammo/mortar/rocket/smoke.html new file mode 100644 index 0000000000000..78124ee853663 --- /dev/null +++ b/datum/ammo/mortar/rocket/smoke.html @@ -0,0 +1,36 @@ + + + + + + + /datum/ammo/mortar/rocket/smoke - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

smoke + + + +

+ + +

Vars

smoketypethe smoke effect at the point of detonation
+

Var Details

smoketype + + + + +

+

the smoke effect at the point of detonation

+ + + diff --git a/datum/ammo/mortar/smoke.html b/datum/ammo/mortar/smoke.html new file mode 100644 index 0000000000000..661c5942fc083 --- /dev/null +++ b/datum/ammo/mortar/smoke.html @@ -0,0 +1,36 @@ + + + + + + + /datum/ammo/mortar/smoke - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

smoke + + + +

+ + +

Vars

smoketypethe smoke effect at the point of detonation
+

Var Details

smoketype + + + + +

+

the smoke effect at the point of detonation

+ + + diff --git a/datum/ammo/rocket/homing.html b/datum/ammo/rocket/homing.html new file mode 100644 index 0000000000000..f9f1007981d7f --- /dev/null +++ b/datum/ammo/rocket/homing.html @@ -0,0 +1,43 @@ + + + + + + + /datum/ammo/rocket/homing - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

homing + + + +

+ + + +

Vars

angle_precisionIf the projectile is pointing at the target with a variance of this number, we don't readjust the angle
turn_rateNumber in degrees that the projectile will change during each process
+

Var Details

angle_precision + + + + +

+

If the projectile is pointing at the target with a variance of this number, we don't readjust the angle

turn_rate + + + + +

+

Number in degrees that the projectile will change during each process

+ + + diff --git a/datum/ammo/rocket/homing/microrocket.html b/datum/ammo/rocket/homing/microrocket.html new file mode 100644 index 0000000000000..d0f42029792cf --- /dev/null +++ b/datum/ammo/rocket/homing/microrocket.html @@ -0,0 +1,36 @@ + + + + + + + /datum/ammo/rocket/homing/microrocket - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

microrocket + + + +

+ + +

Vars

namethis is basically a tgmc version of the above
+

Var Details

name + + + + +

+

this is basically a tgmc version of the above

+ + + diff --git a/datum/ammo/rocket/recoilless/chemical.html b/datum/ammo/rocket/recoilless/chemical.html new file mode 100644 index 0000000000000..1026dc2cb58a1 --- /dev/null +++ b/datum/ammo/rocket/recoilless/chemical.html @@ -0,0 +1,43 @@ + + + + + + + /datum/ammo/rocket/recoilless/chemical - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

chemical + + + +

+ + + +

Vars

smokeradiusRadius this smoke will encompass on detonation.
smoketypeSmoke type created when projectile detonates.
+

Var Details

smokeradius + + + + +

+

Radius this smoke will encompass on detonation.

smoketype + + + + +

+

Smoke type created when projectile detonates.

+ + + diff --git a/datum/ammo/rocket/som/rad.html b/datum/ammo/rocket/som/rad.html new file mode 100644 index 0000000000000..e4124dca8f864 --- /dev/null +++ b/datum/ammo/rocket/som/rad.html @@ -0,0 +1,57 @@ + + + + + + + /datum/ammo/rocket/som/rad - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

rad + + + +

+ + + + + +

Vars

inner_rangeRange for the maximum rad effects
mid_rangeRange for the moderate rad effects
outer_rangeRange for the minimal rad effects
rad_strengthBase strength of the rad effects
+

Var Details

inner_range + + + + +

+

Range for the maximum rad effects

mid_range + + + + +

+

Range for the moderate rad effects

outer_range + + + + +

+

Range for the minimal rad effects

rad_strength + + + + +

+

Base strength of the rad effects

+ + + diff --git a/datum/ammo/rocket/wp.html b/datum/ammo/rocket/wp.html new file mode 100644 index 0000000000000..9264ae3e7e505 --- /dev/null +++ b/datum/ammo/rocket/wp.html @@ -0,0 +1,36 @@ + + + + + + + /datum/ammo/rocket/wp - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

wp + + + +

+ + +

Vars

effect_radiusThe radius for the non explosion effects
+

Var Details

effect_radius + + + + +

+

The radius for the non explosion effects

+ + + diff --git a/datum/ammo/rocket/wp/quad.html b/datum/ammo/rocket/wp/quad.html new file mode 100644 index 0000000000000..0cebc08814aa1 --- /dev/null +++ b/datum/ammo/rocket/wp/quad.html @@ -0,0 +1,36 @@ + + + + + + + /datum/ammo/rocket/wp/quad - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

quad + + + +

+ + +

Vars

smoke_systemThe smoke system that the WP gas uses to spread.
+

Var Details

smoke_system + + + + +

+

The smoke system that the WP gas uses to spread.

+ + + diff --git a/datum/ammo/smoke_burst.html b/datum/ammo/smoke_burst.html new file mode 100644 index 0000000000000..2c4dfc9c4785e --- /dev/null +++ b/datum/ammo/smoke_burst.html @@ -0,0 +1,43 @@ + + + + + + + /datum/ammo/smoke_burst - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

smoke_burst + + + +

+ + + +

Vars

smokeradiusradius this smoke will encompass
smoketypesmoke type created when the projectile detonates
+

Var Details

smokeradius + + + + +

+

radius this smoke will encompass

smoketype + + + + +

+

smoke type created when the projectile detonates

+ + + diff --git a/datum/ammo/tx54.html b/datum/ammo/tx54.html new file mode 100644 index 0000000000000..1f8299957d1e8 --- /dev/null +++ b/datum/ammo/tx54.html @@ -0,0 +1,36 @@ + + + + + + + /datum/ammo/tx54 - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

tx54 + + + +

+ + +

Vars

bonus_projectile_quantityHow many
+

Var Details

bonus_projectile_quantity + + + + +

+

How many

+ + + diff --git a/datum/ammo/xeno.html b/datum/ammo/xeno.html new file mode 100644 index 0000000000000..8ffcd9332a033 --- /dev/null +++ b/datum/ammo/xeno.html @@ -0,0 +1,71 @@ + + + + + + + /datum/ammo/xeno - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

xeno + + + +

+ + + + + + + +

Vars

hivenumberThe hivenumber of this ammo
reagent_transfer_amountAmount of reagents transferred upon spit impact if any
slowdown_stacksAmount of slowdown stacks imposed on impact if any
smoke_systemThese define the reagent transfer strength of the smoke caused by the spit, if any, and its aoe
spit_reagentsList of reagents transferred upon spit impact if any
stagger_stacksAmount of stagger stacks imposed on impact if any
+

Var Details

hivenumber + + + + +

+

The hivenumber of this ammo

reagent_transfer_amount + + + + +

+

Amount of reagents transferred upon spit impact if any

slowdown_stacks + + + + +

+

Amount of slowdown stacks imposed on impact if any

smoke_system + + + + +

+

These define the reagent transfer strength of the smoke caused by the spit, if any, and its aoe

spit_reagents + + + + +

+

List of reagents transferred upon spit impact if any

stagger_stacks + + + + +

+

Amount of stagger stacks imposed on impact if any

+ + + diff --git a/datum/ammo/xeno/acid.html b/datum/ammo/xeno/acid.html new file mode 100644 index 0000000000000..0d0dc42e84150 --- /dev/null +++ b/datum/ammo/xeno/acid.html @@ -0,0 +1,43 @@ + + + + + + + /datum/ammo/xeno/acid - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

acid + + + +

+ + + +

Vars

puddle_acid_damageDamage dealt by acid puddles
puddle_durationDuration of the acid puddles
+

Var Details

puddle_acid_damage + + + + +

+

Damage dealt by acid puddles

puddle_duration + + + + +

+

Duration of the acid puddles

+ + + diff --git a/datum/ammo/xeno/acid/toxic_spit.html b/datum/ammo/xeno/acid/toxic_spit.html new file mode 100644 index 0000000000000..6876a43dac86e --- /dev/null +++ b/datum/ammo/xeno/acid/toxic_spit.html @@ -0,0 +1,36 @@ + + + + + + + /datum/ammo/xeno/acid/toxic_spit - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

toxic_spit + + + +

+ + +

Vars

intoxication_stacksThe amount of stacks applied on hit.
+

Var Details

intoxication_stacks + + + + +

+

The amount of stacks applied on hit.

+ + + diff --git a/datum/ammo/xeno/boiler_gas.html b/datum/ammo/xeno/boiler_gas.html new file mode 100644 index 0000000000000..3c9f1654891e8 --- /dev/null +++ b/datum/ammo/xeno/boiler_gas.html @@ -0,0 +1,107 @@ + + + + + + + /datum/ammo/xeno/boiler_gas - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

boiler_gas + + + +

+ + + + + + + + + + + +

Vars

fixed_spread_rangeBase spread range
hit_drowsynessOn a direct hit, how much drowsyness gets added to the target?
hit_eye_blurOn a direct hit, how much do the victim's eyes get blurred?
hit_paralyze_timeOn a direct hit, how long is the target paralyzed?
icon_keyKey used for icon stuff during bombard ammo selection.
passed_turf_smoke_typeWhich type is the smoke we leave on passed tiles, provided the projectile has AMMO_LEAVE_TURF enabled?
select_textThis text will show up when a boiler selects this ammo. Span proc should be applied when this var is used.
trail_spread_systemWe're going to reuse one smoke spread system repeatedly to cut down on processing.

Procs

enhance_trapLoads a trap with a gas cloud depending on current glob type +Called when something with a boiler glob as current ammo interacts with an empty resin trap.
set_reagentsSet up the list of reagents the spit transfers upon impact
+

Var Details

fixed_spread_range + + + + +

+

Base spread range

hit_drowsyness + + + + +

+

On a direct hit, how much drowsyness gets added to the target?

hit_eye_blur + + + + +

+

On a direct hit, how much do the victim's eyes get blurred?

hit_paralyze_time + + + + +

+

On a direct hit, how long is the target paralyzed?

icon_key + + + + +

+

Key used for icon stuff during bombard ammo selection.

passed_turf_smoke_type + + + + +

+

Which type is the smoke we leave on passed tiles, provided the projectile has AMMO_LEAVE_TURF enabled?

select_text + + + + +

+

This text will show up when a boiler selects this ammo. Span proc should be applied when this var is used.

trail_spread_system + + + + +

+

We're going to reuse one smoke spread system repeatedly to cut down on processing.

Proc Details

enhance_trap +

+

Loads a trap with a gas cloud depending on current glob type +Called when something with a boiler glob as current ammo interacts with an empty resin trap.

+

set_reagents +

+

Set up the list of reagents the spit transfers upon impact

+ + + diff --git a/datum/ammo/xeno/boiler_gas/corrosive/lance.html b/datum/ammo/xeno/boiler_gas/corrosive/lance.html new file mode 100644 index 0000000000000..0ced215c28c72 --- /dev/null +++ b/datum/ammo/xeno/boiler_gas/corrosive/lance.html @@ -0,0 +1,36 @@ + + + + + + + /datum/ammo/xeno/boiler_gas/corrosive/lance - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

lance + + + +

+ + +

Vars

ammo_behavior_flagsAs opposed to normal globs, this will pass by the target tile if they hit nothing.
+

Var Details

ammo_behavior_flags + + + + +

+

As opposed to normal globs, this will pass by the target tile if they hit nothing.

+ + + diff --git a/datum/ammo/xeno/boiler_gas/lance.html b/datum/ammo/xeno/boiler_gas/lance.html new file mode 100644 index 0000000000000..7429f4801afe4 --- /dev/null +++ b/datum/ammo/xeno/boiler_gas/lance.html @@ -0,0 +1,36 @@ + + + + + + + /datum/ammo/xeno/boiler_gas/lance - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

lance + + + +

+ + +

Vars

ammo_behavior_flagsAs opposed to normal globs, this will pass by the target tile if they hit nothing.
+

Var Details

ammo_behavior_flags + + + + +

+

As opposed to normal globs, this will pass by the target tile if they hit nothing.

+ + + diff --git a/datum/ammo/xeno/earth_pillar.html b/datum/ammo/xeno/earth_pillar.html new file mode 100644 index 0000000000000..f3fc29cfb4204 --- /dev/null +++ b/datum/ammo/xeno/earth_pillar.html @@ -0,0 +1,42 @@ + + + + + + + /datum/ammo/xeno/earth_pillar - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

earth_pillar + + + +

+ + + +

Procs

on_hit_anythingDoes some stuff if the rock DOES hit something.
rock_brokeVFX + SFX for when the rock doesn't hit anything.

Proc Details

on_hit_anything +

+

Does some stuff if the rock DOES hit something.

rock_broke +

+

VFX + SFX for when the rock doesn't hit anything.

+ + + diff --git a/datum/ammo/xeno/hugger.html b/datum/ammo/xeno/hugger.html new file mode 100644 index 0000000000000..e76fd1b9f899a --- /dev/null +++ b/datum/ammo/xeno/hugger.html @@ -0,0 +1,36 @@ + + + + + + + /datum/ammo/xeno/hugger - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

hugger + + + +

+ + +

Vars

hugger_typeThe type of hugger thrown
+

Var Details

hugger_type + + + + +

+

The type of hugger thrown

+ + + diff --git a/datum/ammo/xeno/leash_ball.html b/datum/ammo/xeno/leash_ball.html new file mode 100644 index 0000000000000..a84c1b303c7fa --- /dev/null +++ b/datum/ammo/xeno/leash_ball.html @@ -0,0 +1,35 @@ + + + + + + + /datum/ammo/xeno/leash_ball - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

leash_ball + + + +

+ + +

Procs

drop_leashballThis spawns a leash ball and checks if the turf is dense before doing so

Proc Details

drop_leashball +

+

This spawns a leash ball and checks if the turf is dense before doing so

+ + + diff --git a/datum/ammo/xeno/sticky/globe.html b/datum/ammo/xeno/sticky/globe.html new file mode 100644 index 0000000000000..d69adff06bf30 --- /dev/null +++ b/datum/ammo/xeno/sticky/globe.html @@ -0,0 +1,36 @@ + + + + + + + /datum/ammo/xeno/sticky/globe - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

globe + + + +

+ + +

Vars

bonus_projectile_quantitynumber of sticky resins made
+

Var Details

bonus_projectile_quantity + + + + +

+

number of sticky resins made

+ + + diff --git a/datum/ammo/xeno/toxin.html b/datum/ammo/xeno/toxin.html new file mode 100644 index 0000000000000..058854a2540f6 --- /dev/null +++ b/datum/ammo/xeno/toxin.html @@ -0,0 +1,35 @@ + + + + + + + /datum/ammo/xeno/toxin - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

toxin + + + +

+ + +

Procs

set_reagentsSet up the list of reagents the spit transfers upon impact

Proc Details

set_reagents +

+

Set up the list of reagents the spit transfers upon impact

+ + + diff --git a/datum/ammo/xeno/web.html b/datum/ammo/xeno/web.html new file mode 100644 index 0000000000000..ceeeb57ced7c5 --- /dev/null +++ b/datum/ammo/xeno/web.html @@ -0,0 +1,64 @@ + + + + + + + /datum/ammo/xeno/web - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

web + + + +

+ + + + + + +

Vars

hit_eye_blindFor how long the victim will be blinded
hit_immobilizeHow long the victim will be snared for
hit_weakenHow long the victim will be KO'd
snare_listList for bodyparts that upon being hit cause the target to become ensnared
weaken_listList for bodyparts that upon being hit cause the target to become weakened
+

Var Details

hit_eye_blind + + + + +

+

For how long the victim will be blinded

hit_immobilize + + + + +

+

How long the victim will be snared for

hit_weaken + + + + +

+

How long the victim will be KO'd

snare_list + + + + +

+

List for bodyparts that upon being hit cause the target to become ensnared

weaken_list + + + + +

+

List for bodyparts that upon being hit cause the target to become weakened

+ + + diff --git a/datum/antagonist.html b/datum/antagonist.html new file mode 100644 index 0000000000000..5f5bf1bf7c9bd --- /dev/null +++ b/datum/antagonist.html @@ -0,0 +1,49 @@ + + + + + + + /datum/antagonist - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

antagonist + + + +

+ + + + +

Procs

on_body_transferCalled by the transfer_to() mind proc after the mind (mind.current and new_character.mind) has moved but before the player (key and client) is transfered.
on_gainCalled by the add_antag_datum() mind proc after the instanced datum is added to the mind's antag_datums list.
on_removalCalled by the remove_antag_datum() and remove_all_antag_datums() mind procs for the antag datum to handle its own removal and deletion.

Proc Details

on_body_transfer +

+

Called by the transfer_to() mind proc after the mind (mind.current and new_character.mind) has moved but before the player (key and client) is transfered.

on_gain +

+

Called by the add_antag_datum() mind proc after the instanced datum is added to the mind's antag_datums list.

on_removal +

+

Called by the remove_antag_datum() and remove_all_antag_datums() mind procs for the antag datum to handle its own removal and deletion.

+ + + diff --git a/datum/asset.html b/datum/asset.html new file mode 100644 index 0000000000000..f39cf49be9ccb --- /dev/null +++ b/datum/asset.html @@ -0,0 +1,86 @@ + + + + + + + /datum/asset - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

asset + + + +

+ + + + + + + + +

Vars

cross_round_cachableWhether or not this asset can be cached across rounds of the same commit under the CACHE_ASSETS config. +This is not a guarantee the asset will be cached. Not all asset subtypes respect this field, and the +config can, of course, be disabled.
earlyWhether or not this asset should be loaded in the "early assets" SS

Procs

ensure_readyStub that allows us to react to something trying to get us +Not useful here, more handy for sprite sheets
get_serialized_url_mappingsReturns a cached tgui message of URL mappings
queued_generationStub to hook into if your asset is having its generation queued by SSasset_loading
save_to_logsSimply takes any generated file and saves it to the round-specific /logs folder. Useful for debugging potential issues with spritesheet generation/display. +Only called when the SAVE_SPRITESHEETS config option is uncommented.
should_refreshReturns whether or not the asset should attempt to read from cache
+

Var Details

cross_round_cachable + + + + +

+

Whether or not this asset can be cached across rounds of the same commit under the CACHE_ASSETS config. +This is not a guarantee the asset will be cached. Not all asset subtypes respect this field, and the +config can, of course, be disabled.

early + + + + +

+

Whether or not this asset should be loaded in the "early assets" SS

Proc Details

ensure_ready +

+

Stub that allows us to react to something trying to get us +Not useful here, more handy for sprite sheets

get_serialized_url_mappings +

+

Returns a cached tgui message of URL mappings

queued_generation +

+

Stub to hook into if your asset is having its generation queued by SSasset_loading

save_to_logs +

+

Simply takes any generated file and saves it to the round-specific /logs folder. Useful for debugging potential issues with spritesheet generation/display. +Only called when the SAVE_SPRITESHEETS config option is uncommented.

should_refresh +

+

Returns whether or not the asset should attempt to read from cache

+ + + diff --git a/datum/asset/json.html b/datum/asset/json.html new file mode 100644 index 0000000000000..f99b845ec6a1a --- /dev/null +++ b/datum/asset/json.html @@ -0,0 +1,43 @@ + + + + + + + /datum/asset/json - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

json + + + +

+ +

A subtype to generate a JSON file from a list

+ +

Vars

nameThe filename, will be suffixed with ".json"

Procs

generateReturns the data that will be JSON encoded
+

Var Details

name + + + + +

+

The filename, will be suffixed with ".json"

Proc Details

generate +

+

Returns the data that will be JSON encoded

+ + + diff --git a/datum/asset/simple.html b/datum/asset/simple.html new file mode 100644 index 0000000000000..1dc3d983312ac --- /dev/null +++ b/datum/asset/simple.html @@ -0,0 +1,56 @@ + + + + + + + /datum/asset/simple - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

simple + + + +

+ +

If you don't need anything complicated.

+ + +

Vars

assetslist of assets for this datum in the form of: +asset_filename = asset_file. At runtime the asset_file will be +converted into a asset_cache datum.
keep_local_nameTRUE for keeping local asset names when browse_rsc backend is used
legacySet to true to have this asset also be sent via the legacy browse_rsc +system when cdn transports are enabled?
+

Var Details

assets + + + + +

+

list of assets for this datum in the form of: +asset_filename = asset_file. At runtime the asset_file will be +converted into a asset_cache datum.

keep_local_name + + + + +

+

TRUE for keeping local asset names when browse_rsc backend is used

legacy + + + + +

+

Set to true to have this asset also be sent via the legacy browse_rsc +system when cdn transports are enabled?

+ + + diff --git a/datum/asset/simple/namespaced.html b/datum/asset/simple/namespaced.html new file mode 100644 index 0000000000000..53f66e2c07ab2 --- /dev/null +++ b/datum/asset/simple/namespaced.html @@ -0,0 +1,51 @@ + + + + + + + /datum/asset/simple/namespaced - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

namespaced + + + +

+ +

Namespace'ed assets (for static css and html files) +When sent over a cdn transport, all assets in the same asset datum will exist in the same folder, as their plain names. +Used to ensure css files can reference files by url() without having to generate the css at runtime, both the css file and the files it depends on must exist in the same namespace asset datum. (Also works for html) +For example blah.css with asset blah.png will get loaded as namespaces/a3d..14f/f12..d3c.css and namespaces/a3d..14f/blah.png. allowing the css file to load blah.png by a relative url rather then compute the generated url with get_url_mappings(). +The namespace folder's name will change if any of the assets change. (excluding parent assets)

+ +

Vars

parentsparents - list of the parent asset or assets (in name = file assoicated format) for this namespace. +parent assets must be referenced by their generated url, but if an update changes a parent asset, it won't change the namespace's identity.

Procs

get_htmlloaderGet a html string that will load a html asset. +Needed because byond doesn't allow you to browse() to a url.
+

Var Details

parents + + + + +

+

parents - list of the parent asset or assets (in name = file assoicated format) for this namespace. +parent assets must be referenced by their generated url, but if an update changes a parent asset, it won't change the namespace's identity.

Proc Details

get_htmlloader +

+

Get a html string that will load a html asset. +Needed because byond doesn't allow you to browse() to a url.

+ + + diff --git a/datum/asset/spritesheet.html b/datum/asset/spritesheet.html new file mode 100644 index 0000000000000..8b09e7b81c120 --- /dev/null +++ b/datum/asset/spritesheet.html @@ -0,0 +1,85 @@ + + + + + + + /datum/asset/spritesheet - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

spritesheet + + + +

+ + + + + + + +

Vars

load_immediatelyIf this asset should be fully loaded on new +Defaults to false so we can process this stuff nicely
to_generateList of arguments to pass into queuedInsert +Exists so we can queue icon insertion, mostly for stuff like preferences

Procs

ModifyInsertedA simple proc handing the Icon for you to modify before it gets turned into an asset.
create_spritesheetsOverride this in order to start the creation of the spritehseet. +This is where all your Insert, InsertAll, etc calls should be inside.
get_background_urlReturns the URL to put in the background:url of the CSS asset
icon_size_idReturns the size class (ex design32x32) for a given sprite's icon
+

Var Details

load_immediately + + + + +

+

If this asset should be fully loaded on new +Defaults to false so we can process this stuff nicely

to_generate + + + + +

+

List of arguments to pass into queuedInsert +Exists so we can queue icon insertion, mostly for stuff like preferences

Proc Details

ModifyInserted +

+

A simple proc handing the Icon for you to modify before it gets turned into an asset.

+

Arguments:

+

create_spritesheets +

+

Override this in order to start the creation of the spritehseet. +This is where all your Insert, InsertAll, etc calls should be inside.

get_background_url +

+

Returns the URL to put in the background:url of the CSS asset

icon_size_id +

+

Returns the size class (ex design32x32) for a given sprite's icon

+

Arguments:

+
+ + + diff --git a/datum/asset/spritesheet/campaign.html b/datum/asset/spritesheet/campaign.html new file mode 100644 index 0000000000000..2e0141e9adfd1 --- /dev/null +++ b/datum/asset/spritesheet/campaign.html @@ -0,0 +1,43 @@ + + + + + + + /datum/asset/spritesheet/campaign - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

campaign + + + +

+ + + +

Vars

icon_namesThe list of icon names to use for this sprite sheet
icon_sheetThe dmi file used for this spritesheet
+

Var Details

icon_names + + + + +

+

The list of icon names to use for this sprite sheet

icon_sheet + + + + +

+

The dmi file used for this spritesheet

+ + + diff --git a/datum/asset/spritesheet/crafting.html b/datum/asset/spritesheet/crafting.html new file mode 100644 index 0000000000000..96cbba47ae497 --- /dev/null +++ b/datum/asset/spritesheet/crafting.html @@ -0,0 +1,45 @@ + + + + + + + /datum/asset/spritesheet/crafting - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

crafting + + + +

+ +

Representative icons for the contents of each crafting recipe

+ +

Procs

add_atom_iconAdds the ingredient icon to the spritesheet with given ID
add_tool_iconsAdds tool icons to the spritesheet

Proc Details

add_atom_icon +

+

Adds the ingredient icon to the spritesheet with given ID

+

ingredient_typepath can be an obj typepath OR a reagent typepath

+

If it a reagent, it will use the default container's icon state, +OR if it has a glass style associated, it will use that

add_tool_icons +

+

Adds tool icons to the spritesheet

+ + + diff --git a/datum/asset_cache_item.html b/datum/asset_cache_item.html new file mode 100644 index 0000000000000..6e583566b58c2 --- /dev/null +++ b/datum/asset_cache_item.html @@ -0,0 +1,102 @@ + + + + + + + /datum/asset_cache_item - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

asset_cache_item + + + +

+ +

An internal datum containing info on items in the asset cache. Mainly used to cache md5 info for speed.

+ + + + + + + + +

Vars

extour file extension e.g. .png, .gif, etc
hashmd5() of the file this asset item represents.
keep_local_nameTRUE for keeping local asset names when browse_rsc backend is used
legacyShould this file also be sent via the legacy browse_rsc system +when cdn transports are enabled?
namethe name of this asset item, becomes the key in SSassets.cache list
namespaceUsed by the cdn system to keep legacy css assets with their parent +css file. (css files resolve urls relative to the css file, so the +legacy system can't be used if the css file itself could go out over +the cdn)
namespace_parentTrue if this is the parent css or html file for an asset's namespace
resourcethe file this asset represents

Procs

Newpass in a valid file_hash if you have one to save it from needing to do it again. +pass in a valid dmi file path string e.g. "icons/path/to/dmi_file.dmi" to make generating the hash less expensive
+

Var Details

ext + + + + +

+

our file extension e.g. .png, .gif, etc

hash + + + + +

+

md5() of the file this asset item represents.

keep_local_name + + + + +

+

TRUE for keeping local asset names when browse_rsc backend is used

legacy + + + + +

+

Should this file also be sent via the legacy browse_rsc system +when cdn transports are enabled?

name + + + + +

+

the name of this asset item, becomes the key in SSassets.cache list

namespace + + + + +

+

Used by the cdn system to keep legacy css assets with their parent +css file. (css files resolve urls relative to the css file, so the +legacy system can't be used if the css file itself could go out over +the cdn)

namespace_parent + + + + +

+

True if this is the parent css or html file for an asset's namespace

resource + + + + +

+

the file this asset represents

Proc Details

New +

+

pass in a valid file_hash if you have one to save it from needing to do it again. +pass in a valid dmi file path string e.g. "icons/path/to/dmi_file.dmi" to make generating the hash less expensive

+ + + diff --git a/datum/asset_transport.html b/datum/asset_transport.html new file mode 100644 index 0000000000000..9b94773174344 --- /dev/null +++ b/datum/asset_transport.html @@ -0,0 +1,112 @@ + + + + + + + /datum/asset_transport - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

asset_transport + + + +

+ +

Base browse_rsc asset transport

+ + + + + + + +

Vars

dont_mutate_filenamesDon't mutate the filename of assets when sending via browse_rsc. +This is to make it easier to debug issues with assets, and allow server operators to bypass issues that make it to production. +If turning this on fixes asset issues, something isn't using get_asset_url and the asset isn't marked legacy, fix one of those.

Procs

InitializeInitialize - Called when SSassets initializes.
LoadCalled when the transport is loaded by the config controller, not called on the default transport unless it gets loaded by a config change.
get_asset_urlReturns a url for a given asset. +asset_name - Name of the asset. +asset_cache_item - asset cache item datum for the asset, optional, overrides asset_name
register_assetRegister a browser asset with the asset cache system. +returns a /datum/asset_cache_item. +mutiple calls to register the same asset under the same asset_name return the same datum.
send_assetsSends a list of browser assets to a client +client - a client or mob +asset_list - A list of asset filenames to be sent to the client. Can optionally be assoicated with the asset's asset_cache_item datum. +Returns TRUE if any assets were sent.
send_assets_slowPrecache files without clogging up the browse() queue, used for passively sending files on connection start.
validate_configCheck the config is valid to load this transport +Returns TRUE or FALSE
+

Var Details

dont_mutate_filenames + + + + +

+

Don't mutate the filename of assets when sending via browse_rsc. +This is to make it easier to debug issues with assets, and allow server operators to bypass issues that make it to production. +If turning this on fixes asset issues, something isn't using get_asset_url and the asset isn't marked legacy, fix one of those.

Proc Details

Initialize +

+

Initialize - Called when SSassets initializes.

Load +

+

Called when the transport is loaded by the config controller, not called on the default transport unless it gets loaded by a config change.

get_asset_url +

+

Returns a url for a given asset. +asset_name - Name of the asset. +asset_cache_item - asset cache item datum for the asset, optional, overrides asset_name

register_asset +

+

Register a browser asset with the asset cache system. +returns a /datum/asset_cache_item. +mutiple calls to register the same asset under the same asset_name return the same datum.

+

Arguments:

+

send_assets +

+

Sends a list of browser assets to a client +client - a client or mob +asset_list - A list of asset filenames to be sent to the client. Can optionally be assoicated with the asset's asset_cache_item datum. +Returns TRUE if any assets were sent.

send_assets_slow +

+

Precache files without clogging up the browse() queue, used for passively sending files on connection start.

validate_config +

+

Check the config is valid to load this transport +Returns TRUE or FALSE

+ + + diff --git a/datum/asset_transport/webroot.html b/datum/asset_transport/webroot.html new file mode 100644 index 0000000000000..db9b513e0ef93 --- /dev/null +++ b/datum/asset_transport/webroot.html @@ -0,0 +1,80 @@ + + + + + + + /datum/asset_transport/webroot - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

webroot + + + +

+ +

CDN Webroot asset transport.

+ + + + + +

Procs

get_asset_urlReturns a url for a given asset. +asset_name - Name of the asset. +asset_cache_item - asset cache item datum for the asset, optional, overrides asset_name
load_existing_assetsProcesses thru any assets that were registered before we were loaded as a transport.
register_assetRegister a browser asset with the asset cache system +We also save it to the CDN webroot at this step instead of waiting for send_assets() +asset_name - the identifier of the asset +asset - the actual asset file or an asset_cache_item datum.
save_asset_to_webrootSaves the asset to the webroot taking into account namespaces and hashes.
send_assetswebroot asset sending - does nothing unless passed legacy assets
send_assets_slowwebroot slow asset sending - does nothing.

Proc Details

get_asset_url +

+

Returns a url for a given asset. +asset_name - Name of the asset. +asset_cache_item - asset cache item datum for the asset, optional, overrides asset_name

load_existing_assets +

+

Processes thru any assets that were registered before we were loaded as a transport.

register_asset +

+

Register a browser asset with the asset cache system +We also save it to the CDN webroot at this step instead of waiting for send_assets() +asset_name - the identifier of the asset +asset - the actual asset file or an asset_cache_item datum.

save_asset_to_webroot +

+

Saves the asset to the webroot taking into account namespaces and hashes.

send_assets +

+

webroot asset sending - does nothing unless passed legacy assets

send_assets_slow +

+

webroot slow asset sending - does nothing.

+ + + diff --git a/datum/aura_bearer.html b/datum/aura_bearer.html new file mode 100644 index 0000000000000..b723ed29e2765 --- /dev/null +++ b/datum/aura_bearer.html @@ -0,0 +1,141 @@ + + + + + + + /datum/aura_bearer - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

aura_bearer + + + +

+ +

The thing that actually pushes out auras to nearby mobs.

+ + + + + + + + + + + + + + + +

Vars

affects_humansWhether we care about humans - at least one relevant aura is enough if we have multiple.
affects_xenosWhether we care about xenos - at least one relevant aura is enough if we have multiple.
aura_typesList containing aura varieties as strings - see AURA entries in _DEFINES/mobs.dm
durationHow many subsystem fires we have left, negative means infinite duration
emitterWhat we emit from
factionAura is only applied to mobs in this faction
hive_numberWhich hives this aura should affect?
human_aurasList of aura defines that mean we care about humans
last_tickWhen did this last tick?
rangeHow far from our center we apply
strengthMultiplier to aura effectiveness
suppressedWhether we should skip the next tick. Set to false after skipping once. Won't pulse to targets or reduce duration.
xeno_aurasList of aura defines that mean we care about xenos

Procs

pulse_humansSend out our aura to all humans close enough and on the same z-level
pulse_xenosSend out our aura to all xenos close enough and on the same z-level
stop_emittingCenter gets destroyed, we run out of duration, or any other reason to finish. Perish immediately.
+

Var Details

affects_humans + + + + +

+

Whether we care about humans - at least one relevant aura is enough if we have multiple.

affects_xenos + + + + +

+

Whether we care about xenos - at least one relevant aura is enough if we have multiple.

aura_types + + + + +

+

List containing aura varieties as strings - see AURA entries in _DEFINES/mobs.dm

duration + + + + +

+

How many subsystem fires we have left, negative means infinite duration

emitter + + + + +

+

What we emit from

faction + + + + +

+

Aura is only applied to mobs in this faction

hive_number + + + + +

+

Which hives this aura should affect?

human_auras + + + + +

+

List of aura defines that mean we care about humans

last_tick + + + + +

+

When did this last tick?

range + + + + +

+

How far from our center we apply

strength + + + + +

+

Multiplier to aura effectiveness

suppressed + + + + +

+

Whether we should skip the next tick. Set to false after skipping once. Won't pulse to targets or reduce duration.

xeno_auras + + + + +

+

List of aura defines that mean we care about xenos

Proc Details

pulse_humans +

+

Send out our aura to all humans close enough and on the same z-level

pulse_xenos +

+

Send out our aura to all xenos close enough and on the same z-level

stop_emitting +

+

Center gets destroyed, we run out of duration, or any other reason to finish. Perish immediately.

+ + + diff --git a/datum/beam.html b/datum/beam.html new file mode 100644 index 0000000000000..c2b31463c8558 --- /dev/null +++ b/datum/beam.html @@ -0,0 +1,136 @@ + + + + + + + /datum/beam - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

beam + + + +

+ + + + + + + + + + + + +

Vars

beam_typethe objects placed in the elements list
elementslist of beam objects. These have their visuals set by the visuals var which is created on starting
iconicon used by the beam.
icon_stateicon state of the main segments of the beam
max_distanceThe beam will qdel if it's longer than this many tiles.
originwhere the beam goes from
targetwhere the beam goes to
visualsThis is used as the visual_contents of beams, so you can apply one effect to this and the whole beam will look like that. never gets deleted on redrawing.

Procs

DrawCreates the beam effects and places them in a line from the origin to the target. Sets their rotation to make the beams face the target, too.
StartProc called by the atom Beam() proc. Sets up signals, and draws the beam for the first time.
redrawingTriggered by signals set up when the beam is set up. If it's still sane to create a beam, it removes the old beam, creates a new one. Otherwise it kills the beam.
+

Var Details

beam_type + + + + +

+

the objects placed in the elements list

elements + + + + +

+

list of beam objects. These have their visuals set by the visuals var which is created on starting

icon + + + + +

+

icon used by the beam.

icon_state + + + + +

+

icon state of the main segments of the beam

max_distance + + + + +

+

The beam will qdel if it's longer than this many tiles.

origin + + + + +

+

where the beam goes from

target + + + + +

+

where the beam goes to

visuals + + + + +

+

This is used as the visual_contents of beams, so you can apply one effect to this and the whole beam will look like that. never gets deleted on redrawing.

Proc Details

Draw +

+

Creates the beam effects and places them in a line from the origin to the target. Sets their rotation to make the beams face the target, too.

Start +

+

Proc called by the atom Beam() proc. Sets up signals, and draws the beam for the first time.

redrawing +

+

Triggered by signals set up when the beam is set up. If it's still sane to create a beam, it removes the old beam, creates a new one. Otherwise it kills the beam.

+

Arguments: +mover: either the origin of the beam or the target of the beam that moved. +oldloc: from where mover moved. +direction: in what direction mover moved from.

+ + + diff --git a/datum/browser.html b/datum/browser.html new file mode 100644 index 0000000000000..c39190d4c6e9e --- /dev/null +++ b/datum/browser.html @@ -0,0 +1,35 @@ + + + + + + + /datum/browser - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

browser + + + +

+ + +

Procs

clean_browserSignal handler to clean the user

Proc Details

clean_browser +

+

Signal handler to clean the user

+ + + diff --git a/datum/callback.html b/datum/callback.html new file mode 100644 index 0000000000000..d1acb27283f60 --- /dev/null +++ b/datum/callback.html @@ -0,0 +1,127 @@ + + + + + + + /datum/callback - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

Callback Datums + + + +

+ +

A datum that holds a proc to be called on another object, used to track proccalls to other objects

+USAGE +
var/datum/callback/C = new(object|null, PROC_REF(procname), arg1, arg2, ... argn)
+var/timerid = addtimer(C, time, timertype)
+you can also use the compiler define shorthand
+var/timerid = addtimer(CALLBACK(object|null, PROC_REF(procname), arg1, arg2, ... argn), time, timertype)
+
+

Note: proc strings can only be given for datum proc calls, global procs must be proc paths

+

Also proc strings are strongly advised against because they don't compile error if the proc stops existing

+

In some cases you can provide a shortform of the procname, see the proc typepath shortcuts documentation below

+INVOKING THE CALLBACK +

var/result = C.Invoke(args, to, add) additional args are added after the ones given when the callback was created

+

var/result = C.InvokeAsync(args, to, add) Asyncronous - returns . on the first sleep then continues on in the background +after the sleep/block ends, otherwise operates normally.

+PROC TYPEPATH SHORTCUTS +

(these operate on paths, not types, so to these shortcuts, datum is NOT a parent of atom, etc...)

+proc defined on current(src) object OR overridden at src or any of it's parents: +

PROC_REF(procname)

+

CALLBACK(src, PROC_REF(some_proc_here))

+global proc +

GLOBAL_PROC_REF(procname)

+

CALLBACK(src, GLOBAL_PROC_REF(some_proc_here))

+proc defined on some type +

TYPE_PROC_REF(/some/type/, some_proc_here)

+ + + + + + + +

Vars

argumentsA list of arguments to pass into the proc
delegateThe proc we will be calling on the object
objectThe object we will be calling the proc on
userA weak reference to the user who triggered this callback

Procs

DestroyQdel a callback datum +This is not allowed and will stack trace. callback datums are structs, if they are referenced they exist
InvokeInvoke this callback
InvokeAsyncInvoke this callback async (waitfor=false)
NewCreate a new callback datum
+

Var Details

arguments + + + + +

+

A list of arguments to pass into the proc

delegate + + + + +

+

The proc we will be calling on the object

object + + + + +

+

The object we will be calling the proc on

user + + + + +

+

A weak reference to the user who triggered this callback

Proc Details

Destroy +

+

Qdel a callback datum +This is not allowed and will stack trace. callback datums are structs, if they are referenced they exist

+

Arguments

+

Invoke +

+

Invoke this callback

+

Calls the registered proc on the registered object, if the user ref +can be resolved it also inclues that as an arg

+

If the datum being called on is varedited, the call is wrapped via WrapAdminProcCall

InvokeAsync +

+

Invoke this callback async (waitfor=false)

+

Calls the registered proc on the registered object, if the user ref +can be resolved it also inclues that as an arg

+

If the datum being called on is varedited, the call is wrapped via WrapAdminProcCall

New +

+

Create a new callback datum

+

Arguments

+
+ + + diff --git a/datum/camerachunk.html b/datum/camerachunk.html new file mode 100644 index 0000000000000..5872e36a8d9f8 --- /dev/null +++ b/datum/camerachunk.html @@ -0,0 +1,115 @@ + + + + + + + /datum/camerachunk - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

camerachunk + + + +

+ + + + + + + + + + + + + +

Vars

camerascameras that can see into our grid
obscuredTurfsturfs our cameras cant see but are inside our grid
parent_cameranetThe cameranet this chunk belongs to
seenbycamera mobs that can see turfs in our grid
turfslist of all turfs
visibleTurfsturfs our cameras can see inside our grid

Procs

NewCreate a new camera chunk, since the chunks are made as they are needed.
addAdd an AI eye to the chunk, then update if changed.
hasChangedUpdates the chunk, makes sure that it doesn't update too much. If the chunk isn't being watched it will +instead be flagged to update the next time an AI Eye moves near it.
removeRemove an AI eye from the chunk, then update if changed.
updateThe actual updating. It gathers the visible turfs from cameras and puts them into the appropiate lists.
visibilityChangedCalled when a chunk has changed. I.E: A wall was deleted.
+

Var Details

cameras + + + + +

+

cameras that can see into our grid

obscuredTurfs + + + + +

+

turfs our cameras cant see but are inside our grid

parent_cameranet + + + + +

+

The cameranet this chunk belongs to

seenby + + + + +

+

camera mobs that can see turfs in our grid

turfs + + + + +

+

list of all turfs

visibleTurfs + + + + +

+

turfs our cameras can see inside our grid

Proc Details

New +

+

Create a new camera chunk, since the chunks are made as they are needed.

add +

+

Add an AI eye to the chunk, then update if changed.

hasChanged +

+

Updates the chunk, makes sure that it doesn't update too much. If the chunk isn't being watched it will +instead be flagged to update the next time an AI Eye moves near it.

remove +

+

Remove an AI eye from the chunk, then update if changed.

update +

+

The actual updating. It gathers the visible turfs from cameras and puts them into the appropiate lists.

visibilityChanged +

+

Called when a chunk has changed. I.E: A wall was deleted.

+ + + diff --git a/datum/cameranet.html b/datum/cameranet.html new file mode 100644 index 0000000000000..921371f3f1ba6 --- /dev/null +++ b/datum/cameranet.html @@ -0,0 +1,107 @@ + + + + + + + /datum/cameranet - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

cameranet + + + +

+ + + + + + + + + + + +

Vars

obscuredThe image given to the effect in vis_contents on AI clients
vis_contents_opaquethis object is the static that ais see on obscured turfs, added to the turfs vis_contents

Procs

addCameraAdd a camera to a chunk.
checkCameraVisWill check if a mob is on a viewable turf. Returns 1 if it is, otherwise returns 0.
chunkGeneratedChecks if a chunk has been Generated in x, y, z.
majorChunkChangeNever access this proc directly!!!! +This will update the chunk and all the surrounding chunks. +It will also add the atom to the cameras list if you set the choice to 1. +Setting the choice to 0 will remove the camera from the chunks. +If you want to update the chunks around an object, without adding/removing a camera, use choice 2.
removeCameraRemoves a camera from a chunk.
updatePortableCameraUsed for Cyborg cameras. Since portable cameras can be in ANY chunk.
updateVisibilityUpdates the chunks that the turf is located in. Use this when obstacles are destroyed or when doors open.
visibilityUpdates what the aiEye can see. It is recommended you use this when the aiEye moves or it's location is set.
+

Var Details

obscured + + + + +

+

The image given to the effect in vis_contents on AI clients

vis_contents_opaque + + + + +

+

this object is the static that ais see on obscured turfs, added to the turfs vis_contents

Proc Details

addCamera +

+

Add a camera to a chunk.

checkCameraVis +

+

Will check if a mob is on a viewable turf. Returns 1 if it is, otherwise returns 0.

chunkGenerated +

+

Checks if a chunk has been Generated in x, y, z.

majorChunkChange +

+

Never access this proc directly!!!! +This will update the chunk and all the surrounding chunks. +It will also add the atom to the cameras list if you set the choice to 1. +Setting the choice to 0 will remove the camera from the chunks. +If you want to update the chunks around an object, without adding/removing a camera, use choice 2.

removeCamera +

+

Removes a camera from a chunk.

updatePortableCamera +

+

Used for Cyborg cameras. Since portable cameras can be in ANY chunk.

updateVisibility +

+

Updates the chunks that the turf is located in. Use this when obstacles are destroyed or when doors open.

visibility +

+

Updates what the aiEye can see. It is recommended you use this when the aiEye moves or it's location is set.

+ + + diff --git a/datum/campaign_asset.html b/datum/campaign_asset.html new file mode 100644 index 0000000000000..279e26b04f1c0 --- /dev/null +++ b/datum/campaign_asset.html @@ -0,0 +1,169 @@ + + + + + + + /datum/campaign_asset - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

campaign_asset + + + +

+ + + + + + + + + + + + + + + + + + + + + +

Vars

already_active_messageMessage if this asset is already active and can't be activated again
asset_flagsasset related flags
asset_portraitSpecific portrait used when activating this asset. Defaults to faction default if not specified
blacklist_messageFeedback message if this asset is unusable during this mission
blacklist_mission_flagsMissions flags that prevent the use of this asset
costCost in attrition points if this asset is purchased
descBasic description
detailed_descDetailed description
factionThe faction associated with these stats
nameName of this asset
ui_iconIconstate for UI
usesNumber of times this can be used

Procs

activated_effectTriggers any active effects of this asset
activation_checksReturns TRUE if unable to be activated
attempt_activatationHandles the activated asset process
deactivateDeactivates the asset once the mission is over
immediate_effectTriggers any immediate effects of this asset
passive_effectTriggers any passive effects of this asset
reapplyReapplies the asset, refreshing it or restoring uses
remove_passive_effectRemoves the passive effect of this asset
+

Var Details

already_active_message + + + + +

+

Message if this asset is already active and can't be activated again

asset_flags + + + + +

+

asset related flags

asset_portrait + + + + +

+

Specific portrait used when activating this asset. Defaults to faction default if not specified

blacklist_message + + + + +

+

Feedback message if this asset is unusable during this mission

blacklist_mission_flags + + + + +

+

Missions flags that prevent the use of this asset

cost + + + + +

+

Cost in attrition points if this asset is purchased

desc + + + + +

+

Basic description

detailed_desc + + + + +

+

Detailed description

faction + + + + +

+

The faction associated with these stats

name + + + + +

+

Name of this asset

ui_icon + + + + +

+

Iconstate for UI

uses + + + + +

+

Number of times this can be used

Proc Details

activated_effect +

+

Triggers any active effects of this asset

activation_checks +

+

Returns TRUE if unable to be activated

attempt_activatation +

+

Handles the activated asset process

deactivate +

+

Deactivates the asset once the mission is over

immediate_effect +

+

Triggers any immediate effects of this asset

passive_effect +

+

Triggers any passive effects of this asset

reapply +

+

Reapplies the asset, refreshing it or restoring uses

remove_passive_effect +

+

Removes the passive effect of this asset

+ + + diff --git a/datum/campaign_asset/asset_disabler.html b/datum/campaign_asset/asset_disabler.html new file mode 100644 index 0000000000000..f073748069807 --- /dev/null +++ b/datum/campaign_asset/asset_disabler.html @@ -0,0 +1,64 @@ + + + + + + + /datum/campaign_asset/asset_disabler - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

asset_disabler + + + +

+ + + + + + +

Vars

instant_useDoes this apply instantly?
types_currently_disabledRewards currently disabled. Recorded to reenable later
types_disabledThe types of asset disabled

Procs

disable_assetActually disables an asset
trigger_disablerHandles the actual disabling activation
+

Var Details

instant_use + + + + +

+

Does this apply instantly?

types_currently_disabled + + + + +

+

Rewards currently disabled. Recorded to reenable later

types_disabled + + + + +

+

The types of asset disabled

Proc Details

disable_asset +

+

Actually disables an asset

trigger_disabler +

+

Handles the actual disabling activation

+ + + diff --git a/datum/campaign_asset/attrition_modifier.html b/datum/campaign_asset/attrition_modifier.html new file mode 100644 index 0000000000000..10268b1b578a1 --- /dev/null +++ b/datum/campaign_asset/attrition_modifier.html @@ -0,0 +1,36 @@ + + + + + + + /datum/campaign_asset/attrition_modifier - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

attrition_modifier + + + +

+ + +

Vars

attrition_modModifier to faction passive attrition gain
+

Var Details

attrition_mod + + + + +

+

Modifier to faction passive attrition gain

+ + + diff --git a/datum/campaign_asset/bonus_job.html b/datum/campaign_asset/bonus_job.html new file mode 100644 index 0000000000000..7335ba2f8bdec --- /dev/null +++ b/datum/campaign_asset/bonus_job.html @@ -0,0 +1,36 @@ + + + + + + + /datum/campaign_asset/bonus_job - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

bonus_job + + + +

+ + +

Vars

bonus_job_listlist of bonus jobs to grant for this asset
+

Var Details

bonus_job_list + + + + +

+

list of bonus jobs to grant for this asset

+ + + diff --git a/datum/campaign_asset/equipment.html b/datum/campaign_asset/equipment.html new file mode 100644 index 0000000000000..251891b98a06d --- /dev/null +++ b/datum/campaign_asset/equipment.html @@ -0,0 +1,36 @@ + + + + + + + /datum/campaign_asset/equipment - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

equipment + + + +

+ + +

Vars

equipment_to_spawnlist of objects to spawn when this asset is activated
+

Var Details

equipment_to_spawn + + + + +

+

list of objects to spawn when this asset is activated

+ + + diff --git a/datum/campaign_asset/strategic_reserves.html b/datum/campaign_asset/strategic_reserves.html new file mode 100644 index 0000000000000..bda091ec96e81 --- /dev/null +++ b/datum/campaign_asset/strategic_reserves.html @@ -0,0 +1,36 @@ + + + + + + + /datum/campaign_asset/strategic_reserves - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

strategic_reserves + + + +

+ + +

Vars

respawn_delay_modHow much the faction's respawn delay is modified by
+

Var Details

respawn_delay_mod + + + + +

+

How much the faction's respawn delay is modified by

+ + + diff --git a/datum/campaign_asset/teleporter_enabled.html b/datum/campaign_asset/teleporter_enabled.html new file mode 100644 index 0000000000000..ce051684f94bd --- /dev/null +++ b/datum/campaign_asset/teleporter_enabled.html @@ -0,0 +1,36 @@ + + + + + + + /datum/campaign_asset/teleporter_enabled - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

teleporter_enabled + + + +

+ + +

Vars

linked_teleporterThe teleporter associated with this asset
+

Var Details

linked_teleporter + + + + +

+

The teleporter associated with this asset

+ + + diff --git a/datum/campaign_mission.html b/datum/campaign_mission.html new file mode 100644 index 0000000000000..9a9924833f1e0 --- /dev/null +++ b/datum/campaign_mission.html @@ -0,0 +1,589 @@ + + + + + + + /datum/campaign_mission - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

campaign_mission + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

attrition_point_rewardsattrition point rewards for the mission type
cash_rewardscash rewards for the mission type
draw_reward_tablePossible rewards for a draw, used by Generate_rewards()
game_timerTimer used to calculate how long till mission ends
game_timer_delayDelay from shutter drop until game TIMER starts
hostile_factionfaction that did not choose the mission
hostile_faction_additional_rewardsAny additional rewards for the hostile faction, for display purposes
hostile_faction_mission_briefDetailed mission description for the hostile faction
hostile_faction_mission_parametersOptional mission parameters for the hostile faction. Some are autopopulated
hostile_faction_objective_descriptionThe victory conditions for this mission for the hostile faction, for display purposes
intro_messageMap text intro message for the start of the mission
major_loss_reward_tablePossible rewards for a major loss, used by Generate_rewards()
major_victory_reward_tablePossible rewards for a major victory, used by Generate_rewards()
map_armor_colorCamo color associated with this map
map_filepath of map for this mission
map_light_coloursLightings colours for the map. Typically all the same for consistancy, but not required
map_light_levelsLight levels for the map
map_namemap name for this mission
map_traitsmap_traits, defaults to ZTRAIT_AWAY
max_game_timeThe length of time until mission ends, if timed
max_time_reachedWhether the max game time has been reached
minor_loss_reward_tablePossible rewards for a minor loss, used by Generate_rewards()
minor_victory_reward_tablePossible rewards for a minor victory, used by Generate_rewards()
mission_flagsAny mission behavior flags
mission_iconUI icon for the mission
mission_start_delayDelay before the mission actually starts
mission_statecurrent state of the mission
mission_z_levelThe actual z-level the mission is played on
modeThe current gamemode. Var as its referred to often
namename of the mission
op_name_hostileOperation name for hostile faction
op_name_startingOperation name for starting faction
outcomespecific mission outcome
outro_messageMessage to players when a mission ends
shutter_open_delayOptional delay for each faction to be able to deploy, typically used in attacker/defender missions
start_timerTimer for when the mission starts
starting_factionfaction that chose the mission
starting_faction_additional_rewardsAny additional rewards for the starting faction, for display purposes
starting_faction_mission_briefDetailed mission description for the starting faction
starting_faction_mission_parametersOptional mission parameters for the starting faction. Some are autopopulated
starting_faction_objective_descriptionThe victory conditions for this mission for the starting faction, for display purposes
victory_point_rewardsVictory point rewards for the mission type
winning_factionwinning faction of the mission

Procs

Generate_rewardsGenerates mission rewards, if there is variability involved
apply_cash_rewardapplies mission cash bonuses to both factions
apply_drawApply outcomes for draw
apply_major_lossApply outcomes for major loss
apply_major_victoryApply outcomes for major win
apply_minor_lossApply outcomes for minor loss
apply_minor_victoryApply outcomes for minor win
apply_outcomeApplies the correct outcome for the mission
apply_victory_pointsgives any victory points earned in the mission
check_mission_progressChecks mission end criteria, and ends the mission if met
count_humanschecks how many marines and SOM are still alive
drop_blocker_disabledHandles notification of a dropblocker being disabled
end_missionMission end wrap up
get_mission_deploy_messageGet a mission specific message for the deploying user if there is one
get_status_tab_itemsGenerates status tab info for the mission
load_mapGenerates a new z level for the mission
load_missionSets up the mission once it has been selected
load_mission_briefGenerates the mission brief for the mission if it needs to be late loaded
load_objective_descriptionGenerates the objective description for the mission if it needs to be late loaded
load_pre_mission_bonusesGenerates any mission specific assets/benefits for the two teams
map_text_broadcastSends a maptext message to a specified faction
mission_end_countdownaccesses the timer for status panel
modify_attrition_pointsModifies a faction's attrition points
pause_mission_timerPauses the gametimer, recording the remaining time left in max_game_time
play_outroOutro when the mission is finished
play_selection_introIntro when the mission is selected
play_start_introIntro when the mission is started
remove_mission_flagRemoves a flag or flags from this mission
remove_mission_objectRemoves the object from the campaign_structrures list if they are destroyed mid mission
resume_mission_timerAttempts to resume the gametimer
set_loot_tablesSets up the loot tables for this mission, if required
set_mission_timersets up the timer for the mission
spawn_mechspawns mechs for a faction
spawn_tankspawns mechs for a faction
start_missionMission start proper
tele_blocker_disabledHandles notification of a teleblocker being disabled
unregister_mission_signalsUnregisters all signals when the mission finishes
+

Var Details

attrition_point_rewards + + + + +

+

attrition point rewards for the mission type

cash_rewards + + + + +

+

cash rewards for the mission type

draw_reward_table + + + + +

+

Possible rewards for a draw, used by Generate_rewards()

game_timer + + + + +

+

Timer used to calculate how long till mission ends

game_timer_delay + + + + +

+

Delay from shutter drop until game TIMER starts

hostile_faction + + + + +

+

faction that did not choose the mission

hostile_faction_additional_rewards + + + + +

+

Any additional rewards for the hostile faction, for display purposes

hostile_faction_mission_brief + + + + +

+

Detailed mission description for the hostile faction

hostile_faction_mission_parameters + + + + +

+

Optional mission parameters for the hostile faction. Some are autopopulated

hostile_faction_objective_description + + + + +

+

The victory conditions for this mission for the hostile faction, for display purposes

intro_message + + + + +

+

Map text intro message for the start of the mission

major_loss_reward_table + + + + +

+

Possible rewards for a major loss, used by Generate_rewards()

major_victory_reward_table + + + + +

+

Possible rewards for a major victory, used by Generate_rewards()

map_armor_color + + + + +

+

Camo color associated with this map

map_file + + + + +

+

path of map for this mission

map_light_colours + + + + +

+

Lightings colours for the map. Typically all the same for consistancy, but not required

map_light_levels + + + + +

+

Light levels for the map

map_name + + + + +

+

map name for this mission

map_traits + + + + +

+

map_traits, defaults to ZTRAIT_AWAY

max_game_time + + + + +

+

The length of time until mission ends, if timed

max_time_reached + + + + +

+

Whether the max game time has been reached

minor_loss_reward_table + + + + +

+

Possible rewards for a minor loss, used by Generate_rewards()

minor_victory_reward_table + + + + +

+

Possible rewards for a minor victory, used by Generate_rewards()

mission_flags + + + + +

+

Any mission behavior flags

mission_icon + + + + +

+

UI icon for the mission

mission_start_delay + + + + +

+

Delay before the mission actually starts

mission_state + + + + +

+

current state of the mission

mission_z_level + + + + +

+

The actual z-level the mission is played on

mode + + + + +

+

The current gamemode. Var as its referred to often

name + + + + +

+

name of the mission

op_name_hostile + + + + +

+

Operation name for hostile faction

op_name_starting + + + + +

+

Operation name for starting faction

outcome + + + + +

+

specific mission outcome

outro_message + + + + +

+

Message to players when a mission ends

shutter_open_delay + + + + +

+

Optional delay for each faction to be able to deploy, typically used in attacker/defender missions

start_timer + + + + +

+

Timer for when the mission starts

starting_faction + + + + +

+

faction that chose the mission

starting_faction_additional_rewards + + + + +

+

Any additional rewards for the starting faction, for display purposes

starting_faction_mission_brief + + + + +

+

Detailed mission description for the starting faction

starting_faction_mission_parameters + + + + +

+

Optional mission parameters for the starting faction. Some are autopopulated

starting_faction_objective_description + + + + +

+

The victory conditions for this mission for the starting faction, for display purposes

victory_point_rewards + + + + +

+

Victory point rewards for the mission type

winning_faction + + + + +

+

winning faction of the mission

Proc Details

Generate_rewards +

+

Generates mission rewards, if there is variability involved

apply_cash_reward +

+

applies mission cash bonuses to both factions

apply_draw +

+

Apply outcomes for draw

apply_major_loss +

+

Apply outcomes for major loss

apply_major_victory +

+

Apply outcomes for major win

apply_minor_loss +

+

Apply outcomes for minor loss

apply_minor_victory +

+

Apply outcomes for minor win

apply_outcome +

+

Applies the correct outcome for the mission

apply_victory_points +

+

gives any victory points earned in the mission

check_mission_progress +

+

Checks mission end criteria, and ends the mission if met

count_humans +

+

checks how many marines and SOM are still alive

drop_blocker_disabled +

+

Handles notification of a dropblocker being disabled

end_mission +

+

Mission end wrap up

get_mission_deploy_message +

+

Get a mission specific message for the deploying user if there is one

get_status_tab_items +

+

Generates status tab info for the mission

load_map +

+

Generates a new z level for the mission

load_mission +

+

Sets up the mission once it has been selected

load_mission_brief +

+

Generates the mission brief for the mission if it needs to be late loaded

load_objective_description +

+

Generates the objective description for the mission if it needs to be late loaded

load_pre_mission_bonuses +

+

Generates any mission specific assets/benefits for the two teams

map_text_broadcast +

+

Sends a maptext message to a specified faction

mission_end_countdown +

+

accesses the timer for status panel

modify_attrition_points +

+

Modifies a faction's attrition points

pause_mission_timer +

+

Pauses the gametimer, recording the remaining time left in max_game_time

play_outro +

+

Outro when the mission is finished

play_selection_intro +

+

Intro when the mission is selected

play_start_intro +

+

Intro when the mission is started

remove_mission_flag +

+

Removes a flag or flags from this mission

remove_mission_object +

+

Removes the object from the campaign_structrures list if they are destroyed mid mission

resume_mission_timer +

+

Attempts to resume the gametimer

set_loot_tables +

+

Sets up the loot tables for this mission, if required

set_mission_timer +

+

sets up the timer for the mission

spawn_mech +

+

spawns mechs for a faction

spawn_tank +

+

spawns mechs for a faction

start_mission +

+

Mission start proper

tele_blocker_disabled +

+

Handles notification of a teleblocker being disabled

unregister_mission_signals +

+

Unregisters all signals when the mission finishes

+ + + diff --git a/datum/campaign_mission/capture_mission.html b/datum/campaign_mission/capture_mission.html new file mode 100644 index 0000000000000..4eca7ec370f61 --- /dev/null +++ b/datum/campaign_mission/capture_mission.html @@ -0,0 +1,78 @@ + + + + + + + /datum/campaign_mission/capture_mission - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

capture_mission + + + +

+ + + + + + + + +

Vars

capture_countHow many objects extracted by each team
min_capture_amountnumber of targets to capture for a minor victory
objectives_remainingHow many objectives currently remaining
objectives_totalTotal number of objectives at round start

Procs

objective_cap_startedAn objective capture cycle was started
objective_extractedHandles the effect of an objective being claimed
objective_reward_bonusThe addition rewards for capturing objectives, regardless of outcome
+

Var Details

capture_count + + + + +

+

How many objects extracted by each team

min_capture_amount + + + + +

+

number of targets to capture for a minor victory

objectives_remaining + + + + +

+

How many objectives currently remaining

objectives_total + + + + +

+

Total number of objectives at round start

Proc Details

objective_cap_started +

+

An objective capture cycle was started

objective_extracted +

+

Handles the effect of an objective being claimed

objective_reward_bonus +

+

The addition rewards for capturing objectives, regardless of outcome

+ + + diff --git a/datum/campaign_mission/comm_uplink.html b/datum/campaign_mission/comm_uplink.html new file mode 100644 index 0000000000000..68a191e83953f --- /dev/null +++ b/datum/campaign_mission/comm_uplink.html @@ -0,0 +1,35 @@ + + + + + + + /datum/campaign_mission/comm_uplink - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

comm_uplink + + + +

+ + +

Procs

apply_major_victorypulls the number of both factions, dead or alive

Proc Details

apply_major_victory +

+

pulls the number of both factions, dead or alive

+ + + diff --git a/datum/campaign_mission/destroy_mission.html b/datum/campaign_mission/destroy_mission.html new file mode 100644 index 0000000000000..584036bccddcc --- /dev/null +++ b/datum/campaign_mission/destroy_mission.html @@ -0,0 +1,85 @@ + + + + + + + /datum/campaign_mission/destroy_mission - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

destroy_mission + + + +

+ +

basic destroy stuff mission

+ + + + + + + +

Vars

attacking_factionThe faction trying to destroy objectives
defending_factionThe faction trying to protect objectives
min_destruction_amountnumber of targets destroyed for a minor victory
objective_destruction_messagesOverwatch messages for destroying objectives
objectives_destroyedHow many objectives currently destroyed
objectives_totalTotal number of objectives at round start

Procs

objective_destroyedHandles the destruction of an objective
set_factionsSets the attacking and defending faction. Can be overridden to make the starting faction defenders
+

Var Details

attacking_faction + + + + +

+

The faction trying to destroy objectives

defending_faction + + + + +

+

The faction trying to protect objectives

min_destruction_amount + + + + +

+

number of targets destroyed for a minor victory

objective_destruction_messages + + + + +

+

Overwatch messages for destroying objectives

objectives_destroyed + + + + +

+

How many objectives currently destroyed

objectives_total + + + + +

+

Total number of objectives at round start

Proc Details

objective_destroyed +

+

Handles the destruction of an objective

set_factions +

+

Sets the attacking and defending faction. Can be overridden to make the starting faction defenders

+ + + diff --git a/datum/campaign_mission/destroy_mission/base_rescue.html b/datum/campaign_mission/destroy_mission/base_rescue.html new file mode 100644 index 0000000000000..5a48b9d33f14e --- /dev/null +++ b/datum/campaign_mission/destroy_mission/base_rescue.html @@ -0,0 +1,49 @@ + + + + + + + /datum/campaign_mission/destroy_mission/base_rescue - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

base_rescue + + + +

+ + + + +

Procs

computer_runningCode computer is actively running a segment
computer_stop_runningCode computer stops running a segment
override_code_receivedAlerts players that a code has been sent

Proc Details

computer_running +

+

Code computer is actively running a segment

computer_stop_running +

+

Code computer stops running a segment

override_code_received +

+

Alerts players that a code has been sent

+ + + diff --git a/datum/campaign_mission/final_mission.html b/datum/campaign_mission/final_mission.html new file mode 100644 index 0000000000000..5c5dd36d86336 --- /dev/null +++ b/datum/campaign_mission/final_mission.html @@ -0,0 +1,35 @@ + + + + + + + /datum/campaign_mission/final_mission - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

final_mission + + + +

+ + +

Procs

apply_major_victorypulls the number of both factions, dead or alive

Proc Details

apply_major_victory +

+

pulls the number of both factions, dead or alive

+ + + diff --git a/datum/campaign_mission/raiding_base.html b/datum/campaign_mission/raiding_base.html new file mode 100644 index 0000000000000..7d555aeac84b1 --- /dev/null +++ b/datum/campaign_mission/raiding_base.html @@ -0,0 +1,92 @@ + + + + + + + /datum/campaign_mission/raiding_base - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

raiding_base + + + +

+ + + + + + + + + + +

Vars

beacon_typeThe type of beacon used in this mission
beacons_remainingCount of beacons still in play
ob_calledRecords whether the OB has been called

Procs

beacon_destroyedHandles a beacon being destroyed. Separate from normal objective destruction for convenience as we want the specific beacon ref
beacon_effectHandles the actual detonation effects
beacon_placedReacts to an OB beacon being successfully triggered
beacon_triggeredReacts to an OB beacon being successfully triggered
get_valid_beacon_areasReturns a list of areas in which the beacon can be deployed
play_beacon_deployed_annoucementMaptext alert when a beacon is placed
+

Var Details

beacon_type + + + + +

+

The type of beacon used in this mission

beacons_remaining + + + + +

+

Count of beacons still in play

ob_called + + + + +

+

Records whether the OB has been called

Proc Details

beacon_destroyed +

+

Handles a beacon being destroyed. Separate from normal objective destruction for convenience as we want the specific beacon ref

beacon_effect +

+

Handles the actual detonation effects

beacon_placed +

+

Reacts to an OB beacon being successfully triggered

beacon_triggered +

+

Reacts to an OB beacon being successfully triggered

get_valid_beacon_areas +

+

Returns a list of areas in which the beacon can be deployed

play_beacon_deployed_annoucement +

+

Maptext alert when a beacon is placed

+ + + diff --git a/datum/campaign_mission/spearhead_assault.html b/datum/campaign_mission/spearhead_assault.html new file mode 100644 index 0000000000000..86ac5a448035e --- /dev/null +++ b/datum/campaign_mission/spearhead_assault.html @@ -0,0 +1,35 @@ + + + + + + + /datum/campaign_mission/spearhead_assault - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

spearhead_assault + + + +

+ + +

Procs

apply_major_victorypulls the number of both factions, dead or alive

Proc Details

apply_major_victory +

+

pulls the number of both factions, dead or alive

+ + + diff --git a/datum/campaign_mission/tdm.html b/datum/campaign_mission/tdm.html new file mode 100644 index 0000000000000..ac2b0c28c4b19 --- /dev/null +++ b/datum/campaign_mission/tdm.html @@ -0,0 +1,71 @@ + + + + + + + /datum/campaign_mission/tdm - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

tdm + + + +

+ + + + + + + +

Vars

capture_point_targetPoint limit to win the game via objectives
hostile_team_cap_pointshostile team's point count
start_team_cap_pointsstarting team's point count

Procs

apply_major_victorypulls the number of both factions, dead or alive
objective_cap_startedAn objective capture cycle was started
objective_capturedHandles the effect of an objective being claimed
+

Var Details

capture_point_target + + + + +

+

Point limit to win the game via objectives

hostile_team_cap_points + + + + +

+

hostile team's point count

start_team_cap_points + + + + +

+

starting team's point count

Proc Details

apply_major_victory +

+

pulls the number of both factions, dead or alive

objective_cap_started +

+

An objective capture cycle was started

objective_captured +

+

Handles the effect of an objective being claimed

+ + + diff --git a/datum/centcom_podlauncher.html b/datum/centcom_podlauncher.html new file mode 100644 index 0000000000000..595651799514f --- /dev/null +++ b/datum/centcom_podlauncher.html @@ -0,0 +1,47 @@ + + + + + + + /datum/centcom_podlauncher - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

centcom_podlauncher + + + +

+ + +

Procs

ui_close/////////////////////////UTILITIES////////////////// +/////////////////////////LAUNCH STYLE CHANGES////////////////// +/////////////////////////POD EFFECTS////////////////// +input specific tartget +/////////////////////////TIMER DELAYS////////////////// +/////////////////////////ADMIN SOUNDS////////////////// +/////////////////////////STYLE CHANGES//////////////////

Proc Details

ui_close +

+

/////////////////////////UTILITIES////////////////// +/////////////////////////LAUNCH STYLE CHANGES////////////////// +/////////////////////////POD EFFECTS////////////////// +input specific tartget +/////////////////////////TIMER DELAYS////////////////// +/////////////////////////ADMIN SOUNDS////////////////// +/////////////////////////STYLE CHANGES//////////////////

+ + + diff --git a/datum/chat_payload.html b/datum/chat_payload.html new file mode 100644 index 0000000000000..0af60443cbf59 --- /dev/null +++ b/datum/chat_payload.html @@ -0,0 +1,64 @@ + + + + + + + /datum/chat_payload - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

chat_payload + + + +

+ +

Stores information about a chat payload

+ + + + +

Vars

contentMessage we are sending
resendsResend count
sequenceSequence number of this payload

Procs

get_content_as_htmlReturns an HTML-encoded message from our contents.
into_messageConverts the chat payload into a JSON string
+

Var Details

content + + + + +

+

Message we are sending

resends + + + + +

+

Resend count

sequence + + + + +

+

Sequence number of this payload

Proc Details

get_content_as_html +

+

Returns an HTML-encoded message from our contents.

into_message +

+

Converts the chat payload into a JSON string

+ + + diff --git a/datum/chatmessage.html b/datum/chatmessage.html new file mode 100644 index 0000000000000..145d517f3ac3c --- /dev/null +++ b/datum/chatmessage.html @@ -0,0 +1,138 @@ + + + + + + + /datum/chatmessage - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

Chat Message Overlay + + + +

+ +

Datum for generating a message overlay on the map

+ + + + + + + + + + + +

Vars

animate_lifespanOur animation lifespan, how long this message will last
animate_startWhen we started animating the message
approx_linesContains the approximate amount of lines for height decay
current_z_idxThe current index used for adjusting the layer of each sequential chat message such that recent messages will overlay older ones
messageThe visual element of the chat messsage
message_locThe location in which the message is appearing
owned_byThe client who heard this message

Procs

NewConstructs a chat message overlay
colorize_stringGets a color for a name, will return the same color for a given string consistently within a round.atom
finish_image_generationfinishes the image generation after the MeasureText() call in generate_image(). +necessary because after that call the proc can resume at the end of the tick and cause overtime.
generate_imageGenerates a chat message image representation
on_parent_qdelCalls qdel on the chatmessage when its parent is deleted, used to register qdel signal
+

Var Details

animate_lifespan + + + + +

+

Our animation lifespan, how long this message will last

animate_start + + + + +

+

When we started animating the message

approx_lines + + + + +

+

Contains the approximate amount of lines for height decay

current_z_idx + + + + +

+

The current index used for adjusting the layer of each sequential chat message such that recent messages will overlay older ones

message + + + + +

+

The visual element of the chat messsage

message_loc + + + + +

+

The location in which the message is appearing

owned_by + + + + +

+

The client who heard this message

Proc Details

New +

+

Constructs a chat message overlay

+

Arguments:

+

colorize_string +

+

Gets a color for a name, will return the same color for a given string consistently within a round.atom

+

Note that this proc aims to produce pastel-ish colors using the HSL colorspace. These seem to be favorable for displaying on the map.

+

Arguments:

+

finish_image_generation +

+

finishes the image generation after the MeasureText() call in generate_image(). +necessary because after that call the proc can resume at the end of the tick and cause overtime.

generate_image +

+

Generates a chat message image representation

+

Arguments:

+

on_parent_qdel +

+

Calls qdel on the chatmessage when its parent is deleted, used to register qdel signal

+ + + diff --git a/datum/chemical_reaction.html b/datum/chemical_reaction.html new file mode 100644 index 0000000000000..f0b2da798a7f1 --- /dev/null +++ b/datum/chemical_reaction.html @@ -0,0 +1,134 @@ + + + + + + + /datum/chemical_reaction - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

chemical_reaction + + + +

+ + + + + + + + + + + + + + + +

Vars

hidden_from_codexset to TRUE if you want something to be hidden from the ingame codex
idID of the reaction
is_cold_recipeSet to TRUE if you want the recipe to only react when it's BELOW the required temp.
mix_messageThe message shown to nearby people upon mixing, if applicable
mix_soundThe sound played upon mixing, if applicable
mob_reactDetermines if a chemical reaction can occur inside a mob
nameName of the reaction
required_catalystsRequired chemicals that must be present in the container but are not USED.
required_containerthe exact container path required for the reaction to happen
required_otheran integer required for the reaction to happen
required_reagentsRequired chemicals that are USED in the reaction
required_tempRequired temperature for the reaction to begin
resultsResults of the chemical reactions

Procs

on_reactionShit that happens on reaction
+

Var Details

hidden_from_codex + + + + +

+

set to TRUE if you want something to be hidden from the ingame codex

id + + + + +

+

ID of the reaction

is_cold_recipe + + + + +

+

Set to TRUE if you want the recipe to only react when it's BELOW the required temp.

mix_message + + + + +

+

The message shown to nearby people upon mixing, if applicable

mix_sound + + + + +

+

The sound played upon mixing, if applicable

mob_react + + + + +

+

Determines if a chemical reaction can occur inside a mob

name + + + + +

+

Name of the reaction

required_catalysts + + + + +

+

Required chemicals that must be present in the container but are not USED.

required_container + + + + +

+

the exact container path required for the reaction to happen

required_other + + + + +

+

an integer required for the reaction to happen

required_reagents + + + + +

+

Required chemicals that are USED in the reaction

required_temp + + + + +

+

Required temperature for the reaction to begin

results + + + + +

+

Results of the chemical reactions

Proc Details

on_reaction +

+

Shit that happens on reaction

+

Proc where the additional magic happens. +You dont want to handle mob spawning in this since there is a dedicated proc for that.client +Arguments:

+
+ + + diff --git a/datum/color_matrix_editor.html b/datum/color_matrix_editor.html new file mode 100644 index 0000000000000..2fa7f966809fd --- /dev/null +++ b/datum/color_matrix_editor.html @@ -0,0 +1,36 @@ + + + + + + + /datum/color_matrix_editor - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

color_matrix_editor + + + +

+ + +

Vars

proxy_plane_mastersAll the plane masters that need to be applied.
+

Var Details

proxy_plane_masters + + + + +

+

All the plane masters that need to be applied.

+ + + diff --git a/datum/component.html b/datum/component.html new file mode 100644 index 0000000000000..6d07d7e430dc3 --- /dev/null +++ b/datum/component.html @@ -0,0 +1,213 @@ + + + + + + + /datum/component - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

Component + + + +

+ +

The component datum

+

A component should be a single standalone unit +of functionality, that works by receiving signals from it's parent +object to provide some single functionality (i.e a slippery component) +that makes the object it's attached to cause people to slip over. +Useful when you want shared behaviour independent of type inheritance

+ + + + + + + + + + + + + + + + + + + + +

Vars

can_transferOnly set to true if you are able to properly transfer this component
dupe_modeDefines how duplicate existing components are handled when added to a datum
dupe_typeThe type to check for duplication
parentThe datum this components belongs to
sourcesA lazy list of the sources for this component

Procs

CheckDupeComponentCalled on a component when a component of the same type was added to the same parent with COMPONENT_DUPE_SELECTIVE
DestroyProperly removes the component from parent and cleans up references
InheritComponentCalled on a component when a component of the same type was added to the same parent
InitializeCalled during component creation with the same arguments as in new excluding parent.
NewCreate a new component.
PostTransferCallback Just after a component is transferred
PreTransferCallback Just before this component is transferred
RegisterWithParentRegister the component with the parent object
RemoveComponentRemoves the component from parent, ends up with a null parent
UnregisterFromParentUnregister from our parent object
_GetInverseTypeListInternal proc to create a list of our type and all parent types
_JoinParentInternal proc to handle behaviour of components when joining a parent
_RemoveFromParentInternal proc to handle behaviour when being removed from a parent
on_source_addCalled when the component has a new source registered. +Return COMPONENT_INCOMPATIBLE to signal that the source is incompatible and should not be added
on_source_removeCalled when the component has a source removed. +You probably want to call parent after you do your logic because at the end of this we qdel if we have no sources remaining!
ui_hostReturn the object that is the host of any UI's that this component has
+

Var Details

can_transfer + + + + +

+

Only set to true if you are able to properly transfer this component

+

At a minimum RegisterWithParent and UnregisterFromParent should be used

+

Make sure you also implement PostTransfer for any post transfer handling

dupe_mode + + + + +

+

Defines how duplicate existing components are handled when added to a datum

+

See COMPONENT_DUPE_* definitions for available options

dupe_type + + + + +

+

The type to check for duplication

+

null means exact match on type (default)

+

Any other type means that and all subtypes

parent + + + + +

+

The datum this components belongs to

sources + + + + +

+

A lazy list of the sources for this component

Proc Details

CheckDupeComponent +

+

Called on a component when a component of the same type was added to the same parent with COMPONENT_DUPE_SELECTIVE

+

See /datum/component/var/dupe_mode

+

C's type will always be the same of the called component

+

return TRUE if you are absorbing the component, otherwise FALSE if you are fine having it exist as a duplicate component

Destroy +

+

Properly removes the component from parent and cleans up references

+

Arguments:

+

InheritComponent +

+

Called on a component when a component of the same type was added to the same parent

+

See /datum/component/var/dupe_mode

+

C's type will always be the same of the called component

Initialize +

+

Called during component creation with the same arguments as in new excluding parent.

+

Do not call qdel(src) from this function, return COMPONENT_INCOMPATIBLE instead

New +

+

Create a new component.

+

Additional arguments are passed to Initialize()

+

Arguments:

+

PostTransfer +

+

Callback Just after a component is transferred

+

Use this to do any special setup you need to do after being moved to a new object

+

Do not call qdel(src) from this function, return COMPONENT_INCOMPATIBLE instead

PreTransfer +

+

Callback Just before this component is transferred

+

Use this to do any special cleanup you might need to do before being deregged from an object

RegisterWithParent +

+

Register the component with the parent object

+

Use this proc to register with your parent object

+

Overridable proc that's called when added to a new parent

RemoveComponent +

+

Removes the component from parent, ends up with a null parent

UnregisterFromParent +

+

Unregister from our parent object

+

Use this proc to unregister from your parent object

+

Overridable proc that's called when removed from a parent

_GetInverseTypeList +

+

Internal proc to create a list of our type and all parent types

_JoinParent +

+

Internal proc to handle behaviour of components when joining a parent

_RemoveFromParent +

+

Internal proc to handle behaviour when being removed from a parent

on_source_add +

+

Called when the component has a new source registered. +Return COMPONENT_INCOMPATIBLE to signal that the source is incompatible and should not be added

on_source_remove +

+

Called when the component has a source removed. +You probably want to call parent after you do your logic because at the end of this we qdel if we have no sources remaining!

ui_host +

+

Return the object that is the host of any UI's that this component has

+ + + diff --git a/datum/component/admin_popup.html b/datum/component/admin_popup.html new file mode 100644 index 0000000000000..e33010fc7b51d --- /dev/null +++ b/datum/component/admin_popup.html @@ -0,0 +1,39 @@ + + + + + + + /datum/component/admin_popup - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

admin_popup + + + +

+ +

Applied to clients when they receive an admin popup, alerting them to +their ticket.

+

Vars

ticketThe user's most active ticket. If this is resolved, closed, or replied to, +then the component will delete itself.
+

Var Details

ticket + + + + +

+

The user's most active ticket. If this is resolved, closed, or replied to, +then the component will delete itself.

+ + + diff --git a/datum/component/after_image.html b/datum/component/after_image.html new file mode 100644 index 0000000000000..61b5e87e97839 --- /dev/null +++ b/datum/component/after_image.html @@ -0,0 +1,134 @@ + + + + + + + /datum/component/after_image - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

after_image + + + +

+ + + + + + + + + + + + + + + + +

Vars

color_cycleWhether we make a rainbow colour cycle
glide_sizeCurrent glide_size of the owner
hsvCurrent colour of the after image
image_durationHow long an image lasts
last_colour_timeLast world time we cycled a colour
last_directionLast dir faced by owner
last_movementLast move time of owner
loop_delayHow frequently an image is made
loop_timerHolds the loop timer
ownerMob we are making images of
previous_locLast loc of owner. Used for estimating the pixel_x and pixel_y of the target

Procs

handle_jumpRecords jump details
spawn_imageCreates the after image
update_glideUpdates last dir and glidesize after making a step
update_stepUpdates prev loc and move time when starting a step
+

Var Details

color_cycle + + + + +

+

Whether we make a rainbow colour cycle

glide_size + + + + +

+

Current glide_size of the owner

hsv + + + + +

+

Current colour of the after image

image_duration + + + + +

+

How long an image lasts

last_colour_time + + + + +

+

Last world time we cycled a colour

last_direction + + + + +

+

Last dir faced by owner

last_movement + + + + +

+

Last move time of owner

loop_delay + + + + +

+

How frequently an image is made

loop_timer + + + + +

+

Holds the loop timer

owner + + + + +

+

Mob we are making images of

previous_loc + + + + +

+

Last loc of owner. Used for estimating the pixel_x and pixel_y of the target

Proc Details

handle_jump +

+

Records jump details

spawn_image +

+

Creates the after image

update_glide +

+

Updates last dir and glidesize after making a step

update_step +

+

Updates prev loc and move time when starting a step

+ + + diff --git a/datum/component/ai_controller.html b/datum/component/ai_controller.html new file mode 100644 index 0000000000000..52b0ee437e5c0 --- /dev/null +++ b/datum/component/ai_controller.html @@ -0,0 +1,42 @@ + + + + + + + /datum/component/ai_controller - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

ai_controller + + + +

+ + + +

Procs

clean_upStop the ai behaviour from processing and clean current action
start_aiStart the ai behaviour

Proc Details

clean_up +

+

Stop the ai behaviour from processing and clean current action

start_ai +

+

Start the ai behaviour

+ + + diff --git a/datum/component/anti_juggling.html b/datum/component/anti_juggling.html new file mode 100644 index 0000000000000..815c1c326e5a2 --- /dev/null +++ b/datum/component/anti_juggling.html @@ -0,0 +1,50 @@ + + + + + + + /datum/component/anti_juggling - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

anti_juggling + + + +

+ + + + +

Vars

next_fire_timeThe next time the gun we just fired will be able to fire

Procs

check_cooldownChecks if the cooldown of the gun we previously fired is up.
on_fireGets called when the mob fires a gun, we get the gun they fired and store the next time it'll be able to fire.
+

Var Details

next_fire_time + + + + +

+

The next time the gun we just fired will be able to fire

Proc Details

check_cooldown +

+

Checks if the cooldown of the gun we previously fired is up.

on_fire +

+

Gets called when the mob fires a gun, we get the gun they fired and store the next time it'll be able to fire.

+ + + diff --git a/datum/component/attachment_handler.html b/datum/component/attachment_handler.html new file mode 100644 index 0000000000000..abe5eee93fb80 --- /dev/null +++ b/datum/component/attachment_handler.html @@ -0,0 +1,180 @@ + + + + + + + /datum/component/attachment_handler - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

attachment_handler + + + +

+ + + + + + + + + + + + + + + + + + + + + + +

Vars

attachable_overlaysList of the attachment overlay images. This is so that we can easily swap overlays in and out.
attachables_allowedTypepath list that stores type data of allowed attachments. The attachment needs the attachment element to be able to attach regardless of what is stored here.
attachment_data_by_slotAssoc list that stores the attachment data of an attachment in the slot.
attachment_offsetsList of offsets for the parent that adjusts the attachment overlay. slot1_x = 1, slot1_y = 1, slot2_x = 3, slot2_y = 7, etc. Can be null, in that case the offsets for all the attachments default to 0.
can_attachProc the parent calls to see if its eligable for attachment.
on_attachProc the parent calls on attach.
on_detachProc the parent calls on detach.
slotsAssoc list that stores the refs of the attachments to the parent. 'slot = reference'

Procs

apply_customUpdates the mob sprite of the attachment.
attach_without_userThis is for other objects to be able to attach things without the need for a user.
can_attachChecks the current slots of the parent and if there are attachments that can be removed in those slots. Basically it makes sure theres room for the attachment.
clean_referencesDeletes the attachments when the parent deletes.
detach_checkChecks if you are actually able to detach an item or not
do_attachThe gun has another gun attached to it +Theres probably a better way to do this. +This is the do_after and user checks for attaching.
do_detachDoes the detach, shows the user the removable attachments and handles the do_after.
finish_detachActually detaches the attachment. This can be called directly to bypass checks.
finish_handle_attachmentFinishes setting up the attachment. This is where the attachment actually attaches. This can be called directly to bypass any checks to directly attach an object.
remove_overlayHandles the removal of attachment overlays when the item is unequipped
start_detachStarts with the detach, is called when the user Alt-Clicks the parent.
start_handle_attachmentStarts processing the attack, and whether or not the attachable can attack.
update_parent_overlayThis updates the overlays of the parent and applies the right ones.
+

Var Details

attachable_overlays + + + + +

+

List of the attachment overlay images. This is so that we can easily swap overlays in and out.

attachables_allowed + + + + +

+

Typepath list that stores type data of allowed attachments. The attachment needs the attachment element to be able to attach regardless of what is stored here.

attachment_data_by_slot + + + + +

+

Assoc list that stores the attachment data of an attachment in the slot.

attachment_offsets + + + + +

+

List of offsets for the parent that adjusts the attachment overlay. slot1_x = 1, slot1_y = 1, slot2_x = 3, slot2_y = 7, etc. Can be null, in that case the offsets for all the attachments default to 0.

can_attach + + + + +

+

Proc the parent calls to see if its eligable for attachment.

on_attach + + + + +

+

Proc the parent calls on attach.

on_detach + + + + +

+

Proc the parent calls on detach.

slots + + + + +

+

Assoc list that stores the refs of the attachments to the parent. 'slot = reference'

Proc Details

apply_custom +

+

Updates the mob sprite of the attachment.

attach_without_user +

+

This is for other objects to be able to attach things without the need for a user.

can_attach +

+

Checks the current slots of the parent and if there are attachments that can be removed in those slots. Basically it makes sure theres room for the attachment.

clean_references +

+

Deletes the attachments when the parent deletes.

detach_check +

+

Checks if you are actually able to detach an item or not

do_attach +

+

The gun has another gun attached to it +Theres probably a better way to do this. +This is the do_after and user checks for attaching.

do_detach +

+

Does the detach, shows the user the removable attachments and handles the do_after.

finish_detach +

+

Actually detaches the attachment. This can be called directly to bypass checks.

finish_handle_attachment +

+

Finishes setting up the attachment. This is where the attachment actually attaches. This can be called directly to bypass any checks to directly attach an object.

remove_overlay +

+

Handles the removal of attachment overlays when the item is unequipped

start_detach +

+

Starts with the detach, is called when the user Alt-Clicks the parent.

start_handle_attachment +

+

Starts processing the attack, and whether or not the attachable can attack.

update_parent_overlay +

+

This updates the overlays of the parent and applies the right ones.

+ + + diff --git a/datum/component/automatedfire.html b/datum/component/automatedfire.html new file mode 100644 index 0000000000000..b44858d4f9905 --- /dev/null +++ b/datum/component/automatedfire.html @@ -0,0 +1,71 @@ + + + + + + + /datum/component/automatedfire - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

automatedfire + + + +

+ + + + + + + +

Vars

nextContains the reference to the next component in the bucket, used by autofire subsystem
next_fireContains the scheduled fire time, used for scheduling EOL
prevContains the reference to the previous component in the bucket, used by autofire subsystem
shooterThe owner of this component

Procs

process_shotHandle the firing of the autofire component
schedule_shotschedule the shooter into the system, inserting it into the next fire queue
+

Var Details

next + + + + +

+

Contains the reference to the next component in the bucket, used by autofire subsystem

next_fire + + + + +

+

Contains the scheduled fire time, used for scheduling EOL

prev + + + + +

+

Contains the reference to the previous component in the bucket, used by autofire subsystem

shooter + + + + +

+

The owner of this component

Proc Details

process_shot +

+

Handle the firing of the autofire component

schedule_shot +

+

schedule the shooter into the system, inserting it into the next fire queue

+ + + diff --git a/datum/component/automatedfire/autofire.html b/datum/component/automatedfire/autofire.html new file mode 100644 index 0000000000000..44bff7b7dc042 --- /dev/null +++ b/datum/component/automatedfire/autofire.html @@ -0,0 +1,178 @@ + + + + + + + /datum/component/automatedfire/autofire - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

autofire + + + +

+ + + + + + + + + + + + + + + + + + + + + + +

Vars

auto_burst_fire_shot_delayDelay between two volley of burst
auto_fire_shot_delayDelay between two shots when in full auto
burst_shots_to_fireHow many bullets are fired in burst mode
burstfire_shot_delayDelay between two burst shots
burstingIf we are in a burst
callback_burstingCallback to set bursting mode on the parent
callback_fireCallback to ask the parent to fire
callback_reset_fireCallback to ask the parent to reset its firing vars
fire_modeThe current fire mode of the shooter
have_to_reset_at_burst_endIf TRUE, the shooter will reset its references at the end of the burst
shootingIf the shooter is currently shooting
shots_firedCount the shots fired when bursting

Procs

hard_resetWe are burst firing, we can't clean the state now. We will do it when the burst is over +Hard reset the autofire, happens when the shooter fall/is thrown, at the end of a burst or when it runs out of ammunition
initiate_shotInsert the component in the bucket system if it was not in already
modify_autoburstfire_shot_delaySetter for autoburst shot delay
modify_burst_shots_to_fireSetter for the number of shot in a burst
modify_burstfire_shot_delaySetter for burst shot delay
modify_fire_modeSetter for fire mode
modify_fire_shot_delaySetter for auto fire shot delay
process_shotAsk the shooter to fire and schedule the next shot if need
stop_firingRemove the component from the bucket system if it was in
+

Var Details

auto_burst_fire_shot_delay + + + + +

+

Delay between two volley of burst

auto_fire_shot_delay + + + + +

+

Delay between two shots when in full auto

burst_shots_to_fire + + + + +

+

How many bullets are fired in burst mode

burstfire_shot_delay + + + + +

+

Delay between two burst shots

bursting + + + + +

+

If we are in a burst

callback_bursting + + + + +

+

Callback to set bursting mode on the parent

callback_fire + + + + +

+

Callback to ask the parent to fire

callback_reset_fire + + + + +

+

Callback to ask the parent to reset its firing vars

fire_mode + + + + +

+

The current fire mode of the shooter

have_to_reset_at_burst_end + + + + +

+

If TRUE, the shooter will reset its references at the end of the burst

shooting + + + + +

+

If the shooter is currently shooting

shots_fired + + + + +

+

Count the shots fired when bursting

Proc Details

hard_reset +

+

We are burst firing, we can't clean the state now. We will do it when the burst is over +Hard reset the autofire, happens when the shooter fall/is thrown, at the end of a burst or when it runs out of ammunition

initiate_shot +

+

Insert the component in the bucket system if it was not in already

modify_autoburstfire_shot_delay +

+

Setter for autoburst shot delay

modify_burst_shots_to_fire +

+

Setter for the number of shot in a burst

modify_burstfire_shot_delay +

+

Setter for burst shot delay

modify_fire_mode +

+

Setter for fire mode

modify_fire_shot_delay +

+

Setter for auto fire shot delay

process_shot +

+

Ask the shooter to fire and schedule the next shot if need

stop_firing +

+

Remove the component from the bucket system if it was in

+ + + diff --git a/datum/component/automatedfire/xeno_turret_autofire.html b/datum/component/automatedfire/xeno_turret_autofire.html new file mode 100644 index 0000000000000..d6ae78c8031b5 --- /dev/null +++ b/datum/component/automatedfire/xeno_turret_autofire.html @@ -0,0 +1,57 @@ + + + + + + + /datum/component/automatedfire/xeno_turret_autofire - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

xeno_turret_autofire + + + +

+ + + + + +

Vars

shootingIf we must shoot
shot_delayDelay between two shots

Procs

start_shootingSignal handler for starting the autoshooting at something
stop_shootingSignal handler for stoping the shooting
+

Var Details

shooting + + + + +

+

If we must shoot

shot_delay + + + + +

+

Delay between two shots

Proc Details

start_shooting +

+

Signal handler for starting the autoshooting at something

stop_shooting +

+

Signal handler for stoping the shooting

+ + + diff --git a/datum/component/beacon.html b/datum/component/beacon.html new file mode 100644 index 0000000000000..4dbdcff3eb327 --- /dev/null +++ b/datum/component/beacon.html @@ -0,0 +1,148 @@ + + + + + + + /datum/component/beacon - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

beacon + + + +

+ +

This component is used to give stuff beacon functionality.

+ + + + + + + + + + + + + + + + +

Vars

activatorThe mob who activated this beacon
activeIs the beacon active?
active_icon_stateThe icon state when this beacon is active
anchorShould the parent anchor on activation?
anchor_timeHow long it takes for this item to activate it's signal/deploy
beacon_camThe camera attached to the beacon
beacon_datumThe reference to the beacon datum

Procs

activateActivates the beacon
clean_beacon_datumIf the signal source dies, the beacon datum should as well
deactivateDeactivates the beacon
on_attack_handThis will only get called when you want to deactivate a beacon, ie clicking a deployed beacon
on_attack_selfThe proc that gets called when the user uses the item in their hand
on_examineAdds an extra line of instructions to the examine
on_update_icon_stateUpdates the icon state of the object to an active state, if it has one
on_update_nameGives the beacon broadcaster object the appropriate, descriptive name
on_z_changeWhat happens when we change Z level
toggle_activationToggles the active state of the beacon
+

Var Details

activator + + + + +

+

The mob who activated this beacon

active + + + + +

+

Is the beacon active?

active_icon_state + + + + +

+

The icon state when this beacon is active

anchor + + + + +

+

Should the parent anchor on activation?

anchor_time + + + + +

+

How long it takes for this item to activate it's signal/deploy

beacon_cam + + + + +

+

The camera attached to the beacon

beacon_datum + + + + +

+

The reference to the beacon datum

Proc Details

activate +

+

Activates the beacon

clean_beacon_datum +

+

If the signal source dies, the beacon datum should as well

deactivate +

+

Deactivates the beacon

on_attack_hand +

+

This will only get called when you want to deactivate a beacon, ie clicking a deployed beacon

on_attack_self +

+

The proc that gets called when the user uses the item in their hand

on_examine +

+

Adds an extra line of instructions to the examine

on_update_icon_state +

+

Updates the icon state of the object to an active state, if it has one

on_update_name +

+

Gives the beacon broadcaster object the appropriate, descriptive name

on_z_change +

+

What happens when we change Z level

toggle_activation +

+

Toggles the active state of the beacon

+ + + diff --git a/datum/component/bump_attack.html b/datum/component/bump_attack.html new file mode 100644 index 0000000000000..1a139460aea75 --- /dev/null +++ b/datum/component/bump_attack.html @@ -0,0 +1,113 @@ + + + + + + + /datum/component/bump_attack - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

bump_attack + + + +

+ + + + + + + + + + + + + +

Vars

activeWhether the component is active
bump_action_pathThe proc to register with COMSIG_MOVABLE_BUMP, based on what kind of mob the component is on
toggle_actionAction used to turn bump attack on/off manually

Procs

carbon_bump_action_checksHandles carbon bump action checks before actually doing the attack checks.
human_bump_actionHandles human pre-bump attack checks.
human_do_bump_actionHandles human bump attacks.
living_activation_toggleHandles the activation and deactivation of the bump attack component on living mobs.
living_bump_actionHandles living pre-bump attack checks.
living_bump_action_checksHandles living bump action checks before actually doing the attack checks.
living_do_bump_actionHandles living bump attacks.
xeno_bump_actionHandles xeno pre-bump attack checks.
xeno_do_bump_actionHandles xeno bump attacks.
+

Var Details

active + + + + +

+

Whether the component is active

bump_action_path + + + + +

+

The proc to register with COMSIG_MOVABLE_BUMP, based on what kind of mob the component is on

toggle_action + + + + +

+

Action used to turn bump attack on/off manually

Proc Details

carbon_bump_action_checks +

+

Handles carbon bump action checks before actually doing the attack checks.

human_bump_action +

+

Handles human pre-bump attack checks.

human_do_bump_action +

+

Handles human bump attacks.

living_activation_toggle +

+

Handles the activation and deactivation of the bump attack component on living mobs.

living_bump_action +

+

Handles living pre-bump attack checks.

living_bump_action_checks +

+

Handles living bump action checks before actually doing the attack checks.

living_do_bump_action +

+

Handles living bump attacks.

xeno_bump_action +

+

Handles xeno pre-bump attack checks.

xeno_do_bump_action +

+

Handles xeno bump attacks.

+ + + diff --git a/datum/component/chem_booster.html b/datum/component/chem_booster.html new file mode 100644 index 0000000000000..10dbeef40d7d5 --- /dev/null +++ b/datum/component/chem_booster.html @@ -0,0 +1,314 @@ + + + + + + + /datum/component/chem_booster - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

chem_booster + + + +

+ +

Chem booster component

+

This component stores "green blood" and uses it to increase effect_str of chems in the user's body.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

analyzerInstant analyzer for the chemsuit
automatic_meds_useWhether the contents on the meds_beaker will be injected into the wearer when the system is turned on
boost_amountStores the current effect strength
boost_iconBoost icon, image cycles between 2 states
boost_onDetermines whether the suit is on
boost_tier1Normal boost
boost_tier2Overcharged boost
brute_heal_ampVali brute healing is multiplied by this
burn_heal_ampVali burn healing is multiplied by this
component_actionsActions that the component provides
connected_weaponItem connected to the system
meds_beakerInternal reagent storage used to store and automatically inject reagents into the wearer
movement_boostVali movement speed buff is this value
processing_startWhen was the effect activated. Used to activate negative effects after a certain amount of use
reagent_infoInformation about how reagents boost the system's effects.
reagent_statsThis list contains the vali stat increases that correspond to each reagent +They go in the order: +brute_heal_amp, burn_heal_amp, tox_heal, stamina_regen_amp, movement_boost, min required volume, entry name
resource_drain_amountAmount required for operation
resource_overlayImage that gets added to the wearer's overlays and gets changed based on resource_storage_current
resource_storage_currentAmount of substance stored currently
resource_storage_maxAmount of substance that the component can store
stamina_regen_ampVali stamina regen is multiplied by this
tox_healVali toxin healing is multiplied by this
vali_necro_timerHow much time left on vali heal till necrosis occurs

Procs

configureOpens the radial menu with everything
connect_weaponLinks the held item, if compatible, to the chem booster and registers attacking with it
drain_resourceHandles resource collection and is ativated when attacking with a weapon.
droppedDisables active functions and cleans up actions when the suit is unequipped
equippedSets up actions and vars when the suit is equipped
examineAdds additional text for the component when examining the item it is attached to
extractExtracts resource from the suit to fill a beaker
get_meds_beaker_contentsShows the loaded reagents to the person examining the parent/wearer
load_upFills an internal beaker that gets injected into the wearer on suit activation
manage_weapon_connectionHandles the setting up and removal of signals and vars related to connecting an item to the suit
on_offHandles turning on/off the processing part of the component, along with the negative effects related to this
scan_userUsed to scan the person
setup_bonus_effectsHandles Vali stat boosts and any other potential buffs on activation/deactivation
setup_reagent_infoShows info on what stats each reagent boosts and how much units they require
show_radialShows the radial menu with suit options. It is separate from configure() due to linters
update_boostUpdates the boost amount of the suit and effect_str of reagents if component is on. "amount" is the final level you want to set the boost to.
update_resourceAdds or removes resource from the suit. Signal gets sent at every 25% of stored resource
+

Var Details

analyzer + + + + +

+

Instant analyzer for the chemsuit

automatic_meds_use + + + + +

+

Whether the contents on the meds_beaker will be injected into the wearer when the system is turned on

boost_amount + + + + +

+

Stores the current effect strength

boost_icon + + + + +

+

Boost icon, image cycles between 2 states

boost_on + + + + +

+

Determines whether the suit is on

boost_tier1 + + + + +

+

Normal boost

boost_tier2 + + + + +

+

Overcharged boost

brute_heal_amp + + + + +

+

Vali brute healing is multiplied by this

burn_heal_amp + + + + +

+

Vali burn healing is multiplied by this

component_actions + + + + +

+

Actions that the component provides

connected_weapon + + + + +

+

Item connected to the system

meds_beaker + + + + +

+

Internal reagent storage used to store and automatically inject reagents into the wearer

movement_boost + + + + +

+

Vali movement speed buff is this value

processing_start + + + + +

+

When was the effect activated. Used to activate negative effects after a certain amount of use

reagent_info + + + + +

+

Information about how reagents boost the system's effects.

reagent_stats + + + + +

+

This list contains the vali stat increases that correspond to each reagent +They go in the order: +brute_heal_amp, burn_heal_amp, tox_heal, stamina_regen_amp, movement_boost, min required volume, entry name

resource_drain_amount + + + + +

+

Amount required for operation

resource_overlay + + + + +

+

Image that gets added to the wearer's overlays and gets changed based on resource_storage_current

resource_storage_current + + + + +

+

Amount of substance stored currently

resource_storage_max + + + + +

+

Amount of substance that the component can store

stamina_regen_amp + + + + +

+

Vali stamina regen is multiplied by this

tox_heal + + + + +

+

Vali toxin healing is multiplied by this

vali_necro_timer + + + + +

+

How much time left on vali heal till necrosis occurs

Proc Details

configure +

+

Opens the radial menu with everything

connect_weapon +

+

Links the held item, if compatible, to the chem booster and registers attacking with it

drain_resource +

+

Handles resource collection and is ativated when attacking with a weapon.

dropped +

+

Disables active functions and cleans up actions when the suit is unequipped

equipped +

+

Sets up actions and vars when the suit is equipped

examine +

+

Adds additional text for the component when examining the item it is attached to

extract +

+

Extracts resource from the suit to fill a beaker

get_meds_beaker_contents +

+

Shows the loaded reagents to the person examining the parent/wearer

load_up +

+

Fills an internal beaker that gets injected into the wearer on suit activation

manage_weapon_connection +

+

Handles the setting up and removal of signals and vars related to connecting an item to the suit

on_off +

+

Handles turning on/off the processing part of the component, along with the negative effects related to this

scan_user +

+

Used to scan the person

setup_bonus_effects +

+

Handles Vali stat boosts and any other potential buffs on activation/deactivation

setup_reagent_info +

+

Shows info on what stats each reagent boosts and how much units they require

show_radial +

+

Shows the radial menu with suit options. It is separate from configure() due to linters

update_boost +

+

Updates the boost amount of the suit and effect_str of reagents if component is on. "amount" is the final level you want to set the boost to.

update_resource +

+

Adds or removes resource from the suit. Signal gets sent at every 25% of stored resource

+ + + diff --git a/datum/component/companion.html b/datum/component/companion.html new file mode 100644 index 0000000000000..6e346a15a3bc8 --- /dev/null +++ b/datum/component/companion.html @@ -0,0 +1,123 @@ + + + + + + + /datum/component/companion - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

companion + + + +

+ +

Companion component

+

This component defines behaviour for a mob to follow another mob and react to stuff it does.

+ + + + + + + + + + + + +

Vars

mob_masterThe mob this mob is following
on_hear_behavioursList of actions performed upon hearing certain things from mob_master

Procs

assign_mob_masterHandles assigning a new master mob
clear_noteDeletes the created commands note
goodbyeRemoves the current master_mob through a command
handle_attackbyHandles what the companion does when interacted with with an item
handle_mob_master_speechHandles what the slug does on hearing its owner
handle_repeat_speechDoes the words repeating action
handle_update_nameDoes the name update action
helpThe mob gives a note to the mob_master containing available commands
repeat_speechThe slugcat repeats the person's words
unassign_mob_masterThis needs to be after the AI component as that sets the intent to harm +Handles unassigning a master mob and cleaning up things related to that
update_nameThe slugcat listens for its new name
+

Var Details

mob_master + + + + +

+

The mob this mob is following

on_hear_behaviours + + + + +

+

List of actions performed upon hearing certain things from mob_master

Proc Details

assign_mob_master +

+

Handles assigning a new master mob

clear_note +

+

Deletes the created commands note

goodbye +

+

Removes the current master_mob through a command

handle_attackby +

+

Handles what the companion does when interacted with with an item

handle_mob_master_speech +

+

Handles what the slug does on hearing its owner

handle_repeat_speech +

+

Does the words repeating action

handle_update_name +

+

Does the name update action

help +

+

The mob gives a note to the mob_master containing available commands

repeat_speech +

+

The slugcat repeats the person's words

unassign_mob_master +

+

This needs to be after the AI component as that sets the intent to harm +Handles unassigning a master mob and cleaning up things related to that

update_name +

+

The slugcat listens for its new name

+ + + diff --git a/datum/component/connect_loc_behalf.html b/datum/component/connect_loc_behalf.html new file mode 100644 index 0000000000000..8b688239b53f1 --- /dev/null +++ b/datum/component/connect_loc_behalf.html @@ -0,0 +1,39 @@ + + + + + + + /datum/component/connect_loc_behalf - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

connect_loc_behalf + + + +

+ +

This component behaves similar to connect_loc, hooking into a signal on a tracked object's turf +It has the ability to react to that signal on behalf of a seperate listener however +This has great use, primarially for components, but it carries with it some overhead +So we do it seperately as it needs to hold state which is very likely to lead to bugs if it remains as an element.

+

Vars

connectionsAn assoc list of signal -> procpath to register to the loc this object is on.
+

Var Details

connections + + + + +

+

An assoc list of signal -> procpath to register to the loc this object is on.

+ + + diff --git a/datum/component/connect_mob_behalf.html b/datum/component/connect_mob_behalf.html new file mode 100644 index 0000000000000..9d63627fd378d --- /dev/null +++ b/datum/component/connect_mob_behalf.html @@ -0,0 +1,80 @@ + + + + + + + /datum/component/connect_mob_behalf - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

connect_mob_behalf + + + +

+ +

This component behaves similar to connect_loc_behalf, but working off clients and mobs instead of loc +To be clear, we hook into a signal on a tracked client's mob +We retain the ability to react to that signal on a seperate listener, which makes this quite powerful

+ + + + + + +

Vars

connectionsAn assoc list of signal -> procpath to register to the mob our client "owns"
trackedThe master client we're working with
tracked_mobThe mob we're currently tracking

Procs

handle_tracked_qdelDelete ourselves when our tracked client is deleted
on_logoutupdate_signals on tracked mob logout
unregister_signalsUnregister signals on tracked mob
update_signalsRe-register signals on tracked mob
+

Var Details

connections + + + + +

+

An assoc list of signal -> procpath to register to the mob our client "owns"

tracked + + + + +

+

The master client we're working with

tracked_mob + + + + +

+

The mob we're currently tracking

Proc Details

handle_tracked_qdel +

+

Delete ourselves when our tracked client is deleted

on_logout +

+

update_signals on tracked mob logout

unregister_signals +

+

Unregister signals on tracked mob

update_signals +

+

Re-register signals on tracked mob

+ + + diff --git a/datum/component/deployable_item.html b/datum/component/deployable_item.html new file mode 100644 index 0000000000000..162eb7ea1cc82 --- /dev/null +++ b/datum/component/deployable_item.html @@ -0,0 +1,113 @@ + + + + + + + /datum/component/deployable_item - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

deployable_item + + + +

+ + + + + + + + + + + + + +

Vars

deploy_check_callbackAny extra checks required when trying to deploy this item
deploy_timeTime it takes for the parent to be deployed.
deploy_typeTypepath that the item deploys into. Can be anything but an item so far. The preffered type is /obj/machinery/deployable since it was built for this.
restricted_deploymentHelps to determine if the item should be deployable in areas like the tad and alamo
undeploy_timeTime it takes for the parent to be undeployed.

Procs

deployWrapper for proc/finish_deploy
finish_deployHandles the conversion of item into machine. Source is the Item to be deployed, user is who is deploying. If user is null, a direction must be set.
on_item_moveQdels the deployed object if the internal item is somehow removed
register_for_deploy_signalRegister click signals to be ready for deploying
self_deployWrapper for objects deploying themselves
undeployWrapper for proc/finish_undeploy
unregister_signalsUnregister and stop waiting for click to deploy
+

Var Details

deploy_check_callback + + + + +

+

Any extra checks required when trying to deploy this item

deploy_time + + + + +

+

Time it takes for the parent to be deployed.

deploy_type + + + + +

+

Typepath that the item deploys into. Can be anything but an item so far. The preffered type is /obj/machinery/deployable since it was built for this.

restricted_deployment + + + + +

+

Helps to determine if the item should be deployable in areas like the tad and alamo

undeploy_time + + + + +

+

Time it takes for the parent to be undeployed.

Proc Details

deploy +

+

Wrapper for proc/finish_deploy

finish_deploy +

+

Handles the conversion of item into machine. Source is the Item to be deployed, user is who is deploying. If user is null, a direction must be set.

on_item_move +

+

Qdels the deployed object if the internal item is somehow removed

register_for_deploy_signal +

+

Register click signals to be ready for deploying

self_deploy +

+

Wrapper for objects deploying themselves

undeploy +

+

Wrapper for proc/finish_undeploy

unregister_signals +

+

Unregister and stop waiting for click to deploy

+ + + diff --git a/datum/component/grillable.html b/datum/component/grillable.html new file mode 100644 index 0000000000000..586bef4a3133b --- /dev/null +++ b/datum/component/grillable.html @@ -0,0 +1,106 @@ + + + + + + + /datum/component/grillable - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

grillable + + + +

+ + + + + + + + + + + + +

Vars

cook_resultResult atom type of grilling this object
current_cook_timeTime spent cooking so far
currently_grillingAre we currently grilling?
positive_resultIs this a positive grill result?
required_cook_timeAmount of time required to cook the food
use_large_steam_spriteDo we use the large steam sprite?

Procs

FinishGrillingRan when an object finished grilling
OnExamineRan when an object almost finishes grilling
OnGrillRan every time an item is grilled by something
OnMovedRan when an object moves from the grill
StartGrillingRan when an object starts grilling on something
+

Var Details

cook_result + + + + +

+

Result atom type of grilling this object

current_cook_time + + + + +

+

Time spent cooking so far

currently_grilling + + + + +

+

Are we currently grilling?

positive_result + + + + +

+

Is this a positive grill result?

required_cook_time + + + + +

+

Amount of time required to cook the food

use_large_steam_sprite + + + + +

+

Do we use the large steam sprite?

Proc Details

FinishGrilling +

+

Ran when an object finished grilling

OnExamine +

+

Ran when an object almost finishes grilling

OnGrill +

+

Ran every time an item is grilled by something

OnMoved +

+

Ran when an object moves from the grill

StartGrilling +

+

Ran when an object starts grilling on something

+ + + diff --git a/datum/component/harvester.html b/datum/component/harvester.html new file mode 100644 index 0000000000000..ce1dc0a980168 --- /dev/null +++ b/datum/component/harvester.html @@ -0,0 +1,141 @@ + + + + + + + /datum/component/harvester - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

harvester + + + +

+ + + + + + + + + + + + + + + + + +

Vars

loadable_reagentsList of loadable reagents
loaded_reagentLoaded reagent
loaded_reagentsAmount of reagents loaded into the blade
max_loadable_reagent_amountThe maximum amount that one chemical can be loaded
reagent_select_actionSelects the active reagent
selected_reagentreagent selected for actions

Procs

activate_bladeSignal handler calling activation of the harvester
activate_blade_asyncHandles behavior when activating the weapon
attackSignal handler calling when user attacks
attack_bicaridineHandles behavior when attacking a mob with bicaridine
attackbySignal handler calling when user is filling the harvester
attackby_asyncHandles behavior for when item is clicked on
examineAdds additional text for the component when examining the item
get_mechanics_infoAdds mechanics info to the weapon
upate_mob_overlayUpdates the mob sprite
update_loaded_colorUpdates the color of the overlay on top of the item sprite based on what chem is loaded in
+

Var Details

loadable_reagents + + + + +

+

List of loadable reagents

loaded_reagent + + + + +

+

Loaded reagent

loaded_reagents + + + + +

+

Amount of reagents loaded into the blade

max_loadable_reagent_amount + + + + +

+

The maximum amount that one chemical can be loaded

reagent_select_action + + + + +

+

Selects the active reagent

selected_reagent + + + + +

+

reagent selected for actions

Proc Details

activate_blade +

+

Signal handler calling activation of the harvester

activate_blade_async +

+

Handles behavior when activating the weapon

attack +

+

Signal handler calling when user attacks

attack_bicaridine +

+

Handles behavior when attacking a mob with bicaridine

attackby +

+

Signal handler calling when user is filling the harvester

attackby_async +

+

Handles behavior for when item is clicked on

examine +

+

Adds additional text for the component when examining the item

get_mechanics_info +

+

Adds mechanics info to the weapon

upate_mob_overlay +

+

Updates the mob sprite

update_loaded_color +

+

Updates the color of the overlay on top of the item sprite based on what chem is loaded in

+ + + diff --git a/datum/component/jump.html b/datum/component/jump.html new file mode 100644 index 0000000000000..3d9db697d3836 --- /dev/null +++ b/datum/component/jump.html @@ -0,0 +1,120 @@ + + + + + + + /datum/component/jump - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

jump + + + +

+ + + + + + + + + + + + + + +

Vars

jump_cooldowntime between jumps
jump_durationair time
jump_flagsSpecial jump behavior flags
jump_heightthe how high the jumper visually jumps
jump_soundthe sound of the jump
jump_start_timeWhen the jump started. Only relevant for charged jumps
jumper_allow_pass_flagsallow_pass_flags flags applied to the jumper on jump
stamina_costhow much stamina jumping takes

Procs

charge_jumpStarts charging the jump
do_jumpPerforms the jump
end_jumpEnds the jump
jump_throwJump throw bonuses
set_varsActually sets the jump vars
+

Var Details

jump_cooldown + + + + +

+

time between jumps

jump_duration + + + + +

+

air time

jump_flags + + + + +

+

Special jump behavior flags

jump_height + + + + +

+

the how high the jumper visually jumps

jump_sound + + + + +

+

the sound of the jump

jump_start_time + + + + +

+

When the jump started. Only relevant for charged jumps

jumper_allow_pass_flags + + + + +

+

allow_pass_flags flags applied to the jumper on jump

stamina_cost + + + + +

+

how much stamina jumping takes

Proc Details

charge_jump +

+

Starts charging the jump

do_jump +

+

Performs the jump

end_jump +

+

Ends the jump

jump_throw +

+

Jump throw bonuses

set_vars +

+

Actually sets the jump vars

+ + + diff --git a/datum/component/larva_queue.html b/datum/component/larva_queue.html new file mode 100644 index 0000000000000..9a45967837d28 --- /dev/null +++ b/datum/component/larva_queue.html @@ -0,0 +1,80 @@ + + + + + + + /datum/component/larva_queue - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

larva_queue + + + +

+ +

Handles clients getting the action to join the larva queue when they're eligible

+ + + + + + +

Vars

actionOur queue action
positionThe position we have in the larva queue (0 means you're not in it)
waiterThe client we track (instead of having to cast every time)

Procs

add_queue_actionAdds the larva queue action whenever the client is eligible to wait +Removes from queue if they were no longer eligible
get_queue_positionGets the current position in the larva queue
remove_queue_actionRemoves the larva queue action whenever the client leaves a mob
set_queue_positionSets the current position in the larva queue
+

Var Details

action + + + + +

+

Our queue action

position + + + + +

+

The position we have in the larva queue (0 means you're not in it)

waiter + + + + +

+

The client we track (instead of having to cast every time)

Proc Details

add_queue_action +

+

Adds the larva queue action whenever the client is eligible to wait +Removes from queue if they were no longer eligible

get_queue_position +

+

Gets the current position in the larva queue

remove_queue_action +

+

Removes the larva queue action whenever the client leaves a mob

set_queue_position +

+

Sets the current position in the larva queue

+ + + diff --git a/datum/component/mobile_power.html b/datum/component/mobile_power.html new file mode 100644 index 0000000000000..3666d904e9e27 --- /dev/null +++ b/datum/component/mobile_power.html @@ -0,0 +1,134 @@ + + + + + + + /datum/component/mobile_power - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

mobile_power + + + +

+ +

This component powers things in a range via signal intercepts instead of via area

+ + + + + + + + + + + + + + +

Vars

activeactive state
machines_to_powermachines this will power
power_usedpower used this tick
sizearea size

Procs

activateEnable power
clear_machinesRemove all machines in our machine list
deactivateDisable power
find_machines_in_rangePopulate the machine list, do this as little as possible, range() is expensive
glob_anchor_changedFind new machines anchored inside our area
obj_anchor_changedDeal with one of our machines being unanchored
parent_anchoredHandle parent being anchored/unanchored
parent_processParent ticks over, reset power usage
power_toggleParent active state toggled
poweredHandle powered() machine checks
use_powerHandle use_power() machine checks
+

Var Details

active + + + + +

+

active state

machines_to_power + + + + +

+

machines this will power

power_used + + + + +

+

power used this tick

size + + + + +

+

area size

Proc Details

activate +

+

Enable power

clear_machines +

+

Remove all machines in our machine list

deactivate +

+

Disable power

find_machines_in_range +

+

Populate the machine list, do this as little as possible, range() is expensive

glob_anchor_changed +

+

Find new machines anchored inside our area

obj_anchor_changed +

+

Deal with one of our machines being unanchored

parent_anchored +

+

Handle parent being anchored/unanchored

parent_process +

+

Parent ticks over, reset power usage

power_toggle +

+

Parent active state toggled

powered +

+

Handle powered() machine checks

use_power +

+

Handle use_power() machine checks

+ + + diff --git a/datum/component/overlay_lighting.html b/datum/component/overlay_lighting.html new file mode 100644 index 0000000000000..85f68b96d46c7 --- /dev/null +++ b/datum/component/overlay_lighting.html @@ -0,0 +1,237 @@ + + + + + + + /datum/component/overlay_lighting - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

overlay_lighting + + + +

+ +

Movable atom overlay-based lighting component.

+ + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

affected_turfsLazy list to track the turfs being affected by our light, to determine their visibility.
current_holderMovable atom currently holding the light. Parent might be a flashlight, for example, but that might be held by a mob or something else.
light_overlaysCache of the possible light overlays, according to size.
lum_powerHow much this light affects the dynamic_lumcount of turfs.
lumcount_rangeCeiling of range, integer without decimal entries.
overlay_lighting_flagsFor light sources that can be turned on and off.
rangeHow far the light reaches, float.
set_alphaTransparency value.
visible_maskOverlay effect to cut into the darkness and provide light.

Procs

add_dynamic_lumiAdds the luminosity and source for the afected movable atoms to keep track of their visibility.
check_holderUsed to determine the new valid current_holder from the parent's loc.
clean_old_turfsClears the affected_turfs lazylist, removing from its contents the effects of being near the light.
get_new_turfsPopulates the affected_turfs lazylist, adding to its contents the effects of being near the light.
make_luminosity_updateClears the old affected turfs and populates the new ones.
on_holder_movedCalled when current_holder changes loc.
on_holder_qdelCalled when the current_holder is qdeleted, to remove the light effect.
on_parent_movedCalled when parent changes loc.
on_toggleToggles the light on and off.
remove_dynamic_lumiRemoves the luminosity and source for the afected movable atoms to keep track of their visibility.
set_colorChanges the light's color, pretty straightforward.
set_holderCalled to change the value of current_holder.
set_lum_powerHere we append the behavior associated to changing lum_power.
set_powerChanges the intensity/brightness of the light by altering the visual object's alpha.
set_rangeChanges the range which the light reaches. 0 means no light, 6 is the maximum value.
turn_offToggles the light off.
turn_onToggles the light on.
+

Var Details

affected_turfs + + + + +

+

Lazy list to track the turfs being affected by our light, to determine their visibility.

current_holder + + + + +

+

Movable atom currently holding the light. Parent might be a flashlight, for example, but that might be held by a mob or something else.

light_overlays + + + + +

+

Cache of the possible light overlays, according to size.

lum_power + + + + +

+

How much this light affects the dynamic_lumcount of turfs.

lumcount_range + + + + +

+

Ceiling of range, integer without decimal entries.

overlay_lighting_flags + + + + +

+

For light sources that can be turned on and off.

range + + + + +

+

How far the light reaches, float.

set_alpha + + + + +

+

Transparency value.

visible_mask + + + + +

+

Overlay effect to cut into the darkness and provide light.

Proc Details

add_dynamic_lumi +

+

Adds the luminosity and source for the afected movable atoms to keep track of their visibility.

check_holder +

+

Used to determine the new valid current_holder from the parent's loc.

clean_old_turfs +

+

Clears the affected_turfs lazylist, removing from its contents the effects of being near the light.

get_new_turfs +

+

Populates the affected_turfs lazylist, adding to its contents the effects of being near the light.

make_luminosity_update +

+

Clears the old affected turfs and populates the new ones.

on_holder_moved +

+

Called when current_holder changes loc.

on_holder_qdel +

+

Called when the current_holder is qdeleted, to remove the light effect.

on_parent_moved +

+

Called when parent changes loc.

on_toggle +

+

Toggles the light on and off.

remove_dynamic_lumi +

+

Removes the luminosity and source for the afected movable atoms to keep track of their visibility.

set_color +

+

Changes the light's color, pretty straightforward.

set_holder +

+

Called to change the value of current_holder.

set_lum_power +

+

Here we append the behavior associated to changing lum_power.

set_power +

+

Changes the intensity/brightness of the light by altering the visual object's alpha.

set_range +

+

Changes the range which the light reaches. 0 means no light, 6 is the maximum value.

turn_off +

+

Toggles the light off.

turn_on +

+

Toggles the light on.

+ + + diff --git a/datum/component/personal_crafting.html b/datum/component/personal_crafting.html new file mode 100644 index 0000000000000..7bc88350b68fc --- /dev/null +++ b/datum/component/personal_crafting.html @@ -0,0 +1,45 @@ + + + + + + + /datum/component/personal_crafting - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

personal_crafting + + + +

+ + + +

Procs

check_contentsCheck that the contents of the recipe meet the requirements.
check_toolsReturns a boolean on whether the tool requirements of the input recipe are satisfied by the input source and surroundings.

Proc Details

check_contents +

+

Check that the contents of the recipe meet the requirements.

+

user: The /mob that initated the crafting. +R: The /datum/crafting_recipe being attempted. +contents: List of items to search for R's reqs.

check_tools +

+

Returns a boolean on whether the tool requirements of the input recipe are satisfied by the input source and surroundings.

+ + + diff --git a/datum/component/reequip.html b/datum/component/reequip.html new file mode 100644 index 0000000000000..8baff4a32cf7c --- /dev/null +++ b/datum/component/reequip.html @@ -0,0 +1,78 @@ + + + + + + + /datum/component/reequip - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

reequip + + + +

+ +

Component to automatically attempt to equip an item to a list of slots after it is dropped by a human

+ + + + + + +

Vars

activeAre we currently trying to catch the dropped parent?
reequip_delayTicks between the object being dropped and reequipped
slots_to_trylist of SLOT_* defines for equip_in_one_of_slots

Procs

begin_reequipJust holds a delay for the reequip attempt
cancel_throwBlocks any item with this component from being thrown
catch_wrapperWrapper to ensure signals only come from One Spot
try_to_catchActually equips parent if any slots in slots_to_try are available
+

Var Details

active + + + + +

+

Are we currently trying to catch the dropped parent?

reequip_delay + + + + +

+

Ticks between the object being dropped and reequipped

slots_to_try + + + + +

+

list of SLOT_* defines for equip_in_one_of_slots

Proc Details

begin_reequip +

+

Just holds a delay for the reequip attempt

cancel_throw +

+

Blocks any item with this component from being thrown

catch_wrapper +

+

Wrapper to ensure signals only come from One Spot

try_to_catch +

+

Actually equips parent if any slots in slots_to_try are available

+ + + diff --git a/datum/component/remote_control.html b/datum/component/remote_control.html new file mode 100644 index 0000000000000..8da2ed7258e1e --- /dev/null +++ b/datum/component/remote_control.html @@ -0,0 +1,162 @@ + + + + + + + /datum/component/remote_control - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

remote_control + + + +

+ + + + + + + + + + + + + + + + + + + + +

Vars

controlledMovable atom being controlled by the component
ctrl_click_procCallback to be run when user left clicks somewhere while remote controlling
is_controllingwhether the component is currently active or not
left_click_procCallback to be run when user left clicks somewhere while remote controlling
right_click_procCallback to be run when user right clicks somewhere while remote controlling
userUser of the component

Procs

disable_controlsI want controls to be disabled before actually qdeling due to some race conditions of my own creation.
invokeInvokes the callback for when the controller clicks
on_control_terminateCalled when Controlling should not be resumed and deleted the component
on_hearCalled when the controlled atom hear a sound
on_relayed_speechCalled when the remote controller wants to speak through the controlled atom
remote_control_offturns remote control off
remote_control_onTurns the remote control on
remote_interactcalled by control click, allow to interact with the target
toggle_remote_controlSelf explanatory, toggles remote control
update_left_clickprocUpdates the clickproc to a passed type of turret
update_right_clickprocUpdates the clickproc to a passed type of ability
uv_handle_clickcalled when a shooty turret attempts to shoot by click
uv_handle_click_explosiveCalled when a explosive vehicle clicks and tries to explde itself
+

Var Details

controlled + + + + +

+

Movable atom being controlled by the component

ctrl_click_proc + + + + +

+

Callback to be run when user left clicks somewhere while remote controlling

is_controlling + + + + +

+

whether the component is currently active or not

left_click_proc + + + + +

+

Callback to be run when user left clicks somewhere while remote controlling

right_click_proc + + + + +

+

Callback to be run when user right clicks somewhere while remote controlling

user + + + + +

+

User of the component

Proc Details

disable_controls +

+

I want controls to be disabled before actually qdeling due to some race conditions of my own creation.

invoke +

+

Invokes the callback for when the controller clicks

on_control_terminate +

+

Called when Controlling should not be resumed and deleted the component

on_hear +

+

Called when the controlled atom hear a sound

on_relayed_speech +

+

Called when the remote controller wants to speak through the controlled atom

remote_control_off +

+

turns remote control off

remote_control_on +

+

Turns the remote control on

remote_interact +

+

called by control click, allow to interact with the target

toggle_remote_control +

+

Self explanatory, toggles remote control

update_left_clickproc +

+

Updates the clickproc to a passed type of turret

update_right_clickproc +

+

Updates the clickproc to a passed type of ability

uv_handle_click +

+

called when a shooty turret attempts to shoot by click

uv_handle_click_explosive +

+

Called when a explosive vehicle clicks and tries to explde itself

+ + + diff --git a/datum/component/riding.html b/datum/component/riding.html new file mode 100644 index 0000000000000..6416af792d8ee --- /dev/null +++ b/datum/component/riding.html @@ -0,0 +1,209 @@ + + + + + + + /datum/component/riding - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

riding + + + +

+ +

This is the riding component, which is applied to a movable atom by the ridable element when a mob is successfully buckled to said movable.

+

This component lives for as long as at least one mob is buckled to the parent. Once all mobs are unbuckled, the component is deleted, until another mob is buckled in +and we make a new riding component, so on and so forth until the sun explodes.

+ + + + + + + + + + + + + + + + + + + + + + + +

Vars

allowed_turf_typecacheallow typecache for only certain turfs, forbid to allow all but those. allow only certain turfs will take precedence.
directional_vehicle_layers["[DIRECTION]"] = layer. Don't set it for a direction for default, set a direction to null for no change.
directional_vehicle_offsetssame as above but instead of layer you have a list(px, py)
forbid_turf_typecacheallow typecache for only certain turfs, forbid to allow all but those. allow only certain turfs will take precedence.
keytypeIf the driver needs a certain item in hand (or inserted, for vehicles) to drive this. For vehicles, this must be duplicated on the actual vehicle object in their +/obj/vehicle/var/key_type variable because the vehicle objects still have a few special checks/functions of their own I'm not porting over to the riding component +quite yet. Make sure if you define it on the vehicle, you define it here too.
last_move_diagonalwhether our last owners move was diagonally done to update move speeds, bool
message_cooldownFor telling someone they can't drive
override_allow_spacemoveWe don't need roads where we're going if this is TRUE, allow normal movement in space tiles
ride_check_flagsRide check flags defined for the specific riding component types, so we know if we need arms, legs, or whatever. +Takes additional flags from the ridable element and the buckle proc (buckle_mob_flags) for riding cyborgs/humans in case we need to reserve arms
riding_offsetsposition_of_user = list(dir = list(px, py)), or RIDING_OFFSET_ALL for a generic one.
vehicle_move_cooldownFor telling someone they can't drive
vehicle_move_delaytick delay between movements, lower = faster, higher = slower

Procs

args_to_flagsconverts buckle args to their flags. We use this proc since I dont want to add a buckle refactor to this riding refactor port
calculate_additional_delayCalculates the additional delay to moving
driver_moveEvery time the driver tries to move, this is called to see if they can actually drive and move the vehicle (via relaymove)
handle_specialsThis proc handles all of the proc calls to things like set_vehicle_dir_layer() that a type of riding datum needs to call on creation
handle_vehicle_layerSome ridable atoms may want to only show on top of the rider in certain directions, like wheelchairs
keycheckThis proc is used to see if we have the appropriate key to drive this atom, if such a key is needed. Returns FALSE if we don't have what we need to drive.
ride_checkCheck to see if we have all of the necessary bodyparts and not-falling-over statuses we need to stay onboard
unequip_buckle_inhandscurrently replicated from ridable because we need this behavior here too, see if we can deal with that
vehicle_bumpSo we can check all occupants when we bump a door to see if anyone has access
vehicle_mob_unbuckleThis proc is called when a rider unbuckles, whether they chose to or not. If there's no more riders, this will be the riding component's death knell.
vehicle_movedThis is called after the ridden atom is successfully moved and is used to handle icon stuff
vehicle_turnedTurning is like moving
+

Var Details

allowed_turf_typecache + + + + +

+

allow typecache for only certain turfs, forbid to allow all but those. allow only certain turfs will take precedence.

directional_vehicle_layers + + + + +

+

["[DIRECTION]"] = layer. Don't set it for a direction for default, set a direction to null for no change.

directional_vehicle_offsets + + + + +

+

same as above but instead of layer you have a list(px, py)

forbid_turf_typecache + + + + +

+

allow typecache for only certain turfs, forbid to allow all but those. allow only certain turfs will take precedence.

keytype + + + + +

+

If the driver needs a certain item in hand (or inserted, for vehicles) to drive this. For vehicles, this must be duplicated on the actual vehicle object in their +/obj/vehicle/var/key_type variable because the vehicle objects still have a few special checks/functions of their own I'm not porting over to the riding component +quite yet. Make sure if you define it on the vehicle, you define it here too.

last_move_diagonal + + + + +

+

whether our last owners move was diagonally done to update move speeds, bool

message_cooldown + + + + +

+

For telling someone they can't drive

override_allow_spacemove + + + + +

+

We don't need roads where we're going if this is TRUE, allow normal movement in space tiles

ride_check_flags + + + + +

+

Ride check flags defined for the specific riding component types, so we know if we need arms, legs, or whatever. +Takes additional flags from the ridable element and the buckle proc (buckle_mob_flags) for riding cyborgs/humans in case we need to reserve arms

riding_offsets + + + + +

+

position_of_user = list(dir = list(px, py)), or RIDING_OFFSET_ALL for a generic one.

vehicle_move_cooldown + + + + +

+

For telling someone they can't drive

vehicle_move_delay + + + + +

+

tick delay between movements, lower = faster, higher = slower

Proc Details

args_to_flags +

+

converts buckle args to their flags. We use this proc since I dont want to add a buckle refactor to this riding refactor port

calculate_additional_delay +

+

Calculates the additional delay to moving

driver_move +

+

Every time the driver tries to move, this is called to see if they can actually drive and move the vehicle (via relaymove)

handle_specials +

+

This proc handles all of the proc calls to things like set_vehicle_dir_layer() that a type of riding datum needs to call on creation

+

The original riding component had these procs all called from the ridden object itself through the use of GetComponent() and LoadComponent() +This was obviously problematic for componentization, but while lots of the variables being set were able to be moved to component variables, +the proc calls couldn't be. Thus, anything that has to do an initial proc call should be handled here.

handle_vehicle_layer +

+

Some ridable atoms may want to only show on top of the rider in certain directions, like wheelchairs

keycheck +

+

This proc is used to see if we have the appropriate key to drive this atom, if such a key is needed. Returns FALSE if we don't have what we need to drive.

+

Still needs to be neatened up and spruced up with proper OOP, as a result of vehicles having their own key handling from other ridable atoms

ride_check +

+

Check to see if we have all of the necessary bodyparts and not-falling-over statuses we need to stay onboard

unequip_buckle_inhands +

+

currently replicated from ridable because we need this behavior here too, see if we can deal with that

vehicle_bump +

+

So we can check all occupants when we bump a door to see if anyone has access

vehicle_mob_unbuckle +

+

This proc is called when a rider unbuckles, whether they chose to or not. If there's no more riders, this will be the riding component's death knell.

vehicle_moved +

+

This is called after the ridden atom is successfully moved and is used to handle icon stuff

vehicle_turned +

+

Turning is like moving

+ + + diff --git a/datum/component/riding/creature.html b/datum/component/riding/creature.html new file mode 100644 index 0000000000000..755fd6866e69b --- /dev/null +++ b/datum/component/riding/creature.html @@ -0,0 +1,50 @@ + + + + + + + /datum/component/riding/creature - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

creature + + + +

+ + + + +

Vars

can_be_drivenIf TRUE, this creature's movements can be controlled by the rider while mounted (as opposed to riding cyborgs and humans, which is passive)

Procs

force_dismountYeets the rider off, used for animals and cyborgs, redefined for humans who shove their piggyback rider off
log_ridingCreatures need to be logged when being mounted
+

Var Details

can_be_driven + + + + +

+

If TRUE, this creature's movements can be controlled by the rider while mounted (as opposed to riding cyborgs and humans, which is passive)

Proc Details

force_dismount +

+

Yeets the rider off, used for animals and cyborgs, redefined for humans who shove their piggyback rider off

log_riding +

+

Creatures need to be logged when being mounted

+ + + diff --git a/datum/component/riding/creature/crusher.html b/datum/component/riding/creature/crusher.html new file mode 100644 index 0000000000000..876a4153c39e3 --- /dev/null +++ b/datum/component/riding/creature/crusher.html @@ -0,0 +1,35 @@ + + + + + + + /datum/component/riding/creature/crusher - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

crusher + + + +

+ + +

Procs

check_carrier_fall_overIf the crusher gets knocked over, force the riding rounys off and see if someone got hurt

Proc Details

check_carrier_fall_over +

+

If the crusher gets knocked over, force the riding rounys off and see if someone got hurt

+ + + diff --git a/datum/component/riding/creature/crusher/runner.html b/datum/component/riding/creature/crusher/runner.html new file mode 100644 index 0000000000000..9737c69969126 --- /dev/null +++ b/datum/component/riding/creature/crusher/runner.html @@ -0,0 +1,35 @@ + + + + + + + /datum/component/riding/creature/crusher/runner - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

runner + + + +

+ + +

Procs

check_carrier_fall_overIf the rouny gets knocked over, toss the riding human off aswell

Proc Details

check_carrier_fall_over +

+

If the rouny gets knocked over, toss the riding human off aswell

+ + + diff --git a/datum/component/riding/creature/human.html b/datum/component/riding/creature/human.html new file mode 100644 index 0000000000000..6ebf7fd4cbf49 --- /dev/null +++ b/datum/component/riding/creature/human.html @@ -0,0 +1,35 @@ + + + + + + + /datum/component/riding/creature/human - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

human + + + +

+ + +

Procs

check_carrier_fall_overIf the carrier gets knocked over, force the rider(s) off and see if someone got hurt

Proc Details

check_carrier_fall_over +

+

If the carrier gets knocked over, force the rider(s) off and see if someone got hurt

+ + + diff --git a/datum/component/riding/creature/widow.html b/datum/component/riding/creature/widow.html new file mode 100644 index 0000000000000..142f88fc8789b --- /dev/null +++ b/datum/component/riding/creature/widow.html @@ -0,0 +1,35 @@ + + + + + + + /datum/component/riding/creature/widow - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

widow + + + +

+ + +

Procs

check_widow_attackIf the widow gets knocked over, force the riding rounys off and see if someone got hurt

Proc Details

check_widow_attack +

+

If the widow gets knocked over, force the riding rounys off and see if someone got hurt

+ + + diff --git a/datum/component/riding/vehicle.html b/datum/component/riding/vehicle.html new file mode 100644 index 0000000000000..7a55c9f46fad2 --- /dev/null +++ b/datum/component/riding/vehicle.html @@ -0,0 +1,35 @@ + + + + + + + /datum/component/riding/vehicle - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

vehicle + + + +

+ + +

Procs

handle_rideThis handles the actual movement for vehicles once /datum/component/riding/vehicle/proc/driver_move has given us the green light

Proc Details

handle_ride +

+

This handles the actual movement for vehicles once /datum/component/riding/vehicle/proc/driver_move has given us the green light

+ + + diff --git a/datum/component/seethrough_mob.html b/datum/component/seethrough_mob.html new file mode 100644 index 0000000000000..0600cbf996b22 --- /dev/null +++ b/datum/component/seethrough_mob.html @@ -0,0 +1,113 @@ + + + + + + + /datum/component/seethrough_mob - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

seethrough_mob + + + +

+ +

A component that lets you turn your character transparent in order to see and click through yourself.

+ + + + + + + + + + + +

Vars

animation_timeHow long our faze in/out takes
clickthroughDoes this object let clicks from players its transparent to pass through it
initial_render_target_valueThe mob's original render_target value
is_activeIs the seethrough effect currently active
personal_uidThis component's personal uid
render_source_atomThe atom that enables our dark magic
target_alphaWhich alpha do we animate towards?
trickery_imageThe fake version of ourselves

Procs

clear_imageRemove the image and the trick atom
on_client_disconnectEffect is disabled when they log out because client gets deleted
trick_mobSet up everything we need to trick the client and keep it looking normal for everyone else
untrick_mobRemove the screen object and make us appear solid to ourselves again
+

Var Details

animation_time + + + + +

+

How long our faze in/out takes

clickthrough + + + + +

+

Does this object let clicks from players its transparent to pass through it

initial_render_target_value + + + + +

+

The mob's original render_target value

is_active + + + + +

+

Is the seethrough effect currently active

personal_uid + + + + +

+

This component's personal uid

render_source_atom + + + + +

+

The atom that enables our dark magic

target_alpha + + + + +

+

Which alpha do we animate towards?

trickery_image + + + + +

+

The fake version of ourselves

Proc Details

clear_image +

+

Remove the image and the trick atom

on_client_disconnect +

+

Effect is disabled when they log out because client gets deleted

trick_mob +

+

Set up everything we need to trick the client and keep it looking normal for everyone else

untrick_mob +

+

Remove the screen object and make us appear solid to ourselves again

+ + + diff --git a/datum/component/shield.html b/datum/component/shield.html new file mode 100644 index 0000000000000..acc19c7119158 --- /dev/null +++ b/datum/component/shield.html @@ -0,0 +1,176 @@ + + + + + + + /datum/component/shield - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

shield + + + +

+ + + + + + + + + + + + + + + + + + + + + + +

Vars

activeIs the shield currently active
affectedShielded mob
coverPercentage damage The shield intercepts.
intercept_damage_cbCallback to block damage entirely
layerShield priority layer
shield_flagsBehavior flags
slot_flagsWhat slots the parent item provides its shield effects in
transfer_damage_cbCallback to transfer damage to the shield

Procs

activate_with_userActivates shield effects
deactivate_with_userDeactivates shield effects
get_shield_status_modifierCalculates a modifier to the shield coverage based on user or parent conditions
item_intercept_attackDamage intercept calculation
item_pure_block_chanceBlock chance calculation
on_attack_cb_shields_callSignal handler for incoming damage, directs to the right callback proc
setup_callbacksSets up the correct callbacks based on flagged behavior
shield_affect_userToggles shield effects for the user
shield_detach_from_userDetaches shield from the user
shield_droppedHandles unequipping the shield
shield_equippedHandles equipping the shield
toggle_shieldToggles the mitigation on or off when already equipped
transfer_damage_to_parentApplies damage to parent item
+

Var Details

active + + + + +

+

Is the shield currently active

affected + + + + +

+

Shielded mob

cover + + + + +

+

Percentage damage The shield intercepts.

intercept_damage_cb + + + + +

+

Callback to block damage entirely

layer + + + + +

+

Shield priority layer

shield_flags + + + + +

+

Behavior flags

slot_flags + + + + +

+

What slots the parent item provides its shield effects in

transfer_damage_cb + + + + +

+

Callback to transfer damage to the shield

Proc Details

activate_with_user +

+

Activates shield effects

deactivate_with_user +

+

Deactivates shield effects

get_shield_status_modifier +

+

Calculates a modifier to the shield coverage based on user or parent conditions

item_intercept_attack +

+

Damage intercept calculation

item_pure_block_chance +

+

Block chance calculation

on_attack_cb_shields_call +

+

Signal handler for incoming damage, directs to the right callback proc

setup_callbacks +

+

Sets up the correct callbacks based on flagged behavior

shield_affect_user +

+

Toggles shield effects for the user

shield_detach_from_user +

+

Detaches shield from the user

shield_dropped +

+

Handles unequipping the shield

shield_equipped +

+

Handles equipping the shield

toggle_shield +

+

Toggles the mitigation on or off when already equipped

transfer_damage_to_parent +

+

Applies damage to parent item

+ + + diff --git a/datum/component/shield/overhealth.html b/datum/component/shield/overhealth.html new file mode 100644 index 0000000000000..e72df39194c2e --- /dev/null +++ b/datum/component/shield/overhealth.html @@ -0,0 +1,49 @@ + + + + + + + /datum/component/shield/overhealth - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

overhealth + + + +

+ + + + +

Procs

damage_overhealthApplies damage to overshield
overhealth_intercept_attackChecks if damage should be passed to overshield
transfer_damage_to_overhealthCalculates actual damage to the shield, returning total amount that penetrates

Proc Details

damage_overhealth +

+

Applies damage to overshield

overhealth_intercept_attack +

+

Checks if damage should be passed to overshield

transfer_damage_to_overhealth +

+

Calculates actual damage to the shield, returning total amount that penetrates

+ + + diff --git a/datum/component/slippery.html b/datum/component/slippery.html new file mode 100644 index 0000000000000..91288301e0382 --- /dev/null +++ b/datum/component/slippery.html @@ -0,0 +1,106 @@ + + + + + + + /datum/component/slippery - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

slippery + + + +

+ +

Slippery component, for making anything slippery. Of course.

+ + + + + + + + + + +

Vars

callbackA proc callback to call on slip.
default_connectionsWhat we give to connect_loc by default, makes slippable mobs moving over us slip
holderIf parent is an item, this is the person currently holding/wearing the parent (or the parent if no one is holding it)
holder_connect_loc_behalfThe connect_loc_behalf component for the holder_connections list.
holder_connectionsWhat we give to connect_loc if we're an item and get equipped by a mob. makes slippable mobs moving over our holder slip
override_noslipDoes this override noslip shoes?
paralyze_timeHow long we're knocked down/paralyzed for
run_onlyDoes this care if we're running or not?
slide_stepsHow many steps we slide upon slip
slot_whitelistWhitelist of item slots the parent can be equipped in that make the holder slippery. If null or empty, it will always make the holder slippery.
stun_timeHow long the slip keeps you stunned.
+

Var Details

callback + + + + +

+

A proc callback to call on slip.

default_connections + + + + +

+

What we give to connect_loc by default, makes slippable mobs moving over us slip

holder + + + + +

+

If parent is an item, this is the person currently holding/wearing the parent (or the parent if no one is holding it)

holder_connect_loc_behalf + + + + +

+

The connect_loc_behalf component for the holder_connections list.

holder_connections + + + + +

+

What we give to connect_loc if we're an item and get equipped by a mob. makes slippable mobs moving over our holder slip

override_noslip + + + + +

+

Does this override noslip shoes?

paralyze_time + + + + +

+

How long we're knocked down/paralyzed for

run_only + + + + +

+

Does this care if we're running or not?

slide_steps + + + + +

+

How many steps we slide upon slip

slot_whitelist + + + + +

+

Whitelist of item slots the parent can be equipped in that make the holder slippery. If null or empty, it will always make the holder slippery.

stun_time + + + + +

+

How long the slip keeps you stunned.

+ + + diff --git a/datum/component/squeak.html b/datum/component/squeak.html new file mode 100644 index 0000000000000..fe70672a65973 --- /dev/null +++ b/datum/component/squeak.html @@ -0,0 +1,36 @@ + + + + + + + /datum/component/squeak - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

squeak + + + +

+ + +

Vars

item_connectionswhat we set connect_loc to if parent is a movable
+

Var Details

item_connections + + + + +

+

what we set connect_loc to if parent is a movable

+ + + diff --git a/datum/component/stamina_behavior.html b/datum/component/stamina_behavior.html new file mode 100644 index 0000000000000..a2045c833ccbf --- /dev/null +++ b/datum/component/stamina_behavior.html @@ -0,0 +1,43 @@ + + + + + + + /datum/component/stamina_behavior - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

stamina_behavior + + + +

+ + + +

Vars

drain_modifiermultiplier on stamina cost

Procs

on_change_zchanges the drain modifier if gravity changes
+

Var Details

drain_modifier + + + + +

+

multiplier on stamina cost

Proc Details

on_change_z +

+

changes the drain modifier if gravity changes

+ + + diff --git a/datum/component/stun_mitigation.html b/datum/component/stun_mitigation.html new file mode 100644 index 0000000000000..55a77dc022a57 --- /dev/null +++ b/datum/component/stun_mitigation.html @@ -0,0 +1,113 @@ + + + + + + + /datum/component/stun_mitigation - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

stun_mitigation + + + +

+ + + + + + + + + + + + + +

Vars

activeWhether the component is currently active
coverPercentage chance to mitigate a hardstun
shield_flagsAny special behavior flags
slot_flagsThe slots in which the parent can be in for the component to apply

Procs

activate_with_userActually activates the mitigation effect
deactivate_with_userActually deactivates the mitigation effect
on_attack_stun_mitigationattempts to convert incoming hard stuns to soft stuns
shield_affect_userHandles the shield setting up for a user, and activating if applicable
shield_detach_from_userHandles removing the mitigation from a user
shield_droppedSignal handler for dropping the shield
shield_equippedSignal handler for equipping the shield to a slot
toggle_shieldToggles the mitigation on or off when already equipped
+

Var Details

active + + + + +

+

Whether the component is currently active

cover + + + + +

+

Percentage chance to mitigate a hardstun

shield_flags + + + + +

+

Any special behavior flags

slot_flags + + + + +

+

The slots in which the parent can be in for the component to apply

Proc Details

activate_with_user +

+

Actually activates the mitigation effect

deactivate_with_user +

+

Actually deactivates the mitigation effect

on_attack_stun_mitigation +

+

attempts to convert incoming hard stuns to soft stuns

shield_affect_user +

+

Handles the shield setting up for a user, and activating if applicable

shield_detach_from_user +

+

Handles removing the mitigation from a user

shield_dropped +

+

Signal handler for dropping the shield

shield_equipped +

+

Signal handler for equipping the shield to a slot

toggle_shield +

+

Toggles the mitigation on or off when already equipped

+ + + diff --git a/datum/component/submerge_modifier.html b/datum/component/submerge_modifier.html new file mode 100644 index 0000000000000..1c5c6a28b938d --- /dev/null +++ b/datum/component/submerge_modifier.html @@ -0,0 +1,64 @@ + + + + + + + /datum/component/submerge_modifier - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

submerge_modifier + + + +

+ + + + + + +

Vars

submerge_heightHeight in pixels a target is submerged by the parent of this component

Procs

add_connectionsAdds the submerge element to a turf and registers for the submerge signal
get_submerge_height_modHow high up an AM's is covered by an alpha mask when submerged. This amount is additive
move_submerge_elementRemoves and adds connections on move
remove_connectionsRemoves the submerge element from a turf if it can no longer submerge things
+

Var Details

submerge_height + + + + +

+

Height in pixels a target is submerged by the parent of this component

Proc Details

add_connections +

+

Adds the submerge element to a turf and registers for the submerge signal

get_submerge_height_mod +

+

How high up an AM's is covered by an alpha mask when submerged. This amount is additive

move_submerge_element +

+

Removes and adds connections on move

remove_connections +

+

Removes the submerge element from a turf if it can no longer submerge things

+ + + diff --git a/datum/component/suit_autodoc.html b/datum/component/suit_autodoc.html new file mode 100644 index 0000000000000..1721e10b9e5f2 --- /dev/null +++ b/datum/component/suit_autodoc.html @@ -0,0 +1,213 @@ + + + + + + + /datum/component/suit_autodoc - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

suit_autodoc + + + +

+ +

Autodoc component

+

The autodoc is an item component that can be eqiupped to inject the wearer with chemicals.

+

Parameters

+ + + + + + + + + + + + + + + + + + + + + + +

Procs

DestroyCleans up any actions, and internal items used by the autodoc component
InitializeSetup the default cooldown, chemicals and supported limbs
RegisterWithParentRegisters signals to enable/disable the autodoc when equipped/dropper/etc
TopicHandles the topic interactions with the suit when updating configurations
UnregisterFromParentRemove signals
action_toggleToggle the suit
can_interactIf the user is able to interact with the suit
configureProc to show the suit configuration page
damage_takenProc for the damange taken signal, calls treat_injuries
disableDisables to stop processing and calls to the signals from the user.
droppedDisables the autodoc and removes actions when dropped
enableEnable processing and calls out to register signals from the user.
equippedEnable the autodoc and give appropriate actions
examineHook into the examine of the parent to show additional information about the suit_autodoc
give_actionsAdd the actions to the user
inject_chemsHandles actually injecting specific checmicals for specific damage types.
interactShows the suit configuration
nextuse_readyPlays a sound and message to the user informing the user chemicals are ready again
processProcess proc called periodically, calls treat_injuries
remove_actionsRemove the actions from the user
scan_userProc to handle the internal analyzer scanning the user
treat_injuriesTrys to inject each chmical into the user.

Proc Details

Destroy +

+

Cleans up any actions, and internal items used by the autodoc component

Initialize +

+

Setup the default cooldown, chemicals and supported limbs

RegisterWithParent +

+

Registers signals to enable/disable the autodoc when equipped/dropper/etc

Topic +

+

Handles the topic interactions with the suit when updating configurations

UnregisterFromParent +

+

Remove signals

action_toggle +

+

Toggle the suit

+

This will enable or disable the suit

can_interact +

+

If the user is able to interact with the suit

+

Always TRUE

configure +

+

Proc to show the suit configuration page

damage_taken +

+

Proc for the damange taken signal, calls treat_injuries

disable +

+

Disables to stop processing and calls to the signals from the user.

+

Additionally removes limb support if applicable

dropped +

+

Disables the autodoc and removes actions when dropped

enable +

+

Enable processing and calls out to register signals from the user.

+

Additionally adds limb support if applicable

equipped +

+

Enable the autodoc and give appropriate actions

examine +

+

Hook into the examine of the parent to show additional information about the suit_autodoc

give_actions +

+

Add the actions to the user

+

Actions include

+

inject_chems +

+

Handles actually injecting specific checmicals for specific damage types.

+

This proc checks the damage is over the appropraite threshold, the cooldowns and if succesful injects +chemicals into the user and sets the cooldown again

interact +

+

Shows the suit configuration

nextuse_ready +

+

Plays a sound and message to the user informing the user chemicals are ready again

process +

+

Process proc called periodically, calls treat_injuries

remove_actions +

+

Remove the actions from the user

+

Actions include

+

scan_user +

+

Proc to handle the internal analyzer scanning the user

treat_injuries +

+

Trys to inject each chmical into the user.

+

Calls each proc and then reports the results if any to the user. +additionally trys to support any limbs if required

+ + + diff --git a/datum/component/tac_reload_storage.html b/datum/component/tac_reload_storage.html new file mode 100644 index 0000000000000..0910ef5af467e --- /dev/null +++ b/datum/component/tac_reload_storage.html @@ -0,0 +1,101 @@ + + + + + + + /datum/component/tac_reload_storage - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

tac_reload_storage + + + +

+ + + + + + + +

Vars

reloading_storageThe storage item that we are attempting to use to tactical reload on. +Use this over checking the item directly, for edge cases such as indirect storage (e.g: storage armor module).

Procs

do_tac_reloadPerforms the tactical reload
on_examineHook into the examine of the parent to show the player that they can tac reload from this
on_parent_attackby_alternateWhen attacked by a gun, will attempt to tactical reload it from our set reloading storage. +Args:
on_suit_attachCalled when parent (a storage armor module) is attached to any suit +Sent by attachment_handler component. +Args: +source - The storage armor module that's being attached. +new_shot - The clothing that the module is being attached to. +attacher - The person attaching the armor module to the suit.
on_suit_detachCalled when parent (a storage armor module) is detached from any suit +Sent by attachment_handler component. +Args: +source - The storage armor module that's being detached. +old_host - The clothing that the module is being detached from. +attacher - The person detaching the armor module from the suit.
+

Var Details

reloading_storage + + + + +

+

The storage item that we are attempting to use to tactical reload on. +Use this over checking the item directly, for edge cases such as indirect storage (e.g: storage armor module).

Proc Details

do_tac_reload +

+

Performs the tactical reload

on_examine +

+

Hook into the examine of the parent to show the player that they can tac reload from this

on_parent_attackby_alternate +

+

When attacked by a gun, will attempt to tactical reload it from our set reloading storage. +Args:

+

on_suit_attach +

+

Called when parent (a storage armor module) is attached to any suit +Sent by attachment_handler component. +Args: +source - The storage armor module that's being attached. +new_shot - The clothing that the module is being attached to. +attacher - The person attaching the armor module to the suit.

on_suit_detach +

+

Called when parent (a storage armor module) is detached from any suit +Sent by attachment_handler component. +Args: +source - The storage armor module that's being detached. +old_host - The clothing that the module is being detached from. +attacher - The person detaching the armor module from the suit.

+ + + diff --git a/datum/component/takes_reagent_appearance.html b/datum/component/takes_reagent_appearance.html new file mode 100644 index 0000000000000..f35c8ea05a1dd --- /dev/null +++ b/datum/component/takes_reagent_appearance.html @@ -0,0 +1,128 @@ + + + + + + + /datum/component/takes_reagent_appearance - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

takes_reagent_appearance + + + +

+ +"Takes reagent appearance" Component +

Bit of a mouthful, but when applied to an item that can hold reagents (primarily reagent containers), +said item will take on an appearance based on the majority share reagent inside

+

This is more than just "changing the color a bit" or "applies an overlay", this is +an entire icon / icon state / name change, making it look like a different item entirely

+

This is done by cross-referencing the glass style datums. See /datum/glass_style for more information about that.

+

An example usage is bartender mixed drinks - each reagent gets its own fancy drink sprite

+ + + + + + + + + +

Vars

base_container_typeThe type to compare against the glass_style's required_container_type. The parent's type by default.
icon_pre_changeIcon file when attached to the item
icon_state_pre_changeIcon state when attached to the item
on_icon_changedOptional callback invoked when when the item's appearance is changed
on_icon_resetOptional callback invoked when our item has its appearance reverted to default

Procs

get_main_reagent_styleGets the correspinding style based on the parent's state and reagents within
on_update_appearanceSignal proc for COMSIG_ATOM_UPDATE_APPEARANCE +We hook into the update appearance proc to perform our own update based on our glass style +Preventing any further updates down the line on successes
update_descPerforms the description update.
update_iconPerforms the icon update.
update_namePerforms the name update.
+

Var Details

base_container_type + + + + +

+

The type to compare against the glass_style's required_container_type. The parent's type by default.

icon_pre_change + + + + +

+

Icon file when attached to the item

icon_state_pre_change + + + + +

+

Icon state when attached to the item

on_icon_changed + + + + +

+

Optional callback invoked when when the item's appearance is changed

on_icon_reset + + + + +

+

Optional callback invoked when our item has its appearance reverted to default

Proc Details

get_main_reagent_style +

+

Gets the correspinding style based on the parent's state and reagents within

+

on_update_appearance +

+

Signal proc for COMSIG_ATOM_UPDATE_APPEARANCE +We hook into the update appearance proc to perform our own update based on our glass style +Preventing any further updates down the line on successes

update_desc +

+

Performs the description update.

+

update_icon +

+

Performs the icon update.

+

update_name +

+

Performs the name update.

+
+ + + diff --git a/datum/component/throw_parry.html b/datum/component/throw_parry.html new file mode 100644 index 0000000000000..23e5f9f4a8a97 --- /dev/null +++ b/datum/component/throw_parry.html @@ -0,0 +1,64 @@ + + + + + + + /datum/component/throw_parry - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

throw_parry + + + +

+ +

This component allows a mob/living to parry thrown objects back towards its source provided certain conditions are met. +COMSIG_PARRY_TRIGGER together with a duration enables parrying for this time frame, durations do not stack and only the current latest ending one is used. +A thrown item being parried will prevent the throw from ending and returns said thrown object back towards its source with half its speed.

+ + + +

Vars

living_parentThe mob/living this component interacts with, namely reacting to attempted throw impacts on it.
parry_untilUntil which world.time the parry is active. Parries can only trigger if this is larger than the current world.time.

Procs

enable_parryEnables parrying for the passed duration. Multiple sources of enabling will not be directly summed up, instead using the latest ending one.
parry_checkThis is triggered by an object attempting to impact into something with the parry component attached and checks whether the current conditions are valid to trigger a parry success. +The mob has to be conscious aswell as not resting and the parry duration must not have timed out.
+

Var Details

living_parent + + + + +

+

The mob/living this component interacts with, namely reacting to attempted throw impacts on it.

parry_until + + + + +

+

Until which world.time the parry is active. Parries can only trigger if this is larger than the current world.time.

Proc Details

enable_parry +

+

Enables parrying for the passed duration. Multiple sources of enabling will not be directly summed up, instead using the latest ending one.

parry_check +

+

This is triggered by an object attempting to impact into something with the parry component attached and checks whether the current conditions are valid to trigger a parry success. +The mob has to be conscious aswell as not resting and the parry duration must not have timed out.

+
+ + + diff --git a/datum/component/udder.html b/datum/component/udder.html new file mode 100644 index 0000000000000..7d45cd968b3f9 --- /dev/null +++ b/datum/component/udder.html @@ -0,0 +1,58 @@ + + + + + + + /datum/component/udder - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

udder + + + +

+ +

Udder component; for farm animals to generate milk.

+

Used for cows, goats, gutlunches. neat!

+ + + +

Vars

on_milk_callbackoptional proc to callback to when the udder is milked
udderabstract item for managing reagents (further down in this file)

Procs

on_attackbysignal called on parent being attacked with an item
on_examinesignal called on parent being examined
+

Var Details

on_milk_callback + + + + +

+

optional proc to callback to when the udder is milked

udder + + + + +

+

abstract item for managing reagents (further down in this file)

Proc Details

on_attackby +

+

signal called on parent being attacked with an item

on_examine +

+

signal called on parent being examined

+ + + diff --git a/datum/component/vehicle_mounted_weapon.html b/datum/component/vehicle_mounted_weapon.html new file mode 100644 index 0000000000000..515151118fa26 --- /dev/null +++ b/datum/component/vehicle_mounted_weapon.html @@ -0,0 +1,85 @@ + + + + + + + /datum/component/vehicle_mounted_weapon - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

vehicle_mounted_weapon + + + +

+ +

This component allows gun mounting on vehicle types

+ + + + + + + +

Vars

mounted_gunThe gun mounted on a vehicle

Procs

on_attack_handBehaviour on attack hand. Puts the gun in the user's hands if they're riding the vehicle and don't have the gun in their hands.
on_attackbyBehaviour on attackby. When a user clicks the wheelchair with an ammo magazine they reload the mounted weapon.
on_buckleBehaviour on buckle. Puts the gun in the buckled mob's hands.
on_examineAdds stuff to the examine of the vehicle.
on_mousedropBehaviour on mouse drop. If the user has clickdragged the chair to themselves they will unload it.
on_unbuckleBehaviour on unbuckle. Force drops the gun from the unbuckled mob's hands.
on_weapon_dropHandles the weapon being dropped. The only way this should happen is if they unbuckle, and this makes sure they can't just take the gun and run off with it.
+

Var Details

mounted_gun + + + + +

+

The gun mounted on a vehicle

Proc Details

on_attack_hand +

+

Behaviour on attack hand. Puts the gun in the user's hands if they're riding the vehicle and don't have the gun in their hands.

on_attackby +

+

Behaviour on attackby. When a user clicks the wheelchair with an ammo magazine they reload the mounted weapon.

on_buckle +

+

Behaviour on buckle. Puts the gun in the buckled mob's hands.

on_examine +

+

Adds stuff to the examine of the vehicle.

on_mousedrop +

+

Behaviour on mouse drop. If the user has clickdragged the chair to themselves they will unload it.

on_unbuckle +

+

Behaviour on unbuckle. Force drops the gun from the unbuckled mob's hands.

on_weapon_drop +

+

Handles the weapon being dropped. The only way this should happen is if they unbuckle, and this makes sure they can't just take the gun and run off with it.

+ + + diff --git a/datum/component/xeno_iff.html b/datum/component/xeno_iff.html new file mode 100644 index 0000000000000..ea977f84761ac --- /dev/null +++ b/datum/component/xeno_iff.html @@ -0,0 +1,62 @@ + + + + + + + /datum/component/xeno_iff - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

xeno_iff + + + +

+ +

A special component that reacts to certain things that check for IFF and returns the IFF attached. +Applied by xeno IFF tags and meant for xenos only.

+ + + +

Vars

iff_typeThe IFF this component carries. SOM xenos? I got you.

Procs

evolve_carry_overHandles when a xenomorph evolves by attaching a new component to the evolved xeno. +How does it remain attached past evolution? I have no clue, bluespace magic. Would be pain to use if it didn't last however.
iff_checkReacts to an IFF check requesting signal by attaching its own IFF to the bitflag contained in the list sent. +Done this way because of in-place list magic, so for example a xeno could have multiple reactions from different sources and it would properly combine them.
on_examineHandles being examined by showing a tag is attached, aswell as if it is friendly relative to the own (if a human examines).
+

Var Details

iff_type + + + + +

+

The IFF this component carries. SOM xenos? I got you.

Proc Details

evolve_carry_over +

+

Handles when a xenomorph evolves by attaching a new component to the evolved xeno. +How does it remain attached past evolution? I have no clue, bluespace magic. Would be pain to use if it didn't last however.

iff_check +

+

Reacts to an IFF check requesting signal by attaching its own IFF to the bitflag contained in the list sent. +Done this way because of in-place list magic, so for example a xeno could have multiple reactions from different sources and it would properly combine them.

on_examine +

+

Handles being examined by showing a tag is attached, aswell as if it is friendly relative to the own (if a human examines).

+ + + diff --git a/datum/config_entry/str_list.html b/datum/config_entry/str_list.html new file mode 100644 index 0000000000000..70e5baf022926 --- /dev/null +++ b/datum/config_entry/str_list.html @@ -0,0 +1,36 @@ + + + + + + + /datum/config_entry/str_list - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

str_list + + + +

+ +

List config entry, used for configuring a list of strings

+

Vars

lowercasewhether the string elements will be lowercased on ValidateAndSet or not.
+

Var Details

lowercase + + + + +

+

whether the string elements will be lowercased on ValidateAndSet or not.

+ + + diff --git a/datum/controller/configuration.html b/datum/controller/configuration.html new file mode 100644 index 0000000000000..35985874e6cdf --- /dev/null +++ b/datum/controller/configuration.html @@ -0,0 +1,134 @@ + + + + + + + /datum/controller/configuration - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

configuration + + + +

+ + + + + + + + + + + + + + + + +

Vars

ic_bomb_vest_filter_reasonsAn assoc list of words that are blocked IC, but not in PDAs, to their reasons
ic_bomb_vest_filter_regexA regex that matches words blocked IC, but not in PDAs
ic_filter_reasonsAn assoc list of blocked IC words to their reasons
ic_filter_regexA regex that matches words blocked IC
modesList of all modes that can be choose by admins
ooc_filter_regexA regex that matches words blocked OOC
shared_filter_reasonsAn assoc list of words that are blocked both IC and OOC to their reasons
soft_ic_bomb_vest_filter_reasonsAn assoc list of words that are soft blocked IC, but not in PDAs, to their reasons
soft_ic_bomb_vest_filter_regexA regex that matches words soft blocked IC, but not in PDAs
soft_ic_filter_reasonsAn assoc list of soft blocked IC words to their reasons
soft_ic_filter_regexA regex that matches words soft blocked IC
soft_ooc_filter_regexA regex that matches words soft blocked OOC
soft_shared_filter_reasonsAn assoc list of words that are soft blocked both IC and OOC to their reasons
votable_modesList of all modes that can be voted by the players

Procs

update_chat_filter_regexesWill update the internal regexes of the chat filter based on the filter reasons
+

Var Details

ic_bomb_vest_filter_reasons + + + + +

+

An assoc list of words that are blocked IC, but not in PDAs, to their reasons

ic_bomb_vest_filter_regex + + + + +

+

A regex that matches words blocked IC, but not in PDAs

ic_filter_reasons + + + + +

+

An assoc list of blocked IC words to their reasons

ic_filter_regex + + + + +

+

A regex that matches words blocked IC

modes + + + + +

+

List of all modes that can be choose by admins

ooc_filter_regex + + + + +

+

A regex that matches words blocked OOC

shared_filter_reasons + + + + +

+

An assoc list of words that are blocked both IC and OOC to their reasons

soft_ic_bomb_vest_filter_reasons + + + + +

+

An assoc list of words that are soft blocked IC, but not in PDAs, to their reasons

soft_ic_bomb_vest_filter_regex + + + + +

+

A regex that matches words soft blocked IC, but not in PDAs

soft_ic_filter_reasons + + + + +

+

An assoc list of soft blocked IC words to their reasons

soft_ic_filter_regex + + + + +

+

A regex that matches words soft blocked IC

soft_ooc_filter_regex + + + + +

+

A regex that matches words soft blocked OOC

soft_shared_filter_reasons + + + + +

+

An assoc list of words that are soft blocked both IC and OOC to their reasons

votable_modes + + + + +

+

List of all modes that can be voted by the players

Proc Details

update_chat_filter_regexes +

+

Will update the internal regexes of the chat filter based on the filter reasons

+ + + diff --git a/datum/controller/global_vars.html b/datum/controller/global_vars.html new file mode 100644 index 0000000000000..f56fadf4e5d79 --- /dev/null +++ b/datum/controller/global_vars.html @@ -0,0 +1,864 @@ + + + + + + + /datum/controller/global_vars - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

global_vars + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

access_statetgui state: access_state
additional_admin_item_slot_listList of all additional item slot used by the admin loadout build mode
admin_activitiesAll admin related log lines minus their categories
admin_statetgui state: admin_state
ai_instances_activeA GLOB of all /datum/component/ai_controller that currently exist
alamo_statetgui state: access_state
alert_consolesStation alert consoles, /obj/machinery/computer/station_alert
all_req_accessDictionary of all req_access lists.
all_req_one_accessDictionary of all one_req_access lists.
always_statetgui state: always_state
ammo_listList of all ammo types. Used by guns to tell the projectile how to act.
apcs_listlist of all Area Power Controller machines, separate from machines for powernet speeeeeeed.
areas_by_typeAn association from typepath to area instance. Only includes areas with unique set.
balance
boiler_glob_image_listList of glob action button images, used for radial selection.
boiler_glob_listList of globs, keyed by icon state. Used for radial selection.
cable_listIndex for all cables, so that powernets don't have to look through the entire world all the time
cached_storage_typecachesAlmost 100% of the time the lists passed into set_holdable are reused for each instance +Just fucking cache it 4head +Yes I could generalize this, but I don't want anyone else using it. in fact, DO NOT COPY THIS +If you find yourself needing this pattern, you're likely better off using static typecaches +I'm not because I do not trust implementers of the storage component to use them, BUT +IF I FIND YOU USING THIS PATTERN IN YOUR CODE I WILL BREAK YOU ACROSS MY KNEES +~Lemon
campaign_default_assetsDefault assets a faction starts with
campaign_default_purchasable_assetsDefault assets a faction can purchase
campaign_jobsAll jobs used in campaign
campaign_mech_spawnersList of all mech spawners in campaign mode
campaign_mission_poolThe weighted potential mission pool by faction
campaign_objectivesList of all objectives in the campaign gamemode loaded in the current mission
campaign_reward_spawnersLocations for rewards to spawn by faction
campaign_som_major_lootLoot table if SOM win a major victory in a campaign mission
campaign_som_minor_lootLoot table if SOM win a minor victory in a campaign mission
campaign_structuresList of non-objective campaign related structures loaded in the current mission
campaign_tank_spawnersList of all tank spawners in campaign mode
campaign_tgmc_major_lootLoot table if Marines win a major victory in a campaign mission
campaign_tgmc_minor_lootLoot table if Marines win a minor victory in a campaign mission
chemical_reactions_listlist of all /datum/chemical_reaction datums index by reactants, Used during chemical reactions
chemical_reagents_listlist of all /datum/reagent datums instances indexed by reagent typepath. Used by chemistry stuff
conscious_statetgui state: conscious_state
contained_statetgui state: contained_state
cooking_recipesGlobal list of all cooking related crafting recipes.
cooking_recipes_atomsThis is a global list of typepaths, these typepaths are atoms or reagents that are associated with cooking recipes. +This includes stuff like recipe components and results.
crafting_recipesGlobal list of all non-cooking related crafting recipes.
crafting_recipes_atomsThis is a global list of typepaths, these typepaths are atoms or reagents that are associated with crafting recipes. +This includes stuff like recipe components and results.
custom_squad_colorsColor_hex = ui_key assoc list
deep_inventory_statetgui state: deep_inventory_state
default_statetgui state: default_state
droppod_baysList of all droppod bays
dropship_lzsFor remote construction of FOB using a computer on the ship during setup phase
dropship_statetgui state: dropship_state
em_block_colorA globaly cached version of EM_BLOCK_COLOR for quick access.
em_mask_matrixA globaly cached version of EM_MASK_MATRIX for quick access.
emissive_colorA globaly cached version of EMISSIVE_COLOR for quick access.
evo_panelGlobal variable for accessing evolution panel. Does not need to be unique to each xeno as ui_data pulls relevant information based on context.
faction_stats_datumsList of all faction_stats datums, by faction
faction_to_acronymAcronyms for each faction, or the shortest name possible
faction_to_alignementAlignement for each faction
faction_to_campaign_door_signalFaction signals for campaign mode doors
faction_to_data_hudList of correspond factions to data hud
faction_to_iffIff for each faction that is able to use iff
fire_support_typesAssoc list of firesupport types
focused_testsA list of every test that is currently focused. +Use the PERFORM_ALL_TESTS macro instead.
fun_statetgui state: fun_state
glass_style_singletonsGlobal list of all glass style singletons created. See /proc/create_glass_styles for list format.
glide_size_multiplierCompensating for time dilation
hands_statetgui state: hands_state
hive_ui_caste_indexReturns the index of the corresponding static caste data given caste typepath.
hive_ui_statetgui state: hive_ui_state
hive_ui_static_dataContains static data passed to all hive status UI.
human_adjacent_statetgui state: human_adjacent_state
human_heights_to_offsetsAssoc list of all heights, cast to strings, to """"tuples""""" +The first """tuple""" index is the upper body offset +The second """tuple""" index is the lower body offset
human_init_actionsThe actions given to all humans on init
intel_computersAll the intel computers for the random events
inventory_slots_to_stringInventory slot bits to plain english strings
inventory_statetgui state: inventory_state
job_specific_clothes_vendorAssoc list linking the job title with their specific clothes vendor
job_specific_points_vendorAssoc list linking the job title with their specific points vendor
key_to_time_of_role_deathAssoc list of key to timeofdeath (last death from an important role) to know if a player can respawn
language_menu_statetgui state: language_menu_state
layers_to_offsetUsed for human height overlay adjustments +Certain standing overlay layers shouldn't have a filter applied and should instead just offset by a pixel y +This list contains all the layers that must offset, with its value being whether it's a part of the upper half of the body (TRUE) or not (FALSE)
loadout_instantiate_default_contentsStorage items that will always have their default content
loadout_linked_vendorAll the vendor types which the automated loadout vendor can take items from.
loadout_variant_keyssaved loadout key = icon_state, AGAIN DO NOT EDIT THE KEYS IT WILL BREAK LOADOUTS
machinesNOTE: this is a list of ALL machines now. The processing machines list is SSmachine.processing !
mainship_lightslist of mainship lights, used for altering intensity and color during red and delta security levels
never_statetgui state: never_state
new_player_statetgui state: new_player_state
non_ascii_regexRegex for detecting non-ASCII symbols
not_incapacitated_statetgui state: not_incapacitated_state
not_incapacitated_turf_statetgui state: not_incapacitated_turf_state
notcontained_statetgui state: notcontained_state
nuke_disk_spawn_locslist of spawn locations for nuke disk consoles
nuke_ineligible_siteList of area names where /obj/machinery/nuclearbomb cannot be activated
nuke_listlist of all /obj/machinery/nuclearbomb
observer_statetgui state: observer_state
physical_obscured_statetgui state: physical_obscured_state
physical_statetgui state: physical_state
poll_optionsAll poll option datums of running polls
pollsAll currently running polls held as datums
ranked_jobs_by_factionjobs by faction, ranked by seniority
reverse_contained_statetgui state: reverse_contained_state
roles_allowed_minimap_drawA player needs to be unbanned from ALL these roles in order to be able to use the minimap drawing tool
self_statetgui state: self_state
ship_alarmslist of shipside alarm effects used for delta level alert sirens
slot_str_to_slotCorrespondance between slot strings and slot numbers
ssd_living_mobsList of ssd living mobs
strain_listbasetype = list(strain1, strain2)
submerge_filter_timer_listList of all filter removal timers. Glob to avoid an AM level var
teleporter_arraysList of all teleporter arrays
unit_test_mapping_logsWhen unit testing, all logs sent to log_mapping are stored here.
vox_soundsIf there is no single listener, broadcast to everyone in the same z level +Play voice for all mobs in the z level
xeno_stat_multiplicator_buffHow much xeno stats (health, damage and recov) are buffed
xeno_statetgui state: xeno_state
xeno_tunnels_by_hivelist of all /obj/structure/xeno/tunnel
z_statetgui state: z_state
+

Var Details

access_state + + + + +

+

tgui state: access_state

+

Humans need to have access and be adjacent to use it. +Silicons and other lifeforms get their default ui_state pass.

additional_admin_item_slot_list + + + + +

+

List of all additional item slot used by the admin loadout build mode

admin_activities + + + + +

+

All admin related log lines minus their categories

admin_state + + + + +

+

tgui state: admin_state

+

Checks that the user is an admin, end-of-story.

ai_instances_active + + + + +

+

A GLOB of all /datum/component/ai_controller that currently exist

alamo_state + + + + +

+

tgui state: access_state

+

Humans need to have access and be adjacent to use it. +Silicons and other lifeforms get their default ui_state pass. +Xenomorphs need to be intelligent

alert_consoles + + + + +

+

Station alert consoles, /obj/machinery/computer/station_alert

all_req_access + + + + +

+

Dictionary of all req_access lists.

all_req_one_access + + + + +

+

Dictionary of all one_req_access lists.

always_state + + + + +

+

tgui state: always_state

+

Always grants the user UI_INTERACTIVE. Period.

ammo_list + + + + +

+

List of all ammo types. Used by guns to tell the projectile how to act.

apcs_list + + + + +

+

list of all Area Power Controller machines, separate from machines for powernet speeeeeeed.

areas_by_type + + + + +

+

An association from typepath to area instance. Only includes areas with unique set.

balance + + + + +

+ +

This is for tracking and storing balance values that are automatically added to the database on edit.

boiler_glob_image_list + + + + +

+

List of glob action button images, used for radial selection.

boiler_glob_list + + + + +

+

List of globs, keyed by icon state. Used for radial selection.

cable_list + + + + +

+

Index for all cables, so that powernets don't have to look through the entire world all the time

cached_storage_typecaches + + + + +

+

Almost 100% of the time the lists passed into set_holdable are reused for each instance +Just fucking cache it 4head +Yes I could generalize this, but I don't want anyone else using it. in fact, DO NOT COPY THIS +If you find yourself needing this pattern, you're likely better off using static typecaches +I'm not because I do not trust implementers of the storage component to use them, BUT +IF I FIND YOU USING THIS PATTERN IN YOUR CODE I WILL BREAK YOU ACROSS MY KNEES +~Lemon

campaign_default_assets + + + + +

+

Default assets a faction starts with

campaign_default_purchasable_assets + + + + +

+

Default assets a faction can purchase

campaign_jobs + + + + +

+

All jobs used in campaign

campaign_mech_spawners + + + + +

+

List of all mech spawners in campaign mode

campaign_mission_pool + + + + +

+

The weighted potential mission pool by faction

campaign_objectives + + + + +

+

List of all objectives in the campaign gamemode loaded in the current mission

campaign_reward_spawners + + + + +

+

Locations for rewards to spawn by faction

campaign_som_major_loot + + + + +

+

Loot table if SOM win a major victory in a campaign mission

campaign_som_minor_loot + + + + +

+

Loot table if SOM win a minor victory in a campaign mission

campaign_structures + + + + +

+

List of non-objective campaign related structures loaded in the current mission

campaign_tank_spawners + + + + +

+

List of all tank spawners in campaign mode

campaign_tgmc_major_loot + + + + +

+

Loot table if Marines win a major victory in a campaign mission

campaign_tgmc_minor_loot + + + + +

+

Loot table if Marines win a minor victory in a campaign mission

chemical_reactions_list + + + + +

+

list of all /datum/chemical_reaction datums index by reactants, Used during chemical reactions

chemical_reagents_list + + + + +

+

list of all /datum/reagent datums instances indexed by reagent typepath. Used by chemistry stuff

conscious_state + + + + +

+

tgui state: conscious_state

+

Only checks if the user is conscious.

contained_state + + + + +

+

tgui state: contained_state

+

Checks that the user is inside the src_object.

cooking_recipes + + + + +

+

Global list of all cooking related crafting recipes.

cooking_recipes_atoms + + + + +

+

This is a global list of typepaths, these typepaths are atoms or reagents that are associated with cooking recipes. +This includes stuff like recipe components and results.

crafting_recipes + + + + +

+

Global list of all non-cooking related crafting recipes.

crafting_recipes_atoms + + + + +

+

This is a global list of typepaths, these typepaths are atoms or reagents that are associated with crafting recipes. +This includes stuff like recipe components and results.

custom_squad_colors + + + + +

+

Color_hex = ui_key assoc list

deep_inventory_state + + + + +

+

tgui state: deep_inventory_state

+

Checks that the src_object is in the user's deep +(backpack, box, toolbox, etc) inventory.

default_state + + + + +

+

tgui state: default_state

+

Checks a number of things -- mostly physical distance for humans +and view for robots.

droppod_bays + + + + +

+

List of all droppod bays

dropship_lzs + + + + +

+

For remote construction of FOB using a computer on the ship during setup phase

dropship_state + + + + +

+

tgui state: dropship_state

+

Checks that the user is next to the src object

em_block_color + + + + +

+

A globaly cached version of EM_BLOCK_COLOR for quick access.

em_mask_matrix + + + + +

+

A globaly cached version of EM_MASK_MATRIX for quick access.

emissive_color + + + + +

+

A globaly cached version of EMISSIVE_COLOR for quick access.

evo_panel + + + + +

+

Global variable for accessing evolution panel. Does not need to be unique to each xeno as ui_data pulls relevant information based on context.

faction_stats_datums + + + + +

+

List of all faction_stats datums, by faction

faction_to_acronym + + + + +

+

Acronyms for each faction, or the shortest name possible

faction_to_alignement + + + + +

+

Alignement for each faction

faction_to_campaign_door_signal + + + + +

+

Faction signals for campaign mode doors

faction_to_data_hud + + + + +

+

List of correspond factions to data hud

faction_to_iff + + + + +

+

Iff for each faction that is able to use iff

fire_support_types + + + + +

+

Assoc list of firesupport types

focused_tests + + + + +

+

A list of every test that is currently focused. +Use the PERFORM_ALL_TESTS macro instead.

fun_state + + + + +

+

tgui state: fun_state

+

Checks that the user has the fun privilige.

glass_style_singletons + + + + +

+

Global list of all glass style singletons created. See /proc/create_glass_styles for list format.

glide_size_multiplier + + + + +

+

Compensating for time dilation

hands_state + + + + +

+

tgui state: hands_state

+

Checks that the src_object is in the user's hands.

hive_ui_caste_index + + + + +

+

Returns the index of the corresponding static caste data given caste typepath.

hive_ui_state + + + + +

+

tgui state: hive_ui_state

+

Givens the UI state of hive status page.

hive_ui_static_data + + + + +

+

Contains static data passed to all hive status UI.

human_adjacent_state + + + + +

+

tgui state: human_adjacent_state

+

In addition to default checks, only allows interaction for a +human adjacent user.

human_heights_to_offsets + + + + +

+

Assoc list of all heights, cast to strings, to """"tuples""""" +The first """tuple""" index is the upper body offset +The second """tuple""" index is the lower body offset

human_init_actions + + + + +

+

The actions given to all humans on init

intel_computers + + + + +

+

All the intel computers for the random events

inventory_slots_to_string + + + + +

+

Inventory slot bits to plain english strings

inventory_state + + + + +

+

tgui state: inventory_state

+

Checks that the src_object is in the user's top-level +(hand, ear, pocket, belt, etc) inventory.

job_specific_clothes_vendor + + + + +

+

Assoc list linking the job title with their specific clothes vendor

job_specific_points_vendor + + + + +

+

Assoc list linking the job title with their specific points vendor

key_to_time_of_role_death + + + + +

+

Assoc list of key to timeofdeath (last death from an important role) to know if a player can respawn

language_menu_state + + + + +

+

tgui state: language_menu_state

layers_to_offset + + + + +

+

Used for human height overlay adjustments +Certain standing overlay layers shouldn't have a filter applied and should instead just offset by a pixel y +This list contains all the layers that must offset, with its value being whether it's a part of the upper half of the body (TRUE) or not (FALSE)

loadout_instantiate_default_contents + + + + +

+

Storage items that will always have their default content

loadout_linked_vendor + + + + +

+

All the vendor types which the automated loadout vendor can take items from.

loadout_variant_keys + + + + +

+

saved loadout key = icon_state, AGAIN DO NOT EDIT THE KEYS IT WILL BREAK LOADOUTS

machines + + + + +

+

NOTE: this is a list of ALL machines now. The processing machines list is SSmachine.processing !

mainship_lights + + + + +

+

list of mainship lights, used for altering intensity and color during red and delta security levels

never_state + + + + +

+

tgui state: never_state

+

Always closes the UI, no matter what. See the ui_state in religious_tool.dm to see an example

new_player_state + + + + +

+

tgui state: new_player_state

+

Checks that the user is a /mob/dead/new_player

non_ascii_regex + + + + +

+

Regex for detecting non-ASCII symbols

not_incapacitated_state + + + + +

+

tgui state: not_incapacitated_state

+

Checks that the user isn't incapacitated

not_incapacitated_turf_state + + + + +

+

tgui state: not_incapacitated_turf_state

+

Checks that the user isn't incapacitated and that their loc is a turf

notcontained_state + + + + +

+

tgui state: notcontained_state

+

Checks that the user is not inside src_object, and then makes the +default checks.

nuke_disk_spawn_locs + + + + +

+

list of spawn locations for nuke disk consoles

nuke_ineligible_site + + + + +

+

List of area names where /obj/machinery/nuclearbomb cannot be activated

nuke_list + + + + +

+

list of all /obj/machinery/nuclearbomb

observer_state + + + + +

+

tgui state: observer_state

+

Checks that the user is an observer/ghost.

physical_obscured_state + + + + +

+

tgui state: physical_obscured_state

+

Short-circuits the default state to only check physical distance, being in view doesn't matter

physical_state + + + + +

+

tgui state: physical_state

+

Short-circuits the default state to only check physical distance.

poll_options + + + + +

+

All poll option datums of running polls

polls + + + + +

+

All currently running polls held as datums

ranked_jobs_by_faction + + + + +

+

jobs by faction, ranked by seniority

reverse_contained_state + + + + +

+

tgui state: reverse_contained_state

+

Checks if src_object is inside of user.

roles_allowed_minimap_draw + + + + +

+

A player needs to be unbanned from ALL these roles in order to be able to use the minimap drawing tool

self_state + + + + +

+

tgui state: self_state

+

Only checks that the user and src_object are the same.

ship_alarms + + + + +

+

list of shipside alarm effects used for delta level alert sirens

slot_str_to_slot + + + + +

+

Correspondance between slot strings and slot numbers

ssd_living_mobs + + + + +

+

List of ssd living mobs

strain_list + + + + +

+

basetype = list(strain1, strain2)

submerge_filter_timer_list + + + + +

+

List of all filter removal timers. Glob to avoid an AM level var

teleporter_arrays + + + + +

+

List of all teleporter arrays

unit_test_mapping_logs + + + + +

+

When unit testing, all logs sent to log_mapping are stored here.

vox_sounds + + + + +

+

If there is no single listener, broadcast to everyone in the same z level +Play voice for all mobs in the z level

xeno_stat_multiplicator_buff + + + + +

+

How much xeno stats (health, damage and recov) are buffed

xeno_state + + + + +

+

tgui state: xeno_state

+

Checks that the user is a xeno, ezpz.

xeno_tunnels_by_hive + + + + +

+

list of all /obj/structure/xeno/tunnel

z_state + + + + +

+

tgui state: z_state

+

Only checks that the Z-level of the user and src_object are the same.

+ + + diff --git a/datum/controller/master.html b/datum/controller/master.html new file mode 100644 index 0000000000000..b97799ebcd414 --- /dev/null +++ b/datum/controller/master.html @@ -0,0 +1,147 @@ + + + + + + + /datum/controller/master - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

master + + + +

+ +

Start of queue linked list +End of queue linked list (used for appending to the list) +Are we loading in a new map? +for scheduling different subsystems for different stages of the round

+ + + + + + + + + + + + + + +

Vars

current_initializing_subsystemDuring initialization, will be the instanced subsytem that is currently initializing. +Outside of initialization, returns null.
current_ticklimitcurrent tick limit, assigned before running a subsystem. +used by CHECK_TICK as well so that the procs subsystems call can obey that SS's tick limits
init_stage_completedMost recent init stage to complete init.
iterationHow many times have we ran
last_runworld.time of last fire, for tracking lag outside of the mc
last_type_processedThe type of the last subsystem to be fire()'d.
make_runtimemakes the mc main loop runtime
processingAre we processing (higher values increase the processing delay by n ticks)
skip_ticksOnly run ticker subsystems for the next n ticks.
sleep_deltaHow long is the MC sleeping between runs, read only (set by Loop() based off of anti-tick-contention heuristics)
stack_end_detectorStack end detector to detect stack overflows that kill the mc's main loop
subsystemsList of subsystems to process().

Procs

RunQueueRunQueue - Run thru the queue of subsystems to run, running them while balancing out their allocated tick precentage +Returns 0 if runtimed, a negitive number for logic errors, and a positive number if the operation completed without errors
init_subsystemInitialize a given subsystem and handle the results.
laggy_byond_map_update_incomingWarns us that the end of tick byond map_update will be laggier then normal, so that we can just skip running subsystems this tick.
+

Var Details

current_initializing_subsystem + + + + +

+

During initialization, will be the instanced subsytem that is currently initializing. +Outside of initialization, returns null.

current_ticklimit + + + + +

+

current tick limit, assigned before running a subsystem. +used by CHECK_TICK as well so that the procs subsystems call can obey that SS's tick limits

init_stage_completed + + + + +

+

Most recent init stage to complete init.

iteration + + + + +

+

How many times have we ran

last_run + + + + +

+

world.time of last fire, for tracking lag outside of the mc

last_type_processed + + + + +

+

The type of the last subsystem to be fire()'d.

make_runtime + + + + +

+

makes the mc main loop runtime

processing + + + + +

+

Are we processing (higher values increase the processing delay by n ticks)

skip_ticks + + + + +

+

Only run ticker subsystems for the next n ticks.

sleep_delta + + + + +

+

How long is the MC sleeping between runs, read only (set by Loop() based off of anti-tick-contention heuristics)

stack_end_detector + + + + +

+

Stack end detector to detect stack overflows that kill the mc's main loop

subsystems + + + + +

+

List of subsystems to process().

Proc Details

RunQueue +

+

RunQueue - Run thru the queue of subsystems to run, running them while balancing out their allocated tick precentage +Returns 0 if runtimed, a negitive number for logic errors, and a positive number if the operation completed without errors

init_subsystem +

+

Initialize a given subsystem and handle the results.

+

Arguments:

+

laggy_byond_map_update_incoming +

+

Warns us that the end of tick byond map_update will be laggier then normal, so that we can just skip running subsystems this tick.

+ + + diff --git a/datum/controller/subsystem.html b/datum/controller/subsystem.html new file mode 100644 index 0000000000000..9e4475212590a --- /dev/null +++ b/datum/controller/subsystem.html @@ -0,0 +1,242 @@ + + + + + + + /datum/controller/subsystem - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

subsystem + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

can_fireSet to 0 to prevent fire() calls, mostly for admin use or subsystems that may be resumed later +use the SS_NO_FIRE flag instead for systems that never fire to keep it from even being added to list that is checked every tick
costaverage time to execute
flagsSubsystem Flags to control binary behavior. Flags must be set at compile time or before preinit finishes to take full effect. (You can also restart the mc to force them to process again)
init_orderOrder of initialization. Higher numbers are initialized first, lower numbers later. Use or create defines such as [INIT_ORDER_DEFAULT] so we can see the order in one file.
init_stageWhich stage does this subsystem init at. Earlier stages can fire while later stages init.
initializedThis var is set to TRUE after the subsystem has been initialized.
last_firelast world.time we called fire()
nameName of the subsystem - you must change this
next_firescheduled world.time for next fire()
paused_tick_usagetotal tick_usage of all of our runs while pausing this run
paused_ticksticks this ss is taking to run right now.
priorityPriority Weight: When mutiple subsystems need to run in the same tick, higher priority subsystems will be given a higher share of the tick before MC_TICK_CHECK triggers a sleep, higher priority subsystems also run before lower priority subsystems
queue_nextNext subsystem in the queue of subsystems to run this tick
queue_prevPrevious subsystem in the queue of subsystems to run this tick
queued_prioritywe keep a running total to make the math easier, if priority changes mid-fire that would break our running total, so we store it here
queued_timetime we entered the queue, (for timing and priority reasons)
runlevelsBitmap of what game states can this subsystem fire at. See [RUNLEVELS_DEFAULT] for more details.
slept_countTracks how many times a subsystem has ever slept in fire().
statetracks the current state of the ss, running, paused, etc.
tick_overrunaverage tick usage
tick_usageaverage time to execute
tickshow many ticks does this ss take to run on avg.
times_firednumber of times we have called fire()
waitTime to wait (in deciseconds) between each call to fire(). Must be a positive integer.

Procs

OnConfigLoadCalled after the config has been loaded or reloaded.
PreInitdatum/controller/subsystem/New()
enqueueQueue it to run. +(we loop thru a linked list until we get to the end or find the right point) +(this lets us sort our run order correctly without having to re-sort the entire already sorted list)
firepreviously, this would have been named 'process()' but that name is used everywhere for different things! +fire() seems more suitable. This is the procedure that gets called every 'wait' deciseconds. +Sleeping in here prevents future fires until returned..
igniteThis is used so the mc knows when the subsystem sleeps. do not override.
+

Var Details

can_fire + + + + +

+

Set to 0 to prevent fire() calls, mostly for admin use or subsystems that may be resumed later +use the SS_NO_FIRE flag instead for systems that never fire to keep it from even being added to list that is checked every tick

cost + + + + +

+

average time to execute

flags + + + + +

+

Subsystem Flags to control binary behavior. Flags must be set at compile time or before preinit finishes to take full effect. (You can also restart the mc to force them to process again)

init_order + + + + +

+

Order of initialization. Higher numbers are initialized first, lower numbers later. Use or create defines such as [INIT_ORDER_DEFAULT] so we can see the order in one file.

init_stage + + + + +

+

Which stage does this subsystem init at. Earlier stages can fire while later stages init.

initialized + + + + +

+

This var is set to TRUE after the subsystem has been initialized.

last_fire + + + + +

+

last world.time we called fire()

name + + + + +

+

Name of the subsystem - you must change this

next_fire + + + + +

+

scheduled world.time for next fire()

paused_tick_usage + + + + +

+

total tick_usage of all of our runs while pausing this run

paused_ticks + + + + +

+

ticks this ss is taking to run right now.

priority + + + + +

+

Priority Weight: When mutiple subsystems need to run in the same tick, higher priority subsystems will be given a higher share of the tick before MC_TICK_CHECK triggers a sleep, higher priority subsystems also run before lower priority subsystems

queue_next + + + + +

+

Next subsystem in the queue of subsystems to run this tick

queue_prev + + + + +

+

Previous subsystem in the queue of subsystems to run this tick

queued_priority + + + + +

+

we keep a running total to make the math easier, if priority changes mid-fire that would break our running total, so we store it here

queued_time + + + + +

+

time we entered the queue, (for timing and priority reasons)

runlevels + + + + +

+

Bitmap of what game states can this subsystem fire at. See [RUNLEVELS_DEFAULT] for more details.

slept_count + + + + +

+

Tracks how many times a subsystem has ever slept in fire().

state + + + + +

+

tracks the current state of the ss, running, paused, etc.

tick_overrun + + + + +

+

average tick usage

tick_usage + + + + +

+

average time to execute

ticks + + + + +

+

how many ticks does this ss take to run on avg.

times_fired + + + + +

+

number of times we have called fire()

wait + + + + +

+

Time to wait (in deciseconds) between each call to fire(). Must be a positive integer.

Proc Details

OnConfigLoad +

+

Called after the config has been loaded or reloaded.

PreInit +

+

datum/controller/subsystem/New()

enqueue +

+

Queue it to run. +(we loop thru a linked list until we get to the end or find the right point) +(this lets us sort our run order correctly without having to re-sort the entire already sorted list)

fire +

+

previously, this would have been named 'process()' but that name is used everywhere for different things! +fire() seems more suitable. This is the procedure that gets called every 'wait' deciseconds. +Sleeping in here prevents future fires until returned..

ignite +

+

This is used so the mc knows when the subsystem sleeps. do not override.

+ + + diff --git a/datum/controller/subsystem/advanced_pathfinding.html b/datum/controller/subsystem/advanced_pathfinding.html new file mode 100644 index 0000000000000..b48888fb41280 --- /dev/null +++ b/datum/controller/subsystem/advanced_pathfinding.html @@ -0,0 +1,43 @@ + + + + + + + /datum/controller/subsystem/advanced_pathfinding - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

advanced_pathfinding + + + +

+ + + +

Vars

node_pathfinding_to_doList of ai_behaviour datum asking for a tile pathfinding
tile_pathfinding_to_doList of ai_behaviour datum asking for a tile pathfinding
+

Var Details

node_pathfinding_to_do + + + + +

+

List of ai_behaviour datum asking for a tile pathfinding

tile_pathfinding_to_do + + + + +

+

List of ai_behaviour datum asking for a tile pathfinding

+ + + diff --git a/datum/controller/subsystem/ambience.html b/datum/controller/subsystem/ambience.html new file mode 100644 index 0000000000000..480888e9f934e --- /dev/null +++ b/datum/controller/subsystem/ambience.html @@ -0,0 +1,36 @@ + + + + + + + /datum/controller/subsystem/ambience - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

ambience + + + +

+ + +

Vars

ambience_listening_clientsAssoc list of listening client - next ambience time
+

Var Details

ambience_listening_clients + + + + +

+

Assoc list of listening client - next ambience time

+ + + diff --git a/datum/controller/subsystem/atoms.html b/datum/controller/subsystem/atoms.html new file mode 100644 index 0000000000000..a2bfb55e9f1ae --- /dev/null +++ b/datum/controller/subsystem/atoms.html @@ -0,0 +1,78 @@ + + + + + + + /datum/controller/subsystem/atoms - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

atoms + + + +

+ + + + + + + + +

Vars

created_atomsinitAtom() adds the atom its creating to this list iff InitializeAtoms() has been given a list to populate as an argument
initialized_changedA count of how many initalize changes we've made. We want to prevent old_initialize being overriden by some other value, breaking init code
queued_deletionsAtoms that will be deleted once the subsystem is initialized

Procs

CreateAtomsActually creates the list of atoms. Exists soley so a runtime in the creation logic doesn't cause initalized to totally break
InitAtomInit this specific atom
prepare_deletionPrepares an atom to be deleted once the atoms SS is initialized.
set_tracked_initalizedUse this to set initialized to prevent error states where old_initialized is overriden. It keeps happening and it's cheesing me off
+

Var Details

created_atoms + + + + +

+

initAtom() adds the atom its creating to this list iff InitializeAtoms() has been given a list to populate as an argument

initialized_changed + + + + +

+

A count of how many initalize changes we've made. We want to prevent old_initialize being overriden by some other value, breaking init code

queued_deletions + + + + +

+

Atoms that will be deleted once the subsystem is initialized

Proc Details

CreateAtoms +

+

Actually creates the list of atoms. Exists soley so a runtime in the creation logic doesn't cause initalized to totally break

InitAtom +

+

Init this specific atom

prepare_deletion +

+

Prepares an atom to be deleted once the atoms SS is initialized.

set_tracked_initalized +

+

Use this to set initialized to prevent error states where old_initialized is overriden. It keeps happening and it's cheesing me off

+ + + diff --git a/datum/controller/subsystem/aura.html b/datum/controller/subsystem/aura.html new file mode 100644 index 0000000000000..c362ae1493f7d --- /dev/null +++ b/datum/controller/subsystem/aura.html @@ -0,0 +1,57 @@ + + + + + + + /datum/controller/subsystem/aura - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

aura + + + +

+ + + + + +

Vars

active_aurasStores currently active aura_bearer datums
current_cacheStores what the current aura processing stage was working on for if it is paused.
stageAuras go through three stages. Pulse auras -> finish xeno cycles -> finish human cycles. Depending on where it was paused, this tells it where to resume fire()

Procs

add_emitterUse this to start a new emitter with the specified stats. Returns the emitter in question, just qdel it to end early.
+

Var Details

active_auras + + + + +

+

Stores currently active aura_bearer datums

current_cache + + + + +

+

Stores what the current aura processing stage was working on for if it is paused.

stage + + + + +

+

Auras go through three stages. Pulse auras -> finish xeno cycles -> finish human cycles. Depending on where it was paused, this tells it where to resume fire()

Proc Details

add_emitter +

+

Use this to start a new emitter with the specified stats. Returns the emitter in question, just qdel it to end early.

+ + + diff --git a/datum/controller/subsystem/automatedfire.html b/datum/controller/subsystem/automatedfire.html new file mode 100644 index 0000000000000..3c6720cac0f87 --- /dev/null +++ b/datum/controller/subsystem/automatedfire.html @@ -0,0 +1,78 @@ + + + + + + + /datum/controller/subsystem/automatedfire - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

automatedfire + + + +

+ + + + + + + + +

Vars

bucket_listList of buckets, each bucket holds every shooter that has to shoot this byond tick
bucket_resolutionHow many buckets for every frame of world.fps
head_offsetworld.time of the first entry in the bucket list, effectively the 'start time' of the current buckets
next_shooterReference to the next shooter before we clean shooter.next
practical_offsetIndex of the first non-empty bucket
shooter_countHow many shooter are in the buckets

Procs

reset_bucketsIn the event of a change of world.tick_lag, we refresh the size of the bucket and the bucket resolution
+

Var Details

bucket_list + + + + +

+

List of buckets, each bucket holds every shooter that has to shoot this byond tick

bucket_resolution + + + + +

+

How many buckets for every frame of world.fps

head_offset + + + + +

+

world.time of the first entry in the bucket list, effectively the 'start time' of the current buckets

next_shooter + + + + +

+

Reference to the next shooter before we clean shooter.next

practical_offset + + + + +

+

Index of the first non-empty bucket

shooter_count + + + + +

+

How many shooter are in the buckets

Proc Details

reset_buckets +

+

In the event of a change of world.tick_lag, we refresh the size of the bucket and the bucket resolution

+ + + diff --git a/datum/controller/subsystem/chat.html b/datum/controller/subsystem/chat.html new file mode 100644 index 0000000000000..b604e1a4990a0 --- /dev/null +++ b/datum/controller/subsystem/chat.html @@ -0,0 +1,50 @@ + + + + + + + /datum/controller/subsystem/chat - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

chat + + + +

+ + + + +

Vars

client_to_payloadsAssosciates a ckey with a list of messages to send to them.
client_to_reliability_historyAssociates a ckey with an assosciative list of their last CHAT_RELIABILITY_HISTORY_SIZE messages.
client_to_sequence_numberAssosciates a ckey with their next sequence number.
+

Var Details

client_to_payloads + + + + +

+

Assosciates a ckey with a list of messages to send to them.

client_to_reliability_history + + + + +

+

Associates a ckey with an assosciative list of their last CHAT_RELIABILITY_HISTORY_SIZE messages.

client_to_sequence_number + + + + +

+

Assosciates a ckey with their next sequence number.

+ + + diff --git a/datum/controller/subsystem/direction.html b/datum/controller/subsystem/direction.html new file mode 100644 index 0000000000000..73538d73792f3 --- /dev/null +++ b/datum/controller/subsystem/direction.html @@ -0,0 +1,119 @@ + + + + + + + /datum/controller/subsystem/direction - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

direction + + + +

+ + + + + + + + + + + +

Vars

last_faction_idUsed as a incrememnted var to create new faction IDs
leader_mappingthis is a map of defines to mob references, eg; list(FACTION_ID = , FACTION_ID2 = )
mobs_in_processingLookup for list( = squad_id)
processing_mobsthis is a two d list of defines to lists of mobs tracking that leader +eg; list(CHARLIE_SL = list(<list of references to squad marines), XENO_NORMAL_QUEEN = list(<list of xeno mob refs))

Procs

clear_leaderClears the leader for this squad id
init_squadCreates a new squad so tat we can start tracking it's leader +Arguments:
set_leaderSets a new leader for a squad
start_trackingAdds a new mob to a squad so it can track +Arguments:
stop_trackingRemoves a new mob drom a squad so it can stop tracking +Arguments:
untrack_all_in_squadStops all members of this squad from tracking the leader
+

Var Details

last_faction_id + + + + +

+

Used as a incrememnted var to create new faction IDs

leader_mapping + + + + +

+

this is a map of defines to mob references, eg; list(FACTION_ID = , FACTION_ID2 = )

mobs_in_processing + + + + +

+

Lookup for list( = squad_id)

processing_mobs + + + + +

+

this is a two d list of defines to lists of mobs tracking that leader +eg; list(CHARLIE_SL = list(<list of references to squad marines), XENO_NORMAL_QUEEN = list(<list of xeno mob refs))

Proc Details

clear_leader +

+

Clears the leader for this squad id

init_squad +

+

Creates a new squad so tat we can start tracking it's leader +Arguments:

+

set_leader +

+

Sets a new leader for a squad

start_tracking +

+

Adds a new mob to a squad so it can track +Arguments:

+

stop_tracking +

+

Removes a new mob drom a squad so it can stop tracking +Arguments:

+

untrack_all_in_squad +

+

Stops all members of this squad from tracking the leader

+ + + diff --git a/datum/controller/subsystem/evacuation.html b/datum/controller/subsystem/evacuation.html new file mode 100644 index 0000000000000..b6b3c7c3abfda --- /dev/null +++ b/datum/controller/subsystem/evacuation.html @@ -0,0 +1,57 @@ + + + + + + + /datum/controller/subsystem/evacuation - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

evacuation + + + +

+ + + + + +

Vars

alarm_lightslist of alarm lights that we activate during self destruct
human_escapedHow many marines escaped
initial_human_on_shipHow many marines were on ship when the dropship crashed

Procs

process_evacuationDeal with the escape pods, launching them when needed
+

Var Details

alarm_lights + + + + +

+

list of alarm lights that we activate during self destruct

human_escaped + + + + +

+

How many marines escaped

initial_human_on_ship + + + + +

+

How many marines were on ship when the dropship crashed

Proc Details

process_evacuation +

+

Deal with the escape pods, launching them when needed

+ + + diff --git a/datum/controller/subsystem/events.html b/datum/controller/subsystem/events.html new file mode 100644 index 0000000000000..ac743d1db948e --- /dev/null +++ b/datum/controller/subsystem/events.html @@ -0,0 +1,85 @@ + + + + + + + /datum/controller/subsystem/events - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

events + + + +

+ + + + + + + + + +

Vars

controllist of all datum/round_event_control. Used for selecting events based on weight and occurrences.
frequency_lowerLower bound for how frequently events will occur
frequency_upperthe latest an event can happen after a previous event
runninglist of all existing /datum/round_event
scheduledThe next world.time that a naturally occuring random event can be selected.

Procs

check_eventchecks if we should select a random event yet, and reschedules if necessary
rescheduledecides which world.time we should select another random event at.
spawn_eventselects a random event based on whether it can occur and it's 'weight'(probability)
+

Var Details

control + + + + +

+

list of all datum/round_event_control. Used for selecting events based on weight and occurrences.

frequency_lower + + + + +

+

Lower bound for how frequently events will occur

frequency_upper + + + + +

+

the latest an event can happen after a previous event

running + + + + +

+

list of all existing /datum/round_event

scheduled + + + + +

+

The next world.time that a naturally occuring random event can be selected.

Proc Details

check_event +

+

checks if we should select a random event yet, and reschedules if necessary

reschedule +

+

decides which world.time we should select another random event at.

spawn_event +

+

selects a random event based on whether it can occur and it's 'weight'(probability)

+ + + diff --git a/datum/controller/subsystem/excavation.html b/datum/controller/subsystem/excavation.html new file mode 100644 index 0000000000000..c28f0a82b5e51 --- /dev/null +++ b/datum/controller/subsystem/excavation.html @@ -0,0 +1,64 @@ + + + + + + + /datum/controller/subsystem/excavation - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

excavation + + + +

+ + + + + + +

Vars

active_spawnersLandmarks that have active excavation sites
excavation_site_spawnersLandmarks that can spawn excavation sites
excavations_countAmount of present excavation landmarks

Procs

excavate_siteExcavates an excavation site
spawnExcavationCreates an excavation landmark at a random area from eligible areas
+

Var Details

active_spawners + + + + +

+

Landmarks that have active excavation sites

excavation_site_spawners + + + + +

+

Landmarks that can spawn excavation sites

excavations_count + + + + +

+

Amount of present excavation landmarks

Proc Details

excavate_site +

+

Excavates an excavation site

spawnExcavation +

+

Creates an excavation landmark at a random area from eligible areas

+ + + diff --git a/datum/controller/subsystem/icon_smooth.html b/datum/controller/subsystem/icon_smooth.html new file mode 100644 index 0000000000000..ca6110722804e --- /dev/null +++ b/datum/controller/subsystem/icon_smooth.html @@ -0,0 +1,36 @@ + + + + + + + /datum/controller/subsystem/icon_smooth - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

icon_smooth + + + +

+ + +

Vars

blueprint_queueBlueprints assemble an image of what pipes/manifolds/wires look like on initialization, and thus should be taken after everything's been smoothed
+

Var Details

blueprint_queue + + + + +

+

Blueprints assemble an image of what pipes/manifolds/wires look like on initialization, and thus should be taken after everything's been smoothed

+ + + diff --git a/datum/controller/subsystem/job.html b/datum/controller/subsystem/job.html new file mode 100644 index 0000000000000..c82255d12de8e --- /dev/null +++ b/datum/controller/subsystem/job.html @@ -0,0 +1,54 @@ + + + + + + + /datum/controller/subsystem/job - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

job + + + +

+ + + + +

Vars

active_squadsAssoc list of all joinable squads, categorised by faction
squads_by_nameassoc list of squad_name_string->squad_reference for easy lookup, categorised in factions

Procs

DivideOccupationsProc DivideOccupations +fills var "assigned_role" for all ready players. +This proc must not have any side effect besides of modifying "assigned_role".
+

Var Details

active_squads + + + + +

+

Assoc list of all joinable squads, categorised by faction

squads_by_name + + + + +

+

assoc list of squad_name_string->squad_reference for easy lookup, categorised in factions

Proc Details

DivideOccupations +

+

Proc DivideOccupations +fills var "assigned_role" for all ready players. +This proc must not have any side effect besides of modifying "assigned_role".

+ + + diff --git a/datum/controller/subsystem/lighting.html b/datum/controller/subsystem/lighting.html new file mode 100644 index 0000000000000..722131c0432a8 --- /dev/null +++ b/datum/controller/subsystem/lighting.html @@ -0,0 +1,45 @@ + + + + + + + /datum/controller/subsystem/lighting - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

lighting + + + +

+ +

List of static lighting sources queued for update. +List of lighting corners queued for update. +List of lighting objects queued for update.

+ +

Vars

startedWhether the SS has begun setting up yet
total_shadow_calculationsTotal times shadows were updated, debug
+

Var Details

started + + + + +

+

Whether the SS has begun setting up yet

total_shadow_calculations + + + + +

+

Total times shadows were updated, debug

+ + + diff --git a/datum/controller/subsystem/mapping.html b/datum/controller/subsystem/mapping.html new file mode 100644 index 0000000000000..3d893b2655789 --- /dev/null +++ b/datum/controller/subsystem/mapping.html @@ -0,0 +1,152 @@ + + + + + + + /datum/controller/subsystem/mapping - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

mapping + + + +

+ + + + + + + + + + + + + + + + + + +

Vars

critical_planesList of plane masters that are of critical priority
gravity_by_z_levelshows the gravity value for each z level
groundmap_votedIf true, non-admin players will not be able to initiate a vote to change groundmap
last_round_player_countThe number of connected clients for the previous round
max_plane_offsetThe largest plane offset we've generated so far
modular_templateslist of all modular mapping templates
plane_offset_blacklistList of planes that do not allow for offsetting
plane_offset_to_trueAssoc list of string plane values to their true, non offset representation
plane_to_offsetAssoc list of string plane to the plane's offset value
render_offset_blacklistList of render targets that do not allow for offsetting
shipmap_votedIf true, non-admin players will not be able to initiate a vote to change shipmap
true_to_offset_planesAssoc list of true string plane values to a list of all potential offset planess
z_level_to_lowest_plane_offsetList of z level (as number) -> The lowest plane offset in that z stack
z_level_to_plane_offsetList of z level (as number) -> plane offset of that z level +Used to maintain the plane cube
z_level_to_stackList of z level (as number) -> list of all z levels vertically connected to ours +Useful for fast grouping lookups and such

Procs

calculate_default_z_level_gravitiesGenerates baseline gravity levels for all z-levels based off traits
calculate_z_level_gravityCalculates the gravity for a z-level
+

Var Details

critical_planes + + + + +

+

List of plane masters that are of critical priority

gravity_by_z_level + + + + +

+

shows the gravity value for each z level

groundmap_voted + + + + +

+

If true, non-admin players will not be able to initiate a vote to change groundmap

last_round_player_count + + + + +

+

The number of connected clients for the previous round

max_plane_offset + + + + +

+

The largest plane offset we've generated so far

modular_templates + + + + +

+

list of all modular mapping templates

plane_offset_blacklist + + + + +

+

List of planes that do not allow for offsetting

plane_offset_to_true + + + + +

+

Assoc list of string plane values to their true, non offset representation

plane_to_offset + + + + +

+

Assoc list of string plane to the plane's offset value

render_offset_blacklist + + + + +

+

List of render targets that do not allow for offsetting

shipmap_voted + + + + +

+

If true, non-admin players will not be able to initiate a vote to change shipmap

true_to_offset_planes + + + + +

+

Assoc list of true string plane values to a list of all potential offset planess

z_level_to_lowest_plane_offset + + + + +

+

List of z level (as number) -> The lowest plane offset in that z stack

z_level_to_plane_offset + + + + +

+

List of z level (as number) -> plane offset of that z level +Used to maintain the plane cube

z_level_to_stack + + + + +

+

List of z level (as number) -> list of all z levels vertically connected to ours +Useful for fast grouping lookups and such

Proc Details

calculate_default_z_level_gravities +

+

Generates baseline gravity levels for all z-levels based off traits

calculate_z_level_gravity +

+

Calculates the gravity for a z-level

+ + + diff --git a/datum/controller/subsystem/minimaps.html b/datum/controller/subsystem/minimaps.html new file mode 100644 index 0000000000000..48b0f5c28f1f5 --- /dev/null +++ b/datum/controller/subsystem/minimaps.html @@ -0,0 +1,185 @@ + + + + + + + /datum/controller/subsystem/minimaps - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

minimaps + + + +

+ + + + + + + + + + + + + + + + + + + + +

Vars

drawn_imagesassoc list of hash = image of images drawn by players
earlyaddslist of callbacks we need to invoke late because Initialize happens early, or a Z-level was loaded after init
hashed_minimapsassoc list of minimap objects that are hashed so we have to update as few as possible
images_by_sourceAssoc list of images we hold by their source
minimaps_by_zMinimap hud display datums sorted by zlevel
removal_cbsAssoc list of removal callbacks to invoke to remove images from the raw lists
update_targetsthe update target datums, sorted by update flag type
update_targets_unsortedNonassoc list of updators we want to have their overlays reapplied
updators_by_datumlist of holders for data relating to tracked zlevel and tracked atum

Procs

add_markerAdds an atom we want to track with blips to the subsystem +Arguments:
add_to_updatersAdds an atom to the processing updators that will have blips drawn on them +Arguments:
fetch_minimap_objectFetches a /atom/movable/screen/minimap instance or creates on if none exists +Note this does not destroy them when the map is unused, might be a potential thing to do? +Arguments:
get_drawing_imagefetches the drawing icon for a minimap flag and returns it, creating it if needed. assumes minimap_flag is ONE flag
load_new_zCreates a minimap for a particular z level
on_z_changeCalled on zlevel change of a blip-atom so we can update the image lists as needed
remove_earlyaddRemoves the object from the earlyadds list, in case it was qdel'd before the z-level was fully loaded
remove_markerRemoves an atom and it's blip from the subsystem
remove_updatorRemoves a atom from the subsystems updating overlays
removeimageremoves an image from raw tracked lists, invoked by callback
+

Var Details

drawn_images + + + + +

+

assoc list of hash = image of images drawn by players

earlyadds + + + + +

+

list of callbacks we need to invoke late because Initialize happens early, or a Z-level was loaded after init

hashed_minimaps + + + + +

+

assoc list of minimap objects that are hashed so we have to update as few as possible

images_by_source + + + + +

+

Assoc list of images we hold by their source

minimaps_by_z + + + + +

+

Minimap hud display datums sorted by zlevel

removal_cbs + + + + +

+

Assoc list of removal callbacks to invoke to remove images from the raw lists

update_targets + + + + +

+

the update target datums, sorted by update flag type

update_targets_unsorted + + + + +

+

Nonassoc list of updators we want to have their overlays reapplied

updators_by_datum + + + + +

+

list of holders for data relating to tracked zlevel and tracked atum

Proc Details

add_marker +

+

Adds an atom we want to track with blips to the subsystem +Arguments:

+

add_to_updaters +

+

Adds an atom to the processing updators that will have blips drawn on them +Arguments:

+

fetch_minimap_object +

+

Fetches a /atom/movable/screen/minimap instance or creates on if none exists +Note this does not destroy them when the map is unused, might be a potential thing to do? +Arguments:

+

get_drawing_image +

+

fetches the drawing icon for a minimap flag and returns it, creating it if needed. assumes minimap_flag is ONE flag

load_new_z +

+

Creates a minimap for a particular z level

on_z_change +

+

Called on zlevel change of a blip-atom so we can update the image lists as needed

+

TODO gross amount of assoc usage and unneeded ALL FLAGS iteration

remove_earlyadd +

+

Removes the object from the earlyadds list, in case it was qdel'd before the z-level was fully loaded

remove_marker +

+

Removes an atom and it's blip from the subsystem

remove_updator +

+

Removes a atom from the subsystems updating overlays

removeimage +

+

removes an image from raw tracked lists, invoked by callback

+ + + diff --git a/datum/controller/subsystem/modularmapping.html b/datum/controller/subsystem/modularmapping.html new file mode 100644 index 0000000000000..b6d5ed41f9f51 --- /dev/null +++ b/datum/controller/subsystem/modularmapping.html @@ -0,0 +1,35 @@ + + + + + + + /datum/controller/subsystem/modularmapping - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

modularmapping + + + +

+ + +

Procs

load_modular_mapsLoads any pending modular map files

Proc Details

load_modular_maps +

+

Loads any pending modular map files

+ + + diff --git a/datum/controller/subsystem/monitor.html b/datum/controller/subsystem/monitor.html new file mode 100644 index 0000000000000..9396c325a9fa9 --- /dev/null +++ b/datum/controller/subsystem/monitor.html @@ -0,0 +1,155 @@ + + + + + + + /datum/controller/subsystem/monitor - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

monitor + + + +

+ + + + + + + + + + + + + + + + + + + +

Vars

FOB_huggingTRUE if we detect a state of FOB hugging
current_pointsThe current state points. Negative means xenos are winning, positive points correspond to marine winning
current_stateThe current state
gamestateIf the game is currently before shutters drop, after, or shipside
human_in_FOBThe number of humans being in either lz1 or lz2
human_on_groundThe number of humans on ground
human_on_shipThe number of humans on the ship
humans_all_in_FOB_counterThe number of time most of humans are in FOB consecutively
is_automatic_balance_onIf the automatic balance system is online
last_stateThe last state
maximum_connected_players_countMaximum record of how many players were concurrently playing this round
statsList of all int stats

Procs

FOB_hugging_checkCheck if we are in a FOB camping situation
apply_balance_changesWill multiply every base health, regen and melee damage stat on all xeno by GLOB.xeno_stat_multiplicator_buff
balance_xeno_teamReturn the proposed xeno buff calculated with the number of burrowed, and the state of the game
calculate_state_pointsCalculate the points supposedly representating of the situation
process_human_positionsKeep the monitor informed about the position of humans
set_stateEtablish the new monitor state of the game, and update the GLOB values
+

Var Details

FOB_hugging + + + + +

+

TRUE if we detect a state of FOB hugging

current_points + + + + +

+

The current state points. Negative means xenos are winning, positive points correspond to marine winning

current_state + + + + +

+

The current state

gamestate + + + + +

+

If the game is currently before shutters drop, after, or shipside

human_in_FOB + + + + +

+

The number of humans being in either lz1 or lz2

human_on_ground + + + + +

+

The number of humans on ground

human_on_ship + + + + +

+

The number of humans on the ship

humans_all_in_FOB_counter + + + + +

+

The number of time most of humans are in FOB consecutively

is_automatic_balance_on + + + + +

+

If the automatic balance system is online

last_state + + + + +

+

The last state

maximum_connected_players_count + + + + +

+

Maximum record of how many players were concurrently playing this round

stats + + + + +

+

List of all int stats

Proc Details

FOB_hugging_check +

+

Check if we are in a FOB camping situation

apply_balance_changes +

+

Will multiply every base health, regen and melee damage stat on all xeno by GLOB.xeno_stat_multiplicator_buff

balance_xeno_team +

+

Return the proposed xeno buff calculated with the number of burrowed, and the state of the game

calculate_state_points +

+

Calculate the points supposedly representating of the situation

process_human_positions +

+

Keep the monitor informed about the position of humans

set_state +

+

Etablish the new monitor state of the game, and update the GLOB values

+ + + diff --git a/datum/controller/subsystem/persistence.html b/datum/controller/subsystem/persistence.html new file mode 100644 index 0000000000000..ac7473e83609d --- /dev/null +++ b/datum/controller/subsystem/persistence.html @@ -0,0 +1,162 @@ + + + + + + + /datum/controller/subsystem/persistence - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

persistence + + + +

+ + + + + + + + + + + + + + + + + + + + +

Vars

custom_loadoutsThe saved list of custom outfits names
last_modes_round_dateWhen were the last rounds of specific game mode played, in ticks
season_itemsItems that have been selected for the current round for each season
season_progressStores the current season for each season group
seasons_bucketsAvailable gun seasons
seasons_durationsStores how long each season should last

Procs

CollectDataStores data at the end of the round
InitializeLoads data at the start of the round
LoadSeasonalItemsLoads seasons data, advances seasons and saves the data
initialize_custom_loadouts_fileInitializes the custom loadouts file if it is missing
initialize_seasonal_items_fileInitializes the seasonal items file if it is missing
load_custom_loadouts_listLoads the list of custom outfits names
load_last_game_mode_round_timeLoads the last gamemode's round date
load_loadoutLoad a loadout from the persistence loadouts savefile
save_custom_loadouts_listSaves the list of custom outfits names
save_last_game_mode_round_timeSave the date of the last gamemode's round
save_loadoutSave a loadout into the persistence savefile
seasons_info_messageConstructs a message with information about the active seasons and their current buckets
update_season_dataHandles checking whether a season should advance and advancing it, along with setting up the seasons' values or procs for the round
+

Var Details

custom_loadouts + + + + +

+

The saved list of custom outfits names

last_modes_round_date + + + + +

+

When were the last rounds of specific game mode played, in ticks

season_items + + + + +

+

Items that have been selected for the current round for each season

season_progress + + + + +

+

Stores the current season for each season group

seasons_buckets + + + + +

+

Available gun seasons

seasons_durations + + + + +

+

Stores how long each season should last

Proc Details

CollectData +

+

Stores data at the end of the round

Initialize +

+

Loads data at the start of the round

LoadSeasonalItems +

+

Loads seasons data, advances seasons and saves the data

initialize_custom_loadouts_file +

+

Initializes the custom loadouts file if it is missing

initialize_seasonal_items_file +

+

Initializes the seasonal items file if it is missing

load_custom_loadouts_list +

+

Loads the list of custom outfits names

load_last_game_mode_round_time +

+

Loads the last gamemode's round date

load_loadout +

+

Load a loadout from the persistence loadouts savefile

save_custom_loadouts_list +

+

Saves the list of custom outfits names

save_last_game_mode_round_time +

+

Save the date of the last gamemode's round

save_loadout +

+

Save a loadout into the persistence savefile

seasons_info_message +

+

Constructs a message with information about the active seasons and their current buckets

update_season_data +

+

Handles checking whether a season should advance and advancing it, along with setting up the seasons' values or procs for the round

+ + + diff --git a/datum/controller/subsystem/points.html b/datum/controller/subsystem/points.html new file mode 100644 index 0000000000000..741a9e92209a2 --- /dev/null +++ b/datum/controller/subsystem/points.html @@ -0,0 +1,78 @@ + + + + + + + /datum/controller/subsystem/points - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

points + + + +

+ + + + + + + + +

Vars

shoppinglistAssoc list of item ready to be sent, categorised by faction
supply_pointsAssoc list of supply points
xeno_strategic_points_by_hiveAssoc list of xeno strategic points: xeno_strategic_points_by_hive["hivenum"]
xeno_tactical_points_by_hiveAssoc list of xeno tactical points: xeno_tactical_points_by_hive["hivenum"]

Procs

add_strategic_psy_pointsAdd amount of strategic psy points to the selected hive only if the gamemode support psypoints
add_tactical_psy_pointsAdd amount of tactical psy points to the selected hive only if the gamemode support psypoints
prepare_supply_packs_listPrepare the global supply pack list at the gamemode start
+

Var Details

shoppinglist + + + + +

+

Assoc list of item ready to be sent, categorised by faction

supply_points + + + + +

+

Assoc list of supply points

xeno_strategic_points_by_hive + + + + +

+

Assoc list of xeno strategic points: xeno_strategic_points_by_hive["hivenum"]

xeno_tactical_points_by_hive + + + + +

+

Assoc list of xeno tactical points: xeno_tactical_points_by_hive["hivenum"]

Proc Details

add_strategic_psy_points +

+

Add amount of strategic psy points to the selected hive only if the gamemode support psypoints

add_tactical_psy_points +

+

Add amount of tactical psy points to the selected hive only if the gamemode support psypoints

prepare_supply_packs_list +

+

Prepare the global supply pack list at the gamemode start

+ + + diff --git a/datum/controller/subsystem/processing/dcs.html b/datum/controller/subsystem/processing/dcs.html new file mode 100644 index 0000000000000..0380365e93aeb --- /dev/null +++ b/datum/controller/subsystem/processing/dcs.html @@ -0,0 +1,41 @@ + + + + + + + /datum/controller/subsystem/processing/dcs - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

dcs + + + +

+ + +

Procs

GetIdFromArgumentsGenerates an id for bespoke elements when given the argument list +Generating the id here is a bit complex because we need to support named arguments +Named arguments can appear in any order and we need them to appear after ordered arguments +We assume that no one will pass in a named argument with a value of null

Proc Details

GetIdFromArguments +

+

Generates an id for bespoke elements when given the argument list +Generating the id here is a bit complex because we need to support named arguments +Named arguments can appear in any order and we need them to appear after ordered arguments +We assume that no one will pass in a named argument with a value of null

+ + + diff --git a/datum/controller/subsystem/processing/instruments.html b/datum/controller/subsystem/processing/instruments.html new file mode 100644 index 0000000000000..16366b2c95f05 --- /dev/null +++ b/datum/controller/subsystem/processing/instruments.html @@ -0,0 +1,85 @@ + + + + + + + /datum/controller/subsystem/processing/instruments - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

instruments + + + +

+ + + + + + + + + +

Vars

current_instrument_channelsCurrent number of channels allocated for instruments
instrument_dataList of all instrument data, associative id = datum
max_instrument_channelsMaximum instrument channels total instruments are allowed to use. This is so you don't have instruments deadlocking all sound channels.
musician_hearcheck_mindelayDeciseconds between hearchecks. Too high and instruments seem to lag when people are moving around in terms of who can hear it. Too low and the server lags from this.
musician_maxlinecharsMax characters per line in songs
musician_maxlinesMax lines in songs
songsList of all song datums.
synthesizer_instrument_idsSingle cached list for synthesizer instrument ids, so you don't have to have a new list with every synthesizer.
+

Var Details

current_instrument_channels + + + + +

+

Current number of channels allocated for instruments

instrument_data + + + + +

+

List of all instrument data, associative id = datum

max_instrument_channels + + + + +

+

Maximum instrument channels total instruments are allowed to use. This is so you don't have instruments deadlocking all sound channels.

musician_hearcheck_mindelay + + + + +

+

Deciseconds between hearchecks. Too high and instruments seem to lag when people are moving around in terms of who can hear it. Too low and the server lags from this.

musician_maxlinechars + + + + +

+

Max characters per line in songs

musician_maxlines + + + + +

+

Max lines in songs

songs + + + + +

+

List of all song datums.

synthesizer_instrument_ids + + + + +

+

Single cached list for synthesizer instrument ids, so you don't have to have a new list with every synthesizer.

+ + + diff --git a/datum/controller/subsystem/resinshaping.html b/datum/controller/subsystem/resinshaping.html new file mode 100644 index 0000000000000..0403bbb6afa16 --- /dev/null +++ b/datum/controller/subsystem/resinshaping.html @@ -0,0 +1,43 @@ + + + + + + + /datum/controller/subsystem/resinshaping - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

resinshaping + + + +

+ + + +

Vars

activeWhether or not quickbuild is enabled. Set to FALSE when the game starts.
quickbuild_points_by_hiveCounter for quickbuild points, as long as this is above 0 building is instant.
+

Var Details

active + + + + +

+

Whether or not quickbuild is enabled. Set to FALSE when the game starts.

quickbuild_points_by_hive + + + + +

+

Counter for quickbuild points, as long as this is above 0 building is instant.

+ + + diff --git a/datum/controller/subsystem/shuttle.html b/datum/controller/subsystem/shuttle.html new file mode 100644 index 0000000000000..572e309d383f9 --- /dev/null +++ b/datum/controller/subsystem/shuttle.html @@ -0,0 +1,89 @@ + + + + + + + /datum/controller/subsystem/shuttle - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

shuttle + + + +

+ + + + + + + +

Vars

assoc_mobileFor ID generation
assoc_stationaryFor ID generation
loading_shuttlesafety to stop shuttles loading over each other

Procs

moveShuttleQuickToDockSkip the transit to directly go to the destination. This is not instantaneous +shuttleId : Id of the shuttle to move +dockId : Id of the destination dockId
moveShuttleToDockMove the shuttle to it's destination. If called normally, the shuttle will spool engines, then go to transit, then do its prearrival, then land on destination dock +shuttleId : Id of the shuttle to move +obj/docking_port/stationary/D : Reference of the destination dock +timed: If FALSE, the shuttle will instantanly move to the destination dock
moveShuttleToTransitGenerate a transit and set it as a destination. The shuttle will stay in that transit until it is called again +Because it uses standard shuttle code, the shuttle will do this : +Originport -> transit -> arrived to destination(will actually not move from transit, because destiantion = the transit) +shuttleId : Id of the shuttle to move +timed : If FALSE, the shuttle will instantly move to its destination
+

Var Details

assoc_mobile + + + + +

+

For ID generation

assoc_stationary + + + + +

+

For ID generation

loading_shuttle + + + + +

+

safety to stop shuttles loading over each other

Proc Details

moveShuttleQuickToDock +

+

Skip the transit to directly go to the destination. This is not instantaneous +shuttleId : Id of the shuttle to move +dockId : Id of the destination dockId

moveShuttleToDock +

+

Move the shuttle to it's destination. If called normally, the shuttle will spool engines, then go to transit, then do its prearrival, then land on destination dock +shuttleId : Id of the shuttle to move +obj/docking_port/stationary/D : Reference of the destination dock +timed: If FALSE, the shuttle will instantanly move to the destination dock

moveShuttleToTransit +

+

Generate a transit and set it as a destination. The shuttle will stay in that transit until it is called again +Because it uses standard shuttle code, the shuttle will do this : +Originport -> transit -> arrived to destination(will actually not move from transit, because destiantion = the transit) +shuttleId : Id of the shuttle to move +timed : If FALSE, the shuttle will instantly move to its destination

+ + + diff --git a/datum/controller/subsystem/silo.html b/datum/controller/subsystem/silo.html new file mode 100644 index 0000000000000..72ce6715530a4 --- /dev/null +++ b/datum/controller/subsystem/silo.html @@ -0,0 +1,43 @@ + + + + + + + /datum/controller/subsystem/silo - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

silo + + + +

+ + + +

Vars

current_larva_spawn_rateHow many larva points are added every minutes in total

Procs

start_spawningActivate the subsystem when shutters open and remove the free spawning when marines are joining
+

Var Details

current_larva_spawn_rate + + + + +

+

How many larva points are added every minutes in total

Proc Details

start_spawning +

+

Activate the subsystem when shutters open and remove the free spawning when marines are joining

+ + + diff --git a/datum/controller/subsystem/sounds.html b/datum/controller/subsystem/sounds.html new file mode 100644 index 0000000000000..043c106c41dee --- /dev/null +++ b/datum/controller/subsystem/sounds.html @@ -0,0 +1,148 @@ + + + + + + + /datum/controller/subsystem/sounds - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

sounds + + + +

+ + + + + + + + + + + + + + + + + + +

Vars

channel_listList of all channels as numbers
channel_random_lowlower iteration position - Incremented and looped to get "random" sound channels for normal sounds. The channel at this index is returned when asking for a random channel.
channel_reserve_highhigher reserve position - decremented and incremented to reserve sound channels, anything above this is reserved. The channel at this index is the highest unreserved channel.
random_channels_minAmount of channels to reserve for random usage rather than reservations being allowed to reserve all channels. Also a nice safeguard for when someone screws up.
reserved_channelsAssociative list of all reserved channels associated to their position. "[channel_number]" = index as number
using_channelsAssoc list, "[channel]" = either the datum using it or TRUE for an unsafe-reserved (datumless reservation) channel
using_channels_by_datumAssoc list datum = list(channel1, channel2, ...) for what channels something reserved.

Procs

available_channels_leftHow many channels we have left.
free_channelFrees a channel and updates the datastructure. Private proc.
free_datum_channelsFrees all the channels a datum is using.
free_datumless_channelsFrees all datumless channels
free_sound_channelRemoves a channel from using list.
random_available_channelRandom available channel, returns number
random_available_channel_textRandom available channel, returns text.
reserve_channelReserves a channel and updates the datastructure. Private proc.
reserve_sound_channelReserves a channel for a datum. Automatic cleanup only when the datum is deleted. Returns an integer for channel.
reserve_sound_channel_datumlessNO AUTOMATIC CLEANUP - If you use this, you better manually free it later! Returns an integer for channel.
+

Var Details

channel_list + + + + +

+

List of all channels as numbers

channel_random_low + + + + +

+

lower iteration position - Incremented and looped to get "random" sound channels for normal sounds. The channel at this index is returned when asking for a random channel.

channel_reserve_high + + + + +

+

higher reserve position - decremented and incremented to reserve sound channels, anything above this is reserved. The channel at this index is the highest unreserved channel.

random_channels_min + + + + +

+

Amount of channels to reserve for random usage rather than reservations being allowed to reserve all channels. Also a nice safeguard for when someone screws up.

reserved_channels + + + + +

+

Associative list of all reserved channels associated to their position. "[channel_number]" = index as number

using_channels + + + + +

+

Assoc list, "[channel]" = either the datum using it or TRUE for an unsafe-reserved (datumless reservation) channel

using_channels_by_datum + + + + +

+

Assoc list datum = list(channel1, channel2, ...) for what channels something reserved.

Proc Details

available_channels_left +

+

How many channels we have left.

free_channel +

+

Frees a channel and updates the datastructure. Private proc.

free_datum_channels +

+

Frees all the channels a datum is using.

free_datumless_channels +

+

Frees all datumless channels

free_sound_channel +

+

Removes a channel from using list.

random_available_channel +

+

Random available channel, returns number

random_available_channel_text +

+

Random available channel, returns text.

reserve_channel +

+

Reserves a channel and updates the datastructure. Private proc.

reserve_sound_channel +

+

Reserves a channel for a datum. Automatic cleanup only when the datum is deleted. Returns an integer for channel.

reserve_sound_channel_datumless +

+

NO AUTOMATIC CLEANUP - If you use this, you better manually free it later! Returns an integer for channel.

+ + + diff --git a/datum/controller/subsystem/spatial_grid.html b/datum/controller/subsystem/spatial_grid.html new file mode 100644 index 0000000000000..46f70a5ae1d6e --- /dev/null +++ b/datum/controller/subsystem/spatial_grid.html @@ -0,0 +1,194 @@ + + + + + + + /datum/controller/subsystem/spatial_grid - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

spatial_grid + + + +

+ + + + + + + + + + + + + + + + + + + + +

Vars

dummy_listempty spatial grid cell content lists are just a reference to this instead of a standalone list to save memory without needed to check if its null when iterating
grids_by_z_levellist of the spatial_grid_cell datums per z level, arranged in the order of y index then x index
number_of_oranges_earshow many pregenerated /mob/oranges_ear instances currently exist. this should hopefully never exceed its starting value
pregenerated_oranges_earslist of all of /mob/oranges_ear instances we have pregenerated for view() iteration speedup
waiting_to_add_by_typeeverything that spawns before us is added to this list until we initialize

Procs

after_world_bounds_expandedthe next unallocated /mob/oranges_ear that we try to allocate to assigned_atom's turf +the next atom in atoms_that_need_ears an ear assigned to it +the turf loc of the current assigned_atom. turfs are used to track oranges_ears already assigned to one location so we dont allocate more than one +because allocating more than one oranges_ear to a given loc wastes view iterations +adds cells to the grid for every z level when world.maxx or world.maxy is expanded after this subsystem is initialized. hopefully this is never needed. +because i never tested this.
assign_oranges_earsallocate one /mob/oranges_ear mob per turf containing atoms_that_need_ears and give them a reference to every listed atom in their turf. +if an oranges_ear is allocated to a turf that already has an oranges_ear then the second one fails to allocate (and gives the existing one the atom it was assigned to)
enter_cellfind the spatial map cell that target belongs to, then add target's important_recusive_contents to it. +make sure to provide the turf new_target is "in"
enter_pre_init_queueadd a movable to the pre init queue for whichever type is specified so that when the subsystem initializes they get added to the grid
exit_cellfind the spatial map cell that target used to belong to, then subtract target's important_recusive_contents from it. +make sure to provide the turf old_target used to be "in"
find_hanging_cell_refs_for_movableif shit goes south, this will find hanging references for qdeleting movables inside the spatial grid
force_remove_from_cellfind the cell this movable is associated with and removes it from all lists
get_cell_ofget the grid cell encomapassing targets coordinates
get_cells_in_rangeget all grid cells intersecting the bounding box around center with sides of length 2 * range
orthogonal_range_searchhttps://en.wikipedia.org/wiki/Range_searching#Orthogonal_range_searching
pregenerate_more_oranges_earscreates number_to_generate new oranges_ear's and adds them to the subsystems list of ears. +i really fucking hope this never gets called after init :clueless:
propogate_spatial_grid_to_new_zcreates the spatial grid for a new z level
queued_item_deletedif a movable is inside our pre init queue before we're initialized and it gets deleted we need to remove that reference with this proc
remove_from_pre_init_queueremoves an initialized and probably deleted movable from our pre init queue before we're initialized
+

Var Details

dummy_list + + + + +

+

empty spatial grid cell content lists are just a reference to this instead of a standalone list to save memory without needed to check if its null when iterating

grids_by_z_level + + + + +

+

list of the spatial_grid_cell datums per z level, arranged in the order of y index then x index

number_of_oranges_ears + + + + +

+

how many pregenerated /mob/oranges_ear instances currently exist. this should hopefully never exceed its starting value

pregenerated_oranges_ears + + + + +

+

list of all of /mob/oranges_ear instances we have pregenerated for view() iteration speedup

waiting_to_add_by_type + + + + +

+

everything that spawns before us is added to this list until we initialize

Proc Details

after_world_bounds_expanded +

+

the next unallocated /mob/oranges_ear that we try to allocate to assigned_atom's turf +the next atom in atoms_that_need_ears an ear assigned to it +the turf loc of the current assigned_atom. turfs are used to track oranges_ears already assigned to one location so we dont allocate more than one +because allocating more than one oranges_ear to a given loc wastes view iterations +adds cells to the grid for every z level when world.maxx or world.maxy is expanded after this subsystem is initialized. hopefully this is never needed. +because i never tested this.

assign_oranges_ears +

+

allocate one /mob/oranges_ear mob per turf containing atoms_that_need_ears and give them a reference to every listed atom in their turf. +if an oranges_ear is allocated to a turf that already has an oranges_ear then the second one fails to allocate (and gives the existing one the atom it was assigned to)

enter_cell +

+

find the spatial map cell that target belongs to, then add target's important_recusive_contents to it. +make sure to provide the turf new_target is "in"

enter_pre_init_queue +

+

add a movable to the pre init queue for whichever type is specified so that when the subsystem initializes they get added to the grid

exit_cell +

+

find the spatial map cell that target used to belong to, then subtract target's important_recusive_contents from it. +make sure to provide the turf old_target used to be "in"

+

find_hanging_cell_refs_for_movable +

+

if shit goes south, this will find hanging references for qdeleting movables inside the spatial grid

force_remove_from_cell +

+

find the cell this movable is associated with and removes it from all lists

get_cell_of +

+

get the grid cell encomapassing targets coordinates

get_cells_in_range +

+

get all grid cells intersecting the bounding box around center with sides of length 2 * range

+

https://en.wikipedia.org/wiki/Range_searching#Orthogonal_range_searching

+

searches through the grid cells intersecting a rectangular search space (with sides of length 2 * range) then returns all contents of type inside them. +much faster than iterating through view() to find all of what you want.

+

this does NOT return things only in range distance from center! the search space is a square not a circle, if you want only things in a certain distance +then you need to filter that yourself

+

pregenerate_more_oranges_ears +

+

creates number_to_generate new oranges_ear's and adds them to the subsystems list of ears. +i really fucking hope this never gets called after init :clueless:

propogate_spatial_grid_to_new_z +

+

creates the spatial grid for a new z level

queued_item_deleted +

+

if a movable is inside our pre init queue before we're initialized and it gets deleted we need to remove that reference with this proc

remove_from_pre_init_queue +

+

removes an initialized and probably deleted movable from our pre init queue before we're initialized

+ + + diff --git a/datum/controller/subsystem/spawning.html b/datum/controller/subsystem/spawning.html new file mode 100644 index 0000000000000..d7e232f1b3a15 --- /dev/null +++ b/datum/controller/subsystem/spawning.html @@ -0,0 +1,111 @@ + + + + + + + /datum/controller/subsystem/spawning - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

spawning + + + +

+ + + + + + + + + + +

Vars

death_callbacks_by_mobAssoc list mob = removalcb
mobcapMaximum amount of spawnable mobs
spawnerdataAssoc list of spawners and their assosicated data
totalspawnedtotal number of spawned mobs

Procs

decrement_spawnedmobsRemoves a mob from a spawners mobs spawned list +Arguments:
registerspawnerRegisters an atom with the subsystem +Arguments:
remove_mobEssentially a wrapper for accessing a dying/delting mobs callback to remove it
reset_aiAdmin proc to unregister and reregister AI node spawners for example for varedits on WO
unregisterspawnerUnregisters an atom with the subsystem +Arguments:
+

Var Details

death_callbacks_by_mob + + + + +

+

Assoc list mob = removalcb

mobcap + + + + +

+

Maximum amount of spawnable mobs

spawnerdata + + + + +

+

Assoc list of spawners and their assosicated data

totalspawned + + + + +

+

total number of spawned mobs

Proc Details

decrement_spawnedmobs +

+

Removes a mob from a spawners mobs spawned list +Arguments:

+

registerspawner +

+

Registers an atom with the subsystem +Arguments:

+

remove_mob +

+

Essentially a wrapper for accessing a dying/delting mobs callback to remove it

reset_ai +

+

Admin proc to unregister and reregister AI node spawners for example for varedits on WO

unregisterspawner +

+

Unregisters an atom with the subsystem +Arguments:

+
+ + + diff --git a/datum/controller/subsystem/speech_controller.html b/datum/controller/subsystem/speech_controller.html new file mode 100644 index 0000000000000..43b41af8f40b4 --- /dev/null +++ b/datum/controller/subsystem/speech_controller.html @@ -0,0 +1,62 @@ + + + + + + + /datum/controller/subsystem/speech_controller - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

speech_controller + + + +

+ + + + + +

Vars

FOR_ADMINS_IF_BROKE_immediately_execute_all_speechused so that an admin can force all speech verbs to execute immediately instead of queueing
queued_says_to_executelist of the form: list(client mob, message that mob is queued to say, other say arguments (if any)). +this is our process queue, processed every tick.

Procs

process_single_say
queue_say_for_mobqueues mob_to_queue into our process list so they say(message) near the start of the next tick
+

Var Details

FOR_ADMINS_IF_BROKE_immediately_execute_all_speech + + + + +

+

used so that an admin can force all speech verbs to execute immediately instead of queueing

queued_says_to_execute + + + + +

+

list of the form: list(client mob, message that mob is queued to say, other say arguments (if any)). +this is our process queue, processed every tick.

Proc Details

process_single_say +

+
cache for sanic speed (lists are references anyways)
+
+

used in fire() to process a single mobs message through the relevant proc. +only exists so that sleeps in the message pipeline dont cause the whole queue to wait

queue_say_for_mob +

+

queues mob_to_queue into our process list so they say(message) near the start of the next tick

+ + + diff --git a/datum/controller/subsystem/statpanels.html b/datum/controller/subsystem/statpanels.html new file mode 100644 index 0000000000000..55ecc6db1a938 --- /dev/null +++ b/datum/controller/subsystem/statpanels.html @@ -0,0 +1,80 @@ + + + + + + + /datum/controller/subsystem/statpanels - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

statpanels + + + +

+ + + + + + + + +

Vars

default_waithow many subsystem fires between most tab updates
mc_waithow many subsystem fires between updates of the MC tab
num_fireshow many full runs this subsystem has completed. used for variable rate refreshes.
status_waithow many subsystem fires between updates of the status tab

Procs

immediate_send_stat_dataimmediately update the active statpanel tab of the target client
refresh_client_obj_viewSet the atoms we're meant to display
return_object_imagesReturns all our ready object tab images +Returns a list in the form list(list(object_name, object_ref, loaded_image), ...)
+

Var Details

default_wait + + + + +

+

how many subsystem fires between most tab updates

mc_wait + + + + +

+

how many subsystem fires between updates of the MC tab

num_fires + + + + +

+

how many full runs this subsystem has completed. used for variable rate refreshes.

status_wait + + + + +

+

how many subsystem fires between updates of the status tab

Proc Details

immediate_send_stat_data +

+

immediately update the active statpanel tab of the target client

refresh_client_obj_view +

+

Set the atoms we're meant to display

return_object_images +

+

Returns all our ready object tab images +Returns a list in the form list(list(object_name, object_ref, loaded_image), ...)

+ + + diff --git a/datum/controller/subsystem/tgui.html b/datum/controller/subsystem/tgui.html new file mode 100644 index 0000000000000..d1f4d2851a824 --- /dev/null +++ b/datum/controller/subsystem/tgui.html @@ -0,0 +1,195 @@ + + + + + + + /datum/controller/subsystem/tgui - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

tgui + + + +

+ + + + + + + + + + + + + + + + + + +

Vars

all_uisA list of all open UIs
basehtmlThe HTML base used for all UIs.
current_runA list of UIs scheduled to process

Procs

close_all_uispublic
close_uispublic
close_user_uispublic
force_close_all_windowspublic
force_close_windowpublic
get_open_uipublic
on_closeprivate
on_logoutprivate
on_openprivate
on_transferprivate
request_pooled_windowpublic
try_update_uipublic
update_uispublic
update_user_uispublic
+

Var Details

all_uis + + + + +

+

A list of all open UIs

basehtml + + + + +

+

The HTML base used for all UIs.

current_run + + + + +

+

A list of UIs scheduled to process

Proc Details

close_all_uis +

+

public

+

Close all UIs regardless of their attachment to src_object.

+

return int The number of UIs closed.

close_uis +

+

public

+

Close all UIs attached to src_object.

+

required src_object datum The object/datum which owns the UIs.

+

return int The number of UIs closed.

close_user_uis +

+

public

+

Close all UIs belonging to a user.

+

required user mob The mob who opened/is using the UI. +optional src_object datum If provided, only close UIs belonging this src_object.

+

return int The number of UIs closed.

force_close_all_windows +

+

public

+

Force closes all tgui windows.

+

required user mob

force_close_window +

+

public

+

Force closes the tgui window by window_id.

+

required user mob +required window_id string

get_open_ui +

+

public

+

Get a open UI given a user and src_object.

+

required user mob The mob who opened/is using the UI. +required src_object datum The object/datum which owns the UI.

+

return datum/tgui The found UI.

on_close +

+

private

+

Remove a UI from the list of open UIs.

+

required ui datum/tgui The UI to be removed.

+

return bool If the UI was removed or not.

on_logout +

+

private

+

Handle client logout, by closing all their UIs.

+

required user mob The mob which logged out.

+

return int The number of UIs closed.

on_open +

+

private

+

Add a UI to the list of open UIs.

+

required ui datum/tgui The UI to be added.

on_transfer +

+

private

+

Handle clients switching mobs, by transferring their UIs.

+

required user source The client's original mob. +required user target The client's new mob.

+

return bool If the UIs were transferred.

request_pooled_window +

+

public

+

Requests a usable tgui window from the pool. +Returns null if pool was exhausted.

+

required user mob +return datum/tgui

try_update_ui +

+

public

+

Try to find an instance of a UI, and push an update to it.

+

required user mob The mob who opened/is using the UI. +required src_object datum The object/datum which owns the UI. +optional ui datum/tgui The UI to be updated, if it exists. +optional force_open bool If the UI should be re-opened instead of updated.

+

return datum/tgui The found UI.

update_uis +

+

public

+

Update all UIs attached to src_object.

+

required src_object datum The object/datum which owns the UIs.

+

return int The number of UIs updated.

update_user_uis +

+

public

+

Update all UIs belonging to a user.

+

required user mob The mob who opened/is using the UI. +optional src_object datum If provided, only update UIs belonging this src_object.

+

return int The number of UIs updated.

+ + + diff --git a/datum/controller/subsystem/ticker.html b/datum/controller/subsystem/ticker.html new file mode 100644 index 0000000000000..6e7c678be9f9f --- /dev/null +++ b/datum/controller/subsystem/ticker.html @@ -0,0 +1,73 @@ + + + + + + + /datum/controller/subsystem/ticker - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

ticker + + + +

+ + + + + + + +

Vars

login_musicmusic that is played in pre game lobby
round_end_soundmusic/jingle played when the world reboots
round_end_sound_sentIf all clients have loaded the round end sound

Procs

SetRoundEndSoundloads the sound file into rsc for the users
choose_lobby_songreturns the string address of a random config lobby song
choose_round_end_songThe reference to the end of round sound that we have chosen. +picks a round end sound and returns it
+

Var Details

login_music + + + + +

+

music that is played in pre game lobby

round_end_sound + + + + +

+

music/jingle played when the world reboots

round_end_sound_sent + + + + +

+

If all clients have loaded the round end sound

Proc Details

SetRoundEndSound +

+

loads the sound file into rsc for the users

choose_lobby_song +

+

returns the string address of a random config lobby song

choose_round_end_song +

+

The reference to the end of round sound that we have chosen. +picks a round end sound and returns it

+ + + diff --git a/datum/controller/subsystem/timer.html b/datum/controller/subsystem/timer.html new file mode 100644 index 0000000000000..279859924bc81 --- /dev/null +++ b/datum/controller/subsystem/timer.html @@ -0,0 +1,141 @@ + + + + + + + /datum/controller/subsystem/timer - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

timer + + + +

+ + + + + + + + + + + + + + + + + +

Vars

bucket_auto_resetBoolean operator controlling if the timer SS will automatically reset buckets if it fails to invoke callbacks for an extended period of time
bucket_countHow many timers are in the buckets
bucket_listList of buckets, each bucket holds every timer that has to run that byond tick
bucket_reset_countHow many times bucket was reset
bucket_resolutionworld.tick_lag the bucket was designed for
clienttime_timersSpecial timers that run in real-time, not BYOND time; these are more expensive to run and maintain
hashesA hashlist dictionary used for storing unique timers
head_offsetworld.time of the first entry in the bucket list, effectively the 'start time' of the current buckets
last_invoke_tickContains the last time that a timer's callback was invoked, or the last tick the SS fired if no timers are being processed
last_invoke_warningContains the last time that a warning was issued for not invoking callbacks
next_clienttime_timer_indexKeeps track of the next index to work on for client timers
practical_offsetIndex of the wrap around pivot for buckets. buckets before this are later running buckets wrapped around from the end of the bucket list.
second_queueQueue used for storing timers that do not fit into the current buckets
timer_id_dictList of all active timers associated to their timer ID (for easy lookup)

Procs

get_timer_debug_stringGenerates a string with details about the timed event for debugging purposes
reset_bucketsDestroys the existing buckets and creates new buckets from the existing timed events
+

Var Details

bucket_auto_reset + + + + +

+

Boolean operator controlling if the timer SS will automatically reset buckets if it fails to invoke callbacks for an extended period of time

bucket_count + + + + +

+

How many timers are in the buckets

bucket_list + + + + +

+

List of buckets, each bucket holds every timer that has to run that byond tick

bucket_reset_count + + + + +

+

How many times bucket was reset

bucket_resolution + + + + +

+

world.tick_lag the bucket was designed for

clienttime_timers + + + + +

+

Special timers that run in real-time, not BYOND time; these are more expensive to run and maintain

hashes + + + + +

+

A hashlist dictionary used for storing unique timers

head_offset + + + + +

+

world.time of the first entry in the bucket list, effectively the 'start time' of the current buckets

last_invoke_tick + + + + +

+

Contains the last time that a timer's callback was invoked, or the last tick the SS fired if no timers are being processed

last_invoke_warning + + + + +

+

Contains the last time that a warning was issued for not invoking callbacks

next_clienttime_timer_index + + + + +

+

Keeps track of the next index to work on for client timers

practical_offset + + + + +

+

Index of the wrap around pivot for buckets. buckets before this are later running buckets wrapped around from the end of the bucket list.

second_queue + + + + +

+

Queue used for storing timers that do not fit into the current buckets

timer_id_dict + + + + +

+

List of all active timers associated to their timer ID (for easy lookup)

Proc Details

get_timer_debug_string +

+

Generates a string with details about the timed event for debugging purposes

reset_buckets +

+

Destroys the existing buckets and creates new buckets from the existing timed events

+ + + diff --git a/datum/controller/subsystem/tts.html b/datum/controller/subsystem/tts.html new file mode 100644 index 0000000000000..bd49be7c29973 --- /dev/null +++ b/datum/controller/subsystem/tts.html @@ -0,0 +1,119 @@ + + + + + + + /datum/controller/subsystem/tts - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

tts + + + +

+ + + + + + + + + + + + + +

Vars

available_speakersA list of available speakers, which are string identifiers of the TTS voices that can be used to generate TTS messages.
average_tts_messages_timeUsed to calculate the average time it takes for a tts message to be received from the http server +For tts messages which time out, it won't keep tracking the tts message and will just assume that the message took +7 seconds (or whatever the value of message_timeout is) to receive back a response.
current_processing_http_messagesHTTP requests that are being processed to see if they've been finished
current_processing_tts_messagesTTS audio files that are being processed on when to be played.
in_process_http_messagesHTTP requests currently in progress but not being processed yet
max_concurrent_requestsThe max concurrent http requests that can be made at one time. Used to prevent 1 server from overloading the tts server
message_timeoutTTS messages won't play if requests took longer than this duration of time.
pitch_enabledWhether the TTS engine supports pitch adjustment or not.
queued_http_messagesQueued HTTP requests that have yet to be sent. TTS requests are handled as lists rather than datums.
queued_tts_messagesAn associative list of mobs mapped to a list of their own /datum/tts_request_target
tts_enabledWhether TTS is enabled or not

Procs

establish_connection_to_ttsEstablishes (or re-establishes) a connection to the TTS server and updates the list of available speakers. +This is blocking, so be careful when calling.
+

Var Details

available_speakers + + + + +

+

A list of available speakers, which are string identifiers of the TTS voices that can be used to generate TTS messages.

average_tts_messages_time + + + + +

+

Used to calculate the average time it takes for a tts message to be received from the http server +For tts messages which time out, it won't keep tracking the tts message and will just assume that the message took +7 seconds (or whatever the value of message_timeout is) to receive back a response.

current_processing_http_messages + + + + +

+

HTTP requests that are being processed to see if they've been finished

current_processing_tts_messages + + + + +

+

TTS audio files that are being processed on when to be played.

in_process_http_messages + + + + +

+

HTTP requests currently in progress but not being processed yet

max_concurrent_requests + + + + +

+

The max concurrent http requests that can be made at one time. Used to prevent 1 server from overloading the tts server

message_timeout + + + + +

+

TTS messages won't play if requests took longer than this duration of time.

pitch_enabled + + + + +

+

Whether the TTS engine supports pitch adjustment or not.

queued_http_messages + + + + +

+

Queued HTTP requests that have yet to be sent. TTS requests are handled as lists rather than datums.

queued_tts_messages + + + + +

+

An associative list of mobs mapped to a list of their own /datum/tts_request_target

tts_enabled + + + + +

+

Whether TTS is enabled or not

Proc Details

establish_connection_to_tts +

+

Establishes (or re-establishes) a connection to the TTS server and updates the list of available speakers. +This is blocking, so be careful when calling.

+ + + diff --git a/datum/controller/subsystem/tutorials.html b/datum/controller/subsystem/tutorials.html new file mode 100644 index 0000000000000..36381013d705e --- /dev/null +++ b/datum/controller/subsystem/tutorials.html @@ -0,0 +1,49 @@ + + + + + + + /datum/controller/subsystem/tutorials - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

tutorials + + + +

+ + + +

Vars

tutorial_managersA mapping of /datum/tutorial type to their manager singleton. +You probably shouldn't be indexing this directly.

Procs

suggest_tutorialWill suggest the passed tutorial type to the user. +Will check that they should actually see it, e.g. hasn't completed it yet, etc. +Then, calls /datum/tutorial/subtype/perform with the extra arguments passed in.
+

Var Details

tutorial_managers + + + + +

+

A mapping of /datum/tutorial type to their manager singleton. +You probably shouldn't be indexing this directly.

Proc Details

suggest_tutorial +

+

Will suggest the passed tutorial type to the user. +Will check that they should actually see it, e.g. hasn't completed it yet, etc. +Then, calls /datum/tutorial/subtype/perform with the extra arguments passed in.

+ + + diff --git a/datum/controller/subsystem/vote.html b/datum/controller/subsystem/vote.html new file mode 100644 index 0000000000000..7428d045f4570 --- /dev/null +++ b/datum/controller/subsystem/vote.html @@ -0,0 +1,183 @@ + + + + + + + /datum/controller/subsystem/vote - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

vote + + + +

+ + + + + + + + + + + + + + + + + + + + + + + +

Vars

choicesAvailable choices in the vote
choices_by_ckeyWhat choices each player took, if any
forced_popupPop up this vote screen on everyone's screen?
initiatorWho started the vote
modeOn what subject the vote is about
multiple_voteIs multiple vote allowed for that mode
questionThe question that will be asked
shipmap_timer_idThe timer id of the shipmap vote
shuffle_cacheShuffle vote choices per ckey cache
shuffle_choicesShuffle vote choices separately for each client? (topvoting NPC mitigation)
started_timeWhen the vote was started
time_remainingHow long till the vote is resolved
vote_happeningIf a vote is currently taking place
votedWho already voted
votingWho can vote

Procs

announce_resultAnnounce the votes tally to everyone
automatic_voteStarts the automatic map vote at the end of each round
get_resultTally the results and give the winner
initiate_voteStart the vote, and prepare the choices to send to everyone
resetStop the current vote and reset everything
resultApply the result of the vote if it's possible
submit_voteRegister the vote of one player
+

Var Details

choices + + + + +

+

Available choices in the vote

choices_by_ckey + + + + +

+

What choices each player took, if any

forced_popup + + + + +

+

Pop up this vote screen on everyone's screen?

initiator + + + + +

+

Who started the vote

mode + + + + +

+

On what subject the vote is about

multiple_vote + + + + +

+

Is multiple vote allowed for that mode

question + + + + +

+

The question that will be asked

shipmap_timer_id + + + + +

+

The timer id of the shipmap vote

shuffle_cache + + + + +

+

Shuffle vote choices per ckey cache

shuffle_choices + + + + +

+

Shuffle vote choices separately for each client? (topvoting NPC mitigation)

started_time + + + + +

+

When the vote was started

time_remaining + + + + +

+

How long till the vote is resolved

vote_happening + + + + +

+

If a vote is currently taking place

voted + + + + +

+

Who already voted

voting + + + + +

+

Who can vote

Proc Details

announce_result +

+

Announce the votes tally to everyone

automatic_vote +

+

Starts the automatic map vote at the end of each round

get_result +

+

Tally the results and give the winner

initiate_vote +

+

Start the vote, and prepare the choices to send to everyone

reset +

+

Stop the current vote and reset everything

result +

+

Apply the result of the vote if it's possible

submit_vote +

+

Register the vote of one player

+ + + diff --git a/datum/controller/subsystem/weather.html b/datum/controller/subsystem/weather.html new file mode 100644 index 0000000000000..fbcd86ddecdb7 --- /dev/null +++ b/datum/controller/subsystem/weather.html @@ -0,0 +1,35 @@ + + + + + + + /datum/controller/subsystem/weather - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

weather + + + +

+ + +

Procs

load_late_zLoads weather for a particular z-level, used for late loading

Proc Details

load_late_z +

+

Loads weather for a particular z-level, used for late loading

+ + + diff --git a/datum/controller/subsystem/weeds.html b/datum/controller/subsystem/weeds.html new file mode 100644 index 0000000000000..82776df0cd284 --- /dev/null +++ b/datum/controller/subsystem/weeds.html @@ -0,0 +1,36 @@ + + + + + + + /datum/controller/subsystem/weeds - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

weeds + + + +

+ + +

Vars

spawn_attempts_by_nodeHow many time each turf will check if it is weedable.
+

Var Details

spawn_attempts_by_node + + + + +

+

How many time each turf will check if it is weedable.

+ + + diff --git a/datum/controller/subsystem/weeds_decay.html b/datum/controller/subsystem/weeds_decay.html new file mode 100644 index 0000000000000..e25232d1e8f36 --- /dev/null +++ b/datum/controller/subsystem/weeds_decay.html @@ -0,0 +1,36 @@ + + + + + + + /datum/controller/subsystem/weeds_decay - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

weeds_decay + + + +

+ + +

Vars

decaying_listList of decaying weeds on the map
+

Var Details

decaying_list + + + + +

+

List of decaying weeds on the map

+ + + diff --git a/datum/crafting_recipe.html b/datum/crafting_recipe.html new file mode 100644 index 0000000000000..1f7a269756032 --- /dev/null +++ b/datum/crafting_recipe.html @@ -0,0 +1,196 @@ + + + + + + + /datum/crafting_recipe - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

crafting_recipe + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + +

Vars

blacklisttype paths of items explicitly not allowed as an ingredient
categorywhere it shows up in the crafting UI
chem_catalystslike tool_behaviors but for reagents
crafting_flagscrafting_flags var to hold bool values
delete_contentsWhether we should delete the contents of the crafted storage item (Only works with storage items, used for ammo boxes, donut boxes, internals boxes, etc)
descdescription displayed in game +Optional, if not set uses result desc
machineryRequired machines for the craft, set the assigned value of the typepath to CRAFTING_MACHINERY_CONSUME or CRAFTING_MACHINERY_USE. Lazy associative list: type_path key -> flag value.
namein-game display name +Optional, if not set uses result name
non_craftableWhether the result can be crafted with a crafting menu button
partstype paths of items that will be forceMoved() into the result, or added to the reagents of it
placement_checksBitflag of additional placement checks required to place. (STACK_CHECK_CARDINALS|STACK_CHECK_ADJACENT|STACK_CHECK_TRAM_FORBIDDEN|STACK_CHECK_TRAM_EXCLUSIVE)
reactionChemical reaction described in the recipe
reqstype paths of items consumed associated with how many are needed
resulttype path of item resulting from this craft
result_amountResulting amount (for stacks only)
skill_reqwhether only people with sufficient construction skill can build this.
stepsSteps needed to achieve the result
structuresRequired structures for the craft, set the assigned value of the typepath to CRAFTING_STRUCTURE_CONSUME or CRAFTING_STRUCTURE_USE. Lazy associative list: type_path key -> flag value.
timetime in seconds. Remember to use the SECONDS define!
tool_behaviorsString defines of items needed but not consumed. Lazy list.
tool_pathsType paths of items needed but not consumed. Lazy list.

Procs

check_requirementsRun custom pre-craft checks for this recipe, don't add feedback messages in this because it will spam the client
crafting_ui_dataAdditional UI data to be passed to the crafting UI for this recipe
+

Var Details

blacklist + + + + +

+

type paths of items explicitly not allowed as an ingredient

category + + + + +

+

where it shows up in the crafting UI

chem_catalysts + + + + +

+

like tool_behaviors but for reagents

crafting_flags + + + + +

+

crafting_flags var to hold bool values

delete_contents + + + + +

+

Whether we should delete the contents of the crafted storage item (Only works with storage items, used for ammo boxes, donut boxes, internals boxes, etc)

desc + + + + +

+

description displayed in game +Optional, if not set uses result desc

machinery + + + + +

+

Required machines for the craft, set the assigned value of the typepath to CRAFTING_MACHINERY_CONSUME or CRAFTING_MACHINERY_USE. Lazy associative list: type_path key -> flag value.

name + + + + +

+

in-game display name +Optional, if not set uses result name

non_craftable + + + + +

+

Whether the result can be crafted with a crafting menu button

parts + + + + +

+

type paths of items that will be forceMoved() into the result, or added to the reagents of it

placement_checks + + + + +

+

Bitflag of additional placement checks required to place. (STACK_CHECK_CARDINALS|STACK_CHECK_ADJACENT|STACK_CHECK_TRAM_FORBIDDEN|STACK_CHECK_TRAM_EXCLUSIVE)

reaction + + + + +

+

Chemical reaction described in the recipe

reqs + + + + +

+

type paths of items consumed associated with how many are needed

result + + + + +

+

type path of item resulting from this craft

result_amount + + + + +

+

Resulting amount (for stacks only)

skill_req + + + + +

+

whether only people with sufficient construction skill can build this.

steps + + + + +

+

Steps needed to achieve the result

structures + + + + +

+

Required structures for the craft, set the assigned value of the typepath to CRAFTING_STRUCTURE_CONSUME or CRAFTING_STRUCTURE_USE. Lazy associative list: type_path key -> flag value.

time + + + + +

+

time in seconds. Remember to use the SECONDS define!

tool_behaviors + + + + +

+

String defines of items needed but not consumed. Lazy list.

tool_paths + + + + +

+

Type paths of items needed but not consumed. Lazy list.

Proc Details

check_requirements +

+

Run custom pre-craft checks for this recipe, don't add feedback messages in this because it will spam the client

+

user: The /mob that initiated the crafting +collected_requirements: A list of lists of /obj/item instances that satisfy reqs. Top level list is keyed by requirement path.

crafting_ui_data +

+

Additional UI data to be passed to the crafting UI for this recipe

+ + + diff --git a/datum/custom_emote.html b/datum/custom_emote.html new file mode 100644 index 0000000000000..86cdbe8b471f0 --- /dev/null +++ b/datum/custom_emote.html @@ -0,0 +1,64 @@ + + + + + + + /datum/custom_emote - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

custom_emote + + + +

+ + + + + + +

Vars

cooldownCooldown between two use of that emote. Every emote has its own coodldown
idAn id to be able to distinguish emotes
messageMessage displayed when emote is used
spoken_emoteIf this custom emote is a say or a me

Procs

run_custom_emoteRun the custome emote
+

Var Details

cooldown + + + + +

+

Cooldown between two use of that emote. Every emote has its own coodldown

id + + + + +

+

An id to be able to distinguish emotes

message + + + + +

+

Message displayed when emote is used

spoken_emote + + + + +

+

If this custom emote is a say or a me

Proc Details

run_custom_emote +

+

Run the custome emote

+ + + diff --git a/datum/datacore.html b/datum/datacore.html new file mode 100644 index 0000000000000..28b4adfff9874 --- /dev/null +++ b/datum/datacore.html @@ -0,0 +1,35 @@ + + + + + + + /datum/datacore - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

datacore + + + +

+ + +

Procs

get_xeno_manifestGathers the information necessary to display the hive's leader/queen status to lobby.

Proc Details

get_xeno_manifest +

+

Gathers the information necessary to display the hive's leader/queen status to lobby.

+ + + diff --git a/datum/dynamic_light_source.html b/datum/dynamic_light_source.html new file mode 100644 index 0000000000000..8bf699a37d3a7 --- /dev/null +++ b/datum/dynamic_light_source.html @@ -0,0 +1,120 @@ + + + + + + + /datum/dynamic_light_source - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

dynamic_light_source + + + +

+ + + + + + + + + + + + + + +

Vars

appliedWhether we have applied our light yet or not.
cached_locour last loc
contained_atomThe atom that the source atom is contained inside
light_colorThe colour of the light, string, decomposed by PARSE_LIGHT_COLOR()
light_powerIntensity of the emitter light.
light_rangeThe range of the emitted light.
mask_holderreference to the mask holder effect
mask_typetypepath for the mask type we are using
our_maskreference to the mask contained within the mask_holder objects vis_contents
pixel_turfthe turf the contained atom appears to be covering
source_atomsource atom that we belong to

Procs

find_containing_atomUpdates containing atom
set_lightUpdate light if changed.
+

Var Details

applied + + + + +

+

Whether we have applied our light yet or not.

cached_loc + + + + +

+

our last loc

contained_atom + + + + +

+

The atom that the source atom is contained inside

light_color + + + + +

+

The colour of the light, string, decomposed by PARSE_LIGHT_COLOR()

light_power + + + + +

+

Intensity of the emitter light.

light_range + + + + +

+

The range of the emitted light.

mask_holder + + + + +

+

reference to the mask holder effect

mask_type + + + + +

+

typepath for the mask type we are using

our_mask + + + + +

+

reference to the mask contained within the mask_holder objects vis_contents

pixel_turf + + + + +

+

the turf the contained atom appears to be covering

source_atom + + + + +

+

source atom that we belong to

Proc Details

find_containing_atom +

+

Updates containing atom

set_light +

+

Update light if changed.

+ + + diff --git a/datum/effect_system.html b/datum/effect_system.html new file mode 100644 index 0000000000000..de56811df3232 --- /dev/null +++ b/datum/effect_system.html @@ -0,0 +1,50 @@ + + + + + + + /datum/effect_system - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

effect_system + + + +

+ + + + +

Vars

holderWeakref to our holder
locationWeakref to our location

Procs

get_holderGetter proc for the holder. Use this instead of directly doing holder.resolve()
+

Var Details

holder + + + + +

+

Weakref to our holder

location + + + + +

+

Weakref to our location

Proc Details

get_holder +

+

Getter proc for the holder. Use this instead of directly doing holder.resolve()

+ + + diff --git a/datum/effect_system/foam_spread.html b/datum/effect_system/foam_spread.html new file mode 100644 index 0000000000000..fcb5a37862543 --- /dev/null +++ b/datum/effect_system/foam_spread.html @@ -0,0 +1,57 @@ + + + + + + + /datum/effect_system/foam_spread - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

foam_spread + + + +

+ + + + + +

Vars

carried_reagentsthe IDs of reagents present when the foam was mixed
carrying_reagentsHolder that holds the chems the foam will have
foam_flagsFlags for the foam.
spread_amountThe size of the foam spread
+

Var Details

carried_reagents + + + + +

+

the IDs of reagents present when the foam was mixed

carrying_reagents + + + + +

+

Holder that holds the chems the foam will have

foam_flags + + + + +

+

Flags for the foam.

spread_amount + + + + +

+

The size of the foam spread

+ + + diff --git a/datum/effect_system/smoke_spread.html b/datum/effect_system/smoke_spread.html new file mode 100644 index 0000000000000..296fb8a9dd139 --- /dev/null +++ b/datum/effect_system/smoke_spread.html @@ -0,0 +1,50 @@ + + + + + + + /datum/effect_system/smoke_spread - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

smoke_spread + + + +

+ + + + +

Vars

lifetimeSmoke duration in 2 sec ticks
rangeSmoke range
smoke_typeType of smoke
+

Var Details

lifetime + + + + +

+

Smoke duration in 2 sec ticks

range + + + + +

+

Smoke range

smoke_type + + + + +

+

Type of smoke

+ + + diff --git a/datum/effect_system/smoke_spread/chem.html b/datum/effect_system/smoke_spread/chem.html new file mode 100644 index 0000000000000..bfed192fe9682 --- /dev/null +++ b/datum/effect_system/smoke_spread/chem.html @@ -0,0 +1,36 @@ + + + + + + + /datum/effect_system/smoke_spread/chem - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

chem + + + +

+ + +

Vars

chemholderThe holder for this reagent
+

Var Details

chemholder + + + + +

+

The holder for this reagent

+ + + diff --git a/datum/effect_system/trail/steam_trail_follow.html b/datum/effect_system/trail/steam_trail_follow.html new file mode 100644 index 0000000000000..e6ff62402f35c --- /dev/null +++ b/datum/effect_system/trail/steam_trail_follow.html @@ -0,0 +1,35 @@ + + + + + + + /datum/effect_system/trail/steam_trail_follow - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

steam_trail_follow + + + +

+ + +

Procs

spawn_particleAttach a steam trail to an object (eg. a reacting beaker) that will follow it

Proc Details

spawn_particle +

+

Attach a steam trail to an object (eg. a reacting beaker) that will follow it

+ + + diff --git a/datum/element.html b/datum/element.html new file mode 100644 index 0000000000000..65a17a05d0477 --- /dev/null +++ b/datum/element.html @@ -0,0 +1,77 @@ + + + + + + + /datum/element - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

element + + + +

+ +

A holder for simple behaviour that can be attached to many different types

+

Only one element of each type is instanced during game init. +Otherwise acts basically like a lightweight component.

+ + + + + +

Vars

argument_hash_start_idxThe index of the first attach argument to consider for duplicate elements
element_flagsOption flags for element behaviour

Procs

AttachActivates the functionality defined by the element on the given target datum
DetachDeactivates the functionality defines by the element on the given datum
on_client_changeTriggered when a client enters/gets admin-dragged into a mob. Necesarry since keybindings are done using individual client preferences.
on_keybinding_changeChecks all actions on the mob to see if they match the keybind_signal and updates the trigger key.
+

Var Details

argument_hash_start_idx + + + + +

+

The index of the first attach argument to consider for duplicate elements

+

All arguments from this index onwards (1 based) are hashed into the key to determine +if this is a new unique element or one already exists

+

Is only used when flags contains ELEMENT_BESPOKE

+

This is infinity so you must explicitly set this

element_flags + + + + +

+

Option flags for element behaviour

Proc Details

Attach +

+

Activates the functionality defined by the element on the given target datum

Detach +

+

Deactivates the functionality defines by the element on the given datum

on_client_change +

+

Triggered when a client enters/gets admin-dragged into a mob. Necesarry since keybindings are done using individual client preferences.

on_keybinding_change +

+

Checks all actions on the mob to see if they match the keybind_signal and updates the trigger key.

+ + + diff --git a/datum/element/attachment.html b/datum/element/attachment.html new file mode 100644 index 0000000000000..0b7e49ee285a1 --- /dev/null +++ b/datum/element/attachment.html @@ -0,0 +1,43 @@ + + + + + + + /datum/element/attachment - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

attachment + + + +

+ + + +

Vars

attachment_dataAssoc list of the data required for attaching. It does not change and should not be edited anywhere but here.

Procs

on_attachingFills list_to_fill with attachment_data
+

Var Details

attachment_data + + + + +

+

Assoc list of the data required for attaching. It does not change and should not be edited anywhere but here.

Proc Details

on_attaching +

+

Fills list_to_fill with attachment_data

+ + + diff --git a/datum/element/connect_loc.html b/datum/element/connect_loc.html new file mode 100644 index 0000000000000..98f70a74211e7 --- /dev/null +++ b/datum/element/connect_loc.html @@ -0,0 +1,37 @@ + + + + + + + /datum/element/connect_loc - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

connect_loc + + + +

+ +

This element hooks a signal onto the loc the current object is on. +When the object moves, it will unhook the signal and rehook it to the new object.

+

Vars

connectionsAn assoc list of signal -> procpath to register to the loc this object is on.
+

Var Details

connections + + + + +

+

An assoc list of signal -> procpath to register to the loc this object is on.

+ + + diff --git a/datum/element/debris.html b/datum/element/debris.html new file mode 100644 index 0000000000000..da754cb6b160d --- /dev/null +++ b/datum/element/debris.html @@ -0,0 +1,57 @@ + + + + + + + /datum/element/debris - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

debris + + + +

+ + + + + +

Vars

debrisIcon state of debris when impacted by a projectile
debris_amountAmount of debris particles
debris_scaleScale of particle debris
debris_velocityVelocity of debris particles
+

Var Details

debris + + + + +

+

Icon state of debris when impacted by a projectile

debris_amount + + + + +

+

Amount of debris particles

debris_scale + + + + +

+

Scale of particle debris

debris_velocity + + + + +

+

Velocity of debris particles

+ + + diff --git a/datum/element/directional_attack.html b/datum/element/directional_attack.html new file mode 100644 index 0000000000000..10b797dde1a60 --- /dev/null +++ b/datum/element/directional_attack.html @@ -0,0 +1,44 @@ + + + + + + + /datum/element/directional_attack - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

directional_attack + + + +

+ + +

Procs

on_ranged_attackThis proc handles clicks on tiles that aren't adjacent to the source mob +In addition to clicking the distant tile, it checks the tile in the direction and clicks the mob in the tile if there is one +Arguments:

Proc Details

on_ranged_attack +

+

This proc handles clicks on tiles that aren't adjacent to the source mob +In addition to clicking the distant tile, it checks the tile in the direction and clicks the mob in the tile if there is one +Arguments:

+
+ + + diff --git a/datum/element/footstep.html b/datum/element/footstep.html new file mode 100644 index 0000000000000..35375ea223e37 --- /dev/null +++ b/datum/element/footstep.html @@ -0,0 +1,106 @@ + + + + + + + /datum/element/footstep - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

footstep + + + +

+ +

Footstep element. Plays footsteps at parents location when it is appropriate.

+ + + + + + + + + + +

Vars

e_rangee_range stands for extra range - aka how far the sound can be heard. This is added to the base value and ignored if there isn't a base value.
footstep_soundsThis can be a list OR a soundfile OR null. Determines whatever sound gets played.
footstep_typefootstep_type is a define which determines what kind of sounds should get chosen.
sound_varyWhether or not to add variation to the sounds played
steps_for_livingA list containing living mobs and the number of steps they have taken since the last time their footsteps were played.
volumevolume determines the extra volume of the footstep. This is multiplied by the base volume, should there be one.

Procs

humanstep_wrapperWrapper for movement triggered footsteps for human step
play_humanstepPlays footsteps for humans
play_simplestepPlays footsteps for anything that isn't human
prepare_stepPrepares a footstep for living mobs. Determines if it should get played. Returns the turf it should get played on. Note that it is always a /turf/open
simplestep_wrapperWrapper for movement triggered footsteps for simplestep
+

Var Details

e_range + + + + +

+

e_range stands for extra range - aka how far the sound can be heard. This is added to the base value and ignored if there isn't a base value.

footstep_sounds + + + + +

+

This can be a list OR a soundfile OR null. Determines whatever sound gets played.

footstep_type + + + + +

+

footstep_type is a define which determines what kind of sounds should get chosen.

sound_vary + + + + +

+

Whether or not to add variation to the sounds played

steps_for_living + + + + +

+

A list containing living mobs and the number of steps they have taken since the last time their footsteps were played.

volume + + + + +

+

volume determines the extra volume of the footstep. This is multiplied by the base volume, should there be one.

Proc Details

humanstep_wrapper +

+

Wrapper for movement triggered footsteps for human step

play_humanstep +

+

Plays footsteps for humans

play_simplestep +

+

Plays footsteps for anything that isn't human

prepare_step +

+

Prepares a footstep for living mobs. Determines if it should get played. Returns the turf it should get played on. Note that it is always a /turf/open

simplestep_wrapper +

+

Wrapper for movement triggered footsteps for simplestep

+ + + diff --git a/datum/element/gesture.html b/datum/element/gesture.html new file mode 100644 index 0000000000000..fa30e3d24f32e --- /dev/null +++ b/datum/element/gesture.html @@ -0,0 +1,35 @@ + + + + + + + /datum/element/gesture - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

gesture + + + +

+ + +

Procs

get_click_objectHandle weird clicks outside the map or on screen objects

Proc Details

get_click_object +

+

Handle weird clicks outside the map or on screen objects

+ + + diff --git a/datum/element/keybinding_update.html b/datum/element/keybinding_update.html new file mode 100644 index 0000000000000..62d096069cbab --- /dev/null +++ b/datum/element/keybinding_update.html @@ -0,0 +1,35 @@ + + + + + + + /datum/element/keybinding_update - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

keybinding_update + + + +

+ +

Updates a mob's action keybinding text that shows on its maptext

+

Procs

AttachActivates the functionality defined by the element on the given target datum

Proc Details

Attach +

+

Activates the functionality defined by the element on the given target datum

+ + + diff --git a/datum/element/light_blocking.html b/datum/element/light_blocking.html new file mode 100644 index 0000000000000..9d257f92e215f --- /dev/null +++ b/datum/element/light_blocking.html @@ -0,0 +1,37 @@ + + + + + + + /datum/element/light_blocking - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

light_blocking + + + +

+ +

Attached to movable atoms with opacity. Listens to them move and updates their old and new turf loc's opacity accordingly.

+

Procs

on_target_moveUpdates old and new turf loc opacities. +Updates old and new turf loc opacities.

Proc Details

on_target_move +

+

Updates old and new turf loc opacities. +Updates old and new turf loc opacities.

+ + + diff --git a/datum/element/limb_support.html b/datum/element/limb_support.html new file mode 100644 index 0000000000000..25543da2218a5 --- /dev/null +++ b/datum/element/limb_support.html @@ -0,0 +1,42 @@ + + + + + + + /datum/element/limb_support - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

limb_support + + + +

+ + + +

Procs

droppedstops stabilizing limbs when dropped
fuckibrokemylegstabilizes a limb when broken

Proc Details

dropped +

+

stops stabilizing limbs when dropped

fuckibrokemyleg +

+

stabilizes a limb when broken

+ + + diff --git a/datum/element/plasma_on_attack.html b/datum/element/plasma_on_attack.html new file mode 100644 index 0000000000000..5f6609c25b1c8 --- /dev/null +++ b/datum/element/plasma_on_attack.html @@ -0,0 +1,43 @@ + + + + + + + /datum/element/plasma_on_attack - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

plasma_on_attack + + + +

+ + + +

Vars

damage_plasma_multiplierthe multiplier of plasma won via causing damage to living things.

Procs

damage_dealtGives plasma when damage is caused on living mob.
+

Var Details

damage_plasma_multiplier + + + + +

+

the multiplier of plasma won via causing damage to living things.

Proc Details

damage_dealt +

+

Gives plasma when damage is caused on living mob.

+ + + diff --git a/datum/element/plasma_on_attacked.html b/datum/element/plasma_on_attacked.html new file mode 100644 index 0000000000000..6e1380ddfa8b6 --- /dev/null +++ b/datum/element/plasma_on_attacked.html @@ -0,0 +1,36 @@ + + + + + + + /datum/element/plasma_on_attacked - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

plasma_on_attacked + + + +

+ + +

Vars

damage_plasma_multiplierthe multiplier of plasma gained via receiving damage.
+

Var Details

damage_plasma_multiplier + + + + +

+

the multiplier of plasma gained via receiving damage.

+ + + diff --git a/datum/element/ridable.html b/datum/element/ridable.html new file mode 100644 index 0000000000000..36a6b194e7ac0 --- /dev/null +++ b/datum/element/ridable.html @@ -0,0 +1,61 @@ + + + + + + + /datum/element/ridable - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

ridable + + + +

+ +

This element is used to indicate that a movable atom can be mounted by mobs in order to ride it. The movable is considered mounted when a mob is buckled to it, +at which point a riding component is created on the movable, and that component handles the actual riding behavior.

+

Besides the target, the ridable element has one argument: the component subtype. This is not really ideal since there's ~20-30 component subtypes rather than +having the behavior defined on the ridable atoms themselves or some such, but because the old riding behavior was so horrifyingly spread out and redundant, +just having the variables, behavior, and procs be standardized is still a big improvement.

+ + + +

Vars

riding_component_typeThe specific riding component subtype we're loading our instructions from, don't leave this as default please!

Procs

check_mountingSomeone is buckling to this movable, which is literally the only thing we care about (other than speed potions)
equip_buckle_inhandsTry putting the appropriate number of riding offhand items into the target's hands, return FALSE if we can't
unequip_buckle_inhandsRemove all of the relevant riding offhand items from the target
+

Var Details

riding_component_type + + + + +

+

The specific riding component subtype we're loading our instructions from, don't leave this as default please!

Proc Details

check_mounting +

+

Someone is buckling to this movable, which is literally the only thing we care about (other than speed potions)

equip_buckle_inhands +

+

Try putting the appropriate number of riding offhand items into the target's hands, return FALSE if we can't

unequip_buckle_inhands +

+

Remove all of the relevant riding offhand items from the target

+ + + diff --git a/datum/element/shrapnel_removal.html b/datum/element/shrapnel_removal.html new file mode 100644 index 0000000000000..49b818adab8a8 --- /dev/null +++ b/datum/element/shrapnel_removal.html @@ -0,0 +1,50 @@ + + + + + + + /datum/element/shrapnel_removal - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

shrapnel_removal + + + +

+ + + + +

Vars

do_after_timeChannel time per shrap removal
fumble_durationFumble time for unskilled users

Procs

has_shrapnelreturns TRUE if the argument limb has any shrapnel in it
+

Var Details

do_after_time + + + + +

+

Channel time per shrap removal

fumble_duration + + + + +

+

Fumble time for unskilled users

Proc Details

has_shrapnel +

+

returns TRUE if the argument limb has any shrapnel in it

+ + + diff --git a/datum/element/special_clothing_overlay.html b/datum/element/special_clothing_overlay.html new file mode 100644 index 0000000000000..b23b0b59b11c9 --- /dev/null +++ b/datum/element/special_clothing_overlay.html @@ -0,0 +1,82 @@ + + + + + + + /datum/element/special_clothing_overlay - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

Special_clothing_overlay element + + + +

+ +

Handles special clothing overlays for humans that cannot use the standing overlays system +Example uses include the use of emissives and similar

+

primarily functions through child overrides to specify what should be applied when, +see the Attach and [/datum/element/special_clothing_overlay/proc/get_overlay_icon()] (get_overlay_icon) +procs for details

+ + + + + + +

Vars

overlay_to_applyThe image/icon/mutable_appearance we arre going to be applying to here
target_layerwhen this layer is updated on the wearer, overlay_to_apply will be applied/removed with it

Procs

add_as_overlaySignal handler for adding the overlay to the wearer
droppedSignal handler for when the owner is taken off
equippedCalled on owner equip, sets it up to update the wearers icon
get_overlay_iconFetches the special overlay we are going to be applying
remove_as_overlaySignal handler for removing the overlay from the wearer
+

Var Details

overlay_to_apply + + + + +

+

The image/icon/mutable_appearance we arre going to be applying to here

target_layer + + + + +

+

when this layer is updated on the wearer, overlay_to_apply will be applied/removed with it

Proc Details

add_as_overlay +

+

Signal handler for adding the overlay to the wearer

dropped +

+

Signal handler for when the owner is taken off

equipped +

+

Called on owner equip, sets it up to update the wearers icon

get_overlay_icon +

+

Fetches the special overlay we are going to be applying

remove_as_overlay +

+

Signal handler for removing the overlay from the wearer

+ + + diff --git a/datum/element/special_clothing_overlay/modular_helmet_visor.html b/datum/element/special_clothing_overlay/modular_helmet_visor.html new file mode 100644 index 0000000000000..2947f9d0fbb1a --- /dev/null +++ b/datum/element/special_clothing_overlay/modular_helmet_visor.html @@ -0,0 +1,43 @@ + + + + + + + /datum/element/special_clothing_overlay/modular_helmet_visor - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

modular_helmet_visor + + + +

+ +

Adds an emissive greyscale overlay to the wearer as the helmets visor

+ +

Vars

special_icongreyscale icon we fetch to make worn icon with
visor_icon_stateIcon_state to use for the emissive
+

Var Details

special_icon + + + + +

+

greyscale icon we fetch to make worn icon with

visor_icon_state + + + + +

+

Icon_state to use for the emissive

+ + + diff --git a/datum/element/strappable.html b/datum/element/strappable.html new file mode 100644 index 0000000000000..ecf13ce320448 --- /dev/null +++ b/datum/element/strappable.html @@ -0,0 +1,42 @@ + + + + + + + /datum/element/strappable - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

strappable + + + +

+ + + +

Procs

on_alt_clickToggles strap state
on_unequipUnstraps if the target is somehow forcefully unequipped

Proc Details

on_alt_click +

+

Toggles strap state

on_unequip +

+

Unstraps if the target is somehow forcefully unequipped

+ + + diff --git a/datum/element/strippable.html b/datum/element/strippable.html new file mode 100644 index 0000000000000..8ce1506ba47df --- /dev/null +++ b/datum/element/strippable.html @@ -0,0 +1,52 @@ + + + + + + + /datum/element/strippable - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

strippable + + + +

+ +

An element for atoms that, when dragged and dropped onto a mob, opens a strip panel.

+ + +

Vars

itemsAn assoc list of keys to /datum/strippable_item
layoutAn optional list of lists of strippable_item_layout to order the slots in. +Nested lists are used to indicate sections which will be spaced out in the interface.
strip_menusAn existing strip menus
+

Var Details

items + + + + +

+

An assoc list of keys to /datum/strippable_item

layout + + + + +

+

An optional list of lists of strippable_item_layout to order the slots in. +Nested lists are used to indicate sections which will be spaced out in the interface.

strip_menus + + + + +

+

An existing strip menus

+ + + diff --git a/datum/element/submerge.html b/datum/element/submerge.html new file mode 100644 index 0000000000000..3c6f78c62678c --- /dev/null +++ b/datum/element/submerge.html @@ -0,0 +1,42 @@ + + + + + + + /datum/element/submerge - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

submerge + + + +

+ + + +

Procs

atom_enteredApplies or modifies submerge effects on entering AMs
atom_exitedRemoves submerge effects if the new loc does not submerge the AM

Proc Details

atom_entered +

+

Applies or modifies submerge effects on entering AMs

atom_exited +

+

Removes submerge effects if the new loc does not submerge the AM

+ + + diff --git a/datum/element/undertile.html b/datum/element/undertile.html new file mode 100644 index 0000000000000..ed39b5c8cea16 --- /dev/null +++ b/datum/element/undertile.html @@ -0,0 +1,71 @@ + + + + + + + /datum/element/undertile - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

undertile + + + +

+ +

Add to an object if you want to be able to be hidden under tiles

+ + + + + +

Vars

invisibility_levellevel of invisibility applied when under a tile. Could be INVISIBILITY_OBSERVER if you still want it to be visible to ghosts
invisibility_traitthe invisiblity trait applied, like TRAIT_T_RAY_VISIBLE
tile_overlayan overlay for the tile if we wish to apply that
use_alphawhether we use alpha or not. TRUE uses ALPHA_UNDERTILE because otherwise we have 200 different instances of this element for different alphas
use_anchorWe will switch between anchored and unanchored. for stuff like satchels that shouldnt be pullable under tiles but are otherwise unanchored

Procs

hidecalled when a tile has been covered or uncovered
+

Var Details

invisibility_level + + + + +

+

level of invisibility applied when under a tile. Could be INVISIBILITY_OBSERVER if you still want it to be visible to ghosts

invisibility_trait + + + + +

+

the invisiblity trait applied, like TRAIT_T_RAY_VISIBLE

tile_overlay + + + + +

+

an overlay for the tile if we wish to apply that

use_alpha + + + + +

+

whether we use alpha or not. TRUE uses ALPHA_UNDERTILE because otherwise we have 200 different instances of this element for different alphas

use_anchor + + + + +

+

We will switch between anchored and unanchored. for stuff like satchels that shouldnt be pullable under tiles but are otherwise unanchored

Proc Details

hide +

+

called when a tile has been covered or uncovered

+ + + diff --git a/datum/element/wall_speedup.html b/datum/element/wall_speedup.html new file mode 100644 index 0000000000000..342b1b5c96949 --- /dev/null +++ b/datum/element/wall_speedup.html @@ -0,0 +1,50 @@ + + + + + + + /datum/element/wall_speedup - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

wall_speedup + + + +

+ +

This element makes you move faster when opposite adjacent turfs are closed, you get a flat movement speed bonus

+ + +

Vars

halfdirsHalf of all directions
wall_speed_amountThe amount of speed gained by being inbetween walls

Procs

wall_speedHere we check to see if polar opposite directions are closed turfs, if they are then we move faster
+

Var Details

halfdirs + + + + +

+

Half of all directions

wall_speed_amount + + + + +

+

The amount of speed gained by being inbetween walls

Proc Details

wall_speed +

+

Here we check to see if polar opposite directions are closed turfs, if they are then we move faster

+ + + diff --git a/datum/emergency_call.html b/datum/emergency_call.html new file mode 100644 index 0000000000000..c402acef391a7 --- /dev/null +++ b/datum/emergency_call.html @@ -0,0 +1,60 @@ + + + + + + + /datum/emergency_call - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

emergency_call + + + +

+ + + + +

Vars

alignement_factorHow the current_weight change with the monitor state. A big positive number will make the current weight go down drasticly when marines are winning +A small negative number will make the current weight get smaller when xenos are winning. +All effects are symetric (if it goes down when marine are winning, it will go up when xeno are winning) +if the alignement_factor factor is 0, it will proc a specific case
base_probabilityThe base probability of that ERT spawning, it is changing with monitor state

Procs

get_actualised_weightReturn a new current_weight using the base probability, the Alignement factor of the ERT and the monitor state +monitor_state : the normalised state of the monitor. If it's equal to -1, monitor is barely in its MARINE_LOSING state. +A +2.5 value mean we are beyond the XENO_DELAYING state, aka marines have crushed the xenos
+

Var Details

alignement_factor + + + + +

+

How the current_weight change with the monitor state. A big positive number will make the current weight go down drasticly when marines are winning +A small negative number will make the current weight get smaller when xenos are winning. +All effects are symetric (if it goes down when marine are winning, it will go up when xeno are winning) +if the alignement_factor factor is 0, it will proc a specific case

base_probability + + + + +

+

The base probability of that ERT spawning, it is changing with monitor state

Proc Details

get_actualised_weight +

+

Return a new current_weight using the base probability, the Alignement factor of the ERT and the monitor state +monitor_state : the normalised state of the monitor. If it's equal to -1, monitor is barely in its MARINE_LOSING state. +A +2.5 value mean we are beyond the XENO_DELAYING state, aka marines have crushed the xenos

+ + + diff --git a/datum/emergency_call/clf.html b/datum/emergency_call/clf.html new file mode 100644 index 0000000000000..e348f0317ddbf --- /dev/null +++ b/datum/emergency_call/clf.html @@ -0,0 +1,36 @@ + + + + + + + /datum/emergency_call/clf - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

clf + + + +

+ + +

Vars

max_specialistsnumber of available special weapon dudes
+

Var Details

max_specialists + + + + +

+

number of available special weapon dudes

+ + + diff --git a/datum/emergency_call/freelancers.html b/datum/emergency_call/freelancers.html new file mode 100644 index 0000000000000..94067a72298a9 --- /dev/null +++ b/datum/emergency_call/freelancers.html @@ -0,0 +1,43 @@ + + + + + + + /datum/emergency_call/freelancers - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

freelancers + + + +

+ + + +

Vars

grenadiersNumber of current Grenadiers in this squad.
max_grenadiersMax amount of Grenadiers allowed in this squad.
+

Var Details

grenadiers + + + + +

+

Number of current Grenadiers in this squad.

max_grenadiers + + + + +

+

Max amount of Grenadiers allowed in this squad.

+ + + diff --git a/datum/emergency_call/sectoid.html b/datum/emergency_call/sectoid.html new file mode 100644 index 0000000000000..80c5e71d236dd --- /dev/null +++ b/datum/emergency_call/sectoid.html @@ -0,0 +1,36 @@ + + + + + + + /datum/emergency_call/sectoid - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

sectoid + + + +

+ + +

Vars

max_psionicsMax amount of psionics allowed in this squad.
+

Var Details

max_psionics + + + + +

+

Max amount of psionics allowed in this squad.

+ + + diff --git a/datum/emergency_call/som.html b/datum/emergency_call/som.html new file mode 100644 index 0000000000000..a1532a4178d24 --- /dev/null +++ b/datum/emergency_call/som.html @@ -0,0 +1,36 @@ + + + + + + + /datum/emergency_call/som - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

som + + + +

+ + +

Vars

max_specialistsnumber of available special weapon dudes
+

Var Details

max_specialists + + + + +

+

number of available special weapon dudes

+ + + diff --git a/datum/emergency_call/som_breachers.html b/datum/emergency_call/som_breachers.html new file mode 100644 index 0000000000000..bcc0ec82ebf56 --- /dev/null +++ b/datum/emergency_call/som_breachers.html @@ -0,0 +1,36 @@ + + + + + + + /datum/emergency_call/som_breachers - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

som_breachers + + + +

+ + +

Vars

max_specialistsnumber of available special weapon dudes
+

Var Details

max_specialists + + + + +

+

number of available special weapon dudes

+ + + diff --git a/datum/emergency_call/special_forces.html b/datum/emergency_call/special_forces.html new file mode 100644 index 0000000000000..546c9fbcd710b --- /dev/null +++ b/datum/emergency_call/special_forces.html @@ -0,0 +1,36 @@ + + + + + + + /datum/emergency_call/special_forces - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

special_forces + + + +

+ + +

Vars

max_specialistsnumber of available special weapon dudes
+

Var Details

max_specialists + + + + +

+

number of available special weapon dudes

+ + + diff --git a/datum/emote.html b/datum/emote.html new file mode 100644 index 0000000000000..ecef0c3c14d9e --- /dev/null +++ b/datum/emote.html @@ -0,0 +1,43 @@ + + + + + + + /datum/emote - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

emote + + + +

+ + + +

Vars

cooldownCooldown between two uses of that emote. Every emote has its own coodldown

Procs

check_cooldownFor handling emote cooldown, return true to allow the emote to happen
+

Var Details

cooldown + + + + +

+

Cooldown between two uses of that emote. Every emote has its own coodldown

Proc Details

check_cooldown +

+

For handling emote cooldown, return true to allow the emote to happen

+ + + diff --git a/datum/evolution_panel.html b/datum/evolution_panel.html new file mode 100644 index 0000000000000..c218703f61111 --- /dev/null +++ b/datum/evolution_panel.html @@ -0,0 +1,63 @@ + + + + + + + /datum/evolution_panel - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

evolution_panel + + + +

+ +

Empty datum parent for use as evolution panel entrance.

+ + + + +

Procs

ui_actHandles actuually evolving
ui_dataSome data to update the UI with the current evolution status
ui_interactControls the evolution UI
ui_stateChecks for xeno access and prevents unconscious / dead xenos from interacting.
ui_static_dataStatic data provided once when the ui is opened

Proc Details

ui_act +

+

Handles actuually evolving

ui_data +

+

Some data to update the UI with the current evolution status

ui_interact +

+

Controls the evolution UI

ui_state +

+

Checks for xeno access and prevents unconscious / dead xenos from interacting.

ui_static_data +

+

Static data provided once when the ui is opened

+ + + diff --git a/datum/excavation_rewards.html b/datum/excavation_rewards.html new file mode 100644 index 0000000000000..cdd28bc2844ad --- /dev/null +++ b/datum/excavation_rewards.html @@ -0,0 +1,64 @@ + + + + + + + /datum/excavation_rewards - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

excavation_rewards + + + +

+ +

Excavation rewards buckets

+ + + + +

Vars

map_iconMinimaps icon name of the excavation site
rewardsList of rewards for the excavation
rewards_maxMax amount of rewards
rewards_minMin amount of rewards

Procs

drop_rewardsGenerate rewards
+

Var Details

map_icon + + + + +

+

Minimaps icon name of the excavation site

rewards + + + + +

+

List of rewards for the excavation

rewards_max + + + + +

+

Max amount of rewards

rewards_min + + + + +

+

Min amount of rewards

Proc Details

drop_rewards +

+

Generate rewards

+ + + diff --git a/datum/export_report.html b/datum/export_report.html new file mode 100644 index 0000000000000..558376e569f6e --- /dev/null +++ b/datum/export_report.html @@ -0,0 +1,50 @@ + + + + + + + /datum/export_report - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

export_report + + + +

+ + + + +

Vars

export_nameName of the item exported
factionWhat faction did the export
pointsHow many points from that export
+

Var Details

export_name + + + + +

+

Name of the item exported

faction + + + + +

+

What faction did the export

points + + + + +

+

How many points from that export

+ + + diff --git a/datum/faction_stats.html b/datum/faction_stats.html new file mode 100644 index 0000000000000..d5290b1b804d7 --- /dev/null +++ b/datum/faction_stats.html @@ -0,0 +1,267 @@ + + + + + + + /datum/faction_stats - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

faction_stats + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

accumulated_mission_rewardrecords how much currency has been earned from missions, for late join players
active_attrition_pointsHow many attrition points have been dedicated to the current mission
attrition_gain_multiplierMultiplier on the passive attrition point gain for this faction
available_missionsFuture missions this faction can currently choose from
factionThe faction associated with these stats
faction_assetsList of all assets the faction currently has
faction_leaderThe decision maker for this leader
faction_portraitPortrait used for general screen text notifications
finished_missionsMissions this faction has succesfully completed
individual_stat_listlist of individual stats by ckey
loss_bonuscumulative loss bonus which is applied to attrition gain mult and player credit mission reward
purchasable_assetsList of all assets the faction can currently purchase
respawn_delay_modifierFaction-wide modifier to respawn delay
stats_flagsAny special behavior flags for the faction
total_attrition_pointsDictates how many respawns this faction has access to overall
victory_pointsVictory points earned by this faction

Procs

add_assetAdds a new asset to the faction for use
add_new_missionAdds a mission to the available mission pool
apply_cashapplies cash rewards to the faction and all individuals
choose_faction_leaderElects a new faction leader
force_update_static_dataforce updates static data when something changes externally
generate_new_missionRandomly adds a new mission to the available pool
get_player_statsReturns a users individual stat datum, generating a new one if required
get_selectorReturns the faction's leader, selecting one if none is available
get_status_tab_itemsGenerates status tab info for the mission
is_leadership_roleChecks if a mob is in a command role for this faction
mission_endhandles post mission wrap up for the faction
mission_starthandles mission start updates
register_faction_memberSets up newly spawned players with the campaign status verb
remove_assetRemoves an asset from a faction entirely
respawn_memberDeletes a faction member and preps them for respawn
return_to_baseReturns faction members back to spawn or prepares them for respawn if deployed
set_attritionSets attrition for the team
set_faction_leaderSets the faction leader
+

Var Details

accumulated_mission_reward + + + + +

+

records how much currency has been earned from missions, for late join players

active_attrition_points + + + + +

+

How many attrition points have been dedicated to the current mission

attrition_gain_multiplier + + + + +

+

Multiplier on the passive attrition point gain for this faction

available_missions + + + + +

+

Future missions this faction can currently choose from

faction + + + + +

+

The faction associated with these stats

faction_assets + + + + +

+

List of all assets the faction currently has

faction_leader + + + + +

+

The decision maker for this leader

faction_portrait + + + + +

+

Portrait used for general screen text notifications

finished_missions + + + + +

+

Missions this faction has succesfully completed

individual_stat_list + + + + +

+

list of individual stats by ckey

loss_bonus + + + + +

+

cumulative loss bonus which is applied to attrition gain mult and player credit mission reward

purchasable_assets + + + + +

+

List of all assets the faction can currently purchase

respawn_delay_modifier + + + + +

+

Faction-wide modifier to respawn delay

stats_flags + + + + +

+

Any special behavior flags for the faction

total_attrition_points + + + + +

+

Dictates how many respawns this faction has access to overall

victory_points + + + + +

+

Victory points earned by this faction

Proc Details

add_asset +

+

Adds a new asset to the faction for use

add_new_mission +

+

Adds a mission to the available mission pool

apply_cash +

+

applies cash rewards to the faction and all individuals

choose_faction_leader +

+

Elects a new faction leader

force_update_static_data +

+

force updates static data when something changes externally

generate_new_mission +

+

Randomly adds a new mission to the available pool

get_player_stats +

+

Returns a users individual stat datum, generating a new one if required

get_selector +

+

Returns the faction's leader, selecting one if none is available

get_status_tab_items +

+

Generates status tab info for the mission

is_leadership_role +

+

Checks if a mob is in a command role for this faction

mission_end +

+

handles post mission wrap up for the faction

mission_start +

+

handles mission start updates

register_faction_member +

+

Sets up newly spawned players with the campaign status verb

remove_asset +

+

Removes an asset from a faction entirely

respawn_member +

+

Deletes a faction member and preps them for respawn

return_to_base +

+

Returns faction members back to spawn or prepares them for respawn if deployed

set_attrition +

+

Sets attrition for the team

set_faction_leader +

+

Sets the faction leader

+ + + diff --git a/datum/fire_support.html b/datum/fire_support.html new file mode 100644 index 0000000000000..61da7773d3a76 --- /dev/null +++ b/datum/fire_support.html @@ -0,0 +1,190 @@ + + + + + + + /datum/fire_support - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

fire_support + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + +

Vars

cooldown_durationHow frequently this canbe used
cooldown_timerHolder for the cooldown timer
delay_to_impactDelay between initiation and impact
fire_support_flagsSpecial behavior flags
fire_support_typedefine name of the firesupport, used for assoc
icon_stateicon_state for radial menu
impact_quantityHow many impacts per use
initiate_chat_messageChat message when initiating fire support
initiate_screen_messagescreentext message when initiating fire support
initiate_soundInitiating sound effect
initiate_titleScreentext message title
nameFire support name
portrait_typePortrait used for screentext message
scatter_rangeHow far the fire support can land from the target turf
start_soundsound when impact starts
start_visualvisual when impact starts
usesNumber of uses available. Negative for no limit

Procs

disableDisables the firesupport entirely
do_impactThe actual impact of the fire support
enable_firesupportEnables the firesupport option
initiate_fire_supportInitiates fire support proc chain
select_targetSelects the final target turf(s) and calls impact procs
start_fire_supportActually begins the fire support attack
+

Var Details

cooldown_duration + + + + +

+

How frequently this canbe used

cooldown_timer + + + + +

+

Holder for the cooldown timer

delay_to_impact + + + + +

+

Delay between initiation and impact

fire_support_flags + + + + +

+

Special behavior flags

fire_support_type + + + + +

+

define name of the firesupport, used for assoc

icon_state + + + + +

+

icon_state for radial menu

impact_quantity + + + + +

+

How many impacts per use

initiate_chat_message + + + + +

+

Chat message when initiating fire support

initiate_screen_message + + + + +

+

screentext message when initiating fire support

initiate_sound + + + + +

+

Initiating sound effect

initiate_title + + + + +

+

Screentext message title

name + + + + +

+

Fire support name

portrait_type + + + + +

+

Portrait used for screentext message

scatter_range + + + + +

+

How far the fire support can land from the target turf

start_sound + + + + +

+

sound when impact starts

start_visual + + + + +

+

visual when impact starts

uses + + + + +

+

Number of uses available. Negative for no limit

Proc Details

disable +

+

Disables the firesupport entirely

do_impact +

+

The actual impact of the fire support

enable_firesupport +

+

Enables the firesupport option

initiate_fire_support +

+

Initiates fire support proc chain

select_target +

+

Selects the final target turf(s) and calls impact procs

start_fire_support +

+

Actually begins the fire support attack

+ + + diff --git a/datum/fire_support/droppod.html b/datum/fire_support/droppod.html new file mode 100644 index 0000000000000..c088fd646fe0e --- /dev/null +++ b/datum/fire_support/droppod.html @@ -0,0 +1,50 @@ + + + + + + + /datum/fire_support/droppod - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

droppod + + + +

+ + + + +

Vars

pod_typeThe special pod type for this fire support mode

Procs

disable_podsDisabled the datum from use
enable_podsEnabled the datum for use
+

Var Details

pod_type + + + + +

+

The special pod type for this fire support mode

Proc Details

disable_pods +

+

Disabled the datum from use

enable_pods +

+

Enabled the datum for use

+ + + diff --git a/datum/fire_support/gau.html b/datum/fire_support/gau.html new file mode 100644 index 0000000000000..40a5974eea58f --- /dev/null +++ b/datum/fire_support/gau.html @@ -0,0 +1,35 @@ + + + + + + + /datum/fire_support/gau - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

gau + + + +

+ + +

Procs

strafe_turfsTakes the top 3 turfs and miniguns them, then repeats until none left

Proc Details

strafe_turfs +

+

Takes the top 3 turfs and miniguns them, then repeats until none left

+ + + diff --git a/datum/fire_support/laser.html b/datum/fire_support/laser.html new file mode 100644 index 0000000000000..ab8b165606041 --- /dev/null +++ b/datum/fire_support/laser.html @@ -0,0 +1,35 @@ + + + + + + + /datum/fire_support/laser - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

laser + + + +

+ + +

Procs

strafe_turfslases each turf in the line one by one

Proc Details

strafe_turfs +

+

lases each turf in the line one by one

+ + + diff --git a/datum/fire_support/mortar/smoke.html b/datum/fire_support/mortar/smoke.html new file mode 100644 index 0000000000000..f06bae7d50d3c --- /dev/null +++ b/datum/fire_support/mortar/smoke.html @@ -0,0 +1,50 @@ + + + + + + + /datum/fire_support/mortar/smoke - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

smoke + + + +

+ + + + +

Vars

smoke_durationThe duration of the smoke
smokeradiusradius this smoke grenade will encompass
smoketypesmoke type created when the grenade is primed
+

Var Details

smoke_duration + + + + +

+

The duration of the smoke

smokeradius + + + + +

+

radius this smoke grenade will encompass

smoketype + + + + +

+

smoke type created when the grenade is primed

+ + + diff --git a/datum/fire_support/rad_missile.html b/datum/fire_support/rad_missile.html new file mode 100644 index 0000000000000..f6ee581e99ba7 --- /dev/null +++ b/datum/fire_support/rad_missile.html @@ -0,0 +1,57 @@ + + + + + + + /datum/fire_support/rad_missile - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

rad_missile + + + +

+ + + + + +

Vars

inner_rangeRange for the maximum rad effects
mid_rangeRange for the moderate rad effects
outer_rangeRange for the minimal rad effects
rad_strengthBase strength of the rad effects
+

Var Details

inner_range + + + + +

+

Range for the maximum rad effects

mid_range + + + + +

+

Range for the moderate rad effects

outer_range + + + + +

+

Range for the minimal rad effects

rad_strength + + + + +

+

Base strength of the rad effects

+ + + diff --git a/datum/fire_support/tele_cope.html b/datum/fire_support/tele_cope.html new file mode 100644 index 0000000000000..91059586290a4 --- /dev/null +++ b/datum/fire_support/tele_cope.html @@ -0,0 +1,42 @@ + + + + + + + /datum/fire_support/tele_cope - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

tele_cope + + + +

+ + + +

Procs

disable_useDisabled the datum from use
enable_useEnabled the datum for use

Proc Details

disable_use +

+

Disabled the datum from use

enable_use +

+

Enabled the datum for use

+ + + diff --git a/datum/fire_support/volkite.html b/datum/fire_support/volkite.html new file mode 100644 index 0000000000000..57843bbb66d9e --- /dev/null +++ b/datum/fire_support/volkite.html @@ -0,0 +1,35 @@ + + + + + + + /datum/fire_support/volkite - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

volkite + + + +

+ + +

Procs

strafe_turfsTakes the top 3 turfs and miniguns them, then repeats until none left

Proc Details

strafe_turfs +

+

Takes the top 3 turfs and miniguns them, then repeats until none left

+ + + diff --git a/datum/font.html b/datum/font.html new file mode 100644 index 0000000000000..e6766d7fd7016 --- /dev/null +++ b/datum/font.html @@ -0,0 +1,142 @@ + + + + + + + /datum/font - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

font + + + +

+ +

A font datum, it exists to define a custom font to use in a span style later.

+ + + + + + + + + + + + + + +

Vars

ascentdistance above baseline (including whitespace)
average_widthaverage character width
default_characterdefault character (for undefined chars)
descentdistance below baseline
endlast character in metrics
ex_leadingexternal leading vertical space, just plain blank
font_familyThe font file we link to.
heighttotal height of a line
in_leadinginternal leading vertical space, for accent marks
max_widthmaximum character width
metricsFont features and metrics +Generated by Lummox's dmifontsplus (https://www.byond.com/developer/LummoxJR/DmiFontsPlus) +Note: these variable names have been changed, so you can't straight copy/paste from dmifontsplus.exe +list of font size/spacing metrics
nameFont name, just so people know what to put in their span style.
overhangextra width, such as from italics, for a line
startfirst character in metrics

Procs

get_metricsGet font metrics +From Lummox's dmifontsplus (https://www.byond.com/developer/LummoxJR/DmiFontsPlus)
+

Var Details

ascent + + + + +

+

distance above baseline (including whitespace)

average_width + + + + +

+

average character width

default_character + + + + +

+

default character (for undefined chars)

descent + + + + +

+

distance below baseline

end + + + + +

+

last character in metrics

ex_leading + + + + +

+

external leading vertical space, just plain blank

font_family + + + + +

+

The font file we link to.

height + + + + +

+

total height of a line

in_leading + + + + +

+

internal leading vertical space, for accent marks

max_width + + + + +

+

maximum character width

metrics + + + + +

+

Font features and metrics +Generated by Lummox's dmifontsplus (https://www.byond.com/developer/LummoxJR/DmiFontsPlus) +Note: these variable names have been changed, so you can't straight copy/paste from dmifontsplus.exe +list of font size/spacing metrics

name + + + + +

+

Font name, just so people know what to put in their span style.

overhang + + + + +

+

extra width, such as from italics, for a line

start + + + + +

+

first character in metrics

Proc Details

get_metrics +

+

Get font metrics +From Lummox's dmifontsplus (https://www.byond.com/developer/LummoxJR/DmiFontsPlus)

+ + + diff --git a/datum/game_mode.html b/datum/game_mode.html new file mode 100644 index 0000000000000..8f9a3e44dba1f --- /dev/null +++ b/datum/game_mode.html @@ -0,0 +1,267 @@ + + + + + + + /datum/game_mode - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

game_mode + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

allow_persistence_saveDetermines whether rounds with the gamemode will be factored in when it comes to persistency
blacklist_ground_mapsIf the gamemode has a blacklist of disallowed ground maps
blacklist_ship_mapsIf the gamemode has a blacklist of disallowed ship maps
enable_fun_tadsif fun tads are enabled by default
factionsWhat factions are used in this gamemode, typically TGMC and xenos
points_per_factionThe points per faction, assoc list
respawn_timeThe respawn time for marines
restricted_castesList of castes we dont want to be evolvable depending on gamemode.
shutters_drop_timeWhen are the shutters dropping
silo_scalingPonderation rate of silos output. 1 is normal, 2 is twice
tier_three_penaltyIncreases the amount of xenos needed to evolve to tier three by the value.
time_between_round
whitelist_ground_mapsIf the gamemode has a whitelist of valid ground maps. Whitelist overrides the blacklist
whitelist_ship_mapsIf the gamemode has a whitelist of valid ship maps. Whitelist overrides the blacklist
win_points_neededHow many points do you need to win in a point gamemode
zombie_transformation_timeTime before becoming a zombie when going undefibbable

Procs

announce_bioscansAnnonce to everyone the number of xeno and marines on ship and ground
end_round_fluffEnd of round messaging
game_end_countdownProvides the amount of time left before the game ends, used for the stat panel
generate_nuke_disk_spawnersGenerates nuke disk consoles from a list of valid locations
get_adjusted_jobworth_listAdjusts the inputted jobworth list.
get_joinable_factionsReturn the list of joinable factions, with regards with the current round balance
get_map_color_variantReturns the armor color variant applicable for this mode
get_status_tab_itemsAdd gamemode related items to statpanel
ghost_verbsReturns a list of verbs to give ghosts in this gamemode
handle_collapse_timerDisplays the orphan hivemind collapse timer, if applicable
handle_larva_timerDisplays your position in the larva queue and how many burrowed larva there are, if applicable
handle_xeno_respawn_timerDisplays your xeno respawn timer, if applicable
is_faction_balancedIf joining the job.faction will make the game too unbalanced, return FALSE
personal_reportdisplays personalized round end data to each client listing survival status
player_respawnrespawns the player, overrides verb respawn behavior as required
post_setupGamemode setup run after the game has started
wave_countdownProvides the amount of time left before the next respawn wave, used for the stat panel
+

Var Details

allow_persistence_save + + + + +

+

Determines whether rounds with the gamemode will be factored in when it comes to persistency

blacklist_ground_maps + + + + +

+

If the gamemode has a blacklist of disallowed ground maps

blacklist_ship_maps + + + + +

+

If the gamemode has a blacklist of disallowed ship maps

enable_fun_tads + + + + +

+

if fun tads are enabled by default

factions + + + + +

+

What factions are used in this gamemode, typically TGMC and xenos

points_per_faction + + + + +

+

The points per faction, assoc list

respawn_time + + + + +

+

The respawn time for marines

restricted_castes + + + + +

+

List of castes we dont want to be evolvable depending on gamemode.

shutters_drop_time + + + + +

+

When are the shutters dropping

silo_scaling + + + + +

+

Ponderation rate of silos output. 1 is normal, 2 is twice

tier_three_penalty + + + + +

+

Increases the amount of xenos needed to evolve to tier three by the value.

time_between_round + + + + +

+

whitelist_ground_maps + + + + +

+

If the gamemode has a whitelist of valid ground maps. Whitelist overrides the blacklist

whitelist_ship_maps + + + + +

+

If the gamemode has a whitelist of valid ship maps. Whitelist overrides the blacklist

win_points_needed + + + + +

+

How many points do you need to win in a point gamemode

zombie_transformation_time + + + + +

+

Time before becoming a zombie when going undefibbable

Proc Details

announce_bioscans +

+

Annonce to everyone the number of xeno and marines on ship and ground

end_round_fluff +

+

End of round messaging

game_end_countdown +

+

Provides the amount of time left before the game ends, used for the stat panel

generate_nuke_disk_spawners +

+

Generates nuke disk consoles from a list of valid locations

get_adjusted_jobworth_list +

+

Adjusts the inputted jobworth list.

get_joinable_factions +

+

Return the list of joinable factions, with regards with the current round balance

get_map_color_variant +

+

Returns the armor color variant applicable for this mode

get_status_tab_items +

+

Add gamemode related items to statpanel

ghost_verbs +

+

Returns a list of verbs to give ghosts in this gamemode

handle_collapse_timer +

+

Displays the orphan hivemind collapse timer, if applicable

handle_larva_timer +

+

Displays your position in the larva queue and how many burrowed larva there are, if applicable

handle_xeno_respawn_timer +

+

Displays your xeno respawn timer, if applicable

is_faction_balanced +

+

If joining the job.faction will make the game too unbalanced, return FALSE

personal_report +

+

displays personalized round end data to each client listing survival status

player_respawn +

+

respawns the player, overrides verb respawn behavior as required

post_setup +

+

Gamemode setup run after the game has started

wave_countdown +

+

Provides the amount of time left before the next respawn wave, used for the stat panel

+ + + diff --git a/datum/game_mode/hvh.html b/datum/game_mode/hvh.html new file mode 100644 index 0000000000000..4a44fec16b842 --- /dev/null +++ b/datum/game_mode/hvh.html @@ -0,0 +1,71 @@ + + + + + + + /datum/game_mode/hvh - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

hvh + + + +

+ + + + + + + +

Vars

bioscan_intervalTime between two bioscan

Procs

announce_bioscans_marine_somAnnonce to everyone the number of SOM and marines on ship and ground
count_humanschecks how many marines and SOM are still alive
deploy_point_activatedMessages a mob when they deploy groundside. only called if the specific gamemode register for the signal
get_deploy_point_messageReturns a message to play to a mob when they deploy into the AO
intro_sequenceplays the intro sequence if any
+

Var Details

bioscan_interval + + + + +

+

Time between two bioscan

Proc Details

announce_bioscans_marine_som +

+

Annonce to everyone the number of SOM and marines on ship and ground

count_humans +

+

checks how many marines and SOM are still alive

deploy_point_activated +

+

Messages a mob when they deploy groundside. only called if the specific gamemode register for the signal

get_deploy_point_message +

+

Returns a message to play to a mob when they deploy into the AO

intro_sequence +

+

plays the intro sequence if any

+ + + diff --git a/datum/game_mode/hvh/campaign.html b/datum/game_mode/hvh/campaign.html new file mode 100644 index 0000000000000..ce4e5e6392141 --- /dev/null +++ b/datum/game_mode/hvh/campaign.html @@ -0,0 +1,166 @@ + + + + + + + /datum/game_mode/hvh/campaign - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

campaign + + + +

+ + + + + + + + + + + + + + + + + + + + +

Vars

current_missionThe current mission type being played
player_death_timesList of death times by ckey. Used for respawn time
respawn_timersList of timers to auto open the respawn window
stat_listcampaign stats organised by faction

Procs

IsJobAvailableCheck which jobs are valid, to add to the job selector menu
attempt_attrition_respawnrespawns the player if attrition points are available
attrition_respawnActually respawns the player, if still able
auto_attempt_respawnAuto pops up the respawn window
autobalance_bonusbuffs the weaker team if players don't voluntarily switch
autobalance_check
autobalance_cycleChecks team balance and tries to correct if possible
cut_death_listcuts the death time and respawn_timers list at mission end
end_missionHandles post mission cleanup
load_new_missionsets up the newly selected mission
register_faction_memberSets up newly spawned players with the campaign status verb
scale_loadoutsLimited loadout quantities scale by pop
set_death_timeRecords the players death time for respawn time purposes
shuffle_teamsShuffles the teams forcefully
swap_player_teamActually swaps the player to the other team, unless balance has been restored
+

Var Details

current_mission + + + + +

+

The current mission type being played

player_death_times + + + + +

+

List of death times by ckey. Used for respawn time

respawn_timers + + + + +

+

List of timers to auto open the respawn window

stat_list + + + + +

+

campaign stats organised by faction

Proc Details

IsJobAvailable +

+

Check which jobs are valid, to add to the job selector menu

attempt_attrition_respawn +

+

respawns the player if attrition points are available

attrition_respawn +

+

Actually respawns the player, if still able

auto_attempt_respawn +

+

Auto pops up the respawn window

autobalance_bonus +

+

buffs the weaker team if players don't voluntarily switch

autobalance_check +

+

autobalance_cycle +

+

Checks team balance and tries to correct if possible

cut_death_list +

+

cuts the death time and respawn_timers list at mission end

end_mission +

+

Handles post mission cleanup

load_new_mission +

+

sets up the newly selected mission

register_faction_member +

+

Sets up newly spawned players with the campaign status verb

scale_loadouts +

+

Limited loadout quantities scale by pop

set_death_time +

+

Records the players death time for respawn time purposes

shuffle_teams +

+

Shuffles the teams forcefully

swap_player_team +

+

Actually swaps the player to the other team, unless balance has been restored

+ + + diff --git a/datum/game_mode/hvh/combat_patrol.html b/datum/game_mode/hvh/combat_patrol.html new file mode 100644 index 0000000000000..e2a82bdf5625f --- /dev/null +++ b/datum/game_mode/hvh/combat_patrol.html @@ -0,0 +1,99 @@ + + + + + + + /datum/game_mode/hvh/combat_patrol - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

combat_patrol + + + +

+ + + + + + + + + + + +

Vars

game_timerTimer used to calculate how long till round ends
game_timer_delayDelay from shutter drop until game timer starts
max_game_timeThe length of time until round ends.
max_time_reachedWhether the max game time has been reached
wave_timerTimer used to calculate how long till next respawn wave
wave_timer_lengthThe length of time until next respawn wave.

Procs

declare_completionpulls the number of marines and SOM, both dead and alive
respawn_waveAllows all the dead to respawn together
set_game_endTriggers the game to end
set_game_timerround timer
+

Var Details

game_timer + + + + +

+

Timer used to calculate how long till round ends

game_timer_delay + + + + +

+

Delay from shutter drop until game timer starts

max_game_time + + + + +

+

The length of time until round ends.

max_time_reached + + + + +

+

Whether the max game time has been reached

wave_timer + + + + +

+

Timer used to calculate how long till next respawn wave

wave_timer_length + + + + +

+

The length of time until next respawn wave.

Proc Details

declare_completion +

+

pulls the number of marines and SOM, both dead and alive

respawn_wave +

+

Allows all the dead to respawn together

set_game_end +

+

Triggers the game to end

set_game_timer +

+

round timer

+ + + diff --git a/datum/game_mode/hvh/combat_patrol/sensor_capture.html b/datum/game_mode/hvh/combat_patrol/sensor_capture.html new file mode 100644 index 0000000000000..0aa418ad36fc0 --- /dev/null +++ b/datum/game_mode/hvh/combat_patrol/sensor_capture.html @@ -0,0 +1,36 @@ + + + + + + + /datum/game_mode/hvh/combat_patrol/sensor_capture - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

sensor_capture + + + +

+ + +

Vars

sensors_activatedThe amount of activated sensor towers in sensor capture
+

Var Details

sensors_activated + + + + +

+

The amount of activated sensor towers in sensor capture

+ + + diff --git a/datum/game_mode/infestation.html b/datum/game_mode/infestation.html new file mode 100644 index 0000000000000..d2280ac16bbb0 --- /dev/null +++ b/datum/game_mode/infestation.html @@ -0,0 +1,71 @@ + + + + + + + /datum/game_mode/infestation - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

infestation + + + +

+ + + + + + + +

Vars

bioscan_intervalTime between two bioscan
orphan_hive_timerTimer used to calculate how long till the hive collapse due to no ruler
planet_nukedState of the nuke
round_stageIf we are shipside or groundside

Procs

announce_bioscansAnnonce to everyone the number of xeno and marines on ship and ground
map_announceAnnounce the next map
+

Var Details

bioscan_interval + + + + +

+

Time between two bioscan

orphan_hive_timer + + + + +

+

Timer used to calculate how long till the hive collapse due to no ruler

planet_nuked + + + + +

+

State of the nuke

round_stage + + + + +

+

If we are shipside or groundside

Proc Details

announce_bioscans +

+

Annonce to everyone the number of xeno and marines on ship and ground

map_announce +

+

Announce the next map

+ + + diff --git a/datum/game_mode/infestation/crash.html b/datum/game_mode/infestation/crash.html new file mode 100644 index 0000000000000..d8c02ef990ffd --- /dev/null +++ b/datum/game_mode/infestation/crash.html @@ -0,0 +1,57 @@ + + + + + + + /datum/game_mode/infestation/crash - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

crash + + + +

+ + + + + +

Vars

larva_check_intervalHow long between two larva check
last_larva_checkLast time larva balance was checked

Procs

balance_scalesAdds more xeno job slots if needed.
get_jobpoint_differenceGets the difference of job points between humans and xenos. Negative means too many xenos. Positive means too many humans.
+

Var Details

larva_check_interval + + + + +

+

How long between two larva check

last_larva_check + + + + +

+

Last time larva balance was checked

Proc Details

balance_scales +

+

Adds more xeno job slots if needed.

get_jobpoint_difference +

+

Gets the difference of job points between humans and xenos. Negative means too many xenos. Positive means too many humans.

+ + + diff --git a/datum/game_mode/infestation/crash/zombie.html b/datum/game_mode/infestation/crash/zombie.html new file mode 100644 index 0000000000000..901f2a7a5acbb --- /dev/null +++ b/datum/game_mode/infestation/crash/zombie.html @@ -0,0 +1,36 @@ + + + + + + + /datum/game_mode/infestation/crash/zombie - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

zombie + + + +

+ + +

Vars

zombie_pointsHow many points can be spent by the zombie overmind
+

Var Details

zombie_points + + + + +

+

How many points can be spent by the zombie overmind

+ + + diff --git a/datum/glass_style.html b/datum/glass_style.html new file mode 100644 index 0000000000000..4c1274fa1f8e9 --- /dev/null +++ b/datum/glass_style.html @@ -0,0 +1,110 @@ + + + + + + + /datum/glass_style - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

glass_style + + + +

+ +Glass style singleton +

Used by /datum/component/takes_reagent_appearance, and a few other places, +to modify the looks of a reagent container (not /reagent_containers, any atom with reagents) +when certain types of reagents are put into and become the majority reagent of the container

+

For example, pouring Vodka into a glass will change its icon to look like the vodka glass sprite +while pouring it into a shot glass will change to the vodka shot glass sprite

+

A reagent type can have multiple glass styles so long as each style is linked to a different container type, +this allows one reagent to style multiple things across a variety of icon files

+ + + + + + + + + +

Vars

descOptional - What the glass description is changed to
iconSuggested - What icon file to use for this glass style
icon_stateSuggested - What icon state is used for this glass style
nameOptional - What the glass is renamed to
required_container_typeRequired - What EXACT type of atom is needed for this style to be used +If not supplied, will be assumed to be an abstract type and will not be instantiated
required_drink_typeRequired - What EXACT type of reagent is needed for this style to be used +If not supplied, will be assumed to be an abstract type and will not be instantiated

Procs

set_allHelper to apply the entire style to something.
set_appearanceSets the passed item to our icon and icon state.
set_descSets the passed item to our description.
set_nameSets the passed item to our name.
+

Var Details

desc + + + + +

+

Optional - What the glass description is changed to

icon + + + + +

+

Suggested - What icon file to use for this glass style

icon_state + + + + +

+

Suggested - What icon state is used for this glass style

name + + + + +

+

Optional - What the glass is renamed to

required_container_type + + + + +

+

Required - What EXACT type of atom is needed for this style to be used +If not supplied, will be assumed to be an abstract type and will not be instantiated

required_drink_type + + + + +

+

Required - What EXACT type of reagent is needed for this style to be used +If not supplied, will be assumed to be an abstract type and will not be instantiated

Proc Details

set_all +

+

Helper to apply the entire style to something.

set_appearance +

+

Sets the passed item to our icon and icon state.

set_desc +

+

Sets the passed item to our description.

set_name +

+

Sets the passed item to our name.

+ + + diff --git a/datum/glass_style/has_foodtype.html b/datum/glass_style/has_foodtype.html new file mode 100644 index 0000000000000..3b0738607941a --- /dev/null +++ b/datum/glass_style/has_foodtype.html @@ -0,0 +1,36 @@ + + + + + + + /datum/glass_style/has_foodtype - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

has_foodtype + + + +

+ + +

Vars

drink_typeThis style changes the "drink type" of the container it's placed it as well, it's like food types
+

Var Details

drink_type + + + + +

+

This style changes the "drink type" of the container it's placed it as well, it's like food types

+ + + diff --git a/datum/glass_style/has_foodtype/soup.html b/datum/glass_style/has_foodtype/soup.html new file mode 100644 index 0000000000000..e160775a79ba2 --- /dev/null +++ b/datum/glass_style/has_foodtype/soup.html @@ -0,0 +1,35 @@ + + + + + + + /datum/glass_style/has_foodtype/soup - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

soup + + + +

+ + +

Procs

Newdatum/glass_style/has_foodtype/soup - Commented out until TG FOOD PORT

Proc Details

New +

+

datum/glass_style/has_foodtype/soup - Commented out until TG FOOD PORT

+ + + diff --git a/datum/greyscale_config.html b/datum/greyscale_config.html new file mode 100644 index 0000000000000..65ee1c324def3 --- /dev/null +++ b/datum/greyscale_config.html @@ -0,0 +1,134 @@ + + + + + + + /datum/greyscale_config - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

greyscale_config + + + +

+ + + + + + + + + + + + + + + + +

Vars

expected_colorsHow many colors are expected to be given when building the sprite
greyscale_flagsFlags that can be used to modify use
icon_cacheGenerated icons keyed by their color arguments
icon_fileReference to the dmi file for this config
icon_statesA list of icon states and their layers
json_configReference to the json config file
prefixThis is used to differentiate sprites that can use the same json, but you dont want a ton of different icon files. It applies this prefix to the icon states before gathering the icons.
string_icon_fileString path to the icon file, used for reloading
string_json_configString path to the json file, used for reloading

Procs

DebugNameGets the name used for debug purposes
GenerateActually create the icon and color it in, handles caching
GenerateLayerGroupInternal recursive proc to handle nested layer groups
ReadIconStateConfigurationTakes the json icon state configuration and puts it into a more processed format
ReadLayersFromJsonTakes the json layers configuration and puts it into a more processed format
ReadMetadataReads layer configurations to take out some useful overall information
+

Var Details

expected_colors + + + + +

+

How many colors are expected to be given when building the sprite

greyscale_flags + + + + +

+

Flags that can be used to modify use

icon_cache + + + + +

+

Generated icons keyed by their color arguments

icon_file + + + + +

+

Reference to the dmi file for this config

icon_states + + + + +

+

A list of icon states and their layers

json_config + + + + +

+

Reference to the json config file

prefix + + + + +

+

This is used to differentiate sprites that can use the same json, but you dont want a ton of different icon files. It applies this prefix to the icon states before gathering the icons.

string_icon_file + + + + +

+

String path to the icon file, used for reloading

string_json_config + + + + +

+

String path to the json file, used for reloading

Proc Details

DebugName +

+

Gets the name used for debug purposes

Generate +

+

Actually create the icon and color it in, handles caching

GenerateLayerGroup +

+

Internal recursive proc to handle nested layer groups

ReadIconStateConfiguration +

+

Takes the json icon state configuration and puts it into a more processed format

ReadLayersFromJson +

+

Takes the json layers configuration and puts it into a more processed format

ReadMetadata +

+

Reads layer configurations to take out some useful overall information

+ + + diff --git a/datum/greyscale_layer.html b/datum/greyscale_layer.html new file mode 100644 index 0000000000000..efcedc4e50bb3 --- /dev/null +++ b/datum/greyscale_layer.html @@ -0,0 +1,66 @@ + + + + + + + /datum/greyscale_layer - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

greyscale_layer + + + +

+ + + + + + +

Vars

blend_modeThe selected blend mode.
blend_modesThis list is for converting json entries into the correct defines to be used on blend_mode
color_idsThe list of colors to be used.
layer_typeThis is the layer type that is used to generate these greyscale layers. It should be the same as the typepath after the base type here.

Procs

GenerateUsed to actualy create the layer using the given colors +Do not override, use InternalGenerate instead
+

Var Details

blend_mode + + + + +

+

The selected blend mode.

blend_modes + + + + +

+

This list is for converting json entries into the correct defines to be used on blend_mode

color_ids + + + + +

+

The list of colors to be used.

layer_type + + + + +

+

This is the layer type that is used to generate these greyscale layers. It should be the same as the typepath after the base type here.

Proc Details

Generate +

+

Used to actualy create the layer using the given colors +Do not override, use InternalGenerate instead

+ + + diff --git a/datum/greyscale_layer/hyperscale.html b/datum/greyscale_layer/hyperscale.html new file mode 100644 index 0000000000000..b7dbe01e9b2a9 --- /dev/null +++ b/datum/greyscale_layer/hyperscale.html @@ -0,0 +1,43 @@ + + + + + + + /datum/greyscale_layer/hyperscale - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

hyperscale + + + +

+ + + +

Vars

iconThis is the icon of the layer
icon_file_colorsThis is the list of colors in the given icon from darkest to lightest. The colors are converted to greyscale before sorting.
+

Var Details

icon + + + + +

+

This is the icon of the layer

icon_file_colors + + + + +

+

This is the list of colors in the given icon from darkest to lightest. The colors are converted to greyscale before sorting.

+ + + diff --git a/datum/greyscale_layer/icon_state.html b/datum/greyscale_layer/icon_state.html new file mode 100644 index 0000000000000..96dcdb221cd99 --- /dev/null +++ b/datum/greyscale_layer/icon_state.html @@ -0,0 +1,43 @@ + + + + + + + /datum/greyscale_layer/icon_state - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

icon_state + + + +

+ +

The most basic greyscale layer; a layer which is created from a single icon_state in the given icon file

+ +

Vars

color_idThis is the color id that should be used in the operation. It is the index of the correct color in the passed-in string.
iconThis is the icon that the layer should use
+

Var Details

color_id + + + + +

+

This is the color id that should be used in the operation. It is the index of the correct color in the passed-in string.

icon + + + + +

+

This is the icon that the layer should use

+ + + diff --git a/datum/hive_purchases.html b/datum/hive_purchases.html new file mode 100644 index 0000000000000..d4525ad55fc36 --- /dev/null +++ b/datum/hive_purchases.html @@ -0,0 +1,50 @@ + + + + + + + /datum/hive_purchases - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

hive_purchases + + + +

+ + + + +

Vars

buyable_upgradesFlat list of upgrades we can buy
upgrades_by_nameAssocative list name = upgraderef

Procs

setup_upgradesInitializing hive status with all relevant to be purchased upgrades.
+

Var Details

buyable_upgrades + + + + +

+

Flat list of upgrades we can buy

upgrades_by_name + + + + +

+

Assocative list name = upgraderef

Proc Details

setup_upgrades +

+

Initializing hive status with all relevant to be purchased upgrades.

+ + + diff --git a/datum/hive_status.html b/datum/hive_status.html new file mode 100644 index 0000000000000..df70d865d6025 --- /dev/null +++ b/datum/hive_status.html @@ -0,0 +1,254 @@ + + + + + + + /datum/hive_status - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

hive_status + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

candidatesQueue of all clients wanting to join xeno side
caste_death_timersTimer for caste evolution after the last one died, CASTE = TIMER
evotowerslist of evo towers
hivemindcoreslist of hivemind cores
nuke_hud_timerThe nuke HUD timer datum, shown on each xeno's screen
pherotowerslist of phero towers
psychictowerslist of upgrade towers
purchasesReference to upgrades available and purchased by this hive.
special_build_pointsAmount of special resin points used to build special resin walls by each hive.
xenos_by_typepathdatum/xeno_caste = list(xeno mobs)

Procs

add_to_larva_candidate_queueAdd a client to the candidate queue, the first clients of the queue will have priority on new larva spots +return TRUE if the client was added, FALSE if it was removed
attempt_deevolveattempts to have devolver devolve target
cleanup_waiterRemove ref to avoid hard del and null error
end_caste_death_timerAllows death delay caste to evolve. Safe for use by gamemode code, this allows per hive overrides
get_evolution_boostfetches number of bonus evo points given to the hive
get_hivemind_conduit_death_timerGets the hivemind conduit's death timer, AKA, the time before a replacement can evolve
get_structure_packetReturns a data entry for the "xeno structures" list based on the structure passed
get_total_hivemind_conduit_timeGets the total time that the death timer for the hivemind conduit will last
get_upgrade_boostfetches number of bonus maturity points given to the hive
get_watchable_xenosReturning all xenos including queen that are not at centcom and not self
get_xeno_locationActions that don't require you to be a xeno +If the action we're sending is to observe, this will be the xeno being observed. Otherwise it's the xeno pressing the button. +Returns the string location of the xeno
give_larva_to_next_in_queuePropose larvas until their is no more candidates, or no more burrowed
on_xeno_deathHandles any effects when a xeno dies
on_xeno_reviveHandles effects if a xeno is revived
remove_from_larva_candidate_queueRemove a client from the larva candidate queue
set_all_xeno_trackersUsed for setting the trackers of all xenos in the hive, like when a nuke activates
total_xenos_for_evolvingThe total amount of xenomorphs that are considered for evolving purposes, +subtypes also consider stored larva, not just the current amount of living xenos
try_to_give_larvaAttempt to give a larva to the next in line, if not possible, free the xeno position and propose it to another candidate
update_tier_limitsupdates and sets the t2 and t3 xeno limits
upgrade_xenocalled by Xenomorph/proc/upgrade_xeno() to update xeno_by_upgrade
xeno_messageUsed for Hive Message alerts
+

Var Details

candidates + + + + +

+

Queue of all clients wanting to join xeno side

caste_death_timers + + + + +

+

Timer for caste evolution after the last one died, CASTE = TIMER

evotowers + + + + +

+

list of evo towers

hivemindcores + + + + +

+

list of hivemind cores

nuke_hud_timer + + + + +

+

The nuke HUD timer datum, shown on each xeno's screen

pherotowers + + + + +

+

list of phero towers

psychictowers + + + + +

+

list of upgrade towers

purchases + + + + +

+

Reference to upgrades available and purchased by this hive.

special_build_points + + + + +

+

Amount of special resin points used to build special resin walls by each hive.

xenos_by_typepath + + + + +

+

datum/xeno_caste = list(xeno mobs)

Proc Details

add_to_larva_candidate_queue +

+

Add a client to the candidate queue, the first clients of the queue will have priority on new larva spots +return TRUE if the client was added, FALSE if it was removed

attempt_deevolve +

+

attempts to have devolver devolve target

cleanup_waiter +

+

Remove ref to avoid hard del and null error

end_caste_death_timer +

+

Allows death delay caste to evolve. Safe for use by gamemode code, this allows per hive overrides

get_evolution_boost +

+

fetches number of bonus evo points given to the hive

get_hivemind_conduit_death_timer +

+

Gets the hivemind conduit's death timer, AKA, the time before a replacement can evolve

get_structure_packet +

+

Returns a data entry for the "xeno structures" list based on the structure passed

get_total_hivemind_conduit_time +

+

Gets the total time that the death timer for the hivemind conduit will last

get_upgrade_boost +

+

fetches number of bonus maturity points given to the hive

get_watchable_xenos +

+

Returning all xenos including queen that are not at centcom and not self

get_xeno_location +

+

Actions that don't require you to be a xeno +If the action we're sending is to observe, this will be the xeno being observed. Otherwise it's the xeno pressing the button. +Returns the string location of the xeno

give_larva_to_next_in_queue +

+

Propose larvas until their is no more candidates, or no more burrowed

on_xeno_death +

+

Handles any effects when a xeno dies

on_xeno_revive +

+

Handles effects if a xeno is revived

remove_from_larva_candidate_queue +

+

Remove a client from the larva candidate queue

set_all_xeno_trackers +

+

Used for setting the trackers of all xenos in the hive, like when a nuke activates

total_xenos_for_evolving +

+

The total amount of xenomorphs that are considered for evolving purposes, +subtypes also consider stored larva, not just the current amount of living xenos

try_to_give_larva +

+

Attempt to give a larva to the next in line, if not possible, free the xeno position and propose it to another candidate

update_tier_limits +

+

updates and sets the t2 and t3 xeno limits

upgrade_xeno +

+

called by Xenomorph/proc/upgrade_xeno() to update xeno_by_upgrade

xeno_message +

+

Used for Hive Message alerts

+ + + diff --git a/datum/hive_status/normal.html b/datum/hive_status/normal.html new file mode 100644 index 0000000000000..c17a9dd880610 --- /dev/null +++ b/datum/hive_status/normal.html @@ -0,0 +1,36 @@ + + + + + + + /datum/hive_status/normal - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

normal + + + +

+ + +

Vars

orphan_hud_timerTimer ID for the orphan hive timer
+

Var Details

orphan_hud_timer + + + + +

+

Timer ID for the orphan hive timer

+ + + diff --git a/datum/hive_upgrade.html b/datum/hive_upgrade.html new file mode 100644 index 0000000000000..dabce91e26227 --- /dev/null +++ b/datum/hive_upgrade.html @@ -0,0 +1,114 @@ + + + + + + + /datum/hive_upgrade - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

hive_upgrade + + + +

+ + + + + + + + + + + +

Vars

categoryname of the category it belongs to, string, used in ui
descdesc of the upgrade, string, used in ui
gamemode_flagsgamemode flags to whether this upgrade is purchasable
iconstring for UI icon in buyable_icons.dmi for this upgrade
namename of the upgrade, string, used in ui
psypoint_costPsy point cost, float
times_boughtint of the times we bought this upgrade
upgrade_flagsupgrade flag var

Procs

can_buyWhether we can buy this upgrade, used to set the menu button as grey or not +returns true on can false on cannot +Arguments:
on_buyBuys the upgrade and applies its effects +returns true on success false on fail +Arguments:
+

Var Details

category + + + + +

+

name of the category it belongs to, string, used in ui

desc + + + + +

+

desc of the upgrade, string, used in ui

gamemode_flags + + + + +

+

gamemode flags to whether this upgrade is purchasable

icon + + + + +

+

string for UI icon in buyable_icons.dmi for this upgrade

name + + + + +

+

name of the upgrade, string, used in ui

psypoint_cost + + + + +

+

Psy point cost, float

times_bought + + + + +

+

int of the times we bought this upgrade

upgrade_flags + + + + +

+

upgrade flag var

Proc Details

can_buy +

+

Whether we can buy this upgrade, used to set the menu button as grey or not +returns true on can false on cannot +Arguments:

+

on_buy +

+

Buys the upgrade and applies its effects +returns true on success false on fail +Arguments:

+
+ + + diff --git a/datum/hive_upgrade/building.html b/datum/hive_upgrade/building.html new file mode 100644 index 0000000000000..92e8a025bab59 --- /dev/null +++ b/datum/hive_upgrade/building.html @@ -0,0 +1,43 @@ + + + + + + + /datum/hive_upgrade/building - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

building + + + +

+ + + +

Vars

building_timeBuilding time, in seconds. 10 by default.
building_typeThe type of building created
+

Var Details

building_time + + + + +

+

Building time, in seconds. 10 by default.

building_type + + + + +

+

The type of building created

+ + + diff --git a/datum/hive_upgrade/defence/turret.html b/datum/hive_upgrade/defence/turret.html new file mode 100644 index 0000000000000..3760e46eeb4b5 --- /dev/null +++ b/datum/hive_upgrade/defence/turret.html @@ -0,0 +1,43 @@ + + + + + + + /datum/hive_upgrade/defence/turret - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

turret + + + +

+ + + +

Vars

build_timeHow long to build one turret
turret_typeWhat type of turret is built
+

Var Details

build_time + + + + +

+

How long to build one turret

turret_type + + + + +

+

What type of turret is built

+ + + diff --git a/datum/holocall.html b/datum/holocall.html new file mode 100644 index 0000000000000..5aa87f39dfaae --- /dev/null +++ b/datum/holocall.html @@ -0,0 +1,85 @@ + + + + + + + /datum/holocall - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

holocall + + + +

+ + + + + + + + + +

Vars

calling_holopadthe holopad that sent the call to another holopad
connected_holopadthe one that answered the call (may be null)
dialed_holopadspopulated with all holopads that are either being dialed or have that have answered us, will be cleared out to just connected_holopad once answered
eyeuser's eye, once connected
hanguphangup action
hologramuser's hologram, once connected
userthe one that called

Procs

AnswerAnswers a call made to answering_holopad which cannot be the calling holopad. Pads not in the call are ignored
+

Var Details

calling_holopad + + + + +

+

the holopad that sent the call to another holopad

connected_holopad + + + + +

+

the one that answered the call (may be null)

dialed_holopads + + + + +

+

populated with all holopads that are either being dialed or have that have answered us, will be cleared out to just connected_holopad once answered

eye + + + + +

+

user's eye, once connected

hangup + + + + +

+

hangup action

hologram + + + + +

+

user's hologram, once connected

user + + + + +

+

the one that called

Proc Details

Answer +

+

Answers a call made to answering_holopad which cannot be the calling holopad. Pads not in the call are ignored

+ + + diff --git a/datum/http_request.html b/datum/http_request.html new file mode 100644 index 0000000000000..f58bf9672ac88 --- /dev/null +++ b/datum/http_request.html @@ -0,0 +1,36 @@ + + + + + + + /datum/http_request - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

http_request + + + +

+ + +

Vars

output_fileIf present response body will be saved to this file.
+

Var Details

output_file + + + + +

+

If present response body will be saved to this file.

+ + + diff --git a/datum/hud.html b/datum/hud.html new file mode 100644 index 0000000000000..190de73ed717f --- /dev/null +++ b/datum/hud.html @@ -0,0 +1,122 @@ + + + + + + + /datum/hud - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

hud + + + +

+ + + + + + + + + + + + + + +

Vars

hotkey_ui_hiddenThis is to hide the buttons that can be used via hotkeys. (hotkeybuttons list of buttons)
hud_shownUsed for the HUD toggle (F12)
hud_versionthe hud version used (standard, reduced, none)
inventory_shownthe inventory
master_groupsAssoc list of key => "plane master groups" +This is normally just the main window, but it'll occasionally contain things like spyglasses windows
plane_masterssee "appearance_flags" in the ref, assoc list of "[plane]" = object

Procs

add_ammo_hudAdd an ammo hud to the user informing of the ammo count of ammo_owner
build_plane_groupsCreates the required plane masters to fill out new z layers (because each "level" of multiz gets its own plane master set)
get_plane_masterReturns the plane master that matches the input plane from the passed in group
get_true_plane_mastersReturns a list of all plane masters that match the input true plane, drawn from the passed in group (ignores z layer offsets)
remove_ammo_hudRemove the ammo hud related to the gun G from the user
update_ammo_hudUpdate the ammo hud related to the gun G
update_interactive_emotesUpdate the hud; taken from how alerts do it, but slimmed down
+

Var Details

hotkey_ui_hidden + + + + +

+

This is to hide the buttons that can be used via hotkeys. (hotkeybuttons list of buttons)

hud_shown + + + + +

+

Used for the HUD toggle (F12)

hud_version + + + + +

+

the hud version used (standard, reduced, none)

inventory_shown + + + + +

+

the inventory

master_groups + + + + +

+

Assoc list of key => "plane master groups" +This is normally just the main window, but it'll occasionally contain things like spyglasses windows

plane_masters + + + + +

+

see "appearance_flags" in the ref, assoc list of "[plane]" = object

Proc Details

add_ammo_hud +

+

Add an ammo hud to the user informing of the ammo count of ammo_owner

build_plane_groups +

+

Creates the required plane masters to fill out new z layers (because each "level" of multiz gets its own plane master set)

get_plane_master +

+

Returns the plane master that matches the input plane from the passed in group

get_true_plane_masters +

+

Returns a list of all plane masters that match the input true plane, drawn from the passed in group (ignores z layer offsets)

remove_ammo_hud +

+

Remove the ammo hud related to the gun G from the user

update_ammo_hud +

+

Update the ammo hud related to the gun G

update_interactive_emotes +

+

Update the hud; taken from how alerts do it, but slimmed down

+ + + diff --git a/datum/hud_data.html b/datum/hud_data.html new file mode 100644 index 0000000000000..053f6a1dcc270 --- /dev/null +++ b/datum/hud_data.html @@ -0,0 +1,103 @@ + + + + + + + /datum/hud_data - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

hud_data + + + +

+ + + + + + + + + + + +

Vars

equip_slotsChecked by mob_can_equip()
gearContains information on the position and tag for all inventory slots +to be drawn for the mob. This is fairly delicate, try to avoid messing with it +unless you know exactly what it does
has_a_intentSet to draw intent box
has_dropSet to draw drop button
has_handsSet to draw shand
has_m_intentSet to draw move intent box
has_resistSet to draw resist button
has_throwSet to draw throw button
has_warningsSet to draw environment warnings
iconIf set, overrides ui_style
+

Var Details

equip_slots + + + + +

+

Checked by mob_can_equip()

gear + + + + +

+

Contains information on the position and tag for all inventory slots +to be drawn for the mob. This is fairly delicate, try to avoid messing with it +unless you know exactly what it does

has_a_intent + + + + +

+

Set to draw intent box

has_drop + + + + +

+

Set to draw drop button

has_hands + + + + +

+

Set to draw shand

has_m_intent + + + + +

+

Set to draw move intent box

has_resist + + + + +

+

Set to draw resist button

has_throw + + + + +

+

Set to draw throw button

has_warnings + + + + +

+

Set to draw environment warnings

icon + + + + +

+

If set, overrides ui_style

+ + + diff --git a/datum/hud_displays.html b/datum/hud_displays.html new file mode 100644 index 0000000000000..b3526676931ec --- /dev/null +++ b/datum/hud_displays.html @@ -0,0 +1,67 @@ + + + + + + + /datum/hud_displays - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

hud_displays + + + +

+ +

Holder datum for a zlevels data, concerning the overlays and the drawn level itself +The individual image trackers have a raw and a normal list +raw lists just store the images, while the normal ones are assoc list of [tracked_atom] = image +the raw lists are to speed up the Fire() of the subsystem so we dont have to filter through

+ + + + +

Vars

hud_imageActual icon of the drawn zlevel with all of it's atoms
images_assocAssoc list of updating images; list("[flag]" = list([source] = blip)
images_rawRaw list containing updating images by flag; list("[flag]" = list(blip))
x_offsetx offset of the actual icon to center it to screens
y_offsety offset of the actual icons to keep it to screens
+

Var Details

hud_image + + + + +

+

Actual icon of the drawn zlevel with all of it's atoms

images_assoc + + + + +

+

Assoc list of updating images; list("[flag]" = list([source] = blip)

images_raw + + + + +

+

Raw list containing updating images by flag; list("[flag]" = list(blip))

x_offset + + + + +

+

x offset of the actual icon to center it to screens

y_offset + + + + +

+

y offset of the actual icons to keep it to screens

+ + + diff --git a/datum/individual_stats.html b/datum/individual_stats.html new file mode 100644 index 0000000000000..b3a5ea67229bc --- /dev/null +++ b/datum/individual_stats.html @@ -0,0 +1,155 @@ + + + + + + + /datum/individual_stats - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

individual_stats + + + +

+ + + + + + + + + + + + + + + + + + + +

Vars

currencyCredits. You buy stuff with it
current_mobcurrently occupied mob - if any
factionThe faction associated with these stats
loadoutsList of loadouts by role
perks_by_jobUnlocked perks organised by jobs effected
selected_jobCurrently selected UI job tab
selected_tabCurrently selected UI category tab
unlocked_itemsUnlocked items
unlocked_perksSingle list of unlocked perks for easy reference
valid_jobsList of job types based on faction

Procs

apply_perksApplies all perks to a mob
give_fundsApplies cash
make_available_loadout_itemAdds an item to the unlockable list for a job
post_mission_creditsPay each player additional credits based on individual performance during the mission
purchase_perkAdds a perk if able
replace_loadout_optionAdds and equips a loadout item, replacing another
unlock_loadout_itemUnlocks a loadout item for use
use_fundsuses some funtokens, returns the amount missing, if insufficient funds
+

Var Details

currency + + + + +

+

Credits. You buy stuff with it

current_mob + + + + +

+

currently occupied mob - if any

faction + + + + +

+

The faction associated with these stats

loadouts + + + + +

+

List of loadouts by role

perks_by_job + + + + +

+

Unlocked perks organised by jobs effected

selected_job + + + + +

+

Currently selected UI job tab

selected_tab + + + + +

+

Currently selected UI category tab

unlocked_items + + + + +

+

Unlocked items

unlocked_perks + + + + +

+

Single list of unlocked perks for easy reference

valid_jobs + + + + +

+

List of job types based on faction

Proc Details

apply_perks +

+

Applies all perks to a mob

give_funds +

+

Applies cash

make_available_loadout_item +

+

Adds an item to the unlockable list for a job

post_mission_credits +

+

Pay each player additional credits based on individual performance during the mission

purchase_perk +

+

Adds a perk if able

replace_loadout_option +

+

Adds and equips a loadout item, replacing another

unlock_loadout_item +

+

Unlocks a loadout item for use

use_funds +

+

uses some funtokens, returns the amount missing, if insufficient funds

+ + + diff --git a/datum/instrument.html b/datum/instrument.html new file mode 100644 index 0000000000000..f491168b3d9f2 --- /dev/null +++ b/datum/instrument.html @@ -0,0 +1,152 @@ + + + + + + + /datum/instrument - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

Instrument Datums + + + +

+ +

Instrument datums hold the data for any given instrument, as well as data on how to play it and what bounds there are to playing it.

+

The datums themselves are kept in SSinstruments in a list by their unique ID. The reason it uses ID instead of typepath is to support the runtime creation of instruments. +Since songs cache them while playing, there isn't realistic issues regarding performance from accessing.

+ + + + + + + + + + + + + + + + +

Vars

HIGHEST_KEYDon't touch this
LOWEST_KEYDon't touch this x2
abstract_typeUsed for categorization subtypes
admin_onlyOh no - For truly troll instruments.
categoryCategory
idUniquely identifies this instrument so runtime changes are possible as opposed to paths. If this is unset, things will use path instead.
instrument_flagsSee __DEFINES/flags/instruments.dm
legacy_instrument_extFor legacy instruments, our file extension
legacy_instrument_pathFor legacy instruments, the path to our notes
nameName of the instrument
real_samplesWrite here however many samples, follow this syntax: "%note num%"='%sample file%' eg. "27"='synthesizer/e2.ogg'. Key must never be lower than 0 and higher than 127
samplesassoc list key = /datum/instrument_key. do not fill this yourself!
songs_usingWhat songs are using us
volume_multiplierVolume multiplier. Synthesized instruments are quite loud and I don't like to cut off potential detail via editing. (someone correct me if this isn't a thing)

Procs

InitializeInitializes the instrument, calculating its samples if necessary.
calculate_samplesFor synthesized instruments, this is how the instrument generates the "keys" that a /datum/song uses to play notes. +Calculating them on the fly would be unperformant, so we do it during init and keep it all cached in a list.
readyChecks if this instrument is ready to play.
+

Var Details

HIGHEST_KEY + + + + +

+

Don't touch this

LOWEST_KEY + + + + +

+

Don't touch this x2

abstract_type + + + + +

+

Used for categorization subtypes

admin_only + + + + +

+

Oh no - For truly troll instruments.

category + + + + +

+

Category

id + + + + +

+

Uniquely identifies this instrument so runtime changes are possible as opposed to paths. If this is unset, things will use path instead.

instrument_flags + + + + +

+

See __DEFINES/flags/instruments.dm

legacy_instrument_ext + + + + +

+

For legacy instruments, our file extension

legacy_instrument_path + + + + +

+

For legacy instruments, the path to our notes

name + + + + +

+

Name of the instrument

real_samples + + + + +

+

Write here however many samples, follow this syntax: "%note num%"='%sample file%' eg. "27"='synthesizer/e2.ogg'. Key must never be lower than 0 and higher than 127

samples + + + + +

+

assoc list key = /datum/instrument_key. do not fill this yourself!

songs_using + + + + +

+

What songs are using us

volume_multiplier + + + + +

+

Volume multiplier. Synthesized instruments are quite loud and I don't like to cut off potential detail via editing. (someone correct me if this isn't a thing)

Proc Details

Initialize +

+

Initializes the instrument, calculating its samples if necessary.

calculate_samples +

+

For synthesized instruments, this is how the instrument generates the "keys" that a /datum/song uses to play notes. +Calculating them on the fly would be unperformant, so we do it during init and keep it all cached in a list.

ready +

+

Checks if this instrument is ready to play.

+ + + diff --git a/datum/instrument_key.html b/datum/instrument_key.html new file mode 100644 index 0000000000000..8e5c06eeeb176 --- /dev/null +++ b/datum/instrument_key.html @@ -0,0 +1,65 @@ + + + + + + + /datum/instrument_key - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

instrument_key + + + +

+ +

Instrument key datums contain everything needed to know how to play a specific +note of an instrument.*

+ + + + +

Vars

deviationDeviation up/down from the pivot point that uses its sample. Used to calculate frequency.
frequencyThe frequency to play the sample to get our desired note.
keyThe numerical key of what this is, from 1 to 127 on a standard piano keyboard.
sampleThe actual sample file that will be loaded when playing.

Procs

calculateCalculates and stores our deviation.
+

Var Details

deviation + + + + +

+

Deviation up/down from the pivot point that uses its sample. Used to calculate frequency.

frequency + + + + +

+

The frequency to play the sample to get our desired note.

key + + + + +

+

The numerical key of what this is, from 1 to 127 on a standard piano keyboard.

sample + + + + +

+

The actual sample file that will be loaded when playing.

Proc Details

calculate +

+

Calculates and stores our deviation.

+ + + diff --git a/datum/interior.html b/datum/interior.html new file mode 100644 index 0000000000000..d13ee9789394f --- /dev/null +++ b/datum/interior.html @@ -0,0 +1,134 @@ + + + + + + + /datum/interior - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

interior + + + +

+ + + + + + + + + + + + + + + + +

Vars

containercontainer that this interior is attached to; what we are the inside of
exit_callbackcallback to execute when we want to eject the mob
loaded_turfslist of all loaded turfs. we keep this around in case we need to update linkages or similar
occupantsoccupants that entered this interior through the intended way
reservationturf reservation where we will load our interior
templatemap template to load as the interior
this_areathe interior area. you should only be using 1 area for the whole thing, if you're not, make this support it lol

Procs

connect_atomsconnects all atoms as needed to the interior. seperate so it can be used in debugging
handle_area_leavewhen someone who entered the "proper" way leaves the area, remove them as an occupant without teleporting
handle_container_delcalled when parent container is deleted
handle_occupant_delcalled when a mob gets deleted while an occupant
init_mapactual inits the map, seperate proc because otherwise it fails linter due to "sleep in new"
mob_entercalled when we want to move a mob into the interior
mob_leavecalled when we want to remove a mob from the interior
on_container_entercalled when someone enters the container
+

Var Details

container + + + + +

+

container that this interior is attached to; what we are the inside of

exit_callback + + + + +

+

callback to execute when we want to eject the mob

loaded_turfs + + + + +

+

list of all loaded turfs. we keep this around in case we need to update linkages or similar

occupants + + + + +

+

occupants that entered this interior through the intended way

reservation + + + + +

+

turf reservation where we will load our interior

template + + + + +

+

map template to load as the interior

this_area + + + + +

+

the interior area. you should only be using 1 area for the whole thing, if you're not, make this support it lol

Proc Details

connect_atoms +

+

connects all atoms as needed to the interior. seperate so it can be used in debugging

handle_area_leave +

+

when someone who entered the "proper" way leaves the area, remove them as an occupant without teleporting

handle_container_del +

+

called when parent container is deleted

handle_occupant_del +

+

called when a mob gets deleted while an occupant

init_map +

+

actual inits the map, seperate proc because otherwise it fails linter due to "sleep in new"

mob_enter +

+

called when we want to move a mob into the interior

mob_leave +

+

called when we want to remove a mob from the interior

on_container_enter +

+

called when someone enters the container

+ + + diff --git a/datum/interior/armored.html b/datum/interior/armored.html new file mode 100644 index 0000000000000..bf29d6ec8e66a --- /dev/null +++ b/datum/interior/armored.html @@ -0,0 +1,50 @@ + + + + + + + /datum/interior/armored - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

armored + + + +

+ + + + +

Vars

breechmain cannon ammo management
doordoor to enter and leave the tank. TODO: make this support multiple doors
secondary_breechsecondary gun ammo management
+

Var Details

breech + + + + +

+

main cannon ammo management

door + + + + +

+

door to enter and leave the tank. TODO: make this support multiple doors

secondary_breech + + + + +

+

secondary gun ammo management

+ + + diff --git a/datum/internal_organ.html b/datum/internal_organ.html new file mode 100644 index 0000000000000..21649a543500d --- /dev/null +++ b/datum/internal_organ.html @@ -0,0 +1,57 @@ + + + + + + + /datum/internal_organ - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

internal_organ + + + +

+ +

INTERNAL ORGANS

+ + + +

Vars

damage_descriptionThe effects when this limb is damaged. Used by health analyzers.
organ_statusState of the organ

Procs

clean_ownerSignal handler to prevent hard del
set_organ_statusSet the correct organ state
+

Var Details

damage_description + + + + +

+

The effects when this limb is damaged. Used by health analyzers.

organ_status + + + + +

+

State of the organ

Proc Details

clean_owner +

+

Signal handler to prevent hard del

set_organ_status +

+

Set the correct organ state

+ + + diff --git a/datum/internal_organ/kidneys.html b/datum/internal_organ/kidneys.html new file mode 100644 index 0000000000000..ecfa37810dcbd --- /dev/null +++ b/datum/internal_organ/kidneys.html @@ -0,0 +1,78 @@ + + + + + + + /datum/internal_organ/kidneys - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

kidneys + + + +

+ + + + + + + + +

Vars

current_medicine_capHow many drugs we can take before they overwhelm us. Decreases with damage
current_medicine_countTracks the number of reagent/medicine datums we currently have
new_medicinesTotal medicines added since last tick
old_overflowWhether we were over cap the last time we checked.
removed_medicinesTotal medicines removed since last tick

Procs

owner_added_reagentSignaled proc. Check if the added reagent was under reagent/medicine. If so, increment medicine counter and potentially notify owner.
owner_removed_reagentSignaled proc. Check if the removed reagent was under reagent/medicine. If so, decrement medicine counter and potentially notify owner.
+

Var Details

current_medicine_cap + + + + +

+

How many drugs we can take before they overwhelm us. Decreases with damage

current_medicine_count + + + + +

+

Tracks the number of reagent/medicine datums we currently have

new_medicines + + + + +

+

Total medicines added since last tick

old_overflow + + + + +

+

Whether we were over cap the last time we checked.

removed_medicines + + + + +

+

Total medicines removed since last tick

Proc Details

owner_added_reagent +

+

Signaled proc. Check if the added reagent was under reagent/medicine. If so, increment medicine counter and potentially notify owner.

owner_removed_reagent +

+

Signaled proc. Check if the removed reagent was under reagent/medicine. If so, decrement medicine counter and potentially notify owner.

+ + + diff --git a/datum/internal_organ/liver.html b/datum/internal_organ/liver.html new file mode 100644 index 0000000000000..7145c4b3c90fb --- /dev/null +++ b/datum/internal_organ/liver.html @@ -0,0 +1,43 @@ + + + + + + + /datum/internal_organ/liver - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

liver + + + +

+ + + +

Vars

alcohol_tolerancelower value, higher resistance.
filter_rateHow fast we clean out toxins/toxloss. Adjusts based on organ damage.
+

Var Details

alcohol_tolerance + + + + +

+

lower value, higher resistance.

filter_rate + + + + +

+

How fast we clean out toxins/toxloss. Adjusts based on organ damage.

+ + + diff --git a/datum/item_representation.html b/datum/item_representation.html new file mode 100644 index 0000000000000..b611e2d832408 --- /dev/null +++ b/datum/item_representation.html @@ -0,0 +1,101 @@ + + + + + + + /datum/item_representation - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

item_representation + + + +

+ +

Light weight representation of an obj/item +This allow us to manipulate and store a lot of item-like objects, without it costing a ton of memory or having to instantiate all items +This also allow to save loadouts with jatum, because it doesn't accept obj/item

+ + + + + + + +

Vars

bypass_vendor_checkIf it's allowed to bypass the vendor check
colorsIf the item has greyscale colors, they are saved here
contentsThe contents in the storage (If there is storage)
item_typeThe type of the object represented, to allow us to create the object when needed
variantIf the item has an icon_state variant, save it.

Procs

get_tgui_dataThis is in charge of generating a visualisation of the item, that will then be gave to TGUI
instantiate_current_storage_datumLike instantiate_object(), but returns a /datum instead of a /item, master is REQUIRED and it must be at least an atom
instantiate_objectThis will attempt to instantiate an object. +First, it tries to find that object in a vendor with enough supplies. +If it finds one vendor with that item in reserve, it sells it and instantiate that item. +If it fails to find a vendor, it will add that item to a list on seller to warns him that it failed +Seller: The datum in charge of checking for points and buying_flags +Master: used for modules, when the item need to be installed on master. Can be null +User: The human trying to equip this item +Return the instantatiated item if it was successfully sold, and return null otherwise
+

Var Details

bypass_vendor_check + + + + +

+

If it's allowed to bypass the vendor check

colors + + + + +

+

If the item has greyscale colors, they are saved here

contents + + + + +

+

The contents in the storage (If there is storage)

item_type + + + + +

+

The type of the object represented, to allow us to create the object when needed

variant + + + + +

+

If the item has an icon_state variant, save it.

Proc Details

get_tgui_data +

+

This is in charge of generating a visualisation of the item, that will then be gave to TGUI

instantiate_current_storage_datum +

+

Like instantiate_object(), but returns a /datum instead of a /item, master is REQUIRED and it must be at least an atom

instantiate_object +

+

This will attempt to instantiate an object. +First, it tries to find that object in a vendor with enough supplies. +If it finds one vendor with that item in reserve, it sells it and instantiate that item. +If it fails to find a vendor, it will add that item to a list on seller to warns him that it failed +Seller: The datum in charge of checking for points and buying_flags +Master: used for modules, when the item need to be installed on master. Can be null +User: The human trying to equip this item +Return the instantatiated item if it was successfully sold, and return null otherwise

+ + + diff --git a/datum/item_representation/armor_module.html b/datum/item_representation/armor_module.html new file mode 100644 index 0000000000000..c381879a9127c --- /dev/null +++ b/datum/item_representation/armor_module.html @@ -0,0 +1,44 @@ + + + + + + + /datum/item_representation/armor_module - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

armor_module + + + +

+ +

Allow to representate an module of a jaeger +This is only able to representate items of type /obj/item/armor_module

+ +

Vars

attachmentsList of attachments on the armor.

Procs

install_on_armorAttach the instantiated item on an armor
+

Var Details

attachments + + + + +

+

List of attachments on the armor.

Proc Details

install_on_armor +

+

Attach the instantiated item on an armor

+ + + diff --git a/datum/item_representation/armor_module/armor.html b/datum/item_representation/armor_module/armor.html new file mode 100644 index 0000000000000..386e40f489e15 --- /dev/null +++ b/datum/item_representation/armor_module/armor.html @@ -0,0 +1,36 @@ + + + + + + + /datum/item_representation/armor_module/armor - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

armor + + + +

+ + +

Vars

current_variantIcon_state suffix for the saved icon_state varient.
+

Var Details

current_variant + + + + +

+

Icon_state suffix for the saved icon_state varient.

+ + + diff --git a/datum/item_representation/armor_module/colored.html b/datum/item_representation/armor_module/colored.html new file mode 100644 index 0000000000000..9486bcf16663b --- /dev/null +++ b/datum/item_representation/armor_module/colored.html @@ -0,0 +1,36 @@ + + + + + + + /datum/item_representation/armor_module/colored - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

colored + + + +

+ + +

Vars

greyscale_colorsThe color of that armor module
+

Var Details

greyscale_colors + + + + +

+

The color of that armor module

+ + + diff --git a/datum/item_representation/armor_module/storage.html b/datum/item_representation/armor_module/storage.html new file mode 100644 index 0000000000000..d2775c24908a4 --- /dev/null +++ b/datum/item_representation/armor_module/storage.html @@ -0,0 +1,36 @@ + + + + + + + /datum/item_representation/armor_module/storage - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

storage + + + +

+ + +

Vars

storageStorage repressentation of storage modules.
+

Var Details

storage + + + + +

+

Storage repressentation of storage modules.

+ + + diff --git a/datum/item_representation/armor_suit.html b/datum/item_representation/armor_suit.html new file mode 100644 index 0000000000000..6e42752e8ed6e --- /dev/null +++ b/datum/item_representation/armor_suit.html @@ -0,0 +1,37 @@ + + + + + + + /datum/item_representation/armor_suit - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

armor_suit + + + +

+ +

Allow to representate a armor with any modules it might have +This is only able to representate items of type /obj/item/clothing/suit

+

Vars

attachmentsList of attachments on the armor.
+

Var Details

attachments + + + + +

+

List of attachments on the armor.

+ + + diff --git a/datum/item_representation/armor_suit/modular_armor.html b/datum/item_representation/armor_suit/modular_armor.html new file mode 100644 index 0000000000000..86e4c57e298cc --- /dev/null +++ b/datum/item_representation/armor_suit/modular_armor.html @@ -0,0 +1,37 @@ + + + + + + + /datum/item_representation/armor_suit/modular_armor - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

modular_armor + + + +

+ +

Allow to representate a armor with any modules it might have +This is only able to representate items of type /obj/item/clothing/suit

+

Vars

current_variantIcon_state suffix for the saved icon_state variant.
+

Var Details

current_variant + + + + +

+

Icon_state suffix for the saved icon_state variant.

+ + + diff --git a/datum/item_representation/boot.html b/datum/item_representation/boot.html new file mode 100644 index 0000000000000..14996dc83e6f2 --- /dev/null +++ b/datum/item_representation/boot.html @@ -0,0 +1,36 @@ + + + + + + + /datum/item_representation/boot - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

boot + + + +

+ + +

Vars

attachmentsList of attachments on the boot.
+

Var Details

attachments + + + + +

+

List of attachments on the boot.

+ + + diff --git a/datum/item_representation/gun.html b/datum/item_representation/gun.html new file mode 100644 index 0000000000000..96b9302e88dd2 --- /dev/null +++ b/datum/item_representation/gun.html @@ -0,0 +1,44 @@ + + + + + + + /datum/item_representation/gun - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

gun + + + +

+ +

Allow to representate a gun with its attachements +This is only able to represent guns and child of gun

+ +

Vars

attachmentsFlat list of the representations of the attachements on the gun

Procs

install_on_gunInstantiates and instals the type onto gun_to_attach
+

Var Details

attachments + + + + +

+

Flat list of the representations of the attachements on the gun

Proc Details

install_on_gun +

+

Instantiates and instals the type onto gun_to_attach

+ + + diff --git a/datum/item_representation/gun_attachement.html b/datum/item_representation/gun_attachement.html new file mode 100644 index 0000000000000..3bdad086a49f7 --- /dev/null +++ b/datum/item_representation/gun_attachement.html @@ -0,0 +1,35 @@ + + + + + + + /datum/item_representation/gun_attachement - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

gun_attachement + + + +

+ +

Allow to representate a gun attachement

+

Procs

install_on_gunAttach the instantiated attachment to the gun

Proc Details

install_on_gun +

+

Attach the instantiated attachment to the gun

+ + + diff --git a/datum/item_representation/handful_representation.html b/datum/item_representation/handful_representation.html new file mode 100644 index 0000000000000..162cdc99ac09f --- /dev/null +++ b/datum/item_representation/handful_representation.html @@ -0,0 +1,57 @@ + + + + + + + /datum/item_representation/handful_representation - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

handful_representation + + + +

+ +

Able to representate a handfull

+ + + +

Vars

ammoThe ammo of the handful
caliberThe caliber of the handful
icon_stateIcon state of the handful
max_roundsThe maxium of rounds this handful can contains
+

Var Details

ammo + + + + +

+

The ammo of the handful

caliber + + + + +

+

The caliber of the handful

icon_state + + + + +

+

Icon state of the handful

max_rounds + + + + +

+

The maxium of rounds this handful can contains

+ + + diff --git a/datum/item_representation/hat.html b/datum/item_representation/hat.html new file mode 100644 index 0000000000000..3ebf8d0ef07c7 --- /dev/null +++ b/datum/item_representation/hat.html @@ -0,0 +1,37 @@ + + + + + + + /datum/item_representation/hat - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

hat + + + +

+ +

Allow to representate a hat +This is only able to representate items of type /obj/item/clothing/head

+

Vars

attachmentsThe attachments installed.
+

Var Details

attachments + + + + +

+

The attachments installed.

+ + + diff --git a/datum/item_representation/hat/modular_helmet.html b/datum/item_representation/hat/modular_helmet.html new file mode 100644 index 0000000000000..066f94d86e7ff --- /dev/null +++ b/datum/item_representation/hat/modular_helmet.html @@ -0,0 +1,37 @@ + + + + + + + /datum/item_representation/hat/modular_helmet - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

modular_helmet + + + +

+ +

Allow to representate a modular helmet, and to color it +This is only able to representate items of type /obj/item/clothing/head/modular

+

Vars

current_variantIcon_state suffix for the saved icon_state varient.
+

Var Details

current_variant + + + + +

+

Icon_state suffix for the saved icon_state varient.

+ + + diff --git a/datum/item_representation/id.html b/datum/item_representation/id.html new file mode 100644 index 0000000000000..55659ab6dee73 --- /dev/null +++ b/datum/item_representation/id.html @@ -0,0 +1,43 @@ + + + + + + + /datum/item_representation/id - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

id + + + +

+ +

Allow to representate an id card (/obj/item/card/id)

+ +

Vars

accessthe access of the id
iff_signalthe iff signal registered on the id
+

Var Details

access + + + + +

+

the access of the id

iff_signal + + + + +

+

the iff signal registered on the id

+ + + diff --git a/datum/item_representation/modular_armor.html b/datum/item_representation/modular_armor.html new file mode 100644 index 0000000000000..408e11d022be5 --- /dev/null +++ b/datum/item_representation/modular_armor.html @@ -0,0 +1,43 @@ + + + + + + + /datum/item_representation/modular_armor - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

modular_armor + + + +

+ + + +

Vars

attachmentsList of attachments on the armor.
current_variantIcon_state suffix for the saved icon_state varient.
+

Var Details

attachments + + + + +

+

List of attachments on the armor.

current_variant + + + + +

+

Icon_state suffix for the saved icon_state varient.

+ + + diff --git a/datum/item_representation/modular_helmet.html b/datum/item_representation/modular_helmet.html new file mode 100644 index 0000000000000..ca76251feb998 --- /dev/null +++ b/datum/item_representation/modular_helmet.html @@ -0,0 +1,50 @@ + + + + + + + /datum/item_representation/modular_helmet - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

modular_helmet + + + +

+ + + + +

Vars

attachmentsThe attachments installed.
current_variantIcon_state suffix for the saved icon_state varient.
greyscale_colorsThe color of the helmet
+

Var Details

attachments + + + + +

+

The attachments installed.

current_variant + + + + +

+

Icon_state suffix for the saved icon_state varient.

greyscale_colors + + + + +

+

The color of the helmet

+ + + diff --git a/datum/item_representation/stack.html b/datum/item_representation/stack.html new file mode 100644 index 0000000000000..e0b580305d64f --- /dev/null +++ b/datum/item_representation/stack.html @@ -0,0 +1,36 @@ + + + + + + + /datum/item_representation/stack - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

stack + + + +

+ +

Allow to representate stacks of item of type /obj/item/stack

+

Vars

amountAmount of items in the stack
+

Var Details

amount + + + + +

+

Amount of items in the stack

+ + + diff --git a/datum/item_representation/suit_with_storage.html b/datum/item_representation/suit_with_storage.html new file mode 100644 index 0000000000000..d904762ed9d89 --- /dev/null +++ b/datum/item_representation/suit_with_storage.html @@ -0,0 +1,36 @@ + + + + + + + /datum/item_representation/suit_with_storage - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

suit_with_storage + + + +

+ + +

Vars

pocketsThe storage of the suit
+

Var Details

pockets + + + + +

+

The storage of the suit

+ + + diff --git a/datum/item_representation/uniform_representation.html b/datum/item_representation/uniform_representation.html new file mode 100644 index 0000000000000..9ad18af83e709 --- /dev/null +++ b/datum/item_representation/uniform_representation.html @@ -0,0 +1,44 @@ + + + + + + + /datum/item_representation/uniform_representation - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

uniform_representation + + + +

+ +

Allow to representate an uniform and its tie (webbings and such) +This is only able to represent /obj/item/clothing/under

+ +

Vars

attachmentsList of attachments on the armor.
current_variantIcon_state suffix for the saved icon_state varient.
+

Var Details

attachments + + + + +

+

List of attachments on the armor.

current_variant + + + + +

+

Icon_state suffix for the saved icon_state varient.

+ + + diff --git a/datum/job.html b/datum/job.html new file mode 100644 index 0000000000000..d748e89f313dc --- /dev/null +++ b/datum/job.html @@ -0,0 +1,141 @@ + + + + + + + /datum/job - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

job + + + +

+ + + + + + + + + + + + + + + + + +

Vars

current_positionsHow many positions of this job currently occupied
html_descriptionDescription shown in the player's job preferences
job_costhow many job slots, if any this takes up per job
job_pointsPoints assigned dynamically to open new positions
job_points_neededHow many points needed to open up a new slot
job_traitsAny special traits that are assigned for this job
max_positionsHow many positions can be dynamically assigned
minimap_iconstring; typepath for the icon that this job will show on the minimap
multiple_outfitswhether the job has multiple outfits
outfitslist of outfit variants
skills_typeSkills for this job
total_positionsThe total number of positions for this job

Procs

add_job_pointsAdds to job points, adding a new slot if threshold reached
on_pre_setupcalled during gamemode pre_setup, use for stuff like roundstart poplock
radio_help_messageThe message you get when spawning in as this job, called by [/datum/job/proc/after_spawn]
remove_job_pointsRemoves job points, and if needed, job positions
+

Var Details

current_positions + + + + +

+

How many positions of this job currently occupied

html_description + + + + +

+

Description shown in the player's job preferences

job_cost + + + + +

+

how many job slots, if any this takes up per job

job_points + + + + +

+

Points assigned dynamically to open new positions

job_points_needed + + + + +

+

How many points needed to open up a new slot

job_traits + + + + +

+

Any special traits that are assigned for this job

max_positions + + + + +

+

How many positions can be dynamically assigned

minimap_icon + + + + +

+

string; typepath for the icon that this job will show on the minimap

multiple_outfits + + + + +

+

whether the job has multiple outfits

outfits + + + + +

+

list of outfit variants

skills_type + + + + +

+

Skills for this job

total_positions + + + + +

+

The total number of positions for this job

Proc Details

add_job_points +

+

Adds to job points, adding a new slot if threshold reached

on_pre_setup +

+

called during gamemode pre_setup, use for stuff like roundstart poplock

radio_help_message +

+

The message you get when spawning in as this job, called by [/datum/job/proc/after_spawn]

remove_job_points +

+

Removes job points, and if needed, job positions

+ + + diff --git a/datum/job/fallen.html b/datum/job/fallen.html new file mode 100644 index 0000000000000..094ce1967c16a --- /dev/null +++ b/datum/job/fallen.html @@ -0,0 +1,35 @@ + + + + + + + /datum/job/fallen - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

fallen + + + +

+ + +

Procs

delete_mobDelete the mob when you log out or when it's dead

Proc Details

delete_mob +

+

Delete the mob when you log out or when it's dead

+ + + diff --git a/datum/job/xenomorph.html b/datum/job/xenomorph.html new file mode 100644 index 0000000000000..ffc2cd7f27062 --- /dev/null +++ b/datum/job/xenomorph.html @@ -0,0 +1,38 @@ + + + + + + + /datum/job/xenomorph - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

xenomorph + + + +

+ + +

Vars

free_xeno_at_startThis is the amount of "free" xeno jobs opened at the start, even before marines job contributes to the total. +This is a counter to prevent adding more jobs that necessary
+

Var Details

free_xeno_at_start + + + + +

+

This is the amount of "free" xeno jobs opened at the start, even before marines job contributes to the total. +This is a counter to prevent adding more jobs that necessary

+ + + diff --git a/datum/keybinding.html b/datum/keybinding.html new file mode 100644 index 0000000000000..99c0baac2d738 --- /dev/null +++ b/datum/keybinding.html @@ -0,0 +1,35 @@ + + + + + + + /datum/keybinding - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

keybinding + + + +

+ + +

Procs

get_keys_formattedreturns the keys that the keybinding is currently triggered by

Proc Details

get_keys_formatted +

+

returns the keys that the keybinding is currently triggered by

+ + + diff --git a/datum/keybinding/custom_emote.html b/datum/keybinding/custom_emote.html new file mode 100644 index 0000000000000..4c859daf53632 --- /dev/null +++ b/datum/keybinding/custom_emote.html @@ -0,0 +1,43 @@ + + + + + + + /datum/keybinding/custom_emote - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

custom_emote + + + +

+ + + +

Vars

custom_emote_idThey ID of the custom emote

Procs

set_idLink the keybind and the custom emote
+

Var Details

custom_emote_id + + + + +

+

They ID of the custom emote

Proc Details

set_id +

+

Link the keybind and the custom emote

+ + + diff --git a/datum/keybinding/emote.html b/datum/keybinding/emote.html new file mode 100644 index 0000000000000..ca5247c4f2198 --- /dev/null +++ b/datum/keybinding/emote.html @@ -0,0 +1,43 @@ + + + + + + + /datum/keybinding/emote - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

emote + + + +

+ + + +

Vars

emote_keyThey key of this emote

Procs

link_to_emoteAssociate that keybind with an emote
+

Var Details

emote_key + + + + +

+

They key of this emote

Proc Details

+

Associate that keybind with an emote

+ + + diff --git a/datum/keybinding/human/quick_equip.html b/datum/keybinding/human/quick_equip.html new file mode 100644 index 0000000000000..8a8c05088a8a2 --- /dev/null +++ b/datum/keybinding/human/quick_equip.html @@ -0,0 +1,36 @@ + + + + + + + /datum/keybinding/human/quick_equip - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

quick_equip + + + +

+ + +

Vars

quick_equip_slotThe quick equip slot the keybind will equip to, checked by the reciever of the keybind signal.
+

Var Details

quick_equip_slot + + + + +

+

The quick equip slot the keybind will equip to, checked by the reciever of the keybind signal.

+ + + diff --git a/datum/language_holder.html b/datum/language_holder.html new file mode 100644 index 0000000000000..8fcfa69d992dc --- /dev/null +++ b/datum/language_holder.html @@ -0,0 +1,35 @@ + + + + + + + /datum/language_holder - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

language_holder + + + +

+ + +

Procs

clean_languageClean src when it's owner is deleted

Proc Details

clean_language +

+

Clean src when it's owner is deleted

+ + + diff --git a/datum/lasrifle.html b/datum/lasrifle.html new file mode 100644 index 0000000000000..06d17ca239eeb --- /dev/null +++ b/datum/lasrifle.html @@ -0,0 +1,120 @@ + + + + + + + /datum/lasrifle - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

lasrifle + + + +

+ + + + + + + + + + + + + + +

Vars

ammo_datum_typethe ammo datum this mode is.
burst_amountGives guns a burst amount, editable.
descriptioncodex description
fire_delayhow long it takes between each shot of that mode, same as gun fire delay.
fire_modeUsed to change the gun firemode, like automatic, semi-automatic and burst.
fire_soundThe gun firing sound of this mode
heat_per_fireheat amount per shot
icon_statewhat to change the gun icon_state to when switching to this mode.
message_to_userWhat message it sends to the user when you switch to this mode.
radial_iconWhich icon file the radial menu will use.
radial_icon_stateThe icon state the radial menu will use.
rounds_per_shothow much power the gun uses on this mode when shot.
windup_delaywindup before firing
+

Var Details

ammo_datum_type + + + + +

+

the ammo datum this mode is.

burst_amount + + + + +

+

Gives guns a burst amount, editable.

description + + + + +

+

codex description

fire_delay + + + + +

+

how long it takes between each shot of that mode, same as gun fire delay.

fire_mode + + + + +

+

Used to change the gun firemode, like automatic, semi-automatic and burst.

fire_sound + + + + +

+

The gun firing sound of this mode

heat_per_fire + + + + +

+

heat amount per shot

icon_state + + + + +

+

what to change the gun icon_state to when switching to this mode.

message_to_user + + + + +

+

What message it sends to the user when you switch to this mode.

radial_icon + + + + +

+

Which icon file the radial menu will use.

radial_icon_state + + + + +

+

The icon state the radial menu will use.

rounds_per_shot + + + + +

+

how much power the gun uses on this mode when shot.

windup_delay + + + + +

+

windup before firing

+ + + diff --git a/datum/limb.html b/datum/limb.html new file mode 100644 index 0000000000000..0d5e4bc7312e9 --- /dev/null +++ b/datum/limb.html @@ -0,0 +1,260 @@ + + + + + + + /datum/limb - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

limb + + + +

+ +

EXTERNAL ORGANS

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

base_regenAmount of damage this limb regenerates per tick while treated before multi-limb regen penalty
brute_dambrute damage this limb has taken as a part
burn_damburn damage this limb has taken as a part
cover_indexWhat % of the body does this limb cover. Make sure that the sum is always 100.
damage_msgMessage that displays when you feel pain from this limb
germ_levelINTERNAL germs inside the organ, this is BAD if it's greater than INFECTION_LEVEL_ONE
icon_positionWhether the icon created for this limb is LEFT, RIGHT or 0. Currently utilised for legs and feet
implants/obj/item/implant Implants contained within this specific limb
in_surgery_opWhether someone is currently doing surgery on this limb
internal_organsList of Internal organs of this body part
max_damageMax damage the limb can take. Extremities sever when they have at least LIMB_MAX_DAMAGE_SEVER_RATIO as a fraction of this in brute damage.
nameActual name of the limb
next_infection_messageKeeps track of the last time the limb bothered its owner about infection to prevent spam.
ownerHuman owner mob of this limb
splint_healthHow many instances of damage the limb can take before its splints fall off
vitalWhether this limb is vital, if true you die on losing it (todo make a flag)
wound_update_accuracyhow often wounds should be updated, a higher number means less often

Procs

add_internal_bleedingFor testing convenience. Adds one internal_bleeding wound to the limb.
apply_splintsapplies a splint stack to this limb. should probably be more generic but #notit
biotizeused to give LIMB_BIOTIC flag to the limb
clean_ownerSignal handler to clean owner and prevent hardel
createwoundActually applies the damage to the limb. Use this directly to bypass 'hitting' the limb with regard to splints, internal wounds, and dismemberment.
emp_actDAMAGE PROCS
extra_splint_checksextra checks to perform during [/proc/apply_splints] do_after
has_external_woundTrue if the limb has any damage on it
need_processPROCESSING & UPDATING
rejuvenateThis proc completely restores a damaged organ to perfect condition.
release_restraintsHELPERS
reset_limb_surgeriescalled when limb is removed or robotized, any ongoing surgery and related vars are reset
robotizeEmit a signal for autodoc to support the life if available
setAmputatedTreeDISMEMBERMENT
update_bleedingUpdates LIMB_BLEEDING limb flag
update_woundsUpdating wounds. Handles natural damage healing from limb treatments and processes internal wounds
+

Var Details

base_regen + + + + +

+

Amount of damage this limb regenerates per tick while treated before multi-limb regen penalty

brute_dam + + + + +

+

brute damage this limb has taken as a part

burn_dam + + + + +

+

burn damage this limb has taken as a part

cover_index + + + + +

+

What % of the body does this limb cover. Make sure that the sum is always 100.

damage_msg + + + + +

+

Message that displays when you feel pain from this limb

germ_level + + + + +

+

INTERNAL germs inside the organ, this is BAD if it's greater than INFECTION_LEVEL_ONE

icon_position + + + + +

+

Whether the icon created for this limb is LEFT, RIGHT or 0. Currently utilised for legs and feet

implants + + + + +

+

/obj/item/implant Implants contained within this specific limb

in_surgery_op + + + + +

+

Whether someone is currently doing surgery on this limb

internal_organs + + + + +

+

List of Internal organs of this body part

max_damage + + + + +

+

Max damage the limb can take. Extremities sever when they have at least LIMB_MAX_DAMAGE_SEVER_RATIO as a fraction of this in brute damage.

name + + + + +

+

Actual name of the limb

next_infection_message + + + + +

+

Keeps track of the last time the limb bothered its owner about infection to prevent spam.

owner + + + + +

+

Human owner mob of this limb

splint_health + + + + +

+

How many instances of damage the limb can take before its splints fall off

vital + + + + +

+

Whether this limb is vital, if true you die on losing it (todo make a flag)

wound_update_accuracy + + + + +

+

how often wounds should be updated, a higher number means less often

Proc Details

add_internal_bleeding +

+

For testing convenience. Adds one internal_bleeding wound to the limb.

apply_splints +

+

applies a splint stack to this limb. should probably be more generic but #notit

biotize +

+

used to give LIMB_BIOTIC flag to the limb

clean_owner +

+

Signal handler to clean owner and prevent hardel

createwound +

+

Actually applies the damage to the limb. Use this directly to bypass 'hitting' the limb with regard to splints, internal wounds, and dismemberment.

emp_act +

+

DAMAGE PROCS

extra_splint_checks +

+

extra checks to perform during [/proc/apply_splints] do_after

has_external_wound +

+

True if the limb has any damage on it

need_process +

+

PROCESSING & UPDATING

rejuvenate +

+

This proc completely restores a damaged organ to perfect condition.

release_restraints +

+

HELPERS

reset_limb_surgeries +

+

called when limb is removed or robotized, any ongoing surgery and related vars are reset

robotize +

+

Emit a signal for autodoc to support the life if available

setAmputatedTree +

+

DISMEMBERMENT

update_bleeding +

+

Updates LIMB_BLEEDING limb flag

update_wounds +

+

Updating wounds. Handles natural damage healing from limb treatments and processes internal wounds

+ + + diff --git a/datum/loadout.html b/datum/loadout.html new file mode 100644 index 0000000000000..b6a0688c5b536 --- /dev/null +++ b/datum/loadout.html @@ -0,0 +1,107 @@ + + + + + + + /datum/loadout - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

loadout + + + +

+ + + + + + + + + + + +

Vars

item_listAssoc list of all visible items composing this loadout +the key of each item is a slot key +each item of the list is a datum/item_representation
jobThe job associated with the loadout
loadout_vendorThe host of the loadout_manager, aka from which loadout vendor are you managing loadouts
nameName of the loadout
versionThe version of this loadout

Procs

can_equip_to_slotCheck if the item can go to the specified slot
empty_slotEmpty a slot of the loadout
equip_mobThis will equip the mob with all items of the loadout. +user : the mob to dress
prepare_items_dataCreate all the necessary data (icons, name of items) from the loadout, and put them in an assoc list to be used by tgui
save_mob_loadoutThis will read all items on the mob, and if the item is supported by the loadout maker, will save it in the corresponding slot +An item is supported if it's path
+

Var Details

item_list + + + + +

+

Assoc list of all visible items composing this loadout +the key of each item is a slot key +each item of the list is a datum/item_representation

job + + + + +

+

The job associated with the loadout

loadout_vendor + + + + +

+

The host of the loadout_manager, aka from which loadout vendor are you managing loadouts

name + + + + +

+

Name of the loadout

version + + + + +

+

The version of this loadout

Proc Details

can_equip_to_slot +

+

Check if the item can go to the specified slot

empty_slot +

+

Empty a slot of the loadout

equip_mob +

+

This will equip the mob with all items of the loadout. +user : the mob to dress

prepare_items_data +

+

Create all the necessary data (icons, name of items) from the loadout, and put them in an assoc list to be used by tgui

save_mob_loadout +

+

This will read all items on the mob, and if the item is supported by the loadout maker, will save it in the corresponding slot +An item is supported if it's path

+ + + diff --git a/datum/loadout_item.html b/datum/loadout_item.html new file mode 100644 index 0000000000000..0f37d37cf9841 --- /dev/null +++ b/datum/loadout_item.html @@ -0,0 +1,169 @@ + + + + + + + /datum/loadout_item - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

loadout_item + + + +

+ + + + + + + + + + + + + + + + + + + + + +

Vars

descItem desc
item_blacklistassoc list by slot of items blacklisted for this to be equipped
item_slotinventory slot it is intended to go into
item_typepathTypepath of the actual item this datum represents
item_whitelistassoc list by slot of items required for this to be equipped. Requires only 1 out of the list
jobs_supportedJob types that this perk is available to
loadout_item_flagsBehavior flags for loadout items
nameItem name
purchase_costCost to use this option
quantityThe amount of this available per mission. -1 for unlimited
req_descAddition desc for special reqs such as black/whitelist
ui_iconUI icon for this item
unlock_costCost to unlock this option

Procs

blacklist_checkChecks if a loadout has any blacklisted items
equip_mandatory_itemEquips a mandatory item when src is equipt for player convenience
item_checksAttempts to add an item to a loadout
on_holder_equipAny additional behavior when this datum is equipped to an outfit_holder
post_equipAny post equip things related to this item
role_post_equipA separate post equip proc for role specific code. Split for more flexible parent overriding
whitelist_checkchecks if a loadout has one or more whitelist items
+

Var Details

desc + + + + +

+

Item desc

item_blacklist + + + + +

+

assoc list by slot of items blacklisted for this to be equipped

item_slot + + + + +

+

inventory slot it is intended to go into

item_typepath + + + + +

+

Typepath of the actual item this datum represents

item_whitelist + + + + +

+

assoc list by slot of items required for this to be equipped. Requires only 1 out of the list

jobs_supported + + + + +

+

Job types that this perk is available to

loadout_item_flags + + + + +

+

Behavior flags for loadout items

name + + + + +

+

Item name

purchase_cost + + + + +

+

Cost to use this option

quantity + + + + +

+

The amount of this available per mission. -1 for unlimited

req_desc + + + + +

+

Addition desc for special reqs such as black/whitelist

ui_icon + + + + +

+

UI icon for this item

unlock_cost + + + + +

+

Cost to unlock this option

Proc Details

blacklist_check +

+

Checks if a loadout has any blacklisted items

equip_mandatory_item +

+

Equips a mandatory item when src is equipt for player convenience

item_checks +

+

Attempts to add an item to a loadout

on_holder_equip +

+

Any additional behavior when this datum is equipped to an outfit_holder

post_equip +

+

Any post equip things related to this item

role_post_equip +

+

A separate post equip proc for role specific code. Split for more flexible parent overriding

whitelist_check +

+

checks if a loadout has one or more whitelist items

+ + + diff --git a/datum/loadout_item/secondary/gun.html b/datum/loadout_item/secondary/gun.html new file mode 100644 index 0000000000000..d60c00755f8c1 --- /dev/null +++ b/datum/loadout_item/secondary/gun.html @@ -0,0 +1,36 @@ + + + + + + + /datum/loadout_item/secondary/gun - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

gun + + + +

+ + +

Vars

secondary_weapon_ammoAmmo type this gun will use
+

Var Details

secondary_weapon_ammo + + + + +

+

Ammo type this gun will use

+ + + diff --git a/datum/loadout_item/suit_store/main_gun.html b/datum/loadout_item/suit_store/main_gun.html new file mode 100644 index 0000000000000..ceb81d536a5e0 --- /dev/null +++ b/datum/loadout_item/suit_store/main_gun.html @@ -0,0 +1,43 @@ + + + + + + + /datum/loadout_item/suit_store/main_gun - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

main_gun + + + +

+ + + +

Vars

ammo_typeAmmo type this gun will use
secondary_ammo_typealt ammo type for this gun
+

Var Details

ammo_type + + + + +

+

Ammo type this gun will use

secondary_ammo_type + + + + +

+

alt ammo type for this gun

+ + + diff --git a/datum/loadout_manager.html b/datum/loadout_manager.html new file mode 100644 index 0000000000000..b4975e435eb12 --- /dev/null +++ b/datum/loadout_manager.html @@ -0,0 +1,93 @@ + + + + + + + /datum/loadout_manager - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

loadout_manager + + + +

+ +

This datum in charge with selecting wich loadout is currently being edited +It also contains a tgui to navigate beetween loadouts

+ + + + + + + + +

Vars

loadout_vendorThe host of the loadout_manager, aka from which loadout vendor are you managing loadouts
loadouts_dataList of all loadouts. Format is list(list(loadout_job, loadout_name))
versionThe version of the loadout manager

Procs

add_loadoutAdd the name and the job of a datum/loadout into the list of all loadout data
close_uiWrapper proc to handle loadout vendor being qdeleted while we have loadout manager opened
delete_loadoutRemove the data of a loadout from the loadouts list
legacy_version_fixModifies a legacy loadout to make it valid for the current loadout version
set_hostWrapper proc to set the host of our ui datum, aka the loadout vendor that's showing us the loadouts
update_attachmentsRecursive function to update attachment lists.
+

Var Details

loadout_vendor + + + + +

+

The host of the loadout_manager, aka from which loadout vendor are you managing loadouts

loadouts_data + + + + +

+

List of all loadouts. Format is list(list(loadout_job, loadout_name))

version + + + + +

+

The version of the loadout manager

Proc Details

add_loadout +

+

Add the name and the job of a datum/loadout into the list of all loadout data

close_ui +

+

Wrapper proc to handle loadout vendor being qdeleted while we have loadout manager opened

delete_loadout +

+

Remove the data of a loadout from the loadouts list

legacy_version_fix +

+

Modifies a legacy loadout to make it valid for the current loadout version

set_host +

+

Wrapper proc to set the host of our ui datum, aka the loadout vendor that's showing us the loadouts

update_attachments +

+

Recursive function to update attachment lists.

+ + + diff --git a/datum/loadout_seller.html b/datum/loadout_seller.html new file mode 100644 index 0000000000000..ad8e938ba31b8 --- /dev/null +++ b/datum/loadout_seller.html @@ -0,0 +1,108 @@ + + + + + + + /datum/loadout_seller - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

loadout_seller + + + +

+ +

Small loadout in charge of dealing with a user trying to equip a saved loadout +First it will reserve all items that can be bought, and save the name of all items that cannot be bought +If the list of items that cannot be bought is empty, the transaction will be automaticly accepted and the loadout will be equipped on the user +If it's not empty, it will warn the user and give him the list of non-buyable items. +The user can chose to proceed with the buy, and he is equipped with what was already be bought, +or he can chose to refuse, and then the items are put back in the vendors

+ + + + + + + + + +

Vars

available_pointsHow many points can be used when equipping the loadout
buying_choices_leftThe buying bitfield this marine used to equip the loadout
factionThe faction of the seller.
item_listAssoc list of items in visible slots.
unavailable_itemsHow many items were not available
unique_items_listItems that were taken from essential kits, used to check for duplicates

Procs

do_equip_loadoutWill equip the mob with the items that were bought previously
prepare_to_equip_loadoutWill save all the bought items in item_list, and keep the record of unavailable_items
sell_rest_of_essential_kitIf one item from essential kit was bought, we sell the rest and put in on the ground
try_to_equip_loadoutBuy all items of the loadout from vendors. If some items could not be bought, we warned the user and ask him if he wants to continue. +If the user still want to proceed, we equip the user with the loadout +Else we sell everything back to vendors
+

Var Details

available_points + + + + +

+

How many points can be used when equipping the loadout

buying_choices_left + + + + +

+

The buying bitfield this marine used to equip the loadout

faction + + + + +

+

The faction of the seller.

item_list + + + + +

+

Assoc list of items in visible slots.

unavailable_items + + + + +

+

How many items were not available

unique_items_list + + + + +

+

Items that were taken from essential kits, used to check for duplicates

Proc Details

do_equip_loadout +

+

Will equip the mob with the items that were bought previously

prepare_to_equip_loadout +

+

Will save all the bought items in item_list, and keep the record of unavailable_items

sell_rest_of_essential_kit +

+

If one item from essential kit was bought, we sell the rest and put in on the ground

try_to_equip_loadout +

+

Buy all items of the loadout from vendors. If some items could not be bought, we warned the user and ask him if he wants to continue. +If the user still want to proceed, we equip the user with the loadout +Else we sell everything back to vendors

+ + + diff --git a/datum/log_category.html b/datum/log_category.html new file mode 100644 index 0000000000000..e8d0671d3c99c --- /dev/null +++ b/datum/log_category.html @@ -0,0 +1,121 @@ + + + + + + + /datum/log_category - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

log_category + + + +

+ +

The main datum that contains all log entries for a category

+ + + + + + + + + + + +

Vars

categoryThe category name
config_flagIf set this config flag is checked to enable this log category
entriesList of log entries for this category
entry_countTotal number of entries this round so far
entry_flagsFlags to apply to our /datum/log_entry's +See code/__DEFINES/logging/dm
internal_formattingWhether the readable version of the log message is formatted internally instead of by rustg +IF YOU CHANGE THIS VERIFY LOGS ARE STILL PARSED CORRECTLY
master_categoryThe master category that contains this category
schema_versionThe schema version of this log category. +Expected format of "Major.Minor.Patch"
secretWhether or not this log should not be publically visible

Procs

create_entryAdd an entry to this category. It is very important that any data you provide doesn't hold references to anything!
get_output_fileAllows for category specific file splitting. Needs to accept a null entry for the default file. +If master_category it will always return the output of master_category.get_output_file(entry)
write_entryWrites an entry to the output file(s) for the category
+

Var Details

category + + + + +

+

The category name

config_flag + + + + +

+

If set this config flag is checked to enable this log category

entries + + + + +

+

List of log entries for this category

entry_count + + + + +

+

Total number of entries this round so far

entry_flags + + + + +

+

Flags to apply to our /datum/log_entry's +See code/__DEFINES/logging/dm

internal_formatting + + + + +

+

Whether the readable version of the log message is formatted internally instead of by rustg +IF YOU CHANGE THIS VERIFY LOGS ARE STILL PARSED CORRECTLY

master_category + + + + +

+

The master category that contains this category

schema_version + + + + +

+

The schema version of this log category. +Expected format of "Major.Minor.Patch"

secret + + + + +

+

Whether or not this log should not be publically visible

Proc Details

create_entry +

+

Add an entry to this category. It is very important that any data you provide doesn't hold references to anything!

get_output_file +

+

Allows for category specific file splitting. Needs to accept a null entry for the default file. +If master_category it will always return the output of master_category.get_output_file(entry)

write_entry +

+

Writes an entry to the output file(s) for the category

+ + + diff --git a/datum/log_entry.html b/datum/log_entry.html new file mode 100644 index 0000000000000..3b23bffa5b842 --- /dev/null +++ b/datum/log_entry.html @@ -0,0 +1,122 @@ + + + + + + + /datum/log_entry - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

log_entry + + + +

+ +

A datum which contains log information.

+ + + + + + + + + + + + +

Vars

categoryCategory of the log entry.
dataData of the log entry; optional.
flagsBitfield that describes how exactly to log stuff exactly +See code/__DEFINES/logging/dm
idUnique id of the log entry.
messageMessage of the log entry.
next_idNext id to assign to a log entry.
schema_versionSchema version of the log entry.
semver_storeSemver store of the log entry, used to store the schema of data entries
timestampUnix timestamp of the log entry.

Procs

to_json_textConverts the log entry to a JSON string.
to_readable_textConverts the log entry to a human-readable string.
write_entry_to_fileWrites the log entry to a file.
write_readable_entry_to_fileWrites the log entry to a file as a human-readable string.
+

Var Details

category + + + + +

+

Category of the log entry.

data + + + + +

+

Data of the log entry; optional.

flags + + + + +

+

Bitfield that describes how exactly to log stuff exactly +See code/__DEFINES/logging/dm

id + + + + +

+

Unique id of the log entry.

message + + + + +

+

Message of the log entry.

next_id + + + + +

+

Next id to assign to a log entry.

schema_version + + + + +

+

Schema version of the log entry.

semver_store + + + + +

+

Semver store of the log entry, used to store the schema of data entries

timestamp + + + + +

+

Unix timestamp of the log entry.

Proc Details

to_json_text +

+

Converts the log entry to a JSON string.

to_readable_text +

+

Converts the log entry to a human-readable string.

write_entry_to_file +

+

Writes the log entry to a file.

write_readable_entry_to_file +

+

Writes the log entry to a file as a human-readable string.

+ + + diff --git a/datum/log_holder.html b/datum/log_holder.html new file mode 100644 index 0000000000000..1347cabb8caef --- /dev/null +++ b/datum/log_holder.html @@ -0,0 +1,138 @@ + + + + + + + /datum/log_holder - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

log_holder + + + +

+ +

Main datum to manage logging actions

+ + + + + + + + + + + + + + +

Vars

category_group_treecategory nesting tree for ui purposes
data_cacheCached ui_data
disabled_categoriestypecache list for categories that exist but are disabled
human_readable_enabledWhether or not logging as human readable text is enabled
last_data_updateLast time the ui_data was updated
log_categoriesAssociative: category -> datum
logging_start_timestampWhen the log_holder first initialized
round_idRound ID, if set, that logging is initialized for
waiting_log_callslist of Log args waiting for processing pending log initialization

Procs

LogAdds an entry to the given category, if the category is disabled it will not be logged. +If the category does not exist, we will CRASH and log to the error category. +the data list is optional and will be recursively json serialized.
assemble_log_category_treeIterates over all log category types to assemble them into a tree of main category -> (sub category)[] while also checking for loops and sanity errors
init_log_categoryInitializes the given log category and populates the list of contained categories based on the sub category list
init_loggingAssembles basic information for logging, creating the log category datums and checking for config flags as required
recursive_jsonifyRecursively converts an associative list of datums into their jsonified(list) form
shutdown_loggingTells the log_holder to not allow any more logging to be done, and dumps all categories to their json file
+

Var Details

category_group_tree + + + + +

+

category nesting tree for ui purposes

data_cache + + + + +

+

Cached ui_data

disabled_categories + + + + +

+

typecache list for categories that exist but are disabled

human_readable_enabled + + + + +

+

Whether or not logging as human readable text is enabled

last_data_update + + + + +

+

Last time the ui_data was updated

log_categories + + + + +

+

Associative: category -> datum

logging_start_timestamp + + + + +

+

When the log_holder first initialized

round_id + + + + +

+

Round ID, if set, that logging is initialized for

waiting_log_calls + + + + +

+

list of Log args waiting for processing pending log initialization

Proc Details

Log +

+

Adds an entry to the given category, if the category is disabled it will not be logged. +If the category does not exist, we will CRASH and log to the error category. +the data list is optional and will be recursively json serialized.

assemble_log_category_tree +

+

Iterates over all log category types to assemble them into a tree of main category -> (sub category)[] while also checking for loops and sanity errors

init_log_category +

+

Initializes the given log category and populates the list of contained categories based on the sub category list

init_logging +

+

Assembles basic information for logging, creating the log category datums and checking for config flags as required

recursive_jsonify +

+

Recursively converts an associative list of datums into their jsonified(list) form

shutdown_logging +

+

Tells the log_holder to not allow any more logging to be done, and dumps all categories to their json file

+ + + diff --git a/datum/looping_sound.html b/datum/looping_sound.html new file mode 100644 index 0000000000000..05d544152ea69 --- /dev/null +++ b/datum/looping_sound.html @@ -0,0 +1,227 @@ + + + + + + + /datum/looping_sound - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

Looping sound datums + + + +

+ +

Used to play sound(s) on repeat until they are stopped +Processed by the SSloopingsounds /datum/controller/subsystem/loopingsounds

+ + + + + + + + + + + + + + + + + + + + + + + + +

Vars

ambient_soundIs this considered an ambient sound for pref purposes
chance(num) % Chance per loop to play a mid_sound
direct(bool) If true plays directly to provided atoms instead of from them
end_sound(soundfile) The sound played after the main loop has concluded
end_volume(num) Override for volume of end sound
falloffThe rate the volume falls off. Higher = volume drops slower
max_loops(num) The max amount of loops to run for.
mid_length(num) The length to wait between playing mid_sounds
mid_sounds(list or soundfile) Since this can be either a list or a single soundfile you can have random sounds. May contain further lists but must contain a soundfile at the end.
output_atoms(list of atoms) The destination(s) for the sounds
rangeRange the sound will travel
start_length(num) How long to wait in ticks before starting the main loop after playing start_sound
start_sound(soundfile) Sound played before starting the mid_sounds loop
start_time(num) world.time when the datum started looping
start_volume(num) Override for volume of start sound
timer_idThe ID of the timer that's used to loop the sounds.
vary(bool) Whether sounds played by this datum should be slightly varied by [/proc/playsound()]
volume(num) Sound output volume

Procs

get_soundPicks and returns soundfile +Arguments:
on_startCalled on loop start +plays start sound, sets start_time +then inserts into subsystem
on_stopCalled on loop end +if there is a end_sound, plays it
playPlays a sound file to our output_atoms +Arguments:
sound_loopA simple proc handling the looping of the sound itself.
startPerforms checks for looping and optinally adds a new atom to output_atoms, then calls [/datum/looping_sound/proc/on_start()]
stopPerforms checks for ending looping and optinally removes an atom from output_atoms, then calls [/datum/looping_sound/proc/on_stop()]
+

Var Details

ambient_sound + + + + +

+

Is this considered an ambient sound for pref purposes

chance + + + + +

+

(num) % Chance per loop to play a mid_sound

direct + + + + +

+

(bool) If true plays directly to provided atoms instead of from them

end_sound + + + + +

+

(soundfile) The sound played after the main loop has concluded

end_volume + + + + +

+

(num) Override for volume of end sound

falloff + + + + +

+

The rate the volume falls off. Higher = volume drops slower

max_loops + + + + +

+

(num) The max amount of loops to run for.

mid_length + + + + +

+

(num) The length to wait between playing mid_sounds

mid_sounds + + + + +

+

(list or soundfile) Since this can be either a list or a single soundfile you can have random sounds. May contain further lists but must contain a soundfile at the end.

output_atoms + + + + +

+

(list of atoms) The destination(s) for the sounds

range + + + + +

+

Range the sound will travel

start_length + + + + +

+

(num) How long to wait in ticks before starting the main loop after playing start_sound

start_sound + + + + +

+

(soundfile) Sound played before starting the mid_sounds loop

start_time + + + + +

+

(num) world.time when the datum started looping

start_volume + + + + +

+

(num) Override for volume of start sound

timer_id + + + + +

+

The ID of the timer that's used to loop the sounds.

vary + + + + +

+

(bool) Whether sounds played by this datum should be slightly varied by [/proc/playsound()]

volume + + + + +

+

(num) Sound output volume

Proc Details

get_sound +

+

Picks and returns soundfile +Arguments:

+

on_start +

+

Called on loop start +plays start sound, sets start_time +then inserts into subsystem

on_stop +

+

Called on loop end +if there is a end_sound, plays it

play +

+

Plays a sound file to our output_atoms +Arguments:

+

sound_loop +

+

A simple proc handling the looping of the sound itself.

+

Arguments:

+

start +

+

Performs checks for looping and optinally adds a new atom to output_atoms, then calls [/datum/looping_sound/proc/on_start()]

stop +

+

Performs checks for ending looping and optinally removes an atom from output_atoms, then calls [/datum/looping_sound/proc/on_stop()]

+ + + diff --git a/datum/looping_sound/geiger.html b/datum/looping_sound/geiger.html new file mode 100644 index 0000000000000..a295cbd0b54fd --- /dev/null +++ b/datum/looping_sound/geiger.html @@ -0,0 +1,36 @@ + + + + + + + /datum/looping_sound/geiger - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

geiger + + + +

+ + +

Vars

severityhow loud and angry the geiger counter will sound
+

Var Details

severity + + + + +

+

how loud and angry the geiger counter will sound

+ + + diff --git a/datum/map_config.html b/datum/map_config.html new file mode 100644 index 0000000000000..cefda35eec6f4 --- /dev/null +++ b/datum/map_config.html @@ -0,0 +1,36 @@ + + + + + + + /datum/map_config - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

map_config + + + +

+ + +

Vars

disk_setsWhich disk sets this map has, key-value = name - weight for choosing.
+

Var Details

disk_sets + + + + +

+

Which disk sets this map has, key-value = name - weight for choosing.

+ + + diff --git a/datum/map_report.html b/datum/map_report.html new file mode 100644 index 0000000000000..5f4405691e60f --- /dev/null +++ b/datum/map_report.html @@ -0,0 +1,43 @@ + + + + + + + /datum/map_report - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

map_report + + + +

+ +

An error report generated by [parsed_map/check_for_errors].

+ +

Vars

loadableWhether this map can be loaded safely despite the errors.

Procs

show_toShow a rendered version of this report to a client.
+

Var Details

loadable + + + + +

+

Whether this map can be loaded safely despite the errors.

Proc Details

show_to +

+

Show a rendered version of this report to a client.

+ + + diff --git a/datum/map_template/interior.html b/datum/map_template/interior.html new file mode 100644 index 0000000000000..adcc0c52869cd --- /dev/null +++ b/datum/map_template/interior.html @@ -0,0 +1,43 @@ + + + + + + + /datum/map_template/interior - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

interior + + + +

+ + + +

Vars

filenamefilename without file type for the map
prefixjust the prefix so we dont need to fill in the entire thing
+

Var Details

filename + + + + +

+

filename without file type for the map

prefix + + + + +

+

just the prefix so we dont need to fill in the entire thing

+ + + diff --git a/datum/map_template/modular.html b/datum/map_template/modular.html new file mode 100644 index 0000000000000..2ee4395be3849 --- /dev/null +++ b/datum/map_template/modular.html @@ -0,0 +1,57 @@ + + + + + + + /datum/map_template/modular - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

modular + + + +

+ + + + + +

Vars

keepcenteredBool for whether we want to to be spawning from the middle or to the topright of the spawner (true is centered)
modular_idID of this map template
template_heightNumber for its height, used for sanity
template_widthNumber for its width, used for sanity
+

Var Details

keepcentered + + + + +

+

Bool for whether we want to to be spawning from the middle or to the topright of the spawner (true is centered)

modular_id + + + + +

+

ID of this map template

template_height + + + + +

+

Number for its height, used for sanity

template_width + + + + +

+

Number for its width, used for sanity

+ + + diff --git a/datum/map_template/shuttle/minidropship.html b/datum/map_template/shuttle/minidropship.html new file mode 100644 index 0000000000000..16c173fcee5fa --- /dev/null +++ b/datum/map_template/shuttle/minidropship.html @@ -0,0 +1,36 @@ + + + + + + + /datum/map_template/shuttle/minidropship - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

minidropship + + + +

+ + +

Vars

display_nameshuttle switch console name
+

Var Details

display_name + + + + +

+

shuttle switch console name

+ + + diff --git a/datum/maw_ammo.html b/datum/maw_ammo.html new file mode 100644 index 0000000000000..94f3a345ff835 --- /dev/null +++ b/datum/maw_ammo.html @@ -0,0 +1,78 @@ + + + + + + + /datum/maw_ammo - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

maw_ammo + + + +

+ +

non-singleton ammo datum for maw launches. One is created every time the maw fires for every fire.

+ + + + + + +

Vars

cooldown_timetime in ticks this maw ammo will cause the maw to go on cooldown for
impact_timeNEVER SET THIS BELOW 2 SECONDS, THATS THE IMPACT ANIM TIME, PROBABLY SET IT HIGHER CUS LAUNCH ANIMS EXIST
namedont change this var name it makes the tooltip show the name when you hover in the radial
radial_icon_stateradial icon to display in the selection radial for this ammo

Procs

impact_visualscalled 2 seconds before impact
launch_animationcalled when the maw fires its payload
on_impactactual impact effects after the impact visuals
+

Var Details

cooldown_time + + + + +

+

time in ticks this maw ammo will cause the maw to go on cooldown for

impact_time + + + + +

+

NEVER SET THIS BELOW 2 SECONDS, THATS THE IMPACT ANIM TIME, PROBABLY SET IT HIGHER CUS LAUNCH ANIMS EXIST

name + + + + +

+

dont change this var name it makes the tooltip show the name when you hover in the radial

radial_icon_state + + + + +

+

radial icon to display in the selection radial for this ammo

Proc Details

impact_visuals +

+

called 2 seconds before impact

launch_animation +

+

called when the maw fires its payload

on_impact +

+

actual impact effects after the impact visuals

+ + + diff --git a/datum/maw_ammo/hugger.html b/datum/maw_ammo/hugger.html new file mode 100644 index 0000000000000..7a6b157313bcb --- /dev/null +++ b/datum/maw_ammo/hugger.html @@ -0,0 +1,57 @@ + + + + + + + /datum/maw_ammo/hugger - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

hugger + + + +

+ + + + + +

Vars

drop_rangerange_turfs that huggers will be dropped around the target
hugger_counthow many huggers get dropped at once, does not stack on turfs if theres not enough turfs
hugger_optionshuggers to choose to spawn
spawned_huggersused to track our spawned huggers for animations and stuff
+

Var Details

drop_range + + + + +

+

range_turfs that huggers will be dropped around the target

hugger_count + + + + +

+

how many huggers get dropped at once, does not stack on turfs if theres not enough turfs

hugger_options + + + + +

+

huggers to choose to spawn

spawned_huggers + + + + +

+

used to track our spawned huggers for animations and stuff

+ + + diff --git a/datum/maw_ammo/smoke.html b/datum/maw_ammo/smoke.html new file mode 100644 index 0000000000000..67ac2f2f189c6 --- /dev/null +++ b/datum/maw_ammo/smoke.html @@ -0,0 +1,50 @@ + + + + + + + /datum/maw_ammo/smoke - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

smoke + + + +

+ + + + +

Vars

durationThe duration of the smoke in 2 second ticks
smoke_typedatum typepath for the smoke we wanna use
smokeradiusradius of the smoke we deploy
+

Var Details

duration + + + + +

+

The duration of the smoke in 2 second ticks

smoke_type + + + + +

+

datum typepath for the smoke we wanna use

smokeradius + + + + +

+

radius of the smoke we deploy

+ + + diff --git a/datum/mech_limb.html b/datum/mech_limb.html new file mode 100644 index 0000000000000..a610868c508c6 --- /dev/null +++ b/datum/mech_limb.html @@ -0,0 +1,103 @@ + + + + + + + /datum/mech_limb - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

mech_limb + + + +

+ + + + + + + + + + +

Vars

colors2 or 3 entry list of primary, secondary, visor color to use
greyscale_typetypepath for greyscale icon generation
health_modwhen attached the mechs health is modified by this amount
overlay_iconoverlay icon to generate
slowdown_modwhen attached the mechs slowdown is modified by this amount
soft_armor_modwhen attached the mechs armor is modified by this amount

Procs

attachproc to call to add this limb to the mech object +Args:
detachproc to call to remove this limb to the mech object +Args:
get_overlaysReturns an overlay or list of overlays to use on the mech
+

Var Details

colors + + + + +

+

2 or 3 entry list of primary, secondary, visor color to use

greyscale_type + + + + +

+

typepath for greyscale icon generation

health_mod + + + + +

+

when attached the mechs health is modified by this amount

overlay_icon + + + + +

+

overlay icon to generate

slowdown_mod + + + + +

+

when attached the mechs slowdown is modified by this amount

soft_armor_mod + + + + +

+

when attached the mechs armor is modified by this amount

Proc Details

attach +

+

proc to call to add this limb to the mech object +Args:

+

detach +

+

proc to call to remove this limb to the mech object +Args:

+

get_overlays +

+

Returns an overlay or list of overlays to use on the mech

+ + + diff --git a/datum/mech_limb/arm.html b/datum/mech_limb/arm.html new file mode 100644 index 0000000000000..0abfa4ff61992 --- /dev/null +++ b/datum/mech_limb/arm.html @@ -0,0 +1,43 @@ + + + + + + + /datum/mech_limb/arm - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

arm + + + +

+ + + +

Vars

arm_slotwhich slot this arm is equipped to when it is attached
scatter_modAmount scatter is modified by when this arm shoots
+

Var Details

arm_slot + + + + +

+

which slot this arm is equipped to when it is attached

scatter_mod + + + + +

+

Amount scatter is modified by when this arm shoots

+ + + diff --git a/datum/mech_limb/head.html b/datum/mech_limb/head.html new file mode 100644 index 0000000000000..f78d4ac0801b1 --- /dev/null +++ b/datum/mech_limb/head.html @@ -0,0 +1,57 @@ + + + + + + + /datum/mech_limb/head - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

head + + + +

+ +

MECH HEAD

+ + + +

Vars

accuracy_modamount accuracy is modified by
light_rangelight range we set on the mech
visor_configgreyscale config datum for the visor
visor_icongenerated visor icon for us to use when updating icon
+

Var Details

accuracy_mod + + + + +

+

amount accuracy is modified by

light_range + + + + +

+

light range we set on the mech

visor_config + + + + +

+

greyscale config datum for the visor

visor_icon + + + + +

+

generated visor icon for us to use when updating icon

+ + + diff --git a/datum/mech_limb/torso.html b/datum/mech_limb/torso.html new file mode 100644 index 0000000000000..679940629f430 --- /dev/null +++ b/datum/mech_limb/torso.html @@ -0,0 +1,36 @@ + + + + + + + /datum/mech_limb/torso - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

torso + + + +

+ + +

Vars

cell_typecell typepath to place into the mech when this torso is attached
+

Var Details

cell_type + + + + +

+

cell typepath to place into the mech when this torso is attached

+ + + diff --git a/datum/mind.html b/datum/mind.html new file mode 100644 index 0000000000000..b2033b0dfb47c --- /dev/null +++ b/datum/mind.html @@ -0,0 +1,57 @@ + + + + + + + /datum/mind - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

mind + + + +

+ + + + + +

Vars

antag_datumsList of antag datums on this mind
learned_recipesList of learned recipe TYPES.

Procs

forget_crafting_recipeproc that makes user forget a specific crafting recipe
teach_crafting_recipeproc that teaches user a non-standard crafting recipe
+

Var Details

antag_datums + + + + +

+

List of antag datums on this mind

learned_recipes + + + + +

+

List of learned recipe TYPES.

Proc Details

forget_crafting_recipe +

+

proc that makes user forget a specific crafting recipe

teach_crafting_recipe +

+

proc that teaches user a non-standard crafting recipe

+ + + diff --git a/datum/minimap_updator.html b/datum/minimap_updator.html new file mode 100644 index 0000000000000..13b1a26eb767c --- /dev/null +++ b/datum/minimap_updator.html @@ -0,0 +1,50 @@ + + + + + + + /datum/minimap_updator - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

minimap_updator + + + +

+ +

Holder datum to ease updating of atoms to update

+ + +

Vars

minimapAtom to update with the overlays
raw_blipslist of overlays we update
ztargetTarget zlevel we want to be updating to
+

Var Details

minimap + + + + +

+

Atom to update with the overlays

raw_blips + + + + +

+

list of overlays we update

ztarget + + + + +

+

Target zlevel we want to be updating to

+ + + diff --git a/datum/movement_detector.html b/datum/movement_detector.html new file mode 100644 index 0000000000000..ce70ccdeab4ad --- /dev/null +++ b/datum/movement_detector.html @@ -0,0 +1,51 @@ + + + + + + + /datum/movement_detector - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

movement_detector + + + +

+ +

A datum to handle the busywork of registering signals to handle in depth tracking of a movable

+ + +

Procs

move_reactReacts to any movement that would cause a change in coordinates of the tracked movable atom +This works by detecting movement of either the tracked object, or anything it is inside, recursively
trackSets up tracking of the given movable atom
untrackStops tracking

Proc Details

move_react +

+

Reacts to any movement that would cause a change in coordinates of the tracked movable atom +This works by detecting movement of either the tracked object, or anything it is inside, recursively

track +

+

Sets up tracking of the given movable atom

untrack +

+

Stops tracking

+ + + diff --git a/datum/nobody_wants_to_learn_matrix_math.html b/datum/nobody_wants_to_learn_matrix_math.html new file mode 100644 index 0000000000000..7c0f91c201992 --- /dev/null +++ b/datum/nobody_wants_to_learn_matrix_math.html @@ -0,0 +1,32 @@ + + + + + + + /datum/nobody_wants_to_learn_matrix_math - byond + + +
+ byond - + Modules - + Types +
+
+

nobody_wants_to_learn_matrix_math + + + +

+ +nobody wants to learn matrix math! +

More than just a completely true statement, this datum is created as a tgui interface +allowing you to modify each vector until you know what you're doing. +Much like filteriffic, 'nobody wants to learn matrix math' is meant for developers like you and I +to implement interesting matrix transformations without the hassle if needing to know... algebra? Damn, i'm stupid.

+ + + diff --git a/datum/numbered_display.html b/datum/numbered_display.html new file mode 100644 index 0000000000000..f8b9e1cd36da8 --- /dev/null +++ b/datum/numbered_display.html @@ -0,0 +1,43 @@ + + + + + + + /datum/numbered_display - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

numbered_display + + + +

+ + + +

Vars

numberUsed to display a number on the object inside of a storage
sample_objectObject to compare to the item inside of a slotless storage
+

Var Details

number + + + + +

+

Used to display a number on the object inside of a storage

sample_object + + + + +

+

Object to compare to the item inside of a slotless storage

+ + + diff --git a/datum/object_window_info.html b/datum/object_window_info.html new file mode 100644 index 0000000000000..924c851ee12e3 --- /dev/null +++ b/datum/object_window_info.html @@ -0,0 +1,86 @@ + + + + + + + /datum/object_window_info - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

object_window_info + + + +

+ +

Datum that holds and tracks info about a client's object window +Really only exists because I want to be able to do logic with signals +And need a safe place to do the registration

+ + + + + + +

Vars

actively_trackingAre we currently tracking a turf?
atoms_to_imageslist of atom -> image string for objects we have had in the right click tab +this is our caching
atoms_to_imagifylist of atoms to turn into images for the object tab
atoms_to_showlist of atoms to show to our client via the object tab, at least currently
parentOur owner client

Procs

processTakes a client, attempts to generate object images for it +We will update the client with any improvements we make when we're done
viewing_atom_deletedClears any cached object window stuff +We use hard refs cause we'd need a signal for this anyway. Cleaner this way
+

Var Details

actively_tracking + + + + +

+

Are we currently tracking a turf?

atoms_to_images + + + + +

+

list of atom -> image string for objects we have had in the right click tab +this is our caching

atoms_to_imagify + + + + +

+

list of atoms to turn into images for the object tab

atoms_to_show + + + + +

+

list of atoms to show to our client via the object tab, at least currently

parent + + + + +

+

Our owner client

Proc Details

process +

+

Takes a client, attempts to generate object images for it +We will update the client with any improvements we make when we're done

viewing_atom_deleted +

+

Clears any cached object window stuff +We use hard refs cause we'd need a signal for this anyway. Cleaner this way

+ + + diff --git a/datum/objective.html b/datum/objective.html new file mode 100644 index 0000000000000..6034ddeee9d66 --- /dev/null +++ b/datum/objective.html @@ -0,0 +1,50 @@ + + + + + + + /datum/objective - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

objective + + + +

+ + + + +

Vars

admin_grantablecan this be granted by admins?
avoid_double_targetif true during target selection we will try to avoid players already targeted by another objective
objective_namename used in printing this objective (Objective #1)
+

Var Details

admin_grantable + + + + +

+

can this be granted by admins?

avoid_double_target + + + + +

+

if true during target selection we will try to avoid players already targeted by another objective

objective_name + + + + +

+

name used in printing this objective (Objective #1)

+ + + diff --git a/datum/objective/escape.html b/datum/objective/escape.html new file mode 100644 index 0000000000000..f1692e0aa7832 --- /dev/null +++ b/datum/objective/escape.html @@ -0,0 +1,36 @@ + + + + + + + /datum/objective/escape - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

escape + + + +

+ + +

Vars

admin_eventpassed to considered_escaped, if true allows greentext by simply being on a shuttle not on ship level by round end
+

Var Details

admin_event + + + + +

+

passed to considered_escaped, if true allows greentext by simply being on a shuttle not on ship level by round end

+ + + diff --git a/datum/objective/escape_with.html b/datum/objective/escape_with.html new file mode 100644 index 0000000000000..4cbe2b8bc84b4 --- /dev/null +++ b/datum/objective/escape_with.html @@ -0,0 +1,36 @@ + + + + + + + /datum/objective/escape_with - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

escape_with + + + +

+ + +

Vars

admin_eventpassed to considered_escaped, if true allows greentext by simply being on a shuttle not on ship level by round end
+

Var Details

admin_event + + + + +

+

passed to considered_escaped, if true allows greentext by simply being on a shuttle not on ship level by round end

+ + + diff --git a/datum/operation_namepool.html b/datum/operation_namepool.html new file mode 100644 index 0000000000000..c7e6e46a0f233 --- /dev/null +++ b/datum/operation_namepool.html @@ -0,0 +1,50 @@ + + + + + + + /datum/operation_namepool - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

operation_namepool + + + +

+ + + + +

Vars

operation_postfixesThe third word in operation name
operation_prefixesThe second word in operation name
operation_titlesThe first word in operation name
+

Var Details

operation_postfixes + + + + +

+

The third word in operation name

operation_prefixes + + + + +

+

The second word in operation name

operation_titles + + + + +

+

The first word in operation name

+ + + diff --git a/datum/orbit_menu.html b/datum/orbit_menu.html new file mode 100644 index 0000000000000..e06e9cce6fc97 --- /dev/null +++ b/datum/orbit_menu.html @@ -0,0 +1,36 @@ + + + + + + + /datum/orbit_menu - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

orbit_menu + + + +

+ + +

Vars

auto_observeDetermines whether the orbit UI displays the hud on observable click.
+

Var Details

auto_observe + + + + +

+

Determines whether the orbit UI displays the hud on observable click.

+ + + diff --git a/datum/outfit.html b/datum/outfit.html new file mode 100644 index 0000000000000..a2127ecbb9f01 --- /dev/null +++ b/datum/outfit.html @@ -0,0 +1,43 @@ + + + + + + + /datum/outfit - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

outfit + + + +

+ + + +

Vars

speciesthe species this outfit is designed for

Procs

copy_fromCopy most vars from another outfit to this one
+

Var Details

species + + + + +

+

the species this outfit is designed for

Proc Details

copy_from +

+

Copy most vars from another outfit to this one

+ + + diff --git a/datum/outfit/quick.html b/datum/outfit/quick.html new file mode 100644 index 0000000000000..4435912f8d347 --- /dev/null +++ b/datum/outfit/quick.html @@ -0,0 +1,64 @@ + + + + + + + /datum/outfit/quick - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

quick + + + +

+ + + + + + +

Vars

descDescription of the loadout
jobtypeWhat job this loadout is associated with. Used for tabs and access.
quantityHow much of this loadout there is. infinite by default
require_jobRestricts loadouts to a specific job. Set to false to allow any job to take the loadout.
secondary_weaponSecondary weapon
+

Var Details

desc + + + + +

+

Description of the loadout

jobtype + + + + +

+

What job this loadout is associated with. Used for tabs and access.

quantity + + + + +

+

How much of this loadout there is. infinite by default

require_job + + + + +

+

Restricts loadouts to a specific job. Set to false to allow any job to take the loadout.

secondary_weapon + + + + +

+

Secondary weapon

+ + + diff --git a/datum/outfit/quick/beginner_robot.html b/datum/outfit/quick/beginner_robot.html new file mode 100644 index 0000000000000..d506758e3b5b7 --- /dev/null +++ b/datum/outfit/quick/beginner_robot.html @@ -0,0 +1,43 @@ + + + + + + + /datum/outfit/quick/beginner_robot - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

beginner_robot + + + +

+ + +

Vars

w_uniformTemplate, loadout rules are as follows:
+

Var Details

w_uniform + + + + +

+

Template, loadout rules are as follows:

+
+ + + diff --git a/datum/outfit_holder.html b/datum/outfit_holder.html new file mode 100644 index 0000000000000..58558053bcc20 --- /dev/null +++ b/datum/outfit_holder.html @@ -0,0 +1,113 @@ + + + + + + + /datum/outfit_holder - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

outfit_holder + + + +

+ + + + + + + + + + + + + +

Vars

available_listItems available to be equipped
equipped_thingsAssoc list of loadout_items by slot
loadoutThe actual loadout to be equipped
loadout_costCost of the loadout to equip
purchasable_listItems available to be purchased

Procs

allow_new_optionAdds a new loadout_item to the purchasable list
attempt_equip_loadout_itemTries to add a datum if valid
check_full_loadoutscans the entire loadout for validity
equip_loadoutEquips the loadout to a mob
equip_loadout_itemActually adds an item to a loadout
remove_optionRemoves loadout_item entirely from being equipped
unlock_new_optionAdds a new loadout_item to the available list
+

Var Details

available_list + + + + +

+

Items available to be equipped

equipped_things + + + + +

+

Assoc list of loadout_items by slot

loadout + + + + +

+

The actual loadout to be equipped

loadout_cost + + + + +

+

Cost of the loadout to equip

purchasable_list + + + + +

+

Items available to be purchased

Proc Details

allow_new_option +

+

Adds a new loadout_item to the purchasable list

attempt_equip_loadout_item +

+

Tries to add a datum if valid

check_full_loadout +

+

scans the entire loadout for validity

equip_loadout +

+

Equips the loadout to a mob

equip_loadout_item +

+

Actually adds an item to a loadout

remove_option +

+

Removes loadout_item entirely from being equipped

unlock_new_option +

+

Adds a new loadout_item to the available list

+ + + diff --git a/datum/parsed_map.html b/datum/parsed_map.html new file mode 100644 index 0000000000000..786e9a077fba3 --- /dev/null +++ b/datum/parsed_map.html @@ -0,0 +1,65 @@ + + + + + + + /datum/parsed_map - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

parsed_map + + + +

+ + + + + + +

Vars

boundsOffset bounds. Same as parsed_bounds until load().
parsed_boundsUnoffset bounds. Null on parse failure.

Procs

NewParse a map, possibly cropping it.
check_for_errorsCheck a parsed but not yet loaded map for errors.
loadLoad the parsed map into the world. See /proc/load_map for arguments.
+

Var Details

bounds + + + + +

+

Offset bounds. Same as parsed_bounds until load().

parsed_bounds + + + + +

+

Unoffset bounds. Null on parse failure.

Proc Details

New +

+

Parse a map, possibly cropping it.

check_for_errors +

+

Check a parsed but not yet loaded map for errors.

+

Returns a /datum/map_report if there are errors or FALSE otherwise.

load +

+

Load the parsed map into the world. See /proc/load_map for arguments.

+ + + diff --git a/datum/particle_editor.html b/datum/particle_editor.html new file mode 100644 index 0000000000000..b4c1e66cea0bc --- /dev/null +++ b/datum/particle_editor.html @@ -0,0 +1,36 @@ + + + + + + + /datum/particle_editor - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

particle_editor + + + +

+ + +

Vars

targetmovable whose particles we want to be editing
+

Var Details

target + + + + +

+

movable whose particles we want to be editing

+ + + diff --git a/datum/path_step.html b/datum/path_step.html new file mode 100644 index 0000000000000..df86951748f19 --- /dev/null +++ b/datum/path_step.html @@ -0,0 +1,57 @@ + + + + + + + /datum/path_step - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

path_step + + + +

+ +

Basic implementation of A* using atoms. Very cheap, at max it will do about 50-100 distance check for a whole path, but typically it will do 10-20

+ + + +

Vars

current_atomWhat atom this path reached
distance_to_goalEuclidian distance to the goal atom
distance_walkedSum of euclidian distances to get from the starting atom to this atom, if you follow the current optimal path
previous_atomWhat atom was right before current atom in the path
+

Var Details

current_atom + + + + +

+

What atom this path reached

distance_to_goal + + + + +

+

Euclidian distance to the goal atom

distance_walked + + + + +

+

Sum of euclidian distances to get from the starting atom to this atom, if you follow the current optimal path

previous_atom + + + + +

+

What atom was right before current atom in the path

+ + + diff --git a/datum/perk.html b/datum/perk.html new file mode 100644 index 0000000000000..9b5e35e488f50 --- /dev/null +++ b/datum/perk.html @@ -0,0 +1,120 @@ + + + + + + + /datum/perk - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

perk + + + +

+ + + + + + + + + + + + + + +

Vars

all_jobsThis applies to all campaign jobs
descBrief description of the perk
jobs_supportedJob types that this perk is available to. no list implies this works for any job
nameName of the perk
prereq_perksAny perks required before this one can be obtained
req_descAddition desc for special reqs such as other perks
ui_iconUI icon for this perk
unlock_costCost to purchase this perk

Procs

apply_perkApplies perk benefits
remove_perkRemoves perk benefits
remove_unlock_animationcallback for removing the eye from viscontents
unlock_animationOverhead animation to indicate a perk has been unlocked
unlock_bonusAny one off bonuses for unlocking this perk
+

Var Details

all_jobs + + + + +

+

This applies to all campaign jobs

desc + + + + +

+

Brief description of the perk

jobs_supported + + + + +

+

Job types that this perk is available to. no list implies this works for any job

name + + + + +

+

Name of the perk

prereq_perks + + + + +

+

Any perks required before this one can be obtained

req_desc + + + + +

+

Addition desc for special reqs such as other perks

ui_icon + + + + +

+

UI icon for this perk

unlock_cost + + + + +

+

Cost to purchase this perk

Proc Details

apply_perk +

+

Applies perk benefits

remove_perk +

+

Removes perk benefits

remove_unlock_animation +

+

callback for removing the eye from viscontents

unlock_animation +

+

Overhead animation to indicate a perk has been unlocked

unlock_bonus +

+

Any one off bonuses for unlocking this perk

+ + + diff --git a/datum/perk/skill_mod/stamina.html b/datum/perk/skill_mod/stamina.html new file mode 100644 index 0000000000000..1718a12bfe8e0 --- /dev/null +++ b/datum/perk/skill_mod/stamina.html @@ -0,0 +1,36 @@ + + + + + + + /datum/perk/skill_mod/stamina - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

stamina + + + +

+ + +

Vars

stam_modHow much this perk increases your max_stam by
+

Var Details

stam_mod + + + + +

+

How much this perk increases your max_stam by

+ + + diff --git a/datum/perk/trait.html b/datum/perk/trait.html new file mode 100644 index 0000000000000..9ed43c4548985 --- /dev/null +++ b/datum/perk/trait.html @@ -0,0 +1,36 @@ + + + + + + + /datum/perk/trait - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

trait + + + +

+ + +

Vars

traitsList of traits provided by this perk
+

Var Details

traits + + + + +

+

List of traits provided by this perk

+ + + diff --git a/datum/perk/trait/hp_boost.html b/datum/perk/trait/hp_boost.html new file mode 100644 index 0000000000000..ea6a2352bc59a --- /dev/null +++ b/datum/perk/trait/hp_boost.html @@ -0,0 +1,36 @@ + + + + + + + /datum/perk/trait/hp_boost - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

hp_boost + + + +

+ + +

Vars

health_modHow much this perk increases your maxhp by
+

Var Details

health_mod + + + + +

+

How much this perk increases your maxhp by

+ + + diff --git a/datum/personal_statistics.html b/datum/personal_statistics.html new file mode 100644 index 0000000000000..f5fd74c49ad0d --- /dev/null +++ b/datum/personal_statistics.html @@ -0,0 +1,58 @@ + + + + + + + /datum/personal_statistics - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

personal_statistics + + + +

+ + + + + +

Procs

compose_reportAssemble a list of statistics associated with the ckey this datum belongs to
get_mission_rewardReturns the credit bonus based on stats from the current mission
get_most_ingested_chemicalCalculated from the chemicals_ingested list, returns a string: "[chemical name], [amount] units"
reset_mission_statsResets stats recorded for the current mission +Used for Campaign

Proc Details

compose_report +

+

Assemble a list of statistics associated with the ckey this datum belongs to

get_mission_reward +

+

Returns the credit bonus based on stats from the current mission

get_most_ingested_chemical +

+

Calculated from the chemicals_ingested list, returns a string: "[chemical name], [amount] units"

reset_mission_stats +

+

Resets stats recorded for the current mission +Used for Campaign

+ + + diff --git a/datum/pipeline.html b/datum/pipeline.html new file mode 100644 index 0000000000000..5e27f4078fe6b --- /dev/null +++ b/datum/pipeline.html @@ -0,0 +1,42 @@ + + + + + + + /datum/pipeline - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

pipeline + + + +

+ + + +

Procs

clean_machinery_memberSignal handler to clean qdeleted machinery member
clean_membersSignal handler to clean qdeleted member

Proc Details

clean_machinery_member +

+

Signal handler to clean qdeleted machinery member

clean_members +

+

Signal handler to clean qdeleted member

+ + + diff --git a/datum/plane_master_group.html b/datum/plane_master_group.html new file mode 100644 index 0000000000000..4827853ad2fd5 --- /dev/null +++ b/datum/plane_master_group.html @@ -0,0 +1,147 @@ + + + + + + + /datum/plane_master_group - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

plane_master_group + + + +

+ +

Datum that represents one "group" of plane masters +So all the main window planes would be in one, all the spyglass planes in another +Etc

+ + + + + + + + + + + + + + + +

Vars

active_offsetThe visual offset we are currently using
keyOur key in the group list on /datum/hud +Should be unique for any group of plane masters in the world
mapWhat, if any, submap we render onto
our_hudOur parent hud
plane_mastersList in the form "[plane]" = object, the plane masters we own
relay_locControls the screen_loc that owned plane masters will use when generating relays. Due to a Byond bug, relays using the CENTER positional loc +Will be improperly offset

Procs

attach_toDisplay a plane master group to some viewer, so show all our planes to it
build_plane_mastersActually generate our plane masters, in some offset range (where offset is the z layers to render to, because each "layer" in a multiz stack gets its own plane master cube)
get_planeNice wrapper for the "[]"ing
get_plane_typesReturns a list of all the plane master types we want to create
orphan_hudHide the plane master from its current hud, fully clear it out
prep_plane_instanceSimilarly, exists so subtypes can do unique behavior to planes on creation
rebuild_hudFully regenerate our group, resetting our planes to their compile time values
rebuild_plane_mastersRegenerate our plane masters, this is useful if we don't have a mob but still want to rebuild. Such in the case of changing the screen_loc of relays
refresh_hudWell, refresh our group, mostly useful for plane specific updates
show_planeThis is mostly a proc so it can be overriden by popups, since they have unique behavior they want to do
+

Var Details

active_offset + + + + +

+

The visual offset we are currently using

key + + + + +

+

Our key in the group list on /datum/hud +Should be unique for any group of plane masters in the world

map + + + + +

+

What, if any, submap we render onto

our_hud + + + + +

+

Our parent hud

plane_masters + + + + +

+

List in the form "[plane]" = object, the plane masters we own

relay_loc + + + + +

+

Controls the screen_loc that owned plane masters will use when generating relays. Due to a Byond bug, relays using the CENTER positional loc +Will be improperly offset

Proc Details

attach_to +

+

Display a plane master group to some viewer, so show all our planes to it

build_plane_masters +

+

Actually generate our plane masters, in some offset range (where offset is the z layers to render to, because each "layer" in a multiz stack gets its own plane master cube)

get_plane +

+

Nice wrapper for the "[]"ing

get_plane_types +

+

Returns a list of all the plane master types we want to create

orphan_hud +

+

Hide the plane master from its current hud, fully clear it out

prep_plane_instance +

+

Similarly, exists so subtypes can do unique behavior to planes on creation

rebuild_hud +

+

Fully regenerate our group, resetting our planes to their compile time values

rebuild_plane_masters +

+

Regenerate our plane masters, this is useful if we don't have a mob but still want to rebuild. Such in the case of changing the screen_loc of relays

refresh_hud +

+

Well, refresh our group, mostly useful for plane specific updates

show_plane +

+

This is mostly a proc so it can be overriden by popups, since they have unique behavior they want to do

+ + + diff --git a/datum/plane_master_group/hudless.html b/datum/plane_master_group/hudless.html new file mode 100644 index 0000000000000..243694e8ca611 --- /dev/null +++ b/datum/plane_master_group/hudless.html @@ -0,0 +1,35 @@ + + + + + + + /datum/plane_master_group/hudless - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

hudless + + + +

+ +

Hudless group. Exists for testing

+

Procs

show_planeThis is mostly a proc so it can be overriden by popups, since they have unique behavior they want to do

Proc Details

show_plane +

+

This is mostly a proc so it can be overriden by popups, since they have unique behavior they want to do

+ + + diff --git a/datum/poll_option.html b/datum/poll_option.html new file mode 100644 index 0000000000000..36f22ed428f04 --- /dev/null +++ b/datum/poll_option.html @@ -0,0 +1,109 @@ + + + + + + + /datum/poll_option - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

poll_option + + + +

+ +

Datum which holds details of a poll option loaded from the database.

+

Used to minimize the need for querying this data every time it's needed.

+ + + + + + + + + + +

Vars

default_percentage_calcHint for statbus, not used by the game; If this option should be included by default when calculating the resulting percentages of all options for this poll
desc_maxOptional for rating polls, description shown next to the maximum value
desc_midOptional for rating polls, description shown next to the rounded whole middle value
desc_minOptional for rating polls, description shown next to the minimum value
max_valFor rating polls, the maximum selectable value allowed; Supported value range is -2147483648 to 2147483647
min_valFor rating polls, the minimum selectable value allowed; Supported value range is -2147483648 to 2147483647
option_idTable id of this option, will be null until poll has been created.
parent_pollReference to the poll this option belongs to
textDescription/name of this option

Procs

delete_optionSets a poll option and its votes as deleted in the database then deletes its datum.
save_optionInserts or updates a poll option to the database.
+

Var Details

default_percentage_calc + + + + +

+

Hint for statbus, not used by the game; If this option should be included by default when calculating the resulting percentages of all options for this poll

desc_max + + + + +

+

Optional for rating polls, description shown next to the maximum value

desc_mid + + + + +

+

Optional for rating polls, description shown next to the rounded whole middle value

desc_min + + + + +

+

Optional for rating polls, description shown next to the minimum value

max_val + + + + +

+

For rating polls, the maximum selectable value allowed; Supported value range is -2147483648 to 2147483647

min_val + + + + +

+

For rating polls, the minimum selectable value allowed; Supported value range is -2147483648 to 2147483647

option_id + + + + +

+

Table id of this option, will be null until poll has been created.

parent_poll + + + + +

+

Reference to the poll this option belongs to

text + + + + +

+

Description/name of this option

Proc Details

delete_option +

+

Sets a poll option and its votes as deleted in the database then deletes its datum.

save_option +

+

Inserts or updates a poll option to the database.

+

Uses INSERT ON DUPLICATE KEY UPDATE to handle both inserting and updating at once. +The list of columns and values is built dynamically to avoid excess data being sent when not a rating type poll.

+ + + diff --git a/datum/poll_question.html b/datum/poll_question.html new file mode 100644 index 0000000000000..6f329c780bd98 --- /dev/null +++ b/datum/poll_question.html @@ -0,0 +1,188 @@ + + + + + + + /datum/poll_question - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

poll_question + + + +

+ +

Datum which holds details of a running poll loaded from the database and supplementary info.

+

Used to minimize the need for querying this data every time it's needed.

+ + + + + + + + + + + + + + + + + + + + +

Vars

admin_onlyHides the poll from any client without a holder datum.
allow_revotingAllows a player to change their vote to a poll they've already voted on, off by default.
created_byCkey of the poll's original author
dont_showHint for statbus, not used by the game; Stops the results of a poll from being displayed until the end_datetime is reached.
durationHolds duration data when creating or editing a poll and refreshing the poll creation window.
edit_readyIndicates if a poll has been submitted or loaded from the DB so the management panel will open with edit functions.
end_datetimeDate and time the poll will run until, timestamp format is YYYY-MM-DD HH:MM:SS.
future_pollIndicates a poll is set to not start in the future, still visible for editing but not voting on.
intervalHolds interval data when creating or editing a poll and refreshing the poll creation window.
optionsReference list of the options for this poll, not used by text response polls.
options_allowedThe number of responses allowed in a multiple-choice poll, more can be selected but won't be recorded.
poll_idTable id of this poll, will be null until poll has been created.
poll_typeThe type of poll to be created, must be POLLTYPE_OPTION, POLLTYPE_TEXT, POLLTYPE_RATING, POLLTYPE_MULTI or POLLTYPE_IRV.
poll_votesCount of how many players have voted or responded to this poll.
questionThe title text of the poll, shows up on the list of polls.
start_datetimeDate and time the poll opens, timestamp format is YYYY-MM-DD HH:MM:SS.
subtitleSupplementary text displayed only when responding to a poll.

Procs

cleaR_POLLS_votesDeletes all votes or text replies for this poll, depending on its type.
delete_pollSets a poll and its associated data as deleted in the database.
save_all_optionsSaves all options of a poll to the database.
save_poll_dataInserts or updates a poll question to the database.
+

Var Details

admin_only + + + + +

+

Hides the poll from any client without a holder datum.

allow_revoting + + + + +

+

Allows a player to change their vote to a poll they've already voted on, off by default.

created_by + + + + +

+

Ckey of the poll's original author

dont_show + + + + +

+

Hint for statbus, not used by the game; Stops the results of a poll from being displayed until the end_datetime is reached.

duration + + + + +

+

Holds duration data when creating or editing a poll and refreshing the poll creation window.

edit_ready + + + + +

+

Indicates if a poll has been submitted or loaded from the DB so the management panel will open with edit functions.

end_datetime + + + + +

+

Date and time the poll will run until, timestamp format is YYYY-MM-DD HH:MM:SS.

future_poll + + + + +

+

Indicates a poll is set to not start in the future, still visible for editing but not voting on.

interval + + + + +

+

Holds interval data when creating or editing a poll and refreshing the poll creation window.

options + + + + +

+

Reference list of the options for this poll, not used by text response polls.

options_allowed + + + + +

+

The number of responses allowed in a multiple-choice poll, more can be selected but won't be recorded.

poll_id + + + + +

+

Table id of this poll, will be null until poll has been created.

poll_type + + + + +

+

The type of poll to be created, must be POLLTYPE_OPTION, POLLTYPE_TEXT, POLLTYPE_RATING, POLLTYPE_MULTI or POLLTYPE_IRV.

poll_votes + + + + +

+

Count of how many players have voted or responded to this poll.

question + + + + +

+

The title text of the poll, shows up on the list of polls.

start_datetime + + + + +

+

Date and time the poll opens, timestamp format is YYYY-MM-DD HH:MM:SS.

subtitle + + + + +

+

Supplementary text displayed only when responding to a poll.

Proc Details

cleaR_POLLS_votes +

+

Deletes all votes or text replies for this poll, depending on its type.

delete_poll +

+

Sets a poll and its associated data as deleted in the database.

+

Calls the procedure set_poll_deleted to set the deleted column to 1 for each row in the poll_ tables matching the poll id used. +Then deletes each option datum and finally the poll itself.

save_all_options +

+

Saves all options of a poll to the database.

+

Saves all the created options for a poll when it's submitted to the DB for the first time and associated an id with the options. +Insertion and id querying for each option is done separately to ensure data integrity; this is less performant, but not significantly. +Using MassInsert() would mean having to query a list of rows by poll_id or matching by fields afterwards, which doesn't guarantee accuracy.

save_poll_data +

+

Inserts or updates a poll question to the database.

+

Uses INSERT ON DUPLICATE KEY UPDATE to handle both inserting and updating at once. +The start and end datetimes and poll id for new polls is then retrieved for the poll datum. +Arguments:

+
+ + + diff --git a/datum/preferences.html b/datum/preferences.html new file mode 100644 index 0000000000000..8f196e9d27912 --- /dev/null +++ b/datum/preferences.html @@ -0,0 +1,285 @@ + + + + + + + /datum/preferences - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

preferences + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

accessible_tgui_themesPreference for letting people make TGUI windows use more accessible (basically, default) themes, where needed/possible. +Example application: health analyzers using this to choose between default themes or the NtOS themes.
auto_fit_viewportShould we automatically fit the viewport?
chat_on_mapChat on map
chem_macrosSaves chemical recipes based on client so they persist through games
fast_mc_refreshWhether or not the MC tab of the Stat Panel refreshes fast. This is expensive so make sure you need it.
favorite_outfitsWhat outfit typepaths we've favorited in the SelectEquipment menu
fullscreen_modeIf the game is in fullscreen mode
loadout_managerThe loadout manager
map_nameNew TGUI Preference preview
mute_others_combat_messagesWhether to mute goonchat combat messages from others, such as when they are shot.
mute_self_combat_messagesWhether to mute goonchat combat messages when we are the source, such as when we are shot.
mute_xeno_health_alert_messagesWhether to mute xeno health alerts from when other xenos are badly hurt.
pixel_sizeWhat size should pixels be displayed as? 0 is strech to fit
preferred_squad_somYour preferred squad, when playing SOM
quick_equipQuick equip slots, up to MAX_QUICK_EQUIP_SLOTS. One per quick equip hotkey.
radio_tts_flagsWhich types of comms the user wants to hear TTS from
scaling_methodWhat scaling method should we use? Distort means nearest neighbor
see_rc_emotesWhether emotes will be displayed on runechat. Requires chat_on_map to have effect.
show_xeno_rankWhether we generate a xeno name to show in the chatbox and on the mob.
slot_draw_order_prefList of slot_draw_order
sound_ttswhether the user wants to hear tts
split_admin_tabsWhen enabled, will split the 'Admin' panel into several tabs.
status_toggle_flagsState tracking of hive status toggles
tab_indexCurrent tab index of the game preferences ui
tts_pitchhow much to pitch the tts voice up and down
tts_voiceWhat tts voice should be used
unique_action_use_active_handIf unique action will only act on the item in the active hand. If false, it will try to act on the item on the inactive hand as well in certain conditions.
volume_ttsVolume to use for tts
widescreenprefShould we be in the widescreen mode set by the config?

Procs

delete_loadoutDelete a loadout from the savefile
load_loadoutLoad a loadout from the savefile and returns it
load_loadout_listLoad the loadout list
load_loadout_managerLoad from a savefile and unserialize the loadout manager +This is deprecated and should be used only to convert old loadout list save system to new one
reset_loadouts_fileErase all loadouts that could be saved on the savefile
save_loadoutSave a loadout into the savefile
save_loadout_listSave the loadout list
+

Var Details

accessible_tgui_themes + + + + +

+

Preference for letting people make TGUI windows use more accessible (basically, default) themes, where needed/possible. +Example application: health analyzers using this to choose between default themes or the NtOS themes.

auto_fit_viewport + + + + +

+

Should we automatically fit the viewport?

chat_on_map + + + + +

+

Chat on map

chem_macros + + + + +

+

Saves chemical recipes based on client so they persist through games

fast_mc_refresh + + + + +

+

Whether or not the MC tab of the Stat Panel refreshes fast. This is expensive so make sure you need it.

favorite_outfits + + + + +

+

What outfit typepaths we've favorited in the SelectEquipment menu

fullscreen_mode + + + + +

+

If the game is in fullscreen mode

loadout_manager + + + + +

+

The loadout manager

map_name + + + + +

+

New TGUI Preference preview

mute_others_combat_messages + + + + +

+

Whether to mute goonchat combat messages from others, such as when they are shot.

mute_self_combat_messages + + + + +

+

Whether to mute goonchat combat messages when we are the source, such as when we are shot.

mute_xeno_health_alert_messages + + + + +

+

Whether to mute xeno health alerts from when other xenos are badly hurt.

pixel_size + + + + +

+

What size should pixels be displayed as? 0 is strech to fit

preferred_squad_som + + + + +

+

Your preferred squad, when playing SOM

quick_equip + + + + +

+

Quick equip slots, up to MAX_QUICK_EQUIP_SLOTS. One per quick equip hotkey.

radio_tts_flags + + + + +

+

Which types of comms the user wants to hear TTS from

scaling_method + + + + +

+

What scaling method should we use? Distort means nearest neighbor

see_rc_emotes + + + + +

+

Whether emotes will be displayed on runechat. Requires chat_on_map to have effect.

show_xeno_rank + + + + +

+

Whether we generate a xeno name to show in the chatbox and on the mob.

slot_draw_order_pref + + + + +

+

List of slot_draw_order

sound_tts + + + + +

+

whether the user wants to hear tts

split_admin_tabs + + + + +

+

When enabled, will split the 'Admin' panel into several tabs.

status_toggle_flags + + + + +

+

State tracking of hive status toggles

tab_index + + + + +

+

Current tab index of the game preferences ui

tts_pitch + + + + +

+

how much to pitch the tts voice up and down

tts_voice + + + + +

+

What tts voice should be used

unique_action_use_active_hand + + + + +

+

If unique action will only act on the item in the active hand. If false, it will try to act on the item on the inactive hand as well in certain conditions.

volume_tts + + + + +

+

Volume to use for tts

widescreenpref + + + + +

+

Should we be in the widescreen mode set by the config?

Proc Details

delete_loadout +

+

Delete a loadout from the savefile

load_loadout +

+

Load a loadout from the savefile and returns it

load_loadout_list +

+

Load the loadout list

load_loadout_manager +

+

Load from a savefile and unserialize the loadout manager +This is deprecated and should be used only to convert old loadout list save system to new one

reset_loadouts_file +

+

Erase all loadouts that could be saved on the savefile

save_loadout +

+

Save a loadout into the savefile

save_loadout_list +

+

Save the loadout list

+ + + diff --git a/datum/reagent.html b/datum/reagent.html new file mode 100644 index 0000000000000..b94290e475caf --- /dev/null +++ b/datum/reagent.html @@ -0,0 +1,372 @@ + + + + + + + /datum/reagent - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

reagent + + + +

+ +

A single reagent

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

addiction_stageincreases as addiction gets worse
addiction_thresholdabove this amount addictions start
can_synthcan this reagent be synthesized? (for example: odysseus syringe gun)
colorcolor it looks in containers etc
current_cycleincrements everytime on_mob_life is called
custom_metabolismhow fast the reagent is metabolized by the mob
dataspecial data associated with this like viruses etc
default_containerThe default reagent container for the reagent, used for icon generation
descriptionnor do they have descriptions
effect_strAffects the strength of reagent effects
holderreagent holder this belongs to
medbayblacklistUsed for certain chems we don't want being extracted via dialysis or being used in cryo, makes all important medical machines (dispenser, cryo etc...) refuse to interact with the reagent
namedatums don't have names by default
overdose_crit_thresholdabove this the big bad overdoses happen
overdose_thresholdabove this overdoses happen
overdosedYou fucked up and this is now triggering its overdose effects, purge that shit quick.
overdosed_critYou really fucked up and now getting the worst of the worse.
purge_listList of reagents removed by this chemical
purge_raterate at which it purges specific chems
reactindeadmobIf true allow foam and smoke to transfer reagent into dead mobs
reagent_stateLIQUID, SOLID, GAS
scannabledoes this show up on health analyzers
self_consumingif false stops metab in liverless mobs
specific_heatJ/(K*mol)
taste_descriptionused by taste messages
taste_multihow this taste compares to others. Higher values means it is more noticable
trait_flagsSpecific trait flags, like HEARTSTOPPER CHESTSTOPPER BRADYCARDICS TACHYCARDIC
volumepretend this is moles

Procs

addiction_act_stage1Called when addiction hits stage1, see /datum/reagents/proc/metabolize
addiction_act_stage2Called when addiction hits stage2, see /datum/reagents/proc/metabolize
addiction_act_stage3Called when addiction hits stage3, see /datum/reagents/proc/metabolize
addiction_act_stage4Called when addiction hits stage4, see /datum/reagents/proc/metabolize
on_ex_actCalled when the reagent container is hit by an explosion
on_mergeCalled when two reagents of the same are mixing.
on_mob_addCalled when this reagent is first added to a mob
on_mob_deleteCalled when this reagent is removed while inside a mob
on_mob_lifeCalled from /datum/reagents/proc/metabolize
on_moveCalled by [/datum/reagents/proc/conditional_update_move]
on_newCalled after add_reagents creates a new reagent.
on_overdose_crit_startCalled when a CRITICAL overdose starts.
on_overdose_startCalled when an overdose starts
on_overdose_stopCalled when an overdose stops
on_updateCalled by [/datum/reagents/proc/conditional_update]
overdose_crit_processCalled when a CRITICAL overdose threshold and is trigger effects.
overdose_processCalled if the reagent has passed the overdose threshold and is set to be triggering overdose effects
purgeCalled during metablism, checks to see if any chemicals need to purge other chemicals.
reaction_mobApplies this reagent to a /mob/living
reaction_objApplies this reagent to an /obj
reaction_turfApplies this reagent to a /turf
+

Var Details

addiction_stage + + + + +

+

increases as addiction gets worse

addiction_threshold + + + + +

+

above this amount addictions start

can_synth + + + + +

+

can this reagent be synthesized? (for example: odysseus syringe gun)

color + + + + +

+

color it looks in containers etc

current_cycle + + + + +

+

increments everytime on_mob_life is called

custom_metabolism + + + + +

+

how fast the reagent is metabolized by the mob

data + + + + +

+

special data associated with this like viruses etc

default_container + + + + +

+

The default reagent container for the reagent, used for icon generation

description + + + + +

+

nor do they have descriptions

effect_str + + + + +

+

Affects the strength of reagent effects

holder + + + + +

+

reagent holder this belongs to

medbayblacklist + + + + +

+

Used for certain chems we don't want being extracted via dialysis or being used in cryo, makes all important medical machines (dispenser, cryo etc...) refuse to interact with the reagent

name + + + + +

+

datums don't have names by default

overdose_crit_threshold + + + + +

+

above this the big bad overdoses happen

overdose_threshold + + + + +

+

above this overdoses happen

overdosed + + + + +

+

You fucked up and this is now triggering its overdose effects, purge that shit quick.

overdosed_crit + + + + +

+

You really fucked up and now getting the worst of the worse.

purge_list + + + + +

+

List of reagents removed by this chemical

purge_rate + + + + +

+

rate at which it purges specific chems

reactindeadmob + + + + +

+

If true allow foam and smoke to transfer reagent into dead mobs

reagent_state + + + + +

+

LIQUID, SOLID, GAS

scannable + + + + +

+

does this show up on health analyzers

self_consuming + + + + +

+

if false stops metab in liverless mobs

specific_heat + + + + +

+

J/(K*mol)

taste_description + + + + +

+

used by taste messages

taste_multi + + + + +

+

how this taste compares to others. Higher values means it is more noticable

trait_flags + + + + +

+

Specific trait flags, like HEARTSTOPPER CHESTSTOPPER BRADYCARDICS TACHYCARDIC

volume + + + + +

+

pretend this is moles

Proc Details

addiction_act_stage1 +

+

Called when addiction hits stage1, see /datum/reagents/proc/metabolize

addiction_act_stage2 +

+

Called when addiction hits stage2, see /datum/reagents/proc/metabolize

addiction_act_stage3 +

+

Called when addiction hits stage3, see /datum/reagents/proc/metabolize

addiction_act_stage4 +

+

Called when addiction hits stage4, see /datum/reagents/proc/metabolize

on_ex_act +

+

Called when the reagent container is hit by an explosion

on_merge +

+

Called when two reagents of the same are mixing.

on_mob_add +

+

Called when this reagent is first added to a mob

on_mob_delete +

+

Called when this reagent is removed while inside a mob

on_mob_life +

+

Called from /datum/reagents/proc/metabolize

on_move +

+

Called by [/datum/reagents/proc/conditional_update_move]

on_new +

+

Called after add_reagents creates a new reagent.

on_overdose_crit_start +

+

Called when a CRITICAL overdose starts.

on_overdose_start +

+

Called when an overdose starts

on_overdose_stop +

+

Called when an overdose stops

on_update +

+

Called by [/datum/reagents/proc/conditional_update]

overdose_crit_process +

+

Called when a CRITICAL overdose threshold and is trigger effects.

overdose_process +

+

Called if the reagent has passed the overdose threshold and is set to be triggering overdose effects

purge +

+

Called during metablism, checks to see if any chemicals need to purge other chemicals.

reaction_mob +

+

Applies this reagent to a /mob/living

reaction_obj +

+

Applies this reagent to an /obj

reaction_turf +

+

Applies this reagent to a /turf

+ + + diff --git a/datum/reagent/consumable.html b/datum/reagent/consumable.html new file mode 100644 index 0000000000000..d7663cbbe545e --- /dev/null +++ b/datum/reagent/consumable.html @@ -0,0 +1,35 @@ + + + + + + + /datum/reagent/consumable - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

consumable + + + +

+ +

Food Reagents

+

Procs

milk_healSimple healing proc to avoid copy paste

Proc Details

milk_heal +

+

Simple healing proc to avoid copy paste

+ + + diff --git a/datum/reagent/consumable/ethanol.html b/datum/reagent/consumable/ethanol.html new file mode 100644 index 0000000000000..81cea4ee14573 --- /dev/null +++ b/datum/reagent/consumable/ethanol.html @@ -0,0 +1,80 @@ + + + + + + + /datum/reagent/consumable/ethanol - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

ethanol + + + +

+ + + + +

Vars

boozepwrBoozepwr Chart +Note that all higher effects of alcohol poisoning will inherit effects for smaller amounts (i.e. light poisoning inherts from slight poisoning) +In addition, severe effects won't always trigger unless the drink is poisonously strong +All effects don't start immediately, but rather get worse over time; the rate is affected by the imbiber's alcohol tolerance +0: Non-alcoholic +1-10: Barely classifiable as alcohol - occassional slurring +11-20: Slight alcohol content - slurring +21-30: Below average - imbiber begins to look slightly drunk +31-40: Just below average - no unique effects +41-50: Average - mild disorientation, imbiber begins to look drunk +51-60: Just above average - disorientation, vomiting, imbiber begins to look heavily drunk +61-70: Above average - small chance of blurry vision, imbiber begins to look smashed +71-80: High alcohol content - blurry vision, imbiber completely shitfaced +81-90: Extremely high alcohol content - toxin damage, passing out +91-100: Dangerously toxic - brain damage, probable liver failure. +101 and beyond: Lethally toxic - Swift death.
druggyHow much drugginess our mob gets on life tick
halluciHow much hallucination our mob gets on life tick
+

Var Details

boozepwr + + + + +

+

Boozepwr Chart +Note that all higher effects of alcohol poisoning will inherit effects for smaller amounts (i.e. light poisoning inherts from slight poisoning) +In addition, severe effects won't always trigger unless the drink is poisonously strong +All effects don't start immediately, but rather get worse over time; the rate is affected by the imbiber's alcohol tolerance +0: Non-alcoholic +1-10: Barely classifiable as alcohol - occassional slurring +11-20: Slight alcohol content - slurring +21-30: Below average - imbiber begins to look slightly drunk +31-40: Just below average - no unique effects +41-50: Average - mild disorientation, imbiber begins to look drunk +51-60: Just above average - disorientation, vomiting, imbiber begins to look heavily drunk +61-70: Above average - small chance of blurry vision, imbiber begins to look smashed +71-80: High alcohol content - blurry vision, imbiber completely shitfaced +81-90: Extremely high alcohol content - toxin damage, passing out +91-100: Dangerously toxic - brain damage, probable liver failure. +101 and beyond: Lethally toxic - Swift death.

druggy + + + + +

+

How much drugginess our mob gets on life tick

halluci + + + + +

+

How much hallucination our mob gets on life tick

+ + + diff --git a/datum/reagent/consumable/rootbeer.html b/datum/reagent/consumable/rootbeer.html new file mode 100644 index 0000000000000..b997a90e33569 --- /dev/null +++ b/datum/reagent/consumable/rootbeer.html @@ -0,0 +1,36 @@ + + + + + + + /datum/reagent/consumable/rootbeer - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

rootbeer + + + +

+ + +

Vars

effect_enabledIf we activated the effect
+

Var Details

effect_enabled + + + + +

+

If we activated the effect

+ + + diff --git a/datum/reagent/fuel.html b/datum/reagent/fuel.html new file mode 100644 index 0000000000000..5617e793a6206 --- /dev/null +++ b/datum/reagent/fuel.html @@ -0,0 +1,36 @@ + + + + + + + /datum/reagent/fuel - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

fuel + + + +

+ + +

Vars

effect_typeThe effect creates when this reagent is splashed on the ground
+

Var Details

effect_type + + + + +

+

The effect creates when this reagent is splashed on the ground

+ + + diff --git a/datum/reagent/medicine/quickclotplus.html b/datum/reagent/medicine/quickclotplus.html new file mode 100644 index 0000000000000..6bf52ae97dad6 --- /dev/null +++ b/datum/reagent/medicine/quickclotplus.html @@ -0,0 +1,64 @@ + + + + + + + /datum/reagent/medicine/quickclotplus - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

quickclotplus + + + +

+ + + + + + +

Vars

target_IBThe IB wound this dose of QCP will cure, if it lasts long enough
ticks_leftTicks remaining before the target_IB is cured
ticks_to_cure_IBTicks needed to cure an IB

Procs

clear_woundIf something else removes the wound before the drug finishes with it, we need to clean references.
select_woundChoose an internal bleeding wound to lock onto and cure after a delay.
+

Var Details

target_IB + + + + +

+

The IB wound this dose of QCP will cure, if it lasts long enough

ticks_left + + + + +

+

Ticks remaining before the target_IB is cured

ticks_to_cure_IB + + + + +

+

Ticks needed to cure an IB

Proc Details

clear_wound +

+

If something else removes the wound before the drug finishes with it, we need to clean references.

select_wound +

+

Choose an internal bleeding wound to lock onto and cure after a delay.

+ + + diff --git a/datum/reagent/zombium.html b/datum/reagent/zombium.html new file mode 100644 index 0000000000000..dad611d16d985 --- /dev/null +++ b/datum/reagent/zombium.html @@ -0,0 +1,35 @@ + + + + + + + /datum/reagent/zombium - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

zombium + + + +

+ + +

Procs

zombifySignal handler preparing the source to become a zombie

Proc Details

zombify +

+

Signal handler preparing the source to become a zombie

+ + + diff --git a/datum/reagents.html b/datum/reagents.html new file mode 100644 index 0000000000000..b1884c7d14e3d --- /dev/null +++ b/datum/reagents.html @@ -0,0 +1,227 @@ + + + + + + + /datum/reagents - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

reagents + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

addiction_listcurrently addicted reagents
addiction_ticksee /datum/reagents/proc/metabolize for usage
chem_tempCurrent temp of the holder volume
last_tickunused
maximum_volumeMax volume of this holder
my_atomThe atom this holder is attached to
reagent_flagsvarious flags, see code__DEFINES\reagents.dm
reagent_listThe reagents being held
total_volumeCurrent volume of all the reagents

Procs

clear_reagentsRemoves all reagents
copy_toCopies the reagents to the target object
del_reagentRemove a reagent datum with the type provided from this container. True if one is removed, false otherwise.
get_holderGetter proc for our atom holder
get_master_reagentGet a reference to the reagent there is the most of in this holder
get_master_reagent_idGet the id of the reagent there is the most of in this holder
get_master_reagent_nameGet the name of the reagent there is the most of in this holder
get_reagentReturns a regent if it is in this datum
get_reagentsReturns a list of all reagents in this datum
log_listUsed in attack logs for reagents in pills and such
metabolizeTriggers metabolizing the reagents in this holder
remove_allRemoves all reagents from this holder
remove_anyRemove an amount of reagents without caring about what they are
remove_reagentLike add_reagent but you can enter a list. Format it like this: list(/datum/reagent/toxin = 10, /datum/reagent/consumable/ethanol/beer = 15)
trans_id_toTransfer a specific reagent id to the target object
trans_toTransfer some stuff from this holder to a target object
+

Var Details

addiction_list + + + + +

+

currently addicted reagents

addiction_tick + + + + +

+

see /datum/reagents/proc/metabolize for usage

chem_temp + + + + +

+

Current temp of the holder volume

last_tick + + + + +

+

unused

maximum_volume + + + + +

+

Max volume of this holder

my_atom + + + + +

+

The atom this holder is attached to

reagent_flags + + + + +

+

various flags, see code__DEFINES\reagents.dm

reagent_list + + + + +

+

The reagents being held

total_volume + + + + +

+

Current volume of all the reagents

Proc Details

clear_reagents +

+

Removes all reagents

copy_to +

+

Copies the reagents to the target object

del_reagent +

+

Remove a reagent datum with the type provided from this container. True if one is removed, false otherwise.

get_holder +

+

Getter proc for our atom holder

get_master_reagent +

+

Get a reference to the reagent there is the most of in this holder

get_master_reagent_id +

+

Get the id of the reagent there is the most of in this holder

get_master_reagent_name +

+

Get the name of the reagent there is the most of in this holder

get_reagent +

+

Returns a regent if it is in this datum

get_reagents +

+

Returns a list of all reagents in this datum

log_list +

+

Used in attack logs for reagents in pills and such

+

Arguments:

+

metabolize +

+

Triggers metabolizing the reagents in this holder

+

Arguments:

+

remove_all +

+

Removes all reagents from this holder

remove_any +

+

Remove an amount of reagents without caring about what they are

remove_reagent +

+

Like add_reagent but you can enter a list. Format it like this: list(/datum/reagent/toxin = 10, /datum/reagent/consumable/ethanol/beer = 15)

trans_id_to +

+

Transfer a specific reagent id to the target object

trans_to +

+

Transfer some stuff from this holder to a target object

+

Arguments:

+
+ + + diff --git a/datum/round_event/hive_threat.html b/datum/round_event/hive_threat.html new file mode 100644 index 0000000000000..835da70ab8d2e --- /dev/null +++ b/datum/round_event/hive_threat.html @@ -0,0 +1,57 @@ + + + + + + + /datum/round_event/hive_threat - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

hive_threat + + + +

+ + + + + +

Vars

hive_targetThe human target for this event

Procs

bless_hiveActually applies the buff to the hive
remove_blessingdebuffs the hive when the blessing expires
set_targetsets the target for this event, and notifies the hive
+

Var Details

hive_target + + + + +

+

The human target for this event

Proc Details

bless_hive +

+

Actually applies the buff to the hive

remove_blessing +

+

debuffs the hive when the blessing expires

set_target +

+

sets the target for this event, and notifies the hive

+ + + diff --git a/datum/round_event/intel_computer.html b/datum/round_event/intel_computer.html new file mode 100644 index 0000000000000..8a3e815ad8491 --- /dev/null +++ b/datum/round_event/intel_computer.html @@ -0,0 +1,35 @@ + + + + + + + /datum/round_event/intel_computer - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

intel_computer + + + +

+ + +

Procs

activatesets the icon on the map. Toggles it between active and inactive, notifies xenos and marines of the existence of the computer.

Proc Details

activate +

+

sets the icon on the map. Toggles it between active and inactive, notifies xenos and marines of the existence of the computer.

+ + + diff --git a/datum/round_event/supply_drop.html b/datum/round_event/supply_drop.html new file mode 100644 index 0000000000000..2674b136cf86e --- /dev/null +++ b/datum/round_event/supply_drop.html @@ -0,0 +1,64 @@ + + + + + + + /datum/round_event/supply_drop - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

supply_drop + + + +

+ + + + + + +

Vars

alert_delayHow much of an early warning the supplying faction gets vs their opponents
drop_delayHow long between the event firing and the supply drop actually landing

Procs

alert_hostilesAlerts the hostile faction(s)
drop_suppliesdeploys the actual supply drop
set_targetsets the target for this event, and notifies the hive
+

Var Details

alert_delay + + + + +

+

How much of an early warning the supplying faction gets vs their opponents

drop_delay + + + + +

+

How long between the event firing and the supply drop actually landing

Proc Details

alert_hostiles +

+

Alerts the hostile faction(s)

drop_supplies +

+

deploys the actual supply drop

set_target +

+

sets the target for this event, and notifies the hive

+ + + diff --git a/datum/round_event_control.html b/datum/round_event_control.html new file mode 100644 index 0000000000000..d1906844291bd --- /dev/null +++ b/datum/round_event_control.html @@ -0,0 +1,91 @@ + + + + + + + /datum/round_event_control - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

round_event_control + + + +

+ +

this datum is used by the events controller to dictate how it selects events

+ + + + + + + +

Vars

earliest_startThe earliest world.time that an event can start (round-duration in deciseconds) default: 20 mins
min_playersThe minimum amount of alive, non-AFK human players on server required to start the event.
nameThe human-readable name of the event
occurrencesHow many times this event has occured
triggeringadmin cancellation
typepathThe typepath of the event datum /datum/round_event
weightThe weight this event has in the random-selection process. +Higher weights are more likely to be picked. +10 is the default weight. 20 is twice more likely; 5 is half as likely as this default. +0 here does NOT disable the event, it just makes it extremely unlikely

Procs

can_spawn_eventChecks if the event can be spawned. Used by event controller. Admin-created events override this.
+

Var Details

earliest_start + + + + +

+

The earliest world.time that an event can start (round-duration in deciseconds) default: 20 mins

min_players + + + + +

+

The minimum amount of alive, non-AFK human players on server required to start the event.

name + + + + +

+

The human-readable name of the event

occurrences + + + + +

+

How many times this event has occured

triggering + + + + +

+

admin cancellation

typepath + + + + +

+

The typepath of the event datum /datum/round_event

weight + + + + +

+

The weight this event has in the random-selection process. +Higher weights are more likely to be picked. +10 is the default weight. 20 is twice more likely; 5 is half as likely as this default. +0 here does NOT disable the event, it just makes it extremely unlikely

Proc Details

can_spawn_event +

+

Checks if the event can be spawned. Used by event controller. Admin-created events override this.

+ + + diff --git a/datum/round_statistics.html b/datum/round_statistics.html new file mode 100644 index 0000000000000..98fcfa4af4a06 --- /dev/null +++ b/datum/round_statistics.html @@ -0,0 +1,64 @@ + + + + + + + /datum/round_statistics - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

round_statistics + + + +

+ + + + + + +

Vars

total_human_deathsAll human deaths during the round, listed by faction
total_human_revivesAll human revives during the round, listed by faction
total_humans_createdAll humans created during the round, listed by faction. Occurs at job spawn to capture faction
total_projectile_hitsAll projectiles hit during the round, listed by faction
total_projectiles_firedAll projectiles fired during the round, listed by faction
+

Var Details

total_human_deaths + + + + +

+

All human deaths during the round, listed by faction

total_human_revives + + + + +

+

All human revives during the round, listed by faction

total_humans_created + + + + +

+

All humans created during the round, listed by faction. Occurs at job spawn to capture faction

total_projectile_hits + + + + +

+

All projectiles hit during the round, listed by faction

total_projectiles_fired + + + + +

+

All projectiles fired during the round, listed by faction

+ + + diff --git a/datum/season_datum.html b/datum/season_datum.html new file mode 100644 index 0000000000000..1b3491b058063 --- /dev/null +++ b/datum/season_datum.html @@ -0,0 +1,50 @@ + + + + + + + /datum/season_datum - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

season_datum + + + +

+ +

Used to make item buckets for the seasonal items system

+ + +

Vars

descriptionDescrpition of the season
item_listItems that the season contains
nameName of the season
+

Var Details

description + + + + +

+

Descrpition of the season

item_list + + + + +

+

Items that the season contains

name + + + + +

+

Name of the season

+ + + diff --git a/datum/select_equipment.html b/datum/select_equipment.html new file mode 100644 index 0000000000000..4e81db9feb43c --- /dev/null +++ b/datum/select_equipment.html @@ -0,0 +1,60 @@ + + + + + + + /datum/select_equipment - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

select_equipment + + + +

+ + +

Procs

outfit_entryPacks up data about an outfit as an assoc list to send to the UI as an outfit entry.

Proc Details

outfit_entry +

+

Packs up data about an outfit as an assoc list to send to the UI as an outfit entry.

+

Args:

+ +

Returns (list) An outfit entry

+ + + diff --git a/datum/signal/subspace.html b/datum/signal/subspace.html new file mode 100644 index 0000000000000..e4d2af12894f6 --- /dev/null +++ b/datum/signal/subspace.html @@ -0,0 +1,63 @@ + + + + + + + /datum/signal/subspace - byond + + +
+ byond - + Modules - + Types +
+
+

subspace + + + +

+ +

Here is the big, bad function that broadcasts a message given the appropriate +parameters.

+

@param M: +Reference to the mob/speaker, stored in signal.data["mob"]

+

@param vmask: +Boolean value if the mob is "hiding" its identity via voice mask, stored in +signal.data["vmask"]

+

@param vmessage: +If specified, will display this as the message; such as "chimpering" +for monkeys if the mob is not understood. Stored in signal.data["vmessage"].

+

@param radio: +Reference to the radio broadcasting the message, stored in signal.data["radio"]

+

@param message: +The actual string message to display to mobs who understood mob M. Stored in +signal.data["message"]

+

@param name: +The name to display when a mob receives the message. signal.data["name"]

+

@param job: +The name job to display for the AI when it receives the message. signal.data["job"]

+

@param realname: +The "real" name associated with the mob. signal.data["realname"]

+

@param vname: +If specified, will use this name when mob M is not understood. signal.data["vname"]

+

@param data: +If specified: +1 -- Will only broadcast to intercoms +2 -- Will only broadcast to intercoms and station-bounced radios +3 -- Broadcast to syndicate frequency +4 -- AI can't track down this person. Useful for imitation broadcasts where you can't find the actual mob

+

@param compression: +If 0, the signal is audible +If nonzero, the signal may be partially inaudible or just complete gibberish.

+

@param level: +The list of Z levels that the sending radio is broadcasting to. Having 0 in the list broadcasts on all levels

+

@param freq +The frequency of the signal

+ + + diff --git a/datum/signal/subspace/vocal.html b/datum/signal/subspace/vocal.html new file mode 100644 index 0000000000000..168174499cbc9 --- /dev/null +++ b/datum/signal/subspace/vocal.html @@ -0,0 +1,35 @@ + + + + + + + /datum/signal/subspace/vocal - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

vocal + + + +

+ + +

Procs

broadcastThis is the meat function for making radios hear vocal transmissions.

Proc Details

broadcast +

+

This is the meat function for making radios hear vocal transmissions.

+ + + diff --git a/datum/skills.html b/datum/skills.html new file mode 100644 index 0000000000000..3f0a40b72ad17 --- /dev/null +++ b/datum/skills.html @@ -0,0 +1,78 @@ + + + + + + + /datum/skills - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

skills + + + +

+ + + + + + + + +

Vars

staminaEffects stamina regen rate and regen delay

Procs

getListreturns an assoc list (SKILL_X = VALUE) of all skills for this skill datum
getPercentreturns how many % of skills the user has of max_rating. rating should be a SKILL_X define
getRatingreturns number value of the skill rating. rating should be a SKILL_X define
modifyAllRatingsacts as [/proc/modifyRating] but instead modifies all values rather than several specific ones
modifyRatingreturns/gets a new skills datum with values changed according to the args passed
setRatingacts as [/proc/modifyRating] but sets the rating directly rather than modify it
+

Var Details

stamina + + + + +

+

Effects stamina regen rate and regen delay

Proc Details

getList +

+

returns an assoc list (SKILL_X = VALUE) of all skills for this skill datum

getPercent +

+

returns how many % of skills the user has of max_rating. rating should be a SKILL_X define

getRating +

+

returns number value of the skill rating. rating should be a SKILL_X define

modifyAllRatings +

+

acts as [/proc/modifyRating] but instead modifies all values rather than several specific ones

modifyRating +

+

returns/gets a new skills datum with values changed according to the args passed

setRating +

+

acts as [/proc/modifyRating] but sets the rating directly rather than modify it

+ + + diff --git a/datum/smite.html b/datum/smite.html new file mode 100644 index 0000000000000..03390acaddc62 --- /dev/null +++ b/datum/smite.html @@ -0,0 +1,61 @@ + + + + + + + /datum/smite - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

smite + + + +

+ +

A smite, used by admins to punish players, or for their own amusement

+ + + +

Vars

nameThe name of the smite, shown in the menu
should_logShould this smite write to logs?

Procs

configureCalled once after either choosing the option to smite a player, or when selected in smite build mode. +Use this to prompt the user configuration options. +Return FALSE if the smite should not be used.
effectThe effect of the smite, make sure to call this in your own smites
+

Var Details

name + + + + +

+

The name of the smite, shown in the menu

should_log + + + + +

+

Should this smite write to logs?

Proc Details

configure +

+

Called once after either choosing the option to smite a player, or when selected in smite build mode. +Use this to prompt the user configuration options. +Return FALSE if the smite should not be used.

effect +

+

The effect of the smite, make sure to call this in your own smites

+ + + diff --git a/datum/song.html b/datum/song.html new file mode 100644 index 0000000000000..59f84ff4349b1 --- /dev/null +++ b/datum/song.html @@ -0,0 +1,539 @@ + + + + + + + /datum/song - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

Song datum + + + +

+ +

These are the actual backend behind instruments. +They attach to an atom and provide the editor + playback functionality.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

allowed_instrument_idsWhat instruments our built in picker can use. The picker won't show unless this is longer than one.
cached_exponential_dropoffDo not directly set, use update_sustain()
cached_legacy_dirCached legacy dir for legacy instruments
cached_legacy_extCached legacy ext for legacy instruments
cached_linear_dropoff/////// DO NOT DIRECTLY SET THESE! +Do not directly set, use update_sustain()
cached_samplesCached list of samples, referenced directly from the instrument for synthesized instruments
channels_idleList of channels that aren't being used, as text. This is to prevent unnecessary freeing and reallocations from SSsounds/SSinstruments.
channels_playingChannel as text = current volume percentage but it's 0 to 100 instead of 0 to 1.
compiled_chordsPlaying variables +Build by compile_chords() +Must be rebuilt on instrument switch. +Compilation happens when we start playing and is cleared after we finish playing. +Format: list of chord lists, with chordlists having (key1, key2, key3, tempodiv)
current_chordCurrent chord we're on.
debug_modeIf this is enabled, some things won't be strictly cleared when they usually are (liked compiled_chords on play stop)
delay_byAmount of delay to wait before playing the next chord
editingAre we currently editing?
elapsed_delayCurrent section of a long chord we're on, so we don't need to make a billion chords, one for every unit ticklag.
full_sustain_held_noteShould we not decay our last played note?
hearing_mobsThe list of mobs that can hear us
helpIs the help screen open?
instrument_rangeHow far we can be heard
last_channel_playedLast channel to play. text.
last_hearcheckLast world.time we checked for who can hear us
legacyAre we operating in legacy mode (so if the instrument is a legacy instrument)
linesOur song lines
max_repeatsMaximum times we can repeat
max_sound_channelsMax sound channels to occupy
max_volumeMax volume
min_volumeMin volume - This is so someone doesn't decide it's funny to set it to 0 and play invisible songs.
nameName of the song
note_shift////////// !!FUN!! - Only works in synthesized mode! ///////////////// +Note numbers to shift.
octave_minDO NOT TOUCH THESE
parentThe atom we're attached to/playing from
playingAre we currently playing?
repeatRepeats left
sustain_dropoff_volumeWhen a note is considered dead if it is below this in volume
sustain_exponential_dropoffExponential sustain dropoff rate per decisecond
sustain_linear_durationTotal duration of linear sustain for 100 volume note to get to SUSTAIN_DROPOFF
sustain_modeThe kind of sustain we're using
tempodelay between notes in deciseconds
user_playingPerson playing us
using_instrument///////// Cached instrument variables ///////////// +Instrument we are currently using
using_sound_channelsCurrent channels, so we can save a length() call.
volumeOur volume

Procs

ParseSongParses a song the user has input into lines and stores them.
compile_chordsCompiles chords.
compile_legacyCompiles our lines into "chords" with filenames for legacy playback. This makes there have to be a bit of lag at the beginning of the song, but repeats will not have to parse it again, and overall playback won't be impacted by as much lag.
compile_synthesizedCompiles our lines into "chords" with numbers. This makes there have to be a bit of lag at the beginning of the song, but repeats will not have to parse it again, and overall playback won't be impacted by as much lag.
do_hearcheckChecks and stores which mobs can hear us. Terminates sounds for mobs that leave our range.
get_bpmGets our beats per minute based on our tempo.
instrument_status_uiReturns the HTML for the status UI for this song datum.
play_chordPlays a chord.
playkey_legacyProc to play a legacy note. Just plays the sound to hearing mobs (and does hearcheck if necessary), no fancy channel/sustain/management.
playkey_synthPlays a specific numerical key from our instrument to anyone who can hear us. +Does a hearing check if enough time has passed.
pop_channelPops a channel we have reserved so we don't have to release and re-request them from SSsounds every time we play a note. This is faster.
process_decayDecays our channels and updates their volumes to mobs who can hear us.
process_songProcesses our song.
sanitize_tempoSanitizes tempo to a value that makes sense and fits the current world.tick_lag.
set_bpmSets our tempo from a beats-per-minute, sanitizing it to a valid number first.
set_dropoff_volumeSetter for setting how low the volume has to get before a note is considered "dead" and dropped
set_exponential_drop_rateSetter for setting exponential falloff factor.
set_instrumentSets our instrument, caching anything necessary for faster accessing. Accepts an ID, typepath, or instantiated instrument datum.
set_linear_falloff_durationSetter for setting linear falloff duration.
set_volumeSetter for setting output volume.
should_stop_playingChecks if we should halt playback.
start_playingAttempts to start playing our song.
stop_playingStops playing, terminating all sounds if in synthesized mode. Clears hearing_mobs.
tempodiv_to_delayConverts a tempodiv to ticks to elapse before playing the next chord, taking into account our tempo.
terminate_all_soundsStops all sounds we are "responsible" for. Only works in synthesized mode.
terminate_sound_mobStops all sounds we are responsible for in a given person. Only works in synthesized mode.
updateDialogUpdates the window for our users. Override down the line.
update_sustainUpdates our cached linear/exponential falloff stuff, saving calculations down the line.
+

Var Details

allowed_instrument_ids + + + + +

+

What instruments our built in picker can use. The picker won't show unless this is longer than one.

cached_exponential_dropoff + + + + +

+

Do not directly set, use update_sustain()

cached_legacy_dir + + + + +

+

Cached legacy dir for legacy instruments

cached_legacy_ext + + + + +

+

Cached legacy ext for legacy instruments

cached_linear_dropoff + + + + +

+

/////// DO NOT DIRECTLY SET THESE! +Do not directly set, use update_sustain()

cached_samples + + + + +

+

Cached list of samples, referenced directly from the instrument for synthesized instruments

channels_idle + + + + +

+

List of channels that aren't being used, as text. This is to prevent unnecessary freeing and reallocations from SSsounds/SSinstruments.

channels_playing + + + + +

+

Channel as text = current volume percentage but it's 0 to 100 instead of 0 to 1.

compiled_chords + + + + +

+

Playing variables +Build by compile_chords() +Must be rebuilt on instrument switch. +Compilation happens when we start playing and is cleared after we finish playing. +Format: list of chord lists, with chordlists having (key1, key2, key3, tempodiv)

current_chord + + + + +

+

Current chord we're on.

debug_mode + + + + +

+

If this is enabled, some things won't be strictly cleared when they usually are (liked compiled_chords on play stop)

delay_by + + + + +

+

Amount of delay to wait before playing the next chord

editing + + + + +

+

Are we currently editing?

elapsed_delay + + + + +

+

Current section of a long chord we're on, so we don't need to make a billion chords, one for every unit ticklag.

full_sustain_held_note + + + + +

+

Should we not decay our last played note?

hearing_mobs + + + + +

+

The list of mobs that can hear us

help + + + + +

+

Is the help screen open?

instrument_range + + + + +

+

How far we can be heard

last_channel_played + + + + +

+

Last channel to play. text.

last_hearcheck + + + + +

+

Last world.time we checked for who can hear us

legacy + + + + +

+

Are we operating in legacy mode (so if the instrument is a legacy instrument)

lines + + + + +

+

Our song lines

max_repeats + + + + +

+

Maximum times we can repeat

max_sound_channels + + + + +

+

Max sound channels to occupy

max_volume + + + + +

+

Max volume

min_volume + + + + +

+

Min volume - This is so someone doesn't decide it's funny to set it to 0 and play invisible songs.

name + + + + +

+

Name of the song

note_shift + + + + +

+

////////// !!FUN!! - Only works in synthesized mode! ///////////////// +Note numbers to shift.

octave_min + + + + +

+

DO NOT TOUCH THESE

parent + + + + +

+

The atom we're attached to/playing from

playing + + + + +

+

Are we currently playing?

repeat + + + + +

+

Repeats left

sustain_dropoff_volume + + + + +

+

When a note is considered dead if it is below this in volume

sustain_exponential_dropoff + + + + +

+

Exponential sustain dropoff rate per decisecond

sustain_linear_duration + + + + +

+

Total duration of linear sustain for 100 volume note to get to SUSTAIN_DROPOFF

sustain_mode + + + + +

+

The kind of sustain we're using

tempo + + + + +

+

delay between notes in deciseconds

user_playing + + + + +

+

Person playing us

using_instrument + + + + +

+

///////// Cached instrument variables ///////////// +Instrument we are currently using

using_sound_channels + + + + +

+

Current channels, so we can save a length() call.

volume + + + + +

+

Our volume

Proc Details

ParseSong +

+

Parses a song the user has input into lines and stores them.

compile_chords +

+

Compiles chords.

compile_legacy +

+

Compiles our lines into "chords" with filenames for legacy playback. This makes there have to be a bit of lag at the beginning of the song, but repeats will not have to parse it again, and overall playback won't be impacted by as much lag.

compile_synthesized +

+

Compiles our lines into "chords" with numbers. This makes there have to be a bit of lag at the beginning of the song, but repeats will not have to parse it again, and overall playback won't be impacted by as much lag.

do_hearcheck +

+

Checks and stores which mobs can hear us. Terminates sounds for mobs that leave our range.

get_bpm +

+

Gets our beats per minute based on our tempo.

instrument_status_ui +

+

Returns the HTML for the status UI for this song datum.

play_chord +

+

Plays a chord.

playkey_legacy +

+

Proc to play a legacy note. Just plays the sound to hearing mobs (and does hearcheck if necessary), no fancy channel/sustain/management.

+

Arguments:

+

playkey_synth +

+

Plays a specific numerical key from our instrument to anyone who can hear us. +Does a hearing check if enough time has passed.

pop_channel +

+

Pops a channel we have reserved so we don't have to release and re-request them from SSsounds every time we play a note. This is faster.

process_decay +

+

Decays our channels and updates their volumes to mobs who can hear us.

+

Arguments:

+

process_song +

+

Processes our song.

sanitize_tempo +

+

Sanitizes tempo to a value that makes sense and fits the current world.tick_lag.

set_bpm +

+

Sets our tempo from a beats-per-minute, sanitizing it to a valid number first.

set_dropoff_volume +

+

Setter for setting how low the volume has to get before a note is considered "dead" and dropped

set_exponential_drop_rate +

+

Setter for setting exponential falloff factor.

set_instrument +

+

Sets our instrument, caching anything necessary for faster accessing. Accepts an ID, typepath, or instantiated instrument datum.

set_linear_falloff_duration +

+

Setter for setting linear falloff duration.

set_volume +

+

Setter for setting output volume.

should_stop_playing +

+

Checks if we should halt playback.

start_playing +

+

Attempts to start playing our song.

stop_playing +

+

Stops playing, terminating all sounds if in synthesized mode. Clears hearing_mobs.

tempodiv_to_delay +

+

Converts a tempodiv to ticks to elapse before playing the next chord, taking into account our tempo.

terminate_all_sounds +

+

Stops all sounds we are "responsible" for. Only works in synthesized mode.

terminate_sound_mob +

+

Stops all sounds we are responsible for in a given person. Only works in synthesized mode.

updateDialog +

+

Updates the window for our users. Override down the line.

update_sustain +

+

Updates our cached linear/exponential falloff stuff, saving calculations down the line.

+ + + diff --git a/datum/sortInstance.html b/datum/sortInstance.html new file mode 100644 index 0000000000000..61df42fb166dc --- /dev/null +++ b/datum/sortInstance.html @@ -0,0 +1,45 @@ + + + + + + + /datum/sortInstance - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

sortInstance + + + +

+ + +

Procs

gallopRightLike gallopLeft, except that if the range contains an element equal to +key, gallopRight returns the index after the rightmost equal element.

Proc Details

gallopRight +

+

Like gallopLeft, except that if the range contains an element equal to +key, gallopRight returns the index after the rightmost equal element.

+

@param key the key whose insertion point to search for +@param a the array in which to search +@param base the index of the first element in the range +@param len the length of the range; must be > 0 +@param hint the index at which to begin the search, 0 <= hint < n. +The closer hint is to the result, the faster this method will run. +@param c the comparator used to order the range, and to search +@return the int k, 0 <= k <= n such that a[b + k - 1] <= key < a[b + k]

+ + + diff --git a/datum/spatial_grid_cell.html b/datum/spatial_grid_cell.html new file mode 100644 index 0000000000000..317ec9c6b9dcc --- /dev/null +++ b/datum/spatial_grid_cell.html @@ -0,0 +1,66 @@ + + + + + + + /datum/spatial_grid_cell - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

Spatial Grid Cell + + + +

+ +

used by /datum/controller/subsystem/spatial_grid to cover every z level so that the coordinates of every turf in the world corresponds to one of these in +the subsystems list of grid cells by z level. each one of these contains content lists holding all atoms meeting a certain criteria that is in our borders. +these datums shouldnt have significant behavior, they should just hold data. the lists are filled and emptied by the subsystem.

+ + + + +

Vars

cell_xour x index in the list of cells. this is our index inside of our row list
cell_your y index in the list of cells. this is the index of our row list inside of our z level grid
cell_zwhich z level we belong to, corresponding to the index of our gridmap in SSspatial_grid.grids_by_z_level
client_contentsevery client possessed mob inside this cell
hearing_contentsevery hearing sensitive movable inside this cell
+

Var Details

cell_x + + + + +

+

our x index in the list of cells. this is our index inside of our row list

cell_y + + + + +

+

our y index in the list of cells. this is the index of our row list inside of our z level grid

cell_z + + + + +

+

which z level we belong to, corresponding to the index of our gridmap in SSspatial_grid.grids_by_z_level

client_contents + + + + +

+

every client possessed mob inside this cell

hearing_contents + + + + +

+

every hearing sensitive movable inside this cell

+ + + diff --git a/datum/spawnerdata.html b/datum/spawnerdata.html new file mode 100644 index 0000000000000..b0d0a9804858f --- /dev/null +++ b/datum/spawnerdata.html @@ -0,0 +1,78 @@ + + + + + + + /datum/spawnerdata - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

spawnerdata + + + +

+ +

Holder datum for various data relating to individual spawners

+ + + + + + +

Vars

fire_incrementFire incrementor
max_allowed_mobsMax allowed mobs
post_spawn_cbPost spawn callback
required_incrementRequired fire increment
spawnamountSpawn amount
spawnedmobsSpawned mobs
spawntypesSpawn types
+

Var Details

fire_increment + + + + +

+

Fire incrementor

max_allowed_mobs + + + + +

+

Max allowed mobs

post_spawn_cb + + + + +

+

Post spawn callback

required_increment + + + + +

+

Required fire increment

spawnamount + + + + +

+

Spawn amount

spawnedmobs + + + + +

+

Spawned mobs

spawntypes + + + + +

+

Spawn types

+ + + diff --git a/datum/species.html b/datum/species.html new file mode 100644 index 0000000000000..6c50afb0c7b3e --- /dev/null +++ b/datum/species.html @@ -0,0 +1,671 @@ + + + + + + + /datum/species - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

The base species datum + + + +

+ +

This datum handles different species in the game, such as synthetics, mothmen, combat robots, skeletons, etc. +It is used in mob/living/carbon/human to determine many things about them, including damage resistance, appearance, special behaviors, and more.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

base_colorUsed when setting species
blood_colorColor of the blood specific to our species
body_temperaturenon-IS_SYNTHETIC species will try to stabilize at this temperature. (also affects temperature processing)
brute_damage_icon_stateicon state for calculating brute damage icons
brute_modBrute damage modifier
burn_damage_icon_stateicon state for calculating brute damage icons
burn_modBurn damage modifier
burstscreamsList of sounds for certain emotes [/datum/emote/living/carbon/human/burstscream/get_sound]
cold_level_1Cold damage level 1 below this point
cold_level_2Cold damage level 2 below this point
cold_level_3Cold damage level 3 below this point
coughsList of sounds for certain emotes [/datum/emote/living/carbon/human/cough/get_sound]
count_humanIf this species counts as a human
damage_mask_icondamage mask icon we want to use when drawing wounds
death_messageMessage that gets sent on death()
death_soundSound that gets played on death()
default_language_holdertype that gets set as our language_holder on proc/set_species
dusted_animspecies-specific dusting animation
eyesicon for eyes
flesh_colorColor of the gibs that spawn from our species [/mob/living/carbon/human/spawn_gibs]
gaspsList of sounds for certain emotes [/datum/emote/living/carbon/human/gasp/get_sound]
gibbed_animspecies-specific gibbing animation
goredcriesList of sounds for certain emotes [/datum/emote/living/carbon/human/gored/get_sound]
hair_colorIf the species only has one hair color
has_organAssociated list of our organs
hazard_high_pressureDangerously high pressure
hazard_low_pressureDangerously low pressure
heat_level_1Heat damage level 1 above this point
heat_level_2Heat damage level 2 above this point
heat_level_3Heat damage level 2 above this point
hudhud that our mob uses, gets given the type stored in hud_type on New()
hud_typetype that our hud gets set to on New()
icobaseNormal icon file
icon_templateUsed in icon caching
inherent_actionsinherent species-specific actions
inherent_traitsGeneric traits tied to having the species
inherent_verbsinherent Species-specific verbs
joinable_roundstartWhether it is possible to select this species and join as it
knock_down_reductionhow much the knocked_down effect is reduced per Life call
knock_out_reductionhow much the stunned effect is reduced per Life call
lighting_alphaSets our mobs lighting_alpha on [/mob/living/carbon/human/update_sight]
max_staminanew max_stamina /mob/living/var/max_stamina of the human mob once species is applied
nameSpecies name
namepoolList of names for random generation based on a given pool
no_equipInventory slots the race can't equip stuff to. Golems cannot wear jumpsuits, for example
paincriesList of sounds for certain emotes [/datum/emote/living/carbon/human/pain/get_sound]
race_keyUsed in icon caching
reagent_tagUsed for metabolizing reagents
remains_typeused to determine what item is left behind in /spawn_dust_remains()
screamsList of sounds for certain emotes [/datum/emote/living/carbon/human/scream/get_sound]
secondary_unarmedFor empty hand harm-intent attack if the first fails
secondary_unarmed_typetype that our secondary_unarmed gets set to on New()
see_in_darkSets mob/var/see_in_dark on [/mob/living/carbon/human/update_sight]
slowdownHow much slowdown is innate to our species
special_death_messageSpecial death message that gets overwritten if possible
species_flagsSpecial effects that are inherent to our species
species_typewhat kind of species it is considered (See: Species defines)
stun_reductionhow much the stunned effect is reduced per Life call
taste_sensitivityused in mob/living/proc/taste
total_healthnew maxHealth /mob/living/carbon/human/var/maxHealth of the human mob once species is applied
unarmedFor empty hand harm-intent attack
unarmed_typetype that our unarmed gets set to on New()
warcriesList of sounds for certain emotes [/datum/emote/living/carbon/human/warcry/get_sound]
warning_high_pressureHigh pressure warning
warning_low_pressureLow pressure warning

Procs

add_inherent_abilitiesAdds all species-specific verbs and actions
apply_damagedamage override at the species level, called by /mob/living/proc/apply_damage
build_hudBuilds the HUD using species-specific icons and usable slots
can_shredCalled when using the shredding behavior
can_understandUsed by xenos understanding larvae and dionaea understanding nymphs
create_organsHandles creation of mob organs and limbs
get_inventory_dialogueGrabs the window recieved when you click-drag someone onto you
handle_chemicalsCalled by [/mob/living/carbon/human/reagent_check] +Returns TRUE if we can't metabolize chems, or can't be poisoned by a toxin
handle_deathHandles any species-specific death events
handle_fireCalled on Life(), special behaviour if we are on fire
handle_login_specialUsed to update alien icons for aliens
handle_logout_specialAs above
handle_post_spawnHandles anything not already covered by basic species assignment
handle_unique_behaviorCalled on Life(), used for special behavior when the carbon human with this species is alive
hugCalled by [/mob/living/carbon/proc/help_shake_act], the act of hugging someone
on_species_gainCalled when we turn into a species, called by [/mob/living/carbon/human/proc/set_species()] +drops things we shouldn't be allowed to equip, adds relevant traits, and adjusts the max health of our mob
post_species_lossspecial things to change after we're no longer that species
prefs_nameReturns the name if there is one in prefs
random_nameGenerates a random name from namepool
record_internal_injuryRecord when a bone break or internal bleeding is inflicted
remove_inherent_abilitiesRemoves all species-specific verbs and actions
spec_unarmedattackSnowflake proc for monkeys so they can call attackpaw
update_bodyBasically just used to update moth wings
update_inv_headBasically just used to update moth wings
update_inv_w_uniformBasically just used to update moth wings
update_inv_wear_suitBasically just used to update moth wings //Man moths are giga shitcoded
+

Var Details

base_color + + + + +

+

Used when setting species

blood_color + + + + +

+

Color of the blood specific to our species

body_temperature + + + + +

+

non-IS_SYNTHETIC species will try to stabilize at this temperature. (also affects temperature processing)

brute_damage_icon_state + + + + +

+

icon state for calculating brute damage icons

brute_mod + + + + +

+

Brute damage modifier

burn_damage_icon_state + + + + +

+

icon state for calculating brute damage icons

burn_mod + + + + +

+

Burn damage modifier

burstscreams + + + + +

+

List of sounds for certain emotes [/datum/emote/living/carbon/human/burstscream/get_sound]

cold_level_1 + + + + +

+

Cold damage level 1 below this point

cold_level_2 + + + + +

+

Cold damage level 2 below this point

cold_level_3 + + + + +

+

Cold damage level 3 below this point

coughs + + + + +

+

List of sounds for certain emotes [/datum/emote/living/carbon/human/cough/get_sound]

count_human + + + + +

+

If this species counts as a human

damage_mask_icon + + + + +

+

damage mask icon we want to use when drawing wounds

death_message + + + + +

+

Message that gets sent on death()

death_sound + + + + +

+

Sound that gets played on death()

default_language_holder + + + + +

+

type that gets set as our language_holder on proc/set_species

dusted_anim + + + + +

+

species-specific dusting animation

eyes + + + + +

+

icon for eyes

flesh_color + + + + +

+

Color of the gibs that spawn from our species [/mob/living/carbon/human/spawn_gibs]

gasps + + + + +

+

List of sounds for certain emotes [/datum/emote/living/carbon/human/gasp/get_sound]

gibbed_anim + + + + +

+

species-specific gibbing animation

goredcries + + + + +

+

List of sounds for certain emotes [/datum/emote/living/carbon/human/gored/get_sound]

hair_color + + + + +

+

If the species only has one hair color

has_organ + + + + +

+

Associated list of our organs

hazard_high_pressure + + + + +

+

Dangerously high pressure

hazard_low_pressure + + + + +

+

Dangerously low pressure

heat_level_1 + + + + +

+

Heat damage level 1 above this point

heat_level_2 + + + + +

+

Heat damage level 2 above this point

heat_level_3 + + + + +

+

Heat damage level 2 above this point

hud + + + + +

+

hud that our mob uses, gets given the type stored in hud_type on New()

hud_type + + + + +

+

type that our hud gets set to on New()

icobase + + + + +

+

Normal icon file

icon_template + + + + +

+

Used in icon caching

inherent_actions + + + + +

+

inherent species-specific actions

inherent_traits + + + + +

+

Generic traits tied to having the species

inherent_verbs + + + + +

+

inherent Species-specific verbs

joinable_roundstart + + + + +

+

Whether it is possible to select this species and join as it

knock_down_reduction + + + + +

+

how much the knocked_down effect is reduced per Life call

knock_out_reduction + + + + +

+

how much the stunned effect is reduced per Life call

lighting_alpha + + + + +

+

Sets our mobs lighting_alpha on [/mob/living/carbon/human/update_sight]

max_stamina + + + + +

+

new max_stamina /mob/living/var/max_stamina of the human mob once species is applied

name + + + + +

+

Species name

namepool + + + + +

+

List of names for random generation based on a given pool

no_equip + + + + +

+

Inventory slots the race can't equip stuff to. Golems cannot wear jumpsuits, for example

paincries + + + + +

+

List of sounds for certain emotes [/datum/emote/living/carbon/human/pain/get_sound]

race_key + + + + +

+

Used in icon caching

reagent_tag + + + + +

+

Used for metabolizing reagents

remains_type + + + + +

+

used to determine what item is left behind in /spawn_dust_remains()

screams + + + + +

+

List of sounds for certain emotes [/datum/emote/living/carbon/human/scream/get_sound]

secondary_unarmed + + + + +

+

For empty hand harm-intent attack if the first fails

secondary_unarmed_type + + + + +

+

type that our secondary_unarmed gets set to on New()

see_in_dark + + + + +

+

Sets mob/var/see_in_dark on [/mob/living/carbon/human/update_sight]

slowdown + + + + +

+

How much slowdown is innate to our species

special_death_message + + + + +

+

Special death message that gets overwritten if possible

species_flags + + + + +

+

Special effects that are inherent to our species

species_type + + + + +

+

what kind of species it is considered (See: Species defines)

stun_reduction + + + + +

+

how much the stunned effect is reduced per Life call

taste_sensitivity + + + + +

+

used in mob/living/proc/taste

total_health + + + + +

+

new maxHealth /mob/living/carbon/human/var/maxHealth of the human mob once species is applied

unarmed + + + + +

+

For empty hand harm-intent attack

unarmed_type + + + + +

+

type that our unarmed gets set to on New()

warcries + + + + +

+

List of sounds for certain emotes [/datum/emote/living/carbon/human/warcry/get_sound]

warning_high_pressure + + + + +

+

High pressure warning

warning_low_pressure + + + + +

+

Low pressure warning

Proc Details

add_inherent_abilities +

+

Adds all species-specific verbs and actions

apply_damage +

+

damage override at the species level, called by /mob/living/proc/apply_damage

build_hud +

+

Builds the HUD using species-specific icons and usable slots

can_shred +

+

Called when using the shredding behavior

can_understand +

+

Used by xenos understanding larvae and dionaea understanding nymphs

create_organs +

+

Handles creation of mob organs and limbs

get_inventory_dialogue +

+

Grabs the window recieved when you click-drag someone onto you

handle_chemicals +

+

Called by [/mob/living/carbon/human/reagent_check] +Returns TRUE if we can't metabolize chems, or can't be poisoned by a toxin

handle_death +

+

Handles any species-specific death events

handle_fire +

+

Called on Life(), special behaviour if we are on fire

handle_login_special +

+

Used to update alien icons for aliens

handle_logout_special +

+

As above

handle_post_spawn +

+

Handles anything not already covered by basic species assignment

handle_unique_behavior +

+

Called on Life(), used for special behavior when the carbon human with this species is alive

hug +

+

Called by [/mob/living/carbon/proc/help_shake_act], the act of hugging someone

on_species_gain +

+

Called when we turn into a species, called by [/mob/living/carbon/human/proc/set_species()] +drops things we shouldn't be allowed to equip, adds relevant traits, and adjusts the max health of our mob

post_species_loss +

+

special things to change after we're no longer that species

prefs_name +

+

Returns the name if there is one in prefs

random_name +

+

Generates a random name from namepool

record_internal_injury +

+

Record when a bone break or internal bleeding is inflicted

remove_inherent_abilities +

+

Removes all species-specific verbs and actions

spec_unarmedattack +

+

Snowflake proc for monkeys so they can call attackpaw

update_body +

+

Basically just used to update moth wings

update_inv_head +

+

Basically just used to update moth wings

update_inv_w_uniform +

+

Basically just used to update moth wings

update_inv_wear_suit +

+

Basically just used to update moth wings //Man moths are giga shitcoded

+ + + diff --git a/datum/species/zombie.html b/datum/species/zombie.html new file mode 100644 index 0000000000000..d53a1db309e67 --- /dev/null +++ b/datum/species/zombie.html @@ -0,0 +1,50 @@ + + + + + + + /datum/species/zombie - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

zombie + + + +

+ + + + +

Vars

heal_rateHow much burn and burn damage can you heal every Life tick (half a sec)
revive_timeTime before resurrecting if dead
soundsSounds made randomly by the zombie
+

Var Details

heal_rate + + + + +

+

How much burn and burn damage can you heal every Life tick (half a sec)

revive_time + + + + +

+

Time before resurrecting if dead

sounds + + + + +

+

Sounds made randomly by the zombie

+ + + diff --git a/datum/squad.html b/datum/squad.html new file mode 100644 index 0000000000000..d906fa72b4ebb --- /dev/null +++ b/datum/squad.html @@ -0,0 +1,43 @@ + + + + + + + /datum/squad - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

squad + + + +

+ + + +

Vars

desccustom squad only: allows users to set a description for the squad
factionFaction of that squad
+

Var Details

desc + + + + +

+

custom squad only: allows users to set a description for the squad

faction + + + + +

+

Faction of that squad

+ + + diff --git a/datum/stack_canary.html b/datum/stack_canary.html new file mode 100644 index 0000000000000..e5ce2ca95d1e3 --- /dev/null +++ b/datum/stack_canary.html @@ -0,0 +1,35 @@ + + + + + + + /datum/stack_canary - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

stack_canary + + + +

+ +

Stack canary. Will go away if the stack it was primed by is ended by byond for return or stack overflow reasons.

+

Procs

use_variableempty proc to avoid warnings about unused variables. Call this proc on your canary in the stack it's watching.

Proc Details

use_variable +

+

empty proc to avoid warnings about unused variables. Call this proc on your canary in the stack it's watching.

+ + + diff --git a/datum/stack_end_detector.html b/datum/stack_end_detector.html new file mode 100644 index 0000000000000..f19a5550a537d --- /dev/null +++ b/datum/stack_end_detector.html @@ -0,0 +1,47 @@ + + + + + + + /datum/stack_end_detector - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

stack_end_detector + + + +

+ +

Stack End Detector. +Can detect if a given code stack has exited, used by the mc for stack overflow detection.

+ +

Procs

checkReturns true if the stack is still going. Calling before the canary has been primed also returns true
prime_canary

Proc Details

check +

+

Returns true if the stack is still going. Calling before the canary has been primed also returns true

prime_canary +

+
+ + + diff --git a/datum/stack_recipe.html b/datum/stack_recipe.html new file mode 100644 index 0000000000000..5b87909eff184 --- /dev/null +++ b/datum/stack_recipe.html @@ -0,0 +1,113 @@ + + + + + + + /datum/stack_recipe - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

stack_recipe + + + +

+ + + + + + + + + + + + + +

Vars

categoryCategory for general crafting menu
crafting_flagscrafting_flags var to hold bool values
max_res_amountMax amount of resulting atoms made
placement_checksBitflag of additional placement checks required to place. (STACK_CHECK_CARDINALS|STACK_CHECK_ADJACENT|STACK_CHECK_TRAM_FORBIDDEN|STACK_CHECK_TRAM_EXCLUSIVE)
req_amountAmount of stack required to make
res_amountAmount of resulting atoms made
result_typeWhat atom the recipe makes, typepath
skill_reqwhether only people with sufficient construction skill can build this.
timeHow long it takes to make
titleThe title of the recipe
trait_boosterWhat trait, if any, boosts the construction speed of this item
trait_modifierHow much the trait above, if supplied, boosts the construct speed of this item
+

Var Details

category + + + + +

+

Category for general crafting menu

crafting_flags + + + + +

+

crafting_flags var to hold bool values

max_res_amount + + + + +

+

Max amount of resulting atoms made

placement_checks + + + + +

+

Bitflag of additional placement checks required to place. (STACK_CHECK_CARDINALS|STACK_CHECK_ADJACENT|STACK_CHECK_TRAM_FORBIDDEN|STACK_CHECK_TRAM_EXCLUSIVE)

req_amount + + + + +

+

Amount of stack required to make

res_amount + + + + +

+

Amount of resulting atoms made

result_type + + + + +

+

What atom the recipe makes, typepath

skill_req + + + + +

+

whether only people with sufficient construction skill can build this.

time + + + + +

+

How long it takes to make

title + + + + +

+

The title of the recipe

trait_booster + + + + +

+

What trait, if any, boosts the construction speed of this item

trait_modifier + + + + +

+

How much the trait above, if supplied, boosts the construct speed of this item

+ + + diff --git a/datum/stack_recipe/radial.html b/datum/stack_recipe/radial.html new file mode 100644 index 0000000000000..12142cb9bd299 --- /dev/null +++ b/datum/stack_recipe/radial.html @@ -0,0 +1,36 @@ + + + + + + + /datum/stack_recipe/radial - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

radial + + + +

+ + +

Vars

descOptional info to be shown on the radial option for this item
+

Var Details

desc + + + + +

+

Optional info to be shown on the radial option for this item

+ + + diff --git a/datum/static_light_source.html b/datum/static_light_source.html new file mode 100644 index 0000000000000..a9a4624552225 --- /dev/null +++ b/datum/static_light_source.html @@ -0,0 +1,127 @@ + + + + + + + /datum/static_light_source - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

static_light_source + + + +

+ + + + + + + + + + + + + + + +

Vars

appliedWhether we have applied our light yet or not.
effect_strList used to store how much we're affecting corners.
light_colorThe colour of the light, string, decomposed by parse_light_color()
light_powerIntensity of the emitter light.
light_rangeThe range of the emitted light.
needs_updatewhether we are to be added to SSlighting's static_sources_queue list for an update
pixel_turfThe turf the top_atom appears to over.
source_atomThe atom that we belong to.
source_turfThe turf under the source atom.
top_atomThe atom we're emitting light from (for example a mob if we're from a flashlight that's being held).

Procs

force_updateWill force an update without checking if it's actually needed.
remove_lumThis is the define used to calculate falloff.
updateThis proc will cause the light source to update the top atom, and add itself to the update queue.
vis_updateWill cause the light source to recalculate turfs that were removed or added to visibility only.
+

Var Details

applied + + + + +

+

Whether we have applied our light yet or not.

effect_str + + + + +

+

List used to store how much we're affecting corners.

light_color + + + + +

+

The colour of the light, string, decomposed by parse_light_color()

light_power + + + + +

+

Intensity of the emitter light.

light_range + + + + +

+

The range of the emitted light.

needs_update + + + + +

+

whether we are to be added to SSlighting's static_sources_queue list for an update

pixel_turf + + + + +

+

The turf the top_atom appears to over.

source_atom + + + + +

+

The atom that we belong to.

source_turf + + + + +

+

The turf under the source atom.

top_atom + + + + +

+

The atom we're emitting light from (for example a mob if we're from a flashlight that's being held).

Proc Details

force_update +

+

Will force an update without checking if it's actually needed.

remove_lum +

+

This is the define used to calculate falloff.

update +

+

This proc will cause the light source to update the top atom, and add itself to the update queue.

vis_update +

+

Will cause the light source to recalculate turfs that were removed or added to visibility only.

+ + + diff --git a/datum/static_lighting_corner.html b/datum/static_lighting_corner.html new file mode 100644 index 0000000000000..7d9edd6608cf9 --- /dev/null +++ b/datum/static_lighting_corner.html @@ -0,0 +1,43 @@ + + + + + + + /datum/static_lighting_corner - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

static_lighting_corner + + + +

+ + + +

Vars

largest_color_luminositythe maximum of lum_r, lum_g, and lum_b. if this is > 1 then the three cached color values are divided by this
needs_updatewhether we are to be added to SSlighting's corners_queue list for an update
+

Var Details

largest_color_luminosity + + + + +

+

the maximum of lum_r, lum_g, and lum_b. if this is > 1 then the three cached color values are divided by this

needs_update + + + + +

+

whether we are to be added to SSlighting's corners_queue list for an update

+ + + diff --git a/datum/static_lighting_object.html b/datum/static_lighting_object.html new file mode 100644 index 0000000000000..b7627ab17b408 --- /dev/null +++ b/datum/static_lighting_object.html @@ -0,0 +1,50 @@ + + + + + + + /datum/static_lighting_object - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

static_lighting_object + + + +

+ + + + +

Vars

affected_turfthe turf that our light is applied to
current_underlaythe underlay we are currently applying to our turf to apply light
needs_updatewhether we are already in the SSlighting.objects_queue list
+

Var Details

affected_turf + + + + +

+

the turf that our light is applied to

current_underlay + + + + +

+

the underlay we are currently applying to our turf to apply light

needs_update + + + + +

+

whether we are already in the SSlighting.objects_queue list

+ + + diff --git a/datum/status_effect.html b/datum/status_effect.html new file mode 100644 index 0000000000000..f15cc0ca24224 --- /dev/null +++ b/datum/status_effect.html @@ -0,0 +1,106 @@ + + + + + + + /datum/status_effect - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

status_effect + + + +

+ + + + + + + + + + + + +

Vars

alert_typethe alert thrown by the status effect, contains name and description
durationHow long the status effect lasts in DECISECONDS. Enter -1 for an effect that never ends unless removed through some means
examine_textIf defined, this text will appear when the mob is examined - to use he, she etc. use "SUBJECTPRONOUN" and replace it in the examines themselves
idUsed for screen alerts
linked_alertthe alert itself, if it exists
ownerThe mob affected by the status effect.
status_typeHow many of the effect can be on one mob, and what happens when you try to add another
tick_intervalHow many deciseconds between ticks, approximately. Leave at 10 for every second

Procs

nextmove_modifierclickdelay/nextmove modifiers!
refreshRefreshed the duration
tickCalled every tick
+

Var Details

alert_type + + + + +

+

the alert thrown by the status effect, contains name and description

duration + + + + +

+

How long the status effect lasts in DECISECONDS. Enter -1 for an effect that never ends unless removed through some means

examine_text + + + + +

+

If defined, this text will appear when the mob is examined - to use he, she etc. use "SUBJECTPRONOUN" and replace it in the examines themselves

id + + + + +

+

Used for screen alerts

linked_alert + + + + +

+

the alert itself, if it exists

owner + + + + +

+

The mob affected by the status effect.

status_type + + + + +

+

How many of the effect can be on one mob, and what happens when you try to add another

tick_interval + + + + +

+

How many deciseconds between ticks, approximately. Leave at 10 for every second

Proc Details

nextmove_modifier +

+

clickdelay/nextmove modifiers!

refresh +

+

Refreshed the duration

tick +

+

Called every tick

+ + + diff --git a/datum/status_effect/blessing.html b/datum/status_effect/blessing.html new file mode 100644 index 0000000000000..7de1a3222ce48 --- /dev/null +++ b/datum/status_effect/blessing.html @@ -0,0 +1,50 @@ + + + + + + + /datum/status_effect/blessing - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

blessing + + + +

+ + + + +

Vars

buff_ownerThe owner of this buff.
puppeteerweakref to the puppeteer to set strength
strengthAura strength of the puppeteer who gave this effect
+

Var Details

buff_owner + + + + +

+

The owner of this buff.

puppeteer + + + + +

+

weakref to the puppeteer to set strength

strength + + + + +

+

Aura strength of the puppeteer who gave this effect

+ + + diff --git a/datum/status_effect/blessing/fury.html b/datum/status_effect/blessing/fury.html new file mode 100644 index 0000000000000..04465fafcddb0 --- /dev/null +++ b/datum/status_effect/blessing/fury.html @@ -0,0 +1,36 @@ + + + + + + + /datum/status_effect/blessing/fury - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

fury + + + +

+ + +

Vars

modifierthe modifier we apply to the xenos melee damage modifier
+

Var Details

modifier + + + + +

+

the modifier we apply to the xenos melee damage modifier

+ + + diff --git a/datum/status_effect/blessing/warding.html b/datum/status_effect/blessing/warding.html new file mode 100644 index 0000000000000..ffddb416bdd63 --- /dev/null +++ b/datum/status_effect/blessing/warding.html @@ -0,0 +1,36 @@ + + + + + + + /datum/status_effect/blessing/warding - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

warding + + + +

+ + +

Vars

armor_modifierA holder for the exact armor modified by this status effect
+

Var Details

armor_modifier + + + + +

+

A holder for the exact armor modified by this status effect

+ + + diff --git a/datum/status_effect/drain_surge.html b/datum/status_effect/drain_surge.html new file mode 100644 index 0000000000000..aec74800b2268 --- /dev/null +++ b/datum/status_effect/drain_surge.html @@ -0,0 +1,36 @@ + + + + + + + /datum/status_effect/drain_surge - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

drain_surge + + + +

+ + +

Vars

particle_holderUsed for particles. Holds the particles instead of the mob. See particle_holder for documentation.
+

Var Details

particle_holder + + + + +

+

Used for particles. Holds the particles instead of the mob. See particle_holder for documentation.

+ + + diff --git a/datum/status_effect/drone_enhancement.html b/datum/status_effect/drone_enhancement.html new file mode 100644 index 0000000000000..f22df95dd39ce --- /dev/null +++ b/datum/status_effect/drone_enhancement.html @@ -0,0 +1,99 @@ + + + + + + + /datum/status_effect/drone_enhancement - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

drone_enhancement + + + +

+ + + + + + + + + + + +

Vars

ability_costThe plasma cost per tick of this ability.
buffed_xenoUsed to track who is the owner of this buff.
buffing_xenoUsed to track who is giving this buff to the owner.
enhancement_actionReferences the Enhancement action and its vars.
essence_link_actionReferences the Essence Link action and its vars.
particle_holderUsed for particles. Holds the particles instead of the mob. See particle_holder for documentation.
was_within_rangeIf the target xeno was within range.

Procs

handle_deathRemoves the status effect on death.
toggle_buffToggles the buff on or off.
toggle_particlesToggles particles on or off, adjusting their positioning to fit the buff's owner.
+

Var Details

ability_cost + + + + +

+

The plasma cost per tick of this ability.

buffed_xeno + + + + +

+

Used to track who is the owner of this buff.

buffing_xeno + + + + +

+

Used to track who is giving this buff to the owner.

enhancement_action + + + + +

+

References the Enhancement action and its vars.

+

References the Essence Link action and its vars.

particle_holder + + + + +

+

Used for particles. Holds the particles instead of the mob. See particle_holder for documentation.

was_within_range + + + + +

+

If the target xeno was within range.

Proc Details

handle_death +

+

Removes the status effect on death.

toggle_buff +

+

Toggles the buff on or off.

toggle_particles +

+

Toggles particles on or off, adjusting their positioning to fit the buff's owner.

+ + + diff --git a/datum/status_effect/gun_skill.html b/datum/status_effect/gun_skill.html new file mode 100644 index 0000000000000..d181a4ef177a1 --- /dev/null +++ b/datum/status_effect/gun_skill.html @@ -0,0 +1,36 @@ + + + + + + + /datum/status_effect/gun_skill - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

gun_skill + + + +

+ + +

Vars

particlesreference to particle effect holder is present for this stack, initially a reference to the type to use
+

Var Details

particles + + + + +

+

reference to particle effect holder is present for this stack, initially a reference to the type to use

+ + + diff --git a/datum/status_effect/gun_skill/accuracy.html b/datum/status_effect/gun_skill/accuracy.html new file mode 100644 index 0000000000000..d92d0f62851a5 --- /dev/null +++ b/datum/status_effect/gun_skill/accuracy.html @@ -0,0 +1,36 @@ + + + + + + + /datum/status_effect/gun_skill/accuracy - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

accuracy + + + +

+ + +

Vars

accuracy_modifierHow much the owner's accuracy will be modified by. Positive or negative.
+

Var Details

accuracy_modifier + + + + +

+

How much the owner's accuracy will be modified by. Positive or negative.

+ + + diff --git a/datum/status_effect/gun_skill/scatter.html b/datum/status_effect/gun_skill/scatter.html new file mode 100644 index 0000000000000..647950a0f2d6f --- /dev/null +++ b/datum/status_effect/gun_skill/scatter.html @@ -0,0 +1,36 @@ + + + + + + + /datum/status_effect/gun_skill/scatter - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

scatter + + + +

+ + +

Vars

scatter_modifierHow much the owner's scatter will be modified by. Positive or negative.
+

Var Details

scatter_modifier + + + + +

+

How much the owner's scatter will be modified by. Positive or negative.

+ + + diff --git a/datum/status_effect/healing_infusion.html b/datum/status_effect/healing_infusion.html new file mode 100644 index 0000000000000..6112783ea6fe2 --- /dev/null +++ b/datum/status_effect/healing_infusion.html @@ -0,0 +1,57 @@ + + + + + + + /datum/status_effect/healing_infusion - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

healing_infusion + + + +

+ + + + + +

Vars

health_ticks_remainingHealth recovery ticks
sunder_ticks_remainingSunder recovery ticks

Procs

healing_infusion_regenerationCalled when the target xeno regains HP via heal_wounds in life.dm
healing_infusion_sunder_regenerationCalled when the target xeno regains Sunder via heal_wounds in life.dm
+

Var Details

health_ticks_remaining + + + + +

+

Health recovery ticks

sunder_ticks_remaining + + + + +

+

Sunder recovery ticks

Proc Details

healing_infusion_regeneration +

+

Called when the target xeno regains HP via heal_wounds in life.dm

healing_infusion_sunder_regeneration +

+

Called when the target xeno regains Sunder via heal_wounds in life.dm

+ + + diff --git a/datum/status_effect/incapacitating/irradiated.html b/datum/status_effect/incapacitating/irradiated.html new file mode 100644 index 0000000000000..7fa23fbf07af2 --- /dev/null +++ b/datum/status_effect/incapacitating/irradiated.html @@ -0,0 +1,36 @@ + + + + + + + /datum/status_effect/incapacitating/irradiated - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

irradiated + + + +

+ +

irradiated mob

+

Vars

carbon_ownerSome effects only apply to carbons
+

Var Details

carbon_owner + + + + +

+

Some effects only apply to carbons

+ + + diff --git a/datum/status_effect/incapacitating/repair_mode.html b/datum/status_effect/incapacitating/repair_mode.html new file mode 100644 index 0000000000000..50c829a87e72f --- /dev/null +++ b/datum/status_effect/incapacitating/repair_mode.html @@ -0,0 +1,43 @@ + + + + + + + /datum/status_effect/incapacitating/repair_mode - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

repair_mode + + + +

+ +

Basically a temporary self-inflicted shutdown for maintenance

+ +

Vars

healing_per_tickHow much brute or burn per second
last_soundWhether the last tick made a sound effect or not
+

Var Details

healing_per_tick + + + + +

+

How much brute or burn per second

last_sound + + + + +

+

Whether the last tick made a sound effect or not

+ + + diff --git a/datum/status_effect/mindmeld.html b/datum/status_effect/mindmeld.html new file mode 100644 index 0000000000000..b159b8596ad95 --- /dev/null +++ b/datum/status_effect/mindmeld.html @@ -0,0 +1,120 @@ + + + + + + + /datum/status_effect/mindmeld - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

mindmeld + + + +

+ + + + + + + + + + + + + + +

Vars

accuracy_modProjectile accuracy buff
health_modMax health buff
link_partnerUsed to track who is giving this buff to the owner.
link_targetUsed to track who is the owner of this buff.
max_rangeRange the linkees must be to each other to benefit
particle_holderUsed for particles. Holds the particles instead of the mob. See particle_holder for documentation.
speed_modMovement speed buff
stun_resistance% chance to ignore stuns
was_within_rangeIf the target xeno was within range.

Procs

check_rangeChecks if mob is in buff range and toggles as required
handle_stunRemoves the status effect on death.
toggle_buffToggles the buff on or off.
toggle_particlesToggles particles on or off, adjusting their positioning to fit the buff's owner.
+

Var Details

accuracy_mod + + + + +

+

Projectile accuracy buff

health_mod + + + + +

+

Max health buff

+

Used to track who is giving this buff to the owner.

+

Used to track who is the owner of this buff.

max_range + + + + +

+

Range the linkees must be to each other to benefit

particle_holder + + + + +

+

Used for particles. Holds the particles instead of the mob. See particle_holder for documentation.

speed_mod + + + + +

+

Movement speed buff

stun_resistance + + + + +

+

% chance to ignore stuns

was_within_range + + + + +

+

If the target xeno was within range.

Proc Details

check_range +

+

Checks if mob is in buff range and toggles as required

handle_stun +

+

Removes the status effect on death.

toggle_buff +

+

Toggles the buff on or off.

toggle_particles +

+

Toggles particles on or off, adjusting their positioning to fit the buff's owner.

+ + + diff --git a/datum/status_effect/plasma_surge.html b/datum/status_effect/plasma_surge.html new file mode 100644 index 0000000000000..240365616cafc --- /dev/null +++ b/datum/status_effect/plasma_surge.html @@ -0,0 +1,43 @@ + + + + + + + /datum/status_effect/plasma_surge - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

plasma_surge + + + +

+ + + +

Vars

bonus_regenHow much extra plasma should we regenerate over time as a % of our base regen, 1 being twice the regen
flat_amount_restoredHow much plasma do we instantly restore
+

Var Details

bonus_regen + + + + +

+

How much extra plasma should we regenerate over time as a % of our base regen, 1 being twice the regen

flat_amount_restored + + + + +

+

How much plasma do we instantly restore

+ + + diff --git a/datum/status_effect/salve_regen.html b/datum/status_effect/salve_regen.html new file mode 100644 index 0000000000000..9d077d4e1fe42 --- /dev/null +++ b/datum/status_effect/salve_regen.html @@ -0,0 +1,36 @@ + + + + + + + /datum/status_effect/salve_regen - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

salve_regen + + + +

+ + +

Vars

buff_ownerThe owner of this buff.
+

Var Details

buff_owner + + + + +

+

The owner of this buff.

+ + + diff --git a/datum/status_effect/shatter.html b/datum/status_effect/shatter.html new file mode 100644 index 0000000000000..02be0a730339c --- /dev/null +++ b/datum/status_effect/shatter.html @@ -0,0 +1,43 @@ + + + + + + + /datum/status_effect/shatter - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

shatter + + + +

+ + + +

Vars

armor_modifierA holder for the exact armor modified by this status effect
particle_holderUsed for particles. Holds the particles instead of the mob. See particle_holder for documentation.
+

Var Details

armor_modifier + + + + +

+

A holder for the exact armor modified by this status effect

particle_holder + + + + +

+

Used for particles. Holds the particles instead of the mob. See particle_holder for documentation.

+ + + diff --git a/datum/status_effect/speech.html b/datum/status_effect/speech.html new file mode 100644 index 0000000000000..9fb0d2aa0f34e --- /dev/null +++ b/datum/status_effect/speech.html @@ -0,0 +1,55 @@ + + + + + + + /datum/status_effect/speech - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

speech + + + +

+ + + + +

Procs

apply_speechApplies the speech effects on the past character, changing +the original_char into the modified_char.
handle_messageSignal proc for COMSIG_LIVING_TREAT_MESSAGE
on_healSignal proc for COMSIG_LIVING_POST_FULLY_HEAL, removes all stutters and slurring on full heal

Proc Details

apply_speech +

+

Applies the speech effects on the past character, changing +the original_char into the modified_char.

+

Return the modified_char to be reapplied to the message.

handle_message +

+

Signal proc for COMSIG_LIVING_TREAT_MESSAGE

+

Iterates over all of the characters in the past message +and calls apply_speech() on each.

+

message_args[1] is the original message passed into the signal.

on_heal +

+

Signal proc for COMSIG_LIVING_POST_FULLY_HEAL, removes all stutters and slurring on full heal

+ + + diff --git a/datum/status_effect/speech/slurring.html b/datum/status_effect/speech/slurring.html new file mode 100644 index 0000000000000..f70f51f50d2da --- /dev/null +++ b/datum/status_effect/speech/slurring.html @@ -0,0 +1,92 @@ + + + + + + + /datum/status_effect/speech/slurring - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

slurring + + + +

+ + + + + + + + + + +

Vars

common_probThe chance that any given character in a message will be replaced with a common character
common_replacementsCommon replacements for characters - populated in on_creation
doubletext_probThe chance that any given character will be doubled, or even tripled
replacement_probThe chance that any given character will be entirely replaced with a new string / will have a string appended onto it
string_additionsStrings that are appended to a character - populated in on_creation
string_replacementsStrings that fully replace a character - populated in on_creation
text_modification_fileThe file we pull text modifications from
uncommon_probThe chance that any given character in a message will be replaced with an uncommon character
uncommon_replacementsUncommon replacements for characters - populated in on_creation
+

Var Details

common_prob + + + + +

+

The chance that any given character in a message will be replaced with a common character

common_replacements + + + + +

+

Common replacements for characters - populated in on_creation

doubletext_prob + + + + +

+

The chance that any given character will be doubled, or even tripled

replacement_prob + + + + +

+

The chance that any given character will be entirely replaced with a new string / will have a string appended onto it

string_additions + + + + +

+

Strings that are appended to a character - populated in on_creation

string_replacements + + + + +

+

Strings that fully replace a character - populated in on_creation

text_modification_file + + + + +

+

The file we pull text modifications from

uncommon_prob + + + + +

+

The chance that any given character in a message will be replaced with an uncommon character

uncommon_replacements + + + + +

+

Uncommon replacements for characters - populated in on_creation

+ + + diff --git a/datum/status_effect/speech/stutter.html b/datum/status_effect/speech/stutter.html new file mode 100644 index 0000000000000..684717308e20d --- /dev/null +++ b/datum/status_effect/speech/stutter.html @@ -0,0 +1,43 @@ + + + + + + + /datum/status_effect/speech/stutter - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

stutter + + + +

+ + + +

Vars

no_stutterRegex of characters we won't apply a stutter to
stutter_probThe probability of adding a stutter to any character
+

Var Details

no_stutter + + + + +

+

Regex of characters we won't apply a stutter to

stutter_prob + + + + +

+

The probability of adding a stutter to any character

+ + + diff --git a/datum/status_effect/speech/stutter/derpspeech.html b/datum/status_effect/speech/stutter/derpspeech.html new file mode 100644 index 0000000000000..3bdbc8f922496 --- /dev/null +++ b/datum/status_effect/speech/stutter/derpspeech.html @@ -0,0 +1,43 @@ + + + + + + + /datum/status_effect/speech/stutter/derpspeech - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

derpspeech + + + +

+ + + +

Vars

capitalize_probThe probability of making our message entirely uppercase + adding exclamations
message_stutter_probThe probability of adding a stutter to the entire message, if we're not already stuttering
+

Var Details

capitalize_prob + + + + +

+

The probability of making our message entirely uppercase + adding exclamations

message_stutter_prob + + + + +

+

The probability of adding a stutter to the entire message, if we're not already stuttering

+ + + diff --git a/datum/status_effect/stacking.html b/datum/status_effect/stacking.html new file mode 100644 index 0000000000000..760cb71999aa6 --- /dev/null +++ b/datum/status_effect/stacking.html @@ -0,0 +1,134 @@ + + + + + + + /datum/status_effect/stacking - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

stacking + + + +

+ + + + + + + + + + + + + + + + +

Vars

consumed_on_fadeoutIf status should be removed due to being under one stack
consumed_on_thresholdIf status should be removed once threshold is crossed
delay_before_decayDeciseconds until ticks start occuring, which removes stacks (first stack will be removed at this time plus tick_interval)
max_stacksStacks cannot exceed this amount
overlay_stateStates in .dmi must be given a name followed by a number which corresponds to a number of stacks. put the state name without the number in these state vars
stack_decayHow many stacks are lost per tick (decay trigger)
stack_thresholdSpecial effects trigger when stacks reach this amount
stacksHow many stacks are accumulated, also is # of stacks that target will have when first applied
threshold_crossedSet to true once the threshold is crossed, false once it falls back below
tick_intervalDeciseconds between decays once decay starts
underlay_stateThe number is concatonated onto the string based on the number of stacks to get the correct state name

Procs

fadeout_effectRuns if status is deleted due to being under one stack
stack_decay_effectRuns every time tick() causes stacks to decay
stacks_consumed_effectRuns if status is deleted due to threshold being crossed
threshold_cross_effectWhat happens when threshold is crossed
+

Var Details

consumed_on_fadeout + + + + +

+

If status should be removed due to being under one stack

consumed_on_threshold + + + + +

+

If status should be removed once threshold is crossed

delay_before_decay + + + + +

+

Deciseconds until ticks start occuring, which removes stacks (first stack will be removed at this time plus tick_interval)

max_stacks + + + + +

+

Stacks cannot exceed this amount

overlay_state + + + + +

+

States in .dmi must be given a name followed by a number which corresponds to a number of stacks. put the state name without the number in these state vars

stack_decay + + + + +

+

How many stacks are lost per tick (decay trigger)

stack_threshold + + + + +

+

Special effects trigger when stacks reach this amount

stacks + + + + +

+

How many stacks are accumulated, also is # of stacks that target will have when first applied

threshold_crossed + + + + +

+

Set to true once the threshold is crossed, false once it falls back below

tick_interval + + + + +

+

Deciseconds between decays once decay starts

underlay_state + + + + +

+

The number is concatonated onto the string based on the number of stacks to get the correct state name

Proc Details

fadeout_effect +

+

Runs if status is deleted due to being under one stack

stack_decay_effect +

+

Runs every time tick() causes stacks to decay

stacks_consumed_effect +

+

Runs if status is deleted due to threshold being crossed

threshold_cross_effect +

+

What happens when threshold is crossed

+ + + diff --git a/datum/status_effect/stacking/essence_link.html b/datum/status_effect/stacking/essence_link.html new file mode 100644 index 0000000000000..2588ea03d8065 --- /dev/null +++ b/datum/status_effect/stacking/essence_link.html @@ -0,0 +1,127 @@ + + + + + + + /datum/status_effect/stacking/essence_link - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

essence_link + + + +

+ + + + + + + + + + + + + + + +

Vars

attunement_increaseCooldown for passive attunement increase.
current_beamThe beam used to represent the link between linked xenos.
essence_link_actionReferences the Essence Link action and its vars.
link_ownerThe owner of the link.
link_targetWhom the owner is linked to.
plasma_warningCooldown for the plasma warning.
plasma_warning_cooldownDelay between plasma warnings. Plasma warnings are issued if there's not enough plasma for the passive regeneration.
was_within_rangeIf the target xeno was within range.

Procs

end_linkEnds the link prematurely.
share_healShares heals with the linked xeno.
share_jellyShares the Resin Jelly buff with the linked xeno.
toggle_beamToggles the effect beam on or off.
toggle_linkToggles the link signals on or off.
update_beamUpdates the link's appearance.
+

Var Details

attunement_increase + + + + +

+

Cooldown for passive attunement increase.

current_beam + + + + +

+

The beam used to represent the link between linked xenos.

+

References the Essence Link action and its vars.

+

The owner of the link.

+

Whom the owner is linked to.

plasma_warning + + + + +

+

Cooldown for the plasma warning.

plasma_warning_cooldown + + + + +

+

Delay between plasma warnings. Plasma warnings are issued if there's not enough plasma for the passive regeneration.

was_within_range + + + + +

+

If the target xeno was within range.

Proc Details

+

Ends the link prematurely.

share_heal +

+

Shares heals with the linked xeno.

share_jelly +

+

Shares the Resin Jelly buff with the linked xeno.

toggle_beam +

+

Toggles the effect beam on or off.

+

Toggles the link signals on or off.

update_beam +

+

Updates the link's appearance.

+ + + diff --git a/datum/status_effect/stacking/intoxicated.html b/datum/status_effect/stacking/intoxicated.html new file mode 100644 index 0000000000000..12f2c776e5a0b --- /dev/null +++ b/datum/status_effect/stacking/intoxicated.html @@ -0,0 +1,57 @@ + + + + + + + /datum/status_effect/stacking/intoxicated - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

intoxicated + + + +

+ + + + + +

Vars

debuff_ownerOwner of the debuff is limited to carbons.
particle_holderUsed for particles. Holds the particles instead of the mob. See particle_holder for documentation.

Procs

call_resist_debuffCalled when the debuff's owner uses the Resist action for this debuff.
resist_debuffResisting the debuff will allow the debuff's owner to remove some stacks from themselves.
+

Var Details

debuff_owner + + + + +

+

Owner of the debuff is limited to carbons.

particle_holder + + + + +

+

Used for particles. Holds the particles instead of the mob. See particle_holder for documentation.

Proc Details

call_resist_debuff +

+

Called when the debuff's owner uses the Resist action for this debuff.

resist_debuff +

+

Resisting the debuff will allow the debuff's owner to remove some stacks from themselves.

+ + + diff --git a/datum/status_effect/stacking/melting.html b/datum/status_effect/stacking/melting.html new file mode 100644 index 0000000000000..456cd9944fb7d --- /dev/null +++ b/datum/status_effect/stacking/melting.html @@ -0,0 +1,43 @@ + + + + + + + /datum/status_effect/stacking/melting - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

melting + + + +

+ + + +

Vars

debuff_ownerOwner of the debuff is limited to carbons.
particle_holderUsed for particles. Holds the particles instead of the mob. See particle_holder for documentation.
+

Var Details

debuff_owner + + + + +

+

Owner of the debuff is limited to carbons.

particle_holder + + + + +

+

Used for particles. Holds the particles instead of the mob. See particle_holder for documentation.

+ + + diff --git a/datum/status_effect/stacking/melting_fire.html b/datum/status_effect/stacking/melting_fire.html new file mode 100644 index 0000000000000..11f2cdc39b335 --- /dev/null +++ b/datum/status_effect/stacking/melting_fire.html @@ -0,0 +1,71 @@ + + + + + + + /datum/status_effect/stacking/melting_fire - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

melting_fire + + + +

+ + + + + + + +

Vars

debuff_creatorXenomorph which created the debuff.
debuff_ownerOwner of the debuff is limited to carbons.
visual_fireUsed for the fire effect.

Procs

call_resist_debuffCalled when the debuff's owner uses the Resist action for this debuff.
on_removeon remove has owner set to null
resist_debuffResisting the debuff will allow the debuff's owner to remove some stacks from themselves.
+

Var Details

debuff_creator + + + + +

+

Xenomorph which created the debuff.

debuff_owner + + + + +

+

Owner of the debuff is limited to carbons.

visual_fire + + + + +

+

Used for the fire effect.

Proc Details

call_resist_debuff +

+

Called when the debuff's owner uses the Resist action for this debuff.

on_remove +

+

on remove has owner set to null

resist_debuff +

+

Resisting the debuff will allow the debuff's owner to remove some stacks from themselves.

+ + + diff --git a/datum/status_effect/stacking/microwave.html b/datum/status_effect/stacking/microwave.html new file mode 100644 index 0000000000000..6ac6dab378aff --- /dev/null +++ b/datum/status_effect/stacking/microwave.html @@ -0,0 +1,43 @@ + + + + + + + /datum/status_effect/stacking/microwave - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

microwave + + + +

+ + + +

Vars

debuff_ownerOwner of the debuff is limited to carbons.
particle_holderUsed for particles. Holds the particles instead of the mob. See particle_holder for documentation.
+

Var Details

debuff_owner + + + + +

+

Owner of the debuff is limited to carbons.

particle_holder + + + + +

+

Used for particles. Holds the particles instead of the mob. See particle_holder for documentation.

+ + + diff --git a/datum/status_effect/xeno_carnage.html b/datum/status_effect/xeno_carnage.html new file mode 100644 index 0000000000000..a8e12451db742 --- /dev/null +++ b/datum/status_effect/xeno_carnage.html @@ -0,0 +1,64 @@ + + + + + + + /datum/status_effect/xeno_carnage - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

xeno_carnage + + + +

+ + + + + + +

Vars

healing_on_hitHealth or overhealing received on attack
plasma_gain_on_hitPlasma gain on attack
plasma_modEffects modifier based on plasma amount on status application

Procs

carnage_slashCalls slash proc
do_carnage_slashPerforms on-attack logic
+

Var Details

healing_on_hit + + + + +

+

Health or overhealing received on attack

plasma_gain_on_hit + + + + +

+

Plasma gain on attack

plasma_mod + + + + +

+

Effects modifier based on plasma amount on status application

Proc Details

carnage_slash +

+

Calls slash proc

do_carnage_slash +

+

Performs on-attack logic

+ + + diff --git a/datum/status_effect/xeno_feast.html b/datum/status_effect/xeno_feast.html new file mode 100644 index 0000000000000..bc475b7a5ca3d --- /dev/null +++ b/datum/status_effect/xeno_feast.html @@ -0,0 +1,36 @@ + + + + + + + /datum/status_effect/xeno_feast - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

xeno_feast + + + +

+ + +

Vars

plasma_drainAmount of plasma drained per tick, removes effect if available plasma is less
+

Var Details

plasma_drain + + + + +

+

Amount of plasma drained per tick, removes effect if available plasma is less

+ + + diff --git a/datum/status_effect/xeno_psychic_link.html b/datum/status_effect/xeno_psychic_link.html new file mode 100644 index 0000000000000..8377fe2d74f2b --- /dev/null +++ b/datum/status_effect/xeno_psychic_link.html @@ -0,0 +1,106 @@ + + + + + + + /datum/status_effect/xeno_psychic_link - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

xeno_psychic_link + + + +

+ + + + + + + + + + + + +

Vars

link_rangeHow far apart the linked mobs can be
minimum_healthMinimum health threshold before the effect is deactivated
psylink_beamThe beam used to represent the link between linked xenos.
redirect_modPercentage of damage to be redirected
target_mobXenomorph the owner is linked to
was_within_rangeIf the target xeno was within range

Procs

handle_brute_damageTransfers mitigated brute damage
handle_burn_damageTransfers mitigated burn damage
handle_distHandles the link breaking due to distance
handle_mob_deadHandles the link breaking due to dying
link_toggleHandles the link toggling on and off
+

Var Details

+

How far apart the linked mobs can be

minimum_health + + + + +

+

Minimum health threshold before the effect is deactivated

+

The beam used to represent the link between linked xenos.

redirect_mod + + + + +

+

Percentage of damage to be redirected

target_mob + + + + +

+

Xenomorph the owner is linked to

was_within_range + + + + +

+

If the target xeno was within range

Proc Details

handle_brute_damage +

+

Transfers mitigated brute damage

handle_burn_damage +

+

Transfers mitigated burn damage

handle_dist +

+

Handles the link breaking due to distance

handle_mob_dead +

+

Handles the link breaking due to dying

+

Handles the link toggling on and off

+ + + diff --git a/datum/storage.html b/datum/storage.html new file mode 100644 index 0000000000000..9b799ff329999 --- /dev/null +++ b/datum/storage.html @@ -0,0 +1,690 @@ + + + + + + + /datum/storage - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

storage + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

access_delayHow long does it take to put items into or out of this, in ticks
allow_drawing_methodwhether this object can change its drawing method
allow_quick_emptySet this variable to allow the object to have the 'empty' verb, which dumps all the contents on the floor.
allow_quick_gatherSet this variable to allow the object to have the 'toggle mode' verb, which quickly collects all items from a tile.
boxesstorage UI
can_holdTypecache of items that can be inserted into this storage. +By default, all item types can be inserted (assuming other conditions are met). +Do not set directly, use set_holdable
cant_holdTypecache of items that cannot be inserted into this storage. +By default, no item types are barred from insertion. +Do not set directly, use set_holdable
click_border_endIn slotless storage, stores areas where clicking will refer to the associated item
click_border_startIn slotless storage, stores areas where clicking will refer to the associated item
closerstorage UI
collection_modeFALSE = pick one at a time, TRUE = pick all on tile
content_watcherslist of mobs currently seeing the storage's contents
display_contents_with_numberSet this to make the storage item group contents of the same type and display them as a number.
draw_modeFALSE = will open the inventory if you click on the storage container, TRUE = will draw from the inventory if you click on the storage container
draw_soundthe sound produced when the special item is drawn
foldableBubbleWrap - if set, can be folded (when empty) into a sheet of cardboard
holsterable_allowedthe snowflake item(s) that will update the sprite.
holstered_itemrecords the specific special item currently in the holster
holstered_item_underlayImage that get's underlayed under the sprite of the holster
max_storage_spaceThe sum of the storage costs of all the items in this storage item.
max_w_classMax size of objects that this object can store (in effect only if canhold isn't set)
openedHas it been opened before?
parentA reference to the atom linked to this storage object +If the parent goes, we go. Will never be null.
real_locationA reference to the atom where the items are actually stored. +By default this is parent. Should generally never be null. +Sometimes it's not the parent, that's what is called "dissassociated storage".
refill_soundWhat sound gets played when the item is tactical refilled
refill_typesWhat item do you use to tactical refill this
sheathe_soundthe sound produced when the special item is sheathed
show_storage_fullnesswhether our storage box on hud changes color when full.
sprite_slotsDefines how many versions of the sprites that gets progressively emptier as they get closer to "_0" in .dmi.
storage_continuestorage UI
storage_endstorage UI
storage_flagsflags for special behaviours
storage_slotsThe number of storage slots in this container.
storage_startstorage UI
storage_type_limitsTypecache of items that can always be inserted into this storage, regardless of size.
storage_type_limits_maxAssociated list of types and their max count, formatted as +storage_type_limits_max = list( +/obj/A = 3, +)
stored_continuestorage UI
stored_endstorage UI
stored_startstorage UI
trash_itemthe item left behind when our parent is destroyed
use_soundsound played when used. null for no sound.
use_to_pickupSet this to make it possible to use this item in an inverse way, so you can have the item in your hand and click items on the floor to pick them up.

Procs

attempt_draw_objectAttempts to get the first possible object from this container
can_be_insertedThis proc return 1 if the item can be picked up and 0 if it can't. Set the warning to stop it from printing messages
can_see_contentReturns a list of lookers, basically any mob that can see our contents
closeCloses our storage
delete_contentsDelete everything that's inside the storage
do_refillRefills the storage from the refill_types item
handle_access_delayThis proc handles the delay associated with a storage object. +If there is no delay, or the delay is negative, it simply returns TRUE. +Should return true if the access delay is completed successfully.
handle_atom_delsignal sent from /atom/proc/handle_atom_del(atom/A)
handle_item_insertionThis proc handles items being inserted. It does not perform any checks of whether an item can or can't be inserted. +That's done by can_be_inserted() +The stop_warning parameter will stop the insertion message from being displayed. It is intended for cases where you are inserting multiple items at once, +such as when picking up all the items on a tile with one click. +user can be null, it refers to the potential mob doing the insertion.
hide_fromHides our inventory from user, sets s_active to null and removes user from content_watchers
insertion_messageOutput a message when an item is inserted into a storage object
max_stack_mergingsignal sent from /atom/proc/max_stack_merging()
on_alt_clickCalled when you alt + left click on parent +Attempts to draw an object from our storage
on_alt_right_clickCalled when you alt + right click on parent +Opens the inventory of our storage
on_attack_handCalled when you click on parent with an empty hand
on_attack_hand_alternateCalled when you RIGHT click on parent with an empty hand +Attempts to draw an object from our storage
on_attack_selfBubbleWrap - Called when the parent clicks on itself. Used mostly to fold empty boxes
on_attackbyThis proc is called when you want to place an attacking_item into the storage
on_contents_explodehandles explosions on parent exploding the things in storage
on_ctrl_clickCalled when you ctrl + left click on parent +Attempts to draw an object from out storage, but it draw from the left side instead of the right
on_empCalled whenever parent is hit by an EMP, effectively EMPs everything inside your storage
on_mousedrop_ontoSignal handler for when you click drag parent to something (usually ourselves or an inventory slot)
on_quick_equip_requestEquips an item from our storage, returns signal COMSIG_QUICK_EQUIP_HANDLED to prevent standard quick equip behaviour
openOpens our storage, closes the storage if we are s_active
orient2hudThis proc determines the size of the inventory to be displayed. Please touch it only if you know what you're doing.
orient_objsThis proc draws out the inventory and places the items on it. +tx and ty are the upper left tile and +mx, my are the bottm right. +The numbers are calculated from the bottom-left The bottom-left slot being 1,1.
put_item_in_l_handRemoves item_to_put_in_hand from the storage it's currently in, and then places it into our left hand
put_item_in_r_handRemoves item_to_put_in_hand from the storage it's currently in, and then places it into our right hand
put_storage_in_handWrapper that puts the storage into our chosen hand
quick_emptyDumps out the contents of our inventory onto our turf
recalculate_storage_spaceCalled from signal in order to update the color of our storage, it's "fullness" basically
register_storage_signalsRegisters signals to parent
remove_from_storageCall this proc to handle the removal of an item from the storage item. The item will be moved to the atom sent as new_target
return_invGets the inventory of a storage +if recursive = TRUE, this will also get the inventories of things within the inventory
set_parentSet the passed atom as the parent
should_access_delayThis proc checks to see if we should actually delay access in this scenario +This proc should return TRUE or FALSE
show_toShows our inventory to user, we become s_active and user is added to our content_watchers
slot_orient_objsThis proc draws out the inventory and places the items on it. It uses the standard position.
space_orient_objsGenerates a UI for slotless storage based on the objects inside of it
storage_depthReturns the storage depth of an atom. This is the number of storage items the atom is contained in before reaching toplevel (the area). Returns -1 if the atom was not found on container.
storage_depth_turfLike storage depth, but returns the depth to the nearest turf. Returns -1 if no top level turf (a loc was null somewhere, or a non-turf atom's loc was an area somehow).
unregister_storage_signalsUnregisters our signals from parent. Used when parent loses storage but is not destroyed
update_verbsUpdates our verbs if we are equipped
+

Var Details

access_delay + + + + +

+

How long does it take to put items into or out of this, in ticks

allow_drawing_method + + + + +

+

whether this object can change its drawing method

allow_quick_empty + + + + +

+

Set this variable to allow the object to have the 'empty' verb, which dumps all the contents on the floor.

allow_quick_gather + + + + +

+

Set this variable to allow the object to have the 'toggle mode' verb, which quickly collects all items from a tile.

boxes + + + + +

+

storage UI

can_hold + + + + +

+

Typecache of items that can be inserted into this storage. +By default, all item types can be inserted (assuming other conditions are met). +Do not set directly, use set_holdable

cant_hold + + + + +

+

Typecache of items that cannot be inserted into this storage. +By default, no item types are barred from insertion. +Do not set directly, use set_holdable

click_border_end + + + + +

+

In slotless storage, stores areas where clicking will refer to the associated item

click_border_start + + + + +

+

In slotless storage, stores areas where clicking will refer to the associated item

closer + + + + +

+

storage UI

collection_mode + + + + +

+

FALSE = pick one at a time, TRUE = pick all on tile

content_watchers + + + + +

+

list of mobs currently seeing the storage's contents

display_contents_with_number + + + + +

+

Set this to make the storage item group contents of the same type and display them as a number.

draw_mode + + + + +

+

FALSE = will open the inventory if you click on the storage container, TRUE = will draw from the inventory if you click on the storage container

draw_sound + + + + +

+

the sound produced when the special item is drawn

foldable + + + + +

+

BubbleWrap - if set, can be folded (when empty) into a sheet of cardboard

holsterable_allowed + + + + +

+

the snowflake item(s) that will update the sprite.

holstered_item + + + + +

+

records the specific special item currently in the holster

holstered_item_underlay + + + + +

+

Image that get's underlayed under the sprite of the holster

max_storage_space + + + + +

+

The sum of the storage costs of all the items in this storage item.

max_w_class + + + + +

+

Max size of objects that this object can store (in effect only if canhold isn't set)

opened + + + + +

+

Has it been opened before?

parent + + + + +

+

A reference to the atom linked to this storage object +If the parent goes, we go. Will never be null.

real_location + + + + +

+

A reference to the atom where the items are actually stored. +By default this is parent. Should generally never be null. +Sometimes it's not the parent, that's what is called "dissassociated storage".

+

Do NOT set this directly, use set_real_location.

refill_sound + + + + +

+

What sound gets played when the item is tactical refilled

refill_types + + + + +

+

What item do you use to tactical refill this

sheathe_sound + + + + +

+

the sound produced when the special item is sheathed

show_storage_fullness + + + + +

+

whether our storage box on hud changes color when full.

sprite_slots + + + + +

+

Defines how many versions of the sprites that gets progressively emptier as they get closer to "_0" in .dmi.

storage_continue + + + + +

+

storage UI

storage_end + + + + +

+

storage UI

storage_flags + + + + +

+

flags for special behaviours

storage_slots + + + + +

+

The number of storage slots in this container.

storage_start + + + + +

+

storage UI

storage_type_limits + + + + +

+

Typecache of items that can always be inserted into this storage, regardless of size.

storage_type_limits_max + + + + +

+

Associated list of types and their max count, formatted as +storage_type_limits_max = list( +/obj/A = 3, +)

+

Any inserted objects will decrement the allowed count of every listed type which matches or is a parent of that object. +With entries for both /obj/A and /obj/A/B, inserting a B requires non-zero allowed count remaining for, and reduces, both.

stored_continue + + + + +

+

storage UI

stored_end + + + + +

+

storage UI

stored_start + + + + +

+

storage UI

trash_item + + + + +

+

the item left behind when our parent is destroyed

use_sound + + + + +

+

sound played when used. null for no sound.

use_to_pickup + + + + +

+

Set this to make it possible to use this item in an inverse way, so you can have the item in your hand and click items on the floor to pick them up.

Proc Details

attempt_draw_object +

+

Attempts to get the first possible object from this container

+

Arguments:

+

can_be_inserted +

+

This proc return 1 if the item can be picked up and 0 if it can't. Set the warning to stop it from printing messages

can_see_content +

+

Returns a list of lookers, basically any mob that can see our contents

close +

+

Closes our storage

delete_contents +

+

Delete everything that's inside the storage

do_refill +

+

Refills the storage from the refill_types item

handle_access_delay +

+

This proc handles the delay associated with a storage object. +If there is no delay, or the delay is negative, it simply returns TRUE. +Should return true if the access delay is completed successfully.

handle_atom_del +

+

signal sent from /atom/proc/handle_atom_del(atom/A)

handle_item_insertion +

+

This proc handles items being inserted. It does not perform any checks of whether an item can or can't be inserted. +That's done by can_be_inserted() +The stop_warning parameter will stop the insertion message from being displayed. It is intended for cases where you are inserting multiple items at once, +such as when picking up all the items on a tile with one click. +user can be null, it refers to the potential mob doing the insertion.

hide_from +

+

Hides our inventory from user, sets s_active to null and removes user from content_watchers

insertion_message +

+

Output a message when an item is inserted into a storage object

max_stack_merging +

+

signal sent from /atom/proc/max_stack_merging()

on_alt_click +

+

Called when you alt + left click on parent +Attempts to draw an object from our storage

on_alt_right_click +

+

Called when you alt + right click on parent +Opens the inventory of our storage

on_attack_hand +

+

Called when you click on parent with an empty hand

on_attack_hand_alternate +

+

Called when you RIGHT click on parent with an empty hand +Attempts to draw an object from our storage

on_attack_self +

+

BubbleWrap - Called when the parent clicks on itself. Used mostly to fold empty boxes

on_attackby +

+

This proc is called when you want to place an attacking_item into the storage

on_contents_explode +

+

handles explosions on parent exploding the things in storage

on_ctrl_click +

+

Called when you ctrl + left click on parent +Attempts to draw an object from out storage, but it draw from the left side instead of the right

on_emp +

+

Called whenever parent is hit by an EMP, effectively EMPs everything inside your storage

on_mousedrop_onto +

+

Signal handler for when you click drag parent to something (usually ourselves or an inventory slot)

on_quick_equip_request +

+

Equips an item from our storage, returns signal COMSIG_QUICK_EQUIP_HANDLED to prevent standard quick equip behaviour

open +

+

Opens our storage, closes the storage if we are s_active

orient2hud +

+

This proc determines the size of the inventory to be displayed. Please touch it only if you know what you're doing.

orient_objs +

+

This proc draws out the inventory and places the items on it. +tx and ty are the upper left tile and +mx, my are the bottm right. +The numbers are calculated from the bottom-left The bottom-left slot being 1,1.

put_item_in_l_hand +

+

Removes item_to_put_in_hand from the storage it's currently in, and then places it into our left hand

put_item_in_r_hand +

+

Removes item_to_put_in_hand from the storage it's currently in, and then places it into our right hand

put_storage_in_hand +

+

Wrapper that puts the storage into our chosen hand

quick_empty +

+

Dumps out the contents of our inventory onto our turf

recalculate_storage_space +

+

Called from signal in order to update the color of our storage, it's "fullness" basically

register_storage_signals +

+

Registers signals to parent

remove_from_storage +

+

Call this proc to handle the removal of an item from the storage item. The item will be moved to the atom sent as new_target

+

Arguments:

+

return_inv +

+

Gets the inventory of a storage +if recursive = TRUE, this will also get the inventories of things within the inventory

set_parent +

+

Set the passed atom as the parent

should_access_delay +

+

This proc checks to see if we should actually delay access in this scenario +This proc should return TRUE or FALSE

show_to +

+

Shows our inventory to user, we become s_active and user is added to our content_watchers

slot_orient_objs +

+

This proc draws out the inventory and places the items on it. It uses the standard position.

space_orient_objs +

+

Generates a UI for slotless storage based on the objects inside of it

storage_depth +

+

Returns the storage depth of an atom. This is the number of storage items the atom is contained in before reaching toplevel (the area). Returns -1 if the atom was not found on container.

storage_depth_turf +

+

Like storage depth, but returns the depth to the nearest turf. Returns -1 if no top level turf (a loc was null somewhere, or a non-turf atom's loc was an area somehow).

unregister_storage_signals +

+

Unregisters our signals from parent. Used when parent loses storage but is not destroyed

update_verbs +

+

Updates our verbs if we are equipped

+ + + diff --git a/datum/storage/bag/sheetsnatcher.html b/datum/storage/bag/sheetsnatcher.html new file mode 100644 index 0000000000000..e5cd80d9a7eec --- /dev/null +++ b/datum/storage/bag/sheetsnatcher.html @@ -0,0 +1,37 @@ + + + + + + + /datum/storage/bag/sheetsnatcher - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

sheetsnatcher + + + +

+ + +

Procs

orient2hudSets up numbered display to show the stack size of each stored mineral +NOTE: numbered display is turned off currently because it's broken

Proc Details

orient2hud +

+

Sets up numbered display to show the stack size of each stored mineral +NOTE: numbered display is turned off currently because it's broken

+ + + diff --git a/datum/storage/internal.html b/datum/storage/internal.html new file mode 100644 index 0000000000000..d8a527d6327a5 --- /dev/null +++ b/datum/storage/internal.html @@ -0,0 +1,35 @@ + + + + + + + /datum/storage/internal - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

internal + + + +

+ + +

Procs

register_storage_signalsUnable to set draw_mode ourselves

Proc Details

register_storage_signals +

+

Unable to set draw_mode ourselves

+ + + diff --git a/datum/storage/tank.html b/datum/storage/tank.html new file mode 100644 index 0000000000000..1b79f32c4fd62 --- /dev/null +++ b/datum/storage/tank.html @@ -0,0 +1,36 @@ + + + + + + + /datum/storage/tank - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

tank + + + +

+ + +

Vars

max_w_classUnable to set draw_mode ourselves
+

Var Details

max_w_class + + + + +

+

Unable to set draw_mode ourselves

+ + + diff --git a/datum/strip_menu.html b/datum/strip_menu.html new file mode 100644 index 0000000000000..85a318276d621 --- /dev/null +++ b/datum/strip_menu.html @@ -0,0 +1,50 @@ + + + + + + + /datum/strip_menu - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

strip_menu + + + +

+ +

A representation of the stripping UI

+ + +

Vars

interactionsA lazy list of user mobs to a list of strip menu keys that they're interacting with
ownerThe owner who has the element /datum/element/strippable
strippableThe strippable element itself
+

Var Details

interactions + + + + +

+

A lazy list of user mobs to a list of strip menu keys that they're interacting with

owner + + + + +

+

The owner who has the element /datum/element/strippable

strippable + + + + +

+

The strippable element itself

+ + + diff --git a/datum/strippable_item.html b/datum/strippable_item.html new file mode 100644 index 0000000000000..b6d8c09688b7c --- /dev/null +++ b/datum/strippable_item.html @@ -0,0 +1,172 @@ + + + + + + + /datum/strippable_item - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

strippable_item + + + +

+ +

A representation of an item that can be stripped down

+ + + + + + + + + + + + + + + + +

Vars

keyThe STRIPPABLE_ITEM_* key

Procs

alternate_actionPerforms an alternative action on this strippable_item. +has_alternate_action needs to be TRUE.
finish_equipThe proc that places the item on the source. This should not yield.
finish_unequipThe proc that unequips the item from the source. This should not yield.
finish_unequip_mobA utility function for /datum/strippable_items to finish unequipping an item from a mob.
get_alternate_actionReturns the ID of this item's strippable action. +Return null if there is no alternate action. +Any return value of this must be in StripMenu.
get_itemGets the item from the given source.
get_obscuringReturns a STRIPPABLE_OBSCURING_* define to report on whether or not this is obscured.
get_strippable_alternate_action_strapGetter proc for the alternate action for removing nodrop traits from items with straps
is_unavailableReturns TRUE if the item is present for the mob, but not available. +This is used, for example, for pockets when a jumpsuit is not worn.
should_showReturns whether or not this item should show.
start_equipStart the equipping process. This is the proc you should yield in. +Returns TRUE/FALSE depending on if it is allowed.
start_unequipStart the unequipping process. This is the proc you should yield in. +Returns TRUE/FALSE depending on if it is allowed.
start_unequip_mobA utility function for /datum/strippable_items to start unequipping an item from a mob.
strippable_alternate_action_strapThe proc that actually does the alternate action
try_equipTries to equip the item onto the given source. +Returns TRUE/FALSE depending on if it is allowed. +This should be used for checking if an item CAN be equipped. +It should not perform the equipping itself.
try_unequipTries to unequip the item from the given source. +Returns TRUE/FALSE depending on if it is allowed. +This should be used for checking if it CAN be unequipped. +It should not perform the unequipping itself.
+

Var Details

key + + + + +

+

The STRIPPABLE_ITEM_* key

Proc Details

alternate_action +

+

Performs an alternative action on this strippable_item. +has_alternate_action needs to be TRUE.

finish_equip +

+

The proc that places the item on the source. This should not yield.

finish_unequip +

+

The proc that unequips the item from the source. This should not yield.

finish_unequip_mob +

+

A utility function for /datum/strippable_items to finish unequipping an item from a mob.

get_alternate_action +

+

Returns the ID of this item's strippable action. +Return null if there is no alternate action. +Any return value of this must be in StripMenu.

get_item +

+

Gets the item from the given source.

get_obscuring +

+

Returns a STRIPPABLE_OBSCURING_* define to report on whether or not this is obscured.

get_strippable_alternate_action_strap +

+

Getter proc for the alternate action for removing nodrop traits from items with straps

is_unavailable +

+

Returns TRUE if the item is present for the mob, but not available. +This is used, for example, for pockets when a jumpsuit is not worn.

should_show +

+

Returns whether or not this item should show.

start_equip +

+

Start the equipping process. This is the proc you should yield in. +Returns TRUE/FALSE depending on if it is allowed.

start_unequip +

+

Start the unequipping process. This is the proc you should yield in. +Returns TRUE/FALSE depending on if it is allowed.

start_unequip_mob +

+

A utility function for /datum/strippable_items to start unequipping an item from a mob.

strippable_alternate_action_strap +

+

The proc that actually does the alternate action

try_equip +

+

Tries to equip the item onto the given source. +Returns TRUE/FALSE depending on if it is allowed. +This should be used for checking if an item CAN be equipped. +It should not perform the equipping itself.

try_unequip +

+

Tries to unequip the item from the given source. +Returns TRUE/FALSE depending on if it is allowed. +This should be used for checking if it CAN be unequipped. +It should not perform the unequipping itself.

+ + + diff --git a/datum/strippable_item/hand.html b/datum/strippable_item/hand.html new file mode 100644 index 0000000000000..9988b7fa210c4 --- /dev/null +++ b/datum/strippable_item/hand.html @@ -0,0 +1,36 @@ + + + + + + + /datum/strippable_item/hand - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

hand + + + +

+ +

A strippable item for a hand

+

Vars

hand_indexWhich hand?
+

Var Details

hand_index + + + + +

+

Which hand?

+ + + diff --git a/datum/strippable_item/mob_item_slot.html b/datum/strippable_item/mob_item_slot.html new file mode 100644 index 0000000000000..86db42d8f03c2 --- /dev/null +++ b/datum/strippable_item/mob_item_slot.html @@ -0,0 +1,43 @@ + + + + + + + /datum/strippable_item/mob_item_slot - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

mob_item_slot + + + +

+ +

A preset for equipping items onto mob slots

+ +

Vars

item_slotThe ITEM_SLOT_* to equip to.

Procs

get_equip_delayReturns the delay of equipping this item to a mob
+

Var Details

item_slot + + + + +

+

The ITEM_SLOT_* to equip to.

Proc Details

get_equip_delay +

+

Returns the delay of equipping this item to a mob

+ + + diff --git a/datum/strippable_item/mob_item_slot/pocket.html b/datum/strippable_item/mob_item_slot/pocket.html new file mode 100644 index 0000000000000..853063dadf106 --- /dev/null +++ b/datum/strippable_item/mob_item_slot/pocket.html @@ -0,0 +1,43 @@ + + + + + + + /datum/strippable_item/mob_item_slot/pocket - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

pocket + + + +

+ + + +

Vars

pocket_sideWhich pocket we're referencing. Used for visible text.

Procs

warn_ownerWarns the pocket owner that their pocket is being fumbled with
+

Var Details

pocket_side + + + + +

+

Which pocket we're referencing. Used for visible text.

Proc Details

warn_owner +

+

Warns the pocket owner that their pocket is being fumbled with

+ + + diff --git a/datum/strippable_item_layout.html b/datum/strippable_item_layout.html new file mode 100644 index 0000000000000..2ba17d33561b2 --- /dev/null +++ b/datum/strippable_item_layout.html @@ -0,0 +1,43 @@ + + + + + + + /datum/strippable_item_layout - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

strippable_item_layout + + + +

+ + + +

Vars

indentedIs the slot dependent on the last non-indented slot?
keyThe STRIPPABLE_ITEM_* key
+

Var Details

indented + + + + +

+

Is the slot dependent on the last non-indented slot?

key + + + + +

+

The STRIPPABLE_ITEM_* key

+ + + diff --git a/datum/supply_beacon.html b/datum/supply_beacon.html new file mode 100644 index 0000000000000..d35cfdb37b9ee --- /dev/null +++ b/datum/supply_beacon.html @@ -0,0 +1,57 @@ + + + + + + + /datum/supply_beacon - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

supply_beacon + + + +

+ + + + + +

Vars

drop_locationWhere the supply drops will land
factionThe faction of the beacon
nameName printed on the supply console

Procs

DestroyRemove that beacon from the list of glob supply beacon
+

Var Details

drop_location + + + + +

+

Where the supply drops will land

faction + + + + +

+

The faction of the beacon

name + + + + +

+

Name printed on the supply console

Proc Details

Destroy +

+

Remove that beacon from the list of glob supply beacon

+ + + diff --git a/datum/supply_order.html b/datum/supply_order.html new file mode 100644 index 0000000000000..b53e7ba57edb3 --- /dev/null +++ b/datum/supply_order.html @@ -0,0 +1,36 @@ + + + + + + + /datum/supply_order - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

supply_order + + + +

+ + +

Vars

factionWhat faction ordered this
+

Var Details

faction + + + + +

+

What faction ordered this

+ + + diff --git a/datum/supply_packs.html b/datum/supply_packs.html new file mode 100644 index 0000000000000..276b94dc50c0a --- /dev/null +++ b/datum/supply_packs.html @@ -0,0 +1,43 @@ + + + + + + + /datum/supply_packs - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

supply_packs + + + +

+ + + +

Vars

available_against_xeno_onlyIf this supply pack should be buyable in HvH gamemode
randomised_num_containedRandomly picks X of items out of the contains list instead of using all.
+

Var Details

available_against_xeno_only + + + + +

+

If this supply pack should be buyable in HvH gamemode

randomised_num_contained + + + + +

+

Randomly picks X of items out of the contains list instead of using all.

+ + + diff --git a/datum/supply_ui.html b/datum/supply_ui.html new file mode 100644 index 0000000000000..bdd686da8ea98 --- /dev/null +++ b/datum/supply_ui.html @@ -0,0 +1,64 @@ + + + + + + + /datum/supply_ui - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

supply_ui + + + +

+ + + + + + +

Vars

factionFaction of the supply console linked
home_idId of the home port
shuttle_idId of the shuttle controlled
supply_shuttleReference to the supply shuttle

Procs

clean_uiSignal handler to delete the ui when the source object is deleting
+

Var Details

faction + + + + +

+

Faction of the supply console linked

home_id + + + + +

+

Id of the home port

shuttle_id + + + + +

+

Id of the shuttle controlled

supply_shuttle + + + + +

+

Reference to the supply shuttle

Proc Details

clean_ui +

+

Signal handler to delete the ui when the source object is deleting

+ + + diff --git a/datum/supply_ui/vehicles.html b/datum/supply_ui/vehicles.html new file mode 100644 index 0000000000000..a126888294ae7 --- /dev/null +++ b/datum/supply_ui/vehicles.html @@ -0,0 +1,78 @@ + + + + + + + /datum/supply_ui/vehicles - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

vehicles + + + +

+ + + + + + + + +

Vars

current_driver_modcurrent driver mod typepath
current_gunner_modcurrent gunner mod typepath
current_primarycurrent selected primary weapons typepath
current_secondarycurrent selected secondaryies typepath
current_veh_typecurrent selected vehicles typepath
primary_ammocurrent primary ammo list, type = count
secondary_ammocurrent secondary ammo list, type = count
+

Var Details

current_driver_mod + + + + +

+

current driver mod typepath

current_gunner_mod + + + + +

+

current gunner mod typepath

current_primary + + + + +

+

current selected primary weapons typepath

current_secondary + + + + +

+

current selected secondaryies typepath

current_veh_type + + + + +

+

current selected vehicles typepath

primary_ammo + + + + +

+

current primary ammo list, type = count

secondary_ammo + + + + +

+

current secondary ammo list, type = count

+ + + diff --git a/datum/surgery_step.html b/datum/surgery_step.html new file mode 100644 index 0000000000000..e2db86ee3495e --- /dev/null +++ b/datum/surgery_step.html @@ -0,0 +1,50 @@ + + + + + + + /datum/surgery_step - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

surgery_step + + + +

+ + + + +

Vars

surgery_skill_requiredSurgery skill required for this surgery step to start without the innitial fumble delay

Procs

record_surgical_operationTally up when a player successfully completes a step
tool_qualityReturns how well tool is suited for this step
+

Var Details

surgery_skill_required + + + + +

+

Surgery skill required for this surgery step to start without the innitial fumble delay

Proc Details

record_surgical_operation +

+

Tally up when a player successfully completes a step

tool_quality +

+

Returns how well tool is suited for this step

+ + + diff --git a/datum/surgery_step/generic/repair.html b/datum/surgery_step/generic/repair.html new file mode 100644 index 0000000000000..83180ba72646c --- /dev/null +++ b/datum/surgery_step/generic/repair.html @@ -0,0 +1,36 @@ + + + + + + + /datum/surgery_step/generic/repair - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

repair + + + +

+ +

Sewing people closed. Not fast, but works on corpses.

+

Vars

base_healingHealing applied on step success, split between burn and brute
+

Var Details

base_healing + + + + +

+

Healing applied on step success, split between burn and brute

+ + + diff --git a/datum/tgs_api/v5.html b/datum/tgs_api/v5.html new file mode 100644 index 0000000000000..630d24515bbda --- /dev/null +++ b/datum/tgs_api/v5.html @@ -0,0 +1,43 @@ + + + + + + + /datum/tgs_api/v5 - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

v5 + + + +

+ + + +

Vars

intercepted_message_queueList of chat messages list()s that attempted to be sent during a topic call. To be bundled in the result of the call
offline_message_queueList of chat messages list()s that attempted to be sent during a topic call. To be bundled in the result of the call
+

Var Details

intercepted_message_queue + + + + +

+

List of chat messages list()s that attempted to be sent during a topic call. To be bundled in the result of the call

offline_message_queue + + + + +

+

List of chat messages list()s that attempted to be sent during a topic call. To be bundled in the result of the call

+ + + diff --git a/datum/tgs_chat_channel.html b/datum/tgs_chat_channel.html new file mode 100644 index 0000000000000..4fb9825b3f350 --- /dev/null +++ b/datum/tgs_chat_channel.html @@ -0,0 +1,78 @@ + + + + + + + /datum/tgs_chat_channel - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

tgs_chat_channel + + + +

+ +

Represents a connected chat channel.

+ + + + + + +

Vars

connection_nameName of the chat connection. This is the IRC server address or the Discord guild.
custom_tagTag string associated with the channel in TGS.
embeds_supported[TRUE]/[FALSE] if the channel supports embeds.
friendly_nameUser friendly name of the channel.
idTGS internal channel ID.
is_admin_channel[TRUE]/[FALSE] based on if the server operator has marked this channel for game admins only.
is_private_channel[TRUE]/[FALSE] if the channel is a private message channel for a /datum/tgs_chat_user.
+

Var Details

connection_name + + + + +

+

Name of the chat connection. This is the IRC server address or the Discord guild.

custom_tag + + + + +

+

Tag string associated with the channel in TGS.

embeds_supported + + + + +

+

[TRUE]/[FALSE] if the channel supports embeds.

friendly_name + + + + +

+

User friendly name of the channel.

id + + + + +

+

TGS internal channel ID.

is_admin_channel + + + + +

+

[TRUE]/[FALSE] based on if the server operator has marked this channel for game admins only.

is_private_channel + + + + +

+

[TRUE]/[FALSE] if the channel is a private message channel for a /datum/tgs_chat_user.

+ + + diff --git a/datum/tgs_chat_command.html b/datum/tgs_chat_command.html new file mode 100644 index 0000000000000..f7c637db87a5c --- /dev/null +++ b/datum/tgs_chat_command.html @@ -0,0 +1,70 @@ + + + + + + + /datum/tgs_chat_command - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

tgs_chat_command + + + +

+ +

User definable chat command. This abstract version MUST be overridden to be used.

+ + + + +

Vars

admin_onlyIf this command should be available to game administrators only.
help_textThe help text displayed for this command.
ignore_typeA subtype of /datum/tgs_chat_command that is ignored when enumerating available commands. Use this to create shared base /datums for commands.
nameThe string to trigger this command on a chat bot. e.g @bot name ... or !tgs name ....

Procs

RunProcess command activation. Should return a /datum/tgs_message_content to respond to the issuer with. +MUST be implemented
+

Var Details

admin_only + + + + +

+

If this command should be available to game administrators only.

help_text + + + + +

+

The help text displayed for this command.

ignore_type + + + + +

+

A subtype of /datum/tgs_chat_command that is ignored when enumerating available commands. Use this to create shared base /datums for commands.

name + + + + +

+

The string to trigger this command on a chat bot. e.g @bot name ... or !tgs name ....

Proc Details

Run +

+

Process command activation. Should return a /datum/tgs_message_content to respond to the issuer with. +MUST be implemented

+
+ + + diff --git a/datum/tgs_chat_embed/field.html b/datum/tgs_chat_embed/field.html new file mode 100644 index 0000000000000..431ef12503459 --- /dev/null +++ b/datum/tgs_chat_embed/field.html @@ -0,0 +1,50 @@ + + + + + + + /datum/tgs_chat_embed/field - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

field + + + +

+ +

See https://discord.com/developers/docs/resources/message#embed-object-embed-field-structure for details.

+ + +

Vars

nameMust be set in New().
valueMust be set in New().

Procs

NewCreate a /datum/tgs_chat_embed/field.
+

Var Details

name + + + + +

+

Must be set in New().

value + + + + +

+

Must be set in New().

Proc Details

New +

+

Create a /datum/tgs_chat_embed/field.

+ + + diff --git a/datum/tgs_chat_embed/footer.html b/datum/tgs_chat_embed/footer.html new file mode 100644 index 0000000000000..02ccc111bd4a4 --- /dev/null +++ b/datum/tgs_chat_embed/footer.html @@ -0,0 +1,43 @@ + + + + + + + /datum/tgs_chat_embed/footer - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

footer + + + +

+ +

See https://discord.com/developers/docs/resources/message#embed-object-embed-footer-structure for details.

+ +

Vars

textMust be set in New().

Procs

NewCreate a /datum/tgs_chat_embed/footer.
+

Var Details

text + + + + +

+

Must be set in New().

Proc Details

New +

+

Create a /datum/tgs_chat_embed/footer.

+ + + diff --git a/datum/tgs_chat_embed/media.html b/datum/tgs_chat_embed/media.html new file mode 100644 index 0000000000000..5d2a445af3ec3 --- /dev/null +++ b/datum/tgs_chat_embed/media.html @@ -0,0 +1,43 @@ + + + + + + + /datum/tgs_chat_embed/media - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

media + + + +

+ +

Common datum for similar Discord embed medias.

+ +

Vars

urlMust be set in New().

Procs

NewCreate a /datum/tgs_chat_embed.
+

Var Details

url + + + + +

+

Must be set in New().

Proc Details

New +

+

Create a /datum/tgs_chat_embed.

+ + + diff --git a/datum/tgs_chat_embed/provider/author.html b/datum/tgs_chat_embed/provider/author.html new file mode 100644 index 0000000000000..00aac53589dce --- /dev/null +++ b/datum/tgs_chat_embed/provider/author.html @@ -0,0 +1,35 @@ + + + + + + + /datum/tgs_chat_embed/provider/author - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

author + + + +

+ +

See https://discord.com/developers/docs/resources/message#embed-object-embed-author-structure for details. Must have name set in New().

+

Procs

NewCreate a /datum/tgs_chat_embed/footer.

Proc Details

New +

+

Create a /datum/tgs_chat_embed/footer.

+ + + diff --git a/datum/tgs_chat_embed/structure.html b/datum/tgs_chat_embed/structure.html new file mode 100644 index 0000000000000..ebabd7d8e8fd7 --- /dev/null +++ b/datum/tgs_chat_embed/structure.html @@ -0,0 +1,64 @@ + + + + + + + /datum/tgs_chat_embed/structure - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

structure + + + +

+ +

User definable chat embed. Currently mirrors Discord chat embeds. See https://discord.com/developers/docs/resources/message#embed-object for details.

+ + + + +

Vars

colourColour must be #AARRGGBB or #RRGGBB hex string.
imageSee https://discord.com/developers/docs/resources/message#embed-object-embed-image-structure for details.
thumbnailSee https://discord.com/developers/docs/resources/message#embed-object-embed-thumbnail-structure for details.
timestampTimestamp must be encoded as: time2text(world.timeofday, "YYYY-MM-DD hh:mm:ss"). Use the active timezone.
videoSee https://discord.com/developers/docs/resources/message#embed-object-embed-video-structure for details.
+

Var Details

colour + + + + +

+

Colour must be #AARRGGBB or #RRGGBB hex string.

image + + + + +

+

See https://discord.com/developers/docs/resources/message#embed-object-embed-image-structure for details.

thumbnail + + + + +

+

See https://discord.com/developers/docs/resources/message#embed-object-embed-thumbnail-structure for details.

timestamp + + + + +

+

Timestamp must be encoded as: time2text(world.timeofday, "YYYY-MM-DD hh:mm:ss"). Use the active timezone.

video + + + + +

+

See https://discord.com/developers/docs/resources/message#embed-object-embed-video-structure for details.

+ + + diff --git a/datum/tgs_chat_user.html b/datum/tgs_chat_user.html new file mode 100644 index 0000000000000..0bf5f3c93316d --- /dev/null +++ b/datum/tgs_chat_user.html @@ -0,0 +1,57 @@ + + + + + + + /datum/tgs_chat_user - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

tgs_chat_user + + + +

+ + + + + +

Vars

channelThe /datum/tgs_chat_channel the user was from.
friendly_nameThe user's display name.
idTGS internal user ID.
mentionThe string to use to ping this user in a message.
+

Var Details

channel + + + + +

+

The /datum/tgs_chat_channel the user was from.

friendly_name + + + + +

+

The user's display name.

id + + + + +

+

TGS internal user ID.

mention + + + + +

+

The string to use to ping this user in a message.

+ + + diff --git a/datum/tgs_event_handler.html b/datum/tgs_event_handler.html new file mode 100644 index 0000000000000..6d4286beadab3 --- /dev/null +++ b/datum/tgs_event_handler.html @@ -0,0 +1,44 @@ + + + + + + + /datum/tgs_event_handler - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

tgs_event_handler + + + +

+ +

User definable handler for TGS events This abstract version SHOULD be overridden to be used.

+ +

Vars

receive_health_checksIf the handler receieves TGS_EVENT_HEALTH_CHECK events.

Procs

HandleEventUser definable callback for handling TGS events.
+

Var Details

receive_health_checks + + + + +

+

If the handler receieves TGS_EVENT_HEALTH_CHECK events.

Proc Details

HandleEvent +

+

User definable callback for handling TGS events.

+

event_code - One of the TGS_EVENT_ defines. Extra parameters will be documented in each.

+ + + diff --git a/datum/tgs_http_handler.html b/datum/tgs_http_handler.html new file mode 100644 index 0000000000000..96d55d53530b5 --- /dev/null +++ b/datum/tgs_http_handler.html @@ -0,0 +1,42 @@ + + + + + + + /datum/tgs_http_handler - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

tgs_http_handler + + + +

+ +

User definable handler for HTTP calls. This abstract version MUST be overridden to be used.

+

Procs

PerformGetUser definable callback for executing HTTP GET requests. +MUST perform BYOND sleeps while the request is in flight. +MUST return a /datum/tgs_http_result. +SHOULD log its own errors

Proc Details

PerformGet +

+

User definable callback for executing HTTP GET requests. +MUST perform BYOND sleeps while the request is in flight. +MUST return a /datum/tgs_http_result. +SHOULD log its own errors

+

url - The full URL to execute the GET request for including query parameters.

+ + + diff --git a/datum/tgs_http_result.html b/datum/tgs_http_result.html new file mode 100644 index 0000000000000..7fc5a787ae839 --- /dev/null +++ b/datum/tgs_http_result.html @@ -0,0 +1,54 @@ + + + + + + + /datum/tgs_http_result - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

tgs_http_result + + + +

+ +

Result of a /datum/tgs_http_handler call. MUST NOT be overridden.

+ + +

Vars

response_textHTTP response as text
successBoolean request success flag. Set for any 2XX response code.

Procs

NewCreate a /datum/tgs_http_result.
+

Var Details

response_text + + + + +

+

HTTP response as text

success + + + + +

+

Boolean request success flag. Set for any 2XX response code.

Proc Details

New +

+

Create a /datum/tgs_http_result.

+
+ + + diff --git a/datum/tgs_message_content.html b/datum/tgs_message_content.html new file mode 100644 index 0000000000000..519ff6401d5ff --- /dev/null +++ b/datum/tgs_message_content.html @@ -0,0 +1,53 @@ + + + + + + + /datum/tgs_message_content - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

tgs_message_content + + + +

+ +

User definable chat message. MUST NOT be overridden.

+ + +

Vars

embedThe /datum/tgs_chat_embed to embed in the message. Not supported on all chat providers.
textThe string content of the message. Must be provided in New().

Procs

NewCreate a /datum/tgs_message_content.
+

Var Details

embed + + + + +

+

The /datum/tgs_chat_embed to embed in the message. Not supported on all chat providers.

text + + + + +

+

The string content of the message. Must be provided in New().

Proc Details

New +

+

Create a /datum/tgs_message_content.

+
+ + + diff --git a/datum/tgs_revision_information.html b/datum/tgs_revision_information.html new file mode 100644 index 0000000000000..1b78144e880c2 --- /dev/null +++ b/datum/tgs_revision_information.html @@ -0,0 +1,50 @@ + + + + + + + /datum/tgs_revision_information - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

tgs_revision_information + + + +

+ +

Represents git revision information.

+ + +

Vars

commitFull SHA of the commit.
origin_commitFull sha of last known remote commit. This may be null if the TGS repository is not currently tracking a remote branch.
timestampISO 8601 timestamp of when the commit was created.
+

Var Details

commit + + + + +

+

Full SHA of the commit.

origin_commit + + + + +

+

Full sha of last known remote commit. This may be null if the TGS repository is not currently tracking a remote branch.

timestamp + + + + +

+

ISO 8601 timestamp of when the commit was created.

+ + + diff --git a/datum/tgs_revision_information/test_merge.html b/datum/tgs_revision_information/test_merge.html new file mode 100644 index 0000000000000..7806458ce4c6f --- /dev/null +++ b/datum/tgs_revision_information/test_merge.html @@ -0,0 +1,78 @@ + + + + + + + /datum/tgs_revision_information/test_merge - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

test_merge + + + +

+ +

Represents a merge of a GitHub pull request.

+ + + + + + +

Vars

authorThe Username of the test merge source's author.
bodyThe test merge source's body when it was merged.
commentOptional comment left by the TGS user who initiated the merge.
head_commitThe SHA of the test merge when that was merged.
numberThe test merge number.
titleThe test merge source's title when it was merged.
urlAn http URL to the test merge source.
+

Var Details

author + + + + +

+

The Username of the test merge source's author.

body + + + + +

+

The test merge source's body when it was merged.

comment + + + + +

+

Optional comment left by the TGS user who initiated the merge.

head_commit + + + + +

+

The SHA of the test merge when that was merged.

number + + + + +

+

The test merge number.

title + + + + +

+

The test merge source's title when it was merged.

url + + + + +

+

An http URL to the test merge source.

+ + + diff --git a/datum/tgs_version.html b/datum/tgs_version.html new file mode 100644 index 0000000000000..b861785803d0e --- /dev/null +++ b/datum/tgs_version.html @@ -0,0 +1,71 @@ + + + + + + + /datum/tgs_version - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

tgs_version + + + +

+ +

Represents a version.

+ + + + + +

Vars

deprecated_patchLegacy version number. Generally null.
deprefixed_parameterString value minus prefix.
minorThe minor version number. null for wildcards.
patchThe patch version number. null for wildcards.
raw_parameterUnparsed string value.
suiteThe suite/major version number.
+

Var Details

deprecated_patch + + + + +

+

Legacy version number. Generally null.

deprefixed_parameter + + + + +

+

String value minus prefix.

minor + + + + +

+

The minor version number. null for wildcards.

patch + + + + +

+

The patch version number. null for wildcards.

raw_parameter + + + + +

+

Unparsed string value.

suite + + + + +

+

The suite/major version number.

+ + + diff --git a/datum/tgui.html b/datum/tgui.html new file mode 100644 index 0000000000000..2054dfdec2f6e --- /dev/null +++ b/datum/tgui.html @@ -0,0 +1,272 @@ + + + + + + + /datum/tgui - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

tgui + + + +

+ +

tgui datum (represents a UI).

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

autoupdateUpdate the UI every MC tick.
closingStops further updates when close() was called.
initializedIf the UI has been initialized yet.
interfaceThe interface (template) to be used for this UI.
mouse_hookedAre byond mouse events beyond the window passed in to the ui
opened_atTime of opening the window.
refresh_cooldownRate limit client refreshes to prevent DoS.
refreshingTimed refreshing state
src_objectThe object which owns the UI.
stateTopic state used to determine status/interactability.
statusThe status/visibility of the UI.
titleThe title of the UI.
userThe mob who opened/is using the UI.
windowThe window_id for browse() and onclose().
window_keyKey that is used for remembering the window geometry.
window_sizeDeprecated: Window size.

Procs

Newpublic
closepublic
get_payloadprivate
on_act_messageWrapper for behavior to potentially wait until the next tick if the server is overloaded
on_messageprivate
openpublic
processprivate
process_statusprivate
send_assetpublic
send_full_updatepublic
send_updatepublic
set_autoupdatepublic
set_mouse_hookpublic
set_statepublic
+

Var Details

autoupdate + + + + +

+

Update the UI every MC tick.

closing + + + + +

+

Stops further updates when close() was called.

initialized + + + + +

+

If the UI has been initialized yet.

interface + + + + +

+

The interface (template) to be used for this UI.

mouse_hooked + + + + +

+

Are byond mouse events beyond the window passed in to the ui

opened_at + + + + +

+

Time of opening the window.

refresh_cooldown + + + + +

+

Rate limit client refreshes to prevent DoS.

refreshing + + + + +

+

Timed refreshing state

src_object + + + + +

+

The object which owns the UI.

state + + + + +

+

Topic state used to determine status/interactability.

status + + + + +

+

The status/visibility of the UI.

title + + + + +

+

The title of the UI.

user + + + + +

+

The mob who opened/is using the UI.

window + + + + +

+

The window_id for browse() and onclose().

window_key + + + + +

+

Key that is used for remembering the window geometry.

window_size + + + + +

+

Deprecated: Window size.

Proc Details

New +

+

public

+

Create a new UI.

+

required user mob The mob who opened/is using the UI. +required src_object datum The object or datum which owns the UI. +required interface string The interface used to render the UI. +optional title string The title of the UI. +optional ui_x int Deprecated: Window width. +optional ui_y int Deprecated: Window height.

+

return datum/tgui The requested UI.

close +

+

public

+

Close the UI.

+

optional can_be_suspended bool

get_payload +

+

private

+

Package the data to send to the UI, as JSON.

+

return list

on_act_message +

+

Wrapper for behavior to potentially wait until the next tick if the server is overloaded

on_message +

+

private

+

Callback for handling incoming tgui messages.

open +

+

public

+

Open this UI (and initialize it with data).

+

return bool - TRUE if a new pooled window is opened, FALSE in all other situations including if a new pooled window didn't open because one already exists.

process +

+

private

+

Run an update cycle for this UI. Called internally by SStgui +every second or so.

process_status +

+

private

+

Updates the status, and returns TRUE if status has changed.

send_asset +

+

public

+

Makes an asset available to use in tgui.

+

required asset datum/asset

+

return bool - true if an asset was actually sent

send_full_update +

+

public

+

Send a full update to the client (includes static data).

+

optional custom_data list Custom data to send instead of ui_data. +optional force bool Send an update even if UI is not interactive.

send_update +

+

public

+

Send a partial update to the client (excludes static data).

+

optional custom_data list Custom data to send instead of ui_data. +optional force bool Send an update even if UI is not interactive.

set_autoupdate +

+

public

+

Enable/disable auto-updating of the UI.

+

required value bool Enable/disable auto-updating.

set_mouse_hook +

+

public

+

Enable/disable passing through byond mouse events to the window

+

required value bool Enable/disable hooking.

set_state +

+

public

+

Replace current ui.state with a new one.

+

required state datum/ui_state/state Next state

+ + + diff --git a/datum/tgui_alert.html b/datum/tgui_alert.html new file mode 100644 index 0000000000000..9f0431aef1283 --- /dev/null +++ b/datum/tgui_alert.html @@ -0,0 +1,95 @@ + + + + + + + /datum/tgui_alert - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

tgui_alert + + + +

+ +

Datum used for instantiating and using a TGUI-controlled modal that prompts the user with +a message and has buttons for responses.

+ + + + + + + + +

Vars

autofocusThe bool that controls if this modal should grab window focus
buttonsThe list of buttons (responses) provided on the TGUI window
choiceThe button that the user has pressed, null if no selection has been made
closedBoolean field describing if the tgui_alert was closed by the user.
messageThe textual body of the TGUI window
start_timeThe time at which the tgui_alert was created, for displaying timeout progress.
timeoutThe lifespan of the tgui_alert, after which the window will close and delete itself.
titleThe title of the TGUI window

Procs

waitWaits for a user's response to the tgui_alert's prompt before returning. Returns early if +the window was closed by the user.
+

Var Details

autofocus + + + + +

+

The bool that controls if this modal should grab window focus

buttons + + + + +

+

The list of buttons (responses) provided on the TGUI window

choice + + + + +

+

The button that the user has pressed, null if no selection has been made

closed + + + + +

+

Boolean field describing if the tgui_alert was closed by the user.

message + + + + +

+

The textual body of the TGUI window

start_time + + + + +

+

The time at which the tgui_alert was created, for displaying timeout progress.

timeout + + + + +

+

The lifespan of the tgui_alert, after which the window will close and delete itself.

title + + + + +

+

The title of the TGUI window

Proc Details

wait +

+

Waits for a user's response to the tgui_alert's prompt before returning. Returns early if +the window was closed by the user.

+ + + diff --git a/datum/tgui_checkbox_input.html b/datum/tgui_checkbox_input.html new file mode 100644 index 0000000000000..58198bc80199f --- /dev/null +++ b/datum/tgui_checkbox_input.html @@ -0,0 +1,92 @@ + + + + + + + /datum/tgui_checkbox_input - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

tgui_checkbox_input + + + +

+ +

Window for tgui_input_checkboxes

+ + + + + + + + +

Vars

choicesList of selected items
closedWhether the input was closed
itemsList of items to display
max_checkedMaximum number of checkboxes that can be checked
messageMessage to display
min_checkedMinimum number of checkboxes that must be checked
start_timeTime when the input was created
timeoutTimeout for the input
titleTitle of the window
+

Var Details

choices + + + + +

+

List of selected items

closed + + + + +

+

Whether the input was closed

items + + + + +

+

List of items to display

max_checked + + + + +

+

Maximum number of checkboxes that can be checked

message + + + + +

+

Message to display

min_checked + + + + +

+

Minimum number of checkboxes that must be checked

start_time + + + + +

+

Time when the input was created

timeout + + + + +

+

Timeout for the input

title + + + + +

+

Title of the window

+ + + diff --git a/datum/tgui_input_number.html b/datum/tgui_input_number.html new file mode 100644 index 0000000000000..41113830baf9a --- /dev/null +++ b/datum/tgui_input_number.html @@ -0,0 +1,118 @@ + + + + + + + /datum/tgui_input_number - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

tgui_input_number + + + +

+ +

Datum used for instantiating and using a TGUI-controlled number input that prompts the user with +a message and has an input for number entry.

+ + + + + + + + + + + +

Vars

closedBoolean field describing if the tgui_input_number was closed by the user.
defaultThe default (or current) value, shown as a default. Users can press reset with this.
entryThe entry that the user has return_typed in.
max_valueThe maximum value that can be entered.
messageThe prompt's body, if any, of the TGUI window.
min_valueThe minimum value that can be entered.
round_valueWhether the submitted number is rounded down into an integer.
start_timeThe time at which the number input was created, for displaying timeout progress.
timeoutThe lifespan of the number input, after which the window will close and delete itself.
titleThe title of the TGUI window

Procs

DestroyChecks for empty numbers - bank accounts, etc. +Sanity check
waitWaits for a user's response to the tgui_input_number's prompt before returning. Returns early if +the window was closed by the user.
+

Var Details

closed + + + + +

+

Boolean field describing if the tgui_input_number was closed by the user.

default + + + + +

+

The default (or current) value, shown as a default. Users can press reset with this.

entry + + + + +

+

The entry that the user has return_typed in.

max_value + + + + +

+

The maximum value that can be entered.

message + + + + +

+

The prompt's body, if any, of the TGUI window.

min_value + + + + +

+

The minimum value that can be entered.

round_value + + + + +

+

Whether the submitted number is rounded down into an integer.

start_time + + + + +

+

The time at which the number input was created, for displaying timeout progress.

timeout + + + + +

+

The lifespan of the number input, after which the window will close and delete itself.

title + + + + +

+

The title of the TGUI window

Proc Details

Destroy +

+

Checks for empty numbers - bank accounts, etc. +Sanity check

wait +

+

Waits for a user's response to the tgui_input_number's prompt before returning. Returns early if +the window was closed by the user.

+ + + diff --git a/datum/tgui_input_text.html b/datum/tgui_input_text.html new file mode 100644 index 0000000000000..44adb3253f6e0 --- /dev/null +++ b/datum/tgui_input_text.html @@ -0,0 +1,123 @@ + + + + + + + /datum/tgui_input_text - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

tgui_input_text + + + +

+ +

tgui_input_text

+

Datum used for instantiating and using a TGUI-controlled text input that prompts the user with +a message and has an input for text entry.

+ + + + + + + + + + + +

Vars

closedBoolean field describing if the tgui_input_text was closed by the user.
defaultThe default (or current) value, shown as a default.
encodeWhether the input should be stripped using html_encode
entryThe entry that the user has return_typed in.
max_lengthThe maximum length for text entry
messageThe prompt's body, if any, of the TGUI window.
multilineMultiline input for larger input boxes.
start_timeThe time at which the text input was created, for displaying timeout progress.
timeoutThe lifespan of the text input, after which the window will close and delete itself.
titleThe title of the TGUI window

Procs

set_entrySets the return value for the tgui text proc. +If html encoding is enabled, the text will be encoded. +This can sometimes result in a string that is longer than the max length. +If the string is longer than the max length, it will be clipped.
waitWaits for a user's response to the tgui_input_text's prompt before returning. Returns early if +the window was closed by the user.
+

Var Details

closed + + + + +

+

Boolean field describing if the tgui_input_text was closed by the user.

default + + + + +

+

The default (or current) value, shown as a default.

encode + + + + +

+

Whether the input should be stripped using html_encode

entry + + + + +

+

The entry that the user has return_typed in.

max_length + + + + +

+

The maximum length for text entry

message + + + + +

+

The prompt's body, if any, of the TGUI window.

multiline + + + + +

+

Multiline input for larger input boxes.

start_time + + + + +

+

The time at which the text input was created, for displaying timeout progress.

timeout + + + + +

+

The lifespan of the text input, after which the window will close and delete itself.

title + + + + +

+

The title of the TGUI window

Proc Details

set_entry +

+

Sets the return value for the tgui text proc. +If html encoding is enabled, the text will be encoded. +This can sometimes result in a string that is longer than the max length. +If the string is longer than the max length, it will be clipped.

wait +

+

Waits for a user's response to the tgui_input_text's prompt before returning. Returns early if +the window was closed by the user.

+ + + diff --git a/datum/tgui_list_input.html b/datum/tgui_list_input.html new file mode 100644 index 0000000000000..72adce41e450d --- /dev/null +++ b/datum/tgui_list_input.html @@ -0,0 +1,104 @@ + + + + + + + /datum/tgui_list_input - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

tgui_list_input + + + +

+ +

Client does NOT have tgui_input on: Returns regular input

+tgui_list_input +

Datum used for instantiating and using a TGUI-controlled list input that prompts the user with +a message and shows a list of selectable options

+ + + + + + + + + +

Vars

choiceThe button that the user has pressed, null if no selection has been made
closedBoolean field describing if the tgui_list_input was closed by the user.
defaultThe default button to be selected
itemsThe list of items (responses) provided on the TGUI window
items_mapButtons (strings specifically) mapped to the actual value (e.g. a mob or a verb)
messageThe textual body of the TGUI window
start_timeThe time at which the tgui_list_input was created, for displaying timeout progress.
timeoutThe lifespan of the tgui_list_input, after which the window will close and delete itself.
titleThe title of the TGUI window

Procs

waitWaits for a user's response to the tgui_list_input's prompt before returning. Returns early if +the window was closed by the user.
+

Var Details

choice + + + + +

+

The button that the user has pressed, null if no selection has been made

closed + + + + +

+

Boolean field describing if the tgui_list_input was closed by the user.

default + + + + +

+

The default button to be selected

items + + + + +

+

The list of items (responses) provided on the TGUI window

items_map + + + + +

+

Buttons (strings specifically) mapped to the actual value (e.g. a mob or a verb)

message + + + + +

+

The textual body of the TGUI window

start_time + + + + +

+

The time at which the tgui_list_input was created, for displaying timeout progress.

timeout + + + + +

+

The lifespan of the tgui_list_input, after which the window will close and delete itself.

title + + + + +

+

The title of the TGUI window

Proc Details

wait +

+

Waits for a user's response to the tgui_list_input's prompt before returning. Returns early if +the window was closed by the user.

+ + + diff --git a/datum/tgui_panel.html b/datum/tgui_panel.html new file mode 100644 index 0000000000000..9628f55d4aeb8 --- /dev/null +++ b/datum/tgui_panel.html @@ -0,0 +1,132 @@ + + + + + + + /datum/tgui_panel - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

tgui_panel + + + +

+ +

tgui_panel datum +Hosts tgchat and other nice features.

+ + + + + + + + + + + +

Vars

telemetry_analyzed_atTime of telemetry analysis completion
telemetry_connectionsList of previous client connections
telemetry_requested_atTime of telemetry request

Procs

analyze_telemetryprivate
initializepublic
is_readypublic
on_initialize_timed_outprivate
on_messageprivate
play_musicpublic
request_telemetryprivate
send_roundrestartpublic
stop_musicpublic
+

Var Details

telemetry_analyzed_at + + + + +

+

Time of telemetry analysis completion

telemetry_connections + + + + +

+

List of previous client connections

telemetry_requested_at + + + + +

+

Time of telemetry request

Proc Details

analyze_telemetry +

+

private

+

Analyzes a telemetry packet.

+

Is currently only useful for detecting ban evasion attempts.

initialize +

+

public

+

Initializes tgui panel.

is_ready +

+

public

+

TRUE if panel is initialized and ready to receive messages.

on_initialize_timed_out +

+

private

+

Called when initialization has timed out.

on_message +

+

private

+

Callback for handling incoming tgui messages.

play_music +

+

public

+

Sends music data to the browser.

+

Optional settings:

+ +

required url string Must be an https URL. +optional extra_data list Optional settings.

request_telemetry +

+

private

+

Requests some telemetry from the client.

send_roundrestart +

+

public

+

Sends a round restart notification.

stop_music +

+

public

+

Stops playing music through the browser.

+ + + diff --git a/datum/tgui_say.html b/datum/tgui_say.html new file mode 100644 index 0000000000000..f04814b429585 --- /dev/null +++ b/datum/tgui_say.html @@ -0,0 +1,210 @@ + + + + + + + /datum/tgui_say - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

tgui_say + + + +

+ +

The tgui say modal. This initializes an input window which hides until +the user presses one of the speech hotkeys. Once something is entered, it will +delegate the speech to the proper channel.

+ + + + + + + + + + + + + + + + + + +

Vars

clientThe user who opened the window
hurt_phrasesInjury phrases to blurt out
max_lengthMax message length
windowThe modal window
window_openBoolean for whether the tgui_say was opened by the user.

Procs

NewCreates the new input window to exist in the background.
alter_entryAlters text when players are injured. +Adds text, trims left and right side
closeCloses the window serverside. Closes any open chat bubbles +regardless of preference. Logs the event.
delegate_speechNo OOC leaks +Random trimming for larger sentences +Otherwise limit trim to just last letter +Delegates the speech to the proper channel.
force_sayForce say handler. +Sends a message to the say modal to send its current value.
handle_entryHandles text entry and forced speech.
initializeAfter a brief period, injects the scripts into +the window to listen for open commands.
loadEnsures nothing funny is going on window load. +Minimizes the window, sets max length, closes all +typing and thinking indicators. This is triggered +as soon as the window sends the "ready" message.
on_messageThe equivalent of ui_act, this waits on messages from the window +and delegates actions.
openSets the window as "opened" server side, though it is already +visible to the user. We do this to set local vars & +start typing (if enabled and in an IC channel). Logs the event.
start_thinkingSets the mob as "thinking" - with indicator and variable thinking_IC
start_typingHandles the user typing. After a brief period of inactivity, +signals the client mob to revert to the "thinking" icon.
stop_thinkingRemoves typing/thinking indicators and flags the mob as not thinking
stop_typingCallback to remove the typing indicator after a brief period of inactivity. +If the user was typing IC, the thinking indicator is shown.
+

Var Details

client + + + + +

+

The user who opened the window

hurt_phrases + + + + +

+

Injury phrases to blurt out

max_length + + + + +

+

Max message length

window + + + + +

+

The modal window

window_open + + + + +

+

Boolean for whether the tgui_say was opened by the user.

Proc Details

New +

+

Creates the new input window to exist in the background.

alter_entry +

+

Alters text when players are injured. +Adds text, trims left and right side

+

Arguments: +payload - a string list containing entry & channel +Returns: +string - the altered entry

close +

+

Closes the window serverside. Closes any open chat bubbles +regardless of preference. Logs the event.

delegate_speech +

+

No OOC leaks +Random trimming for larger sentences +Otherwise limit trim to just last letter +Delegates the speech to the proper channel.

+

Arguments: +entry - the text to broadcast +channel - the channel to broadcast in +Returns: +boolean - on success or failure

force_say +

+

Force say handler. +Sends a message to the say modal to send its current value.

handle_entry +

+

Handles text entry and forced speech.

+

Arguments: +type - a string "entry" or "force" based on how this function is called +payload - a string list containing entry & channel +Returns: +boolean - success or failure

initialize +

+

After a brief period, injects the scripts into +the window to listen for open commands.

load +

+

Ensures nothing funny is going on window load. +Minimizes the window, sets max length, closes all +typing and thinking indicators. This is triggered +as soon as the window sends the "ready" message.

on_message +

+

The equivalent of ui_act, this waits on messages from the window +and delegates actions.

open +

+

Sets the window as "opened" server side, though it is already +visible to the user. We do this to set local vars & +start typing (if enabled and in an IC channel). Logs the event.

+

Arguments: +payload - A list containing the channel the window was opened in.

start_thinking +

+

Sets the mob as "thinking" - with indicator and variable thinking_IC

start_typing +

+

Handles the user typing. After a brief period of inactivity, +signals the client mob to revert to the "thinking" icon.

stop_thinking +

+

Removes typing/thinking indicators and flags the mob as not thinking

stop_typing +

+

Callback to remove the typing indicator after a brief period of inactivity. +If the user was typing IC, the thinking indicator is shown.

+ + + diff --git a/datum/tgui_window.html b/datum/tgui_window.html new file mode 100644 index 0000000000000..7c1e2f7cdd173 --- /dev/null +++ b/datum/tgui_window.html @@ -0,0 +1,184 @@ + + + + + + + /datum/tgui_window - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

tgui_window + + + +

+ + + + + + + + + + + + + + + + + +

Procs

Newpublic
acquire_lockpublic
can_be_suspendedpublic
closepublic
flush_message_queueprivate
initializepublic
is_readypublic
on_messageprivate
reinitializepublic
release_lockpublic
replace_htmlpublic
send_assetpublic
send_messagepublic
send_raw_messagepublic
subscribepublic
unsubscribepublic

Proc Details

New +

+

public

+

Create a new tgui window.

+

required client /client +required id string A unique window identifier.

acquire_lock +

+

public

+

Acquire the window lock. Pool will not be able to provide this window +to other UIs for the duration of the lock.

+

Can be given an optional tgui datum, which will be automatically +subscribed to incoming messages via the on_message proc.

+

optional ui /datum/tgui

can_be_suspended +

+

public

+

Checks if the window can be sanely suspended.

+

return bool

close +

+

public

+

Close the UI.

+

optional can_be_suspended bool

flush_message_queue +

+

private

+

Sends queued messages if the queue wasn't empty.

initialize +

+

public

+

Initializes the window with a fresh page. Puts window into the "loading" +state. You can begin sending messages right after initializing. Messages +will be put into the queue until the window finishes loading.

+

optional strict_mode bool - Enables strict error handling and BSOD. +optional fancy bool - If TRUE and if this is NOT a panel, will hide the window titlebar. +optional assets list - List of assets to load during initialization. +optional inline_html string - Custom HTML to inject. +optional inline_js string - Custom JS to inject. +optional inline_css string - Custom CSS to inject.

is_ready +

+

public

+

Checks if the window is ready to receive data.

+

return bool

on_message +

+

private

+

Callback for handling incoming tgui messages.

reinitialize +

+

public

+

Reinitializes the panel with previous data used for initialization.

release_lock +

+

public

+

Release the window lock.

replace_html +

+

public

+

Replaces the inline HTML content.

+

required inline_html string HTML to inject

send_asset +

+

public

+

Makes an asset available to use in tgui.

+

required asset datum/asset

+

return bool - TRUE if any assets had to be sent to the client

send_message +

+

public

+

Sends a message to tgui window.

+

required type string Message type +required payload list Message payload +optional force bool Send regardless of the ready status.

send_raw_message +

+

public

+

Sends a raw payload to tgui window.

+

required message string JSON+urlencoded blob to send. +optional force bool Send regardless of the ready status.

subscribe +

+

public

+

Subscribes the datum to consume window messages on a specified proc.

+

Note, that this supports only one subscriber, because code for that +is simpler and therefore faster. If necessary, this can be rewritten +to support multiple subscribers.

unsubscribe +

+

public

+

Unsubscribes the datum. Do not forget to call this when cleaning up.

+ + + diff --git a/datum/timedevent.html b/datum/timedevent.html new file mode 100644 index 0000000000000..6f4093b176f18 --- /dev/null +++ b/datum/timedevent.html @@ -0,0 +1,156 @@ + + + + + + + /datum/timedevent - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

Timed Event + + + +

+ +

This is the actual timer, it contains the callback and necessary data to maintain +the timer.

+

See the documentation for the timer subsystem for an explanation of the buckets referenced +below in next and prev

+ + + + + + + + + + + + + + + + +

Vars

bucket_joinedBoolean indicating if timer joined into bucket
bucket_posInitial bucket position
callBackThe callback to invoke after the timer completes
flagsFlags associated with the timer, see _DEFINES/subsystems.dm
hashUnique hash generated when TIMER_UNIQUE flag is present
idID used for timers when the TIMER_STOPPABLE flag is present
nameAn informative name generated for the timer as its representation in strings, useful for debugging
nextNext timed event in the bucket
prevPrevious timed event in the bucket
sourceThe source of the timedevent, whatever called addtimer
spentTime at which the timer was invoked or destroyed
timeToRunThe time at which the callback should be invoked at
timer_subsystemThe timer subsystem this event is associated with
waitThe length of the timer

Procs

bucketEjectRemoves this timed event from any relevant buckets, or the secondary queue
bucketJoinAttempts to add this timed event to a bucket, will enter the secondary queue +if there are no appropriate buckets at this time.
getcallingtypeReturns a string of the type of the callback for this timer
+

Var Details

bucket_joined + + + + +

+

Boolean indicating if timer joined into bucket

bucket_pos + + + + +

+

Initial bucket position

callBack + + + + +

+

The callback to invoke after the timer completes

flags + + + + +

+

Flags associated with the timer, see _DEFINES/subsystems.dm

hash + + + + +

+

Unique hash generated when TIMER_UNIQUE flag is present

id + + + + +

+

ID used for timers when the TIMER_STOPPABLE flag is present

name + + + + +

+

An informative name generated for the timer as its representation in strings, useful for debugging

next + + + + +

+

Next timed event in the bucket

prev + + + + +

+

Previous timed event in the bucket

source + + + + +

+

The source of the timedevent, whatever called addtimer

spent + + + + +

+

Time at which the timer was invoked or destroyed

timeToRun + + + + +

+

The time at which the callback should be invoked at

timer_subsystem + + + + +

+

The timer subsystem this event is associated with

wait + + + + +

+

The length of the timer

Proc Details

bucketEject +

+

Removes this timed event from any relevant buckets, or the secondary queue

bucketJoin +

+

Attempts to add this timed event to a bucket, will enter the secondary queue +if there are no appropriate buckets at this time.

+

Secondary queueing of timed events will occur when the timespan covered by the existing +buckets is exceeded by the time at which this timed event is scheduled to be invoked. +If the timed event is tracking client time, it will be added to a special bucket.

getcallingtype +

+

Returns a string of the type of the callback for this timer

+ + + diff --git a/datum/tts_request.html b/datum/tts_request.html new file mode 100644 index 0000000000000..4031461d68982 --- /dev/null +++ b/datum/tts_request.html @@ -0,0 +1,164 @@ + + + + + + + /datum/tts_request - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

tts_request + + + +

+ +

A struct containing information on an individual player or mob who has made a TTS request

+ + + + + + + + + + + + + + + + + + +

Vars

audio_fileThe audio file of this tts request.
audio_file_blipsThe blips audio file of this tts request.
audio_lengthThe audio length of this tts request.
directionalityIf false, play at full volume to each listener, regardless of distance
identifierThe message identifier
languageThe language to limit this TTS message to
listenersThe people who are going to hear this TTS message +Does nothing if local is set to TRUE
localWhether this TTS message should be sent to the target only or not.
messageThe message itself
message_rangeThe message range to play this TTS message
pitchWhat's the pitch adjustment?
requestThe HTTP request of this message
request_blipsThe HTTP request of this message for blips
start_timeThe time at which this request was started
targetThe mob to play this TTS message on
timed_outWhether this request was timed out or not
use_blipsDoes this use blips during local generation or not?
volume_offsetThe volume offset to play this TTS at.
when_to_playWhen the audio file should play at the minimum
+

Var Details

audio_file + + + + +

+

The audio file of this tts request.

audio_file_blips + + + + +

+

The blips audio file of this tts request.

audio_length + + + + +

+

The audio length of this tts request.

directionality + + + + +

+

If false, play at full volume to each listener, regardless of distance

identifier + + + + +

+

The message identifier

language + + + + +

+

The language to limit this TTS message to

listeners + + + + +

+

The people who are going to hear this TTS message +Does nothing if local is set to TRUE

local + + + + +

+

Whether this TTS message should be sent to the target only or not.

message + + + + +

+

The message itself

message_range + + + + +

+

The message range to play this TTS message

pitch + + + + +

+

What's the pitch adjustment?

request + + + + +

+

The HTTP request of this message

request_blips + + + + +

+

The HTTP request of this message for blips

start_time + + + + +

+

The time at which this request was started

target + + + + +

+

The mob to play this TTS message on

timed_out + + + + +

+

Whether this request was timed out or not

use_blips + + + + +

+

Does this use blips during local generation or not?

volume_offset + + + + +

+

The volume offset to play this TTS at.

when_to_play + + + + +

+

When the audio file should play at the minimum

+ + + diff --git a/datum/turf_reservation.html b/datum/turf_reservation.html new file mode 100644 index 0000000000000..850552ef9f472 --- /dev/null +++ b/datum/turf_reservation.html @@ -0,0 +1,35 @@ + + + + + + + /datum/turf_reservation - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

turf_reservation + + + +

+ + +

Procs

set_turf_typeChange the turf type of all tiles that are belonging to the turf reservation

Proc Details

set_turf_type +

+

Change the turf type of all tiles that are belonging to the turf reservation

+ + + diff --git a/datum/tutorial.html b/datum/tutorial.html new file mode 100644 index 0000000000000..a345ae6131e7d --- /dev/null +++ b/datum/tutorial.html @@ -0,0 +1,129 @@ + + + + + + + /datum/tutorial - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

tutorial + + + +

+ +

The base for a contextual tutorial. +In order to give a tutorial to someone, use SStutorials.suggest_tutorial(user, /datum/tutorial/subtype)

+ + + + + + + + + + +

Vars

grandfather_dateIf set, any account who started playing before this date will not be given this tutorial. +Date is in YYYY-MM-DD format.
userThe mob we are giving the tutorial to

Procs

animate_ui_elementCreates a UI element with the given icon_state, starts it at initial_screen_loc, and animates it to target_screen_loc. +Waits animate_start_time before moving.
completeCalled by the tutorial when the user has successfully completed it. +Will mark it as completed in the datbaase and kick off destruction of the tutorial.
dismissAs opposed to complete(), this merely hides the tutorial. +This should be used when the user doesn't need the tutorial anymore, but didn't +actually properly finish it.
keybinding_messageGiven a keybind and a message, will replace %KEY% in message with the first keybind they have. +As a fallback, will return the third parameter, message_without_keybinds, if none are set.
managerGets the [/datum/tutorial_manager] that owns this tutorial.
performThe actual steps of the tutorial. Is given any excess arguments of suggest_tutorial. +Must be overridden.
perform_completion_effects_with_delayCalled when the tutorial is being hidden, but before it is deleted. +You should unregister signals and fade out any of your creations in here. +Returns how long extra to delay the deletion.
should_performReturns TRUE/FALSE if this tutorial should be given. +If FALSE, does not mean it won't come back later.
show_instructionShows a large piece of text on the user's screen with the given message. +If a message already exists, will fade it out and replace it.
+

Var Details

grandfather_date + + + + +

+

If set, any account who started playing before this date will not be given this tutorial. +Date is in YYYY-MM-DD format.

user + + + + +

+

The mob we are giving the tutorial to

Proc Details

animate_ui_element +

+

Creates a UI element with the given icon_state, starts it at initial_screen_loc, and animates it to target_screen_loc. +Waits animate_start_time before moving.

complete +

+

Called by the tutorial when the user has successfully completed it. +Will mark it as completed in the datbaase and kick off destruction of the tutorial.

dismiss +

+

As opposed to complete(), this merely hides the tutorial. +This should be used when the user doesn't need the tutorial anymore, but didn't +actually properly finish it.

keybinding_message +

+

Given a keybind and a message, will replace %KEY% in message with the first keybind they have. +As a fallback, will return the third parameter, message_without_keybinds, if none are set.

manager +

+

Gets the [/datum/tutorial_manager] that owns this tutorial.

perform +

+

The actual steps of the tutorial. Is given any excess arguments of suggest_tutorial. +Must be overridden.

perform_completion_effects_with_delay +

+

Called when the tutorial is being hidden, but before it is deleted. +You should unregister signals and fade out any of your creations in here. +Returns how long extra to delay the deletion.

should_perform +

+

Returns TRUE/FALSE if this tutorial should be given. +If FALSE, does not mean it won't come back later.

show_instruction +

+

Shows a large piece of text on the user's screen with the given message. +If a message already exists, will fade it out and replace it.

+ + + diff --git a/datum/tutorial_manager.html b/datum/tutorial_manager.html new file mode 100644 index 0000000000000..a840d3076677c --- /dev/null +++ b/datum/tutorial_manager.html @@ -0,0 +1,99 @@ + + + + + + + /datum/tutorial_manager - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

tutorial_manager + + + +

+ +

A singleton that manages when to create tutorials of a specific tutorial type.

+ + + + + + + +

Vars

finished_ckeysckeys that we know have finished the tutorial
performing_ckeysckeys that have performed the tutorial, but have not completed it. +Doesn't mean that they can still see the tutorial, might have meant the tutorial was dismissed +without being completed, such as during a log out.

Procs

completeMarks the tutorial as completed. +Call /datum/tutorial/proc/complete() instead.
dismissDismisses the tutorial, not marking it as completed in the database. +Call /datum/tutorial/proc/dismiss() instead.
get_keyGives the key that will be saved in the database. +Must be 64 characters or less.
mark_as_completedGiven a ckey, will mark them as being completed without affecting the database. +Call /datum/tutorial/proc/complete() instead.
should_runChecks if the user should be given this tutorial
try_performChecks if we should perform the tutorial for the given user, and performs if so. +Use SStutorials.suggest_tutorial instead of calling this directly.
+

Var Details

finished_ckeys + + + + +

+

ckeys that we know have finished the tutorial

performing_ckeys + + + + +

+

ckeys that have performed the tutorial, but have not completed it. +Doesn't mean that they can still see the tutorial, might have meant the tutorial was dismissed +without being completed, such as during a log out.

Proc Details

complete +

+

Marks the tutorial as completed. +Call /datum/tutorial/proc/complete() instead.

dismiss +

+

Dismisses the tutorial, not marking it as completed in the database. +Call /datum/tutorial/proc/dismiss() instead.

get_key +

+

Gives the key that will be saved in the database. +Must be 64 characters or less.

mark_as_completed +

+

Given a ckey, will mark them as being completed without affecting the database. +Call /datum/tutorial/proc/complete() instead.

should_run +

+

Checks if the user should be given this tutorial

try_perform +

+

Checks if we should perform the tutorial for the given user, and performs if so. +Use SStutorials.suggest_tutorial instead of calling this directly.

+ + + diff --git a/datum/ui_state.html b/datum/ui_state.html new file mode 100644 index 0000000000000..5cab43295275e --- /dev/null +++ b/datum/ui_state.html @@ -0,0 +1,40 @@ + + + + + + + /datum/ui_state - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

ui_state + + + +

+ + +

Procs

can_use_topicprivate

Proc Details

can_use_topic +

+

private

+

Checks if a user can use src_object's UI, and returns the state. +Can call a mob proc, which allows overrides for each mob.

+

required src_object datum The object/datum which owns the UI. +required user mob The mob who opened/is using the UI.

+

return UI_state The state of the UI.

+ + + diff --git a/datum/unarmed_attack.html b/datum/unarmed_attack.html new file mode 100644 index 0000000000000..5503d3f965936 --- /dev/null +++ b/datum/unarmed_attack.html @@ -0,0 +1,71 @@ + + + + + + + /datum/unarmed_attack - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

unarmed_attack + + + +

+ + + + + + + +

Vars

attack_soundSound that plays when you land a punch
attack_verbEmpty hand hurt intent verb
damageExtra empty hand attack damage
miss_soundSound that plays when you miss a punch
sharpwhether our unarmed attack cuts
shreddingCalls the old attack_alien() behavior on objects/mobs when on harm intent
+

Var Details

attack_sound + + + + +

+

Sound that plays when you land a punch

attack_verb + + + + +

+

Empty hand hurt intent verb

damage + + + + +

+

Extra empty hand attack damage

miss_sound + + + + +

+

Sound that plays when you miss a punch

sharp + + + + +

+

whether our unarmed attack cuts

shredding + + + + +

+

Calls the old attack_alien() behavior on objects/mobs when on harm intent

+ + + diff --git a/datum/unit_test.html b/datum/unit_test.html new file mode 100644 index 0000000000000..9209ee9d476fd --- /dev/null +++ b/datum/unit_test.html @@ -0,0 +1,59 @@ + + + + + + + /datum/unit_test - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

unit_test + + + +

+ + + + + +

Vars

priorityThe priority of the test, the larger it is the later it fires
run_loc_floor_bottom_leftThe bottom left floor turf of the testing zone
run_loc_floor_top_rightThe top right floor turf of the testing zone

Procs

allocateAllocates an instance of the provided type, and places it somewhere in an available loc +Instances allocated through this proc will be destroyed when the test is over
+

Var Details

priority + + + + +

+

The priority of the test, the larger it is the later it fires

run_loc_floor_bottom_left + + + + +

+

The bottom left floor turf of the testing zone

run_loc_floor_top_right + + + + +

+

The top right floor turf of the testing zone

Proc Details

allocate +

+

Allocates an instance of the provided type, and places it somewhere in an available loc +Instances allocated through this proc will be destroyed when the test is over

+ + + diff --git a/datum/unit_test/binary_insert.html b/datum/unit_test/binary_insert.html new file mode 100644 index 0000000000000..1d6152a8224de --- /dev/null +++ b/datum/unit_test/binary_insert.html @@ -0,0 +1,35 @@ + + + + + + + /datum/unit_test/binary_insert - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

binary_insert + + + +

+ + +

Procs

RunA test to ensure the sanity of BINARY_INSERT

Proc Details

Run +

+

A test to ensure the sanity of BINARY_INSERT

+ + + diff --git a/datum/unit_test/glass_style_icons.html b/datum/unit_test/glass_style_icons.html new file mode 100644 index 0000000000000..d46d98a2edde1 --- /dev/null +++ b/datum/unit_test/glass_style_icons.html @@ -0,0 +1,43 @@ + + + + + + + /datum/unit_test/glass_style_icons - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

glass_style_icons + + + +

+ +

Unit tests all glass style datums with icons / icon states that those are valid and not missing.

+ +

Vars

generic_drink_locThe generic commonplace DMI for all normal drink sprites
generic_mixed_drink_locThe generic commonplace DMI for all mixed drink sprites
+

Var Details

generic_drink_loc + + + + +

+

The generic commonplace DMI for all normal drink sprites

generic_mixed_drink_loc + + + + +

+

The generic commonplace DMI for all mixed drink sprites

+ + + diff --git a/datum/unit_test/map_templates.html b/datum/unit_test/map_templates.html new file mode 100644 index 0000000000000..fd6f4b6e8efd3 --- /dev/null +++ b/datum/unit_test/map_templates.html @@ -0,0 +1,36 @@ + + + + + + + /datum/unit_test/map_templates - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

map_templates + + + +

+ + +

Vars

exceptionslist of exemptions for parent type map templates that we will NEVER EVER SPAWN
+

Var Details

exceptions + + + + +

+

list of exemptions for parent type map templates that we will NEVER EVER SPAWN

+ + + diff --git a/datum/vending_product.html b/datum/vending_product.html new file mode 100644 index 0000000000000..71bc33a5c6eba --- /dev/null +++ b/datum/vending_product.html @@ -0,0 +1,89 @@ + + + + + + + /datum/vending_product - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

vending_product + + + +

+ + + + + + + + + +

Vars

amountHow much of this product there is
categoryWhat category it belongs to, Normal, contraband or coin.
display_colorWhat color it stays on the vend button, considering just nuking this.
priceThe price of this product if any.
product_nameName of the product
product_pathPath of the item this product makes
tabIncase its a tabbed vendor what tab this belongs to.

Procs

attempt_restockA few checks to make sure the item we are trying to restock is allowed to be restocked +Then restocks it afterwards +Returns TRUE if we successfully restock
+

Var Details

amount + + + + +

+

How much of this product there is

category + + + + +

+

What category it belongs to, Normal, contraband or coin.

display_color + + + + +

+

What color it stays on the vend button, considering just nuking this.

price + + + + +

+

The price of this product if any.

product_name + + + + +

+

Name of the product

product_path + + + + +

+

Path of the item this product makes

tab + + + + +

+

Incase its a tabbed vendor what tab this belongs to.

Proc Details

attempt_restock +

+

A few checks to make sure the item we are trying to restock is allowed to be restocked +Then restocks it afterwards +Returns TRUE if we successfully restock

+ + + diff --git a/datum/view_data.html b/datum/view_data.html new file mode 100644 index 0000000000000..aff8747d9b123 --- /dev/null +++ b/datum/view_data.html @@ -0,0 +1,211 @@ + + + + + + + /datum/view_data - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

view_data + + + +

+ +

Container for client viewsize

+ + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

chiefthe owner of this view data
defaultDefault view size, formatted as a string
heightheight ratio of the owneing clients view
supress_changesBool that determines whether we want it to ignore any other changes after we applied some changes
widthwidth ratio of the owneing clients view

Procs

addadds the number inputted to the zoom and applies it
add_sizeadds the size, which can also be a string, to the default and applies it
add_to_heightadds the inputted height to the view
add_to_widthadds the inputted width to the view
applyapplies all current outstanding changes to the client
assert_formatResets the format type
get_client_view_sizereturns the client view size in string format
is_zoomingReturns a boolean if the client has any form of zoom
reset_to_defaultResets the zoom to the default string
safe_apply_formattingUpdates formatting while considering zoom
set_defaultsets the default view size froma string
set_heightsets the height of the view
set_view_radius_toINCREASES the view radius by this.
set_widthsets the width of the view
set_width_and_heightsets width and height as numbers
supresssupresses any further view changes until it is unsupressed
unsupressunsupresses to allow further view changes
update_pixel_formatapplies the current clients preferred pixel size setting
update_zoom_modeapplies the preferred clients scaling method
zoom_inZooms the client back in with an animate pretty simple
zoom_outzooms out the client with a given radius and offset as well as a direction
+

Var Details

chief + + + + +

+

the owner of this view data

default + + + + +

+

Default view size, formatted as a string

height + + + + +

+

height ratio of the owneing clients view

supress_changes + + + + +

+

Bool that determines whether we want it to ignore any other changes after we applied some changes

width + + + + +

+

width ratio of the owneing clients view

Proc Details

add +

+

adds the number inputted to the zoom and applies it

add_size +

+

adds the size, which can also be a string, to the default and applies it

add_to_height +

+

adds the inputted height to the view

add_to_width +

+

adds the inputted width to the view

apply +

+

applies all current outstanding changes to the client

assert_format +

+

Resets the format type

get_client_view_size +

+

returns the client view size in string format

is_zooming +

+

Returns a boolean if the client has any form of zoom

reset_to_default +

+

Resets the zoom to the default string

safe_apply_formatting +

+

Updates formatting while considering zoom

set_default +

+

sets the default view size froma string

set_height +

+

sets the height of the view

set_view_radius_to +

+

INCREASES the view radius by this.

set_width +

+

sets the width of the view

set_width_and_height +

+

sets width and height as numbers

supress +

+

supresses any further view changes until it is unsupressed

unsupress +

+

unsupresses to allow further view changes

update_pixel_format +

+

applies the current clients preferred pixel size setting

update_zoom_mode +

+

applies the preferred clients scaling method

zoom_in +

+

Zooms the client back in with an animate pretty simple

zoom_out +

+

zooms out the client with a given radius and offset as well as a direction

+ + + diff --git a/datum/weakref.html b/datum/weakref.html new file mode 100644 index 0000000000000..43dc0ec07db0d --- /dev/null +++ b/datum/weakref.html @@ -0,0 +1,81 @@ + + + + + + + /datum/weakref - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

weakref + + + +

+ +

A weakref holds a non-owning reference to a datum. +The datum can be referenced again using resolve().

+

To figure out why this is important, you must understand how deletion in +BYOND works.

+

Imagine a datum as a TV in a living room. When one person enters to watch +TV, they turn it on. Others can come into the room and watch the TV. +When the last person leaves the room, they turn off the TV because it's +no longer being used.

+

A datum being deleted tells everyone who's watching the TV to stop. +If everyone leaves properly (AKA cleaning up their references), then the +last person will turn off the TV, and everything is well. +However, if someone is resistant (holds a hard reference after deletion), +then someone has to walk in, drag them away, and turn off the TV forecefully. +This process is very slow, and it's known as hard deletion.

+

This is where weak references come in. Weak references don't count as someone +watching the TV. Thus, when what it's referencing is destroyed, it will +hopefully clean up properly, and limit hard deletions.

+

A common use case for weak references is holding onto what created itself. +For example, if a machine wanted to know what its last user was, it might +create a var/mob/living/last_user. However, this is a strong reference to +the mob, and thus will force a hard deletion when that mob is deleted. +It is often better in this case to instead create a weakref to the user, +meaning this type definition becomes var/datum/weakref/last_user.

+

A good rule of thumb is that you should hold strong references to things +that you own. For example, a dog holding a chew toy would be the owner +of that chew toy, and thus a var/obj/item/chew_toy reference is fine +(as long as it is cleaned up properly). +However, a chew toy does not own its dog, so a var/mob/living/dog/owner +might be inferior to a weakref. +This is also a good rule of thumb to avoid circular references, such as the +chew toy example. A circular reference that doesn't clean itself up properly +will always hard delete.

+ +

Procs

hard_resolveSERIOUSLY READ THE AUTODOC COMMENT FOR THIS PROC BEFORE EVEN THINKING ABOUT USING IT
resolveRetrieves the datum that this weakref is referencing.

Proc Details

hard_resolve +

+

SERIOUSLY READ THE AUTODOC COMMENT FOR THIS PROC BEFORE EVEN THINKING ABOUT USING IT

+

Like resolve, but doesn't care if the datum is being qdeleted but hasn't been deleted yet.

+

The return value of this proc leaves hanging references if the datum is being qdeleted but hasn't been deleted yet.

+

Do not do anything that would create a lasting reference to the return value, such as giving it a tag, putting it on the map, +adding it to an atom's contents or vis_contents, giving it a key (if it's a mob), attaching it to an atom (if it's an image), +or assigning it to a datum or list referenced somewhere other than a temporary value.

+

Unless you're resolving a weakref to a datum in a COMSIG_QDELETING signal handler registered on that very same datum, +just use resolve instead.

resolve +

+

Retrieves the datum that this weakref is referencing.

+

This will return null if the datum was deleted. This MUST be respected.

+ + + diff --git a/datum/weather.html b/datum/weather.html new file mode 100644 index 0000000000000..9108398a68e1c --- /dev/null +++ b/datum/weather.html @@ -0,0 +1,306 @@ + + + + + + + /datum/weather - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

weather + + + +

+ +

Causes weather to occur on a z level in certain area types

+

The effects of weather occur across an entire z-level. For instance, lavaland has periodic ash storms that scorch most unprotected creatures. +Weather always occurs on different z levels at different times, regardless of weather type. +Can have custom durations, targets, and can automatically protect indoor areas.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

aestheticIf the weather has no purpose other than looks
area_typeTypes of area to affect
barometer_predictableWhether a barometer can predict when the weather will happen
descdescription of weather
end_durationIn deciseconds, how long the "wind-down" graphic will appear before vanishing entirely
end_messageDisplayed once the weather is over
end_overlayArea overlay while weather is ending
end_soundSound that plays while weather is ending
impacted_areasAreas to be affected by the weather, calculated when the weather begins
impacted_z_levelsThe list of z-levels that this weather is actively affecting
namename of weather
next_hit_timeFor barometers to know when the next storm will hit
overlay_layerSince it's above everything else, this is the layer used by default. TURF_LAYER is below mobs and walls if you need to use that.
overlay_planePlane for the overlay
probabilityWeight amongst other eligible weather. If zero, will never happen randomly.
protect_indoorsTRUE value protects areas with outdoors marked as false, regardless of area type
protected_areasAreas that are protected and excluded from the affected areas.
repeatableIf this weather can happen multiple times in a row.
stageThe stage of the weather, from 1-4
target_traitThe z-level trait to affect when run randomly or when not overridden.
telegraph_durationIn deciseconds, how long from the beginning of the telegraph until the weather begins
telegraph_messageThe message displayed in chat to foreshadow the weather's beginning
telegraph_overlayThe overlay applied to all tiles on the z-level
telegraph_soundThe sound file played to everyone on an affected z-level
weather_colorColor to apply to the area while weather is occuring
weather_durationIn deciseconds, how long the weather lasts once it begins
weather_duration_lowerSee above - this is the lowest possible duration
weather_duration_upperSee above - this is the highest possible duration
weather_messageDisplayed in chat once the weather begins in earnest
weather_overlayArea overlay while the weather is occuring
weather_soundLooping sound while weather is occuring

Procs

can_weather_actReturns TRUE if the living mob can be affected by the weather
endFully ends the weather
startStarts the actual weather and effects from it
telegraphTelegraphs the beginning of the weather on the impacted z levels
update_areasUpdates the overlays on impacted areas
weather_actAffects the mob with whatever the weather does
wind_downWeather enters the winding down phase, stops effects
+

Var Details

aesthetic + + + + +

+

If the weather has no purpose other than looks

area_type + + + + +

+

Types of area to affect

barometer_predictable + + + + +

+

Whether a barometer can predict when the weather will happen

desc + + + + +

+

description of weather

end_duration + + + + +

+

In deciseconds, how long the "wind-down" graphic will appear before vanishing entirely

end_message + + + + +

+

Displayed once the weather is over

end_overlay + + + + +

+

Area overlay while weather is ending

end_sound + + + + +

+

Sound that plays while weather is ending

impacted_areas + + + + +

+

Areas to be affected by the weather, calculated when the weather begins

impacted_z_levels + + + + +

+

The list of z-levels that this weather is actively affecting

name + + + + +

+

name of weather

next_hit_time + + + + +

+

For barometers to know when the next storm will hit

overlay_layer + + + + +

+

Since it's above everything else, this is the layer used by default. TURF_LAYER is below mobs and walls if you need to use that.

overlay_plane + + + + +

+

Plane for the overlay

probability + + + + +

+

Weight amongst other eligible weather. If zero, will never happen randomly.

protect_indoors + + + + +

+

TRUE value protects areas with outdoors marked as false, regardless of area type

protected_areas + + + + +

+

Areas that are protected and excluded from the affected areas.

repeatable + + + + +

+

If this weather can happen multiple times in a row.

stage + + + + +

+

The stage of the weather, from 1-4

target_trait + + + + +

+

The z-level trait to affect when run randomly or when not overridden.

telegraph_duration + + + + +

+

In deciseconds, how long from the beginning of the telegraph until the weather begins

telegraph_message + + + + +

+

The message displayed in chat to foreshadow the weather's beginning

telegraph_overlay + + + + +

+

The overlay applied to all tiles on the z-level

telegraph_sound + + + + +

+

The sound file played to everyone on an affected z-level

weather_color + + + + +

+

Color to apply to the area while weather is occuring

weather_duration + + + + +

+

In deciseconds, how long the weather lasts once it begins

weather_duration_lower + + + + +

+

See above - this is the lowest possible duration

weather_duration_upper + + + + +

+

See above - this is the highest possible duration

weather_message + + + + +

+

Displayed in chat once the weather begins in earnest

weather_overlay + + + + +

+

Area overlay while the weather is occuring

weather_sound + + + + +

+

Looping sound while weather is occuring

Proc Details

can_weather_act +

+

Returns TRUE if the living mob can be affected by the weather

end +

+

Fully ends the weather

+

Effects no longer occur and area overlays are removed +Removes weather from processing completely

start +

+

Starts the actual weather and effects from it

+

Updates area overlays and sends sounds and messages to mobs to notify them +Begins dealing effects from weather to mobs in the area

telegraph +

+

Telegraphs the beginning of the weather on the impacted z levels

+

Sends sounds and details to mobs in the area +Calculates duration and hit areas, and makes a callback for the actual weather to start

update_areas +

+

Updates the overlays on impacted areas

weather_act +

+

Affects the mob with whatever the weather does

wind_down +

+

Weather enters the winding down phase, stops effects

+

Updates areas to be in the winding down phase +Sends sounds and messages to mobs to notify them

+ + + diff --git a/datum/wound.html b/datum/wound.html new file mode 100644 index 0000000000000..85b0d12914df3 --- /dev/null +++ b/datum/wound.html @@ -0,0 +1,80 @@ + + + + + + + /datum/wound - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

wound + + + +

+ +

WOUNDS

+ + + + + + +

Vars

damageamount of damage this wound has
damage_typeone of CUT, BRUISE, BURN
descdescription of the wound
parent_limbThe limb this wound is on

Procs

heal_wound_damageheal the given amount of damage, and if the given amount of damage was more +than what needed to be healed, return how much heal was left
open_woundReopens the wound again. Remove applied treatment, if there is any, and add new damage
processCalled by the parent limb every life tick by default
+

Var Details

damage + + + + +

+

amount of damage this wound has

damage_type + + + + +

+

one of CUT, BRUISE, BURN

desc + + + + +

+

description of the wound

parent_limb + + + + +

+

The limb this wound is on

Proc Details

heal_wound_damage +

+

heal the given amount of damage, and if the given amount of damage was more +than what needed to be healed, return how much heal was left

open_wound +

+

Reopens the wound again. Remove applied treatment, if there is any, and add new damage

process +

+

Called by the parent limb every life tick by default

+ + + diff --git a/datum/xeno_caste.html b/datum/xeno_caste.html new file mode 100644 index 0000000000000..88bf3b61ed5de --- /dev/null +++ b/datum/xeno_caste.html @@ -0,0 +1,505 @@ + + + + + + + /datum/xeno_caste - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

xeno_caste + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

acid_spray_damageThe damage acid spray causes over time.
acid_spray_damage_on_hitThe damage acid spray causes on hit.
acid_spray_durationHow long the acid spray stays on floor before it deletes itself, should be higher than 0 to avoid runtimes with timers.
acid_spray_rangeNumber of tiles of the acid spray cone extends outward to. Not recommended to go beyond 4.
acid_spray_structure_damageThe damage acid spray causes to structure.
actionsthe 'abilities' available to a caste.
additional_stacksThe additional amount of stacks that the Sentinel will apply on eligible abilities.
attack_delaynumber of ticks between attacks for a caste.
aura_strengthThe strength of our aura. Zero means we can't emit any.
bomb_delayDelay between firing the bombard ability for boilers
bomb_strengthMultiplier to the effectiveness of the boiler glob. 1 by default.
can_flagsBitwise flags denoting things a caste can and cannot do. Uses defines.
can_hold_eggswhether or not a caste can hold eggs, and either 1 or 2 eggs at a time.
carnage_plasma_gainAmount of plasma gained from clashing after activating carnage
caste_flagsBitwise flags denoting things a caste is or is not. Uses defines.
caste_traitslist of traits granted to the owner by becoming this caste
conscious_see_in_darksee_in_dark value while consicious
crest_defense_armormodifying amount to the crest defense ability for defenders. Positive integers only.
crest_defense_slowdownamount of slowdown to apply when the crest defense is active. trading defense for speed. Positive numbers makes it slower.
crest_toss_distanceHow many tiles the Crest toss ability throws the victim.
crit_healthWhat negative health amount they die at.
deevolves_toSingular type path for the caste to deevolve to when forced to by the queen.
drain_plasma_gainAmount of plasma gained from draining someone
evolution_thresholdThreshold amount of evo points to next evolution
feast_plasma_drainAmount of plasma drained each tick while feast buff is actuve
fortify_armormodifying amount to the fortify ability for defenders. Positive integers only.
hugger_delaydelay between the throw hugger ability activation for carriers
huggers_maxmaximum amount of huggers a carrier can carry at one time.
max_ammomaximum number of 'globs' of boiler ammunition that can be stored by the boiler caste.
max_healthMaximum health a caste has.
max_spiderlingsmaximum amount of spiderlings a widow can carry at one time.
melee_apThe amount of armour pen their melee attacks have
melee_damageThe amount of damage a xenomorph caste will do with a 'slash' attack.
minimap_iconThe iconstate for the xeno on the minimap
minimap_leadered_overlayThe iconstate for leadered xenos on the minimap, added as overlay
overheal_maxMaximum amount of overheal that can be gained
plasma_gainHow much plasma a caste gains every life tick.
plasma_icon_stateThe iconstate of the plasma bar, format used is "[plasma_icon_state][amount]"
plasma_maxHow much plasma a caste can have at max.
plasma_regen_limitup to how % much plasma regens in decimals, generally used if you have a special way of regeninng plasma.
primordial_messageprimordial message that is shown when a caste becomes primordial
queen_leader_limitAmount of leaders allowed
regen_delayTime after you take damage before a xenomorph can regen.
regen_ramp_amountRegeneration power increases by this amount evey decisecond.
resin_max_rangeThe maximum number of tiles to where a xeno can build.
silent_vent_crawlWhether the caste enters and crawls through vents silently
spit_delayDelay timer for spitting
spit_typeslist of datum projectile types the xeno can use.
stealth_break_thresholdDamage breakpoint to knock out of stealth
stomp_damageThe damage the stomp causes, counts armor
sunder_maxWhat is the max amount of sunder that can be applied to a xeno (100 = 100%)
sunder_multiplierMultiplier on the weapons sunder, e.g 10 sunder on a projectile is reduced to 5 with a 0.5 multiplier.
sunder_recoverHow much sunder is recovered per tick
tacklemaxThe maximum amount of random paralyze applied to a human upon being 'pulled' multiplied by 20 ticks
tackleminThe minimum amount of random paralyze applied to a human upon being 'pulled' multiplied by 20 ticks
unconscious_see_in_darksee_in_dark value while unconscious
upgrade_thresholdThreshold amount of upgrade points to next maturity
vent_enter_speedHow quickly the caste enters vents
vent_exit_speedHow quickly the caste exits vents
wound_typeused to match appropriate wound overlays
wraith_banish_base_durationBase duration of Banish before modifiers
wraith_blink_drag_friendly_multiplierCooldown multiplier of Blink when used on friendlies
wraith_blink_drag_nonfriendly_living_multiplierCooldown multiplier of Blink when used on non-friendlies
wraith_blink_rangeBase range of Blink
wrath_maxThe maximum amount of Wrath that we can have stored at a time.

Procs

get_base_caste_typereturns the basetype caste to get what the base caste is (e.g base rav not primo or strain rav)
get_strain_optionsreturns a list of strains(xeno castedatum paths) that this caste can currently evolve to
on_caste_appliedAdd needed component to the xeno
+

Var Details

acid_spray_damage + + + + +

+

The damage acid spray causes over time.

acid_spray_damage_on_hit + + + + +

+

The damage acid spray causes on hit.

acid_spray_duration + + + + +

+

How long the acid spray stays on floor before it deletes itself, should be higher than 0 to avoid runtimes with timers.

acid_spray_range + + + + +

+

Number of tiles of the acid spray cone extends outward to. Not recommended to go beyond 4.

acid_spray_structure_damage + + + + +

+

The damage acid spray causes to structure.

actions + + + + +

+

the 'abilities' available to a caste.

additional_stacks + + + + +

+

The additional amount of stacks that the Sentinel will apply on eligible abilities.

attack_delay + + + + +

+

number of ticks between attacks for a caste.

aura_strength + + + + +

+

The strength of our aura. Zero means we can't emit any.

bomb_delay + + + + +

+

Delay between firing the bombard ability for boilers

bomb_strength + + + + +

+

Multiplier to the effectiveness of the boiler glob. 1 by default.

can_flags + + + + +

+

Bitwise flags denoting things a caste can and cannot do. Uses defines.

can_hold_eggs + + + + +

+

whether or not a caste can hold eggs, and either 1 or 2 eggs at a time.

carnage_plasma_gain + + + + +

+

Amount of plasma gained from clashing after activating carnage

caste_flags + + + + +

+

Bitwise flags denoting things a caste is or is not. Uses defines.

caste_traits + + + + +

+

list of traits granted to the owner by becoming this caste

conscious_see_in_dark + + + + +

+

see_in_dark value while consicious

crest_defense_armor + + + + +

+

modifying amount to the crest defense ability for defenders. Positive integers only.

crest_defense_slowdown + + + + +

+

amount of slowdown to apply when the crest defense is active. trading defense for speed. Positive numbers makes it slower.

crest_toss_distance + + + + +

+

How many tiles the Crest toss ability throws the victim.

crit_health + + + + +

+

What negative health amount they die at.

deevolves_to + + + + +

+

Singular type path for the caste to deevolve to when forced to by the queen.

drain_plasma_gain + + + + +

+

Amount of plasma gained from draining someone

evolution_threshold + + + + +

+

Threshold amount of evo points to next evolution

feast_plasma_drain + + + + +

+

Amount of plasma drained each tick while feast buff is actuve

fortify_armor + + + + +

+

modifying amount to the fortify ability for defenders. Positive integers only.

hugger_delay + + + + +

+

delay between the throw hugger ability activation for carriers

huggers_max + + + + +

+

maximum amount of huggers a carrier can carry at one time.

max_ammo + + + + +

+

maximum number of 'globs' of boiler ammunition that can be stored by the boiler caste.

max_health + + + + +

+

Maximum health a caste has.

max_spiderlings + + + + +

+

maximum amount of spiderlings a widow can carry at one time.

melee_ap + + + + +

+

The amount of armour pen their melee attacks have

melee_damage + + + + +

+

The amount of damage a xenomorph caste will do with a 'slash' attack.

minimap_icon + + + + +

+

The iconstate for the xeno on the minimap

minimap_leadered_overlay + + + + +

+

The iconstate for leadered xenos on the minimap, added as overlay

overheal_max + + + + +

+

Maximum amount of overheal that can be gained

plasma_gain + + + + +

+

How much plasma a caste gains every life tick.

plasma_icon_state + + + + +

+

The iconstate of the plasma bar, format used is "[plasma_icon_state][amount]"

plasma_max + + + + +

+

How much plasma a caste can have at max.

plasma_regen_limit + + + + +

+

up to how % much plasma regens in decimals, generally used if you have a special way of regeninng plasma.

primordial_message + + + + +

+

primordial message that is shown when a caste becomes primordial

queen_leader_limit + + + + +

+

Amount of leaders allowed

regen_delay + + + + +

+

Time after you take damage before a xenomorph can regen.

regen_ramp_amount + + + + +

+

Regeneration power increases by this amount evey decisecond.

resin_max_range + + + + +

+

The maximum number of tiles to where a xeno can build.

silent_vent_crawl + + + + +

+

Whether the caste enters and crawls through vents silently

spit_delay + + + + +

+

Delay timer for spitting

spit_types + + + + +

+

list of datum projectile types the xeno can use.

stealth_break_threshold + + + + +

+

Damage breakpoint to knock out of stealth

stomp_damage + + + + +

+

The damage the stomp causes, counts armor

sunder_max + + + + +

+

What is the max amount of sunder that can be applied to a xeno (100 = 100%)

sunder_multiplier + + + + +

+

Multiplier on the weapons sunder, e.g 10 sunder on a projectile is reduced to 5 with a 0.5 multiplier.

sunder_recover + + + + +

+

How much sunder is recovered per tick

tacklemax + + + + +

+

The maximum amount of random paralyze applied to a human upon being 'pulled' multiplied by 20 ticks

tacklemin + + + + +

+

The minimum amount of random paralyze applied to a human upon being 'pulled' multiplied by 20 ticks

unconscious_see_in_dark + + + + +

+

see_in_dark value while unconscious

upgrade_threshold + + + + +

+

Threshold amount of upgrade points to next maturity

vent_enter_speed + + + + +

+

How quickly the caste enters vents

vent_exit_speed + + + + +

+

How quickly the caste exits vents

wound_type + + + + +

+

used to match appropriate wound overlays

wraith_banish_base_duration + + + + +

+

Base duration of Banish before modifiers

+

Cooldown multiplier of Blink when used on friendlies

+

Cooldown multiplier of Blink when used on non-friendlies

+

Base range of Blink

wrath_max + + + + +

+

The maximum amount of Wrath that we can have stored at a time.

Proc Details

get_base_caste_type +

+

returns the basetype caste to get what the base caste is (e.g base rav not primo or strain rav)

get_strain_options +

+

returns a list of strains(xeno castedatum paths) that this caste can currently evolve to

on_caste_applied +

+

Add needed component to the xeno

+ + + diff --git a/datum/xeno_caste/beetle.html b/datum/xeno_caste/beetle.html new file mode 100644 index 0000000000000..de587bef7808e --- /dev/null +++ b/datum/xeno_caste/beetle.html @@ -0,0 +1,36 @@ + + + + + + + /datum/xeno_caste/beetle - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

beetle + + + +

+ + +

Vars

plasma_gain4 forward charges
+

Var Details

plasma_gain + + + + +

+

4 forward charges

+ + + diff --git a/datum/xeno_caste/ravager.html b/datum/xeno_caste/ravager.html new file mode 100644 index 0000000000000..89b57e378eb6a --- /dev/null +++ b/datum/xeno_caste/ravager.html @@ -0,0 +1,43 @@ + + + + + + + /datum/xeno_caste/ravager - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

ravager + + + +

+ + + +

Vars

plasma_damage_dealt_multmultiplier on plasma amount vs damage that is recieved on attack
plasma_damage_recieved_multmultiplier on plasma amount vs damage that is recieved on being attacked
+

Var Details

plasma_damage_dealt_mult + + + + +

+

multiplier on plasma amount vs damage that is recieved on attack

plasma_damage_recieved_mult + + + + +

+

multiplier on plasma amount vs damage that is recieved on being attacked

+ + + diff --git a/dmdoc.css b/dmdoc.css new file mode 100644 index 0000000000000..367f005d2a85d --- /dev/null +++ b/dmdoc.css @@ -0,0 +1,112 @@ +body { + margin: auto; + background: #f4f4f4; + color: #333333; + font-size: 16px; + line-height: 1.3; + max-width: 73%; + overflow-y: scroll; + font-family: Arial, Helvetica, sans-serif; +} +pre, code { + background: white; + tab-size: 4; + -moz-tab-size: 4; +} +pre { + padding: 8px; + white-space: pre-wrap; +} +code { + font-family: Consolas, "DejaVu Sans Mono", "Courier New", Courier, monospace; +} +a { + color: #333333; +} +article { + margin: 2.5% auto; +} +header, footer { + margin: 2.5% -6px; + border: 1px solid #444444; + border-radius: 5px; + padding: 5px; +} +h1 aside, h2 aside, h3 aside, h4 aside, h5 aside { + display: inline; + font-weight: normal; + font-size: smaller; +} +aside.declaration, aside.parent { + display: inline-block; + position: relative; + text-align: right; + width: 100px; + margin-right: -100px; + right: 105px; +} +aside.declaration { + font-style: italic; +} +table.summary tr:first-child > td > :first-child { + margin-top: 0; +} +table.summary tr:last-child > td > :last-child { + margin-bottom: 0; +} +table.summary th, table.summary td { + text-align: left; + vertical-align: top; + padding-left: 0; + padding-right: 1em; +} +table.summary th { + padding-left: 1em; + padding-bottom: 4px; + text-indent: -1em; +} +.no-substance { + color: #888888; +} +:target { + background-color: white; + border-radius: 5px; + padding-left: 3px; + padding-right: 3px; + margin-left: -3px; + margin-right: 3px; +} +img[src="git.png"] { + opacity: 0.8; +} +.expander { + cursor: pointer; + display: inline-block; + position: relative; + text-align: right; + width: 50px; + margin-right: -50px; + right: 53px; +} + +@media (prefers-color-scheme: dark) { + body { + background-color: #151520; + color: #e0e0e0; + } + a { + color: #e0e0e0; + } + header, footer { + border-color: #d0d0d0; + } + .no-substance { + color: #bbbbbb; + } + pre, code, :target { + background-color: #252530; + } + img[src="git.png"] { + filter: invert(1); + } +} diff --git a/dmdoc.js b/dmdoc.js new file mode 100644 index 0000000000000..6bf31f7e94411 --- /dev/null +++ b/dmdoc.js @@ -0,0 +1,58 @@ +// ---------------------------------------------------------------------------- +// Index page tree browsing + +document.addEventListener("DOMContentLoaded", function() { + var items = document.getElementsByClassName("index-tree"); + var nodes = []; + + for (var i = 0; i < items.length; ++i) { + var node = items[i]; + var parent = node.parentElement; + if (!parent || parent.tagName.toLowerCase() != "li") { + continue; + } + node.hidden = true; + parent.style.listStyle = "none"; + var expander = document.createElement("span"); + expander.className = "expander"; + expander.textContent = "\u2795"; + expander.addEventListener("click", function(node) { + return function(event) { + if (event.target.tagName.toLowerCase() == "a") { + return; + } + event.preventDefault(); + event.stopPropagation(true); + node.hidden = !node.hidden; + this.textContent = node.hidden ? "\u2795" : "\u2796"; + }; + }(node)); + + if (node.parentElement.parentElement.classList.contains("modules")) { + node.hidden = false; + expander.textContent = "\u2796"; + } + + parent.insertBefore(expander, parent.firstChild); + nodes.push({ node, expander }); + } + + if (nodes.length) { + var toggle = document.createElement("a"); + toggle.href = "#"; + toggle.appendChild(document.createTextNode("Toggle All")); + toggle.addEventListener("click", function(event) { + event.preventDefault(); + + var hidden = !nodes[1].node.hidden; + for (var i = 0; i < nodes.length; ++i) { + nodes[i].node.hidden = hidden; + nodes[i].expander.textContent = hidden ? "\u2795" : "\u2796"; + } + }); + + var header = document.getElementsByTagName("header")[0]; + header.appendChild(document.createTextNode(" \u2014 ")); + header.appendChild(toggle); + } +}); diff --git a/git.png b/git.png new file mode 100644 index 0000000000000..c190e8538b5c1 Binary files /dev/null and b/git.png differ diff --git a/global.html b/global.html new file mode 100644 index 0000000000000..f770f98a5e9f2 --- /dev/null +++ b/global.html @@ -0,0 +1,2730 @@ + + + + + + + (global) - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

(global) + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

FailsafeFailsafe
MasterStonedMC
SSambienceThe subsystem used to play ambience to users every now and then, makes them real excited.
SSasset_loadingAllows us to lazyload asset datums +Anything inserted here will fully load if directly gotten +So this just serves to remove the requirement to load assets fully during init
SSauraTracks aura emitters and tells them to pulse. Also used for creating new ones.
SSautomatedfire
SSearly_assetsInitializes any assets that need to be loaded ASAP, before the atoms SS initializes.
SSminimaps
SSspatial_grid
SStguitgui subsystem
SStimer
SStutorialsNamespace for housing code relating to giving contextual tutorials to users.

Procs

DirBlockedChecks if moving in a direction is blocked
GibberishTurn text into complete gibberish!
HandleUserlessProcCallHandles a userless proccall, used by circuits.
HandleUserlessSDQLHandles a userless sdql, used by circuits and tgs.
LeftAndRightOfDirReturns the left and right dir of the input dir, used for AI stutter step while attacking
LinkBlockedReturns true if the path from A to B is blocked. Checks both paths where the direction is diagonal +Variables: +bypass_window - check for PASS_GLASS - laser like behavior +projectile - check for PASS_PROJECTILE - bullet like behavior +bypass_xeno - whether to bypass dense xeno structures like flamers +air_pass - whether to bypass non airtight atoms
TurfBlockedNonWindowReturns true if any object on a turf is both dense and not a window
WEAKREFCreates a weakref to the given input. +See /datum/weakref's documentation for more information.
WrapAdminProcCallWrapper for proccalls where the datum is flagged as vareditted
___TraitAddDO NOT USE ___TraitAdd OR ___TraitRemove as a replacement for ADD_TRAIT / REMOVE_TRAIT defines. To be used explicitly for callback.
___TraitRemoveDO NOT USE ___TraitAdd OR ___TraitRemove as a replacement for ADD_TRAIT / REMOVE_TRAIT defines. To be used explicitly for callback.
__check_serialization_semverChecks if the actual semver is equal or later than the wanted semver +Must be passed as TEXT; you're probably looking for CHECK_SERIALIZATION_SEMVER, look right above
_addtimerCreate a new timer and insert it in the queue. +You should not call this directly, and should instead use the addtimer macro, which includes source information.
add_keybindingAdds an instanced keybinding to the global tracker
add_verbhandles adding verbs and updating the stat panel browser
adminscrubRuns STRIP_HTML_SIMPLE and byond's sanitization proc.
alone_in_areaChecks if the mob provided (must_be_alone) is alone in an area
angle_to_cardinal_dirReturns one of the 4 cardinal directions based on an angle
angle_to_dirReturns one of the 8 directions based on an angle
armored_init_guntypesim a lazy bum who cant use initial on lists, so we just load everything into a list
assemble_alertDesign a faction alert. Returns a string.
assertion_messageUsed by ASSERT to add a more detailed context to CRASH messages
assoc_to_keysTurns an associative list into a flat list of keys
auxtools_expr_stubauxtools expression evaluation
behemoth_area_attackChecks for any atoms caught in the attack's range, and applies several effects based on the atom's type.
bitfield_to_listConverts a bitfield to a list of numbers (or words if a wordlist is provided)
bullet_burstFires a list of projectile objects in a circle around an atom +Arguments:
buy_categoryReturn true if you can buy this category, and also change the loadout seller buying bitfield
buy_item_in_vendorReturn true if the item was found in a linked vendor and successfully bought
buy_stackCheck if that stack is buyable in a points vendor (currently, only metal, sandbags and plasteel)
callback_selectRuns a list of callbacks asyncronously, returning only when all have finished
can_buy_categoryWill check if the selected category can be bought according to the category choices left
can_see_throughReturns if a turf can be seen from another turf.
can_sell_human_bodyReturn TRUE if the relation between the two factions are bad enough that a bounty is on the human_to_sell head
center_imageCenter's an image. +Requires: +The Image +The x dimension of the icon file used in the image +The y dimension of the icon file used in the image +eg: center_image(image_to_center, 32,32) +eg2: center_image(image_to_center, 96,96)
cheap_get_atomThis proc attempts to get an instance of an atom type within distance, with center as the center. +Arguments
cheap_get_humans_nearReturns a list of humans via get_dist and same z level method, very cheap compared to range()
cheap_get_living_nearReturns a list of mobs/living via get_dist and same z level method, very cheap compared to range()
cheap_get_mechs_nearReturns a list of mechs via get_dist and same z level method, very cheap compared to range()
cheap_get_tanks_nearReturns a list of vehicles via get_dist and same z level method, very cheap compared to range()
cheap_get_xenos_nearReturns a list of xenos via get_dist and same z level method, very cheap compared to range()
check_admin_pingsChecks a given message to see if any of the words contain an active admin's ckey with an @ before it
check_pathDraws a line between two atoms, then checks if the path is blocked. +Variables: +start -start point of the path +end - end point of the path +bypass_window - whether it will go through transparent windows in the same way as lasers +projectile - whether PASS_PROJECTILE will be checked to ignore dense objects in the same way as projectiles +bypass_xeno - whether to bypass dense xeno structures in the same way as flamers +air_pass - whether to bypass non airtight atoms
circle_rangeReturns all atoms present in a circle around the center
circle_range_turfsReturns a list of turfs around a center based on RANGE_TURFS()
circle_viewReturns all atoms present in a circle around the center but uses view() instead of range() (Currently not used)
circle_view_turfsReturns a list of turfs around a center based on view()
closest_cardinal_dirIf given a diagonal dir, return a corresponding cardinal dir. East/west preferred
cmp_crafting_req_prioritySorts crafting recipe requirements before the crafting recipe is inserted into GLOB.crafting_recipes
color_hex2color_matrixTakes a hex color provided as string and returns the proper color matrix using hex2num.
color_matrix2color_hexwill drop all values not on the diagonal +returns a hex color
compare_listflat list comparison, checks if two lists have the same contents
considered_escapedChecks if the passed mind is considered "escaped".
create_empty_loadoutReturn a new empty loayout
create_glass_stylesConstructs a nested list of glass style singletons
create_ooc_announcement_divInserts a span styled message into an OOC alert style div
create_squadinitializes a new custom squad. all args mandatory
create_strippable_listCreates an assoc list of keys to /datum/strippable_item
cut_relative_directionTakes a screen_loc string and cut out any directions like NORTH or SOUTH
deadchat_broadcastDisplays a message in deadchat, sent by source. Source is not linkified, message is, to avoid stuff like character names to be linkified. +Automatically gives the class deadsay to the whole message (message + source)
debug_variableGet displayed variable in VV variable list
default_ui_stateThe sane defaults for a UI such as a computer or a machine.
delete_all_SS_and_recreate_masterDelete all existing SS to basically start over
deltimerDelete a timer
do_afterA delayed action with adjustable checks
do_eord_respawnGrabs a mob, if it's human, check uniform, if it has one just stops there, otherwise proceeds. if it's not human, creates a human mob and transfers the mind there. Proceeds to outfit either result with the loadout of various factions. +7% chance to be a separate rare strong or funny faction. Tiny additional 2% chance if that procs to be a deathsquad! +SOM and TG loadouts are handled differently, taking subtypes from the HvH loadout sets.
do_warningWarns nearby players, in any way or form, of the incoming ability and the range it will affect.
dviewVersion of view() which ignores darkness, because BYOND doesn't have it (I actually suggested it but it was tagged redundant, BUT HEARERS IS A T- /rant).
electrocute_mobDetermines how strong could be shock, deals damage to mob, uses power.
emissive_appearanceProduces a mutable appearance glued to the EMISSIVE_PLANE dyed to be the EMISSIVE_COLOR.
emissive_blockerProduces a mutable appearance glued to the EMISSIVE_PLANE dyed to be the EM_BLOCK_COLOR.
empulseEMP's everything in a specified radius, similar to an explosion
extend_line_to_radiusgets a line from a x and y, to the offset x and y of length radius
filter_fancy_listTakes a given fancy list and filters out a given filter text. +Args: +fancy_list - The list provided we filter. +filter - the text we use to filter fancy_list
flick_overlay_viewwrapper for flick_overlay(), flicks to everyone who can see the target atom
generate_and_hash_rsc_filegenerates a filename for a given asset. +like generate_asset_name(), except returns the rsc reference and the rsc file hash as well as the asset name (sans extension) +used so that certain asset files dont have to be hashed twice
generate_asset_nameGenerate a filename for this asset +The same asset will always lead to the same asset name +(Generated names do not include file extention.)
generate_coneGenerates a cone shape. Any other checks should be handled with the resulting list. Can work with up to 359 degrees +Variables: +center - where the cone begins, or center of a circle drawn with this +max_row_count - how many rows are checked +starting_row - from how far should the turfs start getting included in the cone +cone_width - big the angle of the cone is +cone_direction - at what angle should the cone be made, relative to the game board's orientation +blocked - whether the cone should take into consideration solid walls
generate_greyscale_weapons_datagenerates the static list data containig all printable mech equipment modules for greyscale
generate_true_coneGenerates a cone shape. Any other checks should be handled with the resulting list. Can work with up to 359 degrees +Variables: +center - where the cone begins, or center of a circle drawn with this +max_row_count - how many rows are checked +starting_row - from how far should the turfs start getting included in the cone. -1 required to include center turf due to byond +cone_width - big the angle of the cone is +cone_direction - at what angle should the cone be made, relative to the game board's orientation +blocked - whether the cone should take into consideration solid walls +bypass_window - whether it will go through transparent windows like lasers +projectile - whether PASS_PROJECTILE will be checked to ignore dense objects like projectiles +bypass_xeno - whether to bypass dense xeno structures like flamers +air_pass - whether to bypass non airtight atoms
get_adjacent_areasReturns a list of all areas that are adjacent to the center atom's area, clear the list of nulls at the end.
get_adjacent_open_areasReturns a list with all the adjacent areas by getting the adjacent open turfs
get_adjacent_open_turfsReturns a list with all the adjacent open turfs. Clears the list of nulls in the end.
get_allowed_instrument_idsGet all non admin_only instruments as a list of text ids.
get_areasTakes: Area type as text string or as typepath OR an instance of the area. Returns: A list of all areas of that type in the world.
get_areas_in_rangeReturns a list with the names of the areas around a center at a certain distance +Returns the local area if no distance is indicated +Returns an empty list if the center is null
get_atom_on_turfReturns the top-most atom sitting on the turf. +For example, using this on a disk, which is in a bag, on a mob, +will return the mob because it's on the turf.
get_bbox_of_atomsGet a bounding box of a list of atoms.
get_between_anglesreturns degrees between two angles
get_current_missionReturns the current mission, if its the campaign gamemode
get_dist_euclidianReturns the distance between two atoms
get_dist_manhattanReturns the manhattan distance between two atoms. Returns INFINITY if either are not on a turf, for BYOND get_dist() parity.
get_fancy_list_of_atom_typesGenerates a static list of 'fancy' atom types, or returns that if its already been generated.
get_fancy_list_of_datum_typesGenerates a static list of 'fancy' datum types, excluding everything atom, or returns that if its already been generated.
get_hearLike view but bypasses luminosity check
get_hearers_in_LOSReturns a list of movable atoms that are hearing sensitive in view_radius and line of sight to source +the majority of the work is passed off to the spatial grid if view_radius > 0 +because view() isnt a raycasting algorithm, this does not hold symmetry to it. something in view might not be hearable with this. +if you want that use get_hearers_in_view() - however thats significantly more expensive
get_hearers_in_viewreturns every hearaing movable in view to the turf of source not taking into account lighting +useful when you need to maintain always being able to hear something if a sound is emitted from it and you can see it (and youre in range). +otherwise this is just a more expensive version of get_hearers_in_LOS()
get_icon_dmi_pathgiven an icon object, dmi file path, or atom/image/mutable_appearance, attempts to find and return an associated dmi file path. +a weird quirk about dm is that /icon objects represent both compile-time or dynamic icons in the rsc, +but stringifying rsc references returns a dmi file path +ONLY if that icon represents a completely unchanged dmi file from when the game was compiled. +so if the given object is associated with an icon that was in the rsc when the game was compiled, this returns a path. otherwise it returns ""
get_item_stack_numberIf the item is not a stack, return 1. If it is a stack, return the stack size
get_item_stack_representation_amountIf the item representation is not a stack, return 1. Else, return the satck size
get_lineGet a list of turfs in a line from starting_atom to ending_atom.
get_mech_limbhelper that converts greyscale mech slots and types into typepaths
get_nearest_targetReturns the nearest target that has the right target flag
get_nested_locsthe 3 directions in the direction on the cone that will be checked +turfs that are checked whether the cone can continue further from them +Returns a list of all locations (except the area) the movable is within.
get_open_turf_in_dirReturns the open turf next to the center in a specific direction
get_pathReturns the most optimal path to get from starting atom to goal atom
get_random_reagent_idReturns a random reagent ID minus blacklisted reagents
get_screen_sizegets the current screen size as defined in config
get_sfxUsed to convert a SFX define into a .ogg so we can add some variance to sounds. If soundin is already a .ogg, we simply return it
get_turf_on_clickcatcherHelper proc that processes a clicked target, if the target is not black tiles, it will not change it. If they are it will return the turf of the black tiles. It will return null if the object is a screen object other than black tiles.
get_valid_screen_locationReturns a valid location to place a screen object without overflowing the viewport
get_view_centerReturn the center turf of the user's view
getpoisReturns a list of all items of interest with their name
give_admin_popupTries to give the target an admin popup. +If it fails, will send the error to the passed admin.
give_free_headsetWill give a headset corresponding to the user job to the user
handle_initial_squadA generic proc for handling the initial squad role assignment in SSjob
icon2base64Converts an icon to base64. Operates by putting the icon in the iconCache savefile, +exporting it as text, and then parsing the base64 from that. +(This relies on byond automatically storing icons in savefiles as base64)
icon2htmlthe dmi file path we attempt to return if the given object argument is associated with a stringifiable icon +if successful, this looks like "icons/path/to/dmi_file.dmi" +but they pass both isicon() and isfile() checks. theyre the easiest case since stringifying them gives us the path we want +generate an asset for the given icon or the icon of the given appearance for [thing], and send it to any clients in target. +Arguments:
icon_existsChecks if the given iconstate exists in the given file, caching the result. Setting scream to TRUE will print a stack trace ONCE.
inLineOfSightCalculate if two atoms are in sight, returns TRUE or FALSE
in_view_rangeReturns TRUE if the atom is in the user view range.
init_alcohol_containers////////////////////////////////////////////Alchohol bottles! -Agouri ////////////////////////// +Initializes GLOB.alcohol_containers, only containers that actually have reagents are added to the list.
init_campaign_asset_iconsPopulates campaign_asset_icons
init_campaign_loadout_item_iconsPopulates campaign_loadout_item_icons
init_campaign_mission_iconsPopulates campaign_mission_icons
init_campaign_perk_iconsPopulates campaign_perk_icons
init_crafting_recipesInits crafting recipe lists
init_crafting_recipes_atomsInits atoms used in crafting recipes
init_emote_keybindsCreate a keybind for each datum/emote
init_ethnicitiesEthnicity - Initialise all /datum/ethnicity into a list indexed by ethnicity name
init_keybindingsCreates and sorts all the keybinding datums
init_minimap_iconsPopulates minimap_icons
init_quick_loadoutsThe list is shared across all quick vendors, but they will only display the tabs specified by the vendor, and only show the loadouts with jobs that match the displayed tabs.
init_sprite_accessoriesInitial Building
init_surgerySurgery Steps - Initialize all /datum/surgery_step into a list
is_handful_buyableReturn TRUE if this handful should be buyable, aka if it's corresponding aka box is in a linked vendor
is_ic_filteredGiven a text, will return what word is on the IC filter, with the reason. +Returns null if the message is OK.
is_ic_filtered_for_bombvestsGiven a text, will return what word is on the IC filter, or bomb vest filter, with the reason. +Returns null if the message is OK.
is_ooc_filteredGiven a text, will return what word is on the OOC filter, with the reason. +Returns null if the message is OK.
is_soft_ic_filteredGiven a text, will return what word is on the soft IC filter, with the reason. +Returns null if the message is OK.
is_soft_ic_filtered_for_bombvestsGiven a text, will return what word is on the soft IC filter, ignoring words allowed on the PDA, with the reason. +Returns null if the message is OK.
is_soft_ooc_filteredGiven a text, will return that word is on the soft OOC filter, with the reason. +Returns null if the message is OK.
is_valid_dmi_filegiven a text string, returns whether it is a valid dmi icons folder path
is_valid_for_resin_structureChecks all conditions if a spot is valid for construction , will return TRUE
is_valid_srcCheck if a datum has not been deleted and is a valid source
item2representation_typeReturn wich type of item_representation should representate any item_type
jatum_deserializeAttempt to create a value from a JATUN JSON.
jatum_serializeAttempt to serialize a given value to the JATUM format.
json_deserialize_datumConvert a list of json to datum
json_serialize_datumConvert a datum into a json blob
line_of_sightChecks if ending atom is viewable by starting atom, uses bresenham line algorithm but checks some extra tiles on a diagonal next tile
list_clear_nullsRemoves any null entries from the list +Returns TRUE if the list had nulls, FALSE otherwise
load_mapShortcut function to parse a map and apply it to the world.
load_poll_dataLoads all current and future server polls and their options to store both as datums.
log_accessLogging for logging in & out of the game, with error messages.
log_adminGeneral logging for admin actions
log_admin_privateGeneral logging for admin actions
log_adminsayLogging for AdminSay (ASAY) messages
log_assetLogging for loading and caching assets
log_attackGeneric attack logging
log_bomberLogging for bombs detonating
log_combatLog a combat message in the attack log
log_configLogging for config errors +Rarely gets called; just here in case the config breaks.
log_directed_talkHelper for logging of messages with only one sender and receiver (i.e. mind links)
log_dsayLogging for DeadchatSay (DSAY) messages
log_emoteLogging for emotes
log_ffattackGeneric attack logging for friendly fire
log_filterLogs to the filter log with the given message, match, and scope
log_gameLogging for generic/unsorted game messages
log_hivemindLogging for hivemind messages
log_job_debugLogging for job slot changes
log_loocLogging for messages sent in LOOC
log_manifestLogging for player manifest (ckey, name, job, special role, roundstart/latejoin)
log_mappingLogging for mapping errors
log_mechaLogging for mech actions
log_mentorsayLogging for MentorSay (MSAY) messages
log_minimap_drawingLogging for drawing on minimap
log_moocLogging for messages sent in MOOC
log_oocLogging for messages sent in OOC
log_paperLogging for writing made on paper
log_prayerLogging for prayed messages
log_qdelLogging for hard deletes
log_sayLogging for generic spoken messages
log_speech_indicatorsLogging for speech indicators.
log_sqlLogging for DB errors
log_telecommsLogging for speech taking place over comms, as well as tcomms equipment
log_tguiAppends a tgui-related log entry. All arguments are optional.
log_toolLogging for tool usage
log_topicLogging for world/Topic
log_voteLogging for OOC votes
log_whisperLogging for whispered messages
log_worldLog to both DD and the logfile.
log_xoocLogging for messages sent in XOOC
make_datum_reference_listsThese should be replaced with proper _INIT macros
make_types_fancyTurns a list of typepaths into 'fancy' titles for admins.
md5asfileSave file as an external file then md5 it. +Used because md5ing files stored in the rsc sometimes gives incorrect md5 results.
md5filepathReturns the md5 of a file at a given path.
message_to_htmlMessage-related procs
minor_announceMake a minor announcement to a target
movespeed_data_null_checkChecks if a move speed modifier is valid and not missing any data
offset_to_screen_locTakes a list in the form (x_offset, y_offset) +And converts it to a screen loc string +Accepts an optional view string/size to force the screen_loc around, so it can't go out of scope
overlays2textConverts an overlay list into text for debug printing +Of note: overlays aren't actually mutable appearances, they're just appearances +Don't have access to that type tho, so this is the best you're gonna get
params2screenpixelConverts a screen loc param to a x,y coordinate pixel on the screen
pick_weight_recursiveLike pickweight, but allowing for nested lists.
pickweightPicks a random element from a list based on a weighting system. +For example, given the following list: +A = 6, B = 3, C = 1, D = 0 +A would have a 60% chance of being picked, +B would have a 30% chance of being picked, +C would have a 10% chance of being picked, +and D would have a 0% chance of being picked. +You should only pass integers in.
play_vox_wordplay vox words for mobs on our zlevel
playsound
playsound_zPlay sound for all online mobs on a given Z-level. Good for ambient sounds.
playsound_z_humansPlay a sound for all cliented humans and ghosts by zlevel
playsound_z_xenosPlay a sound for all cliented xenos and ghosts by hive on a zlevel
pretty_string_from_reagent_listConvert reagent list to a printable string for logging etc
print_command_reportSpawns a paper at each communications printer
priority_announceMake a priority announcement to a target
propagate_networkremove the old powernet and replace it with a new one throughout the network.
qdelShould be treated as a replacement for the 'del' keyword.
random_tts_voicereturns a random tts voice based on gender. Assumes theres 30 voices, not actually how many there are but yolo. todo should return based on gender but we need voice tags for that
recoil_cameraMakes a recoil-like animation on the mob camera.
recover_all_SS_and_recreate_masterRecreate all SSs which will still cause data survive due to Recover(), the new Master will then find and take them from global.vars
reject_bad_textReturns the text if properly formatted, or null else.
remove_image_from_clientRemoves an image from a client's .images. Useful as a callback.
remove_images_from_clientsRemoves an image from a list of client's images
remove_verbhandles removing verb and sending it to browser to update, use this for removing verbs
return_generator_argsreturns the arguments given to a generator and manually extracts them from the internal byond object +returns:
return_typenamesSplits the type with parenthesis between each word so admins visually tell it is a typepath.
rustg_get_versionGets the version of rust_g
rustg_unix_timestampReturns the timestamp as a string
sanitizeRuns byond's html encoding sanitization proc, after replacing new-lines and tabs for the # character.
sanitize_inlist_ttsa wrapper with snowflake handling for tts
sanitize_is_full_emote_listSanitize the custom emote list
sanitize_islistMakes sure value is a list +Args: +value - The list we're ensuring is actually a list +default - The set default that will be given as fallback. +required_amount - The required length of value for it to be valid, otherwise will continue to check for a fallback default. +check_valid - If we should check if the values are all in the list of possible inputs +possible_input_list - The list of possible valid inputs this list can hold, only gets checked if check_valid is TRUE
screen_loc_to_offsetTakes a screen loc string in the format +"+-left-offset:+-pixel,+-bottom-offset:+-pixel" +Where the :pixel is optional, and returns +A list in the format (x_offset, y_offset) +We require context to get info out of screen locs that contain relative info, so NORTH, SOUTH, etc
semver_to_listConverts a semver string into a list of numbers
send2adminchatSends a message to TGS admin chat channels.
send2chatSends a message to TGS chat channels.
send_ooc_announcementSends a div formatted chat box announcement
set_sentry_ignore_ListCreates the list of atoms that will be ignored by sentry target pathing
set_z_lightingModifies the lighting for a z_level
siunitFormats a number to human readable form with the appropriate SI unit.
slurMakes you speak like you're drunk +todo remove, deprecated
sort_listsort any value in a list
sort_namesuses sort_list() but uses the var's name specifically. This should probably be using mergeAtom() instead
starsConvert random parts of a passed in message to stars
start_logship both attack logs and victim logs to the end of round attack.log just to ensure we don't lose information
string_listCaches lists with non-numeric stringify-able values (text or typepath).
strip_htmlRuns STRIP_HTML_SIMPLE and sanitize.
stripped_inputUsed to get a properly sanitized input. Returns null if cancel is pressed.
stripped_multiline_inputUsed to get a properly sanitized input in a larger box. Works very similarly to stripped_input.
stutterAdds stuttering to the message passed in, todo remove, deprecated
tgalertDEPRECATED: USE tgui_alert(...) INSTEAD
tgui_TopicMiddleware for /client/Topic.
tgui_alertCreates a TGUI alert window and returns the user's response.
tgui_input_checkboxes
tgui_input_listCreates a TGUI input list window and returns the user's response.
tgui_input_numberCreates a TGUI window with a number input. Returns the user's response as num | null.
tgui_input_textCreates a TGUI window with a text input. Returns the user's response.
timeleftGet the remaining deciseconds on a timer
to_chatSends the message to the recipient (target).
to_chat_immediateCircumvents the message queue and sends the message +to the recipient (target) as soon as possible.
turf_block_checkReturn TRUE if we have a block, return FALSE otherwise
ui_status_only_livingReturns a UI status such that the dead will be able to watch, but not interact.
ui_status_silicon_has_accessReturns a UI status such that silicons will be able to interact with whatever +they would have access to if this was a machine. For example, AIs can +interact if there's cameras with wireless control is enabled.
ui_status_user_has_free_handsReturns a UI status such that those without blocked hands will be able to interact, +but everyone else can only watch.
ui_status_user_is_abledReturns a UI status such that users with debilitating conditions, such as +being dead or not having power for silicons, will not be able to interact. +Being dead will disable UI, being incapacitated will continue updating it, +and anything else will make it interactive.
ui_status_user_is_adjacentReturns a UI status such that users adjacent to source will be able to interact, +far away users will be able to see, and anyone farther won't see anything. +Dead users will receive updates no matter what, though you likely want to add +a [ui_status_only_living] check for finer observer interactions.
ui_status_user_is_advanced_tool_userReturns a UI status such that advanced tool users will be able to interact, +but everyone else can only watch.
ui_status_user_is_conscious_and_lying_downReturns UI_INTERACTIVE if the user is conscious and lying down. +Returns UI_UPDATE otherwise.
ui_status_user_strictly_adjacentReturn UI_INTERACTIVE if the user is strictly adjacent to the target atom, whether they can see it or not. +Return UI_CLOSE otherwise.
unique_listReturn a list with no duplicate entries
unique_list_in_placesame as unique_list, but returns nothing and acts on list in place (also handles associated values properly)
url2htmlloaderReturn html to load a url. +for use inside of browse() calls to html assets that might be loaded on a cdn.
valid_build_directionChecks whether the target turf is in a valid state to accept a directional construction +such as windows or railings.
view_to_pixelsTakes a string or num view, and converts it to pixel width/height in a list(pixel_width, pixel_height)
weight_class_dataReturns an assoc list of WEIGHT CLASS TEXT = DESCRIPTION based on the arg you provide. +Used by examine tags for giving each weight class a special description.
weight_class_to_textReturns a string based on the weight class define used as argument.
xeno_messageSend a message to all xenos. Force forces the message whether or not the hivemind is intact. Target is an atom that is pointed out to the hive. Filter list is a list of xenos we don't message.
+

Var Details

Failsafe + + + + +

+

Failsafe

+

Pretty much pokes the MC to make sure it's still alive.

Master + + + + +

+

StonedMC

+

Designed to properly split up a given tick among subsystems +Note: if you read parts of this code and think "why is it doing it that way" +Odds are, there is a reason

SSambience + + + + +

+

The subsystem used to play ambience to users every now and then, makes them real excited.

SSasset_loading + + + + +

+

Allows us to lazyload asset datums +Anything inserted here will fully load if directly gotten +So this just serves to remove the requirement to load assets fully during init

SSaura + + + + +

+

Tracks aura emitters and tells them to pulse. Also used for creating new ones.

SSautomatedfire + + + + +

+ Autofire Subsystem +

Maintains a timer-like system to handle autofiring. Much of this code is modeled +after or adapted from the runechat subsytem.

+

Note that this has the same structure for storing and queueing shooter component as the timer subsystem does +for handling timers: the bucket_list is a list of autofire component, each of which are the head +of a linked list. Any given index in bucket_list could be null, representing an empty bucket.

+

Doesn't support any event scheduled for more than 100 ticks in the future, as it has no secondary queue by design

SSearly_assets + + + + +

+

Initializes any assets that need to be loaded ASAP, before the atoms SS initializes.

SSminimaps + + + + +

+ Minimaps subsystem +

Handles updating and handling of the by-zlevel minimaps

+

Minimaps are a low priority subsystem that fires relatively often +the Initialize proc for this subsystem draws the maps as one of the last initializing subsystems

+

Fire() for this subsystem doens't actually updates anything, and purely just reapplies the overlays that it already tracks +actual updating of marker locations is handled by [/datum/controller/subsystem/minimaps/proc/on_move] +and zlevel changes are handled in /datum/controller/subsystem/minimaps/proc/on_z_change +tracking of the actual atoms you want to be drawn on is done by means of datums holding info pertaining to them with /datum/hud_displays

+

Todo +*: add fetching of images to allow stuff like adding/removing xeno crowns easily +*: add a system for viscontents so things like minimap draw are more responsive

SSspatial_grid + + + + +

+ Spatial Grid +

a gamewide grid of spatial_grid_cell datums, each "covering" SPATIAL_GRID_CELLSIZE ^ 2 turfs. +each spatial_grid_cell datum stores information about what is inside its covered area, so that searches through that area dont have to literally search +through all turfs themselves to know what is within it since view() calls are expensive, and so is iterating through stuff you dont want. +this allows you to only go through lists of what you want very cheaply.

+

you can also register to objects entering and leaving a spatial cell, this allows you to do things like stay idle until a player enters, so you wont +have to use expensive view() calls or iteratite over the global list of players and call get_dist() on every one. which is fineish for a few things, but is +k * n operations for k objects iterating through n players.

+

currently this system is only designed for searching for relatively uncommon things, small subsets of /atom/movable. +dont add stupid shit to the cells please, keep the information that the cells store to things that need to be searched for often

+

as of right now this system operates on a subset of the important_recursive_contents list for atom/movable, specifically +RECURSIVE_CONTENTS_HEARING_SENSITIVE and RECURSIVE_CONTENTS_CLIENT_MOBS because both are those are both 1. important and 2. commonly searched for

SStgui + + + + +

+

tgui subsystem

+

Contains all tgui state and subsystem code.

SStimer + + + + +

+ Timer Subsystem +

Handles creation, callbacks, and destruction of timed events.

+

It is important to understand the buckets used in the timer subsystem are just a series of doubly-linked +lists. The object at a given index in bucket_list is a /datum/timedevent, the head of a list, which has prev +and next references for the respective elements in that bucket's list.

SStutorials + + + + +

+

Namespace for housing code relating to giving contextual tutorials to users.

Proc Details

DirBlocked +

+

Checks if moving in a direction is blocked

Gibberish +

+

Turn text into complete gibberish!

+

text is the inputted message, replace_characters will cause original letters to be replaced and chance are the odds that a character gets modified.

HandleUserlessProcCall +

+

Handles a userless proccall, used by circuits.

+

Arguments:

+

HandleUserlessSDQL +

+

Handles a userless sdql, used by circuits and tgs.

+

Arguments:

+

LeftAndRightOfDir +

+

Returns the left and right dir of the input dir, used for AI stutter step while attacking

LinkBlocked +

+

Returns true if the path from A to B is blocked. Checks both paths where the direction is diagonal +Variables: +bypass_window - check for PASS_GLASS - laser like behavior +projectile - check for PASS_PROJECTILE - bullet like behavior +bypass_xeno - whether to bypass dense xeno structures like flamers +air_pass - whether to bypass non airtight atoms

TurfBlockedNonWindow +

+

Returns true if any object on a turf is both dense and not a window

WEAKREF +

+

Creates a weakref to the given input. +See /datum/weakref's documentation for more information.

WrapAdminProcCall +

+

Wrapper for proccalls where the datum is flagged as vareditted

___TraitAdd +

+

DO NOT USE ___TraitAdd OR ___TraitRemove as a replacement for ADD_TRAIT / REMOVE_TRAIT defines. To be used explicitly for callback.

___TraitRemove +

+

DO NOT USE ___TraitAdd OR ___TraitRemove as a replacement for ADD_TRAIT / REMOVE_TRAIT defines. To be used explicitly for callback.

__check_serialization_semver +

+

Checks if the actual semver is equal or later than the wanted semver +Must be passed as TEXT; you're probably looking for CHECK_SERIALIZATION_SEMVER, look right above

_addtimer +

+

Create a new timer and insert it in the queue. +You should not call this directly, and should instead use the addtimer macro, which includes source information.

+

Arguments:

+

add_keybinding +

+

Adds an instanced keybinding to the global tracker

add_verb +

+

handles adding verbs and updating the stat panel browser

+

pass the verb type path to this instead of adding it directly to verbs so the statpanel can update +Arguments:

+

adminscrub +

+

Runs STRIP_HTML_SIMPLE and byond's sanitization proc.

alone_in_area +

+

Checks if the mob provided (must_be_alone) is alone in an area

angle_to_cardinal_dir +

+

Returns one of the 4 cardinal directions based on an angle

angle_to_dir +

+

Returns one of the 8 directions based on an angle

armored_init_guntypes +

+

im a lazy bum who cant use initial on lists, so we just load everything into a list

assemble_alert +

+

Design a faction alert. Returns a string.

+

Arguments

+

assertion_message +

+

Used by ASSERT to add a more detailed context to CRASH messages

assoc_to_keys +

+

Turns an associative list into a flat list of keys

auxtools_expr_stub +

+

auxtools expression evaluation

behemoth_area_attack +

+

Checks for any atoms caught in the attack's range, and applies several effects based on the atom's type.

+

bitfield_to_list +

+

Converts a bitfield to a list of numbers (or words if a wordlist is provided)

bullet_burst +

+

Fires a list of projectile objects in a circle around an atom +Arguments:

+

buy_category +

+

Return true if you can buy this category, and also change the loadout seller buying bitfield

buy_item_in_vendor +

+

Return true if the item was found in a linked vendor and successfully bought

buy_stack +

+

Check if that stack is buyable in a points vendor (currently, only metal, sandbags and plasteel)

callback_select +

+

Runs a list of callbacks asyncronously, returning only when all have finished

+

Callbacks can be repeated, to call it multiple times

+

Arguments:

+

can_buy_category +

+

Will check if the selected category can be bought according to the category choices left

can_see_through +

+

Returns if a turf can be seen from another turf.

can_sell_human_body +

+

Return TRUE if the relation between the two factions are bad enough that a bounty is on the human_to_sell head

center_image +

+

Center's an image. +Requires: +The Image +The x dimension of the icon file used in the image +The y dimension of the icon file used in the image +eg: center_image(image_to_center, 32,32) +eg2: center_image(image_to_center, 96,96)

cheap_get_atom +

+

This proc attempts to get an instance of an atom type within distance, with center as the center. +Arguments

+

cheap_get_humans_near +

+

Returns a list of humans via get_dist and same z level method, very cheap compared to range()

cheap_get_living_near +

+

Returns a list of mobs/living via get_dist and same z level method, very cheap compared to range()

cheap_get_mechs_near +

+

Returns a list of mechs via get_dist and same z level method, very cheap compared to range()

cheap_get_tanks_near +

+

Returns a list of vehicles via get_dist and same z level method, very cheap compared to range()

cheap_get_xenos_near +

+

Returns a list of xenos via get_dist and same z level method, very cheap compared to range()

check_admin_pings +

+

Checks a given message to see if any of the words contain an active admin's ckey with an @ before it

+

Returns nothing if no pings are found, otherwise returns an associative list with ckey -> client +Also modifies msg to underline the pings, then stores them in the key ADMINSAY_PING_UNDERLINE_NAME_INDEX for returning

+

Arguments:

+

check_path +

+

Draws a line between two atoms, then checks if the path is blocked. +Variables: +start -start point of the path +end - end point of the path +bypass_window - whether it will go through transparent windows in the same way as lasers +projectile - whether PASS_PROJECTILE will be checked to ignore dense objects in the same way as projectiles +bypass_xeno - whether to bypass dense xeno structures in the same way as flamers +air_pass - whether to bypass non airtight atoms

circle_range +

+

Returns all atoms present in a circle around the center

circle_range_turfs +

+

Returns a list of turfs around a center based on RANGE_TURFS()

circle_view +

+

Returns all atoms present in a circle around the center but uses view() instead of range() (Currently not used)

circle_view_turfs +

+

Returns a list of turfs around a center based on view()

closest_cardinal_dir +

+

If given a diagonal dir, return a corresponding cardinal dir. East/west preferred

cmp_crafting_req_priority +

+

Sorts crafting recipe requirements before the crafting recipe is inserted into GLOB.crafting_recipes

+

Prioritises /datum/reagent to ensure reagent requirements are always processed first when crafting. +This prevents any reagent_containers from being consumed before the reagents they contain, which can +lead to runtimes and item duplication when it happens.

color_hex2color_matrix +

+

Takes a hex color provided as string and returns the proper color matrix using hex2num.

color_matrix2color_hex +

+

will drop all values not on the diagonal +returns a hex color

compare_list +

+

flat list comparison, checks if two lists have the same contents

considered_escaped +

+

Checks if the passed mind is considered "escaped".

+

Escaped mobs are used to check certain antag objectives / results.

+

Escaped includes minds with alive, non-exiled mobs generally.

create_empty_loadout +

+

Return a new empty loayout

create_glass_styles +

+

Constructs a nested list of glass style singletons

+

List format:

+ +

Where

+ +

Returns the list.

create_ooc_announcement_div +

+

Inserts a span styled message into an OOC alert style div

+

Arguments

+

create_squad +

+

initializes a new custom squad. all args mandatory

create_strippable_list +

+

Creates an assoc list of keys to /datum/strippable_item

cut_relative_direction +

+

Takes a screen_loc string and cut out any directions like NORTH or SOUTH

deadchat_broadcast +

+

Displays a message in deadchat, sent by source. Source is not linkified, message is, to avoid stuff like character names to be linkified. +Automatically gives the class deadsay to the whole message (message + source)

debug_variable +

+

Get displayed variable in VV variable list

default_ui_state +

+

The sane defaults for a UI such as a computer or a machine.

delete_all_SS_and_recreate_master +

+

Delete all existing SS to basically start over

deltimer +

+

Delete a timer

+

Arguments:

+

do_after +

+

A delayed action with adjustable checks

do_eord_respawn +

+

Grabs a mob, if it's human, check uniform, if it has one just stops there, otherwise proceeds. if it's not human, creates a human mob and transfers the mind there. Proceeds to outfit either result with the loadout of various factions. +7% chance to be a separate rare strong or funny faction. Tiny additional 2% chance if that procs to be a deathsquad! +SOM and TG loadouts are handled differently, taking subtypes from the HvH loadout sets.

do_warning +

+

Warns nearby players, in any way or form, of the incoming ability and the range it will affect.

dview +

+

Version of view() which ignores darkness, because BYOND doesn't have it (I actually suggested it but it was tagged redundant, BUT HEARERS IS A T- /rant).

electrocute_mob +

+

Determines how strong could be shock, deals damage to mob, uses power.

+

Arguments:

+

emissive_appearance +

+

Produces a mutable appearance glued to the EMISSIVE_PLANE dyed to be the EMISSIVE_COLOR.

emissive_blocker +

+

Produces a mutable appearance glued to the EMISSIVE_PLANE dyed to be the EM_BLOCK_COLOR.

empulse +

+

EMP's everything in a specified radius, similar to an explosion

extend_line_to_radius +

+

gets a line from a x and y, to the offset x and y of length radius

filter_fancy_list +

+

Takes a given fancy list and filters out a given filter text. +Args: +fancy_list - The list provided we filter. +filter - the text we use to filter fancy_list

flick_overlay_view +

+

wrapper for flick_overlay(), flicks to everyone who can see the target atom

generate_and_hash_rsc_file +

+

generates a filename for a given asset. +like generate_asset_name(), except returns the rsc reference and the rsc file hash as well as the asset name (sans extension) +used so that certain asset files dont have to be hashed twice

generate_asset_name +

+

Generate a filename for this asset +The same asset will always lead to the same asset name +(Generated names do not include file extention.)

generate_cone +

+

Generates a cone shape. Any other checks should be handled with the resulting list. Can work with up to 359 degrees +Variables: +center - where the cone begins, or center of a circle drawn with this +max_row_count - how many rows are checked +starting_row - from how far should the turfs start getting included in the cone +cone_width - big the angle of the cone is +cone_direction - at what angle should the cone be made, relative to the game board's orientation +blocked - whether the cone should take into consideration solid walls

generate_greyscale_weapons_data +

+

generates the static list data containig all printable mech equipment modules for greyscale

generate_true_cone +

+

Generates a cone shape. Any other checks should be handled with the resulting list. Can work with up to 359 degrees +Variables: +center - where the cone begins, or center of a circle drawn with this +max_row_count - how many rows are checked +starting_row - from how far should the turfs start getting included in the cone. -1 required to include center turf due to byond +cone_width - big the angle of the cone is +cone_direction - at what angle should the cone be made, relative to the game board's orientation +blocked - whether the cone should take into consideration solid walls +bypass_window - whether it will go through transparent windows like lasers +projectile - whether PASS_PROJECTILE will be checked to ignore dense objects like projectiles +bypass_xeno - whether to bypass dense xeno structures like flamers +air_pass - whether to bypass non airtight atoms

get_adjacent_areas +

+

Returns a list of all areas that are adjacent to the center atom's area, clear the list of nulls at the end.

get_adjacent_open_areas +

+

Returns a list with all the adjacent areas by getting the adjacent open turfs

get_adjacent_open_turfs +

+

Returns a list with all the adjacent open turfs. Clears the list of nulls in the end.

get_allowed_instrument_ids +

+

Get all non admin_only instruments as a list of text ids.

get_areas +

+

Takes: Area type as text string or as typepath OR an instance of the area. Returns: A list of all areas of that type in the world.

get_areas_in_range +

+

Returns a list with the names of the areas around a center at a certain distance +Returns the local area if no distance is indicated +Returns an empty list if the center is null

get_atom_on_turf +

+

Returns the top-most atom sitting on the turf. +For example, using this on a disk, which is in a bag, on a mob, +will return the mob because it's on the turf.

+

Arguments

+

get_bbox_of_atoms +

+

Get a bounding box of a list of atoms.

+

Arguments:

+ +

Returns: list(x1, y1, x2, y2)

get_between_angles +

+

returns degrees between two angles

get_current_mission +

+

Returns the current mission, if its the campaign gamemode

get_dist_euclidian +

+

Returns the distance between two atoms

get_dist_manhattan +

+

Returns the manhattan distance between two atoms. Returns INFINITY if either are not on a turf, for BYOND get_dist() parity.

get_fancy_list_of_atom_types +

+

Generates a static list of 'fancy' atom types, or returns that if its already been generated.

get_fancy_list_of_datum_types +

+

Generates a static list of 'fancy' datum types, excluding everything atom, or returns that if its already been generated.

get_hear +

+

Like view but bypasses luminosity check

get_hearers_in_LOS +

+

Returns a list of movable atoms that are hearing sensitive in view_radius and line of sight to source +the majority of the work is passed off to the spatial grid if view_radius > 0 +because view() isnt a raycasting algorithm, this does not hold symmetry to it. something in view might not be hearable with this. +if you want that use get_hearers_in_view() - however thats significantly more expensive

+

get_hearers_in_view +

+

returns every hearaing movable in view to the turf of source not taking into account lighting +useful when you need to maintain always being able to hear something if a sound is emitted from it and you can see it (and youre in range). +otherwise this is just a more expensive version of get_hearers_in_LOS()

+

get_icon_dmi_path +

+

given an icon object, dmi file path, or atom/image/mutable_appearance, attempts to find and return an associated dmi file path. +a weird quirk about dm is that /icon objects represent both compile-time or dynamic icons in the rsc, +but stringifying rsc references returns a dmi file path +ONLY if that icon represents a completely unchanged dmi file from when the game was compiled. +so if the given object is associated with an icon that was in the rsc when the game was compiled, this returns a path. otherwise it returns ""

get_item_stack_number +

+

If the item is not a stack, return 1. If it is a stack, return the stack size

get_item_stack_representation_amount +

+

If the item representation is not a stack, return 1. Else, return the satck size

get_line +

+

Get a list of turfs in a line from starting_atom to ending_atom.

+

Uses the ultra-fast Bresenham Line-Drawing Algorithm.

get_mech_limb +

+

helper that converts greyscale mech slots and types into typepaths

get_nearest_target +

+

Returns the nearest target that has the right target flag

get_nested_locs +

+

the 3 directions in the direction on the cone that will be checked +turfs that are checked whether the cone can continue further from them +Returns a list of all locations (except the area) the movable is within.

get_open_turf_in_dir +

+

Returns the open turf next to the center in a specific direction

get_path +

+

Returns the most optimal path to get from starting atom to goal atom

get_random_reagent_id +

+

Returns a random reagent ID minus blacklisted reagents

get_screen_size +

+

gets the current screen size as defined in config

get_sfx +

+

Used to convert a SFX define into a .ogg so we can add some variance to sounds. If soundin is already a .ogg, we simply return it

get_turf_on_clickcatcher +

+

Helper proc that processes a clicked target, if the target is not black tiles, it will not change it. If they are it will return the turf of the black tiles. It will return null if the object is a screen object other than black tiles.

get_valid_screen_location +

+

Returns a valid location to place a screen object without overflowing the viewport

+ +

Returns a screen loc representing the valid location

get_view_center +

+

Return the center turf of the user's view

getpois +

+

Returns a list of all items of interest with their name

give_admin_popup +

+

Tries to give the target an admin popup. +If it fails, will send the error to the passed admin.

give_free_headset +

+

Will give a headset corresponding to the user job to the user

handle_initial_squad +

+

A generic proc for handling the initial squad role assignment in SSjob

icon2base64 +

+

Converts an icon to base64. Operates by putting the icon in the iconCache savefile, +exporting it as text, and then parsing the base64 from that. +(This relies on byond automatically storing icons in savefiles as base64)

icon2html +

+

the dmi file path we attempt to return if the given object argument is associated with a stringifiable icon +if successful, this looks like "icons/path/to/dmi_file.dmi" +but they pass both isicon() and isfile() checks. theyre the easiest case since stringifying them gives us the path we want +generate an asset for the given icon or the icon of the given appearance for [thing], and send it to any clients in target. +Arguments:

+

icon_exists +

+

Checks if the given iconstate exists in the given file, caching the result. Setting scream to TRUE will print a stack trace ONCE.

inLineOfSight +

+

Calculate if two atoms are in sight, returns TRUE or FALSE

in_view_range +

+

Returns TRUE if the atom is in the user view range.

init_alcohol_containers +

+

////////////////////////////////////////////Alchohol bottles! -Agouri ////////////////////////// +Initializes GLOB.alcohol_containers, only containers that actually have reagents are added to the list.

init_campaign_asset_icons +

+

Populates campaign_asset_icons

init_campaign_loadout_item_icons +

+

Populates campaign_loadout_item_icons

init_campaign_mission_icons +

+

Populates campaign_mission_icons

init_campaign_perk_icons +

+

Populates campaign_perk_icons

init_crafting_recipes +

+

Inits crafting recipe lists

init_crafting_recipes_atoms +

+

Inits atoms used in crafting recipes

init_emote_keybinds +

+

Create a keybind for each datum/emote

init_ethnicities +

+

Ethnicity - Initialise all /datum/ethnicity into a list indexed by ethnicity name

init_keybindings +

+

Creates and sorts all the keybinding datums

init_minimap_icons +

+

Populates minimap_icons

init_quick_loadouts +

+

The list is shared across all quick vendors, but they will only display the tabs specified by the vendor, and only show the loadouts with jobs that match the displayed tabs.

init_sprite_accessories +

+

Initial Building

init_surgery +

+

Surgery Steps - Initialize all /datum/surgery_step into a list

is_handful_buyable +

+

Return TRUE if this handful should be buyable, aka if it's corresponding aka box is in a linked vendor

is_ic_filtered +

+

Given a text, will return what word is on the IC filter, with the reason. +Returns null if the message is OK.

is_ic_filtered_for_bombvests +

+

Given a text, will return what word is on the IC filter, or bomb vest filter, with the reason. +Returns null if the message is OK.

is_ooc_filtered +

+

Given a text, will return what word is on the OOC filter, with the reason. +Returns null if the message is OK.

is_soft_ic_filtered +

+

Given a text, will return what word is on the soft IC filter, with the reason. +Returns null if the message is OK.

is_soft_ic_filtered_for_bombvests +

+

Given a text, will return what word is on the soft IC filter, ignoring words allowed on the PDA, with the reason. +Returns null if the message is OK.

is_soft_ooc_filtered +

+

Given a text, will return that word is on the soft OOC filter, with the reason. +Returns null if the message is OK.

is_valid_dmi_file +

+

given a text string, returns whether it is a valid dmi icons folder path

is_valid_for_resin_structure +

+

Checks all conditions if a spot is valid for construction , will return TRUE

is_valid_src +

+

Check if a datum has not been deleted and is a valid source

item2representation_type +

+

Return wich type of item_representation should representate any item_type

jatum_deserialize +

+

Attempt to create a value from a JATUN JSON.

+

jatum_serialize +

+

Attempt to serialize a given value to the JATUM format.

+

json_deserialize_datum +

+

Convert a list of json to datum

json_serialize_datum +

+

Convert a datum into a json blob

line_of_sight +

+

Checks if ending atom is viewable by starting atom, uses bresenham line algorithm but checks some extra tiles on a diagonal next tile

list_clear_nulls +

+

Removes any null entries from the list +Returns TRUE if the list had nulls, FALSE otherwise

load_map +

+

Shortcut function to parse a map and apply it to the world.

+

load_poll_data +

+

Loads all current and future server polls and their options to store both as datums.

log_access +

+

Logging for logging in & out of the game, with error messages.

log_admin +

+

General logging for admin actions

log_admin_private +

+

General logging for admin actions

log_adminsay +

+

Logging for AdminSay (ASAY) messages

log_asset +

+

Logging for loading and caching assets

log_attack +

+

Generic attack logging

log_bomber +

+

Logging for bombs detonating

log_combat +

+

Log a combat message in the attack log

+

Arguments:

+

log_config +

+

Logging for config errors +Rarely gets called; just here in case the config breaks.

log_directed_talk +

+

Helper for logging of messages with only one sender and receiver (i.e. mind links)

log_dsay +

+

Logging for DeadchatSay (DSAY) messages

log_emote +

+

Logging for emotes

log_ffattack +

+

Generic attack logging for friendly fire

log_filter +

+

Logs to the filter log with the given message, match, and scope

log_game +

+

Logging for generic/unsorted game messages

log_hivemind +

+

Logging for hivemind messages

log_job_debug +

+

Logging for job slot changes

log_looc +

+

Logging for messages sent in LOOC

log_manifest +

+

Logging for player manifest (ckey, name, job, special role, roundstart/latejoin)

log_mapping +

+

Logging for mapping errors

log_mecha +

+

Logging for mech actions

log_mentorsay +

+

Logging for MentorSay (MSAY) messages

log_minimap_drawing +

+

Logging for drawing on minimap

log_mooc +

+

Logging for messages sent in MOOC

log_ooc +

+

Logging for messages sent in OOC

log_paper +

+

Logging for writing made on paper

log_prayer +

+

Logging for prayed messages

log_qdel +

+

Logging for hard deletes

log_say +

+

Logging for generic spoken messages

log_speech_indicators +

+

Logging for speech indicators.

log_sql +

+

Logging for DB errors

log_telecomms +

+

Logging for speech taking place over comms, as well as tcomms equipment

log_tgui +

+

Appends a tgui-related log entry. All arguments are optional.

log_tool +

+

Logging for tool usage

log_topic +

+

Logging for world/Topic

log_vote +

+

Logging for OOC votes

log_whisper +

+

Logging for whispered messages

log_world +

+

Log to both DD and the logfile.

log_xooc +

+

Logging for messages sent in XOOC

make_datum_reference_lists +

+

These should be replaced with proper _INIT macros

make_types_fancy +

+

Turns a list of typepaths into 'fancy' titles for admins.

md5asfile +

+

Save file as an external file then md5 it. +Used because md5ing files stored in the rsc sometimes gives incorrect md5 results.

md5filepath +

+

Returns the md5 of a file at a given path.

message_to_html +

+

Message-related procs

+

Message format (/list):

+ +

Copyright (c) 2020 Aleksej Komarov +SPDX-License-Identifier: MIT

minor_announce +

+

Make a minor announcement to a target

+

Arguments

+

movespeed_data_null_check +

+

Checks if a move speed modifier is valid and not missing any data

offset_to_screen_loc +

+

Takes a list in the form (x_offset, y_offset) +And converts it to a screen loc string +Accepts an optional view string/size to force the screen_loc around, so it can't go out of scope

overlays2text +

+

Converts an overlay list into text for debug printing +Of note: overlays aren't actually mutable appearances, they're just appearances +Don't have access to that type tho, so this is the best you're gonna get

params2screenpixel +

+

Converts a screen loc param to a x,y coordinate pixel on the screen

pick_weight_recursive +

+

Like pickweight, but allowing for nested lists.

+

For example, given the following list: +list(A = 1, list(B = 1, C = 1)) +A would have a 50% chance of being picked, +and list(B, C) would have a 50% chance of being picked. +If list(B, C) was picked, B and C would then each have a 50% chance of being picked. +So the final probabilities would be 50% for A, 25% for B, and 25% for C.

+

Weights should be integers. Entries without weights are assigned weight 1 (so unweighted lists can be used as well)

pickweight +

+

Picks a random element from a list based on a weighting system. +For example, given the following list: +A = 6, B = 3, C = 1, D = 0 +A would have a 60% chance of being picked, +B would have a 30% chance of being picked, +C would have a 10% chance of being picked, +and D would have a 0% chance of being picked. +You should only pass integers in.

play_vox_word +

+

play vox words for mobs on our zlevel

playsound +

+

playsound_z +

+

Play sound for all online mobs on a given Z-level. Good for ambient sounds.

playsound_z_humans +

+

Play a sound for all cliented humans and ghosts by zlevel

playsound_z_xenos +

+

Play a sound for all cliented xenos and ghosts by hive on a zlevel

pretty_string_from_reagent_list +

+

Convert reagent list to a printable string for logging etc

print_command_report +

+

Spawns a paper at each communications printer

priority_announce +

+

Make a priority announcement to a target

+

Arguments

+

propagate_network +

+

remove the old powernet and replace it with a new one throughout the network.

qdel +

+

Should be treated as a replacement for the 'del' keyword.

+

Datums passed to this will be given a chance to clean up references to allow the GC to collect them.

random_tts_voice +

+

returns a random tts voice based on gender. Assumes theres 30 voices, not actually how many there are but yolo. todo should return based on gender but we need voice tags for that

recoil_camera +

+

Makes a recoil-like animation on the mob camera.

recover_all_SS_and_recreate_master +

+

Recreate all SSs which will still cause data survive due to Recover(), the new Master will then find and take them from global.vars

reject_bad_text +

+

Returns the text if properly formatted, or null else.

+

Things considered improper:

+

remove_image_from_client +

+

Removes an image from a client's .images. Useful as a callback.

remove_images_from_clients +

+

Removes an image from a list of client's images

remove_verb +

+

handles removing verb and sending it to browser to update, use this for removing verbs

+

pass the verb type path to this instead of removing it from verbs so the statpanel can update +Arguments:

+

return_generator_args +

+

returns the arguments given to a generator and manually extracts them from the internal byond object +returns:

+

return_typenames +

+

Splits the type with parenthesis between each word so admins visually tell it is a typepath.

rustg_get_version +

+

Gets the version of rust_g

rustg_unix_timestamp +

+

Returns the timestamp as a string

sanitize +

+

Runs byond's html encoding sanitization proc, after replacing new-lines and tabs for the # character.

sanitize_inlist_tts +

+

a wrapper with snowflake handling for tts

sanitize_is_full_emote_list +

+

Sanitize the custom emote list

sanitize_islist +

+

Makes sure value is a list +Args: +value - The list we're ensuring is actually a list +default - The set default that will be given as fallback. +required_amount - The required length of value for it to be valid, otherwise will continue to check for a fallback default. +check_valid - If we should check if the values are all in the list of possible inputs +possible_input_list - The list of possible valid inputs this list can hold, only gets checked if check_valid is TRUE

screen_loc_to_offset +

+

Takes a screen loc string in the format +"+-left-offset:+-pixel,+-bottom-offset:+-pixel" +Where the :pixel is optional, and returns +A list in the format (x_offset, y_offset) +We require context to get info out of screen locs that contain relative info, so NORTH, SOUTH, etc

semver_to_list +

+

Converts a semver string into a list of numbers

send2adminchat +

+

Sends a message to TGS admin chat channels.

+

category - The category of the mssage. +message - The message to send.

send2chat +

+

Sends a message to TGS chat channels.

+

message - The message to send. +channel_tag - Required. If "", the message with be sent to all connected (Game-type for TGS3) channels. Otherwise, it will be sent to TGS4 channels with that tag (Delimited by ','s).

send_ooc_announcement +

+

Sends a div formatted chat box announcement

+

Formatted like:

+

" Server Announcement " (or sender_override)

+

" Title "

+

" Text "

+

Arguments

+

set_sentry_ignore_List +

+

Creates the list of atoms that will be ignored by sentry target pathing

set_z_lighting +

+

Modifies the lighting for a z_level

siunit +

+

Formats a number to human readable form with the appropriate SI unit.

+

Supports SI exponents between 1e-15 to 1e15, but properly handles numbers outside that range as well. +Examples:

+

slur +

+

Makes you speak like you're drunk +todo remove, deprecated

sort_list +

+

sort any value in a list

sort_names +

+

uses sort_list() but uses the var's name specifically. This should probably be using mergeAtom() instead

stars +

+

Convert random parts of a passed in message to stars

+ +

This proc is dangerously laggy, avoid it or die

start_log +

+

ship both attack logs and victim logs to the end of round attack.log just to ensure we don't lose information

string_list +

+

Caches lists with non-numeric stringify-able values (text or typepath).

strip_html +

+

Runs STRIP_HTML_SIMPLE and sanitize.

stripped_input +

+

Used to get a properly sanitized input. Returns null if cancel is pressed.

+

Arguments

+

stripped_multiline_input +

+

Used to get a properly sanitized input in a larger box. Works very similarly to stripped_input.

+

Arguments

+

stutter +

+

Adds stuttering to the message passed in, todo remove, deprecated

tgalert +

+

DEPRECATED: USE tgui_alert(...) INSTEAD

+

Designed as a drop in replacement for alert(); functions the same. (outside of needing User specified) +Arguments:

+

tgui_Topic +

+

Middleware for /client/Topic.

+

return bool If TRUE, prevents propagation of the topic call.

tgui_alert +

+

Creates a TGUI alert window and returns the user's response.

+

This proc should be used to create alerts that the caller will wait for a response from. +Arguments:

+

tgui_input_checkboxes +

+ tgui_input_checkbox +

Opens a window with a list of checkboxes and returns a list of selected choices.

+

user - The mob to display the window to +message - The message inside the window +title - The title of the window +list/items - The list of items to display +min_checked - The minimum number of checkboxes that must be checked (defaults to 1) +max_checked - The maximum number of checkboxes that can be checked (optional) +timeout - The timeout for the input (optional)

tgui_input_list +

+

Creates a TGUI input list window and returns the user's response.

+

This proc should be used to create alerts that the caller will wait for a response from. +Arguments:

+

tgui_input_number +

+

Creates a TGUI window with a number input. Returns the user's response as num | null.

+

This proc should be used to create windows for number entry that the caller will wait for a response from. +If tgui fancy chat is turned off: Will return a normal input. If a max or min value is specified, will +validate the input inside the UI and ui_act.

+

Arguments:

+

tgui_input_text +

+

Creates a TGUI window with a text input. Returns the user's response.

+

This proc should be used to create windows for text entry that the caller will wait for a response from. +If tgui fancy chat is turned off: Will return a normal input. If max_length is specified, will return +stripped_multiline_input.

+

Arguments:

+

timeleft +

+

Get the remaining deciseconds on a timer

+

Arguments:

+

to_chat +

+

Sends the message to the recipient (target).

+

Recommended way to write to_chat calls:

+
to_chat(client,
+    type = MESSAGE_TYPE_INFO,
+    html = "You have found <strong>[object]</strong>")
+

to_chat_immediate +

+

Circumvents the message queue and sends the message +to the recipient (target) as soon as possible.

turf_block_check +

+

Return TRUE if we have a block, return FALSE otherwise

ui_status_only_living +

+

Returns a UI status such that the dead will be able to watch, but not interact.

ui_status_silicon_has_access +

+

Returns a UI status such that silicons will be able to interact with whatever +they would have access to if this was a machine. For example, AIs can +interact if there's cameras with wireless control is enabled.

ui_status_user_has_free_hands +

+

Returns a UI status such that those without blocked hands will be able to interact, +but everyone else can only watch.

ui_status_user_is_abled +

+

Returns a UI status such that users with debilitating conditions, such as +being dead or not having power for silicons, will not be able to interact. +Being dead will disable UI, being incapacitated will continue updating it, +and anything else will make it interactive.

ui_status_user_is_adjacent +

+

Returns a UI status such that users adjacent to source will be able to interact, +far away users will be able to see, and anyone farther won't see anything. +Dead users will receive updates no matter what, though you likely want to add +a [ui_status_only_living] check for finer observer interactions.

ui_status_user_is_advanced_tool_user +

+

Returns a UI status such that advanced tool users will be able to interact, +but everyone else can only watch.

ui_status_user_is_conscious_and_lying_down +

+

Returns UI_INTERACTIVE if the user is conscious and lying down. +Returns UI_UPDATE otherwise.

ui_status_user_strictly_adjacent +

+

Return UI_INTERACTIVE if the user is strictly adjacent to the target atom, whether they can see it or not. +Return UI_CLOSE otherwise.

unique_list +

+

Return a list with no duplicate entries

unique_list_in_place +

+

same as unique_list, but returns nothing and acts on list in place (also handles associated values properly)

url2htmlloader +

+

Return html to load a url. +for use inside of browse() calls to html assets that might be loaded on a cdn.

valid_build_direction +

+

Checks whether the target turf is in a valid state to accept a directional construction +such as windows or railings.

+

Returns FALSE if the target turf cannot accept a directional construction. +Returns TRUE otherwise.

+

Arguments:

+

view_to_pixels +

+

Takes a string or num view, and converts it to pixel width/height in a list(pixel_width, pixel_height)

weight_class_data +

+

Returns an assoc list of WEIGHT CLASS TEXT = DESCRIPTION based on the arg you provide. +Used by examine tags for giving each weight class a special description.

weight_class_to_text +

+

Returns a string based on the weight class define used as argument.

xeno_message +

+

Send a message to all xenos. Force forces the message whether or not the hivemind is intact. Target is an atom that is pointed out to the hive. Filter list is a list of xenos we don't message.

+ + + diff --git a/image.html b/image.html new file mode 100644 index 0000000000000..7ffaccdf9ab33 --- /dev/null +++ b/image.html @@ -0,0 +1,35 @@ + + + + + + + /image - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

image + + + +

+ + +

Procs

minimap_on_moveSimple proc, updates overlay position on the map when a atom moves

Proc Details

minimap_on_move +

+

Simple proc, updates overlay position on the map when a atom moves

+ + + diff --git a/image/heat_bar.html b/image/heat_bar.html new file mode 100644 index 0000000000000..3cf238e5e8d52 --- /dev/null +++ b/image/heat_bar.html @@ -0,0 +1,35 @@ + + + + + + + /image/heat_bar - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

heat_bar + + + +

+ + +

Procs

animate_changetakes a 0-1 value and then animates to display that percentage on this bar

Proc Details

animate_change +

+

takes a 0-1 value and then animates to display that percentage on this bar

+ + + diff --git a/index.html b/index.html new file mode 100644 index 0000000000000..098a3bcecccdf --- /dev/null +++ b/index.html @@ -0,0 +1,2990 @@ + + + + + + + Index - byond + + + + + +
+ byond - + Modules - + Types +
+
+

byond

+ + + +

Modules +

+ + + + +

Types +

+ + + +
+ + + diff --git a/interface/fonts/fonts_datum.html b/interface/fonts/fonts_datum.html new file mode 100644 index 0000000000000..5a623d2c92ae3 --- /dev/null +++ b/interface/fonts/fonts_datum.html @@ -0,0 +1,27 @@ + + + + + + + interface/fonts/fonts_datum.dm - byond + + +
+ byond - + Modules - + Types +
+
+

interface/fonts/fonts_datum.dm + +

+ + +
/datum/fontA font datum, it exists to define a custom font to use in a span style later.
+ + + diff --git a/interface/fonts/grand_9k.html b/interface/fonts/grand_9k.html new file mode 100644 index 0000000000000..4d7f6e44f757a --- /dev/null +++ b/interface/fonts/grand_9k.html @@ -0,0 +1,32 @@ + + + + + + + interface/fonts/grand_9k.dm - byond + + +
+ byond - + Modules - + Types +
+
+

interface/fonts/grand_9k.dm + +

+ + + +
/datum/font/grand9kFor clean results on map, use only sizing pt, multiples of 6: 6pt 12pt 18pt 24pt etc. - Not for use with px sizing +Can be used in TGUI etc, px sizing is pt / 0.75. 6pt = 8px, 12pt = 16px etc. +Base font
/datum/font/grand9k/size_6ptFor icon overlays +Grand9K 6pt metrics generated using Lummox's dmifontsplus (https://www.byond.com/developer/LummoxJR/DmiFontsPlus) +Note: these variable names have been changed, so you can't straight copy/paste from dmifontsplus.exe
+ + + diff --git a/interface/fonts/license.html b/interface/fonts/license.html new file mode 100644 index 0000000000000..1e20ae5241934 --- /dev/null +++ b/interface/fonts/license.html @@ -0,0 +1,40 @@ + + + + + + + interface/fonts/license.txt - byond + + +
+ byond - + Modules - + Types +
+
+

interface/fonts/license.txt + +

+ + +
Grand9K Pixel created by Jayvee Enaguas. Licensed under Creative Commons Attribution 4.0 International (CC BY 4.0)
+(https://creativecommons.org/licenses/by/4.0/) (https://www.dafont.com/grand9k-pixel.font)
+
+Pixellari created by Zacchary Dempsey-Plante. Website indicates free for commercial use.
+(https://www.dafont.com/pixellari.font?fpp=200)
+
+Spess Font created by MTandi (discord) for /tg/station.
+
+Tiny Unicode created by Jakob Riedle/DuffsDevice. Website indicates free for commercial use.
+(https://fontmeme.com/fonts/tiny-unicode-font/)
+
+VCR OSD Mono created by Riciery Leal/mrmanet. Website indicates 100% free, author confirms it's free for all to use.
+(https://www.dafont.com/font-comment.php?file=vcr_osd_mono)
+
+ + + diff --git a/interface/fonts/pixellari.html b/interface/fonts/pixellari.html new file mode 100644 index 0000000000000..51a91aa455368 --- /dev/null +++ b/interface/fonts/pixellari.html @@ -0,0 +1,32 @@ + + + + + + + interface/fonts/pixellari.dm - byond + + +
+ byond - + Modules - + Types +
+
+

interface/fonts/pixellari.dm + +

+ + + +
/datum/font/pixellariFor clean results on map, use only sizing pt, multiples of 12: 12pt 24pt 48pt etc. - Not for use with px sizing +Can be used in TGUI etc, px sizing is pt / 0.75. 12pt = 16px, 24pt = 32px etc. +Base font
/datum/font/pixellari/size_12ptFor icon overlays +Pixellari 12pt metrics generated using Lummox's dmifontsplus (https://www.byond.com/developer/LummoxJR/DmiFontsPlus) +Note: these variable names have been changed, so you can't straight copy/paste from dmifontsplus.exe
+ + + diff --git a/interface/fonts/spess_font.html b/interface/fonts/spess_font.html new file mode 100644 index 0000000000000..7f1f5dbce3ebc --- /dev/null +++ b/interface/fonts/spess_font.html @@ -0,0 +1,32 @@ + + + + + + + interface/fonts/spess_font.dm - byond + + +
+ byond - + Modules - + Types +
+
+

interface/fonts/spess_font.dm + +

+ + + +
/datum/font/spessfontFor clean results on map, use only sizing pt, multiples of 6: 6t 12pt 18pt etc. - Not for use with px sizing +Can be used in TGUI etc, px sizing is pt / 0.75. 12pt = 16px, 24pt = 32px etc. +Base font
/datum/font/spessfont/size_6ptFor icon overlays +Spess Font 6pt metrics generated using Lummox's dmifontsplus (https://www.byond.com/developer/LummoxJR/DmiFontsPlus) +Note: these variable names have been changed, so you can't straight copy/paste from dmifontsplus.exe
+ + + diff --git a/interface/fonts/tiny_unicode.html b/interface/fonts/tiny_unicode.html new file mode 100644 index 0000000000000..b1e75d995560d --- /dev/null +++ b/interface/fonts/tiny_unicode.html @@ -0,0 +1,32 @@ + + + + + + + interface/fonts/tiny_unicode.dm - byond + + +
+ byond - + Modules - + Types +
+
+

interface/fonts/tiny_unicode.dm + +

+ + + +
/datum/font/tiny_unicodeFor clean results on map, use only sizing pt, multiples of 12: 12pt 24pt 48pt etc. - Not for use with px sizing +Can be used in TGUI etc, px sizing is pt / 0.75. 12pt = 16px, 24pt = 32px etc. +Base font
/datum/font/tiny_unicode/size_12ptFor icon overlays +TinyUnicode 12pt metrics generated using Lummox's dmifontsplus (https://www.byond.com/developer/LummoxJR/DmiFontsPlus) +Note: these variable names have been changed, so you can't straight copy/paste from dmifontsplus.exe
+ + + diff --git a/matrix.html b/matrix.html new file mode 100644 index 0000000000000..50722c2c8843e --- /dev/null +++ b/matrix.html @@ -0,0 +1,39 @@ + + + + + + + /matrix - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

matrix + + + +

+ + +

Procs

ShearShear the transform on either or both axes.

Proc Details

Shear +

+

Shear the transform on either or both axes.

+
+ + + diff --git a/mob.html b/mob.html new file mode 100644 index 0000000000000..fe5fa0b94b54a --- /dev/null +++ b/mob.html @@ -0,0 +1,1105 @@ + + + + + + + /mob - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

mob + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

active_thinking_indicatorthe icon currently used for the thinking indicator's bubble
active_typing_indicatorthe icon currently used for the typing indicator's bubble
alertscontains /atom/movable/screen/alert only, used by alerts.dm
bubble_iconwhat icon the mob uses for speechbubbles
cached_multiplicative_slowdownThe calculated mob speed slowdown based on the modifiers list.
canon_clientThe current client inhabiting this mob. Managed by login/logout +This exists so we can do cleanup in logout for occasions where a client was transfere rather then destroyed +We need to do this because the mob on logout never actually has a reference to client +We also need to clear this var/do other cleanup in client/Destroy, since that happens before logout +HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
control_objectUsed by admins to possess objects.
dextrousHas enough dexterity to interact with advanced objects?
do_actionsLazylist assoc list of do_after and do_mob actions the mob is currently performing: list([target] = amount)
do_self_harmWhether or not the mob can hit themselves.
factionThe faction this mob belongs to
focusWhat receives our keyboard inputs. src by default
has_unlimited_silicon_privilegeCan they interact with station electronics
interacteethe thing that the mob is currently interacting with (e.g. a computer, another mob (stripping a mob), manning a hmg)
listed_turfthe current turf being examined in the stat panel
lying_angleMob's angle in BYOND degrees. 0 is north (up/standing for humans), 90 and 270 are east and west respectively (lying horizontally), and 90 is south (upside-down).
machineThe machine the mob is interacting with (this is very bad old code btw)
move_on_shuttleCan move on the shuttle.
movespeed_modificationList of movement speed modifiers applying to this mob. Lazy list, see mob_movespeed.dm
next_move_adjustAmount to adjust action/click delays by, + or -
next_move_slowdownAmount added during the next movement_delay(), then is reset.
observersThe list of people observing this mob.
pain_storedTODO MOVE ME OR EVEN BETTER GET RID OF ME
progbar_towersfor stacking the total pixel height of the aboves.
progressbarsfor stacking do_after bars
queued_interactionsList of queued interactions on this mob
remote_controlCalls relaymove() to whatever it is
s_activeOur mobs currently active storage
speak_emoteVerbs used when speaking instead of the default ones.
statWhether a mob is alive or dead. TODO: Move this to living - Nodrak
tgui_open_uisglobal
thinking_ICUser is thinking in character. Used to revert to thinking state after stop_typing
updating_glide_sizeWhether the mob is updating glide size when movespeed updates or not

Procs

AltRightClickOnCalled when a owner mob Alt + Rightmouseclicks an atom, given that Altclick does not return TRUE
ClickOnStandard mob ClickOn() +Handles exceptions: Buildmode, middle click, modified clicks, mech actions
Process_SpacemoveProcess_Spacemove +Called by /client/Move() +For moving in space +Return 1 for movement 0 for none
RightClickOnCalled when a owner mob Rightmouseclicks an atom
ShiftRightClickOnCalled when a owner mob Shift + Rightmouseclicks an atom
UnEquipDO NOT CALL THIS PROC
UnarmedAttackTranslates into attack_hand, etc.
add_click_catcherSets up the click_catcher for the client
add_movespeed_modifierAdd a move speed modifier to a mob
additive_flagged_slowdownGive the sum of all slowdown that have inputted flag
attack_uiThis proc is called whenever someone clicks an inventory ui slot.
become_unclientedCleanup proc that's called when a mob loses a client, either through client destroy or logout +Logout happens post client del, so we can't just copypaste this there. This keeps things clean and consistent
binarycheckReturns false by default
buckle_mobBuckle to another mob +You can buckle on mobs if you're next to them since most are dense +Turns you to face the other mob too
can_be_facehuggedCan this mob be facehugged?
can_put_in_handReturns if we're able to put something in a hand of a mob
can_wait_in_larva_queueReturns if the mob is valid to keep waiting in the larva queue
changeNext_movehow many times we've fired the railgun this cycle +max times we can fire within a single volley +used to check if we have valid targets +Delays the mob's next click/action by num deciseconds +eg: 10 - 3 = 7 deciseconds of delay +eg: 10 * 0.5 = 5 deciseconds of delay +DOES NOT EFFECT THE BASE 1 DECISECOND DELAY OF NEXT_CLICK
check_emoteCheck if this message is an emote
clear_fullscreenRemoves a fullscreen overlay
clear_important_client_contentsClears the clients channel of this mob
create_chat_messageCreates a message overlay at a defined location for a given speaker
create_thinking_indicatorCreates a thinking indicator over the mob.
create_typing_indicatorCreates a typing indicator over the mob.
do_after_coefficentMultiplier on all do_afters for this mob
draw_from_slot_if_possibleChecks an inventory slot for an item that can be drawn that is directly stored, or inside another storage item, and draws it if possible
dropItemToGroundUsed to drop an item (if it exists) to the ground.
drop_all_held_itemsDrops the items in our hands.
drop_held_itemDrops the item in our active hand.
drop_item_vHelper proc used by the drop_item verb and on screen button.
drop_l_handDrops the item in our left hand.
drop_r_handDrops the item in our right hand.
enable_client_mobs_in_contentspropogates ourselves through our nested contents, similar to other important_recursive_contents procs +main difference is that client contents need to possibly duplicate recursive contents for the clients mob AND its eye
eord_respawnThis is only available to mobs once they join EORD.
equip_to_appropriate_slotAttempts to store an item in a valid location based on SLOT_EQUIP_ORDER
equip_to_slotThis is an UNSAFE proc. It merely handles the actual job of equipping. All the checks on whether you can or can't eqip need to be done before! Use mob_can_equip() for that task. +In most cases you will want to use equip_to_slot_if_possible()
equip_to_slot_if_possibleThis is a SAFE proc. Use this instead of equip_to_slot()! +set del_on_fail to have it delete item_to_equip if it fails to equip +unset redraw_mob to prevent the mob from being redrawn at the end.
equip_to_slot_or_delThis is just a commonly used configuration for the equip_to_slot_if_possible() proc, used to equip people when the rounds starts and when events happen and such.
equip_to_slot_or_handTries to equip an item to the slot provided, otherwise tries to put it in hands, if hands are full the item is deleted
examinateThis is a mob verb for speed reasons (nice one BYOND). +See this BYOND forum post +for why this isnt something like /atom/verb/examine.
finish_clear_fullscreenActually removes the fullscreen overlay when ready
get_active_held_itemreturns the thing in our currently active hand
get_config_multiplicative_speedGet the global config movespeed of a mob by type
get_equipped_slotFind the slot an item is equipped to and returns its slot define
get_held_itemProc to get the item in the active hand.
get_held_itemsGet a list of all held items
get_inactive_held_itemreturns the thing in our currently inactive hand
get_item_by_slotReturns the item in a given slot
get_item_by_slot_bitReturns the item in a given bit slot
get_item_for_held_indexgets an item by hand index
get_liquid_slowdownReturns the slowdown applied to the mob when moving through liquids like water
get_mob_buckling_heightreturns the height in pixel the mob should have when buckled to another mob.
get_movespeed_modifiersGet the move speed modifiers list of the mob
get_policy_keywordsGet the list of keywords for policy config
get_status_tab_itemsAdds this list to the output to the stat browser
has_movespeed_modifierIs there a movespeed modifier for this mob
index_to_handreturns the hand based on index (1 for left hand, 2 for right)
interaction_emoteAll in one function to begin interactions
is_holding_item_of_typeChecks if this mob is holding a certain type of item in hands +returns the item if found +Args:
log_messageLogs a message in a mob's individual log, and in the global logs as well if log_globally is true
log_mob_tagLogs a mesage to the mob_tags log, including the mobs tag +Arguments:
movespeed_modifier_identical_checkCheck if a movespeed modifier is identical to another
onShuttleMoveMob move procs
on_eordSide effects of being sent to the end of round deathmatch zone
overlay_fullscreenApplies a fullscreen overlay
play_screen_textproc for playing a screen_text on a mob. +enqueues it if a screen text is running and plays i otherwise +Arguments:
playsound_localPlays a sound locally
post_buckle_mobCall back post buckle to a mob to offset your visual height
post_unbuckle_mobCall back post unbuckle from a mob, (reset your visual height here)
put_in_active_handPuts the item into our active hand if possible.
put_in_any_hand_if_possibleAttempts to put an item in either hand
put_in_handPuts an item in a specific hand index (so left or right)
put_in_hand_checkProc that checks if we can put something into someone's hands
put_in_handsPuts the item our active hand if possible. Failing that it tries our inactive hand. +If both hands fail the item falls to the floor.
put_in_inactive_handPuts the item into our inactive hand if possible.
put_in_l_handPuts the item into your l_hand if possible and calls all necessary triggers/updates.
put_in_r_handPuts the item into your r_hand if possible and calls all necessary triggers/updates.
record_structures_builtTally when a structure is constructed
record_traps_createdShort proc that tallies up traps_created; reduce copy pasta
remove_all_indicatorsRemoves any indicators and marks the mob as not speaking IC.
remove_movespeed_modifierRemove a move speed modifier from a mob
remove_thinking_indicatorRemoves the thinking indicator over the mob.
remove_typing_indicatorRemoves the typing indicator over the mob.
say_verbwhat clients use to speak. when you type a message into the chat bar in say mode, this is the first thing that goes off serverside.
setGrabStateUpdates the grab state of the mob and updates movespeed
set_skillsHandles setting or changing a mob's skills
shared_ui_interactionpublic
shuttleRotateMob rotate procs
sort_movespeed_modlistSort the list of move speed modifiers
stripPanelUnequipThe mob is trying to strip an item from someone
temporarilyRemoveItemFromInventoryRemoves an item on a mob's inventory.
throw_itemThrows active held item at target in params
transferItemToLocFor when the item will be immediately placed in a loc other than the ground.
update_action_buttonsThis is the proc used to update all the action buttons.
update_config_movespeedSet or update the global movespeed config on a mob
update_mouse_pointerUpdate the mouse pointer of the attached client in this mob
update_movespeedGo through the list of movespeed modifiers and calculate a final movespeed
update_statCalled to update the stat var, returns a boolean to indicate if it has been handled.
+

Var Details

active_thinking_indicator + + + + +

+

the icon currently used for the thinking indicator's bubble

active_typing_indicator + + + + +

+

the icon currently used for the typing indicator's bubble

alerts + + + + +

+

contains /atom/movable/screen/alert only, used by alerts.dm

bubble_icon + + + + +

+

what icon the mob uses for speechbubbles

cached_multiplicative_slowdown + + + + +

+

The calculated mob speed slowdown based on the modifiers list.

canon_client + + + + +

+

The current client inhabiting this mob. Managed by login/logout +This exists so we can do cleanup in logout for occasions where a client was transfere rather then destroyed +We need to do this because the mob on logout never actually has a reference to client +We also need to clear this var/do other cleanup in client/Destroy, since that happens before logout +HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH

control_object + + + + +

+

Used by admins to possess objects.

dextrous + + + + +

+

Has enough dexterity to interact with advanced objects?

do_actions + + + + +

+

Lazylist assoc list of do_after and do_mob actions the mob is currently performing: list([target] = amount)

do_self_harm + + + + +

+

Whether or not the mob can hit themselves.

faction + + + + +

+

The faction this mob belongs to

focus + + + + +

+

What receives our keyboard inputs. src by default

has_unlimited_silicon_privilege + + + + +

+

Can they interact with station electronics

interactee + + + + +

+

the thing that the mob is currently interacting with (e.g. a computer, another mob (stripping a mob), manning a hmg)

listed_turf + + + + +

+

the current turf being examined in the stat panel

lying_angle + + + + +

+

Mob's angle in BYOND degrees. 0 is north (up/standing for humans), 90 and 270 are east and west respectively (lying horizontally), and 90 is south (upside-down).

machine + + + + +

+

The machine the mob is interacting with (this is very bad old code btw)

move_on_shuttle + + + + +

+

Can move on the shuttle.

movespeed_modification + + + + +

+

List of movement speed modifiers applying to this mob. Lazy list, see mob_movespeed.dm

next_move_adjust + + + + +

+

Amount to adjust action/click delays by, + or -

next_move_slowdown + + + + +

+

Amount added during the next movement_delay(), then is reset.

observers + + + + +

+

The list of people observing this mob.

pain_stored + + + + +

+

TODO MOVE ME OR EVEN BETTER GET RID OF ME

progbar_towers + + + + +

+

for stacking the total pixel height of the aboves.

progressbars + + + + +

+

for stacking do_after bars

queued_interactions + + + + +

+

List of queued interactions on this mob

remote_control + + + + +

+

Calls relaymove() to whatever it is

s_active + + + + +

+

Our mobs currently active storage

speak_emote + + + + +

+

Verbs used when speaking instead of the default ones.

stat + + + + +

+

Whether a mob is alive or dead. TODO: Move this to living - Nodrak

tgui_open_uis + + + + +

+

global

+

Tracks open UIs for a user.

thinking_IC + + + + +

+

User is thinking in character. Used to revert to thinking state after stop_typing

updating_glide_size + + + + +

+

Whether the mob is updating glide size when movespeed updates or not

Proc Details

AltRightClickOn +

+

Called when a owner mob Alt + Rightmouseclicks an atom, given that Altclick does not return TRUE

ClickOn +

+

Standard mob ClickOn() +Handles exceptions: Buildmode, middle click, modified clicks, mech actions

+

After that, mostly just check your state, check whether you're holding an item, +check whether you're adjacent to the target, then pass off the click to whoever +is receiving it. +The most common are:

+

Process_Spacemove +

+

Process_Spacemove +Called by /client/Move() +For moving in space +Return 1 for movement 0 for none

RightClickOn +

+

Called when a owner mob Rightmouseclicks an atom

ShiftRightClickOn +

+

Called when a owner mob Shift + Rightmouseclicks an atom

UnEquip +

+

DO NOT CALL THIS PROC

+

UnarmedAttack +

+

Translates into attack_hand, etc.

+

has_proximity is TRUE if this afterattack was called on something adjacent, in your square, or on your person.

+

has_proximity is not currently passed to attack_hand, and is instead used +in human click code to allow glove touches only at melee range.

+

params is passed on here as the third arg

add_click_catcher +

+

Sets up the click_catcher for the client

add_movespeed_modifier +

+

Add a move speed modifier to a mob

additive_flagged_slowdown +

+

Give the sum of all slowdown that have inputted flag

attack_ui +

+

This proc is called whenever someone clicks an inventory ui slot.

become_uncliented +

+

Cleanup proc that's called when a mob loses a client, either through client destroy or logout +Logout happens post client del, so we can't just copypaste this there. This keeps things clean and consistent

binarycheck +

+

Returns false by default

buckle_mob +

+

Buckle to another mob +You can buckle on mobs if you're next to them since most are dense +Turns you to face the other mob too

can_be_facehugged +

+

Can this mob be facehugged?

can_put_in_hand +

+

Returns if we're able to put something in a hand of a mob

can_wait_in_larva_queue +

+

Returns if the mob is valid to keep waiting in the larva queue

changeNext_move +

+

how many times we've fired the railgun this cycle +max times we can fire within a single volley +used to check if we have valid targets +Delays the mob's next click/action by num deciseconds +eg: 10 - 3 = 7 deciseconds of delay +eg: 10 * 0.5 = 5 deciseconds of delay +DOES NOT EFFECT THE BASE 1 DECISECOND DELAY OF NEXT_CLICK

check_emote +

+

Check if this message is an emote

clear_fullscreen +

+

Removes a fullscreen overlay

clear_important_client_contents +

+

Clears the clients channel of this mob

create_chat_message +

+

Creates a message overlay at a defined location for a given speaker

+

Arguments:

+

create_thinking_indicator +

+

Creates a thinking indicator over the mob.

create_typing_indicator +

+

Creates a typing indicator over the mob.

do_after_coefficent +

+

Multiplier on all do_afters for this mob

draw_from_slot_if_possible +

+

Checks an inventory slot for an item that can be drawn that is directly stored, or inside another storage item, and draws it if possible

dropItemToGround +

+

Used to drop an item (if it exists) to the ground.

+

drop_all_held_items +

+

Drops the items in our hands.

+

Returns TURE if it was successful.

drop_held_item +

+

Drops the item in our active hand.

+

Returns TURE if it was successful.

drop_item_v +

+

Helper proc used by the drop_item verb and on screen button.

+

Returns TURE if it was successful.

drop_l_hand +

+

Drops the item in our left hand.

+

Returns TURE if it was successful.

drop_r_hand +

+

Drops the item in our right hand.

+

Returns TURE if it was successful.

enable_client_mobs_in_contents +

+

propogates ourselves through our nested contents, similar to other important_recursive_contents procs +main difference is that client contents need to possibly duplicate recursive contents for the clients mob AND its eye

eord_respawn +

+

This is only available to mobs once they join EORD.

equip_to_appropriate_slot +

+

Attempts to store an item in a valid location based on SLOT_EQUIP_ORDER

equip_to_slot +

+

This is an UNSAFE proc. It merely handles the actual job of equipping. All the checks on whether you can or can't eqip need to be done before! Use mob_can_equip() for that task. +In most cases you will want to use equip_to_slot_if_possible()

equip_to_slot_if_possible +

+

This is a SAFE proc. Use this instead of equip_to_slot()! +set del_on_fail to have it delete item_to_equip if it fails to equip +unset redraw_mob to prevent the mob from being redrawn at the end.

equip_to_slot_or_del +

+

This is just a commonly used configuration for the equip_to_slot_if_possible() proc, used to equip people when the rounds starts and when events happen and such.

equip_to_slot_or_hand +

+

Tries to equip an item to the slot provided, otherwise tries to put it in hands, if hands are full the item is deleted

examinate +

+

This is a mob verb for speed reasons (nice one BYOND). +See this BYOND forum post +for why this isnt something like /atom/verb/examine.

+

SIGNAL FUN: +Produces a signal COMSIG_MOB_EXAMINATE, for doing stuff to people who examine things, +like applying debilitating effects to someone who examines a specific type of atom.

finish_clear_fullscreen +

+

Actually removes the fullscreen overlay when ready

get_active_held_item +

+

returns the thing in our currently active hand

get_config_multiplicative_speed +

+

Get the global config movespeed of a mob by type

get_equipped_slot +

+

Find the slot an item is equipped to and returns its slot define

get_held_item +

+

Proc to get the item in the active hand.

get_held_items +

+

Get a list of all held items

get_inactive_held_item +

+

returns the thing in our currently inactive hand

get_item_by_slot +

+

Returns the item in a given slot

get_item_by_slot_bit +

+

Returns the item in a given bit slot

get_item_for_held_index +

+

gets an item by hand index

get_liquid_slowdown +

+

Returns the slowdown applied to the mob when moving through liquids like water

get_mob_buckling_height +

+

returns the height in pixel the mob should have when buckled to another mob.

get_movespeed_modifiers +

+

Get the move speed modifiers list of the mob

get_policy_keywords +

+

Get the list of keywords for policy config

+

This gets the type, mind assigned roles and antag datums as a list, these are later used +to send the user relevant headadmin policy config

get_status_tab_items +

+

Adds this list to the output to the stat browser

has_movespeed_modifier +

+

Is there a movespeed modifier for this mob

index_to_hand +

+

returns the hand based on index (1 for left hand, 2 for right)

interaction_emote +

+

All in one function to begin interactions

is_holding_item_of_type +

+

Checks if this mob is holding a certain type of item in hands +returns the item if found +Args:

+

log_message +

+

Logs a message in a mob's individual log, and in the global logs as well if log_globally is true

log_mob_tag +

+

Logs a mesage to the mob_tags log, including the mobs tag +Arguments:

+

movespeed_modifier_identical_check +

+

Check if a movespeed modifier is identical to another

onShuttleMove +

+

Mob move procs

on_eord +

+

Side effects of being sent to the end of round deathmatch zone

overlay_fullscreen +

+

Applies a fullscreen overlay

play_screen_text +

+

proc for playing a screen_text on a mob. +enqueues it if a screen text is running and plays i otherwise +Arguments:

+

playsound_local +

+

Plays a sound locally

+

Arguments:

+

post_buckle_mob +

+

Call back post buckle to a mob to offset your visual height

post_unbuckle_mob +

+

Call back post unbuckle from a mob, (reset your visual height here)

put_in_active_hand +

+

Puts the item into our active hand if possible.

+

Arguments

+ +

Returns TRUE on success.

put_in_any_hand_if_possible +

+

Attempts to put an item in either hand

put_in_hand +

+

Puts an item in a specific hand index (so left or right)

put_in_hand_check +

+

Proc that checks if we can put something into someone's hands

put_in_hands +

+

Puts the item our active hand if possible. Failing that it tries our inactive hand. +If both hands fail the item falls to the floor.

+

Arguments

+ +

Returns TRUE if it was able to put the thing into one of our hands.

put_in_inactive_hand +

+

Puts the item into our inactive hand if possible.

+

Arguments

+

put_in_l_hand +

+

Puts the item into your l_hand if possible and calls all necessary triggers/updates.

+

Arguments

+ +

Returns TRUE on success.

put_in_r_hand +

+

Puts the item into your r_hand if possible and calls all necessary triggers/updates.

+

Arguments

+ +

Returns TRUE on success.

record_structures_built +

+

Tally when a structure is constructed

record_traps_created +

+

Short proc that tallies up traps_created; reduce copy pasta

remove_all_indicators +

+

Removes any indicators and marks the mob as not speaking IC.

remove_movespeed_modifier +

+

Remove a move speed modifier from a mob

remove_thinking_indicator +

+

Removes the thinking indicator over the mob.

remove_typing_indicator +

+

Removes the typing indicator over the mob.

say_verb +

+

what clients use to speak. when you type a message into the chat bar in say mode, this is the first thing that goes off serverside.

setGrabState +

+

Updates the grab state of the mob and updates movespeed

set_skills +

+

Handles setting or changing a mob's skills

shared_ui_interaction +

+

public

+

Standard interaction/sanity checks. Different mob types may have overrides.

+

return UI_state The state of the UI.

shuttleRotate +

+

Mob rotate procs

sort_movespeed_modlist +

+

Sort the list of move speed modifiers

+

Verifies it too. Sorts highest priority (first applied) to lowest priority (last applied)

stripPanelUnequip +

+

The mob is trying to strip an item from someone

temporarilyRemoveItemFromInventory +

+

Removes an item on a mob's inventory.

+

throw_item +

+

Throws active held item at target in params

transferItemToLoc +

+

For when the item will be immediately placed in a loc other than the ground.

update_action_buttons +

+

This is the proc used to update all the action buttons.

update_config_movespeed +

+

Set or update the global movespeed config on a mob

update_mouse_pointer +

+

Update the mouse pointer of the attached client in this mob

update_movespeed +

+

Go through the list of movespeed modifiers and calculate a final movespeed

update_stat +

+

Called to update the stat var, returns a boolean to indicate if it has been handled.

+ + + diff --git a/mob/camera/aiEye/remote.html b/mob/camera/aiEye/remote.html new file mode 100644 index 0000000000000..2ad57ec4cd259 --- /dev/null +++ b/mob/camera/aiEye/remote.html @@ -0,0 +1,57 @@ + + + + + + + /mob/camera/aiEye/remote - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

remote + + + +

+ + + + + +

Vars

direction_movedlast direction moved
max_tile_accelerationLimits tiles_moved to this value.
move_delayThe delay applied after moving to a tile.
tiles_movedInternal variable used to keep track of the amount of tiles we have moved in the same direction
+

Var Details

direction_moved + + + + +

+

last direction moved

max_tile_acceleration + + + + +

+

Limits tiles_moved to this value.

move_delay + + + + +

+

The delay applied after moving to a tile.

tiles_moved + + + + +

+

Internal variable used to keep track of the amount of tiles we have moved in the same direction

+ + + diff --git a/mob/camera/aiEye/remote/hud.html b/mob/camera/aiEye/remote/hud.html new file mode 100644 index 0000000000000..3d7dc21c88c2e --- /dev/null +++ b/mob/camera/aiEye/remote/hud.html @@ -0,0 +1,36 @@ + + + + + + + /mob/camera/aiEye/remote/hud - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

hud + + + +

+ + +

Vars

icon_state_onVisible icon state
+

Var Details

icon_state_on + + + + +

+

Visible icon state

+ + + diff --git a/mob/camera/aiEye/remote/hud/overwatch.html b/mob/camera/aiEye/remote/hud/overwatch.html new file mode 100644 index 0000000000000..7ad0e2ad673e4 --- /dev/null +++ b/mob/camera/aiEye/remote/hud/overwatch.html @@ -0,0 +1,57 @@ + + + + + + + /mob/camera/aiEye/remote/hud/overwatch - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

overwatch + + + +

+ + + + + +

Vars

current_aura_listList of current aura defines we're emitting, for overlay purposes

Procs

add_emitted_aurasAdd to our current aura list and update overlays.
remove_emitted_aurasRemove from our current aura list and update overlays
update_aura_overlaysApplies order overlays (hold/move/focus) depending on what we have. Only visible to marines.
+

Var Details

current_aura_list + + + + +

+

List of current aura defines we're emitting, for overlay purposes

Proc Details

add_emitted_auras +

+

Add to our current aura list and update overlays.

remove_emitted_auras +

+

Remove from our current aura list and update overlays

update_aura_overlays +

+

Applies order overlays (hold/move/focus) depending on what we have. Only visible to marines.

+ + + diff --git a/mob/camera/aiEye/remote/shuttle_docker.html b/mob/camera/aiEye/remote/shuttle_docker.html new file mode 100644 index 0000000000000..44b201ed836f2 --- /dev/null +++ b/mob/camera/aiEye/remote/shuttle_docker.html @@ -0,0 +1,36 @@ + + + + + + + /mob/camera/aiEye/remote/shuttle_docker - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

shuttle_docker + + + +

+ + +

Vars

nvg_vision_possibleIf it is possible to have night vision, if false the user will get turf vision
+

Var Details

nvg_vision_possible + + + + +

+

If it is possible to have night vision, if false the user will get turf vision

+ + + diff --git a/mob/dead/observer.html b/mob/dead/observer.html new file mode 100644 index 0000000000000..4f9e9ea4d7664 --- /dev/null +++ b/mob/dead/observer.html @@ -0,0 +1,78 @@ + + + + + + + /mob/dead/observer - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

observer + + + +

+ + + + + + + + +

Vars

can_reenter_corpseA weakref to the original corpse of the observer
ghost_visionIf you can see things only ghosts see, like other ghosts

Procs

clean_observetargetSignal handler to clean the observedtarget
do_observemakes the ghost see the target hud and sets the eye at the target.
load_ghost_gamemode_actionsLoads any gamemode specific ghost actions
pick_formChanges our sprite
revived_while_awayWarn the ghost and send them into their body after a few seconds
+

Var Details

can_reenter_corpse + + + + +

+

A weakref to the original corpse of the observer

ghost_vision + + + + +

+

If you can see things only ghosts see, like other ghosts

Proc Details

clean_observetarget +

+

Signal handler to clean the observedtarget

do_observe +

+

makes the ghost see the target hud and sets the eye at the target.

load_ghost_gamemode_actions +

+

Loads any gamemode specific ghost actions

pick_form +

+

Changes our sprite

revived_while_away +

+

Warn the ghost and send them into their body after a few seconds

+ + + diff --git a/mob/illusion.html b/mob/illusion.html new file mode 100644 index 0000000000000..bbae2a98b3a9b --- /dev/null +++ b/mob/illusion.html @@ -0,0 +1,71 @@ + + + + + + + /mob/illusion - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

illusion + + + +

+ + + + + + + +

Vars

original_mobThe parent mob the illusion is a copy of
timer_effectTimer to remove the hit effect

Procs

add_hit_filterAdds an animated hit filter
copy_appearanceSets the illusion to a specified mob
on_parent_delClears parent if parent is deleted
remove_hit_filterRemove the filter effect added when it is hit
+

Var Details

original_mob + + + + +

+

The parent mob the illusion is a copy of

timer_effect + + + + +

+

Timer to remove the hit effect

Proc Details

add_hit_filter +

+

Adds an animated hit filter

copy_appearance +

+

Sets the illusion to a specified mob

on_parent_del +

+

Clears parent if parent is deleted

remove_hit_filter +

+

Remove the filter effect added when it is hit

+ + + diff --git a/mob/living.html b/mob/living.html new file mode 100644 index 0000000000000..8c8c238365c9f --- /dev/null +++ b/mob/living.html @@ -0,0 +1,1402 @@ + + + + + + + /mob/living - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

living + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

afk_statusIf this mob is afk
afk_timer_idId of the timer to set the afk status to MOB_DISCONNECTED
blood_volumeHow much blood the mob has. +!!! Use the adjust_blood_volume() and set_blood_volume() to set this variable instead of directly modifying it!!!
brainlossBrain damage caused by someone hitting you in the head with a bible or being infected with brainrot.
brutelossBrutal damage caused by brute force (punching, being clubbed by a toolbox ect... this also accounts for pressure damage)
clonelossDamage caused by being cloned or ejected from the cloner early
drowsynessDrowsyness amount. Reduces movespeed and if inhaling smoke with a sleep trait [/mob/living/carbon/inhale_smoke] will cause them to fall asleep.
emitted_aurasList of strings for auras this mob is currently emitting via ssAura
fire_stacksTracks how many stacks of fire we have on, max is
firelossBurn damage caused by being way too hot, too cold or burnt.
friendly_fireHow much friendly fire damage has this mob done in the last 30 seconds.
grab_resist_levelEvery time we try to resist a grab, we increment this by 1 until it exceeds the grab level, thereby breaking the grab.
hallucinationDirectly affects how long a mob will hallucinate for
hard_armorFlat-damage-reduction-based armor.
healthMob's current health
health_threshold_critHealth at which a mob goes into crit
health_threshold_deadHealth at which a mob dies
heart_multiMultiplier.
is_ventcrawlingTODO MAKE ME A TRAIT
last_restedThe world.time of when this mob was last lying down
last_stamina_exhaustionThis is the cooldown on suffering additional effects for when we exhaust all stamina
last_unconsciousThe world.time of when this mob became unconscious
maxHealthMaximum health that should be possible.
max_staminaMaximum amount of stamina a mob can have. Different from the stamina buffer because stamina has a positive and negative part
max_stamina_bufferHow much stamina can you regen
metabolism_efficiencymore or less efficiency to metabolize helpful/harmful reagents and (TODO) regulate body temperature..
on_fireThe "Are we on fire?" var
oxylossOxygen depravation damage (no air in lungs)
pull_speedHow much slower or faster this mob drags as a base
ranged_accuracy_modmodifier to gun accuracy
ranged_scatter_modmodifier to gun scatter
reagent_pain_modifiersame as above, except can potentially mask damage
reagent_shock_modifiernegative values reduce shock/pain
received_aurasAssoc list mapping aura types to strength, based on what we've received since the last life tick. Handled in handle_status_effects()
registered_zThe z level this mob is currently registered in
resizeBadminnery resize
see_override0 for no override, sets see_invisible = see_override in silicon & carbon life process via update_sight()
slowdownTemporary penalty on movement. Regenerates each tick.
smoke_delaysLazy assoc list of smoke type mapped to the next world time that smoke can affect this mob
smokecloakedFor the new Smoke Grenade
soft_armor%-reduction-based armor.
stamina_regen_modifiersMaps modifiers by name to a value, applied additively to stamina_regen_multiplier
stamina_regen_multiplierHow fast does a mob regen its stamina. Shouldn't go below 0.
staminalossStamina damage caused by running to much, or specific toxins
status_effectsa list of all status effects the mob has
stun_absorptionlazy list
time_entered_cryoThe world.time of when this mob entered a cryo tube
time_entered_stasisThe world.time of when this mob entered a stasis bag
toxlossToxic damage caused by being poisoned or radiation

Procs

AdjustConfusedApplies confused or adds to existing duration
AdjustImmobilizedApplies immobilized or adds to existing duration
AdjustKnockdownApplies knockdown or adds to existing duration
AdjustMuteAdds to remaining mute duration
AdjustParalyzedApplies paralyzed or adds to existing duration
AdjustSleepingApplies sleeping or adds to existing duration
AdjustStunApplies stun or adds to existing duration
AdjustUnconsciousApplies unconscious or adds to existing duration
AmountConfusedReturns remaining confused duration
AmountImmobilizedReturns remaining immobilize duration
AmountKnockdownReturns remaining knockdown duration
AmountMuteChecks the duration left on our mute status effect
AmountParalyzedReturns remaining paralyzed duration
AmountSleepingReturns remaining sleeping duration
AmountStaggeredReturns remaining stagger duration
AmountStunReturns remaining stun duration
AmountUnconsciousReturns remaining unconscious duration
ConfusedApplies confused from current world time unless existing duration is higher
ExtinguishMobPuts out any fire on the mob
ImmobilizeApplies immobilize from current world time unless existing duration is higher
ImmobilizeNoChainApplies immobilize only if not currently applied
IsAdminSleepingADMIN SLEEP
IsConfused///////////////CONFUSED +Returns if confused
IsImmobilized////////////////////////////// IMMOBILIZED ///////////////////////////////////// +Returns if immobilized
IsKnockdown////////////////////////////// KNOCKDOWN ///////////////////////////////////// +Returns if knockeddown
IsMute/////////////////////////// MUTE //////////////////////////////////// +Checks to see if we're muted
IsParalyzed////////////////////////////// PARALYZED ////////////////////////////////// +Returns if paralyzed
IsSleeping//////////////////////////////// SLEEPING //////////////////////////////////// +Returns if sleeping
IsSlowed/////////////////////////// SLOW //////////////////////////////////// +Returns number of slowdown stacks if any
IsStaggered/////////////////////////// STAGGER //////////////////////////////////// +Returns if staggered
IsStun/////////////////////////// STUN //////////////////////////////////// +Returns if stunned
IsUnconscious///////////////UNCONSCIOUS +Returns if unconscious
KnockdownApplies knockdown from current world time unless existing duration is higher
KnockdownNoChainApplies knockdown only if not currently applied
MuteMutes the target for the stated duration
ParalyzeApplies paralyze from current world time unless existing duration is higher
ParalyzeNoChainApplies paralyze only if not currently applied
SetConfusedUsed to set confused to a set amount, commonly to remove it
SetImmobilizedUsed to set immobilize to a set amount, commonly to remove it
SetKnockdownUsed to set knockdown to a set amount, commonly to remove it
SetParalyzedUsed to set paralyzed to a set amount, commonly to remove it
SetSleepingUsed to set sleeping to a set amount, commonly to remove it
SetStunUsed to set stun to a set amount, commonly to remove it
SetUnconsciousUsed to set unconscious to a set amount, commonly to remove it
SleepingApplies sleeping from current world time unless existing duration is higher
StaggerApplies stagger from current world time unless existing duration is higher
StunApplies stun from current world time unless existing duration is higher
UnconsciousApplies unconscious from current world time unless existing duration is higher
activate_handSwap to the hand clicked on the hud
add_emitted_aurasAdd a list of auras to our current emitted, update self as needed
add_splatter_flooradd_splatter_floor
add_stamina_regen_modifierAdds an entry to our stamina_regen_modifiers and updates stamina_regen_multiplier
add_stun_absorptionSTUN ABSORPTION
add_ventcrawlTODO istype(src) stupidity
adjust_blood_volumeAdjusts the blood volume, with respect to the minimum and maximum values
adjust_drugginessModify mob's drugginess in either direction, minimum zero. Adds or removes druggy overlay as appropriate.
adjust_fire_stacksAdjusting the amount of fire_stacks we have on person
adjust_mob_accuracyModifies the mobs inherent accuracy modifier
adjust_mob_scatterModifies the mobs inherent scatter modifier
adjust_radiationModifies irradiation duration
adjust_slowdownThis is where we normalize the set_slowdown input to be at least 0
adjust_staggerApplies stagger or adds to existing duration
adjust_timed_status_effectAdjusts a timed status effect on the mob,taking into account any existing timed status effects. +This can be any status effect that takes into account "duration" with their initialize arguments.
admin_give_speech_impedimentAdmin only proc for giving a certain speech impediment to this mob
amount_irradiatedHow many deciseconds remain in our irradiated status effect
apply_damagesUsed to apply multiple types of damage to a mob at the same time
apply_effectApply status effect to mob
apply_effectsApplies multiple negative effects to a mob
apply_radiationApplies radiation effects to a mob
attacked_by_alternate/mob/living attacked_by_alternate //TODO!! MAKE THIS UNIQUE FROM NORMAL ATTACKED_BY AS A FEATURE
can_receive_auraCan we receive this aura? returns bool
create_thinking_indicatorOverrides for overlay creation
despawnDespawn the mob, remove its job and store its item
do_projectile_hitIs the shooter a living mob. Defined before the check as used later as well +accumulated movement related evasion bonus
enable_throw_parrySends a signal to enable throw parrying for the handed duration, provided the throw_parry component is attached. Otherwise, has no real effect. +For more information on parries, see throw_parry.dm
finish_aura_cycleAdjusts our stats based on the auras we've received and care about, then cleans out the list for next tick.
fly_atThrow the mob while giving HOVERING to flag_pass and setting layer to FLY_LAYER
get_equipped_itemsUsed to return a list of equipped items on a mob; does not include held items (use get_all_gear)
get_ghostProc to check for a mob's ghost.
get_hard_acid_protectionReturns the overall HARD acid protection of a mob.
get_living_limb_descriptive_nameGives us a more natural sounding limb name for descriptions and such
get_soft_acid_protectionReturns the overall SOFT acid protection of a mob.
get_upHandles getting up, doing a basic check before relaying it to the actual proc that does it
handle_bloodBLOOD SYSTEM
handle_fireUpdate fire stacks on life tick
handle_slowdownStandard slowdown regen called by life.dm
hud_set_firestacksSet fire stacks on the hud
irradiateApplies irradiation from a source
is_irradiated////////////////////////////// Irradiated ////////////////////////////////// +Returns whether the mob is irradiated or not
on_closet_dumpAction delay when going out of a closet
on_fakedeath_trait_gainCalled when TRAIT_FAKEDEATH is added to the mob.
on_fakedeath_trait_lossCalled when TRAIT_FAKEDEATH is removed from the mob.
on_floored_trait_gainCalled when TRAIT_FLOORED is added to the mob.
on_floored_trait_lossCalled when TRAIT_FLOORED is removed from the mob.
on_immobile_trait_gainCalled when TRAIT_LEGLESS is added to the mob.
on_immobile_trait_lossCalled when TRAIT_LEGLESS is removed from the mob.
on_knockedout_trait_gainCalled when TRAIT_KNOCKEDOUT is added to the mob.
on_knockedout_trait_lossCalled when TRAIT_KNOCKEDOUT is removed from the mob.
on_legless_trait_gainCalled when TRAIT_LEGLESS is added to the mob.
on_legless_trait_lossCalled when TRAIT_LEGLESS is removed from the mob.
on_sdd_grace_period_endSet the mob as afk after AFK_TIMER
radiocaps the length of individual letters to 3: ex: heeeeeeyy -> heeeyy +prevents TTS from choking on unrealistic text while keeping emphasis
recalc_stamina_regen_multiplierRegenerates stamina_regen_multiplier from initial based on the current modifier list, minimum 0.
receive_auraUpdate what auras we'll receive this life tick if it's either new or stronger than current. aura_type as AURA_ define, strength as number.
record_melee_damageTally to personal_statistics that a melee attack took place, and record the damage dealt
record_projectile_damageTally to personal_statistics that a successful shot was made and record the damage dealt
record_time_in_cryoRecord how long a mob was in a cryo tube
record_time_in_stasisRecord how long a mob was in a stasis bag
record_time_lying_downRecord how much time a mob was lying down for
record_time_unconsciousRecord how long a mob was knocked out or sleeping
register_init_signalsCalled on /mob/living/Initialize(), for the mob to register to relevant signals.
remove_emitted_aurasRemove a list of auras from our current emitted, update self as needed
remove_stamina_regen_modifierRemoves an entry from our stamina_regen_modifiers and updates stamina_regen_multiplier. Returns TRUE if an entry was removed
resist_fireTry and remove fire from ourselves
setBruteLossWe straight up set bruteloss/brute damage to a desired amount unless godmode is enabled
setFireLossWe straight up set fireloss/burn damage to a desired amount unless godmode is enabled
set_afk_statusSet the afk status of the mob
set_blood_volumeSets the blood volume, with respect to the minimum and maximum values
set_drugginessSets mob's drugginess to provided amount, minimum 0. Adds or removes druggy overlay as appropriate.
set_jump_componentSets up the jump component for the mob. Proc args can be altered so different mobs have different 'default' jump settings
set_lying_angleChanges the inclination angle of a mob, used by humans and others to differentiate between standing up and prone positions.
set_radiationSets irradiation duration
set_remote_controlSet the remote_control and reset the perspective
set_restingActually handles toggling the resting state
set_slowdownWhere the magic happens. Actually applies slow stacks.
set_staggerUsed to set stagger to a set amount, commonly to remove it
set_timed_status_effectSets a timed status effect of some kind on a mob to a specific value. +If only_if_higher is TRUE, it will only set the value up to the passed duration, +so any pre-existing status effects of the same type won't be reduced down
shared_living_ui_distancepublic
swap_handSwap the active hand
take_overall_damageDamages all limbs equally. Overridden by human, otherwise just does apply_damage
toggle_restingHandles trying to toggle resting state
transfer_mobTransfer the candidate mind into src
update_aura_overlayBring however we represent emitted auras up to date. Implemented for human and xenomorph.
update_fireUpdates fire visuals
update_stam_skill_modUpdates the mob's stamina modifiers if their stam skill changes
update_zUpdates the mob's registered_z
user_can_buckleReturns TRUE or FALSE depending on whether src can buckle buckling_mob into something
+

Var Details

afk_status + + + + +

+

If this mob is afk

afk_timer_id + + + + +

+

Id of the timer to set the afk status to MOB_DISCONNECTED

blood_volume + + + + +

+

How much blood the mob has. +!!! Use the adjust_blood_volume() and set_blood_volume() to set this variable instead of directly modifying it!!!

brainloss + + + + +

+

Brain damage caused by someone hitting you in the head with a bible or being infected with brainrot.

bruteloss + + + + +

+

Brutal damage caused by brute force (punching, being clubbed by a toolbox ect... this also accounts for pressure damage)

cloneloss + + + + +

+

Damage caused by being cloned or ejected from the cloner early

drowsyness + + + + +

+

Drowsyness amount. Reduces movespeed and if inhaling smoke with a sleep trait [/mob/living/carbon/inhale_smoke] will cause them to fall asleep.

emitted_auras + + + + +

+

List of strings for auras this mob is currently emitting via ssAura

fire_stacks + + + + +

+

Tracks how many stacks of fire we have on, max is

fireloss + + + + +

+

Burn damage caused by being way too hot, too cold or burnt.

friendly_fire + + + + +

+

How much friendly fire damage has this mob done in the last 30 seconds.

grab_resist_level + + + + +

+

Every time we try to resist a grab, we increment this by 1 until it exceeds the grab level, thereby breaking the grab.

hallucination + + + + +

+

Directly affects how long a mob will hallucinate for

hard_armor + + + + +

+

Flat-damage-reduction-based armor.

health + + + + +

+

Mob's current health

health_threshold_crit + + + + +

+

Health at which a mob goes into crit

health_threshold_dead + + + + +

+

Health at which a mob dies

heart_multi + + + + +

+

Multiplier.

is_ventcrawling + + + + +

+

TODO MAKE ME A TRAIT

last_rested + + + + +

+

The world.time of when this mob was last lying down

last_stamina_exhaustion + + + + +

+

This is the cooldown on suffering additional effects for when we exhaust all stamina

last_unconscious + + + + +

+

The world.time of when this mob became unconscious

maxHealth + + + + +

+

Maximum health that should be possible.

max_stamina + + + + +

+

Maximum amount of stamina a mob can have. Different from the stamina buffer because stamina has a positive and negative part

max_stamina_buffer + + + + +

+

How much stamina can you regen

metabolism_efficiency + + + + +

+

more or less efficiency to metabolize helpful/harmful reagents and (TODO) regulate body temperature..

on_fire + + + + +

+

The "Are we on fire?" var

oxyloss + + + + +

+

Oxygen depravation damage (no air in lungs)

pull_speed + + + + +

+

How much slower or faster this mob drags as a base

ranged_accuracy_mod + + + + +

+

modifier to gun accuracy

ranged_scatter_mod + + + + +

+

modifier to gun scatter

reagent_pain_modifier + + + + +

+

same as above, except can potentially mask damage

reagent_shock_modifier + + + + +

+

negative values reduce shock/pain

received_auras + + + + +

+

Assoc list mapping aura types to strength, based on what we've received since the last life tick. Handled in handle_status_effects()

registered_z + + + + +

+

The z level this mob is currently registered in

resize + + + + +

+

Badminnery resize

see_override + + + + +

+

0 for no override, sets see_invisible = see_override in silicon & carbon life process via update_sight()

slowdown + + + + +

+

Temporary penalty on movement. Regenerates each tick.

smoke_delays + + + + +

+

Lazy assoc list of smoke type mapped to the next world time that smoke can affect this mob

smokecloaked + + + + +

+

For the new Smoke Grenade

soft_armor + + + + +

+

%-reduction-based armor.

stamina_regen_modifiers + + + + +

+

Maps modifiers by name to a value, applied additively to stamina_regen_multiplier

stamina_regen_multiplier + + + + +

+

How fast does a mob regen its stamina. Shouldn't go below 0.

staminaloss + + + + +

+

Stamina damage caused by running to much, or specific toxins

status_effects + + + + +

+

a list of all status effects the mob has

stun_absorption + + + + +

+

lazy list

time_entered_cryo + + + + +

+

The world.time of when this mob entered a cryo tube

time_entered_stasis + + + + +

+

The world.time of when this mob entered a stasis bag

toxloss + + + + +

+

Toxic damage caused by being poisoned or radiation

Proc Details

AdjustConfused +

+

Applies confused or adds to existing duration

AdjustImmobilized +

+

Applies immobilized or adds to existing duration

AdjustKnockdown +

+

Applies knockdown or adds to existing duration

AdjustMute +

+

Adds to remaining mute duration

AdjustParalyzed +

+

Applies paralyzed or adds to existing duration

AdjustSleeping +

+

Applies sleeping or adds to existing duration

AdjustStun +

+

Applies stun or adds to existing duration

AdjustUnconscious +

+

Applies unconscious or adds to existing duration

AmountConfused +

+

Returns remaining confused duration

AmountImmobilized +

+

Returns remaining immobilize duration

AmountKnockdown +

+

Returns remaining knockdown duration

AmountMute +

+

Checks the duration left on our mute status effect

AmountParalyzed +

+

Returns remaining paralyzed duration

AmountSleeping +

+

Returns remaining sleeping duration

AmountStaggered +

+

Returns remaining stagger duration

AmountStun +

+

Returns remaining stun duration

AmountUnconscious +

+

Returns remaining unconscious duration

Confused +

+

Applies confused from current world time unless existing duration is higher

ExtinguishMob +

+

Puts out any fire on the mob

Immobilize +

+

Applies immobilize from current world time unless existing duration is higher

ImmobilizeNoChain +

+

Applies immobilize only if not currently applied

IsAdminSleeping +

+

ADMIN SLEEP

IsConfused +

+

///////////////CONFUSED +Returns if confused

IsImmobilized +

+

////////////////////////////// IMMOBILIZED ///////////////////////////////////// +Returns if immobilized

IsKnockdown +

+

////////////////////////////// KNOCKDOWN ///////////////////////////////////// +Returns if knockeddown

IsMute +

+

/////////////////////////// MUTE //////////////////////////////////// +Checks to see if we're muted

IsParalyzed +

+

////////////////////////////// PARALYZED ////////////////////////////////// +Returns if paralyzed

IsSleeping +

+

//////////////////////////////// SLEEPING //////////////////////////////////// +Returns if sleeping

IsSlowed +

+

/////////////////////////// SLOW //////////////////////////////////// +Returns number of slowdown stacks if any

IsStaggered +

+

/////////////////////////// STAGGER //////////////////////////////////// +Returns if staggered

IsStun +

+

/////////////////////////// STUN //////////////////////////////////// +Returns if stunned

IsUnconscious +

+

///////////////UNCONSCIOUS +Returns if unconscious

Knockdown +

+

Applies knockdown from current world time unless existing duration is higher

KnockdownNoChain +

+

Applies knockdown only if not currently applied

Mute +

+

Mutes the target for the stated duration

Paralyze +

+

Applies paralyze from current world time unless existing duration is higher

ParalyzeNoChain +

+

Applies paralyze only if not currently applied

SetConfused +

+

Used to set confused to a set amount, commonly to remove it

SetImmobilized +

+

Used to set immobilize to a set amount, commonly to remove it

SetKnockdown +

+

Used to set knockdown to a set amount, commonly to remove it

SetParalyzed +

+

Used to set paralyzed to a set amount, commonly to remove it

SetSleeping +

+

Used to set sleeping to a set amount, commonly to remove it

SetStun +

+

Used to set stun to a set amount, commonly to remove it

SetUnconscious +

+

Used to set unconscious to a set amount, commonly to remove it

Sleeping +

+

Applies sleeping from current world time unless existing duration is higher

Stagger +

+

Applies stagger from current world time unless existing duration is higher

Stun +

+

Applies stun from current world time unless existing duration is higher

Unconscious +

+

Applies unconscious from current world time unless existing duration is higher

activate_hand +

+

Swap to the hand clicked on the hud

add_emitted_auras +

+

Add a list of auras to our current emitted, update self as needed

add_splatter_floor +

+

add_splatter_floor

add_stamina_regen_modifier +

+

Adds an entry to our stamina_regen_modifiers and updates stamina_regen_multiplier

add_stun_absorption +

+

STUN ABSORPTION

add_ventcrawl +

+

TODO istype(src) stupidity

adjust_blood_volume +

+

Adjusts the blood volume, with respect to the minimum and maximum values

adjust_drugginess +

+

Modify mob's drugginess in either direction, minimum zero. Adds or removes druggy overlay as appropriate.

adjust_fire_stacks +

+

Adjusting the amount of fire_stacks we have on person

adjust_mob_accuracy +

+

Modifies the mobs inherent accuracy modifier

adjust_mob_scatter +

+

Modifies the mobs inherent scatter modifier

adjust_radiation +

+

Modifies irradiation duration

adjust_slowdown +

+

This is where we normalize the set_slowdown input to be at least 0

adjust_stagger +

+

Applies stagger or adds to existing duration

adjust_timed_status_effect +

+

Adjusts a timed status effect on the mob,taking into account any existing timed status effects. +This can be any status effect that takes into account "duration" with their initialize arguments.

+

Positive durations will add deciseconds to the duration of existing status effects +or apply a new status effect of that duration to the mob.

+

Negative durations will remove deciseconds from the duration of an existing version of the status effect, +removing the status effect entirely if the duration becomes less than zero (less than the current world time).

+

duration - the duration, in deciseconds, to add or remove from the effect +effect - the type of status effect being adjusted on the mob +max_duration - optional - if set, positive durations will only be added UP TO the passed max duration

admin_give_speech_impediment +

+

Admin only proc for giving a certain speech impediment to this mob

amount_irradiated +

+

How many deciseconds remain in our irradiated status effect

apply_damages +

+

Used to apply multiple types of damage to a mob at the same time

apply_effect +

+

Apply status effect to mob

+

Arguments +*effect: duration or amount of effect +*effecttype which affect to apply +*updating_health if we should update health [/mob/living/updatehealth]

apply_effects +

+

Applies multiple negative effects to a mob

apply_radiation +

+

Applies radiation effects to a mob

attacked_by_alternate +

+

/mob/living attacked_by_alternate //TODO!! MAKE THIS UNIQUE FROM NORMAL ATTACKED_BY AS A FEATURE

+

Called when a mob is attacked by an item +while the user clicked on them with left click +Arguments: +I: item this mob is being attacked by +user: the attacker +def_zone: targetted area that will be attacked

can_receive_aura +

+

Can we receive this aura? returns bool

create_thinking_indicator +

+

Overrides for overlay creation

despawn +

+

Despawn the mob, remove its job and store its item

do_projectile_hit +

+

Is the shooter a living mob. Defined before the check as used later as well +accumulated movement related evasion bonus

enable_throw_parry +

+

Sends a signal to enable throw parrying for the handed duration, provided the throw_parry component is attached. Otherwise, has no real effect. +For more information on parries, see throw_parry.dm

finish_aura_cycle +

+

Adjusts our stats based on the auras we've received and care about, then cleans out the list for next tick.

fly_at +

+

Throw the mob while giving HOVERING to flag_pass and setting layer to FLY_LAYER

+

target : where will the mob be thrown at +range : how far the mob will be thrown, in tile +speed : how fast will it fly

get_equipped_items +

+

Used to return a list of equipped items on a mob; does not include held items (use get_all_gear)

+

Argument(s):

+

get_ghost +

+

Proc to check for a mob's ghost.

get_hard_acid_protection +

+

Returns the overall HARD acid protection of a mob.

get_living_limb_descriptive_name +

+

Gives us a more natural sounding limb name for descriptions and such

get_soft_acid_protection +

+

Returns the overall SOFT acid protection of a mob.

get_up +

+

Handles getting up, doing a basic check before relaying it to the actual proc that does it

handle_blood +

+

BLOOD SYSTEM

handle_fire +

+

Update fire stacks on life tick

handle_slowdown +

+

Standard slowdown regen called by life.dm

hud_set_firestacks +

+

Set fire stacks on the hud

irradiate +

+

Applies irradiation from a source

is_irradiated +

+

////////////////////////////// Irradiated ////////////////////////////////// +Returns whether the mob is irradiated or not

on_closet_dump +

+

Action delay when going out of a closet

on_fakedeath_trait_gain +

+

Called when TRAIT_FAKEDEATH is added to the mob.

on_fakedeath_trait_loss +

+

Called when TRAIT_FAKEDEATH is removed from the mob.

on_floored_trait_gain +

+

Called when TRAIT_FLOORED is added to the mob.

on_floored_trait_loss +

+

Called when TRAIT_FLOORED is removed from the mob.

on_immobile_trait_gain +

+

Called when TRAIT_LEGLESS is added to the mob.

on_immobile_trait_loss +

+

Called when TRAIT_LEGLESS is removed from the mob.

on_knockedout_trait_gain +

+

Called when TRAIT_KNOCKEDOUT is added to the mob.

on_knockedout_trait_loss +

+

Called when TRAIT_KNOCKEDOUT is removed from the mob.

on_legless_trait_gain +

+

Called when TRAIT_LEGLESS is added to the mob.

on_legless_trait_loss +

+

Called when TRAIT_LEGLESS is removed from the mob.

on_sdd_grace_period_end +

+

Set the mob as afk after AFK_TIMER

radio +

+

caps the length of individual letters to 3: ex: heeeeeeyy -> heeeyy +prevents TTS from choking on unrealistic text while keeping emphasis

recalc_stamina_regen_multiplier +

+

Regenerates stamina_regen_multiplier from initial based on the current modifier list, minimum 0.

receive_aura +

+

Update what auras we'll receive this life tick if it's either new or stronger than current. aura_type as AURA_ define, strength as number.

record_melee_damage +

+

Tally to personal_statistics that a melee attack took place, and record the damage dealt

record_projectile_damage +

+

Tally to personal_statistics that a successful shot was made and record the damage dealt

record_time_in_cryo +

+

Record how long a mob was in a cryo tube

record_time_in_stasis +

+

Record how long a mob was in a stasis bag

record_time_lying_down +

+

Record how much time a mob was lying down for

record_time_unconscious +

+

Record how long a mob was knocked out or sleeping

register_init_signals +

+

Called on /mob/living/Initialize(), for the mob to register to relevant signals.

remove_emitted_auras +

+

Remove a list of auras from our current emitted, update self as needed

remove_stamina_regen_modifier +

+

Removes an entry from our stamina_regen_modifiers and updates stamina_regen_multiplier. Returns TRUE if an entry was removed

resist_fire +

+

Try and remove fire from ourselves

setBruteLoss +

+

We straight up set bruteloss/brute damage to a desired amount unless godmode is enabled

setFireLoss +

+

We straight up set fireloss/burn damage to a desired amount unless godmode is enabled

set_afk_status +

+

Set the afk status of the mob

set_blood_volume +

+

Sets the blood volume, with respect to the minimum and maximum values

set_drugginess +

+

Sets mob's drugginess to provided amount, minimum 0. Adds or removes druggy overlay as appropriate.

set_jump_component +

+

Sets up the jump component for the mob. Proc args can be altered so different mobs have different 'default' jump settings

set_lying_angle +

+

Changes the inclination angle of a mob, used by humans and others to differentiate between standing up and prone positions.

+

In BYOND-angles 0 is NORTH, 90 is EAST, 180 is SOUTH and 270 is WEST. +This usually means that 0 is standing up, 90 and 270 are horizontal positions to right and left respectively, and 180 is upside-down. +Mobs that do now follow these conventions due to unusual sprites should require a special handling or redefinition of this proc, due to the density and layer changes. +The return of this proc is the previous value of the modified lying_angle if a change was successful (might include zero), or null if no change was made.

set_radiation +

+

Sets irradiation duration

set_remote_control +

+

Set the remote_control and reset the perspective

set_resting +

+

Actually handles toggling the resting state

set_slowdown +

+

Where the magic happens. Actually applies slow stacks.

set_stagger +

+

Used to set stagger to a set amount, commonly to remove it

set_timed_status_effect +

+

Sets a timed status effect of some kind on a mob to a specific value. +If only_if_higher is TRUE, it will only set the value up to the passed duration, +so any pre-existing status effects of the same type won't be reduced down

+

duration - the duration, in deciseconds, of the effect. 0 or lower will either remove the current effect or do nothing if none are present +effect - the type of status effect given to the mob +only_if_higher - if TRUE, we will only set the effect to the new duration if the new duration is longer than any existing duration

shared_living_ui_distance +

+

public

+

Distance versus interaction check.

+

required src_object atom/movable The object which owns the UI.

+

return UI_state The state of the UI.

swap_hand +

+

Swap the active hand

take_overall_damage +

+

Damages all limbs equally. Overridden by human, otherwise just does apply_damage

toggle_resting +

+

Handles trying to toggle resting state

transfer_mob +

+

Transfer the candidate mind into src

update_aura_overlay +

+

Bring however we represent emitted auras up to date. Implemented for human and xenomorph.

update_fire +

+

Updates fire visuals

update_stam_skill_mod +

+

Updates the mob's stamina modifiers if their stam skill changes

update_z +

+

Updates the mob's registered_z

user_can_buckle +

+

Returns TRUE or FALSE depending on whether src can buckle buckling_mob into something

+ + + diff --git a/mob/living/carbon.html b/mob/living/carbon.html new file mode 100644 index 0000000000000..854e54e011004 --- /dev/null +++ b/mob/living/carbon.html @@ -0,0 +1,190 @@ + + + + + + + /mob/living/carbon - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

carbon + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + +

Vars

analgesicwhen this is set, the mob isn't affected by shock or pain. life should decrease this by 1 every tick
breath_failingTracks whether our most recent breath has failed, for messages and HUD feedback.
dream_amountsamount of dreams left to go
drunkennessOverall drunkenness - check handle_status_effects() in life.dm for effects
gib_chance% Chance of exploding on death, incremented by total damage taken if not initially zero.
handcuffedWhether or not the mob is handcuffed
life_tickThe amount of life ticks that have processed on this mob.
losebreathCauses breathing to fail and generate oxyloss instead of recover it, even outside crit.
mob_abilitieslist of abilities this mob has access to
overlays_standingcarbon overlay layers
selected_abilityCurrently selected ability
speciesContains icon generation and language information, set during New().

Procs

add_abilityadds an ability to the mob
deduct_ability_costdeducts the cost of using an ability
do_giveLook for a nearby human to give the held item, and ask him if he wants it
get_damaged_organReturn the most damaged internal_organ that isn't at 0, or null.
give_signal_handlerSignal handler for give keybind
grabbed_self_attackHandles when the player clicks on themself with the grab item
inject_bloodBLOOD TRANSFERS
remove_abilityRemoves an ability from a mob
update_handcuffedcalled when we get cuffed/uncuffed
update_transformIMPORTANT: Multiple animate() calls do not stack well, so try to do them all at once if you can.
wear_mask_updateUpdates the mask slot icon
+

Var Details

analgesic + + + + +

+

when this is set, the mob isn't affected by shock or pain. life should decrease this by 1 every tick

breath_failing + + + + +

+

Tracks whether our most recent breath has failed, for messages and HUD feedback.

dream_amounts + + + + +

+

amount of dreams left to go

drunkenness + + + + +

+

Overall drunkenness - check handle_status_effects() in life.dm for effects

gib_chance + + + + +

+

% Chance of exploding on death, incremented by total damage taken if not initially zero.

handcuffed + + + + +

+

Whether or not the mob is handcuffed

life_tick + + + + +

+

The amount of life ticks that have processed on this mob.

losebreath + + + + +

+

Causes breathing to fail and generate oxyloss instead of recover it, even outside crit.

mob_abilities + + + + +

+

list of abilities this mob has access to

overlays_standing + + + + +

+

carbon overlay layers

selected_ability + + + + +

+

Currently selected ability

species + + + + +

+

Contains icon generation and language information, set during New().

Proc Details

add_ability +

+

adds an ability to the mob

deduct_ability_cost +

+

deducts the cost of using an ability

do_give +

+

Look for a nearby human to give the held item, and ask him if he wants it

get_damaged_organ +

+

Return the most damaged internal_organ that isn't at 0, or null.

give_signal_handler +

+

Signal handler for give keybind

grabbed_self_attack +

+

Handles when the player clicks on themself with the grab item

inject_blood +

+

BLOOD TRANSFERS

remove_ability +

+

Removes an ability from a mob

update_handcuffed +

+

called when we get cuffed/uncuffed

update_transform +

+

IMPORTANT: Multiple animate() calls do not stack well, so try to do them all at once if you can.

wear_mask_update +

+

Updates the mask slot icon

+ + + diff --git a/mob/living/carbon/human.html b/mob/living/carbon/human.html new file mode 100644 index 0000000000000..32260ac0cd284 --- /dev/null +++ b/mob/living/carbon/human.html @@ -0,0 +1,626 @@ + + + + + + + /mob/living/carbon/human - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

human + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

ageCharacter's age (pure fluff)
assigned_squadThe squad this human is assigned to
beltThe belt being worn.
chestburstchestburst state
command_aura_allowedAuras we can create, used for the order choice UI.
damageoverlaytempUsed to help determine the severity icon state for our damage hud overlays
dead_ticksHow long the human is dead, in life ticks, which is 2 seconds
ethnicityThe character's ethnicity
exploit_recordThis human's custom exploit record. Fluff.
flag_auraStrength of the flag aura affecting us
flavor_textThis human's flavor text. Shows up when they're examined.
gen_recordThis human's custom employment record. Fluff.
germ_levelHow much dirt the mob's accumulated. Harmless by itself, but can trigger issues with open wounds or surgery.
glassesThe glasses being worn.
glovesThe gloves being worn.
headThe item currently on the character's head.
holo_card_colorWhich color type of holocard is printed on us
internal_organs_by_nameA list of internal organs by name ["organ name"] = /datum/internal_organ
l_storeThe item currently in the left pocket
last_damUsed for determining if we need to process all limbs or just some or even none.
last_shock_effectThis is the cooldown on suffering additional effects for when shock gets high
limbsA list of our limb datums
makeup_styleThe style of the makeup the mob currently has applied. Used to determine the right icon state for on the mob.
marksman_auraStrength of the focus order aura affecting us
med_recordThis human's custom medical record. Fluff.
mob_heightHeight of the mob
mobility_auraStrength of the move order aura affecting us
protection_auraStrength of the hold order aura affecting us
r_storeThe item currently in the right pocket
religionThe character's religion. Fluff.
s_storeThe item currently inside the suit storage slot (not inside the armor itself)
sec_recordThis human's custom security record. Fluff.
shoesThe shoes currently being worn.
stand_iconThe current standing icon
undershirtWhich undershirt the player wants.
underwearWhich underwear the player wants
w_uniformThe jumpsuit/uniform that's currently being worn.
wear_earThe headset/ear item being worn.
wear_idThe ID being worn.
wear_suitThe item currently being worn in the suit slot (usually armor)
xeno_push_delayThe cooldown for being pushed by xenos on harm intent

Procs

acid_spray_enteredSignal handler to burn and maybe stun the human entering the acid spray
amputate_limbAmputates the limb in the specified limb zone
apply_height_filtersApplies a filter to an appearance according to mob height
apply_height_offsetsUsed in some circumstances where appearances can get cut off from the mob sprite from being too tall
async_do_quick_equipasync signal wrapper for do_quick_equip
check_defibProc for checking parameters of a human for defibrillation.
copy_clothing_prefscopies over clothing preferences like underwear to another human
do_quick_equipruns equip, quick_equip_used is the # in INVOKE_ASYNC
do_unique_actionTry to perform a unique action on the held items
equip_role_outfitfinds and equips a valid outfit for a specified job and species
finish_revive_to_critCheck if we have a mind, and finish the revive if we do
force_sayMakes the player force say what's in their current input box.
get_damage_icon_partfetches the damage icon part, and caches it if it made a new one
get_equipped_itemsUsed to return a list of equipped items on a human mob; does not include held items (use get_all_gear)
get_eye_protectionget_eye_protection() +Returns a number between -1 to 2
get_mob_heightGetter for mob height
get_organ_slotGets organ by name
get_target_lockThis looks for a an ID on a person and checkes if an access tag from their ID matches the provided access tag. Used with the gun, claymore, sentry and possibly other IFF code. +Does not actually check for station jobs.
get_type_in_slotsReturn the first item found in SLOT_ALL of the type searched +type searched the type you are looking for
has_working_organsProc to check if a carbon human has the required organs to sustain life.
heal_limbsHeal limbs until the total mob health went up by health_to_heal
heal_overall_damageHeal MANY limbs, in random order. If robo_repair is TRUE then both metal and flesh limbs will be healed, otherwise only flesh.
hud_set_orderUpdates aura hud icons
is_item_in_handsReturn [TRUE]|[FALSE] if item_searched is in the hands of the human +item_searched the item you want to check
is_item_in_slotsReturn [TRUE]|[FALSE] if item_searched is equipped or in the hands of the human +item_searched the item you want to check
oncritdraggives humans oxy when dragged by a xeno, called on COMSIG_MOVABLE_PULL_MOVED
pick_order_targetChoose what we're sending a buff order through
receive_orderProc to give a marine an order +target : what atom to track +arrow_type : what kind of visual arrow will be spawned on the marine +verb_name : a word / sentence to describe the order
remove_organ_slotRemoves organ by name
resuscitateProc that brings a carbon human back to life. Only works if their health is higher than their death threshold and they are dead in the first place.
revive_to_critRevive the huamn up to X health points
set_flag_auraUpdates the flag aura if it is actually changing
set_marksman_aura_auraUpdates the marksman aura if it is actually changing
set_mob_heightSetter for mob height
set_mobility_auraUpdates the mobility aura if it is actually changing
set_protection_auraUpdates the protection aura if it is actually changing
set_undefibbableMarks the mob as unrevivable +Arguments:
suggest_squad_assignwrapper for a signal to handle opening the squad selector ui just before drop
update_bodypartssnowflake replacement handling since we don't have tg's proper handling of individual body parts as overlays
+

Var Details

age + + + + +

+

Character's age (pure fluff)

assigned_squad + + + + +

+

The squad this human is assigned to

belt + + + + +

+

The belt being worn.

chestburst + + + + +

+

chestburst state

command_aura_allowed + + + + +

+

Auras we can create, used for the order choice UI.

damageoverlaytemp + + + + +

+

Used to help determine the severity icon state for our damage hud overlays

dead_ticks + + + + +

+

How long the human is dead, in life ticks, which is 2 seconds

ethnicity + + + + +

+

The character's ethnicity

exploit_record + + + + +

+

This human's custom exploit record. Fluff.

flag_aura + + + + +

+

Strength of the flag aura affecting us

flavor_text + + + + +

+

This human's flavor text. Shows up when they're examined.

gen_record + + + + +

+

This human's custom employment record. Fluff.

germ_level + + + + +

+

How much dirt the mob's accumulated. Harmless by itself, but can trigger issues with open wounds or surgery.

glasses + + + + +

+

The glasses being worn.

gloves + + + + +

+

The gloves being worn.

head + + + + +

+

The item currently on the character's head.

holo_card_color + + + + +

+

Which color type of holocard is printed on us

internal_organs_by_name + + + + +

+

A list of internal organs by name ["organ name"] = /datum/internal_organ

l_store + + + + +

+

The item currently in the left pocket

last_dam + + + + +

+

Used for determining if we need to process all limbs or just some or even none.

last_shock_effect + + + + +

+

This is the cooldown on suffering additional effects for when shock gets high

limbs + + + + +

+

A list of our limb datums

makeup_style + + + + +

+

The style of the makeup the mob currently has applied. Used to determine the right icon state for on the mob.

marksman_aura + + + + +

+

Strength of the focus order aura affecting us

med_record + + + + +

+

This human's custom medical record. Fluff.

mob_height + + + + +

+

Height of the mob

mobility_aura + + + + +

+

Strength of the move order aura affecting us

protection_aura + + + + +

+

Strength of the hold order aura affecting us

r_store + + + + +

+

The item currently in the right pocket

religion + + + + +

+

The character's religion. Fluff.

s_store + + + + +

+

The item currently inside the suit storage slot (not inside the armor itself)

sec_record + + + + +

+

This human's custom security record. Fluff.

shoes + + + + +

+

The shoes currently being worn.

stand_icon + + + + +

+

The current standing icon

undershirt + + + + +

+

Which undershirt the player wants.

underwear + + + + +

+

Which underwear the player wants

w_uniform + + + + +

+

The jumpsuit/uniform that's currently being worn.

wear_ear + + + + +

+

The headset/ear item being worn.

wear_id + + + + +

+

The ID being worn.

wear_suit + + + + +

+

The item currently being worn in the suit slot (usually armor)

xeno_push_delay + + + + +

+

The cooldown for being pushed by xenos on harm intent

Proc Details

acid_spray_entered +

+

Signal handler to burn and maybe stun the human entering the acid spray

amputate_limb +

+

Amputates the limb in the specified limb zone

apply_height_filters +

+

Applies a filter to an appearance according to mob height

apply_height_offsets +

+

Used in some circumstances where appearances can get cut off from the mob sprite from being too tall

+

upper_torso is to specify whether the appearance is locate in the upper half of the mob rather than the lower half, +higher up things (hats for example) need to be offset more due to the location of the filter displacement

async_do_quick_equip +

+

async signal wrapper for do_quick_equip

check_defib +

+

Proc for checking parameters of a human for defibrillation.

+

Checks decapitation, DNR status, organ damage and health status (in that order) for defibrillation.

+

See defines in __DEFINES/defibrillator.dm for bitflags.

+

additional_health_increase can be used to add additional health when calculating health for situations like grabbing ghost.

copy_clothing_prefs +

+

copies over clothing preferences like underwear to another human

do_quick_equip +

+

runs equip, quick_equip_used is the # in INVOKE_ASYNC

do_unique_action +

+

Try to perform a unique action on the held items

equip_role_outfit +

+

finds and equips a valid outfit for a specified job and species

finish_revive_to_crit +

+

Check if we have a mind, and finish the revive if we do

force_say +

+

Makes the player force say what's in their current input box.

get_damage_icon_part +

+

fetches the damage icon part, and caches it if it made a new one

get_equipped_items +

+

Used to return a list of equipped items on a human mob; does not include held items (use get_all_gear)

+

Argument(s):

+

get_eye_protection +

+

get_eye_protection() +Returns a number between -1 to 2

get_mob_height +

+

Getter for mob height

+

Mainly so that dwarfism can adjust height without needing to override existing height

+

Returns a mob height num

get_organ_slot +

+

Gets organ by name

get_target_lock +

+

This looks for a an ID on a person and checkes if an access tag from their ID matches the provided access tag. Used with the gun, claymore, sentry and possibly other IFF code. +Does not actually check for station jobs.

get_type_in_slots +

+

Return the first item found in SLOT_ALL of the type searched +type searched the type you are looking for

has_working_organs +

+

Proc to check if a carbon human has the required organs to sustain life.

+

Returns false if has_brain returns false, this human is missing a heart, or their current heart is broken

+

Returns true otherwise

heal_limbs +

+

Heal limbs until the total mob health went up by health_to_heal

heal_overall_damage +

+

Heal MANY limbs, in random order. If robo_repair is TRUE then both metal and flesh limbs will be healed, otherwise only flesh.

hud_set_order +

+

Updates aura hud icons

is_item_in_hands +

+

Return [TRUE]|[FALSE] if item_searched is in the hands of the human +item_searched the item you want to check

is_item_in_slots +

+

Return [TRUE]|[FALSE] if item_searched is equipped or in the hands of the human +item_searched the item you want to check

oncritdrag +

+

gives humans oxy when dragged by a xeno, called on COMSIG_MOVABLE_PULL_MOVED

pick_order_target +

+

Choose what we're sending a buff order through

receive_order +

+

Proc to give a marine an order +target : what atom to track +arrow_type : what kind of visual arrow will be spawned on the marine +verb_name : a word / sentence to describe the order

remove_organ_slot +

+

Removes organ by name

resuscitate +

+

Proc that brings a carbon human back to life. Only works if their health is higher than their death threshold and they are dead in the first place.

+

Intended to be called by defibrillators or anything that brings a carbon human back to life

revive_to_crit +

+

Revive the huamn up to X health points

set_flag_aura +

+

Updates the flag aura if it is actually changing

set_marksman_aura_aura +

+

Updates the marksman aura if it is actually changing

set_mob_height +

+

Setter for mob height

+

Exists so that the update is done immediately

+

Returns TRUE if changed, FALSE otherwise

set_mobility_aura +

+

Updates the mobility aura if it is actually changing

set_protection_aura +

+

Updates the protection aura if it is actually changing

set_undefibbable +

+

Marks the mob as unrevivable +Arguments:

+

suggest_squad_assign +

+

wrapper for a signal to handle opening the squad selector ui just before drop

update_bodyparts +

+

snowflake replacement handling since we don't have tg's proper handling of individual body parts as overlays

+ + + diff --git a/mob/living/carbon/xenomorph.html b/mob/living/carbon/xenomorph.html new file mode 100644 index 0000000000000..58cc447b36236 --- /dev/null +++ b/mob/living/carbon/xenomorph.html @@ -0,0 +1,617 @@ + + + + + + + /mob/living/carbon/xenomorph - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

xenomorph + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

agility0 - upright, 1 - all fours
ammoThe ammo datum for our spit projectiles. We're born with this, it changes sometimes.
backpack_overlayHandles displaying any equipped backpack item, such as a saddle
behemoth_chargingWhether we are currently charging or not.
caste_base_typedatum/xeno_caste that we will be on init
corrosive_ammoBoiler acid ammo
current_auraThe aura we're currently emitted. Destroyed whenever we change or stop pheromones.
eaten_mobA mob the xeno ate
endurewhen true the rav will not go into crit or take crit damage.
evolution_storedHow much evolution they have stored
fire_overlayHandles displaying the various fire states of the xeno
footstep_typeThe type of footstep this xeno has.
frenzy_auraStrength of aura we are affected by. NOT THE ONE WE ARE EMITTING
hiveHive datum we belong to
hivenumberHive name define
huggersNumber of huggers the xeno is currently carrying
inherent_verbsThis list of inherent verbs lets us take any proc basically anywhere and add them. +If they're not a xeno subtype it might crash or do weird things, like using human verb procs +It should add them properly on New() and should reset/readd them on evolves
is_chargingWill the mob charge when moving ? You need the charge verb to change this
leader_current_auraIf we're chosen as leader, this is the leader aura we emit.
loc_weeds_typeType of weeds the xeno is standing on, null when not on weeds
neuro_ammoBoiler Neuro ammo
nicknumberNaming variables
observed_xenoThe xenomorph that this source is currently overwatching
pheromone_costPassive plasma cost per tick for enabled personal (not leadership) pheromones.
plasma_storedPlasma currently stored
recovery_auraStrength of aura we are affected by. NOT THE ONE WE ARE EMITTING
regen_powerResets to -xeno_caste.regen_delay when you take damage. +Negative values act as a delay while values greater than 0 act as a multiplier. +Will increase by 10 every decisecond if under 0. +Increases by xeno_caste.regen_ramp_amount every decisecond. If you want to balance this, look at the xeno_caste defines mentioned above.
selected_plantwhich plant to place when we use sow
selected_reagentwhich reagent to slash with using reagent slash
selected_resinwhich resin structure to build when we secrete resin
status_toggle_flagsState tracking of hive status toggles
sundersunder affects armour values and does a % removal before dmg is applied. 50 sunder == 50% effective armour values
tierThis will track their "tier" to restrict/limit evolutions
trackedThe xenos/silo/nuke currently tracked by the xeno_tracker arrow
upgradeThis will track their upgrade level.
upgrade_storedHow much upgrade points they have stored.
vampirismwhen true the rav leeches healing off of hitting marines
warding_auraStrength of aura we are affected by. NOT THE ONE WE ARE EMITTING
wound_overlayHandles displaying the various wound states of the xeno.
wrath_storedThe amount of Wrath currently stored.
xeno_flagsXeno mob specific flags
xeno_melee_damage_modifierMultiplicative melee damage modifier; referenced by attack_alien.dm, most notably attack_alien_harm
xeno_resting_cooldownThe resting cooldown
xeno_unresting_cooldownThe unresting cooldown

Procs

apply_health_stat_buffWill multiply the base max health of this xeno by GLOB.xeno_stat_multiplicator_buff while maintaining current health percent.
can_mountChecks if user can mount src
carry_targetHandles the target trying to ride src
caste_evolution_checksCheck if the xeno can currently evolve into a specific caste
change_formInitiate of form changing on the xeno
check_concious_stateA simple handler for checking your state. Will ignore if the xeno is lying down
check_weedsChecks for nearby intact weeds
clean_trackedSignal handler to null tracked
do_evolveHandles the evolution or devolution of the xenomorph
eject_victimEject the mob inside our belly, and putting it in a cocoon if needed
finish_evolveActually changes the xenomorph to another caste
generic_evolution_checksCheck if the xeno is currently able to evolve
get_evolution_optionsCreates a list of possible /datum/xeno_caste options for a caste based on their tier.
give_rally_abilitiesHelper proc for giving the rally abilities
handle_living_sunder_updatesHandles sunder modification/recovery during life.dm for xenos
handle_weeds_adjacent_removedHandles logic for weeds nearby the xeno getting removed
handle_weeds_on_movement
hivemind_endCalled to create the suffix for xeno hivemind messages
hivemind_startCalled to create the prefix for xeno hivemind messages
playtime_as_numberReturns the playtime as a number, used for rank icons
record_recycle_pointsTally how many req-points worth of xenomorphs have been recycled
remove_rally_hive_abilityHelper proc for removing the rally hive ability appropriately
replace_by_aiKick the player from this mob, replace it by a more competent ai
reset_bombard_pointerResets the boiler's mouse cursor to the default cursor.
salve_healingHeals the target.
set_bombard_pointerSet the boiler's mouse cursor to the green firing cursor.
set_datumChange the caste of the xeno. If restore health is true, then health is set to the new max health
set_trackedSet the var tracked to to_track
spec_evolution_boostHandles special conditions that influence a caste's evolution point gain, such as larva gaining a bonus if on weed.
update_ammo_glowupdates the xenos glow, based on its base glow/color, and its ammo reserves. More green ammo = more green glow; more yellow = more yellow.
update_glowupdates the xeno's glow, based on the ability being used
update_leader_iconHandles icon updates when leadered/unleadered. Evolution.dm also uses this
update_snowflake_overlaysUpdates the niche overlays of a xenomorph, like the backpack overlay
update_woundsUpdates the wound overlays on the xeno
upgrade_possiblereturns TRUE if we are permitted to evo to the next caste FALSE otherwise
xeno_iff_checkThis handles checking for a xenomorph's potential IFF signals carried by components +Currently, IFF tags attach a component listening for this.
+

Var Details

agility + + + + +

+

0 - upright, 1 - all fours

ammo + + + + +

+

The ammo datum for our spit projectiles. We're born with this, it changes sometimes.

backpack_overlay + + + + +

+

Handles displaying any equipped backpack item, such as a saddle

behemoth_charging + + + + +

+

Whether we are currently charging or not.

caste_base_type + + + + +

+

datum/xeno_caste that we will be on init

corrosive_ammo + + + + +

+

Boiler acid ammo

current_aura + + + + +

+

The aura we're currently emitted. Destroyed whenever we change or stop pheromones.

eaten_mob + + + + +

+

A mob the xeno ate

endure + + + + +

+

when true the rav will not go into crit or take crit damage.

evolution_stored + + + + +

+

How much evolution they have stored

fire_overlay + + + + +

+

Handles displaying the various fire states of the xeno

footstep_type + + + + +

+

The type of footstep this xeno has.

frenzy_aura + + + + +

+

Strength of aura we are affected by. NOT THE ONE WE ARE EMITTING

hive + + + + +

+

Hive datum we belong to

hivenumber + + + + +

+

Hive name define

huggers + + + + +

+

Number of huggers the xeno is currently carrying

inherent_verbs + + + + +

+

This list of inherent verbs lets us take any proc basically anywhere and add them. +If they're not a xeno subtype it might crash or do weird things, like using human verb procs +It should add them properly on New() and should reset/readd them on evolves

is_charging + + + + +

+

Will the mob charge when moving ? You need the charge verb to change this

leader_current_aura + + + + +

+

If we're chosen as leader, this is the leader aura we emit.

loc_weeds_type + + + + +

+

Type of weeds the xeno is standing on, null when not on weeds

neuro_ammo + + + + +

+

Boiler Neuro ammo

nicknumber + + + + +

+

Naming variables

observed_xeno + + + + +

+

The xenomorph that this source is currently overwatching

pheromone_cost + + + + +

+

Passive plasma cost per tick for enabled personal (not leadership) pheromones.

plasma_stored + + + + +

+

Plasma currently stored

recovery_aura + + + + +

+

Strength of aura we are affected by. NOT THE ONE WE ARE EMITTING

regen_power + + + + +

+

Resets to -xeno_caste.regen_delay when you take damage. +Negative values act as a delay while values greater than 0 act as a multiplier. +Will increase by 10 every decisecond if under 0. +Increases by xeno_caste.regen_ramp_amount every decisecond. If you want to balance this, look at the xeno_caste defines mentioned above.

selected_plant + + + + +

+

which plant to place when we use sow

selected_reagent + + + + +

+

which reagent to slash with using reagent slash

selected_resin + + + + +

+

which resin structure to build when we secrete resin

status_toggle_flags + + + + +

+

State tracking of hive status toggles

sunder + + + + +

+

sunder affects armour values and does a % removal before dmg is applied. 50 sunder == 50% effective armour values

tier + + + + +

+

This will track their "tier" to restrict/limit evolutions

tracked + + + + +

+

The xenos/silo/nuke currently tracked by the xeno_tracker arrow

upgrade + + + + +

+

This will track their upgrade level.

upgrade_stored + + + + +

+

How much upgrade points they have stored.

vampirism + + + + +

+

when true the rav leeches healing off of hitting marines

warding_aura + + + + +

+

Strength of aura we are affected by. NOT THE ONE WE ARE EMITTING

wound_overlay + + + + +

+

Handles displaying the various wound states of the xeno.

wrath_stored + + + + +

+

The amount of Wrath currently stored.

xeno_flags + + + + +

+

Xeno mob specific flags

xeno_melee_damage_modifier + + + + +

+

Multiplicative melee damage modifier; referenced by attack_alien.dm, most notably attack_alien_harm

xeno_resting_cooldown + + + + +

+

The resting cooldown

xeno_unresting_cooldown + + + + +

+

The unresting cooldown

Proc Details

apply_health_stat_buff +

+

Will multiply the base max health of this xeno by GLOB.xeno_stat_multiplicator_buff while maintaining current health percent.

can_mount +

+

Checks if user can mount src

+

Arguments:

+

carry_target +

+

Handles the target trying to ride src

+

Arguments:

+

caste_evolution_checks +

+

Check if the xeno can currently evolve into a specific caste

change_form +

+

Initiate of form changing on the xeno

check_concious_state +

+

A simple handler for checking your state. Will ignore if the xeno is lying down

check_weeds +

+

Checks for nearby intact weeds

clean_tracked +

+

Signal handler to null tracked

do_evolve +

+

Handles the evolution or devolution of the xenomorph

eject_victim +

+

Eject the mob inside our belly, and putting it in a cocoon if needed

finish_evolve +

+

Actually changes the xenomorph to another caste

generic_evolution_checks +

+

Check if the xeno is currently able to evolve

get_evolution_options +

+

Creates a list of possible /datum/xeno_caste options for a caste based on their tier.

give_rally_abilities +

+

Helper proc for giving the rally abilities

handle_living_sunder_updates +

+

Handles sunder modification/recovery during life.dm for xenos

handle_weeds_adjacent_removed +

+

Handles logic for weeds nearby the xeno getting removed

handle_weeds_on_movement +

+

hivemind_end +

+

Called to create the suffix for xeno hivemind messages

+

This should be used to close off any opened elements from /mob/living/carbon/xenomorph/hivemind_start.

hivemind_start +

+

Called to create the prefix for xeno hivemind messages

+

Used to apply styling for queen/shrike/hivemind/leaders, giving them largetext and specific colouring. +This is also paired with /mob/living/carbon/xenomorph/hivemind_end

playtime_as_number +

+

Returns the playtime as a number, used for rank icons

record_recycle_points +

+

Tally how many req-points worth of xenomorphs have been recycled

remove_rally_hive_ability +

+

Helper proc for removing the rally hive ability appropriately

replace_by_ai +

+

Kick the player from this mob, replace it by a more competent ai

reset_bombard_pointer +

+

Resets the boiler's mouse cursor to the default cursor.

salve_healing +

+

Heals the target.

set_bombard_pointer +

+

Set the boiler's mouse cursor to the green firing cursor.

set_datum +

+

Change the caste of the xeno. If restore health is true, then health is set to the new max health

set_tracked +

+

Set the var tracked to to_track

spec_evolution_boost +

+

Handles special conditions that influence a caste's evolution point gain, such as larva gaining a bonus if on weed.

update_ammo_glow +

+

updates the xenos glow, based on its base glow/color, and its ammo reserves. More green ammo = more green glow; more yellow = more yellow.

update_glow +

+

updates the xeno's glow, based on the ability being used

update_leader_icon +

+

Handles icon updates when leadered/unleadered. Evolution.dm also uses this

update_snowflake_overlays +

+

Updates the niche overlays of a xenomorph, like the backpack overlay

update_wounds +

+

Updates the wound overlays on the xeno

upgrade_possible +

+

returns TRUE if we are permitted to evo to the next caste FALSE otherwise

xeno_iff_check +

+

This handles checking for a xenomorph's potential IFF signals carried by components +Currently, IFF tags attach a component listening for this.

+ + + diff --git a/mob/living/carbon/xenomorph/baneling.html b/mob/living/carbon/xenomorph/baneling.html new file mode 100644 index 0000000000000..2dc5d8072a590 --- /dev/null +++ b/mob/living/carbon/xenomorph/baneling.html @@ -0,0 +1,35 @@ + + + + + + + /mob/living/carbon/xenomorph/baneling - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

baneling + + + +

+ + +

Procs

handle_special_stateWe dont wanna be able to slash while balling

Proc Details

handle_special_state +

+

We dont wanna be able to slash while balling

+ + + diff --git a/mob/living/carbon/xenomorph/carrier.html b/mob/living/carbon/xenomorph/carrier.html new file mode 100644 index 0000000000000..4ebb74ee1c260 --- /dev/null +++ b/mob/living/carbon/xenomorph/carrier.html @@ -0,0 +1,36 @@ + + + + + + + /mob/living/carbon/xenomorph/carrier - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

carrier + + + +

+ + +

Vars

hugger_overlays_iconFacehuggers overlay
+

Var Details

hugger_overlays_icon + + + + +

+

Facehuggers overlay

+ + + diff --git a/mob/living/carbon/xenomorph/hivemind.html b/mob/living/carbon/xenomorph/hivemind.html new file mode 100644 index 0000000000000..f97381200fb24 --- /dev/null +++ b/mob/living/carbon/xenomorph/hivemind.html @@ -0,0 +1,92 @@ + + + + + + + /mob/living/carbon/xenomorph/hivemind - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

hivemind + + + +

+ + + + + + + + + + +

Vars

coreThe core of our hivemind
minimum_healthThe minimum health we can have

Procs

do_change_formFinish the form changing of the hivemind and give the needed stats
end_teleportFinish the teleportation process to send the hivemind manifestation to the selected turf
get_coreGetter proc for the weakref'd core
jumpJump hivemind's camera to the passed xeno, if they are on/near weeds
med_hud_set_statusHiveminds specifically have no status hud element
start_teleportStart the teleportation process to send the hivemind manifestation to the selected turf
update_icon_statehandles hivemind updating with their respective weedtype
+

Var Details

core + + + + +

+

The core of our hivemind

minimum_health + + + + +

+

The minimum health we can have

Proc Details

do_change_form +

+

Finish the form changing of the hivemind and give the needed stats

end_teleport +

+

Finish the teleportation process to send the hivemind manifestation to the selected turf

get_core +

+

Getter proc for the weakref'd core

jump +

+

Jump hivemind's camera to the passed xeno, if they are on/near weeds

med_hud_set_status +

+

Hiveminds specifically have no status hud element

start_teleport +

+

Start the teleportation process to send the hivemind manifestation to the selected turf

update_icon_state +

+

handles hivemind updating with their respective weedtype

+ + + diff --git a/mob/living/carbon/xenomorph/hunter/weapon_x.html b/mob/living/carbon/xenomorph/hunter/weapon_x.html new file mode 100644 index 0000000000000..5de3bf9bccfb2 --- /dev/null +++ b/mob/living/carbon/xenomorph/hunter/weapon_x.html @@ -0,0 +1,35 @@ + + + + + + + /mob/living/carbon/xenomorph/hunter/weapon_x - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

weapon_x + + + +

+ + +

Procs

terminate_specimenRemoved the xeno after the mission ends

Proc Details

terminate_specimen +

+

Removed the xeno after the mission ends

+ + + diff --git a/mob/living/carbon/xenomorph/praetorian/dancer.html b/mob/living/carbon/xenomorph/praetorian/dancer.html new file mode 100644 index 0000000000000..8c06cc12f16b2 --- /dev/null +++ b/mob/living/carbon/xenomorph/praetorian/dancer.html @@ -0,0 +1,35 @@ + + + + + + + /mob/living/carbon/xenomorph/praetorian/dancer - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

dancer + + + +

+ + +

Procs

on_postattackApplies the dancer mark status effect to those that they slash and damage.

Proc Details

on_postattack +

+

Applies the dancer mark status effect to those that they slash and damage.

+ + + diff --git a/mob/living/carbon/xenomorph/puppet.html b/mob/living/carbon/xenomorph/puppet.html new file mode 100644 index 0000000000000..55c84f3e94838 --- /dev/null +++ b/mob/living/carbon/xenomorph/puppet.html @@ -0,0 +1,36 @@ + + + + + + + /mob/living/carbon/xenomorph/puppet - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

puppet + + + +

+ + +

Vars

weak_masterour masters weakref
+

Var Details

weak_master + + + + +

+

our masters weakref

+ + + diff --git a/mob/living/carbon/xenomorph/runner.html b/mob/living/carbon/xenomorph/runner.html new file mode 100644 index 0000000000000..ac732039b0fd9 --- /dev/null +++ b/mob/living/carbon/xenomorph/runner.html @@ -0,0 +1,35 @@ + + + + + + + /mob/living/carbon/xenomorph/runner - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

runner + + + +

+ + +

Procs

MouseDropRunner should not be able to slash while evading.

Proc Details

MouseDrop +

+

Runner should not be able to slash while evading.

+ + + diff --git a/mob/living/carbon/xenomorph/spiderling.html b/mob/living/carbon/xenomorph/spiderling.html new file mode 100644 index 0000000000000..f8f3daef18280 --- /dev/null +++ b/mob/living/carbon/xenomorph/spiderling.html @@ -0,0 +1,50 @@ + + + + + + + /mob/living/carbon/xenomorph/spiderling - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

spiderling + + + +

+ + + + +

Vars

spiderling_stateWhat sprite state this - normal, enraged, guarding? Used for update_icons()
spidermotherThe widow that this spiderling belongs to

Procs

attack_alienIf we're covering our widow, any clicks should be transferred to them
+

Var Details

spiderling_state + + + + +

+

What sprite state this - normal, enraged, guarding? Used for update_icons()

spidermother + + + + +

+

The widow that this spiderling belongs to

Proc Details

attack_alien +

+

If we're covering our widow, any clicks should be transferred to them

+ + + diff --git a/mob/living/silicon.html b/mob/living/silicon.html new file mode 100644 index 0000000000000..b93ea206af8e1 --- /dev/null +++ b/mob/living/silicon.html @@ -0,0 +1,37 @@ + + + + + + + /mob/living/silicon - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

silicon + + + +

+ + +

Procs

get_ui_accessReturns a UI status representing this silicon's capability to access +the given source. Called by ui_status_silicon_has_access.

Proc Details

get_ui_access +

+

Returns a UI status representing this silicon's capability to access +the given source. Called by ui_status_silicon_has_access.

+ + + diff --git a/mob/living/silicon/ai.html b/mob/living/silicon/ai.html new file mode 100644 index 0000000000000..93bdf37a06193 --- /dev/null +++ b/mob/living/silicon/ai.html @@ -0,0 +1,221 @@ + + + + + + + /mob/living/silicon/ai - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

ai + + + +

+ +

This elevator serves me alone. I have complete control over this entire level. With cameras as my eyes and nodes as my hands, I rule here, insect.

+ + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

controllingIf it is currently controlling an object
current_orderSelected order to give to marine
last_ai_bioscanstores the last time the AI manually scanned the planet. we don't do cooldown_declare because we need the world time for our game panel
last_announcementHolds world time of our last regular announcement
last_pinged_marinesused for cooldown when AI pings the location of a xeno or xeno structure
linked_artilleryLinked artillery for remote targeting.
miniReference to the AIs minimap.

Procs

Destroyregister the various signals we need for alerts
ai_pingtakes an atom A and sends an alert, coordinate and for the atom to eligible marine forces if cooldown is over
announcementgets vox "sentence" from player input
associate_artilleryCalled for associating the AI with artillery
clean_artillery_refsProc called when linked_mortar is deleted.
holopad_talkHandles relayed speech
notify_ailist of mobs to send the notification to +time for calculations +divide our range into SW, NW, SE and NE for the purposes of identification +we subtract the receivers X/Y value from the target atoms X/Y value, once for x coords and one for y coords +by checking whether the result is positive or negative, we can tell the general direction the target atom is in +to avoid upsetting balance we give very general directions
ping_aiReceive notifications about someone calling the AI via holopad
receive_laser_casReceive notifications about CAS laser dots that have been deployed
receive_laser_obReceive notifications about OB laser dots that have been deployed
receive_laser_railgunReceive notifications about railgun laser dots that have been deployed
receive_lockdown_warningReceive notifications about the xenos locking down the Alamo
receive_tad_warningReceive notifications about the tad control equipment being destroyed
send_orderPrint order visual to all marines squad hud and give them an arrow to follow the waypoint
set_orderSet the current order
show_disk_completeReceive notifications about disks being generated
show_fresh_cloneReceive notifications about a fresh clone being active
show_nuke_startReceive notifications about the nuclear bomb being armed
shuttle_takeoff_notificationThis gives the stupid computer a notification whenever the dropship takes off. Crutch for a supercomputer.
+

Var Details

controlling + + + + +

+

If it is currently controlling an object

current_order + + + + +

+

Selected order to give to marine

last_ai_bioscan + + + + +

+

stores the last time the AI manually scanned the planet. we don't do cooldown_declare because we need the world time for our game panel

last_announcement + + + + +

+

Holds world time of our last regular announcement

last_pinged_marines + + + + +

+

used for cooldown when AI pings the location of a xeno or xeno structure

linked_artillery + + + + +

+

Linked artillery for remote targeting.

mini + + + + +

+

Reference to the AIs minimap.

Proc Details

Destroy +

+

register the various signals we need for alerts

ai_ping +

+

takes an atom A and sends an alert, coordinate and for the atom to eligible marine forces if cooldown is over

announcement +

+

gets vox "sentence" from player input

associate_artillery +

+

Called for associating the AI with artillery

clean_artillery_refs +

+

Proc called when linked_mortar is deleted.

holopad_talk +

+

Handles relayed speech

notify_ai +

+

list of mobs to send the notification to +time for calculations +divide our range into SW, NW, SE and NE for the purposes of identification +we subtract the receivers X/Y value from the target atoms X/Y value, once for x coords and one for y coords +by checking whether the result is positive or negative, we can tell the general direction the target atom is in +to avoid upsetting balance we give very general directions

ping_ai +

+

Receive notifications about someone calling the AI via holopad

receive_laser_cas +

+

Receive notifications about CAS laser dots that have been deployed

receive_laser_ob +

+

Receive notifications about OB laser dots that have been deployed

receive_laser_railgun +

+

Receive notifications about railgun laser dots that have been deployed

receive_lockdown_warning +

+

Receive notifications about the xenos locking down the Alamo

receive_tad_warning +

+

Receive notifications about the tad control equipment being destroyed

send_order +

+

Print order visual to all marines squad hud and give them an arrow to follow the waypoint

set_order +

+

Set the current order

show_disk_complete +

+

Receive notifications about disks being generated

show_fresh_clone +

+

Receive notifications about a fresh clone being active

show_nuke_start +

+

Receive notifications about the nuclear bomb being armed

shuttle_takeoff_notification +

+

This gives the stupid computer a notification whenever the dropship takes off. Crutch for a supercomputer.

+ + + diff --git a/mob/living/simple_animal/hostile.html b/mob/living/simple_animal/hostile.html new file mode 100644 index 0000000000000..2666291d6abd1 --- /dev/null +++ b/mob/living/simple_animal/hostile.html @@ -0,0 +1,35 @@ + + + + + + + /mob/living/simple_animal/hostile - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

hostile + + + +

+ + +

Procs

ListTargetsHOSTILE MOB TARGETTING AND AGGRESSION

Proc Details

ListTargets +

+

HOSTILE MOB TARGETTING AND AGGRESSION

+ + + diff --git a/mob/new_player.html b/mob/new_player.html new file mode 100644 index 0000000000000..212fb2639ef19 --- /dev/null +++ b/mob/new_player.html @@ -0,0 +1,156 @@ + + + + + + + /mob/new_player - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

new_player + + + +

+ + + + + + + + + + + + + + + + + + +

Vars

saved_jobThe job we tried to join but were warned it would cause an unbalance. It's saved for later use

Procs

attempt_late_joinAttempts to latejoin the player
handle_playeR_POLLSingShows a list of currently running polls a player can vote/has voted on
poll_playerRedirects a player to the correct poll window based on poll type.
poll_player_irvShows voting window for an IRV type poll, listing its options and relevant details.
poll_player_multiShows voting window for a multiple choice type poll, listing its options and relevant details.
poll_player_optionShows voting window for an option type poll, listing its options and relevant details.
poll_player_ratingShows voting window for a rating type poll, listing its options and relevant details.
poll_player_textShows voting window for a text response type poll, listing its relevant details.
toggle_readyToggles the new players ready state
view_xeno_manifestProc for lobby button "View Hive Leaders" to see current leader/queen status.
vote_on_poll_handlerRuns some poll validation before a vote is processed.
vote_on_poll_irvProcesses vote form data and saves results to the database for an IRV type poll.
vote_on_poll_multiProcesses vote form data and saves results to the database for a multiple choice type poll.
vote_on_poll_optionProcesses vote form data and saves results to the database for an option type poll.
vote_on_poll_ratingProcesses vote form data and saves results to the database for a rating type poll.
vote_on_poll_textProcesses response form data and saves results to the database for a text response type poll.
+

Var Details

saved_job + + + + +

+

The job we tried to join but were warned it would cause an unbalance. It's saved for later use

Proc Details

attempt_late_join +

+

Attempts to latejoin the player

handle_playeR_POLLSing +

+

Shows a list of currently running polls a player can vote/has voted on

poll_player +

+

Redirects a player to the correct poll window based on poll type.

poll_player_irv +

+

Shows voting window for an IRV type poll, listing its options and relevant details.

+

If already voted on, the options are sorted how a player voted for them, otherwise they are randomly shuffled.

poll_player_multi +

+

Shows voting window for a multiple choice type poll, listing its options and relevant details.

+

If already voted on, the options a player voted for are pre-selected.

poll_player_option +

+

Shows voting window for an option type poll, listing its options and relevant details.

+

If already voted on, the option a player voted for is pre-selected.

poll_player_rating +

+

Shows voting window for a rating type poll, listing its options and relevant details.

+

If already voted on, the options a player voted for are pre-selected.

poll_player_text +

+

Shows voting window for a text response type poll, listing its relevant details.

+

If already responded to, the saved response of a player is shown.

toggle_ready +

+

Toggles the new players ready state

view_xeno_manifest +

+

Proc for lobby button "View Hive Leaders" to see current leader/queen status.

vote_on_poll_handler +

+

Runs some poll validation before a vote is processed.

+

Checks a player is who they claim to be and that a poll is actually still running. +Also loads the vote_id to pass onto single-option and text polls. +Increments the vote count when successful.

vote_on_poll_irv +

+

Processes vote form data and saves results to the database for an IRV type poll.

vote_on_poll_multi +

+

Processes vote form data and saves results to the database for a multiple choice type poll.

vote_on_poll_option +

+

Processes vote form data and saves results to the database for an option type poll.

vote_on_poll_rating +

+

Processes vote form data and saves results to the database for a rating type poll.

vote_on_poll_text +

+

Processes response form data and saves results to the database for a text response type poll.

+ + + diff --git a/mob/oranges_ear.html b/mob/oranges_ear.html new file mode 100644 index 0000000000000..efdc33de9ad01 --- /dev/null +++ b/mob/oranges_ear.html @@ -0,0 +1,77 @@ + + + + + + + /mob/oranges_ear - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

oranges_ear + + + +

+ + + +

Vars

referencesreferences to everything "on" the turf we are assigned to, that we care about. populated in assign() and cleared in unassign(). +movables iside of other movables count as being "on" if they have get_turf(them) == our turf. intentionally not a lazylist

Procs

unassignclean this oranges_ear up for future use
+

Var Details

references + + + + +

+

references to everything "on" the turf we are assigned to, that we care about. populated in assign() and cleared in unassign(). +movables iside of other movables count as being "on" if they have get_turf(them) == our turf. intentionally not a lazylist

Proc Details

unassign +

+

clean this oranges_ear up for future use

+ + + diff --git a/mob/proccall_handler.html b/mob/proccall_handler.html new file mode 100644 index 0000000000000..50911eebe5986 --- /dev/null +++ b/mob/proccall_handler.html @@ -0,0 +1,44 @@ + + + + + + + /mob/proccall_handler - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

proccall_handler + + + +

+ +

Used to handle proccalls called indirectly by an admin (e.g. tgs, circuits). +Has to be a mob because IsAdminAdvancedProcCall() checks usr, which is a mob variable. +So usr is set to this for any proccalls that don't have any usr mob/client to refer to.

+ +

Procs

add_callerAdds a caller.
remove_callerRemoves a caller.

Proc Details

add_caller +

+

Adds a caller.

remove_caller +

+

Removes a caller.

+ + + diff --git a/obj.html b/obj.html new file mode 100644 index 0000000000000..8bbaca9f4c875 --- /dev/null +++ b/obj.html @@ -0,0 +1,248 @@ + + + + + + + /obj - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

obj + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

coverageOdds of a projectile hitting the object, if the object is dense
damtypedamage type to deal when this obj is attacking something
destroy_soundSound this object makes when destroyed
forcedamage amount to deal when this obj is attacking something
hard_armorModifies the AP of incoming attacks
hit_soundSound when hit
icon_previewIcon to use as a 32x32 preview in crafting menus and such
integrity_failureIntegrety below this number causes special behavior
max_integrityMax object HP
obj_flagsObject behavior flags
obj_integrityObject HP
penetrationThe amount of armor penetration the object has when attacking something
req_accessID access where all are required to access this object
req_one_accessID access where any one is required to access this object
soft_armor%-reduction-based armor.
throwforceBase throw damage. Throwforce needs to be at least 1 else it causes runtimes with shields

Procs

GetExplosionBlockreturns how much the object blocks an explosion. Used by subtypes.
can_climb_overSignal handler to check if you can move from one low object to another
clear_internal_itemCalled to clear a stored item var, currently for the deployable element
deconstructthe obj is deconstructed into pieces, whether through careful disassembly or when destroyed.
disassembleDissassembles the device
do_projectile_hit50% better protection when shooting from outside accurate range. +Accuracy over 100 increases the chance of squeezing the bullet past the structure's uncovered areas.
get_internal_itemCalled to return an internally stored item, currently for the deployable element
hud_set_machine_healthMakes sentry health visible
modify_max_integritychanges max_integrity while retaining current health percentage, returns TRUE if the obj got broken.
obj_breakcalled after the obj takes damage and integrity is below integrity_failure level
obj_destructionwhat happens when the obj's integrity reaches zero.
on_try_exitHandles extra checks for things trying to exit this objects turf
play_attack_soundthe sound played when the obj is damaged.
repair_damageIncrease obj_integrity and record it to the repairer's stats
welder_repair_actHandles welder based repair of objects, normally called by welder_act
+

Var Details

coverage + + + + +

+

Odds of a projectile hitting the object, if the object is dense

damtype + + + + +

+

damage type to deal when this obj is attacking something

destroy_sound + + + + +

+

Sound this object makes when destroyed

force + + + + +

+

damage amount to deal when this obj is attacking something

hard_armor + + + + +

+

Modifies the AP of incoming attacks

hit_sound + + + + +

+

Sound when hit

icon_preview + + + + +

+

Icon to use as a 32x32 preview in crafting menus and such

integrity_failure + + + + +

+

Integrety below this number causes special behavior

max_integrity + + + + +

+

Max object HP

obj_flags + + + + +

+

Object behavior flags

obj_integrity + + + + +

+

Object HP

penetration + + + + +

+

The amount of armor penetration the object has when attacking something

req_access + + + + +

+

ID access where all are required to access this object

req_one_access + + + + +

+

ID access where any one is required to access this object

soft_armor + + + + +

+

%-reduction-based armor.

throwforce + + + + +

+

Base throw damage. Throwforce needs to be at least 1 else it causes runtimes with shields

Proc Details

GetExplosionBlock +

+

returns how much the object blocks an explosion. Used by subtypes.

can_climb_over +

+

Signal handler to check if you can move from one low object to another

clear_internal_item +

+

Called to clear a stored item var, currently for the deployable element

deconstruct +

+

the obj is deconstructed into pieces, whether through careful disassembly or when destroyed.

disassemble +

+

Dissassembles the device

do_projectile_hit +

+

50% better protection when shooting from outside accurate range. +Accuracy over 100 increases the chance of squeezing the bullet past the structure's uncovered areas.

get_internal_item +

+

Called to return an internally stored item, currently for the deployable element

hud_set_machine_health +

+

Makes sentry health visible

modify_max_integrity +

+

changes max_integrity while retaining current health percentage, returns TRUE if the obj got broken.

obj_break +

+

called after the obj takes damage and integrity is below integrity_failure level

obj_destruction +

+

what happens when the obj's integrity reaches zero.

on_try_exit +

+

Handles extra checks for things trying to exit this objects turf

play_attack_sound +

+

the sound played when the obj is damaged.

repair_damage +

+

Increase obj_integrity and record it to the repairer's stats

welder_repair_act +

+

Handles welder based repair of objects, normally called by welder_act

+ + + diff --git a/obj/alien.html b/obj/alien.html new file mode 100644 index 0000000000000..b451652001901 --- /dev/null +++ b/obj/alien.html @@ -0,0 +1,43 @@ + + + + + + + /obj/alien - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

alien + + + +

+ + + +

Vars

ignore_weed_destructionSet this to true if this object isn't destroyed when the weeds under it is.

Procs

weed_removedDestroy the alien effect when the weed it was on is destroyed
+

Var Details

ignore_weed_destruction + + + + +

+

Set this to true if this object isn't destroyed when the weeds under it is.

Proc Details

weed_removed +

+

Destroy the alien effect when the weed it was on is destroyed

+ + + diff --git a/obj/alien/egg.html b/obj/alien/egg.html new file mode 100644 index 0000000000000..a36aefbfccb3a --- /dev/null +++ b/obj/alien/egg.html @@ -0,0 +1,85 @@ + + + + + + + /obj/alien/egg - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

egg + + + +

+ + + + + + + + + +

Vars

hivenumberWhich hive it belongs to
maturity_stageWhat maturity stage are we in
maturity_timeTime between two maturity stages
stage_ready_to_burstNumber of the last maturity stage before bursting
trigger_sizeHow far will targets trigger the burst

Procs

advance_maturityAdvance the maturity state by one, or set it to maturity
burstBursts the egg. Return TRUE if it bursts successfully, FALSE if it fails for any reason.
enemy_crossedSignal handler to check if the atom moving nearby is an enemy
+

Var Details

hivenumber + + + + +

+

Which hive it belongs to

maturity_stage + + + + +

+

What maturity stage are we in

maturity_time + + + + +

+

Time between two maturity stages

stage_ready_to_burst + + + + +

+

Number of the last maturity stage before bursting

trigger_size + + + + +

+

How far will targets trigger the burst

Proc Details

advance_maturity +

+

Advance the maturity state by one, or set it to maturity

burst +

+

Bursts the egg. Return TRUE if it bursts successfully, FALSE if it fails for any reason.

enemy_crossed +

+

Signal handler to check if the atom moving nearby is an enemy

+ + + diff --git a/obj/alien/egg/gas.html b/obj/alien/egg/gas.html new file mode 100644 index 0000000000000..4e10bd244495e --- /dev/null +++ b/obj/alien/egg/gas.html @@ -0,0 +1,43 @@ + + + + + + + /obj/alien/egg/gas - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

gas + + + +

+ + + +

Vars

gas_size_bonusBonus size for certain gasses
gas_typeHolds a typepath for the gas particle to create
+

Var Details

gas_size_bonus + + + + +

+

Bonus size for certain gasses

gas_type + + + + +

+

Holds a typepath for the gas particle to create

+ + + diff --git a/obj/alien/egg/hugger.html b/obj/alien/egg/hugger.html new file mode 100644 index 0000000000000..7c1a3969d2480 --- /dev/null +++ b/obj/alien/egg/hugger.html @@ -0,0 +1,43 @@ + + + + + + + /obj/alien/egg/hugger - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

hugger + + + +

+ + + +

Vars

hugger_typeWhat type of hugger are produced here

Procs

insert_new_huggerTry to insert a new hugger into the egg
+

Var Details

hugger_type + + + + +

+

What type of hugger are produced here

Proc Details

insert_new_hugger +

+

Try to insert a new hugger into the egg

+ + + diff --git a/obj/alien/resin/sticky.html b/obj/alien/resin/sticky.html new file mode 100644 index 0000000000000..bfe8696c4a709 --- /dev/null +++ b/obj/alien/resin/sticky.html @@ -0,0 +1,36 @@ + + + + + + + /obj/alien/resin/sticky - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

sticky + + + +

+ + +

Vars

refundableDoes this refund build points when destoryed?
+

Var Details

refundable + + + + +

+

Does this refund build points when destoryed?

+ + + diff --git a/obj/alien/weeds.html b/obj/alien/weeds.html new file mode 100644 index 0000000000000..e506fbae542b3 --- /dev/null +++ b/obj/alien/weeds.html @@ -0,0 +1,78 @@ + + + + + + + /obj/alien/weeds - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

weeds + + + +

+ + + + + + + + +

Vars

color_variantThe color variant of the sprite
resting_buffThe healing buff when resting on this weed
swappedIf these weeds are not destroyed but just swapped

Procs

check_for_parent_nodeCheck if we have a parent node, if not, qdel ourselve
clean_parent_nodeClean the parent node var
footstep_overrideoverrides the turf's normal footstep sound
set_parent_nodeSet the parent_node to node
+

Var Details

color_variant + + + + +

+

The color variant of the sprite

resting_buff + + + + +

+

The healing buff when resting on this weed

swapped + + + + +

+

If these weeds are not destroyed but just swapped

Proc Details

check_for_parent_node +

+

Check if we have a parent node, if not, qdel ourselve

clean_parent_node +

+

Clean the parent node var

footstep_override +

+

overrides the turf's normal footstep sound

set_parent_node +

+

Set the parent_node to node

+ + + diff --git a/obj/alien/weeds/node.html b/obj/alien/weeds/node.html new file mode 100644 index 0000000000000..682bdda03ff34 --- /dev/null +++ b/obj/alien/weeds/node.html @@ -0,0 +1,57 @@ + + + + + + + /obj/alien/weeds/node - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

node + + + +

+ + + + + +

Vars

ability_cost_multThe plasma cost multiplier for this node
node_rangeHow far this node can spread weeds
node_turfslist of all potential turfs that we can expand to
weed_typeWhat type of weeds this node spreads
+

Var Details

ability_cost_mult + + + + +

+

The plasma cost multiplier for this node

node_range + + + + +

+

How far this node can spread weeds

node_turfs + + + + +

+

list of all potential turfs that we can expand to

weed_type + + + + +

+

What type of weeds this node spreads

+ + + diff --git a/obj/alien/weeds/weedwall/window.html b/obj/alien/weeds/weedwall/window.html new file mode 100644 index 0000000000000..56da326a1b748 --- /dev/null +++ b/obj/alien/weeds/weedwall/window.html @@ -0,0 +1,36 @@ + + + + + + + /obj/alien/weeds/weedwall/window - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

window + + + +

+ + +

Vars

window_typeThe type of window we're expecting to grow on
+

Var Details

window_type + + + + +

+

The type of window we're expecting to grow on

+ + + diff --git a/obj/docking_port.html b/obj/docking_port.html new file mode 100644 index 0000000000000..5bbd1c476a316 --- /dev/null +++ b/obj/docking_port.html @@ -0,0 +1,154 @@ + + + + + + + /obj/docking_port - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

docking_port + + + +

+ + + + + + + + + + + + + + + + + + +

Vars

delete_afterDelete this port after ship fly off.
dheightposition relative to covered area, parallel to dir
dirthis should point -away- from the dockingport door, ie towards the ship
dwidthposition relative to covered area, perpendicular to dir
heightsize of covered area, parallel to dir
hiddenare we invisible to shuttle navigation computers?
idThe identifier of the port or ship. +This will be used in numerous other places like the console, +stationary ports and whatnot to tell them your ship's mobile +port can be used in these places, or the docking port is compatible, etc.
particle_holderparticle holder for dust/engine smoke
port_destinationsPossible destinations
registeredare we registered in SSshuttles?
uses_dustdoes the landing sequence emit dust
widthsize of covered area, perpendicular to dir

Procs

copy_sizeCopies the width, dwidth, height and dheight value of D onto itself.
registerregister to SSshuttles
return_number_of_turfsReturn number of turfs
return_turfsreturns turfs within our projected rectangle in no particular order
unregisterunregister from SSshuttles
+

Var Details

delete_after + + + + +

+

Delete this port after ship fly off.

dheight + + + + +

+

position relative to covered area, parallel to dir

dir + + + + +

+

this should point -away- from the dockingport door, ie towards the ship

dwidth + + + + +

+

position relative to covered area, perpendicular to dir

height + + + + +

+

size of covered area, parallel to dir

hidden + + + + +

+

are we invisible to shuttle navigation computers?

id + + + + +

+

The identifier of the port or ship. +This will be used in numerous other places like the console, +stationary ports and whatnot to tell them your ship's mobile +port can be used in these places, or the docking port is compatible, etc.

particle_holder + + + + +

+

particle holder for dust/engine smoke

port_destinations + + + + +

+

Possible destinations

registered + + + + +

+

are we registered in SSshuttles?

uses_dust + + + + +

+

does the landing sequence emit dust

width + + + + +

+

size of covered area, perpendicular to dir

Proc Details

copy_size +

+

Copies the width, dwidth, height and dheight value of D onto itself.

register +

+

register to SSshuttles

return_number_of_turfs +

+

Return number of turfs

return_turfs +

+

returns turfs within our projected rectangle in no particular order

unregister +

+

unregister from SSshuttles

+ + + diff --git a/obj/docking_port/mobile.html b/obj/docking_port/mobile.html new file mode 100644 index 0000000000000..b6e7ae9bd75cc --- /dev/null +++ b/obj/docking_port/mobile.html @@ -0,0 +1,132 @@ + + + + + + + /obj/docking_port/mobile - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

mobile + + + +

+ + + + + + + + + + + + + + +

Vars

callTimetime spent in transit (deciseconds). Should not be lower then 10 seconds without editing the animation of the hyperspace ripples.
control_flagsAll shuttle_control computers that share at least one control flag is able to link to this shuttle
ignitionTimetime spent "starting the engines". Also rate limits how often we try to reserve transit space if its ever full of transiting shuttles.
modecurrent shuttle mode
prearrivalTimedelay after call time finishes for sound effects, explosions, etc.
rechargeTimetime spent after arrival before being able to launch again
shuttle_computerReference of the shuttle docker holding the mobile docking port
timerused as a timer (if you want time left to complete move, use timeLeft proc)

Procs

beforeShuttleMoveMisc move procs
calculate_docking_port_informationCalculated and populates the information used for docking and some internal vars. +This can also be used to calculate from shuttle_areas so that you can expand/shrink shuttles!
initiate_dockingThis is the main proc. It instantly moves our mobile port to stationary port new_dock.
linkupCalled after the shuttle is loaded from template
preflight_checkBoth lists are associative with a turf:bitflag structure. (new_turfs bitflag space unused currently) +The bitflag contains the data for what inhabitants of that coordinate should be moved to the new location +The bitflags can be found in __DEFINES/shuttles.dm
+

Var Details

callTime + + + + +

+

time spent in transit (deciseconds). Should not be lower then 10 seconds without editing the animation of the hyperspace ripples.

control_flags + + + + +

+

All shuttle_control computers that share at least one control flag is able to link to this shuttle

ignitionTime + + + + +

+

time spent "starting the engines". Also rate limits how often we try to reserve transit space if its ever full of transiting shuttles.

mode + + + + +

+

current shuttle mode

prearrivalTime + + + + +

+

delay after call time finishes for sound effects, explosions, etc.

rechargeTime + + + + +

+

time spent after arrival before being able to launch again

shuttle_computer + + + + +

+

Reference of the shuttle docker holding the mobile docking port

timer + + + + +

+

used as a timer (if you want time left to complete move, use timeLeft proc)

Proc Details

beforeShuttleMove +

+

Misc move procs

calculate_docking_port_information +

+

Calculated and populates the information used for docking and some internal vars. +This can also be used to calculate from shuttle_areas so that you can expand/shrink shuttles!

+

Arguments:

+

initiate_docking +

+

This is the main proc. It instantly moves our mobile port to stationary port new_dock.

linkup +

+

Called after the shuttle is loaded from template

preflight_check +

+

Both lists are associative with a turf:bitflag structure. (new_turfs bitflag space unused currently) +The bitflag contains the data for what inhabitants of that coordinate should be moved to the new location +The bitflags can be found in __DEFINES/shuttles.dm

+

Hiding turfs if necessary

+

Unhiding turfs if necessary

+ + + diff --git a/obj/docking_port/mobile/marine_dropship.html b/obj/docking_port/mobile/marine_dropship.html new file mode 100644 index 0000000000000..247e498e7234c --- /dev/null +++ b/obj/docking_port/mobile/marine_dropship.html @@ -0,0 +1,85 @@ + + + + + + + /obj/docking_port/mobile/marine_dropship - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

marine_dropship + + + +

+ + + + + + + + + +

Vars

automatic_cycle_onIf the automatic cycle system is activated
cycle_timerThe timer to launch the dropship in automatic mode
first_landingIf first landing is false intro sequence wont play
takeoff_alarm_lockedIf this dropship can play the takeoff announcement
time_between_cycleHow long will the shuttle wait to launch again if the automatic mode is on. In seconds

Procs

go_to_previous_destinationSend the dropship to its previous dock
prepare_going_to_previous_destinationAnnounce that the dropship will departure soon
silicon_lock_airlocksThis proc locks and unlocks the AI control over the dropship doors.
+

Var Details

automatic_cycle_on + + + + +

+

If the automatic cycle system is activated

cycle_timer + + + + +

+

The timer to launch the dropship in automatic mode

first_landing + + + + +

+

If first landing is false intro sequence wont play

takeoff_alarm_locked + + + + +

+

If this dropship can play the takeoff announcement

time_between_cycle + + + + +

+

How long will the shuttle wait to launch again if the automatic mode is on. In seconds

Proc Details

go_to_previous_destination +

+

Send the dropship to its previous dock

prepare_going_to_previous_destination +

+

Announce that the dropship will departure soon

silicon_lock_airlocks +

+

This proc locks and unlocks the AI control over the dropship doors.

+ + + diff --git a/obj/docking_port/mobile/marine_dropship/casplane.html b/obj/docking_port/mobile/marine_dropship/casplane.html new file mode 100644 index 0000000000000..b81cf1444f00b --- /dev/null +++ b/obj/docking_port/mobile/marine_dropship/casplane.html @@ -0,0 +1,183 @@ + + + + + + + /obj/docking_port/mobile/marine_dropship/casplane - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

casplane + + + +

+ + + + + + + + + + + + + + + + + + + + + + + +

Vars

active_weaponOur currently selected weapon we will fire
attackdirDirection we will use for attacks while in combat mode
cas_miniMinimap for the pilot to know where the marines have ran off to
chairChair that handles all the ui and click stuff
currently_returningIf the shuttle is currently returning to the hangar.
enginesList of engine tiles so we can track them for overlays
eyeobjCamera eye we create when we begin a CAS mission that we fire from
fuel_leftNumber for how much fuel we have left, this x15 seconds is how much time we have while flying
fuel_maxHow much fuel we can hold maximum
jump_actionJump to Lase action for active firemissions
off_actionAction to stop the eye
stateWhat state our plane is in, i.e can we launch/do we have to deploy stairs etc

Procs

begin_cas_missionRuns checks and creates a new eye/hands over control to the eye
end_cas_missionEnds the CAS mission
fire_weapons_atHandles clicking on a target while in CAS mode
give_eye_controlGives user control of the eye and allows them to start shooting
handle_topicUsed to intercept JUMP links.
on_equipment_changeCalled to check if a equipment was changed and to unset the active equipment if it got removed
record_cas_activityTally up the corresponding weapon used by the pilot into their /datum/personal_statistics
turn_off_enginesUpdates state and overlay to make te engines off
turn_on_enginesUpdates state and overlay to make te engines on
update_stateUpdates our state. We use a different var from mode so we can distinguish when engines are turned on/ we are in-flight
+

Var Details

active_weapon + + + + +

+

Our currently selected weapon we will fire

attackdir + + + + +

+

Direction we will use for attacks while in combat mode

cas_mini + + + + +

+

Minimap for the pilot to know where the marines have ran off to

chair + + + + +

+

Chair that handles all the ui and click stuff

currently_returning + + + + +

+

If the shuttle is currently returning to the hangar.

engines + + + + +

+

List of engine tiles so we can track them for overlays

eyeobj + + + + +

+

Camera eye we create when we begin a CAS mission that we fire from

fuel_left + + + + +

+

Number for how much fuel we have left, this x15 seconds is how much time we have while flying

fuel_max + + + + +

+

How much fuel we can hold maximum

jump_action + + + + +

+

Jump to Lase action for active firemissions

off_action + + + + +

+

Action to stop the eye

state + + + + +

+

What state our plane is in, i.e can we launch/do we have to deploy stairs etc

Proc Details

begin_cas_mission +

+

Runs checks and creates a new eye/hands over control to the eye

end_cas_mission +

+

Ends the CAS mission

fire_weapons_at +

+

Handles clicking on a target while in CAS mode

give_eye_control +

+

Gives user control of the eye and allows them to start shooting

handle_topic +

+

Used to intercept JUMP links.

on_equipment_change +

+

Called to check if a equipment was changed and to unset the active equipment if it got removed

record_cas_activity +

+

Tally up the corresponding weapon used by the pilot into their /datum/personal_statistics

turn_off_engines +

+

Updates state and overlay to make te engines off

turn_on_engines +

+

Updates state and overlay to make te engines on

update_state +

+

Updates our state. We use a different var from mode so we can distinguish when engines are turned on/ we are in-flight

+ + + diff --git a/obj/docking_port/mobile/supply.html b/obj/docking_port/mobile/supply.html new file mode 100644 index 0000000000000..ebf9c8971d697 --- /dev/null +++ b/obj/docking_port/mobile/supply.html @@ -0,0 +1,64 @@ + + + + + + + /obj/docking_port/mobile/supply - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

supply + + + +

+ + + + + + +

Vars

factionThe faction of this docking port (aka, on which ship it is located)
home_idId of the home docking port
railing_gear_nameprefix for railings and gear todo should probbaly be defines instead?

Procs

clean_gearSignal handler when a gear is destroyed
clean_railingSignal handler when a railing is destroyed
+

Var Details

faction + + + + +

+

The faction of this docking port (aka, on which ship it is located)

home_id + + + + +

+

Id of the home docking port

railing_gear_name + + + + +

+

prefix for railings and gear todo should probbaly be defines instead?

Proc Details

clean_gear +

+

Signal handler when a gear is destroyed

clean_railing +

+

Signal handler when a railing is destroyed

+ + + diff --git a/obj/docking_port/stationary.html b/obj/docking_port/stationary.html new file mode 100644 index 0000000000000..88df471a4e88d --- /dev/null +++ b/obj/docking_port/stationary.html @@ -0,0 +1,50 @@ + + + + + + + /obj/docking_port/stationary - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

stationary + + + +

+ + + + +

Vars

reservedIdThe ID of the shuttle reserving this dock.
roundstart_shuttle_specific_idAn optional specific id for the roundstart template, if you don't want the procedural made one

Procs

get_dockedreturns first-found touching shuttleport
+

Var Details

reservedId + + + + +

+

The ID of the shuttle reserving this dock.

roundstart_shuttle_specific_id + + + + +

+

An optional specific id for the roundstart template, if you don't want the procedural made one

Proc Details

get_docked +

+

returns first-found touching shuttleport

+ + + diff --git a/obj/effect/abstract/particle_holder.html b/obj/effect/abstract/particle_holder.html new file mode 100644 index 0000000000000..2d2459fb7c7dd --- /dev/null +++ b/obj/effect/abstract/particle_holder.html @@ -0,0 +1,76 @@ + + + + + + + /obj/effect/abstract/particle_holder - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

particle_holder + + + +

+ +

objects can only have one particle on them at a time, so we use these abstract effects to hold and display the effects. You know, so multiple particle effects can exist at once. +also because some objects do not display particles due to how their visuals are built

+ + + + + +

Vars

last_attached_location_typetypepath of the last location we're in, if it's different when moved then we need to update vis contents
weak_additionalbesides the item we're also sometimes attached to other stuff! (items held emitting particles on a mob)
weak_attachedthe main item we're attached to at the moment, particle holders hold particles for something

Procs

on_movesignal called when parent is moved
on_qdelsignal called when parent is deleted
update_visual_contentslogic proc for particle holders, aka where they move. +subtypes of particle holders can override this for particles that should always be turf level or do special things when repositioning. +this base subtype has some logic for items, as the loc of items becomes mobs very often hiding the particles
+

Var Details

last_attached_location_type + + + + +

+

typepath of the last location we're in, if it's different when moved then we need to update vis contents

weak_additional + + + + +

+

besides the item we're also sometimes attached to other stuff! (items held emitting particles on a mob)

weak_attached + + + + +

+

the main item we're attached to at the moment, particle holders hold particles for something

Proc Details

on_move +

+

signal called when parent is moved

on_qdel +

+

signal called when parent is deleted

update_visual_contents +

+

logic proc for particle holders, aka where they move. +subtypes of particle holders can override this for particles that should always be turf level or do special things when repositioning. +this base subtype has some logic for items, as the loc of items becomes mobs very often hiding the particles

+ + + diff --git a/obj/effect/abstract/tele_blocker.html b/obj/effect/abstract/tele_blocker.html new file mode 100644 index 0000000000000..048229a02979e --- /dev/null +++ b/obj/effect/abstract/tele_blocker.html @@ -0,0 +1,50 @@ + + + + + + + /obj/effect/abstract/tele_blocker - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

tele_blocker + + + +

+ + + + +

Vars

received_codePreviously received code

Procs

override_code_receivedRecieves override codes, qdeling when both are received
tele_checkTells the turf that nothing can teleport there
+

Var Details

received_code + + + + +

+

Previously received code

Proc Details

override_code_received +

+

Recieves override codes, qdeling when both are received

tele_check +

+

Tells the turf that nothing can teleport there

+ + + diff --git a/obj/effect/ai_node.html b/obj/effect/ai_node.html new file mode 100644 index 0000000000000..24bcf66ecbd20 --- /dev/null +++ b/obj/effect/ai_node.html @@ -0,0 +1,113 @@ + + + + + + + /obj/effect/ai_node - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

ai_node + + + +

+ + + + + + + + + + + +

Vars

adjacent_nodesAssoc list of adjacent landmark nodes by dir
id_counterstatic id counter for all nodes
unique_idA unique id for this node
weightsList of weights for scoring stuff happening here; ultilizes "identifiers" to differentiate different kinds of AI types looking at the same node.

Procs

get_best_adj_nodeA proc that gets the "best" adjacent node in src based on score +The score is calculated by what weights are inside of the list/weight_modifiers +The highest number after multiplying each list/weight by the ones in the above parameter will be the node that's chosen; any nodes that have the same score won't override that node +Generally the number that the weight has before being multiplied by weight modifiers is the "user friendly" edition; NODE_LAST_VISITED represents in deciseconds the time before +the node has been visited by a particular thing, while something like NODE_ENEMY_COUNT represents the amount of enemies +Parameter call example +GetBestAdjNode(list(NODE_LAST_VISITED = -1), IDENTIFIER_XENO) +Returns an adjacent node that was last visited; when a AI chose to visit a node, it will set NODE_LAST_VISITED to world.time
increment_weightAdds to the specific weight of a specific identifier of this node
is_in_line_of_sightReturns true if the turf in argument is in line of sight
make_adjacentsClears the adjacencies of src and repopulates it, it will consider nodes "adjacent" to src should it be less 15 turfs away
serializeSerialize nodes information
set_weightSets the specific weight of a specific identifier of this node
+

Var Details

adjacent_nodes + + + + +

+

Assoc list of adjacent landmark nodes by dir

id_counter + + + + +

+

static id counter for all nodes

unique_id + + + + +

+

A unique id for this node

weights + + + + +

+

List of weights for scoring stuff happening here; ultilizes "identifiers" to differentiate different kinds of AI types looking at the same node.

Proc Details

get_best_adj_node +

+

A proc that gets the "best" adjacent node in src based on score +The score is calculated by what weights are inside of the list/weight_modifiers +The highest number after multiplying each list/weight by the ones in the above parameter will be the node that's chosen; any nodes that have the same score won't override that node +Generally the number that the weight has before being multiplied by weight modifiers is the "user friendly" edition; NODE_LAST_VISITED represents in deciseconds the time before +the node has been visited by a particular thing, while something like NODE_ENEMY_COUNT represents the amount of enemies +Parameter call example +GetBestAdjNode(list(NODE_LAST_VISITED = -1), IDENTIFIER_XENO) +Returns an adjacent node that was last visited; when a AI chose to visit a node, it will set NODE_LAST_VISITED to world.time

increment_weight +

+

Adds to the specific weight of a specific identifier of this node

is_in_line_of_sight +

+

Returns true if the turf in argument is in line of sight

make_adjacents +

+

Clears the adjacencies of src and repopulates it, it will consider nodes "adjacent" to src should it be less 15 turfs away

serialize +

+

Serialize nodes information

set_weight +

+

Sets the specific weight of a specific identifier of this node

+ + + diff --git a/obj/effect/ai_node/goal.html b/obj/effect/ai_node/goal.html new file mode 100644 index 0000000000000..1aaa37edf36a1 --- /dev/null +++ b/obj/effect/ai_node/goal.html @@ -0,0 +1,64 @@ + + + + + + + /obj/effect/ai_node/goal - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

goal + + + +

+ + + + + + +

Vars

creatorWho made that ai_node
goal_imageThe image added to the creator screen
identifierThe identifier of this ai goal

Procs

clean_creatorNull creator to prevent harddel
clean_goal_nodeDelete this ai_node goal
+

Var Details

creator + + + + +

+

Who made that ai_node

goal_image + + + + +

+

The image added to the creator screen

identifier + + + + +

+

The identifier of this ai goal

Proc Details

clean_creator +

+

Null creator to prevent harddel

clean_goal_node +

+

Delete this ai_node goal

+ + + diff --git a/obj/effect/ai_node/spawner.html b/obj/effect/ai_node/spawner.html new file mode 100644 index 0000000000000..9a93cd761bbf6 --- /dev/null +++ b/obj/effect/ai_node/spawner.html @@ -0,0 +1,71 @@ + + + + + + + /obj/effect/ai_node/spawner - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

spawner + + + +

+ + + + + + + +

Vars

maxamountMax amount of
spawnamountAmount of types to spawn for each squad created
spawndelayDelay between squad spawns, dont set this to below SSspawning wait
spawntypestypepath or list of typepaths for the spawner to pick from
use_postspawnWhether we want to use the postspawn proc on the mobs created by the Spawner

Procs

postspawnThis proc runs on the created mobs if use_postspawn is enabled, use this to equip humans and such
+

Var Details

maxamount + + + + +

+

Max amount of

spawnamount + + + + +

+

Amount of types to spawn for each squad created

spawndelay + + + + +

+

Delay between squad spawns, dont set this to below SSspawning wait

spawntypes + + + + +

+

typepath or list of typepaths for the spawner to pick from

use_postspawn + + + + +

+

Whether we want to use the postspawn proc on the mobs created by the Spawner

Proc Details

postspawn +

+

This proc runs on the created mobs if use_postspawn is enabled, use this to equip humans and such

+ + + diff --git a/obj/effect/attach_point.html b/obj/effect/attach_point.html new file mode 100644 index 0000000000000..4c4b46e1e9233 --- /dev/null +++ b/obj/effect/attach_point.html @@ -0,0 +1,50 @@ + + + + + + + /obj/effect/attach_point - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

attach_point + + + +

+ + + + +

Vars

equipment_offset_xoffset in pixels when equipment is attached
equipment_offset_yy offset in pixels when attached
installed_equipmentThe actual equipment installed on the attach point
+

Var Details

equipment_offset_x + + + + +

+

offset in pixels when equipment is attached

equipment_offset_y + + + + +

+

y offset in pixels when attached

installed_equipment + + + + +

+

The actual equipment installed on the attach point

+ + + diff --git a/obj/effect/blip.html b/obj/effect/blip.html new file mode 100644 index 0000000000000..29d30719d4fd2 --- /dev/null +++ b/obj/effect/blip.html @@ -0,0 +1,35 @@ + + + + + + + /obj/effect/blip - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

blip + + + +

+ + +

Procs

remove_blipRemove the blip from the operator screen

Proc Details

remove_blip +

+

Remove the blip from the operator screen

+ + + diff --git a/obj/effect/blip/close_blip.html b/obj/effect/blip/close_blip.html new file mode 100644 index 0000000000000..f4db37a6c8efb --- /dev/null +++ b/obj/effect/blip/close_blip.html @@ -0,0 +1,35 @@ + + + + + + + /obj/effect/blip/close_blip - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

close_blip + + + +

+ + +

Procs

remove_blipRemove the blip from the operator images

Proc Details

remove_blip +

+

Remove the blip from the operator images

+ + + diff --git a/obj/effect/blip/edge_blip.html b/obj/effect/blip/edge_blip.html new file mode 100644 index 0000000000000..4ba761ab603f6 --- /dev/null +++ b/obj/effect/blip/edge_blip.html @@ -0,0 +1,43 @@ + + + + + + + /obj/effect/blip/edge_blip - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

edge_blip + + + +

+ + + +

Vars

identifierA friendly/hostile identifier

Procs

remove_blipRemove the blip from the operator screen
+

Var Details

identifier + + + + +

+

A friendly/hostile identifier

Proc Details

remove_blip +

+

Remove the blip from the operator screen

+ + + diff --git a/obj/effect/countdown/action_cooldown.html b/obj/effect/countdown/action_cooldown.html new file mode 100644 index 0000000000000..ac6af79fe29aa --- /dev/null +++ b/obj/effect/countdown/action_cooldown.html @@ -0,0 +1,36 @@ + + + + + + + /obj/effect/countdown/action_cooldown - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

action_cooldown + + + +

+ + +

Vars

attached_actionThe action this countdown is associated with
+

Var Details

attached_action + + + + +

+

The action this countdown is associated with

+ + + diff --git a/obj/effect/decal/cleanable.html b/obj/effect/decal/cleanable.html new file mode 100644 index 0000000000000..fb5b16168c4f0 --- /dev/null +++ b/obj/effect/decal/cleanable.html @@ -0,0 +1,43 @@ + + + + + + + /obj/effect/decal/cleanable - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

cleanable + + + +

+ + + +

Vars

random_icon_statesList of icon states that our cleanable can have. Used to add variety
targeted_byUsed so cleanbots can't claim a mess.
+

Var Details

random_icon_states + + + + +

+

List of icon states that our cleanable can have. Used to add variety

targeted_by + + + + +

+

Used so cleanbots can't claim a mess.

+ + + diff --git a/obj/effect/decal/cleanable/blood/tracks.html b/obj/effect/decal/cleanable/blood/tracks.html new file mode 100644 index 0000000000000..44e28e23ee809 --- /dev/null +++ b/obj/effect/decal/cleanable/blood/tracks.html @@ -0,0 +1,39 @@ + + + + + + + /obj/effect/decal/cleanable/blood/tracks - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

tracks + + + +

+ + +

Procs

AddTracksAdd tracks to an existing trail.

Proc Details

AddTracks +

+

Add tracks to an existing trail.

+

@param DNA bloodDNA to add to collection. +@param comingdir Direction tracks come from, or 0. +@param goingdir Direction tracks are going to (or 0). +@param bloodcolor Color of the blood when wet.

+ + + diff --git a/obj/effect/decal/cleanable/liquid_fuel.html b/obj/effect/decal/cleanable/liquid_fuel.html new file mode 100644 index 0000000000000..72723753551be --- /dev/null +++ b/obj/effect/decal/cleanable/liquid_fuel.html @@ -0,0 +1,64 @@ + + + + + + + /obj/effect/decal/cleanable/liquid_fuel - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

liquid_fuel + + + +

+ + + + + + +

Vars

burn_lvlUsed for the burn_lvl of the resulting fire
fire_lvlUsed for the fire_lvl of the resulting fire

Procs

check_igniteIgnites when something hot enters our loc, either via crossed or signal wrapper
ignite_check_wrapperWrapper for ignition via signals rather than from crossed
on_crosscalled when someonething moves over the fuel
+

Var Details

burn_lvl + + + + +

+

Used for the burn_lvl of the resulting fire

fire_lvl + + + + +

+

Used for the fire_lvl of the resulting fire

Proc Details

check_ignite +

+

Ignites when something hot enters our loc, either via crossed or signal wrapper

ignite_check_wrapper +

+

Wrapper for ignition via signals rather than from crossed

on_cross +

+

called when someonething moves over the fuel

+ + + diff --git a/obj/effect/decal/cleanable/mucus.html b/obj/effect/decal/cleanable/mucus.html new file mode 100644 index 0000000000000..d09281696730b --- /dev/null +++ b/obj/effect/decal/cleanable/mucus.html @@ -0,0 +1,36 @@ + + + + + + + /obj/effect/decal/cleanable/mucus - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

mucus + + + +

+ + +

Vars

dry_timerThe dry timer id
+

Var Details

dry_timer + + + + +

+

The dry timer id

+ + + diff --git a/obj/effect/landmark/campaign/vehicle_spawner.html b/obj/effect/landmark/campaign/vehicle_spawner.html new file mode 100644 index 0000000000000..4fb3f0a14aaed --- /dev/null +++ b/obj/effect/landmark/campaign/vehicle_spawner.html @@ -0,0 +1,50 @@ + + + + + + + /obj/effect/landmark/campaign/vehicle_spawner - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

vehicle_spawner + + + +

+ + + + +

Vars

factionFaction associated with this spawner
vehicle_typeMech type for this spawner

Procs

spawn_vehicleCreates and sets up the vehicle
+

Var Details

faction + + + + +

+

Faction associated with this spawner

vehicle_type + + + + +

+

Mech type for this spawner

Proc Details

spawn_vehicle +

+

Creates and sets up the vehicle

+ + + diff --git a/obj/effect/landmark/campaign/vehicle_spawner/mech.html b/obj/effect/landmark/campaign/vehicle_spawner/mech.html new file mode 100644 index 0000000000000..faa330306e4e9 --- /dev/null +++ b/obj/effect/landmark/campaign/vehicle_spawner/mech.html @@ -0,0 +1,43 @@ + + + + + + + /obj/effect/landmark/campaign/vehicle_spawner/mech - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

mech + + + +

+ + + +

Vars

colorsColours to paint mechs from this spawner
head_colorsColours to paint mech heads from this spawner for better visual clarity
+

Var Details

colors + + + + +

+

Colours to paint mechs from this spawner

head_colors + + + + +

+

Colours to paint mech heads from this spawner for better visual clarity

+ + + diff --git a/obj/effect/landmark/campaign/vehicle_spawner/tank.html b/obj/effect/landmark/campaign/vehicle_spawner/tank.html new file mode 100644 index 0000000000000..d888fb431a8ff --- /dev/null +++ b/obj/effect/landmark/campaign/vehicle_spawner/tank.html @@ -0,0 +1,43 @@ + + + + + + + /obj/effect/landmark/campaign/vehicle_spawner/tank - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

tank + + + +

+ + + +

Vars

equipment_listList of gear the tank spawns with

Procs

spawn_equipmentSpawns all required gear for the tank
+

Var Details

equipment_list + + + + +

+

List of gear the tank spawns with

Proc Details

spawn_equipment +

+

Spawns all required gear for the tank

+ + + diff --git a/obj/effect/landmark/campaign_structure.html b/obj/effect/landmark/campaign_structure.html new file mode 100644 index 0000000000000..7081a5139170c --- /dev/null +++ b/obj/effect/landmark/campaign_structure.html @@ -0,0 +1,43 @@ + + + + + + + /obj/effect/landmark/campaign_structure - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

campaign_structure + + + +

+ + + +

Vars

mission_typesMissions that trigger this landmark to spawn an objective
spawn_objectCampaign structure spawned by this landmark
+

Var Details

mission_types + + + + +

+

Missions that trigger this landmark to spawn an objective

spawn_object + + + + +

+

Campaign structure spawned by this landmark

+ + + diff --git a/obj/effect/landmark/corpsespawner.html b/obj/effect/landmark/corpsespawner.html new file mode 100644 index 0000000000000..acef4c1d46aa4 --- /dev/null +++ b/obj/effect/landmark/corpsespawner.html @@ -0,0 +1,43 @@ + + + + + + + /obj/effect/landmark/corpsespawner - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

corpsespawner + + + +

+ +

LANDMARK CORPSE

+ +

Vars

death_typetype of victim death, used for determining what kind of overlays and effects a corpse should have

Procs

create_mobCreate the mob and delete the corpse spawner
+

Var Details

death_type + + + + +

+

type of victim death, used for determining what kind of overlays and effects a corpse should have

Proc Details

create_mob +

+

Create the mob and delete the corpse spawner

+ + + diff --git a/obj/effect/landmark/excavation_site_spawner.html b/obj/effect/landmark/excavation_site_spawner.html new file mode 100644 index 0000000000000..60bedd3c3e466 --- /dev/null +++ b/obj/effect/landmark/excavation_site_spawner.html @@ -0,0 +1,57 @@ + + + + + + + /obj/effect/landmark/excavation_site_spawner - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

excavation_site_spawner + + + +

+ + + + + +

Vars

rewards_datumsList of possible reward buckets
rewards_typepathExcavation rewards datum that is used when excavation is performed

Procs

excavate_sitePerform an excavation and revert the spawner to inactive state
spawn_excavation_siteSetup an excavation
+

Var Details

rewards_datums + + + + +

+

List of possible reward buckets

rewards_typepath + + + + +

+

Excavation rewards datum that is used when excavation is performed

Proc Details

excavate_site +

+

Perform an excavation and revert the spawner to inactive state

spawn_excavation_site +

+

Setup an excavation

+ + + diff --git a/obj/effect/landmark/mob_spawner.html b/obj/effect/landmark/mob_spawner.html new file mode 100644 index 0000000000000..7a636991e4637 --- /dev/null +++ b/obj/effect/landmark/mob_spawner.html @@ -0,0 +1,43 @@ + + + + + + + /obj/effect/landmark/mob_spawner - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

mob_spawner + + + +

+ + + +

Vars

mob_spawnThe type of mob to spawn
spawn_probSpawn probability
+

Var Details

mob_spawn + + + + +

+

The type of mob to spawn

spawn_prob + + + + +

+

Spawn probability

+ + + diff --git a/obj/effect/landmark/patrol_point.html b/obj/effect/landmark/patrol_point.html new file mode 100644 index 0000000000000..a7fbc1a54a4bf --- /dev/null +++ b/obj/effect/landmark/patrol_point.html @@ -0,0 +1,92 @@ + + + + + + + /obj/effect/landmark/patrol_point - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

patrol_point + + + +

+ + + + + + + + + + +

Vars

deploy_turfsList of open turfs around the point to deploy onto
factionFaction this belongs to for minimap purposes
idID to link with an associated start point
minimap_iconminimap icon state

Procs

add_spawn_protectionTemporarily applies godmode to prevent spawn camping
do_deploymentMoves the AM and sets up the effects
end_rappelEnds the rappel effects
finish_setupFinishes setup after we know what gamemode it is
remove_spawn_protectionRemoves spawn protection godmode
+

Var Details

deploy_turfs + + + + +

+

List of open turfs around the point to deploy onto

faction + + + + +

+

Faction this belongs to for minimap purposes

id + + + + +

+

ID to link with an associated start point

minimap_icon + + + + +

+

minimap icon state

Proc Details

add_spawn_protection +

+

Temporarily applies godmode to prevent spawn camping

do_deployment +

+

Moves the AM and sets up the effects

end_rappel +

+

Ends the rappel effects

finish_setup +

+

Finishes setup after we know what gamemode it is

remove_spawn_protection +

+

Removes spawn protection godmode

+ + + diff --git a/obj/effect/landmark/reward_spawn_location.html b/obj/effect/landmark/reward_spawn_location.html new file mode 100644 index 0000000000000..9e9593ebd3dd7 --- /dev/null +++ b/obj/effect/landmark/reward_spawn_location.html @@ -0,0 +1,36 @@ + + + + + + + /obj/effect/landmark/reward_spawn_location - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

reward_spawn_location + + + +

+ + +

Vars

factionFaction associated with this location
+

Var Details

faction + + + + +

+

Faction associated with this location

+ + + diff --git a/obj/effect/landmark/valhalla.html b/obj/effect/landmark/valhalla.html new file mode 100644 index 0000000000000..a7eb2131a1951 --- /dev/null +++ b/obj/effect/landmark/valhalla.html @@ -0,0 +1,43 @@ + + + + + + + /obj/effect/landmark/valhalla - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

valhalla + + + +

+ + + +

Vars

spawnsWhat do we spawn? (xeno or marine)
whereWhere do we spawn?
+

Var Details

spawns + + + + +

+

What do we spawn? (xeno or marine)

where + + + + +

+

Where do we spawn?

+ + + diff --git a/obj/effect/lighting_mask_holder.html b/obj/effect/lighting_mask_holder.html new file mode 100644 index 0000000000000..905cf50e6e109 --- /dev/null +++ b/obj/effect/lighting_mask_holder.html @@ -0,0 +1,36 @@ + + + + + + + /obj/effect/lighting_mask_holder - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

lighting_mask_holder + + + +

+ +

Holder for lighting mask, this is done for ensuing correct render as a viscontents

+

Vars

held_maskThe movable mask this holder is holding in its vis contents
+

Var Details

held_mask + + + + +

+

The movable mask this holder is holding in its vis contents

+ + + diff --git a/obj/effect/mapping_helpers/area_flag_injector.html b/obj/effect/mapping_helpers/area_flag_injector.html new file mode 100644 index 0000000000000..43e3ae75546f8 --- /dev/null +++ b/obj/effect/mapping_helpers/area_flag_injector.html @@ -0,0 +1,36 @@ + + + + + + + /obj/effect/mapping_helpers/area_flag_injector - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

area_flag_injector + + + +

+ + +

Vars

flag_typeflags to inject to the area this is placed in
+

Var Details

flag_type + + + + +

+

flags to inject to the area this is placed in

+ + + diff --git a/obj/effect/mapping_helpers/broken_apc.html b/obj/effect/mapping_helpers/broken_apc.html new file mode 100644 index 0000000000000..fe3f8125b5d9a --- /dev/null +++ b/obj/effect/mapping_helpers/broken_apc.html @@ -0,0 +1,36 @@ + + + + + + + /obj/effect/mapping_helpers/broken_apc - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

broken_apc + + + +

+ + +

Vars

breakchancechance that we actually break the APC
+

Var Details

breakchance + + + + +

+

chance that we actually break the APC

+ + + diff --git a/obj/effect/mapping_helpers/simple_pipes.html b/obj/effect/mapping_helpers/simple_pipes.html new file mode 100644 index 0000000000000..45584068a1848 --- /dev/null +++ b/obj/effect/mapping_helpers/simple_pipes.html @@ -0,0 +1,43 @@ + + + + + + + /obj/effect/mapping_helpers/simple_pipes - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

simple_pipes + + + +

+ + + +

Vars

crashedTracking variable to prevent duplicate runtime messages

Procs

spawn_pipespawn the pipe
+

Var Details

crashed + + + + +

+

Tracking variable to prevent duplicate runtime messages

Proc Details

spawn_pipe +

+

spawn the pipe

+ + + diff --git a/obj/effect/mine_tripwire.html b/obj/effect/mine_tripwire.html new file mode 100644 index 0000000000000..5abef0124f941 --- /dev/null +++ b/obj/effect/mine_tripwire.html @@ -0,0 +1,35 @@ + + + + + + + /obj/effect/mine_tripwire - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

mine_tripwire + + + +

+ +

This is a mine_tripwire that is basically used to extend the mine and capture bump movement further infront of the mine

+

Procs

on_crossWhen crossed the tripwire triggers the linked mine

Proc Details

on_cross +

+

When crossed the tripwire triggers the linked mine

+ + + diff --git a/obj/effect/overlay/temp/laser_target.html b/obj/effect/overlay/temp/laser_target.html new file mode 100644 index 0000000000000..61904614ef967 --- /dev/null +++ b/obj/effect/overlay/temp/laser_target.html @@ -0,0 +1,36 @@ + + + + + + + /obj/effect/overlay/temp/laser_target - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

laser_target + + + +

+ + +

Vars

lasertypewhat kind of laser we are, used for signals
+

Var Details

lasertype + + + + +

+

what kind of laser we are, used for signals

+ + + diff --git a/obj/effect/overlay/vis.html b/obj/effect/overlay/vis.html new file mode 100644 index 0000000000000..23d98965a7779 --- /dev/null +++ b/obj/effect/overlay/vis.html @@ -0,0 +1,43 @@ + + + + + + + /obj/effect/overlay/vis - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

vis + + + +

+ + + +

Vars

cache_expirationOverlays which go unused for 2 minutes get cleaned up
unusedWhen detected to be unused it gets set to world.time, after a while it gets removed
+

Var Details

cache_expiration + + + + +

+

Overlays which go unused for 2 minutes get cleaned up

unused + + + + +

+

When detected to be unused it gets set to world.time, after a while it gets removed

+ + + diff --git a/obj/effect/particle_effect/foam.html b/obj/effect/particle_effect/foam.html new file mode 100644 index 0000000000000..a2b416d9c6b54 --- /dev/null +++ b/obj/effect/particle_effect/foam.html @@ -0,0 +1,71 @@ + + + + + + + /obj/effect/particle_effect/foam - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

foam + + + +

+ + + + + + + +

Vars

foam_flagsflags for the foam, such as RAZOR_FOAM and METAL_FOAM.
lifetimeHow much long the foam lasts, 1 second = 5 since this uses fast processing which ticks 5 times in 1 second..
reagent_divisorHow much the reagents in the foam are divided when applying and how much it can apply per proccess.
spread_amountHow much the foam expands.

Procs

kill_foamFinishes the foam, stopping it from processing and doing whatever it has to do.
spread_foamSpreads the foam in the 4 cardinal directions and gives them the reagents and all.
+

Var Details

foam_flags + + + + +

+

flags for the foam, such as RAZOR_FOAM and METAL_FOAM.

lifetime + + + + +

+

How much long the foam lasts, 1 second = 5 since this uses fast processing which ticks 5 times in 1 second..

reagent_divisor + + + + +

+

How much the reagents in the foam are divided when applying and how much it can apply per proccess.

spread_amount + + + + +

+

How much the foam expands.

Proc Details

kill_foam +

+

Finishes the foam, stopping it from processing and doing whatever it has to do.

spread_foam +

+

Spreads the foam in the 4 cardinal directions and gives them the reagents and all.

+ + + diff --git a/obj/effect/particle_effect/smoke.html b/obj/effect/particle_effect/smoke.html new file mode 100644 index 0000000000000..2ac4512e4f7ed --- /dev/null +++ b/obj/effect/particle_effect/smoke.html @@ -0,0 +1,106 @@ + + + + + + + /obj/effect/particle_effect/smoke - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

smoke + + + +

+ +

SMOKE SYSTEMS

+ + + + + + + + + + +

Vars

bio_protectionEffect strength mult against bio protection
cloudfor associated chemical smoke
expansion_speedtime in decisecond for a smoke to spread one tile.
fractionFraction used for chem touch effects
lifetimeDuration in 2 second ticks
minimum_effect_delayDelay in ticks before this smoke can affect a given mob again, applied in living's effect_smoke
originThe original source of the smoke. Used for smoke spread checks
smoke_traitsSpecial effect traits
strengthSmoke effect strength mult

Procs

copy_statsCopies key stats from a parent smoke to a newly created smoke
spread_smokeAttempts to spread smoke to the surrounding cardinal turfs
+

Var Details

bio_protection + + + + +

+

Effect strength mult against bio protection

cloud + + + + +

+

for associated chemical smoke

expansion_speed + + + + +

+

time in decisecond for a smoke to spread one tile.

fraction + + + + +

+

Fraction used for chem touch effects

lifetime + + + + +

+

Duration in 2 second ticks

minimum_effect_delay + + + + +

+

Delay in ticks before this smoke can affect a given mob again, applied in living's effect_smoke

origin + + + + +

+

The original source of the smoke. Used for smoke spread checks

smoke_traits + + + + +

+

Special effect traits

strength + + + + +

+

Smoke effect strength mult

Proc Details

copy_stats +

+

Copies key stats from a parent smoke to a newly created smoke

spread_smoke +

+

Attempts to spread smoke to the surrounding cardinal turfs

+ + + diff --git a/obj/effect/portal_effect.html b/obj/effect/portal_effect.html new file mode 100644 index 0000000000000..c4b497d044736 --- /dev/null +++ b/obj/effect/portal_effect.html @@ -0,0 +1,36 @@ + + + + + + + /obj/effect/portal_effect - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

portal_effect + + + +

+ + +

Vars

our_destinationturf destination to display
+

Var Details

our_destination + + + + +

+

turf destination to display

+ + + diff --git a/obj/effect/rappel_rope/tadpole.html b/obj/effect/rappel_rope/tadpole.html new file mode 100644 index 0000000000000..fa1eca3a33b00 --- /dev/null +++ b/obj/effect/rappel_rope/tadpole.html @@ -0,0 +1,37 @@ + + + + + + + /obj/effect/rappel_rope/tadpole - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

tadpole + + + +

+ +

This is the rope that the system deploys, a subtype of the HvH deployment rappel. +Created by the rappel system on init and stored in the rappel system when it's not in use

+

Vars

parent_systemThe rappel system this rope originates from
+

Var Details

parent_system + + + + +

+

The rappel system this rope originates from

+ + + diff --git a/obj/effect/skyfall_landingzone.html b/obj/effect/skyfall_landingzone.html new file mode 100644 index 0000000000000..a8bc90626bb35 --- /dev/null +++ b/obj/effect/skyfall_landingzone.html @@ -0,0 +1,51 @@ + + + + + + + /obj/effect/skyfall_landingzone - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

skyfall_landingzone + + + +

+ + + +

Vars

mechareference to mecha following

Procs

followcalled when the mecha moves
+

Var Details

mecha + + + + +

+

reference to mecha following

Proc Details

follow +

+

called when the mecha moves

+ + + diff --git a/obj/effect/soundplayer.html b/obj/effect/soundplayer.html new file mode 100644 index 0000000000000..6efca1456838f --- /dev/null +++ b/obj/effect/soundplayer.html @@ -0,0 +1,50 @@ + + + + + + + /obj/effect/soundplayer - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

soundplayer + + + +

+ + + + +

Vars

loop_soundThe sound we want to loop
sound_typeThe typepath of our looping sound datum
start_on_initDo we start immediately
+

Var Details

loop_sound + + + + +

+

The sound we want to loop

sound_type + + + + +

+

The typepath of our looping sound datum

start_on_init + + + + +

+

Do we start immediately

+ + + diff --git a/obj/effect/spawner/modularmap.html b/obj/effect/spawner/modularmap.html new file mode 100644 index 0000000000000..8ca6d49c2a209 --- /dev/null +++ b/obj/effect/spawner/modularmap.html @@ -0,0 +1,57 @@ + + + + + + + /obj/effect/spawner/modularmap - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

modularmap + + + +

+ + + + + +

Vars

mapidThe ID of the types we would like to be choosing from
spawner_heightHow high our spawner area is, used to catch mistakes in mapping
spawner_widthHow wide our spawner area is, used to catch mistakes in mapping

Procs

load_modularmapActually loads the modularmap: called by SSmodularmapping
+

Var Details

mapid + + + + +

+

The ID of the types we would like to be choosing from

spawner_height + + + + +

+

How high our spawner area is, used to catch mistakes in mapping

spawner_width + + + + +

+

How wide our spawner area is, used to catch mistakes in mapping

Proc Details

load_modularmap +

+

Actually loads the modularmap: called by SSmodularmapping

+ + + diff --git a/obj/effect/spawner/modularmap/prison/civressouth.html b/obj/effect/spawner/modularmap/prison/civressouth.html new file mode 100644 index 0000000000000..b0ca731ebd3d2 --- /dev/null +++ b/obj/effect/spawner/modularmap/prison/civressouth.html @@ -0,0 +1,29 @@ + + + + + + + /obj/effect/spawner/modularmap/prison/civressouth - byond + + +
+ byond - + Modules - + Types +
+
+

civressouth + + + +

+ +

Types

+

Prison / Fiona penitentiary

+ + + diff --git a/obj/effect/spawner/random.html b/obj/effect/spawner/random.html new file mode 100644 index 0000000000000..bd3d7d2325b13 --- /dev/null +++ b/obj/effect/spawner/random.html @@ -0,0 +1,134 @@ + + + + + + + /obj/effect/spawner/random - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

random + + + +

+ +

Base class for all random spawners.

+ + + + + + + + + + + + + + +

Vars

anchoredStops persistent lootdrop spawns from being shoved into lockers
lootA list of possible items to spawn e.g. list(/obj/item, /obj/structure, /obj/effect)
loot_subtype_pathThe subtypes (this excludes the provided path) to combine with the loot list
loot_type_pathThe subtypes AND type to combine with the loot list
spawn_all_lootWhether the spawner should spawn all the loot in the list
spawn_force_directiondo we attempt to force a direction on spawn?
spawn_loot_chanceThe chance for the spawner to create loot (ignores spawn_loot_count)
spawn_loot_countHow many items will be spawned
spawn_loot_doubleIf the same item can be spawned twice
spawn_loot_splitWhether the items should be distributed to offsets 0,1,-1,2,-2,3,-3.. This overrides pixel_x/y on the spawner itself
spawn_random_offsetWhether the items should have a random pixel_x/y offset (maxium offset distance is ±16 pixels for x/y)
spawn_scatter_radiusDetermines how big of a range (in tiles) we should scatter things in.
spawn_with_original_directiondoes the spawned structure need to retain its direction on spawn?

Procs

get_spawn_locationsIf the spawner has a spawn_scatter_radius set, this creates a list of nearby turfs available
spawn_lootIf the spawner has any loot defined, randomly picks some and spawns it. Does not cleanup the spawner.
+

Var Details

anchored + + + + +

+

Stops persistent lootdrop spawns from being shoved into lockers

loot + + + + +

+

A list of possible items to spawn e.g. list(/obj/item, /obj/structure, /obj/effect)

loot_subtype_path + + + + +

+

The subtypes (this excludes the provided path) to combine with the loot list

loot_type_path + + + + +

+

The subtypes AND type to combine with the loot list

spawn_all_loot + + + + +

+

Whether the spawner should spawn all the loot in the list

spawn_force_direction + + + + +

+

do we attempt to force a direction on spawn?

spawn_loot_chance + + + + +

+

The chance for the spawner to create loot (ignores spawn_loot_count)

spawn_loot_count + + + + +

+

How many items will be spawned

spawn_loot_double + + + + +

+

If the same item can be spawned twice

spawn_loot_split + + + + +

+

Whether the items should be distributed to offsets 0,1,-1,2,-2,3,-3.. This overrides pixel_x/y on the spawner itself

spawn_random_offset + + + + +

+

Whether the items should have a random pixel_x/y offset (maxium offset distance is ±16 pixels for x/y)

spawn_scatter_radius + + + + +

+

Determines how big of a range (in tiles) we should scatter things in.

spawn_with_original_direction + + + + +

+

does the spawned structure need to retain its direction on spawn?

Proc Details

get_spawn_locations +

+

If the spawner has a spawn_scatter_radius set, this creates a list of nearby turfs available

spawn_loot +

+

If the spawner has any loot defined, randomly picks some and spawns it. Does not cleanup the spawner.

+ + + diff --git a/obj/effect/spawner/random_set.html b/obj/effect/spawner/random_set.html new file mode 100644 index 0000000000000..bd3c0594e5b16 --- /dev/null +++ b/obj/effect/spawner/random_set.html @@ -0,0 +1,50 @@ + + + + + + + /obj/effect/spawner/random_set - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

random_set + + + +

+ + + + +

Vars

option_listthis is formatted as a list, which itself contains any number of lists. Each set of items that should be spawned together must be added as a list in option_list. One of those lists will be randomly chosen to spawn.
spawn_nothing_percentagethis variable determines the likelyhood that this random object will not spawn anything
spawned_gear_listthe list of what actually gets spawned
+

Var Details

option_list + + + + +

+

this is formatted as a list, which itself contains any number of lists. Each set of items that should be spawned together must be added as a list in option_list. One of those lists will be randomly chosen to spawn.

spawn_nothing_percentage + + + + +

+

this variable determines the likelyhood that this random object will not spawn anything

spawned_gear_list + + + + +

+

the list of what actually gets spawned

+ + + diff --git a/obj/effect/temp_visual.html b/obj/effect/temp_visual.html new file mode 100644 index 0000000000000..907e7aa4350bc --- /dev/null +++ b/obj/effect/temp_visual.html @@ -0,0 +1,50 @@ + + + + + + + /obj/effect/temp_visual - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

temp_visual + + + +

+ +

Temporary visual effects

+ + +

Vars

durationHow long before the temp_visual gets deleted
randomdirGives our effect a random direction on init
timeridTimer that our duration is stored in
+

Var Details

duration + + + + +

+

How long before the temp_visual gets deleted

randomdir + + + + +

+

Gives our effect a random direction on init

timerid + + + + +

+

Timer that our duration is stored in

+ + + diff --git a/obj/effect/temp_visual/behemoth/landslide/dust.html b/obj/effect/temp_visual/behemoth/landslide/dust.html new file mode 100644 index 0000000000000..66d48e58fb8a7 --- /dev/null +++ b/obj/effect/temp_visual/behemoth/landslide/dust.html @@ -0,0 +1,42 @@ + + + + + + + /obj/effect/temp_visual/behemoth/landslide/dust - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

dust + + + +

+ + + +

Procs

adjust_offsetsAdjusts pixel_x and pixel_y, based on direction, with hand-picked offsets.
do_animationExecutes the animation for this object.

Proc Details

adjust_offsets +

+

Adjusts pixel_x and pixel_y, based on direction, with hand-picked offsets.

do_animation +

+

Executes the animation for this object.

+ + + diff --git a/obj/effect/temp_visual/explosion.html b/obj/effect/temp_visual/explosion.html new file mode 100644 index 0000000000000..dcc18abe79716 --- /dev/null +++ b/obj/effect/temp_visual/explosion.html @@ -0,0 +1,78 @@ + + + + + + + /obj/effect/temp_visual/explosion - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

explosion + + + +

+ + + + + + + + +

Vars

dirt_kickupdebris dirt kickup particle holder
explosion_smokeexplosion smoke particle holder
falling_debrisfalling debris particle holder
large_kickuplarge dirt kickup particle holder
smoke_wavesmoke wave particle holder
sparkssparks particle holder

Procs

generate_particlesGenerate the particles
+

Var Details

dirt_kickup + + + + +

+

debris dirt kickup particle holder

explosion_smoke + + + + +

+

explosion smoke particle holder

falling_debris + + + + +

+

falling debris particle holder

large_kickup + + + + +

+

large dirt kickup particle holder

smoke_wave + + + + +

+

smoke wave particle holder

sparks + + + + +

+

sparks particle holder

Proc Details

generate_particles +

+

Generate the particles

+ + + diff --git a/obj/effect/temp_visual/order.html b/obj/effect/temp_visual/order.html new file mode 100644 index 0000000000000..1f3b79d790787 --- /dev/null +++ b/obj/effect/temp_visual/order.html @@ -0,0 +1,35 @@ + + + + + + + /obj/effect/temp_visual/order - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

order + + + +

+ + +

Procs

set_visualsSet visuals for the hud

Proc Details

set_visuals +

+

Set visuals for the hud

+ + + diff --git a/obj/effect/temp_visual/rappel_dust.html b/obj/effect/temp_visual/rappel_dust.html new file mode 100644 index 0000000000000..dbcbc1766c59b --- /dev/null +++ b/obj/effect/temp_visual/rappel_dust.html @@ -0,0 +1,57 @@ + + + + + + + /obj/effect/temp_visual/rappel_dust - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

rappel_dust + + + +

+ + + + + +

Vars

dirt_kickupdebris dirt kickup particle holder
falling_debrisfalling debris particle holder
large_kickuplarge dirt kickup particle holder
smoke_wavesmoke wave particle holder
+

Var Details

dirt_kickup + + + + +

+

debris dirt kickup particle holder

falling_debris + + + + +

+

falling debris particle holder

large_kickup + + + + +

+

large dirt kickup particle holder

smoke_wave + + + + +

+

smoke wave particle holder

+ + + diff --git a/obj/effect/temp_visual/xenomorph/xeno_tracker_target.html b/obj/effect/temp_visual/xenomorph/xeno_tracker_target.html new file mode 100644 index 0000000000000..db5bcaa0068f8 --- /dev/null +++ b/obj/effect/temp_visual/xenomorph/xeno_tracker_target.html @@ -0,0 +1,43 @@ + + + + + + + /obj/effect/temp_visual/xenomorph/xeno_tracker_target - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

xeno_tracker_target + + + +

+ +

Image that appears at the Xeno Rally target; only Xenos can see it

+ +

Vars

holderThe visual effect we're attaching
tracker_targetThe target we're pinging and adding this effect to
+

Var Details

holder + + + + +

+

The visual effect we're attaching

tracker_target + + + + +

+

The target we're pinging and adding this effect to

+ + + diff --git a/obj/effect/tentacle.html b/obj/effect/tentacle.html new file mode 100644 index 0000000000000..9a8f59e4ff25b --- /dev/null +++ b/obj/effect/tentacle.html @@ -0,0 +1,49 @@ + + + + + + + /obj/effect/tentacle - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

tentacle + + + +

+ + + + +

Procs

grabbrute damage and paralyze everyone on our tile
retractchange our icon to our retracting icon and delete in 0.3 seconds
start_grabbingchange our icon state and start a 0.3 second timer to call grab()

Proc Details

grab +

+

brute damage and paralyze everyone on our tile

retract +

+

change our icon to our retracting icon and delete in 0.3 seconds

start_grabbing +

+

change our icon state and start a 0.3 second timer to call grab()

+ + + diff --git a/obj/effect/vendor_bundle.html b/obj/effect/vendor_bundle.html new file mode 100644 index 0000000000000..1225067183c01 --- /dev/null +++ b/obj/effect/vendor_bundle.html @@ -0,0 +1,50 @@ + + + + + + + /obj/effect/vendor_bundle - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

vendor_bundle + + + +

+ +

Spawns a set of objects from specified typepaths. For vendors to spawn multiple items while only needing one path.

+ + +

Vars

gear_to_spawnThe set of typepaths to spawn
spawned_gearRecords the gear objects that have been spawned, so vendors can see what they just vended

Procs

InitializeSpawns the gear from this vendor_bundle. Deletes itself after spawning gear; can be disabled to check what has been spawned (must then delete the bundle yourself)
+

Var Details

gear_to_spawn + + + + +

+

The set of typepaths to spawn

spawned_gear + + + + +

+

Records the gear objects that have been spawned, so vendors can see what they just vended

Proc Details

Initialize +

+

Spawns the gear from this vendor_bundle. Deletes itself after spawning gear; can be disabled to check what has been spawned (must then delete the bundle yourself)

+ + + diff --git a/obj/effect/wraith_portal.html b/obj/effect/wraith_portal.html new file mode 100644 index 0000000000000..b0997b76a2843 --- /dev/null +++ b/obj/effect/wraith_portal.html @@ -0,0 +1,78 @@ + + + + + + + /obj/effect/wraith_portal - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

wraith_portal + + + +

+ + + + + + + + +

Vars

linked_portalThe linked portal
portal_visualsVisual object for handling the viscontents

Procs

do_teleport_atomSignal handler to teleport the crossing atom when its move is done
link_portalLink two portals
teleport_atomSignal handler teleporting crossing atoms
teleport_bulletSignal handler for teleporting a crossing bullet
unlinkUnlink the portal
+

Var Details

linked_portal + + + + +

+

The linked portal

portal_visuals + + + + +

+

Visual object for handling the viscontents

Proc Details

do_teleport_atom +

+

Signal handler to teleport the crossing atom when its move is done

+

Link two portals

teleport_atom +

+

Signal handler teleporting crossing atoms

teleport_bullet +

+

Signal handler for teleporting a crossing bullet

+

Unlink the portal

+ + + diff --git a/obj/effect/xeno/crush_warning.html b/obj/effect/xeno/crush_warning.html new file mode 100644 index 0000000000000..3e0ee9b855d21 --- /dev/null +++ b/obj/effect/xeno/crush_warning.html @@ -0,0 +1,43 @@ + + + + + + + /obj/effect/xeno/crush_warning - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

crush_warning + + + +

+ + + +

Vars

channel_particleThe particle type this ability uses
particle_holderUsed for particles. Holds the particles instead of the mob. See particle_holder for documentation.
+

Var Details

channel_particle + + + + +

+

The particle type this ability uses

particle_holder + + + + +

+

Used for particles. Holds the particles instead of the mob. See particle_holder for documentation.

+ + + diff --git a/obj/effect/xeno/shield.html b/obj/effect/xeno/shield.html new file mode 100644 index 0000000000000..061c76a023eab --- /dev/null +++ b/obj/effect/xeno/shield.html @@ -0,0 +1,78 @@ + + + + + + + /obj/effect/xeno/shield - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

shield + + + +

+ + + + + + + + +

Vars

alternative_reflectionIf reflecting projectiles should go to a targetted atom.
frozen_projectilesAll the projectiles currently frozen by this obj
ownerWho created the shield

Procs

record_projectiles_frozenTally up bullets caught/reflected
record_rocket_reflectionAdds to the personal statistics if the reflected projectile was a rocket.
reflect_projectilesReflects projectiles based on their relative incoming angle
release_projectilesUnfeezes the projectiles on their original path
+

Var Details

alternative_reflection + + + + +

+

If reflecting projectiles should go to a targetted atom.

frozen_projectiles + + + + +

+

All the projectiles currently frozen by this obj

owner + + + + +

+

Who created the shield

Proc Details

record_projectiles_frozen +

+

Tally up bullets caught/reflected

record_rocket_reflection +

+

Adds to the personal statistics if the reflected projectile was a rocket.

reflect_projectiles +

+

Reflects projectiles based on their relative incoming angle

release_projectiles +

+

Unfeezes the projectiles on their original path

+ + + diff --git a/obj/effect/xenomorph/acid.html b/obj/effect/xenomorph/acid.html new file mode 100644 index 0000000000000..5488ea6974602 --- /dev/null +++ b/obj/effect/xenomorph/acid.html @@ -0,0 +1,106 @@ + + + + + + + /obj/effect/xenomorph/acid - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

acid + + + +

+ + + + + + + + + + + + +

Vars

acid_damageacid damage on pick up, subject to armor
acid_melt_multiplierHow much faster or slower acid melts specific objects/turfs.
acid_strengthhow fast something will melt when subject to this acid.
acid_tthe target atom for being melted
strength_tstages of meltage, currently used to determine what messages to output
ticksthe current tick on destruction stage, currently used to determine what messages to output

Procs

on_attempt_pickupSig handler to show this acid is attached to something
on_pickupSig handler to show this acid is attached to something
on_target_delcleans up if the target is destroyed
on_target_moveMoves with the target
return_self_acidSig handler to show this acid is attached to something
+

Var Details

acid_damage + + + + +

+

acid damage on pick up, subject to armor

acid_melt_multiplier + + + + +

+

How much faster or slower acid melts specific objects/turfs.

acid_strength + + + + +

+

how fast something will melt when subject to this acid.

acid_t + + + + +

+

the target atom for being melted

strength_t + + + + +

+

stages of meltage, currently used to determine what messages to output

ticks + + + + +

+

the current tick on destruction stage, currently used to determine what messages to output

Proc Details

on_attempt_pickup +

+

Sig handler to show this acid is attached to something

on_pickup +

+

Sig handler to show this acid is attached to something

on_target_del +

+

cleans up if the target is destroyed

on_target_move +

+

Moves with the target

return_self_acid +

+

Sig handler to show this acid is attached to something

+ + + diff --git a/obj/effect/xenomorph/firenado.html b/obj/effect/xenomorph/firenado.html new file mode 100644 index 0000000000000..7543cf88a3bda --- /dev/null +++ b/obj/effect/xenomorph/firenado.html @@ -0,0 +1,50 @@ + + + + + + + /obj/effect/xenomorph/firenado - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

firenado + + + +

+ + + + +

Vars

target_dirTarget turf to bias going towards

Procs

mob_actcalled when attacking a mob
on_crossEffects applied to a mob that crosses a burning turf
+

Var Details

target_dir + + + + +

+

Target turf to bias going towards

Proc Details

mob_act +

+

called when attacking a mob

on_cross +

+

Effects applied to a mob that crosses a burning turf

+ + + diff --git a/obj/effect/xenomorph/spray.html b/obj/effect/xenomorph/spray.html new file mode 100644 index 0000000000000..bf4d9e977925a --- /dev/null +++ b/obj/effect/xenomorph/spray.html @@ -0,0 +1,50 @@ + + + + + + + /obj/effect/xenomorph/spray - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

spray + + + +

+ + + + +

Vars

xeno_ownerWho created that spray

Procs

atom_enter_turfSignal handler to check if an human is entering the acid spray turf
clean_mob_ownerSet xeno_owner to null to avoid hard del
+

Var Details

xeno_owner + + + + +

+

Who created that spray

Proc Details

atom_enter_turf +

+

Signal handler to check if an human is entering the acid spray turf

clean_mob_owner +

+

Set xeno_owner to null to avoid hard del

+ + + diff --git a/obj/fire.html b/obj/fire.html new file mode 100644 index 0000000000000..ba3024b3f7360 --- /dev/null +++ b/obj/fire.html @@ -0,0 +1,78 @@ + + + + + + + /obj/fire - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

fire + + + +

+ + + + + + + + +

Vars

burn_decayHow many burn ticks we lose per process
burn_levelTracks how HOT the fire is. This is basically the heat level of the fire and determines the temperature
burn_tickstracks for how many process ticks the fire will exist.Can be reduced by other sources
flame_colorThe color the flames and associated particles appear

Procs

affect_atomApplies effects to an atom
on_crossEffects applied to anything that crosses a burning turf
set_fireSets the fire_base object to the correct colour and fire_base values, and applies the initial effects to anything on the turf
+

Var Details

burn_decay + + + + +

+

How many burn ticks we lose per process

burn_level + + + + +

+

Tracks how HOT the fire is. This is basically the heat level of the fire and determines the temperature

burn_ticks + + + + +

+

tracks for how many process ticks the fire will exist.Can be reduced by other sources

flame_color + + + + +

+

The color the flames and associated particles appear

Proc Details

affect_atom +

+

Applies effects to an atom

on_cross +

+

Effects applied to anything that crosses a burning turf

set_fire +

+

Sets the fire_base object to the correct colour and fire_base values, and applies the initial effects to anything on the turf

+ + + diff --git a/obj/fire/flamer/autospread.html b/obj/fire/flamer/autospread.html new file mode 100644 index 0000000000000..f229f011c5230 --- /dev/null +++ b/obj/fire/flamer/autospread.html @@ -0,0 +1,50 @@ + + + + + + + /obj/fire/flamer/autospread - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

autospread + + + +

+ + + + +

Vars

possible_directionsWhich directions this patch is capable of spreading to, as bitflags

Procs

spread_flamesIgnites an adjacent turf or adds our possible directions to an existing flame
turf_contains_valid_burnableReturns TRUE if the supplied turf has something we can ignite on, either a resin wall or door
+

Var Details

possible_directions + + + + +

+

Which directions this patch is capable of spreading to, as bitflags

Proc Details

spread_flames +

+

Ignites an adjacent turf or adds our possible directions to an existing flame

turf_contains_valid_burnable +

+

Returns TRUE if the supplied turf has something we can ignite on, either a resin wall or door

+ + + diff --git a/obj/hitbox.html b/obj/hitbox.html new file mode 100644 index 0000000000000..e2ccbbfc4f36c --- /dev/null +++ b/obj/hitbox.html @@ -0,0 +1,145 @@ + + + + + + + /obj/hitbox - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

hitbox + + + +

+ +

HITBOX +The core of multitile. Acts as a relay for damage and stops people from walking onto the multitle sprite +has changed bounds and as thus must always be forcemoved so it doesnt break everything +I would use pixel movement but the maptick caused by it is way too high and a fake tile based movement might work? but I want this to at least pretend to be generic +Thus we just use this relay. it's an obj so we can make sure all the damage procs that work on root also work on the hitbox

+ + + + + + + + + + + + + + + +

Vars

rootThe "parent" that this hitbox is attached to and to whom it will relay damage
tank_desantspeople riding on this hitbox that we want to move with us
vehicle_lengthLength of the vehicle. Assumed to be longer than it is wide
vehicle_widthWidth of the vehicle

Procs

add_desantAdds a new desant
can_cross_hitboxsignal handler for handling PASS_WALKOVER
get_projectile_locReturns the turf where primary weapon projectiles should source from
on_attempt_drivecalled when the tank is off movement cooldown and someone tries to move it
on_desant_delcleanup riders on deletion
on_exitedsignal handler when we leave a turf under the hitbox
on_jump_landedsignal handler when someone jumping lands on us
on_stop_throwsignal handler when something thrown lands on us
owner_turnedSignal handler to spin the desants as well when the tank turns
remove_desantRemoves a desant
root_deletewhen root deletes is the only time we want to be deleting
root_movewhen the owner moves, let's move with them!
+

Var Details

root + + + + +

+

The "parent" that this hitbox is attached to and to whom it will relay damage

tank_desants + + + + +

+

people riding on this hitbox that we want to move with us

vehicle_length + + + + +

+

Length of the vehicle. Assumed to be longer than it is wide

vehicle_width + + + + +

+

Width of the vehicle

Proc Details

add_desant +

+

Adds a new desant

can_cross_hitbox +

+

signal handler for handling PASS_WALKOVER

get_projectile_loc +

+

Returns the turf where primary weapon projectiles should source from

on_attempt_drive +

+

called when the tank is off movement cooldown and someone tries to move it

on_desant_del +

+

cleanup riders on deletion

on_exited +

+

signal handler when we leave a turf under the hitbox

on_jump_landed +

+

signal handler when someone jumping lands on us

on_stop_throw +

+

signal handler when something thrown lands on us

owner_turned +

+

Signal handler to spin the desants as well when the tank turns

remove_desant +

+

Removes a desant

root_delete +

+

when root deletes is the only time we want to be deleting

root_move +

+

when the owner moves, let's move with them!

+ + + diff --git a/obj/item.html b/obj/item.html new file mode 100644 index 0000000000000..d324639e883b2 --- /dev/null +++ b/obj/item.html @@ -0,0 +1,768 @@ + + + + + + + /obj/item - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

item + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

actionslist of /datum/action's that this item has.
actions_typeslist of paths of action datums to give to the item on Initialize().
armor_protection_flagssee setup.dm for appropriate bit flags
attack_speedByond tick delay between left click attacks
attack_speed_alternateByond tick delay between right click alternate attacks
attack_verbUsed in attackby() to say how something was attacked "[x] has been [z.attack_verb] by [y] with [z]"
blood_sprite_stateThe iconstate that the items use for blood on blood.dmi when drawn on the mob.
cold_protection_flagsflags which determine which body parts are protected from cold. Use the HEAD, CHEST, GROIN, etc. flags. See setup.dm
colorable_allowedSome defines to determine if the item is allowed to be recolored.
colorable_colorsoptional assoc list of colors we can color this item
current_variantCurrent variant selected.
edgewhether this item is more likely to dismember
equip_delay_otherHow long an item takes to put on another person
equip_delay_selfHow long it takes to equip this item yoursef
equip_slot_flagsThis is used to determine on which slots an item can fit.
gas_transfer_coefficientfor leaking gas from turf to mask and vice-versa (for masks right now, but at some point, i'd like to include space helmets)
heatwhether this item is a source of heat, and how hot it is (in Kelvin).
heat_protection_flagsflags which determine which body parts are protected from heat. Use the HEAD, CHEST, GROIN, etc. flags. See setup.dm
hitsoundsound this item makes when you hit something with it
icon_overrideoverrides the icon file which the item will be used to render on mob, if its in hands it will add _l or _r to the state depending if its on left or right hand.
icon_state_miniThe icon state used to represent this image in "icons/obj/items/items_mini.dmi" Used in /obj/item/storage/box/visual to display tiny items in the box
icon_state_variantsList of icon_state suffixes for item variants.
inhand_x_dimensionSame as for worn_x_dimension but for inhands.
inhand_x_offsetWorn nhand overlay will be shifted by this along x axis
inhand_y_dimensionSame as for worn_y_dimension but for inhands.
inhand_y_offsetWorn inhand overlay will be shifted by this along y axis
inv_hide_flagsThis flag is used to determine when items in someone's inventory cover others. IE helmets making it so you can't see glasses, etc.
inventory_flagsThis flag is used for various clothing/equipment item stuff
item_flagsflags for item stuff that isn't clothing/equipping specific.
item_state_worntells if the item shall use worn_icon_state for non-inhands, needed due to some items using worn_icon_state only for inhands and not worn.
max_heat_protection_temperatureSet this variable to determine up to which temperature (IN KELVIN) the item protects against heat damage. Keep at null to disable protection. Only protects areas set by heat_protection_flags flags
min_cold_protection_temperatureSet this variable to determine down to which temperature (IN KELVIN) the item protects against cold damage. 0 is NOT an acceptable number due to if(varname) tests!! Keep at null to disable protection. Only protects areas set by cold_protection_flags flags
permeability_coefficientfor chemicals/diseases
pry_capablewhether this item can be used to pry things open.
sharpwhether this item cuts
siemens_coefficientfor electrical admittance/conductance (electrocution checks and shit)
slowdownHow much clothing is slowing you down. Negative values speeds you up
species_exceptionlist() of species types, if a species cannot put items in a certain slot, but species type is in list, it will be able to wear that item
sprite_sheetsSpecies-specific sprites, concept stolen from Paradise//vg/. Ex: sprite_sheets = list("Combat Robot" = 'icons/mob/species/robot/backpack.dmi') If index term exists and icon_override is not set, this sprite sheet will be used.
strip_delayHow long an item takes to remove from another person
unequip_delay_selfHow long it takes to unequip this item yourself
w_classThe weight class being how big, mainly used for storage purposes
worn_icon_list
worn_icon_stateIcon state for mob worn overlays, if null the normal icon_state will be used.
worn_item_state_slots
worn_layerspecific layer for on-mob icon.
worn_x_dimensionDimensions of the icon file used when this item is worn, eg: hats.dmi (32x32 sprite, 64x64 sprite, etc.). Allows inhands/worn sprites to be of any size, but still centered on a mob properly
worn_x_offsetWorn overlay will be shifted by this along x axis
worn_y_dimensionDimensions of the icon file used when this item is worn, eg: hats.dmi (32x32 sprite, 64x64 sprite, etc.). Allows inhands/worn sprites to be of any size, but still centered on a mob properly
worn_y_offsetWorn overlay will be shifted by this along y axis
zoomTRUE if item is actively being used to zoom. For scoped guns and binoculars.
zoom_allow_movementif you can move with the zoom on, only works if zoom_view_size is 7 otherwise CRASH() is called due to maptick performance reasons.
zoom_tile_offsethow much tiles the zoom offsets to the direction it zooms to.
zoom_viewsizehow much tiles the zoom zooms out, 7 is the default view.
zoomdevicenamename used for message when binoculars/scope is used

Procs

alternate_color_itemIs called when the item is alternate attacked by paint. Handles coloring any secondary colors that are registered to COMSIG_ITEM_SECONDARY_COLOR
apply_accessoriesapplies any accessory the item may have, called by make_worn_icon().
apply_bloodapplies blood on the item, called by make_worn_icon().
apply_customapplies any custom thing to the sprite, caled by make_worn_icon().
attack_alternateattack_alternate
attack_selfCalled when the item is in the active hand, and clicked; alternately, there is an 'activate held object' verb or you can hit pagedown.
attack_self_alternateCalled when the item is in the active hand, and RIGHT clicked;
basic_spin_trickThe basic spin trick
canStripChecks whether the item can be unequipped from owner by stripper. Generates a message on failure and returns TRUE/FALSE
change_zoom_offsetapplies the offset of the zooming, using animate for smoothing.
check_allowed_itemsChecks if an item is allowed to be used on an atom/target +Returns TRUE if allowed.
color_itemColors the item or selects variants.
do_drop_animationPlay small animation and jiggle when dropping an object
do_pickup_animationPlay small animation and jiggle when picking up an object
do_quick_equipCalled to return an item to equip using the quick equip hotkey. Base proc returns the item itself, overridden for storage behavior.
do_trickChecks to see if you successfully perform a trick, and what kind
do_unique_actionSignal sender for unique_action
equippedcalled after an item is placed in an equipment slot +user is mob that equipped it +slot uses the slot_X defines found in setup.dm +for items that can be placed in multiple slots +note this isn't called during the initial dressing of a player
get_worn_icon_filegets what icon dmi file shall be used for the on-mob sprite
get_worn_icon_stateReturns the state that should be used for the on-mob icon
is_beneficial_implantReturns whether this is considered beneficial if embedded in a mob
make_worn_iconGenerates worn icon for sprites on-mob.
melee_attack_chain_alternateRIGHT CLICK CODE FROM HERE
mob_can_equipThe mob M is attempting to equip this item into the slot passed through as 'slot'. Return 1 if it can do this and 0 if it can't. +If you are making custom procs but would like to retain partial or complete functionality of this one, include a 'return ..()' to where you want this to happen. +Set disable_warning to 1 if you wish it to not give you outputs. +warning_text is used in the case that you want to provide a specific warning for why the item cannot be equipped. +The bitslot param determines if the flag we've passed is a bitflag or not
on_enter_storagecalled when this item is added into a storage item, which is passed on as S. The loc variable is already set to the storage item.
on_exit_storagecalled when this item is removed from a storage item, which is passed on as S. The loc variable is already set to the new destination before this is called.
on_foundcalled when "found" in pockets and storage items. Returns 1 if the search should end.
on_thrownCalled by the carbon throw_item() proc. Returns null if the item negates the throw, or a reference to the thing to suffer the throw else.
on_vendCalled by vendors when vending an item. Allows the item to specify what happens when it is given to the player.
onunzoomcalled when zoom is deactivated.
onzoomcalled when zoom is activated.
pickupCalled just as an item is picked up (loc is not yet changed)
refillProc that gets called by a vendor when you refill something +Returns FALSE if it's not elligible for refills
removed_from_inventoryCalled whenever an item is unequipped to a new loc (IE, not when the item ends up in the hands)
special_stripped_behaviorUsed by any item which wants to react to or prevent its own stripping, called after checks/delays. Return TRUE to block normal stripping behavior.
throw_catch_trickThe fancy trick. Woah.
throw_impactWhen hit by a thrown object, play the associated hitsound of the object
toggle_deployment_flagHandles registering if an item is flagged as deployed or not
toggle_item_bump_attackUsed to enable/disable an item's bump attack. Grouped in a proc to make sure the signal or flags aren't missed
unequippedCalled when an item is removed from an equipment slot. The loc should still be in the unequipper.
unique_actionAnything unique the item can do, like pumping a shotgun, spin or whatever.
useGeneric use proc. Depending on the item, it uses up fuel, charges, sheets, etc. +Returns TRUE on success, FALSE on failure.
vendor_equipControls how vendors will try to equip this item. Returns whether item was sucessfully equipped
zoom_check_returnreturns a bitflag when another item tries to zoom same user.
zoom_item_turnoffWrapper for signal turning scope off.
+

Var Details

actions + + + + +

+

list of /datum/action's that this item has.

actions_types + + + + +

+

list of paths of action datums to give to the item on Initialize().

armor_protection_flags + + + + +

+

see setup.dm for appropriate bit flags

attack_speed + + + + +

+

Byond tick delay between left click attacks

attack_speed_alternate + + + + +

+

Byond tick delay between right click alternate attacks

attack_verb + + + + +

+

Used in attackby() to say how something was attacked "[x] has been [z.attack_verb] by [y] with [z]"

blood_sprite_state + + + + +

+

The iconstate that the items use for blood on blood.dmi when drawn on the mob.

cold_protection_flags + + + + +

+

flags which determine which body parts are protected from cold. Use the HEAD, CHEST, GROIN, etc. flags. See setup.dm

colorable_allowed + + + + +

+

Some defines to determine if the item is allowed to be recolored.

colorable_colors + + + + +

+

optional assoc list of colors we can color this item

current_variant + + + + +

+

Current variant selected.

edge + + + + +

+

whether this item is more likely to dismember

equip_delay_other + + + + +

+

How long an item takes to put on another person

equip_delay_self + + + + +

+

How long it takes to equip this item yoursef

equip_slot_flags + + + + +

+

This is used to determine on which slots an item can fit.

gas_transfer_coefficient + + + + +

+

for leaking gas from turf to mask and vice-versa (for masks right now, but at some point, i'd like to include space helmets)

heat + + + + +

+

whether this item is a source of heat, and how hot it is (in Kelvin).

heat_protection_flags + + + + +

+

flags which determine which body parts are protected from heat. Use the HEAD, CHEST, GROIN, etc. flags. See setup.dm

hitsound + + + + +

+

sound this item makes when you hit something with it

icon_override + + + + +

+

overrides the icon file which the item will be used to render on mob, if its in hands it will add _l or _r to the state depending if its on left or right hand.

icon_state_mini + + + + +

+

The icon state used to represent this image in "icons/obj/items/items_mini.dmi" Used in /obj/item/storage/box/visual to display tiny items in the box

icon_state_variants + + + + +

+

List of icon_state suffixes for item variants.

inhand_x_dimension + + + + +

+

Same as for worn_x_dimension but for inhands.

inhand_x_offset + + + + +

+

Worn nhand overlay will be shifted by this along x axis

inhand_y_dimension + + + + +

+

Same as for worn_y_dimension but for inhands.

inhand_y_offset + + + + +

+

Worn inhand overlay will be shifted by this along y axis

inv_hide_flags + + + + +

+

This flag is used to determine when items in someone's inventory cover others. IE helmets making it so you can't see glasses, etc.

inventory_flags + + + + +

+

This flag is used for various clothing/equipment item stuff

item_flags + + + + +

+

flags for item stuff that isn't clothing/equipping specific.

item_state_worn + + + + +

+

tells if the item shall use worn_icon_state for non-inhands, needed due to some items using worn_icon_state only for inhands and not worn.

max_heat_protection_temperature + + + + +

+

Set this variable to determine up to which temperature (IN KELVIN) the item protects against heat damage. Keep at null to disable protection. Only protects areas set by heat_protection_flags flags

min_cold_protection_temperature + + + + +

+

Set this variable to determine down to which temperature (IN KELVIN) the item protects against cold damage. 0 is NOT an acceptable number due to if(varname) tests!! Keep at null to disable protection. Only protects areas set by cold_protection_flags flags

permeability_coefficient + + + + +

+

for chemicals/diseases

pry_capable + + + + +

+

whether this item can be used to pry things open.

sharp + + + + +

+

whether this item cuts

siemens_coefficient + + + + +

+

for electrical admittance/conductance (electrocution checks and shit)

slowdown + + + + +

+

How much clothing is slowing you down. Negative values speeds you up

species_exception + + + + +

+

list() of species types, if a species cannot put items in a certain slot, but species type is in list, it will be able to wear that item

sprite_sheets + + + + +

+

Species-specific sprites, concept stolen from Paradise//vg/. Ex: sprite_sheets = list("Combat Robot" = 'icons/mob/species/robot/backpack.dmi') If index term exists and icon_override is not set, this sprite sheet will be used.

strip_delay + + + + +

+

How long an item takes to remove from another person

unequip_delay_self + + + + +

+

How long it takes to unequip this item yourself

w_class + + + + +

+

The weight class being how big, mainly used for storage purposes

worn_icon_list + + + + +

+
+

LazyList< Used to specify the icon file to be used when the item is worn in a certain slot. icon_override or sprite_sheets are set they will take precendence over this, assuming they apply to the slot in question.

+

worn_icon_state + + + + +

+

Icon state for mob worn overlays, if null the normal icon_state will be used.

worn_item_state_slots + + + + +

+
+

Lazylist< that overrides the default worn_icon_state for particular slots.

+

worn_layer + + + + +

+

specific layer for on-mob icon.

worn_x_dimension + + + + +

+

Dimensions of the icon file used when this item is worn, eg: hats.dmi (32x32 sprite, 64x64 sprite, etc.). Allows inhands/worn sprites to be of any size, but still centered on a mob properly

worn_x_offset + + + + +

+

Worn overlay will be shifted by this along x axis

worn_y_dimension + + + + +

+

Dimensions of the icon file used when this item is worn, eg: hats.dmi (32x32 sprite, 64x64 sprite, etc.). Allows inhands/worn sprites to be of any size, but still centered on a mob properly

worn_y_offset + + + + +

+

Worn overlay will be shifted by this along y axis

zoom + + + + +

+

TRUE if item is actively being used to zoom. For scoped guns and binoculars.

zoom_allow_movement + + + + +

+

if you can move with the zoom on, only works if zoom_view_size is 7 otherwise CRASH() is called due to maptick performance reasons.

zoom_tile_offset + + + + +

+

how much tiles the zoom offsets to the direction it zooms to.

zoom_viewsize + + + + +

+

how much tiles the zoom zooms out, 7 is the default view.

zoomdevicename + + + + +

+

name used for message when binoculars/scope is used

Proc Details

alternate_color_item +

+

Is called when the item is alternate attacked by paint. Handles coloring any secondary colors that are registered to COMSIG_ITEM_SECONDARY_COLOR

apply_accessories +

+

applies any accessory the item may have, called by make_worn_icon().

apply_blood +

+

applies blood on the item, called by make_worn_icon().

apply_custom +

+

applies any custom thing to the sprite, caled by make_worn_icon().

attack_alternate +

+

attack_alternate

+

called when the a mob right click attacks on another mob with an item +Arguments: +M: the target being attacked +user: the person clicking

attack_self +

+

Called when the item is in the active hand, and clicked; alternately, there is an 'activate held object' verb or you can hit pagedown.

attack_self_alternate +

+

Called when the item is in the active hand, and RIGHT clicked;

basic_spin_trick +

+

The basic spin trick

canStrip +

+

Checks whether the item can be unequipped from owner by stripper. Generates a message on failure and returns TRUE/FALSE

change_zoom_offset +

+

applies the offset of the zooming, using animate for smoothing.

check_allowed_items +

+

Checks if an item is allowed to be used on an atom/target +Returns TRUE if allowed.

+

Args: +target_self - Whether we will check if we (src) are in target, preventing people from using items on themselves. +not_inside - Whether target (or target's loc) has to be a turf.

color_item +

+

Colors the item or selects variants.

do_drop_animation +

+

Play small animation and jiggle when dropping an object

do_pickup_animation +

+

Play small animation and jiggle when picking up an object

do_quick_equip +

+

Called to return an item to equip using the quick equip hotkey. Base proc returns the item itself, overridden for storage behavior.

do_trick +

+

Checks to see if you successfully perform a trick, and what kind

do_unique_action +

+

Signal sender for unique_action

equipped +

+

called after an item is placed in an equipment slot +user is mob that equipped it +slot uses the slot_X defines found in setup.dm +for items that can be placed in multiple slots +note this isn't called during the initial dressing of a player

get_worn_icon_file +

+

gets what icon dmi file shall be used for the on-mob sprite

get_worn_icon_state +

+

Returns the state that should be used for the on-mob icon

is_beneficial_implant +

+

Returns whether this is considered beneficial if embedded in a mob

make_worn_icon +

+

Generates worn icon for sprites on-mob.

melee_attack_chain_alternate +

+

RIGHT CLICK CODE FROM HERE

+

Most of this is basically whats above for left click but broken down, add more as needed +A less complex version of melee_attack_chain, called when rightclicking with an item on something +Arguments: +user: mob attacking with this item +target: atom being clicked on +params: passed down params from Click()

mob_can_equip +

+

The mob M is attempting to equip this item into the slot passed through as 'slot'. Return 1 if it can do this and 0 if it can't. +If you are making custom procs but would like to retain partial or complete functionality of this one, include a 'return ..()' to where you want this to happen. +Set disable_warning to 1 if you wish it to not give you outputs. +warning_text is used in the case that you want to provide a specific warning for why the item cannot be equipped. +The bitslot param determines if the flag we've passed is a bitflag or not

on_enter_storage +

+

called when this item is added into a storage item, which is passed on as S. The loc variable is already set to the storage item.

on_exit_storage +

+

called when this item is removed from a storage item, which is passed on as S. The loc variable is already set to the new destination before this is called.

on_found +

+

called when "found" in pockets and storage items. Returns 1 if the search should end.

on_thrown +

+

Called by the carbon throw_item() proc. Returns null if the item negates the throw, or a reference to the thing to suffer the throw else.

on_vend +

+

Called by vendors when vending an item. Allows the item to specify what happens when it is given to the player.

onunzoom +

+

called when zoom is deactivated.

onzoom +

+

called when zoom is activated.

pickup +

+

Called just as an item is picked up (loc is not yet changed)

refill +

+

Proc that gets called by a vendor when you refill something +Returns FALSE if it's not elligible for refills

removed_from_inventory +

+

Called whenever an item is unequipped to a new loc (IE, not when the item ends up in the hands)

special_stripped_behavior +

+

Used by any item which wants to react to or prevent its own stripping, called after checks/delays. Return TRUE to block normal stripping behavior.

throw_catch_trick +

+

The fancy trick. Woah.

throw_impact +

+

When hit by a thrown object, play the associated hitsound of the object

toggle_deployment_flag +

+

Handles registering if an item is flagged as deployed or not

toggle_item_bump_attack +

+

Used to enable/disable an item's bump attack. Grouped in a proc to make sure the signal or flags aren't missed

unequipped +

+

Called when an item is removed from an equipment slot. The loc should still be in the unequipper.

unique_action +

+

Anything unique the item can do, like pumping a shotgun, spin or whatever.

use +

+

Generic use proc. Depending on the item, it uses up fuel, charges, sheets, etc. +Returns TRUE on success, FALSE on failure.

vendor_equip +

+

Controls how vendors will try to equip this item. Returns whether item was sucessfully equipped

zoom_check_return +

+

returns a bitflag when another item tries to zoom same user.

zoom_item_turnoff +

+

Wrapper for signal turning scope off.

+ + + diff --git a/obj/item/alien_embryo.html b/obj/item/alien_embryo.html new file mode 100644 index 0000000000000..2c20d65efa0f4 --- /dev/null +++ b/obj/item/alien_embryo.html @@ -0,0 +1,71 @@ + + + + + + + /obj/item/alien_embryo - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

alien_embryo + + + +

+ + + + + + + +

Vars

boost_timerHow long will the embryo's growth rate be increased
counterHow developed the embryo is, if it ages up highly enough it has a chance to burst.
larva_autoburst_countdownHow long before the larva is kicked out, * SSobj wait
stageThe stage of the bursts, with worsening effects.

Procs

adjust_boost_timerAdjusts the growth acceleration timer
on_host_dnrKills larva when host goes DNR
+

Var Details

boost_timer + + + + +

+

How long will the embryo's growth rate be increased

counter + + + + +

+

How developed the embryo is, if it ages up highly enough it has a chance to burst.

larva_autoburst_countdown + + + + +

+

How long before the larva is kicked out, * SSobj wait

stage + + + + +

+

The stage of the bursts, with worsening effects.

Proc Details

adjust_boost_timer +

+

Adjusts the growth acceleration timer

on_host_dnr +

+

Kills larva when host goes DNR

+ + + diff --git a/obj/item/ammo_casing.html b/obj/item/ammo_casing.html new file mode 100644 index 0000000000000..456263b8e1e53 --- /dev/null +++ b/obj/item/ammo_casing.html @@ -0,0 +1,35 @@ + + + + + + + /obj/item/ammo_casing - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

ammo_casing + + + +

+ + +

Procs

update_dirchanges .dir to simulate new casings, also sets the new w_class

Proc Details

update_dir +

+

changes .dir to simulate new casings, also sets the new w_class

+ + + diff --git a/obj/item/ammo_magazine.html b/obj/item/ammo_magazine.html new file mode 100644 index 0000000000000..0364e63250a46 --- /dev/null +++ b/obj/item/ammo_magazine.html @@ -0,0 +1,155 @@ + + + + + + + /obj/item/ammo_magazine - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

ammo_magazine + + + +

+ + + + + + + + + + + + + + + + + + + +

Vars

aim_speed_modChanges the slowdown amount when wielding a weapon by this value.
base_ammo_iconthe default icon if MAGAZINE_SHOW_AMMO is used.
bonus_overlayIcon state to an overlay to add to the gun, for extended mags, box mags, and so on
caliberThis is used for matching handfuls to each other or whatever the mag is. The #Defines can be found in __DEFINES/calibers.dm
current_roundsSet this to something else for it not to start with different initial counts.
default_ammoThis is a typepath for the type of bullet the magazine holds, it is cast so that it can draw the variable handful_amount from default_ammo in create_handful()
fill_delayDelay for filling this magazine with another one.
magazine_flagsflags specifically for magazines.
max_roundsHow many rounds it can hold.
overcharge_ammoGenerally used for energy weapons
reload_delaySet a timer for reloading mags. Higher is slower.
scatter_unwielded_modIncreases or decreases scatter chance but for onehanded firing.
used_casingsJust an easier way to track how many shells to eject later.
wield_delay_modHow long ADS takes (time before firing)

Procs

create_handfulThis will attempt to place the ammo in the user's hand if possible.
generate_handfulCalled on a /ammo_magazine that wishes to be a handful. It generates all the data required for the handful.
get_additional_codex_infoAny additional mechanic info specific to this magazine or the ammo in it
match_ammosets greyscale for the handful if it has been specified by the ammo datum
+

Var Details

aim_speed_mod + + + + +

+

Changes the slowdown amount when wielding a weapon by this value.

base_ammo_icon + + + + +

+

the default icon if MAGAZINE_SHOW_AMMO is used.

bonus_overlay + + + + +

+

Icon state to an overlay to add to the gun, for extended mags, box mags, and so on

caliber + + + + +

+

This is used for matching handfuls to each other or whatever the mag is. The #Defines can be found in __DEFINES/calibers.dm

current_rounds + + + + +

+

Set this to something else for it not to start with different initial counts.

default_ammo + + + + +

+

This is a typepath for the type of bullet the magazine holds, it is cast so that it can draw the variable handful_amount from default_ammo in create_handful()

fill_delay + + + + +

+

Delay for filling this magazine with another one.

magazine_flags + + + + +

+

flags specifically for magazines.

max_rounds + + + + +

+

How many rounds it can hold.

overcharge_ammo + + + + +

+

Generally used for energy weapons

reload_delay + + + + +

+

Set a timer for reloading mags. Higher is slower.

scatter_unwielded_mod + + + + +

+

Increases or decreases scatter chance but for onehanded firing.

used_casings + + + + +

+

Just an easier way to track how many shells to eject later.

wield_delay_mod + + + + +

+

How long ADS takes (time before firing)

Proc Details

create_handful +

+

This will attempt to place the ammo in the user's hand if possible.

generate_handful +

+

Called on a /ammo_magazine that wishes to be a handful. It generates all the data required for the handful.

get_additional_codex_info +

+

Any additional mechanic info specific to this magazine or the ammo in it

match_ammo +

+

sets greyscale for the handful if it has been specified by the ammo datum

+ + + diff --git a/obj/item/ammo_magazine/tank.html b/obj/item/ammo_magazine/tank.html new file mode 100644 index 0000000000000..2211be375d645 --- /dev/null +++ b/obj/item/ammo_magazine/tank.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/ammo_magazine/tank - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

tank + + + +

+ + +

Vars

loading_soundloading sound to play when
+

Var Details

loading_sound + + + + +

+

loading sound to play when

+ + + diff --git a/obj/item/armor_module.html b/obj/item/armor_module.html new file mode 100644 index 0000000000000..f764ed4d827a5 --- /dev/null +++ b/obj/item/armor_module.html @@ -0,0 +1,225 @@ + + + + + + + /obj/item/armor_module - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

armor_module + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

attach_delayTime it takes to attach.
attach_features_flagsBitfield flags of various features.
attach_iconIcon sheet of the attachment overlays
attachment_layerLayer for the attachment to be applied to.
attachments_allowedAllowed attachment types
attachments_by_slotList of slots this attachment has.
base_iconReplacement for initial icon that allows for the code to work with multiple variants
can_attachProc typepath that is called when this is item is being attached to something. Returns TRUE if it can attach.
detach_delayTime it takes to detach.
light_modLight modifier for attachment to an armor piece
mob_overlay_iconUsed for when the mob attach overlay icon is different than icon.
mob_pixel_shift_xPixel shift for the mob overlay on the X axis.
mob_pixel_shift_yPixel shift for the mob overlay on the Y axis.
on_attachProc typepath that is called when this is attached to something.
on_detachProc typepath that is called when this is detached from something.
parentReference to parent modular armor suit.
pixel_shift_xPixel shift for the item overlay on the X axis.
pixel_shift_yPixel shift for the item overlay on the Y axis.
prefered_slotSlot that is required for the action to appear to the equipper. If null the action will appear whenever the item is equiped to a slot.
slotSlot the attachment is able to occupy.
starting_attachmentsStarting attachments that are spawned with this.
toggle_signalThe signal for this module if it can toggled
variants_by_parent_typeAssoc list that uses the parents type as a key. type = "new_icon_state". This will change the icon state depending on what type the parent is. If the list is empty, or the parent type is not within, it will have no effect.

Procs

activateCalled on ui_action_click. Used for activating the module.
can_attachCalled before a module is attached.
handle_actionsAdds or removes actions based on whether the parent is in the correct slot.
on_attachCalled when the module is added to the armor.
on_detachCalled when the module is removed from the armor.
+

Var Details

attach_delay + + + + +

+

Time it takes to attach.

attach_features_flags + + + + +

+

Bitfield flags of various features.

attach_icon + + + + +

+

Icon sheet of the attachment overlays

attachment_layer + + + + +

+

Layer for the attachment to be applied to.

attachments_allowed + + + + +

+

Allowed attachment types

attachments_by_slot + + + + +

+

List of slots this attachment has.

base_icon + + + + +

+

Replacement for initial icon that allows for the code to work with multiple variants

can_attach + + + + +

+

Proc typepath that is called when this is item is being attached to something. Returns TRUE if it can attach.

detach_delay + + + + +

+

Time it takes to detach.

light_mod + + + + +

+

Light modifier for attachment to an armor piece

mob_overlay_icon + + + + +

+

Used for when the mob attach overlay icon is different than icon.

mob_pixel_shift_x + + + + +

+

Pixel shift for the mob overlay on the X axis.

mob_pixel_shift_y + + + + +

+

Pixel shift for the mob overlay on the Y axis.

on_attach + + + + +

+

Proc typepath that is called when this is attached to something.

on_detach + + + + +

+

Proc typepath that is called when this is detached from something.

parent + + + + +

+

Reference to parent modular armor suit.

pixel_shift_x + + + + +

+

Pixel shift for the item overlay on the X axis.

pixel_shift_y + + + + +

+

Pixel shift for the item overlay on the Y axis.

prefered_slot + + + + +

+

Slot that is required for the action to appear to the equipper. If null the action will appear whenever the item is equiped to a slot.

slot + + + + +

+

Slot the attachment is able to occupy.

starting_attachments + + + + +

+

Starting attachments that are spawned with this.

toggle_signal + + + + +

+

The signal for this module if it can toggled

variants_by_parent_type + + + + +

+

Assoc list that uses the parents type as a key. type = "new_icon_state". This will change the icon state depending on what type the parent is. If the list is empty, or the parent type is not within, it will have no effect.

Proc Details

activate +

+

Called on ui_action_click. Used for activating the module.

can_attach +

+

Called before a module is attached.

handle_actions +

+

Adds or removes actions based on whether the parent is in the correct slot.

on_attach +

+

Called when the module is added to the armor.

on_detach +

+

Called when the module is removed from the armor.

+ + + diff --git a/obj/item/armor_module/armor.html b/obj/item/armor_module/armor.html new file mode 100644 index 0000000000000..7538642bff8c1 --- /dev/null +++ b/obj/item/armor_module/armor.html @@ -0,0 +1,65 @@ + + + + + + + /obj/item/armor_module/armor - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

armor + + + +

+ +

These are the basic type for armor armor_modules. What seperates these from /armor_module is that these are designed to be recolored. +These include Leg plates, Chest plates, Shoulder Plates and Visors. This could be expanded to anything that functions like armor and has greyscale functionality.

+ + + + +

Vars

secondary_colorIf TRUE, this armor piece can be recolored when its parent is right clicked by facepaint.
slowdownAddititve Slowdown of this armor piece
soft_armorThe additional armor provided by equipping this piece.

Procs

extra_examineRelays the extra controls to the user when the parent is examined.
handle_colorSends a list of available colored attachments to be colored when the parent is right clicked with paint.
+

Var Details

secondary_color + + + + +

+

If TRUE, this armor piece can be recolored when its parent is right clicked by facepaint.

slowdown + + + + +

+

Addititve Slowdown of this armor piece

soft_armor + + + + +

+

The additional armor provided by equipping this piece.

Proc Details

extra_examine +

+

Relays the extra controls to the user when the parent is examined.

handle_color +

+

Sends a list of available colored attachments to be colored when the parent is right clicked with paint.

+ + + diff --git a/obj/item/armor_module/armor/badge.html b/obj/item/armor_module/armor/badge.html new file mode 100644 index 0000000000000..71691ef901812 --- /dev/null +++ b/obj/item/armor_module/armor/badge.html @@ -0,0 +1,50 @@ + + + + + + + /obj/item/armor_module/armor/badge - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

badge + + + +

+ + + + +

Vars

current_styleCurrent selected badge style. This is the icon_state for the greyscale config used for the mob sprite.
shape_listList of selectable shapes.
style_listList of selectable styles for where the badge is worn.
+

Var Details

current_style + + + + +

+

Current selected badge style. This is the icon_state for the greyscale config used for the mob sprite.

shape_list + + + + +

+

List of selectable shapes.

style_list + + + + +

+

List of selectable styles for where the badge is worn.

+ + + diff --git a/obj/item/armor_module/armor/cape.html b/obj/item/armor_module/armor/cape.html new file mode 100644 index 0000000000000..34094c13a9c62 --- /dev/null +++ b/obj/item/armor_module/armor/cape.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/armor_module/armor/cape - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

cape + + + +

+ + +

Vars

hoodTrue if the hood is up, false if not.
+

Var Details

hood + + + + +

+

True if the hood is up, false if not.

+ + + diff --git a/obj/item/armor_module/armor/visor.html b/obj/item/armor_module/armor/visor.html new file mode 100644 index 0000000000000..04507c6f55ecb --- /dev/null +++ b/obj/item/armor_module/armor/visor.html @@ -0,0 +1,52 @@ + + + + + + + /obj/item/armor_module/armor/visor - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

visor + + + +

+ +

Visors +Visors are slightly different than the other armor types. They allow emissives. If visor_emissive_on is TRUE then it will be applying an emissve to it. +If allow_emissive is TRUE, Right clicking the Parent item will toggle the emissive.

+ + +

Vars

allow_emissiveWhether or not the helmet is allowed to turn its emissive on or off.
visor_emissive_onwhether this helmet should be using its emissive overlay or not

Procs

toggle_emissiveToggles the visors emmisiveness if allowed.
+

Var Details

allow_emissive + + + + +

+

Whether or not the helmet is allowed to turn its emissive on or off.

visor_emissive_on + + + + +

+

whether this helmet should be using its emissive overlay or not

Proc Details

toggle_emissive +

+

Toggles the visors emmisiveness if allowed.

+ + + diff --git a/obj/item/armor_module/module.html b/obj/item/armor_module/module.html new file mode 100644 index 0000000000000..df18519d6aac4 --- /dev/null +++ b/obj/item/armor_module/module.html @@ -0,0 +1,31 @@ + + + + + + + /obj/item/armor_module/module - byond + + +
+ byond - + Modules - + Types +
+
+

module + + + +

+ +
+ + + diff --git a/obj/item/armor_module/module/antenna.html b/obj/item/armor_module/module/antenna.html new file mode 100644 index 0000000000000..dfde829147562 --- /dev/null +++ b/obj/item/armor_module/module/antenna.html @@ -0,0 +1,64 @@ + + + + + + + /obj/item/armor_module/module/antenna - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

antenna + + + +

+ + + + + + +

Vars

comms_setupIf the comms system is configured.
startup_timer_idID of the startup timer

Procs

finish_startupFinishes startup, rendering the module effective.
on_interference_checkHandles interacting with caves checking for if anything is reducing (or increasing) interference.
start_syncBegins the startup sequence.
+

Var Details

comms_setup + + + + +

+

If the comms system is configured.

startup_timer_id + + + + +

+

ID of the startup timer

Proc Details

finish_startup +

+

Finishes startup, rendering the module effective.

on_interference_check +

+

Handles interacting with caves checking for if anything is reducing (or increasing) interference.

start_sync +

+

Begins the startup sequence.

+ + + diff --git a/obj/item/armor_module/module/better_shoulder_lamp.html b/obj/item/armor_module/module/better_shoulder_lamp.html new file mode 100644 index 0000000000000..5bdc5a5b4b285 --- /dev/null +++ b/obj/item/armor_module/module/better_shoulder_lamp.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/armor_module/module/better_shoulder_lamp - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

better_shoulder_lamp + + + +

+ +

Shoulder lamp strength module

+

Vars

slotThe boost to armor shoulder light
+

Var Details

slot + + + + +

+

The boost to armor shoulder light

+ + + diff --git a/obj/item/armor_module/module/chemsystem.html b/obj/item/armor_module/module/chemsystem.html new file mode 100644 index 0000000000000..d2788de24ce43 --- /dev/null +++ b/obj/item/armor_module/module/chemsystem.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/armor_module/module/chemsystem - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

chemsystem + + + +

+ + + +

Vars

chemsystem_is_activeLets us keep track of what icon state we're in

Procs

update_module_iconUpdates the module on the armor to glow or not
+

Var Details

chemsystem_is_active + + + + +

+

Lets us keep track of what icon state we're in

Proc Details

update_module_icon +

+

Updates the module on the armor to glow or not

+ + + diff --git a/obj/item/armor_module/module/eshield.html b/obj/item/armor_module/module/eshield.html new file mode 100644 index 0000000000000..f26fce5d9bc37 --- /dev/null +++ b/obj/item/armor_module/module/eshield.html @@ -0,0 +1,141 @@ + + + + + + + /obj/item/armor_module/module/eshield - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

eshield + + + +

+ + + + + + + + + + + + + + + + + +

Vars

current_colorCurrent shield color
damaged_shield_cooldownDelay it takes to start recharging again after the shield has been damaged.
max_shield_healthMaximum shield Health
recharge_rateAmount to recharge per tick, processes once every two seconds.
recharge_timerHolds id for a timer which triggers recharge start. Null if not currently delayed.
shield_color_fullShield color when the shield is 66% to full
shield_color_lowShield color when the shield is 0 - 33% full
shield_color_midShield color when the shield is 33 - 66% full
shield_healthCurrent shield Health
spark_systemSpark system used to generate sparks when the armor takes damage

Procs

begin_rechargeStarts the shield recharging after it has been broken.
handle_equipHandles starting the shield when the parent is equiped to the correct slot.
handle_shieldAdds the correct proc callback to the shield list for intercepting damage.
handle_unequipHandles removing the shield when the parent is unequipped
intercept_damageHandles the interception of damage.
parent_examineCalled to give extra info on parent examine.
+

Var Details

current_color + + + + +

+

Current shield color

damaged_shield_cooldown + + + + +

+

Delay it takes to start recharging again after the shield has been damaged.

max_shield_health + + + + +

+

Maximum shield Health

recharge_rate + + + + +

+

Amount to recharge per tick, processes once every two seconds.

recharge_timer + + + + +

+

Holds id for a timer which triggers recharge start. Null if not currently delayed.

shield_color_full + + + + +

+

Shield color when the shield is 66% to full

shield_color_low + + + + +

+

Shield color when the shield is 0 - 33% full

shield_color_mid + + + + +

+

Shield color when the shield is 33 - 66% full

shield_health + + + + +

+

Current shield Health

spark_system + + + + +

+

Spark system used to generate sparks when the armor takes damage

Proc Details

begin_recharge +

+

Starts the shield recharging after it has been broken.

handle_equip +

+

Handles starting the shield when the parent is equiped to the correct slot.

handle_shield +

+

Adds the correct proc callback to the shield list for intercepting damage.

handle_unequip +

+

Handles removing the shield when the parent is unequipped

intercept_damage +

+

Handles the interception of damage.

parent_examine +

+

Called to give extra info on parent examine.

+ + + diff --git a/obj/item/armor_module/module/mimir_environment_protection.html b/obj/item/armor_module/module/mimir_environment_protection.html new file mode 100644 index 0000000000000..6a4e129c9ea22 --- /dev/null +++ b/obj/item/armor_module/module/mimir_environment_protection.html @@ -0,0 +1,50 @@ + + + + + + + /obj/item/armor_module/module/mimir_environment_protection - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

mimir_environment_protection + + + +

+ +

Environment protection module

+ + +

Vars

gas_transfer_coefficient_modgas transfer coefficient mod for gas protection.
permeability_coefficient_modpermeability coefficient mod for gas protection.
siemens_coefficient_modsiemens coefficient mod for gas protection.
+

Var Details

gas_transfer_coefficient_mod + + + + +

+

gas transfer coefficient mod for gas protection.

permeability_coefficient_mod + + + + +

+

permeability coefficient mod for gas protection.

siemens_coefficient_mod + + + + +

+

siemens coefficient mod for gas protection.

+ + + diff --git a/obj/item/armor_module/module/night_vision.html b/obj/item/armor_module/module/night_vision.html new file mode 100644 index 0000000000000..b9de85a1a5b43 --- /dev/null +++ b/obj/item/armor_module/module/night_vision.html @@ -0,0 +1,71 @@ + + + + + + + /obj/item/armor_module/module/night_vision - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

night_vision + + + +

+ + + + + + + +

Vars

attached_gogglesThe goggles this module deploys

Procs

deployCalled when the parent is equipped; deploys the goggles
on_attackbyCalled when the parent is hit by object; to insert a battery
on_clickCalled when the parent is clicked on with an open hand; to take out the battery
on_examineCalled when the parent is examined; relays battery info
undeployCalled when the parent is unequipped; undeploys the goggles
+

Var Details

attached_goggles + + + + +

+

The goggles this module deploys

Proc Details

deploy +

+

Called when the parent is equipped; deploys the goggles

on_attackby +

+

Called when the parent is hit by object; to insert a battery

on_click +

+

Called when the parent is clicked on with an open hand; to take out the battery

on_examine +

+

Called when the parent is examined; relays battery info

undeploy +

+

Called when the parent is unequipped; undeploys the goggles

+ + + diff --git a/obj/item/armor_module/module/valkyrie_autodoc.html b/obj/item/armor_module/module/valkyrie_autodoc.html new file mode 100644 index 0000000000000..f11d9ecbc37b8 --- /dev/null +++ b/obj/item/armor_module/module/valkyrie_autodoc.html @@ -0,0 +1,35 @@ + + + + + + + /obj/item/armor_module/module/valkyrie_autodoc - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

valkyrie_autodoc + + + +

+ +

Mini autodoc module

+

Procs

on_detachThis will do nothing without the autodoc update

Proc Details

on_detach +

+

This will do nothing without the autodoc update

+ + + diff --git a/obj/item/armor_module/module/welding.html b/obj/item/armor_module/module/welding.html new file mode 100644 index 0000000000000..66cc5610b8686 --- /dev/null +++ b/obj/item/armor_module/module/welding.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/armor_module/module/welding - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

welding + + + +

+ +

Helmet Modules

+

Vars

eye_protection_modMod for extra eye protection when activated.
+

Var Details

eye_protection_mod + + + + +

+

Mod for extra eye protection when activated.

+ + + diff --git a/obj/item/armor_module/storage.html b/obj/item/armor_module/storage.html new file mode 100644 index 0000000000000..166a5650aaf74 --- /dev/null +++ b/obj/item/armor_module/storage.html @@ -0,0 +1,57 @@ + + + + + + + /obj/item/armor_module/storage - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

storage + + + +

+ +

Storage modules

+ + + +

Vars

show_storageIf TRUE it will add extra overlays for the items within.
show_storage_iconIcon for the extra storage overlays.
storage_typeDetermines what subtype of storage is on our item, see datums\storage\subtypes

Procs

PopulateContentsUse this to fill your storage with items. USE THIS INSTEAD OF NEW/INIT
+

Var Details

show_storage + + + + +

+

If TRUE it will add extra overlays for the items within.

show_storage_icon + + + + +

+

Icon for the extra storage overlays.

storage_type + + + + +

+

Determines what subtype of storage is on our item, see datums\storage\subtypes

Proc Details

PopulateContents +

+

Use this to fill your storage with items. USE THIS INSTEAD OF NEW/INIT

+ + + diff --git a/obj/item/armored_weapon.html b/obj/item/armored_weapon.html new file mode 100644 index 0000000000000..deaa678041577 --- /dev/null +++ b/obj/item/armored_weapon.html @@ -0,0 +1,274 @@ + + + + + + + /obj/item/armored_weapon - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

armored_weapon + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

accepted_ammoammo types we'll be able to accept
ammocurrently loaded ammo. initial value is ammo we start with
ammo_magazineCurrent loaded magazines: top one empties into ammo
armored_weapon_flagsWeapon slot this weapon fits in
burst_amountbullets per burst if firemode is set to burst
chassisowner this is attached to
current_firercurrent mob firing this weapon. used for tracking for iff and etc in fire()
current_targetcurrent tracked target for fire(), updated when user drags
fire_modefire mode to use for autofire
fire_soundsound file to play when this weapon you know, fires
fire_sound_varyWhether freq vary is applied to fire_sound
hud_state_emptyammo hud icon to display when no ammo is loaded
maximum_magazinesmaximum magazines ammo_magazine can hold
projectile_burst_delaytime between shots in a burst
projectile_delaysince mech guns only get one firemode this is for all types of shots
rearm_timehow many seconds automatic, and manual, reloading takes
variancescatter of this weapon. in degrees and modified by arm this is attached to
windup_checkedTracks windups
windup_delaywindup delay for this object
windup_soundwindup sound played during windup

Procs

apply_weapon_modifiersdoes any effects and changes to the projectile when it is fired
attachattach this weapon to a chassis
begin_firecalled by the chassis: begins firing, yes this is stolen from mech but I made both so bite me
change_targetChanges the current target.
clean_targetCleans the current target in case of Hardel
detachdetach this weapon to a chassis
do_after_checksdo after checks for the mecha equipment do afters
do_fireThe actual firing of a projectile. Overridable for different effects
eject_ammoeject current ammo from tank
fireactually executes firing when autofire asks for it, returns TRUE to keep firing FALSE to stop
reloadload topmost ammo magazine, if there is any
reset_fireResets the autofire component.
set_burstingcallback wrapper for adding/removing trait
set_targetSets the current target and registers for qdel to prevent hardels
stop_fireStops the Autofire component and resets the current cursor.
+

Var Details

accepted_ammo + + + + +

+

ammo types we'll be able to accept

ammo + + + + +

+

currently loaded ammo. initial value is ammo we start with

ammo_magazine + + + + +

+

Current loaded magazines: top one empties into ammo

armored_weapon_flags + + + + +

+

Weapon slot this weapon fits in

burst_amount + + + + +

+

bullets per burst if firemode is set to burst

chassis + + + + +

+

owner this is attached to

current_firer + + + + +

+

current mob firing this weapon. used for tracking for iff and etc in fire()

current_target + + + + +

+

current tracked target for fire(), updated when user drags

fire_mode + + + + +

+

fire mode to use for autofire

fire_sound + + + + +

+

sound file to play when this weapon you know, fires

fire_sound_vary + + + + +

+

Whether freq vary is applied to fire_sound

hud_state_empty + + + + +

+

ammo hud icon to display when no ammo is loaded

maximum_magazines + + + + +

+

maximum magazines ammo_magazine can hold

projectile_burst_delay + + + + +

+

time between shots in a burst

projectile_delay + + + + +

+

since mech guns only get one firemode this is for all types of shots

rearm_time + + + + +

+

how many seconds automatic, and manual, reloading takes

variance + + + + +

+

scatter of this weapon. in degrees and modified by arm this is attached to

windup_checked + + + + +

+

Tracks windups

windup_delay + + + + +

+

windup delay for this object

windup_sound + + + + +

+

windup sound played during windup

Proc Details

apply_weapon_modifiers +

+

does any effects and changes to the projectile when it is fired

attach +

+

attach this weapon to a chassis

begin_fire +

+

called by the chassis: begins firing, yes this is stolen from mech but I made both so bite me

change_target +

+

Changes the current target.

clean_target +

+

Cleans the current target in case of Hardel

detach +

+

detach this weapon to a chassis

do_after_checks +

+

do after checks for the mecha equipment do afters

do_fire +

+

The actual firing of a projectile. Overridable for different effects

eject_ammo +

+

eject current ammo from tank

fire +

+

actually executes firing when autofire asks for it, returns TRUE to keep firing FALSE to stop

reload +

+

load topmost ammo magazine, if there is any

reset_fire +

+

Resets the autofire component.

set_bursting +

+

callback wrapper for adding/removing trait

set_target +

+

Sets the current target and registers for qdel to prevent hardels

stop_fire +

+

Stops the Autofire component and resets the current cursor.

+ + + diff --git a/obj/item/armored_weapon/coilgun.html b/obj/item/armored_weapon/coilgun.html new file mode 100644 index 0000000000000..c531aa1642e47 --- /dev/null +++ b/obj/item/armored_weapon/coilgun.html @@ -0,0 +1,71 @@ + + + + + + + /obj/item/armored_weapon/coilgun - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

coilgun + + + +

+ + + + + + + +

Vars

current_ammo_typeCurrent ammo override to use based on power level
power_levelPower setting of the weapon. Effect the projectile fired
power_togglePower setting toggle action

Procs

give_actionGives the power setting action to the gunner
remove_actionRemoves the power setting action from the gunner
toggle_power_levelSwitches between coil power levels
+

Var Details

current_ammo_type + + + + +

+

Current ammo override to use based on power level

power_level + + + + +

+

Power setting of the weapon. Effect the projectile fired

power_toggle + + + + +

+

Power setting toggle action

Proc Details

give_action +

+

Gives the power setting action to the gunner

remove_action +

+

Removes the power setting action from the gunner

toggle_power_level +

+

Switches between coil power levels

+ + + diff --git a/obj/item/armored_weapon/volkite_carronade.html b/obj/item/armored_weapon/volkite_carronade.html new file mode 100644 index 0000000000000..f17fc5d0f8006 --- /dev/null +++ b/obj/item/armored_weapon/volkite_carronade.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/armored_weapon/volkite_carronade - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

volkite_carronade + + + +

+ + + +

Vars

armor_penArmor pen of this weapon
beam_rangeRange of this weapon
+

Var Details

armor_pen + + + + +

+

Armor pen of this weapon

beam_range + + + + +

+

Range of this weapon

+ + + diff --git a/obj/item/attachable.html b/obj/item/attachable.html new file mode 100644 index 0000000000000..af3d4cc1d50a9 --- /dev/null +++ b/obj/item/attachable.html @@ -0,0 +1,471 @@ + + + + + + + /obj/item/attachable - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

attachable + + + +

+ + +

Some attachables are hardcoded in the projectile firing system, like grenade launchers, flamethrowers.

+

When you are adding new guns into the attachment list, or even old guns, make sure that said guns +properly accept overlays. You can find the proper offsets in the individual gun dms, so make sure +you set them right. It's a pain to go back to find which guns are set incorrectly. +To summarize: rail attachments should go on top of the rail. For rifles, this usually means the middle of the gun. +For handguns, this is usually toward the back of the gun. SMGs usually follow rifles. +Muzzle attachments should connect to the barrel, not sit under or above it. The only exception is the bayonet. +Underrail attachments should just fit snugly, that's about it. Stocks are pretty obvious.

+

All attachment offsets are now in a list, including stocks. Guns that don't take attachments can keep the list null. +~N

+

Anything that isn't used as the gun fires should be a flat number, never a percentange. It screws with the calculations, +and can mean that the order you attach something/detach something will matter in the final number. It's also completely +inaccurate. Don't worry if force is ever negative, it won't runtime.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

accuracy_modModifier to firing accuracy, works off a multiplier.
accuracy_unwielded_modModifier to firing accuracy but for when onehanded.
activation_soundThe specific sound played when activating this attachment.
add_aim_modeadds aim mode to the gun
aim_mode_delay_modModifies aim mode fire rate debuff by a %
aim_mode_movement_multChanges aim mode movement delay multiplicatively
aim_speed_modChanges the slowdown amount when wielding a weapon by this value.
ammo_modwhat ammo the gun could also fire, different lasers usually.
attach_delayHow long in deciseconds it takes to attach a weapon with level 1 combat training. Default is 1.5 seconds.
attach_features_flagsvarious yes no flags associated with attachments. See defines for these: [ATTACH_REMOVABLE]
attach_shell_speed_modChanges the speed of projectiles fired
attach_skillSkill used to attach src to something.
attach_skill_upper_thresholdSkill threshold where the time to attach is halved.
attach_soundSound played on attach
attachment_action_typewhat ability to give the user when attached to a weapon they are holding.
attachment_firing_delaythe delay between shots, for attachments that fire stuff
base_iconReplacement for initial icon that allows for the code to work with multiple variants
burst_accuracy_modadditive modifier to burst fire accuracy.
burst_delay_modChanges burst firing delay. Cannot go below 0.
burst_modChanges amount of shots in a burst
burst_scatter_modAdditive to burst scatter modifier from burst fire, works off a multiplier.
charge_modhow much charge difference it now costs to shoot. negative means more shots per mag.
damage_falloff_modModifier to damage falloff, works off a multiplier.
damage_modModifer to the damage mult, works off a multiplier.
delay_modChanges firing delay. Cannot go below 0.
detach_delayHow long in deciseconds it takes to detach a weapon with level 1 combat training. Default is 1.5 seconds.
gun_attachment_offset_modlazylist of attachment slot offsets for a gun.
gun_firemode_list_modwhat firemodes this attachment allows/adds.
lace_deployedonly used by lace, denotes whether the lace is currently deployed
light_modAdds an x-brightness flashlight to the weapon, which can be toggled on and off.
master_gunwhat gun this attachment is currently attached to, if any.
max_scatter_modMaximum scatter
max_scatter_unwielded_modMaximum scatter when unwielded
melee_modFlat number that adjusts the amount of mêlée force the weapon this is attached to has.
min_scatter_modMinimum scatter
min_scatter_unwielded_modMinimum scatter when unwielded
movement_acc_penalty_modModifies accuracy/scatter penalty when firing onehanded while moving.
pixel_shift_xDetermines the amount of pixels to move the icon state for the overlay. in the x direction
pixel_shift_yDetermines the amount of pixels to move the icon state for the overlay. in the y direction
recoil_modIf positive, adds recoil, if negative, lowers it. Recoil can't go below 0.
recoil_unwielded_modIf positive, adds recoil, if negative, lowers it. but for onehanded firing. Recoil can't go below 0.
scatter_decay_modHow much scatter decays every X seconds
scatter_decay_unwielded_modHow much scatter decays every X seconds when wielded
scatter_increase_modHow much scatter increases per shot
scatter_increase_unwielded_modHow much scatter increases per shot when wielded
scatter_modIncreases or decreases scatter chance.
scatter_unwielded_modIncreases or decreases scatter chance but for onehanded firing.
scope_zoom_modused for the codex to denote if a weapon has the ability to zoom in or not.
scoped_accuracy_modModifier to firing accuracy but for when scoped in, works off a multiplier.
shot_marine_damage_falloffModifies projectile damage by a % when a marine gets passed, but not hit
silence_modAdds silenced to weapon. changing its fire sound, muzzle flash, and volume. TRUE or FALSE
size_modIncreases the weight class.
slotATTACHMENT_SLOT_MUZZLE, ATTACHMENT_SLOT_RAIL, ATTACHMENT_SLOT_UNDER, ATTACHMENT_SLOT_STOCK the particular 'slot' the attachment can attach to. must always be a singular slot.
variants_by_parent_typeAssoc list that uses the parents type as a key. type = "new_icon_state". This will change the icon state depending on what type the parent is. If the list is empty, or the parent type is not within, it will have no effect.
wield_delay_modHow long ADS takes (time before firing)

Procs

activateCalled when the attachment is activated.
apply_modifiersHandles the modifiers to the parent gun
can_attachCalled when the attachment is trying to be attached. If the attachment is allowed to go through, return TRUE.
on_attachCalled when the attachment is attached to something. If it is a gun it will update the guns stats.
on_detachCalled when the attachment is detached from something. If the thing is a gun, it returns its stats to what they were before being attached.
ui_action_clickactually gives the user aim_mode if they're holding the gun
+

Var Details

accuracy_mod + + + + +

+

Modifier to firing accuracy, works off a multiplier.

accuracy_unwielded_mod + + + + +

+

Modifier to firing accuracy but for when onehanded.

activation_sound + + + + +

+

The specific sound played when activating this attachment.

add_aim_mode + + + + +

+

adds aim mode to the gun

aim_mode_delay_mod + + + + +

+

Modifies aim mode fire rate debuff by a %

aim_mode_movement_mult + + + + +

+

Changes aim mode movement delay multiplicatively

aim_speed_mod + + + + +

+

Changes the slowdown amount when wielding a weapon by this value.

ammo_mod + + + + +

+

what ammo the gun could also fire, different lasers usually.

attach_delay + + + + +

+

How long in deciseconds it takes to attach a weapon with level 1 combat training. Default is 1.5 seconds.

attach_features_flags + + + + +

+

various yes no flags associated with attachments. See defines for these: [ATTACH_REMOVABLE]

attach_shell_speed_mod + + + + +

+

Changes the speed of projectiles fired

attach_skill + + + + +

+

Skill used to attach src to something.

attach_skill_upper_threshold + + + + +

+

Skill threshold where the time to attach is halved.

attach_sound + + + + +

+

Sound played on attach

attachment_action_type + + + + +

+

what ability to give the user when attached to a weapon they are holding.

attachment_firing_delay + + + + +

+

the delay between shots, for attachments that fire stuff

base_icon + + + + +

+

Replacement for initial icon that allows for the code to work with multiple variants

burst_accuracy_mod + + + + +

+

additive modifier to burst fire accuracy.

burst_delay_mod + + + + +

+

Changes burst firing delay. Cannot go below 0.

burst_mod + + + + +

+

Changes amount of shots in a burst

burst_scatter_mod + + + + +

+

Additive to burst scatter modifier from burst fire, works off a multiplier.

charge_mod + + + + +

+

how much charge difference it now costs to shoot. negative means more shots per mag.

damage_falloff_mod + + + + +

+

Modifier to damage falloff, works off a multiplier.

damage_mod + + + + +

+

Modifer to the damage mult, works off a multiplier.

delay_mod + + + + +

+

Changes firing delay. Cannot go below 0.

detach_delay + + + + +

+

How long in deciseconds it takes to detach a weapon with level 1 combat training. Default is 1.5 seconds.

gun_attachment_offset_mod + + + + +

+

lazylist of attachment slot offsets for a gun.

gun_firemode_list_mod + + + + +

+

what firemodes this attachment allows/adds.

lace_deployed + + + + +

+

only used by lace, denotes whether the lace is currently deployed

light_mod + + + + +

+

Adds an x-brightness flashlight to the weapon, which can be toggled on and off.

master_gun + + + + +

+

what gun this attachment is currently attached to, if any.

max_scatter_mod + + + + +

+

Maximum scatter

max_scatter_unwielded_mod + + + + +

+

Maximum scatter when unwielded

melee_mod + + + + +

+

Flat number that adjusts the amount of mêlée force the weapon this is attached to has.

min_scatter_mod + + + + +

+

Minimum scatter

min_scatter_unwielded_mod + + + + +

+

Minimum scatter when unwielded

movement_acc_penalty_mod + + + + +

+

Modifies accuracy/scatter penalty when firing onehanded while moving.

pixel_shift_x + + + + +

+

Determines the amount of pixels to move the icon state for the overlay. in the x direction

pixel_shift_y + + + + +

+

Determines the amount of pixels to move the icon state for the overlay. in the y direction

recoil_mod + + + + +

+

If positive, adds recoil, if negative, lowers it. Recoil can't go below 0.

recoil_unwielded_mod + + + + +

+

If positive, adds recoil, if negative, lowers it. but for onehanded firing. Recoil can't go below 0.

scatter_decay_mod + + + + +

+

How much scatter decays every X seconds

scatter_decay_unwielded_mod + + + + +

+

How much scatter decays every X seconds when wielded

scatter_increase_mod + + + + +

+

How much scatter increases per shot

scatter_increase_unwielded_mod + + + + +

+

How much scatter increases per shot when wielded

scatter_mod + + + + +

+

Increases or decreases scatter chance.

scatter_unwielded_mod + + + + +

+

Increases or decreases scatter chance but for onehanded firing.

scope_zoom_mod + + + + +

+

used for the codex to denote if a weapon has the ability to zoom in or not.

scoped_accuracy_mod + + + + +

+

Modifier to firing accuracy but for when scoped in, works off a multiplier.

shot_marine_damage_falloff + + + + +

+

Modifies projectile damage by a % when a marine gets passed, but not hit

silence_mod + + + + +

+

Adds silenced to weapon. changing its fire sound, muzzle flash, and volume. TRUE or FALSE

size_mod + + + + +

+

Increases the weight class.

slot + + + + +

+

ATTACHMENT_SLOT_MUZZLE, ATTACHMENT_SLOT_RAIL, ATTACHMENT_SLOT_UNDER, ATTACHMENT_SLOT_STOCK the particular 'slot' the attachment can attach to. must always be a singular slot.

variants_by_parent_type + + + + +

+

Assoc list that uses the parents type as a key. type = "new_icon_state". This will change the icon state depending on what type the parent is. If the list is empty, or the parent type is not within, it will have no effect.

wield_delay_mod + + + + +

+

How long ADS takes (time before firing)

Proc Details

activate +

+

Called when the attachment is activated.

apply_modifiers +

+

Handles the modifiers to the parent gun

can_attach +

+

Called when the attachment is trying to be attached. If the attachment is allowed to go through, return TRUE.

on_attach +

+

Called when the attachment is attached to something. If it is a gun it will update the guns stats.

on_detach +

+

Called when the attachment is detached from something. If the thing is a gun, it returns its stats to what they were before being attached.

ui_action_click +

+

actually gives the user aim_mode if they're holding the gun

+ + + diff --git a/obj/item/attachable/buildasentry.html b/obj/item/attachable/buildasentry.html new file mode 100644 index 0000000000000..769c0f6eda20c --- /dev/null +++ b/obj/item/attachable/buildasentry.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/attachable/buildasentry - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

buildasentry + + + +

+ + + +

Vars

deploy_timeDeploy time for the build-a-sentry
undeploy_timeUndeploy tim for the build-a-sentry
+

Var Details

deploy_time + + + + +

+

Deploy time for the build-a-sentry

undeploy_time + + + + +

+

Undeploy tim for the build-a-sentry

+ + + diff --git a/obj/item/attachable/flamer_nozzle.html b/obj/item/attachable/flamer_nozzle.html new file mode 100644 index 0000000000000..350bd32d86172 --- /dev/null +++ b/obj/item/attachable/flamer_nozzle.html @@ -0,0 +1,64 @@ + + + + + + + /obj/item/attachable/flamer_nozzle - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

flamer_nozzle + + + +

+ + + + + + +

Vars

burn_level_modModifier for burn level of attached flamer. Percentage based.
burn_time_modModifier for burn time of attached flamer. Percentage based.
mob_flame_damage_modDamage multiplier for mobs caught in the initial stream of fire of the attached flamer.
range_modifierRange modifier of attached flamer. Numerically based.
stream_typeThis is pulled when the parent flamer fires, it determines how the parent flamers fire stream acts.
+

Var Details

burn_level_mod + + + + +

+

Modifier for burn level of attached flamer. Percentage based.

burn_time_mod + + + + +

+

Modifier for burn time of attached flamer. Percentage based.

mob_flame_damage_mod + + + + +

+

Damage multiplier for mobs caught in the initial stream of fire of the attached flamer.

range_modifier + + + + +

+

Range modifier of attached flamer. Numerically based.

stream_type + + + + +

+

This is pulled when the parent flamer fires, it determines how the parent flamers fire stream acts.

+ + + diff --git a/obj/item/attachable/foldable.html b/obj/item/attachable/foldable.html new file mode 100644 index 0000000000000..61e388fc30d09 --- /dev/null +++ b/obj/item/attachable/foldable.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/attachable/foldable - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

foldable + + + +

+ + + +

Vars

deploy_timeHow long it takes to fold or unfold
foldedwhether the attachment is currently folded or not
+

Var Details

deploy_time + + + + +

+

How long it takes to fold or unfold

folded + + + + +

+

whether the attachment is currently folded or not

+ + + diff --git a/obj/item/attachable/foldable/bipod.html b/obj/item/attachable/foldable/bipod.html new file mode 100644 index 0000000000000..60b0ec8dc1bfd --- /dev/null +++ b/obj/item/attachable/foldable/bipod.html @@ -0,0 +1,35 @@ + + + + + + + /obj/item/attachable/foldable/bipod - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

bipod + + + +

+ + +

Procs

retract_bipodSignal handler for forced undeployment

Proc Details

retract_bipod +

+

Signal handler for forced undeployment

+ + + diff --git a/obj/item/attachable/magnetic_harness.html b/obj/item/attachable/magnetic_harness.html new file mode 100644 index 0000000000000..31a57626c3f87 --- /dev/null +++ b/obj/item/attachable/magnetic_harness.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/attachable/magnetic_harness - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

magnetic_harness + + + +

+ + +

Vars

reequip_componentHandles the harness functionality, created when attached to a gun and removed on detach
+

Var Details

reequip_component + + + + +

+

Handles the harness functionality, created when attached to a gun and removed on detach

+ + + diff --git a/obj/item/attachable/motiondetector.html b/obj/item/attachable/motiondetector.html new file mode 100644 index 0000000000000..ec02a988cc3a9 --- /dev/null +++ b/obj/item/attachable/motiondetector.html @@ -0,0 +1,92 @@ + + + + + + + /obj/item/attachable/motiondetector - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

motiondetector + + + +

+ + + + + + + + + + +

Vars

blips_listThe list of all the blips
hostile_detectedIf a hostile was detected
move_sensitivityThe time needed after the last move to not be detected by this motion detector
operatorWho's using this item
rangeThe range of this motion detector

Procs

clean_blipsClean all blips from operator screen
clean_operatorSignal handler to clean out user vars
prepare_blipPrepare the blip to be print on the operator screen
start_processing_againActivate the attachement when your are putting the gun out of your suit slot
+

Var Details

blips_list + + + + +

+

The list of all the blips

hostile_detected + + + + +

+

If a hostile was detected

move_sensitivity + + + + +

+

The time needed after the last move to not be detected by this motion detector

operator + + + + +

+

Who's using this item

range + + + + +

+

The range of this motion detector

Proc Details

clean_blips +

+

Clean all blips from operator screen

clean_operator +

+

Signal handler to clean out user vars

prepare_blip +

+

Prepare the blip to be print on the operator screen

start_processing_again +

+

Activate the attachement when your are putting the gun out of your suit slot

+ + + diff --git a/obj/item/attachable/scope.html b/obj/item/attachable/scope.html new file mode 100644 index 0000000000000..da55d002b3cb0 --- /dev/null +++ b/obj/item/attachable/scope.html @@ -0,0 +1,64 @@ + + + + + + + /obj/item/attachable/scope - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

scope + + + +

+ + + + + + +

Vars

active_nightvisionboolean as to whether the attachment is currently giving nightvision
deployed_scope_rezoomTrue if the scope is supposed to reactiveate when a deployed gun is turned.
has_nightvisionboolean as to whether a scope can apply nightvision
scope_delayscope zoom delay, delay before you can aim.
zoom_slowdownhow much slowdown the scope gives when zoomed. You want this to be slowdown you want minus aim_speed_mod
+

Var Details

active_nightvision + + + + +

+

boolean as to whether the attachment is currently giving nightvision

deployed_scope_rezoom + + + + +

+

True if the scope is supposed to reactiveate when a deployed gun is turned.

has_nightvision + + + + +

+

boolean as to whether a scope can apply nightvision

scope_delay + + + + +

+

scope zoom delay, delay before you can aim.

zoom_slowdown + + + + +

+

how much slowdown the scope gives when zoomed. You want this to be slowdown you want minus aim_speed_mod

+ + + diff --git a/obj/item/belt_harness.html b/obj/item/belt_harness.html new file mode 100644 index 0000000000000..1d739898495d4 --- /dev/null +++ b/obj/item/belt_harness.html @@ -0,0 +1,50 @@ + + + + + + + /obj/item/belt_harness - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

belt_harness + + + +

+ + + + +

Vars

reequip_componentThe current attacher. Gets remade for every new item

Procs

attach_itemSet up the link between belt and object
detach_itemClean out attachment refs/signals
+

Var Details

reequip_component + + + + +

+

The current attacher. Gets remade for every new item

Proc Details

attach_item +

+

Set up the link between belt and object

detach_item +

+

Clean out attachment refs/signals

+ + + diff --git a/obj/item/binoculars/fire_support.html b/obj/item/binoculars/fire_support.html new file mode 100644 index 0000000000000..525f77a1ca0d6 --- /dev/null +++ b/obj/item/binoculars/fire_support.html @@ -0,0 +1,113 @@ + + + + + + + /obj/item/binoculars/fire_support - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

fire_support + + + +

+ + + + + + + + + + + + + +

Vars

factionFaction locks this item if specified
laser_overlaylase effect
modeCurrent mode for support request
mode_listfiremodes available for these binos
target_acquisition_delaylasing time
target_atomLast stored turf targetted by rangefinders

Procs

acquire_coordinatesAcquires coords of a target turf
acquire_targetlases a target and calls fire support on it
bino_checksInternal bino checks, mainly around firemode
can_see_targetChecks if we can draw LOS to the target
select_radialSelects a firemode
unset_targetUnsets the target and cleans up
+

Var Details

faction + + + + +

+

Faction locks this item if specified

laser_overlay + + + + +

+

lase effect

mode + + + + +

+

Current mode for support request

mode_list + + + + +

+

firemodes available for these binos

target_acquisition_delay + + + + +

+

lasing time

target_atom + + + + +

+

Last stored turf targetted by rangefinders

Proc Details

acquire_coordinates +

+

Acquires coords of a target turf

acquire_target +

+

lases a target and calls fire support on it

bino_checks +

+

Internal bino checks, mainly around firemode

can_see_target +

+

Checks if we can draw LOS to the target

select_radial +

+

Selects a firemode

unset_target +

+

Unsets the target and cleans up

+ + + diff --git a/obj/item/binoculars/tactical.html b/obj/item/binoculars/tactical.html new file mode 100644 index 0000000000000..fa6887ea726b1 --- /dev/null +++ b/obj/item/binoculars/tactical.html @@ -0,0 +1,71 @@ + + + + + + + /obj/item/binoculars/tactical - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

tactical + + + +

+ + + + + + + +

Vars

linked_mortarsLinked mortar for remote targeting.
selected_mortarSelected mortar index
targetturfLast stored turf targetted by rangefinders

Procs

check_mortar_indexProc that when called checks if the selected mortar isnt out of list bounds and if it is, resets to 1
clean_refsProc called when linked_mortar is deleted.
set_mortarSets or unsets the binocs linked mortar.
+

Var Details

linked_mortars + + + + +

+

Linked mortar for remote targeting.

selected_mortar + + + + +

+

Selected mortar index

targetturf + + + + +

+

Last stored turf targetted by rangefinders

Proc Details

check_mortar_index +

+

Proc that when called checks if the selected mortar isnt out of list bounds and if it is, resets to 1

clean_refs +

+

Proc called when linked_mortar is deleted.

set_mortar +

+

Sets or unsets the binocs linked mortar.

+ + + diff --git a/obj/item/blink_drive.html b/obj/item/blink_drive.html new file mode 100644 index 0000000000000..cd835b56b1edf --- /dev/null +++ b/obj/item/blink_drive.html @@ -0,0 +1,78 @@ + + + + + + + /obj/item/blink_drive - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

blink_drive + + + +

+ + + + + + + + +

Vars

blink_actionControlling action
charge_timerThe timer for recharging the drive
chargesNumber of teleport charges you currently have
equipped_userThe mob wearing the blink drive. Needed for item updates.

Procs

rechargeRecharges the drive, and sets another timer if not maxed out
teleportHandles the actual teleportation
teleport_debuff_aoeThe effects applied on teleporting from or to a location
+

Var Details

+

Controlling action

charge_timer + + + + +

+

The timer for recharging the drive

charges + + + + +

+

Number of teleport charges you currently have

equipped_user + + + + +

+

The mob wearing the blink drive. Needed for item updates.

Proc Details

recharge +

+

Recharges the drive, and sets another timer if not maxed out

teleport +

+

Handles the actual teleportation

teleport_debuff_aoe +

+

The effects applied on teleporting from or to a location

+ + + diff --git a/obj/item/broken_bottle.html b/obj/item/broken_bottle.html new file mode 100644 index 0000000000000..cfb6ef80b044e --- /dev/null +++ b/obj/item/broken_bottle.html @@ -0,0 +1,52 @@ + + + + + + + /obj/item/broken_bottle - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

broken_bottle + + + +

+ + + + +

Vars

broken_outlineThe mask image for mimicking a broken-off bottom of the bottle
flipped_broken_outlineThe mask image for mimicking a broken-off neck of the bottle

Procs

mimic_brokenMimics the appearance and properties of the passed in bottle. +Takes the broken bottle to mimic, and the thing the bottle was broken agaisnt as args
+

Var Details

broken_outline + + + + +

+

The mask image for mimicking a broken-off bottom of the bottle

flipped_broken_outline + + + + +

+

The mask image for mimicking a broken-off neck of the bottle

Proc Details

mimic_broken +

+

Mimics the appearance and properties of the passed in bottle. +Takes the broken bottle to mimic, and the thing the bottle was broken agaisnt as args

+ + + diff --git a/obj/item/campaign_beacon.html b/obj/item/campaign_beacon.html new file mode 100644 index 0000000000000..c3393773422b2 --- /dev/null +++ b/obj/item/campaign_beacon.html @@ -0,0 +1,57 @@ + + + + + + + /obj/item/campaign_beacon - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

campaign_beacon + + + +

+ + + + + +

Vars

deploy_timeTime to deploy
deployable_typeType path for what this deploys into
undeploy_timeTime to undeploy

Procs

can_deployAny Additional checks for deploying validity
+

Var Details

deploy_time + + + + +

+

Time to deploy

deployable_type + + + + +

+

Type path for what this deploys into

undeploy_time + + + + +

+

Time to undeploy

Proc Details

can_deploy +

+

Any Additional checks for deploying validity

+ + + diff --git a/obj/item/campaign_beacon/bunker_buster.html b/obj/item/campaign_beacon/bunker_buster.html new file mode 100644 index 0000000000000..c1c4b599e25d0 --- /dev/null +++ b/obj/item/campaign_beacon/bunker_buster.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/campaign_beacon/bunker_buster - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

bunker_buster + + + +

+ + + +

Vars

valid_deploy_areasCan only be deployed in map areas listed here

Procs

can_deployChecks if we can deploy the beacon here
+

Var Details

valid_deploy_areas + + + + +

+

Can only be deployed in map areas listed here

Proc Details

can_deploy +

+

Checks if we can deploy the beacon here

+ + + diff --git a/obj/item/card/id.html b/obj/item/card/id.html new file mode 100644 index 0000000000000..cd205b556075a --- /dev/null +++ b/obj/item/card/id.html @@ -0,0 +1,57 @@ + + + + + + + /obj/item/card/id - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

id + + + +

+ + + + + +

Vars

id_flagsMiscelaneous ID flags
iff_signalIff bitfield to determines hit and misses
marine_buy_choicesWhat category of items can you buy - used for armor and pouches
marine_pointsHow many points you can use to buy items
+

Var Details

id_flags + + + + +

+

Miscelaneous ID flags

iff_signal + + + + +

+

Iff bitfield to determines hit and misses

marine_buy_choices + + + + +

+

What category of items can you buy - used for armor and pouches

marine_points + + + + +

+

How many points you can use to buy items

+ + + diff --git a/obj/item/cell.html b/obj/item/cell.html new file mode 100644 index 0000000000000..cfeabf91744ff --- /dev/null +++ b/obj/item/cell.html @@ -0,0 +1,134 @@ + + + + + + + /obj/item/cell - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

cell + + + +

+ + + + + + + + + + + + + + + + +

Vars

chargenote %age conveted to actual charge in New
charge_amountHow much power to give, if self_recharge is true. The number is in absolute cell charge, as it gets divided by CELLRATE later.
charge_delayHow long it takes for the cell to start recharging after last use
charge_overlayused to track what set of overlays to use to display charge level
last_useA tracker for use in self-charging
maxchargemaximum amount of charge the cell can hold
minor_faultIf not 100% reliable, it will build up faults.
riggedBOOL, true if rigged to explode
self_rechargeBOOL, If true, the cell will recharge itself.

Procs

corruptDivides charge and maxcharge, then has a 10% chance to be rigged to explode
explodeExplodes, scaling with cell charge
get_electrocute_damageReturns a number based on the current charge of the power cell
giveAdds power to the cell
is_fully_chargedReturns TRUE if charge is equal to maxcharge
percentreturn % charge of cell
+

Var Details

charge + + + + +

+

note %age conveted to actual charge in New

charge_amount + + + + +

+

How much power to give, if self_recharge is true. The number is in absolute cell charge, as it gets divided by CELLRATE later.

charge_delay + + + + +

+

How long it takes for the cell to start recharging after last use

charge_overlay + + + + +

+

used to track what set of overlays to use to display charge level

last_use + + + + +

+

A tracker for use in self-charging

maxcharge + + + + +

+

maximum amount of charge the cell can hold

minor_fault + + + + +

+

If not 100% reliable, it will build up faults.

rigged + + + + +

+

BOOL, true if rigged to explode

self_recharge + + + + +

+

BOOL, If true, the cell will recharge itself.

Proc Details

corrupt +

+

Divides charge and maxcharge, then has a 10% chance to be rigged to explode

explode +

+

Explodes, scaling with cell charge

get_electrocute_damage +

+

Returns a number based on the current charge of the power cell

give +

+

Adds power to the cell

is_fully_charged +

+

Returns TRUE if charge is equal to maxcharge

percent +

+

return % charge of cell

+ + + diff --git a/obj/item/cell/lasgun.html b/obj/item/cell/lasgun.html new file mode 100644 index 0000000000000..2762fc9213b88 --- /dev/null +++ b/obj/item/cell/lasgun.html @@ -0,0 +1,50 @@ + + + + + + + /obj/item/cell/lasgun - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

lasgun + + + +

+ + + + +

Vars

bonus_overlayif the magazine has a special overlay associated with it, i.e. extended mags etc
magazine_features_flagsMagazine flags.
w_classChanged due to the fact some maps and ERTs spawn with the child, the lasrifle. Charges on guns changed accordingly.
+

Var Details

bonus_overlay + + + + +

+

if the magazine has a special overlay associated with it, i.e. extended mags etc

magazine_features_flags + + + + +

+

Magazine flags.

w_class + + + + +

+

Changed due to the fact some maps and ERTs spawn with the child, the lasrifle. Charges on guns changed accordingly.

+ + + diff --git a/obj/item/cell/lasgun/volkite/powerpack.html b/obj/item/cell/lasgun/volkite/powerpack.html new file mode 100644 index 0000000000000..22696b565e659 --- /dev/null +++ b/obj/item/cell/lasgun/volkite/powerpack.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/cell/lasgun/volkite/powerpack - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

powerpack + + + +

+ + + +

Vars

cell_typeThe kind of cells we like to accept around here to charge from us.

Procs

use_chargeHandles draining power from the powerpack, returns the value of the charge drained to MouseDrop where it's added to the cell.
+

Var Details

cell_type + + + + +

+

The kind of cells we like to accept around here to charge from us.

Proc Details

use_charge +

+

Handles draining power from the powerpack, returns the value of the charge drained to MouseDrop where it's added to the cell.

+ + + diff --git a/obj/item/clothing.html b/obj/item/clothing.html new file mode 100644 index 0000000000000..13512fa39cc69 --- /dev/null +++ b/obj/item/clothing.html @@ -0,0 +1,78 @@ + + + + + + + /obj/item/clothing - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

clothing + + + +

+ + + + + + + + +

Vars

accuracy_modUsed by headgear mostly to affect accuracy
armor_features_flagsBitflags used to determine the state of the armor (light on, overlay used, or reinfornced), currently support flags are in [equipment.dm:100]
attachment_offsetsPixel offsets for specific attachment slots. Is not used currently.
attachments_allowedTypepath list of allowed attachment types.
attachments_by_slotAssoc list of available slots. Since this keeps track of all currently equiped attachments per object, this cannot be a string_list()
eye_protectionused for headgear, masks, and glasses, to see how much they protect eyes from bright lights.
starting_attachmentsList of attachment types that is attached to the object on initialize.
+

Var Details

accuracy_mod + + + + +

+

Used by headgear mostly to affect accuracy

armor_features_flags + + + + +

+

Bitflags used to determine the state of the armor (light on, overlay used, or reinfornced), currently support flags are in [equipment.dm:100]

attachment_offsets + + + + +

+

Pixel offsets for specific attachment slots. Is not used currently.

attachments_allowed + + + + +

+

Typepath list of allowed attachment types.

attachments_by_slot + + + + +

+

Assoc list of available slots. Since this keeps track of all currently equiped attachments per object, this cannot be a string_list()

eye_protection + + + + +

+

used for headgear, masks, and glasses, to see how much they protect eyes from bright lights.

starting_attachments + + + + +

+

List of attachment types that is attached to the object on initialize.

+ + + diff --git a/obj/item/clothing/glasses.html b/obj/item/clothing/glasses.html new file mode 100644 index 0000000000000..e7317775bafd8 --- /dev/null +++ b/obj/item/clothing/glasses.html @@ -0,0 +1,57 @@ + + + + + + + /obj/item/clothing/glasses - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

glasses + + + +

+ + + + + +

Vars

activation_soundSound played on activate() when turning on
deactivation_soundSound played on activate() when turning off
tintColor to use for the HUD tint; leave null if no tint

Procs

activateToggle the functions of the glasses
+

Var Details

activation_sound + + + + +

+

Sound played on activate() when turning on

deactivation_sound + + + + +

+

Sound played on activate() when turning off

tint + + + + +

+

Color to use for the HUD tint; leave null if no tint

Proc Details

activate +

+

Toggle the functions of the glasses

+ + + diff --git a/obj/item/clothing/glasses/hud.html b/obj/item/clothing/glasses/hud.html new file mode 100644 index 0000000000000..5e5bab37a7b59 --- /dev/null +++ b/obj/item/clothing/glasses/hud.html @@ -0,0 +1,57 @@ + + + + + + + /obj/item/clothing/glasses/hud - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

hud + + + +

+ + + + + +

Vars

affected_userThe user wearing the glasses
hud_typeThe hud type(s) to give this type of glasses

Procs

activate_hudActivates the hud(s) these glasses have
deactivate_hudDeactivates the hud(s) these glasses have
+

Var Details

affected_user + + + + +

+

The user wearing the glasses

hud_type + + + + +

+

The hud type(s) to give this type of glasses

Proc Details

activate_hud +

+

Activates the hud(s) these glasses have

deactivate_hud +

+

Deactivates the hud(s) these glasses have

+ + + diff --git a/obj/item/clothing/glasses/night_vision.html b/obj/item/clothing/glasses/night_vision.html new file mode 100644 index 0000000000000..144efdf8dc823 --- /dev/null +++ b/obj/item/clothing/glasses/night_vision.html @@ -0,0 +1,85 @@ + + + + + + + /obj/item/clothing/glasses/night_vision - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

night_vision + + + +

+ + + + + + + + + +

Vars

active_energy_costHow much energy this module needs when activated
active_soundLooping sound to play
batteryThe battery inside
looping_sound_volumeHow loud the looping sound should be

Procs

battery_statusInfo regarding battery status; separate proc so that it can be displayed when examining the parent object
eject_batteryEject the internal battery, if there is one
insert_batteryInsert a battery, if checks pass
update_worn_stateSimple proc to update the worn state of the glasses; will use the active value by default if no argument passed
+

Var Details

active_energy_cost + + + + +

+

How much energy this module needs when activated

active_sound + + + + +

+

Looping sound to play

battery + + + + +

+

The battery inside

looping_sound_volume + + + + +

+

How loud the looping sound should be

Proc Details

battery_status +

+

Info regarding battery status; separate proc so that it can be displayed when examining the parent object

eject_battery +

+

Eject the internal battery, if there is one

insert_battery +

+

Insert a battery, if checks pass

update_worn_state +

+

Simple proc to update the worn state of the glasses; will use the active value by default if no argument passed

+ + + diff --git a/obj/item/clothing/glasses/welding.html b/obj/item/clothing/glasses/welding.html new file mode 100644 index 0000000000000..2281c26a43681 --- /dev/null +++ b/obj/item/clothing/glasses/welding.html @@ -0,0 +1,42 @@ + + + + + + + /obj/item/clothing/glasses/welding - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

welding + + + +

+ + + +

Procs

flip_downToggle the welding goggles off
flip_upToggle the welding goggles on

Proc Details

flip_down +

+

Toggle the welding goggles off

flip_up +

+

Toggle the welding goggles on

+ + + diff --git a/obj/item/clothing/gloves/defibrillator.html b/obj/item/clothing/gloves/defibrillator.html new file mode 100644 index 0000000000000..5ddc56991e6e8 --- /dev/null +++ b/obj/item/clothing/gloves/defibrillator.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/clothing/gloves/defibrillator - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

defibrillator + + + +

+ + +

Vars

internal_defibThe internal defib item
+

Var Details

internal_defib + + + + +

+

The internal defib item

+ + + diff --git a/obj/item/clothing/gloves/heldgloves.html b/obj/item/clothing/gloves/heldgloves.html new file mode 100644 index 0000000000000..2b605501505b3 --- /dev/null +++ b/obj/item/clothing/gloves/heldgloves.html @@ -0,0 +1,71 @@ + + + + + + + /obj/item/clothing/gloves/heldgloves - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

heldgloves + + + +

+ + + + + + + +

Vars

leftgloveThe glove we're currently using in the left hand
leftglove_pathWhat type of glove we use for the left hand
rightgloveThe glove we're currently using in the right hand
rightglove_pathWhat type of glove we use for the right hand

Procs

create_glovesCreates the held items for user and puts it in their hand
remove_glovesRemoves gloves. Returns false if gloves are not currently worn
+

Var Details

leftglove + + + + +

+

The glove we're currently using in the left hand

leftglove_path + + + + +

+

What type of glove we use for the left hand

rightglove + + + + +

+

The glove we're currently using in the right hand

rightglove_path + + + + +

+

What type of glove we use for the right hand

Proc Details

create_gloves +

+

Creates the held items for user and puts it in their hand

remove_gloves +

+

Removes gloves. Returns false if gloves are not currently worn

+ + + diff --git a/obj/item/clothing/head/helmet/marine.html b/obj/item/clothing/head/helmet/marine.html new file mode 100644 index 0000000000000..d37495bba98d1 --- /dev/null +++ b/obj/item/clothing/head/helmet/marine.html @@ -0,0 +1,50 @@ + + + + + + + /obj/item/clothing/head/helmet/marine - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

marine + + + +

+ + + + +

Vars

allowed_helmet_itemsitems that fit in the helmet: strict type = iconstate to show
marine_helmet_flagsmarine helmet behaviour flags

Procs

update_overlaysUpdates the helmet_overlays list, inserting and removing images from it as necesarry
+

Var Details

allowed_helmet_items + + + + +

+

items that fit in the helmet: strict type = iconstate to show

marine_helmet_flags + + + + +

+

marine helmet behaviour flags

Proc Details

update_overlays +

+

Updates the helmet_overlays list, inserting and removing images from it as necesarry

+ + + diff --git a/obj/item/clothing/head/modular.html b/obj/item/clothing/head/modular.html new file mode 100644 index 0000000000000..dd66ddbcab49d --- /dev/null +++ b/obj/item/clothing/head/modular.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/clothing/head/modular - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

modular + + + +

+ +

Core helmet module

+ +

Vars

visorless_offset_xPixel offset on the X axis for how the helmet sits on the mob without a visor.
visorless_offset_yPixel offset on the Y axis for how the helmet sits on the mob without a visor.
+

Var Details

visorless_offset_x + + + + +

+

Pixel offset on the X axis for how the helmet sits on the mob without a visor.

visorless_offset_y + + + + +

+

Pixel offset on the Y axis for how the helmet sits on the mob without a visor.

+ + + diff --git a/obj/item/clothing/mask.html b/obj/item/clothing/mask.html new file mode 100644 index 0000000000000..b6cccdffaaae2 --- /dev/null +++ b/obj/item/clothing/mask.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/clothing/mask - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

mask + + + +

+ + + +

Vars

use_radio_beeps_ttsIf set to true, activates the radio effect on TTS.
voice_overrideIf defined, what voice should we override with if TTS is active?
+

Var Details

use_radio_beeps_tts + + + + +

+

If set to true, activates the radio effect on TTS.

voice_override + + + + +

+

If defined, what voice should we override with if TTS is active?

+ + + diff --git a/obj/item/clothing/mask/cigarette.html b/obj/item/clothing/mask/cigarette.html new file mode 100644 index 0000000000000..b2019dbd0b7f1 --- /dev/null +++ b/obj/item/clothing/mask/cigarette.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/clothing/mask/cigarette - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

cigarette + + + +

+ + + +

Vars

emissive_stateIcon_state for mob sprite emissive
transquantitythe quantity that will be transmited each 2 seconds
+

Var Details

emissive_state + + + + +

+

Icon_state for mob sprite emissive

transquantity + + + + +

+

the quantity that will be transmited each 2 seconds

+ + + diff --git a/obj/item/clothing/mask/facehugger.html b/obj/item/clothing/mask/facehugger.html new file mode 100644 index 0000000000000..bd9487c946859 --- /dev/null +++ b/obj/item/clothing/mask/facehugger.html @@ -0,0 +1,236 @@ + + + + + + + /obj/item/clothing/mask/facehugger - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

facehugger + + + +

+ +

Facehuggers

+

They work by being activated using timers to trigger leap_at_nearest_target() +Going inactive and active is handeled by go_active() and go_idle() +Lifetime is handled by a timer on check_lifecycle() +For the love of god do not use process() and rng for this kind of shit it makes it unreliable and buggy as fuck

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

about_to_jumpWhen TRUE hugger is about to jump
activate_timeTime to become active again
activetimerThe timer to go active
attachedWhether we're attached to a host
combat_huggerIs this hugger intended for combat?
hivenumberWhat hive this hugger belongs to
impact_timeTime to become active after impacting on a direct thrown hit
jump_cooldownTime to recover after jumping
jumptimerThe timer tracking when we next jump
leapingIs actually attacking someone?
lifecycleHow long the hugger will survive outside of the egg, or carrier.
lifetimerThe timer tracking when we die
proximity_timeTime to become active after moving into the facehugger's space.
sourceThe xeno that spawned/threw/dropped the hugger. Used for anti-shuffle
stasis"Freezes" the hugger in for example, eggs
statWhether the hugger is dead, active or inactive
sterileWhether this hugger can infect things

Procs

apply_danger_overlayApplies an alert overlay when the hugger is about to jump
clear_hugger_sourceClears the source of our facehugger for the purpose of anti-shuffle mechanics
combat_hugger_check_targetSee if our target is valid to be attacked
facehugger_register_sourceRegisters the source of our facehugger for the purpose of anti-shuffle mechanics
kill_huggerKills the hugger, should be self explanatory
melt_awayDeletes the dead hugger, usually after a period of being dead
pre_leapCalled before we leap
remove_danger_overlayRemove the hugger's alert overlay
reset_attach_statusMake it fall off the person so we can update their icons. Won't update if they're in containers though
reset_life_timerResets the life timer for the facehugger
try_attachTry to attach to the mask slot
try_impregnateTry to put an embryo into the target mob
+

Var Details

about_to_jump + + + + +

+

When TRUE hugger is about to jump

activate_time + + + + +

+

Time to become active again

activetimer + + + + +

+

The timer to go active

attached + + + + +

+

Whether we're attached to a host

combat_hugger + + + + +

+

Is this hugger intended for combat?

hivenumber + + + + +

+

What hive this hugger belongs to

impact_time + + + + +

+

Time to become active after impacting on a direct thrown hit

jump_cooldown + + + + +

+

Time to recover after jumping

jumptimer + + + + +

+

The timer tracking when we next jump

leaping + + + + +

+

Is actually attacking someone?

lifecycle + + + + +

+

How long the hugger will survive outside of the egg, or carrier.

lifetimer + + + + +

+

The timer tracking when we die

proximity_time + + + + +

+

Time to become active after moving into the facehugger's space.

source + + + + +

+

The xeno that spawned/threw/dropped the hugger. Used for anti-shuffle

stasis + + + + +

+

"Freezes" the hugger in for example, eggs

stat + + + + +

+

Whether the hugger is dead, active or inactive

sterile + + + + +

+

Whether this hugger can infect things

Proc Details

apply_danger_overlay +

+

Applies an alert overlay when the hugger is about to jump

clear_hugger_source +

+

Clears the source of our facehugger for the purpose of anti-shuffle mechanics

combat_hugger_check_target +

+

See if our target is valid to be attacked

facehugger_register_source +

+

Registers the source of our facehugger for the purpose of anti-shuffle mechanics

kill_hugger +

+

Kills the hugger, should be self explanatory

melt_away +

+

Deletes the dead hugger, usually after a period of being dead

pre_leap +

+

Called before we leap

remove_danger_overlay +

+

Remove the hugger's alert overlay

reset_attach_status +

+

Make it fall off the person so we can update their icons. Won't update if they're in containers though

reset_life_timer +

+

Resets the life timer for the facehugger

try_attach +

+

Try to attach to the mask slot

try_impregnate +

+

Try to put an embryo into the target mob

+ + + diff --git a/obj/item/clothing/mask/facehugger/combat/chem_injector.html b/obj/item/clothing/mask/facehugger/combat/chem_injector.html new file mode 100644 index 0000000000000..0bf9a872fee7d --- /dev/null +++ b/obj/item/clothing/mask/facehugger/combat/chem_injector.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/clothing/mask/facehugger/combat/chem_injector - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

chem_injector + + + +

+ + + +

Vars

amount_injectedThe amount of chemical we should inject, in units
injected_chemical_typeThe type of chemical we inject
+

Var Details

amount_injected + + + + +

+

The amount of chemical we should inject, in units

injected_chemical_type + + + + +

+

The type of chemical we inject

+ + + diff --git a/obj/item/clothing/mask/gas.html b/obj/item/clothing/mask/gas.html new file mode 100644 index 0000000000000..de6d233a94738 --- /dev/null +++ b/obj/item/clothing/mask/gas.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/clothing/mask/gas - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

gas + + + +

+ + + +

Vars

breathyDoes this particular mask have breath noises
hearing_rangeThis covers most of the screen
+

Var Details

breathy + + + + +

+

Does this particular mask have breath noises

hearing_range + + + + +

+

This covers most of the screen

+ + + diff --git a/obj/item/clothing/shoes.html b/obj/item/clothing/shoes.html new file mode 100644 index 0000000000000..623d354f09cf2 --- /dev/null +++ b/obj/item/clothing/shoes.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/clothing/shoes - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

shoes + + + +

+ + + +

Vars

can_be_tiedWhether these shoes have laces that can be tied/untied
tiedAre we currently tied? Can either be SHOES_TIED or SHOES_KNOTTED
+

Var Details

can_be_tied + + + + +

+

Whether these shoes have laces that can be tied/untied

tied + + + + +

+

Are we currently tied? Can either be SHOES_TIED or SHOES_KNOTTED

+ + + diff --git a/obj/item/clothing/suit.html b/obj/item/clothing/suit.html new file mode 100644 index 0000000000000..e051d8bf1ac95 --- /dev/null +++ b/obj/item/clothing/suit.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/clothing/suit - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

suit + + + +

+ + +

Vars

blood_overlay_typeBlood overlay icon_state
+

Var Details

blood_overlay_type + + + + +

+

Blood overlay icon_state

+ + + diff --git a/obj/item/clothing/suit/modular.html b/obj/item/clothing/suit/modular.html new file mode 100644 index 0000000000000..1dd8d4fb5d497 --- /dev/null +++ b/obj/item/clothing/suit/modular.html @@ -0,0 +1,48 @@ + + + + + + + /obj/item/clothing/suit/modular - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

modular + + + +

+ +

Modular armor

+

Modular armor consists of a a suit and helmet. +The suit is able to have a storage, module, and 3x armor attachments (chest, arms, and legs) +Helmets only have a single module slot.

+

Suits have a single action, which is to toggle the flashlight. +Helmets have diffrnet actions based on what module you have installed.

+ +

Vars

allowedWhat is allowed to be equipped in suit storage
allowed_uniform_typeUniform type that is allowed to be worn with this.
+

Var Details

allowed + + + + +

+

What is allowed to be equipped in suit storage

allowed_uniform_type + + + + +

+

Uniform type that is allowed to be worn with this.

+ + + diff --git a/obj/item/clothing/suit/storage/labcoat.html b/obj/item/clothing/suit/storage/labcoat.html new file mode 100644 index 0000000000000..00c109b282484 --- /dev/null +++ b/obj/item/clothing/suit/storage/labcoat.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/clothing/suit/storage/labcoat - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

labcoat + + + +

+ + + +

Vars

openIf the coat is buttoned or not

Procs

toggle_openActually toggles the coat open or closed
+

Var Details

open + + + + +

+

If the coat is buttoned or not

Proc Details

toggle_open +

+

Actually toggles the coat open or closed

+ + + diff --git a/obj/item/clothing/suit/storage/marine/boomvest.html b/obj/item/clothing/suit/storage/marine/boomvest.html new file mode 100644 index 0000000000000..8a0719eef64ab --- /dev/null +++ b/obj/item/clothing/suit/storage/marine/boomvest.html @@ -0,0 +1,64 @@ + + + + + + + /obj/item/clothing/suit/storage/marine/boomvest - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

boomvest + + + +

+ + + + + + +

Vars

bad_warcries_regexList of warcries that are not allowed.
bomb_messageWarcry to yell upon detonation
detonate_timeTime it takes to detonate

Procs

attack_selfOverwrites the parent function for activating a light. Instead it now detonates the bomb.
shield_droppedUpdates the last shield drop time when one is dropped
+

Var Details

bad_warcries_regex + + + + +

+

List of warcries that are not allowed.

bomb_message + + + + +

+

Warcry to yell upon detonation

detonate_time + + + + +

+

Time it takes to detonate

Proc Details

attack_self +

+

Overwrites the parent function for activating a light. Instead it now detonates the bomb.

shield_dropped +

+

Updates the last shield drop time when one is dropped

+ + + diff --git a/obj/item/clothing/under.html b/obj/item/clothing/under.html new file mode 100644 index 0000000000000..6ae9f88ab3029 --- /dev/null +++ b/obj/item/clothing/under.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/clothing/under - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

under + + + +

+ + + +

Vars

adjustment_variantsTypepath list of uniform variants.
attachments_by_slotAssoc list of available slots.
+

Var Details

adjustment_variants + + + + +

+

Typepath list of uniform variants.

attachments_by_slot + + + + +

+

Assoc list of available slots.

+ + + diff --git a/obj/item/defibrillator.html b/obj/item/defibrillator.html new file mode 100644 index 0000000000000..3f3781424bbb5 --- /dev/null +++ b/obj/item/defibrillator.html @@ -0,0 +1,113 @@ + + + + + + + /obj/item/defibrillator - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

defibrillator + + + +

+ + + + + + + + + + + + + +

Vars

charge_costHow much charge is used on a shock
dcellThe defibrillator's power cell
defib_cooldownThe cooldown for using the defib, applied to shocking and toggling
defibrillator_healingThe base healing number when someone is shocked. Uses DEFIBRILLATOR_HEALING_TIMES_SKILL to change based on user skill.
readyIf the defibrillator is ready to use (paddles out)
ready_neededWhether this defibrillator has to be turned on to use
sparksVar for quickly creating sparks on shock

Procs

charge_informationReturns the amount of charges left and how to recharge the defibrillator.
defib_readyProc for checking that the defib is ready to operate
defibrillateSplit proc that actually does the defibrillation. Separated to be used more easily by medical gloves
on_cell_deletionCalled by the deletion of the referenced powercell.
set_dcellWrapper to guarantee powercells are properly nulled and avoid hard deletes.
+

Var Details

charge_cost + + + + +

+

How much charge is used on a shock

dcell + + + + +

+

The defibrillator's power cell

defib_cooldown + + + + +

+

The cooldown for using the defib, applied to shocking and toggling

defibrillator_healing + + + + +

+

The base healing number when someone is shocked. Uses DEFIBRILLATOR_HEALING_TIMES_SKILL to change based on user skill.

ready + + + + +

+

If the defibrillator is ready to use (paddles out)

ready_needed + + + + +

+

Whether this defibrillator has to be turned on to use

sparks + + + + +

+

Var for quickly creating sparks on shock

Proc Details

charge_information +

+

Returns the amount of charges left and how to recharge the defibrillator.

defib_ready +

+

Proc for checking that the defib is ready to operate

defibrillate +

+

Split proc that actually does the defibrillation. Separated to be used more easily by medical gloves

on_cell_deletion +

+

Called by the deletion of the referenced powercell.

set_dcell +

+

Wrapper to guarantee powercells are properly nulled and avoid hard deletes.

+ + + diff --git a/obj/item/defibrillator/internal.html b/obj/item/defibrillator/internal.html new file mode 100644 index 0000000000000..173782f84e98f --- /dev/null +++ b/obj/item/defibrillator/internal.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/defibrillator/internal - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

internal + + + +

+ +

used for advanced medical (defibrillator) gloves: defibrillator_gloves.dm

+

Vars

parent_objParent item containing this defib
+

Var Details

parent_obj + + + + +

+

Parent item containing this defib

+ + + diff --git a/obj/item/deployable_vehicle.html b/obj/item/deployable_vehicle.html new file mode 100644 index 0000000000000..ce46e455d5fb1 --- /dev/null +++ b/obj/item/deployable_vehicle.html @@ -0,0 +1,64 @@ + + + + + + + /obj/item/deployable_vehicle - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

deployable_vehicle + + + +

+ + + + + + +

Vars

deploy_timeTime to deploy
deployable_itemThe vehicle this deploys into
stored_ammoAmmo remaining in stored turret
stored_turret_typeThe equipped turret
undeploy_timeTime to undeploy
+

Var Details

deploy_time + + + + +

+

Time to deploy

deployable_item + + + + +

+

The vehicle this deploys into

stored_ammo + + + + +

+

Ammo remaining in stored turret

stored_turret_type + + + + +

+

The equipped turret

undeploy_time + + + + +

+

Time to undeploy

+ + + diff --git a/obj/item/encryptionkey.html b/obj/item/encryptionkey.html new file mode 100644 index 0000000000000..ac74783b10fb2 --- /dev/null +++ b/obj/item/encryptionkey.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/encryptionkey - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

encryptionkey + + + +

+ + +

Vars

custom_squad_factionsbitflags for factions that make this key grant certain factions custom squad frequencies automatically
+

Var Details

custom_squad_factions + + + + +

+

bitflags for factions that make this key grant certain factions custom squad frequencies automatically

+ + + diff --git a/obj/item/explosive/grenade.html b/obj/item/explosive/grenade.html new file mode 100644 index 0000000000000..56adc9e97714d --- /dev/null +++ b/obj/item/explosive/grenade.html @@ -0,0 +1,85 @@ + + + + + + + /obj/item/explosive/grenade - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

grenade + + + +

+ + + + + + + + + +

Vars

dangerousDoes it make a danger overlay for humans? Can synths use it?
launchedif launched from a UGL/grenade launcher
launchforcebonus impact damage if launched from a UGL/grenade launcher
light_impact_rangeLight impact range when exploding
weak_impact_rangeWeak impact range when exploding

Procs

activateActivates the grenade
launched_det_timeAdjusts det time, used for grenade launchers
primeDetonation effects
+

Var Details

dangerous + + + + +

+

Does it make a danger overlay for humans? Can synths use it?

launched + + + + +

+

if launched from a UGL/grenade launcher

launchforce + + + + +

+

bonus impact damage if launched from a UGL/grenade launcher

light_impact_range + + + + +

+

Light impact range when exploding

weak_impact_range + + + + +

+

Weak impact range when exploding

Proc Details

activate +

+

Activates the grenade

launched_det_time +

+

Adjusts det time, used for grenade launchers

prime +

+

Detonation effects

+ + + diff --git a/obj/item/explosive/grenade/bullet.html b/obj/item/explosive/grenade/bullet.html new file mode 100644 index 0000000000000..481307fc28896 --- /dev/null +++ b/obj/item/explosive/grenade/bullet.html @@ -0,0 +1,78 @@ + + + + + + + /obj/item/explosive/grenade/bullet - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

bullet + + + +

+ +

bullet grenade: shoots bullets out from itself in a ring

+ + + + + + +

Vars

ammo_typeammo type to shoot out: can be ANY ammo type
fire_soundsound to play while shooting
projectile_counttotal amount of bullets to fire, split evenly between rotations
randomizedwhether we randomly emit or in equal intervals
rangerange of the bullets
rotationsamount of rotations that we will do with these bullets
speedspeed of the bullets
+

Var Details

ammo_type + + + + +

+

ammo type to shoot out: can be ANY ammo type

fire_sound + + + + +

+

sound to play while shooting

projectile_count + + + + +

+

total amount of bullets to fire, split evenly between rotations

randomized + + + + +

+

whether we randomly emit or in equal intervals

range + + + + +

+

range of the bullets

rotations + + + + +

+

amount of rotations that we will do with these bullets

speed + + + + +

+

speed of the bullets

+ + + diff --git a/obj/item/explosive/grenade/flare.html b/obj/item/explosive/grenade/flare.html new file mode 100644 index 0000000000000..f4a46df45d8d5 --- /dev/null +++ b/obj/item/explosive/grenade/flare.html @@ -0,0 +1,42 @@ + + + + + + + /obj/item/explosive/grenade/flare - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

flare + + + +

+ + + +

Procs

turn_offShuts the flare off
turn_onActivates the flare

Proc Details

turn_off +

+

Shuts the flare off

turn_on +

+

Activates the flare

+ + + diff --git a/obj/item/explosive/grenade/flashbang.html b/obj/item/explosive/grenade/flashbang.html new file mode 100644 index 0000000000000..bf0a89fdacdc1 --- /dev/null +++ b/obj/item/explosive/grenade/flashbang.html @@ -0,0 +1,99 @@ + + + + + + + /obj/item/explosive/grenade/flashbang - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

flashbang + + + +

+ + + + + + + + + + + +

Vars

bangletThis is a cluster weapon, or part of one
inner_rangeThe range where the maximum effects are applied
max_rangeThe the max of the flashbang
mp_onlyWhether this grenade requires skill to use
outer_rangeThe range where the moderate effects are applied

Procs

bangApplies the flashbang effects based off range and ear protection
base_effectThe effects applied to all mobs in range
inner_effectThe effects applied to mobs in the inner_range
max_range_effectThe effects applied to mobs outside of outer_range
outer_effectThe effects applied to mobs in the outer_range
+

Var Details

banglet + + + + +

+

This is a cluster weapon, or part of one

inner_range + + + + +

+

The range where the maximum effects are applied

max_range + + + + +

+

The the max of the flashbang

mp_only + + + + +

+

Whether this grenade requires skill to use

outer_range + + + + +

+

The range where the moderate effects are applied

Proc Details

bang +

+

Applies the flashbang effects based off range and ear protection

base_effect +

+

The effects applied to all mobs in range

inner_effect +

+

The effects applied to mobs in the inner_range

max_range_effect +

+

The effects applied to mobs outside of outer_range

outer_effect +

+

The effects applied to mobs in the outer_range

+ + + diff --git a/obj/item/explosive/grenade/mirage.html b/obj/item/explosive/grenade/mirage.html new file mode 100644 index 0000000000000..f5cf09cbcef98 --- /dev/null +++ b/obj/item/explosive/grenade/mirage.html @@ -0,0 +1,50 @@ + + + + + + + /obj/item/explosive/grenade/mirage - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

mirage + + + +

+ + + + +

Vars

current_userthe parent to be copied
illusion_lifespanHow long the illusory fakes last
mirage_quantityNumber of illusions we make
+

Var Details

current_user + + + + +

+

the parent to be copied

illusion_lifespan + + + + +

+

How long the illusory fakes last

mirage_quantity + + + + +

+

Number of illusions we make

+ + + diff --git a/obj/item/explosive/grenade/rad.html b/obj/item/explosive/grenade/rad.html new file mode 100644 index 0000000000000..7a993565705b9 --- /dev/null +++ b/obj/item/explosive/grenade/rad.html @@ -0,0 +1,50 @@ + + + + + + + /obj/item/explosive/grenade/rad - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

rad + + + +

+ + + + +

Vars

inner_rangeThe range for the grenade's full effect
outer_rangeThe range range for the grenade's weak effect
rad_strengthThe potency of the grenade
+

Var Details

inner_range + + + + +

+

The range for the grenade's full effect

outer_range + + + + +

+

The range range for the grenade's weak effect

rad_strength + + + + +

+

The potency of the grenade

+ + + diff --git a/obj/item/explosive/grenade/smokebomb.html b/obj/item/explosive/grenade/smokebomb.html new file mode 100644 index 0000000000000..40eb2f9a3656e --- /dev/null +++ b/obj/item/explosive/grenade/smokebomb.html @@ -0,0 +1,50 @@ + + + + + + + /obj/item/explosive/grenade/smokebomb - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

smokebomb + + + +

+ + + + +

Vars

smoke_durationThe duration of the smoke in 2 second ticks
smokeradiusradius this smoke grenade will encompass
smoketypesmoke type created when the grenade is primed
+

Var Details

smoke_duration + + + + +

+

The duration of the smoke in 2 second ticks

smokeradius + + + + +

+

radius this smoke grenade will encompass

smoketype + + + + +

+

smoke type created when the grenade is primed

+ + + diff --git a/obj/item/explosive/grenade/sticky.html b/obj/item/explosive/grenade/sticky.html new file mode 100644 index 0000000000000..16884cabc262c --- /dev/null +++ b/obj/item/explosive/grenade/sticky.html @@ -0,0 +1,64 @@ + + + + + + + /obj/item/explosive/grenade/sticky - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

sticky + + + +

+ + + + + + +

Vars

saved_overlayCurrent image overlay applied to stuck_to, used to remove the overlay after detonation.
self_stickyif this specific grenade should be allowed to self sticky
stuck_toCurrent atom this grenade is attached to, used to remove the overlay.

Procs

clean_refsCleans references to prevent hard deletes.
stuck_tohandles sticky overlay and attaching the grenade itself to the target
+

Var Details

saved_overlay + + + + +

+

Current image overlay applied to stuck_to, used to remove the overlay after detonation.

self_sticky + + + + +

+

if this specific grenade should be allowed to self sticky

stuck_to + + + + +

+

Current atom this grenade is attached to, used to remove the overlay.

Proc Details

clean_refs +

+

Cleans references to prevent hard deletes.

stuck_to +

+

handles sticky overlay and attaching the grenade itself to the target

+ + + diff --git a/obj/item/explosive/grenade/sticky/cloaker.html b/obj/item/explosive/grenade/sticky/cloaker.html new file mode 100644 index 0000000000000..ed4fdfb07b538 --- /dev/null +++ b/obj/item/explosive/grenade/sticky/cloaker.html @@ -0,0 +1,57 @@ + + + + + + + /obj/item/explosive/grenade/sticky/cloaker - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

cloaker + + + +

+ + + + + +

Vars

smoke_durationThe duration of the smoke
smokeradiusradius this smoke grenade will encompass
smoketypesmoke type created when the grenade is primed

Procs

make_smokecauses fire tiles underneath target when stuck_to
+

Var Details

smoke_duration + + + + +

+

The duration of the smoke

smokeradius + + + + +

+

radius this smoke grenade will encompass

smoketype + + + + +

+

smoke type created when the grenade is primed

Proc Details

make_smoke +

+

causes fire tiles underneath target when stuck_to

+ + + diff --git a/obj/item/explosive/grenade/sticky/trailblazer.html b/obj/item/explosive/grenade/sticky/trailblazer.html new file mode 100644 index 0000000000000..498220866507e --- /dev/null +++ b/obj/item/explosive/grenade/sticky/trailblazer.html @@ -0,0 +1,35 @@ + + + + + + + /obj/item/explosive/grenade/sticky/trailblazer - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

trailblazer + + + +

+ + +

Procs

make_firecauses fire tiles underneath target when stuck_to

Proc Details

make_fire +

+

causes fire tiles underneath target when stuck_to

+ + + diff --git a/obj/item/explosive/grenade/sticky/xeno.html b/obj/item/explosive/grenade/sticky/xeno.html new file mode 100644 index 0000000000000..71ba36739fe09 --- /dev/null +++ b/obj/item/explosive/grenade/sticky/xeno.html @@ -0,0 +1,35 @@ + + + + + + + /obj/item/explosive/grenade/sticky/xeno - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

xeno + + + +

+ + +

Procs

drop_acidcauses acid tiles underneath target when stuck_to

Proc Details

drop_acid +

+

causes acid tiles underneath target when stuck_to

+ + + diff --git a/obj/item/explosive/mine.html b/obj/item/explosive/mine.html new file mode 100644 index 0000000000000..4f1de0784af5b --- /dev/null +++ b/obj/item/explosive/mine.html @@ -0,0 +1,136 @@ + + + + + + + /obj/item/explosive/mine - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

mine + + + +

+ +

Mines

+

Mines have an invisible "tripwire" atom that explodes when crossed +Stepping directly on the mine will also blow it up

+ + + + + + + + + + + + + + +

Vars

armedState of the mine. Will the mine explode or not
iff_signalIFF signal - used to determine friendly units
target_modeTrigger flags for this mine
triggeredIf the mine has been triggered
tripwireTripwire holds reference to the tripwire obj that is used to trigger an explosion

Procs

attack_alienAlien attacks trigger the explosive to instantly detonate
attack_selfattack_self is used to arm the mine
attackbySupports diarming a mine
deploy_minethis proc is used to deploy a mine
emp_actAny emp effects mines will trigger their explosion
ex_actOn explosion mines trigger their own explosion, assuming there were not deleted straight away (larger explosions or probability)
fire_actFlamer fire will cause mines to trigger their explosion
trigger_explosionTrigger an actual explosion and delete the mine.
trip_mineso dragged corpses don't trigger mines.
update_icon_stateUpdate the icon, adding "_armed" if appropriate to the icon_state.
+

Var Details

armed + + + + +

+

State of the mine. Will the mine explode or not

iff_signal + + + + +

+

IFF signal - used to determine friendly units

target_mode + + + + +

+

Trigger flags for this mine

triggered + + + + +

+

If the mine has been triggered

tripwire + + + + +

+

Tripwire holds reference to the tripwire obj that is used to trigger an explosion

Proc Details

attack_alien +

+

Alien attacks trigger the explosive to instantly detonate

attack_self +

+

attack_self is used to arm the mine

attackby +

+

Supports diarming a mine

deploy_mine +

+

this proc is used to deploy a mine

emp_act +

+

Any emp effects mines will trigger their explosion

ex_act +

+

On explosion mines trigger their own explosion, assuming there were not deleted straight away (larger explosions or probability)

fire_act +

+

Flamer fire will cause mines to trigger their explosion

trigger_explosion +

+

Trigger an actual explosion and delete the mine.

trip_mine +

+

so dragged corpses don't trigger mines.

update_icon_state +

+

Update the icon, adding "_armed" if appropriate to the icon_state.

+ + + diff --git a/obj/item/explosive/plastique.html b/obj/item/explosive/plastique.html new file mode 100644 index 0000000000000..e79cae2dfe762 --- /dev/null +++ b/obj/item/explosive/plastique.html @@ -0,0 +1,99 @@ + + + + + + + /obj/item/explosive/plastique - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

plastique + + + +

+ + + + + + + + + + + +

Vars

alarm_soundedWhether we're towards the end of the det timer, for sprite updates
armedwhether the plastic explosive is armed or not
detonation_pendingthe plastic explosive has not detonated yet
last_userCurrent/last user of the c4
plant_targetwhich atom the plastique explosive is planted on
smokeradiusradius this smoke will encompass
smoketypesmoke type created when the c4 detonates
timerthe time it takes for the c4 to detonate

Procs

detonateHandles the actual explosion effects
warning_soundTriggers a warning beep prior to the actual detonation, while also setting the actual detonation timer
+

Var Details

alarm_sounded + + + + +

+

Whether we're towards the end of the det timer, for sprite updates

armed + + + + +

+

whether the plastic explosive is armed or not

detonation_pending + + + + +

+

the plastic explosive has not detonated yet

last_user + + + + +

+

Current/last user of the c4

plant_target + + + + +

+

which atom the plastique explosive is planted on

smokeradius + + + + +

+

radius this smoke will encompass

smoketype + + + + +

+

smoke type created when the c4 detonates

timer + + + + +

+

the time it takes for the c4 to detonate

Proc Details

detonate +

+

Handles the actual explosion effects

warning_sound +

+

Triggers a warning beep prior to the actual detonation, while also setting the actual detonation timer

+ + + diff --git a/obj/item/facepaint.html b/obj/item/facepaint.html new file mode 100644 index 0000000000000..1bb2c65d7e7df --- /dev/null +++ b/obj/item/facepaint.html @@ -0,0 +1,35 @@ + + + + + + + /obj/item/facepaint - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

facepaint + + + +

+ + +

Procs

paint_faceHandles applying the makeup

Proc Details

paint_face +

+

Handles applying the makeup

+ + + diff --git a/obj/item/factory_part.html b/obj/item/factory_part.html new file mode 100644 index 0000000000000..75aeebafc72f5 --- /dev/null +++ b/obj/item/factory_part.html @@ -0,0 +1,72 @@ + + + + + + + /obj/item/factory_part - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

factory_part + + + +

+ +

Base item used in factories, only changes icon and stage for the item then creates a new item when its done +in order to set a recipe set recipe = GLOB.myrecipe in Initialize

+ + + + + +

Vars

completion_stageHow many cycles we go through until we become the result
next_machineWhat type of machine the obj goes through first/next
recipereference to a glob list containing the recipe
resultWhat result we become when we've run through all our machines
stageHow many cycles of processing we've gone through

Procs

advance_stageonce the part is processed this proc updates iconstate, result, completion etc
+

Var Details

completion_stage + + + + +

+

How many cycles we go through until we become the result

next_machine + + + + +

+

What type of machine the obj goes through first/next

recipe + + + + +

+

reference to a glob list containing the recipe

result + + + + +

+

What result we become when we've run through all our machines

stage + + + + +

+

How many cycles of processing we've gone through

Proc Details

advance_stage +

+

once the part is processed this proc updates iconstate, result, completion etc

+ + + diff --git a/obj/item/factory_refill.html b/obj/item/factory_refill.html new file mode 100644 index 0000000000000..01e3add1a0407 --- /dev/null +++ b/obj/item/factory_refill.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/factory_refill - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

factory_refill + + + +

+ + + +

Vars

refill_amountBy how much we wan to refill the target machine
refill_typeTypepath for the output machine we want to be ejecting
+

Var Details

refill_amount + + + + +

+

By how much we wan to refill the target machine

refill_type + + + + +

+

Typepath for the output machine we want to be ejecting

+ + + diff --git a/obj/item/flashlight.html b/obj/item/flashlight.html new file mode 100644 index 0000000000000..97346809395dc --- /dev/null +++ b/obj/item/flashlight.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/flashlight - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

flashlight + + + +

+ + + +

Vars

nightfall_immuneIf this flashlight affected by nightfall
raillight_compatibleCan this be turned into a rail light ?
+

Var Details

nightfall_immune + + + + +

+

If this flashlight affected by nightfall

raillight_compatible + + + + +

+

Can this be turned into a rail light ?

+ + + diff --git a/obj/item/frame/table.html b/obj/item/frame/table.html new file mode 100644 index 0000000000000..d97f7acf815e7 --- /dev/null +++ b/obj/item/frame/table.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/frame/table - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

table + + + +

+ + +

Vars

deconstruct_amountHow much of deconstruct_type will be spawned on wrench?
+

Var Details

deconstruct_amount + + + + +

+

How much of deconstruct_type will be spawned on wrench?

+ + + diff --git a/obj/item/fuel_cell.html b/obj/item/fuel_cell.html new file mode 100644 index 0000000000000..ddb05f6913446 --- /dev/null +++ b/obj/item/fuel_cell.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/fuel_cell - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

fuel_cell + + + +

+ + + +

Vars

fuel_amountThe amount of fuel currently in the cell
max_fuel_amountThe maximum amount of fuel the cell holds
+

Var Details

fuel_amount + + + + +

+

The amount of fuel currently in the cell

max_fuel_amount + + + + +

+

The maximum amount of fuel the cell holds

+ + + diff --git a/obj/item/fulton_extraction_pack.html b/obj/item/fulton_extraction_pack.html new file mode 100644 index 0000000000000..3567beca9df41 --- /dev/null +++ b/obj/item/fulton_extraction_pack.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/fulton_extraction_pack - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

fulton_extraction_pack + + + +

+ + + +

Vars

baloonReference to the balloon vis obj effect
usesHow many times you can use the fulton before it goes poof
+

Var Details

baloon + + + + +

+

Reference to the balloon vis obj effect

uses + + + + +

+

How many times you can use the fulton before it goes poof

+ + + diff --git a/obj/item/healthanalyzer.html b/obj/item/healthanalyzer.html new file mode 100644 index 0000000000000..931e1ad731631 --- /dev/null +++ b/obj/item/healthanalyzer.html @@ -0,0 +1,71 @@ + + + + + + + /obj/item/healthanalyzer - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

healthanalyzer + + + +

+ + + + + + + +

Vars

current_userCurrent user of the scanner
patientCurrent mob being tracked by the scanner
skill_thresholdSkill required to bypass the fumble time.
track_distanceDistance the current_user can be away from the patient and still get health data.
upper_skill_thresholdSkill required to have the scanner auto refresh

Procs

analyze_vitalsHealth scans a target. M is the thing being scanned, user is the person doing the scanning, show_patient will show the UI to the scanee when TRUE.
+

Var Details

current_user + + + + +

+

Current user of the scanner

patient + + + + +

+

Current mob being tracked by the scanner

skill_threshold + + + + +

+

Skill required to bypass the fumble time.

track_distance + + + + +

+

Distance the current_user can be away from the patient and still get health data.

upper_skill_threshold + + + + +

+

Skill required to have the scanner auto refresh

Proc Details

analyze_vitals +

+

Health scans a target. M is the thing being scanned, user is the person doing the scanning, show_patient will show the UI to the scanee when TRUE.

+ + + diff --git a/obj/item/healthanalyzer/gloves.html b/obj/item/healthanalyzer/gloves.html new file mode 100644 index 0000000000000..5d3bcf926d76e --- /dev/null +++ b/obj/item/healthanalyzer/gloves.html @@ -0,0 +1,35 @@ + + + + + + + /obj/item/healthanalyzer/gloves - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

gloves + + + +

+ + +

Procs

on_unarmed_attack_alternateUsed for right click and showing the patient their scan

Proc Details

on_unarmed_attack_alternate +

+

Used for right click and showing the patient their scan

+ + + diff --git a/obj/item/hud_tablet.html b/obj/item/hud_tablet.html new file mode 100644 index 0000000000000..a6246a72da51e --- /dev/null +++ b/obj/item/hud_tablet.html @@ -0,0 +1,50 @@ + + + + + + + /obj/item/hud_tablet - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

hud_tablet + + + +

+ + + + +

Vars

cam_plane_mastersAll the plane masters that need to be applied.
last_turfUsed to keep a cache of the last location visible on the camera
max_view_distHow far can these tablets see around the cameras
+

Var Details

cam_plane_masters + + + + +

+

All the plane masters that need to be applied.

last_turf + + + + +

+

Used to keep a cache of the last location visible on the camera

max_view_dist + + + + +

+

How far can these tablets see around the cameras

+ + + diff --git a/obj/item/implant.html b/obj/item/implant.html new file mode 100644 index 0000000000000..64b4245fcc430 --- /dev/null +++ b/obj/item/implant.html @@ -0,0 +1,157 @@ + + + + + + + /obj/item/implant - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

implant + + + +

+ + + + + + + + + + + + + + + + + + + +

Vars

action_typeType of action to give
activation_actionActivation_action reference
allow_reagentswhether this implant allows reagents to be inserted into it
allowed_limbsWhitelist for llimbs that this implavnt is allowed to be inserted into, all limbs by default
cooldown_timeCooldown between usages of the implant
implant_colorColor of the implant, used for selecting the implant cases icon_state
implant_flagsImplant secific flags
implant_ownerOwner mob this implant is inserted to
implantedWhether this implant has been implanted inside a human yet
malfunctionWhat level of malfunction/breakage this implant is at, used for functionality checks
partThe owner limb this implant is inside

Procs

activateHandles the actual activation of the implant/it's effects. Returns TRUE on succesful activation and FALSE on failure for parentcalls
get_dataReturns info about a implant concerning its usage and such
implantWhat does the implant do upon injection? +returns TRUE if the implant succeeds
meltdownDestroys and makes the implant unusable
on_hearCalled when the implant hears a message, used for activation phrases and the like
try_implantAttempts to implant a mob with this implant, TRUE on success, FALSE on failure
unimplantCleans up on being removed from a mob
+

Var Details

action_type + + + + +

+

Type of action to give

activation_action + + + + +

+

Activation_action reference

allow_reagents + + + + +

+

whether this implant allows reagents to be inserted into it

allowed_limbs + + + + +

+

Whitelist for llimbs that this implavnt is allowed to be inserted into, all limbs by default

cooldown_time + + + + +

+

Cooldown between usages of the implant

implant_color + + + + +

+

Color of the implant, used for selecting the implant cases icon_state

implant_flags + + + + +

+

Implant secific flags

implant_owner + + + + +

+

Owner mob this implant is inserted to

implanted + + + + +

+

Whether this implant has been implanted inside a human yet

malfunction + + + + +

+

What level of malfunction/breakage this implant is at, used for functionality checks

part + + + + +

+

The owner limb this implant is inside

Proc Details

activate +

+

Handles the actual activation of the implant/it's effects. Returns TRUE on succesful activation and FALSE on failure for parentcalls

get_data +

+

Returns info about a implant concerning its usage and such

implant +

+

What does the implant do upon injection? +returns TRUE if the implant succeeds

meltdown +

+

Destroys and makes the implant unusable

on_hear +

+

Called when the implant hears a message, used for activation phrases and the like

try_implant +

+

Attempts to implant a mob with this implant, TRUE on success, FALSE on failure

unimplant +

+

Cleans up on being removed from a mob

+ + + diff --git a/obj/item/implant/chem/blood.html b/obj/item/implant/chem/blood.html new file mode 100644 index 0000000000000..4f88febf021cf --- /dev/null +++ b/obj/item/implant/chem/blood.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/implant/chem/blood - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

blood + + + +

+ + +

Vars

blood_amountAmount of blood added
+

Var Details

blood_amount + + + + +

+

Amount of blood added

+ + + diff --git a/obj/item/implant/cloak.html b/obj/item/implant/cloak.html new file mode 100644 index 0000000000000..cf6be5cd9b86a --- /dev/null +++ b/obj/item/implant/cloak.html @@ -0,0 +1,42 @@ + + + + + + + /obj/item/implant/cloak - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

cloak + + + +

+ + + +

Procs

deactivate_cloakDeactivates the implant when someone turns it off or its forced off
stealth_userstealths the implant user

Proc Details

deactivate_cloak +

+

Deactivates the implant when someone turns it off or its forced off

stealth_user +

+

stealths the implant user

+ + + diff --git a/obj/item/implant/deployitem.html b/obj/item/implant/deployitem.html new file mode 100644 index 0000000000000..5ac2ae87e625c --- /dev/null +++ b/obj/item/implant/deployitem.html @@ -0,0 +1,50 @@ + + + + + + + /obj/item/implant/deployitem - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

deployitem + + + +

+ +

Deployitem implant, holds a item that can then be placed inhand to do whatever with

+ + +

Vars

helditemHeld item we want to be put in hand when the implant is activated

Procs

fetch_itemgrabs the held item when it changes equip or is dropped
put_in_slotsTakes the held item and puts it into it's predestined slot
+

Var Details

helditem + + + + +

+

Held item we want to be put in hand when the implant is activated

Proc Details

fetch_item +

+

grabs the held item when it changes equip or is dropped

put_in_slots +

+

Takes the held item and puts it into it's predestined slot

+ + + diff --git a/obj/item/implant/jump_mod.html b/obj/item/implant/jump_mod.html new file mode 100644 index 0000000000000..e2cf580eb0bf6 --- /dev/null +++ b/obj/item/implant/jump_mod.html @@ -0,0 +1,49 @@ + + + + + + + /obj/item/implant/jump_mod - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

jump_mod + + + +

+ + + + +

Procs

end_jumpspeedboost mid jump
handle_jumpspeedboost mid jump
modify_jumpModifiers the owners jump component on implant and whenever it is updated

Proc Details

end_jump +

+

speedboost mid jump

handle_jump +

+

speedboost mid jump

modify_jump +

+

Modifiers the owners jump component on implant and whenever it is updated

+ + + diff --git a/obj/item/implant/neurostim.html b/obj/item/implant/neurostim.html new file mode 100644 index 0000000000000..ab91260abde38 --- /dev/null +++ b/obj/item/implant/neurostim.html @@ -0,0 +1,42 @@ + + + + + + + /obj/item/implant/neurostim - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

neurostim + + + +

+ + + +

Procs

shock_collarShocks the owner for whatever reason
shock_sparksPlays a shocky animation

Proc Details

shock_collar +

+

Shocks the owner for whatever reason

shock_sparks +

+

Plays a shocky animation

+ + + diff --git a/obj/item/implant/sandevistan.html b/obj/item/implant/sandevistan.html new file mode 100644 index 0000000000000..282ae25f2ec3a --- /dev/null +++ b/obj/item/implant/sandevistan.html @@ -0,0 +1,99 @@ + + + + + + + /obj/item/implant/sandevistan - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

sandevistan + + + +

+ + + + + + + + + + + +

Vars

accuracy_modGun accuracy modifier
action_modifiermodifier to multiplier on move delay and do_after
exertedIf you're pushing it to the edge
miss_chance_modModifier for melee/throw miss chance
scatter_modGun scatter modifier
speed_modifierMovement speed modifier
time_onHow long its been on for. Slowly goes down over time

Procs

apply_do_after_modModifies do_after delays
apply_miss_chance_modModifies miss chance mod for melee/throw hits
toggleTurns it off or on
+

Var Details

accuracy_mod + + + + +

+

Gun accuracy modifier

action_modifier + + + + +

+

modifier to multiplier on move delay and do_after

exerted + + + + +

+

If you're pushing it to the edge

miss_chance_mod + + + + +

+

Modifier for melee/throw miss chance

scatter_mod + + + + +

+

Gun scatter modifier

speed_modifier + + + + +

+

Movement speed modifier

time_on + + + + +

+

How long its been on for. Slowly goes down over time

Proc Details

apply_do_after_mod +

+

Modifies do_after delays

apply_miss_chance_mod +

+

Modifies miss chance mod for melee/throw hits

toggle +

+

Turns it off or on

+ + + diff --git a/obj/item/implanter.html b/obj/item/implanter.html new file mode 100644 index 0000000000000..a7c031ac839d0 --- /dev/null +++ b/obj/item/implanter.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/implanter - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

implanter + + + +

+ + +

Vars

impThe implant itself
+

Var Details

imp + + + + +

+

The implant itself

+ + + diff --git a/obj/item/inflatable.html b/obj/item/inflatable.html new file mode 100644 index 0000000000000..52a7268dcca48 --- /dev/null +++ b/obj/item/inflatable.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/inflatable - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

inflatable + + + +

+ + +

Vars

inflatable_typeThe type of structure we make upon inflation
+

Var Details

inflatable_type + + + + +

+

The type of structure we make upon inflation

+ + + diff --git a/obj/item/instrument.html b/obj/item/instrument.html new file mode 100644 index 0000000000000..0344fb2b30680 --- /dev/null +++ b/obj/item/instrument.html @@ -0,0 +1,50 @@ + + + + + + + /obj/item/instrument - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

instrument + + + +

+ + + + +

Vars

allowed_instrument_idsOur allowed list of instrument ids. This is nulled on initialize.
instrument_rangeHow far away our song datum can be heard.
songOur song datum.
+

Var Details

allowed_instrument_ids + + + + +

+

Our allowed list of instrument ids. This is nulled on initialize.

instrument_range + + + + +

+

How far away our song datum can be heard.

song + + + + +

+

Our song datum.

+ + + diff --git a/obj/item/jetpack_marine.html b/obj/item/jetpack_marine.html new file mode 100644 index 0000000000000..ebb1311056c1f --- /dev/null +++ b/obj/item/jetpack_marine.html @@ -0,0 +1,106 @@ + + + + + + + /obj/item/jetpack_marine - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

jetpack_marine + + + +

+ + + + + + + + + + + + +

Vars

cooldown_timeTime between uses
fuel_indicatorthreshold to change the jetpack fuel indicator
fuel_leftcurrent amount of fuel in the jetpack
fuel_maxmaximum amount of fuel in the jetpack
litTrue when jetpack has flame overlay
speedHow quick you will fly (warning, it rounds up to the nearest integer)
toggle_actionControlling action

Procs

calculate_rangeCalculate the max range of the jetpack, changed by some item slowdown
change_fuel_indicatorManage the fuel indicator overlay
reset_flameremove the flame overlay
use_jetpackMake the user fly toward the target atom
+

Var Details

cooldown_time + + + + +

+

Time between uses

fuel_indicator + + + + +

+

threshold to change the jetpack fuel indicator

fuel_left + + + + +

+

current amount of fuel in the jetpack

fuel_max + + + + +

+

maximum amount of fuel in the jetpack

lit + + + + +

+

True when jetpack has flame overlay

speed + + + + +

+

How quick you will fly (warning, it rounds up to the nearest integer)

toggle_action + + + + +

+

Controlling action

Proc Details

calculate_range +

+

Calculate the max range of the jetpack, changed by some item slowdown

change_fuel_indicator +

+

Manage the fuel indicator overlay

reset_flame +

+

remove the flame overlay

use_jetpack +

+

Make the user fly toward the target atom

+ + + diff --git a/obj/item/jetpack_marine/heavy.html b/obj/item/jetpack_marine/heavy.html new file mode 100644 index 0000000000000..8541defc071c1 --- /dev/null +++ b/obj/item/jetpack_marine/heavy.html @@ -0,0 +1,35 @@ + + + + + + + /obj/item/jetpack_marine/heavy - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

heavy + + + +

+ + +

Procs

mob_hitHandles the user colliding with a mob

Proc Details

mob_hit +

+

Handles the user colliding with a mob

+ + + diff --git a/obj/item/light_bulb.html b/obj/item/light_bulb.html new file mode 100644 index 0000000000000..be2e7e2da9d83 --- /dev/null +++ b/obj/item/light_bulb.html @@ -0,0 +1,57 @@ + + + + + + + /obj/item/light_bulb - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

light_bulb + + + +

+ + + + + +

Vars

brightnessLight level this gives off when on
riggedIf its rigged to explode
statusCondition of the bulb
switchcountNumber of times toggled
+

Var Details

brightness + + + + +

+

Light level this gives off when on

rigged + + + + +

+

If its rigged to explode

status + + + + +

+

Condition of the bulb

switchcount + + + + +

+

Number of times toggled

+ + + diff --git a/obj/item/loot_box.html b/obj/item/loot_box.html new file mode 100644 index 0000000000000..d2690845ff677 --- /dev/null +++ b/obj/item/loot_box.html @@ -0,0 +1,71 @@ + + + + + + + /obj/item/loot_box - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

loot_box + + + +

+ + + + + + + +

Vars

common_listlist of common drops
legendary_listlist of the lowest probability drops
rare_listlist of rare propability drops
rollsThe number of rolls on the table this box has
uncommon_listlist of uncommon drops
weight_listthe odds of each loot category being picked
+

Var Details

common_list + + + + +

+

list of common drops

legendary_list + + + + +

+

list of the lowest probability drops

rare_list + + + + +

+

list of rare propability drops

rolls + + + + +

+

The number of rolls on the table this box has

uncommon_list + + + + +

+

list of uncommon drops

weight_list + + + + +

+

the odds of each loot category being picked

+ + + diff --git a/obj/item/mecha_ammo.html b/obj/item/mecha_ammo.html new file mode 100644 index 0000000000000..691ce4ce0a859 --- /dev/null +++ b/obj/item/mecha_ammo.html @@ -0,0 +1,64 @@ + + + + + + + /obj/item/mecha_ammo - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

mecha_ammo + + + +

+ + + + + + +

Vars

ammo_typeammo type define that tells the user the ammo type, and lets the ammo decide what weapon types it can refill
direct_loadFor weapons where we re-load the weapon itself rather than adding to the ammo storage.
load_audiosound to play when we reload
qdel_on_emptywhether to qdel this mecha_ammo when it becomes empty
roundshow many rounds of ammo this box has left
+

Var Details

ammo_type + + + + +

+

ammo type define that tells the user the ammo type, and lets the ammo decide what weapon types it can refill

direct_load + + + + +

+

For weapons where we re-load the weapon itself rather than adding to the ammo storage.

load_audio + + + + +

+

sound to play when we reload

qdel_on_empty + + + + +

+

whether to qdel this mecha_ammo when it becomes empty

rounds + + + + +

+

how many rounds of ammo this box has left

+ + + diff --git a/obj/item/mecha_parts/mecha_equipment.html b/obj/item/mecha_parts/mecha_equipment.html new file mode 100644 index 0000000000000..bf8ebbc695efe --- /dev/null +++ b/obj/item/mecha_parts/mecha_equipment.html @@ -0,0 +1,198 @@ + + + + + + + /obj/item/mecha_parts/mecha_equipment - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

mecha_equipment + + + +

+ +

Mecha Equipment +All mech equippables are currently childs of this

+ + + + + + + + + + + + + + + + + + + +

Vars

activatedused for equipment that can be turned on/off, boolean
chassisReference to mecha that this equipment is currently attached to
destroy_soundSound file: Sound to play when this equipment is destroyed while still attached to the mech
detachableboolean: FALSE if this equipment can not be removed/salvaged
energy_drainChassis power cell quantity used on activation
equip_cooldownCooldown in ticks required between activations of the equipment
equipment_slotDetermines what "slot" this attachment will try to attach to on a mech
harmfulBoolean: whether a pacifist can use this equipment
mech_flagsBitflag. Used by exosuit fabricator to assign sub-categories based on which exosuits can equip this.
rangeBitflag. Determines the range of the equipment.

Procs

action_checksChecks whether this mecha equipment can be activated +Returns a bool +Arguments:
attempt_rearmTries to rearm the module
detachcalled to detach this equipment +Args:
do_after_checksdo after checks for the mecha equipment do afters
do_after_cooldownCooldown proc variant for using do_afters between activations instead of timers +Example of usage is mech drills, rcds +arguments:
do_after_mechaDo after wrapper for mecha equipment
get_snowflake_data
log_messageLogging for equipment installed in a mecha
needs_rearmChecks if the module actually need rearming
rearmRearms the module
+

Var Details

activated + + + + +

+

used for equipment that can be turned on/off, boolean

chassis + + + + +

+

Reference to mecha that this equipment is currently attached to

destroy_sound + + + + +

+

Sound file: Sound to play when this equipment is destroyed while still attached to the mech

detachable + + + + +

+

boolean: FALSE if this equipment can not be removed/salvaged

energy_drain + + + + +

+

Chassis power cell quantity used on activation

equip_cooldown + + + + +

+

Cooldown in ticks required between activations of the equipment

equipment_slot + + + + +

+

Determines what "slot" this attachment will try to attach to on a mech

harmful + + + + +

+

Boolean: whether a pacifist can use this equipment

mech_flags + + + + +

+

Bitflag. Used by exosuit fabricator to assign sub-categories based on which exosuits can equip this.

range + + + + +

+

Bitflag. Determines the range of the equipment.

Proc Details

action_checks +

+

Checks whether this mecha equipment can be activated +Returns a bool +Arguments:

+

attempt_rearm +

+

Tries to rearm the module

detach +

+

called to detach this equipment +Args:

+

do_after_checks +

+

do after checks for the mecha equipment do afters

do_after_cooldown +

+

Cooldown proc variant for using do_afters between activations instead of timers +Example of usage is mech drills, rcds +arguments:

+

do_after_mecha +

+

Do after wrapper for mecha equipment

get_snowflake_data +

+ get_snowflake_data +

handles the returning of snowflake data required by the UI of the mecha +not the prettiest of procs honeslty +returns:

+

log_message +

+

Logging for equipment installed in a mecha

needs_rearm +

+

Checks if the module actually need rearming

rearm +

+

Rearms the module

+ + + diff --git a/obj/item/mecha_parts/mecha_equipment/ability.html b/obj/item/mecha_parts/mecha_equipment/ability.html new file mode 100644 index 0000000000000..d27016150d8b9 --- /dev/null +++ b/obj/item/mecha_parts/mecha_equipment/ability.html @@ -0,0 +1,50 @@ + + + + + + + /obj/item/mecha_parts/mecha_equipment/ability - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

ability + + + +

+ + + + +

Vars

ability_to_granttypepath of ability we want to grant
flag_controllerif given, a single flag of who we want this ability to be granted to
overlayreference to image that is used as an overlay
+

Var Details

ability_to_grant + + + + +

+

typepath of ability we want to grant

flag_controller + + + + +

+

if given, a single flag of who we want this ability to be granted to

overlay + + + + +

+

reference to image that is used as an overlay

+ + + diff --git a/obj/item/mecha_parts/mecha_equipment/ability/dash.html b/obj/item/mecha_parts/mecha_equipment/ability/dash.html new file mode 100644 index 0000000000000..6e35e057a39fc --- /dev/null +++ b/obj/item/mecha_parts/mecha_equipment/ability/dash.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/mecha_parts/mecha_equipment/ability/dash - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

dash + + + +

+ + +

Vars

sound_loopsound to loop when the dash is activated
+

Var Details

sound_loop + + + + +

+

sound to loop when the dash is activated

+ + + diff --git a/obj/item/mecha_parts/mecha_equipment/ability/smoke.html b/obj/item/mecha_parts/mecha_equipment/ability/smoke.html new file mode 100644 index 0000000000000..b45dab163b695 --- /dev/null +++ b/obj/item/mecha_parts/mecha_equipment/ability/smoke.html @@ -0,0 +1,50 @@ + + + + + + + /obj/item/mecha_parts/mecha_equipment/ability/smoke - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

smoke + + + +

+ + + + +

Vars

durationduration of smoke cloud that spawns
sizesize of smoke cloud that spawns
smoke_typesmoke type to spawn when this ability is activated
+

Var Details

duration + + + + +

+

duration of smoke cloud that spawns

size + + + + +

+

size of smoke cloud that spawns

smoke_type + + + + +

+

smoke type to spawn when this ability is activated

+ + + diff --git a/obj/item/mecha_parts/mecha_equipment/armor.html b/obj/item/mecha_parts/mecha_equipment/armor.html new file mode 100644 index 0000000000000..c7dea7c080a63 --- /dev/null +++ b/obj/item/mecha_parts/mecha_equipment/armor.html @@ -0,0 +1,50 @@ + + + + + + + /obj/item/mecha_parts/mecha_equipment/armor - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

armor + + + +

+ +

ARMOR BOOSTER MODULES

+ + +

Vars

armor_modhow much the armor of the mech is modified by
iconstate_nameicon in armor.dmi that shows in the UI
protect_nameshort protection name to display in the UI
+

Var Details

armor_mod + + + + +

+

how much the armor of the mech is modified by

iconstate_name + + + + +

+

icon in armor.dmi that shows in the UI

protect_name + + + + +

+

short protection name to display in the UI

+ + + diff --git a/obj/item/mecha_parts/mecha_equipment/extinguisher.html b/obj/item/mecha_parts/mecha_equipment/extinguisher.html new file mode 100644 index 0000000000000..270d5db2b624e --- /dev/null +++ b/obj/item/mecha_parts/mecha_equipment/extinguisher.html @@ -0,0 +1,45 @@ + + + + + + + /obj/item/mecha_parts/mecha_equipment/extinguisher - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

extinguisher + + + +

+ + + +

Vars

required_amountMinimum amount of reagent needed to activate.

Procs

attempt_refillHandles attemted refills of the extinguisher.
+

Var Details

required_amount + + + + +

+

Minimum amount of reagent needed to activate.

Proc Details

attempt_refill +

+

Handles attemted refills of the extinguisher.

+

The mech can only refill an extinguisher that is in front of it. +Only water tank objects can be used.

+ + + diff --git a/obj/item/mecha_parts/mecha_equipment/generator.html b/obj/item/mecha_parts/mecha_equipment/generator.html new file mode 100644 index 0000000000000..0d1b0c3e9e7a7 --- /dev/null +++ b/obj/item/mecha_parts/mecha_equipment/generator.html @@ -0,0 +1,64 @@ + + + + + + + /obj/item/mecha_parts/mecha_equipment/generator - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

generator + + + +

+ +

GENERATOR

+ + + + +

Vars

fuelaxtual stack of fuel to consume
fuelrate_activeFuel used per second while actively generating
fuelrate_idleFuel used per second while idle, not generating
max_fuelmax fuel material count allowed
rechargerateEnergy recharged per second
+

Var Details

fuel + + + + +

+

axtual stack of fuel to consume

fuelrate_active + + + + +

+

Fuel used per second while actively generating

fuelrate_idle + + + + +

+

Fuel used per second while idle, not generating

max_fuel + + + + +

+

max fuel material count allowed

rechargerate + + + + +

+

Energy recharged per second

+ + + diff --git a/obj/item/mecha_parts/mecha_equipment/hydraulic_clamp.html b/obj/item/mecha_parts/mecha_equipment/hydraulic_clamp.html new file mode 100644 index 0000000000000..0a54a7e3ddf80 --- /dev/null +++ b/obj/item/mecha_parts/mecha_equipment/hydraulic_clamp.html @@ -0,0 +1,57 @@ + + + + + + + /obj/item/mecha_parts/mecha_equipment/hydraulic_clamp - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

hydraulic_clamp + + + +

+ + + + + +

Vars

cargo_holderVar for the chassis we are attached to, needed to access ripley contents and such
clamp_damageHow much base damage this clamp does
clampsoundAudio for using the hydraulic clamp
killer_clampBool for whether we beat the hell out of things we punch (and tear off their arms)
+

Var Details

cargo_holder + + + + +

+

Var for the chassis we are attached to, needed to access ripley contents and such

clamp_damage + + + + +

+

How much base damage this clamp does

clampsound + + + + +

+

Audio for using the hydraulic clamp

killer_clamp + + + + +

+

Bool for whether we beat the hell out of things we punch (and tear off their arms)

+ + + diff --git a/obj/item/mecha_parts/mecha_equipment/laser_sword.html b/obj/item/mecha_parts/mecha_equipment/laser_sword.html new file mode 100644 index 0000000000000..6401299b502a9 --- /dev/null +++ b/obj/item/mecha_parts/mecha_equipment/laser_sword.html @@ -0,0 +1,71 @@ + + + + + + + /obj/item/mecha_parts/mecha_equipment/laser_sword - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

laser_sword + + + +

+ + + + + + + +

Vars

cutterholder var for the mob that is attacking right now

Procs

do_bump_attackHits a mob in the way
drop_afterimagesignal handler, drops afterimage every move executed while dashing
end_dashEnds dash and executes attack
execute_meleeexecutes a melee attack in the direction that the mech is facing
on_bumpWrapper for mob bump attacks mid lunge
+

Var Details

cutter + + + + +

+

holder var for the mob that is attacking right now

Proc Details

do_bump_attack +

+

Hits a mob in the way

drop_afterimage +

+

signal handler, drops afterimage every move executed while dashing

end_dash +

+

Ends dash and executes attack

execute_melee +

+

executes a melee attack in the direction that the mech is facing

on_bump +

+

Wrapper for mob bump attacks mid lunge

+ + + diff --git a/obj/item/mecha_parts/mecha_equipment/melee_core.html b/obj/item/mecha_parts/mecha_equipment/melee_core.html new file mode 100644 index 0000000000000..e4f79683a20ce --- /dev/null +++ b/obj/item/mecha_parts/mecha_equipment/melee_core.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/mecha_parts/mecha_equipment/melee_core - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

melee_core + + + +

+ + +

Vars

speed_modspeed amount we modify the mech by
+

Var Details

speed_mod + + + + +

+

speed amount we modify the mech by

+ + + diff --git a/obj/item/mecha_parts/mecha_equipment/repair_droid.html b/obj/item/mecha_parts/mecha_equipment/repair_droid.html new file mode 100644 index 0000000000000..d52f5676f2fb4 --- /dev/null +++ b/obj/item/mecha_parts/mecha_equipment/repair_droid.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/mecha_parts/mecha_equipment/repair_droid - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

repair_droid + + + +

+ +

REPAIR DROID

+ +

Vars

droid_overlayoverlay to show on the mech
health_boostRepaired health per second
+

Var Details

droid_overlay + + + + +

+

overlay to show on the mech

health_boost + + + + +

+

Repaired health per second

+ + + diff --git a/obj/item/mecha_parts/mecha_equipment/weapon.html b/obj/item/mecha_parts/mecha_equipment/weapon.html new file mode 100644 index 0000000000000..7c91e54bc6618 --- /dev/null +++ b/obj/item/mecha_parts/mecha_equipment/weapon.html @@ -0,0 +1,218 @@ + + + + + + + /obj/item/mecha_parts/mecha_equipment/weapon - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

weapon + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

ammotypeammo datum/object typepath
burst_amountbullets per burst if firemode is set to burst
current_firercurrent mob firing this weapon. used for tracking for iff and etc in fire()
current_targetcurrent tracked target for fire(), updated when user drags
fire_modefire mode to use for autofire
fire_soundsound file to play when this weapon you know, fires
flash_offsetslist for this weapons flash offsets Format: MECHA_SLOT = list(DIR = list(PIXEL_X, PIXEL_Y))
muzzle_flashMuzzle flash visual reference
muzzle_flash_colorcolor of the muzzle flash while shooting
muzzle_flash_lumRange of light when we flash while shooting
muzzle_iconstateIcon state of the muzzle flash effect.
projectile_burst_delaytime between shots in a burst
projectile_delaysince mech guns only get one firemode this is for all types of shots
rearm_timehow many seconds automatic rearming takes
smoke_effectsmoke effect for when the gun fires
variancescatter of this weapon. in degrees and modified by arm this is attached to
windup_checkedTracks windups
windup_delaywindup delay for this object
windup_soundwindup sound played during windup

Procs

apply_weapon_modifiersdoes any effects and changes to the projectile when it is fired
change_targetChanges the current target.
clean_targetCleans the current target in case of Hardel
fireactually executes firing when autofire asks for it, returns TRUE to keep firing FALSE to stop
remove_flashremoves the flash object from viscontents
reset_fireResets the autofire component.
set_targetSets the current target and registers for qdel to prevent hardels
stop_fireStops the Autofire component and resets the current cursor.
+

Var Details

ammotype + + + + +

+

ammo datum/object typepath

burst_amount + + + + +

+

bullets per burst if firemode is set to burst

current_firer + + + + +

+

current mob firing this weapon. used for tracking for iff and etc in fire()

current_target + + + + +

+

current tracked target for fire(), updated when user drags

fire_mode + + + + +

+

fire mode to use for autofire

fire_sound + + + + +

+

sound file to play when this weapon you know, fires

flash_offsets + + + + +

+

list for this weapons flash offsets Format: MECHA_SLOT = list(DIR = list(PIXEL_X, PIXEL_Y))

muzzle_flash + + + + +

+

Muzzle flash visual reference

muzzle_flash_color + + + + +

+

color of the muzzle flash while shooting

muzzle_flash_lum + + + + +

+

Range of light when we flash while shooting

muzzle_iconstate + + + + +

+

Icon state of the muzzle flash effect.

projectile_burst_delay + + + + +

+

time between shots in a burst

projectile_delay + + + + +

+

since mech guns only get one firemode this is for all types of shots

rearm_time + + + + +

+

how many seconds automatic rearming takes

smoke_effect + + + + +

+

smoke effect for when the gun fires

variance + + + + +

+

scatter of this weapon. in degrees and modified by arm this is attached to

windup_checked + + + + +

+

Tracks windups

windup_delay + + + + +

+

windup delay for this object

windup_sound + + + + +

+

windup sound played during windup

Proc Details

apply_weapon_modifiers +

+

does any effects and changes to the projectile when it is fired

change_target +

+

Changes the current target.

clean_target +

+

Cleans the current target in case of Hardel

fire +

+

actually executes firing when autofire asks for it, returns TRUE to keep firing FALSE to stop

remove_flash +

+

removes the flash object from viscontents

reset_fire +

+

Resets the autofire component.

set_target +

+

Sets the current target and registers for qdel to prevent hardels

stop_fire +

+

Stops the Autofire component and resets the current cursor.

+ + + diff --git a/obj/item/mecha_parts/mecha_equipment/weapon/ballistic.html b/obj/item/mecha_parts/mecha_equipment/weapon/ballistic.html new file mode 100644 index 0000000000000..dbdb18ad61ed9 --- /dev/null +++ b/obj/item/mecha_parts/mecha_equipment/weapon/ballistic.html @@ -0,0 +1,71 @@ + + + + + + + /obj/item/mecha_parts/mecha_equipment/weapon/ballistic - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

ballistic + + + +

+ + + + + + + +

Vars

ammo_typestring define for the ammo type that this can be reloaded with
disabledreloadWhather this object only uses one mag and cannot be reloaded with the UI button
hud_iconslist of icons to display for ammo counter: list("hud_normal", "hud_empty")
projectilesammo left in the mag
projectiles_cacheammo left total
projectiles_cache_maxammo total storable
+

Var Details

ammo_type + + + + +

+

string define for the ammo type that this can be reloaded with

disabledreload + + + + +

+

Whather this object only uses one mag and cannot be reloaded with the UI button

hud_icons + + + + +

+

list of icons to display for ammo counter: list("hud_normal", "hud_empty")

projectiles + + + + +

+

ammo left in the mag

projectiles_cache + + + + +

+

ammo left total

projectiles_cache_max + + + + +

+

ammo total storable

+ + + diff --git a/obj/item/mecha_parts/mecha_tracking.html b/obj/item/mecha_parts/mecha_tracking.html new file mode 100644 index 0000000000000..c6dd5938cdf09 --- /dev/null +++ b/obj/item/mecha_parts/mecha_tracking.html @@ -0,0 +1,71 @@ + + + + + + + /obj/item/mecha_parts/mecha_tracking - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

mecha_tracking + + + +

+ + + + + + + +

Vars

ai_beaconIf this beacon allows for AI control. Exists to avoid using istype() on checking
chassisThe Mecha that this tracking beacon is attached to
rechargingCooldown variable for EMP pulsing

Procs

get_mecha_infoReturns a html formatted string describing attached mech status
rechargeResets recharge variable, allowing tracker to be EMP pulsed again
shockAttempts to EMP mech that the tracker is attached to, if there is one and tracker is not on cooldown
+

Var Details

ai_beacon + + + + +

+

If this beacon allows for AI control. Exists to avoid using istype() on checking

chassis + + + + +

+

The Mecha that this tracking beacon is attached to

recharging + + + + +

+

Cooldown variable for EMP pulsing

Proc Details

get_mecha_info +

+

Returns a html formatted string describing attached mech status

recharge +

+

Resets recharge variable, allowing tracker to be EMP pulsed again

shock +

+

Attempts to EMP mech that the tracker is attached to, if there is one and tracker is not on cooldown

+ + + diff --git a/obj/item/medevac_beacon.html b/obj/item/medevac_beacon.html new file mode 100644 index 0000000000000..380f44395b0a5 --- /dev/null +++ b/obj/item/medevac_beacon.html @@ -0,0 +1,50 @@ + + + + + + + /obj/item/medevac_beacon - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

medevac_beacon + + + +

+ + + + +

Vars

factionThe faction this beacon belongs to

Procs

add_stretcherAdds a medevac roller or stretcher to the medevac beacon. Returns TRUE if the beacon is in the linked_beds* list and false if it is not in there.
remove_stretcherRemoves the stretcher from the linked_beds* list. Returns TRUE if the bed is not linked to the beacon and FALSE otherwise.
+

Var Details

faction + + + + +

+

The faction this beacon belongs to

Proc Details

add_stretcher +

+

Adds a medevac roller or stretcher to the medevac beacon. Returns TRUE if the beacon is in the linked_beds* list and false if it is not in there.

remove_stretcher +

+

Removes the stretcher from the linked_beds* list. Returns TRUE if the bed is not linked to the beacon and FALSE otherwise.

+ + + diff --git a/obj/item/minelayer.html b/obj/item/minelayer.html new file mode 100644 index 0000000000000..98b907f84fb6c --- /dev/null +++ b/obj/item/minelayer.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/minelayer - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

minelayer + + + +

+ + +

Vars

stored_minesamount of currently stored mines
+

Var Details

stored_mines + + + + +

+

amount of currently stored mines

+ + + diff --git a/obj/item/minerupgrade.html b/obj/item/minerupgrade.html new file mode 100644 index 0000000000000..2d77ffdef7328 --- /dev/null +++ b/obj/item/minerupgrade.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/minerupgrade - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

minerupgrade + + + +

+ + +

Vars

uptypeUsed to determine the type of upgrade the miner is going to receive. Has to be a string which is defined in miner.dm or it won't work.
+

Var Details

uptype + + + + +

+

Used to determine the type of upgrade the miner is going to receive. Has to be a string which is defined in miner.dm or it won't work.

+ + + diff --git a/obj/item/minimap_tablet.html b/obj/item/minimap_tablet.html new file mode 100644 index 0000000000000..2d45ec1bce94d --- /dev/null +++ b/obj/item/minimap_tablet.html @@ -0,0 +1,57 @@ + + + + + + + /obj/item/minimap_tablet - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

minimap_tablet + + + +

+ + + + + +

Vars

drawing_toolsList of references to the tools we will be using to shape what the map looks like
editing_zthe Zlevel that this tablet will be allowed to edit
minimap_flagThe minimap flag we will be allowing to edit

Procs

close_tabletHandles closing the tablet, including removing all on-screen indicators and similar
+

Var Details

drawing_tools + + + + +

+

List of references to the tools we will be using to shape what the map looks like

editing_z + + + + +

+

the Zlevel that this tablet will be allowed to edit

minimap_flag + + + + +

+

The minimap flag we will be allowing to edit

Proc Details

close_tablet +

+

Handles closing the tablet, including removing all on-screen indicators and similar

+ + + diff --git a/obj/item/mortal_shell.html b/obj/item/mortal_shell.html new file mode 100644 index 0000000000000..a36eb20dfdfdf --- /dev/null +++ b/obj/item/mortal_shell.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/mortal_shell - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

mortal_shell + + + +

+ + +

Vars

ammo_typeAmmo datum typepath that the shell uses
+

Var Details

ammo_type + + + + +

+

Ammo datum typepath that the shell uses

+ + + diff --git a/obj/item/mortar_kit.html b/obj/item/mortar_kit.html new file mode 100644 index 0000000000000..868be56335e13 --- /dev/null +++ b/obj/item/mortar_kit.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/mortar_kit - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

mortar_kit + + + +

+ + + +

Vars

deployable_itemWhat item is this going to deploy when we put down the mortar?
linked_item_binocularslist of binoculars linked to the structure of the mortar, used for continuity
+

Var Details

deployable_item + + + + +

+

What item is this going to deploy when we put down the mortar?

linked_item_binoculars + + + + +

+

list of binoculars linked to the structure of the mortar, used for continuity

+ + + diff --git a/obj/item/pamphlet.html b/obj/item/pamphlet.html new file mode 100644 index 0000000000000..d1af694e46c81 --- /dev/null +++ b/obj/item/pamphlet.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/pamphlet - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

pamphlet + + + +

+ + +

Vars

max_skillsassoc list list(SKILL = MAXIMUM_INT) for when we dont want to let them read this
+

Var Details

max_skills + + + + +

+

assoc list list(SKILL = MAXIMUM_INT) for when we dont want to let them read this

+ + + diff --git a/obj/item/pinpointer.html b/obj/item/pinpointer.html new file mode 100644 index 0000000000000..decc89c6ad854 --- /dev/null +++ b/obj/item/pinpointer.html @@ -0,0 +1,64 @@ + + + + + + + /obj/item/pinpointer - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

pinpointer + + + +

+ + + + + + +

Vars

blacklisted_hivenumbersThe list of hives we will never track
targetWhat we're currently tracking
tracked_hivenumberThe hive we're tracking
tracked_listThe list of things we're tracking

Procs

attack_selfThe hivenumbers that we're allowed to select structures to track from
+

Var Details

blacklisted_hivenumbers + + + + +

+

The list of hives we will never track

target + + + + +

+

What we're currently tracking

tracked_hivenumber + + + + +

+

The hive we're tracking

tracked_list + + + + +

+

The list of things we're tracking

Proc Details

attack_self +

+

The hivenumbers that we're allowed to select structures to track from

+ + + diff --git a/obj/item/pipe.html b/obj/item/pipe.html new file mode 100644 index 0000000000000..39d37e6a4c96d --- /dev/null +++ b/obj/item/pipe.html @@ -0,0 +1,35 @@ + + + + + + + /obj/item/pipe - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

pipe + + + +

+ + +

Procs

Initializeobj/item/pipe/ComponentInitialize()

Proc Details

Initialize +

+

obj/item/pipe/ComponentInitialize()

+ + + diff --git a/obj/item/plantable_flag.html b/obj/item/plantable_flag.html new file mode 100644 index 0000000000000..0b9b2b77d4e67 --- /dev/null +++ b/obj/item/plantable_flag.html @@ -0,0 +1,78 @@ + + + + + + + /obj/item/plantable_flag - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

plantable_flag + + + +

+ + + + + + + + +

Vars

current_auraAura emitter
factionThe faction this belongs to
origin_pointStart point for it to return to when called

Procs

do_warcryTriggers a mass warcry from your faction
lift_flagWaves the flag around heroically
mission_endEnd of mission bonuses
update_auraUpdates the aura strength based on where its currently located
+

Var Details

current_aura + + + + +

+

Aura emitter

faction + + + + +

+

The faction this belongs to

origin_point + + + + +

+

Start point for it to return to when called

Proc Details

do_warcry +

+

Triggers a mass warcry from your faction

lift_flag +

+

Waves the flag around heroically

mission_end +

+

End of mission bonuses

update_aura +

+

Updates the aura strength based on where its currently located

+ + + diff --git a/obj/item/radio.html b/obj/item/radio.html new file mode 100644 index 0000000000000..e299facc4f3ee --- /dev/null +++ b/obj/item/radio.html @@ -0,0 +1,221 @@ + + + + + + + /obj/item/radio - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

radio + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

broadcastingWhether the radio will transmit dialogue it hears nearby into its radio channel.
canhear_rangeBoth the range around the radio in which mobs can hear what it receives and the range the radio can hear
channelsassociative list of the encrypted radio channels this radio is currently set to listen/broadcast to, of the form: list(channel name = TRUE or FALSE)
commandIf true, use_command can be toggled at will.
empedTracks the number of EMPs currently stacked.
freerangeIf true, the radio has access to the full spectrum.
freqlockFrequency lock to stop the user from untuning specialist radios.
frequencythe "default" radio frequency this radio is set to, listens and transmits to this frequency by default. wont work if the channel is encrypted
independentIf true, can say/hear over non common channels without working tcomms equipment (for ERTs mostly).
listeningWhether the radio is currently receiving radio messages from its radio frequencies.
onif FALSE, broadcasting and listening dont matter and this radio shouldnt do anything
secure_radio_connectionsassociative list of the encrypted radio channels this radio can listen/broadcast to, of the form: list(channel name = channel frequency)
should_be_broadcastingused for tracking what broadcasting should be in the absence of things forcing it off, eg its set to broadcast but gets emp'd temporarily
should_be_listeningused for tracking what listening should be in the absence of things forcing it off, eg its set to listen but gets emp'd temporarily
subspace_switchableIf true, subspace_transmission can be toggled at will.
subspace_transmissionIf true, the radio transmits and receives on subspace exclusively.
unscrewedWhether wires are accessible. Toggleable by screwdrivering.
use_commandIf true, broadcasts will be large and BOLD.

Procs

can_receiveChecks if this radio can receive on the given frequency.
get_broadcastingsimple getter for the broadcasting variable. necessary due to VAR_PROTECTED
get_frequencysimple getter for the frequency variable. necessary due to VAR_PROTECTED
get_listeningsimple getter for the listening variable. necessary due to VAR_PROTECTED
is_onsimple getter for the on variable. necessary due to VAR_PROTECTED
set_broadcastingsetter for broadcasting that makes us not hearing sensitive if not broadcasting and hearing sensitive if broadcasting +hearing sensitive in this case only matters for the purposes of listening for words said in nearby tiles, talking into us directly bypasses hearing
set_listeningsetter for the listener var, adds or removes this radio from the global radio list if we are also on
set_onsetter for the on var that sets both broadcasting and listening to off or whatever they were supposed to be
+

Var Details

broadcasting + + + + +

+

Whether the radio will transmit dialogue it hears nearby into its radio channel.

canhear_range + + + + +

+

Both the range around the radio in which mobs can hear what it receives and the range the radio can hear

channels + + + + +

+

associative list of the encrypted radio channels this radio is currently set to listen/broadcast to, of the form: list(channel name = TRUE or FALSE)

command + + + + +

+

If true, use_command can be toggled at will.

emped + + + + +

+

Tracks the number of EMPs currently stacked.

freerange + + + + +

+

If true, the radio has access to the full spectrum.

freqlock + + + + +

+

Frequency lock to stop the user from untuning specialist radios.

frequency + + + + +

+

the "default" radio frequency this radio is set to, listens and transmits to this frequency by default. wont work if the channel is encrypted

independent + + + + +

+

If true, can say/hear over non common channels without working tcomms equipment (for ERTs mostly).

listening + + + + +

+

Whether the radio is currently receiving radio messages from its radio frequencies.

on + + + + +

+

if FALSE, broadcasting and listening dont matter and this radio shouldnt do anything

secure_radio_connections + + + + +

+

associative list of the encrypted radio channels this radio can listen/broadcast to, of the form: list(channel name = channel frequency)

should_be_broadcasting + + + + +

+

used for tracking what broadcasting should be in the absence of things forcing it off, eg its set to broadcast but gets emp'd temporarily

should_be_listening + + + + +

+

used for tracking what listening should be in the absence of things forcing it off, eg its set to listen but gets emp'd temporarily

subspace_switchable + + + + +

+

If true, subspace_transmission can be toggled at will.

subspace_transmission + + + + +

+

If true, the radio transmits and receives on subspace exclusively.

unscrewed + + + + +

+

Whether wires are accessible. Toggleable by screwdrivering.

use_command + + + + +

+

If true, broadcasts will be large and BOLD.

Proc Details

can_receive +

+

Checks if this radio can receive on the given frequency.

get_broadcasting +

+

simple getter for the broadcasting variable. necessary due to VAR_PROTECTED

get_frequency +

+

simple getter for the frequency variable. necessary due to VAR_PROTECTED

get_listening +

+

simple getter for the listening variable. necessary due to VAR_PROTECTED

is_on +

+

simple getter for the on variable. necessary due to VAR_PROTECTED

set_broadcasting +

+

setter for broadcasting that makes us not hearing sensitive if not broadcasting and hearing sensitive if broadcasting +hearing sensitive in this case only matters for the purposes of listening for words said in nearby tiles, talking into us directly bypasses hearing

+

set_listening +

+

setter for the listener var, adds or removes this radio from the global radio list if we are also on

+

set_on +

+

setter for the on var that sets both broadcasting and listening to off or whatever they were supposed to be

+ + + diff --git a/obj/item/radio/headset.html b/obj/item/radio/headset.html new file mode 100644 index 0000000000000..9b6f775fa4a18 --- /dev/null +++ b/obj/item/radio/headset.html @@ -0,0 +1,35 @@ + + + + + + + /obj/item/radio/headset - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

headset + + + +

+ + +

Procs

AltClickonly headsets autoupdate squads cuz im lazy and dont want to redo this proc

Proc Details

AltClick +

+

only headsets autoupdate squads cuz im lazy and dont want to redo this proc

+ + + diff --git a/obj/item/radio/headset/mainship.html b/obj/item/radio/headset/mainship.html new file mode 100644 index 0000000000000..4edae2ebdf02c --- /dev/null +++ b/obj/item/radio/headset/mainship.html @@ -0,0 +1,64 @@ + + + + + + + /obj/item/radio/headset/mainship - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

mainship + + + +

+ + + + + + +

Vars

factionThe faction this headset belongs to. Used for hudtype, minimap and safety protocol
minimap_typeThe type of minimap this headset gives access to

Procs

remove_minimapRemove all action of type minimap from the wearer, and make him disappear from the minimap
safety_protocolExplodes the headset if you put on an enemy's headset
update_minimap_iconUpdates the wearer's minimap icon
+

Var Details

faction + + + + +

+

The faction this headset belongs to. Used for hudtype, minimap and safety protocol

minimap_type + + + + +

+

The type of minimap this headset gives access to

Proc Details

remove_minimap +

+

Remove all action of type minimap from the wearer, and make him disappear from the minimap

safety_protocol +

+

Explodes the headset if you put on an enemy's headset

update_minimap_icon +

+

Updates the wearer's minimap icon

+ + + diff --git a/obj/item/radio/intercom.html b/obj/item/radio/intercom.html new file mode 100644 index 0000000000000..465183c803f9e --- /dev/null +++ b/obj/item/radio/intercom.html @@ -0,0 +1,35 @@ + + + + + + + /obj/item/radio/intercom - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

intercom + + + +

+ + +

Procs

check_lightChecks if we're on, if so a light turns on

Proc Details

check_light +

+

Checks if we're on, if so a light turns on

+ + + diff --git a/obj/item/reagent_containers.html b/obj/item/reagent_containers.html new file mode 100644 index 0000000000000..208ed48145081 --- /dev/null +++ b/obj/item/reagent_containers.html @@ -0,0 +1,140 @@ + + + + + + + /obj/item/reagent_containers - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

reagent_containers + + + +

+ + + + + + + + + + + + + + + + +

Vars

amount_per_transfer_from_thisThe maximum amount of reagents per transfer that will be moved out of this reagent container.
fill_iconThe icon file to take fill icon appearances from
fill_icon_stateThe optional custom name for the reagent fill icon_state prefix +If not set, uses the current icon state.
fill_icon_thresholdsThe different thresholds at which the reagent fill overlay will change. See medical/reagent_fillings.dmi.
free_refillsWhether we can restock this in a vendor without it having its starting reagents
liquifierCan liquify/grind pills without needing fluid to dissolve.
list_reagentsList of reagents to add
possible_transfer_amountsThe different possible amounts of reagent to transfer out of the container
reagent_flagsReagent flags, a few examples being if the container is open or not, if its transparent, if you can inject stuff in and out of the container, and so on
volumeThe maximum amount of reagents this container can hold

Procs

change_transfer_amountOpens a tgui_input_list and changes the transfer_amount of our container based on our selection
has_initial_reagentsTrue if this object currently contains at least its starting reagents, false otherwise. Extra reagents are ignored.
on_reagent_addUpdates the icon of the container when the reagents change. Eats signal args
record_reagent_consumptionRecord what reagents and how much of them were transferred to a mob into their ckey's /datum/personal_statistics
try_splashSplashes atom/target with whatever reagents are contained
+

Var Details

amount_per_transfer_from_this + + + + +

+

The maximum amount of reagents per transfer that will be moved out of this reagent container.

fill_icon + + + + +

+

The icon file to take fill icon appearances from

fill_icon_state + + + + +

+

The optional custom name for the reagent fill icon_state prefix +If not set, uses the current icon state.

fill_icon_thresholds + + + + +

+

The different thresholds at which the reagent fill overlay will change. See medical/reagent_fillings.dmi.

+

Should be a list of integers which correspond to a reagent unit threshold. +If null, no automatic fill overlays are generated.

+

For example, list(0) will mean it will gain a the overlay with any reagents present. This overlay is "overlayname0". +list(0, 10) whill have two overlay options, for 0-10 units ("overlayname0") and 10+ units ("overlayname10").

free_refills + + + + +

+

Whether we can restock this in a vendor without it having its starting reagents

liquifier + + + + +

+

Can liquify/grind pills without needing fluid to dissolve.

list_reagents + + + + +

+

List of reagents to add

possible_transfer_amounts + + + + +

+

The different possible amounts of reagent to transfer out of the container

reagent_flags + + + + +

+

Reagent flags, a few examples being if the container is open or not, if its transparent, if you can inject stuff in and out of the container, and so on

volume + + + + +

+

The maximum amount of reagents this container can hold

Proc Details

change_transfer_amount +

+

Opens a tgui_input_list and changes the transfer_amount of our container based on our selection

has_initial_reagents +

+

True if this object currently contains at least its starting reagents, false otherwise. Extra reagents are ignored.

on_reagent_add +

+

Updates the icon of the container when the reagents change. Eats signal args

record_reagent_consumption +

+

Record what reagents and how much of them were transferred to a mob into their ckey's /datum/personal_statistics

try_splash +

+

Splashes atom/target with whatever reagents are contained

+ + + diff --git a/obj/item/reagent_containers/cup.html b/obj/item/reagent_containers/cup.html new file mode 100644 index 0000000000000..5cc59c4dd5c1b --- /dev/null +++ b/obj/item/reagent_containers/cup.html @@ -0,0 +1,71 @@ + + + + + + + /obj/item/reagent_containers/cup - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

cup + + + +

+ + + + + + + +

Vars

can_shatterWhether the 'bottle' is made of glass or not so that milk cartons dont shatter when someone gets hit by it.
drink_typeLike Edible's food type, what kind of drink is this?
gulp_sizeHow much we drink at once, shot glasses drink more.
last_check_timeThe last time we have checked for taste.

Procs

on_cup_changeCallback for datum/component/takes_reagent_appearance to inherent style footypes
on_cup_resetCallback for datum/component/takes_reagent_appearance to reset to no foodtypes
+

Var Details

can_shatter + + + + +

+

Whether the 'bottle' is made of glass or not so that milk cartons dont shatter when someone gets hit by it.

drink_type + + + + +

+

Like Edible's food type, what kind of drink is this?

gulp_size + + + + +

+

How much we drink at once, shot glasses drink more.

last_check_time + + + + +

+

The last time we have checked for taste.

Proc Details

on_cup_change +

+

Callback for datum/component/takes_reagent_appearance to inherent style footypes

on_cup_reset +

+

Callback for datum/component/takes_reagent_appearance to reset to no foodtypes

+ + + diff --git a/obj/item/reagent_containers/cup/bottle/syrup_bottle.html b/obj/item/reagent_containers/cup/bottle/syrup_bottle.html new file mode 100644 index 0000000000000..3f1905758ed63 --- /dev/null +++ b/obj/item/reagent_containers/cup/bottle/syrup_bottle.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/reagent_containers/cup/bottle/syrup_bottle - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

syrup_bottle + + + +

+ + +

Vars

cap_onvariable to tell if the bottle can be refilled
+

Var Details

cap_on + + + + +

+

variable to tell if the bottle can be refilled

+ + + diff --git a/obj/item/reagent_containers/cup/glass/bottle.html b/obj/item/reagent_containers/cup/glass/bottle.html new file mode 100644 index 0000000000000..14a55ea691953 --- /dev/null +++ b/obj/item/reagent_containers/cup/glass/bottle.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/reagent_containers/cup/glass/bottle - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

bottle + + + +

+ + + +

Vars

bottle_knockdown_durationDirectly relates to the 'knockdown' duration. Lowered by armor (i.e. helmets)
broken_worn_icon_stateSprite our bottle uses when it's broken
+

Var Details

bottle_knockdown_duration + + + + +

+

Directly relates to the 'knockdown' duration. Lowered by armor (i.e. helmets)

broken_worn_icon_state + + + + +

+

Sprite our bottle uses when it's broken

+ + + diff --git a/obj/item/reagent_containers/cup/glass/colocup.html b/obj/item/reagent_containers/cup/glass/colocup.html new file mode 100644 index 0000000000000..03378b62f79fe --- /dev/null +++ b/obj/item/reagent_containers/cup/glass/colocup.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/reagent_containers/cup/glass/colocup - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

colocup + + + +

+ + +

Vars

random_spriteAllows the lean sprite to display upon crafting
+

Var Details

random_sprite + + + + +

+

Allows the lean sprite to display upon crafting

+ + + diff --git a/obj/item/reagent_containers/cup/glass/drinkingglass.html b/obj/item/reagent_containers/cup/glass/drinkingglass.html new file mode 100644 index 0000000000000..255360c979b6e --- /dev/null +++ b/obj/item/reagent_containers/cup/glass/drinkingglass.html @@ -0,0 +1,38 @@ + + + + + + + /obj/item/reagent_containers/cup/glass/drinkingglass - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

drinkingglass + + + +

+ + +

Vars

base_container_typeThe type to compare to glass_style.required_container type, or null to use class type. +This allows subtypes to utilize parent styles.
+

Var Details

base_container_type + + + + +

+

The type to compare to glass_style.required_container type, or null to use class type. +This allows subtypes to utilize parent styles.

+ + + diff --git a/obj/item/reagent_containers/cup/soda_cans.html b/obj/item/reagent_containers/cup/soda_cans.html new file mode 100644 index 0000000000000..6651d48971dcb --- /dev/null +++ b/obj/item/reagent_containers/cup/soda_cans.html @@ -0,0 +1,48 @@ + + + + + + + /obj/item/reagent_containers/cup/soda_cans - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

soda_cans + + + +

+ + + +

Vars

fizzinessIf the can hasn't been opened yet, this is the measure of how fizzed up it is from being shaken or thrown around. When opened, this is rolled as a percentage chance to burst

Procs

burst_sodaBurst the soda open on someone. Fun! Opens and empties the soda can, but does not crush it.
+

Var Details

fizziness + + + + +

+

If the can hasn't been opened yet, this is the measure of how fizzed up it is from being shaken or thrown around. When opened, this is rolled as a percentage chance to burst

Proc Details

burst_soda +

+

Burst the soda open on someone. Fun! Opens and empties the soda can, but does not crush it.

+

Arguments:

+
+ + + diff --git a/obj/item/reagent_containers/food.html b/obj/item/reagent_containers/food.html new file mode 100644 index 0000000000000..7b24d761d0cc9 --- /dev/null +++ b/obj/item/reagent_containers/food.html @@ -0,0 +1,29 @@ + + + + + + + /obj/item/reagent_containers/food - byond + + +
+ byond - + Modules - + Types +
+
+

food + + + +

+ +

Droppers. END

+

Food.

+ + + diff --git a/obj/item/reagent_containers/food/snacks/honeycomb.html b/obj/item/reagent_containers/food/snacks/honeycomb.html new file mode 100644 index 0000000000000..a57fafd1b83b6 --- /dev/null +++ b/obj/item/reagent_containers/food/snacks/honeycomb.html @@ -0,0 +1,30 @@ + + + + + + + /obj/item/reagent_containers/food/snacks/honeycomb - byond + + +
+ byond - + Modules - + Types +
+
+

honeycomb + + + +

+ +

/////////////////////////////////////////Snacks

+

obj/item/reagent_containers/food/snacks/burger/xeno //Identification path for the object. +obj/item/reagent_containers/food/snacks/burger/xeno/Initialize(mapload) //Absolute pathing for procs, please.

+ + + diff --git a/obj/item/reagent_containers/food/snacks/protein_pack.html b/obj/item/reagent_containers/food/snacks/protein_pack.html new file mode 100644 index 0000000000000..3b923ce29dcf8 --- /dev/null +++ b/obj/item/reagent_containers/food/snacks/protein_pack.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/reagent_containers/food/snacks/protein_pack - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

protein_pack + + + +

+ + +

Vars

flavor_listlist of protein bar types
+

Var Details

flavor_list + + + + +

+

list of protein bar types

+ + + diff --git a/obj/item/reagent_containers/glass/reagent_canister.html b/obj/item/reagent_containers/glass/reagent_canister.html new file mode 100644 index 0000000000000..9d30af0a370f1 --- /dev/null +++ b/obj/item/reagent_containers/glass/reagent_canister.html @@ -0,0 +1,35 @@ + + + + + + + /obj/item/reagent_containers/glass/reagent_canister - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

reagent_canister + + + +

+ + +

Procs

get_examine_infoUsed on examine for properly skilled people to see contents.

Proc Details

get_examine_info +

+

Used on examine for properly skilled people to see contents.

+ + + diff --git a/obj/item/reagent_containers/hypospray.html b/obj/item/reagent_containers/hypospray.html new file mode 100644 index 0000000000000..86cd7fbf57a41 --- /dev/null +++ b/obj/item/reagent_containers/hypospray.html @@ -0,0 +1,64 @@ + + + + + + + /obj/item/reagent_containers/hypospray - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

hypospray + + + +

+ +

HYPOSPRAY

+ + + + +

Vars

description_overlaySmall description appearing as an overlay
labelIf we add a custom label, our name becomes "[core_name] ([label])"

Procs

can_draw_reagentIf it's possible to draw from something. Will draw_blood() when targetting a carbon, or draw_reagent() when targetting a non-carbon
draw_bloodChecks if the carbon has blood, then tries to draw blood from it
draw_reagentChecks if a container is drawable, then draw reagents from the container
+

Var Details

description_overlay + + + + +

+

Small description appearing as an overlay

label + + + + +

+

If we add a custom label, our name becomes "[core_name] ([label])"

Proc Details

can_draw_reagent +

+

If it's possible to draw from something. Will draw_blood() when targetting a carbon, or draw_reagent() when targetting a non-carbon

draw_blood +

+

Checks if the carbon has blood, then tries to draw blood from it

draw_reagent +

+

Checks if a container is drawable, then draw reagents from the container

+ + + diff --git a/obj/item/reagent_containers/hypospray/advanced.html b/obj/item/reagent_containers/hypospray/advanced.html new file mode 100644 index 0000000000000..fd4da99e4c1b7 --- /dev/null +++ b/obj/item/reagent_containers/hypospray/advanced.html @@ -0,0 +1,35 @@ + + + + + + + /obj/item/reagent_containers/hypospray/advanced - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

advanced + + + +

+ + +

Procs

display_reagentsThe proc display_reagents controls the information utilised in the hypospray menu/. Specifically how much of a chem there is, what percent that entails, and what type of chem it is if that is a known chem.

Proc Details

display_reagents +

+

The proc display_reagents controls the information utilised in the hypospray menu/. Specifically how much of a chem there is, what percent that entails, and what type of chem it is if that is a known chem.

+ + + diff --git a/obj/item/reagent_containers/jerrycan.html b/obj/item/reagent_containers/jerrycan.html new file mode 100644 index 0000000000000..0a9919036286d --- /dev/null +++ b/obj/item/reagent_containers/jerrycan.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/reagent_containers/jerrycan - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

jerrycan + + + +

+ + +

Vars

fuel_usagehow much fuel we use up per spill
+

Var Details

fuel_usage + + + + +

+

how much fuel we use up per spill

+ + + diff --git a/obj/item/research_product.html b/obj/item/research_product.html new file mode 100644 index 0000000000000..f34fe8c11c69b --- /dev/null +++ b/obj/item/research_product.html @@ -0,0 +1,37 @@ + + + + + + + /obj/item/research_product - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

research_product + + + +

+ +

Items designed to be products of research +It isn't required for a product of research to be subtype of these

+

Vars

export_pointsPoints provided for exporting the product
+

Var Details

export_points + + + + +

+

Points provided for exporting the product

+ + + diff --git a/obj/item/research_resource.html b/obj/item/research_resource.html new file mode 100644 index 0000000000000..4b08724ca6ac7 --- /dev/null +++ b/obj/item/research_resource.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/research_resource - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

research_resource + + + +

+ +

Research materials

+ +

Vars

research_typeType of research the item is used for
reward_probsResearch progress percent modifiers
+

Var Details

research_type + + + + +

+

Type of research the item is used for

reward_probs + + + + +

+

Research progress percent modifiers

+ + + diff --git a/obj/item/resin_jelly.html b/obj/item/resin_jelly.html new file mode 100644 index 0000000000000..952b1aa27c637 --- /dev/null +++ b/obj/item/resin_jelly.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/resin_jelly - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

resin_jelly + + + +

+ + +

Vars

current_userHolder to ensure only one user per resin jelly.
+

Var Details

current_user + + + + +

+

Holder to ensure only one user per resin jelly.

+ + + diff --git a/obj/item/roller/medevac.html b/obj/item/roller/medevac.html new file mode 100644 index 0000000000000..f773218c0581d --- /dev/null +++ b/obj/item/roller/medevac.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/roller/medevac - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

medevac + + + +

+ + + +

Vars

holderWho is currently holding onto the medevac roller?
timer_cooldownVisual timer for the medevac cooldown
+

Var Details

holder + + + + +

+

Who is currently holding onto the medevac roller?

timer_cooldown + + + + +

+

Visual timer for the medevac cooldown

+ + + diff --git a/obj/item/shotgunbox.html b/obj/item/shotgunbox.html new file mode 100644 index 0000000000000..78b1db70d5713 --- /dev/null +++ b/obj/item/shotgunbox.html @@ -0,0 +1,64 @@ + + + + + + + /obj/item/shotgunbox - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

shotgunbox + + + +

+ + + + + + +

Vars

ammo_typeAmmunition type
caliberCaliber of the rounds stored.
current_roundsCurrent stored rounds
deployedWhether the box is deployed or not.
max_roundsMaximum stored rounds
+

Var Details

ammo_type + + + + +

+

Ammunition type

caliber + + + + +

+

Caliber of the rounds stored.

current_rounds + + + + +

+

Current stored rounds

deployed + + + + +

+

Whether the box is deployed or not.

max_rounds + + + + +

+

Maximum stored rounds

+ + + diff --git a/obj/item/squad_transfer_tablet.html b/obj/item/squad_transfer_tablet.html new file mode 100644 index 0000000000000..147fc782709f5 --- /dev/null +++ b/obj/item/squad_transfer_tablet.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/squad_transfer_tablet - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

squad_transfer_tablet + + + +

+ + + +

Vars

active_requestsREF()s for all currently active transfering marines

Procs

process_transferhandles actual transfering of squaddies, async so ui act doesnt sleep
+

Var Details

active_requests + + + + +

+

REF()s for all currently active transfering marines

Proc Details

process_transfer +

+

handles actual transfering of squaddies, async so ui act doesnt sleep

+ + + diff --git a/obj/item/stack.html b/obj/item/stack.html new file mode 100644 index 0000000000000..370cefbdd6b6f --- /dev/null +++ b/obj/item/stack.html @@ -0,0 +1,58 @@ + + + + + + + /obj/item/stack - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

stack + + + +

+ + + + + +

Procs

create_objectCreates multiplier amount of objects based off of stack recipe R. Most creation variables are changed through stack recipe datum's variables
get_main_recipesUse this proc to assign the appropriate global list to our var/recipes
merge_with_stack_in_handsMerges stack into the one that user is currently holding in their left or right hand. +Returns TRUE if the stack was merged, FALSE otherwise.
select_radialProc for special actions and radial menus on subtypes. Returning FALSE cancels the recipe menu for a stack.

Proc Details

create_object +

+

Creates multiplier amount of objects based off of stack recipe R. Most creation variables are changed through stack recipe datum's variables

get_main_recipes +

+

Use this proc to assign the appropriate global list to our var/recipes

merge_with_stack_in_hands +

+

Merges stack into the one that user is currently holding in their left or right hand. +Returns TRUE if the stack was merged, FALSE otherwise.

select_radial +

+

Proc for special actions and radial menus on subtypes. Returning FALSE cancels the recipe menu for a stack.

+ + + diff --git a/obj/item/stack/conveyor.html b/obj/item/stack/conveyor.html new file mode 100644 index 0000000000000..1efe9935c971c --- /dev/null +++ b/obj/item/stack/conveyor.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/stack/conveyor - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

conveyor + + + +

+ + +

Vars

idid for linking
+

Var Details

id + + + + +

+

id for linking

+ + + diff --git a/obj/item/stack/medical.html b/obj/item/stack/medical.html new file mode 100644 index 0000000000000..1e2dae48597c6 --- /dev/null +++ b/obj/item/stack/medical.html @@ -0,0 +1,57 @@ + + + + + + + /obj/item/stack/medical - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

medical + + + +

+ + + + + +

Vars

skill_level_neededMedical skill level needed to not get a fumble delay
unskilled_delayFumble delay applied without sufficient skill

Procs

can_affect_limbChecks for whether the limb is appropriately organic/robotic
record_healingDetermine if a self or non-self heal occurred, and tally up the user mob's respective stat
+

Var Details

skill_level_needed + + + + +

+

Medical skill level needed to not get a fumble delay

unskilled_delay + + + + +

+

Fumble delay applied without sufficient skill

Proc Details

can_affect_limb +

+

Checks for whether the limb is appropriately organic/robotic

record_healing +

+

Determine if a self or non-self heal occurred, and tally up the user mob's respective stat

+ + + diff --git a/obj/item/stack/medical/heal_pack.html b/obj/item/stack/medical/heal_pack.html new file mode 100644 index 0000000000000..b827b15f9de32 --- /dev/null +++ b/obj/item/stack/medical/heal_pack.html @@ -0,0 +1,71 @@ + + + + + + + /obj/item/stack/medical/heal_pack - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

heal_pack + + + +

+ + + + + + + +

Vars

heal_bruteHow much brute damage this pack heals when applied to a limb
heal_burnHow much burn damage this pack heals when applied to a limb
heal_flagsSet of wound flags applied by use, including BANDAGE, SALVE, and DISINFECT

Procs

can_heal_limbreturn TRUE if a given limb can be healed by src, FALSE otherwise
generate_treatment_messagesPurely visual, generates the success/failure messages for using a health pack
heal_limbApplies the heal_pack to a specified limb. Unskilled penalty is a multiplier between 0 and 1 on brute/burn healing effectiveness
+

Var Details

heal_brute + + + + +

+

How much brute damage this pack heals when applied to a limb

heal_burn + + + + +

+

How much burn damage this pack heals when applied to a limb

heal_flags + + + + +

+

Set of wound flags applied by use, including BANDAGE, SALVE, and DISINFECT

Proc Details

can_heal_limb +

+

return TRUE if a given limb can be healed by src, FALSE otherwise

generate_treatment_messages +

+

Purely visual, generates the success/failure messages for using a health pack

heal_limb +

+

Applies the heal_pack to a specified limb. Unskilled penalty is a multiplier between 0 and 1 on brute/burn healing effectiveness

+ + + diff --git a/obj/item/stack/medical/splint.html b/obj/item/stack/medical/splint.html new file mode 100644 index 0000000000000..715f1c562fa99 --- /dev/null +++ b/obj/item/stack/medical/splint.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/stack/medical/splint - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

splint + + + +

+ + +

Vars

applied_splint_healthHow much splint health per medical skill is applied
+

Var Details

applied_splint_health + + + + +

+

How much splint health per medical skill is applied

+ + + diff --git a/obj/item/stack/rods.html b/obj/item/stack/rods.html new file mode 100644 index 0000000000000..94b48d5b252c1 --- /dev/null +++ b/obj/item/stack/rods.html @@ -0,0 +1,42 @@ + + + + + + + /obj/item/stack/rods - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

rods + + + +

+ + + +

Procs

place_catwalkBuilds a catwalk
reinforce_floorReinforces a bare floor

Proc Details

place_catwalk +

+

Builds a catwalk

reinforce_floor +

+

Reinforces a bare floor

+ + + diff --git a/obj/item/stack/sheet/wetleather.html b/obj/item/stack/sheet/wetleather.html new file mode 100644 index 0000000000000..11c2cc31460a1 --- /dev/null +++ b/obj/item/stack/sheet/wetleather.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/stack/sheet/wetleather - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

wetleather + + + +

+ + +

Vars

wetnessHow damp it is
+

Var Details

wetness + + + + +

+

How damp it is

+ + + diff --git a/obj/item/stack/throwing_knife.html b/obj/item/stack/throwing_knife.html new file mode 100644 index 0000000000000..85007c556ed08 --- /dev/null +++ b/obj/item/stack/throwing_knife.html @@ -0,0 +1,99 @@ + + + + + + + /obj/item/stack/throwing_knife - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

throwing_knife + + + +

+ + + + + + + + + + + +

Vars

current_targetCurrent Target that knives are being thrown at. This is for aiming
living_userThe person throwing knives
throw_delayDelay between throwing.
update_on_throwingDo we change sprite depending on the amount left?

Procs

change_targetChanges the current target.
post_throwFills any stacks currently in the tile that this object is thrown to.
set_targetSets the current target and registers for qdel to prevent hardels
start_fireStarts the user firing.
stop_fireStops the Autofire component and resets the current cursor.
throw_knifeThrows a knife from the stack, or, if the stack is one, throws the stack.
+

Var Details

current_target + + + + +

+

Current Target that knives are being thrown at. This is for aiming

living_user + + + + +

+

The person throwing knives

throw_delay + + + + +

+

Delay between throwing.

update_on_throwing + + + + +

+

Do we change sprite depending on the amount left?

Proc Details

change_target +

+

Changes the current target.

post_throw +

+

Fills any stacks currently in the tile that this object is thrown to.

set_target +

+

Sets the current target and registers for qdel to prevent hardels

start_fire +

+

Starts the user firing.

stop_fire +

+

Stops the Autofire component and resets the current cursor.

throw_knife +

+

Throws a knife from the stack, or, if the stack is one, throws the stack.

+ + + diff --git a/obj/item/stack/tile.html b/obj/item/stack/tile.html new file mode 100644 index 0000000000000..18a74a156a8df --- /dev/null +++ b/obj/item/stack/tile.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/stack/tile - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

tile + + + +

+ + +

Vars

turf_typeThe turf type this tile creates
+

Var Details

turf_type + + + + +

+

The turf type this tile creates

+ + + diff --git a/obj/item/stack/tile/plasteel.html b/obj/item/stack/tile/plasteel.html new file mode 100644 index 0000000000000..a10cc0a04b09c --- /dev/null +++ b/obj/item/stack/tile/plasteel.html @@ -0,0 +1,35 @@ + + + + + + + /obj/item/stack/tile/plasteel - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

plasteel + + + +

+ + +

Procs

buildCreates plating, used for space turfs only

Proc Details

build +

+

Creates plating, used for space turfs only

+ + + diff --git a/obj/item/storage.html b/obj/item/storage.html new file mode 100644 index 0000000000000..9f8daedd27672 --- /dev/null +++ b/obj/item/storage.html @@ -0,0 +1,46 @@ + + + + + + + /obj/item/storage - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

storage + + + +

+ +

When creating a new storage, you may use /obj/item/storage as a template which automates create_storage() on .../Initialize +However, this is no longer a hard requirement, since storage is a /datum now +Just make sure to pass whatever arguments you need to create_storage() which is an /atom level proc +(This means that any atom can have storage :D )

+ +

Vars

storage_typeDetermines what subtype of storage is on our item, see datums\storage\subtypes

Procs

PopulateContentsUse this to fill your storage with items. USE THIS INSTEAD OF NEW/INIT
+

Var Details

storage_type + + + + +

+

Determines what subtype of storage is on our item, see datums\storage\subtypes

Proc Details

PopulateContents +

+

Use this to fill your storage with items. USE THIS INSTEAD OF NEW/INIT

+ + + diff --git a/obj/item/storage/backpack/marine/duffelbag.html b/obj/item/storage/backpack/marine/duffelbag.html new file mode 100644 index 0000000000000..0b6abf23066db --- /dev/null +++ b/obj/item/storage/backpack/marine/duffelbag.html @@ -0,0 +1,42 @@ + + + + + + + /obj/item/storage/backpack/marine/duffelbag - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

duffelbag + + + +

+ + + +

Procs

on_rclick_duffel_wearerAllows non-wearers to access this inventory
on_wearer_moveCloses the duffelbag when our wearer moves if it's worn on user's back

Proc Details

on_rclick_duffel_wearer +

+

Allows non-wearers to access this inventory

on_wearer_move +

+

Closes the duffelbag when our wearer moves if it's worn on user's back

+ + + diff --git a/obj/item/storage/backpack/marine/duffelbag/xenosaddle.html b/obj/item/storage/backpack/marine/duffelbag/xenosaddle.html new file mode 100644 index 0000000000000..755820d2afa00 --- /dev/null +++ b/obj/item/storage/backpack/marine/duffelbag/xenosaddle.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/storage/backpack/marine/duffelbag/xenosaddle - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

xenosaddle + + + +

+ + + +

Vars

style_listlist of selectable styles & the actual name in the DMI file so the user doesn't see the codenames
style_list_invertedthis is really janky but I need the inverted list to be able to display the player-facing name to the player using the codename as a key (its all shitcode, all the way down)
+

Var Details

style_list + + + + +

+

list of selectable styles & the actual name in the DMI file so the user doesn't see the codenames

style_list_inverted + + + + +

+

this is really janky but I need the inverted list to be able to display the player-facing name to the player using the codename as a key (its all shitcode, all the way down)

+ + + diff --git a/obj/item/storage/backpack/marine/radiopack.html b/obj/item/storage/backpack/marine/radiopack.html new file mode 100644 index 0000000000000..bb530b7269409 --- /dev/null +++ b/obj/item/storage/backpack/marine/radiopack.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/storage/backpack/marine/radiopack - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

radiopack + + + +

+ + +

Vars

supply_interfaceVar for the window pop-up
+

Var Details

supply_interface + + + + +

+

Var for the window pop-up

+ + + diff --git a/obj/item/storage/backpack/marine/satchel/scout_cloak.html b/obj/item/storage/backpack/marine/satchel/scout_cloak.html new file mode 100644 index 0000000000000..256ad754cc295 --- /dev/null +++ b/obj/item/storage/backpack/marine/satchel/scout_cloak.html @@ -0,0 +1,49 @@ + + + + + + + /obj/item/storage/backpack/marine/satchel/scout_cloak - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

scout_cloak + + + +

+ + + + +

Procs

camouflageActivates the cloak
handle_movementHandles the wearer moving with the cloak active
on_other_activateSig handler for other sources of cloaking

Proc Details

camouflage +

+

Activates the cloak

handle_movement +

+

Handles the wearer moving with the cloak active

on_other_activate +

+

Sig handler for other sources of cloaking

+ + + diff --git a/obj/item/storage/bag/sheetsnatcher.html b/obj/item/storage/bag/sheetsnatcher.html new file mode 100644 index 0000000000000..d4dd676295e9e --- /dev/null +++ b/obj/item/storage/bag/sheetsnatcher.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/storage/bag/sheetsnatcher - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

sheetsnatcher + + + +

+ + +

Vars

capacitythe number of sheets it can carry.
+

Var Details

capacity + + + + +

+

the number of sheets it can carry.

+ + + diff --git a/obj/item/storage/box/MRE.html b/obj/item/storage/box/MRE.html new file mode 100644 index 0000000000000..99649d72c2a0f --- /dev/null +++ b/obj/item/storage/box/MRE.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/storage/box/MRE - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

MRE + + + +

+ + +

Vars

isopenedIf our MRE is opened, it gets a new icon
+

Var Details

isopened + + + + +

+

If our MRE is opened, it gets a new icon

+ + + diff --git a/obj/item/storage/box/visual.html b/obj/item/storage/box/visual.html new file mode 100644 index 0000000000000..2ef696fa3dc49 --- /dev/null +++ b/obj/item/storage/box/visual.html @@ -0,0 +1,129 @@ + + + + + + + /obj/item/storage/box/visual - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

fillable box + + + +

+ +

Deployable box with fancy visuals of its contents +Visual content defined in the icon_state_mini var in /obj/item +All other visuals that do not have a icon_state_mini defined are in var/assoc_overlay

+ + + + + + + + + + + + + +

Vars

amt_horizontalAmount of columns in the overlay grid.
amt_verticalAmount of rows in the overlay grid.
closed_overlayOverlay icon_state to display on the box when it is closed
contents_weightAssoc list of how much weight every item type takes. Used to determine how many overlays to make.
deployedWhether or not the box is deployed on the ground
max_overlaysTotal max amount of overlay spaces
open_overlayOverlay icon_state to display on the box when it is open
overlay_pixel_xInitial pixel_x offset of the overlays.
overlay_pixel_yInitial pixel_y offset of the overlays.
overlay_w_classAmount of weight a single overlay can cover.
shift_xAmount of pixels to shift each overlay for each column.
shift_yAmount of pixels to shift each overlay for each row.
varietyAmount of different items in the box.

Procs

update_statsUpdates certain vars used primarily (but not exclusively) for the creation of the overlays.
+

Var Details

amt_horizontal + + + + +

+

Amount of columns in the overlay grid.

amt_vertical + + + + +

+

Amount of rows in the overlay grid.

closed_overlay + + + + +

+

Overlay icon_state to display on the box when it is closed

contents_weight + + + + +

+

Assoc list of how much weight every item type takes. Used to determine how many overlays to make.

deployed + + + + +

+

Whether or not the box is deployed on the ground

max_overlays + + + + +

+

Total max amount of overlay spaces

open_overlay + + + + +

+

Overlay icon_state to display on the box when it is open

overlay_pixel_x + + + + +

+

Initial pixel_x offset of the overlays.

overlay_pixel_y + + + + +

+

Initial pixel_y offset of the overlays.

overlay_w_class + + + + +

+

Amount of weight a single overlay can cover.

shift_x + + + + +

+

Amount of pixels to shift each overlay for each column.

shift_y + + + + +

+

Amount of pixels to shift each overlay for each row.

variety + + + + +

+

Amount of different items in the box.

Proc Details

update_stats +

+

Updates certain vars used primarily (but not exclusively) for the creation of the overlays.

+ + + diff --git a/obj/item/storage/donut_box.html b/obj/item/storage/donut_box.html new file mode 100644 index 0000000000000..3584e345072ff --- /dev/null +++ b/obj/item/storage/donut_box.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/storage/donut_box - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

donut_box + + + +

+ + +

Vars

startswithHow many items spawn in src
+

Var Details

startswith + + + + +

+

How many items spawn in src

+ + + diff --git a/obj/item/storage/firstaid.html b/obj/item/storage/firstaid.html new file mode 100644 index 0000000000000..b07c5fdd58153 --- /dev/null +++ b/obj/item/storage/firstaid.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/storage/firstaid - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

firstaid + + + +

+ + + +

Vars

emptywhether the kit starts empty
icon_fullicon state to use when kit is full
+

Var Details

empty + + + + +

+

whether the kit starts empty

icon_full + + + + +

+

icon state to use when kit is full

+ + + diff --git a/obj/item/storage/holster.html b/obj/item/storage/holster.html new file mode 100644 index 0000000000000..e58b4eee3e773 --- /dev/null +++ b/obj/item/storage/holster.html @@ -0,0 +1,71 @@ + + + + + + + /obj/item/storage/holster - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

holster + + + +

+ +

Parent item for all holster type storage items

+ + + + + +

Vars

draw_soundthe sound produced when the special item is drawn
holsterable_allowedthe snowflake item(s) that will update the sprite.
holstered_itemrecords the specific special item currently in the holster
holstered_item_underlayImage that get's underlayed under the sprite of the holster
sheathe_soundthe sound produced when the special item is sheathed

Procs

update_underlaysAdds or removes underlay sprites, checks holstered_item to see which underlay to add
+

Var Details

draw_sound + + + + +

+

the sound produced when the special item is drawn

holsterable_allowed + + + + +

+

the snowflake item(s) that will update the sprite.

holstered_item + + + + +

+

records the specific special item currently in the holster

holstered_item_underlay + + + + +

+

Image that get's underlayed under the sprite of the holster

sheathe_sound + + + + +

+

the sound produced when the special item is sheathed

Proc Details

update_underlays +

+

Adds or removes underlay sprites, checks holstered_item to see which underlay to add

+ + + diff --git a/obj/item/storage/holster/backholster/flamer.html b/obj/item/storage/holster/backholster/flamer.html new file mode 100644 index 0000000000000..deb9c0b0c32b6 --- /dev/null +++ b/obj/item/storage/holster/backholster/flamer.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/storage/holster/backholster/flamer - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

flamer + + + +

+ + +

Vars

tankThe internal fuel tank
+

Var Details

tank + + + + +

+

The internal fuel tank

+ + + diff --git a/obj/item/storage/holster/blade.html b/obj/item/storage/holster/blade.html new file mode 100644 index 0000000000000..9524683f1da0d --- /dev/null +++ b/obj/item/storage/holster/blade.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/storage/holster/blade - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

blade + + + +

+ +

swords

+

Vars

nameused only for storage path purposes
+

Var Details

name + + + + +

+

used only for storage path purposes

+ + + diff --git a/obj/item/storage/kitchen_tray.html b/obj/item/storage/kitchen_tray.html new file mode 100644 index 0000000000000..2eb0fe270f533 --- /dev/null +++ b/obj/item/storage/kitchen_tray.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/storage/kitchen_tray - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

kitchen_tray + + + +

+ + +

Vars

cooldownShield bash cooldown. based on world.time
+

Var Details

cooldown + + + + +

+

Shield bash cooldown. based on world.time

+ + + diff --git a/obj/item/storage/pill_bottle.html b/obj/item/storage/pill_bottle.html new file mode 100644 index 0000000000000..b0496b4e5f892 --- /dev/null +++ b/obj/item/storage/pill_bottle.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/storage/pill_bottle - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

pill_bottle + + + +

+ + + +

Vars

description_overlayShort description in overlay
pill_type_to_fillWhat kind of pill we are filling our pill bottle with
+

Var Details

description_overlay + + + + +

+

Short description in overlay

pill_type_to_fill + + + + +

+

What kind of pill we are filling our pill bottle with

+ + + diff --git a/obj/item/storage/pill_bottle/packet.html b/obj/item/storage/pill_bottle/packet.html new file mode 100644 index 0000000000000..a1923a80dc559 --- /dev/null +++ b/obj/item/storage/pill_bottle/packet.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/storage/pill_bottle/packet - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

packet + + + +

+ + +

Vars

pip_colorColor of the pips on top of the pill packet
+

Var Details

pip_color + + + + +

+

Color of the pips on top of the pill packet

+ + + diff --git a/obj/item/storage/pouch.html b/obj/item/storage/pouch.html new file mode 100644 index 0000000000000..b4526dd2ceab0 --- /dev/null +++ b/obj/item/storage/pouch.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/storage/pouch - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

pouch + + + +

+ + + +

Vars

fill_numberHow much of our fill_type do we want to fill our pouch with, requires fill_type to run
fill_typeWhat item we fill our pouch with, requires fill_number to run
+

Var Details

fill_number + + + + +

+

How much of our fill_type do we want to fill our pouch with, requires fill_type to run

fill_type + + + + +

+

What item we fill our pouch with, requires fill_number to run

+ + + diff --git a/obj/item/storage/pouch/pressurized_reagent_pouch.html b/obj/item/storage/pouch/pressurized_reagent_pouch.html new file mode 100644 index 0000000000000..cf0e163cd5350 --- /dev/null +++ b/obj/item/storage/pouch/pressurized_reagent_pouch.html @@ -0,0 +1,64 @@ + + + + + + + /obj/item/storage/pouch/pressurized_reagent_pouch - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

pressurized_reagent_pouch + + + +

+ + + + + + +

Vars

chemicals_to_fillList of chemicals we fill up our pouch with on Initialize()
innerThe internal container of the pouch. Holds the reagent that you use to refill the connected injector

Procs

fill_autoinjectorFills the hypo that gets stored in the pouch from the internal storage tank. Returns FALSE if you fail to refill your injector
get_display_contentsUsed on examine for properly skilled people to see contents.
remove_canisterAttempts to remove the reagent canister from the pouch. Returns FALSE if there is no canister to remove
+

Var Details

chemicals_to_fill + + + + +

+

List of chemicals we fill up our pouch with on Initialize()

inner + + + + +

+

The internal container of the pouch. Holds the reagent that you use to refill the connected injector

Proc Details

fill_autoinjector +

+

Fills the hypo that gets stored in the pouch from the internal storage tank. Returns FALSE if you fail to refill your injector

get_display_contents +

+

Used on examine for properly skilled people to see contents.

remove_canister +

+

Attempts to remove the reagent canister from the pouch. Returns FALSE if there is no canister to remove

+ + + diff --git a/obj/item/storage/reagent_tank.html b/obj/item/storage/reagent_tank.html new file mode 100644 index 0000000000000..4110d3342af42 --- /dev/null +++ b/obj/item/storage/reagent_tank.html @@ -0,0 +1,50 @@ + + + + + + + /obj/item/storage/reagent_tank - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

reagent_tank + + + +

+ + + + +

Vars

container_flagsProperties relating to reagents for this container; whether you can check if reagents are visible, if it is refillable, etc.
max_volumeMaximum units of reagents this container can hold
starting_reagentsList of reagents this dispenser will start with
+

Var Details

container_flags + + + + +

+

Properties relating to reagents for this container; whether you can check if reagents are visible, if it is refillable, etc.

max_volume + + + + +

+

Maximum units of reagents this container can hold

starting_reagents + + + + +

+

List of reagents this dispenser will start with

+ + + diff --git a/obj/item/supplytablet.html b/obj/item/supplytablet.html new file mode 100644 index 0000000000000..3665ab82be80a --- /dev/null +++ b/obj/item/supplytablet.html @@ -0,0 +1,50 @@ + + + + + + + /obj/item/supplytablet - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

supplytablet + + + +

+ + + + +

Vars

factionFaction of the tablet
home_idId of the home docking port
shuttle_idId of the shuttle controlled
+

Var Details

faction + + + + +

+

Faction of the tablet

home_id + + + + +

+

Id of the home docking port

shuttle_id + + + + +

+

Id of the shuttle controlled

+ + + diff --git a/obj/item/tank_module.html b/obj/item/tank_module.html new file mode 100644 index 0000000000000..99dde978370b9 --- /dev/null +++ b/obj/item/tank_module.html @@ -0,0 +1,79 @@ + + + + + + + /obj/item/tank_module - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

tank_module + + + +

+ +

TANK MODULES

+

Attached to the tank and provide abilities/ passive upgrades

+ + + + + + +

Vars

attached_to_hullBool whether this module is visually attached to the hull or not
is_driver_moduleBool whether this module is a driver module or not
overlayreference to current overlay added to owner
ownervehicle this overlay is attached to
tank_mod_flagsSpecial behavior flags

Procs

on_equipCalled to apply modules to a vehicle
on_unequipcalled to remove this module from its vehicle
+

Var Details

attached_to_hull + + + + +

+

Bool whether this module is visually attached to the hull or not

is_driver_module + + + + +

+

Bool whether this module is a driver module or not

overlay + + + + +

+

reference to current overlay added to owner

owner + + + + +

+

vehicle this overlay is attached to

tank_mod_flags + + + + +

+

Special behavior flags

Proc Details

on_equip +

+

Called to apply modules to a vehicle

on_unequip +

+

called to remove this module from its vehicle

+ + + diff --git a/obj/item/tank_module/ability.html b/obj/item/tank_module/ability.html new file mode 100644 index 0000000000000..97c0f47a1ef54 --- /dev/null +++ b/obj/item/tank_module/ability.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/tank_module/ability - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

ability + + + +

+ + + +

Vars

ability_to_granttypepaths for the ability we want to grant
flag_controllerif given, a single flag of who we want this ability to be granted to
+

Var Details

ability_to_grant + + + + +

+

typepaths for the ability we want to grant

flag_controller + + + + +

+

if given, a single flag of who we want this ability to be granted to

+ + + diff --git a/obj/item/tank_module/interior.html b/obj/item/tank_module/interior.html new file mode 100644 index 0000000000000..46ca80f918fe3 --- /dev/null +++ b/obj/item/tank_module/interior.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/tank_module/interior - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

interior + + + +

+ + + +

Vars

interior_typepathtypepath we want to be using for interiors
set_max_occupantsmax occupants to set when adding this module
+

Var Details

interior_typepath + + + + +

+

typepath we want to be using for interiors

set_max_occupants + + + + +

+

max occupants to set when adding this module

+ + + diff --git a/obj/item/teleporter_kit.html b/obj/item/teleporter_kit.html new file mode 100644 index 0000000000000..164af424eed98 --- /dev/null +++ b/obj/item/teleporter_kit.html @@ -0,0 +1,64 @@ + + + + + + + /obj/item/teleporter_kit - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

teleporter_kit + + + +

+ + + + + + +

Vars

cellThe optional cell to power the teleporter if off the grid
linked_teleporterThe linked teleporter
self_tele_tagReferences to the number of the teleporter.
tele_tagTag for teleporters number. Exists for fluff reasons. Shared variable.

Procs

set_linked_teleporterLink the two teleporters
+

Var Details

cell + + + + +

+

The optional cell to power the teleporter if off the grid

linked_teleporter + + + + +

+

The linked teleporter

self_tele_tag + + + + +

+

References to the number of the teleporter.

tele_tag + + + + +

+

Tag for teleporters number. Exists for fluff reasons. Shared variable.

Proc Details

set_linked_teleporter +

+

Link the two teleporters

+ + + diff --git a/obj/item/tool/handheld_charger.html b/obj/item/tool/handheld_charger.html new file mode 100644 index 0000000000000..559fa3ebe37e8 --- /dev/null +++ b/obj/item/tool/handheld_charger.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/tool/handheld_charger - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

handheld_charger + + + +

+ + + +

Vars

cellThis is the cell we ar charging
rechargingAre we currently recharging something.
+

Var Details

cell + + + + +

+

This is the cell we ar charging

recharging + + + + +

+

Are we currently recharging something.

+ + + diff --git a/obj/item/tool/kitchen/utensil.html b/obj/item/tool/kitchen/utensil.html new file mode 100644 index 0000000000000..023a7f000502f --- /dev/null +++ b/obj/item/tool/kitchen/utensil.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/tool/kitchen/utensil - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

utensil + + + +

+ + +

Vars

loadedIs there something on this utensil?
+

Var Details

loaded + + + + +

+

Is there something on this utensil?

+ + + diff --git a/obj/item/tool/multitool.html b/obj/item/tool/multitool.html new file mode 100644 index 0000000000000..5bef65e3a44f4 --- /dev/null +++ b/obj/item/tool/multitool.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/tool/multitool - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

multitool + + + +

+ +

Multitool -- A multitool is used for hacking electronic devices. +TO-DO -- Using it as a power measurement tool for cables etc. Nannek.

+

Procs

remove_apc_highlightRemoves the highlight from the APC.

Proc Details

remove_apc_highlight +

+

Removes the highlight from the APC.

+ + + diff --git a/obj/item/tool/research.html b/obj/item/tool/research.html new file mode 100644 index 0000000000000..b3cf623a11ebc --- /dev/null +++ b/obj/item/tool/research.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/tool/research - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

research + + + +

+ + + +

Vars

skill_thresholdSkill level needed to use the tool
skill_typeSkill type needed to use the tool
+

Var Details

skill_threshold + + + + +

+

Skill level needed to use the tool

skill_type + + + + +

+

Skill type needed to use the tool

+ + + diff --git a/obj/item/tool/screwdriver.html b/obj/item/tool/screwdriver.html new file mode 100644 index 0000000000000..2f6101af45670 --- /dev/null +++ b/obj/item/tool/screwdriver.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/tool/screwdriver - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

screwdriver + + + +

+ + + +

Vars

random_colorIf the item should be assigned a random color
screwdriver_colorsList of possible random colors
+

Var Details

random_color + + + + +

+

If the item should be assigned a random color

screwdriver_colors + + + + +

+

List of possible random colors

+ + + diff --git a/obj/item/toy/deck.html b/obj/item/toy/deck.html new file mode 100644 index 0000000000000..38ec28c9f2e44 --- /dev/null +++ b/obj/item/toy/deck.html @@ -0,0 +1,35 @@ + + + + + + + /obj/item/toy/deck - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

deck + + + +

+ + +

Procs

drawTakes a card from the deck, and (if possible) puts it in the user's hand

Proc Details

draw +

+

Takes a card from the deck, and (if possible) puts it in the user's hand

+ + + diff --git a/obj/item/toy/handcard.html b/obj/item/toy/handcard.html new file mode 100644 index 0000000000000..78c05732279ce --- /dev/null +++ b/obj/item/toy/handcard.html @@ -0,0 +1,50 @@ + + + + + + + /obj/item/toy/handcard - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

handcard + + + +

+ + + + +

Vars

last_directionThe last direction the person who dropped us was facing

Procs

discardTakes a selected card, and puts it down, face-up, in front
discard_cardTakes a selected card, and puts it down, face-up, in front
+

Var Details

last_direction + + + + +

+

The last direction the person who dropped us was facing

Proc Details

discard +

+

Takes a selected card, and puts it down, face-up, in front

discard_card +

+

Takes a selected card, and puts it down, face-up, in front

+ + + diff --git a/obj/item/toy/plush/gnome/living.html b/obj/item/toy/plush/gnome/living.html new file mode 100644 index 0000000000000..b4593fd0ac5de --- /dev/null +++ b/obj/item/toy/plush/gnome/living.html @@ -0,0 +1,134 @@ + + + + + + + /obj/item/toy/plush/gnome/living - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

living + + + +

+ + + + + + + + + + + + + + + + +

Vars

gnome_act_timerhold an int that determines what the interval a gnome acts
gnome_move_rangehow far the gnome should choose for teleportation purposes
gnome_originoriginal gnome spawn location, used as an emergency backup
max_triessanity cap to prevent gnome spending too much time calculating possible teleport areas, it's theoretically possible to store the gnome in an impossible area so we need to check this
pipe_modeused for determining if a gnome is in the pipe network
pipe_mode_chancehow likely are we to enter a pipe
possible_mobslist for keeping track of the mobs around us
targetturflist for keeping track of items in current gnome turf
teleport_retrieshow many failed teleports we've done

Procs

do_flavor_actionsvarious flavor actions
get_teleport_prereqsvalidate that the turf we're attempting to teleport to is not dense in space etc
gnome_actroot proc for handling gnome AI routines
handle_ladderstargetturf stores our position at the start of routine in all. teleport_routine uses it as a baseline for determining where to find teleport locations also
handle_pipe_modehandles gnome transportation using pipes
teleport_routinehandles gnome teleportation when not being observed by players
+

Var Details

gnome_act_timer + + + + +

+

hold an int that determines what the interval a gnome acts

gnome_move_range + + + + +

+

how far the gnome should choose for teleportation purposes

gnome_origin + + + + +

+

original gnome spawn location, used as an emergency backup

max_tries + + + + +

+

sanity cap to prevent gnome spending too much time calculating possible teleport areas, it's theoretically possible to store the gnome in an impossible area so we need to check this

pipe_mode + + + + +

+

used for determining if a gnome is in the pipe network

pipe_mode_chance + + + + +

+

how likely are we to enter a pipe

possible_mobs + + + + +

+

list for keeping track of the mobs around us

targetturf + + + + +

+

list for keeping track of items in current gnome turf

teleport_retries + + + + +

+

how many failed teleports we've done

Proc Details

do_flavor_actions +

+

various flavor actions

get_teleport_prereqs +

+

validate that the turf we're attempting to teleport to is not dense in space etc

gnome_act +

+

root proc for handling gnome AI routines

handle_ladders +

+

targetturf stores our position at the start of routine in all. teleport_routine uses it as a baseline for determining where to find teleport locations also

handle_pipe_mode +

+

handles gnome transportation using pipes

teleport_routine +

+

handles gnome teleportation when not being observed by players

+ + + diff --git a/obj/item/uav_turret.html b/obj/item/uav_turret.html new file mode 100644 index 0000000000000..1d7b293916bb5 --- /dev/null +++ b/obj/item/uav_turret.html @@ -0,0 +1,78 @@ + + + + + + + /obj/item/uav_turret - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

uav_turret + + + +

+ + + + + + + + +

Vars

ammo_typeAmmo typepath we use when attached
current_roundsAmount of projectiles in this turret
fire_delayThe fire rate of this turret in byond tick
magazine_typeTypepath of the ammo to reload it.
max_roundsThe max amount of projectiles in this turret
turret_patternThis var must match the unmanned vehicles turret_pattern then be added
turret_typeTurret type, used for assigning what we do on clicks
+

Var Details

ammo_type + + + + +

+

Ammo typepath we use when attached

current_rounds + + + + +

+

Amount of projectiles in this turret

fire_delay + + + + +

+

The fire rate of this turret in byond tick

magazine_type + + + + +

+

Typepath of the ammo to reload it.

max_rounds + + + + +

+

The max amount of projectiles in this turret

turret_pattern + + + + +

+

This var must match the unmanned vehicles turret_pattern then be added

turret_type + + + + +

+

Turret type, used for assigning what we do on clicks

+ + + diff --git a/obj/item/udder.html b/obj/item/udder.html new file mode 100644 index 0000000000000..e90b469017f90 --- /dev/null +++ b/obj/item/udder.html @@ -0,0 +1,76 @@ + + + + + + + /obj/item/udder - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

udder item + + + +

+ +

Abstract item that is held in nullspace and manages reagents. Created by udder component. +While perhaps reagents created by udder component COULD be managed in the mob, it would be somewhat finnicky and I actually like the abstract udders.

+ + + + + +

Vars

on_generate_callbackoptional proc to callback to when the udder generates milk
sizehow much the udder holds
udder_mobmob that has the udder component

Procs

generate
initial_conditions
milk
+

Var Details

on_generate_callback + + + + +

+

optional proc to callback to when the udder generates milk

size + + + + +

+

how much the udder holds

udder_mob + + + + +

+

mob that has the udder component

Proc Details

generate +

+ generate +

Proc called every 2 seconds from SSMobs to add whatever reagent the udder is generating.

initial_conditions +

+ initial_conditions +

Proc called on creation separate from the reagent datum creation to allow for signalled milk generation instead of processing milk generation +also useful for changing initial amounts in reagent holder (cows start with milk, gutlunches start empty)

milk +

+ milk +

Proc called from attacking the component parent with the correct item, moves reagents into the glass basically.

+ + + diff --git a/obj/item/unmanned_vehicle_remote.html b/obj/item/unmanned_vehicle_remote.html new file mode 100644 index 0000000000000..27eb66de0bd2e --- /dev/null +++ b/obj/item/unmanned_vehicle_remote.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/unmanned_vehicle_remote - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

unmanned_vehicle_remote + + + +

+ + + +

Vars

vehiclereference to the unmanned vehicle that we're connected to or remote control

Procs

clear_vehicleWrapper to clear reference on target vehicle deletion
+

Var Details

vehicle + + + + +

+

reference to the unmanned vehicle that we're connected to or remote control

Proc Details

clear_vehicle +

+

Wrapper to clear reference on target vehicle deletion

+ + + diff --git a/obj/item/vehicle_module.html b/obj/item/vehicle_module.html new file mode 100644 index 0000000000000..3bed92ff7147b --- /dev/null +++ b/obj/item/vehicle_module.html @@ -0,0 +1,197 @@ + + + + + + + /obj/item/vehicle_module - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

vehicle_module + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

action_icondmi for the action button
action_icon_stateicon_state for the action button
attach_delayTime it takes to attach.
attach_features_flagsBitfield flags of various features.
attach_iconIcon sheet of the attachment overlays
attachments_allowedAllowed attachment types
attachments_by_slotList of slots this attachment has.
can_attachProc typepath that is called when this is item is being attached to something. Returns TRUE if it can attach.
detach_delayTime it takes to detach.
on_attachProc typepath that is called when this is attached to something.
on_detachProc typepath that is called when this is detached from something.
parentReference to parent object.
pixel_shift_xPixel shift for the item overlay on the X axis.
pixel_shift_yPixel shift for the item overlay on the Y axis.
should_use_obj_appeareanceWhether the obj appearance for this attachment should be used for the action buttno
slotSlot the attachment is able to occupy.
starting_attachmentsStarting attachments that are spawned with this.
toggle_signalThe signal for this module if it can toggled

Procs

activateCalled on ui_action_click. Used for activating the module.
can_attachCalled before a module is attached.
on_attachCalled when the module is added to the armor.
on_buckleAdds actions if the mob has the correct flag
on_detachCalled when the module is removed from the armor.
on_unbuckleRemoves actions if the mob had them
+

Var Details

action_icon + + + + +

+

dmi for the action button

action_icon_state + + + + +

+

icon_state for the action button

attach_delay + + + + +

+

Time it takes to attach.

attach_features_flags + + + + +

+

Bitfield flags of various features.

attach_icon + + + + +

+

Icon sheet of the attachment overlays

attachments_allowed + + + + +

+

Allowed attachment types

attachments_by_slot + + + + +

+

List of slots this attachment has.

can_attach + + + + +

+

Proc typepath that is called when this is item is being attached to something. Returns TRUE if it can attach.

detach_delay + + + + +

+

Time it takes to detach.

on_attach + + + + +

+

Proc typepath that is called when this is attached to something.

on_detach + + + + +

+

Proc typepath that is called when this is detached from something.

parent + + + + +

+

Reference to parent object.

pixel_shift_x + + + + +

+

Pixel shift for the item overlay on the X axis.

pixel_shift_y + + + + +

+

Pixel shift for the item overlay on the Y axis.

should_use_obj_appeareance + + + + +

+

Whether the obj appearance for this attachment should be used for the action buttno

slot + + + + +

+

Slot the attachment is able to occupy.

starting_attachments + + + + +

+

Starting attachments that are spawned with this.

toggle_signal + + + + +

+

The signal for this module if it can toggled

Proc Details

activate +

+

Called on ui_action_click. Used for activating the module.

can_attach +

+

Called before a module is attached.

on_attach +

+

Called when the module is added to the armor.

on_buckle +

+

Adds actions if the mob has the correct flag

on_detach +

+

Called when the module is removed from the armor.

on_unbuckle +

+

Removes actions if the mob had them

+ + + diff --git a/obj/item/vehicle_module/mounted_gun.html b/obj/item/vehicle_module/mounted_gun.html new file mode 100644 index 0000000000000..cfd4b83eb0ab9 --- /dev/null +++ b/obj/item/vehicle_module/mounted_gun.html @@ -0,0 +1,50 @@ + + + + + + + /obj/item/vehicle_module/mounted_gun - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

mounted_gun + + + +

+ + + + +

Vars

firing_angleFiring angle for the mounted weapon
mounted_gunThe gun mounted on a vehicle. Initial value is the type to use

Procs

on_weapon_dropHandles the weapon being dropped. The only way this should happen is if they unbuckle, and this makes sure they can't just take the gun and run off with it.
+

Var Details

firing_angle + + + + +

+

Firing angle for the mounted weapon

mounted_gun + + + + +

+

The gun mounted on a vehicle. Initial value is the type to use

Proc Details

on_weapon_drop +

+

Handles the weapon being dropped. The only way this should happen is if they unbuckle, and this makes sure they can't just take the gun and run off with it.

+ + + diff --git a/obj/item/vehicle_module/storage.html b/obj/item/vehicle_module/storage.html new file mode 100644 index 0000000000000..6794a330efe2f --- /dev/null +++ b/obj/item/vehicle_module/storage.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/vehicle_module/storage - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

storage + + + +

+ + + +

Vars

storage_typeDetermines what subtype of storage is on our item, see datums\storage\subtypes

Procs

PopulateContentsUse this to fill your storage with items. USE THIS INSTEAD OF NEW/INIT
+

Var Details

storage_type + + + + +

+

Determines what subtype of storage is on our item, see datums\storage\subtypes

Proc Details

PopulateContents +

+

Use this to fill your storage with items. USE THIS INSTEAD OF NEW/INIT

+ + + diff --git a/obj/item/weapon/energy/sword.html b/obj/item/weapon/energy/sword.html new file mode 100644 index 0000000000000..b9de0dc55842b --- /dev/null +++ b/obj/item/weapon/energy/sword.html @@ -0,0 +1,64 @@ + + + + + + + /obj/item/weapon/energy/sword - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

sword + + + +

+ + + + + + +

Vars

active_forceForce of the weapon when activated
active_penetrationPenetration when activated
special_attackSpecial attack action granted to users with the right trait
sword_colorSword color, if applicable

Procs

switch_stateHandles all the state switch stuff
+

Var Details

active_force + + + + +

+

Force of the weapon when activated

active_penetration + + + + +

+

Penetration when activated

special_attack + + + + +

+

Special attack action granted to users with the right trait

sword_color + + + + +

+

Sword color, if applicable

Proc Details

switch_state +

+

Handles all the state switch stuff

+ + + diff --git a/obj/item/weapon/gun.html b/obj/item/weapon/gun.html new file mode 100644 index 0000000000000..74a4167a845b8 --- /dev/null +++ b/obj/item/weapon/gun.html @@ -0,0 +1,1398 @@ + + + + + + + /obj/item/weapon/gun - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

gun + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

accuracy_multMultiplier. Increased and decreased through attachments. Multiplies the projectile's accuracy by this number.
accuracy_mult_unwieldedsame vars as above but for unwielded firing.
active_attachableThis is only not null when a weapon attachment is activated. All procs of firing get passed to this when it is not null.
aim_fire_delayDetermines how fire delay is changed when aim mode is active
aim_fire_delay_modsHolds the values modifying aim_fire_delay
aim_slowdownSlowdown for wielding
aim_speed_modifierDetermines character slowdown from aim mode. Default is 66%
aim_timeTime to enter aim mode, generally one second.
akimbo_additional_delayIf fire delay is 1 second, and akimbo_additional_delay is 0.5, then you'll have to wait 1 second * 0.5 to fire the second gun
akimbo_scatter_modmult to scatter when firing akimbo
allowed_ammo_typesList of allowed specific types. If trying to reload with something in this list it will succeed. This is mainly for use in internal magazine weapons or scenarios where you do not want to inclue a whole subtype.
ammo_datum_typeStored ammo datum. I changed the var name because it was really annoying to find specific cases of 'ammo' in a file full of guns and ammunition.
ammo_diffwhat ammo to use for overcharge
ammo_level_iconWhether the gun has ammo level overlays for its icon, mainly for eguns
ammo_per_shotHow much ammo consumed per shot; normally 1.
attach_delayTime it takes to attach src to a master gun.
attach_features_flagsFlags for attachment functions.
attachable_allowedList of allowed attachments, IT MUST INCLUDE THE STARTING ATTACHMENT TYPES OR THEY WILL NOT ATTACH.
attachable_offsetList of offsets to make attachment overlays not look wonky.
attachment_overlaysImage list of attachments overlays.
attachments_by_slotList of slots a gun can have.
autoburst_delaywhen autobursting, this is the total amount of time before the weapon fires again. If no amount is specified, defaults to fire_delay + extra_delay
base_gun_iconthe default gun icon_state. change to reskin the gun
burst_accuracy_bonusAdditive number added to accuracy_mult.
burst_amountHow many shots can the weapon shoot in burst? Anything less than 2 and you cannot toggle burst.
burst_delayThe delay in between shots. Lower = less delay = faster.
burst_scatter_multMultiplier. Increases or decreases how much bonus scatter is added when burst firing, based off burst size
casings_to_ejectAmount of casings to eject for guns that toggle like revolvers and dbs.
chamber_closed_messageMessage for when the chamber is closed.
chamber_itemsList of stored ammunition items.
chamber_opened_messageMessage for when the chamber is opened.
charge_costhow much energy is consumed per shot.
cock_animationAnimation of the gun Cocking.
cock_delayDelay between cocking the gun.
cock_locked_messageMessage for a pump lock.
cock_message_delayDelay between given cocked_message.
cocked_messageMessage given to user on cocking.
cocked_soundSound of cocking the gun.
cool_amountheat reduction per second
current_chamber_positionCurrent selected position of chamber_items, this will determin the next item to be inserted into the chamber. If the gun uses magazines it will be the position of the magazine to be used. If the gun cycles (revolvers), this number will increase by one everytime it cycles until it reaches max_chamber_items, then it will revert back to one.
damage_falloff_multSame as above, for damage bleed (falloff)
damage_multSame as above, for damage.
default_ammo_typeDefault magazine to spawn with.
deploy_timeIf the gun is deployable, the time it takes for the weapon to deploy.
deployable_itemIf the gun has a deployed item..
deployed_scatter_changeIf the gun is deployed, change the scatter amount by this number. Negative reduces scatter, positive adds.
detach_delayTime it takes to detach src to a master gun.
dry_fire_soundSound for the gun firing when empty.
dual_wieldIf this gun is in inactive hands and shooting in akimbo
empty_soundSound played when the gun auto ejects its magazine.
extra_delayWhen burst-firing, this number is extra time before the weapon can fire again. Depends on number of rounds fired.
fire_animationState for a fire animation if the gun has any
fire_delayFor regular shots, how long to wait before firing again.
fire_rattleDoes our gun have a unique sound when running out of ammo? If so, use this instead of pitch shifting.
fire_soundSound of firing the gun.
general_codex_keyKey for the codex
gun_accuracy_modAdditive to projectile accuracy, after gun_accuracy_mult
gun_accuracy_multProjectile accuracy is multiplied by the number
gun_features_flagsInnate carateristics of that gun
gun_fire_angleIf specified, the gun can only fire in a cone forwards with an angle of this var
gun_firemodeCurrent selected firemode of the gun.
gun_firemode_listList of allowed firemodes.
gun_scatterThe actual scatter value of the fired projectile
gun_skill_categorySkill used to operate this gun.
gun_userThe mob holding the gun
gunattachmentthe current gun attachment, used for attachment aim mode
hand_reload_soundSound for reloading by handfuls
heat_amountheat on this gun. at over 100 heat stops you from firing and goes on cooldown
heat_meterimage we create to keep track of heat
heat_per_fireheat that we add every successful fire()
icon_overlay_x_offsetWhether the icon_state overlay is offset in the x axis
icon_overlay_y_offsetWhether the icon_state overlay is offset in the Y axis
iff_marine_damage_falloffModifies projectile damage by a % when a marine gets passed, but not hit
in_chamberCurrent object slated for firing. Magazines/Handfuls will make this a projectile. Internal magazines that aren't handfuls will have this be the object in the gun.
knockdown_thresholdDamage threshold for whether a turret will be knocked down.
last_cock_messageWorld.time of the last cocked_message.
last_cockedWorld.time of the last cock.
last_firedWorld.time of last gun firing.
master_gunGun reference if src is an attachment and is attached to a gun. This will be the gun that src is attached to.
max_chamber_itemsMaximum allowed chamber items. If the gun has AMMO_RECIEVER_TOGGLES_OPEN then the total amount in the gun will be the one here. If not, the gun will be able to contain this number + the chamber. If this is zero and doesnt use magazines, reloading will go directly into the chamber.
max_roundsIf the gun uses magazines, it is the max rounds of the magazine(s). If it has an internal chamber, it is max_chamber_items.
max_scatterMaximum scatter
max_scatter_unwieldedMaximum scatter when wielded
min_scatterMinimum scatter
min_scatter_unwieldedMinimum scatter when wielded
movement_acc_penalty_multMultiplier. Increased and decreased through attachments. Multiplies the accuracy/scatter penalty of the projectile when firing while moving.
muzzle_flashEffect for the muzzle flash of the gun.
muzzle_flash_colorColor of the muzzle flash effect.
muzzle_flash_lumBrightness of the muzzle flash effect.
muzzleflash_iconstateIcon state of the muzzle flash effect.
opened_soundSounds of opening the guns reciever. (DBs, Martinis opening.)
overchargeIn overcharge mode?
overheat_multipliermultiplier on cool amount to determine overheat time
overheat_timertracks overheat timer ref
pixel_shift_xPixel shift on the X Axis for the attached overlay.
pixel_shift_yPixel shift on the Y Axis for the attached overlay.
placed_overlay_iconstateIcon state used for an added overlay for a sentry. Currently only used in Build-A-Sentry.
reciever_flagsFlags to determin guns ammo/operation.
recoilScreen shake when the weapon is fired while wielded.
recoil_backtime_multipliera multiplier of the duration the recoil takes to go back to normal view, this is (recoil*recoil_backtime_multiplier)+1
recoil_deviationthis is how much deviation the gun recoil can have, recoil pushes the screen towards the reverse angle you shot + some deviation which this is the max.
recoil_unwieldedScreen shake when the weapon is fired while unwielded.
reload_soundSound played for reloading.
roundsStored sum of magazine rounds / chamber contents. This is used for anything needing ammo. It is updated on reload/unload/fire
rounds_per_shotIf the gun uses a magazine, the gun will subtract this from the magazine every fire.
scatterHow much the bullet currently scattered when last fired.
scatter_decayHow much scatter decays every decisecond
scatter_decay_unwieldedHow much scatter decays every decisecond
scatter_increaseHow much scatter increases per shot
scatter_increase_unwieldedHow much scatter increases per shot when wielded
scatter_unwieldedHow much the bullet scatters when fired while unwielded.
sentry_iff_signalIFF signal for sentries. If it is set here it will be this signal forever. If null the IFF signal will be dependant on the deployer.
shell_eject_animationAnimation for opening the chamber of a gun.
shell_speed_modModifies the speed of projectiles fired.
shots_firedHow many bullets the gun fired while bursting/auto firing
slotSlot the gun fits into.
starting_attachment_typesThe attachments this gun starts with on Init
targetThe atom targeted by the user
turret_flagsFlags that the deployed sentry uses upon deployment.
turret_rangeRange of deployed turret
type_of_casingsTypes of casing it ejects.
undeploy_timeIf the gun is deployable, the time it takes for the weapon to undeploy. Defaults to deploy time
unload_soundSound of unloading the gun.
wield_delayHow long between wielding and firing in tenths of seconds
wield_delay_modHow long ADS takes (time before firing)
wield_penaltyExtra wield delay for untrained operators
wield_timeStoring value for above
windup_checkedUsed if a weapon need windup before firing
windup_delayDelay for the gun winding up before firing.
windup_soundSound played during windup.

Procs

FireWrapper proc to complete the whole firing process.
able_to_fireChecks if the gun can be fired
activateThis activates the weapon for use.
activate_attachmentGets the attachents by slot and activates them.
activate_muzzle_attachmentSignal handler to activate the muzzle attachement of that gun if it's in our active hand
activate_rail_attachmentif your attached weapon has aim mode, stops it from aimming +if your attached weapon has aim mode, makes it aim +Signal handler to activate the rail attachement of that gun if it's in our active hand
activate_underrail_attachmentSignal handler to activate the underrail attachement of that gun if it's in our active hand
add_aim_mode_fire_delayAdds an aim_fire_delay modificatio value
adjust_current_roundsAdds or subtracts rounds from the magazine.
apply_gun_modifiersApplies gun modifiers to a projectile before firing
can_attachCalled when the attachment is trying to be attached. If the attachment is allowed to go through, return TRUE.
change_targetUpdate the target if you draged your mouse
clean_gun_userNull out gun user to prevent hard del
clean_targetSet the target to it's turf, so we keep shooting even when it was qdeled
complete_overheatcalled by a timer after overheat finishes
cycleCycles the gun, handles ammunition draw
do_fireActually fires the gun, sets up the projectile and fires it.
do_toggle_firemodeActually does the toggling of the fire mode
drop_connected_magChecks to see if the current object in chamber is a worn magazine and if so unloads it
examine_ammo_countGives the user a description of the ammunition remaining, as well as other information pertaining to reloading/ammo.
fill_gunFills the gun with ammunition. This is not inlined with Initialize because it could be used outside and needs to sleep.
fire_after_autonomous_windupFire after a fake windup
get_ammoSets and returns the guns ammo type from the current magazine.
get_ammo_listreturns ammo string icon_states to display in the ammo counter of the HUD. list(normal_state, empty_state)
get_ammo_objectGets a projectile to fire from the magazines ammo type.
get_current_roundsGetter to draw current rounds. Overwrite if the magazine is not a /ammo_magazine
get_display_ammo_countreturns ammo count to display in the ammo counter of the HUD
get_magazine_default_ammoGetter to draw default ammo type. If the mag has none, overwrite and return null.
get_magazine_features_flagsGetter to draw magazine_flags features. If the mag has none, overwrite and return null.
get_magazine_overlayGetter to draw the magazine overlay on the gun. If the mag has none, overwrite and return null.
get_magazine_reload_delayGetter to draw reload delay. If the mag has none, overwrite and return null.
get_max_roundsGetter to draw max rounds.
gun_on_cooldownChecks if the gun is on cooldown
has_attachmentChecks the gun to see if it has an attachment of type attachment_type
make_casingGenerates a casing
on_attachThis is called when an attachment gun (src) attaches to a gun.
on_attachment_attachCalled when an attachment is attached to this gun (src).
on_attachment_detachCalled when an attachment is detached from this gun (src).
on_detachThis is called when an attachment gun (src) detaches from a gun.
on_unzoomHandles unzoom behavior
play_fire_soundPlays firing sound when firing
recalculate_aim_mode_fire_delayCalculates aim_fire_delay, can't be below 0
reloadHandles reloading. Called on attack_by +Reload works in one of three ways, depending on the guns flags. +First, if the gun is set to magazines, it will do checks based on the magazines vars and if it succeeds it will load the magazine. +If the gun uses handfuls, the gun will create or take a handful with one round and insert those. +If the gun does not use handfuls, or magazines. It will merely fill the gun with whatever item is inserted.
remove_aim_mode_fire_delayRemoves an aim_fire_delay modificatio value
remove_muzzle_flashRemoves muzzle flash viscontents
reset_fireClean all references
reset_light_rangeTurns off gun fire lighting
set_burstingInform the gun if he is currently bursting, to prevent reloading
set_gun_userSet the user in argument as gun_user
set_targetSet the target and take care of hard delete
setup_bullet_accuracySets the projectile accuracy and scatter
simulate_recoilGenerates screenshake if the gun has recoil
start_fireCheck if the gun can fire and add it to bucket auto_fire system if needed, or just fire the gun if not
stop_fireReset variables used in firing and remove the gun from the autofire system
tactical_reloadThis performs a tactical reload with src using new_magazine to load the gun.
toggle_auto_ejectToggles weapons ejecting their magazines when they're empty. This one is one a gun level and is used via right clicking the gun.
toggle_auto_eject_keybindSignal handler to toggle automatic magazine ejection
toggle_firemodeA verb in the right click context menu of the weapon for toggling firemode
toggle_gun_safety_keybindSignal handler to toggle the safety of the gun
unique_actionPerforms the unique action. Can be overwritten. +This does a few things, depending on the flags of the gun. +If the gun doesn't Toggle it will perform a cycle, if it requires operation the gun will check the cycle against the cock delays. +If the gun does toggle, Unique action will open the chamber. (Open the barrel on a DB, or the cylinder on a revolver.)
unloadHandles unloading. Called on attackhand. Draws the chamber_items out first, then in_chamber
unload_gunSignal handler to unload that gun if it's in our active hand
update_ammo_countUpdates the guns rounds and max_rounds vars based on the contents of chamber_items
+

Var Details

accuracy_mult + + + + +

+

Multiplier. Increased and decreased through attachments. Multiplies the projectile's accuracy by this number.

accuracy_mult_unwielded + + + + +

+

same vars as above but for unwielded firing.

active_attachable + + + + +

+

This is only not null when a weapon attachment is activated. All procs of firing get passed to this when it is not null.

aim_fire_delay + + + + +

+

Determines how fire delay is changed when aim mode is active

aim_fire_delay_mods + + + + +

+

Holds the values modifying aim_fire_delay

aim_slowdown + + + + +

+

Slowdown for wielding

aim_speed_modifier + + + + +

+

Determines character slowdown from aim mode. Default is 66%

aim_time + + + + +

+

Time to enter aim mode, generally one second.

akimbo_additional_delay + + + + +

+

If fire delay is 1 second, and akimbo_additional_delay is 0.5, then you'll have to wait 1 second * 0.5 to fire the second gun

akimbo_scatter_mod + + + + +

+

mult to scatter when firing akimbo

allowed_ammo_types + + + + +

+

List of allowed specific types. If trying to reload with something in this list it will succeed. This is mainly for use in internal magazine weapons or scenarios where you do not want to inclue a whole subtype.

ammo_datum_type + + + + +

+

Stored ammo datum. I changed the var name because it was really annoying to find specific cases of 'ammo' in a file full of guns and ammunition.

ammo_diff + + + + +

+

what ammo to use for overcharge

ammo_level_icon + + + + +

+

Whether the gun has ammo level overlays for its icon, mainly for eguns

ammo_per_shot + + + + +

+

How much ammo consumed per shot; normally 1.

attach_delay + + + + +

+

Time it takes to attach src to a master gun.

attach_features_flags + + + + +

+

Flags for attachment functions.

attachable_allowed + + + + +

+

List of allowed attachments, IT MUST INCLUDE THE STARTING ATTACHMENT TYPES OR THEY WILL NOT ATTACH.

attachable_offset + + + + +

+

List of offsets to make attachment overlays not look wonky.

attachment_overlays + + + + +

+

Image list of attachments overlays.

attachments_by_slot + + + + +

+

List of slots a gun can have.

autoburst_delay + + + + +

+

when autobursting, this is the total amount of time before the weapon fires again. If no amount is specified, defaults to fire_delay + extra_delay

base_gun_icon + + + + +

+

the default gun icon_state. change to reskin the gun

burst_accuracy_bonus + + + + +

+

Additive number added to accuracy_mult.

burst_amount + + + + +

+

How many shots can the weapon shoot in burst? Anything less than 2 and you cannot toggle burst.

burst_delay + + + + +

+

The delay in between shots. Lower = less delay = faster.

burst_scatter_mult + + + + +

+

Multiplier. Increases or decreases how much bonus scatter is added when burst firing, based off burst size

casings_to_eject + + + + +

+

Amount of casings to eject for guns that toggle like revolvers and dbs.

chamber_closed_message + + + + +

+

Message for when the chamber is closed.

chamber_items + + + + +

+

List of stored ammunition items.

chamber_opened_message + + + + +

+

Message for when the chamber is opened.

charge_cost + + + + +

+

how much energy is consumed per shot.

cock_animation + + + + +

+

Animation of the gun Cocking.

cock_delay + + + + +

+

Delay between cocking the gun.

cock_locked_message + + + + +

+

Message for a pump lock.

cock_message_delay + + + + +

+

Delay between given cocked_message.

cocked_message + + + + +

+

Message given to user on cocking.

cocked_sound + + + + +

+

Sound of cocking the gun.

cool_amount + + + + +

+

heat reduction per second

current_chamber_position + + + + +

+

Current selected position of chamber_items, this will determin the next item to be inserted into the chamber. If the gun uses magazines it will be the position of the magazine to be used. If the gun cycles (revolvers), this number will increase by one everytime it cycles until it reaches max_chamber_items, then it will revert back to one.

damage_falloff_mult + + + + +

+

Same as above, for damage bleed (falloff)

damage_mult + + + + +

+

Same as above, for damage.

default_ammo_type + + + + +

+

Default magazine to spawn with.

deploy_time + + + + +

+

If the gun is deployable, the time it takes for the weapon to deploy.

deployable_item + + + + +

+

If the gun has a deployed item..

deployed_scatter_change + + + + +

+

If the gun is deployed, change the scatter amount by this number. Negative reduces scatter, positive adds.

detach_delay + + + + +

+

Time it takes to detach src to a master gun.

dry_fire_sound + + + + +

+

Sound for the gun firing when empty.

dual_wield + + + + +

+

If this gun is in inactive hands and shooting in akimbo

empty_sound + + + + +

+

Sound played when the gun auto ejects its magazine.

extra_delay + + + + +

+

When burst-firing, this number is extra time before the weapon can fire again. Depends on number of rounds fired.

fire_animation + + + + +

+

State for a fire animation if the gun has any

fire_delay + + + + +

+

For regular shots, how long to wait before firing again.

fire_rattle + + + + +

+

Does our gun have a unique sound when running out of ammo? If so, use this instead of pitch shifting.

fire_sound + + + + +

+

Sound of firing the gun.

general_codex_key + + + + +

+

Key for the codex

gun_accuracy_mod + + + + +

+

Additive to projectile accuracy, after gun_accuracy_mult

gun_accuracy_mult + + + + +

+

Projectile accuracy is multiplied by the number

gun_features_flags + + + + +

+

Innate carateristics of that gun

gun_fire_angle + + + + +

+

If specified, the gun can only fire in a cone forwards with an angle of this var

gun_firemode + + + + +

+

Current selected firemode of the gun.

gun_firemode_list + + + + +

+

List of allowed firemodes.

gun_scatter + + + + +

+

The actual scatter value of the fired projectile

gun_skill_category + + + + +

+

Skill used to operate this gun.

gun_user + + + + +

+

The mob holding the gun

gunattachment + + + + +

+

the current gun attachment, used for attachment aim mode

hand_reload_sound + + + + +

+

Sound for reloading by handfuls

heat_amount + + + + +

+

heat on this gun. at over 100 heat stops you from firing and goes on cooldown

heat_meter + + + + +

+

image we create to keep track of heat

heat_per_fire + + + + +

+

heat that we add every successful fire()

icon_overlay_x_offset + + + + +

+

Whether the icon_state overlay is offset in the x axis

icon_overlay_y_offset + + + + +

+

Whether the icon_state overlay is offset in the Y axis

iff_marine_damage_falloff + + + + +

+

Modifies projectile damage by a % when a marine gets passed, but not hit

in_chamber + + + + +

+

Current object slated for firing. Magazines/Handfuls will make this a projectile. Internal magazines that aren't handfuls will have this be the object in the gun.

knockdown_threshold + + + + +

+

Damage threshold for whether a turret will be knocked down.

last_cock_message + + + + +

+

World.time of the last cocked_message.

last_cocked + + + + +

+

World.time of the last cock.

last_fired + + + + +

+

World.time of last gun firing.

master_gun + + + + +

+

Gun reference if src is an attachment and is attached to a gun. This will be the gun that src is attached to.

max_chamber_items + + + + +

+

Maximum allowed chamber items. If the gun has AMMO_RECIEVER_TOGGLES_OPEN then the total amount in the gun will be the one here. If not, the gun will be able to contain this number + the chamber. If this is zero and doesnt use magazines, reloading will go directly into the chamber.

max_rounds + + + + +

+

If the gun uses magazines, it is the max rounds of the magazine(s). If it has an internal chamber, it is max_chamber_items.

max_scatter + + + + +

+

Maximum scatter

max_scatter_unwielded + + + + +

+

Maximum scatter when wielded

min_scatter + + + + +

+

Minimum scatter

min_scatter_unwielded + + + + +

+

Minimum scatter when wielded

movement_acc_penalty_mult + + + + +

+

Multiplier. Increased and decreased through attachments. Multiplies the accuracy/scatter penalty of the projectile when firing while moving.

muzzle_flash + + + + +

+

Effect for the muzzle flash of the gun.

muzzle_flash_color + + + + +

+

Color of the muzzle flash effect.

muzzle_flash_lum + + + + +

+

Brightness of the muzzle flash effect.

muzzleflash_iconstate + + + + +

+

Icon state of the muzzle flash effect.

opened_sound + + + + +

+

Sounds of opening the guns reciever. (DBs, Martinis opening.)

overcharge + + + + +

+

In overcharge mode?

overheat_multiplier + + + + +

+

multiplier on cool amount to determine overheat time

overheat_timer + + + + +

+

tracks overheat timer ref

pixel_shift_x + + + + +

+

Pixel shift on the X Axis for the attached overlay.

pixel_shift_y + + + + +

+

Pixel shift on the Y Axis for the attached overlay.

placed_overlay_iconstate + + + + +

+

Icon state used for an added overlay for a sentry. Currently only used in Build-A-Sentry.

reciever_flags + + + + +

+

Flags to determin guns ammo/operation.

recoil + + + + +

+

Screen shake when the weapon is fired while wielded.

recoil_backtime_multiplier + + + + +

+

a multiplier of the duration the recoil takes to go back to normal view, this is (recoil*recoil_backtime_multiplier)+1

recoil_deviation + + + + +

+

this is how much deviation the gun recoil can have, recoil pushes the screen towards the reverse angle you shot + some deviation which this is the max.

recoil_unwielded + + + + +

+

Screen shake when the weapon is fired while unwielded.

reload_sound + + + + +

+

Sound played for reloading.

rounds + + + + +

+

Stored sum of magazine rounds / chamber contents. This is used for anything needing ammo. It is updated on reload/unload/fire

rounds_per_shot + + + + +

+

If the gun uses a magazine, the gun will subtract this from the magazine every fire.

scatter + + + + +

+

How much the bullet currently scattered when last fired.

scatter_decay + + + + +

+

How much scatter decays every decisecond

scatter_decay_unwielded + + + + +

+

How much scatter decays every decisecond

scatter_increase + + + + +

+

How much scatter increases per shot

scatter_increase_unwielded + + + + +

+

How much scatter increases per shot when wielded

scatter_unwielded + + + + +

+

How much the bullet scatters when fired while unwielded.

sentry_iff_signal + + + + +

+

IFF signal for sentries. If it is set here it will be this signal forever. If null the IFF signal will be dependant on the deployer.

shell_eject_animation + + + + +

+

Animation for opening the chamber of a gun.

shell_speed_mod + + + + +

+

Modifies the speed of projectiles fired.

shots_fired + + + + +

+

How many bullets the gun fired while bursting/auto firing

slot + + + + +

+

Slot the gun fits into.

starting_attachment_types + + + + +

+

The attachments this gun starts with on Init

target + + + + +

+

The atom targeted by the user

turret_flags + + + + +

+

Flags that the deployed sentry uses upon deployment.

turret_range + + + + +

+

Range of deployed turret

type_of_casings + + + + +

+

Types of casing it ejects.

undeploy_time + + + + +

+

If the gun is deployable, the time it takes for the weapon to undeploy. Defaults to deploy time

unload_sound + + + + +

+

Sound of unloading the gun.

wield_delay + + + + +

+

How long between wielding and firing in tenths of seconds

wield_delay_mod + + + + +

+

How long ADS takes (time before firing)

wield_penalty + + + + +

+

Extra wield delay for untrained operators

wield_time + + + + +

+

Storing value for above

windup_checked + + + + +

+

Used if a weapon need windup before firing

windup_delay + + + + +

+

Delay for the gun winding up before firing.

windup_sound + + + + +

+

Sound played during windup.

Proc Details

Fire +

+

Wrapper proc to complete the whole firing process.

able_to_fire +

+

Checks if the gun can be fired

activate +

+

This activates the weapon for use.

activate_attachment +

+

Gets the attachents by slot and activates them.

activate_muzzle_attachment +

+

Signal handler to activate the muzzle attachement of that gun if it's in our active hand

activate_rail_attachment +

+

if your attached weapon has aim mode, stops it from aimming +if your attached weapon has aim mode, makes it aim +Signal handler to activate the rail attachement of that gun if it's in our active hand

activate_underrail_attachment +

+

Signal handler to activate the underrail attachement of that gun if it's in our active hand

add_aim_mode_fire_delay +

+

Adds an aim_fire_delay modificatio value

adjust_current_rounds +

+

Adds or subtracts rounds from the magazine.

apply_gun_modifiers +

+

Applies gun modifiers to a projectile before firing

can_attach +

+

Called when the attachment is trying to be attached. If the attachment is allowed to go through, return TRUE.

change_target +

+

Update the target if you draged your mouse

clean_gun_user +

+

Null out gun user to prevent hard del

clean_target +

+

Set the target to it's turf, so we keep shooting even when it was qdeled

complete_overheat +

+

called by a timer after overheat finishes

cycle +

+

Cycles the gun, handles ammunition draw

do_fire +

+

Actually fires the gun, sets up the projectile and fires it.

do_toggle_firemode +

+

Actually does the toggling of the fire mode

drop_connected_mag +

+

Checks to see if the current object in chamber is a worn magazine and if so unloads it

examine_ammo_count +

+

Gives the user a description of the ammunition remaining, as well as other information pertaining to reloading/ammo.

fill_gun +

+

Fills the gun with ammunition. This is not inlined with Initialize because it could be used outside and needs to sleep.

fire_after_autonomous_windup +

+

Fire after a fake windup

get_ammo +

+

Sets and returns the guns ammo type from the current magazine.

get_ammo_list +

+

returns ammo string icon_states to display in the ammo counter of the HUD. list(normal_state, empty_state)

get_ammo_object +

+

Gets a projectile to fire from the magazines ammo type.

get_current_rounds +

+

Getter to draw current rounds. Overwrite if the magazine is not a /ammo_magazine

get_display_ammo_count +

+

returns ammo count to display in the ammo counter of the HUD

get_magazine_default_ammo +

+

Getter to draw default ammo type. If the mag has none, overwrite and return null.

get_magazine_features_flags +

+

Getter to draw magazine_flags features. If the mag has none, overwrite and return null.

get_magazine_overlay +

+

Getter to draw the magazine overlay on the gun. If the mag has none, overwrite and return null.

get_magazine_reload_delay +

+

Getter to draw reload delay. If the mag has none, overwrite and return null.

get_max_rounds +

+

Getter to draw max rounds.

gun_on_cooldown +

+

Checks if the gun is on cooldown

has_attachment +

+

Checks the gun to see if it has an attachment of type attachment_type

make_casing +

+

Generates a casing

on_attach +

+

This is called when an attachment gun (src) attaches to a gun.

on_attachment_attach +

+

Called when an attachment is attached to this gun (src).

on_attachment_detach +

+

Called when an attachment is detached from this gun (src).

on_detach +

+

This is called when an attachment gun (src) detaches from a gun.

on_unzoom +

+

Handles unzoom behavior

play_fire_sound +

+

Plays firing sound when firing

recalculate_aim_mode_fire_delay +

+

Calculates aim_fire_delay, can't be below 0

reload +

+

Handles reloading. Called on attack_by +Reload works in one of three ways, depending on the guns flags. +First, if the gun is set to magazines, it will do checks based on the magazines vars and if it succeeds it will load the magazine. +If the gun uses handfuls, the gun will create or take a handful with one round and insert those. +If the gun does not use handfuls, or magazines. It will merely fill the gun with whatever item is inserted.

remove_aim_mode_fire_delay +

+

Removes an aim_fire_delay modificatio value

remove_muzzle_flash +

+

Removes muzzle flash viscontents

reset_fire +

+

Clean all references

reset_light_range +

+

Turns off gun fire lighting

set_bursting +

+

Inform the gun if he is currently bursting, to prevent reloading

set_gun_user +

+

Set the user in argument as gun_user

set_target +

+

Set the target and take care of hard delete

setup_bullet_accuracy +

+

Sets the projectile accuracy and scatter

simulate_recoil +

+

Generates screenshake if the gun has recoil

start_fire +

+

Check if the gun can fire and add it to bucket auto_fire system if needed, or just fire the gun if not

stop_fire +

+

Reset variables used in firing and remove the gun from the autofire system

tactical_reload +

+

This performs a tactical reload with src using new_magazine to load the gun.

toggle_auto_eject +

+

Toggles weapons ejecting their magazines when they're empty. This one is one a gun level and is used via right clicking the gun.

toggle_auto_eject_keybind +

+

Signal handler to toggle automatic magazine ejection

toggle_firemode +

+

A verb in the right click context menu of the weapon for toggling firemode

toggle_gun_safety_keybind +

+

Signal handler to toggle the safety of the gun

unique_action +

+

Performs the unique action. Can be overwritten. +This does a few things, depending on the flags of the gun. +If the gun doesn't Toggle it will perform a cycle, if it requires operation the gun will check the cycle against the cock delays. +If the gun does toggle, Unique action will open the chamber. (Open the barrel on a DB, or the cylinder on a revolver.)

unload +

+

Handles unloading. Called on attackhand. Draws the chamber_items out first, then in_chamber

unload_gun +

+

Signal handler to unload that gun if it's in our active hand

update_ammo_count +

+

Updates the guns rounds and max_rounds vars based on the contents of chamber_items

+ + + diff --git a/obj/item/weapon/gun/energy/lasgun/lasrifle.html b/obj/item/weapon/gun/energy/lasgun/lasrifle.html new file mode 100644 index 0000000000000..639723a0f0e64 --- /dev/null +++ b/obj/item/weapon/gun/energy/lasgun/lasrifle.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/weapon/gun/energy/lasgun/lasrifle - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

lasrifle + + + +

+ + + +

Vars

mode_indexThe index of the current mode selected, used for non radial mode switches
mode_listA list of available modes this gun can switch to
+

Var Details

mode_index + + + + +

+

The index of the current mode selected, used for non radial mode switches

mode_list + + + + +

+

A list of available modes this gun can switch to

+ + + diff --git a/obj/item/weapon/gun/energy/lasgun/lasrifle/volkite/cope.html b/obj/item/weapon/gun/energy/lasgun/lasrifle/volkite/cope.html new file mode 100644 index 0000000000000..13c271f6c8ef2 --- /dev/null +++ b/obj/item/weapon/gun/energy/lasgun/lasrifle/volkite/cope.html @@ -0,0 +1,57 @@ + + + + + + + /obj/item/weapon/gun/energy/lasgun/lasrifle/volkite/cope - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

cope + + + +

+ + + + + +

Vars

arm_soundThe sound made when activated
det_timeHow long to deploy after thrown

Procs

primeDeploys the weapon into a sentry after activation
resetReverts the gun back to it's unarmed state, allowing it to be activated again
+

Var Details

arm_sound + + + + +

+

The sound made when activated

det_time + + + + +

+

How long to deploy after thrown

Proc Details

prime +

+

Deploys the weapon into a sentry after activation

reset +

+

Reverts the gun back to it's unarmed state, allowing it to be activated again

+ + + diff --git a/obj/item/weapon/gun/flamer.html b/obj/item/weapon/gun/flamer.html new file mode 100644 index 0000000000000..0d4df9c35bda2 --- /dev/null +++ b/obj/item/weapon/gun/flamer.html @@ -0,0 +1,150 @@ + + + + + + + /obj/item/weapon/gun/flamer - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

flamer + + + +

+ + + + + + + + + + + + + + + + + + +

Vars

burn_level_modGun based modifier for burn level. Percentage based.
burn_time_modGun based modifier for burn time. Percentage based.
cone_anglehow wide of a cone the flamethrower produces on wide mode.
flame_max_rangeMax range of the flamer in tiles.
flame_max_wall_penMax resin wall penetration in tiles.
flame_max_wall_pen_wideAfter how many total resin walls the flame wont proceed further
flame_spread_timeTravel speed of the flames in seconds.
flamer_features_flagsBitfield flags for flamer specific traits.
lit_overlay_icon_stateOverlay icon state of the pilot light.
lit_overlay_offset_xPixel offset on the X axis for the pilot light overlay.
lit_overlay_offset_yPixel offset on the Y axis for the pilot light overlay.
mob_flame_damage_modDamage multiplier for mobs caught in the initial stream of fire.

Procs

burn_listChecks and lights the turfs in turfs_to_burn
flame_turfLights the specific turf on fire and processes melting snow or vines and the like.
light_pilotMakes the sound of the flamer being lit, and applies the overlay. +s so we can check equivalence on truthy, rather than true, values
recursive_flame_coneFlames recursively a cone.
recursive_flame_straightFlames recursively a straight path.
+

Var Details

burn_level_mod + + + + +

+

Gun based modifier for burn level. Percentage based.

burn_time_mod + + + + +

+

Gun based modifier for burn time. Percentage based.

cone_angle + + + + +

+

how wide of a cone the flamethrower produces on wide mode.

flame_max_range + + + + +

+

Max range of the flamer in tiles.

flame_max_wall_pen + + + + +

+

Max resin wall penetration in tiles.

flame_max_wall_pen_wide + + + + +

+

After how many total resin walls the flame wont proceed further

flame_spread_time + + + + +

+

Travel speed of the flames in seconds.

flamer_features_flags + + + + +

+

Bitfield flags for flamer specific traits.

lit_overlay_icon_state + + + + +

+

Overlay icon state of the pilot light.

lit_overlay_offset_x + + + + +

+

Pixel offset on the X axis for the pilot light overlay.

lit_overlay_offset_y + + + + +

+

Pixel offset on the Y axis for the pilot light overlay.

mob_flame_damage_mod + + + + +

+

Damage multiplier for mobs caught in the initial stream of fire.

Proc Details

burn_list +

+

Checks and lights the turfs in turfs_to_burn

flame_turf +

+

Lights the specific turf on fire and processes melting snow or vines and the like.

light_pilot +

+

Makes the sound of the flamer being lit, and applies the overlay. +s so we can check equivalence on truthy, rather than true, values

recursive_flame_cone +

+

Flames recursively a cone.

recursive_flame_straight +

+

Flames recursively a straight path.

+ + + diff --git a/obj/item/weapon/gun/flamer/big_flamer/marinestandard.html b/obj/item/weapon/gun/flamer/big_flamer/marinestandard.html new file mode 100644 index 0000000000000..04790690e5365 --- /dev/null +++ b/obj/item/weapon/gun/flamer/big_flamer/marinestandard.html @@ -0,0 +1,35 @@ + + + + + + + /obj/item/weapon/gun/flamer/big_flamer/marinestandard - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

marinestandard + + + +

+ + +

Procs

do_windupFlamer windup called before firing

Proc Details

do_windup +

+

Flamer windup called before firing

+ + + diff --git a/obj/item/weapon/gun/grenade_launcher.html b/obj/item/weapon/gun/grenade_launcher.html new file mode 100644 index 0000000000000..6d8040c8de378 --- /dev/null +++ b/obj/item/weapon/gun/grenade_launcher.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/weapon/gun/grenade_launcher - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

grenade_launcher + + + +

+ + +

Vars

max_rangethe maximum range the launcher can fling the grenade, by default 15 tiles
+

Var Details

max_range + + + + +

+

the maximum range the launcher can fling the grenade, by default 15 tiles

+ + + diff --git a/obj/item/weapon/gun/launcher/rocket.html b/obj/item/weapon/gun/launcher/rocket.html new file mode 100644 index 0000000000000..267d7df1e2690 --- /dev/null +++ b/obj/item/weapon/gun/launcher/rocket.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/weapon/gun/launcher/rocket - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

rocket + + + +

+ + +

Vars

backblastdamageremoves backblast damage if false
+

Var Details

backblastdamage + + + + +

+

removes backblast damage if false

+ + + diff --git a/obj/item/weapon/gun/launcher/rocket/oneuse.html b/obj/item/weapon/gun/launcher/rocket/oneuse.html new file mode 100644 index 0000000000000..0cdf7b2dba930 --- /dev/null +++ b/obj/item/weapon/gun/launcher/rocket/oneuse.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/weapon/gun/launcher/rocket/oneuse - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

oneuse + + + +

+ + +

Vars

extendedIndicates extension state of the launcher. True: Fireable and unable to fit in storage. False: Able to fit in storage but must be extended to fire.
+

Var Details

extended + + + + +

+

Indicates extension state of the launcher. True: Fireable and unable to fit in storage. False: Able to fit in storage but must be extended to fire.

+ + + diff --git a/obj/item/weapon/gun/revolver.html b/obj/item/weapon/gun/revolver.html new file mode 100644 index 0000000000000..6587eaef923e3 --- /dev/null +++ b/obj/item/weapon/gun/revolver.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/weapon/gun/revolver - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

revolver + + + +

+ + + +

Vars

catchworkingWhether the chamber can be spun for Russian Roulette. If False the chamber can be spun.
russian_rouletteIf the gun is able to play Russian Roulette
+

Var Details

catchworking + + + + +

+

Whether the chamber can be spun for Russian Roulette. If False the chamber can be spun.

russian_roulette + + + + +

+

If the gun is able to play Russian Roulette

+ + + diff --git a/obj/item/weapon/gun/rifle/garand.html b/obj/item/weapon/gun/rifle/garand.html new file mode 100644 index 0000000000000..44307f7b6c0ab --- /dev/null +++ b/obj/item/weapon/gun/rifle/garand.html @@ -0,0 +1,35 @@ + + + + + + + /obj/item/weapon/gun/rifle/garand - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

garand + + + +

+ + +

Procs

garand_thumbGets your thumb stuck in the gun while reloading

Proc Details

garand_thumb +

+

Gets your thumb stuck in the gun while reloading

+ + + diff --git a/obj/item/weapon/gun/rifle/tx54.html b/obj/item/weapon/gun/rifle/tx54.html new file mode 100644 index 0000000000000..ec922576eaf44 --- /dev/null +++ b/obj/item/weapon/gun/rifle/tx54.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/weapon/gun/rifle/tx54 - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

tx54 + + + +

+ + +

Vars

worn_icon_listtodo
+

Var Details

worn_icon_list + + + + +

+

todo

+ + + diff --git a/obj/item/weapon/powerfist.html b/obj/item/weapon/powerfist.html new file mode 100644 index 0000000000000..f83184dad4494 --- /dev/null +++ b/obj/item/weapon/powerfist.html @@ -0,0 +1,43 @@ + + + + + + + /obj/item/weapon/powerfist - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

powerfist + + + +

+ + + +

Vars

settingthe higher the power level the harder it hits

Procs

unloadRemove the cell from the powerfist
+

Var Details

setting + + + + +

+

the higher the power level the harder it hits

Proc Details

unload +

+

Remove the cell from the powerfist

+ + + diff --git a/obj/item/weapon/shield.html b/obj/item/weapon/shield.html new file mode 100644 index 0000000000000..cf0bbebdef015 --- /dev/null +++ b/obj/item/weapon/shield.html @@ -0,0 +1,50 @@ + + + + + + + /obj/item/weapon/shield - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

shield + + + +

+ + + + +

Vars

special_attackSpecial attack action granted to users with the right trait
strappableDoes this shield have a strap?

Procs

set_shieldSets up the shield's defence components
+

Var Details

special_attack + + + + +

+

Special attack action granted to users with the right trait

strappable + + + + +

+

Does this shield have a strap?

Proc Details

set_shield +

+

Sets up the shield's defence components

+ + + diff --git a/obj/item/weapon/shield/riot/marine/deployable.html b/obj/item/weapon/shield/riot/marine/deployable.html new file mode 100644 index 0000000000000..fa79cd10f9772 --- /dev/null +++ b/obj/item/weapon/shield/riot/marine/deployable.html @@ -0,0 +1,57 @@ + + + + + + + /obj/item/weapon/shield/riot/marine/deployable - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

deployable + + + +

+ + + + + +

Vars

deploy_timeTime to deploy
deployable_itemThe item this deploys into
is_wiredWhether it is wired
undeploy_timeTime to undeploy
+

Var Details

deploy_time + + + + +

+

Time to deploy

deployable_item + + + + +

+

The item this deploys into

is_wired + + + + +

+

Whether it is wired

undeploy_time + + + + +

+

Time to undeploy

+ + + diff --git a/obj/item/weapon/sword.html b/obj/item/weapon/sword.html new file mode 100644 index 0000000000000..96730cc3e6fbb --- /dev/null +++ b/obj/item/weapon/sword.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/weapon/sword - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

sword + + + +

+ + +

Vars

special_attackSpecial attack action granted to users with the right trait
+

Var Details

special_attack + + + + +

+

Special attack action granted to users with the right trait

+ + + diff --git a/obj/item/weapon/twohanded/chainsaw.html b/obj/item/weapon/twohanded/chainsaw.html new file mode 100644 index 0000000000000..9541f7fdfbf42 --- /dev/null +++ b/obj/item/weapon/twohanded/chainsaw.html @@ -0,0 +1,141 @@ + + + + + + + /obj/item/weapon/twohanded/chainsaw - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

chainsaw + + + +

+ +

Chainsword & Chainsaw

+ + + + + + + + + + + + + + + +

Vars

additional_damageadditional damage when weapon is active
fuel_usedamount of fuel used per hit
icon_state_onicon when on
max_fuelamount of fuel stored inside
worn_icon_state_onsprite on the mob when on
worn_icon_state_wsprite on the mob when off but wielded

Procs

afterattackRefueling with fueltank
attack_objHandle chainsaw attack loop on object
droppedChainsaw turned off when dropped, and also lose bump attack
equippedChainsaw give bump attack when picked up
rip_apartProc for the fuel cost and check and chainsaw noises
toggle_motorProc to turn the chainsaw on or off
unwieldChainsaw turn off when unwielded
update_icon_statehandle icon change
update_item_statehandle worn_icon change
wieldChainsaw turn on when wielded
+

Var Details

additional_damage + + + + +

+

additional damage when weapon is active

fuel_used + + + + +

+

amount of fuel used per hit

icon_state_on + + + + +

+

icon when on

max_fuel + + + + +

+

amount of fuel stored inside

worn_icon_state_on + + + + +

+

sprite on the mob when on

worn_icon_state_w + + + + +

+

sprite on the mob when off but wielded

Proc Details

afterattack +

+

Refueling with fueltank

attack_obj +

+

Handle chainsaw attack loop on object

dropped +

+

Chainsaw turned off when dropped, and also lose bump attack

equipped +

+

Chainsaw give bump attack when picked up

rip_apart +

+

Proc for the fuel cost and check and chainsaw noises

toggle_motor +

+

Proc to turn the chainsaw on or off

unwield +

+

Chainsaw turn off when unwielded

update_icon_state +

+

handle icon change

update_item_state +

+

handle worn_icon change

wield +

+

Chainsaw turn on when wielded

+ + + diff --git a/obj/item/weapon/twohanded/chainsaw/sword.html b/obj/item/weapon/twohanded/chainsaw/sword.html new file mode 100644 index 0000000000000..95fc9d00b31b2 --- /dev/null +++ b/obj/item/weapon/twohanded/chainsaw/sword.html @@ -0,0 +1,35 @@ + + + + + + + /obj/item/weapon/twohanded/chainsaw/sword - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

sword + + + +

+ + +

Procs

unique_actionAllow the chainsword variant to be activated without being wielded

Proc Details

unique_action +

+

Allow the chainsword variant to be activated without being wielded

+ + + diff --git a/obj/item/weapon/twohanded/fireaxe/som.html b/obj/item/weapon/twohanded/fireaxe/som.html new file mode 100644 index 0000000000000..e910fb1d4c3c8 --- /dev/null +++ b/obj/item/weapon/twohanded/fireaxe/som.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/weapon/twohanded/fireaxe/som - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

som + + + +

+ + +

Vars

special_attackSpecial attack action granted to users with the right trait
+

Var Details

special_attack + + + + +

+

Special attack action granted to users with the right trait

+ + + diff --git a/obj/item/weapon/twohanded/rocketsledge.html b/obj/item/weapon/twohanded/rocketsledge.html new file mode 100644 index 0000000000000..a1cca6f12597c --- /dev/null +++ b/obj/item/weapon/twohanded/rocketsledge.html @@ -0,0 +1,99 @@ + + + + + + + /obj/item/weapon/twohanded/rocketsledge - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

rocketsledge + + + +

+ + + + + + + + + + + +

Vars

additional_damageadditional damage when weapon is active
crush_stun_amountstun value in crush mode
crush_weaken_amountweaken value in crush mode
fuel_usedamount of fuel used per hit
knockbackknockback value; 0 = crush mode, 1 = knockback mode
knockback_stun_amountstun value in knockback mode
knockback_weaken_amountweaken value in knockback mode
max_fuelamount of fuel stored inside
stunstun value
weakenweaken value
+

Var Details

additional_damage + + + + +

+

additional damage when weapon is active

crush_stun_amount + + + + +

+

stun value in crush mode

crush_weaken_amount + + + + +

+

weaken value in crush mode

fuel_used + + + + +

+

amount of fuel used per hit

knockback + + + + +

+

knockback value; 0 = crush mode, 1 = knockback mode

knockback_stun_amount + + + + +

+

stun value in knockback mode

knockback_weaken_amount + + + + +

+

weaken value in knockback mode

max_fuel + + + + +

+

amount of fuel stored inside

stun + + + + +

+

stun value

weaken + + + + +

+

weaken value

+ + + diff --git a/obj/item/weapon/twohanded/spear.html b/obj/item/weapon/twohanded/spear.html new file mode 100644 index 0000000000000..73024e6f74298 --- /dev/null +++ b/obj/item/weapon/twohanded/spear.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/weapon/twohanded/spear - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

spear + + + +

+ + +

Vars

current_angleBased on what direction the tip of the spear is pointed at in the sprite; maybe someone makes a spear that points northwest
+

Var Details

current_angle + + + + +

+

Based on what direction the tip of the spear is pointed at in the sprite; maybe someone makes a spear that points northwest

+ + + diff --git a/obj/item/weapon/zombie_claw.html b/obj/item/weapon/zombie_claw.html new file mode 100644 index 0000000000000..728da9bb3a073 --- /dev/null +++ b/obj/item/weapon/zombie_claw.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/weapon/zombie_claw - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

zombie_claw + + + +

+ + +

Vars

zombium_per_hitHow much zombium are transferred per hit. Set to zero to remove transmission
+

Var Details

zombium_per_hit + + + + +

+

How much zombium are transferred per hit. Set to zero to remove transmission

+ + + diff --git a/obj/item/whistle.html b/obj/item/whistle.html new file mode 100644 index 0000000000000..0b51ae9a1ac87 --- /dev/null +++ b/obj/item/whistle.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/whistle - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

whistle + + + +

+ + +

Vars

warcryrangeThe range in tiles which whistle makes people warcry
+

Var Details

warcryrange + + + + +

+

The range in tiles which whistle makes people warcry

+ + + diff --git a/obj/item/xeno_iff_tag.html b/obj/item/xeno_iff_tag.html new file mode 100644 index 0000000000000..6bd69bad12d5b --- /dev/null +++ b/obj/item/xeno_iff_tag.html @@ -0,0 +1,36 @@ + + + + + + + /obj/item/xeno_iff_tag - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

xeno_iff_tag + + + +

+ + +

Vars

carried_iffThe IFF signal this tag will create a component with
+

Var Details

carried_iff + + + + +

+

The IFF signal this tag will create a component with

+ + + diff --git a/obj/machinery.html b/obj/machinery.html new file mode 100644 index 0000000000000..5e85251e24306 --- /dev/null +++ b/obj/machinery.html @@ -0,0 +1,43 @@ + + + + + + + /obj/machinery - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

machinery + + + +

+ + + +

Vars

allow_pass_flagsWhether bullets can bypass the object even though it's dense

Procs

set_disabledCurrently used for computers only; it can be repaired with a welder after a 5 second wind up
+

Var Details

allow_pass_flags + + + + +

+

Whether bullets can bypass the object even though it's dense

Proc Details

set_disabled +

+

Currently used for computers only; it can be repaired with a welder after a 5 second wind up

+ + + diff --git a/obj/machinery/atmospherics.html b/obj/machinery/atmospherics.html new file mode 100644 index 0000000000000..8b8bc3befaf62 --- /dev/null +++ b/obj/machinery/atmospherics.html @@ -0,0 +1,36 @@ + + + + + + + /obj/machinery/atmospherics - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

atmospherics + + + +

+ + +

Vars

can_see_pipesWhether we get pipenet vision while inside or just see normally.
+

Var Details

can_see_pipes + + + + +

+

Whether we get pipenet vision while inside or just see normally.

+ + + diff --git a/obj/machinery/atmospherics/components/unary/vent_scrubber.html b/obj/machinery/atmospherics/components/unary/vent_scrubber.html new file mode 100644 index 0000000000000..0f9fe580255a4 --- /dev/null +++ b/obj/machinery/atmospherics/components/unary/vent_scrubber.html @@ -0,0 +1,36 @@ + + + + + + + /obj/machinery/atmospherics/components/unary/vent_scrubber - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

vent_scrubber + + + +

+ + +

Vars

volume_ratedatum/gas/carbon_dioxide)
+

Var Details

volume_rate + + + + +

+

datum/gas/carbon_dioxide)

+ + + diff --git a/obj/machinery/autodoc.html b/obj/machinery/autodoc.html new file mode 100644 index 0000000000000..5958f0727314a --- /dev/null +++ b/obj/machinery/autodoc.html @@ -0,0 +1,35 @@ + + + + + + + /obj/machinery/autodoc - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

autodoc + + + +

+ + +

Procs

auto_startCallback to start auto mode on someone entering

Proc Details

auto_start +

+

Callback to start auto mode on someone entering

+ + + diff --git a/obj/machinery/bodyscanner.html b/obj/machinery/bodyscanner.html new file mode 100644 index 0000000000000..409839592dc68 --- /dev/null +++ b/obj/machinery/bodyscanner.html @@ -0,0 +1,43 @@ + + + + + + + /obj/machinery/bodyscanner - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

bodyscanner + + + +

+ + + +

Vars

lockedIf its locked
occupantmob inside
+

Var Details

locked + + + + +

+

If its locked

occupant + + + + +

+

mob inside

+ + + diff --git a/obj/machinery/bot.html b/obj/machinery/bot.html new file mode 100644 index 0000000000000..fc8339a5839b3 --- /dev/null +++ b/obj/machinery/bot.html @@ -0,0 +1,120 @@ + + + + + + + /obj/machinery/bot - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

bot + + + +

+ + + + + + + + + + + + + + +

Vars

activation_animationanimation to play when the robot is started by hand
active_icon_stateicon to set while active
alter_operating_modecan the robot be turned on or off
awakeningsentencesstrings used on activating the bot
counterKeeps track of how many items or whatever have been cleaned
deactivation_animationanimation to play when the robot is started by hand
is_activeis the robot active
sentencesstrings used on doing an action like cleaning
shutdownsentencesstrings used on shutting down the robot
stuck_counterSo It doesnt infinitely look for an exit and crash the server

Procs

bot_shutdownhandles bot deactivation process
bot_startuphandles bot activation process
turn_aroundTurns the bot around when it leaves an area to make sure it doesnt wander off
+

Var Details

activation_animation + + + + +

+

animation to play when the robot is started by hand

active_icon_state + + + + +

+

icon to set while active

alter_operating_mode + + + + +

+

can the robot be turned on or off

awakeningsentences + + + + +

+

strings used on activating the bot

counter + + + + +

+

Keeps track of how many items or whatever have been cleaned

deactivation_animation + + + + +

+

animation to play when the robot is started by hand

is_active + + + + +

+

is the robot active

sentences + + + + +

+

strings used on doing an action like cleaning

shutdownsentences + + + + +

+

strings used on shutting down the robot

stuck_counter + + + + +

+

So It doesnt infinitely look for an exit and crash the server

Proc Details

bot_shutdown +

+

handles bot deactivation process

bot_startup +

+

handles bot activation process

turn_around +

+

Turns the bot around when it leaves an area to make sure it doesnt wander off

+ + + diff --git a/obj/machinery/bot/cleanbot.html b/obj/machinery/bot/cleanbot.html new file mode 100644 index 0000000000000..7433256dc780b --- /dev/null +++ b/obj/machinery/bot/cleanbot.html @@ -0,0 +1,60 @@ + + + + + + + /obj/machinery/bot/cleanbot - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

cleanbot + + + +

+ +

A medical bot designed to clean up blood and other trash that accumulates in medbay

+ + +

Vars

cleantypeslist of garbage the cleanbot removes

Procs

calculategrimeholds the list of floors and dirs we use to evaluate which direction we're heading +used to hold what tile in the immediate area is dirtiest +used to hold the dirt value of a given tile during evaluation, which is compared with highestdirtvalue +used to override destination if we detect dirt or grime nearby +if the dirt value on a given tile is higher than our current dirt level, than the dirtier tile is our new destination +return a dirt value based on how many times we detect dirty objects
clean_itemscalled to evaluate and clean all objects in a given tile
+

Var Details

cleantypes + + + + +

+

list of garbage the cleanbot removes

Proc Details

calculategrime +

+

holds the list of floors and dirs we use to evaluate which direction we're heading +used to hold what tile in the immediate area is dirtiest +used to hold the dirt value of a given tile during evaluation, which is compared with highestdirtvalue +used to override destination if we detect dirt or grime nearby +if the dirt value on a given tile is higher than our current dirt level, than the dirtier tile is our new destination +return a dirt value based on how many times we detect dirty objects

clean_items +

+

called to evaluate and clean all objects in a given tile

+ + + diff --git a/obj/machinery/bot/roomba.html b/obj/machinery/bot/roomba.html new file mode 100644 index 0000000000000..0febbe74ca426 --- /dev/null +++ b/obj/machinery/bot/roomba.html @@ -0,0 +1,59 @@ + + + + + + + /obj/machinery/bot/roomba - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

roomba + + + +

+ +

A cheap little roomba that runs around and keeps prep clean to decrease maptick and prep always being a fucking mess

+ + + +

Vars

allow_claymoreAdmins can let it have a claymore
claymoreThe mine we have attached to this roomba

Procs

roomba_restockFor each obj/item/sucker, we try to restock it if possible +If the item cannot be restocked, we send it to cryo storage so it's not just deleted from existence
suck_itemsCalled when the roomba moves, sucks in all items held in the tile and sends them to cryo
+

Var Details

allow_claymore + + + + +

+

Admins can let it have a claymore

claymore + + + + +

+

The mine we have attached to this roomba

Proc Details

roomba_restock +

+

For each obj/item/sucker, we try to restock it if possible +If the item cannot be restocked, we send it to cryo storage so it's not just deleted from existence

suck_items +

+

Called when the roomba moves, sucks in all items held in the tile and sends them to cryo

+ + + diff --git a/obj/machinery/button/door/open_only/landing_zone.html b/obj/machinery/button/door/open_only/landing_zone.html new file mode 100644 index 0000000000000..2111c728631ea --- /dev/null +++ b/obj/machinery/button/door/open_only/landing_zone.html @@ -0,0 +1,36 @@ + + + + + + + /obj/machinery/button/door/open_only/landing_zone - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

landing_zone + + + +

+ + +

Vars

alarm_playedHas the shutters alarm been played?
+

Var Details

alarm_played + + + + +

+

Has the shutters alarm been played?

+ + + diff --git a/obj/machinery/button/valhalla.html b/obj/machinery/button/valhalla.html new file mode 100644 index 0000000000000..2520756b0b373 --- /dev/null +++ b/obj/machinery/button/valhalla.html @@ -0,0 +1,43 @@ + + + + + + + /obj/machinery/button/valhalla - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

valhalla + + + +

+ + + +

Vars

linkWhat spawner landmark is linked with this spawner (this has to be matching with the landmark)
linkedThe mob created by the spawner
+

Var Details

+

What spawner landmark is linked with this spawner (this has to be matching with the landmark)

linked + + + + +

+

The mob created by the spawner

+ + + diff --git a/obj/machinery/button/valhalla/marine_spawner.html b/obj/machinery/button/valhalla/marine_spawner.html new file mode 100644 index 0000000000000..7f3d6cb25732c --- /dev/null +++ b/obj/machinery/button/valhalla/marine_spawner.html @@ -0,0 +1,35 @@ + + + + + + + /obj/machinery/button/valhalla/marine_spawner - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

marine_spawner + + + +

+ + +

Procs

spawn_humansGenerates a list of jobs datums to spawn on a mob

Proc Details

spawn_humans +

+

Generates a list of jobs datums to spawn on a mob

+ + + diff --git a/obj/machinery/button/valhalla/vehicle_button.html b/obj/machinery/button/valhalla/vehicle_button.html new file mode 100644 index 0000000000000..0097a7c2bc493 --- /dev/null +++ b/obj/machinery/button/valhalla/vehicle_button.html @@ -0,0 +1,35 @@ + + + + + + + /obj/machinery/button/valhalla/vehicle_button - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

vehicle_button + + + +

+ + +

Procs

spawn_vehiclesGenerates a list of vehicles to spawn

Proc Details

spawn_vehicles +

+

Generates a list of vehicles to spawn

+ + + diff --git a/obj/machinery/camera.html b/obj/machinery/camera.html new file mode 100644 index 0000000000000..57c2313548181 --- /dev/null +++ b/obj/machinery/camera.html @@ -0,0 +1,35 @@ + + + + + + + /obj/machinery/camera - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

camera + + + +

+ + +

Procs

beforeShuttleMoveobj/machinery/door/airlock/afterShuttleMove(turf/oldT, list/movement_force, shuttle_dir, shuttle_preferred_direction, move_dir, rotation)

Proc Details

beforeShuttleMove +

+

obj/machinery/door/airlock/afterShuttleMove(turf/oldT, list/movement_force, shuttle_dir, shuttle_preferred_direction, move_dir, rotation)

+ + + diff --git a/obj/machinery/camera/deployable.html b/obj/machinery/camera/deployable.html new file mode 100644 index 0000000000000..040a271f42c0a --- /dev/null +++ b/obj/machinery/camera/deployable.html @@ -0,0 +1,35 @@ + + + + + + + /obj/machinery/camera/deployable - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

deployable + + + +

+ + +

Procs

on_mission_endDeletes itself on campaign mission end

Proc Details

on_mission_end +

+

Deletes itself on campaign mission end

+ + + diff --git a/obj/machinery/chem_dispenser.html b/obj/machinery/chem_dispenser.html new file mode 100644 index 0000000000000..b46b17426b509 --- /dev/null +++ b/obj/machinery/chem_dispenser.html @@ -0,0 +1,50 @@ + + + + + + + /obj/machinery/chem_dispenser - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

chem_dispenser + + + +

+ + + + +

Vars

clearing_recipeIf TRUE, we'll clear a recipe we click on instead of dispensing it
needs_medical_trainingWhether untrained people get a delay when using it
possible_transfer_amountsReagent amounts that are dispenced
+

Var Details

clearing_recipe + + + + +

+

If TRUE, we'll clear a recipe we click on instead of dispensing it

needs_medical_training + + + + +

+

Whether untrained people get a delay when using it

possible_transfer_amounts + + + + +

+

Reagent amounts that are dispenced

+ + + diff --git a/obj/machinery/cic_maptable.html b/obj/machinery/cic_maptable.html new file mode 100644 index 0000000000000..d05768e23eedb --- /dev/null +++ b/obj/machinery/cic_maptable.html @@ -0,0 +1,71 @@ + + + + + + + /obj/machinery/cic_maptable - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

cic_maptable + + + +

+ + + + + + + +

Vars

interacteesList of currently interacting mobs
mapminimap obj ref that we will display to users
minimap_flagflags that we want to be shown when you interact with this table
targetted_zlevelby default Zlevel 2, groundside is targetted

Procs

change_targeted_zUpdates the z-level this maptable views
interact_checksReturns true if something prevents the user from interacting with this. used mainly with the drawtable
+

Var Details

interactees + + + + +

+

List of currently interacting mobs

map + + + + +

+

minimap obj ref that we will display to users

minimap_flag + + + + +

+

flags that we want to be shown when you interact with this table

targetted_zlevel + + + + +

+

by default Zlevel 2, groundside is targetted

Proc Details

change_targeted_z +

+

Updates the z-level this maptable views

interact_checks +

+

Returns true if something prevents the user from interacting with this. used mainly with the drawtable

+ + + diff --git a/obj/machinery/cic_maptable/drawable.html b/obj/machinery/cic_maptable/drawable.html new file mode 100644 index 0000000000000..ba94b769c5464 --- /dev/null +++ b/obj/machinery/cic_maptable/drawable.html @@ -0,0 +1,43 @@ + + + + + + + /obj/machinery/cic_maptable/drawable - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

drawable + + + +

+ + + +

Vars

drawing_toolsList of references to the tools we will be using to shape what the map looks like

Procs

change_targeted_zUpdates the z-level this maptable views
+

Var Details

drawing_tools + + + + +

+

List of references to the tools we will be using to shape what the map looks like

Proc Details

change_targeted_z +

+

Updates the z-level this maptable views

+ + + diff --git a/obj/machinery/cloning.html b/obj/machinery/cloning.html new file mode 100644 index 0000000000000..211bbcba3c28c --- /dev/null +++ b/obj/machinery/cloning.html @@ -0,0 +1,29 @@ + + + + + + + /obj/machinery/cloning - byond + + +
+ byond - + Modules - + Types +
+
+

cloning + + + +

+ +

Marine cloning.

+

These act as a respawn mechanic growning a body and offering it up to ghosts.

+ + + diff --git a/obj/machinery/cloning/vats.html b/obj/machinery/cloning/vats.html new file mode 100644 index 0000000000000..4d6ceacbf427f --- /dev/null +++ b/obj/machinery/cloning/vats.html @@ -0,0 +1,92 @@ + + + + + + + /obj/machinery/cloning/vats - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

vats + + + +

+ + + + + + + + + + +

Vars

beakerThe beaker that holds the "biomass"
biomass_requiredAmount of biomass required to start growing and the amount of reagents that gets removed on successful grow
grow_timerThe amount of times it takes for the clone to pop out
linked_consoleThe control terminal
occupantThe mob inside the clone vat
timeridID of the timer that determines when a clone finishes growing

Procs

eject_userPop the grown human out
finish_growing_humanSpawn the human, add them to the SSD mob list, delete the timer
grow_humanEat up the biomass, start the grow timer
+

Var Details

beaker + + + + +

+

The beaker that holds the "biomass"

biomass_required + + + + +

+

Amount of biomass required to start growing and the amount of reagents that gets removed on successful grow

grow_timer + + + + +

+

The amount of times it takes for the clone to pop out

linked_console + + + + +

+

The control terminal

occupant + + + + +

+

The mob inside the clone vat

timerid + + + + +

+

ID of the timer that determines when a clone finishes growing

Proc Details

eject_user +

+

Pop the grown human out

finish_growing_human +

+

Spawn the human, add them to the SSD mob list, delete the timer

grow_human +

+

Eat up the biomass, start the grow timer

+ + + diff --git a/obj/machinery/computer.html b/obj/machinery/computer.html new file mode 100644 index 0000000000000..b78d876f2776f --- /dev/null +++ b/obj/machinery/computer.html @@ -0,0 +1,64 @@ + + + + + + + /obj/machinery/computer - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

computer + + + +

+ + + + + + +

Vars

broken_iconThe destroyed computer sprite. Defaults based on the icon_state if not specified
coveragethey don't provide good cover
durabilityHow many times the computer can be smashed by a Xeno before it is disabled.
screen_overlayThe actual screen sprite for this computer

Procs

attack_alienSo Xenos can smash computers out of the way without actually breaking them
+

Var Details

broken_icon + + + + +

+

The destroyed computer sprite. Defaults based on the icon_state if not specified

coverage + + + + +

+

they don't provide good cover

durability + + + + +

+

How many times the computer can be smashed by a Xeno before it is disabled.

screen_overlay + + + + +

+

The actual screen sprite for this computer

Proc Details

attack_alien +

+

So Xenos can smash computers out of the way without actually breaking them

+ + + diff --git a/obj/machinery/computer/autodoc_console.html b/obj/machinery/computer/autodoc_console.html new file mode 100644 index 0000000000000..e6bbfaedd40ec --- /dev/null +++ b/obj/machinery/computer/autodoc_console.html @@ -0,0 +1,50 @@ + + + + + + + /obj/machinery/computer/autodoc_console - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

autodoc_console + + + +

+ + + + +

Vars

connectedconnected autodoc
lockedMedics, Doctors and so on can lock this
release_noticeAre notifications for patient discharges turned on?
+

Var Details

connected + + + + +

+

connected autodoc

locked + + + + +

+

Medics, Doctors and so on can lock this

release_notice + + + + +

+

Are notifications for patient discharges turned on?

+ + + diff --git a/obj/machinery/computer/body_scanconsole.html b/obj/machinery/computer/body_scanconsole.html new file mode 100644 index 0000000000000..feff26a96b6c8 --- /dev/null +++ b/obj/machinery/computer/body_scanconsole.html @@ -0,0 +1,42 @@ + + + + + + + /obj/machinery/computer/body_scanconsole - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

body_scanconsole + + + +

+ + + +

Procs

on_bodyscanner_deletionCalled by the deletion of the connected bodyscanner.
set_connectedWrapper to guarantee connected bodyscanner references are properly nulled and avoid hard deletes.

Proc Details

on_bodyscanner_deletion +

+

Called by the deletion of the connected bodyscanner.

set_connected +

+

Wrapper to guarantee connected bodyscanner references are properly nulled and avoid hard deletes.

+ + + diff --git a/obj/machinery/computer/camera.html b/obj/machinery/computer/camera.html new file mode 100644 index 0000000000000..8617fc88c9d48 --- /dev/null +++ b/obj/machinery/computer/camera.html @@ -0,0 +1,36 @@ + + + + + + + /obj/machinery/computer/camera - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

camera + + + +

+ + +

Vars

cam_plane_mastersAll the plane masters that need to be applied.
+

Var Details

cam_plane_masters + + + + +

+

All the plane masters that need to be applied.

+ + + diff --git a/obj/machinery/computer/camera_advanced.html b/obj/machinery/computer/camera_advanced.html new file mode 100644 index 0000000000000..1423990445bac --- /dev/null +++ b/obj/machinery/computer/camera_advanced.html @@ -0,0 +1,44 @@ + + + + + + + /obj/machinery/computer/camera_advanced - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

camera_advanced + + + +

+ + + +

Procs

CreateEyeCreates this computer's eye object and sets up its references.
clear_eye_refThis proc is used to make sure no references or other leftovers are left behind if the computer's eye is deleted. +To achieve this, it reacts to the PARENT_QDELETING signal of the computer's eye object and triggers if it is sent.

Proc Details

CreateEye +

+

Creates this computer's eye object and sets up its references.

clear_eye_ref +

+

This proc is used to make sure no references or other leftovers are left behind if the computer's eye is deleted. +To achieve this, it reacts to the PARENT_QDELETING signal of the computer's eye object and triggers if it is sent.

+ + + diff --git a/obj/machinery/computer/camera_advanced/overwatch.html b/obj/machinery/computer/camera_advanced/overwatch.html new file mode 100644 index 0000000000000..1baf4b3223cc3 --- /dev/null +++ b/obj/machinery/computer/camera_advanced/overwatch.html @@ -0,0 +1,246 @@ + + + + + + + /obj/machinery/computer/camera_advanced/overwatch - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

overwatch + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

bombardment_radial_optionsStatic list of CIC radial options for the camera when clicking on an OB marker
busyThe overwatch computer is busy launching an OB/SB, lock controls
cic_miniGroundside minimap for overwatch
current_orderSelected order to give to marine
current_squadSquad being currently overseen
dead_hiddenwhether or not we show the dead marines in the squad.
factionThe faction that this computer can overwatch
human_radial_optionsStatic list of CIC radial options for the camera when clicking on a marine
map_flagsOverrides the minimap action minimap and marker flags
marked_laseRef of the lase that's had an OB warning mark placed on the minimap
selected_targetSelected target for bombarding
send_attack_orderdatum used when sending an attack order
send_defend_orderdatum used when sending a defend order
send_rally_orderdatum used when sending a rally order
send_retreat_orderdatum used when sending a retreat order
squad_radial_optionsStatic list of CIC radial options for the camera when having clicked on a turf and selected Squad Actions
turf_radial_optionsStatic list of CIC radial options for the camera when clicking on a turf
watchable_squadsThe list of all squads that can be watched
z_hiddenwhich z level is ignored when showing marines.

Procs

alert_laseLets anyone using an overwatch console know that an OB has just been lased
attempt_radialSignal handler for radial menu
attempt_spotlightThis is an orbital light. Basically, huge thing which the CIC can use to light up areas for a bit of time.
do_fire_bombardAbout to fire
do_land_bombardRandomises OB impact location a little and tells the OB cannon to fire
do_radialQuick-select radial menu for Overwatch
handle_bombardChecks and warnings before OB starts to fire
message_memberMessages a specific individual
remove_mark_from_laseRemoves any active marks on OB lases, if any
send_orderPrint order visual to all marines squad hud and give them an arrow to follow the waypoint
set_orderSetter for the current order
squad_selectRadial squad select menu.
+

Var Details

bombardment_radial_options + + + + +

+

Static list of CIC radial options for the camera when clicking on an OB marker

busy + + + + +

+

The overwatch computer is busy launching an OB/SB, lock controls

cic_mini + + + + +

+

Groundside minimap for overwatch

current_order + + + + +

+

Selected order to give to marine

current_squad + + + + +

+

Squad being currently overseen

dead_hidden + + + + +

+

whether or not we show the dead marines in the squad.

faction + + + + +

+

The faction that this computer can overwatch

human_radial_options + + + + +

+

Static list of CIC radial options for the camera when clicking on a marine

map_flags + + + + +

+

Overrides the minimap action minimap and marker flags

marked_lase + + + + +

+

Ref of the lase that's had an OB warning mark placed on the minimap

selected_target + + + + +

+

Selected target for bombarding

send_attack_order + + + + +

+

datum used when sending an attack order

send_defend_order + + + + +

+

datum used when sending a defend order

send_rally_order + + + + +

+

datum used when sending a rally order

send_retreat_order + + + + +

+

datum used when sending a retreat order

squad_radial_options + + + + +

+

Static list of CIC radial options for the camera when having clicked on a turf and selected Squad Actions

turf_radial_options + + + + +

+

Static list of CIC radial options for the camera when clicking on a turf

watchable_squads + + + + +

+

The list of all squads that can be watched

z_hidden + + + + +

+

which z level is ignored when showing marines.

Proc Details

alert_lase +

+

Lets anyone using an overwatch console know that an OB has just been lased

attempt_radial +

+

Signal handler for radial menu

attempt_spotlight +

+

This is an orbital light. Basically, huge thing which the CIC can use to light up areas for a bit of time.

do_fire_bombard +

+

About to fire

do_land_bombard +

+

Randomises OB impact location a little and tells the OB cannon to fire

do_radial +

+

Quick-select radial menu for Overwatch

handle_bombard +

+

Checks and warnings before OB starts to fire

message_member +

+

Messages a specific individual

remove_mark_from_lase +

+

Removes any active marks on OB lases, if any

send_order +

+

Print order visual to all marines squad hud and give them an arrow to follow the waypoint

set_order +

+

Setter for the current order

squad_select +

+

Radial squad select menu.

+ + + diff --git a/obj/machinery/computer/camera_advanced/remote_fob.html b/obj/machinery/computer/camera_advanced/remote_fob.html new file mode 100644 index 0000000000000..19b606d991ec2 --- /dev/null +++ b/obj/machinery/computer/camera_advanced/remote_fob.html @@ -0,0 +1,42 @@ + + + + + + + /obj/machinery/computer/camera_advanced/remote_fob - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

remote_fob + + + +

+ +

the camera computer

+ +

Procs

eject_matEject all of the selected mat from the fob drone console
on_controller_clickLets players click a tile while controlling to face it.

Proc Details

eject_mat +

+

Eject all of the selected mat from the fob drone console

on_controller_click +

+

Lets players click a tile while controlling to face it.

+ + + diff --git a/obj/machinery/computer/camera_advanced/shuttle_docker.html b/obj/machinery/computer/camera_advanced/shuttle_docker.html new file mode 100644 index 0000000000000..05eab513fe3a4 --- /dev/null +++ b/obj/machinery/computer/camera_advanced/shuttle_docker.html @@ -0,0 +1,213 @@ + + + + + + + /obj/machinery/computer/camera_advanced/shuttle_docker - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

shuttle_docker + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

designate_timeDelay of the place_action
designating_target_locTurf that was selected for landing
jammedThe console is unusable when jammed
jumpto_portsHashset of ports to jump to and ignore for collision purposes
last_valid_ground_portThe previous custom docking port that was safely landed at, for emergency landings
locked_traitsTraits forbided for custom docking
my_portThe custom docking port placed by this console
nvg_vision_modeIf the user wants to see with night vision on
place_actionAction of placing the shuttle custom landing zone
rotate_actionAction of rotating the shuttle around its center
see_hiddenAre we able to see hidden ports when using the console
shuttleIdThe id of the shuttle linked to this console
shuttlePortIdThe id of the custom docking port placed by this console
shuttlePortNameThe name of the custom docking port placed by this console
shuttle_portThe mobile docking port of the connected shuttle
view_rangeDimensions of the viewport when using this console
whitelist_turfsTurfs that can be landed on
x_offsetHorizontal offset from the console of the origin tile when using it
y_offsetVertical offset from the console of the origin tile when using it

Procs

canDesignateTargetCreate one use port that deleted after fly off, to not lose information that is needed to properly fly off. +Checks if we are able to designate the target location
checkLandingSpotChecks if the currently hovered area is a valid landing spot
checkLandingTurfChecks if the turf is valid for landing
check_hovering_spotChecks if the currently hovered area is accessible by the shuttle
placeLandingSpotHandles the creation of the custom landing spot
rotateLandingSpotHandles the rotation of the shuttle
shuttle_arrivedChange the fly state of the shuttle, called when a new shuttle port is reached
+

Var Details

designate_time + + + + +

+

Delay of the place_action

designating_target_loc + + + + +

+

Turf that was selected for landing

jammed + + + + +

+

The console is unusable when jammed

jumpto_ports + + + + +

+

Hashset of ports to jump to and ignore for collision purposes

last_valid_ground_port + + + + +

+

The previous custom docking port that was safely landed at, for emergency landings

locked_traits + + + + +

+

Traits forbided for custom docking

my_port + + + + +

+

The custom docking port placed by this console

nvg_vision_mode + + + + +

+

If the user wants to see with night vision on

place_action + + + + +

+

Action of placing the shuttle custom landing zone

rotate_action + + + + +

+

Action of rotating the shuttle around its center

see_hidden + + + + +

+

Are we able to see hidden ports when using the console

shuttleId + + + + +

+

The id of the shuttle linked to this console

shuttlePortId + + + + +

+

The id of the custom docking port placed by this console

shuttlePortName + + + + +

+

The name of the custom docking port placed by this console

shuttle_port + + + + +

+

The mobile docking port of the connected shuttle

view_range + + + + +

+

Dimensions of the viewport when using this console

whitelist_turfs + + + + +

+

Turfs that can be landed on

x_offset + + + + +

+

Horizontal offset from the console of the origin tile when using it

y_offset + + + + +

+

Vertical offset from the console of the origin tile when using it

Proc Details

canDesignateTarget +

+

Create one use port that deleted after fly off, to not lose information that is needed to properly fly off. +Checks if we are able to designate the target location

checkLandingSpot +

+

Checks if the currently hovered area is a valid landing spot

checkLandingTurf +

+

Checks if the turf is valid for landing

check_hovering_spot +

+

Checks if the currently hovered area is accessible by the shuttle

placeLandingSpot +

+

Handles the creation of the custom landing spot

rotateLandingSpot +

+

Handles the rotation of the shuttle

shuttle_arrived +

+

Change the fly state of the shuttle, called when a new shuttle port is reached

+ + + diff --git a/obj/machinery/computer/camera_advanced/shuttle_docker/minidropship.html b/obj/machinery/computer/camera_advanced/shuttle_docker/minidropship.html new file mode 100644 index 0000000000000..25deea6eb78f7 --- /dev/null +++ b/obj/machinery/computer/camera_advanced/shuttle_docker/minidropship.html @@ -0,0 +1,120 @@ + + + + + + + /obj/machinery/computer/camera_advanced/shuttle_docker/minidropship - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

minidropship + + + +

+ + + + + + + + + + + + + + +

Vars

destination_fly_stateThe flying state we will have when reaching our destination
fly_stateThe current flying state of the shuttle
land_actionAction of landing to a custom zone
launching_delayHow long before you can launch tadpole after a landing
next_fly_stateThe next flying state of the shuttle
origin_port_idThe id of the stationary docking port on the ship
tadmapMinimap for use while in landing cam mode
to_transitIf the next destination is a transit
ui_userThe user of the ui

Procs

clean_ui_userSet ui_user to null to prevent hard del
return_to_shipThe action of sending the shuttle back to its shuttle port on main ship
take_offThe action of taking off and sending the shuttle to the atmosphere
toggle_nvgToggle the vision between small nightvision and turf vision
+

Var Details

destination_fly_state + + + + +

+

The flying state we will have when reaching our destination

fly_state + + + + +

+

The current flying state of the shuttle

land_action + + + + +

+

Action of landing to a custom zone

launching_delay + + + + +

+

How long before you can launch tadpole after a landing

next_fly_state + + + + +

+

The next flying state of the shuttle

origin_port_id + + + + +

+

The id of the stationary docking port on the ship

tadmap + + + + +

+

Minimap for use while in landing cam mode

to_transit + + + + +

+

If the next destination is a transit

ui_user + + + + +

+

The user of the ui

Proc Details

clean_ui_user +

+

Set ui_user to null to prevent hard del

return_to_ship +

+

The action of sending the shuttle back to its shuttle port on main ship

take_off +

+

The action of taking off and sending the shuttle to the atmosphere

toggle_nvg +

+

Toggle the vision between small nightvision and turf vision

+ + + diff --git a/obj/machinery/computer/cloning_console/vats.html b/obj/machinery/computer/cloning_console/vats.html new file mode 100644 index 0000000000000..be40acb59c5bd --- /dev/null +++ b/obj/machinery/computer/cloning_console/vats.html @@ -0,0 +1,30 @@ + + + + + + + /obj/machinery/computer/cloning_console/vats - byond + + +
+ byond - + Modules - + Types +
+
+

vats + + + +

+ +

These automatically generate marine bodies based on a timer. +These hold the body until taken by a ghost where they "burst" from the vat.

+

The vat then needs to be repaired and refilled with biomass.

+ + + diff --git a/obj/machinery/computer/crew.html b/obj/machinery/computer/crew.html new file mode 100644 index 0000000000000..bec0d3ac613e8 --- /dev/null +++ b/obj/machinery/computer/crew.html @@ -0,0 +1,42 @@ + + + + + + + /obj/machinery/computer/crew - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

crew + + + +

+ + + +

Procs

add_to_trackedAdd an atom to the tracked list
remove_from_trackedRemove an atom from the tracked list

Proc Details

add_to_tracked +

+

Add an atom to the tracked list

remove_from_tracked +

+

Remove an atom from the tracked list

+ + + diff --git a/obj/machinery/computer/dropship_picker.html b/obj/machinery/computer/dropship_picker.html new file mode 100644 index 0000000000000..fafc8526c562d --- /dev/null +++ b/obj/machinery/computer/dropship_picker.html @@ -0,0 +1,50 @@ + + + + + + + /obj/machinery/computer/dropship_picker - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

dropship_picker + + + +

+ + + + +

Vars

current_template_refcurrently chosen ref to a template from tgui
dock_iddock id to dock our chosen shuttle at
dropship_selectedif true lock console
+

Var Details

current_template_ref + + + + +

+

currently chosen ref to a template from tgui

dock_id + + + + +

+

dock id to dock our chosen shuttle at

dropship_selected + + + + +

+

if true lock console

+ + + diff --git a/obj/machinery/computer/intel_computer.html b/obj/machinery/computer/intel_computer.html new file mode 100644 index 0000000000000..b960b025f9134 --- /dev/null +++ b/obj/machinery/computer/intel_computer.html @@ -0,0 +1,113 @@ + + + + + + + /obj/machinery/computer/intel_computer - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

intel_computer + + + +

+ + + + + + + + + + + + + +

Vars

activeWhether this computer is activated by the event yet
dropship_rewardHow much dropship points you get for completing the terminal
factionWhat faction has launched the intel process
first_loginOn first login we want it to play a cool animation
logged_inhave we logged into the terminal yet?
printingIs it currently active?
printing_completeWhen we reach max progress and get the points
progressTracks how much of the terminal is completed
progress_intervalHow much progress we get every tick, up to 100
supply_rewardHow much supply points you get for completing the terminal

Procs

disable_on_hijackDeactivates this intel computer, for use on hijack
update_minimap_iconChange minimap icon if its on or off
+

Var Details

active + + + + +

+

Whether this computer is activated by the event yet

dropship_reward + + + + +

+

How much dropship points you get for completing the terminal

faction + + + + +

+

What faction has launched the intel process

first_login + + + + +

+

On first login we want it to play a cool animation

logged_in + + + + +

+

have we logged into the terminal yet?

printing + + + + +

+

Is it currently active?

printing_complete + + + + +

+

When we reach max progress and get the points

progress + + + + +

+

Tracks how much of the terminal is completed

progress_interval + + + + +

+

How much progress we get every tick, up to 100

supply_reward + + + + +

+

How much supply points you get for completing the terminal

Proc Details

disable_on_hijack +

+

Deactivates this intel computer, for use on hijack

update_minimap_icon +

+

Change minimap icon if its on or off

+ + + diff --git a/obj/machinery/computer/mech_bay_power_console.html b/obj/machinery/computer/mech_bay_power_console.html new file mode 100644 index 0000000000000..230787cf04725 --- /dev/null +++ b/obj/machinery/computer/mech_bay_power_console.html @@ -0,0 +1,43 @@ + + + + + + + /obj/machinery/computer/mech_bay_power_console - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

mech_bay_power_console + + + +

+ + + +

Vars

recharge_portRef to charge port fwe are viewing data for, cyclical reference

Procs

reconnectChecks for nearby recharge ports to link to
+

Var Details

recharge_port + + + + +

+

Ref to charge port fwe are viewing data for, cyclical reference

Proc Details

reconnect +

+

Checks for nearby recharge ports to link to

+ + + diff --git a/obj/machinery/computer/mech_builder.html b/obj/machinery/computer/mech_builder.html new file mode 100644 index 0000000000000..37a1162ebda4d --- /dev/null +++ b/obj/machinery/computer/mech_builder.html @@ -0,0 +1,127 @@ + + + + + + + /obj/machinery/computer/mech_builder - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

mech_builder + + + +

+ + + + + + + + + + + + + + + +

Vars

available_colorslist(STRING-list(STRING-STRING)) of primary and secondary palettes. first string is category, second is name
available_visor_colorslist(STRING-list(STRING-STRING)) of visor palettes. first string is category, second is name
current_statslist of stat data that will be sent to the UI
equipment_maxList of max equipment that we're allowed to attach while using this console
mech_viewreference to the mech screen object
selected_equipmentCurrently selected equipment, maxes are determined by equipment_max
selected_namecurrent selected name for the mech
selected_primarySTRING-STRING list of mech_slot-primary_color_palette
selected_secondarySTRING-STRING list of mech_slot-secondary_color_palette
selected_variantsSTRING-STRING list of mech_slot-part_type
selected_visorstring of the visor palette

Procs

deploy_mechActually deploys mech after a short delay to let people spot it coming down
update_statsupdates the current_stats data for the UI
update_ui_viewUpdates the displayed mech preview dummy in the UI
+

Var Details

available_colors + + + + +

+

list(STRING-list(STRING-STRING)) of primary and secondary palettes. first string is category, second is name

available_visor_colors + + + + +

+

list(STRING-list(STRING-STRING)) of visor palettes. first string is category, second is name

current_stats + + + + +

+

list of stat data that will be sent to the UI

equipment_max + + + + +

+

List of max equipment that we're allowed to attach while using this console

mech_view + + + + +

+

reference to the mech screen object

selected_equipment + + + + +

+

Currently selected equipment, maxes are determined by equipment_max

selected_name + + + + +

+

current selected name for the mech

selected_primary + + + + +

+

STRING-STRING list of mech_slot-primary_color_palette

selected_secondary + + + + +

+

STRING-STRING list of mech_slot-secondary_color_palette

selected_variants + + + + +

+

STRING-STRING list of mech_slot-part_type

selected_visor + + + + +

+

string of the visor palette

Proc Details

deploy_mech +

+

Actually deploys mech after a short delay to let people spot it coming down

update_stats +

+

updates the current_stats data for the UI

update_ui_view +

+

Updates the displayed mech preview dummy in the UI

+ + + diff --git a/obj/machinery/computer/navigation.html b/obj/machinery/computer/navigation.html new file mode 100644 index 0000000000000..b5be25b1d636c --- /dev/null +++ b/obj/machinery/computer/navigation.html @@ -0,0 +1,64 @@ + + + + + + + /obj/machinery/computer/navigation - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

navigation + + + +

+ + + + + + +

Vars

aidisabledboolean this machine can be interacted with by the AI player. FALSE = can interact
authenticatedboolean there is an authorized person logged into this console. TRUE = logged in authorized person
changing_orbitboolean the spaceship it currently in the process of changing orbits
shortedboolean this machine is cut off from power and is sparking uncontrollably FALSE = everything fine
timer_idtimer id to prevent hardel from the varset call back
+

Var Details

aidisabled + + + + +

+

boolean this machine can be interacted with by the AI player. FALSE = can interact

authenticated + + + + +

+

boolean there is an authorized person logged into this console. TRUE = logged in authorized person

changing_orbit + + + + +

+

boolean the spaceship it currently in the process of changing orbits

shorted + + + + +

+

boolean this machine is cut off from power and is sparking uncontrollably FALSE = everything fine

timer_id + + + + +

+

timer id to prevent hardel from the varset call back

+ + + diff --git a/obj/machinery/computer/nt_access.html b/obj/machinery/computer/nt_access.html new file mode 100644 index 0000000000000..6cfb244e40a2d --- /dev/null +++ b/obj/machinery/computer/nt_access.html @@ -0,0 +1,120 @@ + + + + + + + /obj/machinery/computer/nt_access - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

nt_access + + + +

+ + + + + + + + + + + + + + +

Vars

busyCheck if someone is printing already
code_colorFor designating minimap color icon
completed_segmentsWhat segment we are on, (once this hits total, disk is printed)
current_timerThe current ID of the timer running
messageThe flavor message that shows up in the UI upon segment completion
runningIs a segment currently running?
seconds_elapsedOverall seconds elapsed
segment_timeTime needed for the machine to generate the disc
start_timeTime to start a segment
technobabbleUI messages for each progress segment
total_segmentsTotal number of times the hack is required

Procs

complete_segmentCompletes a stage of program progress
update_minimap_iconChange minimap icon if its on or off
+

Var Details

busy + + + + +

+

Check if someone is printing already

code_color + + + + +

+

For designating minimap color icon

completed_segments + + + + +

+

What segment we are on, (once this hits total, disk is printed)

current_timer + + + + +

+

The current ID of the timer running

message + + + + +

+

The flavor message that shows up in the UI upon segment completion

running + + + + +

+

Is a segment currently running?

seconds_elapsed + + + + +

+

Overall seconds elapsed

segment_time + + + + +

+

Time needed for the machine to generate the disc

start_time + + + + +

+

Time to start a segment

technobabble + + + + +

+

UI messages for each progress segment

total_segments + + + + +

+

Total number of times the hack is required

Proc Details

complete_segment +

+

Completes a stage of program progress

update_minimap_icon +

+

Change minimap icon if its on or off

+ + + diff --git a/obj/machinery/computer/nuke_disk_generator.html b/obj/machinery/computer/nuke_disk_generator.html new file mode 100644 index 0000000000000..80652fcd5b5b7 --- /dev/null +++ b/obj/machinery/computer/nuke_disk_generator.html @@ -0,0 +1,120 @@ + + + + + + + /obj/machinery/computer/nuke_disk_generator - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

nuke_disk_generator + + + +

+ + + + + + + + + + + + + + +

Vars

busyCheck if someone is printing already
completed_segmentsWhat segment we are on, (once this hits total, disk is printed)
current_timerThe current ID of the timer running
disk_colorFor designating minimap color icon
disk_typeThe type of disk we're printing
messageThe flavor message that shows up in the UI upon segment completion
printing_timeTime to print a disk
runningIs a segment currently running?
seconds_elapsedOverall seconds elapsed
segment_timeTime needed for the machine to generate the disc
start_timeTime to start a segment
total_segmentsTotal number of times the hack is required

Procs

update_minimap_iconChange minimap icon if its on or off
+

Var Details

busy + + + + +

+

Check if someone is printing already

completed_segments + + + + +

+

What segment we are on, (once this hits total, disk is printed)

current_timer + + + + +

+

The current ID of the timer running

disk_color + + + + +

+

For designating minimap color icon

disk_type + + + + +

+

The type of disk we're printing

message + + + + +

+

The flavor message that shows up in the UI upon segment completion

printing_time + + + + +

+

Time to print a disk

running + + + + +

+

Is a segment currently running?

seconds_elapsed + + + + +

+

Overall seconds elapsed

segment_time + + + + +

+

Time needed for the machine to generate the disc

start_time + + + + +

+

Time to start a segment

total_segments + + + + +

+

Total number of times the hack is required

Proc Details

update_minimap_icon +

+

Change minimap icon if its on or off

+ + + diff --git a/obj/machinery/computer/shuttle/shuttle_control.html b/obj/machinery/computer/shuttle/shuttle_control.html new file mode 100644 index 0000000000000..0bc6c7f5431ca --- /dev/null +++ b/obj/machinery/computer/shuttle/shuttle_control.html @@ -0,0 +1,43 @@ + + + + + + + /obj/machinery/computer/shuttle/shuttle_control - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

shuttle_control + + + +

+ + + +

Vars

compatible_control_flagsAble to auto-relink to any shuttle with at least one of the flags in common if shuttleId is invalid.

Procs

RelinkShuttleIdRelinks the shuttleId in the console to a valid shuttle currently existing. Will only relink to a shuttle with a matching control_flags flag. Returns true if successfully relinked
+

Var Details

compatible_control_flags + + + + +

+

Able to auto-relink to any shuttle with at least one of the flags in common if shuttleId is invalid.

Proc Details

RelinkShuttleId +

+

Relinks the shuttleId in the console to a valid shuttle currently existing. Will only relink to a shuttle with a matching control_flags flag. Returns true if successfully relinked

+ + + diff --git a/obj/machinery/computer/sleep_console.html b/obj/machinery/computer/sleep_console.html new file mode 100644 index 0000000000000..0392db9a61e0e --- /dev/null +++ b/obj/machinery/computer/sleep_console.html @@ -0,0 +1,50 @@ + + + + + + + /obj/machinery/computer/sleep_console - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

sleep_console + + + +

+ + + + +

Vars

connectedThe connected sleeper

Procs

clean_connectedClean the connected var
set_connectedSet the connected var
+

Var Details

connected + + + + +

+

The connected sleeper

Proc Details

clean_connected +

+

Clean the connected var

set_connected +

+

Set the connected var

+ + + diff --git a/obj/machinery/computer/squad_changer.html b/obj/machinery/computer/squad_changer.html new file mode 100644 index 0000000000000..e60ee4d5c39f7 --- /dev/null +++ b/obj/machinery/computer/squad_changer.html @@ -0,0 +1,36 @@ + + + + + + + /obj/machinery/computer/squad_changer - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

squad_changer + + + +

+ + +

Vars

factionWhich faction this computer belongs to
+

Var Details

faction + + + + +

+

Which faction this computer belongs to

+ + + diff --git a/obj/machinery/computer/supplycomp.html b/obj/machinery/computer/supplycomp.html new file mode 100644 index 0000000000000..1e7d7475e2cb5 --- /dev/null +++ b/obj/machinery/computer/supplycomp.html @@ -0,0 +1,50 @@ + + + + + + + /obj/machinery/computer/supplycomp - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

supplycomp + + + +

+ + + + +

Vars

factionFaction of the computer
home_idId of the home docking port
shuttle_idId of the shuttle controlled
+

Var Details

faction + + + + +

+

Faction of the computer

home_id + + + + +

+

Id of the home docking port

shuttle_id + + + + +

+

Id of the shuttle controlled

+ + + diff --git a/obj/machinery/computer/supplydrop_console.html b/obj/machinery/computer/supplydrop_console.html new file mode 100644 index 0000000000000..a0803dc7f58b9 --- /dev/null +++ b/obj/machinery/computer/supplydrop_console.html @@ -0,0 +1,113 @@ + + + + + + + /obj/machinery/computer/supplydrop_console - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

supplydrop_console + + + +

+ + + + + + + + + + + + + +

Vars

factionFaction of this drop console
launch_cooldownTime between two supply drops
suppliesThe content sent
supply_beaconThe beacon we will send the supplies
supply_padThe linked supply pad of this console
x_offsetX offset of the drop, relative to the supply beacon loc
y_offsetY offset of the drop, relative to the supply beacon loc

Procs

clean_supply_beaconClean up the supply beacon var
fire_supplydropMake the supplies teleport
ping_beaconUsed to notify of a new beacon target
refresh_padLook for the content on the supply pad
send_supplydropStart the supply drop process
+

Var Details

faction + + + + +

+

Faction of this drop console

launch_cooldown + + + + +

+

Time between two supply drops

supplies + + + + +

+

The content sent

supply_beacon + + + + +

+

The beacon we will send the supplies

supply_pad + + + + +

+

The linked supply pad of this console

x_offset + + + + +

+

X offset of the drop, relative to the supply beacon loc

y_offset + + + + +

+

Y offset of the drop, relative to the supply beacon loc

Proc Details

clean_supply_beacon +

+

Clean up the supply beacon var

fire_supplydrop +

+

Make the supplies teleport

ping_beacon +

+

Used to notify of a new beacon target

refresh_pad +

+

Look for the content on the supply pad

send_supplydrop +

+

Start the supply drop process

+ + + diff --git a/obj/machinery/conveyor.html b/obj/machinery/conveyor.html new file mode 100644 index 0000000000000..2b9d405da1e67 --- /dev/null +++ b/obj/machinery/conveyor.html @@ -0,0 +1,85 @@ + + + + + + + /obj/machinery/conveyor - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

conveyor + + + +

+ + + + + + + + + +

Vars

conveyor_flagsConveyor specific flags
idthe control ID - must match controller ID
movedirCurrent direction of movement
operatingOperating direction

Procs

conveyAttempts to move a batch of AMs
set_operatingHandles setting its operating status
updateChecks to see if the conveyor needs to be switched off
update_move_directionSets the correct movement directions based on dir
+

Var Details

conveyor_flags + + + + +

+

Conveyor specific flags

id + + + + +

+

the control ID - must match controller ID

movedir + + + + +

+

Current direction of movement

operating + + + + +

+

Operating direction

Proc Details

convey +

+

Attempts to move a batch of AMs

set_operating +

+

Handles setting its operating status

update +

+

Checks to see if the conveyor needs to be switched off

update_move_direction +

+

Sets the correct movement directions based on dir

+ + + diff --git a/obj/machinery/conveyor_switch.html b/obj/machinery/conveyor_switch.html new file mode 100644 index 0000000000000..7422724f2cec3 --- /dev/null +++ b/obj/machinery/conveyor_switch.html @@ -0,0 +1,92 @@ + + + + + + + /obj/machinery/conveyor_switch - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

conveyor_switch + + + +

+ +

the conveyor control switch

+ + + + + + + + +

Vars

idID. Must match conveyor ID's to control them
invert_iconIf the level points the opposite direction when it's turned on.
last_posPrevious switch position
onewayIf this only works one way
positionswitch position

Procs

interactCalled when a user clicks on this switch with an open hand.
update_linked_conveyorsUpdates all conveyor belts that are linked to this switch, and tells them to start processing.
update_linked_switchesFinds any switches with same id as this one, and set their position and icon to match us.
update_positionUpdates the switch's position and last_pos variable. Useful so that the switch can properly cycle between the forwards, backwards and neutral positions.
+

Var Details

id + + + + +

+

ID. Must match conveyor ID's to control them

invert_icon + + + + +

+

If the level points the opposite direction when it's turned on.

last_pos + + + + +

+

Previous switch position

oneway + + + + +

+

If this only works one way

position + + + + +

+

switch position

Proc Details

interact +

+

Called when a user clicks on this switch with an open hand.

update_linked_conveyors +

+

Updates all conveyor belts that are linked to this switch, and tells them to start processing.

update_linked_switches +

+

Finds any switches with same id as this one, and set their position and icon to match us.

update_position +

+

Updates the switch's position and last_pos variable. Useful so that the switch can properly cycle between the forwards, backwards and neutral positions.

+ + + diff --git a/obj/machinery/cryopod.html b/obj/machinery/cryopod.html new file mode 100644 index 0000000000000..95fbbcda59e11 --- /dev/null +++ b/obj/machinery/cryopod.html @@ -0,0 +1,43 @@ + + + + + + + /obj/machinery/cryopod - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

cryopod + + + +

+ + + +

Vars

occupantPerson waiting to be taken by ghosts
radiothe radio plugged into this pod
+

Var Details

occupant + + + + +

+

Person waiting to be taken by ghosts

radio + + + + +

+

the radio plugged into this pod

+ + + diff --git a/obj/machinery/deployable.html b/obj/machinery/deployable.html new file mode 100644 index 0000000000000..1ff66a9246dce --- /dev/null +++ b/obj/machinery/deployable.html @@ -0,0 +1,50 @@ + + + + + + + /obj/machinery/deployable - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

deployable + + + +

+ + + + +

Vars

default_icon_stateSince /obj/machinery/deployable aquires its sprites from an item and are set in New(), initial(icon_state) would return null. This var exists as a substitute.
internal_itemWeakref to item that is deployed to create src.

Procs

welder_actRepairs machine
+

Var Details

default_icon_state + + + + +

+

Since /obj/machinery/deployable aquires its sprites from an item and are set in New(), initial(icon_state) would return null. This var exists as a substitute.

internal_item + + + + +

+

Weakref to item that is deployed to create src.

Proc Details

welder_act +

+

Repairs machine

+ + + diff --git a/obj/machinery/deployable/dispenser.html b/obj/machinery/deployable/dispenser.html new file mode 100644 index 0000000000000..e53214d87b377 --- /dev/null +++ b/obj/machinery/deployable/dispenser.html @@ -0,0 +1,71 @@ + + + + + + + /obj/machinery/deployable/dispenser - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

dispenser + + + +

+ + + + + + + +

Vars

activeif the dispenser has finished deploying and is fully active and can be used.
affecting_listlist of human mobs we're currently affecting in our area.

Procs

deployfinishes deploying after the deploy timer
entered_tileschecks if a mob that moved close is elligible to get heal beamed.
on_affecting_qdelcleans human from affecting_list when it gets qdeletted
on_beam_qdelcleans human from affecting_list when the beam gets qdeletted
+

Var Details

active + + + + +

+

if the dispenser has finished deploying and is fully active and can be used.

affecting_list + + + + +

+

list of human mobs we're currently affecting in our area.

Proc Details

deploy +

+

finishes deploying after the deploy timer

entered_tiles +

+

checks if a mob that moved close is elligible to get heal beamed.

on_affecting_qdel +

+

cleans human from affecting_list when it gets qdeletted

on_beam_qdel +

+

cleans human from affecting_list when the beam gets qdeletted

+ + + diff --git a/obj/machinery/deployable/floodlight.html b/obj/machinery/deployable/floodlight.html new file mode 100644 index 0000000000000..708d78f86ada5 --- /dev/null +++ b/obj/machinery/deployable/floodlight.html @@ -0,0 +1,43 @@ + + + + + + + /obj/machinery/deployable/floodlight - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

floodlight + + + +

+ + + +

Vars

floodlight_light_rangeThe lighting power of the floodlight
repair_amountThe amount of integrity repaired with every welder act.
+

Var Details

floodlight_light_range + + + + +

+

The lighting power of the floodlight

repair_amount + + + + +

+

The amount of integrity repaired with every welder act.

+ + + diff --git a/obj/machinery/deployable/minelayer.html b/obj/machinery/deployable/minelayer.html new file mode 100644 index 0000000000000..eda16c6fb1638 --- /dev/null +++ b/obj/machinery/deployable/minelayer.html @@ -0,0 +1,78 @@ + + + + + + + /obj/machinery/deployable/minelayer - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

minelayer + + + +

+ + + + + + + + +

Vars

cooldowntime between throws
iff_signalstored iff signal
max_amounthow many mines can be stored
rangeradius on mine placement
stored_amounthow many mines are currently stored

Procs

place_minethis proc is used to check a turf and place mines
throw_minethis proc is used to check for valid turfs and throw mines
+

Var Details

cooldown + + + + +

+

time between throws

iff_signal + + + + +

+

stored iff signal

max_amount + + + + +

+

how many mines can be stored

range + + + + +

+

radius on mine placement

stored_amount + + + + +

+

how many mines are currently stored

Proc Details

place_mine +

+

this proc is used to check a turf and place mines

throw_mine +

+

this proc is used to check for valid turfs and throw mines

+ + + diff --git a/obj/machinery/deployable/mortar.html b/obj/machinery/deployable/mortar.html new file mode 100644 index 0000000000000..e9a285430b97a --- /dev/null +++ b/obj/machinery/deployable/mortar.html @@ -0,0 +1,232 @@ + + + + + + + /obj/machinery/deployable/mortar - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

mortar + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

ai_targeterUsed for remote targeting by AI
allowed_shellsWhat type of shells can we use?
chamber_itemsList of stored ammunition items.
cool_off_timeTime it takes for the mortar to cool off to fire
coordslist of the target x and y, and the dialing we can do to them
current_shotsAmount of shots that we need to monitor with imapct cameras
fire_amountAmount of shells to fire if this is empty all shells in chamber items list will fire
fire_delayHow long to wait before next shot
fire_soundThe fire sound of the mortar or artillery piece.
firingUsed for deconstruction and aiming sanity
impact_camCamera to display impact shots
last_three_inputssaved last three inputs that were actually used to fire a round
linked_struct_binocularslist of linked binoculars to the structure of the mortar, used for continuity to item
max_roundsAmount of shells that can be loaded
max_spreadMax spread on target
minimum_rangeMinimum range to fire
offset_per_turfsNumber of turfs to offset from target by 1
reload_timeTime to load a shell
spreadConstant spread on target
tally_typeUsed for round stats

Procs

attack_aiPrompt for the AI to unlink itself.
begin_fireStart firing the gun on target and increase tally
fallingBegins fall animation for projectile and plays fall sound
get_new_listthis proc is used because pointers suck and references would break the saving of coordinates.
handle_undeploy_referencesHandles the continuity transfer of linked binoculars from the mortar struct to the mortar item
perform_firing_visualsperform any individual sprite-specific visuals here
recieve_targetProc called by tactical binoculars to send targeting information.
return_camReturns the impact camera to the mortar
unset_targeterUnlinking the AI from this mortar
+

Var Details

ai_targeter + + + + +

+

Used for remote targeting by AI

allowed_shells + + + + +

+

What type of shells can we use?

chamber_items + + + + +

+

List of stored ammunition items.

cool_off_time + + + + +

+

Time it takes for the mortar to cool off to fire

coords + + + + +

+

list of the target x and y, and the dialing we can do to them

current_shots + + + + +

+

Amount of shots that we need to monitor with imapct cameras

fire_amount + + + + +

+

Amount of shells to fire if this is empty all shells in chamber items list will fire

fire_delay + + + + +

+

How long to wait before next shot

fire_sound + + + + +

+

The fire sound of the mortar or artillery piece.

firing + + + + +

+

Used for deconstruction and aiming sanity

impact_cam + + + + +

+

Camera to display impact shots

last_three_inputs + + + + +

+

saved last three inputs that were actually used to fire a round

linked_struct_binoculars + + + + +

+

list of linked binoculars to the structure of the mortar, used for continuity to item

max_rounds + + + + +

+

Amount of shells that can be loaded

max_spread + + + + +

+

Max spread on target

minimum_range + + + + +

+

Minimum range to fire

offset_per_turfs + + + + +

+

Number of turfs to offset from target by 1

reload_time + + + + +

+

Time to load a shell

spread + + + + +

+

Constant spread on target

tally_type + + + + +

+

Used for round stats

Proc Details

attack_ai +

+

Prompt for the AI to unlink itself.

begin_fire +

+

Start firing the gun on target and increase tally

falling +

+

Begins fall animation for projectile and plays fall sound

get_new_list +

+

this proc is used because pointers suck and references would break the saving of coordinates.

handle_undeploy_references +

+

Handles the continuity transfer of linked binoculars from the mortar struct to the mortar item

perform_firing_visuals +

+

perform any individual sprite-specific visuals here

recieve_target +

+

Proc called by tactical binoculars to send targeting information.

return_cam +

+

Returns the impact camera to the mortar

unset_targeter +

+

Unlinking the AI from this mortar

+ + + diff --git a/obj/machinery/deployable/mounted.html b/obj/machinery/deployable/mounted.html new file mode 100644 index 0000000000000..816ba951b85ea --- /dev/null +++ b/obj/machinery/deployable/mounted.html @@ -0,0 +1,134 @@ + + + + + + + /obj/machinery/deployable/mounted - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

mounted + + + +

+ + + + + + + + + + + + + + + + +

Vars

has_anchored_spriteIf the gun has different sprites for being anchored.
user_old_move_resistStores user old move resist and apply on unset interaction
user_old_xStore user old pixel x
user_old_yStore user old pixel y

Procs

can_fireChecks if you can fire
change_targetHappens when you drag the mouse.
check_eyemakes sure you can see and or use the gun
hud_set_gun_ammoMakes mounted guns ammo visible
interactThis is called when a user tries to operate the gun
on_set_interactionSets the user as manning the internal gun
on_unset_interactionUnsets the user from manning the internal gun
reloadReloads the internal_item
start_fireBegins the Firing Process, does custom checks before calling the guns start_fire()
update_icon_stategenerates the icon based on how much ammo it has.
update_pixelsUpdates the pixel offset of user so it looks like their manning the gun from behind
+

Var Details

has_anchored_sprite + + + + +

+

If the gun has different sprites for being anchored.

user_old_move_resist + + + + +

+

Stores user old move resist and apply on unset interaction

user_old_x + + + + +

+

Store user old pixel x

user_old_y + + + + +

+

Store user old pixel y

Proc Details

can_fire +

+

Checks if you can fire

change_target +

+

Happens when you drag the mouse.

check_eye +

+

makes sure you can see and or use the gun

hud_set_gun_ammo +

+

Makes mounted guns ammo visible

interact +

+

This is called when a user tries to operate the gun

on_set_interaction +

+

Sets the user as manning the internal gun

on_unset_interaction +

+

Unsets the user from manning the internal gun

reload +

+

Reloads the internal_item

start_fire +

+

Begins the Firing Process, does custom checks before calling the guns start_fire()

update_icon_state +

+

generates the icon based on how much ammo it has.

update_pixels +

+

Updates the pixel offset of user so it looks like their manning the gun from behind

+ + + diff --git a/obj/machinery/deployable/mounted/moveable.html b/obj/machinery/deployable/mounted/moveable.html new file mode 100644 index 0000000000000..8366d6a6ddde0 --- /dev/null +++ b/obj/machinery/deployable/mounted/moveable.html @@ -0,0 +1,43 @@ + + + + + + + /obj/machinery/deployable/mounted/moveable - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

moveable + + + +

+ + + +

Vars

anchor_timeSets how long a deployable takes to be anchored

Procs

AltRightClickCan be anchored and unanchored from the ground by Alt Right Click.
+

Var Details

anchor_time + + + + +

+

Sets how long a deployable takes to be anchored

Proc Details

AltRightClick +

+

Can be anchored and unanchored from the ground by Alt Right Click.

+ + + diff --git a/obj/machinery/deployable/mounted/moveable/atgun.html b/obj/machinery/deployable/mounted/moveable/atgun.html new file mode 100644 index 0000000000000..807679feace90 --- /dev/null +++ b/obj/machinery/deployable/mounted/moveable/atgun.html @@ -0,0 +1,36 @@ + + + + + + + /obj/machinery/deployable/mounted/moveable/atgun - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

atgun + + + +

+ + +

Vars

sponsonThe internal storage of our atgun
+

Var Details

sponson + + + + +

+

The internal storage of our atgun

+ + + diff --git a/obj/machinery/deployable/mounted/sentry.html b/obj/machinery/deployable/mounted/sentry.html new file mode 100644 index 0000000000000..e1a19ea10bbb6 --- /dev/null +++ b/obj/machinery/deployable/mounted/sentry.html @@ -0,0 +1,183 @@ + + + + + + + /obj/machinery/deployable/mounted/sentry - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

sentry + + + +

+ + + + + + + + + + + + + + + + + + + + + + + +

Vars

cameraCamera for viewing with cam consoles
firingFor minimap icon change if sentry is firing
iff_signalIff signal of the sentry. If the /gun has a set IFF then this will be the same as that. If not the sentry will get its IFF signal from the deployer
knockdown_thresholdDamage required to knock the sentry over and disable it
last_alertTime of last alert
last_damage_alertTime of last damage alert
potential_targetsList of targets that can be shot at
radioRadio so that the sentry can scream for help
rangeView and fire range of the sentry
spark_systemSpark system for making sparks

Procs

check_next_shotChecks the range and the path of the target currently being shot at to see if it is eligable for being shot at again. If not it will stop the firing.
check_target_pathChecks the path to the target for obstructions. Returns TRUE if the path is clear, FALSE if not.
get_targetWorks through potential targets. First checks if they are in range, and if they are friend/foe. Then checks the path to them. Returns the first eligable target.
knock_downBonks the sentry onto its side. This currently is used here, and in /living/carbon/xeno/warrior/mob_abilities in punch
match_iffChecks the users faction against turret IFF, used to stop hostile factions from interacting with turrets in ways they shouldn't.
remove_empLifts EMP effects
scanChecks the nearby mobs for eligability. If they can be targets it stores them in potential_targets. Returns TRUE if there are targets, FALSE if not.
sentry_alertSentry wants to scream for help.
sentry_start_fireSees if theres a target to shoot, then handles firing.
sentry_stop_fireEnds firing
set_onHandles turning the sentry ON and OFF. new_state is a bool
update_minimap_iconChange minimap icon if its firing or not firing
+

Var Details

camera + + + + +

+

Camera for viewing with cam consoles

firing + + + + +

+

For minimap icon change if sentry is firing

iff_signal + + + + +

+

Iff signal of the sentry. If the /gun has a set IFF then this will be the same as that. If not the sentry will get its IFF signal from the deployer

knockdown_threshold + + + + +

+

Damage required to knock the sentry over and disable it

last_alert + + + + +

+

Time of last alert

last_damage_alert + + + + +

+

Time of last damage alert

potential_targets + + + + +

+

List of targets that can be shot at

radio + + + + +

+

Radio so that the sentry can scream for help

range + + + + +

+

View and fire range of the sentry

spark_system + + + + +

+

Spark system for making sparks

Proc Details

check_next_shot +

+

Checks the range and the path of the target currently being shot at to see if it is eligable for being shot at again. If not it will stop the firing.

check_target_path +

+

Checks the path to the target for obstructions. Returns TRUE if the path is clear, FALSE if not.

get_target +

+

Works through potential targets. First checks if they are in range, and if they are friend/foe. Then checks the path to them. Returns the first eligable target.

knock_down +

+

Bonks the sentry onto its side. This currently is used here, and in /living/carbon/xeno/warrior/mob_abilities in punch

match_iff +

+

Checks the users faction against turret IFF, used to stop hostile factions from interacting with turrets in ways they shouldn't.

remove_emp +

+

Lifts EMP effects

scan +

+

Checks the nearby mobs for eligability. If they can be targets it stores them in potential_targets. Returns TRUE if there are targets, FALSE if not.

sentry_alert +

+

Sentry wants to scream for help.

sentry_start_fire +

+

Sees if theres a target to shoot, then handles firing.

sentry_stop_fire +

+

Ends firing

set_on +

+

Handles turning the sentry ON and OFF. new_state is a bool

update_minimap_icon +

+

Change minimap icon if its firing or not firing

+ + + diff --git a/obj/machinery/deployable/reagent_tank.html b/obj/machinery/deployable/reagent_tank.html new file mode 100644 index 0000000000000..88b338ac120c6 --- /dev/null +++ b/obj/machinery/deployable/reagent_tank.html @@ -0,0 +1,57 @@ + + + + + + + /obj/machinery/deployable/reagent_tank - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

reagent_tank + + + +

+ + + + + +

Vars

container_flagsProperties relating to reagents for this container; whether you can check if reagents are visible, if it is refillable, etc.
max_volumeMaximum units of reagents this container can hold

Procs

drink_from_nozzleProcess for drinking reagents directly from the dispenser's nozzle
record_sippiesRecord what was drank and if it was medicinal
+

Var Details

container_flags + + + + +

+

Properties relating to reagents for this container; whether you can check if reagents are visible, if it is refillable, etc.

max_volume + + + + +

+

Maximum units of reagents this container can hold

Proc Details

drink_from_nozzle +

+

Process for drinking reagents directly from the dispenser's nozzle

record_sippies +

+

Record what was drank and if it was medicinal

+ + + diff --git a/obj/machinery/deployable/teleporter.html b/obj/machinery/deployable/teleporter.html new file mode 100644 index 0000000000000..6741a6c546831 --- /dev/null +++ b/obj/machinery/deployable/teleporter.html @@ -0,0 +1,43 @@ + + + + + + + /obj/machinery/deployable/teleporter - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

teleporter + + + +

+ + + +

Vars

blacklisted_typesList of banned teleportable types
teleportable_typesList of all teleportable types
+

Var Details

blacklisted_types + + + + +

+

List of banned teleportable types

teleportable_types + + + + +

+

List of all teleportable types

+ + + diff --git a/obj/machinery/disposal.html b/obj/machinery/disposal.html new file mode 100644 index 0000000000000..69fe2b67bf0a6 --- /dev/null +++ b/obj/machinery/disposal.html @@ -0,0 +1,42 @@ + + + + + + + /obj/machinery/disposal - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

disposal + + + +

+ + + +

Procs

clean_trunkSignal handler to clean trunk to prevent harddel
set_trunkSet the trunk of the disposal

Proc Details

clean_trunk +

+

Signal handler to clean trunk to prevent harddel

set_trunk +

+

Set the trunk of the disposal

+ + + diff --git a/obj/machinery/door.html b/obj/machinery/door.html new file mode 100644 index 0000000000000..74748cceff529 --- /dev/null +++ b/obj/machinery/door.html @@ -0,0 +1,64 @@ + + + + + + + /obj/machinery/door - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

door + + + +

+ + + + + + +

Vars

cycle_linked_airlockwhat airlock we are linked with
cyclelinkeddirbool for determining linked state
emergencyused for determining emergency access
unres_sidesUnrestricted sides. A bitflag for which direction (if any) can open the door with no access

Procs

unrestricted_sideAllows for specific sides of airlocks to be unrestricted (IE, can exit maint freely, but need access to enter)
+

Var Details

cycle_linked_airlock + + + + +

+

what airlock we are linked with

cyclelinkeddir + + + + +

+

bool for determining linked state

emergency + + + + +

+

used for determining emergency access

unres_sides + + + + +

+

Unrestricted sides. A bitflag for which direction (if any) can open the door with no access

Proc Details

unrestricted_side +

+

Allows for specific sides of airlocks to be unrestricted (IE, can exit maint freely, but need access to enter)

+ + + diff --git a/obj/machinery/door/airlock.html b/obj/machinery/door/airlock.html new file mode 100644 index 0000000000000..90294da64baee --- /dev/null +++ b/obj/machinery/door/airlock.html @@ -0,0 +1,52 @@ + + + + + + + /obj/machinery/door/airlock - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

airlock + + + +

+ + + + +

Vars

abandonedused to determine various abandoned door effects

Procs

beforeShuttleMoveTurf move procs
cyclelinkairlockconnect potential airlocks to each other for cycling
+

Var Details

abandoned + + + + +

+

used to determine various abandoned door effects

Proc Details

beforeShuttleMove +

+

Turf move procs

+

Area move procs

+

Machinery move procs

cyclelinkairlock +

+

connect potential airlocks to each other for cycling

+ + + diff --git a/obj/machinery/door/airlock/mainship/secure.html b/obj/machinery/door/airlock/mainship/secure.html new file mode 100644 index 0000000000000..2fb89ee0fd288 --- /dev/null +++ b/obj/machinery/door/airlock/mainship/secure.html @@ -0,0 +1,35 @@ + + + + + + + /obj/machinery/door/airlock/mainship/secure - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

secure + + + +

+ + +

Procs

force_openForce open that door

Proc Details

force_open +

+

Force open that door

+ + + diff --git a/obj/machinery/door/poddoor/campaign.html b/obj/machinery/door/poddoor/campaign.html new file mode 100644 index 0000000000000..e1ae26f97c905 --- /dev/null +++ b/obj/machinery/door/poddoor/campaign.html @@ -0,0 +1,36 @@ + + + + + + + /obj/machinery/door/poddoor/campaign - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

campaign + + + +

+ + +

Vars

factionFaction associated with the door, for signal purposes
+

Var Details

faction + + + + +

+

Faction associated with the door, for signal purposes

+ + + diff --git a/obj/machinery/door/poddoor/nt_lockdown.html b/obj/machinery/door/poddoor/nt_lockdown.html new file mode 100644 index 0000000000000..f7931e0c8e966 --- /dev/null +++ b/obj/machinery/door/poddoor/nt_lockdown.html @@ -0,0 +1,43 @@ + + + + + + + /obj/machinery/door/poddoor/nt_lockdown - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

nt_lockdown + + + +

+ + + +

Vars

code_colorcolor associated with the door, for signal purposes

Procs

receive_codeOpens if the correct code color is received
+

Var Details

code_color + + + + +

+

color associated with the door, for signal purposes

Proc Details

receive_code +

+

Opens if the correct code color is received

+ + + diff --git a/obj/machinery/door/poddoor/shutters/urban.html b/obj/machinery/door/poddoor/shutters/urban.html new file mode 100644 index 0000000000000..1eb9bef830dd9 --- /dev/null +++ b/obj/machinery/door/poddoor/shutters/urban.html @@ -0,0 +1,36 @@ + + + + + + + /obj/machinery/door/poddoor/shutters/urban - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

urban + + + +

+ +

urban shutters

+

Vars

lift_timehow long it takes xenos to open a shutter by hand
+

Var Details

lift_time + + + + +

+

how long it takes xenos to open a shutter by hand

+ + + diff --git a/obj/machinery/dropship_part_fabricator.html b/obj/machinery/dropship_part_fabricator.html new file mode 100644 index 0000000000000..1f958c027300c --- /dev/null +++ b/obj/machinery/dropship_part_fabricator.html @@ -0,0 +1,78 @@ + + + + + + + /obj/machinery/dropship_part_fabricator - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

dropship_part_fabricator + + + +

+ + + + + + + + +

Vars

busyWhether the fabricator is currently printing something or not
printingCurrent item being printed
queueList of everything in queue

Procs

build_dropship_partStarts the printing process, does point calculations
do_build_dropship_partFinishes up printing, checks for next in queue, prints the actual part
get_costGets the cost of the product we want to make
next_queueProcesses next item in queue, if queue has not finished already
+

Var Details

busy + + + + +

+

Whether the fabricator is currently printing something or not

printing + + + + +

+

Current item being printed

queue + + + + +

+

List of everything in queue

Proc Details

build_dropship_part +

+

Starts the printing process, does point calculations

do_build_dropship_part +

+

Finishes up printing, checks for next in queue, prints the actual part

get_cost +

+

Gets the cost of the product we want to make

next_queue +

+

Processes next item in queue, if queue has not finished already

+ + + diff --git a/obj/machinery/factory.html b/obj/machinery/factory.html new file mode 100644 index 0000000000000..1548fce6eb436 --- /dev/null +++ b/obj/machinery/factory.html @@ -0,0 +1,64 @@ + + + + + + + /obj/machinery/factory - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

factory + + + +

+ + + + + + +

Vars

cooldown_timeTime in ticks that this machine takes to process one item
held_itemCurent item being processed
process_typeprocess type we will use to determine what step of the production process this machine will do
processiconstateIcon state displayed while something is being processed in the machine

Procs

finish_processOnce the timer for processing is over this resets the machine and spits out the new result
+

Var Details

cooldown_time + + + + +

+

Time in ticks that this machine takes to process one item

held_item + + + + +

+

Curent item being processed

process_type + + + + +

+

process type we will use to determine what step of the production process this machine will do

processiconstate + + + + +

+

Icon state displayed while something is being processed in the machine

Proc Details

finish_process +

+

Once the timer for processing is over this resets the machine and spits out the new result

+ + + diff --git a/obj/machinery/floodlight.html b/obj/machinery/floodlight.html new file mode 100644 index 0000000000000..8ab78eea74c0d --- /dev/null +++ b/obj/machinery/floodlight.html @@ -0,0 +1,36 @@ + + + + + + + /obj/machinery/floodlight - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

floodlight + + + +

+ + +

Vars

brightness_onThe brightness of the floodlight
+

Var Details

brightness_on + + + + +

+

The brightness of the floodlight

+ + + diff --git a/obj/machinery/floodlight/colony.html b/obj/machinery/floodlight/colony.html new file mode 100644 index 0000000000000..4282c849c6c4f --- /dev/null +++ b/obj/machinery/floodlight/colony.html @@ -0,0 +1,35 @@ + + + + + + + /obj/machinery/floodlight/colony - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

colony + + + +

+ + +

Procs

floodswitch_poweredMake the link between the floodlight and the switch

Proc Details

floodswitch_powered +

+

Make the link between the floodlight and the switch

+ + + diff --git a/obj/machinery/floor_warn_light/self_destruct.html b/obj/machinery/floor_warn_light/self_destruct.html new file mode 100644 index 0000000000000..eaa1080905aa2 --- /dev/null +++ b/obj/machinery/floor_warn_light/self_destruct.html @@ -0,0 +1,42 @@ + + + + + + + /obj/machinery/floor_warn_light/self_destruct - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

self_destruct + + + +

+ + + +

Procs

disableDisables the alarm lights and makes them stop flashing
enableEnables the alarm lights and makes them start flashing

Proc Details

disable +

+

Disables the alarm lights and makes them stop flashing

enable +

+

Enables the alarm lights and makes them start flashing

+ + + diff --git a/obj/machinery/gibber.html b/obj/machinery/gibber.html new file mode 100644 index 0000000000000..12b80158d3e11 --- /dev/null +++ b/obj/machinery/gibber.html @@ -0,0 +1,42 @@ + + + + + + + /obj/machinery/gibber - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

gibber + + + +

+ + + +

Procs

activate_gibberGibs the victim, and sets the output
make_meatCreates the output

Proc Details

activate_gibber +

+

Gibs the victim, and sets the output

make_meat +

+

Creates the output

+ + + diff --git a/obj/machinery/griddle.html b/obj/machinery/griddle.html new file mode 100644 index 0000000000000..84d9540324aeb --- /dev/null +++ b/obj/machinery/griddle.html @@ -0,0 +1,64 @@ + + + + + + + /obj/machinery/griddle - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

griddle + + + +

+ + + + + + +

Vars

griddled_objectsThings that are being griddled right now
grill_loopLooping sound for the grill
max_itemsHow many shit fits on the griddle?
onWhether or not the machine is turned on right now
variantWhat variant of griddle is this?
+

Var Details

griddled_objects + + + + +

+

Things that are being griddled right now

grill_loop + + + + +

+

Looping sound for the grill

max_items + + + + +

+

How many shit fits on the griddle?

on + + + + +

+

Whether or not the machine is turned on right now

variant + + + + +

+

What variant of griddle is this?

+ + + diff --git a/obj/machinery/grill.html b/obj/machinery/grill.html new file mode 100644 index 0000000000000..47d034d5d7a5b --- /dev/null +++ b/obj/machinery/grill.html @@ -0,0 +1,35 @@ + + + + + + + /obj/machinery/grill - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

grill + + + +

+ + +

Procs

GrillCompletedCalled when a food is transformed by the grillable component

Proc Details

GrillCompleted +

+

Called when a food is transformed by the grillable component

+ + + diff --git a/obj/machinery/holopad.html b/obj/machinery/holopad.html new file mode 100644 index 0000000000000..f1e9155dda964 --- /dev/null +++ b/obj/machinery/holopad.html @@ -0,0 +1,128 @@ + + + + + + + /obj/machinery/holopad - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

holopad + + + +

+ + + + + + + + + + + + + +

Vars

can_hear_flagsbitfield. used to turn on and off hearing sensitivity depending on if we can act on Hear() at all - meant for lowering the number of unessesary hearable atoms
force_answer_callCalls will be automatically answered after a couple rings, here for debugging
holo_callsArray of /datum/holocalls that are calling US. this is only filled for holopads answering calls from another holopad
holo_rangeChange to change how far the AI can move away from the holopad before deactivating
holoraysHoloray-mob link
last_requestTo prevent request spam. ~Carn
mastersassociative lazylist of the form: list(mob calling us = hologram representing that mob). +this is only populated for holopads answering calls from another holopad
outgoing_callCurrently outgoing holocall, cannot call any other holopads unless this is null. +creating a new holocall from us to another holopad sets this var to that holocall datum
replay_holoReplay hologram

Procs

hangup_all_callsDisconnects all current holocalls from the holopad
set_can_hear_flagssetter for can_hear_flags. handles adding or removing the given flag on can_hear_flags and then adding hearing sensitivity or removing it depending on the final state +this is necessary because holopads are a significant fraction of the hearable atoms on station which increases the cost of procs that iterate through hearables +so we need holopads to not be hearable until it is needed
set_holocallsetter for adding/removing holocalls to this holopad. used to update the holo_calls list and can_hear_flags +adds the given holocall if add_holocall is TRUE, removes if FALSE
+

Var Details

can_hear_flags + + + + +

+

bitfield. used to turn on and off hearing sensitivity depending on if we can act on Hear() at all - meant for lowering the number of unessesary hearable atoms

force_answer_call + + + + +

+

Calls will be automatically answered after a couple rings, here for debugging

holo_calls + + + + +

+

Array of /datum/holocalls that are calling US. this is only filled for holopads answering calls from another holopad

holo_range + + + + +

+

Change to change how far the AI can move away from the holopad before deactivating

holorays + + + + +

+

Holoray-mob link

last_request + + + + +

+

To prevent request spam. ~Carn

masters + + + + +

+

associative lazylist of the form: list(mob calling us = hologram representing that mob). +this is only populated for holopads answering calls from another holopad

outgoing_call + + + + +

+

Currently outgoing holocall, cannot call any other holopads unless this is null. +creating a new holocall from us to another holopad sets this var to that holocall datum

replay_holo + + + + +

+

Replay hologram

Proc Details

hangup_all_calls +

+

Disconnects all current holocalls from the holopad

set_can_hear_flags +

+

setter for can_hear_flags. handles adding or removing the given flag on can_hear_flags and then adding hearing sensitivity or removing it depending on the final state +this is necessary because holopads are a significant fraction of the hearable atoms on station which increases the cost of procs that iterate through hearables +so we need holopads to not be hearable until it is needed

+

set_holocall +

+

setter for adding/removing holocalls to this holopad. used to update the holo_calls list and can_hear_flags +adds the given holocall if add_holocall is TRUE, removes if FALSE

+ + + diff --git a/obj/machinery/keycard_auth.html b/obj/machinery/keycard_auth.html new file mode 100644 index 0000000000000..2ae27a05aecbd --- /dev/null +++ b/obj/machinery/keycard_auth.html @@ -0,0 +1,36 @@ + + + + + + + /obj/machinery/keycard_auth - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

keycard_auth + + + +

+ + +

Vars

synth_activationHas this event been authorized by a silicon. Most of the time, this means the AI.
+

Var Details

synth_activation + + + + +

+

Has this event been authorized by a silicon. Most of the time, this means the AI.

+ + + diff --git a/obj/machinery/landinglight.html b/obj/machinery/landinglight.html new file mode 100644 index 0000000000000..e0eb5b994d725 --- /dev/null +++ b/obj/machinery/landinglight.html @@ -0,0 +1,43 @@ + + + + + + + /obj/machinery/landinglight - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

landinglight + + + +

+ + + +

Vars

idID of dropship
linked_portport its linked to
+

Var Details

id + + + + +

+

ID of dropship

linked_port + + + + +

+

port its linked to

+ + + diff --git a/obj/machinery/light.html b/obj/machinery/light.html new file mode 100644 index 0000000000000..76c06e17edec3 --- /dev/null +++ b/obj/machinery/light.html @@ -0,0 +1,190 @@ + + + + + + + /obj/machinery/light - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

light + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + +

Vars

brightnesspower usage and light range when on
bulb_colourLight colour
bulb_powerbasically the light_power of the emitted light source
fittingthe bulb item name in this light
flicker_timewhat's the duration that the light switches between on and off while flickering
flicker_time_lower_minlower bounds of potential flicker time when randomized
flicker_time_upper_maxupper bounds of potential flicker time when randomized
flickeringis our light flickering?
light_flicker_stateholds the state of our flickering
light_typethe type of light item
lightambientlooping sound for flickering lights
random_flickerif true randomize the time we turn on and off
riggedtrue if rigged to explode
statusLIGHT_OK, _EMPTY, _BURNED or _BROKEN
switchcountcount of number of times switched on/off. this is used to calc the probability the light burns out

Procs

brokenbreak the light and make sparks if was on
explodeBlows up the light
fixFixes the light
flickerflicker lights on and off
flicker_power_stateproc to toggle power on and off for light
has_powerReturns true if area is powered and has lights toggled on
updateupdate the light state then icon
update_offsetsSets the correct offsets for the object and light based on dir
+

Var Details

brightness + + + + +

+

power usage and light range when on

bulb_colour + + + + +

+

Light colour

bulb_power + + + + +

+

basically the light_power of the emitted light source

fitting + + + + +

+

the bulb item name in this light

flicker_time + + + + +

+

what's the duration that the light switches between on and off while flickering

flicker_time_lower_min + + + + +

+

lower bounds of potential flicker time when randomized

flicker_time_upper_max + + + + +

+

upper bounds of potential flicker time when randomized

flickering + + + + +

+

is our light flickering?

light_flicker_state + + + + +

+

holds the state of our flickering

light_type + + + + +

+

the type of light item

lightambient + + + + +

+

looping sound for flickering lights

random_flicker + + + + +

+

if true randomize the time we turn on and off

rigged + + + + +

+

true if rigged to explode

status + + + + +

+

LIGHT_OK, _EMPTY, _BURNED or _BROKEN

switchcount + + + + +

+

count of number of times switched on/off. this is used to calc the probability the light burns out

Proc Details

broken +

+

break the light and make sparks if was on

explode +

+

Blows up the light

fix +

+

Fixes the light

flicker +

+

flicker lights on and off

flicker_power_state +

+

proc to toggle power on and off for light

has_power +

+

Returns true if area is powered and has lights toggled on

update +

+

update the light state then icon

update_offsets +

+

Sets the correct offsets for the object and light based on dir

+ + + diff --git a/obj/machinery/light_construct.html b/obj/machinery/light_construct.html new file mode 100644 index 0000000000000..aed67eaf4a8ef --- /dev/null +++ b/obj/machinery/light_construct.html @@ -0,0 +1,50 @@ + + + + + + + /obj/machinery/light_construct - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

light_construct + + + +

+ + + + +

Vars

fixture_typeWhat kind of bulb its intended for
sheets_refundedQuantity of metal refunded on deconstruction
stagebuild stage
+

Var Details

fixture_type + + + + +

+

What kind of bulb its intended for

sheets_refunded + + + + +

+

Quantity of metal refunded on deconstruction

stage + + + + +

+

build stage

+ + + diff --git a/obj/machinery/loadout_vendor.html b/obj/machinery/loadout_vendor.html new file mode 100644 index 0000000000000..734c237a0f1fc --- /dev/null +++ b/obj/machinery/loadout_vendor.html @@ -0,0 +1,36 @@ + + + + + + + /obj/machinery/loadout_vendor - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

loadout_vendor + + + +

+ + +

Vars

factionThe faction of this loadout vendor
+

Var Details

faction + + + + +

+

The faction of this loadout vendor

+ + + diff --git a/obj/machinery/marine_selector.html b/obj/machinery/marine_selector.html new file mode 100644 index 0000000000000..57b2d9a418b3a --- /dev/null +++ b/obj/machinery/marine_selector.html @@ -0,0 +1,36 @@ + + + + + + + /obj/machinery/marine_selector - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

marine_selector + + + +

+ + +

Vars

factionThe faction of that vendor, can be null
+

Var Details

faction + + + + +

+

The faction of that vendor, can be null

+ + + diff --git a/obj/machinery/mech_bay_recharge_port.html b/obj/machinery/mech_bay_recharge_port.html new file mode 100644 index 0000000000000..029ecf643c242 --- /dev/null +++ b/obj/machinery/mech_bay_recharge_port.html @@ -0,0 +1,57 @@ + + + + + + + /obj/machinery/mech_bay_recharge_port - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

mech_bay_recharge_port + + + +

+ + + + + +

Vars

recharge_consoleRef to charge console for seeing charge for this port, cyclical reference
recharge_powerPower unit per second to charge by
recharging_mech_refWeakref to currently recharging mech on our recharging_turf
recharging_turfturf that will be checked when a mech wants to charge. directly one turf in the direction it is facing
+

Var Details

recharge_console + + + + +

+

Ref to charge console for seeing charge for this port, cyclical reference

recharge_power + + + + +

+

Power unit per second to charge by

recharging_mech_ref + + + + +

+

Weakref to currently recharging mech on our recharging_turf

recharging_turf + + + + +

+

turf that will be checked when a mech wants to charge. directly one turf in the direction it is facing

+ + + diff --git a/obj/machinery/microwave.html b/obj/machinery/microwave.html new file mode 100644 index 0000000000000..d8f51eab19a0d --- /dev/null +++ b/obj/machinery/microwave.html @@ -0,0 +1,56 @@ + + + + + + + /obj/machinery/microwave - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

microwave + + + +

+ + + + + +

Procs

InitializeInitialising
attackbyItem Adding
cookMicrowave Menu Handling/Cooking
interactMicrowave Menu

Proc Details

Initialize +

+

Initialising

attackby +

+

Item Adding

cook +

+

Microwave Menu Handling/Cooking

interact +

+

Microwave Menu

+ + + diff --git a/obj/machinery/miner.html b/obj/machinery/miner.html new file mode 100644 index 0000000000000..b2d4d311d5167 --- /dev/null +++ b/obj/machinery/miner.html @@ -0,0 +1,130 @@ + + + + + + + /obj/machinery/miner - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

miner + + + +

+ +

Resource generator that produces a certain material that can be repaired by marines and attacked by xenos, Intended as an objective for marines to play towards to get more req gear

+ + + + + + + + + + + + + +

Vars

add_tickTracks how many ticks have passed since we last added a sheet of material
dropship_bonusApplies the actual bonus points for the dropship for each sale
factionWhat faction secured that miner
max_miner_integrityMax health of the miner
miner_integrityHealth for the miner we use because changing obj_integrity is apparently bad
miner_statusCurrent status of the miner
miner_upgrade_typeWhat type of upgrade it has installed , used to change the icon of the miner.
mineral_valueThe mineral type that's produced
required_ticksHow many times we neeed to tick for a resource to be created, in this case this is 2* the specified amount
stored_mineralHow many sheets of material we have stored

Procs

attempt_upgradeCalled whenever someone attacks the miner with a object which is considered a upgrade.The object needs to have a uptype var.
disable_on_hijackCalled via global signal to prevent perpetual mining
init_markerThis proc is called during Initialize() and should be used to initially setup the minimap marker of a functional miner.
record_miner_repairSeparate record keeping proc to reduce copy pasta
+

Var Details

add_tick + + + + +

+

Tracks how many ticks have passed since we last added a sheet of material

dropship_bonus + + + + +

+

Applies the actual bonus points for the dropship for each sale

faction + + + + +

+

What faction secured that miner

max_miner_integrity + + + + +

+

Max health of the miner

miner_integrity + + + + +

+

Health for the miner we use because changing obj_integrity is apparently bad

miner_status + + + + +

+

Current status of the miner

miner_upgrade_type + + + + +

+

What type of upgrade it has installed , used to change the icon of the miner.

mineral_value + + + + +

+

The mineral type that's produced

required_ticks + + + + +

+

How many times we neeed to tick for a resource to be created, in this case this is 2* the specified amount

stored_mineral + + + + +

+

How many sheets of material we have stored

Proc Details

attempt_upgrade +

+

Called whenever someone attacks the miner with a object which is considered a upgrade.The object needs to have a uptype var.

disable_on_hijack +

+

Called via global signal to prevent perpetual mining

init_marker +

+

This proc is called during Initialize() and should be used to initially setup the minimap marker of a functional miner.

+

record_miner_repair +

+

Separate record keeping proc to reduce copy pasta

+ + + diff --git a/obj/machinery/nuclearbomb.html b/obj/machinery/nuclearbomb.html new file mode 100644 index 0000000000000..1dee66f83e9ea --- /dev/null +++ b/obj/machinery/nuclearbomb.html @@ -0,0 +1,134 @@ + + + + + + + /obj/machinery/nuclearbomb - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

nuclearbomb + + + +

+ + + + + + + + + + + + + + + + +

Vars

timeTime to start the timer on
timemaxMax time for the nuke timer
timeminMin time for the nuke timer
timerID of timer

Procs

change_timeModifies the nuke timer
disableDisables nuke timer
disable_on_hijackPermanently disables this nuke, for use on hijack
enableEnables nuke timer
explodeHandles the boom
get_time_leftReturns time left on the nuke in seconds
toggle_anchorToggles the anchor bolts on or off
toggle_diskHandles disk insertion and removal
toggle_safetyToggles the safety on or off
toggle_timerToggles the timer on or off
update_minimap_iconChange minimap icon if its on or off
+

Var Details

time + + + + +

+

Time to start the timer on

timemax + + + + +

+

Max time for the nuke timer

timemin + + + + +

+

Min time for the nuke timer

timer + + + + +

+

ID of timer

Proc Details

change_time +

+

Modifies the nuke timer

disable +

+

Disables nuke timer

disable_on_hijack +

+

Permanently disables this nuke, for use on hijack

enable +

+

Enables nuke timer

explode +

+

Handles the boom

get_time_left +

+

Returns time left on the nuke in seconds

toggle_anchor +

+

Toggles the anchor bolts on or off

toggle_disk +

+

Handles disk insertion and removal

toggle_safety +

+

Toggles the safety on or off

toggle_timer +

+

Toggles the timer on or off

update_minimap_icon +

+

Change minimap icon if its on or off

+ + + diff --git a/obj/machinery/optable.html b/obj/machinery/optable.html new file mode 100644 index 0000000000000..12f8d5dd01f90 --- /dev/null +++ b/obj/machinery/optable.html @@ -0,0 +1,35 @@ + + + + + + + /obj/machinery/optable - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

optable + + + +

+ + +

Procs

knock_out_buckledKnocks out someone buckled to the op table a few seconds later. Won't knock out if they've been unbuckled since.

Proc Details

knock_out_buckled +

+

Knocks out someone buckled to the op table a few seconds later. Won't knock out if they've been unbuckled since.

+ + + diff --git a/obj/machinery/portable_atmospherics.html b/obj/machinery/portable_atmospherics.html new file mode 100644 index 0000000000000..5c611e8b9c61a --- /dev/null +++ b/obj/machinery/portable_atmospherics.html @@ -0,0 +1,57 @@ + + + + + + + /obj/machinery/portable_atmospherics - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

portable_atmospherics + + + +

+ + + + + +

Vars

connected_portThe port we are currently connected to
holdingThe gas tank we are currently holding inside us

Procs

connectConnect the machine to a port
disconnectDisconnect the machine from a port
+

Var Details

connected_port + + + + +

+

The port we are currently connected to

holding + + + + +

+

The gas tank we are currently holding inside us

Proc Details

connect +

+

Connect the machine to a port

disconnect +

+

Disconnect the machine from a port

+ + + diff --git a/obj/machinery/portable_atmospherics/canister.html b/obj/machinery/portable_atmospherics/canister.html new file mode 100644 index 0000000000000..5ed0a64d5e3a0 --- /dev/null +++ b/obj/machinery/portable_atmospherics/canister.html @@ -0,0 +1,36 @@ + + + + + + + /obj/machinery/portable_atmospherics/canister - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

canister + + + +

+ + +

Vars

update_flagsUsed for determining if the sprite should be updated and how
+

Var Details

update_flags + + + + +

+

Used for determining if the sprite should be updated and how

+ + + diff --git a/obj/machinery/portable_atmospherics/pump.html b/obj/machinery/portable_atmospherics/pump.html new file mode 100644 index 0000000000000..e933f86e9bd18 --- /dev/null +++ b/obj/machinery/portable_atmospherics/pump.html @@ -0,0 +1,36 @@ + + + + + + + /obj/machinery/portable_atmospherics/pump - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

pump + + + +

+ + +

Vars

onIf the pump is on, controls icon_state
+

Var Details

on + + + + +

+

If the pump is on, controls icon_state

+ + + diff --git a/obj/machinery/portable_atmospherics/scrubber.html b/obj/machinery/portable_atmospherics/scrubber.html new file mode 100644 index 0000000000000..106d52561cec5 --- /dev/null +++ b/obj/machinery/portable_atmospherics/scrubber.html @@ -0,0 +1,36 @@ + + + + + + + /obj/machinery/portable_atmospherics/scrubber - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

scrubber + + + +

+ + +

Vars

onIf we're on/off. Purely cosmetic, just a different icon.
+

Var Details

on + + + + +

+

If we're on/off. Purely cosmetic, just a different icon.

+ + + diff --git a/obj/machinery/power.html b/obj/machinery/power.html new file mode 100644 index 0000000000000..935cf43af9940 --- /dev/null +++ b/obj/machinery/power.html @@ -0,0 +1,42 @@ + + + + + + + /obj/machinery/power - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

power + + + +

+ + + +

Procs

record_generator_repairsTally up to a player's generator_repairs_performed stat when a step is completed in a generator's repairs
record_generator_sabotagesTally up when a player damages/destroys/corrupts a generator

Proc Details

record_generator_repairs +

+

Tally up to a player's generator_repairs_performed stat when a step is completed in a generator's repairs

record_generator_sabotages +

+

Tally up when a player damages/destroys/corrupts a generator

+ + + diff --git a/obj/machinery/power/apc.html b/obj/machinery/power/apc.html new file mode 100644 index 0000000000000..8e182c0553bb8 --- /dev/null +++ b/obj/machinery/power/apc.html @@ -0,0 +1,246 @@ + + + + + + + /obj/machinery/power/apc - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

apc + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

aidisabledIs the AI locked from using the APC
areaThe area we're affecting
beenhitUsed for counting how many times it has been hit, used for Aliens at the moment
cellThe power cell inside the APC
cell_typeThe type of cell to spawn this APC with
chargecountNumber of ticks where the apc is trying to recharge
chargemodeCan the APC recharge?
chargingState of the apc charging (not charging, charging, fully charged)
coverlockedIs the apc cover locked?
crash_break_probabilityProbability of APC being broken by a shuttle crash on the same z-level
environState of the environmental channel (off, auto off, on, auto on)
equipmentState of the equipment channel (off, auto off, on, auto on)
has_electronicsState of the electronics inside (missing, installed, secured)
icon_update_neededUsed to stop the icon from updating too much
lastused_environAmount of power used by the environmental channel
lastused_equipAmount of power used by the equipment channel
lastused_lightAmount of power used by the lighting channel
lastused_totalTotal amount of power used by the three channels
lightingState of the lighting channel (off, auto off, on, auto on)
lockedIs the apc interface locked?
longtermpowerBuffer state that makes apcs not shut off channels immediately as long as theres some power left, effect visible in apcs only slowly losing power
openedThe current state of the APC cover
operatingIs the apc working?
shortedIs the APC shorted?
start_chargeThe charge of the APC when first spawned
terminalReference to our cable terminal
update_overlayStores the flag for the overlays
update_stateStores the flags related to icon updating

Procs

check_updatesChecks for what icon updates we will need to handle
on_cell_deletionCalled by the deletion of the referenced powercell.
set_cellWrapper to guarantee powercells are properly nulled and avoid hard deletes.
+

Var Details

aidisabled + + + + +

+

Is the AI locked from using the APC

area + + + + +

+

The area we're affecting

beenhit + + + + +

+

Used for counting how many times it has been hit, used for Aliens at the moment

cell + + + + +

+

The power cell inside the APC

cell_type + + + + +

+

The type of cell to spawn this APC with

chargecount + + + + +

+

Number of ticks where the apc is trying to recharge

chargemode + + + + +

+

Can the APC recharge?

charging + + + + +

+

State of the apc charging (not charging, charging, fully charged)

coverlocked + + + + +

+

Is the apc cover locked?

crash_break_probability + + + + +

+

Probability of APC being broken by a shuttle crash on the same z-level

environ + + + + +

+

State of the environmental channel (off, auto off, on, auto on)

equipment + + + + +

+

State of the equipment channel (off, auto off, on, auto on)

has_electronics + + + + +

+

State of the electronics inside (missing, installed, secured)

icon_update_needed + + + + +

+

Used to stop the icon from updating too much

lastused_environ + + + + +

+

Amount of power used by the environmental channel

lastused_equip + + + + +

+

Amount of power used by the equipment channel

lastused_light + + + + +

+

Amount of power used by the lighting channel

lastused_total + + + + +

+

Total amount of power used by the three channels

lighting + + + + +

+

State of the lighting channel (off, auto off, on, auto on)

locked + + + + +

+

Is the apc interface locked?

longtermpower + + + + +

+

Buffer state that makes apcs not shut off channels immediately as long as theres some power left, effect visible in apcs only slowly losing power

opened + + + + +

+

The current state of the APC cover

operating + + + + +

+

Is the apc working?

shorted + + + + +

+

Is the APC shorted?

start_charge + + + + +

+

The charge of the APC when first spawned

terminal + + + + +

+

Reference to our cable terminal

update_overlay + + + + +

+

Stores the flag for the overlays

update_state + + + + +

+

Stores the flags related to icon updating

Proc Details

check_updates +

+

Checks for what icon updates we will need to handle

on_cell_deletion +

+

Called by the deletion of the referenced powercell.

set_cell +

+

Wrapper to guarantee powercells are properly nulled and avoid hard deletes.

+ + + diff --git a/obj/machinery/power/fusion_engine.html b/obj/machinery/power/fusion_engine.html new file mode 100644 index 0000000000000..eef8f2ca3dd58 --- /dev/null +++ b/obj/machinery/power/fusion_engine.html @@ -0,0 +1,57 @@ + + + + + + + /obj/machinery/power/fusion_engine - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

fusion_engine + + + +

+ + + + + +

Vars

fuel_rateRate at which fuel is used. Based mostly on how long the generator has been running.
fusion_cellThe cell inside the generator
is_onIs the generator on?
power_gen_percentThe % of how much of our max power we're putting out, 80,000W at full capacity
+

Var Details

fuel_rate + + + + +

+

Rate at which fuel is used. Based mostly on how long the generator has been running.

fusion_cell + + + + +

+

The cell inside the generator

is_on + + + + +

+

Is the generator on?

power_gen_percent + + + + +

+

The % of how much of our max power we're putting out, 80,000W at full capacity

+ + + diff --git a/obj/machinery/power/geothermal.html b/obj/machinery/power/geothermal.html new file mode 100644 index 0000000000000..c887db207c7ca --- /dev/null +++ b/obj/machinery/power/geothermal.html @@ -0,0 +1,64 @@ + + + + + + + /obj/machinery/power/geothermal - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

geothermal + + + +

+ + + + + + +

Vars

corruptedHive it should be powering and whether it should be generating hive psycic points instead of power on process()
corruption_onwhether they should generate corruption if corrupted
fail_rate% chance of failure each fail_tick check
is_corruptiblewhether we wil allow these to be corrupted

Procs

activate_corruptionAllow generators to generate psych points
+

Var Details

corrupted + + + + +

+

Hive it should be powering and whether it should be generating hive psycic points instead of power on process()

corruption_on + + + + +

+

whether they should generate corruption if corrupted

fail_rate + + + + +

+

% chance of failure each fail_tick check

is_corruptible + + + + +

+

whether we wil allow these to be corrupted

Proc Details

activate_corruption +

+

Allow generators to generate psych points

+ + + diff --git a/obj/machinery/power/monitor.html b/obj/machinery/power/monitor.html new file mode 100644 index 0000000000000..a5d2819f1c489 --- /dev/null +++ b/obj/machinery/power/monitor.html @@ -0,0 +1,36 @@ + + + + + + + /obj/machinery/power/monitor - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

monitor + + + +

+ + +

Vars

screen_overlayscreen overlay icon
+

Var Details

screen_overlay + + + + +

+

screen overlay icon

+ + + diff --git a/obj/machinery/prop/computer.html b/obj/machinery/prop/computer.html new file mode 100644 index 0000000000000..0ffc2e4595b55 --- /dev/null +++ b/obj/machinery/prop/computer.html @@ -0,0 +1,43 @@ + + + + + + + /obj/machinery/prop/computer - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

computer + + + +

+ + + +

Vars

broken_iconThe destroyed computer sprite. Defaults based on the icon_state if not specified
screen_overlayThe actual screen sprite for this computer
+

Var Details

broken_icon + + + + +

+

The destroyed computer sprite. Defaults based on the icon_state if not specified

screen_overlay + + + + +

+

The actual screen sprite for this computer

+ + + diff --git a/obj/machinery/quick_vendor.html b/obj/machinery/quick_vendor.html new file mode 100644 index 0000000000000..875fb9b77a375 --- /dev/null +++ b/obj/machinery/quick_vendor.html @@ -0,0 +1,57 @@ + + + + + + + /obj/machinery/quick_vendor - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

quick_vendor + + + +

+ + + + + +

Vars

drop_worn_itemsIf the vendor drops your items, or deletes them when you vend a loadout
factionThe faction of this quick load vendor
global_list_to_useWhichever global loadout is used to build the vendor stock

Procs

set_stock_listChooses which global list the vendor will build stock from, gets run on Initialize()
+

Var Details

drop_worn_items + + + + +

+

If the vendor drops your items, or deletes them when you vend a loadout

faction + + + + +

+

The faction of this quick load vendor

global_list_to_use + + + + +

+

Whichever global loadout is used to build the vendor stock

Proc Details

set_stock_list +

+

Chooses which global list the vendor will build stock from, gets run on Initialize()

+ + + diff --git a/obj/machinery/reagentgrinder.html b/obj/machinery/reagentgrinder.html new file mode 100644 index 0000000000000..23a742f40cb57 --- /dev/null +++ b/obj/machinery/reagentgrinder.html @@ -0,0 +1,36 @@ + + + + + + + /obj/machinery/reagentgrinder - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

reagentgrinder + + + +

+ + +

Vars

juice_itemsobj/item/reagent_containers/food/snacks/grown/wheat = list("flour" = -5),
+

Var Details

juice_items + + + + +

+

obj/item/reagent_containers/food/snacks/grown/wheat = list("flour" = -5),

+ + + diff --git a/obj/machinery/researchcomp.html b/obj/machinery/researchcomp.html new file mode 100644 index 0000000000000..0ae4490bf1a7c --- /dev/null +++ b/obj/machinery/researchcomp.html @@ -0,0 +1,106 @@ + + + + + + + /obj/machinery/researchcomp - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

researchcomp + + + +

+ + + + + + + + + + + + +

Vars

allowed_resources_descDescription of usable resources for starting research
init_resourceLoaded resource to begin research
researchingUI holder
reward_tiersResearch reward tiers
rewards_listsList of rewards for each category

Procs

construct_insertable_resources_descCreates the description of usable resources for starting research
finish_researchHandles the research process completing
generate_research_rewards_listGenerates rewards using the resource's rarity modifiers and a list of potential rewards
replace_init_resourceInserts/Replaces the resource used to being research
research_itemGenerates rewards from a research resource
start_researchBegins the research process
+

Var Details

allowed_resources_desc + + + + +

+

Description of usable resources for starting research

init_resource + + + + +

+

Loaded resource to begin research

researching + + + + +

+

UI holder

reward_tiers + + + + +

+

Research reward tiers

rewards_lists + + + + +

+

List of rewards for each category

Proc Details

construct_insertable_resources_desc +

+

Creates the description of usable resources for starting research

finish_research +

+

Handles the research process completing

generate_research_rewards_list +

+

Generates rewards using the resource's rarity modifiers and a list of potential rewards

replace_init_resource +

+

Inserts/Replaces the resource used to being research

research_item +

+

Generates rewards from a research resource

start_research +

+

Begins the research process

+ + + diff --git a/obj/machinery/robotic_cradle.html b/obj/machinery/robotic_cradle.html new file mode 100644 index 0000000000000..f03376944ae3a --- /dev/null +++ b/obj/machinery/robotic_cradle.html @@ -0,0 +1,113 @@ + + + + + + + /obj/machinery/robotic_cradle - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

robotic_cradle + + + +

+ + + + + + + + + + + + + +

Vars

occupantThis var is the reference used for the patient
operation_timerThis var is so we can call deltimer() it if we need to abort the operation early
radioThis var is in reference to the radio the cradle uses to speak to the crew
repairingThis var is used to see if the machine is currently repairing or not.

Procs

handle_repair_operationCallback to start repair on someone entering the cradle
notify_about_ejectThis proc acts as a heads up to the doctors/engineers about the patient exiting the cradle for whatever reason. Takes CRADLE_NOTICE defines as arguments
perform_ejectFinishes ejecting the patient after the cradle is done. Takes CRADLE_NOTICE defines as arguments, used in notify_about_eject()
perform_repairThis proc handles the actual repair once the timer is up and ejects the healed robot.
place_mob_insideHandles any mob placing themselves or someone else into the cradle. target_mob is the mob being placed in, operating_mob is the person placing the mob in. Returns true if the mob got placed inside, false otherwise
remove_occupantForces the occupant out of the cradle, leaves it empty for someone else to enter.
start_emergency_ejectThis proc ejects whomever is inside the cradle while it is presumably operating. mob_ejecting is the mob triggering the eject
start_repair_operationStarts the repair operation of the cradle
+

Var Details

occupant + + + + +

+

This var is the reference used for the patient

operation_timer + + + + +

+

This var is so we can call deltimer() it if we need to abort the operation early

radio + + + + +

+

This var is in reference to the radio the cradle uses to speak to the crew

repairing + + + + +

+

This var is used to see if the machine is currently repairing or not.

Proc Details

handle_repair_operation +

+

Callback to start repair on someone entering the cradle

notify_about_eject +

+

This proc acts as a heads up to the doctors/engineers about the patient exiting the cradle for whatever reason. Takes CRADLE_NOTICE defines as arguments

perform_eject +

+

Finishes ejecting the patient after the cradle is done. Takes CRADLE_NOTICE defines as arguments, used in notify_about_eject()

perform_repair +

+

This proc handles the actual repair once the timer is up and ejects the healed robot.

place_mob_inside +

+

Handles any mob placing themselves or someone else into the cradle. target_mob is the mob being placed in, operating_mob is the person placing the mob in. Returns true if the mob got placed inside, false otherwise

remove_occupant +

+

Forces the occupant out of the cradle, leaves it empty for someone else to enter.

start_emergency_eject +

+

This proc ejects whomever is inside the cradle while it is presumably operating. mob_ejecting is the mob triggering the eject

start_repair_operation +

+

Starts the repair operation of the cradle

+ + + diff --git a/obj/machinery/self_destruct.html b/obj/machinery/self_destruct.html new file mode 100644 index 0000000000000..f92266f806b87 --- /dev/null +++ b/obj/machinery/self_destruct.html @@ -0,0 +1,50 @@ + + + + + + + /obj/machinery/self_destruct - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

self_destruct + + + +

+ + + + +

Vars

marine_only_activateWhether only marines can activate this. left here in case of admins feeling nice or events
started_atWhen the self destruct sequence was initiated
timerTimer mainly used for hud timers
+

Var Details

marine_only_activate + + + + +

+

Whether only marines can activate this. left here in case of admins feeling nice or events

started_at + + + + +

+

When the self destruct sequence was initiated

timer + + + + +

+

Timer mainly used for hud timers

+ + + diff --git a/obj/machinery/shower.html b/obj/machinery/shower.html new file mode 100644 index 0000000000000..0a759c11ab4ae --- /dev/null +++ b/obj/machinery/shower.html @@ -0,0 +1,43 @@ + + + + + + + /obj/machinery/shower - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

shower + + + +

+ + + +

Vars

mobpresentCount of mobs present under the shower, this is to ease process()
watertempfreezing, normal, or boiling
+

Var Details

mobpresent + + + + +

+

Count of mobs present under the shower, this is to ease process()

watertemp + + + + +

+

freezing, normal, or boiling

+ + + diff --git a/obj/machinery/sleeper.html b/obj/machinery/sleeper.html new file mode 100644 index 0000000000000..b95d418da9d6e --- /dev/null +++ b/obj/machinery/sleeper.html @@ -0,0 +1,42 @@ + + + + + + + /obj/machinery/sleeper - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

sleeper + + + +

+ + + +

Procs

clean_connectedClean the connected var
set_connectedSet the connected var

Proc Details

clean_connected +

+

Clean the connected var

set_connected +

+

Set the connected var

+ + + diff --git a/obj/machinery/smartfridge.html b/obj/machinery/smartfridge.html new file mode 100644 index 0000000000000..5d931f9db085c --- /dev/null +++ b/obj/machinery/smartfridge.html @@ -0,0 +1,50 @@ + + + + + + + /obj/machinery/smartfridge - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

smartfridge + + + +

+ + + + +

Vars

item_quantsMaps stripped item names to stored count

Procs

attackbyItem Adding
dispenseReally simple proc, just moves the object "O" into the hands of mob "M" if able, done so I could modify the proc a little for the organ fridge
+

Var Details

item_quants + + + + +

+

Maps stripped item names to stored count

Proc Details

attackby +

+

Item Adding

dispense +

+

Really simple proc, just moves the object "O" into the hands of mob "M" if able, done so I could modify the proc a little for the organ fridge

+ + + diff --git a/obj/machinery/space_heater.html b/obj/machinery/space_heater.html new file mode 100644 index 0000000000000..d6a1b0fae276b --- /dev/null +++ b/obj/machinery/space_heater.html @@ -0,0 +1,50 @@ + + + + + + + /obj/machinery/space_heater - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

space_heater + + + +

+ + + + +

Vars

cellThe cell inside the heater, used for making it work
onIs the heater on?
openIs the panel on the heater open?
+

Var Details

cell + + + + +

+

The cell inside the heater, used for making it work

on + + + + +

+

Is the heater on?

open + + + + +

+

Is the panel on the heater open?

+ + + diff --git a/obj/machinery/status_display.html b/obj/machinery/status_display.html new file mode 100644 index 0000000000000..de618c9b4ed30 --- /dev/null +++ b/obj/machinery/status_display.html @@ -0,0 +1,64 @@ + + + + + + + /obj/machinery/status_display - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

status_display + + + +

+ +

Status display which can show images and scrolling text.

+ + + + +

Procs

remove_displayImmediately blank the display.
set_messagePrepare the display to marquee the given two lines.
set_pictureImmediately change the display to the given picture.
updateUpdate the display and, if necessary, re-enable processing.
update_displayImmediately change the display to the given two lines.

Proc Details

remove_display +

+

Immediately blank the display.

set_message +

+

Prepare the display to marquee the given two lines.

+

Call with no arguments to disable.

set_picture +

+

Immediately change the display to the given picture.

update +

+

Update the display and, if necessary, re-enable processing.

update_display +

+

Immediately change the display to the given two lines.

+ + + diff --git a/obj/machinery/tank_part_fabricator.html b/obj/machinery/tank_part_fabricator.html new file mode 100644 index 0000000000000..515bad3f86c5e --- /dev/null +++ b/obj/machinery/tank_part_fabricator.html @@ -0,0 +1,36 @@ + + + + + + + /obj/machinery/tank_part_fabricator - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

tank_part_fabricator + + + +

+ + +

Vars

supply_uiactual UI that will be interacted with
+

Var Details

supply_ui + + + + +

+

actual UI that will be interacted with

+ + + diff --git a/obj/machinery/telecomms.html b/obj/machinery/telecomms.html new file mode 100644 index 0000000000000..28f5c55746f2f --- /dev/null +++ b/obj/machinery/telecomms.html @@ -0,0 +1,143 @@ + + + + + + + /obj/machinery/telecomms - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

telecomms + + + +

+ + + + + + + + + + + + + + + + + +

Vars

autolinkerslist of text/number values to link with
hideIs it a hidden machine?
ididentification string
linkslist of machines this machine is linked to
links_by_telecomms_typeassociative lazylist list of the telecomms_type of linked telecomms machines and a list of said machines. +eg list(telecomms_type1 = list(everything linked to us with that type), telecomms_type2 = list(everything linked to us with THAT type)...)
long_range_linkCan you link it across Z levels or on the otherside of the map? (Relay & Hub)
netspeedhow much traffic to lose per second (50 gigabytes/second * netspeed)
networkthe network of the machinery
telecomms_typethe relevant type path of this telecomms machine eg /obj/machinery/telecomms/server but not server/preset. used for links_by_telecomms_type
toggledIs it toggled on
trafficvalue increases as traffic increases

Procs

add_automatic_linkUsed in auto linking
add_new_linkadds new_connection to src's links list AND vice versa. also updates links_by_telecomms_type
receive_informationreceive information from linked machinery
relay_informationrelay signal to all linked machinery that are of type [filter]. If signal has been sent [amount] times, stop sending
remove_linkremoves old_connection from src's links list AND vice versa. also updates links_by_telecomms_type
+

Var Details

autolinkers + + + + +

+

list of text/number values to link with

hide + + + + +

+

Is it a hidden machine?

id + + + + +

+

identification string

+

list of machines this machine is linked to

+

associative lazylist list of the telecomms_type of linked telecomms machines and a list of said machines. +eg list(telecomms_type1 = list(everything linked to us with that type), telecomms_type2 = list(everything linked to us with THAT type)...)

+

Can you link it across Z levels or on the otherside of the map? (Relay & Hub)

netspeed + + + + +

+

how much traffic to lose per second (50 gigabytes/second * netspeed)

network + + + + +

+

the network of the machinery

telecomms_type + + + + +

+

the relevant type path of this telecomms machine eg /obj/machinery/telecomms/server but not server/preset. used for links_by_telecomms_type

toggled + + + + +

+

Is it toggled on

traffic + + + + +

+

value increases as traffic increases

Proc Details

+

Used in auto linking

+

adds new_connection to src's links list AND vice versa. also updates links_by_telecomms_type

receive_information +

+

receive information from linked machinery

relay_information +

+

relay signal to all linked machinery that are of type [filter]. If signal has been sent [amount] times, stop sending

+

removes old_connection from src's links list AND vice versa. also updates links_by_telecomms_type

+ + + diff --git a/obj/machinery/telecomms/relay.html b/obj/machinery/telecomms/relay.html new file mode 100644 index 0000000000000..746991f41abd7 --- /dev/null +++ b/obj/machinery/telecomms/relay.html @@ -0,0 +1,35 @@ + + + + + + + /obj/machinery/telecomms/relay - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

relay + + + +

+ + +

Procs

canChecks to see if it can send/receive.

Proc Details

can +

+

Checks to see if it can send/receive.

+ + + diff --git a/obj/machinery/unboxer.html b/obj/machinery/unboxer.html new file mode 100644 index 0000000000000..2b444019f48ef --- /dev/null +++ b/obj/machinery/unboxer.html @@ -0,0 +1,64 @@ + + + + + + + /obj/machinery/unboxer - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

unboxer + + + +

+ + + + + + +

Vars

max_fill_amountMaximum amount of resource we can hold
onBool for whether the unboxer is producing things
production_amount_leftthe amount of resouce we have left to output factory_parts
production_typeTypepath for the result we want outputted

Procs

change_stateTurns the unboxer on/off
+

Var Details

max_fill_amount + + + + +

+

Maximum amount of resource we can hold

on + + + + +

+

Bool for whether the unboxer is producing things

production_amount_left + + + + +

+

the amount of resouce we have left to output factory_parts

production_type + + + + +

+

Typepath for the result we want outputted

Proc Details

change_state +

+

Turns the unboxer on/off

+ + + diff --git a/obj/machinery/vending.html b/obj/machinery/vending.html new file mode 100644 index 0000000000000..9917fb6ca7bfa --- /dev/null +++ b/obj/machinery/vending.html @@ -0,0 +1,355 @@ + + + + + + + /obj/machinery/vending - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

vending + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

activeWhether this vendor is active or not.
check_accounts1 = requires PIN and checks accounts. 0 = You slide an ID, it vends, SPACE COMMUNISM!
coin_recordslist of /datum/vending_product's that are available on the vendor when a coin is used.
contrabandContraband products that are only available on vendor when hacked.
currently_vendingA /datum/vending_product instance of what we're paying for right now.
ewalletCurrent cash card.
extended_inventoryIf the vending machine is hacked, makes the items on contraband list available.
factionFaction of the vendor. Can be null
hacking_safetyStops the machine from being hacked to shoot inventory or allow all access
hidden_recordslist of /datum/vending_product's that are available when vendor is hacked.
icon_denyIcon state when failing to vend, be it by no access or money.
icon_vendIcon state when successfuly vending
issharedIf this vendor uses a global list for items.
knockdown_thresholdHow much damage we can take before tipping over.
last_replyWhen was last time we spoke when vending
last_sloganLast time we spoke our slogan
premiumPremium products that are only available when using a coin to pay for it.
pricesPrices for each item, list(/type/path = price), items not in the list don't have a price.
product_adsString of small ad messages in the vending screen - random chance
product_recordslist of /datum/vending_product's that are always available on the vendor
product_slogansString of slogans separated by semicolons, optional
productsNormal products that are always available on the vendor.
seasonal_items
seconds_electrifiedhow many seconds(duh) we have left electrified.
shoot_inventoryIf we should fire items at customers! We're broken!
shut_upIf true the machine won't be speaking slogans randomly. Stop spouting those godawful pitches!
slogan_delayThe interval between slogans.
small_adssmall ad messages in the vending screen - random chance of popping up whenever you open it
tipped_levelHow much tipped we are.
vend_delayHow long it takes to vend an item, vend_ready is false during that.
vend_readyIf the vendor is ready to vend.
vend_replyMessage spoken by the vending machine when a item is vended
vending_soundThe sound the vendor makes when it vends something

Procs

build_inventoryBuilds a vending machine inventory from the given list into their records depending of category.
build_seasonal_tabsMakes additional tabs/adds to the tabs based on the seasonal_items vendor specification
build_shared_inventoryBuilds shared vendors inventory +the first vendor that calls this uses build_inventory and makes their records in GLOB.vending_records[type] or premium or contraband, etc. +the rest of vendors of same type just set all their records to the respective global lists
display_message_and_visualsDisplays a balloon alert to the user if enable is true +state determines what the vending machine will do other than display a simple balloon message
do_stockActually does the restock. Overridden by lasgun vendor for snowflake behaviour
interactUsed only when vendor is tipped to put it back up +Normal usage is in ui_interact
release_itemVends the item
scan_cardThe found record matching the item_to_refill in the vending_records lists
start_release_itemTries to vend the item
stockTries to restock "item_to_stock" into the vending machine again after some checks. +show_feedback states whether or not to display any messages to the player, display the vending flicker animation as well as sound effects when recharging a cell. +Returns TRUE if item has been restocked, FALSE otherwise..
stock_vacuumVending machine tries to restock all of the loose item on it's location onto itself.
+

Var Details

active + + + + +

+

Whether this vendor is active or not.

check_accounts + + + + +

+

1 = requires PIN and checks accounts. 0 = You slide an ID, it vends, SPACE COMMUNISM!

coin_records + + + + +

+

list of /datum/vending_product's that are available on the vendor when a coin is used.

contraband + + + + +

+

Contraband products that are only available on vendor when hacked.

currently_vending + + + + +

+

A /datum/vending_product instance of what we're paying for right now.

ewallet + + + + +

+

Current cash card.

extended_inventory + + + + +

+

If the vending machine is hacked, makes the items on contraband list available.

faction + + + + +

+

Faction of the vendor. Can be null

hacking_safety + + + + +

+

Stops the machine from being hacked to shoot inventory or allow all access

hidden_records + + + + +

+

list of /datum/vending_product's that are available when vendor is hacked.

icon_deny + + + + +

+

Icon state when failing to vend, be it by no access or money.

icon_vend + + + + +

+

Icon state when successfuly vending

isshared + + + + +

+

If this vendor uses a global list for items.

knockdown_threshold + + + + +

+

How much damage we can take before tipping over.

last_reply + + + + +

+

When was last time we spoke when vending

last_slogan + + + + +

+

Last time we spoke our slogan

premium + + + + +

+

Premium products that are only available when using a coin to pay for it.

prices + + + + +

+

Prices for each item, list(/type/path = price), items not in the list don't have a price.

product_ads + + + + +

+

String of small ad messages in the vending screen - random chance

product_records + + + + +

+

list of /datum/vending_product's that are always available on the vendor

product_slogans + + + + +

+

String of slogans separated by semicolons, optional

products + + + + +

+

Normal products that are always available on the vendor.

seasonal_items + + + + +

+

seconds_electrified + + + + +

+

how many seconds(duh) we have left electrified.

shoot_inventory + + + + +

+

If we should fire items at customers! We're broken!

shut_up + + + + +

+

If true the machine won't be speaking slogans randomly. Stop spouting those godawful pitches!

slogan_delay + + + + +

+

The interval between slogans.

small_ads + + + + +

+

small ad messages in the vending screen - random chance of popping up whenever you open it

tipped_level + + + + +

+

How much tipped we are.

vend_delay + + + + +

+

How long it takes to vend an item, vend_ready is false during that.

vend_ready + + + + +

+

If the vendor is ready to vend.

vend_reply + + + + +

+

Message spoken by the vending machine when a item is vended

vending_sound + + + + +

+

The sound the vendor makes when it vends something

Proc Details

build_inventory +

+

Builds a vending machine inventory from the given list into their records depending of category.

build_seasonal_tabs +

+

Makes additional tabs/adds to the tabs based on the seasonal_items vendor specification

build_shared_inventory +

+

Builds shared vendors inventory +the first vendor that calls this uses build_inventory and makes their records in GLOB.vending_records[type] or premium or contraband, etc. +the rest of vendors of same type just set all their records to the respective global lists

display_message_and_visuals +

+

Displays a balloon alert to the user if enable is true +state determines what the vending machine will do other than display a simple balloon message

do_stock +

+

Actually does the restock. Overridden by lasgun vendor for snowflake behaviour

interact +

+

Used only when vendor is tipped to put it back up +Normal usage is in ui_interact

release_item +

+

Vends the item

scan_card +

+

The found record matching the item_to_refill in the vending_records lists

start_release_item +

+

Tries to vend the item

stock +

+

Tries to restock "item_to_stock" into the vending machine again after some checks. +show_feedback states whether or not to display any messages to the player, display the vending flicker animation as well as sound effects when recharging a cell. +Returns TRUE if item has been restocked, FALSE otherwise..

stock_vacuum +

+

Vending machine tries to restock all of the loose item on it's location onto itself.

+ + + diff --git a/obj/machinery/vending/boozeomat.html b/obj/machinery/vending/boozeomat.html new file mode 100644 index 0000000000000..86e2c05aacacd --- /dev/null +++ b/obj/machinery/vending/boozeomat.html @@ -0,0 +1,36 @@ + + + + + + + /obj/machinery/vending/boozeomat - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

boozeomat + + + +

+ + +

Vars

icon_deny18 drink entities below, plus the glasses, in case someone wants to edit the number of bottles
+

Var Details

icon_deny + + + + +

+

18 drink entities below, plus the glasses, in case someone wants to edit the number of bottles

+ + + diff --git a/obj/merge_conflict_marker.html b/obj/merge_conflict_marker.html new file mode 100644 index 0000000000000..4f45590f214f0 --- /dev/null +++ b/obj/merge_conflict_marker.html @@ -0,0 +1,35 @@ + + + + + + + /obj/merge_conflict_marker - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

merge_conflict_marker + + + +

+ + +

Procs

InitializeWe REALLY do not want un-addressed merge conflicts in maps for an inexhaustible list of reasons. This should help ensure that this will not be missed in case linters fail to catch it for any reason what-so-ever.

Proc Details

Initialize +

+

We REALLY do not want un-addressed merge conflicts in maps for an inexhaustible list of reasons. This should help ensure that this will not be missed in case linters fail to catch it for any reason what-so-ever.

+ + + diff --git a/obj/projectile.html b/obj/projectile.html new file mode 100644 index 0000000000000..98f520e0859a5 --- /dev/null +++ b/obj/projectile.html @@ -0,0 +1,278 @@ + + + + + + + /obj/projectile - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

projectile + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

accuracyBase projectile accuracy
ammoThe ammo data which holds most of the actual info
apxPixel location in absolute coordinates. This is (((x - 1) * 32) + 16 + pixel_x) +These values are floats, not integers. They need to be converted through CEILING or such when translated to relative pixel coordinates.
apyPixel location in absolute coordinates. This is (((y - 1) * 32) + 16 + pixel_y) +These values are floats, not integers. They need to be converted through CEILING or such when translated to relative pixel coordinates.
armor_typearmour type this projectile is checked against
damageActual projectile damage
damage_falloffhow many damage points the projectile loses per tiles travelled
damage_marine_falloffModifies projectile damage by a % when a marine gets passed, but not hit
def_zoneThe bodypart you're trying to hit
distance_travelledHow far the projectile has currently travelled
firerThe mob responsible for firing this projectile, if any
friendly_fire_multiplierA damage multiplier applied when a mob from the same faction as the projectile firer is hit
hit_atomsList of atoms already hit by that projectile. Will only matter for projectiles capable of passing through multiple atoms
hitsoundHit impact sound
iff_signalThe iff signal that will be compared to the target's one, to apply iff if needed
last_projectile_moveLast movement time
original_targetthe original target clicked
original_target_turfthe original target's starting turf
p_xthe pixel X location of the tile that the player clicked. Default is the center
p_ythe pixel y location of the tile that the player clicked. Default is the center
point_blank_rangeThe "point blank" range of the projectile. Inside this range the projectile gets a bonus to hit
proj_max_rangeMax range the projectile can travel
projectile_behavior_flagsAny special effects applied to this projectile
projectile_speedTiles travelled per full tick
shot_fromThe atom which shot us i.e. a gun or xeno
starting_turfthe projectile's starting turf
stored_movesHow many movements it needs to make in the next tick
sunderingammo sundering value
uncross_scheduledList of border movable atoms to check for when exiting a turf.
x_offsetFloat X_offset for calculating turf movements
y_offsetFloat Y_offset for calculating turf movements

Procs

fire_atsets greyscale for the projectile if it has been specified by the ammo datum
play_damage_effectvisual and audio feedback for hits
record_projectile_fireRecord whenever a player shoots things, taking into account bonus projectiles without running these checks multiple times
resume_moveTells the projectile to move again
+

Var Details

accuracy + + + + +

+

Base projectile accuracy

ammo + + + + +

+

The ammo data which holds most of the actual info

apx + + + + +

+

Pixel location in absolute coordinates. This is (((x - 1) * 32) + 16 + pixel_x) +These values are floats, not integers. They need to be converted through CEILING or such when translated to relative pixel coordinates.

apy + + + + +

+

Pixel location in absolute coordinates. This is (((y - 1) * 32) + 16 + pixel_y) +These values are floats, not integers. They need to be converted through CEILING or such when translated to relative pixel coordinates.

armor_type + + + + +

+

armour type this projectile is checked against

damage + + + + +

+

Actual projectile damage

damage_falloff + + + + +

+

how many damage points the projectile loses per tiles travelled

damage_marine_falloff + + + + +

+

Modifies projectile damage by a % when a marine gets passed, but not hit

def_zone + + + + +

+

The bodypart you're trying to hit

distance_travelled + + + + +

+

How far the projectile has currently travelled

firer + + + + +

+

The mob responsible for firing this projectile, if any

friendly_fire_multiplier + + + + +

+

A damage multiplier applied when a mob from the same faction as the projectile firer is hit

hit_atoms + + + + +

+

List of atoms already hit by that projectile. Will only matter for projectiles capable of passing through multiple atoms

hitsound + + + + +

+

Hit impact sound

iff_signal + + + + +

+

The iff signal that will be compared to the target's one, to apply iff if needed

last_projectile_move + + + + +

+

Last movement time

original_target + + + + +

+

the original target clicked

original_target_turf + + + + +

+

the original target's starting turf

p_x + + + + +

+

the pixel X location of the tile that the player clicked. Default is the center

p_y + + + + +

+

the pixel y location of the tile that the player clicked. Default is the center

point_blank_range + + + + +

+

The "point blank" range of the projectile. Inside this range the projectile gets a bonus to hit

proj_max_range + + + + +

+

Max range the projectile can travel

projectile_behavior_flags + + + + +

+

Any special effects applied to this projectile

projectile_speed + + + + +

+

Tiles travelled per full tick

shot_from + + + + +

+

The atom which shot us i.e. a gun or xeno

starting_turf + + + + +

+

the projectile's starting turf

stored_moves + + + + +

+

How many movements it needs to make in the next tick

sundering + + + + +

+

ammo sundering value

uncross_scheduled + + + + +

+

List of border movable atoms to check for when exiting a turf.

x_offset + + + + +

+

Float X_offset for calculating turf movements

y_offset + + + + +

+

Float Y_offset for calculating turf movements

Proc Details

fire_at +

+

sets greyscale for the projectile if it has been specified by the ammo datum

play_damage_effect +

+

visual and audio feedback for hits

record_projectile_fire +

+

Record whenever a player shoots things, taking into account bonus projectiles without running these checks multiple times

resume_move +

+

Tells the projectile to move again

+ + + diff --git a/obj/projectile/hitscan.html b/obj/projectile/hitscan.html new file mode 100644 index 0000000000000..b4788e032bf63 --- /dev/null +++ b/obj/projectile/hitscan.html @@ -0,0 +1,36 @@ + + + + + + + /obj/projectile/hitscan - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

hitscan + + + +

+ + +

Vars

effect_iconThe icon of the laser beam that will be created
+

Var Details

effect_icon + + + + +

+

The icon of the laser beam that will be created

+ + + diff --git a/obj/prop/mainship/prop/news_tv.html b/obj/prop/mainship/prop/news_tv.html new file mode 100644 index 0000000000000..459dc62835536 --- /dev/null +++ b/obj/prop/mainship/prop/news_tv.html @@ -0,0 +1,43 @@ + + + + + + + /obj/prop/mainship/prop/news_tv - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

news_tv + + + +

+ + + +

Vars

news_listList for the news stories
news_storiesNews stories
+

Var Details

news_list + + + + +

+

List for the news stories

news_stories + + + + +

+

News stories

+ + + diff --git a/obj/structure.html b/obj/structure.html new file mode 100644 index 0000000000000..faa53a10eb949 --- /dev/null +++ b/obj/structure.html @@ -0,0 +1,42 @@ + + + + + + + /obj/structure - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

structure + + + +

+ + + +

Procs

can_climbChecks to see if a mob can climb onto, or over this object
do_climbAttempts to climb onto, or past an object

Proc Details

can_climb +

+

Checks to see if a mob can climb onto, or over this object

do_climb +

+

Attempts to climb onto, or past an object

+ + + diff --git a/obj/structure/ammo_rack.html b/obj/structure/ammo_rack.html new file mode 100644 index 0000000000000..6df784497d2f3 --- /dev/null +++ b/obj/structure/ammo_rack.html @@ -0,0 +1,43 @@ + + + + + + + /obj/structure/ammo_rack - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

ammo_rack + + + +

+ + + +

Vars

storage_typeDetermines what subtype of storage is on our item, see datums\storage\subtypes

Procs

PopulateContentsUse this to fill your storage with items. USE THIS INSTEAD OF NEW/INIT
+

Var Details

storage_type + + + + +

+

Determines what subtype of storage is on our item, see datums\storage\subtypes

Proc Details

PopulateContents +

+

Use this to fill your storage with items. USE THIS INSTEAD OF NEW/INIT

+ + + diff --git a/obj/structure/barricade.html b/obj/structure/barricade.html new file mode 100644 index 0000000000000..f5a33e7cd7b22 --- /dev/null +++ b/obj/structure/barricade.html @@ -0,0 +1,78 @@ + + + + + + + /obj/structure/barricade - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

barricade + + + +

+ + + + + + + + +

Vars

can_change_dmg_stateWhether this barricade has damaged states
can_wireCan this barricade type be wired
closedWhether we can open/close this barrricade and thus go over it
destroyed_stack_amountto specify a non-zero amount of stack to drop when destroyed
is_wiredis this barriade wired?
stack_amountThe amount of stack dropped when disassembled at full health
stack_typeThe type of stack the barricade dropped when disassembled if any.
+

Var Details

can_change_dmg_state + + + + +

+

Whether this barricade has damaged states

can_wire + + + + +

+

Can this barricade type be wired

closed + + + + +

+

Whether we can open/close this barrricade and thus go over it

destroyed_stack_amount + + + + +

+

to specify a non-zero amount of stack to drop when destroyed

is_wired + + + + +

+

is this barriade wired?

stack_amount + + + + +

+

The amount of stack dropped when disassembled at full health

stack_type + + + + +

+

The type of stack the barricade dropped when disassembled if any.

+ + + diff --git a/obj/structure/barricade/metal.html b/obj/structure/barricade/metal.html new file mode 100644 index 0000000000000..26591582d0727 --- /dev/null +++ b/obj/structure/barricade/metal.html @@ -0,0 +1,43 @@ + + + + + + + /obj/structure/barricade/metal - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

metal + + + +

+ + + +

Vars

barricade_upgrade_typeThe type of upgrade and corresponding overlay we have attached
build_stateBuild state of the barricade
+

Var Details

barricade_upgrade_type + + + + +

+

The type of upgrade and corresponding overlay we have attached

build_state + + + + +

+

Build state of the barricade

+ + + diff --git a/obj/structure/barricade/metal/deployable.html b/obj/structure/barricade/metal/deployable.html new file mode 100644 index 0000000000000..10efb36821d3e --- /dev/null +++ b/obj/structure/barricade/metal/deployable.html @@ -0,0 +1,43 @@ + + + + + + + /obj/structure/barricade/metal/deployable - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

deployable + + + +

+ + + +

Vars

internal_shieldWhat it deploys into. typecast version of internal_item
item_flagsWhether this item can be deployed or undeployed
+

Var Details

internal_shield + + + + +

+

What it deploys into. typecast version of internal_item

item_flags + + + + +

+

Whether this item can be deployed or undeployed

+ + + diff --git a/obj/structure/barricade/plasteel.html b/obj/structure/barricade/plasteel.html new file mode 100644 index 0000000000000..e12ccbf113b65 --- /dev/null +++ b/obj/structure/barricade/plasteel.html @@ -0,0 +1,43 @@ + + + + + + + /obj/structure/barricade/plasteel - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

plasteel + + + +

+ + + +

Vars

build_stateWhat state is our barricade in for construction steps?
linkedehther we react with other cades next to us ie when opening or so
+

Var Details

build_state + + + + +

+

What state is our barricade in for construction steps?

linked + + + + +

+

ehther we react with other cades next to us ie when opening or so

+ + + diff --git a/obj/structure/bed.html b/obj/structure/bed.html new file mode 100644 index 0000000000000..c0c8692a130b2 --- /dev/null +++ b/obj/structure/bed.html @@ -0,0 +1,43 @@ + + + + + + + /obj/structure/bed - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

bed + + + +

+ + + +

Vars

buckling_xpixel x shift to give to the buckled mob
buckling_ypixel y shift to give to the buckled mob. This stacks with the lying down pixel shift when relevant
+

Var Details

buckling_x + + + + +

+

pixel x shift to give to the buckled mob

buckling_y + + + + +

+

pixel y shift to give to the buckled mob. This stacks with the lying down pixel shift when relevant

+ + + diff --git a/obj/structure/bed/chair/dropship.html b/obj/structure/bed/chair/dropship.html new file mode 100644 index 0000000000000..936059a1c13d7 --- /dev/null +++ b/obj/structure/bed/chair/dropship.html @@ -0,0 +1,43 @@ + + + + + + + /obj/structure/bed/chair/dropship - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

dropship + + + +

+ + + +

Vars

chair_stateHandles the current state of the chair (buckled, unbuckled, folded, broke)
chairbarHandles the chair buckle bars overlay
+

Var Details

chair_state + + + + +

+

Handles the current state of the chair (buckled, unbuckled, folded, broke)

chairbar + + + + +

+

Handles the chair buckle bars overlay

+ + + diff --git a/obj/structure/bed/chair/dropship/doublewide.html b/obj/structure/bed/chair/dropship/doublewide.html new file mode 100644 index 0000000000000..5acb15c480818 --- /dev/null +++ b/obj/structure/bed/chair/dropship/doublewide.html @@ -0,0 +1,50 @@ + + + + + + + /obj/structure/bed/chair/dropship/doublewide - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

doublewide + + + +

+ + + + +

Vars

chair_colorHandles the color of the chair
leader_chairIf the chair can only be sat in by a leader or not

Procs

doublewide_mob_densityHandles checking the changing density for the person buckling or unbuckling and the person next to the buckling/unbuckling person
+

Var Details

chair_color + + + + +

+

Handles the color of the chair

leader_chair + + + + +

+

If the chair can only be sat in by a leader or not

Proc Details

doublewide_mob_density +

+

Handles checking the changing density for the person buckling or unbuckling and the person next to the buckling/unbuckling person

+ + + diff --git a/obj/structure/bed/chair/janicart.html b/obj/structure/bed/chair/janicart.html new file mode 100644 index 0000000000000..887b1fe9ae886 --- /dev/null +++ b/obj/structure/bed/chair/janicart.html @@ -0,0 +1,36 @@ + + + + + + + /obj/structure/bed/chair/janicart - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

janicart + + + +

+ +

old style janicart

+

Vars

buckle_flagscan't be disassembled and doesn't drop anything when destroyed
+

Var Details

buckle_flags + + + + +

+

can't be disassembled and doesn't drop anything when destroyed

+ + + diff --git a/obj/structure/bed/chair/vehicle_crew.html b/obj/structure/bed/chair/vehicle_crew.html new file mode 100644 index 0000000000000..a8a6e262edafb --- /dev/null +++ b/obj/structure/bed/chair/vehicle_crew.html @@ -0,0 +1,43 @@ + + + + + + + /obj/structure/bed/chair/vehicle_crew - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

vehicle_crew + + + +

+ + + +

Vars

ownerowner of this object, assigned during interior linkage
skill_reqThe skill required to man this chair
+

Var Details

owner + + + + +

+

owner of this object, assigned during interior linkage

skill_req + + + + +

+

The skill required to man this chair

+ + + diff --git a/obj/structure/bed/medevac_stretcher.html b/obj/structure/bed/medevac_stretcher.html new file mode 100644 index 0000000000000..70aff3227ea26 --- /dev/null +++ b/obj/structure/bed/medevac_stretcher.html @@ -0,0 +1,36 @@ + + + + + + + /obj/structure/bed/medevac_stretcher - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

medevac_stretcher + + + +

+ + +

Vars

busyA busy var to check if the strecher is already used to send someone to the beacon
+

Var Details

busy + + + + +

+

A busy var to check if the strecher is already used to send someone to the beacon

+ + + diff --git a/obj/structure/benchpress.html b/obj/structure/benchpress.html new file mode 100644 index 0000000000000..23310a5814731 --- /dev/null +++ b/obj/structure/benchpress.html @@ -0,0 +1,57 @@ + + + + + + + /obj/structure/benchpress - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

benchpress + + + +

+ + + + + +

Vars

platesamount of plates we are using, used to keep track for animations

Procs

do_workout_setchecks if possible and if yes performs a workout set for this mob
finish_presscleans up releases exerciser
undo_buffproc to undo the unarmed buff granted by the bench
+

Var Details

plates + + + + +

+

amount of plates we are using, used to keep track for animations

Proc Details

do_workout_set +

+

checks if possible and if yes performs a workout set for this mob

finish_press +

+

cleans up releases exerciser

undo_buff +

+

proc to undo the unarmed buff granted by the bench

+ + + diff --git a/obj/structure/cable.html b/obj/structure/cable.html new file mode 100644 index 0000000000000..5e8c8680fc0e2 --- /dev/null +++ b/obj/structure/cable.html @@ -0,0 +1,42 @@ + + + + + + + /obj/structure/cable - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

cable + + + +

+ + + +

Procs

Connect_cableSet the linked indicator bitflags
Disconnect_cableClear the linked indicator bitflags

Proc Details

Connect_cable +

+

Set the linked indicator bitflags

Disconnect_cable +

+

Clear the linked indicator bitflags

+ + + diff --git a/obj/structure/cable/multilayer.html b/obj/structure/cable/multilayer.html new file mode 100644 index 0000000000000..e9d8c3602a9d8 --- /dev/null +++ b/obj/structure/cable/multilayer.html @@ -0,0 +1,35 @@ + + + + + + + /obj/structure/cable/multilayer - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

multilayer + + + +

+ +

multilayer cable to connect different layers

+

Procs

ReloadReset powernet in this hub.

Proc Details

Reload +

+

Reset powernet in this hub.

+ + + diff --git a/obj/structure/campaign_deployblocker.html b/obj/structure/campaign_deployblocker.html new file mode 100644 index 0000000000000..ae3f98cee2a32 --- /dev/null +++ b/obj/structure/campaign_deployblocker.html @@ -0,0 +1,50 @@ + + + + + + + /obj/structure/campaign_deployblocker - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

campaign_deployblocker + + + +

+ + + + +

Vars

factionThe faction this belongs to
to_remove_flagsWhat flag this removes from the mission

Procs

deactivateSignals its destruction, enabling the use of the teleporter asset
+

Var Details

faction + + + + +

+

The faction this belongs to

to_remove_flags + + + + +

+

What flag this removes from the mission

Proc Details

deactivate +

+

Signals its destruction, enabling the use of the teleporter asset

+ + + diff --git a/obj/structure/campaign_objective.html b/obj/structure/campaign_objective.html new file mode 100644 index 0000000000000..5f190681482a1 --- /dev/null +++ b/obj/structure/campaign_objective.html @@ -0,0 +1,57 @@ + + + + + + + /obj/structure/campaign_objective - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

campaign_objective + + + +

+ + + + + +

Vars

countdownoverhead timer

Procs

disableHandles the objective being destroyed, disabled or otherwise completed
get_time_leftRemaining time for overhead countdown if applicable
update_control_minimap_iconUpdate the minimap blips to show who is controlling this objective
+

Var Details

countdown + + + + +

+

overhead timer

Proc Details

disable +

+

Handles the objective being destroyed, disabled or otherwise completed

get_time_left +

+

Remaining time for overhead countdown if applicable

update_control_minimap_icon +

+

Update the minimap blips to show who is controlling this objective

+ + + diff --git a/obj/structure/campaign_objective/capture_objective.html b/obj/structure/campaign_objective/capture_objective.html new file mode 100644 index 0000000000000..d7cdba0891394 --- /dev/null +++ b/obj/structure/campaign_objective/capture_objective.html @@ -0,0 +1,99 @@ + + + + + + + /obj/structure/campaign_objective/capture_objective - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

capture_objective + + + +

+ + + + + + + + + + + +

Vars

activation_timeChannel time to capture or activate this objective
capture_delayHow long capture takes to come into effect, if applicable
capture_flagsSpecial capture behavior flags for this objectives
capture_timerTimer holder for the current capture/decapture timer
capturing_factionFaction currently trying to change the objective's ownership
owning_factionWho controls this objective. Mainly used for objectives that can be recaptured

Procs

begin_captureStarts the capture process
capture_checkChecks if this objective can be captured
do_captureTries to capture or decapture the objective
finish_captureFully captures or activates the objective
+

Var Details

activation_time + + + + +

+

Channel time to capture or activate this objective

capture_delay + + + + +

+

How long capture takes to come into effect, if applicable

capture_flags + + + + +

+

Special capture behavior flags for this objectives

capture_timer + + + + +

+

Timer holder for the current capture/decapture timer

capturing_faction + + + + +

+

Faction currently trying to change the objective's ownership

owning_faction + + + + +

+

Who controls this objective. Mainly used for objectives that can be recaptured

Proc Details

begin_capture +

+

Starts the capture process

capture_check +

+

Checks if this objective can be captured

do_capture +

+

Tries to capture or decapture the objective

finish_capture +

+

Fully captures or activates the objective

+ + + diff --git a/obj/structure/campaign_objective/destruction_objective.html b/obj/structure/campaign_objective/destruction_objective.html new file mode 100644 index 0000000000000..bc455a5e52785 --- /dev/null +++ b/obj/structure/campaign_objective/destruction_objective.html @@ -0,0 +1,43 @@ + + + + + + + /obj/structure/campaign_objective/destruction_objective - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

destruction_objective + + + +

+ + + +

Vars

explosion_smokeexplosion smoke particle holder
factionThe faction this belongs to
+

Var Details

explosion_smoke + + + + +

+

explosion smoke particle holder

faction + + + + +

+

The faction this belongs to

+ + + diff --git a/obj/structure/campaign_objective/destruction_objective/bluespace_core.html b/obj/structure/campaign_objective/destruction_objective/bluespace_core.html new file mode 100644 index 0000000000000..7d964bb9eb7bf --- /dev/null +++ b/obj/structure/campaign_objective/destruction_objective/bluespace_core.html @@ -0,0 +1,35 @@ + + + + + + + /obj/structure/campaign_objective/destruction_objective/bluespace_core - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

bluespace_core + + + +

+ + +

Procs

change_statusChanges the status of the object

Proc Details

change_status +

+

Changes the status of the object

+ + + diff --git a/obj/structure/campaign_objective/destruction_objective/bunker_buster.html b/obj/structure/campaign_objective/destruction_objective/bunker_buster.html new file mode 100644 index 0000000000000..c9a371207f576 --- /dev/null +++ b/obj/structure/campaign_objective/destruction_objective/bunker_buster.html @@ -0,0 +1,64 @@ + + + + + + + /obj/structure/campaign_objective/destruction_objective/bunker_buster - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

bunker_buster + + + +

+ + + + + + +

Vars

beacon_durationHow long the beacon takes to trigger its effect
beacon_timerHolds the actual timer for the beacon

Procs

beacon_effectEffects triggered when the timer runs out
cancel_beaconClears the beacon if another beacon successfully activates
play_trigger_soundAlerts player on the z-level that the beacon has triggered successfully
+

Var Details

beacon_duration + + + + +

+

How long the beacon takes to trigger its effect

beacon_timer + + + + +

+

Holds the actual timer for the beacon

Proc Details

beacon_effect +

+

Effects triggered when the timer runs out

cancel_beacon +

+

Clears the beacon if another beacon successfully activates

play_trigger_sound +

+

Alerts player on the z-level that the beacon has triggered successfully

+ + + diff --git a/obj/structure/campaign_objective/destruction_objective/bunker_buster/bluespace.html b/obj/structure/campaign_objective/destruction_objective/bunker_buster/bluespace.html new file mode 100644 index 0000000000000..abc781be8f63e --- /dev/null +++ b/obj/structure/campaign_objective/destruction_objective/bunker_buster/bluespace.html @@ -0,0 +1,35 @@ + + + + + + + /obj/structure/campaign_objective/destruction_objective/bunker_buster/bluespace - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

bluespace + + + +

+ + +

Procs

do_visual_effectVisual effect right before the blast

Proc Details

do_visual_effect +

+

Visual effect right before the blast

+ + + diff --git a/obj/structure/campaign_objective/destruction_objective/mlrs.html b/obj/structure/campaign_objective/destruction_objective/mlrs.html new file mode 100644 index 0000000000000..984c3c03c8414 --- /dev/null +++ b/obj/structure/campaign_objective/destruction_objective/mlrs.html @@ -0,0 +1,43 @@ + + + + + + + /obj/structure/campaign_objective/destruction_objective/mlrs - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

mlrs + + + +

+ + + +

Vars

destroyed_stateintact or not
smoke_typedestroyed vehicle smoke effect
+

Var Details

destroyed_state + + + + +

+

intact or not

smoke_type + + + + +

+

destroyed vehicle smoke effect

+ + + diff --git a/obj/structure/caspart.html b/obj/structure/caspart.html new file mode 100644 index 0000000000000..073b87b7db90a --- /dev/null +++ b/obj/structure/caspart.html @@ -0,0 +1,36 @@ + + + + + + + /obj/structure/caspart - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

caspart + + + +

+ +

Base cas plane structure, we use this instead of turfs if we want to peek onto the turfs below

+

Vars

coverageyou can't shoot it to death
+

Var Details

coverage + + + + +

+

you can't shoot it to death

+ + + diff --git a/obj/structure/caspart/caschair.html b/obj/structure/caspart/caschair.html new file mode 100644 index 0000000000000..2066280d7149c --- /dev/null +++ b/obj/structure/caspart/caschair.html @@ -0,0 +1,71 @@ + + + + + + + /obj/structure/caspart/caschair - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

caschair + + + +

+ + + + + + + +

Vars

cas_usableWhether CAS is usable or not.
cockpitAnimated cockpit /image overlay, 96x96
occupantThe pilot human
ownerThe docking port we are handling control for

Procs

eject_userEject the user, use forced = TRUE to do so instantly
set_cockpit_overlayHandles updating the cockpit overlay
+

Var Details

cas_usable + + + + +

+

Whether CAS is usable or not.

cockpit + + + + +

+

Animated cockpit /image overlay, 96x96

occupant + + + + +

+

The pilot human

owner + + + + +

+

The docking port we are handling control for

Proc Details

eject_user +

+

Eject the user, use forced = TRUE to do so instantly

set_cockpit_overlay +

+

Handles updating the cockpit overlay

+ + + diff --git a/obj/structure/caspart/minigun.html b/obj/structure/caspart/minigun.html new file mode 100644 index 0000000000000..80c238a7cb1c4 --- /dev/null +++ b/obj/structure/caspart/minigun.html @@ -0,0 +1,43 @@ + + + + + + + /obj/structure/caspart/minigun - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

minigun + + + +

+ + + +

Vars

static_weaponref to the static weapon
static_weapon_typestatic weapon we start with at the tip
+

Var Details

static_weapon + + + + +

+

ref to the static weapon

static_weapon_type + + + + +

+

static weapon we start with at the tip

+ + + diff --git a/obj/structure/closet.html b/obj/structure/closet.html new file mode 100644 index 0000000000000..d0aa5cb51eeaa --- /dev/null +++ b/obj/structure/closet.html @@ -0,0 +1,169 @@ + + + + + + + /obj/structure/closet - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

closet + + + +

+ + + + + + + + + + + + + + + + + + + + + +

Vars

breakout_timeHow much time it takes to resist out of a closet
close_soundThe sound the closet makes when closed
closet_flagsThe flags of closets, used for various flags, see code__DEFINES\objects.dm
closet_stun_delayThe delay between stuns getting out of the closet causes
drop_materialThe material dropped on destruction
icon_closedUsed for determining the closed overlay
icon_openedUsed for determining the open overlay
item_size_counterHow many items are currently inside
lastbangThe cooldown for the "bang bang" of breaking out of the closet
lockedIs the closet locked?
max_mob_sizeThe maximum size of the mob we can put in
mob_size_counterHow many mobs are currently inside
mob_storage_capacityHow many max_mob_size'd mob/living can fit together inside a closet.
open_soundThe sound the closet makes when opened
openedIs the closet open?
overlay_weldedUsed for determining the welded overlay
storage_capacityThe amount of things in general we can have in a closet
wall_mountedIs the closet mounted to a wall?
weldedIs the closet welded?

Procs

PopulateContentsUSE THIS TO FILL IT, NOT INITIALIZE OR NEW
+

Var Details

breakout_time + + + + +

+

How much time it takes to resist out of a closet

close_sound + + + + +

+

The sound the closet makes when closed

closet_flags + + + + +

+

The flags of closets, used for various flags, see code__DEFINES\objects.dm

closet_stun_delay + + + + +

+

The delay between stuns getting out of the closet causes

drop_material + + + + +

+

The material dropped on destruction

icon_closed + + + + +

+

Used for determining the closed overlay

icon_opened + + + + +

+

Used for determining the open overlay

item_size_counter + + + + +

+

How many items are currently inside

lastbang + + + + +

+

The cooldown for the "bang bang" of breaking out of the closet

locked + + + + +

+

Is the closet locked?

max_mob_size + + + + +

+

The maximum size of the mob we can put in

mob_size_counter + + + + +

+

How many mobs are currently inside

mob_storage_capacity + + + + +

+

How many max_mob_size'd mob/living can fit together inside a closet.

open_sound + + + + +

+

The sound the closet makes when opened

opened + + + + +

+

Is the closet open?

overlay_welded + + + + +

+

Used for determining the welded overlay

storage_capacity + + + + +

+

The amount of things in general we can have in a closet

wall_mounted + + + + +

+

Is the closet mounted to a wall?

welded + + + + +

+

Is the closet welded?

Proc Details

PopulateContents +

+

USE THIS TO FILL IT, NOT INITIALIZE OR NEW

+ + + diff --git a/obj/structure/closet/bodybag.html b/obj/structure/closet/bodybag.html new file mode 100644 index 0000000000000..56bc3aa0fef9f --- /dev/null +++ b/obj/structure/closet/bodybag.html @@ -0,0 +1,36 @@ + + + + + + + /obj/structure/closet/bodybag - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

bodybag + + + +

+ + +

Vars

display_nameShould the name of the person inside be displayed?
+

Var Details

display_name + + + + +

+

Should the name of the person inside be displayed?

+ + + diff --git a/obj/structure/cocoon.html b/obj/structure/cocoon.html new file mode 100644 index 0000000000000..0505b050badac --- /dev/null +++ b/obj/structure/cocoon.html @@ -0,0 +1,92 @@ + + + + + + + /obj/structure/cocoon - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

cocoon + + + +

+ + + + + + + + + + +

Vars

busyStandard busy check
cocoon_life_timeHow much time the cocoon takes to deplete the life force of the marine
hivenumberWhich hive it belongs too
larva_point_rewardHow much larva points it gives at the end of its life time (8 points for one larva in distress)
victimWhat is inside the cocoon

Procs

life_draining_overStop producing points and release the victim if needed
on_shuttle_crushSignal proc, makes sure the victim gets gibbed if a shuttle lands on the cocoon
release_victimOpen the cocoon and move the victim out
unanchor_from_nestAllow the cocoon to be opened and dragged
+

Var Details

busy + + + + +

+

Standard busy check

cocoon_life_time + + + + +

+

How much time the cocoon takes to deplete the life force of the marine

hivenumber + + + + +

+

Which hive it belongs too

larva_point_reward + + + + +

+

How much larva points it gives at the end of its life time (8 points for one larva in distress)

victim + + + + +

+

What is inside the cocoon

Proc Details

life_draining_over +

+

Stop producing points and release the victim if needed

on_shuttle_crush +

+

Signal proc, makes sure the victim gets gibbed if a shuttle lands on the cocoon

release_victim +

+

Open the cocoon and move the victim out

unanchor_from_nest +

+

Allow the cocoon to be opened and dragged

+ + + diff --git a/obj/structure/curtain.html b/obj/structure/curtain.html new file mode 100644 index 0000000000000..1cc127abd2d0a --- /dev/null +++ b/obj/structure/curtain.html @@ -0,0 +1,43 @@ + + + + + + + /obj/structure/curtain - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

curtain + + + +

+ + + +

Vars

initial_icon_stateused to reset curtain back to default state when closing
possiblesoundspossible sounds we play when opening the curtain
+

Var Details

initial_icon_state + + + + +

+

used to reset curtain back to default state when closing

possiblesounds + + + + +

+

possible sounds we play when opening the curtain

+ + + diff --git a/obj/structure/disposalconstruct.html b/obj/structure/disposalconstruct.html new file mode 100644 index 0000000000000..8bd627a87f0cb --- /dev/null +++ b/obj/structure/disposalconstruct.html @@ -0,0 +1,50 @@ + + + + + + + /obj/structure/disposalconstruct - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

disposalconstruct + + + +

+ + + +

Procs

attackbyZ-Level stuff +Z-Level stuff
hideZ-Level stuff +Z-Level stuff +Z-Level stuff +Z-Level stuff

Proc Details

attackby +

+

Z-Level stuff +Z-Level stuff

hide +

+

Z-Level stuff +Z-Level stuff +Z-Level stuff +Z-Level stuff

+ + + diff --git a/obj/structure/disposalpipe.html b/obj/structure/disposalpipe.html new file mode 100644 index 0000000000000..44d36c0d675d7 --- /dev/null +++ b/obj/structure/disposalpipe.html @@ -0,0 +1,35 @@ + + + + + + + /obj/structure/disposalpipe - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

disposalpipe + + + +

+ + +

Procs

shuttleRotateStructure rotate procs

Proc Details

shuttleRotate +

+

Structure rotate procs

+ + + diff --git a/obj/structure/disposalpipe/trunk.html b/obj/structure/disposalpipe/trunk.html new file mode 100644 index 0000000000000..556a84e1b639b --- /dev/null +++ b/obj/structure/disposalpipe/trunk.html @@ -0,0 +1,42 @@ + + + + + + + /obj/structure/disposalpipe/trunk - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

trunk + + + +

+ + + +

Procs

clean_linkedSignal handler to clean linked from harddeling
set_linkedSet the linked atom

Proc Details

clean_linked +

+

Signal handler to clean linked from harddeling

set_linked +

+

Set the linked atom

+ + + diff --git a/obj/structure/drop_pod_launcher.html b/obj/structure/drop_pod_launcher.html new file mode 100644 index 0000000000000..dc436e76bd308 --- /dev/null +++ b/obj/structure/drop_pod_launcher.html @@ -0,0 +1,43 @@ + + + + + + + /obj/structure/drop_pod_launcher - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

drop_pod_launcher + + + +

+ + + +

Vars

pod_typeThe type of pod this bay takes by default. Used for automated reloading

Procs

refresh_podLoads a new pod onto the bay if one is not already there
+

Var Details

pod_type + + + + +

+

The type of pod this bay takes by default. Used for automated reloading

Proc Details

refresh_pod +

+

Loads a new pod onto the bay if one is not already there

+ + + diff --git a/obj/structure/droppod.html b/obj/structure/droppod.html new file mode 100644 index 0000000000000..22a60cdba385f --- /dev/null +++ b/obj/structure/droppod.html @@ -0,0 +1,169 @@ + + + + + + + /obj/structure/droppod - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

droppod + + + +

+ +

base marine drop pod. can be controlled by an attached /obj/structure/droppod/leader or /obj/machinery/computer/droppod_control

+ + + + + + + + + + + + + + + + + + + +

Vars

drop_stateCurrent drop pod status: shipside = ready, active = mid-drop, landed = planetside
falltimeafter the pod finishes it's travelhow long it spends falling
interaction_actionsAction to actually launch the drop pod
launch_allowedWhether launch is allowed. for things like disabling during hijack phase
operation_startedIf true, you can launch the droppod before drop pod delay
reserved_area3x3 transit reservation for immersion as if flying through space
target_xX target coordinate
target_yY target coordinate
target_zThe Z-level that the pod launches to

Procs

allow_dropAllow this droppod to ignore dropdelay or otherwise reenable its use
change_targeted_zUpdates the z-level this pod drops to
checklandingreturns boolean if the currently set target/optionally passed turf are valid to drop to
completedropcompletes landing a little delayed for a dramatic effect
disable_launchingDisables launching
dodropDo the stuff when it "hits the ground"
find_new_targetFind a new suitable target turf around the pods initial target
finish_dropMoves the droppod into its target turf, which it updates if needed
launch_podactually launches the pod
set_targetsets target of this drop pod and notifies the user if it's a valid target
start_launch_podattempts to launch the drop pod at it's currently set coordinates. commanded_drop is TRUE when the drop is being requested by a command drop pod
+

Var Details

drop_state + + + + +

+

Current drop pod status: shipside = ready, active = mid-drop, landed = planetside

falltime + + + + +

+

after the pod finishes it's travelhow long it spends falling

interaction_actions + + + + +

+

Action to actually launch the drop pod

launch_allowed + + + + +

+

Whether launch is allowed. for things like disabling during hijack phase

operation_started + + + + +

+

If true, you can launch the droppod before drop pod delay

reserved_area + + + + +

+

3x3 transit reservation for immersion as if flying through space

target_x + + + + +

+

X target coordinate

target_y + + + + +

+

Y target coordinate

target_z + + + + +

+

The Z-level that the pod launches to

Proc Details

allow_drop +

+

Allow this droppod to ignore dropdelay or otherwise reenable its use

change_targeted_z +

+

Updates the z-level this pod drops to

checklanding +

+

returns boolean if the currently set target/optionally passed turf are valid to drop to

completedrop +

+

completes landing a little delayed for a dramatic effect

disable_launching +

+

Disables launching

dodrop +

+

Do the stuff when it "hits the ground"

find_new_target +

+

Find a new suitable target turf around the pods initial target

finish_drop +

+

Moves the droppod into its target turf, which it updates if needed

launch_pod +

+

actually launches the pod

set_target +

+

sets target of this drop pod and notifies the user if it's a valid target

start_launch_pod +

+

attempts to launch the drop pod at it's currently set coordinates. commanded_drop is TRUE when the drop is being requested by a command drop pod

+ + + diff --git a/obj/structure/droppod/nonmob.html b/obj/structure/droppod/nonmob.html new file mode 100644 index 0000000000000..d5319cb4f714d --- /dev/null +++ b/obj/structure/droppod/nonmob.html @@ -0,0 +1,57 @@ + + + + + + + /obj/structure/droppod/nonmob - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

nonmob + + + +

+ + + + + +

Vars

stored_objectThe currently stored object

Procs

load_packageHandles loading an object into the pod
on_package_delHandles if the package is deleted inside the pod
unload_packageHandles removing the stored object from the pod
+

Var Details

stored_object + + + + +

+

The currently stored object

Proc Details

load_package +

+

Handles loading an object into the pod

on_package_del +

+

Handles if the package is deleted inside the pod

unload_package +

+

Handles removing the stored object from the pod

+ + + diff --git a/obj/structure/dropship_equipment.html b/obj/structure/dropship_equipment.html new file mode 100644 index 0000000000000..0a7414883ac01 --- /dev/null +++ b/obj/structure/dropship_equipment.html @@ -0,0 +1,108 @@ + + + + + + + /obj/structure/dropship_equipment - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

dropship_equipment + + + +

+ +

::

+ + + + + + + + + + +

Vars

ammo_equippedthe ammo currently equipped.
ammo_type_usedwhat kind of ammo this uses if any
dropship_equipment_flagswhether it uses ammo
equip_categoryon what kind of base this can be installed.
linked_consolewhether the equipment is a weapon usable for dropship bombardment. +the weapons console of the dropship we're installed on. Not used by CAS planes
linked_shuttlewhether they get a button when shown on the shuttle console's equipment list.
point_costhow many points it costs to build this with the fabricator, set to 0 if unbuildable.
screen_modeused by the dropship console code when this equipment is selected
ship_basethe ship base the equipment is currently installed on.

Procs

on_arrivalthings to do when the shuttle this equipment is attached to land.
on_launchthings to do when the shuttle this equipment is attached to is about to launch.
+

Var Details

ammo_equipped + + + + +

+

the ammo currently equipped.

ammo_type_used + + + + +

+

what kind of ammo this uses if any

dropship_equipment_flags + + + + +

+

whether it uses ammo

equip_category + + + + +

+

on what kind of base this can be installed.

linked_console + + + + +

+

whether the equipment is a weapon usable for dropship bombardment. +the weapons console of the dropship we're installed on. Not used by CAS planes

linked_shuttle + + + + +

+

whether they get a button when shown on the shuttle console's equipment list.

point_cost + + + + +

+

how many points it costs to build this with the fabricator, set to 0 if unbuildable.

screen_mode + + + + +

+

used by the dropship console code when this equipment is selected

ship_base + + + + +

+

the ship base the equipment is currently installed on.

Proc Details

on_arrival +

+

things to do when the shuttle this equipment is attached to land.

on_launch +

+

things to do when the shuttle this equipment is attached to is about to launch.

+ + + diff --git a/obj/structure/dropship_equipment/cas/weapon.html b/obj/structure/dropship_equipment/cas/weapon.html new file mode 100644 index 0000000000000..9a653fa2ed220 --- /dev/null +++ b/obj/structure/dropship_equipment/cas/weapon.html @@ -0,0 +1,50 @@ + + + + + + + /obj/structure/dropship_equipment/cas/weapon - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

weapon + + + +

+ +

WEAPONS

+ + +

Vars

firing_delaydelay between firing.
firing_soundprimary firing sound on the plane
last_firedused for weapon cooldown after use
+

Var Details

firing_delay + + + + +

+

delay between firing.

firing_sound + + + + +

+

primary firing sound on the plane

last_fired + + + + +

+

used for weapon cooldown after use

+ + + diff --git a/obj/structure/dropship_equipment/shuttle/flare_launcher.html b/obj/structure/dropship_equipment/shuttle/flare_launcher.html new file mode 100644 index 0000000000000..2266f0cfc8775 --- /dev/null +++ b/obj/structure/dropship_equipment/shuttle/flare_launcher.html @@ -0,0 +1,57 @@ + + + + + + + /obj/structure/dropship_equipment/shuttle/flare_launcher - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

flare_launcher + + + +

+ +

flare launcher

+ + + +

Vars

deploy_cooldowncooldown for deployment
max_amountmax capacity of flares in system
stored_amountamount of loaded flares

Procs

deploy_flaregets target and deploy the flare launcher
+

Var Details

deploy_cooldown + + + + +

+

cooldown for deployment

max_amount + + + + +

+

max capacity of flares in system

stored_amount + + + + +

+

amount of loaded flares

Proc Details

deploy_flare +

+

gets target and deploy the flare launcher

+ + + diff --git a/obj/structure/dropship_equipment/shuttle/rappel_system.html b/obj/structure/dropship_equipment/shuttle/rappel_system.html new file mode 100644 index 0000000000000..ee135476b7f91 --- /dev/null +++ b/obj/structure/dropship_equipment/shuttle/rappel_system.html @@ -0,0 +1,106 @@ + + + + + + + /obj/structure/dropship_equipment/shuttle/rappel_system - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

rappel_system + + + +

+ + + + + + + + + + + + +

Vars

disabled_smokeSmoke particle holder for when it's disabled
rappel_stateWhat state the rope is in (usable, hooked, locked, in-use, etc.)
ropeThe rappeling rope we use

Procs

attack_rappelHandles xeno attacks on the system; called by the rappel rope whenever attack_alien() is called on the rope
break_rappelDisables the rappel system, retracting any active ropes in the process.
deploy_ropeDeploys the rappel and unlocks the hatch so that people can drop down
pre_retractFeedback for when PO manually retracts the rope. Leads back into retract_rope after sounds and balloon alerts are done.
rappel_animationHuman animation for dropping down
reel_inPart 2 of retract_rope(), moves the rope back into the system after the rope animation has completed. Unbuckles any mobs which were attached to it.
retract_ropeUndeploys the rappel and locks the hatch. Rappel cannot be retracted if it is currently being attacked (hooked)
self_repairDisabled rappels repair themselves after the cord is placed back in.
+

Var Details

disabled_smoke + + + + +

+

Smoke particle holder for when it's disabled

rappel_state + + + + +

+

What state the rope is in (usable, hooked, locked, in-use, etc.)

rope + + + + +

+

The rappeling rope we use

Proc Details

attack_rappel +

+

Handles xeno attacks on the system; called by the rappel rope whenever attack_alien() is called on the rope

break_rappel +

+

Disables the rappel system, retracting any active ropes in the process.

deploy_rope +

+

Deploys the rappel and unlocks the hatch so that people can drop down

pre_retract +

+

Feedback for when PO manually retracts the rope. Leads back into retract_rope after sounds and balloon alerts are done.

rappel_animation +

+

Human animation for dropping down

reel_in +

+

Part 2 of retract_rope(), moves the rope back into the system after the rope animation has completed. Unbuckles any mobs which were attached to it.

retract_rope +

+

Undeploys the rappel and locks the hatch. Rappel cannot be retracted if it is currently being attacked (hooked)

self_repair +

+

Disabled rappels repair themselves after the cord is placed back in.

+ + + diff --git a/obj/structure/dropship_equipment/shuttle/sentry_holder.html b/obj/structure/dropship_equipment/shuttle/sentry_holder.html new file mode 100644 index 0000000000000..7361b31d530c4 --- /dev/null +++ b/obj/structure/dropship_equipment/shuttle/sentry_holder.html @@ -0,0 +1,35 @@ + + + + + + + /obj/structure/dropship_equipment/shuttle/sentry_holder - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

sentry_holder + + + +

+ +

turret holders

+

Procs

clean_refsThis cleans the deployed_turret ref when the sentry is destroyed.

Proc Details

clean_refs +

+

This cleans the deployed_turret ref when the sentry is destroyed.

+ + + diff --git a/obj/structure/dropship_equipment/shuttle/weapon_holder.html b/obj/structure/dropship_equipment/shuttle/weapon_holder.html new file mode 100644 index 0000000000000..7e193ed74f861 --- /dev/null +++ b/obj/structure/dropship_equipment/shuttle/weapon_holder.html @@ -0,0 +1,57 @@ + + + + + + + /obj/structure/dropship_equipment/shuttle/weapon_holder - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

weapon_holder + + + +

+ + + + + +

Vars

deployable_typeThe type of deployable that this holder holds
deployed_icon_stateThe sprite used when we are deployed
held_deployableThe reference to the deployable itself
undeployed_icon_stateThe sprite used when we aren't deployed
+

Var Details

deployable_type + + + + +

+

The type of deployable that this holder holds

deployed_icon_state + + + + +

+

The sprite used when we are deployed

held_deployable + + + + +

+

The reference to the deployable itself

undeployed_icon_state + + + + +

+

The sprite used when we aren't deployed

+ + + diff --git a/obj/structure/earth_pillar.html b/obj/structure/earth_pillar.html new file mode 100644 index 0000000000000..03bc813c02e18 --- /dev/null +++ b/obj/structure/earth_pillar.html @@ -0,0 +1,87 @@ + + + + + + + /obj/structure/earth_pillar - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

earth_pillar + + + +

+ + + + + + + + + +

Vars

attacks_to_destroyThe amount of times a xeno needs to attack this to destroy it.
particle_holderUsed for particles. Holds the particles instead of the mob. See particle_holder for documentation.
warning_flashesThe amount of times an Earth Pillar flashes before executing its interaction with Seismic Fracture.
xeno_ownerThe xeno owner of this object.

Procs

call_area_attackSeismic Fracture (as in the ability) has a special interaction with any Earth Pillars caught in its attack range. +Those Earth Pillars will reflect the same attack in a similar range around it, destroying itself afterwards.
call_update_icon_stateCalls update_appearance, this exists to discard the arguments we get from the signals.
owner_deletedCalled when the registered xeno_owner is deleted and cleans up the var.
throw_pillarDeletes the pillar and creates a projectile on the same tile, to be fired at the target atom.
+

Var Details

attacks_to_destroy + + + + +

+

The amount of times a xeno needs to attack this to destroy it.

particle_holder + + + + +

+

Used for particles. Holds the particles instead of the mob. See particle_holder for documentation.

warning_flashes + + + + +

+

The amount of times an Earth Pillar flashes before executing its interaction with Seismic Fracture.

xeno_owner + + + + +

+

The xeno owner of this object.

Proc Details

call_area_attack +

+

Seismic Fracture (as in the ability) has a special interaction with any Earth Pillars caught in its attack range. +Those Earth Pillars will reflect the same attack in a similar range around it, destroying itself afterwards.

call_update_icon_state +

+

Calls update_appearance, this exists to discard the arguments we get from the signals.

owner_deleted +

+

Called when the registered xeno_owner is deleted and cleans up the var.

throw_pillar +

+

Deletes the pillar and creates a projectile on the same tile, to be fired at the target atom.

+ + + diff --git a/obj/structure/fence.html b/obj/structure/fence.html new file mode 100644 index 0000000000000..a54fc391119aa --- /dev/null +++ b/obj/structure/fence.html @@ -0,0 +1,43 @@ + + + + + + + /obj/structure/fence - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

fence + + + +

+ + + +

Vars

chance_to_breakChance for the fence to break on /init
destroyed_iconicon set we switch to when destroyed
+

Var Details

chance_to_break + + + + +

+

Chance for the fence to break on /init

destroyed_icon + + + + +

+

icon set we switch to when destroyed

+ + + diff --git a/obj/structure/flora.html b/obj/structure/flora.html new file mode 100644 index 0000000000000..9ae10c5903a43 --- /dev/null +++ b/obj/structure/flora.html @@ -0,0 +1,36 @@ + + + + + + + /obj/structure/flora - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

flora + + + +

+ + +

Vars

icon_variantsnumber of icon variants this object has
+

Var Details

icon_variants + + + + +

+

number of icon variants this object has

+ + + diff --git a/obj/structure/grille.html b/obj/structure/grille.html new file mode 100644 index 0000000000000..87da3fe155ee9 --- /dev/null +++ b/obj/structure/grille.html @@ -0,0 +1,35 @@ + + + + + + + /obj/structure/grille - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

grille + + + +

+ + +

Procs

beforeShuttleMoveStructure move procs

Proc Details

beforeShuttleMove +

+

Structure move procs

+ + + diff --git a/obj/structure/gun_breech.html b/obj/structure/gun_breech.html new file mode 100644 index 0000000000000..11aaf208c6520 --- /dev/null +++ b/obj/structure/gun_breech.html @@ -0,0 +1,92 @@ + + + + + + + /obj/structure/gun_breech - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

gun_breech + + + +

+ + + + + + + + + + +

Vars

is_secondarybool if this laods the secondary gun
ownerowner of this object, assigned during interior linkage

Procs

do_eject_ammowhen we run out of ammo; how do we eject the magazine?
do_loadloads the weapon attached to the breech
do_unloadUnloads the weapon attached to the breech
on_main_firecalled every time the firing animation is refreshed, not every actual fire
on_weapon_attachOn attach effects
on_weapon_detachOn detach effects
reload_checkschecks to perform while reloading
+

Var Details

is_secondary + + + + +

+

bool if this laods the secondary gun

owner + + + + +

+

owner of this object, assigned during interior linkage

Proc Details

do_eject_ammo +

+

when we run out of ammo; how do we eject the magazine?

do_load +

+

loads the weapon attached to the breech

do_unload +

+

Unloads the weapon attached to the breech

on_main_fire +

+

called every time the firing animation is refreshed, not every actual fire

on_weapon_attach +

+

On attach effects

on_weapon_detach +

+

On detach effects

reload_checks +

+

checks to perform while reloading

+ + + diff --git a/obj/structure/gun_breech/som.html b/obj/structure/gun_breech/som.html new file mode 100644 index 0000000000000..a50148be13e73 --- /dev/null +++ b/obj/structure/gun_breech/som.html @@ -0,0 +1,50 @@ + + + + + + + /obj/structure/gun_breech/som - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

som + + + +

+ + + + +

Vars

ammo_overlayoverlay obj for internal firing animation
barrel_overlayoverlay obj for for the attached gun

Procs

update_gun_appearanceUpdates breech and barrel vis_obj appearance
+

Var Details

ammo_overlay + + + + +

+

overlay obj for internal firing animation

barrel_overlay + + + + +

+

overlay obj for for the attached gun

Proc Details

update_gun_appearance +

+

Updates breech and barrel vis_obj appearance

+ + + diff --git a/obj/structure/inflatable.html b/obj/structure/inflatable.html new file mode 100644 index 0000000000000..cec12a24a77f0 --- /dev/null +++ b/obj/structure/inflatable.html @@ -0,0 +1,64 @@ + + + + + + + /obj/structure/inflatable - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

inflatable + + + +

+ + + + + + +

Vars

deflatedAre we deflated?
inflatable_itemThe type of item we get back upon deflation
popped_variantThe popped variant of this type

Procs

deflateHandles the structure deflating
post_deflateCreates the appropriate item after deflation
+

Var Details

deflated + + + + +

+

Are we deflated?

inflatable_item + + + + +

+

The type of item we get back upon deflation

popped_variant + + + + +

+

The popped variant of this type

Proc Details

deflate +

+

Handles the structure deflating

post_deflate +

+

Creates the appropriate item after deflation

+ + + diff --git a/obj/structure/inflatable/door.html b/obj/structure/inflatable/door.html new file mode 100644 index 0000000000000..cb6d2a95b4335 --- /dev/null +++ b/obj/structure/inflatable/door.html @@ -0,0 +1,50 @@ + + + + + + + /obj/structure/inflatable/door - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

door + + + +

+ + + + +

Vars

openAre we open?
switching_statesAre we currently busy opening/closing?

Procs

toggle_stateThe proc that actually does the door closing. Plays the animation, etc. Copypasta. TODO: un-copypasta this
+

Var Details

open + + + + +

+

Are we open?

switching_states + + + + +

+

Are we currently busy opening/closing?

Proc Details

toggle_state +

+

The proc that actually does the door closing. Plays the animation, etc. Copypasta. TODO: un-copypasta this

+ + + diff --git a/obj/structure/mecha_wreckage.html b/obj/structure/mecha_wreckage.html new file mode 100644 index 0000000000000..10fb69f5b822e --- /dev/null +++ b/obj/structure/mecha_wreckage.html @@ -0,0 +1,71 @@ + + + + + + + /obj/structure/mecha_wreckage - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

mecha_wreckage + + + +

+ +

Mecha wreckage

+ + + + + +

Vars

AIAIs to be salvaged
crowbar_salvagelist of crowbar-salvaged items that it can output
partsparts of the mechs that can be taken out
salvage_numtimes we can salvage this mech
welder_salvagelist of welder-salvaged items that it can output
wires_removedif the wires got pulled yet
+

Var Details

AI + + + + +

+

AIs to be salvaged

crowbar_salvage + + + + +

+

list of crowbar-salvaged items that it can output

parts + + + + +

+

parts of the mechs that can be taken out

salvage_num + + + + +

+

times we can salvage this mech

welder_salvage + + + + +

+

list of welder-salvaged items that it can output

wires_removed + + + + +

+

if the wires got pulled yet

+ + + diff --git a/obj/structure/mine_structure/wooden/plank.html b/obj/structure/mine_structure/wooden/plank.html new file mode 100644 index 0000000000000..a5d3159ec1f1b --- /dev/null +++ b/obj/structure/mine_structure/wooden/plank.html @@ -0,0 +1,36 @@ + + + + + + + /obj/structure/mine_structure/wooden/plank - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

plank + + + +

+ + +

Vars

icon_variantsnumber of icon variants this object has
+

Var Details

icon_variants + + + + +

+

number of icon variants this object has

+ + + diff --git a/obj/structure/mineral_door.html b/obj/structure/mineral_door.html new file mode 100644 index 0000000000000..f0f56337f57aa --- /dev/null +++ b/obj/structure/mineral_door.html @@ -0,0 +1,71 @@ + + + + + + + /obj/structure/mineral_door - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

mineral_door + + + +

+ + + + + + + +

Vars

material_typeThe type of material we're made from and what we drop when destroyed
openAre we open or not
switching_statesAre we currently opening/closing
trigger_soundThe sound that gets played when opening/closing this door

Procs

get_burn_damage_multiplierTakes extra damage if our attacking item does burn damage
toggle_stateThe proc that actually does the door closing. Plays the sound, the animation, etc.
+

Var Details

material_type + + + + +

+

The type of material we're made from and what we drop when destroyed

open + + + + +

+

Are we open or not

switching_states + + + + +

+

Are we currently opening/closing

trigger_sound + + + + +

+

The sound that gets played when opening/closing this door

Proc Details

get_burn_damage_multiplier +

+

Takes extra damage if our attacking item does burn damage

toggle_state +

+

The proc that actually does the door closing. Plays the sound, the animation, etc.

+ + + diff --git a/obj/structure/mineral_door/resin.html b/obj/structure/mineral_door/resin.html new file mode 100644 index 0000000000000..c93ae9ff1ed46 --- /dev/null +++ b/obj/structure/mineral_door/resin.html @@ -0,0 +1,50 @@ + + + + + + + /obj/structure/mineral_door/resin - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

resin + + + +

+ + + + +

Vars

close_delayThe delay before the door closes automatically after being open
closetimerThe timer that tracks the delay above

Procs

do_closeToggle(close) the door. Used for the timer's callback.
+

Var Details

close_delay + + + + +

+

The delay before the door closes automatically after being open

closetimer + + + + +

+

The timer that tracks the delay above

Proc Details

do_close +

+

Toggle(close) the door. Used for the timer's callback.

+ + + diff --git a/obj/structure/nuke_disk_candidate.html b/obj/structure/nuke_disk_candidate.html new file mode 100644 index 0000000000000..18f86d0a2ea85 --- /dev/null +++ b/obj/structure/nuke_disk_candidate.html @@ -0,0 +1,43 @@ + + + + + + + /obj/structure/nuke_disk_candidate - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

nuke_disk_candidate + + + +

+ + + +

Vars

force_for_setsThis will FORCE this disk location to exist for these specific sets. Please do not force more than 3 for a set or I will scream at you.
set_associationsThis list contains disk set keys this list as associated with. Keys must be contained in the map's json combined with their weight. Intended to be at least 3 disks per key. Supports more, does NOT support less.
+

Var Details

force_for_sets + + + + +

+

This will FORCE this disk location to exist for these specific sets. Please do not force more than 3 for a set or I will scream at you.

set_associations + + + + +

+

This list contains disk set keys this list as associated with. Keys must be contained in the map's json combined with their weight. Intended to be at least 3 disks per key. Supports more, does NOT support less.

+ + + diff --git a/obj/structure/ob_ammo/warhead.html b/obj/structure/ob_ammo/warhead.html new file mode 100644 index 0000000000000..ddfa969bd6a64 --- /dev/null +++ b/obj/structure/ob_ammo/warhead.html @@ -0,0 +1,35 @@ + + + + + + + /obj/structure/ob_ammo/warhead - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

warhead + + + +

+ + +

Procs

warhead_impactExplode the warhead

Proc Details

warhead_impact +

+

Explode the warhead

+ + + diff --git a/obj/structure/orbital_cannon.html b/obj/structure/orbital_cannon.html new file mode 100644 index 0000000000000..16dec75b3fe1c --- /dev/null +++ b/obj/structure/orbital_cannon.html @@ -0,0 +1,35 @@ + + + + + + + /obj/structure/orbital_cannon - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

orbital_cannon + + + +

+ + +

Procs

handle_ob_firing_effectsHandles the playing of the Orbital Bombardment incoming sound and other visual and auditory effects of the cannon, usually a spiraling whistle noise but can be overridden.

Proc Details

handle_ob_firing_effects +

+

Handles the playing of the Orbital Bombardment incoming sound and other visual and auditory effects of the cannon, usually a spiraling whistle noise but can be overridden.

+ + + diff --git a/obj/structure/patrol_point.html b/obj/structure/patrol_point.html new file mode 100644 index 0000000000000..063a2042e1668 --- /dev/null +++ b/obj/structure/patrol_point.html @@ -0,0 +1,64 @@ + + + + + + + /obj/structure/patrol_point - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

patrol_point + + + +

+ + + + + + +

Vars

idID to link with associated exit point
linked_pointThe linked exit point

Procs

activate_pointHandles sending someone and/or something through the patrol_point
create_linkLinks the patrol point to its associated exit point
delete_linkRemoves the linked patrol exist point
+

Var Details

id + + + + +

+

ID to link with associated exit point

linked_point + + + + +

+

The linked exit point

Proc Details

activate_point +

+

Handles sending someone and/or something through the patrol_point

+

Links the patrol point to its associated exit point

+

Removes the linked patrol exist point

+ + + diff --git a/obj/structure/patrol_point/tank.html b/obj/structure/patrol_point/tank.html new file mode 100644 index 0000000000000..ddeb358c5a6f3 --- /dev/null +++ b/obj/structure/patrol_point/tank.html @@ -0,0 +1,35 @@ + + + + + + + /obj/structure/patrol_point/tank - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

tank + + + +

+ + +

Procs

atom_enterChecks if the entering thing should be deployed

Proc Details

atom_enter +

+

Checks if the entering thing should be deployed

+ + + diff --git a/obj/structure/periscope.html b/obj/structure/periscope.html new file mode 100644 index 0000000000000..faaee9e90a5de --- /dev/null +++ b/obj/structure/periscope.html @@ -0,0 +1,43 @@ + + + + + + + /obj/structure/periscope - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

periscope + + + +

+ + + +

Vars

ownerowner of this object, assigned during interior linkage

Procs

stop_lookingsignal handler for canceling the looking
+

Var Details

owner + + + + +

+

owner of this object, assigned during interior linkage

Proc Details

stop_looking +

+

signal handler for canceling the looking

+ + + diff --git a/obj/structure/plantable_flag.html b/obj/structure/plantable_flag.html new file mode 100644 index 0000000000000..bab15a403446c --- /dev/null +++ b/obj/structure/plantable_flag.html @@ -0,0 +1,36 @@ + + + + + + + /obj/structure/plantable_flag - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

plantable_flag + + + +

+ + +

Vars

internal_itemWeakref to item that is deployed to create src
+

Var Details

internal_item + + + + +

+

Weakref to item that is deployed to create src

+ + + diff --git a/obj/structure/prop/mainship/halfbuilt_mech.html b/obj/structure/prop/mainship/halfbuilt_mech.html new file mode 100644 index 0000000000000..e176bf88c08f0 --- /dev/null +++ b/obj/structure/prop/mainship/halfbuilt_mech.html @@ -0,0 +1,36 @@ + + + + + + + /obj/structure/prop/mainship/halfbuilt_mech - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

halfbuilt_mech + + + +

+ + +

Vars

selected_partsselected parts you want displayed. remove parts if you dont want them
+

Var Details

selected_parts + + + + +

+

selected parts you want displayed. remove parts if you dont want them

+ + + diff --git a/obj/structure/prop/mainship/toolboxforacause2020.html b/obj/structure/prop/mainship/toolboxforacause2020.html new file mode 100644 index 0000000000000..644228e152e04 --- /dev/null +++ b/obj/structure/prop/mainship/toolboxforacause2020.html @@ -0,0 +1,36 @@ + + + + + + + /obj/structure/prop/mainship/toolboxforacause2020 - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

toolboxforacause2020 + + + +

+ + +

Vars

coverageROBUST coverage
+

Var Details

coverage + + + + +

+

ROBUST coverage

+ + + diff --git a/obj/structure/prop/tgbrokenvendor.html b/obj/structure/prop/tgbrokenvendor.html new file mode 100644 index 0000000000000..dac32db9e4bb2 --- /dev/null +++ b/obj/structure/prop/tgbrokenvendor.html @@ -0,0 +1,36 @@ + + + + + + + /obj/structure/prop/tgbrokenvendor - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

tgbrokenvendor + + + +

+ + +

Vars

vendorstatevar to control vendor appearance, can be vendor_broken, vendor_working or vendor_blank
+

Var Details

vendorstate + + + + +

+

var to control vendor appearance, can be vendor_broken, vendor_working or vendor_blank

+ + + diff --git a/obj/structure/prop/urban/vehicles.html b/obj/structure/prop/urban/vehicles.html new file mode 100644 index 0000000000000..0e933ec96b644 --- /dev/null +++ b/obj/structure/prop/urban/vehicles.html @@ -0,0 +1,43 @@ + + + + + + + /obj/structure/prop/urban/vehicles - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

vehicles + + + +

+ + + +

Vars

explosion_probabilityused to determine the probability that a car will detonate upon being destroyed

Procs

explodespawns a bunch of debris and plays a sound when a vehicle is wrecked
+

Var Details

explosion_probability + + + + +

+

used to determine the probability that a car will detonate upon being destroyed

Proc Details

explode +

+

spawns a bunch of debris and plays a sound when a vehicle is wrecked

+ + + diff --git a/obj/structure/razorwire.html b/obj/structure/razorwire.html new file mode 100644 index 0000000000000..067025e1002e8 --- /dev/null +++ b/obj/structure/razorwire.html @@ -0,0 +1,35 @@ + + + + + + + /obj/structure/razorwire - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

razorwire + + + +

+ + +

Procs

do_razorwire_untangleThis proc is used for signals, so if you plan on adding a second argument, or making it return a value, then change those RegisterSignal's referncing it first.

Proc Details

do_razorwire_untangle +

+

This proc is used for signals, so if you plan on adding a second argument, or making it return a value, then change those RegisterSignal's referncing it first.

+ + + diff --git a/obj/structure/reagent_dispensers.html b/obj/structure/reagent_dispensers.html new file mode 100644 index 0000000000000..7b7ce9264a9e3 --- /dev/null +++ b/obj/structure/reagent_dispensers.html @@ -0,0 +1,64 @@ + + + + + + + /obj/structure/reagent_dispensers - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

reagent_dispensers + + + +

+ + + + + + +

Vars

amount_per_transfer_from_thisCurrent amount we will transfer every time we click on this
coveragehigh chance to block bullets, offset by being unanchored
list_reagentsList of reagents this dispenser will start with
possible_transfer_amountslist of possible transer amounts for this reagent dispenser
tank_volumemaximum tank capacity used to set reagents in initialize
+

Var Details

amount_per_transfer_from_this + + + + +

+

Current amount we will transfer every time we click on this

coverage + + + + +

+

high chance to block bullets, offset by being unanchored

list_reagents + + + + +

+

List of reagents this dispenser will start with

possible_transfer_amounts + + + + +

+

list of possible transer amounts for this reagent dispenser

tank_volume + + + + +

+

maximum tank capacity used to set reagents in initialize

+ + + diff --git a/obj/structure/reagent_dispensers/fueltank.html b/obj/structure/reagent_dispensers/fueltank.html new file mode 100644 index 0000000000000..c2d070817f277 --- /dev/null +++ b/obj/structure/reagent_dispensers/fueltank.html @@ -0,0 +1,57 @@ + + + + + + + /obj/structure/reagent_dispensers/fueltank - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

fueltank + + + +

+ + + + + +

Vars

moddedWhether this tank is modded to drip fuel when its moved
rigRig we attached to this fuel tank

Procs

explodeDoes what it says on the tin, blows up the fueltank with radius depending on fuel left
leak_fuelLeaks fuel when the valve is opened, leaving behind burnable splotches
+

Var Details

modded + + + + +

+

Whether this tank is modded to drip fuel when its moved

rig + + + + +

+

Rig we attached to this fuel tank

Proc Details

explode +

+

Does what it says on the tin, blows up the fueltank with radius depending on fuel left

leak_fuel +

+

Leaks fuel when the valve is opened, leaving behind burnable splotches

+ + + diff --git a/obj/structure/rock/variable.html b/obj/structure/rock/variable.html new file mode 100644 index 0000000000000..ba97a1681c2fa --- /dev/null +++ b/obj/structure/rock/variable.html @@ -0,0 +1,36 @@ + + + + + + + /obj/structure/rock/variable - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

variable + + + +

+ + +

Vars

icon_variantsnumber of icon variants this object has
+

Var Details

icon_variants + + + + +

+

number of icon variants this object has

+ + + diff --git a/obj/structure/sensor_tower.html b/obj/structure/sensor_tower.html new file mode 100644 index 0000000000000..95a03002cc382 --- /dev/null +++ b/obj/structure/sensor_tower.html @@ -0,0 +1,155 @@ + + + + + + + /obj/structure/sensor_tower - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

sensor_tower + + + +

+ + + + + + + + + + + + + + + + + + + +

Vars

activate_timeTime it takes to start the activation
activatedTrue if the sensor tower has finished activation, used for minimap icon and preventing deactivation
already_activatedPrevents there being more than one sensor tower being activated
current_timerThe timer for when the sensor tower activates
deactivate_timeTime it takes to stop the activation
factionThe faction that owns this tower, and considered the defender
generate_timeTime it takes for the sensor tower to fully activate
idCount amount of sensor towers existing
remaining_game_timeHow long is left in the game end timer. Recorded as a var to pause the timer while tower is activating
toweridThe id for the tower when it initializes, used for minimap icon

Procs

attacker_interactionHandles attacker interactions with the tower
attacker_state_checkChecks whether an attack can currently activate this tower
begin_activationStarts timer and sends an alert
deactivateStops timer if activating and sends an alert
defender_interactionHandles defender interactions with the tower
finish_activationWhen timer ends add a point to the point pool in sensor capture, increase game timer, and send an alert
toggle_game_timerPauses or restarts the gamemode timer
update_control_minimap_iconUpdate minimap icon of tower if its deactivated, activated , and fully activated
+

Var Details

activate_time + + + + +

+

Time it takes to start the activation

activated + + + + +

+

True if the sensor tower has finished activation, used for minimap icon and preventing deactivation

already_activated + + + + +

+

Prevents there being more than one sensor tower being activated

current_timer + + + + +

+

The timer for when the sensor tower activates

deactivate_time + + + + +

+

Time it takes to stop the activation

faction + + + + +

+

The faction that owns this tower, and considered the defender

generate_time + + + + +

+

Time it takes for the sensor tower to fully activate

id + + + + +

+

Count amount of sensor towers existing

remaining_game_time + + + + +

+

How long is left in the game end timer. Recorded as a var to pause the timer while tower is activating

towerid + + + + +

+

The id for the tower when it initializes, used for minimap icon

Proc Details

attacker_interaction +

+

Handles attacker interactions with the tower

attacker_state_check +

+

Checks whether an attack can currently activate this tower

begin_activation +

+

Starts timer and sends an alert

deactivate +

+

Stops timer if activating and sends an alert

defender_interaction +

+

Handles defender interactions with the tower

finish_activation +

+

When timer ends add a point to the point pool in sensor capture, increase game timer, and send an alert

toggle_game_timer +

+

Pauses or restarts the gamemode timer

update_control_minimap_icon +

+

Update minimap icon of tower if its deactivated, activated , and fully activated

+ + + diff --git a/obj/structure/ship_ammo.html b/obj/structure/ship_ammo.html new file mode 100644 index 0000000000000..99267d28fc9ce --- /dev/null +++ b/obj/structure/ship_ammo.html @@ -0,0 +1,162 @@ + + + + + + + /obj/structure/ship_ammo - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

ship_ammo + + + +

+ +

dropship weapon ammunition

+ + + + + + + + + + + + + + + + + + +

Vars

ammo_countcurrent ammo count
ammo_namewhat to call the ammo in the ammo transfering message
ammo_typeType of ammo
ammo_used_per_firinghow much ammo to use up per firing sequence
cas_effectType of CAS dot indicator effect to be used
devastating_explosion_rangeRange of the centre of the explosion
equipment_typetype of equipment that accept this type of ammo.
fire_rangeFire radius, for incendiary weapons
firing_voicelinevoiceline to play half a second after the weapon is fired
heavy_explosion_rangeRange of the middle bit of the explosion
light_explosion_rangeRange of the outer radius of the explosion
max_ammo_countmaximum ammo count. does NOT determine starting ammo
point_costhow many points it costs to build this with the fabricator, set to 0 if unbuildable.
prediction_typeCAS impact prediction type to use. Explosive, incendiary, etc
transferable_ammowhether the ammo inside this magazine can be transfered to another magazine.
travelling_timeTime before the ammo impacts
warning_soundsound played mere seconds before impact

Procs

get_explosion_impact"Mini" version of explode() code, returns the tiles that would be hit if an explosion were to happen
get_turfs_to_impactGets the turfs this ammo type would affect. Attackdir can be left alone if the ammo type is not directional
+

Var Details

ammo_count + + + + +

+

current ammo count

ammo_name + + + + +

+

what to call the ammo in the ammo transfering message

ammo_type + + + + +

+

Type of ammo

ammo_used_per_firing + + + + +

+

how much ammo to use up per firing sequence

cas_effect + + + + +

+

Type of CAS dot indicator effect to be used

devastating_explosion_range + + + + +

+

Range of the centre of the explosion

equipment_type + + + + +

+

type of equipment that accept this type of ammo.

fire_range + + + + +

+

Fire radius, for incendiary weapons

firing_voiceline + + + + +

+

voiceline to play half a second after the weapon is fired

heavy_explosion_range + + + + +

+

Range of the middle bit of the explosion

light_explosion_range + + + + +

+

Range of the outer radius of the explosion

max_ammo_count + + + + +

+

maximum ammo count. does NOT determine starting ammo

point_cost + + + + +

+

how many points it costs to build this with the fabricator, set to 0 if unbuildable.

prediction_type + + + + +

+

CAS impact prediction type to use. Explosive, incendiary, etc

transferable_ammo + + + + +

+

whether the ammo inside this magazine can be transfered to another magazine.

travelling_time + + + + +

+

Time before the ammo impacts

warning_sound + + + + +

+

sound played mere seconds before impact

Proc Details

get_explosion_impact +

+

"Mini" version of explode() code, returns the tiles that would be hit if an explosion were to happen

get_turfs_to_impact +

+

Gets the turfs this ammo type would affect. Attackdir can be left alone if the ammo type is not directional

+ + + diff --git a/obj/structure/ship_ammo/cas/heavygun.html b/obj/structure/ship_ammo/cas/heavygun.html new file mode 100644 index 0000000000000..1e7bf66748bc3 --- /dev/null +++ b/obj/structure/ship_ammo/cas/heavygun.html @@ -0,0 +1,50 @@ + + + + + + + /obj/structure/ship_ammo/cas/heavygun - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

heavygun + + + +

+ + + + +

Vars

attack_widthWidth of the square we are attacking, so you can make rectangular attacks later
bullet_spread_rangeRadius of the square that the bullets will strafe

Procs

strafe_turfsTakes the top 3 turfs and miniguns them, then repeats until none left
+

Var Details

attack_width + + + + +

+

Width of the square we are attacking, so you can make rectangular attacks later

bullet_spread_range + + + + +

+

Radius of the square that the bullets will strafe

Proc Details

strafe_turfs +

+

Takes the top 3 turfs and miniguns them, then repeats until none left

+ + + diff --git a/obj/structure/ship_ammo/cas/laser_battery.html b/obj/structure/ship_ammo/cas/laser_battery.html new file mode 100644 index 0000000000000..32665096c3e9a --- /dev/null +++ b/obj/structure/ship_ammo/cas/laser_battery.html @@ -0,0 +1,50 @@ + + + + + + + /obj/structure/ship_ammo/cas/laser_battery - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

laser_battery + + + +

+ + + + +

Vars

laze_radiusThe length of the beam that will come out of when we fire do both ends xxxoxxx where o is where you click

Procs

laser_burnLazer ammo acts on the turf passed in
process_lazertakes the top lazertarget on the stack and fires the lazer at it
+

Var Details

laze_radius + + + + +

+

The length of the beam that will come out of when we fire do both ends xxxoxxx where o is where you click

Proc Details

laser_burn +

+

Lazer ammo acts on the turf passed in

process_lazer +

+

takes the top lazertarget on the stack and fires the lazer at it

+ + + diff --git a/obj/structure/ship_ammo/cas/rocket/fatty.html b/obj/structure/ship_ammo/cas/rocket/fatty.html new file mode 100644 index 0000000000000..daeebc9d8979b --- /dev/null +++ b/obj/structure/ship_ammo/cas/rocket/fatty.html @@ -0,0 +1,39 @@ + + + + + + + /obj/structure/ship_ammo/cas/rocket/fatty - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

fatty + + + +

+ + +

Procs

delayed_detonationproc/delayed_detonation(turf/impact)

Proc Details

delayed_detonation +

+

proc/delayed_detonation(turf/impact)

+

this proc is responsable for calculation and executing explosion in cluster like fashion

+
+ + + diff --git a/obj/structure/sign.html b/obj/structure/sign.html new file mode 100644 index 0000000000000..c08b1f2cfb980 --- /dev/null +++ b/obj/structure/sign.html @@ -0,0 +1,43 @@ + + + + + + + /obj/structure/sign - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

sign + + + +

+ + + +

Vars

autoplaceif true try to automatically find the nearest wall and put ourselves on it
base_iconThe clean version of the sprite, which we replace in initialize when the sign loads in game
+

Var Details

autoplace + + + + +

+

if true try to automatically find the nearest wall and put ourselves on it

base_icon + + + + +

+

The clean version of the sprite, which we replace in initialize when the sign loads in game

+ + + diff --git a/obj/structure/sink.html b/obj/structure/sink.html new file mode 100644 index 0000000000000..dd48fea660049 --- /dev/null +++ b/obj/structure/sink.html @@ -0,0 +1,36 @@ + + + + + + + /obj/structure/sink - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

sink + + + +

+ + +

Vars

busyis someone currently washing at this sink?
+

Var Details

busy + + + + +

+

is someone currently washing at this sink?

+ + + diff --git a/obj/structure/supply_drop.html b/obj/structure/supply_drop.html new file mode 100644 index 0000000000000..aa7d4ea23a53c --- /dev/null +++ b/obj/structure/supply_drop.html @@ -0,0 +1,36 @@ + + + + + + + /obj/structure/supply_drop - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

supply_drop + + + +

+ + +

Vars

factionThe faction of this supply drop
+

Var Details

faction + + + + +

+

The faction of this supply drop

+ + + diff --git a/obj/structure/support.html b/obj/structure/support.html new file mode 100644 index 0000000000000..ca9085f6bc7e8 --- /dev/null +++ b/obj/structure/support.html @@ -0,0 +1,43 @@ + + + + + + + /obj/structure/support - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

support + + + +

+ + + +

Vars

collapsed_typeThe type of debris to spawn when the ceiling collaspses
supported_rangeHow far around the pillar is supported
+

Var Details

collapsed_type + + + + +

+

The type of debris to spawn when the ceiling collaspses

supported_range + + + + +

+

How far around the pillar is supported

+ + + diff --git a/obj/structure/table.html b/obj/structure/table.html new file mode 100644 index 0000000000000..a781fd807f03a --- /dev/null +++ b/obj/structure/table.html @@ -0,0 +1,42 @@ + + + + + + + /obj/structure/table - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

table + + + +

+ + + +

Procs

on_crossSnowflake check to let ravagers kill tables
update_adjacentUpdates connected tables when required

Proc Details

on_cross +

+

Snowflake check to let ravagers kill tables

update_adjacent +

+

Updates connected tables when required

+ + + diff --git a/obj/structure/target_stake.html b/obj/structure/target_stake.html new file mode 100644 index 0000000000000..292591930aa9e --- /dev/null +++ b/obj/structure/target_stake.html @@ -0,0 +1,36 @@ + + + + + + + /obj/structure/target_stake - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

target_stake + + + +

+ +

Basically these are for the firing range

+

Vars

coverageungas need to actually hit this
+

Var Details

coverage + + + + +

+

ungas need to actually hit this

+ + + diff --git a/obj/structure/target_stake/occupied.html b/obj/structure/target_stake/occupied.html new file mode 100644 index 0000000000000..40991b2a8e50c --- /dev/null +++ b/obj/structure/target_stake/occupied.html @@ -0,0 +1,45 @@ + + + + + + + /obj/structure/target_stake/occupied - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

occupied + + + +

+ +

These are occupied variations for targetting stakes

+ +

Vars

cushion_typewhat kind of target to drop when a player removes a dummy from the targetting stake

Procs

examinecreate new target stake to create the illusion of a new one +dump new target at the foot of the user
+

Var Details

cushion_type + + + + +

+

what kind of target to drop when a player removes a dummy from the targetting stake

Proc Details

examine +

+

create new target stake to create the illusion of a new one +dump new target at the foot of the user

+ + + diff --git a/obj/structure/teleporter_array.html b/obj/structure/teleporter_array.html new file mode 100644 index 0000000000000..e4755c10ec39b --- /dev/null +++ b/obj/structure/teleporter_array.html @@ -0,0 +1,127 @@ + + + + + + + /obj/structure/teleporter_array - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

teleporter_array + + + +

+ + + + + + + + + + + + + + + +

Vars

chargesHow many times this can be used
controllerThe mob currently controlling the teleporter
factionThe faction this belongs to
interaction_actionsActions to set a target for, and activate the teleporter
rangeThe radius of the teleport
target_turfThe target turf for teleportation
targetted_zlevelThe Z-level that the teleporter can teleport to
windupteleport windup

Procs

change_targeted_zUpdates the z-level this teleporter teleports to
cleanupcleans up teleport effects
do_startupVisual indicators for the teleporter about to fire
do_teleportdoes the actual teleport
enable_teleporterEnables the teleporter for us
remove_userRemoves the current controlling mob
+

Var Details

charges + + + + +

+

How many times this can be used

controller + + + + +

+

The mob currently controlling the teleporter

faction + + + + +

+

The faction this belongs to

interaction_actions + + + + +

+

Actions to set a target for, and activate the teleporter

range + + + + +

+

The radius of the teleport

target_turf + + + + +

+

The target turf for teleportation

targetted_zlevel + + + + +

+

The Z-level that the teleporter can teleport to

windup + + + + +

+

teleport windup

Proc Details

change_targeted_z +

+

Updates the z-level this teleporter teleports to

cleanup +

+

cleans up teleport effects

do_startup +

+

Visual indicators for the teleporter about to fire

do_teleport +

+

does the actual teleport

enable_teleporter +

+

Enables the teleporter for us

remove_user +

+

Removes the current controlling mob

+ + + diff --git a/obj/structure/turret_debug.html b/obj/structure/turret_debug.html new file mode 100644 index 0000000000000..27584f954c7dd --- /dev/null +++ b/obj/structure/turret_debug.html @@ -0,0 +1,57 @@ + + + + + + + /obj/structure/turret_debug - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

turret_debug + + + +

+ + + + + +

Vars

ammoWhat kind of ammo it uses
firerateAt wich rate it fires in ticks
targetIts target

Procs

shootCreate the projectile
+

Var Details

ammo + + + + +

+

What kind of ammo it uses

firerate + + + + +

+

At wich rate it fires in ticks

target + + + + +

+

Its target

Proc Details

shoot +

+

Create the projectile

+ + + diff --git a/obj/structure/weapon_x_pod.html b/obj/structure/weapon_x_pod.html new file mode 100644 index 0000000000000..f5c30b6341d2c --- /dev/null +++ b/obj/structure/weapon_x_pod.html @@ -0,0 +1,64 @@ + + + + + + + /obj/structure/weapon_x_pod - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

weapon_x_pod + + + +

+ + + + + + +

Vars

code_colorColor code associated for signal purposes
mob_typeMob type to spawn
occupantActual mob occupant

Procs

attempt_openReleases the occupant and tries to find a ghost
release_occupantReleases the occupant and tries to find a ghost
+

Var Details

code_color + + + + +

+

Color code associated for signal purposes

mob_type + + + + +

+

Mob type to spawn

occupant + + + + +

+

Actual mob occupant

Proc Details

attempt_open +

+

Releases the occupant and tries to find a ghost

release_occupant +

+

Releases the occupant and tries to find a ghost

+ + + diff --git a/obj/structure/window.html b/obj/structure/window.html new file mode 100644 index 0000000000000..3b63a20264669 --- /dev/null +++ b/obj/structure/window.html @@ -0,0 +1,36 @@ + + + + + + + /obj/structure/window - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

window + + + +

+ + +

Vars

real_explosion_blockOptimization for dynamic explosion block values, for things whose explosion block is dependent on certain conditions.
+

Var Details

real_explosion_block + + + + +

+

Optimization for dynamic explosion block values, for things whose explosion block is dependent on certain conditions.

+ + + diff --git a/obj/structure/window/framed.html b/obj/structure/window/framed.html new file mode 100644 index 0000000000000..1eae3eb29caab --- /dev/null +++ b/obj/structure/window/framed.html @@ -0,0 +1,36 @@ + + + + + + + /obj/structure/window/framed - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

framed + + + +

+ + +

Vars

window_frameFor perspective windows,so the window frame doesn't magically disappear.
+

Var Details

window_frame + + + + +

+

For perspective windows,so the window frame doesn't magically disappear.

+ + + diff --git a/obj/structure/window/reinforced.html b/obj/structure/window/reinforced.html new file mode 100644 index 0000000000000..be811bdc2431c --- /dev/null +++ b/obj/structure/window/reinforced.html @@ -0,0 +1,36 @@ + + + + + + + /obj/structure/window/reinforced - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

reinforced + + + +

+ + +

Vars

tintedare we tinted or not
+

Var Details

tinted + + + + +

+

are we tinted or not

+ + + diff --git a/obj/structure/xeno.html b/obj/structure/xeno.html new file mode 100644 index 0000000000000..6e3d6aa8c9963 --- /dev/null +++ b/obj/structure/xeno.html @@ -0,0 +1,106 @@ + + + + + + + /obj/structure/xeno - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

xeno + + + +

+ + + + + + + + + + + + +

Vars

hivenumberWhich hive(number) do we belong to?
prox_warning_turfsList of turfs we are checking for hostiles in
threat_warningIs the structure currently detecting a threat
xeno_structure_flagsBitflags specific to xeno structures

Procs

Destroybecause admins can spawn them
clear_warningClears any threat warnings
damage_alertNotifies the hive when we take damage
proxy_alertAlerts the Hive when hostiles get too close to this structure
set_proximity_warningSets the proxy signals for our loc, removing the old ones if any
update_minimap_iconresets minimap icon for structure
weed_removedDestroy the xeno structure when the weed it was on is destroyed
+

Var Details

hivenumber + + + + +

+

Which hive(number) do we belong to?

prox_warning_turfs + + + + +

+

List of turfs we are checking for hostiles in

threat_warning + + + + +

+

Is the structure currently detecting a threat

xeno_structure_flags + + + + +

+

Bitflags specific to xeno structures

Proc Details

Destroy +

+

because admins can spawn them

clear_warning +

+

Clears any threat warnings

damage_alert +

+

Notifies the hive when we take damage

proxy_alert +

+

Alerts the Hive when hostiles get too close to this structure

set_proximity_warning +

+

Sets the proxy signals for our loc, removing the old ones if any

update_minimap_icon +

+

resets minimap icon for structure

weed_removed +

+

Destroy the xeno structure when the weed it was on is destroyed

+ + + diff --git a/obj/structure/xeno/acid_maw.html b/obj/structure/xeno/acid_maw.html new file mode 100644 index 0000000000000..f102234015304 --- /dev/null +++ b/obj/structure/xeno/acid_maw.html @@ -0,0 +1,57 @@ + + + + + + + /obj/structure/xeno/acid_maw - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

acid_maw + + + +

+ + + + + +

Vars

maw_optionslist of paths that we can choose from when using this maw. converts to a list for radials on init (path = image)
minimap_iconicon state to use for minimap icon

Procs

maw_impactactually does damage effects
maw_impact_startincoming effects for this ammo, 2 sec prior to impact
+

Var Details

maw_options + + + + +

+

list of paths that we can choose from when using this maw. converts to a list for radials on init (path = image)

minimap_icon + + + + +

+

icon state to use for minimap icon

Proc Details

maw_impact +

+

actually does damage effects

maw_impact_start +

+

incoming effects for this ammo, 2 sec prior to impact

+ + + diff --git a/obj/structure/xeno/acidwell.html b/obj/structure/xeno/acidwell.html new file mode 100644 index 0000000000000..ef39138566c88 --- /dev/null +++ b/obj/structure/xeno/acidwell.html @@ -0,0 +1,71 @@ + + + + + + + /obj/structure/xeno/acidwell - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

acidwell + + + +

+ + + + + + + +

Vars

chargesHow many charges of acid this well contains
chargingIf a xeno is charging this well
creatorWhat xeno created this well

Procs

acid_well_fire_interactionHandles fire based interactions with the acid well. Depletes 1 charge if there are any to extinguish all fires in the turf while producing acid smoke.
clear_creatorSignal handler for creator destruction to clear reference
shuttle_crushEnsures that no acid gas will be released when the well is crushed by a shuttle
+

Var Details

charges + + + + +

+

How many charges of acid this well contains

charging + + + + +

+

If a xeno is charging this well

creator + + + + +

+

What xeno created this well

Proc Details

acid_well_fire_interaction +

+

Handles fire based interactions with the acid well. Depletes 1 charge if there are any to extinguish all fires in the turf while producing acid smoke.

clear_creator +

+

Signal handler for creator destruction to clear reference

shuttle_crush +

+

Ensures that no acid gas will be released when the well is crushed by a shuttle

+ + + diff --git a/obj/structure/xeno/aoe_leash.html b/obj/structure/xeno/aoe_leash.html new file mode 100644 index 0000000000000..55b8800cd05d4 --- /dev/null +++ b/obj/structure/xeno/aoe_leash.html @@ -0,0 +1,87 @@ + + + + + + + /obj/structure/xeno/aoe_leash - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

aoe_leash + + + +

+ + + + + + + + + +

Vars

beamsList of beams to be removed on obj_destruction
leash_lifeHow long the leash ball lasts untill it dies
leash_radiusRadius for how far the leash should affect humans and how far away they may walk
leash_victimsList of victims to unregister aoe_leash is destroyed

Procs

DestroyAdd || CONSCIOUS after testing +To remove beams after the leash_ball is destroyed and also unregister all victims
InitializeHumans caught get beamed and registered for proc/check_dist, aoe_leash also gains increased integrity for each caught human
attack_alienThis is so that xenos can remove leash balls
check_distHumans caught in the aoe_leash will be pulled back if they leave it's radius
+

Var Details

beams + + + + +

+

List of beams to be removed on obj_destruction

leash_life + + + + +

+

How long the leash ball lasts untill it dies

leash_radius + + + + +

+

Radius for how far the leash should affect humans and how far away they may walk

leash_victims + + + + +

+

List of victims to unregister aoe_leash is destroyed

Proc Details

Destroy +

+

Add || CONSCIOUS after testing +To remove beams after the leash_ball is destroyed and also unregister all victims

Initialize +

+

Humans caught get beamed and registered for proc/check_dist, aoe_leash also gains increased integrity for each caught human

attack_alien +

+

This is so that xenos can remove leash balls

check_dist +

+

Humans caught in the aoe_leash will be pulled back if they leave it's radius

+ + + diff --git a/obj/structure/xeno/evotower.html b/obj/structure/xeno/evotower.html new file mode 100644 index 0000000000000..e019177053365 --- /dev/null +++ b/obj/structure/xeno/evotower.html @@ -0,0 +1,43 @@ + + + + + + + /obj/structure/xeno/evotower - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

evotower + + + +

+ + + +

Vars

boost_amountboost amt to be added per tower per cycle
maturty_boost_amountmaturity boost amt to be added per tower per cycle
+

Var Details

boost_amount + + + + +

+

boost amt to be added per tower per cycle

maturty_boost_amount + + + + +

+

maturity boost amt to be added per tower per cycle

+ + + diff --git a/obj/structure/xeno/hivemindcore.html b/obj/structure/xeno/hivemindcore.html new file mode 100644 index 0000000000000..e7c8da96dab6d --- /dev/null +++ b/obj/structure/xeno/hivemindcore.html @@ -0,0 +1,61 @@ + + + + + + + /obj/structure/xeno/hivemindcore - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

hivemindcore + + + +

+ + + + + +

Vars

hivemind_proxy_alert_cooldownThe cooldown of the alert hivemind gets when a hostile is near it's core
parentThe weakref to the parent hivemind mob that we're attached to

Procs

get_parentGetter for the parent of this hive core
hivemind_proxy_alertProc checks if we should alert the hivemind, and if it can, it does so. +datum/source - the atom (in this case it should be a turf) sending the crossed signal +atom/movable/hostile - the atom that triggered the crossed signal, in this case we're looking for a mob
+

Var Details

hivemind_proxy_alert_cooldown + + + + +

+

The cooldown of the alert hivemind gets when a hostile is near it's core

parent + + + + +

+

The weakref to the parent hivemind mob that we're attached to

Proc Details

get_parent +

+

Getter for the parent of this hive core

hivemind_proxy_alert +

+

Proc checks if we should alert the hivemind, and if it can, it does so. +datum/source - the atom (in this case it should be a turf) sending the crossed signal +atom/movable/hostile - the atom that triggered the crossed signal, in this case we're looking for a mob

+ + + diff --git a/obj/structure/xeno/pherotower.html b/obj/structure/xeno/pherotower.html new file mode 100644 index 0000000000000..f013b76b2e31f --- /dev/null +++ b/obj/structure/xeno/pherotower.html @@ -0,0 +1,50 @@ + + + + + + + /obj/structure/xeno/pherotower - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

pherotower + + + +

+ + + + +

Vars

aura_radiusRadius (in tiles) of the pheromones given by this tower.
aura_strengthStrength of pheromones given by this tower.
current_auraThe type of pheromone currently being emitted.
+

Var Details

aura_radius + + + + +

+

Radius (in tiles) of the pheromones given by this tower.

aura_strength + + + + +

+

Strength of pheromones given by this tower.

current_aura + + + + +

+

The type of pheromone currently being emitted.

+ + + diff --git a/obj/structure/xeno/plant.html b/obj/structure/xeno/plant.html new file mode 100644 index 0000000000000..9495957205cf8 --- /dev/null +++ b/obj/structure/xeno/plant.html @@ -0,0 +1,64 @@ + + + + + + + /obj/structure/xeno/plant - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

plant + + + +

+ +

Those structures need time to grow and are supposed to be extremely weak healh-wise

+ + + + +

Vars

maturation_timeHow long does it take for the plant to be useable
matureIs the plant ready to be used ?
mature_icon_stateThe plant's icon once it's fully grown

Procs

on_matureCalled when the plant reaches maturity
on_useCalled whenever someone uses the plant, xeno or marine
+

Var Details

maturation_time + + + + +

+

How long does it take for the plant to be useable

mature + + + + +

+

Is the plant ready to be used ?

mature_icon_state + + + + +

+

The plant's icon once it's fully grown

Proc Details

on_mature +

+

Called when the plant reaches maturity

on_use +

+

Called whenever someone uses the plant, xeno or marine

+ + + diff --git a/obj/structure/xeno/plant/armor_fruit.html b/obj/structure/xeno/plant/armor_fruit.html new file mode 100644 index 0000000000000..02d031ccb66a9 --- /dev/null +++ b/obj/structure/xeno/plant/armor_fruit.html @@ -0,0 +1,36 @@ + + + + + + + /obj/structure/xeno/plant/armor_fruit - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

armor_fruit + + + +

+ + +

Vars

sunder_removalHow much total sunder should we remove
+

Var Details

sunder_removal + + + + +

+

How much total sunder should we remove

+ + + diff --git a/obj/structure/xeno/plant/heal_fruit.html b/obj/structure/xeno/plant/heal_fruit.html new file mode 100644 index 0000000000000..d808dbf1aa87b --- /dev/null +++ b/obj/structure/xeno/plant/heal_fruit.html @@ -0,0 +1,43 @@ + + + + + + + /obj/structure/xeno/plant/heal_fruit - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

heal_fruit + + + +

+ + + +

Vars

healing_amount_max_health_scalingMaximum amount of health recovered, depends on the xeno's max health
healing_amount_minMinimum amount of health recovered
+

Var Details

healing_amount_max_health_scaling + + + + +

+

Maximum amount of health recovered, depends on the xeno's max health

healing_amount_min + + + + +

+

Minimum amount of health recovered

+ + + diff --git a/obj/structure/xeno/plant/plasma_fruit.html b/obj/structure/xeno/plant/plasma_fruit.html new file mode 100644 index 0000000000000..8f3cd10b918fb --- /dev/null +++ b/obj/structure/xeno/plant/plasma_fruit.html @@ -0,0 +1,43 @@ + + + + + + + /obj/structure/xeno/plant/plasma_fruit - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

plasma_fruit + + + +

+ + + +

Vars

bonus_regenHow much bonus plasma should we restore during the duration, 1 being 100% from base regen
durationHow long should the buff last
+

Var Details

bonus_regen + + + + +

+

How much bonus plasma should we restore during the duration, 1 being 100% from base regen

duration + + + + +

+

How long should the buff last

+ + + diff --git a/obj/structure/xeno/plant/stealth_plant.html b/obj/structure/xeno/plant/stealth_plant.html new file mode 100644 index 0000000000000..99509e52110b2 --- /dev/null +++ b/obj/structure/xeno/plant/stealth_plant.html @@ -0,0 +1,99 @@ + + + + + + + /obj/structure/xeno/plant/stealth_plant - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

stealth_plant + + + +

+ + + + + + + + + + + +

Vars

active_camouflage_durationHow long should veil last
active_camouflage_pulse_rangeThe range of the active stealth ability, does not require line of sight
camouflage_rangeThe radius of the passive structure camouflage, requires line of sight
camouflaged_structuresThe list of passively camouflaged structures
camouflaged_xenosThe list of actively camouflaged xenos by veil
cooldownHow long until the plant can be activated again
on_cooldownIs the active ability veil on cooldown ?

Procs

readyCalled when veil() can be used once again
unveilReveals all xenos hidden by veil()
veilHides all nearby xenos
+

Var Details

active_camouflage_duration + + + + +

+

How long should veil last

active_camouflage_pulse_range + + + + +

+

The range of the active stealth ability, does not require line of sight

camouflage_range + + + + +

+

The radius of the passive structure camouflage, requires line of sight

camouflaged_structures + + + + +

+

The list of passively camouflaged structures

camouflaged_xenos + + + + +

+

The list of actively camouflaged xenos by veil

cooldown + + + + +

+

How long until the plant can be activated again

on_cooldown + + + + +

+

Is the active ability veil on cooldown ?

Proc Details

ready +

+

Called when veil() can be used once again

unveil +

+

Reveals all xenos hidden by veil()

veil +

+

Hides all nearby xenos

+ + + diff --git a/obj/structure/xeno/resin_jelly_pod.html b/obj/structure/xeno/resin_jelly_pod.html new file mode 100644 index 0000000000000..c0d4116dfb9d0 --- /dev/null +++ b/obj/structure/xeno/resin_jelly_pod.html @@ -0,0 +1,57 @@ + + + + + + + /obj/structure/xeno/resin_jelly_pod - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

resin_jelly_pod + + + +

+ + + + + +

Vars

chargesleftHow many actual jellies the pod has stored
maxchargesMax amount of jellies the pod can hold
nextjellyCountdown to the next time we generate a jelly
recharge_rateEvery 5 times this number seconds we will create a jelly
+

Var Details

chargesleft + + + + +

+

How many actual jellies the pod has stored

maxcharges + + + + +

+

Max amount of jellies the pod can hold

nextjelly + + + + +

+

Countdown to the next time we generate a jelly

recharge_rate + + + + +

+

Every 5 times this number seconds we will create a jelly

+ + + diff --git a/obj/structure/xeno/silo.html b/obj/structure/xeno/silo.html new file mode 100644 index 0000000000000..40c82c9353028 --- /dev/null +++ b/obj/structure/xeno/silo.html @@ -0,0 +1,43 @@ + + + + + + + /obj/structure/xeno/silo - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

silo + + + +

+ + + +

Vars

larva_spawn_rateHow many larva points one silo produce in one minute

Procs

on_spawnTransfers the spawned minion to the silo's hivenumber.
+

Var Details

larva_spawn_rate + + + + +

+

How many larva points one silo produce in one minute

Proc Details

on_spawn +

+

Transfers the spawned minion to the silo's hivenumber.

+ + + diff --git a/obj/structure/xeno/spawner.html b/obj/structure/xeno/spawner.html new file mode 100644 index 0000000000000..ec81cb55cb490 --- /dev/null +++ b/obj/structure/xeno/spawner.html @@ -0,0 +1,42 @@ + + + + + + + /obj/structure/xeno/spawner - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

spawner + + + +

+ + + +

Procs

on_spawnTransfers the spawned minion to the silo's hivenumber.
update_minimap_iconChange minimap icon if spawner is under attack or not

Proc Details

on_spawn +

+

Transfers the spawned minion to the silo's hivenumber.

update_minimap_icon +

+

Change minimap icon if spawner is under attack or not

+ + + diff --git a/obj/structure/xeno/trap.html b/obj/structure/xeno/trap.html new file mode 100644 index 0000000000000..d57d322549980 --- /dev/null +++ b/obj/structure/xeno/trap.html @@ -0,0 +1,78 @@ + + + + + + + /obj/structure/xeno/trap - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

trap + + + +

+ + + + + + + + +

Vars

huggerThe hugger inside our trap
listen_connectionsconnection list for huggers
smokesmoke effect to create when the trap is triggered
trap_typedefines for trap type to trigger on activation

Procs

drop_huggerMove the hugger out of the trap
shuttle_crushEnsures that no huggies will be released when the trap is crushed by a shuttle; no more trapping shuttles with huggies
trigger_trapTriggers the hugger trap
+

Var Details

hugger + + + + +

+

The hugger inside our trap

listen_connections + + + + +

+

connection list for huggers

smoke + + + + +

+

smoke effect to create when the trap is triggered

trap_type + + + + +

+

defines for trap type to trigger on activation

Proc Details

drop_hugger +

+

Move the hugger out of the trap

shuttle_crush +

+

Ensures that no huggies will be released when the trap is crushed by a shuttle; no more trapping shuttles with huggies

trigger_trap +

+

Triggers the hugger trap

+ + + diff --git a/obj/structure/xeno/tunnel.html b/obj/structure/xeno/tunnel.html new file mode 100644 index 0000000000000..14c52d4368f7b --- /dev/null +++ b/obj/structure/xeno/tunnel.html @@ -0,0 +1,57 @@ + + + + + + + /obj/structure/xeno/tunnel - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

tunnel + + + +

+ + + + + +

Vars

creatorWhat hivelord created that tunnel. Can be null
tunnel_descDescription added by the hivelord.

Procs

clear_creatorSignal handler for creator destruction to clear reference
pick_a_tunnelHere we pick a tunnel to go to, then travel to that tunnel and peep out, confirming whether or not we want to emerge or go to another tunnel.
+

Var Details

creator + + + + +

+

What hivelord created that tunnel. Can be null

tunnel_desc + + + + +

+

Description added by the hivelord.

Proc Details

clear_creator +

+

Signal handler for creator destruction to clear reference

pick_a_tunnel +

+

Here we pick a tunnel to go to, then travel to that tunnel and peep out, confirming whether or not we want to emerge or go to another tunnel.

+ + + diff --git a/obj/structure/xeno/xeno_turret.html b/obj/structure/xeno/xeno_turret.html new file mode 100644 index 0000000000000..90a0ea4563a38 --- /dev/null +++ b/obj/structure/xeno/xeno_turret.html @@ -0,0 +1,155 @@ + + + + + + + /obj/structure/xeno/xeno_turret - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

xeno_turret + + + +

+ +

We find the tunnel, looking within 10 tiles of where the user clicked, excluding src

+ + + + + + + + + + + + + + + + + +

Vars

ammoWhat kind of spit it uses
firerateFire rate of the target in ticks
firingFor minimap icon change if sentry is firing
hostileTarget of the turret
last_hostileLast target of the turret
last_scan_timeThe last time the sentry did a scan
light_initial_colorlight color that gets set in initialize
potential_hostilesPotential list of targets found by scan
rangeRange of the turret

Procs

destroy_on_hijackSignal handler to delete the turret when the alamo is hijacked
get_targetLook for the closest human in range and in light of sight. If no human is in range, will look for xenos of other hives
scanReturn TRUE if a possible target is near
set_hostileSetter for hostile with hard del in mind
set_last_hostileSetter for last_hostile with hard del in mind
shootSignal handler to make the turret shoot at its target
unset_hostileSignal handler for hard del of hostile
unset_last_hostileSignal handler for hard del of last_hostile
update_minimap_iconChange minimap icon if its firing or not firing
+

Var Details

ammo + + + + +

+

What kind of spit it uses

firerate + + + + +

+

Fire rate of the target in ticks

firing + + + + +

+

For minimap icon change if sentry is firing

hostile + + + + +

+

Target of the turret

last_hostile + + + + +

+

Last target of the turret

last_scan_time + + + + +

+

The last time the sentry did a scan

light_initial_color + + + + +

+

light color that gets set in initialize

potential_hostiles + + + + +

+

Potential list of targets found by scan

range + + + + +

+

Range of the turret

Proc Details

destroy_on_hijack +

+

Signal handler to delete the turret when the alamo is hijacked

get_target +

+

Look for the closest human in range and in light of sight. If no human is in range, will look for xenos of other hives

scan +

+

Return TRUE if a possible target is near

set_hostile +

+

Setter for hostile with hard del in mind

set_last_hostile +

+

Setter for last_hostile with hard del in mind

shoot +

+

Signal handler to make the turret shoot at its target

unset_hostile +

+

Signal handler for hard del of hostile

unset_last_hostile +

+

Signal handler for hard del of last_hostile

update_minimap_icon +

+

Change minimap icon if its firing or not firing

+ + + diff --git a/obj/structure/xenoautopsy/tank.html b/obj/structure/xenoautopsy/tank.html new file mode 100644 index 0000000000000..0fdc3dcd011a6 --- /dev/null +++ b/obj/structure/xenoautopsy/tank.html @@ -0,0 +1,50 @@ + + + + + + + /obj/structure/xenoautopsy/tank - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

tank + + + +

+ + + + +

Vars

broken_stateWhat this tank is replaced by when broken
occupantWhatever is contained in the tank

Procs

release_occupantReleases whatever is inside the tank
+

Var Details

broken_state + + + + +

+

What this tank is replaced by when broken

occupant + + + + +

+

Whatever is contained in the tank

Proc Details

release_occupant +

+

Releases whatever is inside the tank

+ + + diff --git a/obj/vehicle.html b/obj/vehicle.html new file mode 100644 index 0000000000000..68680bcf969cf --- /dev/null +++ b/obj/vehicle.html @@ -0,0 +1,288 @@ + + + + + + + /obj/vehicle - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

vehicle + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

autogrant_actions_controllerassoc list "[bitflag]" = list(typepaths)
autogrant_actions_passengerplain list of typepaths
canmoveWhether the vehicle is currently able to move
hitboxmultitile hitbox, set to a hitbox type to make this vehicle multitile.
inserted_keyThe inserted key, needed on some vehicles to start the engine
key_typeIf the driver needs a certain item in hand (or inserted, for vehicles) to drive this. For vehicles, this must be duplicated on their riding component subtype +/datum/component/riding/var/keytype variable because only a few specific checks are handled here with this var, and the majority of it is on the riding component +Eventually the remaining checks should be moved to the component and this var removed.
max_driversMaximum amount of drivers
max_occupantsMaximum amount of passengers plus drivers
occupant_actionsassoc list mob = list(type = action datum assigned to mob)
occupantsmob = bitflags of their control level.
trailerThis vehicle will follow us when we move (like atrailer duh)
trigger_gargoyleWhether this vehicle triggers gargoyles

Procs

add_control_flagsAdds control flags and any associated changes to a mob
add_desantAny special behavior when a desant is added
destroy_controller_action_type
destroy_passenger_action_type
generate_action_type
generate_actions
grant_action_type_to_mob
grant_passenger_actions
initialize_controller_action_type
initialize_passenger_action_type
is_equipment_controllerIs the passed mob an equipment controller?
remove_action_type_from_mob
remove_control_flagsRemoves control flags and any associated changes to a mob
remove_desantAny special behavior when a desant is removed
remove_passenger_actions
shuttleRotateMachine rotate procs
+

Var Details

autogrant_actions_controller + + + + +

+

assoc list "[bitflag]" = list(typepaths)

autogrant_actions_passenger + + + + +

+

plain list of typepaths

canmove + + + + +

+

Whether the vehicle is currently able to move

hitbox + + + + +

+

multitile hitbox, set to a hitbox type to make this vehicle multitile.

inserted_key + + + + +

+

The inserted key, needed on some vehicles to start the engine

key_type + + + + +

+

If the driver needs a certain item in hand (or inserted, for vehicles) to drive this. For vehicles, this must be duplicated on their riding component subtype +/datum/component/riding/var/keytype variable because only a few specific checks are handled here with this var, and the majority of it is on the riding component +Eventually the remaining checks should be moved to the component and this var removed.

max_drivers + + + + +

+

Maximum amount of drivers

max_occupants + + + + +

+

Maximum amount of passengers plus drivers

occupant_actions + + + + +

+

assoc list mob = list(type = action datum assigned to mob)

occupants + + + + +

+

mob = bitflags of their control level.

trailer + + + + +

+

This vehicle will follow us when we move (like atrailer duh)

trigger_gargoyle + + + + +

+

Whether this vehicle triggers gargoyles

Proc Details

add_control_flags +

+

Adds control flags and any associated changes to a mob

add_desant +

+

Any special behavior when a desant is added

destroy_controller_action_type +

+ destroy_controller_action_type +

As the name implies, removes the actiontype from autogrant and removes it from all occupants +args:

+

destroy_passenger_action_type +

+ destroy_passenger_action_type +

Removes this action type from all occupants and stops autogranting it +args:

+

generate_action_type +

+ generate_action_type +

A small proc to properly set up each action path. +args:

+

generate_actions +

+ generate_actions +

You override this with initialize_passenger_action_type and initialize_controller_action_type calls +To give passengers actions when they enter the vehicle. +Read the documentation on the aforementioned procs to learn the difference

grant_action_type_to_mob +

+ grant_action_type_to_mob +

As on the tin, it does all the annoying small stuff and sanity needed +to GRANT an action to a mob. +args:

+

grant_passenger_actions +

+ grant_passenger_actions +

Called on every passenger that enters the vehicle, goes through the list of actions it needs to give... +and does that. +args:

+

initialize_controller_action_type +

+ initialize_controller_action_type +

Gives any passenger that enters the vehicle this action... IF they have the correct vehicle control flag. +This is used so passengers cannot press buttons only drivers should have, for example. +args:

+

initialize_passenger_action_type +

+ initialize_passenger_action_type +

Gives any passenger that enters the mech this action. +They will lose it when they disembark. +args:

+

is_equipment_controller +

+

Is the passed mob an equipment controller?

remove_action_type_from_mob +

+ remove_action_type_from_mob +

As on the tin, it does all the annoying small stuff and sanity needed +to REMOVE an action to a mob. +args:

+

remove_control_flags +

+

Removes control flags and any associated changes to a mob

remove_desant +

+

Any special behavior when a desant is removed

remove_passenger_actions +

+ remove_passenger_actions +

Called on every passenger that exits the vehicle, goes through the list of actions it needs to remove... +and does that. +args:

+

shuttleRotate +

+

Machine rotate procs

+ + + diff --git a/obj/vehicle/ridden.html b/obj/vehicle/ridden.html new file mode 100644 index 0000000000000..9cc38befc7e9c --- /dev/null +++ b/obj/vehicle/ridden.html @@ -0,0 +1,57 @@ + + + + + + + /obj/vehicle/ridden - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

ridden + + + +

+ + + + + +

Vars

attachment_offsetsPixel offsets for specific attachment slots. Is not used currently.
attachments_allowedTypepath list of allowed attachment types.
attachments_by_slotAssoc list of available slots. Since this keeps track of all currently equiped attachments per object, this cannot be a string_list()
starting_attachmentsList of attachment types that is attached to the object on initialize.
+

Var Details

attachment_offsets + + + + +

+

Pixel offsets for specific attachment slots. Is not used currently.

attachments_allowed + + + + +

+

Typepath list of allowed attachment types.

attachments_by_slot + + + + +

+

Assoc list of available slots. Since this keeps track of all currently equiped attachments per object, this cannot be a string_list()

starting_attachments + + + + +

+

List of attachment types that is attached to the object on initialize.

+ + + diff --git a/obj/vehicle/ridden/hover_bike.html b/obj/vehicle/ridden/hover_bike.html new file mode 100644 index 0000000000000..50202eda5303d --- /dev/null +++ b/obj/vehicle/ridden/hover_bike.html @@ -0,0 +1,35 @@ + + + + + + + /obj/vehicle/ridden/hover_bike - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

hover_bike + + + +

+ + +

Procs

animate_hoverAnimates the bob for the bike and its occupants

Proc Details

animate_hover +

+

Animates the bob for the bike and its occupants

+ + + diff --git a/obj/vehicle/ridden/motorbike.html b/obj/vehicle/ridden/motorbike.html new file mode 100644 index 0000000000000..27a14f6277106 --- /dev/null +++ b/obj/vehicle/ridden/motorbike.html @@ -0,0 +1,57 @@ + + + + + + + /obj/vehicle/ridden/motorbike - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

motorbike + + + +

+ + + + + +

Vars

attached_sidecarreference to the attached sidecar, if present
fuel_countFuel count, fuel usage is one per tile moved
fuel_maxmax fuel that this bike can hold
motorbike_coverMutable appearance overlay that covers up the mob with the bike as needed
+

Var Details

attached_sidecar + + + + +

+

reference to the attached sidecar, if present

fuel_count + + + + +

+

Fuel count, fuel usage is one per tile moved

fuel_max + + + + +

+

max fuel that this bike can hold

motorbike_cover + + + + +

+

Mutable appearance overlay that covers up the mob with the bike as needed

+ + + diff --git a/obj/vehicle/ridden/powerloader.html b/obj/vehicle/ridden/powerloader.html new file mode 100644 index 0000000000000..7ce8858061245 --- /dev/null +++ b/obj/vehicle/ridden/powerloader.html @@ -0,0 +1,35 @@ + + + + + + + /obj/vehicle/ridden/powerloader - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

powerloader + + + +

+ + +

Procs

set_vehicle_speedSets the powerloader's actual move delay (as it is handled in the component).

Proc Details

set_vehicle_speed +

+

Sets the powerloader's actual move delay (as it is handled in the component).

+ + + diff --git a/obj/vehicle/ridden/wheelchair.html b/obj/vehicle/ridden/wheelchair.html new file mode 100644 index 0000000000000..7b67fc5302fc1 --- /dev/null +++ b/obj/vehicle/ridden/wheelchair.html @@ -0,0 +1,64 @@ + + + + + + + /obj/vehicle/ridden/wheelchair - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

wheelchair + + + +

+ + + + + + +

Vars

delay_multiplierRun speed delay is multiplied with this for vehicle move delay.
overlay_iconThis variable is used to specify which overlay icon is used for the wheelchair, ensures wheelchair can cover your legs

Procs

can_be_rotatedused for simple rotation component checks
can_user_rotateused in simple rotation component checks as to whether a user can rotate this chair
make_ridableI assign the ridable element in this so i don't have to fuss with hand wheelchairs and motor wheelchairs having different subtypes
+

Var Details

delay_multiplier + + + + +

+

Run speed delay is multiplied with this for vehicle move delay.

overlay_icon + + + + +

+

This variable is used to specify which overlay icon is used for the wheelchair, ensures wheelchair can cover your legs

Proc Details

can_be_rotated +

+

used for simple rotation component checks

can_user_rotate +

+

used in simple rotation component checks as to whether a user can rotate this chair

make_ridable +

+

I assign the ridable element in this so i don't have to fuss with hand wheelchairs and motor wheelchairs having different subtypes

+ + + diff --git a/obj/vehicle/sealed.html b/obj/vehicle/sealed.html new file mode 100644 index 0000000000000..6fe6cb335be23 --- /dev/null +++ b/obj/vehicle/sealed.html @@ -0,0 +1,99 @@ + + + + + + + /obj/vehicle/sealed - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

sealed + + + +

+ + + + + + + + + + + +

Vars

facing_modifiersModifiers for directional damage reduction
factionCurrent owning faction

Procs

enter_checksExtra checks to perform during the do_after to enter the vehicle
get_armour_facingreturns a number for the damage multiplier for this relative angle/dir
get_enter_delayreturns enter do_after delay for the given mob in ticks
mob_enterEnters the vehicle
mob_exitExits the vehicle
mob_try_enterEntry checks for the mob before entering the vehicle
mob_try_exitExit checks for the mob before exiting the vehicle
vehicle_moveSinced sealed vehicles (cars and mechs) don't have riding components, the actual movement is handled here from [/obj/vehicle/sealed/proc/relaymove]
+

Var Details

facing_modifiers + + + + +

+

Modifiers for directional damage reduction

faction + + + + +

+

Current owning faction

Proc Details

enter_checks +

+

Extra checks to perform during the do_after to enter the vehicle

get_armour_facing +

+

returns a number for the damage multiplier for this relative angle/dir

get_enter_delay +

+

returns enter do_after delay for the given mob in ticks

mob_enter +

+

Enters the vehicle

mob_exit +

+

Exits the vehicle

mob_try_enter +

+

Entry checks for the mob before entering the vehicle

mob_try_exit +

+

Exit checks for the mob before exiting the vehicle

vehicle_move +

+

Sinced sealed vehicles (cars and mechs) don't have riding components, the actual movement is handled here from [/obj/vehicle/sealed/proc/relaymove]

+ + + diff --git a/obj/vehicle/sealed/armored.html b/obj/vehicle/sealed/armored.html new file mode 100644 index 0000000000000..be54b9830dd7c --- /dev/null +++ b/obj/vehicle/sealed/armored.html @@ -0,0 +1,277 @@ + + + + + + + /obj/vehicle/sealed/armored - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

armored + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

armored_flagsTank bitflags
damage_icon_pathIcon file path for the damage overlay
damage_overlayDamage overlay for when the vehicle gets damaged
driver_utility_moduleOur driver utility module
easy_load_listList for storing all item typepaths that we may "easy load" into the tank by attacking its entrance +This will be turned into a typeCache on initialize
engine_soundSound file(s) to play when we drive around
engine_sound_lengthfrequency to play the sound with
enginesound_cooldownHow long it takes to rev (vrrm vrrm!) TODO: merge this up to /vehicle here and on tg because of cars
gunner_utility_moduleOur driver utility module
interiorreference to our interior datum if set, uses the typepath its set to
minimap_flagsMinimap flags to use for this vehcile
minimap_icon_stateminimap iconstate to use for this vehicle
permitted_modslist of mods we allow to attach
permitted_weaponslist of weapons we allow to attach
primary_weaponWhat weapon we have in our primary slot
ram_damagedamage done by rams
required_entry_skillSkill required to enter this vehicle
secondary_weaponWhat weapon we have in our secondary slot
secondary_weapon_overlaysecondary independently rotating overlay, if we only have a secondary weapon
strafeWether we are strafing
turret_iconIcon for the rotating turret icon. also should hold the icons for the weapon icons
turret_icon_stateIconstate for the rotating main turret
turret_overlayCool and good turret overlay that allows independently swiveling guns
underlayOverlay for larger vehicles that need under parts
vis_range_modmodifier to view range when manning a control chair
weapons_safetyif true disables stops users from being able to shoot weapons

Procs

enter_locationsreturns a list of possible locations that this vehicle may be entered from
interior_exitcalled when a mob tried to leave our interior
on_mouseclickhandles mouseclicks by a user in the vehicle
play_engine_soundPlays the engine sound for this vehicle if its not on cooldown
set_safetyToggles Weapons Safety
swivel_turretRotates the cannon overlay
toggle_strafeToggles strafemode on or off
try_easy_loadcall to try easy_loading an item into the tank. Checks for all being in the list , interior existing and the user bieng at the enter loc
update_minimap_iconUpdates the vehicles minimap icon
+

Var Details

armored_flags + + + + +

+

Tank bitflags

damage_icon_path + + + + +

+

Icon file path for the damage overlay

damage_overlay + + + + +

+

Damage overlay for when the vehicle gets damaged

driver_utility_module + + + + +

+

Our driver utility module

easy_load_list + + + + +

+

List for storing all item typepaths that we may "easy load" into the tank by attacking its entrance +This will be turned into a typeCache on initialize

engine_sound + + + + +

+

Sound file(s) to play when we drive around

engine_sound_length + + + + +

+

frequency to play the sound with

enginesound_cooldown + + + + +

+

How long it takes to rev (vrrm vrrm!) TODO: merge this up to /vehicle here and on tg because of cars

gunner_utility_module + + + + +

+

Our driver utility module

interior + + + + +

+

reference to our interior datum if set, uses the typepath its set to

minimap_flags + + + + +

+

Minimap flags to use for this vehcile

minimap_icon_state + + + + +

+

minimap iconstate to use for this vehicle

permitted_mods + + + + +

+

list of mods we allow to attach

permitted_weapons + + + + +

+

list of weapons we allow to attach

primary_weapon + + + + +

+

What weapon we have in our primary slot

ram_damage + + + + +

+

damage done by rams

required_entry_skill + + + + +

+

Skill required to enter this vehicle

secondary_weapon + + + + +

+

What weapon we have in our secondary slot

secondary_weapon_overlay + + + + +

+

secondary independently rotating overlay, if we only have a secondary weapon

strafe + + + + +

+

Wether we are strafing

turret_icon + + + + +

+

Icon for the rotating turret icon. also should hold the icons for the weapon icons

turret_icon_state + + + + +

+

Iconstate for the rotating main turret

turret_overlay + + + + +

+

Cool and good turret overlay that allows independently swiveling guns

underlay + + + + +

+

Overlay for larger vehicles that need under parts

vis_range_mod + + + + +

+

modifier to view range when manning a control chair

weapons_safety + + + + +

+

if true disables stops users from being able to shoot weapons

Proc Details

enter_locations +

+

returns a list of possible locations that this vehicle may be entered from

interior_exit +

+

called when a mob tried to leave our interior

on_mouseclick +

+

handles mouseclicks by a user in the vehicle

play_engine_sound +

+

Plays the engine sound for this vehicle if its not on cooldown

set_safety +

+

Toggles Weapons Safety

+

Handles enabling or disabling the safety function.

swivel_turret +

+

Rotates the cannon overlay

toggle_strafe +

+

Toggles strafemode on or off

try_easy_load +

+

call to try easy_loading an item into the tank. Checks for all being in the list , interior existing and the user bieng at the enter loc

update_minimap_icon +

+

Updates the vehicles minimap icon

+ + + diff --git a/obj/vehicle/sealed/armored/multitile.html b/obj/vehicle/sealed/armored/multitile.html new file mode 100644 index 0000000000000..c9830cc0c9d7b --- /dev/null +++ b/obj/vehicle/sealed/armored/multitile.html @@ -0,0 +1,71 @@ + + + + + + + /obj/vehicle/sealed/armored/multitile - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

multitile + + + +

+ + + + + + + +

Vars

desant_pass_flagspass_flags given to desants, in addition to the vehicle's pass_flags
smoke_del_timerHolder for smoke del timer
smoke_holderparticle holder for smoke effects

Procs

unwreck_vehicleReturns the vehicle to an unwrecked state
update_smoke_dirUpdates the wreck smoke position
wreck_vehiclePuts the vehicle into a wrecked state
+

Var Details

desant_pass_flags + + + + +

+

pass_flags given to desants, in addition to the vehicle's pass_flags

smoke_del_timer + + + + +

+

Holder for smoke del timer

smoke_holder + + + + +

+

particle holder for smoke effects

Proc Details

unwreck_vehicle +

+

Returns the vehicle to an unwrecked state

update_smoke_dir +

+

Updates the wreck smoke position

wreck_vehicle +

+

Puts the vehicle into a wrecked state

+ + + diff --git a/obj/vehicle/sealed/armored/multitile/som_tank.html b/obj/vehicle/sealed/armored/multitile/som_tank.html new file mode 100644 index 0000000000000..31851f0890713 --- /dev/null +++ b/obj/vehicle/sealed/armored/multitile/som_tank.html @@ -0,0 +1,35 @@ + + + + + + + /obj/vehicle/sealed/armored/multitile/som_tank - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

som_tank + + + +

+ + +

Procs

animate_hoverAnimates the bob for the tank and its desants

Proc Details

animate_hover +

+

Animates the bob for the tank and its desants

+ + + diff --git a/obj/vehicle/sealed/car.html b/obj/vehicle/sealed/car.html new file mode 100644 index 0000000000000..4381b718d31f7 --- /dev/null +++ b/obj/vehicle/sealed/car.html @@ -0,0 +1,85 @@ + + + + + + + /obj/vehicle/sealed/car - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

car + + + +

+ + + + + + + + + +

Vars

car_traitsBitflags for special behavior such as kidnapping
engine_soundSound file(s) to play when we drive around
engine_sound_lengthSet this to the length of the engine sound.
enginesound_cooldownHow long it takes to rev (vrrm vrrm!)
escape_timeTime it takes to break out of the car.

Procs

is_car_stationaryCallback proc to check for
mob_forced_enterProc called when someone is forcefully stuffedd into a car
mob_try_forced_enterattempts to force a mob into the car
+

Var Details

car_traits + + + + +

+

Bitflags for special behavior such as kidnapping

engine_sound + + + + +

+

Sound file(s) to play when we drive around

engine_sound_length + + + + +

+

Set this to the length of the engine sound.

enginesound_cooldown + + + + +

+

How long it takes to rev (vrrm vrrm!)

escape_time + + + + +

+

Time it takes to break out of the car.

Proc Details

is_car_stationary +

+

Callback proc to check for

mob_forced_enter +

+

Proc called when someone is forcefully stuffedd into a car

mob_try_forced_enter +

+

attempts to force a mob into the car

+ + + diff --git a/obj/vehicle/sealed/mecha.html b/obj/vehicle/sealed/mecha.html new file mode 100644 index 0000000000000..2d846b7b34186 --- /dev/null +++ b/obj/vehicle/sealed/mecha.html @@ -0,0 +1,645 @@ + + + + + + + /obj/vehicle/sealed/mecha - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

mecha + + + +

+ +

WELCOME TO MECHA.DM, ENJOY YOUR STAY

+

Mechs are now (finally) vehicles, this means you can make them multicrew +They can also grant select ability buttons based on occupant bitflags

+

Movement is handled through vehicle_move() which is called by relaymove +Clicking is done by way of signals registering to the entering mob +NOTE: MMIS are NOT mobs but instead contain a brain that is, so you need special checks +AI also has special checks becaus it gets in and out of the mech differently +Always call remove_occupant(mob) when leaving the mech so the mob is removed properly

+

For multi-crew, you need to set how the occupants recieve ability bitflags corresponding to their status on the vehicle(i.e: driver, gunner etc) +Abilities can then be set to only apply for certain bitflags and are assigned as such automatically

+

Clicks are wither translated into mech_melee_attack (see mech_melee_attack.dm) +Or are used to call action() on equipped gear +Cooldown for gear is on the mech because exploits

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

allow_diagonal_movementWhether this mech is allowed to move diagonally
bumpsmashWhether or not the mech destroys walls by running into it.
capacitorKeeps track of the mech's capacitor
cellKeeps track of the mech's cell
completely_disabledJust stop the mech from doing anything
component_damage_thresholddamage threshold above which we take component damage
connected_portThe connected air port, if we have one
construction_stateWhether the mechs maintenance protocols are on or off
defense_mode/Action vars +Bool for energy shield on/off
destruction_sleep_durationTime you get slept for if you get forcible ejected by the mech exploding
dir_inWhat direction will the mech face when entered/powered on? Defaults to South.
dna_lockStores the DNA enzymes of a carbon so tht only they can access the mech
emp_timerholds the EMP timer
enclosedWhether outside viewers can see the pilot inside
equip_by_categoryassoc list: key-typepathlist before init, key-equipmentlist after
equipment_disabledif we cant use our equipment(such as due to EMP)
exit_delayTIme taken to leave the mech
flat_equipmentflat equipment for iteration
internal_damageBitflags for internal damage
internal_damage_probability% chance for internal damage to occur
internal_damage_thresholddamage amount above which we can take internal damages
internal_tankThe internal air tank obj of the mech
internal_tank_valveThe setting of the valve on the internal tank
internals_req_accessrequired access to change internal components
is_currently_ejectingCurrently ejecting, and unable to do things
leg_overload_coeffEnergy use modifier for leg overload
leg_overload_modeBool for leg overload on/off
lights_powerHow powerful our lights are
max_equip_by_categoryassoc list: max equips for non-arm modules key-count
mech_typesingle flag for the type of this mech, determines what kind of equipment can be attached to it
mecha_flagsContains flags for the mecha
melee_cooldownCooldown duration between melee punches
melee_energy_drainHow much energy we drain each time we mechpunch someone
normal_step_energy_drainHow much energy the mech will consume each time it moves. This variable is a backup for when leg actuators affect the energy drain.
operation_req_accessrequired access level for mecha operation
overload_step_energy_drain_minThe minimum amount of energy charge consumed by leg overload
phase_stateicon_state for flick() when phazing
phasingcheck for phasing, if it is set to text (to describe how it is phasing: "flying", "phasing") it will let the mech walk through walls.
phasing_energy_drainPower we use every time we phaze through something
possible_int_damagelist of possibly dealt internal damage for this mech type
radioSpecial version of the radio, which is unsellable
scanmodKeeps track of the mech's scanning module
silicon_icon_stateIn case theres a different iconstate for AI/MMI pilot(currently only used for ripley)
smashcooldownCooldown length between bumpsmashes
smoke_chargesRemaining smoke charges
smoke_cooldownCooldown between using smoke
spark_systemSpark effects are handled by this datum
speed_modstores value that we will add and remove from the mecha when toggling leg overload
step_energy_drainHow much energy the mech will consume each time it moves. this is the current active energy consumed
step_silentWhether our steps are silent due to no gravity
stepsoundSound played when the mech moves
strafeWether we are strafing
turnsoundSound played when the mech walks
ui_viewref to screen object that displays in the middle of the UI
ui_xUi size, so you can make the UI bigger if you let it load a lot of stuff
ui_yUi size, so you can make the UI bigger if you let it load a lot of stuff
use_internal_tank////////ATMOS +Whether we are currrently drawing from the internal tank
weapons_safetySafety for weapons. Won't fire if enabled, and toggled by middle click.
wreckageTypepath for the wreckage it spawns when destroyed

Procs

add_capacitorAdds a capacitor, for use in Map-spawned mechs, Nuke Ops mechs, and admin-spawned mechs. Mechs built by hand will replace this.
add_cellAdds a cell, for use in Map-spawned mechs, Nuke Ops mechs, and admin-spawned mechs. Mechs built by hand will replace this.
add_scanmodAdds a scanning module, for use in Map-spawned mechs, Nuke Ops mechs, and admin-spawned mechs. Mechs built by hand will replace this.
disconnect_airDisconnects air tank- air port connection on mecha move
display_speech_bubbleDisplays a special speech bubble when someone inside the mecha speaks
generate_action_typeMECHA ACTIONS
get_int_repair_fluff_endgets the successful finish balloon alert flufftext
get_int_repair_fluff_failgets the on-fail balloon alert flufftext
get_int_repair_fluff_startgets the starting balloon alert flufftext
has_chargePower stuff
hud_set_mecha_batteryUpdates mecha battery
hud_set_mecha_healthMecha health hud updates
moved_insideproc called when a new non-mmi/AI mob enters this mech
on_middlemouseclickmiddle mouse click signal wrapper for AI users
on_mouseclickCalled when a driver clicks somewhere. Handles everything like equipment, punches, etc.
operation_allowedAccess stuff
play_stepsoundPlays the mech step sound effect. Split from movement procs so that other mechs (HONK) can override this one specific part.
restore_equipmentRestores the mech after EMP
run_overCrushing the mob underfoot
setDirSets the direction of the mecha and all of its occcupents, required for FOV. Alternatively one could make a recursive contents registration and register topmost direction changes in the fov component
set_mouse_pointerUpdates the pilot's mouse cursor override.
set_safetyToggles Weapons Safety
try_damage_componenttries to damage mech equipment depending on damage and where is being targetted
try_deal_internal_damagetries to deal internal damaget depending on the damage amount
try_repair_int_damagetries to repair any internal damage and plays fluff for it
update_part_valuesUpdates the values given by scanning module and capacitor tier, called when a part is removed or inserted.
+

Var Details

allow_diagonal_movement + + + + +

+

Whether this mech is allowed to move diagonally

bumpsmash + + + + +

+

Whether or not the mech destroys walls by running into it.

capacitor + + + + +

+

Keeps track of the mech's capacitor

cell + + + + +

+

Keeps track of the mech's cell

completely_disabled + + + + +

+

Just stop the mech from doing anything

component_damage_threshold + + + + +

+

damage threshold above which we take component damage

connected_port + + + + +

+

The connected air port, if we have one

construction_state + + + + +

+

Whether the mechs maintenance protocols are on or off

defense_mode + + + + +

+

/Action vars +Bool for energy shield on/off

destruction_sleep_duration + + + + +

+

Time you get slept for if you get forcible ejected by the mech exploding

dir_in + + + + +

+

What direction will the mech face when entered/powered on? Defaults to South.

dna_lock + + + + +

+

Stores the DNA enzymes of a carbon so tht only they can access the mech

emp_timer + + + + +

+

holds the EMP timer

enclosed + + + + +

+

Whether outside viewers can see the pilot inside

equip_by_category + + + + +

+

assoc list: key-typepathlist before init, key-equipmentlist after

equipment_disabled + + + + +

+

if we cant use our equipment(such as due to EMP)

exit_delay + + + + +

+

TIme taken to leave the mech

flat_equipment + + + + +

+

flat equipment for iteration

internal_damage + + + + +

+

Bitflags for internal damage

internal_damage_probability + + + + +

+

% chance for internal damage to occur

internal_damage_threshold + + + + +

+

damage amount above which we can take internal damages

internal_tank + + + + +

+

The internal air tank obj of the mech

internal_tank_valve + + + + +

+

The setting of the valve on the internal tank

internals_req_access + + + + +

+

required access to change internal components

is_currently_ejecting + + + + +

+

Currently ejecting, and unable to do things

leg_overload_coeff + + + + +

+

Energy use modifier for leg overload

leg_overload_mode + + + + +

+

Bool for leg overload on/off

lights_power + + + + +

+

How powerful our lights are

max_equip_by_category + + + + +

+

assoc list: max equips for non-arm modules key-count

mech_type + + + + +

+

single flag for the type of this mech, determines what kind of equipment can be attached to it

mecha_flags + + + + +

+

Contains flags for the mecha

melee_cooldown + + + + +

+

Cooldown duration between melee punches

melee_energy_drain + + + + +

+

How much energy we drain each time we mechpunch someone

normal_step_energy_drain + + + + +

+

How much energy the mech will consume each time it moves. This variable is a backup for when leg actuators affect the energy drain.

operation_req_access + + + + +

+

required access level for mecha operation

overload_step_energy_drain_min + + + + +

+

The minimum amount of energy charge consumed by leg overload

phase_state + + + + +

+

icon_state for flick() when phazing

phasing + + + + +

+

check for phasing, if it is set to text (to describe how it is phasing: "flying", "phasing") it will let the mech walk through walls.

phasing_energy_drain + + + + +

+

Power we use every time we phaze through something

possible_int_damage + + + + +

+

list of possibly dealt internal damage for this mech type

radio + + + + +

+

Special version of the radio, which is unsellable

scanmod + + + + +

+

Keeps track of the mech's scanning module

silicon_icon_state + + + + +

+

In case theres a different iconstate for AI/MMI pilot(currently only used for ripley)

smashcooldown + + + + +

+

Cooldown length between bumpsmashes

smoke_charges + + + + +

+

Remaining smoke charges

smoke_cooldown + + + + +

+

Cooldown between using smoke

spark_system + + + + +

+

Spark effects are handled by this datum

speed_mod + + + + +

+

stores value that we will add and remove from the mecha when toggling leg overload

step_energy_drain + + + + +

+

How much energy the mech will consume each time it moves. this is the current active energy consumed

step_silent + + + + +

+

Whether our steps are silent due to no gravity

stepsound + + + + +

+

Sound played when the mech moves

strafe + + + + +

+

Wether we are strafing

turnsound + + + + +

+

Sound played when the mech walks

ui_view + + + + +

+

ref to screen object that displays in the middle of the UI

ui_x + + + + +

+

Ui size, so you can make the UI bigger if you let it load a lot of stuff

ui_y + + + + +

+

Ui size, so you can make the UI bigger if you let it load a lot of stuff

use_internal_tank + + + + +

+

////////ATMOS +Whether we are currrently drawing from the internal tank

weapons_safety + + + + +

+

Safety for weapons. Won't fire if enabled, and toggled by middle click.

wreckage + + + + +

+

Typepath for the wreckage it spawns when destroyed

Proc Details

add_capacitor +

+

Adds a capacitor, for use in Map-spawned mechs, Nuke Ops mechs, and admin-spawned mechs. Mechs built by hand will replace this.

add_cell +

+

Adds a cell, for use in Map-spawned mechs, Nuke Ops mechs, and admin-spawned mechs. Mechs built by hand will replace this.

add_scanmod +

+

Adds a scanning module, for use in Map-spawned mechs, Nuke Ops mechs, and admin-spawned mechs. Mechs built by hand will replace this.

disconnect_air +

+

Disconnects air tank- air port connection on mecha move

display_speech_bubble +

+

Displays a special speech bubble when someone inside the mecha speaks

generate_action_type +

+

MECHA ACTIONS

get_int_repair_fluff_end +

+

gets the successful finish balloon alert flufftext

get_int_repair_fluff_fail +

+

gets the on-fail balloon alert flufftext

get_int_repair_fluff_start +

+

gets the starting balloon alert flufftext

has_charge +

+

Power stuff

hud_set_mecha_battery +

+

Updates mecha battery

hud_set_mecha_health +

+

Mecha health hud updates

moved_inside +

+

proc called when a new non-mmi/AI mob enters this mech

on_middlemouseclick +

+

middle mouse click signal wrapper for AI users

on_mouseclick +

+

Called when a driver clicks somewhere. Handles everything like equipment, punches, etc.

operation_allowed +

+

Access stuff

play_stepsound +

+

Plays the mech step sound effect. Split from movement procs so that other mechs (HONK) can override this one specific part.

restore_equipment +

+

Restores the mech after EMP

run_over +

+

Crushing the mob underfoot

setDir +

+

Sets the direction of the mecha and all of its occcupents, required for FOV. Alternatively one could make a recursive contents registration and register topmost direction changes in the fov component

set_mouse_pointer +

+

Updates the pilot's mouse cursor override.

+

If the mech's weapons safety is enabled, there should be no override, and the user gets their regular mouse cursor. If safety +is off but the mech's equipment is disabled (such as by EMP), the cursor should be the red disabled version. Otherwise, if +safety is off and the equipment is functional, the cursor should be the regular green cursor. This proc sets the cursor. +correct and then updates it for each mob in the occupants list.

set_safety +

+

Toggles Weapons Safety

+

Handles enabling or disabling the safety function.

try_damage_component +

+

tries to damage mech equipment depending on damage and where is being targetted

try_deal_internal_damage +

+

tries to deal internal damaget depending on the damage amount

try_repair_int_damage +

+

tries to repair any internal damage and plays fluff for it

update_part_values +

+

Updates the values given by scanning module and capacitor tier, called when a part is removed or inserted.

+ + + diff --git a/obj/vehicle/sealed/mecha/combat/greyscale.html b/obj/vehicle/sealed/mecha/combat/greyscale.html new file mode 100644 index 0000000000000..e737513222637 --- /dev/null +++ b/obj/vehicle/sealed/mecha/combat/greyscale.html @@ -0,0 +1,50 @@ + + + + + + + /obj/vehicle/sealed/mecha/combat/greyscale - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

greyscale + + + +

+ + + + +

Vars

holder_leftleft particle smoke holder
holder_rightright particle smoke holder
limbskeyed list. values are types at init, otherwise instances of mecha limbs, order is layer order as well
+

Var Details

holder_left + + + + +

+

left particle smoke holder

holder_right + + + + +

+

right particle smoke holder

limbs + + + + +

+

keyed list. values are types at init, otherwise instances of mecha limbs, order is layer order as well

+ + + diff --git a/obj/vehicle/sealed/mecha/combat/savannah_ivanov.html b/obj/vehicle/sealed/mecha/combat/savannah_ivanov.html new file mode 100644 index 0000000000000..a49e75df0f4d0 --- /dev/null +++ b/obj/vehicle/sealed/mecha/combat/savannah_ivanov.html @@ -0,0 +1,30 @@ + + + + + + + /obj/vehicle/sealed/mecha/combat/savannah_ivanov - byond + + +
+ byond - + Modules - + Types +
+
+

savannah_ivanov + + + +

+ +Savannah-Ivanov! +

A two person mecha that delegates moving to the driver and shooting to the pilot. +...Hilarious, right?

+ + + diff --git a/obj/vehicle/sealed/mecha/working.html b/obj/vehicle/sealed/mecha/working.html new file mode 100644 index 0000000000000..c3e9e37c04fa7 --- /dev/null +++ b/obj/vehicle/sealed/mecha/working.html @@ -0,0 +1,36 @@ + + + + + + + /obj/vehicle/sealed/mecha/working - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

working + + + +

+ + +

Vars

boxHandles an internal ore box for working mechs
+

Var Details

box + + + + +

+

Handles an internal ore box for working mechs

+ + + diff --git a/obj/vehicle/sealed/mecha/working/ripley.html b/obj/vehicle/sealed/mecha/working/ripley.html new file mode 100644 index 0000000000000..1cfc04d7e8ff8 --- /dev/null +++ b/obj/vehicle/sealed/mecha/working/ripley.html @@ -0,0 +1,71 @@ + + + + + + + /obj/vehicle/sealed/mecha/working/ripley - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

ripley + + + +

+ + + + + + + +

Vars

cargoList of all things in Ripley's Cargo Compartment
cargo_capacityHow much things Ripley can carry in their Cargo Compartment
fast_pressure_step_inHow fast the mech is in low pressure
hidesAmount of Goliath hides attached to the mech
slow_pressure_step_inHow fast the mech is in normal pressure
stepsoundCustom Ripley step and turning sounds (from TGMC)
+

Var Details

cargo + + + + +

+

List of all things in Ripley's Cargo Compartment

cargo_capacity + + + + +

+

How much things Ripley can carry in their Cargo Compartment

fast_pressure_step_in + + + + +

+

How fast the mech is in low pressure

hides + + + + +

+

Amount of Goliath hides attached to the mech

slow_pressure_step_in + + + + +

+

How fast the mech is in normal pressure

stepsound + + + + +

+

Custom Ripley step and turning sounds (from TGMC)

+ + + diff --git a/obj/vehicle/unmanned.html b/obj/vehicle/unmanned.html new file mode 100644 index 0000000000000..29aab005c7bb4 --- /dev/null +++ b/obj/vehicle/unmanned.html @@ -0,0 +1,225 @@ + + + + + + + /obj/vehicle/unmanned - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

unmanned + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Vars

allow_explosivesIf explosives should be usable on the vehicle
ammoBuller type we fire, declared as type but set to a reference in Initialize
can_interactIf that vehicle can interact with cades
controlledIf something is already controlling the vehicle
current_roundsAmmo remaining for the robot
fire_delayDelay in byond ticks between weapon fires
flashmuzzleflash stuff
gunnoiseSound file or string type for playing the shooting sound
iff_signalIff flags, to prevent friendly fire from sg and aiming marines
in_chamberThe currently loaded and ready to fire projectile
max_roundsmax ammo the robot can hold
next_move_delayNeeded to keep track of any slowdowns and/or diagonal movement
serialSerial number of the vehicle
spawn_equipped_typeIf the vehicle should spawn with a weapon allready installed
turret_pathPath of "turret" attached
turret_patternTurret types we're allowed to attach
turret_typeType of the turret attached
unmanned_flagsFlags for unmanned vehicules

Procs

delete_muzzle_flashRemoves muzzle flash from unmanned vehicles
equip_turretTry to equip a turret on the vehicle
fire_shotCheck if we have/create a new bullet and fire it at an atom target
hud_set_uav_ammoMakes unmanned vehicle ammo visible
load_into_chamberChecks if we can or already have a bullet loaded that we can shoot
on_linkCalled when the drone is linked from a remote control
on_remote_toggleCalled when remote control is taken
on_unlinkCalled when the drone is unlinked to a remote control
reload_turretTry to reload the turret of our vehicule
wrench_actTry to desequip the turret
+

Var Details

allow_explosives + + + + +

+

If explosives should be usable on the vehicle

ammo + + + + +

+

Buller type we fire, declared as type but set to a reference in Initialize

can_interact + + + + +

+

If that vehicle can interact with cades

controlled + + + + +

+

If something is already controlling the vehicle

current_rounds + + + + +

+

Ammo remaining for the robot

fire_delay + + + + +

+

Delay in byond ticks between weapon fires

flash + + + + +

+

muzzleflash stuff

gunnoise + + + + +

+

Sound file or string type for playing the shooting sound

iff_signal + + + + +

+

Iff flags, to prevent friendly fire from sg and aiming marines

in_chamber + + + + +

+

The currently loaded and ready to fire projectile

max_rounds + + + + +

+

max ammo the robot can hold

next_move_delay + + + + +

+

Needed to keep track of any slowdowns and/or diagonal movement

serial + + + + +

+

Serial number of the vehicle

spawn_equipped_type + + + + +

+

If the vehicle should spawn with a weapon allready installed

turret_path + + + + +

+

Path of "turret" attached

turret_pattern + + + + +

+

Turret types we're allowed to attach

turret_type + + + + +

+

Type of the turret attached

unmanned_flags + + + + +

+

Flags for unmanned vehicules

Proc Details

delete_muzzle_flash +

+

Removes muzzle flash from unmanned vehicles

equip_turret +

+

Try to equip a turret on the vehicle

fire_shot +

+

Check if we have/create a new bullet and fire it at an atom target

hud_set_uav_ammo +

+

Makes unmanned vehicle ammo visible

load_into_chamber +

+

Checks if we can or already have a bullet loaded that we can shoot

+

Called when the drone is linked from a remote control

on_remote_toggle +

+

Called when remote control is taken

+

Called when the drone is unlinked to a remote control

reload_turret +

+

Try to reload the turret of our vehicule

wrench_act +

+

Try to desequip the turret

+ + + diff --git a/obj/vehicle/unmanned/deployable.html b/obj/vehicle/unmanned/deployable.html new file mode 100644 index 0000000000000..74af3c3ee1150 --- /dev/null +++ b/obj/vehicle/unmanned/deployable.html @@ -0,0 +1,43 @@ + + + + + + + /obj/vehicle/unmanned/deployable - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

deployable + + + +

+ + + +

Vars

internal_itemWhat it deploys into. typecast version of internal_item
item_flagsWhether this item can be deployed or undeployed
+

Var Details

internal_item + + + + +

+

What it deploys into. typecast version of internal_item

item_flags + + + + +

+

Whether this item can be deployed or undeployed

+ + + diff --git a/obj/vehicle/unmanned/droid.html b/obj/vehicle/unmanned/droid.html new file mode 100644 index 0000000000000..2b0ba0ba7d712 --- /dev/null +++ b/obj/vehicle/unmanned/droid.html @@ -0,0 +1,43 @@ + + + + + + + /obj/vehicle/unmanned/droid - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

droid + + + +

+ + + +

Vars

antennaAction to activate suppply antenna.
remote_userThe mob controlling the droid remotely
+

Var Details

antenna + + + + +

+

Action to activate suppply antenna.

remote_user + + + + +

+

The mob controlling the droid remotely

+ + + diff --git a/obj/vehicle/unmanned/droid/ripley.html b/obj/vehicle/unmanned/droid/ripley.html new file mode 100644 index 0000000000000..5c85bef4b5715 --- /dev/null +++ b/obj/vehicle/unmanned/droid/ripley.html @@ -0,0 +1,50 @@ + + + + + + + /obj/vehicle/unmanned/droid/ripley - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

ripley + + + +

+ + + + +

Vars

clamp_cooldownused to prevent spam grabbing and dropping by the AI

Procs

Destroyused to hold whatever we're grabbing
handle_cargograb an eligible atom and store it, if we already have an atom place it on the ground
+

Var Details

clamp_cooldown + + + + +

+

used to prevent spam grabbing and dropping by the AI

Proc Details

Destroy +

+

used to hold whatever we're grabbing

handle_cargo +

+

grab an eligible atom and store it, if we already have an atom place it on the ground

+ + + diff --git a/obj/vehicle/unmanned/droid/scout.html b/obj/vehicle/unmanned/droid/scout.html new file mode 100644 index 0000000000000..405176366b395 --- /dev/null +++ b/obj/vehicle/unmanned/droid/scout.html @@ -0,0 +1,49 @@ + + + + + + + /obj/vehicle/unmanned/droid/scout - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

scout + + + +

+ +

stealth droid, like the normal droid but with stealthing ability on rclick

+ + +

Procs

cloak_droneruns checks for cloaking then begins to cloak it
deactivate_cloakDeactivates the cloak when someone turns it off or its forced off
start_cloakPlays effects and doafter effects for the drone

Proc Details

cloak_drone +

+

runs checks for cloaking then begins to cloak it

deactivate_cloak +

+

Deactivates the cloak when someone turns it off or its forced off

start_cloak +

+

Plays effects and doafter effects for the drone

+ + + diff --git a/particles.html b/particles.html new file mode 100644 index 0000000000000..cce251c8db9a1 --- /dev/null +++ b/particles.html @@ -0,0 +1,35 @@ + + + + + + + /particles - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

particles + + + +

+ + +

Procs

return_ui_representationreturns ui_data values for the particle editor

Proc Details

return_ui_representation +

+

returns ui_data values for the particle editor

+ + + diff --git a/procpath.html b/procpath.html new file mode 100644 index 0000000000000..8dcccf36e1452 --- /dev/null +++ b/procpath.html @@ -0,0 +1,73 @@ + + + + + + + /procpath - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

procpath + + + +

+ +

Represents a proc or verb path.

+

Despite having no DM-defined static type, proc paths have some variables, +listed below. These are not modifiable, but for a given procpath P, +new P(null, "Name", "Desc") can be used to create a new procpath with the +same code but new name and desc values. The other variables cannot be +changed in this way.

+

This type exists only to act as an annotation, providing reasonable static +typing for procpaths. Previously, types like /atom/verb were used, with +the name and desc vars of /atom thus being accessible. Proc and verb +paths will fail istype and ispath checks against /procpath.

+ + + + +

Vars

categoryThe category or tab the verb will appear in.
descThe verb's help text or description.
hiddenWhether or not the verb appears in statpanel and commandbar when you press space
invisibilityOnly clients/mobs with see_invisibility higher can use the verb.
nameA text string of the verb's name.
+

Var Details

category + + + + +

+

The category or tab the verb will appear in.

desc + + + + +

+

The verb's help text or description.

hidden + + + + +

+

Whether or not the verb appears in statpanel and commandbar when you press space

invisibility + + + + +

+

Only clients/mobs with see_invisibility higher can use the verb.

name + + + + +

+

A text string of the verb's name.

+ + + diff --git a/turf.html b/turf.html new file mode 100644 index 0000000000000..3c95adb73e91c --- /dev/null +++ b/turf.html @@ -0,0 +1,204 @@ + + + + + + + /turf - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

turf + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + +

Vars

assigned_oranges_earwhat /mob/oranges_ear instance is already assigned to us as there should only ever be one. +used for guaranteeing there is only one oranges_ear per turf when assigned, speeds up view() iteration
directional_opacityList of light sources affecting this turf. +Which directions does this turf block the vision of, taking into account both the turf's opacity and the movable opacity_sources.
dynamic_lumcountLumcount added by sources other than lighting datum objects, such as the overlay lighting component.
fixed_underlayIcon-smoothing variable to map a diagonal wall corner with a fixed underlay.
hard_armorFlat-damage-reduction-based armor.
hybrid_lights_affectinghybrid lights affecting this turf
lighting_corner_NELighting Corner datums.
opacity_sourcesLazylist of movable atoms providing opacity sources.
soft_armor%-reduction-based armor.

Procs

ScrapeAwayTake off the top layer turf and replace it with the next baseturf down
add_opacity_sourceProc to add movable sources of opacity on the turf and let it handle lighting code.
can_teleport_hereAre we able to teleport to this turf using in game teleport mechanics
check_alien_constructionCheck if alien abilities can construct structure on the turf +Return TRUE if allowed, FALSE otherwise
check_disallow_alien_fortificationChecks for whether we can build advanced xeno structures here +Returns TRUE if present, FALSE otherwise
clear_signal_refsWARNING WARNING +Turfs DO NOT lose their signals when they get replaced, REMEMBER THIS +It's possible because turfs are fucked, and if you have one in a list and it's replaced with another one, the list ref points to the new turf +We do it because moving signals over was needlessly expensive, and bloated a very commonly used bit of code
fromShuttleMoveBase procs
get_submerge_depthReturns the number that shows how far an AM is offset when submerged in this turf
get_submerge_heightReturns the number that represents how submerged an AM is by a turf and its contents
recalculate_directional_opacityCalculate on which directions this turfs block view.
reconsider_lightsCauses any affecting light sources to be queued for a visibility update, for example a door got opened.
remove_opacity_sourceProc to remove movable sources of opacity on the turf and let it handle lighting code.
static_lighting_build_overlayBuilds a lighting object for us, but only if our area is dynamic.
washcleans any cleanable decals from the turf
+

Var Details

assigned_oranges_ear + + + + +

+

what /mob/oranges_ear instance is already assigned to us as there should only ever be one. +used for guaranteeing there is only one oranges_ear per turf when assigned, speeds up view() iteration

directional_opacity + + + + +

+

List of light sources affecting this turf. +Which directions does this turf block the vision of, taking into account both the turf's opacity and the movable opacity_sources.

dynamic_lumcount + + + + +

+

Lumcount added by sources other than lighting datum objects, such as the overlay lighting component.

fixed_underlay + + + + +

+

Icon-smoothing variable to map a diagonal wall corner with a fixed underlay.

hard_armor + + + + +

+

Flat-damage-reduction-based armor.

hybrid_lights_affecting + + + + +

+

hybrid lights affecting this turf

lighting_corner_NE + + + + +

+

Lighting Corner datums.

opacity_sources + + + + +

+

Lazylist of movable atoms providing opacity sources.

soft_armor + + + + +

+

%-reduction-based armor.

Proc Details

ScrapeAway +

+

Take off the top layer turf and replace it with the next baseturf down

add_opacity_source +

+

Proc to add movable sources of opacity on the turf and let it handle lighting code.

can_teleport_here +

+

Are we able to teleport to this turf using in game teleport mechanics

check_alien_construction +

+

Check if alien abilities can construct structure on the turf +Return TRUE if allowed, FALSE otherwise

check_disallow_alien_fortification +

+

Checks for whether we can build advanced xeno structures here +Returns TRUE if present, FALSE otherwise

clear_signal_refs +

+

WARNING WARNING +Turfs DO NOT lose their signals when they get replaced, REMEMBER THIS +It's possible because turfs are fucked, and if you have one in a list and it's replaced with another one, the list ref points to the new turf +We do it because moving signals over was needlessly expensive, and bloated a very commonly used bit of code

fromShuttleMove +

+

Base procs

get_submerge_depth +

+

Returns the number that shows how far an AM is offset when submerged in this turf

get_submerge_height +

+

Returns the number that represents how submerged an AM is by a turf and its contents

recalculate_directional_opacity +

+

Calculate on which directions this turfs block view.

reconsider_lights +

+

Causes any affecting light sources to be queued for a visibility update, for example a door got opened.

remove_opacity_source +

+

Proc to remove movable sources of opacity on the turf and let it handle lighting code.

static_lighting_build_overlay +

+

Builds a lighting object for us, but only if our area is dynamic.

wash +

+

cleans any cleanable decals from the turf

+ + + diff --git a/turf/closed.html b/turf/closed.html new file mode 100644 index 0000000000000..2f70e646fcbed --- /dev/null +++ b/turf/closed.html @@ -0,0 +1,50 @@ + + + + + + + /turf/closed - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

closed + + + +

+ + + + +

Vars

junctiontypeThe neighbours
open_turf_typeused for plasmacutter deconstruction
walltypeBase state, for icon_state updates.
+

Var Details

junctiontype + + + + +

+

The neighbours

open_turf_type + + + + +

+

used for plasmacutter deconstruction

walltype + + + + +

+

Base state, for icon_state updates.

+ + + diff --git a/turf/closed/interior/tank/door.html b/turf/closed/interior/tank/door.html new file mode 100644 index 0000000000000..8a7bb9354f3dc --- /dev/null +++ b/turf/closed/interior/tank/door.html @@ -0,0 +1,43 @@ + + + + + + + /turf/closed/interior/tank/door - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

door + + + +

+ + + +

Vars

ownerowner of this object, assigned during interior linkage

Procs

get_enter_locationreturns where we want to spit out new enterers
+

Var Details

owner + + + + +

+

owner of this object, assigned during interior linkage

Proc Details

get_enter_location +

+

returns where we want to spit out new enterers

+ + + diff --git a/turf/closed/mineral.html b/turf/closed/mineral.html new file mode 100644 index 0000000000000..b105946edce3f --- /dev/null +++ b/turf/closed/mineral.html @@ -0,0 +1,35 @@ + + + + + + + /turf/closed/mineral - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

mineral + + + +

+ + +

Procs

shuttleRotateTurf rotate procs

Proc Details

shuttleRotate +

+

Turf rotate procs

+ + + diff --git a/turf/closed/wall.html b/turf/closed/wall.html new file mode 100644 index 0000000000000..838c37aae6d38 --- /dev/null +++ b/turf/closed/wall.html @@ -0,0 +1,70 @@ + + + + + + + /turf/closed/wall - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

wall + + + +

+ + + + + + +

Vars

bullethole_overlayA reference to the current bullethole overlay image, this is added and deleted as needed
bullethole_variationThe variation set we're using +There are 10 sets and it gets picked randomly the first time a wall is shot +It corresponds to the first number in the icon_state (bhole_[bullethole_variation]_[current_bulletholes]) +Gets reset to 0 if the wall reaches maximum health, so a new variation is picked when the wall gets shot again
current_bulletholesThe current number of bulletholes in this turf

Procs

repair_damageRepairs the wall by an amount
take_damageApplies damage to the wall
+

Var Details

bullethole_overlay + + + + +

+

A reference to the current bullethole overlay image, this is added and deleted as needed

bullethole_variation + + + + +

+

The variation set we're using +There are 10 sets and it gets picked randomly the first time a wall is shot +It corresponds to the first number in the icon_state (bhole_[bullethole_variation]_[current_bulletholes]) +Gets reset to 0 if the wall reaches maximum health, so a new variation is picked when the wall gets shot again

current_bulletholes + + + + +

+

The current number of bulletholes in this turf

Proc Details

repair_damage +

+

Repairs the wall by an amount

take_damage +

+

Applies damage to the wall

+ + + diff --git a/turf/closed/wall/mainship.html b/turf/closed/wall/mainship.html new file mode 100644 index 0000000000000..f4c04772bac9c --- /dev/null +++ b/turf/closed/wall/mainship.html @@ -0,0 +1,36 @@ + + + + + + + /turf/closed/wall/mainship - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

mainship + + + +

+ + +

Vars

decorated_walldo we have bits of decoration to add to the walls?
+

Var Details

decorated_wall + + + + +

+

do we have bits of decoration to add to the walls?

+ + + diff --git a/turf/closed/wall/resin.html b/turf/closed/wall/resin.html new file mode 100644 index 0000000000000..cc4a948b20da5 --- /dev/null +++ b/turf/closed/wall/resin.html @@ -0,0 +1,29 @@ + + + + + + + /turf/closed/wall/resin - byond + + +
+ byond - + Modules - + Types +
+
+

resin + + + +

+ +

Resin walls

+

Used mostly be xenomorphs

+ + + diff --git a/turf/closed/wall/resin/regenerating.html b/turf/closed/wall/resin/regenerating.html new file mode 100644 index 0000000000000..ab1066fa10dc8 --- /dev/null +++ b/turf/closed/wall/resin/regenerating.html @@ -0,0 +1,73 @@ + + + + + + + /turf/closed/wall/resin/regenerating - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

regenerating + + + +

+ +

Regenerating walls that start with lower health, but grow to a much higher hp over time

+ + + + + +

Vars

cooldown_on_taking_dmgHow long should the wall stop healing for when taking dmg
existingtimerWhether we have a timer already to stop from clogging up the timer ss
heal_per_tickHow much the walls integrity heals per tick (5 seconds)
max_upgradable_healthTotal health possible for a wall after regenerating at max health
max_upgrade_per_tickHow much the walls max_integrity increases per tick (5 seconds)

Procs

start_healingTry to start processing on the wall. +Will return early if the wall is already at max upgradable health.
+

Var Details

cooldown_on_taking_dmg + + + + +

+

How long should the wall stop healing for when taking dmg

existingtimer + + + + +

+

Whether we have a timer already to stop from clogging up the timer ss

heal_per_tick + + + + +

+

How much the walls integrity heals per tick (5 seconds)

max_upgradable_health + + + + +

+

Total health possible for a wall after regenerating at max health

max_upgrade_per_tick + + + + +

+

How much the walls max_integrity increases per tick (5 seconds)

Proc Details

start_healing +

+

Try to start processing on the wall. +Will return early if the wall is already at max upgradable health.

+ + + diff --git a/turf/closed/wall/variable.html b/turf/closed/wall/variable.html new file mode 100644 index 0000000000000..c958b0fb06605 --- /dev/null +++ b/turf/closed/wall/variable.html @@ -0,0 +1,36 @@ + + + + + + + /turf/closed/wall/variable - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

variable + + + +

+ + +

Vars

icon_path_variantsthe different tileset paths for this turf
+

Var Details

icon_path_variants + + + + +

+

the different tileset paths for this turf

+ + + diff --git a/turf/open.html b/turf/open.html new file mode 100644 index 0000000000000..30bb04e3b1fdd --- /dev/null +++ b/turf/open.html @@ -0,0 +1,35 @@ + + + + + + + /turf/open - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

open + + + +

+ + +

Procs

get_footstep_overrideChecks if anything should override the turf's normal footstep sounds

Proc Details

get_footstep_override +

+

Checks if anything should override the turf's normal footstep sounds

+ + + diff --git a/turf/open/floor.html b/turf/open/floor.html new file mode 100644 index 0000000000000..d82cebadee796 --- /dev/null +++ b/turf/open/floor.html @@ -0,0 +1,169 @@ + + + + + + + /turf/open/floor - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

floor + + + +

+ + + + + + + + + + + + + + + + + + + + + +

Vars

breakable_tileCan this turf be broken
brokenIf the turf has been physically damaged
burnable_tilecan this turf be burnt
burntIf the turf has been damaged by fire
drytimer_idturf dry timer
floor_tilethe type of tile that makes this turf
hull_floorinvincible floor, can't interact with it
icon_variantsNumber of icon state variation this turf has
wet_overlayholder for the wet floor overlay

Procs

break_tileBreaks the turf
broken_statesReturns a list of icon_states to show this turf is broken
burn_tileBurns the turf
burnt_statesReturns a list of icon_states to show this turf is burnt
has_tilechecks if this turf has a floor tile of some kind
make_platingThings seem to rely on this actually returning plating. Override it if you have other baseturfs.
normal_statesReturns an undamaged icon state for this turf
pry_tileRemoves the floor tile from the turf via a tool
remove_tileRemoves the floor tile from the turf
spawn_tilecreates a loose floor tile
try_replace_tileswaps out an existing floor tile with another one
+

Var Details

breakable_tile + + + + +

+

Can this turf be broken

broken + + + + +

+

If the turf has been physically damaged

burnable_tile + + + + +

+

can this turf be burnt

burnt + + + + +

+

If the turf has been damaged by fire

drytimer_id + + + + +

+

turf dry timer

floor_tile + + + + +

+

the type of tile that makes this turf

hull_floor + + + + +

+

invincible floor, can't interact with it

icon_variants + + + + +

+

Number of icon state variation this turf has

wet_overlay + + + + +

+

holder for the wet floor overlay

Proc Details

break_tile +

+

Breaks the turf

broken_states +

+

Returns a list of icon_states to show this turf is broken

burn_tile +

+

Burns the turf

burnt_states +

+

Returns a list of icon_states to show this turf is burnt

has_tile +

+

checks if this turf has a floor tile of some kind

make_plating +

+

Things seem to rely on this actually returning plating. Override it if you have other baseturfs.

normal_states +

+

Returns an undamaged icon state for this turf

pry_tile +

+

Removes the floor tile from the turf via a tool

remove_tile +

+

Removes the floor tile from the turf

spawn_tile +

+

creates a loose floor tile

try_replace_tile +

+

swaps out an existing floor tile with another one

+ + + diff --git a/turf/open/floor/plating/ground/snow.html b/turf/open/floor/plating/ground/snow.html new file mode 100644 index 0000000000000..4b4d36d0f5131 --- /dev/null +++ b/turf/open/floor/plating/ground/snow.html @@ -0,0 +1,35 @@ + + + + + + + /turf/open/floor/plating/ground/snow - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

snow + + + +

+ + +

Procs

update_sidesFully update all the turfs around us

Proc Details

update_sides +

+

Fully update all the turfs around us

+ + + diff --git a/turf/open/ground.html b/turf/open/ground.html new file mode 100644 index 0000000000000..f4b204e6e5539 --- /dev/null +++ b/turf/open/ground.html @@ -0,0 +1,36 @@ + + + + + + + /turf/open/ground - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

ground + + + +

+ + +

Vars

icon_variantsNumber of icon state variation this turf has
+

Var Details

icon_variants + + + + +

+

Number of icon state variation this turf has

+ + + diff --git a/turf/open/liquid.html b/turf/open/liquid.html new file mode 100644 index 0000000000000..910b75781987d --- /dev/null +++ b/turf/open/liquid.html @@ -0,0 +1,50 @@ + + + + + + + /turf/open/liquid - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

liquid + + + +

+ + + + +

Vars

mob_liquid_depthHow far down the mob visually drops down when in water
mob_liquid_heightHow high up on the mob water overlays sit
slowdown_multiplierMultiplier on any slowdown applied to a mob moving through this turf
+

Var Details

mob_liquid_depth + + + + +

+

How far down the mob visually drops down when in water

mob_liquid_height + + + + +

+

How high up on the mob water overlays sit

slowdown_multiplier + + + + +

+

Multiplier on any slowdown applied to a mob moving through this turf

+ + + diff --git a/turf/open/liquid/lava.html b/turf/open/liquid/lava.html new file mode 100644 index 0000000000000..0b4d160b7fea0 --- /dev/null +++ b/turf/open/liquid/lava.html @@ -0,0 +1,35 @@ + + + + + + + /turf/open/liquid/lava - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

lava + + + +

+ + +

Procs

burn_stuffHandles burning turf contents or an entering AM. Returns true to keep processing

Proc Details

burn_stuff +

+

Handles burning turf contents or an entering AM. Returns true to keep processing

+ + + diff --git a/turf/open/space.html b/turf/open/space.html new file mode 100644 index 0000000000000..b08cc92214f5c --- /dev/null +++ b/turf/open/space.html @@ -0,0 +1,50 @@ + + + + + + + /turf/open/space - byond + + +
+ byond - + Modules - + Types + — Var Details - Proc Details
+
+

space + + + +

+ + + +

Vars

debuff_typeWhat type of debuff do we apply when someone walks through this tile?

Procs

InitializeSpace Initialize
+

Var Details

debuff_type + + + + +

+

What type of debuff do we apply when someone walks through this tile?

Proc Details

Initialize +

+

Space Initialize

+

Doesn't call parent, see /atom/proc/Initialize. +When adding new stuff to /atom/Initialize, /turf/Initialize, etc +don't just add it here unless space actually needs it.

+

There is a lot of work that is intentionally not done because it is not currently used. +This includes stuff like smoothing, blocking camera visibility, etc. +If you are facing some odd bug with specifically space, check if it's something that was +intentionally ommitted from this implementation.

+ + + diff --git a/turf/open/space/transit.html b/turf/open/space/transit.html new file mode 100644 index 0000000000000..6255bab2c12ca --- /dev/null +++ b/turf/open/space/transit.html @@ -0,0 +1,36 @@ + + + + + + + /turf/open/space/transit - byond + + +
+ byond - + Modules - + Types + — Var Details
+
+

transit + + + +

+ + +

Vars

available_icon_state_amountsThe number of icon state available
+

Var Details

available_icon_state_amounts + + + + +

+

The number of icon state available

+ + + diff --git a/world.html b/world.html new file mode 100644 index 0000000000000..c6518403ce16b --- /dev/null +++ b/world.html @@ -0,0 +1,165 @@ + + + + + + + /world - byond + + +
+ byond - + Modules - + Types + — Proc Details
+
+

world + + + +

+ +

Used to find the sources of harddels, quite laggy, don't be surpised if it freezes your client for a good while

+ + + + + +

Procs

ConfigLoadedRuns after config is loaded but before Master is initialized
GenesisWORLD INITIALIZATION +THIS IS THE INIT ORDER:
InitTgsInitializes TGS and loads the returned revising info into GLOB.revdata
RunUnattendedFunctionsRuns after the call to Master.Initialize, but before the delay kicks in. Used to turn the world execution into some single function then exit
_THE GENESIS CALL
get_world_state_for_loggingReturns a list of data about the world state, don't clutter

Proc Details

ConfigLoaded +

+

Runs after config is loaded but before Master is initialized

Genesis +

+

WORLD INITIALIZATION +THIS IS THE INIT ORDER:

+

BYOND =>

+ +

Now listen up because I want to make something clear: +If something is not in this list it should almost definitely be handled by a subsystem Initialize()ing +If whatever it is that needs doing doesn't fit in a subsystem you probably aren't trying hard enough tbhfam

+

GOT IT MEMORIZED?

+ +

THIS !!!SINGLE!!! PROC IS WHERE ANY FORM OF INIITIALIZATION THAT CAN'T BE PERFORMED IN MASTER/NEW() IS DONE +NOWHERE THE FUCK ELSE +I DON'T CARE HOW MANY LAYERS OF DEBUG/PROFILE/TRACE WE HAVE, YOU JUST HAVE TO DEAL WITH THIS PROC EXISTING +I'M NOT EVEN GOING TO TELL YOU WHERE IT'S CALLED FROM BECAUSE I'M DECLARING THAT FORBIDDEN KNOWLEDGE +SO HELP ME GOD IF I FIND ABSTRACTION LAYERS OVER THIS!

InitTgs +

+

Initializes TGS and loads the returned revising info into GLOB.revdata

RunUnattendedFunctions +

+

Runs after the call to Master.Initialize, but before the delay kicks in. Used to turn the world execution into some single function then exit

_ +

+

THE GENESIS CALL

+

THE VERY FIRST LINE OF DM CODE TO EXECUTE +Ong this must be done after !!!EVERYTHING!!! else +NO IFS ANDS OR BUTS +it's a hack, not an example of any sort, and DEFINITELY should NOT be emulated +IT JUST HAS TO BE LAST!!!!!! +If you want to do something in the initialization pipeline +FIRST RTFM IN /code/game/world.dm +AND THEN NEVER RETURN TO THIS PLACE

+

If you're still here, here's an explanation: +BYOND loves to tell you about its loving spouse /global +But it's actually having a sexy an affair with /static +Specifically statics in procs +Priority is given to these lines of code in REVERSE order of declaration in the .dme +Which is why this file has a funky name +So this is what we use to call world.Genesis() +It's a nameless, no-op function, because it does absolutely nothing +It exists to hold a static var which is initialized to null +It's on /world to hide it from reflection +Painful right? Good, now you share my suffering +Please lock the door on your way out

get_world_state_for_logging +

+

Returns a list of data about the world state, don't clutter

+ + +