mirror of
https://github.com/Citadel-Station-13/Citadel-Station-13-RP.git
synced 2026-08-30 03:26:56 +01:00
refactors paint helpers and hopefully fixes them (?) (#7132)
This commit is contained in:
@@ -12,22 +12,20 @@
|
||||
/obj/map_helper
|
||||
icon = 'icons/mapping/helpers/mapping_helpers.dmi'
|
||||
icon_state = ""
|
||||
plane = DEBUG_PLANE
|
||||
layer = DEBUG_LAYER_MAP_HELPERS
|
||||
|
||||
/// overrides [late]
|
||||
/// makes us register as a map initialization hook, which fires before atom init.
|
||||
/// you have to qdel self if you use this! it will not be automatically done if so.
|
||||
/// * you have to qdel self if you use this! it will not be automatically done if so.
|
||||
var/early = FALSE
|
||||
/// use LateInitialize instead of Initialize
|
||||
/// this gets rid of the automatic qdel self behavior so you have to do it yourself.
|
||||
/// * this gets rid of the automatic qdel self behavior so you have to do it yourself.
|
||||
var/late = FALSE
|
||||
|
||||
/// preloading instance fired
|
||||
var/was_in_mapload = FALSE
|
||||
|
||||
/obj/map_helper/New()
|
||||
pass()
|
||||
return ..()
|
||||
|
||||
/obj/map_helper/preloading_instance(datum/dmm_context/context)
|
||||
. = ..()
|
||||
was_in_mapload = TRUE
|
||||
@@ -35,11 +33,12 @@
|
||||
hook_map_initializations(context)
|
||||
|
||||
/obj/map_helper/Initialize(mapload)
|
||||
SHOULD_CALL_PARENT(FALSE)
|
||||
var/let_me_live = FALSE
|
||||
if(!was_in_mapload)
|
||||
message_admins("a datum with map initializations was created. if this was you, you are in charge of invoking map_initializations() on it. this is not called by default outside of mapload as many things using the hook are highly destructive.")
|
||||
let_me_live = TRUE
|
||||
. = ..()
|
||||
atom_flags |= ATOM_INITIALIZED
|
||||
if(late)
|
||||
return INITIALIZE_HINT_LATELOAD // fire LateInitialize()
|
||||
else if(early)
|
||||
|
||||
@@ -1,25 +1,23 @@
|
||||
#define CREATE_PAINT(x, c) /obj/effect/paint/x/color=c
|
||||
#define CREATE_PAINT_STRIPE(x, c) /obj/effect/paint_stripe/x/color=c
|
||||
|
||||
// todo: why tf isn't this a map helper
|
||||
// TODO: make this a map helper for my sanity. @Zandario
|
||||
|
||||
/obj/effect/paint
|
||||
/**
|
||||
* Used to repaint structural tiles (walls, low-walls, etc) fully as needed.
|
||||
*/
|
||||
/obj/map_helper/paint
|
||||
name = "coat of paint"
|
||||
// TODO: resprite this and put it in helper icons folder
|
||||
icon = 'icons/effects/effects.dmi'
|
||||
icon_state = "wall_paint_effect"
|
||||
layer = ABOVE_TURF_LAYER
|
||||
blend_mode = BLEND_MULTIPLY
|
||||
late = TRUE
|
||||
|
||||
/obj/effect/paint/Initialize()
|
||||
. = ..()
|
||||
return INITIALIZE_HINT_LATELOAD
|
||||
|
||||
/obj/effect/paint/LateInitialize()
|
||||
for(var/obj/effect/paint/paint in loc)
|
||||
/obj/map_helper/paint/LateInitialize()
|
||||
for(var/obj/map_helper/paint/paint in loc)
|
||||
if(paint == src)
|
||||
continue
|
||||
WARNING("Duplicate paint found at [x], [y], [z]")
|
||||
stack_trace("Duplicate paint found at [audit_loc()]")
|
||||
qdel(src)
|
||||
return
|
||||
|
||||
if(!color)
|
||||
stack_trace("/paint helper at [audit_loc()] has no color")
|
||||
qdel(src)
|
||||
return
|
||||
|
||||
@@ -27,120 +25,49 @@
|
||||
|
||||
if(istype(loc, /turf/simulated/wall))
|
||||
var/turf/simulated/wall/target_wall = loc
|
||||
if(!isnull(color))
|
||||
target_wall.paint_wall(color)
|
||||
target_wall.paint_wall(color)
|
||||
did_anything = TRUE
|
||||
|
||||
else
|
||||
var/obj/structure/wall_frame/low_wall = locate() in loc
|
||||
if(low_wall)
|
||||
if(!isnull(color))
|
||||
low_wall.paint_color = color
|
||||
low_wall.stripe_color = color
|
||||
low_wall.update_appearance()
|
||||
low_wall.stripe_color = color
|
||||
low_wall.update_appearance()
|
||||
did_anything = TRUE
|
||||
|
||||
if(!did_anything)
|
||||
WARNING("Redundant paint helper found at [x], [y], [z]")
|
||||
stack_trace("Redundant paint helper found at [audit_loc()]")
|
||||
|
||||
qdel(src)
|
||||
|
||||
//Stripes the wall it spawns on, then dies
|
||||
/obj/effect/paint_stripe
|
||||
name = "stripe of paint"
|
||||
icon = 'icons/effects/effects.dmi'
|
||||
icon_state = "paintdot"
|
||||
layer = ABOVE_TURF_LAYER
|
||||
blend_mode = BLEND_MULTIPLY
|
||||
#define CREATE_WALL_PAINT(x, c) /obj/map_helper/paint/x/color=c
|
||||
|
||||
/obj/effect/paint_stripe/Initialize()
|
||||
. = ..()
|
||||
return INITIALIZE_HINT_LATELOAD
|
||||
CREATE_WALL_PAINT(beastybrown, COLOR_CARGO_BROWN)
|
||||
CREATE_WALL_PAINT(pipecyan, COLOR_ATMOSPHERICS_CYAN)
|
||||
CREATE_WALL_PAINT(sun, COLOR_SUN)
|
||||
CREATE_WALL_PAINT(red, COLOR_RED)
|
||||
CREATE_WALL_PAINT(silver, COLOR_SILVER)
|
||||
CREATE_WALL_PAINT(black, COLOR_GRAY20)
|
||||
CREATE_WALL_PAINT(green, COLOR_GREEN)
|
||||
CREATE_WALL_PAINT(navy, COLOR_NAVY)
|
||||
CREATE_WALL_PAINT(eggshell, COLOR_EGGSHELL)
|
||||
CREATE_WALL_PAINT(beige, COLOR_BEIGE)
|
||||
CREATE_WALL_PAINT(darkred, COLOR_SECURITY_RED)
|
||||
CREATE_WALL_PAINT(maroon, COLOR_MAROON)
|
||||
CREATE_WALL_PAINT(cyanblue, COLOR_CYAN_BLUE)
|
||||
CREATE_WALL_PAINT(copper, COLOR_COPPER)
|
||||
CREATE_WALL_PAINT(amber, COLOR_AMBER)
|
||||
CREATE_WALL_PAINT(wallgunmetal, COLOR_WALL_GUNMETAL)
|
||||
CREATE_WALL_PAINT(bottlegreen, COLOR_BOTTLE_GREEN)
|
||||
CREATE_WALL_PAINT(palebottlegreen, COLOR_PALE_BTL_GREEN)
|
||||
CREATE_WALL_PAINT(pakistangreen, COLOR_PAKISTAN_GREEN)
|
||||
CREATE_WALL_PAINT(offwhite, COLOR_OFF_WHITE)
|
||||
CREATE_WALL_PAINT(violet, COLOR_EXPLO_VIOLET)
|
||||
CREATE_WALL_PAINT(gunmetal, COLOR_GUNMETAL)
|
||||
CREATE_WALL_PAINT(paleorange, COLOR_PALE_ORANGE)
|
||||
CREATE_WALL_PAINT(commandblue, COLOR_COMMAND_BLUE)
|
||||
CREATE_WALL_PAINT(purple, COLOR_PURPLE)
|
||||
CREATE_WALL_PAINT(purplegray, COLOR_PURPLE_GRAY)
|
||||
CREATE_WALL_PAINT(babyblue, COLOR_BABY_BLUE)
|
||||
CREATE_WALL_PAINT(hardwood, WOOD_COLOR_HARDWOOD)
|
||||
|
||||
/obj/effect/paint_stripe/LateInitialize()
|
||||
for(var/obj/effect/paint_stripe/paint in loc)
|
||||
if(paint == src)
|
||||
continue
|
||||
WARNING("Duplicate paint stripe found at [x], [y], [z]")
|
||||
qdel(src)
|
||||
return
|
||||
|
||||
var/did_anything = FALSE
|
||||
|
||||
if(istype(loc, /turf/simulated/wall))
|
||||
var/turf/simulated/wall/target_wall = loc
|
||||
if(!isnull(color))
|
||||
target_wall.paint_stripe(color)
|
||||
did_anything = TRUE
|
||||
|
||||
else
|
||||
var/obj/structure/wall_frame/low_wall = locate() in loc
|
||||
if(low_wall)
|
||||
if(!isnull(color))
|
||||
low_wall.stripe_color = color
|
||||
low_wall.update_appearance()
|
||||
did_anything = TRUE
|
||||
|
||||
if(!did_anything)
|
||||
WARNING("Redundant paint helper found at [x], [y], [z]")
|
||||
|
||||
qdel(src)
|
||||
|
||||
//paint defines
|
||||
|
||||
CREATE_PAINT(beastybrown, COLOR_CARGO_BROWN)
|
||||
CREATE_PAINT(pipecyan, COLOR_ATMOSPHERICS_CYAN)
|
||||
CREATE_PAINT(sun, COLOR_SUN)
|
||||
CREATE_PAINT(red, COLOR_RED)
|
||||
CREATE_PAINT(silver, COLOR_SILVER)
|
||||
CREATE_PAINT(black, COLOR_GRAY20)
|
||||
CREATE_PAINT(green, COLOR_GREEN)
|
||||
CREATE_PAINT(navy, COLOR_NAVY)
|
||||
CREATE_PAINT(eggshell, COLOR_EGGSHELL)
|
||||
CREATE_PAINT(beige, COLOR_BEIGE)
|
||||
CREATE_PAINT(darkred, COLOR_SECURITY_RED)
|
||||
CREATE_PAINT(maroon, COLOR_MAROON)
|
||||
CREATE_PAINT(cyanblue, COLOR_CYAN_BLUE)
|
||||
CREATE_PAINT(copper, COLOR_COPPER)
|
||||
CREATE_PAINT(amber, COLOR_AMBER)
|
||||
CREATE_PAINT(wallgunmetal, COLOR_WALL_GUNMETAL)
|
||||
CREATE_PAINT(bottlegreen, COLOR_BOTTLE_GREEN)
|
||||
CREATE_PAINT(palebottlegreen, COLOR_PALE_BTL_GREEN)
|
||||
CREATE_PAINT(pakistangreen, COLOR_PAKISTAN_GREEN)
|
||||
CREATE_PAINT(offwhite, COLOR_OFF_WHITE)
|
||||
CREATE_PAINT(violet, COLOR_EXPLO_VIOLET)
|
||||
CREATE_PAINT(gunmetal, COLOR_GUNMETAL)
|
||||
CREATE_PAINT(paleorange, COLOR_PALE_ORANGE)
|
||||
CREATE_PAINT(commandblue, COLOR_COMMAND_BLUE)
|
||||
CREATE_PAINT(purple, COLOR_PURPLE)
|
||||
CREATE_PAINT(purplegray, COLOR_PURPLE_GRAY)
|
||||
CREATE_PAINT(babyblue, COLOR_BABY_BLUE)
|
||||
CREATE_PAINT(hardwood, WOOD_COLOR_HARDWOOD)
|
||||
|
||||
CREATE_PAINT_STRIPE(beastybrown, COLOR_CARGO_BROWN)
|
||||
CREATE_PAINT_STRIPE(sun, COLOR_SUN)
|
||||
CREATE_PAINT_STRIPE(red, COLOR_RED)
|
||||
CREATE_PAINT_STRIPE(silver, COLOR_SILVER)
|
||||
CREATE_PAINT_STRIPE(black, COLOR_GRAY20)
|
||||
CREATE_PAINT_STRIPE(green, COLOR_GREEN)
|
||||
CREATE_PAINT_STRIPE(navy, COLOR_NAVY)
|
||||
CREATE_PAINT_STRIPE(eggshell, COLOR_EGGSHELL)
|
||||
CREATE_PAINT_STRIPE(beige, COLOR_BEIGE)
|
||||
CREATE_PAINT_STRIPE(darkred, COLOR_SECURITY_RED)
|
||||
CREATE_PAINT_STRIPE(maroon, COLOR_MAROON)
|
||||
CREATE_PAINT_STRIPE(cyanblue, COLOR_CYAN_BLUE)
|
||||
CREATE_PAINT_STRIPE(copper, COLOR_COPPER)
|
||||
CREATE_PAINT_STRIPE(amber, COLOR_AMBER)
|
||||
CREATE_PAINT_STRIPE(wallgunmetal, COLOR_WALL_GUNMETAL)
|
||||
CREATE_PAINT_STRIPE(bottlegreen, COLOR_BOTTLE_GREEN)
|
||||
CREATE_PAINT_STRIPE(palebottlegreen, COLOR_PALE_BTL_GREEN)
|
||||
CREATE_PAINT_STRIPE(pakistangreen, COLOR_PAKISTAN_GREEN)
|
||||
CREATE_PAINT_STRIPE(offwhite, COLOR_OFF_WHITE)
|
||||
CREATE_PAINT_STRIPE(violet, COLOR_EXPLO_VIOLET)
|
||||
CREATE_PAINT_STRIPE(gunmetal, COLOR_GUNMETAL)
|
||||
CREATE_PAINT_STRIPE(paleorange, COLOR_PALE_ORANGE)
|
||||
CREATE_PAINT_STRIPE(commandblue, COLOR_COMMAND_BLUE)
|
||||
CREATE_PAINT_STRIPE(purple, COLOR_PURPLE)
|
||||
CREATE_PAINT_STRIPE(purplegray, COLOR_PURPLE_GRAY)
|
||||
CREATE_PAINT_STRIPE(babyblue, COLOR_BABY_BLUE)
|
||||
CREATE_PAINT_STRIPE(pipecyan, COLOR_ATMOSPHERICS_CYAN)
|
||||
#undef CREATE_WALL_PAINT
|
||||
|
||||
@@ -0,0 +1,72 @@
|
||||
/**
|
||||
* Used to stripe structural tiles (walls, low-walls, etc) fully as needed.
|
||||
*/
|
||||
/obj/map_helper/paint_stripe
|
||||
name = "stripe of paint"
|
||||
// TODO: resprite this and put it in helper icons folder
|
||||
icon = 'icons/effects/effects.dmi'
|
||||
icon_state = "paintdot"
|
||||
late = TRUE
|
||||
|
||||
/obj/map_helper/paint_stripe/LateInitialize()
|
||||
for(var/obj/map_helper/paint_stripe/paint in loc)
|
||||
if(paint == src)
|
||||
continue
|
||||
stack_trace("Duplicate paint stripe found at [audit_loc()]")
|
||||
qdel(src)
|
||||
return
|
||||
|
||||
if(!color)
|
||||
stack_trace("/paint helper at [audit_loc()] has no color")
|
||||
qdel(src)
|
||||
return
|
||||
|
||||
var/did_anything = FALSE
|
||||
|
||||
if(istype(loc, /turf/simulated/wall))
|
||||
var/turf/simulated/wall/target_wall = loc
|
||||
target_wall.paint_stripe(color)
|
||||
did_anything = TRUE
|
||||
else
|
||||
var/obj/structure/wall_frame/low_wall = locate() in loc
|
||||
if(low_wall)
|
||||
low_wall.stripe_color = color
|
||||
low_wall.update_appearance()
|
||||
did_anything = TRUE
|
||||
|
||||
if(!did_anything)
|
||||
stack_trace("Redundant paint helper found at [audit_loc()]")
|
||||
|
||||
qdel(src)
|
||||
|
||||
#define CREATE_PAINT_STRIPE(x, c) /obj/map_helper/paint_stripe/x/color=c
|
||||
|
||||
CREATE_PAINT_STRIPE(beastybrown, COLOR_CARGO_BROWN)
|
||||
CREATE_PAINT_STRIPE(sun, COLOR_SUN)
|
||||
CREATE_PAINT_STRIPE(red, COLOR_RED)
|
||||
CREATE_PAINT_STRIPE(silver, COLOR_SILVER)
|
||||
CREATE_PAINT_STRIPE(black, COLOR_GRAY20)
|
||||
CREATE_PAINT_STRIPE(green, COLOR_GREEN)
|
||||
CREATE_PAINT_STRIPE(navy, COLOR_NAVY)
|
||||
CREATE_PAINT_STRIPE(eggshell, COLOR_EGGSHELL)
|
||||
CREATE_PAINT_STRIPE(beige, COLOR_BEIGE)
|
||||
CREATE_PAINT_STRIPE(darkred, COLOR_SECURITY_RED)
|
||||
CREATE_PAINT_STRIPE(maroon, COLOR_MAROON)
|
||||
CREATE_PAINT_STRIPE(cyanblue, COLOR_CYAN_BLUE)
|
||||
CREATE_PAINT_STRIPE(copper, COLOR_COPPER)
|
||||
CREATE_PAINT_STRIPE(amber, COLOR_AMBER)
|
||||
CREATE_PAINT_STRIPE(wallgunmetal, COLOR_WALL_GUNMETAL)
|
||||
CREATE_PAINT_STRIPE(bottlegreen, COLOR_BOTTLE_GREEN)
|
||||
CREATE_PAINT_STRIPE(palebottlegreen, COLOR_PALE_BTL_GREEN)
|
||||
CREATE_PAINT_STRIPE(pakistangreen, COLOR_PAKISTAN_GREEN)
|
||||
CREATE_PAINT_STRIPE(offwhite, COLOR_OFF_WHITE)
|
||||
CREATE_PAINT_STRIPE(violet, COLOR_EXPLO_VIOLET)
|
||||
CREATE_PAINT_STRIPE(gunmetal, COLOR_GUNMETAL)
|
||||
CREATE_PAINT_STRIPE(paleorange, COLOR_PALE_ORANGE)
|
||||
CREATE_PAINT_STRIPE(commandblue, COLOR_COMMAND_BLUE)
|
||||
CREATE_PAINT_STRIPE(purple, COLOR_PURPLE)
|
||||
CREATE_PAINT_STRIPE(purplegray, COLOR_PURPLE_GRAY)
|
||||
CREATE_PAINT_STRIPE(babyblue, COLOR_BABY_BLUE)
|
||||
CREATE_PAINT_STRIPE(pipecyan, COLOR_ATMOSPHERICS_CYAN)
|
||||
|
||||
#undef CREATE_PAINT_STRIPE
|
||||
@@ -2,25 +2,36 @@
|
||||
icon = 'icons/mapping/spawners/windows.dmi'
|
||||
icon_state = "window_grille_pane"
|
||||
layer = WINDOW_LAYER
|
||||
late = TRUE
|
||||
|
||||
/// found dirs
|
||||
var/found_dirs = NONE
|
||||
|
||||
/// spawn full windows or panes on grille?
|
||||
var/full_window = FALSE
|
||||
/// spawn grille at all?
|
||||
var/spawn_grille = TRUE
|
||||
/// spawn low wall?
|
||||
var/spawn_low_wall = FALSE
|
||||
/// full window path
|
||||
var/window_full_path = /obj/structure/window/basic/full
|
||||
/// pane path
|
||||
var/window_pane_path = /obj/structure/window/basic
|
||||
|
||||
/// spawn grille at all?
|
||||
var/spawn_grille = TRUE
|
||||
|
||||
/// spawn low wall?
|
||||
/// * requires full window
|
||||
var/spawn_low_wall = FALSE
|
||||
/// low wall path
|
||||
var/low_wall_path = /obj/structure/wall_frame/prepainted
|
||||
/// found dirs
|
||||
var/found_dirs = NONE
|
||||
/// low-wall stripe color
|
||||
/// * if non-null, will override stripe color on the low-wall
|
||||
var/low_wall_stripe_color
|
||||
|
||||
/// spawn firedoors? fulltile and non-hidden only for now
|
||||
var/firelocks = FALSE
|
||||
/// spawn glass firedoors?
|
||||
var/firelocks_use_glass = FALSE
|
||||
|
||||
/// id tag for electrochromics
|
||||
/// todo: rename to electrochromatic_id
|
||||
var/id
|
||||
|
||||
/obj/spawner/window/Initialize(mapload)
|
||||
@@ -35,34 +46,43 @@
|
||||
found_dirs |= d
|
||||
|
||||
/obj/spawner/window/Spawn()
|
||||
// no more mercy, if you fuck up your spawner placement on purpose
|
||||
// this will just tear a hole in your map so you notice faster
|
||||
if(locate(/obj/structure/window) in loc)
|
||||
CRASH("Window spawner at [audit_loc()] on turf with existing window.")
|
||||
if(spawn_grille)
|
||||
if(locate(/obj/structure/grille) in loc)
|
||||
warning("Window spawner at X [x] Y [y] Z [z] is set to spawn a grille, but found one already in it's loc.")
|
||||
else
|
||||
new /obj/structure/grille(loc)
|
||||
CRASH("Window spawner at [audit_loc()] is set to spawn a grille, but found one already in it's loc.")
|
||||
new /obj/structure/grille(loc)
|
||||
if(full_window)
|
||||
var/new_window = new window_full_path(loc)
|
||||
if (spawn_low_wall)
|
||||
new low_wall_path(loc)
|
||||
if(locate(/obj/structure/wall_frame) in loc)
|
||||
CRASH("Window spawner at [audit_loc()] is set to spawn low wall but found one already in turf")
|
||||
var/obj/structure/wall_frame/low_wall = new low_wall_path(loc)
|
||||
if(isnull(low_wall_stripe_color))
|
||||
low_wall.stripe_color = low_wall_stripe_color
|
||||
|
||||
var/new_window = new window_full_path(loc)
|
||||
if(id && istype(new_window, /obj/structure/window/reinforced/polarized))
|
||||
var/obj/structure/window/reinforced/polarized/P = new_window
|
||||
P.id = id
|
||||
else
|
||||
// spawn in dirs not in found dirs
|
||||
var/obj/structure/window/W
|
||||
for(var/d in GLOB.cardinal)
|
||||
if(found_dirs & d)
|
||||
continue
|
||||
W = new window_pane_path(loc)
|
||||
W.setDir(d)
|
||||
new window_pane_path(loc, d)
|
||||
if(firelocks)
|
||||
if(locate(/obj/machinery/door/firedoor) in loc)
|
||||
warning("Window spawner at X [x] Y [y] Z [z] is set to spawn firelocks, but found one already in it's loc.")
|
||||
else
|
||||
new /obj/machinery/door/firedoor(loc)
|
||||
CRASH("Window spawner at X [audit_loc()] is set to spawn firelocks, but found one already in it's loc.")
|
||||
new /obj/machinery/door/firedoor(loc)
|
||||
|
||||
/obj/spawner/window/firelocks
|
||||
icon_state = "window_grille_pane_fire"
|
||||
firelocks = TRUE
|
||||
|
||||
/obj/spawner/window/firelocks/transparent
|
||||
firelocks_use_glass = TRUE
|
||||
|
||||
/obj/spawner/window/full
|
||||
full_window = TRUE
|
||||
@@ -72,6 +92,9 @@
|
||||
icon_state = "window_grille_full_fire"
|
||||
firelocks = TRUE
|
||||
|
||||
/obj/spawner/window/full/firelocks/transparent
|
||||
firelocks_use_glass = TRUE
|
||||
|
||||
/obj/spawner/window/reinforced
|
||||
icon_state = "rwindow_grille_pane"
|
||||
window_pane_path = /obj/structure/window/reinforced
|
||||
@@ -81,6 +104,9 @@
|
||||
icon_state = "rwindow_grille_pane_fire"
|
||||
firelocks = TRUE
|
||||
|
||||
/obj/spawner/window/reinforced/firelocks/transparent
|
||||
firelocks_use_glass = TRUE
|
||||
|
||||
/obj/spawner/window/reinforced/full
|
||||
icon_state = "rwindow_grille_full"
|
||||
full_window = TRUE
|
||||
@@ -89,6 +115,9 @@
|
||||
icon_state = "rwindow_grille_full_fire"
|
||||
firelocks = TRUE
|
||||
|
||||
/obj/spawner/window/reinforced/full/firelocks/transparent
|
||||
firelocks_use_glass = TRUE
|
||||
|
||||
/obj/spawner/window/reinforced/tinted
|
||||
icon_state = "rwindow_grille_pane"
|
||||
window_pane_path = /obj/structure/window/reinforced/tinted
|
||||
@@ -98,6 +127,9 @@
|
||||
icon_state = "rwindow_grille_pane_fire"
|
||||
firelocks = TRUE
|
||||
|
||||
/obj/spawner/window/reinforced/tinted/firelocks/transparent
|
||||
firelocks_use_glass = TRUE
|
||||
|
||||
/obj/spawner/window/reinforced/tinted/full
|
||||
icon_state = "rwindow_grille_full"
|
||||
full_window = TRUE
|
||||
@@ -106,6 +138,8 @@
|
||||
icon_state = "rwindow_grille_full_fire"
|
||||
firelocks = TRUE
|
||||
|
||||
/obj/spawner/window/reinforced/tinted/full/firelocks/transparent
|
||||
firelocks_use_glass = TRUE
|
||||
|
||||
/obj/spawner/window/borosillicate
|
||||
icon_state = "phoron_grille_pane"
|
||||
@@ -116,14 +150,19 @@
|
||||
icon_state = "phoron_grille_pane_fire"
|
||||
firelocks = TRUE
|
||||
|
||||
/obj/spawner/window/borosillicate/firelocks/transparent
|
||||
firelocks_use_glass = TRUE
|
||||
|
||||
/obj/spawner/window/borosillicate/full
|
||||
icon_state = "phoron_grille_full"
|
||||
full_window = TRUE
|
||||
|
||||
/obj/spawner/window/borosillicate/full/firelocks
|
||||
icon_state = "phoron_grille_full"
|
||||
firelocks = TRUE
|
||||
|
||||
/obj/spawner/window/borosillicate/full/firelocks/transparent
|
||||
firelocks_use_glass = TRUE
|
||||
|
||||
/obj/spawner/window/borosillicate/reinforced
|
||||
icon_state = "rphoron_grille_pane"
|
||||
window_pane_path = /obj/structure/window/phoronreinforced
|
||||
@@ -133,6 +172,9 @@
|
||||
icon_state = "rphoron_grille_pane_fire"
|
||||
firelocks = TRUE
|
||||
|
||||
/obj/spawner/window/borosillicate/reinforced/firelocks/transparent
|
||||
firelocks_use_glass = TRUE
|
||||
|
||||
/obj/spawner/window/borosillicate/reinforced/full
|
||||
icon_state = "rphoron_grille_full"
|
||||
full_window = TRUE
|
||||
@@ -141,77 +183,86 @@
|
||||
icon_state = "rphoron_grille_full_fire"
|
||||
firelocks = TRUE
|
||||
|
||||
/obj/spawner/window/borosillicate/reinforced/full/firelocks/transparent
|
||||
firelocks_use_glass = TRUE
|
||||
|
||||
/**
|
||||
* * Implicitly full windows
|
||||
*/
|
||||
/obj/spawner/window/low_wall
|
||||
spawn_low_wall = TRUE
|
||||
|
||||
/obj/spawner/window/low_wall/borosillicate/full
|
||||
icon_state = "phoron_grille_full"
|
||||
full_window = TRUE
|
||||
window_pane_path = /obj/structure/window/phoronbasic
|
||||
|
||||
/obj/spawner/window/low_wall/borosillicate
|
||||
icon_state = "phoron_grille_full"
|
||||
window_full_path = /obj/structure/window/phoronbasic/full
|
||||
|
||||
/obj/spawner/window/low_wall/borosillicate/full/firelocks
|
||||
icon_state = "phoron_grille_full"
|
||||
/obj/spawner/window/low_wall/borosillicate/firelocks
|
||||
firelocks = TRUE
|
||||
|
||||
/obj/spawner/window/low_wall/borosillicate/reinforced/full
|
||||
/obj/spawner/window/low_wall/borosillicate/firelocks/transparent
|
||||
firelocks_use_glass = TRUE
|
||||
|
||||
/obj/spawner/window/low_wall/borosillicate/reinforced
|
||||
icon_state = "rphoron_grille_full"
|
||||
full_window = TRUE
|
||||
window_pane_path = /obj/structure/window/phoronreinforced
|
||||
window_full_path = /obj/structure/window/phoronreinforced/full
|
||||
|
||||
/obj/spawner/window/low_wall/borosillicate/reinforced/full/firelocks
|
||||
/obj/spawner/window/low_wall/borosillicate/reinforced/firelocks
|
||||
icon_state = "rphoron_grille_full_fire"
|
||||
firelocks = TRUE
|
||||
|
||||
/obj/spawner/window/low_wall/reinforced/full
|
||||
/obj/spawner/window/low_wall/borosillicate/reinforced/firelocks/transparent
|
||||
firelocks_use_glass = TRUE
|
||||
|
||||
/obj/spawner/window/low_wall/reinforced
|
||||
icon_state = "rwindow_grille_full"
|
||||
full_window = TRUE
|
||||
window_pane_path = /obj/structure/window/reinforced
|
||||
window_full_path = /obj/structure/window/reinforced/full
|
||||
|
||||
/obj/spawner/window/low_wall/reinforced/full/firelocks
|
||||
/obj/spawner/window/low_wall/reinforced/firelocks
|
||||
icon_state = "rwindow_grille_full_fire"
|
||||
firelocks = TRUE
|
||||
|
||||
/obj/spawner/window/low_wall/reinforced/tinted/full
|
||||
/obj/spawner/window/low_wall/reinforced/firelocks/transparent
|
||||
firelocks_use_glass = TRUE
|
||||
|
||||
/obj/spawner/window/low_wall/reinforced/tinted
|
||||
icon_state = "rwindow_grille_full"
|
||||
full_window = TRUE
|
||||
window_pane_path = /obj/structure/window/reinforced/tinted
|
||||
window_full_path = /obj/structure/window/reinforced/tinted/full
|
||||
|
||||
/obj/spawner/window/low_wall/reinforced/tinted/full/firelocks
|
||||
/obj/spawner/window/low_wall/reinforced/tinted/firelocks
|
||||
icon_state = "rwindow_grille_full_fire"
|
||||
firelocks = TRUE
|
||||
|
||||
/obj/spawner/window/low_wall/reinforced/electrochromic/full
|
||||
/obj/spawner/window/low_wall/reinforced/tinted/firelocks/transparent
|
||||
firelocks_use_glass = TRUE
|
||||
|
||||
/obj/spawner/window/low_wall/reinforced/electrochromic
|
||||
icon_state = "rwindow_grille_full"
|
||||
full_window = TRUE
|
||||
window_pane_path = /obj/structure/window/reinforced/polarized
|
||||
window_full_path = /obj/structure/window/reinforced/polarized/full
|
||||
|
||||
/obj/spawner/window/low_wall/reinforced/electrochromic/full/firelocks
|
||||
/obj/spawner/window/low_wall/reinforced/electrochromic/firelocks
|
||||
icon_state = "rwindow_grille_full_fire"
|
||||
firelocks = TRUE
|
||||
|
||||
/obj/spawner/window/low_wall/full
|
||||
full_window = TRUE
|
||||
/obj/spawner/window/low_wall/reinforced/electrochromic/firelocks/transparent
|
||||
firelocks_use_glass = TRUE
|
||||
|
||||
/obj/spawner/window/low_wall
|
||||
icon_state = "window_grille_full"
|
||||
|
||||
/obj/spawner/window/low_wall/full/firelocks
|
||||
/obj/spawner/window/low_wall/firelocks
|
||||
icon_state = "window_grille_full_fire"
|
||||
firelocks = TRUE
|
||||
|
||||
/obj/spawner/window/low_wall/full/nogrille/firelocks
|
||||
full_window = TRUE
|
||||
/obj/spawner/window/low_wall/firelocks/transparent
|
||||
firelocks_use_glass = TRUE
|
||||
|
||||
/obj/spawner/window/low_wall/nogrille/firelocks
|
||||
icon_state = "window_grille_full"
|
||||
spawn_grille = FALSE
|
||||
firelocks = TRUE
|
||||
|
||||
/obj/spawner/window/low_wall/full/firelocks/nogrille
|
||||
icon_state = "window_grille_full"
|
||||
firelocks = TRUE
|
||||
spawn_grille = FALSE
|
||||
|
||||
|
||||
|
||||
/obj/spawner/window/low_wall/nogrille/firelocks/transparent
|
||||
firelocks_use_glass = TRUE
|
||||
|
||||
Reference in New Issue
Block a user