HomeUser Control Panel (unavailable in archive)ForumsTutorialsArt GalleryResourcesMaps

Blood Decay Time

12-12-2007, 03:28 PM#1
cohadar
Ok here is the problem.
You know that if you set Bone and Flesh Decay times to zero in gameplay constants unit will be removed from game after it is killed.
(You will not be able to resurrect it.)

BUT, blood from unit death remains, and it seems that it is not connected to the unit at all.

If I remove unit {with RemoveUnit() function} instantly after it dies there is no blood, but if I remove unit 1 sec after it dies there will be blood and it will always last the same amount of time no matter what you set in gameplay constants.

It seems like when unit starts decay animation -> blood effect is created on the ground.

Is there some way to remove this blood effect?
(except from instantly removing unit when it dies)
12-13-2007, 06:30 AM#2
Pyrogasm
Model edits. You could also try setting the transparency once they die; it might fade the blood out enough.

This might be the better option:
Collapse JASS:
function KillWithoutBlood takes unit U, string SFX returns nothing
    call ShowUnit(U, false)
    call SetUnitExploded(U, true) //Because we all hate RemoveUnit
    call KillUnit(U)
    call CreateCorpse(GetOwningPlayer(U), GetUnitTypeId(U), GetUnitX(U), GetUnitY(U), GetUnitFacing(U)) //I'm not entirely sure if this will decay or not...

    call DestroyEffect(AddSpecialEffect(SFX, GetUnitX(U), GetUnitY(U)) //Some SFX to cover up the corpse replacement
endfunction
12-13-2007, 08:00 AM#3
cohadar
I don't mind RemoveUnit, I was just wondering if there way a way to remove blood in case it will increase references or something stupid like that,
but since it turned out it does not, I don't care.
12-15-2007, 10:47 AM#4
Tide-Arc Ephemera
Just wondering, but why is RemoveUnit bad?
12-15-2007, 12:22 PM#5
zen87
Quote:
Originally Posted by Tide-Arc Ephemera
Just wondering, but why is RemoveUnit bad?
well mainly due to some system that puts a trigger on every single unit (such as attack detect system) and the triggers need to be destroyed after the unit dies, sometimes (i heard) if you remove the unit instantly after the unit dies it might cause trouble and the game might crash. Well im not sure bout this....

anyway, remove the unit after 0.001 second by using a timer would be a wise choice =|