-
-
Notifications
You must be signed in to change notification settings - Fork 444
/
Copy pathcatwalk_plating.dm
102 lines (88 loc) · 3.35 KB
/
catwalk_plating.dm
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
/**
* ## catwalk flooring
*
* They show what's underneath their catwalk flooring (pipes and the like)
* you can screwdriver it to interact with the underneath stuff without destroying the tile...
* unless you want to!
*/
/turf/open/floor/catwalk_floor //the base type, meant to look like a maintenance panel
icon = 'icons/turf/floors/catwalk_plating.dmi'
icon_state = "maint_above"
name = "catwalk floor"
desc = "Flooring that shows its contents underneath. Engineers love it!"
baseturfs = /turf/open/floor/plating
floor_tile = /obj/item/stack/tile/catwalk_tile
layer = CATWALK_LAYER
footstep = FOOTSTEP_CATWALK
overfloor_placed = TRUE
underfloor_accessibility = UNDERFLOOR_VISIBLE
var/covered = TRUE
var/catwalk_type = "maint"
var/static/list/catwalk_underlays = list()
/turf/open/floor/catwalk_floor/Initialize(mapload)
. = ..()
if(!catwalk_underlays[catwalk_type])
var/mutable_appearance/plating_underlay = mutable_appearance(icon, "[catwalk_type]_below", TURF_LAYER)
catwalk_underlays[catwalk_type] = plating_underlay
underlays += catwalk_underlays[catwalk_type]
update_appearance()
/turf/open/floor/catwalk_floor/examine(mob/user)
. = ..()
if(covered)
. += span_notice("You can <b>unscrew</b> it to reveal the contents beneath.")
else
. += span_notice("You can <b>screw</b> it to hide the contents beneath.")
. += span_notice("There's a <b>small crack</b> on the edge of it.")
/turf/open/floor/catwalk_floor/screwdriver_act(mob/living/user, obj/item/tool)
. = ..()
covered = !covered
if(!covered)
underfloor_accessibility = UNDERFLOOR_INTERACTABLE
layer = TURF_LAYER
icon_state = "[catwalk_type]_below"
else
underfloor_accessibility = UNDERFLOOR_VISIBLE
layer = CATWALK_LAYER
icon_state = "[catwalk_type]_above"
levelupdate()
user.balloon_alert(user, "[!covered ? "cover removed" : "cover added"]")
tool.play_tool_sound(src)
update_appearance()
/turf/open/floor/catwalk_floor/crowbar_act(mob/user, obj/item/crowbar)
if(covered)
user.balloon_alert(user, "remove cover first!")
return FALSE
. = ..()
//Reskins! More fitting with most of our tiles, and appear as a radial on the base type
/turf/open/floor/catwalk_floor/iron
name = "iron plated catwalk floor"
icon_state = "iron_above"
floor_tile = /obj/item/stack/tile/catwalk_tile/iron
catwalk_type = "iron"
/turf/open/floor/catwalk_floor/iron_white
name = "white plated catwalk floor"
icon_state = "whiteiron_above"
floor_tile = /obj/item/stack/tile/catwalk_tile/iron_white
catwalk_type = "whiteiron"
/turf/open/floor/catwalk_floor/iron_dark
name = "dark plated catwalk floor"
icon_state = "darkiron_above"
floor_tile = /obj/item/stack/tile/catwalk_tile/iron_dark
catwalk_type = "darkiron"
/turf/open/floor/catwalk_floor/flat_white
name = "white large plated catwalk floor"
icon_state = "flatwhite_above"
floor_tile = /obj/item/stack/tile/catwalk_tile/flat_white
catwalk_type = "flatwhite"
/turf/open/floor/catwalk_floor/titanium
name = "titanium plated catwalk floor"
icon_state = "titanium_above"
floor_tile = /obj/item/stack/tile/catwalk_tile/titanium
catwalk_type = "titanium"
/turf/open/floor/catwalk_floor/iron_smooth //the original green type
name = "smooth plated catwalk floor"
icon_state = "smoothiron_above"
floor_tile = /obj/item/stack/tile/catwalk_tile/iron_smooth
catwalk_type = "smoothiron"
/turf/open/floor/catwalk_floor/telecomms
initial_gas_mix = TCOMMS_ATMOS