ACTOR Missrocket
{
	Radius 12
	HEight 8
	Damage 30
	Speed 55
	projectile
	+EXPLODEONWATER
	+RANDOMIZE
	+DEHEXPLOSION
	+ROCKETTRAIL
	+DONTHARMSPECIES
	+DONTHURTSPECIES
	+THRUSPECIES
	Species "Player"
	damagetype "Missile"
	SeeSound "weapons/rocklf"
	deathsound "weapons/pulsegrenadeblow"
	obituary "%o rode %k's missile."
	States
	{
	Spawn:
		MISL AAAA 0 A_SpawnItemEx("MissileSmoke",0,random(-5,5)*0.1,random(-5,5)*0.1,random(-15,0)*0.1,random(-10,10)*0.1,random(-10,10)*0.1,0,0,64)
		MISL A 0 A_SpawnItemEx("MissileTrail4",0,0,0,velx*0.05,vely*0.05,velz*0.05,0,SXF_ABSOLUTEMOMENTUM)
		MISL A 0 A_SpawnItemEx("MissileTrail3",0,0,0,velx*0.15,vely*0.15,velz*0.15,0,SXF_ABSOLUTEMOMENTUM)
		MISL A 0 A_SpawnItemEx("MissileTrail2",0,0,0,velx*0.25,vely*0.25,velz*0.25,0,SXF_ABSOLUTEMOMENTUM)
		MISL A 1 Bright A_SpawnItemEx("MissileTrail",0,0,0,velx*0.35,vely*0.35,velz*0.35,0,SXF_ABSOLUTEMOMENTUM)
		Loop
	Death:
		TNT1 A 1 Bright A_Explode
		MEXP ABCDEF 2 Bright
		stop
	}
}

Actor MLauncher : AliensWeapon replaces rocketlauncher
{
  Weapon.SelectionOrder 100
  Obituary "%k Learned what a missile launcher is."
  Inventory.PickupMessage "Picked up a M-6B Missile Launcher."
  tag "Miss Launcher"
  +weapon.noalert
  +weapon.NOAUTOFIRE
  Weapon.AmmoType1 "RocketAmmo"
  Weapon.AmmoUse1 1
  Weapon.AmmoGive1 5
  Weapon.SlotNumber 5
  states
  {
	Spawn:
		LAUN A -1
		Stop
	  Ready:
		TNT1 A 0 A_JumpIfInventory("KickItem", 1, "PreKick")
		TNT1 A 0 A_JumpIfInventory("TrackerToggle", 1, "PreTrack")
		MISG A 1 A_WeaponReady
		Loop
	Select:
		MISG A 1 A_raise
		Wait
	Deselect:
		MISG A 1 A_lower
		Wait
	  PreKick:
		MISG A 1 offset(-8, 40)
		MISG A 1 offset(-24, 56)
		MISG A 1 offset(-40, 72)
		MISG A 1 offset(-50, 88)
		MISG A 1 offset(-66, 104)
		goto Kick
	  PostKick:
		MISG A 1 offset(-66, 104)
		MISG A 1 offset(-50, 88)
		MISG A 1 offset(-40, 72)
		MISG A 1 offset(-24, 56)
		MISG A 1 offset(-8, 40)
		goto ready
	  Fire:
		TNT1 A 0 A_JumpIfInventory("RadarActive", 1, "TrackerLower")
		TNT1 A 0 A_PlaySound("weapon/missfire", CHAN_WEAPON)
		MISF A 3 Bright
		TNT1 A 0 A_FireCustomMissile("MissRocket")
		MISF BCDE 2 Bright
		MISG BCDEA 3
		MISG A 0 A_ReFire
		Goto Ready
	  PreTrack:
		MISG A 1 offset(-8, 40)
		MISG A 1 offset(-24, 56)
		MISG A 1 offset(-40, 72)
		MISG A 1 offset(-50, 88)
		MISG A 1 offset(-66, 104)
		goto TrackRaise
	PostTrack:
		MISG A 1 offset(-66, 104)
		MISG A 1 offset(-50, 88)
		MISG A 1 offset(-40, 72)
		MISG A 1 offset(-24, 56)
		MISG A 1 offset(-8, 40)
		goto ready
	  }
	}