diff --git a/code/modules/overmap/bluespace_rift_vr.dm b/code/modules/overmap/bluespace_rift_vr.dm new file mode 100644 index 00000000000..198ccc22775 --- /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 00000000000..4b910514830 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 f76802ac1bd..df968bb5774 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 c8b0c2b9166..2d484d458e6 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"