Merge pull request #1091 from Dahlular/cumcom

Layenia Station
This commit is contained in:
Dahlular
2021-04-29 17:49:23 -06:00
committed by GitHub
34 changed files with 9722 additions and 31 deletions
+1
View File
@@ -0,0 +1 @@
#define FORCE_MAP "_maps/layeniastation.json"
+11
View File
@@ -0,0 +1,11 @@
{
"map_name": "Layenia Station",
"map_path": "map_files/LayeniaStation",
"map_file": "LayeniaStation.dmm",
"shuttles": {
"cargo": "cargo_box",
"ferry": "ferry_fancy",
"whiteship": "whiteship_box",
"emergency": "emergency_box"
}
}
File diff suppressed because it is too large Load Diff
+30 -21
View File
@@ -1,30 +1,39 @@
"a" = (/obj/machinery/door/airlock/titanium{name = "Supply Shuttle Airlock"; req_access_txt = "31"},/obj/structure/fans/tiny,/turf/open/floor/plating,/area/shuttle/supply)
"a" = (/obj/machinery/conveyor{dir = 8; id = "QMLoad"},/obj/machinery/door/poddoor{dir = 8; id = "QMLoaddoor2"; name = "supply dock loading door"},/obj/structure/fans/tiny,/turf/open/floor/plating,/area/shuttle/supply)
"b" = (/turf/closed/wall/mineral/titanium,/area/shuttle/supply)
"c" = (/obj/machinery/door/airlock/titanium{name = "Supply Shuttle Airlock"; req_access_txt = "31"},/obj/docking_port/mobile/supply{dwidth = 5; width = 12},/obj/structure/fans/tiny,/turf/open/floor/plating,/area/shuttle/supply)
"e" = (/turf/open/floor/mineral/titanium/blue,/area/shuttle/supply)
"f" = (/obj/machinery/conveyor{dir = 4; id = "QMLoad2"},/obj/machinery/door/poddoor{id = "QMLoaddoor2"; name = "supply dock loading door"},/turf/open/floor/plating,/area/shuttle/supply)
"h" = (/obj/machinery/button/door{dir = 2; id = "QMLoaddoor2"; name = "Loading Doors"; pixel_x = 24; pixel_y = 8},/obj/machinery/button/door{id = "QMLoaddoor"; name = "Loading Doors"; pixel_x = 24; pixel_y = -8},/obj/machinery/light{dir = 4},/turf/open/floor/mineral/titanium/blue,/area/shuttle/supply)
"j" = (/obj/machinery/conveyor{dir = 8; id = "QMLoad"},/obj/machinery/door/poddoor{id = "QMLoaddoor"; name = "supply dock loading door"},/turf/open/floor/plating,/area/shuttle/supply)
"c" = (/obj/structure/fans/tiny,/obj/machinery/door/airlock/titanium{name = "Supply Shuttle Airlock"; req_access_txt = "31"},/obj/docking_port/mobile/supply{dwidth = 5; width = 12},/turf/open/floor/plating,/area/shuttle/supply)
"e" = (/obj/effect/turf_decal/stripes/line{dir = 9},/turf/open/floor/plasteel,/area/shuttle/supply)
"f" = (/obj/machinery/door/airlock/titanium{name = "Supply Shuttle Airlock"; req_access_txt = "31"},/obj/structure/fans/tiny,/turf/open/floor/plating,/area/shuttle/supply)
"h" = (/obj/machinery/light{dir = 4},/obj/effect/turf_decal/stripes/line{dir = 4},/obj/machinery/button/door{id = "QMLoaddoor2"; name = "Loading Doors"; pixel_x = 24; pixel_y = 8},/obj/machinery/button/door{id = "QMLoaddoor"; name = "Loading Doors"; pixel_x = 24; pixel_y = -8},/turf/open/floor/plasteel,/area/shuttle/supply)
"i" = (/obj/machinery/door/poddoor{dir = 8; id = "QMLoaddoor"; name = "supply dock loading door"},/obj/machinery/conveyor{dir = 4; id = "QMLoad2"},/obj/structure/fans/tiny,/turf/open/floor/plating,/area/shuttle/supply)
"l" = (/turf/closed/wall/mineral/titanium/interior,/area/shuttle/supply)
"q" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/shuttle/engine/heater,/turf/open/floor/plating/airless,/area/shuttle/supply)
"q" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/shuttle/engine/heater,/obj/effect/turf_decal/stripes/line,/turf/open/floor/plating/airless,/area/shuttle/supply)
"s" = (/turf/template_noop,/area/template_noop)
"t" = (/obj/structure/shuttle/engine/propulsion/burst/left,/turf/open/floor/plating/airless,/area/shuttle/supply)
"u" = (/obj/structure/shuttle/engine/propulsion,/turf/open/floor/plating/airless,/area/shuttle/supply)
"v" = (/obj/structure/shuttle/engine/propulsion/burst/right,/turf/open/floor/plating/airless,/area/shuttle/supply)
"w" = (/obj/machinery/light{dir = 1},/turf/open/floor/mineral/titanium/blue,/area/shuttle/supply)
"x" = (/obj/machinery/light{dir = 8},/turf/open/floor/mineral/titanium/blue,/area/shuttle/supply)
"t" = (/obj/structure/shuttle/engine/propulsion/burst/left,/obj/effect/turf_decal/stripes/line,/turf/open/floor/plating/airless,/area/shuttle/supply)
"u" = (/obj/structure/shuttle/engine/propulsion,/obj/effect/turf_decal/stripes/line,/turf/open/floor/plating/airless,/area/shuttle/supply)
"v" = (/obj/structure/shuttle/engine/propulsion/burst/right,/obj/effect/turf_decal/stripes/line,/turf/open/floor/plating/airless,/area/shuttle/supply)
"w" = (/obj/effect/turf_decal/stripes/line{dir = 1},/obj/machinery/light{dir = 1},/turf/open/floor/plasteel,/area/shuttle/supply)
"x" = (/obj/machinery/light{dir = 8},/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/shuttle/supply)
"y" = (/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plasteel,/area/shuttle/supply)
"A" = (/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/shuttle/supply)
"C" = (/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel,/area/shuttle/supply)
"D" = (/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel,/area/shuttle/supply)
"F" = (/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/shuttle/supply)
"K" = (/obj/effect/turf_decal/stripes/line{dir = 6},/turf/open/floor/plasteel,/area/shuttle/supply)
"M" = (/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/shuttle/supply)
"S" = (/obj/effect/turf_decal/stripes/line{dir = 5},/turf/open/floor/plasteel,/area/shuttle/supply)
"X" = (/obj/effect/turf_decal/stripes/line,/turf/open/floor/plasteel,/area/shuttle/supply)
(1,1,1) = {"
bbbbbbb
beeweeb
beeeeeb
beeeeef
beeeeea
bxeeehb
beeeeec
beeeeej
beeeeeb
bleeelb
beAwASb
bMFFFDb
bMFFFDa
bMFFFDf
bxFFFhb
bMFFFDc
bMFFFDi
byXXXKb
blCCClb
bbqqqbb
stuuuvs
"}
+52 -5
View File
@@ -25,6 +25,12 @@
if(SSparallax.random_layer)
C.parallax_layers_cached += new SSparallax.random_layer
C.parallax_layers_cached += new /obj/screen/parallax_layer/layer_3(null, C.view)
if(SSmapping.config?.map_name == "Layenia Station")
C.parallax_layers_cached += new /obj/screen/parallax_layer/layenia/horizon(null, C.view)
C.parallax_layers_cached += new /obj/screen/parallax_layer/layenia/clouds1(null, C.view)
C.parallax_layers_cached += new /obj/screen/parallax_layer/layenia/clouds2(null, C.view)
C.parallax_layers_cached += new /obj/screen/parallax_layer/layenia/clouds3(null, C.view)
C.parallax_layers = C.parallax_layers_cached.Copy()
@@ -66,24 +72,24 @@
switch(C.prefs.parallax)
if (PARALLAX_INSANE)
C.parallax_throttle = FALSE
C.parallax_layers_max = 5
C.parallax_layers_max = 10
return TRUE
if (PARALLAX_MED)
C.parallax_throttle = PARALLAX_DELAY_MED
C.parallax_layers_max = 3
C.parallax_layers_max = 8
return TRUE
if (PARALLAX_LOW)
C.parallax_throttle = PARALLAX_DELAY_LOW
C.parallax_layers_max = 1
C.parallax_layers_max = 7
return TRUE
if (PARALLAX_DISABLE)
return FALSE
C.parallax_throttle = PARALLAX_DELAY_DEFAULT
C.parallax_layers_max = 4
C.parallax_layers_max = 10
return TRUE
/datum/hud/proc/update_parallax_pref(mob/viewmob)
@@ -320,7 +326,7 @@
blend_mode = BLEND_OVERLAY
absolute = TRUE //Status of seperation
speed = 3
layer = 30
layer = 4
/obj/screen/parallax_layer/planet/update_status(mob/M)
var/client/C = M.client
@@ -331,3 +337,44 @@
/obj/screen/parallax_layer/planet/update_o()
return //Shit wont move
//Layenia parallaxes
/obj/screen/parallax_layer/layenia
icon_state = null
blend_mode = BLEND_OVERLAY
absolute = TRUE
speed = 0.6
layer = 5
/obj/screen/parallax_layer/layenia/horizon
icon_state = "layeniahorizon"
speed = 0.3
absolute = FALSE
/obj/screen/parallax_layer/layenia/clouds1
icon_state = "layenia1"
speed = 0.6
layer = 6
/obj/screen/parallax_layer/layenia/clouds2
icon_state = "layenia2"
speed = 1
layer = 7
/obj/screen/parallax_layer/layenia/clouds3
icon_state = "layenia3"
speed = 1.4
layer = 8
/obj/screen/parallax_layer/layenia/update_status(mob/M)
var/client/C = M.client
var/turf/posobj = get_turf(C.eye)
if(!posobj)
return
invisibility = is_station_level(posobj.z) ? 0 : INVISIBILITY_ABSTRACT
/*
/obj/screen/parallax_layer/tparallax1/update_status(mob/M)
if(SSmapping.config?.map_name != "Layenia Station")
*/
+1 -1
View File
@@ -38,7 +38,7 @@
/datum/component/chasm/proc/is_safe()
//if anything matching this typecache is found in the chasm, we don't drop things
var/static/list/chasm_safeties_typecache = typecacheof(list(/obj/structure/lattice/catwalk, /obj/structure/stone_tile))
var/static/list/chasm_safeties_typecache = typecacheof(list(/obj/structure/lattice/catwalk, /obj/structure/lattice, /obj/structure/stone_tile))
var/atom/parent = src.parent
var/list/found_safeties = typecache_filter_list(parent.contents, chasm_safeties_typecache)
@@ -0,0 +1,36 @@
/datum/weather/ash_storm/layenia //because fuck writing my own code
name = "Layenia Weather"
desc = "A subset of weather affecting Layenia"
weather_color = "white"
telegraph_message = "<span class='warning'>Thundering clouds pass overhead, swept up by a steady wind.</span>"
telegraph_duration = 300
telegraph_overlay = "light_snow"
weather_message = "<span class='boldwarning'><i>Clouds storm over the station slowly...</i></span>"
weather_duration_lower = 600
weather_duration_upper = 8200
weather_overlay = "snow_storm"
end_message = "<span class='boldannounce'>Sunlight arches over the station once more; the storm has passed.</span>"
end_duration = 300
end_overlay = "light_snow"
area_type = /area/layenia
target_trait = ZTRAIT_STATION
probability = 100
barometer_predictable = TRUE
aesthetic = TRUE
//datum/weather/layenia/telegraph()
//datum/weather/layenia/start()
//datum/weather/layenia/wind_down()
//datum/weather/layenia/end()
//datum/weather/ash_storm/layenia/weather_act
@@ -0,0 +1,931 @@
//deadass i'm sure there's a better way to do this but i dont wanna go have issues with areas acting up and i'm lazy. could probably just force gravity in the future on previous areas
//like i'm sure i can just do area/gravity and attach the flag there but like... that would require me fiddling around with the fact that some areas will shit themselves
//so for now i dig myself my own grave to lay in later. if something better comes along just fuckin delete this shitcode
//Maintenance
/area/maintenance
ambientsounds = MAINTENANCE
valid_territory = FALSE
//Departments
/area/maintenance/department/chapel/gravity
has_gravity = STANDARD_GRAVITY
/area/maintenance/department/chapel/monastery/gravity
has_gravity = STANDARD_GRAVITY
/area/maintenance/department/crew_quarters/bar/gravity
has_gravity = STANDARD_GRAVITY
/area/maintenance/department/crew_quarters/dorms/gravity
has_gravity = STANDARD_GRAVITY
/area/maintenance/department/crew_quarters/locker/gravity
has_gravity = STANDARD_GRAVITY
/area/maintenance/department/eva/gravity
has_gravity = STANDARD_GRAVITY
/area/maintenance/department/electrical/gravity
has_gravity = STANDARD_GRAVITY
/area/maintenance/department/engine/atmos/gravity
has_gravity = STANDARD_GRAVITY
/area/maintenance/department/security/gravity
has_gravity = STANDARD_GRAVITY
/area/maintenance/department/security/brig/gravity
has_gravity = STANDARD_GRAVITY
/area/maintenance/department/medical/gravity
has_gravity = STANDARD_GRAVITY
/area/maintenance/department/medical/morgue/gravity
has_gravity = STANDARD_GRAVITY
/area/maintenance/department/science/gravity
has_gravity = STANDARD_GRAVITY
/area/maintenance/department/cargo/gravity
has_gravity = STANDARD_GRAVITY
/area/maintenance/department/bridge/gravity
has_gravity = STANDARD_GRAVITY
/area/maintenance/department/engine/gravity
has_gravity = STANDARD_GRAVITY
/area/maintenance/department/science/xenobiology/gravity
has_gravity = STANDARD_GRAVITY
//Maintenance - Generic
/area/maintenance/arrivals/north/gravity
has_gravity = STANDARD_GRAVITY
/area/maintenance/arrivals/north_2/gravity
has_gravity = STANDARD_GRAVITY
/area/maintenance/aft/gravity
has_gravity = STANDARD_GRAVITY
/area/maintenance/aft/secondary/gravity
has_gravity = STANDARD_GRAVITY
/area/maintenance/central/gravity
has_gravity = STANDARD_GRAVITY
/area/maintenance/central/secondary/gravity
has_gravity = STANDARD_GRAVITY
/area/maintenance/fore/gravity
has_gravity = STANDARD_GRAVITY
/area/maintenance/fore/secondary/gravity
has_gravity = STANDARD_GRAVITY
/area/maintenance/starboard/gravity
has_gravity = STANDARD_GRAVITY
/area/maintenance/starboard/central/gravity
has_gravity = STANDARD_GRAVITY
/area/maintenance/starboard/aft/gravity
has_gravity = STANDARD_GRAVITY
/area/maintenance/starboard/fore/gravity
has_gravity = STANDARD_GRAVITY
/area/maintenance/port/gravity
has_gravity = STANDARD_GRAVITY
/area/maintenance/port/central/gravity
has_gravity = STANDARD_GRAVITY
/area/maintenance/port/aft/gravity
has_gravity = STANDARD_GRAVITY
/area/maintenance/port/fore/gravity
has_gravity = STANDARD_GRAVITY
/area/maintenance/disposal/gravity
has_gravity = STANDARD_GRAVITY
/area/maintenance/disposal/incinerator/gravity
has_gravity = STANDARD_GRAVITY
//Hallway
/area/hallway/primary/aft/gravity
has_gravity = STANDARD_GRAVITY
/area/hallway/primary/fore/gravity
has_gravity = STANDARD_GRAVITY
/area/hallway/primary/starboard/gravity
has_gravity = STANDARD_GRAVITY
/area/hallway/primary/starboard/aft/gravity
has_gravity = STANDARD_GRAVITY
/area/hallway/primary/starboard/fore/gravity
has_gravity = STANDARD_GRAVITY
/area/hallway/primary/port/gravity
has_gravity = STANDARD_GRAVITY
/area/hallway/primary/port/aft/gravity
has_gravity = STANDARD_GRAVITY
/area/hallway/primary/port/fore/gravity
has_gravity = STANDARD_GRAVITY
/area/hallway/primary/central/gravity
has_gravity = STANDARD_GRAVITY
/area/hallway/secondary/command/gravity
has_gravity = STANDARD_GRAVITY
/area/hallway/secondary/construction/gravity
has_gravity = STANDARD_GRAVITY
/area/hallway/secondary/exit/gravity
has_gravity = STANDARD_GRAVITY
/area/hallway/secondary/exit/departure_lounge/gravity
has_gravity = STANDARD_GRAVITY
/area/hallway/secondary/entry/gravity
has_gravity = STANDARD_GRAVITY
/area/hallway/secondary/service/gravity
has_gravity = STANDARD_GRAVITY
//Command
/area/bridge/gravity
has_gravity = STANDARD_GRAVITY
/area/bridge/meeting_room/gravity
has_gravity = STANDARD_GRAVITY
/area/bridge/meeting_room/council/gravity
has_gravity = STANDARD_GRAVITY
/area/bridge/showroom/corporate/gravity
has_gravity = STANDARD_GRAVITY
/area/crew_quarters/heads/captain/gravity
has_gravity = STANDARD_GRAVITY
/area/crew_quarters/heads/captain/private/gravity
has_gravity = STANDARD_GRAVITY
/area/crew_quarters/heads/chief/gravity
has_gravity = STANDARD_GRAVITY
/area/crew_quarters/heads/chief/private/gravity
has_gravity = STANDARD_GRAVITY
/area/crew_quarters/heads/cmo/gravity
has_gravity = STANDARD_GRAVITY
/area/crew_quarters/heads/cmo/private/gravity
has_gravity = STANDARD_GRAVITY
/area/crew_quarters/heads/hop/gravity
has_gravity = STANDARD_GRAVITY
/area/crew_quarters/heads/hop/private/gravity
has_gravity = STANDARD_GRAVITY
/area/crew_quarters/heads/hos/gravity
has_gravity = STANDARD_GRAVITY
/area/crew_quarters/heads/hos/private/gravity
has_gravity = STANDARD_GRAVITY
/area/crew_quarters/heads/hor/gravity
has_gravity = STANDARD_GRAVITY
/area/crew_quarters/heads/hor/private/gravity
has_gravity = STANDARD_GRAVITY
/area/comms/gravity
has_gravity = STANDARD_GRAVITY
/area/server/gravity
has_gravity = STANDARD_GRAVITY
//Crew
/area/crew_quarters/dorms/gravity
has_gravity = STANDARD_GRAVITY
/*
/area/crew_quarters/dorms/male
/area/crew_quarters/dorms/female
*/ // the fuck is the point of gender dorms? the fuck?
/area/crew_quarters/rehab_dome/gravity
has_gravity = STANDARD_GRAVITY
/area/crew_quarters/toilet/gravity //weightful shits
has_gravity = STANDARD_GRAVITY
/area/crew_quarters/toilet/auxiliary/gravity
has_gravity = STANDARD_GRAVITY
/area/crew_quarters/toilet/locker/gravity
has_gravity = STANDARD_GRAVITY
/area/crew_quarters/toilet/fitness/gravity
has_gravity = STANDARD_GRAVITY
/*
/area/crew_quarters/toilet/female
name = "Female Toilets"
icon_state = "toilet"
/area/crew_quarters/toilet/male
name = "Male Toilets"
icon_state = "toilet"
*/ // dont think these will be used on hyper
/area/crew_quarters/toilet/restrooms/gravity
has_gravity = STANDARD_GRAVITY
/area/crew_quarters/locker/gravity
has_gravity = STANDARD_GRAVITY
/area/crew_quarters/lounge/gravity
has_gravity = STANDARD_GRAVITY
/area/crew_quarters/fitness/gravity
has_gravity = STANDARD_GRAVITY
/area/crew_quarters/fitness/recreation/gravity
has_gravity = STANDARD_GRAVITY
/area/crew_quarters/cafeteria/gravity
has_gravity = STANDARD_GRAVITY
/area/crew_quarters/cafeteria/lunchroom/gravity
has_gravity = STANDARD_GRAVITY
/area/crew_quarters/kitchen/gravity
has_gravity = STANDARD_GRAVITY
/area/crew_quarters/kitchen/backroom/gravity
has_gravity = STANDARD_GRAVITY
/area/crew_quarters/bar/gravity
has_gravity = STANDARD_GRAVITY
/area/crew_quarters/bar/atrium/gravity
has_gravity = STANDARD_GRAVITY
/area/crew_quarters/electronic_marketing_den/gravity
has_gravity = STANDARD_GRAVITY
/area/crew_quarters/abandoned_gambling_den/gravity
has_gravity = STANDARD_GRAVITY
/area/crew_quarters/abandoned_gambling_den/secondary/gravity
has_gravity = STANDARD_GRAVITY
/area/crew_quarters/theatre/gravity
has_gravity = STANDARD_GRAVITY
/area/crew_quarters/theatre/abandoned/gravity
has_gravity = STANDARD_GRAVITY
/area/library/gravity //may you find your book in this place
has_gravity = STANDARD_GRAVITY
/area/library/lounge/gravity
has_gravity = STANDARD_GRAVITY
/area/library/abandoned/gravity
has_gravity = STANDARD_GRAVITY
/area/chapel/gravity
has_gravity = STANDARD_GRAVITY
/area/chapel/main/gravity
has_gravity = STANDARD_GRAVITY
/area/chapel/main/monastery/gravity
has_gravity = STANDARD_GRAVITY
/area/chapel/office/gravity
has_gravity = STANDARD_GRAVITY
/area/chapel/asteroid/gravity
has_gravity = STANDARD_GRAVITY
/area/chapel/asteroid/monastery/gravity
has_gravity = STANDARD_GRAVITY
/area/chapel/dock/gravity
has_gravity = STANDARD_GRAVITY
/area/lawoffice/gravity
has_gravity = STANDARD_GRAVITY
/area/arcade
icon_state = "xenogen"
has_gravity = STANDARD_GRAVITY
//Engineering
/area/engine/gravity
has_gravity = STANDARD_GRAVITY
/area/engine/engine_smes/gravity
has_gravity = STANDARD_GRAVITY
/area/engine/engineering/gravity
has_gravity = STANDARD_GRAVITY
/area/engine/atmos/gravity
has_gravity = STANDARD_GRAVITY
/area/engine/atmospherics_engine/gravity
has_gravity = STANDARD_GRAVITY
/area/engine/supermatter/gravity
has_gravity = STANDARD_GRAVITY
/area/engine/break_room/gravity
has_gravity = STANDARD_GRAVITY
/area/engine/gravity_generator/gravity
has_gravity = STANDARD_GRAVITY
/area/engine/secure_construction/gravity
has_gravity = STANDARD_GRAVITY
/area/engine/storage/gravity
has_gravity = STANDARD_GRAVITY
/area/engine/storage_shared/gravity
has_gravity = STANDARD_GRAVITY
/area/engine/transit_tube/gravity
has_gravity = STANDARD_GRAVITY
//Solars
/area/solar/gravity
has_gravity = STANDARD_GRAVITY
/area/solar/fore/gravity
has_gravity = STANDARD_GRAVITY
/area/solar/aft/gravity
has_gravity = STANDARD_GRAVITY
/area/solar/aux/port/gravity
has_gravity = STANDARD_GRAVITY
/area/solar/aux/starboard/gravity
has_gravity = STANDARD_GRAVITY
/area/solar/starboard/gravity
has_gravity = STANDARD_GRAVITY
/area/solar/starboard/aft/gravity
has_gravity = STANDARD_GRAVITY
/area/solar/starboard/fore/gravity
has_gravity = STANDARD_GRAVITY
/area/solar/port/gravity
has_gravity = STANDARD_GRAVITY
/area/solar/port/aft/gravity
has_gravity = STANDARD_GRAVITY
/area/solar/port/fore/gravity
has_gravity = STANDARD_GRAVITY
//Solar Maint
/area/maintenance/solars/gravity
has_gravity = STANDARD_GRAVITY
/area/maintenance/solars/port/gravity
has_gravity = STANDARD_GRAVITY
/area/maintenance/solars/port/aft/gravity
has_gravity = STANDARD_GRAVITY
/area/maintenance/solars/port/fore/gravity
has_gravity = STANDARD_GRAVITY
/area/maintenance/solars/starboard/gravity
has_gravity = STANDARD_GRAVITY
/area/maintenance/solars/starboard/aft/gravity
has_gravity = STANDARD_GRAVITY
/area/maintenance/solars/starboard/fore/gravity
has_gravity = STANDARD_GRAVITY
/area/maintenance/solars/aux/port/gravity
has_gravity = STANDARD_GRAVITY
/area/maintenance/solars/aux/port/aft/gravity
has_gravity = STANDARD_GRAVITY
/area/maintenance/solars/aux/port/fore/gravity
has_gravity = STANDARD_GRAVITY
/area/maintenance/solars/aux/starboard/gravity
has_gravity = STANDARD_GRAVITY
/area/maintenance/solars/aux/starboard/aft/gravity
has_gravity = STANDARD_GRAVITY
/area/maintenance/solars/aux/starboard/fore/gravity
has_gravity = STANDARD_GRAVITY
//Teleporter
/area/teleporter/gravity
has_gravity = STANDARD_GRAVITY
/area/gateway/gravity
has_gravity = STANDARD_GRAVITY
//MedBay
/area/medical/gravity
has_gravity = STANDARD_GRAVITY
/area/medical/abandoned/gravity
has_gravity = STANDARD_GRAVITY
/area/medical/medbay/central/gravity
has_gravity = STANDARD_GRAVITY
/area/medical/medbay/front_office/gravity
has_gravity = STANDARD_GRAVITY
/area/medical/medbay/lobby/gravity
has_gravity = STANDARD_GRAVITY
//Medbay is a large area, these additional areas help level out APC load.
/area/medical/medbay/zone2/gravity
has_gravity = STANDARD_GRAVITY
/area/medical/medbay/zone3/gravity
has_gravity = STANDARD_GRAVITY
/area/medical/medbay/aft/gravity
has_gravity = STANDARD_GRAVITY
/area/medical/storage/gravity
has_gravity = STANDARD_GRAVITY
/area/medical/patients_rooms/gravity
has_gravity = STANDARD_GRAVITY
/area/medical/patients_rooms/room_a/gravity
has_gravity = STANDARD_GRAVITY
/area/medical/patients_rooms/room_b/gravity
has_gravity = STANDARD_GRAVITY
/area/medical/virology/gravity
has_gravity = STANDARD_GRAVITY
/area/medical/morgue/gravity
has_gravity = STANDARD_GRAVITY
/area/medical/chemistry/gravity
has_gravity = STANDARD_GRAVITY
/area/medical/psych/gravity
has_gravity = STANDARD_GRAVITY
/area/medical/surgery/gravity
has_gravity = STANDARD_GRAVITY
/area/medical/cryo/gravity
has_gravity = STANDARD_GRAVITY
/area/medical/exam_room/gravity
has_gravity = STANDARD_GRAVITY
/area/medical/genetics/gravity
has_gravity = STANDARD_GRAVITY
/area/medical/genetics/cloning/gravity
has_gravity = STANDARD_GRAVITY
/area/medical/sleeper/gravity
has_gravity = STANDARD_GRAVITY
//Security
/area/security/gravity
has_gravity = STANDARD_GRAVITY
/area/security/main/gravity
has_gravity = STANDARD_GRAVITY
/area/security/brig/gravity
has_gravity = STANDARD_GRAVITY
/area/security/courtroom/gravity
has_gravity = STANDARD_GRAVITY
/area/security/prison/gravity
has_gravity = STANDARD_GRAVITY
/area/security/processing/gravity
has_gravity = STANDARD_GRAVITY
/area/security/processing/cremation/gravity
has_gravity = STANDARD_GRAVITY
/area/security/warden/gravity
has_gravity = STANDARD_GRAVITY
/area/security/armory/gravity
has_gravity = STANDARD_GRAVITY
/area/security/detectives_office/gravity
has_gravity = STANDARD_GRAVITY
/area/security/detectives_office/private_investigators_office/gravity
has_gravity = STANDARD_GRAVITY
/area/security/range/gravity
has_gravity = STANDARD_GRAVITY
/area/security/execution/gravity
has_gravity = STANDARD_GRAVITY
/area/security/execution/transfer/gravity
has_gravity = STANDARD_GRAVITY
/area/security/execution/education/gravity
has_gravity = STANDARD_GRAVITY
/area/security/nuke_storage/gravity
has_gravity = STANDARD_GRAVITY
/area/ai_monitored/nuke_storage/gravity
has_gravity = STANDARD_GRAVITY
/area/security/checkpoint/gravity
has_gravity = STANDARD_GRAVITY
/area/security/checkpoint/auxiliary/gravity
has_gravity = STANDARD_GRAVITY
/area/security/checkpoint/tertiary/gravity
has_gravity = STANDARD_GRAVITY
/area/security/checkpoint/escape/gravity
has_gravity = STANDARD_GRAVITY
/area/security/checkpoint/supply/gravity
has_gravity = STANDARD_GRAVITY
/area/security/checkpoint/engineering/gravity
has_gravity = STANDARD_GRAVITY
/area/security/checkpoint/medical/gravity
has_gravity = STANDARD_GRAVITY
/area/security/checkpoint/science/gravity
has_gravity = STANDARD_GRAVITY
/area/security/checkpoint/science/research/gravity
has_gravity = STANDARD_GRAVITY
/area/security/checkpoint/customs/gravity
has_gravity = STANDARD_GRAVITY
/area/security/checkpoint/customs/auxiliary/gravity
has_gravity = STANDARD_GRAVITY
/area/security/vacantoffice/gravity
has_gravity = STANDARD_GRAVITY
/area/security/vacantoffice/a/gravity
has_gravity = STANDARD_GRAVITY
/area/security/vacantoffice/b/gravity
has_gravity = STANDARD_GRAVITY
/area/quartermaster/gravity
has_gravity = STANDARD_GRAVITY
///////////WORK IN PROGRESS//////////
/area/quartermaster/sorting/gravity
has_gravity = STANDARD_GRAVITY
/area/quartermaster/warehouse/gravity
has_gravity = STANDARD_GRAVITY
////////////WORK IN PROGRESS//////////
/area/quartermaster/office/gravity
has_gravity = STANDARD_GRAVITY
/area/quartermaster/storage/gravity
has_gravity = STANDARD_GRAVITY
/area/quartermaster/qm/gravity
has_gravity = STANDARD_GRAVITY
/area/quartermaster/qm/private/gravity
has_gravity = STANDARD_GRAVITY
/area/quartermaster/miningdock/gravity
has_gravity = STANDARD_GRAVITY
/area/quartermaster/miningdock/abandoned/gravity
has_gravity = STANDARD_GRAVITY
/area/quartermaster/miningoffice/gravity
has_gravity = STANDARD_GRAVITY
/area/quartermaster/miningstorage/gravity
has_gravity = STANDARD_GRAVITY
/area/janitor/gravity
has_gravity = STANDARD_GRAVITY
/area/hydroponics/gravity
has_gravity = STANDARD_GRAVITY
/area/hydroponics/garden/gravity
has_gravity = STANDARD_GRAVITY
/area/hydroponics/garden/abandoned/gravity
has_gravity = STANDARD_GRAVITY
/area/hydroponics/garden/monastery/gravity
has_gravity = STANDARD_GRAVITY
//Science
/area/science/gravity
has_gravity = STANDARD_GRAVITY
/area/science/lab/gravity
has_gravity = STANDARD_GRAVITY
/area/science/xenobiology/gravity
has_gravity = STANDARD_GRAVITY
/area/science/storage/gravity
has_gravity = STANDARD_GRAVITY
/area/science/mineral_storeroom/gravity
has_gravity = STANDARD_GRAVITY
/area/science/test_area/gravity
has_gravity = STANDARD_GRAVITY
/area/science/mixing/gravity
has_gravity = STANDARD_GRAVITY
/area/science/mixing/chamber/gravity
has_gravity = STANDARD_GRAVITY
/area/science/misc_lab/gravity
has_gravity = STANDARD_GRAVITY
/area/science/misc_lab/range/gravity
has_gravity = STANDARD_GRAVITY
/area/science/server/gravity
has_gravity = STANDARD_GRAVITY
/area/science/explab/gravity
has_gravity = STANDARD_GRAVITY
/area/science/robotics/gravity
has_gravity = STANDARD_GRAVITY
/area/science/robotics/mechbay/gravity
has_gravity = STANDARD_GRAVITY
/area/science/robotics/mechbay_cargo/gravity
has_gravity = STANDARD_GRAVITY
/area/science/robotics/showroom/gravity
has_gravity = STANDARD_GRAVITY
/area/science/robotics/lab/gravity
has_gravity = STANDARD_GRAVITY
/area/science/research/gravity
has_gravity = STANDARD_GRAVITY
/area/science/circuit/gravity
has_gravity = STANDARD_GRAVITY
/area/science/research/lobby/gravity
has_gravity = STANDARD_GRAVITY
/area/science/research/abandoned/gravity
has_gravity = STANDARD_GRAVITY
/area/science/nanite/gravity
has_gravity = STANDARD_GRAVITY
//Storage
/area/storage/tools/gravity
has_gravity = STANDARD_GRAVITY
/area/storage/primary/gravity
has_gravity = STANDARD_GRAVITY
/area/storage/autolathe/gravity
has_gravity = STANDARD_GRAVITY
/area/storage/art/gravity
has_gravity = STANDARD_GRAVITY
/area/storage/auxiliary/gravity
has_gravity = STANDARD_GRAVITY
/area/storage/atmos/gravity
has_gravity = STANDARD_GRAVITY
/area/storage/tcom/gravity
has_gravity = STANDARD_GRAVITY
/area/storage/eva/gravity
has_gravity = STANDARD_GRAVITY
/area/storage/secure/gravity
has_gravity = STANDARD_GRAVITY
/area/storage/emergency/starboard/gravity
has_gravity = STANDARD_GRAVITY
/area/storage/emergency/port/gravity
has_gravity = STANDARD_GRAVITY
/area/storage/tech/gravity
has_gravity = STANDARD_GRAVITY
/area/storage/testroom/gravity
has_gravity = STANDARD_GRAVITY
//Construction
/area/construction/gravity
has_gravity = STANDARD_GRAVITY
/area/construction/minisat_exterior/gravity
has_gravity = STANDARD_GRAVITY
/area/construction/mining/aux_base/gravity
has_gravity = STANDARD_GRAVITY
/area/construction/mining/aux_base/closet/gravity
has_gravity = STANDARD_GRAVITY
/area/construction/supplyshuttle/gravity
has_gravity = STANDARD_GRAVITY
/area/construction/quarters/gravity
has_gravity = STANDARD_GRAVITY
/area/construction/qmaint/gravity
has_gravity = STANDARD_GRAVITY
/area/construction/hallway/gravity
has_gravity = STANDARD_GRAVITY
/area/construction/solars/gravity
has_gravity = STANDARD_GRAVITY
/area/construction/solarscontrol/gravity
has_gravity = STANDARD_GRAVITY
/area/construction/storage/gravity
has_gravity = STANDARD_GRAVITY
/area/construction/storage/wing/gravity
has_gravity = STANDARD_GRAVITY
//AI
/area/ai_monitored/security/armory/gravity
has_gravity = STANDARD_GRAVITY
/area/ai_monitored/storage/eva/gravity
has_gravity = STANDARD_GRAVITY
/area/ai_monitored/storage/satellite/gravity
has_gravity = STANDARD_GRAVITY
//Turret_protected
/area/ai_monitored/turret_protected/gravity
has_gravity = STANDARD_GRAVITY
/area/ai_monitored/turret_protected/ai_upload/gravity
has_gravity = STANDARD_GRAVITY
/area/ai_monitored/turret_protected/ai_upload_foyer/gravity
has_gravity = STANDARD_GRAVITY
/area/ai_monitored/turret_protected/ai/gravity
has_gravity = STANDARD_GRAVITY
/area/ai_monitored/turret_protected/aisat/gravity
has_gravity = STANDARD_GRAVITY
/area/ai_monitored/turret_protected/aisat/atmos/gravity
has_gravity = STANDARD_GRAVITY
/area/ai_monitored/turret_protected/aisat/foyer/gravity
has_gravity = STANDARD_GRAVITY
/area/ai_monitored/turret_protected/aisat/service/gravity
has_gravity = STANDARD_GRAVITY
/area/ai_monitored/turret_protected/aisat/hallway/gravity
has_gravity = STANDARD_GRAVITY
/area/aisat/gravity
has_gravity = STANDARD_GRAVITY
/area/ai_monitored/turret_protected/aisat_interior/gravity
has_gravity = STANDARD_GRAVITY
/area/ai_monitored/turret_protected/AIsatextFP/gravity
has_gravity = STANDARD_GRAVITY
/area/ai_monitored/turret_protected/AIsatextFS/gravity
has_gravity = STANDARD_GRAVITY
/area/ai_monitored/turret_protected/AIsatextAS/gravity
has_gravity = STANDARD_GRAVITY
/area/ai_monitored/turret_protected/AIsatextAP/gravity
has_gravity = STANDARD_GRAVITY
// Telecommunications Satellite
/area/tcommsat/gravity
has_gravity = STANDARD_GRAVITY
/area/tcommsat/entrance/gravity
has_gravity = STANDARD_GRAVITY
/area/tcommsat/chamber/gravity
has_gravity = STANDARD_GRAVITY
/area/ai_monitored/turret_protected/tcomsat/gravity
has_gravity = STANDARD_GRAVITY
/area/ai_monitored/turret_protected/tcomfoyer/gravity
has_gravity = STANDARD_GRAVITY
/area/ai_monitored/turret_protected/tcomwest/gravity
has_gravity = STANDARD_GRAVITY
/area/ai_monitored/turret_protected/tcomeast/gravity
has_gravity = STANDARD_GRAVITY
/area/tcommsat/computer/gravity
has_gravity = STANDARD_GRAVITY
/area/tcommsat/server/gravity
has_gravity = STANDARD_GRAVITY
/area/tcommsat/lounge/gravity
has_gravity = STANDARD_GRAVITY
//Pool
/area/crew_quarters/fitness/pool/gravity
has_gravity = STANDARD_GRAVITY
+29
View File
@@ -0,0 +1,29 @@
area/layenia
name = "Layenia"
icon_state = "mining"
has_gravity = STANDARD_GRAVITY
blob_allowed = FALSE
requires_power = TRUE
outdoors = TRUE
dynamic_lighting = DYNAMIC_LIGHTING_DISABLED
ambientsounds = MINING
atmos = FALSE
flags_1 = NONE
area/layenia/cloudlayer
name = "Laneya clouds"
icon_state = "space"
dynamic_lighting = DYNAMIC_LIGHTING_DISABLED
atmos = FALSE
area/layenia/powered
name = "Layenia Powered"
icon_state = "centcom"
requires_power = FALSE
has_gravity = STANDARD_GRAVITY
noteleport = FALSE
blob_allowed = TRUE
flags_1 = NONE
outdoors = FALSE
dynamic_lighting = DYNAMIC_LIGHTING_FORCED
atmos = FALSE
+57
View File
@@ -656,3 +656,60 @@
if(islist(icon_states && icon_states.len))
icon_state = pick(icon_states)
/obj/structure/flora/crystal
name = "crystal"
desc = "You shouldnt see this!"
gender = PLURAL //trans rights
max_integrity = 30
/obj/structure/flora/crystal/small
name = "small crystals"
icon = 'icons/obj/flora/layeniasmall.dmi'
light_range = 2
light_power = 0.25
light_color = LIGHT_COLOR_BLUE
//Small crystal clusters
/obj/structure/flora/crystal/small/pile
name = "small crystals"
desc = "A pile of small crystals"
icon_state = "crystals"
/obj/structure/flora/crystal/small/pile/Initialize()
if(icon_state == "crystals")
icon_state = "crystals[rand(1, 4)]"
. = ..()
//Small crystal growths
/obj/structure/flora/crystal/small/growth
name = "small crystals"
desc = "A growth of small crystals"
icon_state = "crystalgrowth"
/obj/structure/flora/crystal/small/growth/Initialize()
if(icon_state == "crystalgrowth")
icon_state = "crystalgrowth[rand(1, 4)]"
. = ..()
/obj/structure/flora/crystal/medium
name = "small crystals"
icon = 'icons/obj/flora/layeniamedium.dmi'
pixel_x = -16
pixel_y = -3
layer = ABOVE_ALL_MOB_LAYER
light_range = 4
light_power = 0.75
light_color = LIGHT_COLOR_BLUE
//Medium crystal growths
/obj/structure/flora/crystal/medium/growth
name = "small crystals"
desc = "A growth of medium crystals"
icon_state = "crystalgrowth"
/obj/structure/flora/crystal/medium/growth/Initialize()
if(icon_state == "crystalgrowth")
icon_state = "crystalgrowth[rand(1, 3)]"
. = ..()
+2
View File
@@ -15,7 +15,9 @@
/turf/closed/wall,
/obj/structure/falsewall)
smooth = SMOOTH_MORE
obj_flags = BLOCK_Z_FALL
// flags = CONDUCT_1
//planetary_atmos = TRUE
/obj/structure/lattice/examine(mob/user)
. = ..()
+34
View File
@@ -74,6 +74,19 @@
if(istype(AM))
playsound(src,sound,50,1)
/turf/open/indestructible/concrete
name = "concrete"
icon = 'icons/turf/floors.dmi'
icon_state = "concrete"
baseturfs = /turf/open/floor/plating/asteroid/layenia
initial_gas_mix = FROZEN_ATMOS
planetary_atmos = TRUE
/turf/open/indestructible/concrete/smooth
icon_state = "concrete2"
initial_gas_mix = FROZEN_ATMOS
planetary_atmos = TRUE
/turf/open/indestructible/cobble/side
icon_state = "cobble_side"
@@ -92,6 +105,27 @@
heavyfootstep = FOOTSTEP_GENERIC_HEAVY
tiled_dirt = FALSE
/turf/open/indestructible/layenia/crystal
name = "Lattice Crystal"
desc = "A glowing azure crystal, with strange properties to make things float."
icon = 'icons/turf/floors/crystal_floor.dmi'
baseturfs = /turf/open/indestructible/layenia/crystal
slowdown = 1
light_range = 4
light_power = 0.5
barefootstep = FOOTSTEP_HARD_BAREFOOT
clawfootstep = FOOTSTEP_HARD_CLAW
heavyfootstep = FOOTSTEP_GENERIC_HEAVY
light_color = LIGHT_COLOR_BLUE
initial_gas_mix = FROZEN_ATMOS
planetary_atmos = TRUE
smooth = SMOOTH_TRUE | SMOOTH_BORDER | SMOOTH_MORE
canSmoothWith = list(/turf/open/indestructible/layenia/crystal)
/turf/open/indestructible/layenia/crystal/garden
initial_gas_mix = OPENTURF_DEFAULT_ATMOS
planetary_atmos = TRUE
/turf/open/indestructible/necropolis
name = "necropolis floor"
desc = "It's regarding you suspiciously."
+22
View File
@@ -115,3 +115,25 @@
var/turf/T = safepick(get_area_turfs(/area/fabric_of_reality))
if(T)
set_target(T)
/turf/open/chasm/cloud
name = "clouds"
gender = PLURAL
desc = "Clouds as far as the eye can see... Watch your step."
icon = 'icons/turf/space.dmi'
icon_state = "0"
plane = PLANE_SPACE
tiled_dirt = FALSE
baseturfs = /turf/open/chasm/cloud
smooth = SMOOTH_FALSE
initial_gas_mix = FROZEN_ATMOS
/turf/open/chasm/cloud/Initialize()
. = ..()
icon_state = SPACE_ICON_STATE
/turf/open/chasm/cloud/get_smooth_underlay_icon(mutable_appearance/underlay_appearance, turf/asking_turf, adjacency_dir)
underlay_appearance.icon = 'icons/turf/space.dmi'
underlay_appearance.icon_state = SPACE_ICON_STATE
underlay_appearance.plane = PLANE_SPACE
return TRUE
@@ -363,3 +363,43 @@
/turf/open/floor/plating/asteroid/snow/atmosphere
initial_gas_mix = FROZEN_ATMOS
planetary_atmos = FALSE
//Layenia stuff
/turf/open/floor/plating/asteroid/layenia
gender = PLURAL //trans rights
name = "crimson Rock"
desc = "A cold rock, rusted scarlet in color."
icon = 'icons/turf/floors.dmi'
baseturfs = /turf/open/floor/plating/asteroid/layenia
icon_state = "layenia"
icon_plating = "layenia"
initial_gas_mix = FROZEN_ATMOS
slowdown = 1
environment_type = "layenia"
flags_1 = NONE
planetary_atmos = TRUE
burnt_states = null
bullet_sizzle = TRUE
bullet_bounce_sound = null
digResult = /obj/item/stack/ore/glass/basalt
//light_range = 2
//light_power = 0.15
//light_color = LIGHT_COLOR_WHITE
/turf/open/floor/plating/asteroid/layenia/Initialize()
if(prob(50))
icon_state = "layenia[rand(0,4)]"
/turf/open/floor/plating/asteroid/layenia/garden
initial_gas_mix = OPENTURF_DEFAULT_ATMOS
planetary_atmos = TRUE
/turf/open/floor/plating/asteroid/layenia/Initialize()
. = ..()
set_layenia_light(src)
/proc/set_layenia_light(turf/open/floor/B)
switch(B.icon_state)
if("layenia3", "layenia4")
B.set_light(2, 0.6, LIGHT_COLOR_BLUE) //more light
@@ -240,5 +240,3 @@
/turf/open/floor/plating/snowed/temperatre
temperature = 255.37
+13 -1
View File
@@ -522,4 +522,16 @@
turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface
baseturfs = /turf/open/floor/plating/asteroid/basalt/lava_land_surface
initial_gas_mix = LAVALAND_DEFAULT_ATMOS
defer_change = 1
defer_change = 1
/turf/closed/mineral/layenia
name = "Crimson rock"
icon = 'icons/turf/mining.dmi'
icon_state = "layenia"
smooth = SMOOTH_MORE|SMOOTH_BORDER
smooth_icon = 'icons/turf/layeniarocks.dmi'
canSmoothWith = null
baseturfs = /turf/open/floor/plating/asteroid/layenia
initial_gas_mix = FROZEN_ATMOS
environment_type = "layenia"
turf_type = /turf/open/floor/plating/asteroid/layenia
+1
View File
@@ -5,6 +5,7 @@
min_players = 5 //increased min players from 2 to 5 to reduce chances of half the crew dying in a carp breach
earliest_start = 10 MINUTES
max_occurrences = 6
map_blacklist = list("LayeniaStation.dmm")
/datum/round_event/carp_migration
announceWhen = 3
+1
View File
@@ -3,6 +3,7 @@
typepath = /datum/round_event/meteor_wave/meaty
weight = 2
max_occurrences = 1
map_blacklist = list("LayeniaStation.dmm")
/datum/round_event/meteor_wave/meaty
wave_name = "meaty"
+1
View File
@@ -10,6 +10,7 @@
min_players = 20
max_occurrences = 3
earliest_start = 25 MINUTES
map_blacklist = list("LayeniaStation.dmm")
/datum/round_event/meteor_wave
startWhen = 6
+1
View File
@@ -4,6 +4,7 @@
max_occurrences = 3
weight = 2
min_players = 2
map_blacklist = list("LayeniaStation.dmm")
/datum/round_event/wormholes
@@ -64,6 +64,14 @@
name = "asteroid snow baseturf editor"
baseturf = /turf/open/floor/plating/asteroid/snow
/obj/effect/baseturf_helper/asteroid/layenia
name = "layenia baseturf editor"
baseturf = /turf/open/floor/plating/asteroid/layenia
/obj/effect/baseturf_helper/cloud
name = "cloud baseturf editor"
baseturf = /turf/open/chasm/cloud
/obj/effect/baseturf_helper/beach/sand
name = "beach sand baseturf editor"
baseturf = /turf/open/floor/plating/beach/sand
+108
View File
@@ -0,0 +1,108 @@
//ported from virgo
/obj/structure/railing
name = "railing"
desc = "A railing to stop people from falling"
icon = 'hyperstation/icons/obj/railings.dmi'
var/icon_modifier = "grey_"
icon_state = "grey_railing0"
density = TRUE
layer = 4
anchored = TRUE
flags_1 = ON_BORDER_1
max_integrity = 250
var/heat_resistance = 800
resistance_flags = ACID_PROOF
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 80, "acid" = 100)
CanAtmosPass = ATMOS_PASS_PROC
var/real_explosion_block //ignore this, just use explosion_block
var/breaksound = "shatter"
var/hitsound = 'sound/effects/Glasshit.ogg'
rad_insulation = RAD_VERY_LIGHT_INSULATION
rad_flags = RAD_PROTECT_CONTENTS
var/check = 0
/obj/structure/railing/CanPass(atom/movable/mover, turf/target)
if(istype(mover) && (mover.pass_flags & PASSGLASS))
return 1
if(get_dir(loc, target) == dir)
return !density
return 1
/obj/structure/railing/CheckExit(atom/movable/O, turf/target)
if(istype(O) && (O.pass_flags & PASSGLASS))
return 1
if(get_dir(O.loc, target) == dir)
return 0
return 1
/obj/structure/railing/Initialize()
. = ..()
if(src.anchored)
update_icon(0)
/obj/structure/railing/proc/NeighborsCheck(var/UpdateNeighbors = 1)
check = 0
//if (!anchored) return
var/Rturn = turn(src.dir, -90)
var/Lturn = turn(src.dir, 90)
for(var/obj/structure/railing/R in src.loc)
if ((R.dir == Lturn) && R.anchored)
check |= 32
if (UpdateNeighbors)
R.update_icon(0)
if ((R.dir == Rturn) && R.anchored)
check |= 2
if (UpdateNeighbors)
R.update_icon(0)
for (var/obj/structure/railing/R in get_step(src, Lturn))
if ((R.dir == src.dir) && R.anchored)
check |= 16
if (UpdateNeighbors)
R.update_icon(0)
for (var/obj/structure/railing/R in get_step(src, Rturn))
if ((R.dir == src.dir) && R.anchored)
check |= 1
if (UpdateNeighbors)
R.update_icon(0)
for (var/obj/structure/railing/R in get_step(src, (Lturn + src.dir)))
if ((R.dir == Rturn) && R.anchored)
check |= 64
if (UpdateNeighbors)
R.update_icon(0)
for (var/obj/structure/railing/R in get_step(src, (Rturn + src.dir)))
if ((R.dir == Lturn) && R.anchored)
check |= 4
if (UpdateNeighbors)
R.update_icon(0)
/obj/structure/railing/update_icon(var/UpdateNeighgors = 1)
NeighborsCheck(UpdateNeighgors)
overlays.Cut()
if (!check || !anchored)//|| !anchored
icon_state = "[icon_modifier]railing0"
else
icon_state = "[icon_modifier]railing1"
if (check & 32)
overlays += image ('hyperstation/icons/obj/railings.dmi', src, "[icon_modifier]corneroverlay")
if ((check & 16) || !(check & 32) || (check & 64))
overlays += image ('hyperstation/icons/obj/railings.dmi', src, "[icon_modifier]frontoverlay_l")
if (!(check & 2) || (check & 1) || (check & 4))
overlays += image ('hyperstation/icons/obj/railings.dmi', src, "[icon_modifier]frontoverlay_r")
if(check & 4)
switch (src.dir)
if (NORTH)
overlays += image ('hyperstation/icons/obj/railings.dmi', src, "[icon_modifier]mcorneroverlay", pixel_x = 32)
if (SOUTH)
overlays += image ('hyperstation/icons/obj/railings.dmi', src, "[icon_modifier]mcorneroverlay", pixel_x = -32)
if (EAST)
overlays += image ('hyperstation/icons/obj/railings.dmi', src, "[icon_modifier]mcorneroverlay", pixel_y = -32)
if (WEST)
overlays += image ('hyperstation/icons/obj/railings.dmi', src, "[icon_modifier]mcorneroverlay", pixel_y = 32)
Binary file not shown.

After

Width:  |  Height:  |  Size: 3.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 426 KiB

After

Width:  |  Height:  |  Size: 691 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 112 KiB

After

Width:  |  Height:  |  Size: 115 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 326 KiB

After

Width:  |  Height:  |  Size: 331 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 515 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 39 KiB

After

Width:  |  Height:  |  Size: 40 KiB

+6 -1
View File
@@ -15,7 +15,8 @@
// BEGIN_INCLUDE
#include "_maps\_basemap.dm"
#include "_maps\boxstation.dm"
#include "_maps\layeniastation.dm"
#include "_maps\map_files\generic\CentCom.dmm"
#include "code\_compile_options.dm"
#include "code\world.dm"
#include "code\__DEFINES\_globals.dm"
@@ -520,6 +521,7 @@
#include "code\datums\weather\weather_types\acid_rain.dm"
#include "code\datums\weather\weather_types\ash_storm.dm"
#include "code\datums\weather\weather_types\floor_is_lava.dm"
#include "code\datums\weather\weather_types\layenia.dm"
#include "code\datums\weather\weather_types\radiation_storm.dm"
#include "code\datums\weather\weather_types\snow_storm.dm"
#include "code\datums\wires\_wires.dm"
@@ -551,9 +553,11 @@
#include "code\game\area\ai_monitored.dm"
#include "code\game\area\areas.dm"
#include "code\game\area\Space_Station_13_areas.dm"
#include "code\game\area\Space_Station_13_areas_gravity.dm"
#include "code\game\area\areas\away_content.dm"
#include "code\game\area\areas\centcom.dm"
#include "code\game\area\areas\holodeck.dm"
#include "code\game\area\areas\layenia.dm"
#include "code\game\area\areas\mining.dm"
#include "code\game\area\areas\shuttles.dm"
#include "code\game\area\areas\ruins\_ruins.dm"
@@ -3037,6 +3041,7 @@
#include "hyperstation\code\datums\ruins\lavaland.dm"
#include "hyperstation\code\datums\traits\good.dm"
#include "hyperstation\code\datums\traits\neutral.dm"
#include "hyperstation\code\game\objects\railings.dm"
#include "hyperstation\code\game\objects\items\cosmetics.dm"
#include "hyperstation\code\game\objects\structures\ghost_role_spawners.dm"
#include "hyperstation\code\gamemode\traitor_lewd.dm"