diff --git a/code/modules/overmap/bluespace_rift_vr.dm b/code/modules/overmap/bluespace_rift_vr.dm new file mode 100644 index 0000000000..198ccc2277 --- /dev/null +++ b/code/modules/overmap/bluespace_rift_vr.dm @@ -0,0 +1,44 @@ +/obj/effect/overmap/bluespace_rift + name = "bluespace rift" + desc = "Some sort of bluespace rift. Who knows where it leads?" + icon = 'icons/obj/overmap_vr.dmi' + icon_state = "portal" + color = "#2288FF" + + known = 0 //shows up on nav computers automatically + scannable = TRUE //if set to TRUE will show up on ship sensors for detailed scans + + var/obj/effect/overmap/bluespace_rift/partner + var/paused + +/obj/effect/overmap/bluespace_rift/Initialize(var/mapload, var/new_partner) + . = ..() + if(new_partner) + pair(new_partner) + +/obj/effect/overmap/bluespace_rift/proc/pair(var/obj/effect/overmap/bluespace_rift/new_partner) + if(istype(new_partner)) + partner = new_partner + new_partner.partner = src + +/obj/effect/overmap/bluespace_rift/proc/take_this(var/atom/movable/AM) + paused = TRUE + AM.forceMove(get_turf(src)) + paused = FALSE + +/obj/effect/overmap/bluespace_rift/Crossed(var/atom/movable/AM) + if(istype(AM, /obj/effect/overmap/visitable/ship) && !paused && partner) + partner.take_this(AM) + else + return ..() + +/obj/effect/overmap/bluespace_rift/attack_ghost(var/mob/observer/dead/user) + if(!partner && user?.client?.holder) + var/response = alert(user, "You appear to be staff. This rift has no exit point. If you want to make one, move to where you want it to go, and click 'Make Here', otherwise click 'Cancel'","Rift Exit","Cancel","Make Here") + if(response == "Make Here") + new type(get_turf(user), src) + else if(partner) + user.forceMove(get_turf(partner)) + to_chat(user, "Your ghostly form is pulled through the rift!") + else + return ..() diff --git a/icons/obj/overmap_vr.dmi b/icons/obj/overmap_vr.dmi new file mode 100644 index 0000000000..4b91051483 Binary files /dev/null and b/icons/obj/overmap_vr.dmi differ diff --git a/maps/tether/submaps/tether_misc.dmm b/maps/tether/submaps/tether_misc.dmm index f76802ac1b..df968bb577 100644 --- a/maps/tether/submaps/tether_misc.dmm +++ b/maps/tether/submaps/tether_misc.dmm @@ -1813,6 +1813,10 @@ /obj/machinery/telecomms/bus/preset_cent, /turf/unsimulated/floor/steel, /area/centcom/control) +"sF" = ( +/obj/effect/overmap/bluespace_rift, +/turf/unsimulated/map, +/area/overmap) "uc" = ( /turf/unsimulated/wall, /area/centcom/suppy) @@ -4653,17 +4657,17 @@ ap ap ap ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap +Xl +Xl +Xl +Xl +Xl +Xl +Xl +Xl +Xl +Xl +Xl ap ap Xl @@ -4795,17 +4799,17 @@ ap ap ap ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap +Xl +OY +OY +OY +OY +OY +OY +OY +OY +OY +Xl ap ap Xl @@ -4937,17 +4941,17 @@ ap ap ap ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap +Xl +OY +OY +OY +OY +OY +OY +OY +OY +OY +Xl ap ap Xl @@ -5079,17 +5083,17 @@ ap ap ap ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap +Xl +OY +OY +OY +OY +OY +OY +OY +OY +OY +Xl ap ap Xl @@ -5221,17 +5225,17 @@ ap ap ap ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap +Xl +OY +OY +OY +OY +OY +OY +OY +OY +OY +Xl ap ap Xl @@ -5363,17 +5367,17 @@ ap ap ap ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap +Xl +OY +OY +OY +OY +sF +OY +OY +OY +OY +Xl ap ap Xl @@ -5505,17 +5509,17 @@ ap ap ap ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap +Xl +OY +OY +OY +OY +OY +OY +OY +OY +OY +Xl ap ap Xl @@ -5647,17 +5651,17 @@ ap ap ap ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap +Xl +OY +OY +OY +OY +OY +OY +OY +OY +OY +Xl ap ap Xl @@ -5789,17 +5793,17 @@ ap ap ap ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap +Xl +OY +OY +OY +OY +OY +OY +OY +OY +OY +Xl ap ap Xl @@ -5931,17 +5935,17 @@ ap ap ap ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap +Xl +OY +OY +OY +OY +OY +OY +OY +OY +OY +Xl ap ap Xl @@ -6073,17 +6077,17 @@ ap ap ap ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap +Xl +Xl +Xl +Xl +Xl +Xl +Xl +Xl +Xl +Xl +Xl ap ap Xl @@ -6499,17 +6503,17 @@ ap ap ap ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap +Xl +Xl +Xl +Xl +Xl +Xl +Xl +Xl +Xl +Xl +Xl ap ap Xl @@ -6641,17 +6645,17 @@ ap ap ap ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap +Xl +OY +OY +OY +OY +OY +OY +OY +OY +OY +Xl ap ap Xl @@ -6783,17 +6787,17 @@ ap ap ap ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap +Xl +OY +OY +OY +OY +OY +OY +OY +OY +OY +Xl ap ap Xl @@ -6925,17 +6929,17 @@ ap ap ap ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap +Xl +OY +OY +OY +OY +OY +OY +OY +OY +OY +Xl ap ap Xl @@ -7067,17 +7071,17 @@ ap ap ap ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap +Xl +OY +OY +OY +OY +OY +OY +OY +OY +OY +Xl ap ap Xl @@ -7209,17 +7213,17 @@ ap ap ap ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap +Xl +OY +OY +OY +OY +sF +OY +OY +OY +OY +Xl ap ap Xl @@ -7351,17 +7355,17 @@ ap ap ap ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap +Xl +OY +OY +OY +OY +OY +OY +OY +OY +OY +Xl ap ap Xl @@ -7493,17 +7497,17 @@ ap ap ap ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap +Xl +OY +OY +OY +OY +OY +OY +OY +OY +OY +Xl ap ap Xl @@ -7635,17 +7639,17 @@ ap ap ap ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap +Xl +OY +OY +OY +OY +OY +OY +OY +OY +OY +Xl ap ap Xl @@ -7777,17 +7781,17 @@ ap ap ap ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap +Xl +OY +OY +OY +OY +OY +OY +OY +OY +OY +Xl ap ap Xl @@ -7919,17 +7923,17 @@ ap ap ap ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap -ap +Xl +Xl +Xl +Xl +Xl +Xl +Xl +Xl +Xl +Xl +Xl ap ap Xl diff --git a/vorestation.dme b/vorestation.dme index c8b0c2b916..2d484d458e 100644 --- a/vorestation.dme +++ b/vorestation.dme @@ -2879,6 +2879,7 @@ #include "code\modules\organs\subtypes\vox.dm" #include "code\modules\organs\subtypes\vox_vr.dm" #include "code\modules\organs\subtypes\xenos.dm" +#include "code\modules\overmap\bluespace_rift_vr.dm" #include "code\modules\overmap\overmap_object.dm" #include "code\modules\overmap\overmap_shuttle.dm" #include "code\modules\overmap\sectors.dm"