mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-24 21:48:39 +01:00
[MIRROR] Adds a second boom wire to payload bombs. [MDB IGNORE] (#19196)
* Adds a second boom wire to payload bombs. * Update code/game/machinery/syndicatebomb.dm --------- Co-authored-by: Capsandi <38051413+Capsandi@users.noreply.github.com> Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com>
This commit is contained in:
co-authored by
Capsandi
Tom
parent
e9c7bf9b03
commit
a74a354ebc
@@ -13,7 +13,8 @@
|
||||
#define WIRE_BACKUP2 "Auxiliary Power 2"
|
||||
#define WIRE_BEACON "Beacon"
|
||||
#define WIRE_BOLTS "Bolts"
|
||||
#define WIRE_BOOM "Boom"
|
||||
#define WIRE_BOOM "Boom Wire 1"
|
||||
#define WIRE_BOOM2 "Boom Wire 2"
|
||||
#define WIRE_CAMERA "Camera"
|
||||
#define WIRE_CONTRABAND "Contraband"
|
||||
#define WIRE_DELAY "Delay"
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
|
||||
/datum/wires/syndicatebomb/New(atom/holder)
|
||||
wires = list(
|
||||
WIRE_BOOM, WIRE_UNBOLT,
|
||||
WIRE_BOOM, WIRE_BOOM2, WIRE_UNBOLT,
|
||||
WIRE_ACTIVATE, WIRE_DELAY, WIRE_PROCEED
|
||||
)
|
||||
..()
|
||||
@@ -20,7 +20,7 @@
|
||||
/datum/wires/syndicatebomb/on_pulse(wire)
|
||||
var/obj/machinery/syndicatebomb/B = holder
|
||||
switch(wire)
|
||||
if(WIRE_BOOM)
|
||||
if(WIRE_BOOM,WIRE_BOOM2)
|
||||
if(B.active)
|
||||
holder.visible_message(span_danger("[icon2html(B, viewers(holder))] An alarm sounds! It's go-"))
|
||||
B.explode_now = TRUE
|
||||
@@ -72,7 +72,7 @@
|
||||
/datum/wires/syndicatebomb/on_cut(wire, mend)
|
||||
var/obj/machinery/syndicatebomb/B = holder
|
||||
switch(wire)
|
||||
if(WIRE_BOOM)
|
||||
if(WIRE_BOOM,WIRE_BOOM2)
|
||||
if(!mend && B.active)
|
||||
holder.visible_message(span_danger("[icon2html(B, viewers(holder))] An alarm sounds! It's go-"))
|
||||
B.explode_now = TRUE
|
||||
@@ -90,12 +90,9 @@
|
||||
|
||||
if(WIRE_PROCEED)
|
||||
if(!mend && B.active)
|
||||
holder.visible_message(span_danger("[icon2html(B, viewers(holder))] An alarm sounds! It's go-"))
|
||||
B.explode_now = TRUE
|
||||
if(!istype(B.payload, /obj/machinery/syndicatebomb/training))
|
||||
tell_admins(B)
|
||||
if(isliving(usr))
|
||||
add_memory_in_range(B, 7, /datum/memory/bomb_defuse_failure, protagonist = usr, antagonist = B)
|
||||
holder.visible_message(span_danger("[icon2html(B, viewers(holder))] The digital display on the device deactivates."))
|
||||
B.examinable_countdown = FALSE
|
||||
|
||||
|
||||
if(WIRE_ACTIVATE)
|
||||
if(!mend && B.active)
|
||||
@@ -104,6 +101,7 @@
|
||||
B.active = FALSE
|
||||
B.delayedlittle = FALSE
|
||||
B.delayedbig = FALSE
|
||||
B.examinable_countdown = TRUE
|
||||
B.update_appearance()
|
||||
if(isliving(usr))
|
||||
add_memory_in_range(B, 7, /datum/memory/bomb_defuse_success, protagonist = usr, antagonist = B, bomb_time_left = bomb_time_left)
|
||||
|
||||
@@ -30,6 +30,8 @@
|
||||
var/delayedbig = FALSE //delay wire pulsed?
|
||||
var/delayedlittle = FALSE //activation wire pulsed?
|
||||
var/obj/effect/countdown/syndicatebomb/countdown
|
||||
/// Whether the countdown is visible on examine
|
||||
var/examinable_countdown = TRUE
|
||||
|
||||
var/next_beep
|
||||
var/detonation_timer
|
||||
@@ -104,7 +106,12 @@
|
||||
|
||||
/obj/machinery/syndicatebomb/examine(mob/user)
|
||||
. = ..()
|
||||
// . += {"A digital display on it reads "[seconds_remaining()]"."} SKYRAT EDIT : - commented out to make people fear it more.
|
||||
. += {"The patented external shell design is resistant to "probably all" forms of external explosive compression, protecting the electronically-trigged bomb core from accidental early detonation."}
|
||||
. += "A small window reveals some information about the payload: [payload.desc]."
|
||||
if(examinable_countdown)
|
||||
// . += {"A digital display on it reads "[seconds_remaining()]"."} SKYRAT EDIT : - commented out to make people fear it more.
|
||||
else
|
||||
. +={"The digital display on it is inactive."}
|
||||
|
||||
/obj/machinery/syndicatebomb/update_icon_state()
|
||||
icon_state = "[initial(icon_state)][active ? "-active" : "-inactive"][open_panel ? "-wires" : ""]"
|
||||
@@ -113,6 +120,7 @@
|
||||
/obj/machinery/syndicatebomb/proc/seconds_remaining()
|
||||
if(active)
|
||||
. = max(0, round((detonation_timer - world.time) / 10))
|
||||
|
||||
else
|
||||
. = timer_set
|
||||
|
||||
|
||||
Reference in New Issue
Block a user