From 00f1fa2756c906f4e8a673f20fc58963bb77cc49 Mon Sep 17 00:00:00 2001 From: Unknown Date: Fri, 18 Dec 2020 16:54:12 -0500 Subject: [PATCH] Exploration/Gateway Update - Adds a new Scatter type of gateway, abductor, which strips the person's gear and deposits them somewhere else - Nerfs Expedition Phasers and Holdout Phasers - Reduces the number of full size phasers in Exploration from 4 to 3 - Slightly buffs melee mobs - Removes humanoid mobs from Virgo 3B Wilderness - Removes ADG from one of the POIs from V2 --- code/datums/supplypacks/munitions_vr.dm | 2 +- code/game/objects/effects/landmarks_vr.dm | 3 ++ code/global_vr.dm | 2 + code/modules/awaymissions/gateway.dm | 40 +++++++++++++++++++ code/modules/awaymissions/zlevel.dm | 22 +++++++++- .../mob/living/simple_mob/simple_mob_vr.dm | 2 +- .../projectiles/guns/energy/laser_vr.dm | 4 +- maps/submaps/pois_vr/aerostat/Rockybase.dmm | 8 +--- .../surface_submaps/plains/Thiefc_vr.dmm | 18 ++++----- maps/tether/tether_things.dm | 2 +- 10 files changed, 79 insertions(+), 24 deletions(-) diff --git a/code/datums/supplypacks/munitions_vr.dm b/code/datums/supplypacks/munitions_vr.dm index e8674dd390..75f2124c96 100644 --- a/code/datums/supplypacks/munitions_vr.dm +++ b/code/datums/supplypacks/munitions_vr.dm @@ -2,7 +2,7 @@ name = "Frontier phaser (station-locked) crate" contains = list( /obj/item/weapon/gun/energy/locked/frontier = 2, - /obj/item/weapon/gun/energy/locked/frontier/holdout = 1, + /obj/item/weapon/gun/energy/locked/frontier/holdout = 2, ) cost = 35 containertype = /obj/structure/closet/crate/secure diff --git a/code/game/objects/effects/landmarks_vr.dm b/code/game/objects/effects/landmarks_vr.dm index 1111b71724..b9dd81e967 100644 --- a/code/game/objects/effects/landmarks_vr.dm +++ b/code/game/objects/effects/landmarks_vr.dm @@ -1,3 +1,6 @@ +/obj/effect/landmark + var/abductor = 0 + /obj/effect/landmark/late_antag name = "Antag Latespawn" var/antag_id diff --git a/code/global_vr.dm b/code/global_vr.dm index 9d06ea18a3..278df90f79 100644 --- a/code/global_vr.dm +++ b/code/global_vr.dm @@ -12,7 +12,9 @@ var/list/shell_module_types = list( "Standard", "Service", "Clerical", "Service-Hound" ) +var/list/awayabductors = list() // List of scatter landmarks for Abductors in Gateways var/list/eventdestinations = list() // List of scatter landmarks for VOREStation event portals +var/list/eventabductors = list() // List of scatter landmarks for VOREStation abductor portals var/global/list/acceptable_fruit_types= list( "ambrosia", diff --git a/code/modules/awaymissions/gateway.dm b/code/modules/awaymissions/gateway.dm index 987d395992..417f5182e6 100644 --- a/code/modules/awaymissions/gateway.dm +++ b/code/modules/awaymissions/gateway.dm @@ -145,6 +145,46 @@ obj/machinery/gateway/centerstation/process() if(dest) M.forceMove(dest.loc) M.set_dir(SOUTH) + //VOREStation Addition Start: Abduction! + if(istype(M, /mob/living) && dest.abductor) + var/mob/living/L = M + //Situations to get the mob out of + if(L.buckled) + L.buckled.unbuckle_mob() + if(istype(L.loc,/obj/mecha)) + var/obj/mecha/ME = L.loc + ME.go_out() + else if(istype(L.loc,/obj/machinery/sleeper)) + var/obj/machinery/sleeper/SL = L.loc + SL.go_out() + else if(istype(L.loc,/obj/machinery/recharge_station)) + var/obj/machinery/recharge_station/RS = L.loc + RS.go_out() + + if(!issilicon(L)) //Don't drop borg modules... + for(var/obj/item/I in L) + if(istype(I,/obj/item/weapon/implant) || istype(I,/obj/item/device/nif)) + continue + if(istype(I,/obj/item/weapon/holder)) + var/obj/item/weapon/holder/H = I + var/mob/living/MI = H.held_mob + MI.forceMove(get_turf(H)) + for(var/obj/item/II in MI) + if(istype(II,/obj/item/weapon/implant) || istype(II,/obj/item/device/nif)) + continue + MI.drop_from_inventory(II, loc) + MI.Paralyse(10) + var/obj/effect/landmark/finaldest = pick(awayabductors) + MI.forceMove(finaldest) + MI << 'sound/effects/bamf.ogg' + to_chat(MI,"You're starting to come to. You feel like you've been out for a few minutes, at least...") + L.drop_from_inventory(I, loc) + L.Paralyse(10) + var/obj/effect/landmark/finaldest = pick(awayabductors) + L.forceMove(finaldest) + L << 'sound/effects/bamf.ogg' + to_chat(L,"You're starting to come to. You feel like you've been out for a few minutes, at least...") + //VOREStation Addition End return /obj/machinery/gateway/centerstation/attackby(obj/item/device/W as obj, mob/user as mob) diff --git a/code/modules/awaymissions/zlevel.dm b/code/modules/awaymissions/zlevel.dm index 43c1dc4a91..ee065d41d7 100644 --- a/code/modules/awaymissions/zlevel.dm +++ b/code/modules/awaymissions/zlevel.dm @@ -63,9 +63,29 @@ proc/createRandomZlevel() . = ..() awaydestinations += src +/obj/effect/landmark/gateway_scatter/abduct + name = "uncalibrated gateway abductor" + abductor = 1 + /obj/effect/landmark/event_scatter - name = "uncalibrated gateway destination" + name = "uncalibrated event destination" /obj/effect/landmark/event_scatter/Initialize() . = ..() eventdestinations += src + +/obj/effect/landmark/event_scatter/abduct + name = "uncalibrated event abductor" + abductor = 1 + +/obj/effect/landmark/gateway_abduct_dest + name = "abductor gateway destination" +/obj/effect/landmark/gateway_abduct_dest/Initialize() + . = ..() + awayabductors += src + +/obj/effect/landmark/event_abduct_dest + name = "abductor event destination" +/obj/effect/landmark/event_abduct_dest/Initialize() + . = ..() + eventabductors += src //VOREStation Add End diff --git a/code/modules/mob/living/simple_mob/simple_mob_vr.dm b/code/modules/mob/living/simple_mob/simple_mob_vr.dm index ef631fa897..7aadfcd30e 100644 --- a/code/modules/mob/living/simple_mob/simple_mob_vr.dm +++ b/code/modules/mob/living/simple_mob/simple_mob_vr.dm @@ -4,7 +4,7 @@ #define SA_ICON_REST 0x04 /mob/living/simple_mob - base_attack_cooldown = 15 + base_attack_cooldown = 10 var/temperature_range = 40 // How close will they get to environmental temperature before their body stops changing its heat diff --git a/code/modules/projectiles/guns/energy/laser_vr.dm b/code/modules/projectiles/guns/energy/laser_vr.dm index 86a32cb97f..e05f0cb8fd 100644 --- a/code/modules/projectiles/guns/energy/laser_vr.dm +++ b/code/modules/projectiles/guns/energy/laser_vr.dm @@ -199,7 +199,7 @@ item_icons = list(slot_l_hand_str = 'icons/mob/items/lefthand_guns_vr.dmi', slot_r_hand_str = 'icons/mob/items/righthand_guns_vr.dmi', "slot_belt" = 'icons/mob/belt_vr.dmi') fire_sound = 'sound/weapons/laser2.ogg' origin_tech = list(TECH_COMBAT = 4, TECH_MAGNET = 2, TECH_POWER = 4) - charge_cost = 300 + charge_cost = 400 battery_lock = 1 unacidable = 1 @@ -287,7 +287,7 @@ phase_power = 100 w_class = ITEMSIZE_SMALL - charge_cost = 600 + charge_cost = 800 modifystate = "holdoutkill" firemodes = list( list(mode_name="lethal", fire_delay=12, projectile_type=/obj/item/projectile/beam, modifystate="holdoutkill", charge_cost = 600), diff --git a/maps/submaps/pois_vr/aerostat/Rockybase.dmm b/maps/submaps/pois_vr/aerostat/Rockybase.dmm index b9c9e2e327..657988b585 100644 --- a/maps/submaps/pois_vr/aerostat/Rockybase.dmm +++ b/maps/submaps/pois_vr/aerostat/Rockybase.dmm @@ -659,12 +659,6 @@ /obj/item/mecha_parts/chassis/gygax, /turf/simulated/floor/tiled/techfloor/virgo2, /area/submap/virgo2/Rockybase) -"co" = ( -/mob/living/simple_mob/mechanical/mecha/combat/gygax/dark/advanced{ - faction = "syndicate" - }, -/turf/simulated/floor/tiled/techfloor/virgo2, -/area/submap/virgo2/Rockybase) "cp" = ( /obj/machinery/vending/robotics, /obj/machinery/light{ @@ -1302,7 +1296,7 @@ al bA ao ao -co +ao bq ao al diff --git a/maps/submaps/surface_submaps/plains/Thiefc_vr.dmm b/maps/submaps/surface_submaps/plains/Thiefc_vr.dmm index aab0b0eb08..412b6c8739 100644 --- a/maps/submaps/surface_submaps/plains/Thiefc_vr.dmm +++ b/maps/submaps/surface_submaps/plains/Thiefc_vr.dmm @@ -75,7 +75,6 @@ /obj/random/firstaid, /obj/random/firstaid, /obj/random/firstaid, -/obj/random/firstaid, /turf/simulated/floor/outdoors/dirt{ outdoors = 0 }, @@ -103,7 +102,6 @@ /obj/vehicle/train/trolley, /obj/random/multiple/voidsuit, /obj/random/multiple/voidsuit, -/obj/random/multiple/voidsuit, /turf/simulated/floor/outdoors/dirt{ outdoors = 0 }, @@ -121,15 +119,13 @@ /area/submap/Thiefc) "p" = ( /obj/structure/closet/crate, -/obj/item/weapon/storage/box/shotgunammo, /obj/item/weapon/storage/box/practiceshells, -/obj/item/weapon/grenade/spawnergrenade/manhacks/station, /turf/simulated/floor/outdoors/dirt{ outdoors = 0 }, /area/submap/Thiefc) -"u" = ( -/mob/living/simple_mob/humanoid/merc/ranged/virgo, +"B" = ( +/mob/living/simple_mob/animal/giant_spider/phorogenic, /turf/simulated/floor/outdoors/dirt{ outdoors = 0 }, @@ -322,7 +318,7 @@ a c c c -u +h h h h @@ -346,7 +342,7 @@ c f h h -h +B h h c @@ -387,12 +383,12 @@ a a c e -h -u +B h h h h +B h h c @@ -414,7 +410,7 @@ i h h h -u +h c c c diff --git a/maps/tether/tether_things.dm b/maps/tether/tether_things.dm index 903026b657..2d981f1a48 100644 --- a/maps/tether/tether_things.dm +++ b/maps/tether/tether_things.dm @@ -366,7 +366,7 @@ var/global/list/latejoin_tram = list() /obj/structure/closet/secure_closet/guncabinet/excursion/New() ..() - for(var/i = 1 to 3) + for(var/i = 1 to 2) new /obj/item/weapon/gun/energy/locked/frontier(src) // Used at centcomm for the elevator