Files
Sonoida 27b2e2a9e8 new GATO carpet (thanks Cubic) + minor map fixes
- first variant of GATO carpet (made by CubicP1sa)
- small mapping fixes on Pubby (centered around the bar)
2023-01-12 00:10:03 +01:00

524 lines
16 KiB
Plaintext

/* In this file:
* Wood floor
* Grass floor
* Fake Basalt
* Carpet floor
* Fake pits
* Fake space
* Plaswood floor
* Shadow wood floor
* Giant mushroom floor
*/
/turf/open/floor/wood
desc = "Stylish dark wood."
icon_state = "wood"
floor_tile = /obj/item/stack/tile/wood
broken_states = list("wood-broken", "wood-broken2", "wood-broken3", "wood-broken4", "wood-broken5", "wood-broken6", "wood-broken7")
footstep = FOOTSTEP_WOOD
barefootstep = FOOTSTEP_WOOD_BAREFOOT
clawfootstep = FOOTSTEP_WOOD_CLAW
heavyfootstep = FOOTSTEP_GENERIC_HEAVY
tiled_dirt = FALSE
/turf/open/floor/wood/examine(mob/user)
. = ..()
. += "<span class='notice'>There's a few <b>screws</b> and a <b>small crack</b> visible.</span>"
/turf/open/floor/wood/screwdriver_act(mob/living/user, obj/item/I)
if(..())
return TRUE
return pry_tile(I, user)
/turf/open/floor/wood/try_replace_tile(obj/item/stack/tile/T, mob/user, params)
if(T.turf_type == type)
return
var/obj/item/tool = user.is_holding_item_of_type(/obj/item/screwdriver)
if(!tool)
tool = user.is_holding_item_of_type(/obj/item/crowbar)
if(!tool)
return
var/turf/open/floor/plating/P = pry_tile(tool, user, TRUE)
if(!istype(P))
return
P.attackby(T, user, params)
/turf/open/floor/wood/pry_tile(obj/item/C, mob/user, silent = FALSE)
C.play_tool_sound(src, 80)
return remove_tile(user, silent, (C.tool_behaviour == TOOL_SCREWDRIVER))
/turf/open/floor/wood/remove_tile(mob/user, silent = FALSE, make_tile = TRUE, forced = FALSE)
if(broken || burnt)
broken = 0
burnt = 0
if(user && !silent)
to_chat(user, "<span class='notice'>You remove the broken planks.</span>")
else
if(make_tile)
if(user && !silent)
to_chat(user, "<span class='notice'>You unscrew the planks.</span>")
if(floor_tile)
new floor_tile(src)
else
if(user && !silent)
to_chat(user, "<span class='notice'>You forcefully pry off the planks, destroying them in the process.</span>")
return make_plating()
/turf/open/floor/wood/cold
temperature = 255.37
/turf/open/floor/wood/airless
initial_gas_mix = AIRLESS_ATMOS
/turf/open/floor/grass
name = "grass patch"
desc = "You can't tell if this is real grass or just cheap plastic imitation."
icon_state = "grass"
floor_tile = /obj/item/stack/tile/grass
broken_states = list("sand")
flags_1 = NONE
bullet_bounce_sound = null
footstep = FOOTSTEP_GRASS
barefootstep = FOOTSTEP_GRASS
clawfootstep = FOOTSTEP_GRASS
heavyfootstep = FOOTSTEP_GENERIC_HEAVY
var/ore_type = /obj/item/stack/ore/glass
var/turfverb = "uproot"
tiled_dirt = FALSE
/turf/open/floor/grass/Initialize()
. = ..()
update_icon()
/turf/open/floor/grass/attackby(obj/item/C, mob/user, params)
if((C.tool_behaviour == TOOL_SHOVEL) && params)
new ore_type(src, 2)
user.visible_message("[user] digs up [src].", "<span class='notice'>You [turfverb] [src].</span>")
playsound(src, 'sound/effects/shovel_dig.ogg', 50, 1)
make_plating()
if(..())
return
/turf/open/floor/grass/fairy //like grass but fae-er
name = "fairygrass patch"
desc = "Something about this grass makes you want to frolic. Or get high."
icon_state = "fairygrass"
floor_tile = /obj/item/stack/tile/fairygrass
light_range = 2
light_power = 0.80
light_color = "#33CCFF"
color = "#33CCFF"
/turf/open/floor/grass/fairy/white
name = "white fairygrass patch"
light_color = "#FFFFFF"
color = "#FFFFFF"
floor_tile = /obj/item/stack/tile/fairygrass/white
/turf/open/floor/grass/fairy/red
name = "red fairygrass patch"
light_color = "#FF3333"
color = "#FF3333"
floor_tile = /obj/item/stack/tile/fairygrass/red
/turf/open/floor/grass/fairy/yellow
name = "yellow fairygrass patch"
light_color = "#FFFF66"
color = "#FFFF66"
floor_tile = /obj/item/stack/tile/fairygrass/yellow
/turf/open/floor/grass/fairy/green
name = "green fairygrass patch"
light_color = "#99FF99"
color = "#99FF99"
floor_tile = /obj/item/stack/tile/fairygrass/green
/turf/open/floor/grass/fairy/blue
name = "blue fairygrass patch"
floor_tile = /obj/item/stack/tile/fairygrass/blue
/turf/open/floor/grass/fairy/purple
name = "purple fairygrass patch"
light_color = "#D966FF"
color = "#D966FF"
floor_tile = /obj/item/stack/tile/fairygrass/purple
/turf/open/floor/grass/fairy/pink
name = "pink fairygrass patch"
light_color = "#FFB3DA"
color = "#FFB3DA"
floor_tile = /obj/item/stack/tile/fairygrass/pink
/turf/open/floor/grass/snow
gender = PLURAL
name = "snow"
icon = 'icons/turf/snow.dmi'
desc = "Looks cold."
icon_state = "snow"
ore_type = /obj/item/stack/sheet/mineral/snow
planetary_atmos = TRUE
floor_tile = null
initial_gas_mix = FROZEN_ATMOS
slowdown = 2
bullet_sizzle = TRUE
footstep = FOOTSTEP_SAND
barefootstep = FOOTSTEP_SAND
clawfootstep = FOOTSTEP_SAND
heavyfootstep = FOOTSTEP_GENERIC_HEAVY
/turf/open/floor/grass/snow/try_replace_tile(obj/item/stack/tile/T, mob/user, params)
return
/turf/open/floor/grass/snow/crowbar_act(mob/living/user, obj/item/I)
return
/turf/open/floor/grass/snow/basalt //By your powers combined, I am captain planet
gender = NEUTER
name = "volcanic floor"
icon = 'icons/turf/floors.dmi'
icon_state = "basalt"
ore_type = /obj/item/stack/ore/glass/basalt
initial_gas_mix = LAVALAND_DEFAULT_ATMOS
slowdown = 0
/turf/open/floor/grass/snow/basalt/Initialize()
. = ..()
if(prob(15))
icon_state = "basalt[rand(0, 12)]"
set_basalt_light(src)
/turf/open/floor/grass/fakebasalt //Heart is not a real planeteer power
name = "aesthetic volcanic flooring"
desc = "Safely recreated turf for your hellplanet-scaping."
icon = 'icons/turf/floors.dmi'
icon_state = "basalt"
floor_tile = /obj/item/stack/tile/basalt
ore_type = /obj/item/stack/ore/glass/basalt
turfverb = "dig up"
slowdown = 0
footstep = FOOTSTEP_SAND
barefootstep = FOOTSTEP_SAND
clawfootstep = FOOTSTEP_SAND
heavyfootstep = FOOTSTEP_GENERIC_HEAVY
/turf/open/floor/grass/fakebasalt/Initialize()
. = ..()
if(prob(15))
icon_state = "basalt[rand(0, 12)]"
set_basalt_light(src)
/turf/open/floor/carpet
name = "carpet"
desc = "Soft velvet carpeting. Feels good between your toes."
icon = 'icons/turf/floors/carpet.dmi'
icon_state = "carpet"
floor_tile = /obj/item/stack/tile/carpet
broken_states = list("damaged")
smooth = SMOOTH_TRUE
canSmoothWith = list(/turf/open/floor/carpet)
flags_1 = NONE
bullet_bounce_sound = null
footstep = FOOTSTEP_CARPET
barefootstep = FOOTSTEP_CARPET_BAREFOOT
clawfootstep = FOOTSTEP_CARPET_BAREFOOT
heavyfootstep = FOOTSTEP_GENERIC_HEAVY
tiled_dirt = FALSE
/turf/open/floor/carpet/examine(mob/user)
. = ..()
. += "<span class='notice'>There's a <b>small crack</b> on the edge of it.</span>"
/turf/open/floor/carpet/Initialize()
. = ..()
update_icon()
/turf/open/floor/carpet/update_icon()
if(!..())
return 0
if(!broken && !burnt)
if(smooth)
queue_smooth(src)
else
make_plating()
if(smooth)
queue_smooth_neighbors(src)
/turf/open/floor/carpet/black
icon = 'icons/turf/floors/carpet_black.dmi'
floor_tile = /obj/item/stack/tile/carpet/black
canSmoothWith = list(/turf/open/floor/carpet/black, /turf/open/floor/carpet/blackred, /turf/open/floor/carpet/monochrome)
/turf/open/floor/carpet/blackred
icon = 'icons/turf/floors/carpet_blackred.dmi'
floor_tile = /obj/item/stack/tile/carpet/blackred
icon_state = "tile-carpet-blackred"
canSmoothWith = list(/turf/open/floor/carpet/black, /turf/open/floor/carpet/blackred, /turf/open/floor/carpet/monochrome)
/turf/open/floor/carpet/monochrome
icon = 'icons/turf/floors/carpet_monochrome.dmi'
floor_tile = /obj/item/stack/tile/carpet/monochrome
icon_state = "tile-carpet-monochrome"
canSmoothWith = list(/turf/open/floor/carpet/black, /turf/open/floor/carpet/blackred, /turf/open/floor/carpet/monochrome)
/turf/open/floor/carpet/blue
icon = 'icons/turf/floors/carpet_blue.dmi'
floor_tile = /obj/item/stack/tile/carpet/blue
canSmoothWith = list(/turf/open/floor/carpet/blue)
/turf/open/floor/carpet/cyan
icon = 'icons/turf/floors/carpet_cyan.dmi'
floor_tile = /obj/item/stack/tile/carpet/cyan
canSmoothWith = list(/turf/open/floor/carpet/cyan)
/turf/open/floor/carpet/green
icon = 'icons/turf/floors/carpet_green.dmi'
floor_tile = /obj/item/stack/tile/carpet/green
canSmoothWith = list(/turf/open/floor/carpet/green)
/turf/open/floor/carpet/orange
icon = 'icons/turf/floors/carpet_orange.dmi'
floor_tile = /obj/item/stack/tile/carpet/orange
canSmoothWith = list(/turf/open/floor/carpet/orange)
/turf/open/floor/carpet/purple
icon = 'icons/turf/floors/carpet_purple.dmi'
floor_tile = /obj/item/stack/tile/carpet/purple
canSmoothWith = list(/turf/open/floor/carpet/purple)
/turf/open/floor/carpet/red
icon = 'icons/turf/floors/carpet_red.dmi'
floor_tile = /obj/item/stack/tile/carpet/red
canSmoothWith = list(/turf/open/floor/carpet/red)
/turf/open/floor/carpet/royalblack
icon = 'icons/turf/floors/carpet_royalblack.dmi'
floor_tile = /obj/item/stack/tile/carpet/royalblack
canSmoothWith = list(/turf/open/floor/carpet/royalblack)
/turf/open/floor/carpet/royalblue
icon = 'icons/turf/floors/carpet_royalblue.dmi'
floor_tile = /obj/item/stack/tile/carpet/royalblue
canSmoothWith = list(/turf/open/floor/carpet/royalblue)
/turf/open/floor/carpet/gato //GS13
icon = 'icons/turf/floors/carpet_gato.dmi'
floor_tile = /obj/item/stack/tile/carpet/gato
canSmoothWith = list(/turf/open/floor/carpet/gato)
/turf/open/floor/carpet/narsie_act(force, ignore_mobs, probability = 20)
. = (prob(probability) || force)
for(var/I in src)
var/atom/A = I
if(ignore_mobs && ismob(A))
continue
if(ismob(A) || .)
A.narsie_act()
/turf/open/floor/carpet/break_tile()
broken = TRUE
update_icon()
/turf/open/floor/carpet/burn_tile()
burnt = TRUE
update_icon()
/turf/open/floor/carpet/get_smooth_underlay_icon(mutable_appearance/underlay_appearance, turf/asking_turf, adjacency_dir)
return FALSE
/turf/open/floor/fakepit
desc = "A clever illusion designed to look like a bottomless pit."
smooth = SMOOTH_TRUE | SMOOTH_BORDER | SMOOTH_MORE
canSmoothWith = list(/turf/open/floor/fakepit)
icon = 'icons/turf/floors/Chasms.dmi'
icon_state = "smooth"
tiled_dirt = FALSE
/turf/open/floor/fakepit/get_smooth_underlay_icon(mutable_appearance/underlay_appearance, turf/asking_turf, adjacency_dir)
underlay_appearance.icon = 'icons/turf/floors.dmi'
underlay_appearance.icon_state = "basalt"
return TRUE
/turf/open/floor/fakespace
icon = 'icons/turf/space.dmi'
icon_state = "0"
floor_tile = /obj/item/stack/tile/fakespace
broken_states = list("damaged")
plane = PLANE_SPACE
tiled_dirt = FALSE
/turf/open/floor/fakespace/Initialize()
. = ..()
icon_state = SPACE_ICON_STATE
/turf/open/floor/fakespace/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
/turf/open/floor/shadoww
desc = "Stylish shadown wood."
icon_state = "shadoww"
floor_tile = /obj/item/stack/tile/shadoww
broken_states = list("shadoww-broken", "shadoww-broken2", "shadoww-broken3", "shadoww-broken4", "shadoww-broken5", "shadoww-broken6", "shadoww-broken7")
footstep = FOOTSTEP_WOOD
barefootstep = FOOTSTEP_WOOD_BAREFOOT
clawfootstep = FOOTSTEP_WOOD_CLAW
heavyfootstep = FOOTSTEP_GENERIC_HEAVY
tiled_dirt = FALSE
/turf/open/floor/shadoww/examine(mob/user)
. = ..()
. += "<span class='notice'>There's a few <b>screws</b> and a <b>small crack</b> visible.</span>"
/turf/open/floor/shadoww/screwdriver_act(mob/living/user, obj/item/I)
if(..())
return TRUE
return pry_tile(I, user)
/turf/open/floor/shadoww/try_replace_tile(obj/item/stack/tile/T, mob/user, params)
if(T.turf_type == type)
return
var/obj/item/tool = user.is_holding_item_of_type(/obj/item/screwdriver)
if(!tool)
tool = user.is_holding_item_of_type(/obj/item/crowbar)
if(!tool)
return
var/turf/open/floor/plating/P = pry_tile(tool, user, TRUE)
if(!istype(P))
return
P.attackby(T, user, params)
/turf/open/floor/shadoww/pry_tile(obj/item/C, mob/user, silent = FALSE)
C.play_tool_sound(src, 80)
return remove_tile(user, silent, (C.tool_behaviour == TOOL_SCREWDRIVER))
/turf/open/floor/shadoww/remove_tile(mob/user, silent = FALSE, make_tile = TRUE, forced = FALSE)
if(broken || burnt)
broken = 0
burnt = 0
if(user && !silent)
to_chat(user, "<span class='notice'>You remove the broken planks.</span>")
else
if(make_tile)
if(user && !silent)
to_chat(user, "<span class='notice'>You unscrew the planks.</span>")
if(floor_tile)
new floor_tile(src)
else
if(user && !silent)
to_chat(user, "<span class='notice'>You forcefully pry off the planks, destroying them in the process.</span>")
return make_plating()
/turf/open/floor/gmushroom
desc = "Stylish mushroom 'wood'."
icon_state = "gmushroom"
floor_tile = /obj/item/stack/tile/gmushroom
broken_states = list("gmushroom-broken", "gmushroom-broken2", "gmushroom-broken3", "gmushroom-broken4", "gmushroom-broken5", "gmushroom-broken6", "gmushroom-broken7")
footstep = FOOTSTEP_WOOD
barefootstep = FOOTSTEP_WOOD_BAREFOOT
clawfootstep = FOOTSTEP_WOOD_CLAW
heavyfootstep = FOOTSTEP_GENERIC_HEAVY
tiled_dirt = FALSE
/turf/open/floor/gmushroom/examine(mob/user)
. = ..()
. += "<span class='notice'>There's a few <b>screws</b> and a <b>small crack</b> visible.</span>"
/turf/open/floor/gmushroom/screwdriver_act(mob/living/user, obj/item/I)
if(..())
return TRUE
return pry_tile(I, user)
/turf/open/floor/gmushroom/try_replace_tile(obj/item/stack/tile/T, mob/user, params)
if(T.turf_type == type)
return
var/obj/item/tool = user.is_holding_item_of_type(/obj/item/screwdriver)
if(!tool)
tool = user.is_holding_item_of_type(/obj/item/crowbar)
if(!tool)
return
var/turf/open/floor/plating/P = pry_tile(tool, user, TRUE)
if(!istype(P))
return
P.attackby(T, user, params)
/turf/open/floor/gmushroom/pry_tile(obj/item/C, mob/user, silent = FALSE)
C.play_tool_sound(src, 80)
return remove_tile(user, silent, (C.tool_behaviour == TOOL_SCREWDRIVER))
/turf/open/floor/gmushroom/remove_tile(mob/user, silent = FALSE, make_tile = TRUE, forced = FALSE)
if(broken || burnt)
broken = 0
burnt = 0
if(user && !silent)
to_chat(user, "<span class='notice'>You remove the broken planks.</span>")
else
if(make_tile)
if(user && !silent)
to_chat(user, "<span class='notice'>You unscrew the planks.</span>")
if(floor_tile)
new floor_tile(src)
else
if(user && !silent)
to_chat(user, "<span class='notice'>You forcefully pry off the planks, destroying them in the process.</span>")
return make_plating()
/turf/open/floor/plaswood
desc = "Stylish plaswood."
icon_state = "plaswood"
floor_tile = /obj/item/stack/tile/plaswood
broken_states = list("plaswood-broken", "plaswood-broken2", "plaswood-broken3", "plaswood-broken4", "plaswood-broken5", "plaswood-broken6", "plaswood-broken7")
footstep = FOOTSTEP_WOOD
barefootstep = FOOTSTEP_WOOD_BAREFOOT
clawfootstep = FOOTSTEP_WOOD_CLAW
heavyfootstep = FOOTSTEP_GENERIC_HEAVY
tiled_dirt = FALSE
/turf/open/floor/plaswood/examine(mob/user)
. = ..()
. += "<span class='notice'>There's a few <b>screws</b> and a <b>small crack</b> visible.</span>"
/turf/open/floor/plaswood/screwdriver_act(mob/living/user, obj/item/I)
if(..())
return TRUE
return pry_tile(I, user)
/turf/open/floor/plaswood/try_replace_tile(obj/item/stack/tile/T, mob/user, params)
if(T.turf_type == type)
return
var/obj/item/tool = user.is_holding_item_of_type(/obj/item/screwdriver)
if(!tool)
tool = user.is_holding_item_of_type(/obj/item/crowbar)
if(!tool)
return
var/turf/open/floor/plating/P = pry_tile(tool, user, TRUE)
if(!istype(P))
return
P.attackby(T, user, params)
/turf/open/floor/plaswood/pry_tile(obj/item/C, mob/user, silent = FALSE)
C.play_tool_sound(src, 80)
return remove_tile(user, silent, (C.tool_behaviour == TOOL_SCREWDRIVER))
/turf/open/floor/plaswood/remove_tile(mob/user, silent = FALSE, make_tile = TRUE, forced = FALSE)
if(broken || burnt)
broken = 0
burnt = 0
if(user && !silent)
to_chat(user, "<span class='notice'>You remove the broken planks.</span>")
else
if(make_tile)
if(user && !silent)
to_chat(user, "<span class='notice'>You unscrew the planks.</span>")
if(floor_tile)
new floor_tile(src)
else
if(user && !silent)
to_chat(user, "<span class='notice'>You forcefully pry off the planks, destroying them in the process.</span>")
return make_plating()