diff --git a/code/game/objects/items/theft_tools.dm b/code/game/objects/items/theft_tools.dm
index b99be7e988..d52c280f1b 100644
--- a/code/game/objects/items/theft_tools.dm
+++ b/code/game/objects/items/theft_tools.dm
@@ -49,6 +49,10 @@
lefthand_file = 'icons/mob/inhands/misc/sheets_lefthand.dmi'
righthand_file = 'icons/mob/inhands/misc/sheets_righthand.dmi'
var/obj/item/nuke_core/core
+ var/nt =FALSE //For the lid
+
+/obj/item/nuke_core_container/nt
+ nt = TRUE
/obj/item/nuke_core_container/Destroy()
QDEL_NULL(core)
@@ -67,10 +71,13 @@
/obj/item/nuke_core_container/proc/seal()
if(istype(core))
STOP_PROCESSING(SSobj, core)
- icon_state = "core_container_sealed"
playsound(src, 'sound/items/deconstruct.ogg', 60, 1)
if(ismob(loc))
to_chat(loc, "[src] is permanently sealed, [core]'s radiation is contained.")
+ if(nt != TRUE)
+ icon_state = "core_container_sealed"
+ else
+ icon_state = "core_container_sealed_nt"
/obj/item/nuke_core_container/attackby(obj/item/nuke_core/core, mob/user)
if(istype(core))
@@ -92,6 +99,11 @@
toolspeed = 0.5
random_color = FALSE
+/obj/item/screwdriver/nuke/nt
+ desc = "A screwdriver with an ultra thin diamon tip."
+ toolspeed = 0.25
+ icon_state = "screwdriver_nt"
+
/obj/item/paper/guides/antag/nuke_instructions
info = "How to break into a Nanotrasen self-destruct terminal and remove its plutonium core:
\
\
@@ -103,6 +115,18 @@
- ???
\
"
+/obj/item/paper/guides/nt/nuke_instructions
+ info = "How to remove its plutonium core:
\
+ \
+ - Use a screwdriver with a very thin tip (provided) to unscrew the terminal's front panel
\
+ - Dislodge and remove the front panel with a crowbar
\
+ - Cut the inner metal plate with a welding tool
\
+ - Pry off the inner plate with a crowbar to expose the radioactive core
\
+ - Use the core container to remove the plutonium core; the container will take some time to seal
\
+ - Send core back to CC
\
+
"
+
+
// STEALING SUPERMATTER
/obj/item/paper/guides/antag/supermatter_sliver
diff --git a/code/modules/cargo/packs.dm b/code/modules/cargo/packs.dm
index 89c463f3e3..6e99b2fd2e 100644
--- a/code/modules/cargo/packs.dm
+++ b/code/modules/cargo/packs.dm
@@ -1,20 +1,20 @@
/datum/supply_pack
var/name = "Crate"
var/group = ""
- var/hidden = FALSE
- var/contraband = FALSE
+ var/hidden = FALSE //Aka emag only
+ var/contraband = FALSE //Hacking the console with a multy tool
var/cost = 700 // Minimum cost, or infinite points are possible.
- var/access = FALSE
- var/access_any = FALSE
- var/list/contains = null
- var/crate_name = "crate"
+ var/access = FALSE //What access does the Crate itself need?
+ var/access_any = FALSE //Do we care about access?
+ var/list/contains = null //What items are in the crate
+ var/crate_name = "crate" //The crate that comes with each order
var/desc = ""//no desc by default
- var/crate_type = /obj/structure/closet/crate
+ var/crate_type = /obj/structure/closet/crate //what kind of crate - Locked crates needed for access locked crates
var/dangerous = FALSE // Should we message admins?
var/special = FALSE //Event/Station Goals/Admin enabled packs
var/special_enabled = FALSE
- var/DropPodOnly = FALSE//only usable by the Bluespace Drop Pod via the express cargo console
- var/admin_spawned = FALSE
+ var/DropPodOnly = FALSE //only usable by the Bluespace Drop Pod via the express cargo console
+ var/admin_spawned = FALSE //Can only an admin spawn this crate?
/datum/supply_pack/proc/generate(atom/A)
var/obj/structure/closet/crate/C = new crate_type(A)
diff --git a/code/modules/cargo/packs/livestock.dm b/code/modules/cargo/packs/livestock.dm
index 6479869ee0..8708562a06 100644
--- a/code/modules/cargo/packs/livestock.dm
+++ b/code/modules/cargo/packs/livestock.dm
@@ -112,13 +112,6 @@
contains = list(/mob/living/simple_animal/hostile/retaliate/goose)
crate_name = "goose crate"
-/datum/supply_pack/critter/monkey
- name = "Monkey Cube Crate"
- desc = "Stop monkeying around! Contains seven monkey cubes. Just add water!"
- cost = 2000
- contains = list (/obj/item/storage/box/monkeycubes)
- crate_name = "monkey cube crate"
-
/datum/supply_pack/critter/pug
name = "Pug Crate"
desc = "Like a normal dog, but... squished. Comes with a nice collar!"
diff --git a/code/modules/cargo/packs/science.dm b/code/modules/cargo/packs/science.dm
index c4fbc0bfe5..f6250bb1f7 100644
--- a/code/modules/cargo/packs/science.dm
+++ b/code/modules/cargo/packs/science.dm
@@ -10,6 +10,46 @@
group = "Science"
crate_type = /obj/structure/closet/crate/science
+/* For later
+/datum/supply_pack/science/monkey
+ name = "Ape Cube Crate"
+ desc = "Pss what a new test subject with supper strangth, speed, and love for bananas all at the same time? Say no more... Contains a single ape cube. Dont add water!"
+ contraband = TRUE
+ cost = 2500
+ contains = list (/obj/item/reagent_containers/food/snacks/monkeycube/ape)
+ crate_name = "ape cube crate"
+*/
+
+/datum/supply_pack/science/aliens
+ name = "Advanced Alien Alloy Crate Crate"
+ desc = "Hello brothers from the stars!!! Are fellow brethren have made contact at long last and gave us gifts man! They really did build the prymi- Connection Error- Bro will send you a sheet of advanced alien alloy "
+ cost = 9000
+ contraband = TRUE
+ contains = list(/obj/item/stack/sheet/mineral/abductor)
+ crate_name = "alien bro alloy crate"
+
+/datum/supply_pack/science/beakers
+ name = "Chemistry Beackers Crate"
+ desc = "Glass ware for any chemistry! Contains four small beakers three large two plastic one metamaterial. As well as three droppers and two latex gloves"
+ cost = 1500
+ contains = list(/obj/item/reagent_containers/glass/beaker,
+ /obj/item/reagent_containers/glass/beaker,
+ /obj/item/reagent_containers/glass/beaker,
+ /obj/item/reagent_containers/glass/beaker,
+ /obj/item/reagent_containers/glass/beaker/large,
+ /obj/item/reagent_containers/glass/beaker/large,
+ /obj/item/reagent_containers/glass/beaker/large,
+ /obj/item/reagent_containers/glass/beaker/plastic,
+ /obj/item/reagent_containers/glass/beaker/plastic,
+ /obj/item/reagent_containers/glass/beaker/meta,
+ /obj/item/reagent_containers/glass/beaker/noreact,
+ /obj/item/reagent_containers/dropper,
+ /obj/item/reagent_containers/dropper,
+ /obj/item/reagent_containers/dropper,
+ /obj/item/clothing/gloves/color/latex,
+ /obj/item/clothing/gloves/color/latex)
+ crate_name = "chemistry beacker crate"
+
/datum/supply_pack/science/robotics/mecha_odysseus
name = "Circuit Crate (Odysseus)"
desc = "Ever wanted to build your own giant medical robot? Well, now you can! Contains the Odysseus main control board and Odysseus peripherals board. Requires Robotics access to open."
@@ -41,6 +81,33 @@
/obj/item/integrated_electronics/wirer)
crate_name = "circuitry starter pack crate"
+/datum/supply_pack/science/monkey
+ name = "Monkey Cube Crate"
+ desc = "Stop monkeying around! Contains seven monkey cubes. Just add water!"
+ cost = 2000
+ contains = list (/obj/item/storage/box/monkeycubes)
+ crate_name = "monkey cube crate"
+
+/datum/supply_pack/science/nitrilegloves
+ name = "Nitrile Gloves Crate"
+ desc = "Ever handling toxic chemicals? Well worry not to keep your flesh with some nitrile made gloves! Contains three pares of nitrile gloves."
+ cost = 1500
+ contains = list(/obj/item/clothing/gloves/color/latex/nitrile,
+ /obj/item/clothing/gloves/color/latex/nitrile,
+ /obj/item/clothing/gloves/color/latex/nitrile)
+ crate_name = "nitrile gloves crate"
+
+/datum/supply_pack/science/nuke_b_gone
+ name = "Nuke Defusal Kit"
+ desc = "Contains set of tools to defuse a nuke."
+ cost = 7500 //Usefull for traitors/nukies that fucked up
+ dangerous = TRUE
+ DropPodOnly = TRUE
+ contains = list(/obj/item/nuke_core_container/nt,
+ /obj/item/screwdriver/nuke/nt,
+ /obj/item/paper/guides/nt/nuke_instructions)
+ crate_name = "safe defusal kit storge"
+
/datum/supply_pack/science/plasma
name = "Plasma Assembly Crate"
desc = "Everything you need to burn something to the ground, this contains three plasma assembly sets. Each set contains a plasma tank, igniter, proximity sensor, and timer! Warranty void if exposed to high temperatures. Requires Toxins access to open."
@@ -61,6 +128,15 @@
crate_name = "plasma assembly crate"
crate_type = /obj/structure/closet/crate/secure/plasma
+/datum/supply_pack/science/relic
+ name = "Relic Crate"
+ desc = "Ever want to play with old discounted toys? Look no more. Contains two relic."
+ cost = 1000
+ contraband = TRUE
+ contains = list(/obj/item/relic,
+ /obj/item/relic)
+ crate_name = "relic crate"
+
/datum/supply_pack/science/robotics
name = "Robotics Assembly Crate"
desc = "The tools you need to replace those finicky humans with a loyal robot army! Contains three proximity sensors, two high-powered cells, six flashes, and an electrical toolbox. Requires Robotics access to open."
@@ -88,10 +164,30 @@
crate_name = "shield generators crate"
crate_type = /obj/structure/closet/crate/secure/science
+/datum/supply_pack/science/slime
+ name = "Slime Core Crate"
+ desc = "Ran out of slimes? No problem, contains one gray slime core. Requires Xenobio access to open"
+ cost = 1000
+ access = ACCESS_XENOBIOLOGY
+ contains = list(/obj/item/slime_extract/grey)
+ crate_name = "slime core crate"
+ crate_type = /obj/structure/closet/crate/secure/science
+
+/datum/supply_pack/science/supermater
+ name = "Supermatter Exstraction Tools (Crate)"
+ desc = "Contains set of tools to exstract a sliver of supermatter."
+ cost = 7500 //Usefull for traitors that fucked up
+ hidden = TRUE
+ contains = list(/obj/item/nuke_core_container/supermatter,
+ /obj/item/scalpel/supermatter,
+ /obj/item/hemostat/supermatter,
+ /obj/item/paper/guides/antag/supermatter_sliver)
+ crate_name = "supermatter exstraction kit crate"
+
/datum/supply_pack/science/tablets
name = "Tablet Crate"
desc = "What's a computer? Contains five cargo tablets."
- cost = 5000
+ cost = 3000
contains = list(/obj/item/modular_computer/tablet/preset/cargo,
/obj/item/modular_computer/tablet/preset/cargo,
/obj/item/modular_computer/tablet/preset/cargo,
diff --git a/icons/obj/nuke_tools.dmi b/icons/obj/nuke_tools.dmi
index 2c10b5424f..799c4baabb 100644
Binary files a/icons/obj/nuke_tools.dmi and b/icons/obj/nuke_tools.dmi differ