mirror of
https://github.com/goonstation/goonstation-2020.git
synced 2026-08-24 20:46:12 +01:00
61 lines
1.6 KiB
Plaintext
61 lines
1.6 KiB
Plaintext
// -------------------------
|
|
// Inject someone with venom
|
|
// -------------------------
|
|
/datum/targetable/critter/sting
|
|
name = "Venomous Sting"
|
|
desc = "Transfer some toxins into your target."
|
|
var/stealthy = 0
|
|
var/list/venom_ids = list("toxin")
|
|
var/inject_amount = 25
|
|
cooldown = 600
|
|
targeted = 1
|
|
target_anything = 1
|
|
|
|
cast(atom/target)
|
|
if (..())
|
|
return 1
|
|
if (isobj(target))
|
|
target = get_turf(target)
|
|
if (isturf(target))
|
|
target = locate(/mob/living) in target
|
|
if (!target)
|
|
boutput(holder.owner, __red("Nothing to sting there."))
|
|
return 1
|
|
if (target == holder.owner)
|
|
return 1
|
|
if (get_dist(holder.owner, target) > 1)
|
|
boutput(holder.owner, __red("That is too far away to sting."))
|
|
return 1
|
|
var/mob/MT = target
|
|
if (!MT.reagents)
|
|
boutput(holder.owner, __red("That does not hold reagents, apparently."))
|
|
if (!stealthy)
|
|
holder.owner.visible_message(__red("<b>[holder.owner] stings [target]!</b>"))
|
|
else
|
|
holder.owner.show_message(__blue("You stealthily sting [target]."))
|
|
for(var/venom_id in src.venom_ids)
|
|
MT.reagents.add_reagent(venom_id, inject_amount)
|
|
|
|
ice
|
|
name = "Freezing Sting"
|
|
desc = "Transfer some cryostylane into your target."
|
|
venom_ids = list("cryostylane")
|
|
|
|
sedative
|
|
name = "Sedative Sting"
|
|
desc = "Transfer some morphine into your target."
|
|
venom_ids = list("morphine")
|
|
|
|
eggs
|
|
name = "Plant Eggs"
|
|
desc = "Inject eggs into your target."
|
|
venom_ids = list("spidereggs")
|
|
inject_amount = 6
|
|
|
|
fermid
|
|
name = "Fermid Sting"
|
|
desc = "Sting a dude with some nasty toxins."
|
|
venom_ids = list("haloperidol", "atropine")
|
|
inject_amount = 10
|
|
|