Weird damagetype problem here.
Posted: Tue Jun 16, 2009 4:39 pm
I have a flame thrower zombie in my WAD, and when killed, his fuel tank sometimes blows down (always if you set him on fire
). Anyway, this explosion can engulf surrounding enemies, and it should light them on fire. Here's where it gets strange.
If you kill him with a regular weapon (shotgun, minigun, chainsaw, what have you) then, if he explodes, he'll severely damage everything around him, but it's regular old damage. Enemies are gibbed.
If you light him on fire, everything around him is struck with fire damage, lighting them ablaze.
It should do fire damage anyway. Here's the code for the zombie, and a special version who blows up no matter what.

If you kill him with a regular weapon (shotgun, minigun, chainsaw, what have you) then, if he explodes, he'll severely damage everything around him, but it's regular old damage. Enemies are gibbed.
If you light him on fire, everything around him is struck with fire damage, lighting them ablaze.

Code: Select all
ACTOR FlamethrowerZombie 25641
{
Health 80
Speed 9
Radius 20
Height 56
Mass 100
PainChance 200
damagefactor "CrossbowBolt", 100
MONSTER
+FLOORCLIP
+MISSILEMORE
Damagetype "Fire"
maxtargetrange 300
SeeSound "grunt/sight"
PainSound "grunt/pain"
Deathsound "grunt/death"
ActiveSound "grunt/active"
Obituary "%o was lit on fire by a marine!"
States
{
Spawn:
FLZM AB 10 A_Look
Loop
See:
TNT1 A 0 A_PlaySoundEx("weapons/flameidle", "SoundSlot7",1)
FLZM AABBCCDD 3 A_Chase
Loop
Missile:
FLZM E 2 A_FaceTarget
FLZM F 2 A_CustomMissile ("FlameMissile_", 32, 0, 0)
FLZM F 2 A_SentinelRefire
Goto Missile+1
Pain:
FLZM G 2
FLZM G 4 A_Pain
Goto See
Death:
TNT1 A 0 A_Jump (175, "Burn")
FLZM H 5 A_SpawnItem("WormFlamethrower")
FLZM I 5 A_Scream
FLZM J 5
FLZM K 5 A_Fall
TNT1 A 0 A_StopSoundEx("SoundSlot7")
FLZM L -1
XDeath:
Goto Burn
Crush:
TNT1 A 0 A_NoBlocking
TNT1 A 0 A_StopSoundEx("SoundSlot7")
POL5 A -1 A_PlaySound("player/male/gibbed")
Death.CrossbowBolt:
TNT1 A 0 A_StopSoundEx("SoundSlot7")
FLZM O 10 A_PlaySoundEx("bolt/gag", "Voice")
FLZM P 60 A_SpawnItem("WormFlamethrower")
FLZM Q 10 A_NoBlocking
FLZM R 6 A_PlaySoundEx("bolt/splortch","SoundSlot7")
FLZM ST 6
FLZM U -1
Burn:
TNT1 A 0 A_SpawnItemEx("64BossExplosion",0,0,60)
TNT1 A 0 A_Explode(500,150)
TNT1 A 0 A_JumpIf(waterlevel == 3, "Death")
TNT1 A 0 A_JumpIf(waterlevel == 2, "Death")
TNT1 A 0 A_NoBlocking
TNT1 A 1 A_SpawnItemEx("ZombieBurningDeath")
TNT1 A 0 A_StopSoundEx("SoundSlot7")
Stop
Death.Disintigrate:
TNT1 A 0 A_SpawnItemEx("ZombieDisintigrationDeath")
TNT1 A 1 A_NoBlocking
Stop
Raise:
FLZM LKJIH 5
Goto See
}
}
ACTOR ReadyToBlowFlamethrowerZombie : FlamethrowerZombie 25642
{
States
{
Death:
Goto Burn
}
}