diff --git a/code/game/objects/structures/fitness_vr.dm b/code/game/objects/structures/fitness_vr.dm new file mode 100644 index 0000000000..341246051e --- /dev/null +++ b/code/game/objects/structures/fitness_vr.dm @@ -0,0 +1,79 @@ +/obj/structure/fitness/boxing_ropes + name = "Ropes" + desc = "Firm yet springy, perhaps this could be useful!" + icon = 'icons/obj/fitness_vr.dmi' + icon_state = "ropes" + density = 1 + throwpass = 1 + climbable = 1 + layer = WINDOW_LAYER + anchored = 1 + flags = ON_BORDER +/obj/structure/fitness/boxing_ropes/CanPass(atom/movable/mover, turf/target) + if(istype(mover) && mover.checkpass(PASSTABLE)) + return TRUE + if(get_dir(mover, target) == turn(dir, 180)) + return !density + return TRUE +/obj/structure/fitness/boxing_ropes/CheckExit(atom/movable/O as mob|obj, target as turf) + if(istype(O) && O.checkpass(PASSTABLE)) + return 1 + if(get_dir(O.loc, target) == dir) + return 0 + return 1 + +/obj/structure/fitness/boxing_ropes_bottom + name = "Ropes" + desc = "Firm yet springy, perhaps this could be useful!" + icon = 'icons/obj/fitness_vr.dmi' + icon_state = "ropes" + density = 1 + throwpass = 1 + climbable = 1 + plane = MOB_PLANE + layer = ABOVE_MOB_LAYER + anchored = 1 + flags = ON_BORDER +/obj/structure/fitness/boxing_ropes_bottom/CanPass(atom/movable/mover, turf/target) + if(istype(mover) && mover.checkpass(PASSTABLE)) + return TRUE + if(get_dir(mover, target) == turn(dir, 180)) + return !density + return TRUE +/obj/structure/fitness/boxing_ropes_bottom/CheckExit(atom/movable/O as mob|obj, target as turf) + if(istype(O) && O.checkpass(PASSTABLE)) + return 1 + if(get_dir(O.loc, target) == dir) + return 0 + return 1 + + + +/obj/structure/fitness/boxing_turnbuckle + name = "Turnbuckle" + desc = "A sturdy post that looks like it could support even the most heaviest of heavy weights!" + icon = 'icons/obj/fitness_vr.dmi' + icon_state = "turnbuckle" + density = 1 + throwpass = 1 + climbable = 1 + layer = WINDOW_LAYER + anchored = 1 + flags = ON_BORDER +/obj/structure/fitness/boxing_turnbuckle/CanPass(atom/movable/mover, turf/target) + if(istype(mover) && mover.checkpass(PASSTABLE)) + return TRUE + if(get_dir(mover, target) == turn(dir, 180)) + return !density + return TRUE +/obj/structure/fitness/boxing_turnbuckle/CheckExit(atom/movable/O as mob|obj, target as turf) + if(istype(O) && O.checkpass(PASSTABLE)) + return 1 + if(get_dir(O.loc, target) == dir) + return 0 + return 1 + +/turf/simulated/fitness + name = "Mat" + icon = 'icons/turf/floors_vr.dmi' + icon_state = "fit_mat" \ No newline at end of file diff --git a/icons/obj/fitness_vr.dmi b/icons/obj/fitness_vr.dmi new file mode 100644 index 0000000000..f5b0f1a74e Binary files /dev/null and b/icons/obj/fitness_vr.dmi differ diff --git a/icons/turf/floors_vr.dmi b/icons/turf/floors_vr.dmi index e3d15e2051..fe547e274f 100644 Binary files a/icons/turf/floors_vr.dmi and b/icons/turf/floors_vr.dmi differ diff --git a/maps/tether/submaps/tether_misc.dmm b/maps/tether/submaps/tether_misc.dmm index 93bd74a4c6..7176f98c98 100644 --- a/maps/tether/submaps/tether_misc.dmm +++ b/maps/tether/submaps/tether_misc.dmm @@ -436,25 +436,22 @@ /turf/simulated/floor/holofloor/tiled/dark, /area/holodeck/source_thunderdomecourt) "bs" = ( -/obj/structure/shuttle/engine/propulsion{ - icon_state = "burst_l" - }, -/turf/space, -/turf/simulated/shuttle/plating/airless/carry{ - dir = 1 - }, -/area/shuttle/supply) +/turf/simulated/fitness, +/area/holodeck/source_boxingcourt) "bt" = ( /obj/structure/bed/chair/holochair, /turf/simulated/floor/holofloor/wood, /area/holodeck/source_courtroom) "bu" = ( -/obj/structure/shuttle/engine/propulsion, -/turf/space, -/turf/simulated/shuttle/plating/airless/carry{ +/obj/structure/fitness/boxing_ropes{ dir = 1 }, -/area/shuttle/supply) +/obj/structure/fitness/boxing_turnbuckle{ + dir = 8; + layer = 3.4 + }, +/turf/simulated/fitness, +/area/holodeck/source_boxingcourt) "bv" = ( /obj/structure/window/reinforced/holowindow{ dir = 1 @@ -463,27 +460,21 @@ /turf/simulated/floor/holofloor/wood, /area/holodeck/source_courtroom) "bw" = ( -/obj/structure/shuttle/engine/propulsion, -/obj/effect/shuttle_landmark{ - base_area = /area/space; - base_turf = /turf/space; - landmark_tag = "supply_cc"; - name = "Centcom Supply Depot" - }, -/turf/space, -/turf/simulated/shuttle/plating/airless/carry{ +/obj/structure/fitness/boxing_ropes{ dir = 1 }, -/area/shuttle/supply) +/turf/simulated/fitness, +/area/holodeck/source_boxingcourt) "bx" = ( -/obj/structure/shuttle/engine/propulsion{ - icon_state = "burst_r" - }, -/turf/space, -/turf/simulated/shuttle/plating/airless/carry{ +/obj/structure/fitness/boxing_ropes{ dir = 1 }, -/area/shuttle/supply) +/obj/structure/fitness/boxing_turnbuckle{ + dir = 4; + layer = 3.4 + }, +/turf/simulated/fitness, +/area/holodeck/source_boxingcourt) "by" = ( /obj/machinery/light{ dir = 8; @@ -498,9 +489,39 @@ }, /turf/simulated/shuttle/floor, /area/shuttle/supply) +"bA" = ( +/obj/structure/fitness/boxing_ropes{ + dir = 8 + }, +/turf/simulated/fitness, +/area/holodeck/source_boxingcourt) "bB" = ( /turf/simulated/floor/holofloor/desert, /area/holodeck/source_picnicarea) +"bC" = ( +/obj/structure/fitness/boxing_ropes{ + dir = 4 + }, +/turf/simulated/fitness, +/area/holodeck/source_boxingcourt) +"bD" = ( +/obj/structure/fitness/boxing_turnbuckle{ + dir = 8 + }, +/obj/structure/fitness/boxing_ropes_bottom, +/turf/simulated/fitness, +/area/holodeck/source_boxingcourt) +"bE" = ( +/obj/structure/fitness/boxing_ropes_bottom, +/turf/simulated/fitness, +/area/holodeck/source_boxingcourt) +"bF" = ( +/obj/structure/fitness/boxing_turnbuckle{ + dir = 4 + }, +/obj/structure/fitness/boxing_ropes_bottom, +/turf/simulated/fitness, +/area/holodeck/source_boxingcourt) "bG" = ( /obj/effect/floor_decal/spline/plain{ dir = 1 @@ -566,6 +587,35 @@ /obj/structure/bed/chair/holochair, /turf/simulated/floor/holofloor/wood, /area/holodeck/source_courtroom) +"bN" = ( +/obj/structure/shuttle/engine/propulsion{ + icon_state = "burst_l" + }, +/turf/space, +/turf/simulated/shuttle/plating/airless/carry{ + dir = 1 + }, +/area/shuttle/supply) +"bO" = ( +/obj/structure/shuttle/engine/propulsion, +/turf/space, +/turf/simulated/shuttle/plating/airless/carry{ + dir = 1 + }, +/area/shuttle/supply) +"bP" = ( +/obj/structure/shuttle/engine/propulsion, +/obj/effect/shuttle_landmark{ + base_area = /area/space; + base_turf = /turf/space; + landmark_tag = "supply_cc"; + name = "Centcom Supply Depot" + }, +/turf/space, +/turf/simulated/shuttle/plating/airless/carry{ + dir = 1 + }, +/area/shuttle/supply) "bQ" = ( /obj/machinery/door/airlock/glass_external{ frequency = 1380; @@ -591,6 +641,15 @@ /obj/structure/table/woodentable/holotable, /turf/simulated/floor/holofloor/desert, /area/holodeck/source_picnicarea) +"bT" = ( +/obj/structure/shuttle/engine/propulsion{ + icon_state = "burst_r" + }, +/turf/space, +/turf/simulated/shuttle/plating/airless/carry{ + dir = 1 + }, +/area/shuttle/supply) "bU" = ( /obj/structure/flora/ausbushes/ywflowers, /obj/effect/floor_decal/spline/fancy/wood{ @@ -670,6 +729,20 @@ }, /turf/simulated/floor/holofloor/carpet, /area/holodeck/source_courtroom) +"cd" = ( +/obj/effect/step_trigger/teleporter/random{ + affect_ghosts = 1; + name = "escapeshuttle_leave"; + teleport_x = 25; + teleport_x_offset = 245; + teleport_y = 25; + teleport_y_offset = 245; + teleport_z = 4; + teleport_z_offset = 4 + }, +/turf/space, +/turf/space/transit/north, +/area/space) "cj" = ( /obj/effect/floor_decal/industrial/warning{ icon_state = "warning"; @@ -1195,19 +1268,6 @@ /obj/effect/overlay/coconut, /turf/simulated/floor/holofloor/beach/sand, /area/holodeck/source_beach) -"ev" = ( -/obj/machinery/door/window/holowindoor{ - base_state = "right"; - dir = 2; - icon_state = "right"; - name = "Red Corner" - }, -/turf/simulated/floor/holofloor/tiled/dark, -/area/holodeck/source_boxingcourt) -"ew" = ( -/obj/structure/window/reinforced/holowindow, -/turf/simulated/floor/holofloor/tiled/dark, -/area/holodeck/source_boxingcourt) "eJ" = ( /obj/structure/flora/tree/dead, /turf/simulated/floor/holofloor/snow, @@ -1222,33 +1282,6 @@ /obj/item/weapon/beach_ball, /turf/simulated/floor/holofloor/beach/sand, /area/holodeck/source_beach) -"eN" = ( -/obj/structure/window/reinforced/holowindow{ - dir = 4 - }, -/turf/simulated/floor/holofloor/tiled/dark, -/area/holodeck/source_boxingcourt) -"eO" = ( -/obj/effect/floor_decal/corner/red/full{ - dir = 8 - }, -/turf/simulated/floor/holofloor/tiled, -/area/holodeck/source_boxingcourt) -"eP" = ( -/obj/effect/floor_decal/corner/red{ - dir = 5 - }, -/turf/simulated/floor/holofloor/tiled, -/area/holodeck/source_boxingcourt) -"eQ" = ( -/turf/simulated/floor/holofloor/tiled, -/area/holodeck/source_boxingcourt) -"eR" = ( -/obj/structure/window/reinforced/holowindow{ - dir = 8 - }, -/turf/simulated/floor/holofloor/tiled/dark, -/area/holodeck/source_boxingcourt) "eS" = ( /obj/effect/floor_decal/industrial/danger, /turf/simulated/floor/tiled/steel, @@ -1351,30 +1384,6 @@ }, /turf/simulated/floor/holofloor/tiled, /area/holodeck/source_thunderdomecourt) -"fg" = ( -/obj/effect/floor_decal/corner/red{ - dir = 9 - }, -/turf/simulated/floor/holofloor/tiled, -/area/holodeck/source_boxingcourt) -"fh" = ( -/obj/effect/floor_decal/corner/blue/full{ - dir = 8 - }, -/turf/simulated/floor/holofloor/tiled, -/area/holodeck/source_boxingcourt) -"fi" = ( -/obj/effect/floor_decal/corner/blue/full{ - dir = 1 - }, -/turf/simulated/floor/holofloor/tiled, -/area/holodeck/source_boxingcourt) -"fj" = ( -/obj/effect/floor_decal/corner/green{ - dir = 6 - }, -/turf/simulated/floor/holofloor/tiled, -/area/holodeck/source_boxingcourt) "fn" = ( /obj/structure/holostool, /obj/effect/floor_decal/carpet{ @@ -1438,16 +1447,6 @@ }, /turf/simulated/floor/holofloor/tiled, /area/holodeck/source_thunderdomecourt) -"fw" = ( -/obj/effect/floor_decal/corner/blue/full, -/turf/simulated/floor/holofloor/tiled, -/area/holodeck/source_boxingcourt) -"fx" = ( -/obj/effect/floor_decal/corner/blue/full{ - dir = 4 - }, -/turf/simulated/floor/holofloor/tiled, -/area/holodeck/source_boxingcourt) "fz" = ( /obj/effect/floor_decal/corner/green{ dir = 9 @@ -1472,18 +1471,6 @@ }, /turf/simulated/floor/holofloor/tiled, /area/holodeck/source_thunderdomecourt) -"fD" = ( -/obj/effect/floor_decal/corner/green{ - dir = 10 - }, -/turf/simulated/floor/holofloor/tiled, -/area/holodeck/source_boxingcourt) -"fE" = ( -/obj/effect/floor_decal/corner/green/full{ - dir = 4 - }, -/turf/simulated/floor/holofloor/tiled, -/area/holodeck/source_boxingcourt) "fG" = ( /obj/structure/flora/grass/brown, /turf/simulated/floor/holofloor/snow, @@ -1508,19 +1495,6 @@ icon_state = "beach" }, /area/holodeck/source_beach) -"fM" = ( -/obj/structure/window/reinforced/holowindow{ - dir = 1 - }, -/turf/simulated/floor/holofloor/tiled/dark, -/area/holodeck/source_boxingcourt) -"fN" = ( -/obj/machinery/door/window/holowindoor{ - dir = 1; - name = "Green Corner" - }, -/turf/simulated/floor/holofloor/tiled/dark, -/area/holodeck/source_boxingcourt) "fO" = ( /obj/structure/holostool, /obj/effect/floor_decal/carpet{ @@ -2474,20 +2448,6 @@ }, /turf/simulated/floor/tiled/steel, /area/space) -"Lw" = ( -/obj/effect/step_trigger/teleporter/random{ - affect_ghosts = 1; - name = "escapeshuttle_leave"; - teleport_x = 25; - teleport_x_offset = 245; - teleport_y = 25; - teleport_y_offset = 245; - teleport_z = 4; - teleport_z_offset = 4 - }, -/turf/space, -/turf/space/transit/north, -/area/space) "Lz" = ( /obj/effect/step_trigger/teleporter/planetary_fall/virgo3b, /turf/simulated/sky/virgo3b/south, @@ -9351,10 +9311,10 @@ Jz Jz Jz Jz -Lw -Lw -Lw -Lw +cd +cd +cd +cd ap Xl OY @@ -9496,7 +9456,7 @@ jf Gs Gs Gs -Lw +cd ap Xl OY @@ -9638,7 +9598,7 @@ jf Gs Gs Gs -Lw +cd ap Xl OY @@ -9780,7 +9740,7 @@ jf Gs Gs Gs -Lw +cd ap Xl Xl @@ -9922,7 +9882,7 @@ jf Gs Gs Gs -Lw +cd ap ap ap @@ -10064,7 +10024,7 @@ jf Gs Gs Gs -Lw +cd ap ap ap @@ -10206,7 +10166,7 @@ jf Gs Gs Gs -Lw +cd ap ap ap @@ -10348,7 +10308,7 @@ jf Gs Gs Gs -Lw +cd ap ap ap @@ -10490,7 +10450,7 @@ jf Gs Gs Gs -Lw +cd ap ap ap @@ -10632,7 +10592,7 @@ jf Gs Gs Gs -Lw +cd ap ap ap @@ -10774,7 +10734,7 @@ jf Gs Gs Gs -Lw +cd ap ap ap @@ -10916,7 +10876,7 @@ jf Gs Gs Gs -Lw +cd ap ap ap @@ -11058,7 +11018,7 @@ jf Gs Gs Gs -Lw +cd ap ap ap @@ -11200,7 +11160,7 @@ jf Gs Gs Gs -Lw +cd ap ap ap @@ -11342,7 +11302,7 @@ jf Gs Gs Gs -Lw +cd ap ap ap @@ -11484,7 +11444,7 @@ jf Gs Gs Gs -Lw +cd ap ap ap @@ -11626,7 +11586,7 @@ jf Gs Gs Gs -Lw +cd ap ap ap @@ -11768,7 +11728,7 @@ jf Gs Gs Gs -Lw +cd ap ap ap @@ -11910,7 +11870,7 @@ jf Gs Gs Gs -Lw +cd ap ap ap @@ -12052,7 +12012,7 @@ jf Gs Gs Gs -Lw +cd ap ap ap @@ -12171,30 +12131,30 @@ ap ap ap ap -Lw -Lw -Lw -Lw -Lw -Lw -Lw -Lw -Lw -Lw -Lw -Lw -Lw -Lw -Lw -Lw -Lw -Lw -Lw -Lw -Lw -Lw -Lw -Lw +cd +cd +cd +cd +cd +cd +cd +cd +cd +cd +cd +cd +cd +cd +cd +cd +cd +cd +cd +cd +cd +cd +cd +cd ap ap ap @@ -20646,7 +20606,7 @@ di by bc bc -bs +bN aq ae ae @@ -20788,7 +20748,7 @@ di bn bn dE -bu +bO aq ae ae @@ -20930,7 +20890,7 @@ di bn bn dE -bw +bP aq ae ae @@ -21072,7 +21032,7 @@ bn bn bn dE -bu +bO aq ae ae @@ -21214,7 +21174,7 @@ bn bz bc bc -bx +bT aq ae ae @@ -23466,10 +23426,10 @@ dB dY dY dY -eN -eN -eN -eN +dY +dY +dY +dY dY dY dY @@ -23607,12 +23567,12 @@ dw dB dY dY -ev -eO -fg -fg -eQ -fM +dY +bu +bA +bA +bD +dY eo dY fZ @@ -23749,12 +23709,12 @@ dw dB dY eo -ew -eP -fh -fw -fD -fM +dY +bw +bs +bs +bE +dY eo dY dB @@ -23891,12 +23851,12 @@ dw dB dY eo -ew -eP -fi -fx -fD -fM +dY +bw +bs +bs +bE +dY eo dY dB @@ -24033,12 +23993,12 @@ dx dB dY eo -ew -eQ -fj -fj -fE -fN +dY +bx +bC +bC +bF +dY dY dY dB @@ -24176,10 +24136,10 @@ dB dY dY dY -eR -eR -eR -eR +dY +dY +dY +dY dY dY dY diff --git a/vorestation.dme b/vorestation.dme index a6e08e8692..29a1477c5b 100644 --- a/vorestation.dme +++ b/vorestation.dme @@ -1325,6 +1325,7 @@ #include "code\game\objects\structures\fence.dm" #include "code\game\objects\structures\fireaxe.dm" #include "code\game\objects\structures\fitness.dm" +#include "code\game\objects\structures\fitness_vr.dm" #include "code\game\objects\structures\flora.dm" #include "code\game\objects\structures\flora_vr.dm" #include "code\game\objects\structures\girders.dm"