mirror of
https://github.com/vgstation-coders/vgstation13.git
synced 2025-12-10 10:21:11 +00:00
Heart Attacks now have their own mob type. (#30412)
* Heart Attacks now have their own mob type. They also now gib upon death and leave splatters when they attack. * derp * dme
This commit is contained in:
@@ -0,0 +1,43 @@
|
||||
/mob/living/simple_animal/hostile/heart_attack
|
||||
name = "heart"
|
||||
icon = 'icons/obj/surgery.dmi'
|
||||
icon_state = "heart-on"
|
||||
icon_dead = "heart-off"
|
||||
environment_smash_flags = 0
|
||||
melee_damage_lower = 15
|
||||
melee_damage_upper = 15
|
||||
health = 50
|
||||
maxHealth = 50
|
||||
stat_attack = 1
|
||||
var/blood_data = list(
|
||||
"viruses" = null,
|
||||
"blood_DNA" = null,
|
||||
"blood_type" = "O+",
|
||||
"blood_colour" = DEFAULT_BLOOD,
|
||||
"resistances" = null,
|
||||
"trace_chem" = null,
|
||||
"virus2" = null,
|
||||
"immunity" = null,
|
||||
)
|
||||
var/datum/dna/source_dna
|
||||
|
||||
/mob/living/simple_animal/hostile/heart_attack/proc/update_heart(var/obj/item/organ/internal/heart/source, var/datum/dna/_dna, var/list/vir = list())
|
||||
if (!istype(source))
|
||||
return
|
||||
appearance = source.appearance
|
||||
blood_data = source.blood_data
|
||||
blood_data["virus2"] = vir
|
||||
source_dna = _dna
|
||||
|
||||
|
||||
/mob/living/simple_animal/hostile/heart_attack/death(var/gibbed = FALSE)
|
||||
..()
|
||||
visible_message("<b>[src]</b> blows apart!")
|
||||
hgibs(loc, blood_data["virus2"], source_dna, blood_data["blood_colour"], blood_data["blood_colour"], 2)
|
||||
qdel(src)
|
||||
|
||||
/mob/living/simple_animal/hostile/heart_attack/UnarmedAttack(var/atom/A)
|
||||
..()
|
||||
var/datum/reagent/blood/B = new
|
||||
B.data = blood_data
|
||||
blood_splatter(loc,B,TRUE)
|
||||
@@ -556,15 +556,8 @@
|
||||
spawn_turfs.Add(T)
|
||||
if(!spawn_turfs.len)
|
||||
spawn_turfs.Add(get_turf(H))
|
||||
var/mob/living/simple_animal/hostile/heart_attack = new(pick(spawn_turfs))
|
||||
heart_attack.appearance = blown_heart.appearance
|
||||
heart_attack.icon_dead = "heart-off"
|
||||
heart_attack.environment_smash_flags = 0
|
||||
heart_attack.melee_damage_lower = 15
|
||||
heart_attack.melee_damage_upper = 15
|
||||
heart_attack.health = 50
|
||||
heart_attack.maxHealth = 50
|
||||
heart_attack.stat_attack = 1
|
||||
var/mob/living/simple_animal/hostile/heart_attack/HA = new(pick(spawn_turfs))
|
||||
HA.update_heart(blown_heart,H.dna,virus_copylist(H.virus2))
|
||||
score["heartattacks"]++
|
||||
qdel(blown_heart)
|
||||
|
||||
|
||||
@@ -2024,6 +2024,7 @@
|
||||
#include "code\modules\mob\living\simple_animal\hostile\glow_orb.dm"
|
||||
#include "code\modules\mob\living\simple_animal\hostile\gremlin.dm"
|
||||
#include "code\modules\mob\living\simple_animal\hostile\grinch.dm"
|
||||
#include "code\modules\mob\living\simple_animal\hostile\heart_attack.dm"
|
||||
#include "code\modules\mob\living\simple_animal\hostile\hive_aliens.dm"
|
||||
#include "code\modules\mob\living\simple_animal\hostile\hivebot.dm"
|
||||
#include "code\modules\mob\living\simple_animal\hostile\hostile.dm"
|
||||
|
||||
Reference in New Issue
Block a user