Merge pull request #769 from tigercat2000/trackinpods

Spacepod tracking devices
This commit is contained in:
ZomgPonies
2015-04-09 16:21:05 -04:00
10 changed files with 156 additions and 31 deletions
@@ -123,11 +123,11 @@
name = "Circuit board (Turbine Control)"
build_path = "/obj/machinery/computer/turbine_computer"
/obj/item/weapon/circuitboard/solar_control
name = "Circuit board (Solar Control)"
name = "Circuit board (Solar Control)"
build_path = "/obj/machinery/power/solar_control"
origin_tech = "programming=2;powerstorage=2"
/obj/item/weapon/circuitboard/powermonitor
name = "Circuit board (Power Monitor)"
name = "Circuit board (Power Monitor)"
build_path = "/obj/machinery/power/monitor"
/obj/item/weapon/circuitboard/olddoor
name = "Circuit board (DoorMex)"
@@ -147,6 +147,9 @@
/obj/item/weapon/circuitboard/mecha_control
name = "Circuit Board (Exosuit Control Console)"
build_path = "/obj/machinery/computer/mecha"
/obj/item/weapon/circuitboard/pod_locater
name = "Circuit Board (Pod Location Console)"
build_path = "/obj/machinery/computer/podtracker"
/obj/item/weapon/circuitboard/rdservercontrol
name = "Circuit Board (RD Server Control)"
build_path = "/obj/machinery/computer/rdservercontrol"
@@ -203,7 +206,7 @@
name = "Circuit board (Research Shuttle)"
build_path = "/obj/machinery/computer/shuttle_control/research"
origin_tech = "programming=2"
/obj/item/weapon/circuitboard/HolodeckControl
/obj/item/weapon/circuitboard/HolodeckControl
name = "Circuit board (Holodeck Control)"
build_path = "/obj/machinery/computer/HolodeckControl"
origin_tech = "programming=4"
@@ -0,0 +1,44 @@
/obj/machinery/computer/podtracker
name = "Pod Tracking Console"
icon = 'icons/obj/computer.dmi'
icon_state = "podtracking"
req_access = list(access_robotics)
circuit = "/obj/item/weapon/circuitboard/pod_locater"
/obj/machinery/computer/podtracker/attack_ai(var/mob/user as mob)
return src.attack_hand(user)
/obj/machinery/computer/podtracker/attack_paw(var/mob/user as mob)
return src.attack_hand(user)
/obj/machinery/computer/podtracker/attack_hand(var/mob/user as mob)
if(..())
return
user.set_machine(src)
var/dat = "<html><head><title>[src.name]</title><style>h3 {margin: 0px; padding: 0px;}</style></head><body>"
dat += "<h3>Pod beacons data</h3>"
for(var/obj/item/device/spacepod_equipment/misc/tracker/TR in world)
var/obj/spacepod/myPod = TR.my_atom
var/enabled = TR.enabled
if(myPod && enabled)
dat += {"<hr>[capitalize(myPod.name)]</br>
<b>&nbsp;Pod SPS X:</b> [myPod.x]</br>
<b>&nbsp;Pod SPS Y:</b> [myPod.y]</br>
<b>&nbsp;Pod SPS Z:</b> [myPod.z]</br>"}
if(myPod.occupant)
dat += {"<b>&nbsp;Pod Pilot:</b> [myPod.occupant.name]</br>"}
if(myPod.occupant2)
dat += {"<b>&nbsp;Pod Passenger:</b> [myPod.occupant2.name]</br>"}
dat += "<A href='?src=\ref[src];refresh=1'>(Refresh)</A><BR>"
dat += "</body></html>"
user << browse(dat, "window=computer;size=400x500")
onclose(user, "computer")
return
/obj/machinery/computer/podtracker/Topic(href, href_list)
if(..())
return
src.updateUsrDialog()
return
+25
View File
@@ -49,6 +49,7 @@
/datum/spacepod/equipment
var/obj/spacepod/my_atom
var/obj/item/device/spacepod_equipment/weaponry/weapon_system // weapons system
var/obj/item/device/spacepod_equipment/misc/misc_system // misc system
//var/obj/item/device/spacepod_equipment/engine/engine_system // engine system
//var/obj/item/device/spacepod_equipment/shield/shield_system // shielding system
@@ -100,3 +101,27 @@
fire_sound = 'sound/weapons/Laser.ogg'
fire_delay = 30
//base item for spacepod misc equipment (tracker)
/obj/item/device/spacepod_equipment/misc
name = "pod misc"
desc = "You shouldn't be seeing this"
icon = 'icons/pods/ship.dmi'
icon_state = "blank"
var/enabled
/obj/item/device/spacepod_equipment/misc/tracker
name = "\improper spacepod tracking system"
desc = "A tracking device for spacepods."
icon_state = "pod_locator"
enabled = 0
/obj/item/device/spacepod_equipment/misc/tracker/attackby(obj/item/I as obj, mob/user as mob, params)
if(isscrewdriver(I))
if(enabled)
enabled = 0
user.show_message("<span class='notice'>You disable \the [src]'s power.")
return
enabled = 1
user.show_message("<span class='notice'>You enable \the [src]'s power.</span>")
else
..()
+28
View File
@@ -233,6 +233,19 @@
equipment_system.weapon_system = W
equipment_system.weapon_system.my_atom = src
return
if(istype(W, /obj/item/device/spacepod_equipment/misc))
if(equipment_system.misc_system)
user << "<span class='notice'>The pod already has a miscellaneous system, remove it first.</span>"
return
else
user << "<span class='notice'>You insert \the [W] into the equipment system.</span>"
user.drop_item(W)
W.loc = equipment_system
equipment_system.misc_system = W
equipment_system.misc_system.my_atom = src
return
if(istype(W, /obj/item/weapon/weldingtool))
if(!hatch_open)
user << "\red You must open the maintenance hatch before attempting repairs."
@@ -265,6 +278,8 @@
possible.Add("Energy Cell")
if(equipment_system.weapon_system)
possible.Add("Weapon System")
if(equipment_system.misc_system)
possible.Add("Misc. System")
/* Not yet implemented
if(equipment_system.engine_system)
possible.Add("Engine System")
@@ -285,6 +300,14 @@
equipment_system.weapon_system = null
else
user << "<span class='warning'>You need an open hand to do that.</span>"
if("Misc. System")
SPE = equipment_system.misc_system
if(user.put_in_any_hand_if_possible(SPE))
user << "<span class='notice'>You remove \the [SPE] from the equipment system.</span>"
SPE.my_atom = null
equipment_system.misc_system = null
else
user << "<span class='warning'>You need an open hand to do that.</span>"
/*
if("engine system")
SPE = equipment_system.engine_system
@@ -323,6 +346,11 @@
T.loc = equipment_system
equipment_system.weapon_system = T
equipment_system.weapon_system.my_atom = src
var/obj/item/device/spacepod_equipment/misc/tracker/L = new /obj/item/device/spacepod_equipment/misc/tracker
L.loc = equipment_system
equipment_system.misc_system = L
equipment_system.misc_system.my_atom = src
equipment_system.misc_system.enabled = 1
return
/obj/spacepod/random/New()
@@ -11,7 +11,7 @@
materials = list("$glass" = 1000, "sacid" = 20)
build_path = /obj/item/weapon/circuitboard/aicore
category = list("Computer Boards")
/datum/design/aifixer
name = "Console Board (AI Integrity Restorer)"
desc = "Allows for the construction of circuit boards used to build an AI Integrity Restorer."
@@ -31,7 +31,7 @@
materials = list("$glass" = 1000, "sacid" = 20)
build_path = /obj/item/weapon/circuitboard/aiupload
category = list("Computer Boards")
/datum/design/atmosalerts
name = "Console Board (Atmospheric Alerts)"
desc = "Allows for the construction of circuit boards used to build an atmosphere alert console.."
@@ -41,7 +41,7 @@
materials = list("$glass" = 1000, "sacid" = 20)
build_path = /obj/item/weapon/circuitboard/atmos_alert
category = list("Computer Boards")
/datum/design/air_management
name = "Console Board (Atmospheric Monitor)"
desc = "Allows for the construction of circuit boards used to build an Atmospheric Monitor."
@@ -51,7 +51,7 @@
materials = list("$glass" = 1000, "sacid" = 20)
build_path = /obj/item/weapon/circuitboard/air_management
category = list("Computer Boards")
/datum/design/seccamera
name = "Console Board (Camera Monitor)"
desc = "Allows for the construction of circuit boards used to build camera monitors."
@@ -61,7 +61,7 @@
materials = list("$glass" = 1000, "sacid" = 20)
build_path = /obj/item/weapon/circuitboard/camera
category = list("Computer Boards")
/datum/design/clonecontrol
name = "Console Board (Cloning Machine Console)"
desc = "Allows for the construction of circuit boards used to build a new Cloning Machine console."
@@ -70,8 +70,8 @@
build_type = IMPRINTER
materials = list("$glass" = 1000, "sacid" = 20)
build_path = /obj/item/weapon/circuitboard/cloning
category = list("Computer Boards")
category = list("Computer Boards")
/datum/design/comconsole
name = "Console Board (Communications Console)"
desc = "Allows for the construction of circuit boards used to build a communications console."
@@ -81,7 +81,7 @@
materials = list("$glass" = 1000, "sacid" = 20)
build_path = /obj/item/weapon/circuitboard/communications
category = list("Computer Boards")
/datum/design/crewconsole
name = "Console Board (Crew Monitoring Computer)"
desc = "Allows for the construction of circuit boards used to build a Crew monitoring computer."
@@ -101,7 +101,7 @@
materials = list("$glass" = 1000, "sacid" = 20)
build_path = /obj/item/weapon/circuitboard/borgupload
category = list("Computer Boards")
/datum/design/scan_console
name = "Console Board (DNA Machine)"
desc = "Allows for the construction of circuit boards used to build a new DNA scanning console."
@@ -111,7 +111,7 @@
materials = list("$glass" = 1000, "sacid" = 20)
build_path = /obj/item/weapon/circuitboard/scan_consolenew
category = list("Computer Boards")
/datum/design/dronecontrol
name = "Console Board (Drone Control Console)"
desc = "Allows for the construction of circuit boards used to build a Drone Control console."
@@ -121,7 +121,7 @@
materials = list("$glass" = 1000, "sacid" = 20)
build_path = /obj/item/weapon/circuitboard/drone_control
category = list("Computer Boards")
/datum/design/mechacontrol
name = "Console Board (Exosuit Control Console)"
desc = "Allows for the construction of circuit boards used to build an exosuit control console."
@@ -131,7 +131,7 @@
materials = list("$glass" = 1000, "sacid" = 20)
build_path = /obj/item/weapon/circuitboard/mecha_control
category = list("Computer Boards")
/datum/design/idcardconsole
name = "Console Board (ID Computer)"
desc = "Allows for the construction of circuit boards used to build an ID computer."
@@ -150,8 +150,8 @@
build_type = IMPRINTER
materials = list("$glass" = 1000, "sacid" = 20)
build_path = /obj/item/weapon/circuitboard/mech_bay_power_console
category = list("Computer Boards")
category = list("Computer Boards")
/datum/design/med_data
name = "Console Board (Medical Records)"
desc = "Allows for the construction of circuit boards used to build a medical records console."
@@ -161,7 +161,7 @@
materials = list("$glass" = 1000, "sacid" = 20)
build_path = /obj/item/weapon/circuitboard/med_data
category = list("Computer Boards")
/datum/design/message_monitor
name = "Console Board (Messaging Monitor Console)"
desc = "Allows for the construction of circuit boards used to build a messaging monitor console."
@@ -191,7 +191,7 @@
materials = list("$glass" = 1000, "sacid" = 20)
build_path = /obj/item/weapon/circuitboard/pandemic
category = list("Computer Boards")
/datum/design/powermonitor
name = "Console Board (Power Monitor)"
desc = "Allows for the construction of circuit boards used to build a new power monitor"
@@ -201,7 +201,7 @@
materials = list("$glass" = 1000, "sacid" = 20)
build_path = /obj/item/weapon/circuitboard/powermonitor
category = list("Computer Boards")
/datum/design/prisonmanage
name = "Console Board (Prisoner Management Console)"
desc = "Allows for the construction of circuit boards used to build a prisoner management console."
@@ -211,7 +211,7 @@
materials = list("$glass" = 1000, "sacid" = 20)
build_path = /obj/item/weapon/circuitboard/prisoner
category = list("Computer Boards")
/datum/design/rdconsole
name = "Console Board (R&D Console)"
desc = "Allows for the construction of circuit boards used to build a new R&D console."
@@ -221,7 +221,7 @@
materials = list("$glass" = 1000, "sacid" = 20)
build_path = /obj/item/weapon/circuitboard/rdconsole
category = list("Computer Boards")
/datum/design/rdservercontrol
name = "Console Board (R&D Server Control Console)"
desc = "The circuit board for a R&D Server Control Console"
@@ -241,7 +241,7 @@
materials = list("$glass" = 1000, "sacid" = 20)
build_path = /obj/item/weapon/circuitboard/robotics
category = list("Computer Boards")
/datum/design/secdata
name = "Console Board (Security Records Console)"
desc = "Allows for the construction of circuit boards used to build a security records console."
@@ -251,7 +251,7 @@
materials = list("$glass" = 1000, "sacid" = 20)
build_path = /obj/item/weapon/circuitboard/secure_data
category = list("Computer Boards")
/datum/design/solarcontrol
name = "Console Board (Solar Control)"
desc = "Allows for the construction of circuit boards used to build a solar control console"
@@ -261,7 +261,17 @@
materials = list("$glass" = 1000, "sacid" = 20)
build_path = /obj/item/weapon/circuitboard/solar_control
category = list("Computer Boards")
/datum/design/spacepodlocator
name = "Console Board (Spacepod Locator)"
desc = "Allows for the construction of circuit boards used to build a space-pod locating console"
id = "spacepodc"
req_tech = list("programming" = 2)
build_type = IMPRINTER
materials = list("$glass" = 1000, "sacid" = 20)
build_path = /obj/item/weapon/circuitboard/pod_locater
category = list("Computer Boards")
/datum/design/ordercomp
name = "Console Board (Supply Ordering Console)"
desc = "Allows for the construction of circuit boards used to build a supply ordering console."
@@ -271,7 +281,7 @@
materials = list("$glass" = 1000, "sacid" = 20)
build_path = /obj/item/weapon/circuitboard/ordercomp
category = list("Computer Boards")
/datum/design/supplycomp
name = "Console Board (Supply Shuttle Console)"
desc = "Allows for the construction of circuit boards used to build a supply shuttle console."
@@ -281,7 +291,7 @@
materials = list("$glass" = 1000, "sacid" = 20)
build_path = /obj/item/weapon/circuitboard/supplycomp
category = list("Computer Boards")
/datum/design/comm_monitor
name = "Console Board (Telecommunications Monitoring Console)"
desc = "Allows for the construction of circuit boards used to build a telecommunications monitor."
@@ -291,7 +301,7 @@
materials = list("$glass" = 1000, "sacid" = 20)
build_path = /obj/item/weapon/circuitboard/comm_monitor
category = list("Computer Boards")
/datum/design/comm_server
name = "Console Board (Telecommunications Server Monitoring Console)"
desc = "Allows for the construction of circuit boards used to build a telecommunication server browser and monitor."
@@ -301,7 +311,7 @@
materials = list("$glass" = 1000, "sacid" = 20)
build_path = /obj/item/weapon/circuitboard/comm_server
category = list("Computer Boards")
/datum/design/comm_traffic
name = "Console Board (Telecommunications Traffic Control Console)"
desc = "Allows for the construction of circuit boards used to build a telecommunications traffic control console."
@@ -123,4 +123,18 @@
build_path = /obj/item/device/spacepod_equipment/weaponry/laser
category = list("Pod_Weaponry")
materials = list("$metal"=10000,"$glass"=5000,"$gold"=1000,"$silver"=2000)
locked = 1
locked = 1
//////////////////////////////////////////
//////SPACEPOD MISC. ITEMS////////////////
//////////////////////////////////////////
/datum/design/pod_misc_tracker
construction_time = 100
name = "Spacepod Tracking Module"
desc = "Allows for the construction of a Space Pod Tracking Module."
id = "podmisc_tracker"
req_tech = list("materials" = 2) //Materials 2: easy to get, no trackers with 0 science progress
build_type = PODFAB
materials = list("$metal"=5000)
build_path = /obj/item/device/spacepod_equipment/misc/tracker
category = list("Pod_Parts")
Binary file not shown.

Before

Width:  |  Height:  |  Size: 77 KiB

After

Width:  |  Height:  |  Size: 78 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 546 B

After

Width:  |  Height:  |  Size: 763 B

+1 -1
View File
@@ -5934,7 +5934,7 @@
"ckf" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor/plating,/area/engine/mechanic_workshop)
"ckg" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/engine/mechanic_workshop)
"ckh" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1; initialize_directions = 11; level = 1},/turf/simulated/floor,/area/engine/mechanic_workshop)
"cki" = (/obj/machinery/light{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/engine/mechanic_workshop)
"cki" = (/obj/machinery/light{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/computer/podtracker,/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/engine/mechanic_workshop)
"ckj" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor{dir = 4; icon_state = "yellowcorner"},/area/hallway/primary/aft)
"ckk" = (/obj/machinery/light{dir = 1},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor{dir = 4; icon_state = "yellowcorner"},/area/hallway/primary/aft)
"ckl" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor{dir = 4; icon_state = "yellowcorner"},/area/hallway/primary/aft)
+1
View File
@@ -443,6 +443,7 @@
#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\pod_tracking_console.dm"
#include "code\game\machinery\computer\power.dm"
#include "code\game\machinery\computer\prisoner.dm"
#include "code\game\machinery\computer\prisonshuttle.dm"