area
A grouping of tiles into a logical space, mostly used by map editors
Vars | |
airlock_wires | Wire assignment for airlocks in this area |
---|---|
ambient_buzz | Ambient buzz of the station, plays repeatedly, also IC |
ambient_buzz_vol | The volume of the ambient buzz |
area_has_base_lighting | Whether this area has a currently active base lighting, bool |
area_limited_icon_smoothing | Typepath 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 |
delta_light | a simple check to determine whether the lights in an area should go red during delta alert |
fire | If true, that means one of any fire alarms in the area is active |
hidden | Hides area from player Teleport function. |
lighting_colour_bulb | The color of the light bulb's light in this area |
lighting_colour_tube | The color of the light tubes' light in this area |
lighting_effects | List of mutable appearances we underlay to show light In the form plane offset + 1 -> appearance to use |
lights_always_start_on | Whether the lights in this area aren't turned off when it's empty at roundstart |
map_generator | This datum, if set, allows terrain generation behavior to be ran on Initialize() |
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 |
mood_bonus | Bonus mood for being in this area |
mood_message | Mood message for being here, only shows up if mood_bonus != 0 |
noteleport | Are you forbidden from teleporting to the area? (centcom, mobs, wizard, hand teleporter) |
safe | Is the area teleport-safe: no space / radiation / aggresive mobs / other dangers |
show_on_sensors | If false, then this area will show up as gibberish on suit sensors. |
sound_environment | Used to decide what kind of reverb the area makes sound have |
static_lighting | Whether this area allows static lighting and thus loads the lighting objects |
turfs_by_zlevel | List of all turfs currently inside this area as nested lists indexed by zlevel. Acts as a filtered version of area.contents For faster lookup (area.contents is actually a filtered loop over world) Semi fragile, but it prevents stupid so I think it's worth it |
turfs_to_uncontain_by_zlevel | turfs_by_z_level can hold MASSIVE lists, so rather then adding/removing from it each time we have a problem turf We should instead store a list of turfs to REMOVE from it, then hook into a getter for it There is a risk of this and contained_turfs leaking, so a subsystem will run it down to 0 incrementally if it gets too large This uses the same nested list format as turfs_by_zlevel |
unique | If false, loading multiple maps with this area type will create multiple instances. |
xenobiology_compatible | Can the Xenobio management console transverse this area by default? |
Procs | |
AllowDrop | Causes a runtime error |
Destroy | Destroy an area and clean it up |
Entered | Call back when an atom enters an area |
Exited | Called when an atom exits an area |
Initialize | Initalize this area |
LateInitialize | Sets machine power levels in the area |
ModifyFiredoors | Try to close all the firedoors in the area |
New | Called when an area loads |
PlaceOnTopReact | A hook so areas can modify the incoming args (of what??) |
addStaticPower | Add a static amount of power load to an area |
atmosalert | Generate an atmospheric alert for this area |
burglaralert | Raise a burglar alert for this area |
cannonize_contained_turfs | Ensures that the contained_turfs list properly represents the turfs actually inside us |
cannonize_contained_turfs_by_zlevel | Ensures that the contained_turfs list properly represents the turfs actually inside us |
clear_usage | Clear all power usage in area |
close_and_lock_door | Close and lock a door passed into this proc |
create_area_lighting_objects | regenerates lighting objects for turfs in this area, primary use is VV changes |
drop_location | Causes a runtime error |
firealert | Generate an firealarm alert for this area |
firereset | Reset the firealarm alert for this area |
get_highest_zlevel | Returns the highest zlevel that this area contains turfs for |
get_original_area_name | Returns the name of an area, with the original name if the area name has been changed. |
get_turfs_by_zlevel | Returns a list with all turfs in this zlevel. |
get_turfs_from_all_zlevels | Merges a list containing all of the turfs zlevel lists from get_zlevel_turf_lists inside one list. Use get_zlevel_turf_lists() or get_turfs_by_zlevel() unless you need all the turfs in one list to avoid generating large lists |
get_zlevel_turf_lists | Returns a nested list of lists with all turfs split by zlevel. only zlevels with turfs are returned. The order of the list is not guaranteed. |
has_contained_turfs | Returns TRUE if we have contained turfs, FALSE otherwise |
on_joining_game | Called when a living mob that spawned here, joining the round, receives the player client. |
power_change | Called when the area power status changes |
poweralert | Generate a power alert for this area |
powered | Returns int 1 or 0 if the area has power for the given channel |
process | If 100 ticks has elapsed, toggle all the firedoors closed again |
reg_in_areas_in_z | Register this area as belonging to a z level |
remove_area_lighting_objects | Removes lighting objects from turfs in this area if we have them, primary use is VV changes |
set_fire_alarm_effect | Trigger the fire alarm visual affects in an area |
setup | Setup an area (with the given name) |
unset_fire_alarm_effects | unset the fire alarm visual affects in an area |
update_areasize | Set the area size of the area |
update_icon_state | Update the icon state of the area |
usage | Return the usage of power per channel |
use_power | Add a power value amount to the stored used_x variables |
Var Details
airlock_wires
Wire assignment for airlocks in this area
ambient_buzz
Ambient buzz of the station, plays repeatedly, also IC
ambient_buzz_vol
The volume of the ambient buzz
area_has_base_lighting
Whether this area has a currently active base lighting, bool
area_limited_icon_smoothing
Typepath 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
delta_light
a simple check to determine whether the lights in an area should go red during delta alert
fire
If true, that means one of any fire alarms in the area is active
hidden
Hides area from player Teleport function.
lighting_colour_bulb
The color of the light bulb's light in this area
lighting_colour_tube
The color of the light tubes' light in this area
lighting_effects
List of mutable appearances we underlay to show light In the form plane offset + 1 -> appearance to use
lights_always_start_on
Whether the lights in this area aren't turned off when it's empty at roundstart
map_generator
This datum, if set, allows terrain generation behavior to be ran on Initialize()
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
mood_bonus
Bonus mood for being in this area
mood_message
Mood message for being here, only shows up if mood_bonus != 0
noteleport
Are you forbidden from teleporting to the area? (centcom, mobs, wizard, hand teleporter)
safe
Is the area teleport-safe: no space / radiation / aggresive mobs / other dangers
show_on_sensors
If false, then this area will show up as gibberish on suit sensors.
sound_environment
Used to decide what kind of reverb the area makes sound have
static_lighting
Whether this area allows static lighting and thus loads the lighting objects
turfs_by_zlevel
List of all turfs currently inside this area as nested lists indexed by zlevel. Acts as a filtered version of area.contents For faster lookup (area.contents is actually a filtered loop over world) Semi fragile, but it prevents stupid so I think it's worth it
turfs_to_uncontain_by_zlevel
turfs_by_z_level can hold MASSIVE lists, so rather then adding/removing from it each time we have a problem turf We should instead store a list of turfs to REMOVE from it, then hook into a getter for it There is a risk of this and contained_turfs leaking, so a subsystem will run it down to 0 incrementally if it gets too large This uses the same nested list format as turfs_by_zlevel
unique
If false, loading multiple maps with this area type will create multiple instances.
xenobiology_compatible
Can the Xenobio management console transverse this area by default?
Proc Details
AllowDrop
Causes a runtime error
Destroy
Destroy an area and clean it up
Removes the area from GLOB.areas_by_type and also stops it processing on SSobj
This is despite the fact that no code appears to put it on SSobj, but who am I to argue with old coders
Entered
Call back when an atom enters an area
Sends signals COMSIG_AREA_ENTERED and COMSIG_ENTER_AREA (to the atom)
If the area has ambience, then it plays some ambience music to the ambience channel
Exited
Called when an atom exits an area
Sends signals COMSIG_AREA_EXITED and COMSIG_EXIT_AREA (to the atom)
Initialize
Initalize this area
intializes the dynamic area lighting and also registers the area with the z level via reg_in_areas_in_z
returns INITIALIZE_HINT_LATELOAD
LateInitialize
Sets machine power levels in the area
ModifyFiredoors
Try to close all the firedoors in the area
New
Called when an area loads
Adds the item to the GLOB.areas_by_type list based on area type
PlaceOnTopReact
A hook so areas can modify the incoming args (of what??)
addStaticPower
Add a static amount of power load to an area
Possible channels *AREA_USAGE_STATIC_EQUIP *AREA_USAGE_STATIC_LIGHT *AREA_USAGE_STATIC_ENVIRON
atmosalert
Generate an atmospheric alert for this area
Sends to all ai players, alert consoles, drones and alarm monitor programs in the world
burglaralert
Raise a burglar alert for this area
Close and locks all doors in the area and alerts silicon mobs of a break in
Alarm auto resets after 600 ticks
cannonize_contained_turfs
Ensures that the contained_turfs list properly represents the turfs actually inside us
cannonize_contained_turfs_by_zlevel
Ensures that the contained_turfs list properly represents the turfs actually inside us
clear_usage
Clear all power usage in area
Clears all power used for equipment, light and environment channels
close_and_lock_door
Close and lock a door passed into this proc
Does this need to exist on area? probably not
create_area_lighting_objects
regenerates lighting objects for turfs in this area, primary use is VV changes
drop_location
Causes a runtime error
firealert
Generate an firealarm alert for this area
Sends to all ai players, alert consoles, drones and alarm monitor programs in the world
Also starts the area processing on SSobj
firereset
Reset the firealarm alert for this area
resets the alert sent to all ai players, alert consoles, drones and alarm monitor programs in the world
Also cycles the icons of all firealarms and deregisters the area from processing on SSOBJ
get_highest_zlevel
Returns the highest zlevel that this area contains turfs for
get_original_area_name
Returns the name of an area, with the original name if the area name has been changed.
If an area has not been renamed, returns the area name. If it has been modified (by blueprints or other means) returns the current name, as well as the initial value, in the format of [Current Location Name (Original Name)]
get_turfs_by_zlevel
Returns a list with all turfs in this zlevel.
get_turfs_from_all_zlevels
Merges a list containing all of the turfs zlevel lists from get_zlevel_turf_lists inside one list. Use get_zlevel_turf_lists() or get_turfs_by_zlevel() unless you need all the turfs in one list to avoid generating large lists
get_zlevel_turf_lists
Returns a nested list of lists with all turfs split by zlevel. only zlevels with turfs are returned. The order of the list is not guaranteed.
has_contained_turfs
Returns TRUE if we have contained turfs, FALSE otherwise
on_joining_game
Called when a living mob that spawned here, joining the round, receives the player client.
power_change
Called when the area power status changes
Updates the area icon and calls power change on all machinees in the area
poweralert
Generate a power alert for this area
Sends to all ai players, alert consoles, drones and alarm monitor programs in the world
powered
Returns int 1 or 0 if the area has power for the given channel
evalutes a mixture of variables mappers can set, requires_power, always_unpowered and then per channel power_equip, power_light, power_environ
process
If 100 ticks has elapsed, toggle all the firedoors closed again
reg_in_areas_in_z
Register this area as belonging to a z level
Ensures the item is added to the SSmapping.areas_in_z list for this z
remove_area_lighting_objects
Removes lighting objects from turfs in this area if we have them, primary use is VV changes
set_fire_alarm_effect
Trigger the fire alarm visual affects in an area
Updates the fire light on fire alarms in the area and sets all lights to emergency mode
setup
Setup an area (with the given name)
Sets the area name, sets all status var's to false and adds the area to the sorted area list
unset_fire_alarm_effects
unset the fire alarm visual affects in an area
Updates the fire light on fire alarms in the area and sets all lights to emergency mode
update_areasize
Set the area size of the area
This is the number of open turfs in the area contents, or FALSE if the outdoors var is set
update_icon_state
Update the icon state of the area
Im not sure what the heck this does, somethign to do with weather being able to set icon states on areas?? where the heck would that even display?
usage
Return the usage of power per channel
use_power
Add a power value amount to the stored used_x variables