diff --git a/_maps/map_files/RandomZLevels/spacebattle.dmm b/_maps/map_files/RandomZLevels/spacebattle.dmm index a2fa38cf08c..4f38e44eb0e 100644 --- a/_maps/map_files/RandomZLevels/spacebattle.dmm +++ b/_maps/map_files/RandomZLevels/spacebattle.dmm @@ -258,10 +258,6 @@ /turf/simulated/floor/mineral/plastitanium/red, /area/awaymission/spacebattle/syndicate3) "bl" = ( -/obj/machinery/computer/pod{ - id_tags = list("spacebattlepod3"); - name = "Hull Door Control" - }, /turf/simulated/floor/mineral/plastitanium/red, /area/awaymission/spacebattle/syndicate2) "bm" = ( @@ -400,10 +396,6 @@ /turf/simulated/floor/plasteel, /area/awaymission/spacebattle/cruiser) "bY" = ( -/obj/machinery/computer/pod{ - id_tags = list("spacebattlepod"); - name = "Hull Door Control" - }, /turf/simulated/floor/mineral/plastitanium/red, /area/awaymission/spacebattle/cruiser) "bZ" = ( @@ -644,10 +636,6 @@ /turf/simulated/floor/plasteel, /area/awaymission/spacebattle/cruiser) "cZ" = ( -/obj/machinery/computer/pod{ - id_tags = list("spacebattlepod2"); - name = "Hull Door Control" - }, /turf/simulated/floor/mineral/plastitanium/red, /area/awaymission/spacebattle/cruiser) "db" = ( diff --git a/code/game/machinery/computer/buildandrepair.dm b/code/game/machinery/computer/buildandrepair.dm index 8cac7136b29..dc52ca7aab1 100644 --- a/code/game/machinery/computer/buildandrepair.dm +++ b/code/game/machinery/computer/buildandrepair.dm @@ -179,14 +179,6 @@ board_name = "Injector Control" build_path = /obj/machinery/computer/general_air_control/fuel_injection -/obj/item/circuitboard/pod - board_name = "Massdriver Control" - build_path = /obj/machinery/computer/pod - -/obj/item/circuitboard/pod/deathsquad - board_name = "Deathsquad Massdriver Control" - build_path = /obj/machinery/computer/pod/deathsquad - /obj/item/circuitboard/robotics board_name = "Robotics Control Console" build_path = /obj/machinery/computer/robotics @@ -227,18 +219,6 @@ build_path = /obj/machinery/computer/monitor/secret origin_tech = "programming=2;powerstorage=2" -/obj/item/circuitboard/olddoor - board_name = "DoorMex" - build_path = /obj/machinery/computer/pod/old - -/obj/item/circuitboard/syndicatedoor - board_name = "ProComp Executive" - build_path = /obj/machinery/computer/pod/old/syndicate - -/obj/item/circuitboard/swfdoor - board_name = "Magix" - build_path = /obj/machinery/computer/pod/old/swf - /obj/item/circuitboard/prisoner board_name = "Prisoner Management" build_path = /obj/machinery/computer/prisoner diff --git a/code/game/machinery/computer/pod.dm b/code/game/machinery/computer/pod.dm deleted file mode 100644 index dfbcc4e8303..00000000000 --- a/code/game/machinery/computer/pod.dm +++ /dev/null @@ -1,363 +0,0 @@ -/obj/machinery/computer/pod - name = "mass drivers and pod doors control" - desc = "A control for launching pods. Some people prefer firing Mechas." - icon_screen = "mass_driver" - light_color = "#555555" - circuit = /obj/item/circuitboard/pod - var/list/id_tags = list() - var/list/door_only_tags = list() - var/list/synced = list() - var/list/timings = list() - var/list/times = list() - var/list/maxtimes = list() - var/list/powers = list() - var/list/loopings = list() - -/obj/machinery/computer/pod/New() - ..() - spawn(5) - driver_sync() - - -/obj/machinery/computer/pod/proc/driver_sync() - timings = list() - times = list() - synced = list() - for(var/obj/machinery/mass_driver/M in GLOB.machines) - if(M.z != src.z) continue - for(var/ident_tag in id_tags) - if((M.id_tag == ident_tag) && !(ident_tag in synced)) - synced += ident_tag - timings += ident_tag - timings[ident_tag] = 0.0 - times += ident_tag - times[ident_tag] = 30.0 - maxtimes += ident_tag - maxtimes[ident_tag] = 30.0 - powers += ident_tag - powers[ident_tag] = 1.0 - loopings += ident_tag - loopings[ident_tag] = 0 - break - for(var/obj/machinery/door/poddoor/M in GLOB.airlocks) - if(M.z != src.z) continue - for(var/ident_tag in id_tags) - if((M.id_tag == ident_tag) && !(ident_tag in synced) && !(ident_tag in door_only_tags)) - door_only_tags += ident_tag - break - - return - -/obj/machinery/computer/pod/proc/solo_sync(ident_tag) - for(var/obj/machinery/mass_driver/M in GLOB.machines) - if(M.z != src.z) continue - if((M.id_tag == ident_tag) && !(ident_tag in synced)) - synced += ident_tag - timings += ident_tag - timings[ident_tag] = 0.0 - times += ident_tag - times[ident_tag] = 30.0 - maxtimes += ident_tag - maxtimes[ident_tag] = 30.0 - powers += ident_tag - powers[ident_tag] = 1.0 - loopings += ident_tag - loopings[ident_tag] = 0 - break - if(!(ident_tag in synced)) - for(var/obj/machinery/door/poddoor/M in GLOB.airlocks) - if(M.z != src.z) continue - if((M.id_tag == ident_tag) && !(ident_tag in synced) && !(ident_tag in door_only_tags)) - door_only_tags += ident_tag - break - - return - - -/obj/machinery/computer/pod/proc/launch_sequence(ident_tag) - if(stat & (NOPOWER|BROKEN)) - return - var/anydriver = 0 - for(var/obj/machinery/mass_driver/M in GLOB.machines) - if(M.z != src.z) continue - if(M.id_tag == ident_tag) - anydriver = 1 - if(!anydriver) - visible_message("Cannot locate any mass driver of that ID. Cancelling firing sequence!") - return - - for(var/obj/machinery/door/poddoor/M in GLOB.airlocks) - if(M.z != src.z) continue - if(M.id_tag == ident_tag) - spawn() - M.open() - sleep(20) - - - for(var/obj/machinery/mass_driver/M in GLOB.machines) - if(M.z != src.z) continue - if(M.id_tag == ident_tag) - M.drive() - - sleep(50) - for(var/obj/machinery/door/poddoor/M in GLOB.airlocks) - if(M.z != src.z) continue - if(M.id_tag == ident_tag) - spawn() - M.close() - return - - -/obj/machinery/computer/pod/attack_ai(mob/user as mob) - src.add_hiddenprint(user) - return attack_hand(user) - - -/obj/machinery/computer/pod/attack_hand(mob/user as mob) - if(..()) - return - - var/dat = "[name](rename)" - user.set_machine(src) - dat += "
Reset Connections
" - if(synced.len) - dat += "
Fire All Connected Drivers
" - if(istype(src,/obj/machinery/computer/pod/deathsquad)) - dat += "
Set Teleporter Destination Z-Level
" - for(var/ident_tag in id_tags) - if(!(ident_tag in door_only_tags)) - dat += "

[ident_tag] remove" - if(ident_tag in synced) - var/d2 = "" - if(timings[ident_tag]) //door controls do not need timers. - d2 = "Stop Time Launch" - else - d2 = "Initiate Time Launch" - var/second = times[ident_tag] % 60 - var/minute = (times[ident_tag] - second) / 60 - var/maxsecond = maxtimes[ident_tag] % 60 - var/maxminute = (maxtimes[ident_tag] - maxsecond) / 60 - dat += "
\nTimer System: [d2]\nTime Left: [minute ? "[minute]:" : null][second]/[maxminute ? "[maxminute]:" : null][maxsecond] - - + +" - dat += "
Set timer to loop: [loopings[ident_tag] ? "Yes" : "No"]" - var/temp = "" - var/list/L = list( 0.25, 0.5, 1, 2, 4, 8, 16 ) - for(var/t in L) - if( powers[ident_tag] == t) - temp += "[t] " - else - temp += "[t] " - dat += "
\nPower Level: [temp]
\nFire Drive!
\nToggle Pod Doors
" - - for(var/ident_tag in door_only_tags) - dat += "

[ident_tag] remove" - dat += "
\nToggle Pod Doors
" - - dat += "
add another id_tag" - - dat += "

Close
" - user << browse(dat, "window=computer;size=400x500") - add_fingerprint(usr) - onclose(user, "computer") - return - -/obj/machinery/computer/pod/process() - if(!..()) - return - for(var/ident_tag in id_tags) - if(timings[ident_tag]) - if(times[ident_tag] > 0) - times[ident_tag] = round(times[ident_tag]) - 1 - else - spawn() - launch_sequence(ident_tag) - if(loopings[ident_tag]) - times[ident_tag] = maxtimes[ident_tag] - else - times[ident_tag] = 0 - timings[ident_tag] = 0 - else - times[ident_tag] = maxtimes[ident_tag] - updateDialog() - return - - -/obj/machinery/computer/pod/Topic(href, href_list) - if(..()) - return 1 - else - usr.set_machine(src) - if(href_list["add"]) - var/new_id_tag = input("Enter a new id_tag", "Mass Driver Controls", "id_tag") - if(!(new_id_tag in id_tags)) - id_tags += new_id_tag - solo_sync(new_id_tag) - if(href_list["remove"]) - var/ident_tag = href_list["driver"] - if(ident_tag in synced) - synced -= ident_tag - if(ident_tag in door_only_tags) - door_only_tags -= ident_tag - timings -= ident_tag - times -= ident_tag - powers -= ident_tag - loopings -= ident_tag - id_tags -= ident_tag - if(href_list["dstele"]) - var/choices = list(0) - var/list/reachable_levels = levels_by_trait(REACHABLE) - for(var/z in reachable_levels) - choices += z - var/obj/machinery/computer/pod/deathsquad/D = src - var/input = input("Enter the destination Z-Level. The mechs will arrive from the East. Leave 0 if you don't want to set a specific ZLevel", "Mass Driver Controls", 0) in choices - D.teleporter_dest = input - - if(href_list["massfire"]) - for(var/ident_tag in synced) - spawn() - launch_sequence(ident_tag) - if(href_list["power"]) - var/ident_tag = href_list["driver"] - var/t = text2num(href_list["power"]) - t = min(max(0.25, t), 16) - for(var/obj/machinery/mass_driver/M in GLOB.machines) - if(M.id_tag == ident_tag) - M.power = t - powers[ident_tag] = t - if(href_list["launch"]) - launch_sequence(href_list["driver"]) - if(href_list["time"]) - var/ident_tag = href_list["driver"] - timings[ident_tag] = text2num(href_list["time"]) - if(href_list["loop"]) - var/ident_tag = href_list["driver"] - loopings[ident_tag] = text2num(href_list["loop"]) - if(href_list["sync"]) - driver_sync() - if(href_list["tp"]) - var/ident_tag = href_list["driver"] - var/tp = text2num(href_list["tp"]) - maxtimes[ident_tag] += tp - maxtimes[ident_tag] = min(max(round(maxtimes[ident_tag]), 0), 120) - if(href_list["door"]) - var/ident_tag = href_list["driver"] - for(var/obj/machinery/door/poddoor/M in GLOB.airlocks) - if(M.z != src.z) continue - if(M.id_tag == ident_tag) - spawn() - if(M.density) - M.open() - else - M.close() - if(href_list["rename"]) - var/new_title = input("Enter a new title", "[name]", "[name]") - if(new_title) - name = new_title - updateUsrDialog() - return - - - -/obj/machinery/computer/pod/old - icon_state = "oldcomp" - icon_screen = "library" - icon_keyboard = null - name = "\improper DoorMex control computer" - circuit = /obj/item/circuitboard/olddoor - - -/obj/machinery/computer/pod/old/syndicate - name = "external airlock controls" - desc = "The Syndicate operate on a tight budget. Operates external airlocks." - req_access = list(ACCESS_SYNDICATE) - circuit = /obj/item/circuitboard/syndicatedoor - light_color = "#00FFFF" - -/obj/machinery/computer/pod/old/syndicate/attack_hand(mob/user as mob) - if(!allowed(user)) - to_chat(user, "Access Denied") - return - else - ..() - -/obj/machinery/computer/pod/old/swf - name = "\improper Magix System IV" - desc = "An arcane artifact that holds much magic. Running E-Knock 2.2: Sorceror's Edition" - circuit = /obj/item/circuitboard/swfdoor - - -/obj/machinery/computer/pod/deathsquad - id_tags = list("ASSAULT0","ASSAULT1","ASSAULT2","ASSAULT3") - var/teleporter_dest = 0 - circuit = /obj/item/circuitboard/pod/deathsquad - -/obj/machinery/computer/pod/deathsquad/launch_sequence(ident_tag) - if(stat & (NOPOWER|BROKEN)) - return - var/anydriver = 0 - for(var/obj/machinery/mass_driver/M in GLOB.machines) - if(M.z != src.z) continue - if(M.id_tag == ident_tag) - anydriver = 1 - if(!anydriver) - visible_message("Cannot locate any mass driver of that ID. Cancelling firing sequence!") - return - - var/spawn_marauder[] = new() - for(var/thing in GLOB.landmarks_list) - var/obj/effect/landmark/L = thing - if(L.name == "Marauder Entry") - spawn_marauder.Add(L) - for(var/obj/effect/landmark/mechlaunch/L in GLOB.landmarks_list) - var/obj/effect/portal/P = new(L.loc, pick(spawn_marauder)) - P.invisibility = 101 //So it is not seen by anyone. - P.failchance = 0 //So it has no fail chance when teleporting. - spawn_marauder.Remove(P.target) - - for(var/obj/machinery/door/poddoor/M in GLOB.airlocks) - if(M.z != src.z) continue - if(M.id_tag == ident_tag) - spawn() - M.open() - sleep(20) - - for(var/obj/machinery/mass_driver/M in GLOB.machines) - if(M.z != src.z) continue - if(M.id_tag == ident_tag) - M.drive() - - sleep(50) - for(var/obj/machinery/door/poddoor/M in GLOB.airlocks) - if(M.z != src.z) continue - if(M.id_tag == ident_tag) - spawn() - M.close() - - for(var/obj/structure/deathsquad_tele/D in world) - if(D.z != src.z) continue - if(D.id_tag == ident_tag) - D.icon_state = "tele0" - D.density = 0 - - return - -/obj/structure/deathsquad_tele - name = "mech teleporter" - density = 0 - anchored = 1 - icon = 'icons/obj/stationobjs.dmi' - icon_state = "tele0" - var/ztarget = 0 - var/id_tag = "" - - -/obj/structure/deathsquad_tele/Bumped(atom/movable/AM) - if(!ztarget) return ..() - var/y = AM.y - spawn() - AM.z = ztarget - AM.y = y - AM.x = world.maxx - TRANSITIONEDGE - 2 - AM.dir = 8 - var/atom/target = get_edge_target_turf(AM, AM.dir) - AM.throw_at(target, 50, 1) - return diff --git a/code/game/objects/effects/landmarks.dm b/code/game/objects/effects/landmarks.dm index d671c5debdf..aed8fb05dc6 100644 --- a/code/game/objects/effects/landmarks.dm +++ b/code/game/objects/effects/landmarks.dm @@ -25,9 +25,6 @@ INITIALIZE_IMMEDIATE(/obj/effect/landmark/newplayer_start) //Without this you sp /obj/effect/landmark/lightsout name = "Electrical Storm Epicentre" -/obj/effect/landmark/mechlaunch - name = "CC mech exit point" - /obj/effect/landmark/awaystart name = "awaystart" icon = 'icons/effects/spawner_icons.dmi' diff --git a/code/modules/research/designs/machine_designs.dm b/code/modules/research/designs/machine_designs.dm index 300563a5fc0..caef24b5237 100644 --- a/code/modules/research/designs/machine_designs.dm +++ b/code/modules/research/designs/machine_designs.dm @@ -452,16 +452,6 @@ build_path = /obj/item/circuitboard/arcade/orion_trail category = list("Misc. Machinery") -/datum/design/pod - name = "Machine Board (Mass Driver and Pod Doors Control)" - desc = "Allows for the construction of circuit boards used to build a Mass Driver and Pod Doors Control." - id = "pod" - req_tech = list("programming" = 2,"engineering" = 4) - build_type = IMPRINTER - materials = list(MAT_GLASS = 1000) - build_path = /obj/item/circuitboard/pod - category = list("Misc. Machinery") - /datum/design/ore_redemption name = "Machine Design (Ore Redemption Board)" desc = "The circuit board for an Ore Redemption machine." diff --git a/paradise.dme b/paradise.dme index fc56e8f4226..91cd745fe11 100644 --- a/paradise.dme +++ b/paradise.dme @@ -746,7 +746,6 @@ #include "code\game\machinery\computer\medical.dm" #include "code\game\machinery\computer\message.dm" #include "code\game\machinery\computer\Operating.dm" -#include "code\game\machinery\computer\pod.dm" #include "code\game\machinery\computer\power.dm" #include "code\game\machinery\computer\prisoner.dm" #include "code\game\machinery\computer\robot.dm"