Skip to content

Commit

Permalink
be
Browse files Browse the repository at this point in the history
  • Loading branch information
simb11 committed Aug 31, 2024
1 parent dce0d9f commit eecf5e5
Show file tree
Hide file tree
Showing 3 changed files with 46 additions and 18 deletions.
7 changes: 7 additions & 0 deletions code/datums/uplinks_items.dm
Original file line number Diff line number Diff line change
Expand Up @@ -751,6 +751,13 @@
/datum/uplink_item/device_tools
category = "Devices and Tools"

/datum/uplink_item/device_tools/pinpointer
name = "Advanced Pinpointer"
desc = "A modified pinpointer for searching for items that your employers are interested in."
item = /obj/item/weapon/pinpointer/highriskitems
cost = 10
uplink_types = list("traitor")

/datum/uplink_item/device_tools/disk
name = "Diskette With Virus"
desc = "A floppy disk containing a virus to sabotage R&D systems. Insert this diskette into the R&D Server Controller to destroy scientific data."
Expand Down
36 changes: 35 additions & 1 deletion code/game/gamemodes/modes_gameplays/nuclear/pinpointer.dm
Original file line number Diff line number Diff line change
Expand Up @@ -160,7 +160,7 @@
mode = SEARCH_FOR_OBJECT
for (var/obj/machinery/nuclearbomb/N in poi_list)
if(N.nuketype == "Syndi")
target = locate(N)
target = N
to_chat(usr, "<span class='notice'>Nuclear Warhead Locator active.</span>")

playsound(src, 'sound/machines/twobeep.ogg', VOL_EFFECTS_MASTER)
Expand Down Expand Up @@ -245,5 +245,39 @@

return attack_self(usr)

/obj/item/weapon/pinpointer/highriskitems
desc = "A pinpointer designed and configured to search for specific items using a network of quantum signals."
origin_tech = "programming=5;bluespace=5"

/obj/item/weapon/pinpointer/highriskitems/verb/toggle_mode()
set category = "Object"
set name = "Toggle Pinpointer Target"
set src in view(1)
reset_target()

var/datum/objective/steal/itemlist
itemlist = itemlist // To supress a 'variable defined but not used' error.
var/targetitem = input("Select item to search for.", "Item Mode Select","") as null|anything in itemlist.possible_items
if(!targetitem)
return
var/obj/item/item_path = itemlist.possible_items[targetitem]
for(var/obj/item/I in global.possible_items_for_steal)
if(!istype(I, item_path))
continue
var/turf/T = get_turf(I)
if(is_centcom_level(T.z))
continue
target = I
break
if(!target)
to_chat(usr, "Failed to locate [targetitem]!")
return
to_chat(usr, "You set the pinpointer to locate [targetitem]")

if(mode && target)
RegisterSignal(target, list(COMSIG_PARENT_QDELETING), PROC_REF(reset_target))

return attack_self(usr)

#undef SEARCH_FOR_DISK
#undef SEARCH_FOR_OBJECT
21 changes: 4 additions & 17 deletions code/game/gamemodes/objectives/steal.dm
Original file line number Diff line number Diff line change
Expand Up @@ -4,27 +4,14 @@ var/global/list/possible_items_for_steal = list()
ADD_TO_POIFS_LIST(/obj/item/weapon/gun/energy/laser/selfcharging/captain)
ADD_TO_POIFS_LIST(/obj/item/weapon/hand_tele)
ADD_TO_POIFS_LIST(/obj/item/weapon/tank/jetpack/oxygen)
ADD_TO_POIFS_LIST(/obj/item/clothing/under/rank/captain)
ADD_TO_POIFS_LIST(/obj/item/device/aicard)
ADD_TO_POIFS_LIST(/obj/item/blueprints)
ADD_TO_POIFS_LIST(/obj/item/weapon/tank)
ADD_TO_POIFS_LIST(/obj/item/slime_extract)
ADD_TO_POIFS_LIST(/obj/item/clothing/glasses/hud/hos_aug)
ADD_TO_POIFS_LIST(/obj/item/weapon/reagent_containers/food/snacks/meat/corgi/ian)
ADD_TO_POIFS_LIST(/obj/item/clothing/under/rank/research_director)
ADD_TO_POIFS_LIST(/obj/item/clothing/under/rank/chief_engineer)
ADD_TO_POIFS_LIST(/obj/item/clothing/under/rank/chief_medical_officer)
ADD_TO_POIFS_LIST(/obj/item/clothing/under/rank/head_of_security)
ADD_TO_POIFS_LIST(/obj/item/clothing/under/rank/head_of_personnel)
ADD_TO_POIFS_LIST(/obj/item/weapon/reagent_containers/hypospray/cmo)
ADD_TO_POIFS_LIST(/obj/item/weapon/pinpointer)
ADD_TO_POIFS_LIST(/obj/item/weapon/pinpointer/advpinpointer)
ADD_TO_POIFS_LIST(/obj/item/clothing/suit/armor/vest/reactive)
ADD_TO_POIFS_LIST(/obj/item/weapon/reagent_containers/spray/extinguisher/golden)
ADD_TO_POIFS_LIST(/obj/item/weapon/gun/energy/gun/nuclear)
ADD_TO_POIFS_LIST(/obj/item/weapon/pickaxe/drill/diamond_drill)
ADD_TO_POIFS_LIST(/obj/item/weapon/storage/backpack/holding)
ADD_TO_POIFS_LIST(/obj/item/weapon/stock_parts/cell/hyper)
ADD_TO_POIFS_LIST(/obj/item/stack/sheet/mineral/diamond)
ADD_TO_POIFS_LIST(/obj/item/stack/sheet/mineral/gold)
ADD_TO_POIFS_LIST(/obj/item/stack/sheet/mineral/uranium)
#undef ADD_TO_POIFS_LIST

/datum/objective/steal
Expand All @@ -41,7 +28,7 @@ ADD_TO_POIFS_LIST(/obj/item/stack/sheet/mineral/uranium)
"a piece of Ian's meat" = /obj/item/weapon/reagent_containers/food/snacks/meat/corgi/ian,
"the hypospray" = /obj/item/weapon/reagent_containers/hypospray/cmo,
"a Research Director's teleport armor" = /obj/item/clothing/suit/armor/vest/reactive,
"the captain's pinpointer" = /obj/item/weapon/pinpointer,
"the captain's pinpointer" = /obj/item/weapon/pinpointer/advpinpointer,
"the golden fire extinguisher" = /obj/item/weapon/reagent_containers/spray/extinguisher/golden,
)

Expand Down

0 comments on commit eecf5e5

Please sign in to comment.