Of Tugs & Diona (#614)

Diona will now properly gib and remain permadead after gibbing or husking.
Tugs can now be targeted be targeted and snipped at properly.
This commit is contained in:
skull132
2016-07-20 18:47:52 +03:00
committed by GitHub
parent b9b94b2c10
commit ca795581ec
6 changed files with 17 additions and 11 deletions
@@ -34,7 +34,7 @@
handle_hud_list()
//Handle species-specific deaths.
species.handle_death(src)
species.handle_death(src, gibbed)
animate_tail_stop()
//Handle brain slugs.
@@ -269,7 +269,7 @@
H.mob_swap_flags = swap_flags
H.mob_push_flags = push_flags
/datum/species/proc/handle_death(var/mob/living/carbon/human/H) //Handles any species-specific death events (such as dionaea nymph spawns).
/datum/species/proc/handle_death(var/mob/living/carbon/human/H, var/gibbed = 0) //Handles any species-specific death events (such as dionaea nymph spawns).
return
// Only used for alien plasma weeds atm, but could be used for Dionaea later.
@@ -224,8 +224,9 @@
H.gender = NEUTER
return ..()
/datum/species/diona/handle_death(var/mob/living/carbon/human/H)
H.diona_split_into_nymphs(0)
/datum/species/diona/handle_death(var/mob/living/carbon/human/H, var/gibbed = 0)
if (!gibbed)
H.diona_split_into_nymphs(0)
/datum/species/machine
name = "Machine"
+6 -5
View File
@@ -55,7 +55,7 @@
if(is_train_head() && !on)
return 0
//space check ~no flying space trains sorry
if(on && istype(destination, /turf/space))
return 0
@@ -79,12 +79,13 @@
return
..()
//cargo trains are open topped, so there is a chance the projectile will hit the mob ridding the train instead
// Cargo trains are open topped, so you can shoot at the driver.
// Or you can shoot at the tug itself, if you're good.
/obj/vehicle/train/cargo/bullet_act(var/obj/item/projectile/Proj)
if(buckled_mob && prob(70))
if (buckled_mob && Proj.original == buckled_mob)
buckled_mob.bullet_act(Proj)
return
..()
else
..()
/obj/vehicle/train/cargo/update_icon()
if(open)
+4
View File
@@ -117,6 +117,10 @@
if (Proj.damage_type == BRUTE || Proj.damage_type == BURN)
health -= Proj.damage
..()
if (prob(20))
PoolOrNew(/obj/effect/effect/sparks, loc)
healthcheck()
/obj/vehicle/meteorhit()