diff --git a/code/datums/helper_datums/teleport_vr.dm b/code/datums/helper_datums/teleport_vr.dm index 4075bc70f0..b3054a44c0 100644 --- a/code/datums/helper_datums/teleport_vr.dm +++ b/code/datums/helper_datums/teleport_vr.dm @@ -1,3 +1,11 @@ +//wrapper +/proc/do_noeffect_teleport(ateleatom, adestination, aprecision=0, afteleport=1, aeffectin=null, aeffectout=null, asoundin=null, asoundout=null, local=TRUE) + new /datum/teleport/instant/science/noeffect(arglist(args)) + return + +/datum/teleport/instant/science/noeffect/setEffects(datum/effect/effect/system/aeffectin,datum/effect/effect/system/aeffectout) + return 1 + /datum/teleport/proc/try_televore() //Destination is in a belly if(isbelly(destination.loc)) diff --git a/code/modules/multiz/structures_vr.dm b/code/modules/multiz/structures_vr.dm new file mode 100644 index 0000000000..b66c148e3b --- /dev/null +++ b/code/modules/multiz/structures_vr.dm @@ -0,0 +1,57 @@ +/obj/structure/portal_subtle + name = "portal" + desc = "Looks unstable. Best to test it with the clown." + icon = 'icons/obj/stationobjs.dmi' + icon_state = "portal" + density = 1 + unacidable = 1//Can't destroy energy portals. + var/failchance = 0 + anchored = 1 + var/obj/structure/portal_subtle/target + +/obj/structure/portal_subtle/Destroy() + if(target) + target.target = null + target = null + return ..() + +/obj/structure/portal_subtle/Bumped(mob/M as mob|obj) + if(istype(M,/mob) && !(istype(M,/mob/living))) + return //do not send ghosts, zshadows, ai eyes, etc + spawn(0) + src.teleport(M) + return + return + +/obj/structure/portal_subtle/Crossed(AM as mob|obj) + if(istype(AM,/mob) && !(istype(AM,/mob/living))) + return //do not send ghosts, zshadows, ai eyes, etc + spawn(0) + src.teleport(AM) + return + return + +/obj/structure/portal_subtle/attack_hand(mob/user as mob) + if(istype(user) && !(istype(user,/mob/living))) + return //do not send ghosts, zshadows, ai eyes, etc + spawn(0) + src.teleport(user) + return + return + +/obj/structure/portal_subtle/proc/teleport(atom/movable/M as mob|obj) + if(istype(M, /obj/effect)) //sparks don't teleport + return + if (M.anchored&&istype(M, /obj/mecha)) + return + if (icon_state == "portal1") + return + if (!( target )) + qdel(src) + return + if (istype(M, /atom/movable)) + if(prob(failchance)) //oh dear a problem, put em in deep space + src.icon_state = "portal1" + do_noeffect_teleport(M, locate(rand(5, world.maxx - 5), rand(5, world.maxy -5), 3), 0) + else + do_noeffect_teleport(M, target, 1) ///You will appear adjacent to the beacon diff --git a/config/custom_items.txt b/config/custom_items.txt index 3b363c070b..87b552701b 100644 --- a/config/custom_items.txt +++ b/config/custom_items.txt @@ -88,13 +88,6 @@ character_name: Aronai Kadigan item_path: /obj/item/weapon/card/id/centcom/station/fluff/aronai } -Weapon Box. Permit Expired -{ -ckey: aerowing -character_name: Sebastian Aji -item_path: /obj/item/weapon/storage/box/fluff/sebastian_aji -} - # ######## B CKEYS { ckey: benemuel @@ -202,19 +195,6 @@ character_name: Dhaeleena M'iar item_path: /obj/item/clothing/accessory/medal/silver/security/fluff/dhael } -#Permit Expired -#{ -#ckey: dhaeleena -#character_name: Dhaeleena M'iar -#item_path: /obj/item/weapon/gun/projectile/revolver/mateba/fluff/dhael -#} -# -#{ -#ckey: dhaeleena -#character_name: Dhaeleena M'iar -#item_path: /obj/item/clothing/accessory/permit/gun/fluff/dhaeleena_miar -#} - { ckey: dickfreedomjohnson character_name: Elliot Richards @@ -248,20 +228,6 @@ item_path: /obj/item/weapon/storage/box/fluff/yonra } # ######## E CKEYS - -# Permit Expired -#{ -#ckey: eekasqueak -#character_name: Serkii Miishy -#item_path: /obj/item/clothing/accessory/permit/gun/fluff/serkiimiishy -#} -# -#{ -#ckey: eekasqueak -#character_name: Serkii Miishy -#item_path: /obj/item/weapon/gun/energy/stunrevolver -#} - { ckey: eekasqueak character_name: Serkii Miishy @@ -287,8 +253,8 @@ item_path: /obj/item/clothing/accessory/medal/bronze_heart } # ######## F CKEYS -# ######## G CKEYS +# ######## G CKEYS { ckey:Gowst character_name: Eldi Moljir @@ -296,7 +262,6 @@ item_path: /obj/item/weapon/implanter/reagent_generator/eldi } # ######## H CKEYS - { ckey: hottokeeki character_name: Belle Day @@ -315,26 +280,7 @@ character_name: Belle Day item_path: /obj/item/weapon/implanter/reagent_generator/belle } -#{ -#ckey: hzdonut -#character_name: Jesse Soemmer -#item_path: /obj/item/weapon/gun/projectile/revolver/fluff/jesselemat -#} -# -#{ -#ckey: hzdonut -#character_name: Jesse Soemmer -#item_path: /obj/item/clothing/accessory/permit/gun/fluff/JesseSoemmer -#} -# -#{ -#ckey: hzdonut -#character_name: Jesse Soemmer -#item_path: /obj/item/clothing/accessory/holster/hip -#} - # ######## I CKEYS - { ckey: interrolouis character_name: Ruda Lizden @@ -354,7 +300,6 @@ item_path: /obj/item/weapon/storage/backpack/messenger/sec/fluff/ivymoomoo } # ######## J CKEYS - { ckey: jacknoir413 character_name: Mor Xaina @@ -541,12 +486,6 @@ character_name: Chakat Taiga item_path: /obj/item/clothing/under/fluff/taiga } -#{ -#ckey: kligor -#character_name: Andy Gettemy -#item_path: /obj/item/device/pda_mod/fluff/kligor -#} - { ckey: konabird character_name: Rischi @@ -560,7 +499,6 @@ item_path: /obj/item/clothing/accessory/medal/nobel_science/fluff/ashley } # ######## L CKEYS - { ckey: lm40 character_name: Kenzie Houser @@ -568,13 +506,6 @@ item_path: /obj/item/weapon/reagent_containers/hypospray/vial/kenzie req_access: 5 } -#Weapon Box. Permit Expired -#{ -#ckey: luminescentring -#character_name: Briana Moore -#item_path: /obj/item/weapon/storage/box/fluff/briana_moore -#} - { ckey: luminescentring character_name: Briana Moore @@ -612,19 +543,6 @@ character_name: Giliana Gamish item_path: /obj/item/clothing/head/fluff/molenar2 } -# Permit Expired -#{ -#ckey: molenar -#character_name: Kari Akiren -#item_path: /obj/item/weapon/gun/projectile/shotgun/pump/rifle/fluff/kari_akiren -#} -# -#{ -#ckey: molenar -#character_name: Kari Akiren -#item_path: /obj/item/clothing/accessory/permit/gun/fluff/kari_akiren -#} - { ckey: myryan character_name: Myryan Karnage-Cunningham @@ -639,7 +557,6 @@ req_access: 58 } # ######## N CKEYS - { ckey: natje character_name: Awen Henry @@ -678,20 +595,6 @@ item_path: /obj/item/weapon/melee/fluff/holochain } # ######## P CKEYS - -#{ -#ckey: pawoverlord -#character_name: Sorrel Cavalet -#item_path: /obj/item/clothing/accessory/permit/gun/fluff/sorrel_cavalet -#} - -#{ -#ckey: pawoverlord -#character_name: Sorrel Cavalet -#item_path: /obj/item/weapon/gun/projectile/colt -#item_desc: "A cheap Martian knock-off of a Colt M1911. It has the word 'Cavalet' etched on the side. Uses .45 rounds." -#} - { ckey: phoaly character_name: Lily Maximus @@ -703,6 +606,7 @@ ckey: pontifexminimus character_name: Lucius Null item_path: /obj/item/weapon/fluff/dragor_dot } + { ckey: pontifexminimus character_name: Lucia Null @@ -713,19 +617,6 @@ item_path: /obj/item/weapon/fluff/dragor_dot # ######## R CKEYS -# Permit Expired -#{ -#ckey: Razerwing -#character_name: Archer Maximus -#item_path: /obj/item/clothing/accessory/permit/gun/fluff/archermaximus -#} -# -#{ -#ckey: Razerwing -#character_name: Archer Maximus -#item_path: /obj/item/weapon/gun/projectile/colt/fluff/archercolt -#} - # ######## S CKEYS { ckey: samanthafyre @@ -775,27 +666,6 @@ character_name: Alfonso Oak Telanor item_path: /obj/item/clothing/glasses/sunglasses/fluff/alfonso } -#{ -#ckey: silencedmp5a5 -#character_name: Serdykov Antoz -#item_path: /obj/item/clothing/head/helmet/serdy -#req_access = 1 -#} - -#{ -#ckey: silencedmp5a5 -#character_name: Serdykov Antoz -#item_path: /obj/item/clothing/suit/armor/vest/wolftaur/serdy -#req_access = 1 -#} -# -#{ -#ckey: silencedmp5a5 -#character_name: Serdykov Antoz -#item_path: /obj/item/weapon/storage/box/fluff/serdykov_antoz -#req_access = 1 -#} - { ckey: silencedmp5a5 character_name: NT-HASD #556 @@ -901,36 +771,43 @@ item_path: /obj/item/clothing/head/fluff/runac } # ######## U CKEYS + # ######## V CKEYS { ckey: vailthewolf character_name: Vakashi item_path: /obj/item/clothing/accessory/permit/gun/fluff/Vakashi } + { ckey: vailthewolf character_name: Vakashi item_path: /obj/item/weapon/reagent_containers/spray/pepper } + ckey: verkister character_name: Cameron Eggbert item_path: /obj/item/clothing/glasses/fluff/science_proper } + { ckey: verkister character_name: Cameron Eggbert item_path: /obj/item/weapon/disk/limb/eggnerdltd } + { ckey: verkister character_name: Opie Eggbert item_path: /obj/item/clothing/glasses/fluff/spiffygogs } + { ckey: virgo113 character_name: Verin Raharra item_path: /obj/item/clothing/suit/storage/hazardvest/fluff/verin } + { ckey: vorrarkul character_name: Lucina Dakarim @@ -992,12 +869,6 @@ item_path: /obj/item/clothing/mask/gas/sexymime } # ######## W CKEYS -#{ -#ckey: warbrand2 -#character_name: Brandy draca -#item_path: /obj/item/device/pda_mod/fluff/warbrand2 -#} - { ckey: werebear character_name: Silas Newton @@ -1035,7 +906,6 @@ item_path: /obj/item/weapon/implanter/reagent_generator/tempest } # ######## X CKEYS - { ckey: Xsdew character_name: Penelope Allen @@ -1055,6 +925,7 @@ item_path: /obj/item/clothing/accessory/medal/silver/unity } # ######## Y CKEYS + # ######## Z CKEYS { ckey: zekesturm diff --git a/vorestation.dme b/vorestation.dme index 46bae90559..3cd701a7a3 100644 --- a/vorestation.dme +++ b/vorestation.dme @@ -2458,6 +2458,7 @@ #include "code\modules\multiz\open_space_controller.dm" #include "code\modules\multiz\pipes.dm" #include "code\modules\multiz\structures.dm" +#include "code\modules\multiz\structures_vr.dm" #include "code\modules\multiz\turf.dm" #include "code\modules\multiz\zshadow.dm" #include "code\modules\nano\nanoexternal.dm"