Tweaks some nuclear agent items (#22119)

* First changes

* Dont forget to do cooldown shit

* I HATE PEOPLE AAAAA

* Defib almost done

* Okay we ball

* Defib done

* I hate bullets

* Sniper done

* More stamina damage

* GDN review + Oops I forgor this

* Update code/datums/components/defibrillator.dm

Co-authored-by: Henri215 <77684085+Henri215@users.noreply.github.com>

* Disintegrate go brrrr

* Lewc review

* Ghhhhh

* Final oopsie fixed

* Almost made an oopsie daisy myself

---------

Co-authored-by: Henri215 <77684085+Henri215@users.noreply.github.com>
This commit is contained in:
DGamerL
2023-09-07 10:52:48 +01:00
committed by GitHub
co-authored by Henri215
parent 56ff3f3720
commit db1ed68a7d
5 changed files with 38 additions and 15 deletions
+31 -6
View File
@@ -92,9 +92,9 @@
if(user && !robotic)
to_chat(user, "<span class='warning'>You silently [safety ? "disable" : "enable"] [unit]'s safety protocols with the card.")
/datum/component/defib/proc/set_cooldown()
/datum/component/defib/proc/set_cooldown(how_short)
on_cooldown = TRUE
addtimer(CALLBACK(src, PROC_REF(end_cooldown)), cooldown)
addtimer(CALLBACK(src, PROC_REF(end_cooldown)), how_short)
/datum/component/defib/proc/end_cooldown()
on_cooldown = FALSE
@@ -151,6 +151,12 @@
to_chat(user, "<span class='notice'>The instructions on [defib_ref] don't mention how to defibrillate that...</span>")
return
if(should_cause_harm && combat && heart_attack_chance == 100)
combat_fibrillate(user, target)
SEND_SIGNAL(parent, COMSIG_DEFIB_SHOCK_APPLIED, user, target, should_cause_harm, TRUE)
busy = FALSE
return
if(should_cause_harm)
fibrillate(user, target)
SEND_SIGNAL(parent, COMSIG_DEFIB_SHOCK_APPLIED, user, target, should_cause_harm, TRUE)
@@ -212,7 +218,7 @@
target.set_heartattack(FALSE)
SEND_SIGNAL(target, COMSIG_LIVING_MINOR_SHOCK, 100)
SEND_SIGNAL(parent, COMSIG_DEFIB_SHOCK_APPLIED, user, target, should_cause_harm, TRUE)
set_cooldown()
set_cooldown(cooldown)
user.visible_message("<span class='boldnotice'>[defib_ref] pings: Cardiac arrhythmia corrected.</span>")
target.visible_message("<span class='warning'>[target]'s body convulses a bit.</span>", "<span class='userdanger'>You feel a jolt, and your heartbeat seems to steady.</span>")
playsound(get_turf(defib_ref), 'sound/machines/defib_zap.ogg', 50, 1, -1)
@@ -304,7 +310,7 @@
add_attack_logs(user, target, "Revived with [defib_ref]")
SSblackbox.record_feedback("tally", "players_revived", 1, "defibrillator")
SEND_SIGNAL(parent, COMSIG_DEFIB_SHOCK_APPLIED, user, target, should_cause_harm, defib_success)
set_cooldown()
set_cooldown(cooldown)
busy = FALSE
/**
@@ -328,9 +334,28 @@
target.set_heartattack(TRUE)
SEND_SIGNAL(target, COMSIG_LIVING_MINOR_SHOCK, 100)
add_attack_logs(user, target, "Stunned with [parent]")
set_cooldown()
set_cooldown(cooldown)
busy = FALSE
return
/datum/component/defib/proc/combat_fibrillate(mob/user, mob/living/carbon/human/target)
if(!istype(target))
return
busy = TRUE
target.adjustStaminaLoss(60)
target.emote("gasp")
add_attack_logs(user, target, "Stunned with [parent]")
target.KnockDown(4 SECONDS)
if(IS_HORIZONTAL(target) && HAS_TRAIT(target, TRAIT_HANDS_BLOCKED)) // Weakening exists which doesn't floor you while stunned
add_attack_logs(user, target, "Gave a heart attack with [parent]")
target.set_heartattack(TRUE)
target.visible_message("<span class='danger'>[user] has touched [target] with [parent]!</span>", \
"<span class='userdanger'>[user] touches you with [parent], and you feel a strong jolt!</span>")
playsound(get_turf(parent), 'sound/machines/defib_zap.ogg', 50, TRUE, -1)
SEND_SIGNAL(target, COMSIG_LIVING_MINOR_SHOCK, 100)
set_cooldown(cooldown)
return
target.visible_message("<span class='danger'>[user] touches [target] lightly with [parent]!</span>")
set_cooldown(2.5 SECONDS)
/*
* Pass excess shock from a defibrillation into someone else.
+5 -6
View File
@@ -237,7 +237,7 @@
desc = "An additional 20-round .45 magazine for use in the C-20r submachine gun. These bullets pack a lot of punch that can knock most targets down, but do limited overall damage."
reference = "45"
item = /obj/item/ammo_box/magazine/smgm45
cost = 10
cost = 15
uplinktypes = list(UPLINK_TYPE_NUCLEAR, UPLINK_TYPE_SST)
/datum/uplink_item/ammo/smg_ammobag
@@ -245,7 +245,7 @@
desc = "A duffel bag filled with enough .45 ammo to supply an entire team, at a discounted price."
reference = "45ADB"
item = /obj/item/storage/backpack/duffel/syndie/smg
cost = 70 // normally 100
cost = 105 // Normally 150, so 30% off
uplinktypes = list(UPLINK_TYPE_NUCLEAR, UPLINK_TYPE_SST)
/datum/uplink_item/ammo/carbine
@@ -282,7 +282,7 @@
surplus = 0
/datum/uplink_item/ammo/sniper
cost = 20
cost = 15
uplinktypes = list(UPLINK_TYPE_NUCLEAR, UPLINK_TYPE_SST)
/datum/uplink_item/ammo/sniper/basic
@@ -297,14 +297,13 @@
Able to heavily damage objects, and delimb people."
reference = "50A"
item = /obj/item/ammo_box/magazine/sniper_rounds/antimatter
cost = 25
cost = 30
/datum/uplink_item/ammo/sniper/soporific
name = "Sniper - .50 Soporific Magazine"
desc = "A 3-round magazine of soporific ammo designed for use with .50 sniper rifles. Put your enemies to sleep today!"
reference = "50S"
item = /obj/item/ammo_box/magazine/sniper_rounds/soporific
cost = 15
/datum/uplink_item/ammo/sniper/haemorrhage
name = "Sniper - .50 Haemorrhage Magazine"
@@ -319,7 +318,7 @@
Can pierce walls and multiple enemies."
reference = "50P"
item = /obj/item/ammo_box/magazine/sniper_rounds/penetrator
cost = 25
cost = 20
/datum/uplink_item/ammo/bioterror
name = "Box of Bioterror Syringes"
+1 -1
View File
@@ -77,7 +77,7 @@
if(!isfloorturf(loc))
to_chat(user, "<span class='warning'>A floor must be present to build a false wall!</span>")
return
if (locate(/obj/structure/falsewall) in loc.contents)
if(locate(/obj/structure/falsewall) in loc.contents)
to_chat(user, "<span class='warning'>There is already a false wall present!</span>")
return
if(islava(loc))
@@ -158,7 +158,6 @@
name = "penetrator round"
damage = 60
forcedodge = -1
dismemberment = 0
weaken = 0
//toy magazine
@@ -140,7 +140,7 @@
/obj/item/projectile/bullet/midbullet
damage = 20
stamina = 65 //two rounds from the c20r knocks people down
stamina = 45 // Three rounds from the c20r knocks unarmoured people down, four for people with bulletproof
/obj/item/projectile/bullet/midbullet_r
damage = 5