From 4f601a94b865817e9245243b718a2d34f3cc4d99 Mon Sep 17 00:00:00 2001 From: Atermonera Date: Mon, 1 Jul 2019 16:46:52 -0800 Subject: [PATCH 1/2] Merge pull request #6248 from Heroman3003/gpsing Adds more GPS variety --- code/game/objects/items/devices/gps.dm | 37 ++++++++++--- code/modules/research/designs/misc.dm | 65 +++++++++++++++++++---- icons/obj/gps.dmi | Bin 1249 -> 1502 bytes maps/southern_cross/southern_cross-3.dmm | 2 +- 4 files changed, 84 insertions(+), 20 deletions(-) diff --git a/code/game/objects/items/devices/gps.dm b/code/game/objects/items/devices/gps.dm index 839dc7a2dc..830fa803e4 100644 --- a/code/game/objects/items/devices/gps.dm +++ b/code/game/objects/items/devices/gps.dm @@ -4,12 +4,12 @@ var/list/GPS_list = list() name = "global positioning system" desc = "Triangulates the approximate co-ordinates using a nearby satellite network. Alt+click to toggle power." icon = 'icons/obj/gps.dmi' - icon_state = "gps-c" + icon_state = "gps-gen" w_class = ITEMSIZE_TINY slot_flags = SLOT_BELT origin_tech = list(TECH_MATERIAL = 2, TECH_BLUESPACE = 2, TECH_MAGNET = 1) matter = list(DEFAULT_WALL_MATERIAL = 500) - var/gps_tag = "COM0" + var/gps_tag = "GEN0" var/emped = FALSE var/tracking = FALSE // Will not show other signals or emit its own signal if false. var/long_range = FALSE // If true, can see farther, depending on get_map_levels(). @@ -171,22 +171,43 @@ var/list/GPS_list = list() /obj/item/device/gps/on // Defaults to off to avoid polluting the signal list with a bunch of GPSes without owners. If you need to spawn active ones, use these. tracking = TRUE +/obj/item/device/gps/command + icon_state = "gps-com" + gps_tag = "COM0" + +/obj/item/device/gps/command/on + tracking = TRUE + +/obj/item/device/gps/security + icon_state = "gps-sec" + gps_tag = "SEC0" + +/obj/item/device/gps/security/on + tracking = TRUE + +/obj/item/device/gps/medical + icon_state = "gps-med" + gps_tag = "MED0" + +/obj/item/device/gps/medical/on + tracking = TRUE + /obj/item/device/gps/science - icon_state = "gps-s" + icon_state = "gps-sci" gps_tag = "SCI0" /obj/item/device/gps/science/on tracking = TRUE /obj/item/device/gps/engineering - icon_state = "gps-e" + icon_state = "gps-eng" gps_tag = "ENG0" /obj/item/device/gps/engineering/on tracking = TRUE /obj/item/device/gps/mining - icon_state = "gps-m" + icon_state = "gps-mine" gps_tag = "MINE0" desc = "A positioning system helpful for rescuing trapped or injured miners, keeping one on you at all times while mining might just save your life. Alt+click to toggle power." @@ -194,15 +215,15 @@ var/list/GPS_list = list() tracking = TRUE /obj/item/device/gps/explorer - icon_state = "gps-ex" - gps_tag = "EX0" + icon_state = "gps-exp" + gps_tag = "EXP0" desc = "A positioning system helpful for rescuing trapped or injured explorers, keeping one on you at all times while exploring might just save your life. Alt+click to toggle power." /obj/item/device/gps/explorer/on tracking = TRUE /obj/item/device/gps/robot - icon_state = "gps-b" + icon_state = "gps-borg" gps_tag = "SYNTH0" desc = "A synthetic internal positioning system. Used as a recovery beacon for damaged synthetic assets, or a collaboration tool for mining or exploration teams. \ Alt+click to toggle power." diff --git a/code/modules/research/designs/misc.dm b/code/modules/research/designs/misc.dm index fc3411319b..f14b73d2e6 100644 --- a/code/modules/research/designs/misc.dm +++ b/code/modules/research/designs/misc.dm @@ -85,22 +85,65 @@ datum/design/item/laserpointer build_path = /obj/item/device/communicator sort_string = "VABAJ" +/datum/design/item/gps + req_tech = list(TECH_MATERIAL = 2, TECH_DATA = 2, TECH_BLUESPACE = 2) + materials = list(DEFAULT_WALL_MATERIAL = 500) + +/datum/design/item/gps/generic + name = "Triangulating device design (GEN)" + id = "gps_gen" + build_path = /obj/item/device/gps + sort_string = "VADAA" + +/datum/design/item/gps/comand + name = "Triangulating device design (COM)" + id = "gps_com" + build_path = /obj/item/device/gps/command + sort_string = "VADAB" + +/datum/design/item/gps/security + name = "Triangulating device design (SEC)" + id = "gps_sec" + build_path = /obj/item/device/gps/security + sort_string = "VADAC" + +/datum/design/item/gps/medical + name = "Triangulating device design (MED)" + id = "gps_med" + build_path = /obj/item/device/gps/medical + sort_string = "VADAD" + +/datum/design/item/gps/engineering + name = "Triangulating device design (ENG)" + id = "gps_eng" + build_path = /obj/item/device/gps/engineering + sort_string = "VADAE" + +/datum/design/item/gps/science + name = "Triangulating device design (SCI)" + id = "gps_sci" + build_path = /obj/item/device/gps/science + sort_string = "VADAF" + +/datum/design/item/gps/mining + name = "Triangulating device design (MINE)" + id = "gps_mine" + build_path = /obj/item/device/gps/mining + sort_string = "VADAG" + +/datum/design/item/gps/explorer + name = "Triangulating device design (EXP)" + id = "gps_exp" + build_path = /obj/item/device/gps/explorer + sort_string = "VADAH" + /datum/design/item/beacon name = "Bluespace tracking beacon design" id = "beacon" req_tech = list(TECH_BLUESPACE = 1) materials = list (DEFAULT_WALL_MATERIAL = 20, "glass" = 10) build_path = /obj/item/device/radio/beacon - sort_string = "VADAA" - -/datum/design/item/gps - name = "Triangulating device design" - desc = "Triangulates approximate co-ordinates using a nearby satellite network." - id = "gps" - req_tech = list(TECH_MATERIAL = 2, TECH_DATA = 2, TECH_BLUESPACE = 2) - materials = list(DEFAULT_WALL_MATERIAL = 500) - build_path = /obj/item/device/gps - sort_string = "VADAB" + sort_string = "VADBA" /datum/design/item/beacon_locator name = "Beacon tracking pinpointer" @@ -109,7 +152,7 @@ datum/design/item/laserpointer req_tech = list(TECH_MAGNET = 3, TECH_ENGINEERING = 2, TECH_BLUESPACE = 3) materials = list(DEFAULT_WALL_MATERIAL = 1000,"glass" = 500) build_path = /obj/item/device/beacon_locator - sort_string = "VADAC" + sort_string = "VADBB" /datum/design/item/bag_holding name = "'Bag of Holding', an infinite capacity bag prototype" diff --git a/icons/obj/gps.dmi b/icons/obj/gps.dmi index 4cf9ff8f72fd3104bfa64c429b02a421b5d0d6c6..17c25ac15e60b972211ca5cbcbb4ec121b7c3c52 100644 GIT binary patch literal 1502 zcmV<41tI#0P))b+3U~ z{@c&rnKS>$msYZGEMSSgh&w&b&d$KK!>)o#Cm9aehc*BJ|4>j+a4wiGeV88~A2l^K z*ElD@k44nf)U_TC>LnVKl$1(JN_15xzW^OtMKJ%60961DZ&f^E0|P25DrrSWz`(#< zsMS~i0004WQchCV=-0C=2@Qo#;_FbqAjuUO!! zMvlVbj}f11e-ejmCQ9z=E3*66XAaS7}M&S*S=n2{lcxLJ|*D zL-R!iG{I+2;+5Laob9M;{O?^FeJ9)m_mN~jzd zCAzgaBc2uM^pr2P7P?Zvewrl!00bIIL_t(|ob8+mbK*D@gh?RxhGQAb<=shSj`7%I zhRpx}Z~JtZWoz8h6h@P<)gKY0(&f;N-cwY9N~c2zA>@2qU0s=hxW2wNfLVF z3`p;$X9nW-?$!)={e902s6X_~fcj(448+qPPiDaDYk+=RbK>=F^`{!3KldHr7d#IJ zcXxM#!2kq!9uDvC?}x)7x_&fz`14^j8XaVF8r=gU5sn7Bdi?rr6JKH}Qh;5S9|GiAgF&@F1lXe>r)T{`fPP~S zNCR88S*#u?3R#5;PZJli3L(ABa%V7aGFWD6zuIb6dle@^yH!XG_BXj^({D1k)BfKy zIsxc`c1VfX^LJcA9(||%+X;{aO$OEW?T3=v+cwf)VlimX-*Eu1E~T@{cO?WDp_ZhDYho0ja7~N?^j!%xE<$=QvA0Cqj<(*6x{q4G z?P$$e+@2qm)qGTkAwK#mOb8)_5JCtcgkb!~*PTw1CLz7@>Ao|MbLbuY{Qfr>{CcJF z8mIyW+v#QodK;RV!zJifwF!&A)A%qY@2qA-LwHvj)VAtVz205?v^xkcyO;s5{u07*qoM6N<$ Ef`iVcivR!s literal 1249 zcmV<71Rnc|P)005u}0{{R3yb+fl0001lP)t-sz`(#5 zA}>uVIYKHECm9YA7$N{tg*+!O%rpNi91VhEIB+hQE`69s87qpS!`si_nKS>$msYZG zEWnRNV2QrKwZpE0N_15x*@rd&0RK=>P#+&3H8nNYI49K9)U_TC>LnVKl$1(JO1}Ud zT17DbkN{Nx4R2LEVgmzeYHBJfDrrSW@V)LR00001bW%=J06^y0W&i*HxO!ArbVOxy zV{&P5bZKvH004NLQ&wlQ zvLxc1UzwMZN!WEsMfusOc?6ZE<`!UAV*(US%}J~T3G09%LQ{EuQFdltIu65)Fm$3r zgh`osC8+5SX5dD7N z3`CY?W*nRM2E&0Fh@0CRGZ1&*?#zG!qs$DLk25o%UkmbUL4GZ0`z=T2_mjzRIGju- zK=6J#z5RYWolb$^-E5ZU`D``=g4ujN8ja@jIS^3!cs$1WU=kKoenCOy7Zg<64+`o$ zBDm;l7Eo|$@+A~pnS2EW3zHX6Fq|vFzBvH;P|)R2(B)9jJlii&2fosj!SHF zT;gD^1$CYW1Z|E5ZH@(Pjs=7HTZtEu5-&TJxQLV(L`bQwdiZ0p zmO`45$WU&C6lQo0#k!P_O7KyZX$HC-NmO1#A+(?wX^JeR7Bs_K^b~5S(ax_C~s7pW53D?R6fJ4C=Y_A*aCsXW2W@73y}?!CDZ z)P5qRp!Tbv;Lep8Ht~tkZEQ;HZDRddx3i==osn{Hfu}Pq=kkPt!$ zA%qY@2qA