From eeb8f7054cbf4aafce75189597c3914c2a3268fa Mon Sep 17 00:00:00 2001
From: Qwertytoforty <52090703+Qwertytoforty@users.noreply.github.com>
Date: Fri, 23 Jul 2021 14:36:18 -0400
Subject: [PATCH] Order tweaks, removal of duplicate
---
code/game/gamemodes/nuclear/nuclearbomb.dm | 29 +++++------
code/game/objects/items/theft_items.dm | 46 +++++++-----------
code/game/objects/items/tools/screwdriver.dm | 1 +
code/modules/power/supermatter/supermatter.dm | 8 +--
icons/obj/nuke_tools.dmi | Bin 5507 -> 5343 bytes
5 files changed, 35 insertions(+), 49 deletions(-)
diff --git a/code/game/gamemodes/nuclear/nuclearbomb.dm b/code/game/gamemodes/nuclear/nuclearbomb.dm
index db03ffe306d..b03a5d10fdf 100644
--- a/code/game/gamemodes/nuclear/nuclearbomb.dm
+++ b/code/game/gamemodes/nuclear/nuclearbomb.dm
@@ -29,13 +29,13 @@ GLOBAL_VAR(bomb_set)
var/yes_code = FALSE
var/safety = TRUE
var/obj/item/disk/nuclear/auth = null
- var/removal_stage = NUKE_INTACT
var/obj/item/nuke_core/plutonium/core = null
var/lastentered
var/is_syndicate = FALSE
use_power = NO_POWER_USE
var/previous_level = ""
var/datum/wires/nuclearbomb/wires = null
+ var/removal_stage = NUKE_INTACT
///The same state removal stage is, until someone opens the panel of the nuke. This way we can have someone open the front of the nuke, while keeping track of where in the world we are on the anchoring bolts.
var/anchor_stage = NUKE_INTACT
///This is so that we can check if the internal components are sealed up properly when the outer hatch is closed.
@@ -252,21 +252,18 @@ GLOBAL_VAR(bomb_set)
attack_hand(user)
/obj/machinery/nuclearbomb/attack_hand(mob/user as mob)
- if(panel_open)
- if(removal_stage == NUKE_CORE_FULLY_EXPOSED && core)
- if(timing) //removing the core is less risk then cutting wires, and doesnt take long, so we should not let crew do it while the nuke is armed. You can however get to it, without the special screwdriver, if you put the NAD in.
- to_chat(user, "[core] won't budge, metal clamps keep it in!")
- return
- user.visible_message("[user] starts to pull [core] out of [src]!", "You start to pull [core] out of [src]!")
- if(do_after(user, 5 SECONDS, target = src))
- user.visible_message("[user] pulls [core] out of [src]!", "You pull [core] out of [src]! Might want to put it somewhere safe.")
- core.forceMove(loc)
- core = null
-
- else
- wires.Interact(user)
- else
- ui_interact(user)
+ if(!panel_open)
+ return ui_interact(user)
+ if(removal_stage != NUKE_CORE_FULLY_EXPOSED || !core)
+ return wires.Interact(user)
+ if(timing) //removing the core is less risk then cutting wires, and doesnt take long, so we should not let crew do it while the nuke is armed. You can however get to it, without the special screwdriver, if you put the NAD in.
+ to_chat(user, "[core] won't budge, metal clamps keep it in!")
+ return
+ user.visible_message("[user] starts to pull [core] out of [src]!", "You start to pull [core] out of [src]!")
+ if(do_after(user, 5 SECONDS, target = src))
+ user.visible_message("[user] pulls [core] out of [src]!", "You pull [core] out of [src]! Might want to put it somewhere safe.")
+ core.forceMove(loc)
+ core = null
/obj/machinery/nuclearbomb/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = TRUE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.physical_state)
ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open)
diff --git a/code/game/objects/items/theft_items.dm b/code/game/objects/items/theft_items.dm
index 70806866e07..4fa99055e59 100644
--- a/code/game/objects/items/theft_items.dm
+++ b/code/game/objects/items/theft_items.dm
@@ -57,13 +57,12 @@
/obj/item/nuke_core_container/proc/load(obj/item/nuke_core/plutonium/new_core, mob/user)
if(core || !istype(new_core))
- return FALSE
+ return
new_core.forceMove(src)
core = new_core
icon_state = "core_container_loaded"
to_chat(user, "Container is sealing...")
addtimer(CALLBACK(src, .proc/seal), 10 SECONDS)
- return TRUE
/obj/item/nuke_core_container/proc/seal()
if(!QDELETED(core))
@@ -83,16 +82,6 @@
else
load(core, user)
-//snowflake screwdriver, works as a key to start nuke theft, traitor only
-/obj/item/screwdriver/nuke
- name = "screwdriver"
- desc = "A screwdriver with an ultra thin tip that's carefully designed to boost screwing speed."
- icon = 'icons/obj/nuke_tools.dmi'
- icon_state = "screwdriver_nuke"
- item_state = "screwdriver_nuke"
- toolspeed = 0.5
- random_color = FALSE
-
/obj/item/paper/guides/antag/nuke_instructions
info = "How to break into a Nanotrasen nuclear device and remove its plutonium core:
\
\
@@ -131,9 +120,9 @@
/obj/item/nuke_core/supermatter_sliver/can_be_pulled(user) // no drag memes
return FALSE
-/obj/item/nuke_core/supermatter_sliver/attackby(obj/item/W, mob/living/user, params)
- if(istype(W, /obj/item/retractor/supermatter))
- var/obj/item/retractor/supermatter/tongs = W
+/obj/item/nuke_core/supermatter_sliver/attackby(obj/item/I, mob/living/user, params)
+ if(istype(I, /obj/item/retractor/supermatter))
+ var/obj/item/retractor/supermatter/tongs = I
if(tongs.sliver)
to_chat(user, "[tongs] are already holding a supermatter sliver!")
return FALSE
@@ -142,13 +131,13 @@
tongs.icon_state = "supermatter_tongs_loaded"
tongs.item_state = "supermatter_tongs_loaded"
to_chat(user, "You carefully pick up [src] with [tongs].")
- else if(istype(W, /obj/item/scalpel/supermatter) || istype(W, /obj/item/nuke_core_container/supermatter)) // we don't want it to dust
+ else if(istype(I, /obj/item/scalpel/supermatter) || istype(I, /obj/item/nuke_core_container/supermatter)) // we don't want it to dust
return
else
- to_chat(user, "As it touches [src], both [src] and [W] burst into dust!")
+ to_chat(user, "As it touches [src], both [src] and [I] burst into dust!")
radiation_pulse(user, 100)
playsound(src, 'sound/effects/supermatter.ogg', 50, TRUE)
- qdel(W)
+ qdel(I)
qdel(src)
/obj/item/nuke_core/supermatter_sliver/throw_impact(atom/hit_atom, datum/thrownthing/throwingdatum)
@@ -193,18 +182,17 @@
QDEL_NULL(sliver)
return ..()
-/obj/item/nuke_core_container/supermatter/load(obj/item/retractor/supermatter/T, mob/user)
- if(!istype(T) || !T.sliver)
- return FALSE
- T.sliver.forceMove(src)
- sliver = T.sliver
- T.sliver = null
- T.icon_state = "supermatter_tongs"
- T.item_state = "supermatter_tongs"
+/obj/item/nuke_core_container/supermatter/load(obj/item/retractor/supermatter/I, mob/user)
+ if(!istype(I) || !I.sliver)
+ return
+ I.sliver.forceMove(src)
+ sliver = I.sliver
+ I.sliver = null
+ I.icon_state = "supermatter_tongs"
+ I.item_state = "supermatter_tongs"
icon_state = "supermatter_container_loaded"
to_chat(user, "Container is sealing...")
addtimer(CALLBACK(src, .proc/seal), 10 SECONDS)
- return TRUE
/obj/item/nuke_core_container/supermatter/seal()
if(!QDELETED(sliver))
@@ -229,11 +217,11 @@
toolspeed = 0.5
damtype = BURN
usesound = 'sound/weapons/bladeslice.ogg'
- var/usesLeft
+ var/uses_left
/obj/item/scalpel/supermatter/Initialize()
. = ..()
- usesLeft = rand(2, 4)
+ uses_left = rand(2, 4)
/obj/item/retractor/supermatter
name = "supermatter extraction tongs"
diff --git a/code/game/objects/items/tools/screwdriver.dm b/code/game/objects/items/tools/screwdriver.dm
index 374b8ad66ca..c6b4aecd4f2 100644
--- a/code/game/objects/items/tools/screwdriver.dm
+++ b/code/game/objects/items/tools/screwdriver.dm
@@ -27,6 +27,7 @@
desc = "A screwdriver with an ultra thin tip."
icon_state = "screwdriver_nuke"
toolspeed = 0.5
+ random_color = FALSE
/obj/item/screwdriver/suicide_act(mob/user)
user.visible_message("[user] is stabbing [src] into [user.p_their()] [pick("temple", "heart")]! It looks like [user.p_theyre()] trying to commit suicide!")
diff --git a/code/modules/power/supermatter/supermatter.dm b/code/modules/power/supermatter/supermatter.dm
index 3aece06e0ee..8ff38862588 100644
--- a/code/modules/power/supermatter/supermatter.dm
+++ b/code/modules/power/supermatter/supermatter.dm
@@ -717,12 +717,12 @@
var/obj/item/scalpel/supermatter/scalpel = I
to_chat(user, "You carefully begin to scrape [src] with [I]...")
if(I.use_tool(src, user, 10 SECONDS, volume = 100))
- if(scalpel.usesLeft)
- to_chat(user, "You extract a sliver from [src]. [src] begins to react violently!")
+ if(scalpel.uses_left)
+ to_chat(user, "You extract a sliver from [src], and it begins to react violently!")
new /obj/item/nuke_core/supermatter_sliver(drop_location())
matter_power += 800
- scalpel.usesLeft--
- if(!scalpel.usesLeft)
+ scalpel.uses_left--
+ if(!scalpel.uses_left)
to_chat(user, "A tiny piece of [I] falls off, rendering it useless!")
else
to_chat(user, "You fail to extract a sliver from [src]! [I] isn't sharp enough anymore.")
diff --git a/icons/obj/nuke_tools.dmi b/icons/obj/nuke_tools.dmi
index 06f1bdf225df5d19aba94208304e628cc0d8ea15..1e06f1f89ea2c07e1ae2b93f41ada3b9852e8f8a 100644
GIT binary patch
literal 5343
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
n0EH$niX~Nn4F4DPMq{g{&M