Actor WizardPurpleBlood
{
  +NoClip
  +NoBlockMap
  +NoGravity
  +Missile
  States
  {
  Spawn:
    TNT1 A 0
    TNT1 AAAA 0 A_SpawnItemEx("WizardPurpleParticle", 0, 0, 0, Random(1, 5), 0, Random(0, 3), Random(0, 360), 128)
    TNT1 A 1
    Stop
  }
}

Actor WizardRedBlood : WizardPurpleBlood
{
  States
  {
  Spawn:
    TNT1 A 0
    TNT1 AAAA 0 A_SpawnItemEx("WizardRedParticle", 0, 0, 0, Random(1, 5), 0, Random(0, 3), Random(0, 360), 128)
    TNT1 A 1
    Stop
  }
}

Actor WizardWhiteBlood : WizardPurpleBlood
{
  States
  {
  Spawn:
    TNT1 A 0
    TNT1 AAAA 0 A_SpawnItemEx("WizardWhiteParticle", 0, 0, 0, Random(1, 5), 0, Random(0, 3), Random(0, 360), 128)
    TNT1 A 1
    Stop
  }
}

Actor WizardYellowBlood : WizardPurpleBlood
{
  States
  {
  Spawn:
    TNT1 A 0
    TNT1 AAAA 0 A_SpawnItemEx("WizardYellowParticle", 0, 0, 0, Random(1, 5), 0, Random(0, 3), Random(0, 360), 128)
    TNT1 A 1
    Stop
  }
}

Actor WizardPurpleParticle
{
  Height 0
  Radius 0
  Mass 0
  +Missile
  +NoBlockMap
  +DontSplash
  RenderStyle Add
  Scale 0.045
  Gravity 0.5
  States
  {
  Spawn:
    SPKP C 1 Bright A_FadeOut(0.02)
    Loop
  }
}

Actor WizardRedParticle : WizardPurpleParticle
{
  States
  {
  Spawn:
    SPKR C 1 Bright A_FadeOut(0.02)
    Loop
  }
}

Actor WizardWhiteParticle : WizardPurpleParticle
{
  States
  {
  Spawn:
    SPKW C 1 Bright A_FadeOut(0.02)
    Loop
  }
}

Actor WizardYellowParticle : WizardPurpleParticle
{
  States
  {
  Spawn:
    SPKY C 1 Bright A_FadeOut(0.02)
    Loop
  }
}