mirror of
https://github.com/vgstation-coders/vgstation13.git
synced 2025-12-09 16:14:13 +00:00
Reticulated Vest (#33464)
This commit is contained in:
@@ -336,6 +336,12 @@
|
||||
cost = 500
|
||||
result = /obj/item/clothing/suit/mino
|
||||
|
||||
/datum/biogen_recipe/misc/rvest
|
||||
name = "Reticulated Vest"
|
||||
id = "rvest"
|
||||
cost = 500
|
||||
result = /obj/item/clothing/suit/reticulatedvest
|
||||
|
||||
/datum/biogen_recipe/flooring
|
||||
category="Flooring"
|
||||
|
||||
|
||||
@@ -1108,3 +1108,18 @@ var/list/tag_suits_list = list()
|
||||
body_parts_covered = FULL_TORSO
|
||||
icon_state = "syndiefootball"
|
||||
flags = FPRINT
|
||||
|
||||
/obj/item/clothing/suit/reticulatedvest
|
||||
name = "reticulated vest"
|
||||
desc = "A vest that makes use of reticulation to increase surface area and help disperse emitter particles. It was later discovered this also makes it effective against blobs organisms."
|
||||
icon_state = "reticulated2"
|
||||
item_state = "labgreen"
|
||||
blood_overlay_type = "armor"
|
||||
allowed = list(/obj/item/weapon/tank,
|
||||
/obj/item/weapon/gun/energy/laser/liberator)
|
||||
starting_materials = list(MAT_WOOD = 1*CC_PER_SHEET_MISC)
|
||||
w_type = RECYK_WOOD
|
||||
var/hits = 2
|
||||
|
||||
/obj/item/clothing/suit/reticulatedvest/update_icon()
|
||||
icon_state = "reticulated[hits]"
|
||||
@@ -563,6 +563,16 @@ emp_act
|
||||
/mob/living/carbon/human/blob_act()
|
||||
if(flags & INVULNERABLE)
|
||||
return
|
||||
var/obj/item/clothing/suit/reticulatedvest/RV = wear_suit
|
||||
if(istype(RV) && RV.hits>0) //will fail if not wearing a suit or wearing one not of this type
|
||||
RV.hits--
|
||||
if(RV.hits)
|
||||
to_chat(src, "<big><span class='good'>Your reticulated vest groans as it resists the blob!</span></big>")
|
||||
else
|
||||
to_chat(src, "<big><span class='danger'>Your reticulated vest rips apart as it resists the blob one last time!</span></big>")
|
||||
RV.update_icon()
|
||||
update_inv_wear_suit()
|
||||
return
|
||||
if(cloneloss < 120)
|
||||
playsound(loc, 'sound/effects/blobattack.ogg',50,1)
|
||||
if(isDead(src))
|
||||
@@ -581,3 +591,6 @@ emp_act
|
||||
return WATER
|
||||
else
|
||||
return PACID
|
||||
|
||||
/mob/living/carbon/human/beam_defense(var/obj/effect/beam/B)
|
||||
return is_wearing_item(/obj/item/clothing/suit/reticulatedvest) ? 0.4 : 1
|
||||
@@ -140,7 +140,7 @@
|
||||
var/lastcheck=last_beamchecks["\ref[B]"]
|
||||
// Figure out how much damage to deal.
|
||||
// Formula: (deciseconds_since_connect/10 deciseconds)*B.get_damage()
|
||||
var/damage = ((world.time - lastcheck)/10) * B.get_damage()
|
||||
var/damage = ((world.time - lastcheck)/10) * B.get_damage() * beam_defense(B)
|
||||
|
||||
// Actually apply damage
|
||||
apply_damage(damage, B.damage_type, B.def_zone)
|
||||
@@ -148,6 +148,10 @@
|
||||
// Update check time.
|
||||
last_beamchecks["\ref[B]"]=world.time
|
||||
|
||||
//Return multiplier for damage
|
||||
/mob/living/proc/beam_defense(var/obj/effect/beam/B)
|
||||
return 1
|
||||
|
||||
/mob/living/verb/succumb()
|
||||
set hidden = 1
|
||||
succumb_proc(0)
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 458 KiB After Width: | Height: | Size: 459 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 198 KiB After Width: | Height: | Size: 198 KiB |
Reference in New Issue
Block a user