mirror of
https://github.com/goonstation/goonstation-2016.git
synced 2026-07-20 05:22:47 +01:00
c1e9e253d8
Turfs are now pathed for easier mapping. Floor icons updated. If you are going to submit a map to Goonstation, please follow the Map Submission Guidelines in the maps folder.
1335 lines
31 KiB
Plaintext
1335 lines
31 KiB
Plaintext
/*
|
|
* Hey! You!
|
|
* Remember to mirror your changes!
|
|
* floors_unsimulated.dm & floors_airless.dm
|
|
*/
|
|
|
|
/turf/simulated/floor
|
|
name = "floor"
|
|
icon = 'icons/turf/floors.dmi'
|
|
icon_state = "floor"
|
|
thermal_conductivity = 0.040
|
|
heat_capacity = 225000
|
|
var/broken = 0
|
|
var/burnt = 0
|
|
|
|
New()
|
|
..()
|
|
var/obj/plan_marker/floor/P = locate() in src
|
|
if (P)
|
|
src.icon = P.icon
|
|
src.icon_state = P.icon_state
|
|
src.icon_old = P.icon_state
|
|
allows_vehicles = P.allows_vehicles
|
|
var/pdir = P.dir
|
|
spawn(5)
|
|
src.dir = pdir
|
|
qdel(P)
|
|
|
|
|
|
/* ._.-'~'-._.-'~'-._.-'~'-._.-'~'-._.-'~'-._.-'~'-._.-'~'-._. */
|
|
/*-=-=-=-=I AM TIRED OF MAPING WITH NON-PATHED FLOORS=-=-=-=-=-*/
|
|
/*-=-=-=-=-=-=-=-=-=-=WITH LOVE BY ZEWAKA=-=-=-=-=-=-=-=-=-=-=-*/
|
|
/* '~'-._.-'~'-._.-'~'-._.-'~'-._.-'~'-._.-'~'-._.-'~'-._.-'~' */
|
|
|
|
/////////////////////////////////////////
|
|
|
|
/turf/simulated/floor/plating/random
|
|
New()
|
|
..()
|
|
if (prob(20))
|
|
src.icon_state = pick("panelscorched", "platingdmg1", "platingdmg2", "platingdmg3")
|
|
if (prob(10))
|
|
new /obj/decal/cleanable/dirt(src)
|
|
else if (prob(2))
|
|
var/obj/C = pick(/obj/decal/cleanable/paper, /obj/decal/cleanable/fungus, /obj/decal/cleanable/dirt, /obj/decal/cleanable/ash,\
|
|
/obj/decal/cleanable/molten_item, /obj/decal/cleanable/machine_debris, /obj/decal/cleanable/oil, /obj/decal/cleanable/rust)
|
|
new C (src)
|
|
else if ((locate(/obj) in src) && prob(3))
|
|
var/obj/C = pick(/obj/item/cable_coil/cut/small, /obj/item/brick, /obj/item/cigbutt, /obj/item/scrap, /obj/item/raw_material/scrap_metal,\
|
|
/obj/item/spacecash, /obj/item/tile/steel, /obj/item/weldingtool, /obj/item/screwdriver, /obj/item/wrench, /obj/item/wirecutters, /obj/item/crowbar)
|
|
new C (src)
|
|
else if (prob(1) && prob(2)) // really rare. not "three space things spawn on destiny during first test with just prob(1)" rare.
|
|
var/obj/C = pick(/obj/item/space_thing, /obj/item/sticker/gold_star, /obj/item/sticker/banana, /obj/item/sticker/heart,\
|
|
/obj/item/reagent_containers/vending/bag/random, /obj/item/reagent_containers/vending/vial/random, /obj/item/clothing/mask/cigarette/random)
|
|
new C (src)
|
|
return
|
|
|
|
/turf/simulated/floor/plating/airless/random
|
|
New()
|
|
..()
|
|
if (prob(20))
|
|
src.icon_state = pick("panelscorched", "platingdmg1", "platingdmg2", "platingdmg3")
|
|
|
|
|
|
/////////////////////////////////////////
|
|
|
|
/turf/simulated/floor/scorched
|
|
icon_state = "floorscorched1"
|
|
|
|
/turf/simulated/floor/scorched2
|
|
icon_state = "floorscorched2"
|
|
|
|
/turf/simulated/floor/damaged1
|
|
icon_state = "damaged1"
|
|
|
|
/turf/simulated/floor/damaged2
|
|
icon_state = "damaged2"
|
|
|
|
/turf/simulated/floor/damaged3
|
|
icon_state = "damaged3"
|
|
|
|
/turf/simulated/floor/damaged4
|
|
icon_state = "damaged4"
|
|
|
|
/turf/simulated/floor/damaged5
|
|
icon_state = "damaged5"
|
|
|
|
/////////////////////////////////////////
|
|
|
|
/turf/simulated/floor/plating
|
|
name = "plating"
|
|
icon_state = "plating"
|
|
intact = 0
|
|
|
|
/turf/simulated/floor/plating/scorched
|
|
icon_state = "panelscorched"
|
|
|
|
/turf/simulated/floor/plating/damaged1
|
|
icon_state = "platingdmg1"
|
|
|
|
/turf/simulated/floor/plating/damaged2
|
|
icon_state = "platingdmg2"
|
|
|
|
/turf/simulated/floor/plating/damaged3
|
|
icon_state = "platingdmg3"
|
|
|
|
/////////////////////////////////////////
|
|
|
|
/turf/simulated/floor/grime
|
|
icon_state = "floorgrime"
|
|
|
|
/////////////////////////////////////////
|
|
|
|
/turf/simulated/floor/neutral
|
|
icon_state = "fullneutral"
|
|
|
|
/turf/simulated/floor/neutral/side
|
|
icon_state = "neutral"
|
|
|
|
/turf/simulated/floor/neutral/corner
|
|
icon_state = "neutralcorner"
|
|
|
|
/////////////////////////////////////////
|
|
|
|
/turf/simulated/floor/white
|
|
icon_state = "white"
|
|
|
|
/turf/simulated/floor/white/side
|
|
icon_state = "whitehall"
|
|
|
|
/turf/simulated/floor/white/corner
|
|
icon_state = "whitecorner"
|
|
|
|
/turf/simulated/floor/white/checker
|
|
icon_state = "whitecheck"
|
|
|
|
/turf/simulated/floor/white/checker2
|
|
icon_state = "whitecheck2"
|
|
|
|
/turf/simulated/floor/white/grime
|
|
icon_state = "floorgrime-w"
|
|
|
|
/////////////////////////////////////////
|
|
|
|
/turf/simulated/floor/black //Okay so 'dark' is darker than 'black', So 'dark' will be named black and 'black' named grey.
|
|
icon_state = "dark"
|
|
|
|
/turf/simulated/floor/black/side
|
|
icon_state = "greyblack"
|
|
|
|
/turf/simulated/floor/black/corner
|
|
icon_state = "greyblackcorner"
|
|
|
|
/turf/simulated/floor/black/grime
|
|
icon_state = "floorgrime-b"
|
|
|
|
|
|
/turf/simulated/floor/blackwhite
|
|
icon_state = "darkwhite"
|
|
|
|
/turf/simulated/floor/blackwhite/corner
|
|
icon_state = "darkwhitecorner"
|
|
|
|
/turf/simulated/floor/blackwhite/side
|
|
icon_state = "whiteblack"
|
|
|
|
/turf/simulated/floor/blackwhite/whitegrime
|
|
icon_state = "floorgrime_bw1"
|
|
|
|
/turf/simulated/floor/blackwhite/whitegrime/other
|
|
icon_state = "floorgrime_bw2"
|
|
|
|
/////////////////////////////////////////
|
|
|
|
/turf/simulated/floor/grey
|
|
icon_state = "fullblack"
|
|
|
|
/turf/simulated/floor/grey/side
|
|
icon_state = "black"
|
|
|
|
/turf/simulated/floor/grey/corner
|
|
icon_state = "blackcorner"
|
|
|
|
/turf/simulated/floor/grey/checker
|
|
icon_state = "blackchecker"
|
|
|
|
/turf/simulated/floor/grey/blackgrime
|
|
icon_state = "floorgrime_gb1"
|
|
|
|
/turf/simulated/floor/grey/blackgrime/other
|
|
icon_state = "floorgrime_gb2"
|
|
|
|
/turf/simulated/floor/grey/whitegrime
|
|
icon_state = "floorgrime_gw1"
|
|
|
|
/turf/simulated/floor/grey/whitegrime/other
|
|
icon_state = "floorgrime_gw2"
|
|
|
|
/////////////////////////////////////////
|
|
|
|
/turf/simulated/floor/red
|
|
icon_state = "fullred"
|
|
|
|
/turf/simulated/floor/red/side
|
|
icon_state = "red"
|
|
|
|
/turf/simulated/floor/red/corner
|
|
icon_state = "redcorner"
|
|
|
|
/turf/simulated/floor/red/checker
|
|
icon_state = "redchecker"
|
|
|
|
|
|
/turf/simulated/floor/redblack
|
|
icon_state = "redblack"
|
|
|
|
/turf/simulated/floor/redblack/corner
|
|
icon_state = "redblackcorner"
|
|
|
|
|
|
/turf/simulated/floor/redwhite
|
|
icon_state = "redwhite"
|
|
|
|
/turf/simulated/floor/redwhite/corner
|
|
icon_state = "redwhitecorner"
|
|
|
|
/////////////////////////////////////////
|
|
|
|
/turf/simulated/floor/blue
|
|
icon_state = "fullblue"
|
|
|
|
/turf/simulated/floor/blue/side
|
|
icon_state = "blue"
|
|
|
|
/turf/simulated/floor/blue/corner
|
|
icon_state = "bluecorner"
|
|
|
|
/turf/simulated/floor/blue/checker
|
|
icon_state = "bluechecker"
|
|
|
|
|
|
/turf/simulated/floor/blueblack
|
|
icon_state = "blueblack"
|
|
|
|
/turf/simulated/floor/blueblack/corner
|
|
icon_state = "blueblackcorner"
|
|
|
|
|
|
/turf/simulated/floor/bluewhite
|
|
icon_state = "bluewhite"
|
|
|
|
/turf/simulated/floor/bluewhite/corner
|
|
icon_state = "bluewhitecorner"
|
|
|
|
/////////////////////////////////////////
|
|
|
|
/turf/simulated/floor/darkblue
|
|
icon_state = "fulldblue"
|
|
|
|
/turf/simulated/floor/darkblue/checker
|
|
icon_state = "blue-dblue"
|
|
|
|
/turf/simulated/floor/darkblue/checker/other
|
|
icon_state = "blue-dblue2"
|
|
|
|
/////////////////////////////////////////
|
|
|
|
/turf/simulated/floor/bluegreen
|
|
icon_state = "blugreenfull"
|
|
|
|
/turf/simulated/floor/bluegreen/side
|
|
icon_state = "blugreen"
|
|
|
|
/turf/simulated/floor/bluegreen/corner
|
|
icon_state = "blugreencorner"
|
|
|
|
/////////////////////////////////////////
|
|
|
|
/turf/simulated/floor/green
|
|
icon_state = "fullgreen"
|
|
|
|
/turf/simulated/floor/green/side
|
|
icon_state = "green"
|
|
|
|
/turf/simulated/floor/green/corner
|
|
icon_state = "greencorner"
|
|
|
|
/turf/simulated/floor/green/checker
|
|
icon_state = "greenchecker"
|
|
|
|
|
|
/turf/simulated/floor/greenblack
|
|
icon_state = "greenblack"
|
|
|
|
/turf/simulated/floor/greenblack/corner
|
|
icon_state = "greenblackcorner"
|
|
|
|
|
|
/turf/simulated/floor/greenwhite
|
|
icon_state = "greenwhite"
|
|
|
|
/turf/simulated/floor/greenwhite/corner
|
|
icon_state = "greenwhitecorner"
|
|
|
|
/////////////////////////////////////////
|
|
|
|
/turf/simulated/floor/greenwhite/other
|
|
icon_state = "toxshuttle"
|
|
|
|
/turf/simulated/floor/greenwhite/other/corner
|
|
icon_state = "toxshuttlecorner"
|
|
|
|
/////////////////////////////////////////
|
|
|
|
/turf/simulated/floor/purple
|
|
icon_state = "fullpurple"
|
|
|
|
/turf/simulated/floor/purple/side
|
|
icon_state = "purple"
|
|
|
|
/turf/simulated/floor/purple/corner
|
|
icon_state = "purplecorner"
|
|
|
|
/turf/simulated/floor/purple/checker
|
|
icon_state = "purplechecker"
|
|
|
|
|
|
/turf/simulated/floor/purpleblack
|
|
icon_state = "purpleblack"
|
|
|
|
/turf/simulated/floor/purpleblack/corner
|
|
icon_state = "purpleblackcorner"
|
|
|
|
|
|
/turf/simulated/floor/purplewhite
|
|
icon_state = "purplewhite"
|
|
|
|
/turf/simulated/floor/purplewhite/corner
|
|
icon_state = "purplewhitecorner"
|
|
|
|
/////////////////////////////////////////
|
|
|
|
/turf/simulated/floor/yellow
|
|
icon_state = "fullyellow"
|
|
|
|
/turf/simulated/floor/yellow/side
|
|
icon_state = "yellow"
|
|
|
|
/turf/simulated/floor/yellow/corner
|
|
icon_state = "yellowcorner"
|
|
|
|
/turf/simulated/floor/yellow/checker
|
|
icon_state = "yellowchecker"
|
|
|
|
|
|
/turf/simulated/floor/yellowblack
|
|
icon_state = "yellowblack"
|
|
|
|
/turf/simulated/floor/yellowblack/corner
|
|
icon_state = "yellowblackcorner"
|
|
|
|
/////////////////////////////////////////
|
|
|
|
/turf/simulated/floor/orange
|
|
icon_state = "fullorange"
|
|
|
|
/turf/simulated/floor/orange/side
|
|
icon_state = "orange"
|
|
|
|
/turf/simulated/floor/orange/corner
|
|
icon_state = "orangecorner"
|
|
|
|
|
|
/turf/simulated/floor/orangeblack
|
|
icon_state = "fullcaution"
|
|
|
|
/turf/simulated/floor/orangeblack/side
|
|
icon_state = "caution"
|
|
|
|
/turf/simulated/floor/orangeblack/side/white
|
|
icon_state = "cautionwhite"
|
|
|
|
/turf/simulated/floor/orangeblack/corner
|
|
icon_state = "cautioncorner"
|
|
|
|
/turf/simulated/floor/orangeblack/corner/white
|
|
icon_state = "cautionwhitecorner"
|
|
|
|
/////////////////////////////////////////
|
|
|
|
/turf/simulated/floor/grid //THE OLD ONE THAT IS NOT USED ANYMORE
|
|
icon = 'icons/turf/floors.dmi'
|
|
icon_state = "circuit"
|
|
|
|
/turf/simulated/floor/circuit
|
|
name = "pharosium transduction matrix"
|
|
desc = "An elaborate, faintly glowing matrix of isolinear circuitry."
|
|
icon_state = "circuit"
|
|
RL_LumR = 0
|
|
RL_LumG = 0 //Corresponds to color of the icon_state.
|
|
RL_LumB = 0.3
|
|
|
|
/turf/simulated/floor/circuit/green
|
|
icon_state = "circuit-green"
|
|
RL_LumR = 0
|
|
RL_LumG = 0.3
|
|
RL_LumB = 0
|
|
|
|
/turf/simulated/floor/circuit/white
|
|
icon_state = "circuit-white"
|
|
RL_LumR = 0.2
|
|
RL_LumG = 0.2
|
|
RL_LumB = 0.2
|
|
|
|
/turf/simulated/floor/circuit/purple
|
|
icon_state = "circuit-purple"
|
|
RL_LumR = 0.1
|
|
RL_LumG = 0
|
|
RL_LumB = 0.2
|
|
|
|
/turf/simulated/floor/circuit/red
|
|
icon_state = "circuit-red"
|
|
RL_LumR = 0.3
|
|
RL_LumG = 0
|
|
RL_LumB = 0
|
|
|
|
/turf/simulated/floor/circuit/vintage
|
|
icon_state = "circuit-vint1"
|
|
RL_LumR = 0.1
|
|
RL_LumG = 0.1
|
|
RL_LumB = 0.1
|
|
|
|
/turf/simulated/floor/circuit/off
|
|
icon_state = "circuitoff"
|
|
RL_LumR = 0
|
|
RL_LumG = 0
|
|
RL_LumB = 0
|
|
|
|
/////////////////////////////////////////
|
|
|
|
/turf/simulated/floor/carpet
|
|
name = "carpet"
|
|
icon = 'icons/turf/carpet.dmi'
|
|
icon_state = "red1"
|
|
|
|
break_tile()
|
|
..()
|
|
icon = 'icons/turf/floors.dmi'
|
|
|
|
burn_tile()
|
|
..()
|
|
icon = 'icons/turf/floors.dmi'
|
|
|
|
/turf/simulated/floor/carpet/grime
|
|
name = "cheap carpet"
|
|
icon = 'icons/turf/floors.dmi'
|
|
icon_state = "grimy"
|
|
|
|
/turf/simulated/floor/carpet/arcade
|
|
icon = 'icons/turf/floors.dmi'
|
|
icon_state = "arcade_carpet"
|
|
|
|
/turf/simulated/floor/carpet/arcade/half
|
|
icon_state = "arcade_carpet_half"
|
|
|
|
/turf/simulated/floor/carpet/arcade/blank
|
|
icon_state = "arcade_carpet_blank"
|
|
|
|
/turf/simulated/floor/carpet/office
|
|
icon = 'icons/turf/floors.dmi'
|
|
icon_state = "office_carpet"
|
|
|
|
/turf/simulated/floor/carpet/office/other
|
|
icon = 'icons/turf/floors.dmi'
|
|
icon_state = "office_carpet2"
|
|
|
|
/////////////////////////////////////////
|
|
|
|
/turf/simulated/floor/shiny
|
|
icon_state = "shiny"
|
|
|
|
/turf/simulated/floor/shiny/white
|
|
icon_state = "whiteshiny"
|
|
|
|
/////////////////////////////////////////
|
|
|
|
/turf/simulated/floor/specialroom
|
|
|
|
/turf/simulated/floor/specialroom/arcade
|
|
icon_state = "arcade"
|
|
|
|
/turf/simulated/floor/specialroom/bar
|
|
icon_state = "bar"
|
|
|
|
/turf/simulated/floor/specialroom/bar/edge
|
|
icon_state = "bar-edge"
|
|
|
|
/turf/simulated/floor/specialroom/gym
|
|
name = "boxing mat"
|
|
icon_state = "boxing"
|
|
|
|
/turf/simulated/floor/specialroom/gym/alt
|
|
name = "gym mat"
|
|
icon_state = "gym_mat"
|
|
|
|
/turf/simulated/floor/specialroom/cafeteria
|
|
icon_state = "cafeteria"
|
|
|
|
/turf/simulated/floor/specialroom/chapel
|
|
icon_state = "chapel"
|
|
|
|
/turf/simulated/floor/specialroom/freezer
|
|
name = "freezer floor"
|
|
icon_state = "freezerfloor"
|
|
|
|
/turf/simulated/floor/specialroom/freezer/white
|
|
icon_state = "freezerfloor2"
|
|
|
|
/turf/simulated/floor/specialroom/freezer/blue
|
|
icon_state = "freezerfloor3"
|
|
|
|
/turf/simulated/floor/specialroom/medbay
|
|
icon_state = "medbay"
|
|
|
|
/////////////////////////////////////////
|
|
|
|
/turf/simulated/floor/arrival
|
|
icon_state = "arrival"
|
|
|
|
/turf/simulated/floor/arrival/corner
|
|
icon_state = "arrivalcorner"
|
|
|
|
/////////////////////////////////////////
|
|
|
|
/turf/simulated/floor/escape
|
|
icon_state = "escape"
|
|
|
|
/turf/simulated/floor/escape/corner
|
|
icon_state = "escapecorner"
|
|
|
|
/////////////////////////////////////////
|
|
|
|
/turf/simulated/floor/delivery
|
|
icon_state = "delivery"
|
|
|
|
/turf/simulated/floor/delivery/white
|
|
icon_state = "delivery_white"
|
|
|
|
/turf/simulated/floor/delivery/caution
|
|
icon_state = "deliverycaution"
|
|
|
|
|
|
/turf/simulated/floor/bot
|
|
icon_state = "bot"
|
|
|
|
/turf/simulated/floor/bot/white
|
|
icon_state = "bot_white"
|
|
|
|
/turf/simulated/floor/bot/blue
|
|
icon_state = "bot_blue"
|
|
|
|
/turf/simulated/floor/bot/caution
|
|
icon_state = "botcaution"
|
|
|
|
/////////////////////////////////////////
|
|
|
|
/turf/simulated/floor/engine
|
|
name = "reinforced floor"
|
|
icon_state = "engine"
|
|
thermal_conductivity = 0.025
|
|
heat_capacity = 325000
|
|
|
|
allows_vehicles = 1
|
|
|
|
/turf/simulated/floor/engine/vacuum
|
|
name = "vacuum floor"
|
|
icon_state = "engine"
|
|
oxygen = 0
|
|
nitrogen = 0.001
|
|
temperature = TCMB
|
|
|
|
/turf/simulated/floor/engine/glow
|
|
icon_state = "engine-glow"
|
|
|
|
/turf/simulated/floor/engine/glow/blue
|
|
icon_state = "engine-blue"
|
|
|
|
|
|
/turf/simulated/floor/engine/caution/south
|
|
icon_state = "engine_caution_south"
|
|
|
|
/turf/simulated/floor/engine/caution/north
|
|
icon_state = "engine_caution_north"
|
|
|
|
/turf/simulated/floor/engine/caution/northsouth
|
|
icon_state = "engine_caution_ns"
|
|
|
|
/turf/simulated/floor/engine/caution/west
|
|
icon_state = "engine_caution_west"
|
|
|
|
/turf/simulated/floor/engine/caution/east
|
|
icon_state = "engine_caution_east"
|
|
|
|
/turf/simulated/floor/engine/caution/westeast
|
|
icon_state = "engine_caution_we"
|
|
|
|
/turf/simulated/floor/engine/caution/corner
|
|
icon_state = "engine_caution_corners"
|
|
|
|
/turf/simulated/floor/engine/caution/corner2
|
|
icon_state = "engine_caution_corners2"
|
|
|
|
/turf/simulated/floor/engine/caution/misc
|
|
icon_state = "engine_caution_misc"
|
|
|
|
/////////////////////////////////////////
|
|
|
|
/turf/simulated/floor/caution/south
|
|
icon_state = "caution_south"
|
|
|
|
/turf/simulated/floor/caution/north
|
|
icon_state = "caution_north"
|
|
|
|
/turf/simulated/floor/caution/northsouth
|
|
icon_state = "caution_ns"
|
|
|
|
/turf/simulated/floor/caution/west
|
|
icon_state = "caution_west"
|
|
|
|
/turf/simulated/floor/caution/east
|
|
icon_state = "caution_east"
|
|
|
|
/turf/simulated/floor/caution/westeast
|
|
icon_state = "caution_we"
|
|
|
|
/turf/simulated/floor/caution/corner/se
|
|
icon_state = "corner_east"
|
|
|
|
/turf/simulated/floor/caution/corner/sw
|
|
icon_state = "corner_west"
|
|
|
|
/turf/simulated/floor/caution/corner/ne
|
|
icon_state = "corner_neast"
|
|
|
|
/turf/simulated/floor/caution/corner/nw
|
|
icon_state = "corner_nwest"
|
|
|
|
/turf/simulated/floor/caution/corner/misc
|
|
icon_state = "floor_hazard_corners"
|
|
|
|
/turf/simulated/floor/caution/misc
|
|
icon_state = "floor_hazard_misc"
|
|
|
|
/////////////////////////////////////////
|
|
|
|
/turf/simulated/floor/wood
|
|
name = "wooden floor"
|
|
icon_state = "wooden-2"
|
|
|
|
/turf/simulated/floor/wood/two
|
|
icon_state = "wooden"
|
|
|
|
/turf/simulated/floor/wood/three
|
|
icon_state = "wooden-3"
|
|
|
|
/turf/simulated/floor/wood/four
|
|
icon_state = "wooden-4"
|
|
|
|
/////////////////////////////////////////
|
|
/turf/simulated/floor/stairs
|
|
name = "stairs"
|
|
icon_state = "Stairs_alone"
|
|
|
|
/turf/simulated/floor/stairs/wide
|
|
icon_state = "Stairs_wide"
|
|
|
|
/turf/simulated/floor/stairs/wide/other
|
|
icon_state = "Stairs2_wide"
|
|
|
|
/turf/simulated/floor/stairs/wide/green
|
|
icon_state = "Stairs_wide_green"
|
|
|
|
/turf/simulated/floor/stairs/wide/middle
|
|
icon_state = "stairs_middle"
|
|
|
|
|
|
/turf/simulated/floor/stairs/medical
|
|
icon_state = "medstairs_alone"
|
|
|
|
/turf/simulated/floor/stairs/medical/wide
|
|
icon_state = "medstairs_wide"
|
|
|
|
/turf/simulated/floor/stairs/medical/wide/other
|
|
icon_state = "medstairs2_wide"
|
|
|
|
/turf/simulated/floor/stairs/medical/wide/middle
|
|
icon_state = "medstairs_middle"
|
|
|
|
|
|
/turf/simulated/floor/stairs/quilty
|
|
icon_state = "quiltystair"
|
|
|
|
/turf/simulated/floor/stairs/quilty/wide
|
|
icon_state = "quiltystair2"
|
|
|
|
|
|
/turf/simulated/floor/stairs/wood
|
|
icon_state = "wood_stairs"
|
|
|
|
/turf/simulated/floor/stairs/wood/wide
|
|
icon_state = "wood_stairs2"
|
|
|
|
|
|
/turf/simulated/floor/stairs/wood2
|
|
icon_state = "wood2_stairs"
|
|
|
|
/turf/simulated/floor/stairs/wood2/wide
|
|
icon_state = "wood2_stairs2"
|
|
|
|
|
|
/turf/simulated/floor/stairs/wood3
|
|
icon_state = "wood3_stairs"
|
|
|
|
/turf/simulated/floor/stairs/wood3/wide
|
|
icon_state = "wood3_stairs2"
|
|
|
|
|
|
/turf/simulated/floor/stairs/dark
|
|
icon_state = "dark_stairs"
|
|
|
|
/turf/simulated/floor/stairs/dark/wide
|
|
icon_state = "dark_stairs2"
|
|
|
|
/////////////////////////////////////////
|
|
|
|
/turf/simulated/floor/Vspace
|
|
name = "Vspace"
|
|
icon_state = "flashyblue"
|
|
var/network = "none"
|
|
var/network_ID = "none"
|
|
|
|
/turf/simulated/floor/Vspace/brig
|
|
name = "Brig"
|
|
icon_state = "floor"
|
|
network = "prison"
|
|
|
|
/turf/unsimulated/floor/vr
|
|
icon_state = "vrfloor"
|
|
|
|
/turf/unsimulated/floor/vr/plating
|
|
icon_state = "vrplating"
|
|
|
|
/turf/unsimulated/floor/vr/space
|
|
icon_state = "vrspace"
|
|
|
|
/turf/unsimulated/floor/vr/white
|
|
icon_state = "vrwhitehall"
|
|
|
|
/////////////////////////////////////////
|
|
|
|
/turf/simulated/floor/snow
|
|
name = "snow"
|
|
icon_state = "snow1"
|
|
|
|
New()
|
|
..()
|
|
if (prob(50))
|
|
icon_state = "snow2"
|
|
else if (prob(25))
|
|
icon_state = "snow3"
|
|
else if (prob(5))
|
|
icon_state = "snow4"
|
|
src.dir = pick(cardinal)
|
|
|
|
/turf/simulated/floor/snow/snowball
|
|
var/last_gather_time
|
|
|
|
attack_hand(mob/user)
|
|
if ((last_gather_time + 40) >= world.time)
|
|
return
|
|
else
|
|
user.visible_message("<b>[user]</b> gathers up some snow and rolls it into a snowball!",\
|
|
"You gather up some snow and roll it into a snowball!")
|
|
var/obj/item/reagent_containers/food/snacks/snowball/S = new /obj/item/reagent_containers/food/snacks/snowball(user.loc)
|
|
user.put_in_hand_or_drop(S)
|
|
src.last_gather_time = world.time
|
|
return
|
|
|
|
/turf/simulated/floor/snow/green
|
|
name = "snow-covered floor"
|
|
icon_state = "snowgreen"
|
|
|
|
/turf/simulated/floor/snow/green/corner
|
|
name = "snow-covered floor"
|
|
icon_state = "snowgreencorner"
|
|
|
|
/////////////////////////////////////////
|
|
|
|
/turf/simulated/floor/sand
|
|
name = "sand"
|
|
icon = 'icons/turf/outdoors.dmi'
|
|
icon_state = "sand"
|
|
|
|
New()
|
|
..()
|
|
src.dir = pick(cardinal)
|
|
|
|
/////////////////////////////////////////
|
|
|
|
/turf/simulated/floor/grass
|
|
name = "grass"
|
|
icon = 'icons/turf/outdoors.dmi'
|
|
icon_state = "grass"
|
|
|
|
/turf/simulated/floor/grass/random
|
|
New()
|
|
..()
|
|
src.dir = pick(cardinal)
|
|
|
|
/turf/simulated/floor/grass/random/alt
|
|
icon_state = "grass_eh"
|
|
|
|
/////////////////////////////////////////
|
|
|
|
/* ._.-'~'-._.-'~'-._.-'~'-._.-'~'-._.-'~'-._.-'~'-._.-'~'-._. */
|
|
/*-=-=-=-=-=-=-=-FUCK THAT SHIT MY WRIST HURTS=-=-=-=-=-=-=-=-=*/
|
|
/* '~'-._.-'~'-._.-'~'-._.-'~'-._.-'~'-._.-'~'-._.-'~'-._.-'~' */
|
|
|
|
|
|
/turf/simulated/floor/plating/airless
|
|
name = "airless plating"
|
|
oxygen = 0.01
|
|
nitrogen = 0.01
|
|
temperature = TCMB
|
|
//fullbright = 1
|
|
allows_vehicles = 1
|
|
|
|
New()
|
|
..()
|
|
name = "plating"
|
|
|
|
/turf/simulated/floor/plating/airless/shuttlebay
|
|
name = "shuttle bay plating"
|
|
icon_state = "engine"
|
|
allows_vehicles = 1
|
|
|
|
/turf/simulated/floor/shuttlebay
|
|
name = "shuttle bay plating"
|
|
icon_state = "engine"
|
|
allows_vehicles = 1
|
|
|
|
/turf/simulated/floor/metalfoam
|
|
icon = 'icons/turf/floors.dmi'
|
|
icon_state = "metalfoam"
|
|
var/metal = 1
|
|
oxygen = 0.01
|
|
nitrogen = 0.01
|
|
temperature = TCMB
|
|
intact = 0
|
|
allows_vehicles = 1 // let the constructor pods move around on these
|
|
|
|
desc = "A flimsy foamed metal floor."
|
|
|
|
/turf/simulated/floor/blob
|
|
name = "blob floor"
|
|
icon = 'icons/mob/blob.dmi'
|
|
icon_state = "bridge"
|
|
default_melt_cap = 80
|
|
|
|
New()
|
|
..()
|
|
setMaterial(getCachedMaterial("blob"))
|
|
|
|
proc/setOvermind(var/mob/living/intangible/blob_overmind/O)
|
|
if (!material)
|
|
setMaterial(getCachedMaterial("blob"))
|
|
material.color = O.color
|
|
color = O.color
|
|
|
|
attackby(var/obj/item/W, var/mob/user)
|
|
if (istype(W, /obj/item/weldingtool))
|
|
visible_message("<b>[user] hits [src] with [W]!</b>")
|
|
if (prob(25))
|
|
ReplaceWithSpace()
|
|
|
|
ex_act(severity)
|
|
if (prob(33))
|
|
..(max(severity - 1, 1))
|
|
else
|
|
..(severity)
|
|
|
|
burn_tile()
|
|
return
|
|
|
|
// metal foam floors
|
|
|
|
/turf/simulated/floor/metalfoam/update_icon()
|
|
if(metal == 1)
|
|
icon_state = "metalfoam"
|
|
else
|
|
icon_state = "ironform"
|
|
|
|
/turf/simulated/floor/metalfoam/ex_act()
|
|
ReplaceWithSpace()
|
|
|
|
/turf/simulated/floor/metalfoam/attackby(obj/item/C as obj, mob/user as mob)
|
|
|
|
if(!C || !user)
|
|
return 0
|
|
if(prob(75 - metal * 25))
|
|
ReplaceWithSpace()
|
|
boutput(user, "You easily smash through the foamed metal floor.")
|
|
else
|
|
boutput(user, "Your attack bounces off the foamed metal floor.")
|
|
|
|
/turf/simulated/floor/CanPass(atom/movable/mover, turf/target, height=0, air_group=0)
|
|
if (!src.allows_vehicles && (istype(mover, /obj/machinery/vehicle)))
|
|
if (!( locate(/obj/machinery/mass_driver, src) ))
|
|
return 0
|
|
return ..()
|
|
|
|
/turf/unsimulated/floor/CanPass(atom/movable/mover, turf/target, height=0, air_group=0)
|
|
if (!src.allows_vehicles && (istype(mover, /obj/machinery/vehicle)))
|
|
if (!( locate(/obj/machinery/mass_driver, src) ))
|
|
return 0
|
|
return ..()
|
|
|
|
/turf/simulated/floor/burn_down()
|
|
src.ex_act(2)
|
|
|
|
/turf/simulated/floor/ex_act(severity)
|
|
switch(severity)
|
|
if(1.0)
|
|
src.ReplaceWithSpace()
|
|
if(2.0)
|
|
switch(pick(1,2;75,3))
|
|
if (1)
|
|
if(prob(33))
|
|
var/obj/item/I = new /obj/item/raw_material/scrap_metal(src)
|
|
if (src.material)
|
|
I.setMaterial(src.material)
|
|
else
|
|
var/datum/material/M = getCachedMaterial("steel")
|
|
I.setMaterial(M)
|
|
src.ReplaceWithLattice()
|
|
if(2)
|
|
src.ReplaceWithSpace()
|
|
if(3)
|
|
if(prob(33))
|
|
var/obj/item/I = new /obj/item/raw_material/scrap_metal(src)
|
|
if (src.material)
|
|
I.setMaterial(src.material)
|
|
else
|
|
var/datum/material/M = getCachedMaterial("steel")
|
|
I.setMaterial(M)
|
|
if(prob(80))
|
|
src.break_tile_to_plating()
|
|
else
|
|
src.break_tile()
|
|
src.hotspot_expose(1000,CELL_VOLUME)
|
|
if(3.0)
|
|
if (prob(50))
|
|
src.break_tile()
|
|
src.hotspot_expose(1000,CELL_VOLUME)
|
|
return
|
|
|
|
/turf/simulated/floor/blob_act(var/power)
|
|
return
|
|
|
|
/turf/simulated/floor/proc/update_icon()
|
|
|
|
/turf/simulated/floor/engine/attackby(obj/item/C as obj, mob/user as mob)
|
|
if (!C)
|
|
return
|
|
if (!user)
|
|
return
|
|
if (istype(C, /obj/item/pen))
|
|
var/obj/item/pen/P = C
|
|
P.write_on_turf(src, user)
|
|
return
|
|
else if (istype(C, /obj/item/wrench))
|
|
boutput(user, "<span style=\"color:blue\">Removing rods...</span>")
|
|
playsound(src.loc, "sound/items/Ratchet.ogg", 80, 1)
|
|
if(do_after(user, 30))
|
|
var/obj/R1 = new /obj/item/rods(src)
|
|
var/obj/R2 = new /obj/item/rods(src)
|
|
if (material)
|
|
R1.setMaterial(material)
|
|
R2.setMaterial(material)
|
|
else
|
|
R1.setMaterial(getCachedMaterial("steel"))
|
|
R2.setMaterial(getCachedMaterial("steel"))
|
|
ReplaceWithFloor()
|
|
var/turf/simulated/floor/F = src
|
|
F.to_plating()
|
|
return
|
|
|
|
/turf/simulated/floor/proc/to_plating(var/force_break)
|
|
if(!force_break)
|
|
if(istype(src,/turf/simulated/floor/engine)) return
|
|
if(!intact) return
|
|
if (!icon_old)
|
|
icon_old = icon_state
|
|
src.icon_state = "plating"
|
|
intact = 0
|
|
broken = 0
|
|
burnt = 0
|
|
levelupdate()
|
|
|
|
/turf/simulated/floor/proc/dismantle_wall()//can get called due to people spamming weldingtools on walls
|
|
return
|
|
|
|
/turf/simulated/floor/proc/break_tile_to_plating()
|
|
if(intact) to_plating()
|
|
break_tile()
|
|
|
|
/turf/simulated/floor/proc/break_tile(var/force_break)
|
|
if(!force_break)
|
|
if(istype(src,/turf/simulated/floor/engine)) return
|
|
if(istype(src,/turf/simulated/floor/shuttlebay)) return
|
|
|
|
if(broken) return
|
|
if (!icon_old)
|
|
icon_old = icon_state
|
|
if(intact)
|
|
src.icon_state = "damaged[pick(1,2,3,4,5)]"
|
|
broken = 1
|
|
else
|
|
src.icon_state = "platingdmg[pick(1,2,3)]"
|
|
broken = 1
|
|
|
|
/turf/simulated/floor/proc/burn_tile()
|
|
if(broken || burnt) return
|
|
if (!icon_old)
|
|
icon_old = icon_state
|
|
if(intact)
|
|
src.icon_state = "floorscorched[pick(1,2)]"
|
|
else
|
|
src.icon_state = "panelscorched"
|
|
burnt = 1
|
|
|
|
/turf/simulated/floor/engine/burn_tile()
|
|
return
|
|
|
|
/turf/simulated/floor/shuttlebay/burn_tile()
|
|
return
|
|
|
|
/turf/simulated/floor/proc/restore_tile()
|
|
if(intact) return
|
|
intact = 1
|
|
broken = 0
|
|
burnt = 0
|
|
if(icon_old)
|
|
icon_state = icon_old
|
|
else
|
|
icon_state = "floor"
|
|
levelupdate()
|
|
|
|
/turf/simulated/floor/attackby(obj/item/C as obj, mob/user as mob)
|
|
|
|
if(!C || !user)
|
|
return 0
|
|
|
|
if(istype(C, /obj/item/crowbar) && intact)
|
|
if(broken || burnt)
|
|
boutput(user, "<span style=\"color:red\">You remove the broken plating.</span>")
|
|
else
|
|
var/atom/A = new /obj/item/tile(src)
|
|
if(src.material)
|
|
A.setMaterial(src.material)
|
|
else
|
|
var/datum/material/M = getCachedMaterial("steel")
|
|
A.setMaterial(M)
|
|
|
|
to_plating()
|
|
playsound(src.loc, "sound/items/Crowbar.ogg", 80, 1)
|
|
|
|
return
|
|
|
|
if (istype(C, /obj/item/pen))
|
|
var/obj/item/pen/P = C
|
|
P.write_on_turf(src, user)
|
|
return
|
|
|
|
if(istype(C, /obj/item/seed/grass) && intact)
|
|
if(broken || burnt) boutput(user, "<span style=\"color:red\">The floor is too damaged to put space grass on.</span>")
|
|
else if (src.icon_state == "grass1" || src.icon_state == "grass2" || src.icon_state == "grass3" || src.icon_state == "grass4")
|
|
boutput(user, "<span style=\"color:red\">There's already some grass here.</span>")
|
|
else
|
|
boutput(user, "<span style=\"color:blue\">You scatter seeds on the ground.</span>")
|
|
if (!icon_old)
|
|
icon_old = icon_state
|
|
var/randtime = rand(5,12)
|
|
spawn(randtime * 10)
|
|
var/rnpick = rand(1,4)
|
|
src.icon_state = "grass[rnpick]"
|
|
user.u_equip(C)
|
|
if(C)
|
|
C.dropped()
|
|
qdel (C)
|
|
return
|
|
return
|
|
|
|
if(istype(C, /obj/item/rods))
|
|
if (!src.intact)
|
|
if (C:amount >= 2)
|
|
boutput(user, "<span style=\"color:blue\">Reinforcing the floor...</span>")
|
|
if(do_after(user, 30))
|
|
ReplaceWithEngineFloor()
|
|
if (C)
|
|
C:amount -= 2
|
|
if (C:amount <= 0)
|
|
qdel (C) //wtf
|
|
if(C.material) src.setMaterial(C.material)
|
|
playsound(src.loc, "sound/items/Deconstruct.ogg", 80, 1)
|
|
else
|
|
boutput(user, "<span style=\"color:red\">You need more rods.</span>")
|
|
else
|
|
boutput(user, "<span style=\"color:red\">You must remove the plating first.</span>")
|
|
return
|
|
|
|
if(istype(C, /obj/item/tile) && !intact)
|
|
restore_tile()
|
|
var/obj/item/tile/T = C
|
|
if(C.material)
|
|
src.setMaterial(C.material)
|
|
playsound(src.loc, "sound/weapons/Genhit.ogg", 50, 1)
|
|
|
|
if(!istype(src.material, /datum/material/metal/steel))
|
|
logTheThing("station", user, null, "constructs a floor (<b>Material:</b>: [src.material && src.material.name ? "[src.material.name]" : "*UNKNOWN*"]) at [log_loc(src)].")
|
|
|
|
if(--T.amount < 1)
|
|
qdel(T)
|
|
return
|
|
|
|
if(istype(C, /obj/item/cable_coil))
|
|
if(!intact)
|
|
var/obj/item/cable_coil/coil = C
|
|
coil.turf_place(src, user)
|
|
else
|
|
boutput(user, "<span style=\"color:red\">You must remove the plating first.</span>")
|
|
|
|
//grabsmash??
|
|
else if (istype(C, /obj/item/grab/))
|
|
var/obj/item/grab/G = C
|
|
if (!grab_smash(G, user))
|
|
return ..(C, user)
|
|
else
|
|
return
|
|
|
|
else
|
|
return attack_hand(user)
|
|
|
|
////////////////////////////////////////////ADVENTURE SIMULATED FLOORS////////////////////////
|
|
|
|
|
|
//////////////////////////////////////////////UNSIMULATED//////////////////////////////////////
|
|
|
|
/////////////////////// cogwerks - setpiece stuff
|
|
|
|
/turf/unsimulated/wall/setpieces
|
|
icon = 'icons/misc/worlds.dmi'
|
|
RL_Ignore = 0
|
|
|
|
bloodwall
|
|
name = "Bloody Wall"
|
|
desc = "Gross."
|
|
icon = 'icons/misc/meatland.dmi'
|
|
icon_state = "bloodwall_1"
|
|
|
|
leadwall
|
|
name = "Shielded Wall"
|
|
desc = "Seems pretty sturdy."
|
|
icon_state = "leadwall"
|
|
|
|
gray
|
|
icon_state = "leadwall_gray"
|
|
|
|
white
|
|
name = "Microwave Power Transmitter"
|
|
desc = "The outer shell of some large microwave array thing."
|
|
icon_state = "leadwall_white"
|
|
|
|
leadwindow
|
|
name = "Shielded Window"
|
|
desc = "Seems pretty sturdy."
|
|
icon_state = "leadwindow_1"
|
|
opacity = 0
|
|
|
|
gray
|
|
icon_state = "leadwindow_gray_1"
|
|
|
|
rootwall
|
|
name = "Overgrown Wall"
|
|
desc = "This wall is covered in vines."
|
|
icon_state = "rootwall"
|
|
|
|
bluewall
|
|
name = "blue wall"
|
|
desc = "This doesn't look normal at all."
|
|
icon_state = "bluewall"
|
|
|
|
bluewall_glowing
|
|
name = "glowing wall"
|
|
desc = "It seems to be humming slightly. Huh."
|
|
luminosity = 2
|
|
icon_state = "bluewall_glow"
|
|
can_replace_with_stuff = 1
|
|
|
|
attackby(obj/item/W as obj, mob/user as mob)
|
|
if (istype(W, /obj/item/device/key))
|
|
playsound(src.loc, "sound/effects/mag_warp.ogg", 50, 1)
|
|
src.visible_message("<span style=\"color:blue\"><b>[src] slides away!</b></span>")
|
|
src.ReplaceWithSpace() // make sure the area override says otherwise - maybe this sucks
|
|
|
|
hive
|
|
name = "hive wall"
|
|
desc = "Honeycomb's big, yeah yeah yeah."
|
|
icon = 'icons/turf/walls.dmi'
|
|
icon_state = "hive"
|
|
|
|
// -------------------- VR --------------------
|
|
/turf/unsimulated/floor/setpieces/gauntlet
|
|
name = "Gauntlet Floor"
|
|
desc = "Artist needs effort badly."
|
|
icon = 'icons/effects/VR.dmi'
|
|
icon_state = "gauntfloorDefault"
|
|
|
|
/turf/unsimulated/wall/setpieces/gauntlet
|
|
name = "Gauntlet Wall"
|
|
desc = "Is this retro? Thank god it's not team ninja."
|
|
icon = 'icons/effects/VR.dmi'
|
|
icon_state = "gauntwall"
|
|
// --------------------------------------------
|
|
|
|
/turf/proc/fall_to(var/turf/T, var/atom/A)
|
|
if(istype(A, /obj/overlay/tile_effect)) //Ok enough light falling places. Fak.
|
|
return
|
|
if (isturf(T))
|
|
visible_message("<span style=\"color:red\">[A] falls into [src]!</span>")
|
|
if (ismob(A))
|
|
var/mob/M = A
|
|
if(!M.stat && ishuman(M))
|
|
var/mob/living/carbon/human/H = M
|
|
if(H.gender == MALE) playsound(H.loc, "sound/voice/male_fallscream.ogg", 100, 0, 0, H.get_age_pitch())
|
|
else playsound(H.loc, "sound/voice/female_fallscream.ogg", 100, 0, 0, H.get_age_pitch())
|
|
random_brute_damage(M, 50)
|
|
M.paralysis += 5
|
|
spawn(0)
|
|
playsound(M.loc, pick('sound/effects/splat.ogg', 'sound/effects/fleshbr1.ogg'), 75, 1)
|
|
T.contents += A
|
|
T.Entered(A)
|
|
return
|
|
|
|
/turf/unsimulated/floor/setpieces
|
|
icon = 'icons/misc/worlds.dmi'
|
|
RL_Ignore = 0
|
|
|
|
ancient_pit
|
|
name = "Broken Stairs"
|
|
desc = "You can't see the bottom."
|
|
icon_state = "black"
|
|
|
|
Entered(atom/A as mob|obj)
|
|
if (istype(A, /mob/dead) || (istype(A, /obj/critter) && A:flying))
|
|
return ..()
|
|
|
|
if (ancientfall.len)
|
|
var/turf/T = pick(ancientfall)
|
|
fall_to(T, A)
|
|
return
|
|
else ..()
|
|
|
|
shaft
|
|
name = "Elevator Shaft"
|
|
|
|
bloodfloor
|
|
name = "Bloody Floor"
|
|
desc = "Yuck."
|
|
icon_state = "bloodfloor_1"
|
|
|
|
rootfloor
|
|
name = "Overgrown Floor"
|
|
desc = "This floor is covered in vines."
|
|
icon_state = "rootfloor_1"
|
|
|
|
oldfloor
|
|
name = "Floor"
|
|
desc = "Looks a bit different."
|
|
icon_state = "old_floor1"
|
|
|
|
bluefloor
|
|
name = "Blue Floor"
|
|
desc = "This floor looks awfully strange."
|
|
icon_state = "bluefloor"
|
|
|
|
pit
|
|
name = "Ominous Pit"
|
|
desc = "You can't see the bottom."
|
|
icon_state = "deeps"
|
|
|
|
Entered(atom/A as mob|obj)
|
|
if (istype(A, /mob/dead))
|
|
return ..()
|
|
|
|
if (deepfall.len)
|
|
var/turf/T = pick(deepfall)
|
|
fall_to(T, A)
|
|
return
|
|
else ..()
|
|
|
|
hivefloor
|
|
name = "hive floor"
|
|
desc = ""
|
|
icon = 'icons/turf/floors.dmi'
|
|
icon_state = "hive"
|
|
|
|
swampgrass
|
|
name = "reedy grass"
|
|
desc = ""
|
|
icon = 'icons/misc/worlds.dmi'
|
|
icon_state = "swampgrass"
|
|
|
|
New()
|
|
..()
|
|
dir = pick(1,2,4,8)
|
|
return
|
|
|
|
swampgrass_edging
|
|
name = "reedy grass"
|
|
desc = ""
|
|
icon = 'icons/misc/worlds.dmi'
|
|
icon_state = "swampgrass_edge"
|
|
|
|
//////////////////////////////////////////////// |