mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-28 07:38:05 +01:00
Merge pull request #15429 from Fox-McCloud/gibbing-organs
Gibbing Throws Internal Organs
This commit is contained in:
@@ -70,7 +70,16 @@
|
||||
stomach_contents.Remove(A)
|
||||
src.gib()
|
||||
|
||||
/mob/living/carbon/gib(animation = 1)
|
||||
/mob/living/carbon/gib(animation = 1, var/no_brain = 0)
|
||||
death(1)
|
||||
for(var/obj/item/organ/internal/I in internal_organs)
|
||||
if(no_brain && istype(I, /obj/item/organ/internal/brain))
|
||||
continue
|
||||
if(I)
|
||||
I.Remove(src)
|
||||
I.loc = get_turf(src)
|
||||
I.throw_at_fast(get_edge_target_turf(src,pick(alldirs)),rand(1,3),5)
|
||||
|
||||
for(var/mob/M in src)
|
||||
if(M in stomach_contents)
|
||||
stomach_contents.Remove(M)
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
/mob/living/gib(animation = 1)
|
||||
var/prev_lying = lying
|
||||
death(1)
|
||||
if(stat != DEAD)
|
||||
death(1)
|
||||
|
||||
if(buckled)
|
||||
buckled.unbuckle_mob() //to update alien nest overlay.
|
||||
|
||||
@@ -50,13 +50,6 @@
|
||||
if(!proximity || target == user || !ismob(target) || !iscarbon(user) || user.lying || user.handcuffed) //exploding after touching yourself would be bad
|
||||
return
|
||||
var/mob/M = target
|
||||
if(ishuman(M) || ismonkey(M))
|
||||
var/mob/living/carbon/C_target = M
|
||||
var/obj/item/organ/internal/brain/B = C_target.getorgan(/obj/item/organ/internal/brain)
|
||||
if(B)
|
||||
B.loc = get_turf(C_target)
|
||||
B.transfer_identity(C_target)
|
||||
C_target.internal_organs -= B
|
||||
var/datum/effect_system/spark_spread/sparks = new
|
||||
sparks.set_up(4, 0, M.loc) //no idea what the 0 is
|
||||
sparks.start()
|
||||
|
||||
@@ -26,15 +26,6 @@
|
||||
switch(destroys)
|
||||
if("gib")
|
||||
target.gib()
|
||||
if("gib_brain")
|
||||
if(ishuman(target) || ismonkey(target))
|
||||
var/mob/living/carbon/C_target = target
|
||||
var/obj/item/organ/internal/brain/B = C_target.getorgan(/obj/item/organ/internal/brain)
|
||||
if(B)
|
||||
B.loc = get_turf(C_target)
|
||||
B.transfer_identity(C_target)
|
||||
C_target.internal_organs -= B
|
||||
target.gib()
|
||||
if("disintegrate")
|
||||
target.dust()
|
||||
|
||||
|
||||
Reference in New Issue
Block a user