From d5af92d34659c63bedba07488da8c5b01dc01e1a Mon Sep 17 00:00:00 2001 From: TDSSS <32099540+TDSSS@users.noreply.github.com> Date: Thu, 6 Jun 2019 14:12:44 +0200 Subject: [PATCH 1/4] Initial commit --- .../lavaland_surface_syndicate_base1.dmm | 36 +++++++++++++------ code/modules/paperwork/faxmachine.dm | 16 +++++++-- 2 files changed, 39 insertions(+), 13 deletions(-) diff --git a/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_syndicate_base1.dmm b/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_syndicate_base1.dmm index 13850af5db7..8152e90fe45 100644 --- a/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_syndicate_base1.dmm +++ b/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_syndicate_base1.dmm @@ -1611,15 +1611,6 @@ pixel_x = 1; pixel_y = -1 }, -/obj/item/radio/headset/syndicate/alt{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/radio/headset/syndicate/alt, -/obj/item/radio/headset/syndicate/alt{ - pixel_x = 3; - pixel_y = -3 - }, /obj/effect/decal/cleanable/dirt, /turf/simulated/floor/plasteel/dark, /area/ruin/unpowered/syndicate_lava_base/cargo) @@ -3538,6 +3529,10 @@ /obj/machinery/alarm/syndicate{ pixel_y = 24 }, +/obj/item/radio/headset/syndicate/alt{ + pixel_x = -3; + pixel_y = 3 + }, /turf/simulated/floor/plasteel/grimy, /area/ruin/unpowered/syndicate_lava_base/dormitories) "hN" = ( @@ -3563,6 +3558,10 @@ /obj/machinery/alarm/syndicate{ pixel_y = 24 }, +/obj/item/radio/headset/syndicate/alt{ + pixel_x = -3; + pixel_y = 3 + }, /turf/simulated/floor/plasteel/grimy, /area/ruin/unpowered/syndicate_lava_base/dormitories) "hR" = ( @@ -4480,6 +4479,10 @@ /obj/structure/table/wood, /obj/item/ammo_box/magazine/m10mm, /obj/item/ammo_box/magazine/sniper_rounds, +/obj/item/radio/headset/syndicate/alt{ + pixel_x = -3; + pixel_y = 3 + }, /turf/simulated/floor/plasteel/grimy, /area/ruin/unpowered/syndicate_lava_base/dormitories) "jB" = ( @@ -6824,6 +6827,10 @@ "Au" = ( /turf/simulated/wall/mineral/plastitanium/explosive, /area/ruin/unpowered/syndicate_lava_base/engineering) +"Bj" = ( +/obj/machinery/porta_turret/syndicate, +/turf/simulated/wall/mineral/plastitanium/nodiagonal, +/area/ruin/unpowered/syndicate_lava_base/main) "BF" = ( /obj/structure/grille, /obj/structure/window/plastitanium, @@ -6866,6 +6873,13 @@ }, /turf/simulated/floor/engine, /area/ruin/unpowered/syndicate_lava_base/testlab) +"Ln" = ( +/obj/structure/table, +/obj/machinery/photocopier/faxmachine/longrange/syndie{ + department = "Syndicate Bioweapon Research Outpost" + }, +/turf/simulated/floor/plasteel/dark, +/area/ruin/unpowered/syndicate_lava_base/telecomms) "LQ" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, @@ -7333,7 +7347,7 @@ ab ab ab mp -mP +Ln nk nI oi @@ -8821,7 +8835,7 @@ hV ha ha ha -ha +Bj ha ju jJ diff --git a/code/modules/paperwork/faxmachine.dm b/code/modules/paperwork/faxmachine.dm index 13d85941a79..1d92888800d 100644 --- a/code/modules/paperwork/faxmachine.dm +++ b/code/modules/paperwork/faxmachine.dm @@ -2,6 +2,7 @@ var/list/obj/machinery/photocopier/faxmachine/allfaxes = list() var/list/admin_departments = list("Central Command") var/list/hidden_admin_departments = list("Syndicate") var/list/alldepartments = list() +var/list/hidden_departments = list() var/global/list/fax_blacklist = list() /obj/machinery/photocopier/faxmachine @@ -35,7 +36,7 @@ var/global/list/fax_blacklist = list() /obj/machinery/photocopier/faxmachine/proc/update_network() if(department != "Unknown") - if(!(("[department]" in alldepartments) || ("[department]" in admin_departments) || ("[department]" in hidden_admin_departments))) + if(!(("[department]" in alldepartments) || ("[department]" in hidden_departments) || ("[department]" in admin_departments) || ("[department]" in hidden_admin_departments))) alldepartments |= department /obj/machinery/photocopier/faxmachine/longrange @@ -43,6 +44,16 @@ var/global/list/fax_blacklist = list() fax_network = "Central Command Quantum Entanglement Network" long_range_enabled = 1 +/obj/machinery/photocopier/faxmachine/longrange/syndie + name = "syndicate long range fax machine" + emagged = TRUE + req_one_access = list(access_syndicate) + //No point setting fax network, being emagged overrides that anyway. + +/obj/machinery/photocopier/faxmachine/longrange/syndie/update_network() + if(department != "Unknown") + hidden_departments |= department + /obj/machinery/photocopier/faxmachine/attack_hand(mob/user) ui_interact(user) @@ -119,7 +130,7 @@ var/global/list/fax_blacklist = list() if((destination in admin_departments) || (destination in hidden_admin_departments)) send_admin_fax(usr, destination) else - sendfax(destination,usr) + sendfax(destination, usr) if(sendcooldown) spawn(sendcooldown) // cooldown time @@ -155,6 +166,7 @@ var/global/list/fax_blacklist = list() if(emagged) combineddepartments += hidden_admin_departments.Copy() + combineddepartments += hidden_departments.Copy() destination = input(usr, "To which department?", "Choose a department", "") as null|anything in combineddepartments if(!destination) From 9e3030a7408f6c991cdd48f6219b7ccef37c34aa Mon Sep 17 00:00:00 2001 From: TDSSS <32099540+TDSSS@users.noreply.github.com> Date: Thu, 6 Jun 2019 17:26:41 +0200 Subject: [PATCH 2/4] Lets admins fax the syndies. --- code/modules/admin/topic.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/admin/topic.dm b/code/modules/admin/topic.dm index 224f07d4277..c772e681855 100644 --- a/code/modules/admin/topic.dm +++ b/code/modules/admin/topic.dm @@ -2158,7 +2158,7 @@ var/obj/item/paper/P = new /obj/item/paper(null) //hopefully the null loc won't cause trouble for us if(!fax) - var/list/departmentoptions = alldepartments + "All Departments" + var/list/departmentoptions = alldepartments + hidden_departments + "All Departments" destination = input(usr, "To which department?", "Choose a department", "") as null|anything in departmentoptions if(!destination) qdel(P) From fe297fbd939def2d877067b5d1bf8068bee1c258 Mon Sep 17 00:00:00 2001 From: TDSSS <32099540+TDSSS@users.noreply.github.com> Date: Mon, 1 Jul 2019 13:07:10 +0200 Subject: [PATCH 3/4] incorporated kyet's desired changes --- code/modules/paperwork/faxmachine.dm | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/code/modules/paperwork/faxmachine.dm b/code/modules/paperwork/faxmachine.dm index 1d92888800d..f15fcfa9b80 100644 --- a/code/modules/paperwork/faxmachine.dm +++ b/code/modules/paperwork/faxmachine.dm @@ -11,6 +11,7 @@ var/global/list/fax_blacklist = list() icon_state = "fax" insert_anim = "faxsend" var/fax_network = "Local Fax Network" + var/syndie_restricted = FALSE //is it a syndicate base fax restricted from contacting NT assets? var/long_range_enabled = 0 // Can we send messages off the station? req_one_access = list(access_lawyer, access_heads, access_armory) @@ -47,6 +48,7 @@ var/global/list/fax_blacklist = list() /obj/machinery/photocopier/faxmachine/longrange/syndie name = "syndicate long range fax machine" emagged = TRUE + syndie_restricted = TRUE req_one_access = list(access_syndicate) //No point setting fax network, being emagged overrides that anyway. @@ -168,6 +170,13 @@ var/global/list/fax_blacklist = list() combineddepartments += hidden_admin_departments.Copy() combineddepartments += hidden_departments.Copy() + if(syndie_restricted) + combineddepartments = hidden_admin_departments.Copy() + combineddepartments += hidden_departments.Copy() + for(var/obj/machinery/photocopier/faxmachine/F in allfaxes) + if(F.emagged)//we can contact emagged faxes on the station + combineddepartments |= F.department + destination = input(usr, "To which department?", "Choose a department", "") as null|anything in combineddepartments if(!destination) destination = lastdestination From 40de73d0ee7841df969705ec3eb8e43be27ba654 Mon Sep 17 00:00:00 2001 From: TDSSS <32099540+TDSSS@users.noreply.github.com> Date: Wed, 14 Aug 2019 21:54:07 +0200 Subject: [PATCH 4/4] remove turret, add access requirement to self destruct --- .../lavaland_surface_syndicate_base1.dmm | 22 ++++++++----------- code/game/machinery/syndicatebomb.dm | 4 ++++ 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_syndicate_base1.dmm b/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_syndicate_base1.dmm index 8152e90fe45..7ebf76ed865 100644 --- a/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_syndicate_base1.dmm +++ b/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_syndicate_base1.dmm @@ -6067,6 +6067,13 @@ /obj/structure/sign/fire, /turf/simulated/wall/mineral/plastitanium/coated, /area/ruin/unpowered/syndicate_lava_base/engineering) +"ng" = ( +/obj/structure/table, +/obj/machinery/photocopier/faxmachine/longrange/syndie{ + department = "Syndicate Bioweapon Research Outpost" + }, +/turf/simulated/floor/plasteel/dark, +/area/ruin/unpowered/syndicate_lava_base/telecomms) "nh" = ( /obj/machinery/telecomms/relay/preset/ruskie{ use_power = 0 @@ -6827,10 +6834,6 @@ "Au" = ( /turf/simulated/wall/mineral/plastitanium/explosive, /area/ruin/unpowered/syndicate_lava_base/engineering) -"Bj" = ( -/obj/machinery/porta_turret/syndicate, -/turf/simulated/wall/mineral/plastitanium/nodiagonal, -/area/ruin/unpowered/syndicate_lava_base/main) "BF" = ( /obj/structure/grille, /obj/structure/window/plastitanium, @@ -6873,13 +6876,6 @@ }, /turf/simulated/floor/engine, /area/ruin/unpowered/syndicate_lava_base/testlab) -"Ln" = ( -/obj/structure/table, -/obj/machinery/photocopier/faxmachine/longrange/syndie{ - department = "Syndicate Bioweapon Research Outpost" - }, -/turf/simulated/floor/plasteel/dark, -/area/ruin/unpowered/syndicate_lava_base/telecomms) "LQ" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, @@ -7347,7 +7343,7 @@ ab ab ab mp -Ln +ng nk nI oi @@ -8835,7 +8831,7 @@ hV ha ha ha -Bj +ha ha ju jJ diff --git a/code/game/machinery/syndicatebomb.dm b/code/game/machinery/syndicatebomb.dm index bc2af073fc6..3630beb1f6c 100644 --- a/code/game/machinery/syndicatebomb.dm +++ b/code/game/machinery/syndicatebomb.dm @@ -201,6 +201,9 @@ return FALSE if(!Adjacent(user)) return FALSE + if(!allowed(user)) + to_chat(user, "Access denied!") + return FALSE return TRUE /obj/machinery/syndicatebomb/proc/activate() @@ -273,6 +276,7 @@ /obj/machinery/syndicatebomb/self_destruct name = "self destruct device" desc = "Do not taunt. Warranty invalid if exposed to high temperature. Not suitable for agents under 3 years of age." + req_access = list(access_syndicate) payload = /obj/item/bombcore/large can_unanchor = FALSE var/explosive_wall_group = EXPLOSIVE_WALL_GROUP_SYNDICATE_BASE // If set, this bomb will also cause explosive walls in the same group to explode