Actor Jorg
{
//Creator: Complex Doom CF 3.0 Team
//Origin: Complex Doom CF 3.0
//Sprite: JRG0 - JRG6
//Title: "Jorg"
  Monster
  Health 10000
  Speed 18
  PainChance 10
  PainChance "BFG", 20
  PainChance "BFGSplash", 5
  DamageFactor "BFGSplash", 0.5
  DamageFactor "BFGSplash", 0.33
  Mass 3000
  Radius 40
  Height 110
  DeathHeight 110
  SeeSound "Makron/Sight"
  ActiveSound "Makron/Active"
  PainSound "Makron/Pain"
  DeathSound "Makron/Death"
  Obituary "%o met %p untimely demise with the Jorg."
  DropItem "Q2Bullets" 128
  DropItem "Q2Bullets" 128
  DropItem "Q2CellPack" 128
  DamageType "Makron"
  DamageFactor "Makron", 0.0
  DamageFactor "PlayerNemesisPlasma", 0.0
  DamageFactor "Explosion", 0.05
  DamageFactor "DTRailgun", 0.1
  DamageFactor "PDTPuff", 0.4
  DamageFactor "RailG", 0.3
  DamageFactor "T3rm", 0.1
  DamageFactor "UltimateLegendary", 0.0
  DamageFactor "NobleComet", 0.1
  DamageFactor "HellComet", 0.1
  DamageFactor "Hell", 0.1
  DamageFactor "Cyber10K", 0.0
  DamageFactor "Legendary", 0.01
  DamageFactor "LegendaryGuru", 0.01
  DamageFactor "LegendaryGuruPlayer", 0.01
  DamageFactor "BFGSplash", 0.1
  DamageFactor "BFGSpray", 0.1
  DamageFactor "PDTBFG", 0.0
  DamageFactor "PDTBFGTracer", 0.0
  DamageFactor "PlayerDevBall2", 0.2
  DamageFactor "PlayerDTBFGRailgunSlug", 0.1
  DamageFactor "PlayerDevTracer", 0.2
  DamageFactor "Ice", 0.2
  DamageFactor "PyroShot", 0.0
  DamageFactor "PlayerPyro", 0.2
  DamageFactor "PlayerBHole", 0.1
  DamageFactor "PlayerNuke", 0.01
  DamageFactor "RailG", 0.5
  DamageFactor "Explosion", 0.1
  DamageFactor 0.65
  PainChance 5
  PainChance "DTRailgun", 100
  Species "Cybers"
  Tag "\c[q4]Jorg\c-"
  +BOSS
  +NOFEAR
  +NORADIUSDMG
  +FORCERADIUSDMG
  +DONTRIP
  +BOSSDEATH
  +DONTMORPH
  +MISSILEMORE
  +MISSILEEVENMORE
  +NOICEDEATH
  +NOTELEFRAG
  +NOTIMEFREEZE
  +FLOORCLIP
  +NOTARGET
  +NOINFIGHTING
  +FASTMELEE
  +QUICKTORETALIATE
  +DONTHARMSPECIES
  var int user_music;
  States
  {
  Spawn:
	TNT1 A 0 A_Jump(192,2)
	TNT1 A 0 A_PlaySound("Makron/Active",CHAN_VOICE)
	JRG0 "ABCDEFGHIJKLMNOPQRSTUVWXYZ\[]" 6 A_Look
	Loop
  See:
	TNT1 A 0 A_JumpIf(user_music == 1,3)
	TNT1 A 0 ACS_NamedExecuteAlways("StartMonsterMusic",0,9011)
	TNT1 A 0 A_SetUserVar("user_music",1)
	JRG1 A 0 A_ChangeFlag(NOPAIN,0)
	JRG1 AB 4 A_Chase(0,0,CHF_DONTMOVE)
	JRG1 C 0 A_PlaySound("Makron/Step",CHAN_BODY)
	JRG1 C 4 A_Chase(0,0,CHF_DONTMOVE)
	JRG1 DEFG 4 A_Chase
	JRG1 HI 4 A_Chase(0,0,CHF_DONTMOVE)
	JRG1 J 0 A_PlaySound("Makron/Step",5)
	JRG1 J 4 A_Chase(0,0,CHF_DONTMOVE)
	JRG1 KLMN 3 A_Chase
	Loop
  Missile:
	"----" A 0 A_StopSound(CHAN_BODY)
	"----" A 8 A_FaceTarget
	"----" A 0 A_ChangeFlag(NOPAIN,1)
	"----" A 0 A_Jump(128,"DTBFG","RapidRockets","BFG10k")
  ExplosiveMinigun:
	JRG2 A 0 A_PlaySound("Makron/Attack1",5)
	JRG2 ABCDEFGH 4 A_FaceTarget
	JRG2 I 0 A_PlaySound("Makron/Attack3",5,1.0,1)
	TNT1 A 0 A_FaceTarget
	TNT1 A 0 A_PlaySound("sentient/fire")
	JRG2 A 0 A_CustomMissile("TerminatorExplosiveTracer",56,37,frandom(-5,5),CMF_OFFSETPITCH,frandom(-2,2))
	JRG2 I 3 A_CustomMissile("TerminatorExplosiveTracer",56,-37,frandom(-5,5),CMF_OFFSETPITCH,frandom(-2,2))
	TNT1 A 0 A_FaceTarget
	TNT1 A 0 A_PlaySound("sentient/fire")
	JRG2 A 0 A_CustomMissile("TerminatorExplosiveTracer",56,37,frandom(-5,5),CMF_OFFSETPITCH,frandom(-2,2))
	JRG2 J 3 A_CustomMissile("TerminatorExplosiveTracer",56,-37,frandom(-5,5),CMF_OFFSETPITCH,frandom(-2,2))
	TNT1 A 0 A_FaceTarget
	TNT1 A 0 A_PlaySound("sentient/fire")
	JRG2 A 0 A_CustomMissile("TerminatorExplosiveTracer",56,37,frandom(-5,5),CMF_OFFSETPITCH,frandom(-2,2))
	JRG2 K 3 A_CustomMissile("TerminatorExplosiveTracer",56,-37,frandom(-5,5),CMF_OFFSETPITCH,frandom(-2,2))
	TNT1 A 0 A_FaceTarget
	TNT1 A 0 A_PlaySound("sentient/fire")
	JRG2 A 0 A_CustomMissile("TerminatorExplosiveTracer",56,37,frandom(-5,5),CMF_OFFSETPITCH,frandom(-2,2))
	JRG2 L 3 A_CustomMissile("TerminatorExplosiveTracer",56,-37,frandom(-5,5),CMF_OFFSETPITCH,frandom(-2,2))
	TNT1 A 0 A_FaceTarget
	TNT1 A 0 A_PlaySound("sentient/fire")
	JRG2 A 0 A_CustomMissile("TerminatorExplosiveTracer",56,37,frandom(-5,5),CMF_OFFSETPITCH,frandom(-2,2))
	JRG2 M 3 A_CustomMissile("TerminatorExplosiveTracer",56,-37,frandom(-5,5),CMF_OFFSETPITCH,frandom(-2,2))
	TNT1 A 0 A_FaceTarget
	TNT1 A 0 A_PlaySound("sentient/fire")
	JRG2 A 0 A_CustomMissile("TerminatorExplosiveTracer",56,37,frandom(-5,5),CMF_OFFSETPITCH,frandom(-2,2))
	JRG2 N 3 A_CustomMissile("TerminatorExplosiveTracer",56,-37,frandom(-5,5),CMF_OFFSETPITCH,frandom(-2,2))
	JRG2 I 0 A_MonsterRefire(128,"Pause")
	Goto ExplosiveMinigun+10
  RapidRockets:
	JRG2 A 0 A_PlaySound("Makron/Attack1",5)
	JRG2 ABCDEFGH 4 A_FaceTarget
	JRG2 I 0 A_PlaySound("Makron/Attack3",5,1.0,1)
	TNT1 A 0 A_FaceTarget
	TNT1 A 0 A_PlaySound("Weapons/GrenadeFire",6,0.7)
	TNT1 A 0 A_PlaySound("MiniRocketFire",7,1.0,0)
	JRG2 A 0 A_CustomMissile("CyberLordRocket",56,37,frandom(-3,3),CMF_OFFSETPITCH,frandom(-2,2))
	JRG2 I 5 A_CustomMissile("CyberLordRocket",56,-37,frandom(-3,3),CMF_OFFSETPITCH,frandom(-2,2))
	TNT1 A 0 A_FaceTarget
	TNT1 A 0 A_PlaySound("Weapons/GrenadeFire",6,0.7)
	TNT1 A 0 A_PlaySound("MiniRocketFire",7,1.0,0)
	JRG2 A 0 A_CustomMissile("CyberLordRocket",56,37,frandom(-3,3),CMF_OFFSETPITCH,frandom(-2,2))
	JRG2 J 5 A_CustomMissile("CyberLordRocket",56,-37,frandom(-3,3),CMF_OFFSETPITCH,frandom(-2,2))
	TNT1 A 0 A_FaceTarget
	TNT1 A 0 A_PlaySound("Weapons/GrenadeFire",6,0.7)
	TNT1 A 0 A_PlaySound("MiniRocketFire",7,1.0,0)
	JRG2 A 0 A_CustomMissile("CyberLordRocket",56,37,frandom(-3,3),CMF_OFFSETPITCH,frandom(-2,2))
	JRG2 K 5 A_CustomMissile("CyberLordRocket",56,-37,frandom(-3,3),CMF_OFFSETPITCH,frandom(-2,2))
	TNT1 A 0 A_FaceTarget
	TNT1 A 0 A_PlaySound("Weapons/GrenadeFire",6,0.7)
	TNT1 A 0 A_PlaySound("MiniRocketFire",7,1.0,0)
	JRG2 A 0 A_CustomMissile("CyberLordRocket",56,37,frandom(-3,3),CMF_OFFSETPITCH,frandom(-2,2))
	JRG2 L 5 A_CustomMissile("CyberLordRocket",56,-37,frandom(-3,3),CMF_OFFSETPITCH,frandom(-2,2))
	TNT1 A 0 A_FaceTarget
	TNT1 A 0 A_PlaySound("Weapons/GrenadeFire",6,0.7)
	TNT1 A 0 A_PlaySound("MiniRocketFire",7,1.0,0)
	JRG2 A 0 A_CustomMissile("CyberLordRocket",56,37,frandom(-3,3),CMF_OFFSETPITCH,frandom(-2,2))
	JRG2 M 5 A_CustomMissile("CyberLordRocket",56,-37,frandom(-3,3),CMF_OFFSETPITCH,frandom(-2,2))
	TNT1 A 0 A_FaceTarget
	TNT1 A 0 A_PlaySound("Weapons/GrenadeFire",6,0.7)
	TNT1 A 0 A_PlaySound("MiniRocketFire",7,1.0,0)
	JRG2 A 0 A_CustomMissile("CyberLordRocket",56,37,frandom(-3,3),CMF_OFFSETPITCH,frandom(-2,2))
	JRG2 N 5 A_CustomMissile("CyberLordRocket",56,-37,frandom(-3,3),CMF_OFFSETPITCH,frandom(-2,2))
	JRG2 I 0 A_MonsterRefire(128,"Pause")
	Goto RapidRockets+10
  BFG10k:
	JRG2 A 0 A_PlaySound("Makron/Attack1",5)
	TNT1 A 0 A_PlaySound("weapons/charge15k")
	JRG2 ABCDEFGH 4 A_FaceTarget
	JRG2 I 0 A_PlaySound("Makron/Attack3",5,1.0,1)
	TNT1 A 0 A_FaceTarget
	TNT1 A 0 A_PlaySound("weapons/bfg15kfire")
	JRG2 A 0 A_CustomMissile("Cardinal10K",56,37,frandom(-8,8),CMF_OFFSETPITCH,frandom(-1.5,1.5))
	JRG2 I 6 A_CustomMissile("Cardinal10K",56,-37,frandom(-8,8),CMF_OFFSETPITCH,frandom(-1.5,1.5))
	TNT1 A 0 A_FaceTarget
	TNT1 A 0 A_PlaySound("weapons/bfg15kfire")
	JRG2 A 0 A_CustomMissile("Cardinal10K",56,37,frandom(-8,8),CMF_OFFSETPITCH,frandom(-1.5,1.5))
	JRG2 J 6 A_CustomMissile("Cardinal10K",56,-37,frandom(-8,8),CMF_OFFSETPITCH,frandom(-1.5,1.5))
	TNT1 A 0 A_FaceTarget
	TNT1 A 0 A_PlaySound("weapons/bfg15kfire")
	JRG2 A 0 A_CustomMissile("Cardinal10K",56,37,frandom(-8,8),CMF_OFFSETPITCH,frandom(-1.5,1.5))
	JRG2 K 6 A_CustomMissile("Cardinal10K",56,-37,frandom(-8,8),CMF_OFFSETPITCH,frandom(-1.5,1.5))
	TNT1 A 0 A_FaceTarget
	TNT1 A 0 A_PlaySound("weapons/bfg15kfire")
	JRG2 A 0 A_CustomMissile("Cardinal10K",56,37,frandom(-8,8),CMF_OFFSETPITCH,frandom(-1.5,1.5))
	JRG2 L 6 A_CustomMissile("Cardinal10K",56,-37,frandom(-8,8),CMF_OFFSETPITCH,frandom(-1.5,1.5))
	TNT1 A 0 A_FaceTarget
	TNT1 A 0 A_PlaySound("weapons/bfg15kfire")
	JRG2 A 0 A_CustomMissile("Cardinal10K",56,37,frandom(-8,8),CMF_OFFSETPITCH,frandom(-1.5,1.5))
	JRG2 M 6 A_CustomMissile("Cardinal10K",56,-37,frandom(-8,8),CMF_OFFSETPITCH,frandom(-1.5,1.5))
	TNT1 A 0 A_FaceTarget
	TNT1 A 0 A_PlaySound("weapons/bfg15kfire")
	JRG2 A 0 A_CustomMissile("Cardinal10K",56,37,frandom(-8,8),CMF_OFFSETPITCH,frandom(-1.5,1.5))
	JRG2 N 6 A_CustomMissile("Cardinal10K",56,-37,frandom(-8,8),CMF_OFFSETPITCH,frandom(-1.5,1.5))
	JRG2 I 0 A_MonsterRefire(128,"Pause")
	Goto BFG10k+11
  Pause:
	TNT1 A 0 A_PlaySound("Makron/Attack5",5)
	JRG2 OPQR 6 A_FaceTarget
	Goto See
  DTBFG:
	TNT1 A 0 A_PlaySound("Makron/Attack2",0)
	TNT1 A 0 A_PlaySound("Cardinal/9k")
	JRG3 ABCDE 6 A_FaceTarget
	JRG3 F 0 A_PlayWeaponSound("Weapons/BFG10KShot")
	JRG3 F 4 A_CustomMissile("CardinalDTBFG10KBall",85,-5)
	JRG3 GHIJKLM 3 A_FaceTarget
	Goto See
  Pain:
	"----" A 0 A_StopSound(5)
	"----" A 0 A_ChangeFlag(NOPAIN,1)
	"----" A 0 A_Jump(256,"Pain1","Pain2","Pain3")
  Pain1:
	"----" A 4 A_Pain
	JRG4 AB 9
	Goto See
  Pain2:
	"----" A 4 A_Pain
	JRG3 NOP 6
	Goto See
  Pain3:
	"----" A 0 A_StopSound(5)
	"----" A 0 A_ChangeFlag(NOPAIN,1)
	"----" A 4 A_PlaySound("Makron/Pain3",CHAN_VOICE)
	JRG4 "ABCDEFGHIJKLMNOPQRSTUVWXYZ\" 5
	Goto DTBFG
  Pain.BFGSplash:
  Pain.DTRailgun:
	"----" A 0 A_StopSound(5)
	"----" A 0 A_ChangeFlag(NOPAIN,1)
	"----" A 4 A_PlaySound("Makron/Pain3",CHAN_VOICE)
	JRG4 "ABCDEFGHIJKLMNOPQRSTUVWXYZ\" 5
	Goto See
  Death:
	TNT1 A 0 A_StopSound(5)
	TNT1 A 0 A_SetShootable
	TNT1 A 0 A_Scream
	JRG5 "ABCDEFGHIJKLMNOPQRSTUVWXYZ\[]" 4
	JRG6 ABCDEFGHIJKLMNOPQ 5
	JRG6 R 6 A_Fall
	JRG6 S 6 A_PlaySound("Makron/Deathb")
	JRG6 T 4 A_SetSolid
	JRG6 U 0 A_BossDeath
	TNT1 A 0 A_GiveInventory(Cell)
	JRG6 UUUUUUUU 6 A_CustomMissile("Kaboom", random(10,50), random(30,-30), random(0,360), 2, random(0,360))
	JRG6 UUUUUUUUUUUUU 3 A_CustomMissile("Kaboom", random(10,50), random(30,-30), random(0,360), 2, random(0,360))
    TNT1 AAAAAAAAAA 0 A_SpawnItemEx("GibbedGenerator",Random(10,-10),Random(10,-10),Random(20,60),0,0,0,0,128,0)
	TNT1 AAAAAAAAAAA 0 A_CustomMissile("BigRedBloodCloud", random(10,80), 0, random(0,360), 2, random(0,360))
	TNT1 AAAAAAAAAAAA 0 A_CustomMissile("SmokeFX3", random(10,60), random(30,-30), random(0,360), 2, random(0,360))	
	TNT1 AAAAAAA 0 A_CustomMissile("Kaboom", random(10,60), random(30,-30), random(0,360), 2, random(0,360))
	TNT1 A 0 A_UnSetSolid
	TNT1 A 0 A_UnSetShootable
	TNT1 A 0 A_XScream
	TNT1 A 0 A_SpawnItemEx("Makron",0,0,0,0,0,5,0,SXF_TRANSFERPOINTERS|SXF_SETMASTER|SXF_NOCHECKPOSITION)
	JRG6 U 5
	TNT1 A 100
	Stop
  }
}