mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-07-12 16:44:43 +01:00
[MIRROR] Seethrough component for shipping containers, big bones, ratvar wreck and necropolis gate [MDB IGNORE] (#17562)
* Seethrough component for shipping containers, big bones, ratvar wreck and necropolis gate (#71212) Big sprite, easy conversion. Let's you see through a bunch of stuff with big sprites 🆑 qol: you can look behind shipping containers, ratvars wreck, through the necropolis gate and behind the big bones /🆑 Behind a container https://user-images.githubusercontent.com/7501474/201395747-4843b2df-d3ad-4047-b4af-66310d1d0472.mp4 Through the necropolis gate https://user-images.githubusercontent.com/7501474/201416066-9f69399d-f757-4132-941d-5cf3b98ced5d.mp4 * Seethrough component for shipping containers, big bones, ratvar wreck and necropolis gate Co-authored-by: Time-Green <timkoster1@hotmail.com> Co-authored-by: Tastyfish <crazychris32@gmail.com>
This commit is contained in:
@@ -10,6 +10,10 @@
|
||||
#define SEE_THROUGH_MAP_THREE_X_TWO "3x2"
|
||||
///One row of three tiles above the atom, but offset one tile to the left because of how billboards work
|
||||
#define SEE_THROUGH_MAP_BILLBOARD "billboard"
|
||||
///Two rows of three wide, but offset one tile to the left because thats how shipping containers work
|
||||
#define SEE_THROUGH_MAP_SHIPPING_CONTAINER "shipping_container"
|
||||
///Seethrough component for the ratvar wreck, in shape of the ratvar wreck
|
||||
#define SEE_THROUGH_MAP_RATVAR_WRECK "ratvar"
|
||||
|
||||
|
||||
/**global statics for the see_through_component coordinate maps
|
||||
@@ -22,7 +26,8 @@ GLOBAL_LIST_INIT(see_through_maps, list(
|
||||
// X
|
||||
// A
|
||||
SEE_THROUGH_MAP_DEFAULT = list(
|
||||
/*----------------*/list(0, 1, 0)
|
||||
/*----------------*/list(0, 1, 0),
|
||||
/*----------------*/list(0, 0, 0)
|
||||
),
|
||||
|
||||
// XXX
|
||||
@@ -40,7 +45,8 @@ GLOBAL_LIST_INIT(see_through_maps, list(
|
||||
// A
|
||||
SEE_THROUGH_MAP_DEFAULT_TWO_TALL = list(
|
||||
/*----------------*/list(0, 2, 0),
|
||||
/*----------------*/list(0, 1, 0)
|
||||
/*----------------*/list(0, 1, 0),
|
||||
/*----------------*/list(0, 0, 0)
|
||||
),
|
||||
|
||||
// XXX
|
||||
@@ -52,9 +58,24 @@ GLOBAL_LIST_INIT(see_through_maps, list(
|
||||
),
|
||||
|
||||
/// XXX
|
||||
/// OAO
|
||||
/// AOO
|
||||
SEE_THROUGH_MAP_BILLBOARD = list(
|
||||
list(0, 1, 0), list(1, 1, 0), list(2, 1, 0)
|
||||
),
|
||||
/// XXX
|
||||
/// AXX
|
||||
SEE_THROUGH_MAP_SHIPPING_CONTAINER = list(
|
||||
list(0, 1, 0), list(1, 1, 0), list(2, 1, 0),
|
||||
list(0, 0, 0), list(1, 0, 0), list(2, 0, 0)
|
||||
),
|
||||
//No
|
||||
SEE_THROUGH_MAP_RATVAR_WRECK = list(
|
||||
list(3, 5, 0), list(4, 5, 0), list(5, 5, 0), list(6, 5, 0),
|
||||
list(3, 4, 0), list(4, 4, 0), list(5, 4, 0), list(6, 4, 0), list(7, 4, 0), list(9, 4, 0),
|
||||
list(3, 3, 0), list(4, 3, 0), list(5, 3, 0), list(6, 3, 0), /* the neck */ list(8, 3, 0), list(9, 3, 0),
|
||||
list(0, 2, 0), list(1, 2, 0), list(2, 2, 0), list(3, 2, 0), list(4, 2, 0), list(5, 2, 0), list(6, 2, 0), list(7, 2, 0), list(8, 2, 0), list(9, 2, 0), list(10, 2, 0), list(11, 2, 0), list(12, 2, 0),
|
||||
list(0, 1, 0), list(1, 1, 0), list(2, 1, 0), list(3, 1, 0), list(4, 1, 0), list(5, 1, 0), list(6, 1, 0), list(7, 1, 0), list(8, 1, 0), list(9, 1, 0), list(10, 1, 0), list(11, 1, 0), list(12, 1, 0),
|
||||
list(0, 0, 0), list(1, 0, 0), list(2, 0, 0), list(3, 0, 0), list(4, 0, 0), list(5, 0, 0), list(6, 0, 0), list(7, 0, 0), list(8, 0, 0), list(9, 0, 0), list(10, 0, 0), list(11, 0, 0), list(12, 0, 0), list(13, 0, 0)
|
||||
)
|
||||
))
|
||||
|
||||
|
||||
@@ -5,10 +5,15 @@
|
||||
icon_state = "container_blank"
|
||||
max_integrity = 1000
|
||||
bound_width = 96
|
||||
bound_height = 64
|
||||
bound_height = 32
|
||||
density = TRUE
|
||||
anchored = TRUE
|
||||
|
||||
/obj/structure/shipping_container/Initialize(mapload)
|
||||
. = ..()
|
||||
|
||||
AddComponent(/datum/component/seethrough, SEE_THROUGH_MAP_SHIPPING_CONTAINER)
|
||||
|
||||
/obj/structure/shipping_container/nanotrasen
|
||||
name = "\improper Nanotrasen shipping container"
|
||||
desc = "A standard-measure shipping container for bulk transport of goods. This one prominently features Nanotrasen's logo, and so presumably could be carrying anything."
|
||||
|
||||
@@ -9,6 +9,11 @@
|
||||
custom_materials = list(/datum/material/bone=MINERAL_MATERIAL_AMOUNT*5)
|
||||
abstract_type = /obj/structure/statue/bone
|
||||
|
||||
/obj/structure/statue/bone/Initialize(mapload)
|
||||
. = ..()
|
||||
|
||||
AddComponent(/datum/component/seethrough, SEE_THROUGH_MAP_DEFAULT)
|
||||
|
||||
/obj/structure/statue/bone/rib
|
||||
name = "colossal rib"
|
||||
desc = "It's staggering to think that something this big could have lived, let alone died."
|
||||
|
||||
@@ -21,3 +21,7 @@
|
||||
bound_height = 64
|
||||
pixel_y = -10
|
||||
resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF
|
||||
|
||||
/obj/structure/dead_ratvar/Initialize(mapload)
|
||||
. = ..()
|
||||
AddComponent(/datum/component/seethrough, SEE_THROUGH_MAP_RATVAR_WRECK)
|
||||
|
||||
@@ -6,7 +6,8 @@
|
||||
icon_state = "gate_full"
|
||||
flags_1 = ON_BORDER_1
|
||||
appearance_flags = 0
|
||||
layer = TABLE_LAYER
|
||||
layer = FLY_LAYER
|
||||
plane = ABOVE_GAME_PLANE
|
||||
anchored = TRUE
|
||||
density = TRUE
|
||||
pixel_x = -32
|
||||
@@ -19,7 +20,6 @@
|
||||
var/locked = FALSE
|
||||
var/static/mutable_appearance/top_overlay
|
||||
var/static/mutable_appearance/door_overlay
|
||||
var/static/mutable_appearance/dais_overlay
|
||||
var/obj/structure/opacity_blocker/sight_blocker
|
||||
var/sight_blocker_distance = 1
|
||||
|
||||
@@ -42,15 +42,15 @@
|
||||
door_overlay = mutable_appearance('icons/effects/96x96.dmi', "door")
|
||||
door_overlay.layer = EDGED_TURF_LAYER
|
||||
add_overlay(door_overlay)
|
||||
dais_overlay = mutable_appearance('icons/effects/96x96.dmi', "gate_dais")
|
||||
dais_overlay.layer = CLOSED_TURF_LAYER
|
||||
add_overlay(dais_overlay)
|
||||
|
||||
new /obj/effect/decal/necropolis_gate_decal(loc)
|
||||
|
||||
var/static/list/loc_connections = list(
|
||||
COMSIG_ATOM_EXIT = PROC_REF(on_exit),
|
||||
)
|
||||
|
||||
AddElement(/datum/element/connect_loc, loc_connections)
|
||||
AddComponent(/datum/component/seethrough, SEE_THROUGH_MAP_DEFAULT_TWO_TALL)
|
||||
|
||||
/obj/structure/necropolis_gate/Destroy(force)
|
||||
qdel(sight_blocker)
|
||||
@@ -192,6 +192,14 @@ GLOBAL_DATUM(necropolis_gate, /obj/structure/necropolis_gate/legion_gate)
|
||||
var/mutable_appearance/release_overlay = mutable_appearance('icons/effects/effects.dmi', "legiondoor")
|
||||
notify_ghosts("Legion has been released in the [get_area(src)]!", source = src, alert_overlay = release_overlay, action = NOTIFY_JUMP, flashwindow = FALSE)
|
||||
|
||||
/obj/effect/decal/necropolis_gate_decal
|
||||
icon = 'icons/effects/96x96.dmi'
|
||||
icon_state = "gate_dais"
|
||||
flags_1 = ON_BORDER_1
|
||||
appearance_flags = 0
|
||||
pixel_x = -32
|
||||
pixel_y = -32
|
||||
|
||||
/obj/effect/temp_visual/necropolis
|
||||
icon = 'icons/effects/96x96.dmi'
|
||||
icon_state = "door_closing"
|
||||
@@ -211,7 +219,8 @@ GLOBAL_DATUM(necropolis_gate, /obj/structure/necropolis_gate/legion_gate)
|
||||
icon = 'icons/effects/160x160.dmi'
|
||||
icon_state = "arch_full"
|
||||
appearance_flags = 0
|
||||
layer = TABLE_LAYER
|
||||
layer = FLY_LAYER
|
||||
plane = ABOVE_GAME_PLANE
|
||||
anchored = TRUE
|
||||
pixel_x = -64
|
||||
pixel_y = -40
|
||||
@@ -226,6 +235,8 @@ GLOBAL_DATUM(necropolis_gate, /obj/structure/necropolis_gate/legion_gate)
|
||||
top_overlay.layer = EDGED_TURF_LAYER
|
||||
add_overlay(top_overlay)
|
||||
|
||||
AddComponent(/datum/component/seethrough, SEE_THROUGH_MAP_DEFAULT_TWO_TALL)
|
||||
|
||||
/obj/structure/necropolis_arch/singularity_pull()
|
||||
return 0
|
||||
|
||||
|
||||
Reference in New Issue
Block a user