actor "Gas Can (No Kill)" : Weapon replaces "Gas Can"
{
  inventory.pickupmessage "You picked up a Can of Gas!"
  //weapon.displayname "Gas Can"
  weapon.selectionorder 9999
  weapon.kickback 300
  weapon.ammotype "GasolineAmmo"
  weapon.ammouse 1
  weapon.ammogive 700
  DamageType GasFire
  Inventory.PickupSound "misc/i_pkup"
  +NOALERT
  +WEAPON.WIMPY_WEAPON
  +WEAPON.NOAUTOAIM
  States
  {
  Select:
  GASC A 1 A_Raise
  loop  
  Deselect:
  GASC A 1 A_Lower
  loop  
  Ready:
  GASC A 1 A_WeaponReady
  loop  
  Fire:
  GASC A 6
  GASC B 2  
  Hold:
  GASC A 0 A_PlaySound("Gasoline")
  TNT1 A 0 A_FireCustomMissile("Gasoline2",1, 1, 3, 10)
  TNT1 AAAA 0 A_FireCustomMissile("Gasoline2",Random(5,-5), 0, 3, 10)  
  TNT1 A 0 A_Jump(128,3)
  GASC C 5
  GASC B 5 A_Refire
  goto Ready
  GASC D 5
  GASC B 5 A_Refire
  goto Ready
  AltFire:
  GASC A 1 OffSet(4,53)
  GASC A 1 OffSet(12,70)
  GASC A 1 OffSet(20,91)
  GASC A 1 OffSet(30,128)
  MATC A 1 OffSet(1,73)
  MATC A 1 OffSet(1,53)
  MATC A 1 OffSet(1,33)
  MATC B 1 OffSet(1,33)
  MATC B 1 OffSet(2,36)
  MATC B 1 OffSet(3,40)
  MATC C 1 OffSet(14,53)
  MATC C 1 OffSet(7,45) A_PlaySound("DSMATCH")
  MATC C 1 OffSet(5,40)
  MATC C 1 OffSet(1,33)
  MATC D 0 A_FireCustomMissile("Match2",Random(5,-5), 0, -1, 0)
  MATC D 1 OffSet(14,53)
  MATC D 1 OffSet(7,45)
  MATC D 1 OffSet(-14,40)
  MATC D 1 OffSet(-20,33)
  MATC D 1 OffSet(-12,33)
  MATC D 1 OffSet(-2,50)
  MATC D 1 OffSet(1,91)
  MATC D 1 OffSet(1,128)
  GASC A 1 OffSet(30,128)
  GASC A 1 OffSet(20,91)
  GASC A 1 OffSet(12,70)
  GASC A 1 OffSet(4,53)
  goto Ready
  Spawn:
  GASC E -1
  Stop  
  }
}

//Actor GasolineAmmo : Ammo
//{
//   inventory.maxamount 700
//   ammo.backpackamount 800
//   ammo.backpackmaxamount 400
//   -inventory.invbar
//}

actor Gasoline2 replaces Gasoline
{
Radius 1
Height 1
Damage 0
Speed 12
Scale 0.6
DamageType GasFire
RenderStyle Translucent
Alpha 0.2
PROJECTILE
-SOLID
-NOGRAVITY
+DONTSPLASH
+WINDTHRUST
+SHOOTABLE
+NOTARGET
+RIPPER
+PAINLESS
+BLOODLESSIMPACT
+NODAMAGETHRUST
Translation "176:191=112:127"
states
{
spawn:
BLUD C 4
Loop
Death:
TNT1 A 1 A_SpawnItemEx("GasPuddle2",0,0,0,0,0,0,0,SXF_SETMASTER)
stop
}
}

actor GasPuddle2 replaces GasPuddle
{
  Radius 8
  Height 4
  Damage 0
  Health 1
  Mass 9999999
 Speed 0
Translation "176:191=112:127"
//Translation "176:191=96:111"
Scale 0.75
RenderStyle Translucent
  Alpha 0.1
  DamageType GasFire
  obituary "%o was torched by %k's flames."
  //+ISMONSTER
  -SOLID
  +SHOOTABLE
  +NOBLOOD
  +NODAMAGETHRUST
  +NOEXTREMEDEATH
  +FORCERADIUSDMG
  +FLOORHUGGER
  States
  {
  Spawn:
  BLUD D 0
  BLUD D 0 A_Jump(128,"Spawn2")
  BLUD D 1800
  stop
  Spawn2:
  BLUD E 1800
  stop
  Death:
  BLUD D 2 A_SetTranslucent(0.07, 1)
  BLUD D 2 A_SetTranslucent(0.05, 1)
  TNT1 A 0 A_PlaySound("vile/firestrt")
  //TNT1 A 3 //A_Explode(8, 38, XF_HURTSOURCE)
  TNT1 A 0 //A_SpawnItemEx("FireExplosion",0,0,0,CMF_TRACKOWNER)
  TNT1 A 0 A_Jump(8,2)
  TNT1 A 1 A_SpawnItemEx("IgnitedSurfacen2",0,0,0,0,0,0,0,CMF_TRACKOWNER)
  stop
  TNT1 A 1 A_SpawnItemEx("IgnitedSurfaceNew",0,0,0,0,0,0,0,CMF_TRACKOWNER)
  stop
  }
}

actor IgnitedSurfaceNew replaces IgnitedSurface
{
 Height 5
 Radius 2
 Health 1
 Gravity 10
 Mass 9999999
 BounceFactor 0.0
 Speed 0
 obituary "%o got caught in %k's remaining flames."
 RenderStyle Add
 Alpha 0.3
 ReactionTime 12
 DamageType GasFire
 //PROJECTILE
 -SOLID
 +NODAMAGETHRUST
 +NOEXTREMEDEATH
 +BLOODLESSIMPACT
 +DONTSPLASH
 +NOEXPLODEFLOOR
 //+FLOORHUGGER
 ActiveSound "vile/firecrkl"
 States
 {
 Spawn:
 FTHR A 0
 FTHR A 0 A_Jump(128,"Spawn2")
 Spawn0:
 FTHR A 0 A_CountDown
 FTHR A 0 A_LoopActiveSound
 FTHR ABCDEFGHIJKLMN 2 BRIGHT A_Explode(3,18,1)
 loop
 Spawn2:
 FTHR A 0 A_CountDown
 FTHR A 0 A_LoopActiveSound
 FTHR OPQRSTUVWXYZ 2 BRIGHT A_Explode(3,18,1)
 FTHR "\[" 2 BRIGHT A_Explode(3, 18, 1)
 loop
 Death: 
 FTHR A 0 A_Jump(128,"Death2")
 Death1:
 FTH2 ABCDEFGHIJKLM 2 BRIGHT A_FadeOut(0.01)
 Stop
 Death2:
 FTH2 NOPQRSTUVWXYZ 2 BRIGHT A_FadeOut(0.01)
 Stop
 }
}

actor Match2 replaces Match
{
  Radius 1
  Height 1
  Speed 12
  Damage 10
  Projectile
  Mass 1
  -NOGRAVITY
  +CORPSE
  +NOEXTREMEDEATH
  +BLOODLESSIMPACT
  +NODAMAGETHRUST
  ReactionTime 100
  Obituary "%o was striked out by %k."
  DamageType GasFire
  RenderStyle Add
  Scale 0.2
  States
  {
  Spawn:
    MAT2 EF 1 Bright A_SpawnItemEx("MatchLiteNew")
    MAT2 E 0 A_Countdown
    loop
  Death:
    MAT2 E 0 A_Jump(128,"Death2")
    MAT2 E 0 Bright A_SpawnItemEx("MatchLiteNew2")
    MAT2 E 1 Bright A_Jump(128,2)
    MAT2 E 4 Bright A_Explode(8,8)
    MAT2 E 1 Bright A_Jump(128,2)
    MAT2 E 4 Bright A_Explode(8,8)
    MAT2 E 1 Bright A_Jump(128,2)
    MAT2 E 4 Bright A_Explode(8,8)
    MAT2 E 1 Bright A_Jump(128,2)
    MAT2 E 4 Bright A_Explode(8,8)
    MAT2 E 1 Bright A_Jump(128,2)
    MAT2 E 4 Bright A_Explode(8,8)
    MAT2 E 1 Bright A_Jump(128,2)
    MAT2 E 4 Bright A_Explode(8,8)
    MAT2 E 5000
    Stop
  Death2:
    MAT2 F 0 Bright A_SpawnItemEx("MatchLiteNew2")
    MAT2 F 0 A_Explode(8,8)
    MAT2 F 1 Bright A_Jump(128,2)
    MAT2 F 4 Bright A_Explode(8,8)
    MAT2 F 1 Bright A_Jump(128,2)
    MAT2 F 4 Bright A_Explode(8,8)
    MAT2 F 1 Bright A_Jump(128,2)
    MAT2 F 4 Bright A_Explode(8,8)
    MAT2 F 1 Bright A_Jump(128,2)
    MAT2 F 4 Bright A_Explode(8,8)
    MAT2 F 1 Bright A_Jump(128,2)
    MAT2 F 4 Bright A_Explode(8,8)
    MAT2 F 1 Bright A_Jump(128,2)
    MAT2 F 4 Bright A_Explode(8,8)
    MAT2 F 5000
    Stop
  }
}

actor IgnitedSurfacen2 replaces IgniteedSurfacen
{ 
  //PROJECTILE
  //+FLOORHUGGER
  gravity 10
  Mass 9999999
  Speed 0
  DamageType GasFire
  states
  {
  Spawn: 
    TFIR A 0
    TFIR A 0 A_Jump(192,2,3,4)
    TFIR A 0 A_SpawnItemEx("IgnitedSurfaceNew1",0,0,0,0,0,0,0,CMF_TRACKOWNER)
    goto Death
    TFIR A 0 A_SpawnItemEx("IgnitedSurfaceNew2",0,0,0,0,0,0,0,CMF_TRACKOWNER)
    goto Death
    TFIR A 0 A_SpawnItemEx("IgnitedSurfaceNew3",0,0,0,0,0,0,0,CMF_TRACKOWNER)
    goto Death
    TFIR A 0 A_SpawnItemEx("IgnitedSurfaceNew4",0,0,0,0,0,0,0,CMF_TRACKOWNER)
	goto Death
  Death:
    TNT1 A 5
    Stop
}
}

actor IgnitedSurfaceNew1 : IgnitedSurfaceNew
{
 XScale 0.6
 YScale 0.8
 ActiveSound ""
}

actor IgnitedSurfaceNew2 : IgnitedSurfaceNew
{
 XScale 0.6
 YScale 0.4
 ActiveSound ""
}

actor IgnitedSurfaceNew3 : IgnitedSurfaceNew
{
 XScale 0.6
 YScale 0.8
 ActiveSound ""
}

actor IgnitedSurfaceNew4 : IgnitedSurfaceNew
{
 XScale 0.8
 YScale 0.5
 ActiveSound ""
}

actor MatchLiteNew replaces MatchLite
{ 
  +NOINTERACTION
  +CLIENTSIDEONLY
  RenderStyle Add
  DamageType GasFire
  Scale 0.3
  States
  {
  Spawn:
    MAT2 A 0
    MAT2 A 0 A_Jump(192,"Spawn2","Spawn3","Spawn4")
    MAT2 A 1 Bright
    Stop
  Spawn2:
    MAT2 B 1 Bright
    Stop
  Spawn3:
    MAT2 C 1 Bright
    Stop
  Spawn4:
    MAT2 D 1 Bright
    Stop
  }
}

actor MatchLiteNew2 : MatchLite replaces Matchlite2
{
  States
  {
  Spawn:
    MAT2 A 0
    MAT2 A 0 A_Jump(128,3)
    MAT2 ABCD 4 Bright A_FadeOut(.02)
    loop
  }
}

actor FireExplosion2 : MatchLite replaces FireExplosion
{ 
  Scale 1
  Speed 0
  Mass 9999999999
  DamageType GasFire
  States
  {
  Spawn:
    TNT1 A 0
    TNT1 A 0 A_PlaySound("vile/firestrt")
    TNT1 A 0 A_Jump(128,"Spawn2")
    BDT2 ABCDEFGHIJKLM 4 Bright
    BDT4 ABC 4 Bright
    BDT4 DEFG 4 Bright A_FadeOut(.2)
    Stop
  Spawn2:
    BDT2 NOPQRSTUVWXYZ 4 Bright
    BDT4 HIJ 4 Bright
    BDT4 KLMN 4 Bright A_FadeOut(.2)
    Stop
  }
} 

ACTOR GasPickup : Custominventory 25375
{
   Scale 0.8
   inventory.pickupmessage "You picked up a Can of Gas!"
   inventory.pickupsound "misc/i_pkup"
   +COUNTITEM
   States
   {
   Spawn:
      GASC E -1
      stop
   Pickup:
      TNT1 A 0 A_GiveInventory ("Gas Can (No Kill)")
	  stop
   }
}

actor DoomCenterPlayer2 : DoomPlayer replaces DoomCenterPlayer
{
	Player.displayname "DoomCenter Player"
	Player.SoundClass "DoomCenterPlayer"
	player.startitem "HandGun" 1
	player.startitem "Punch"
	player.startitem "Clip", 50
	DamageFactor "GasFire", 0.0
	//player.viewheight	48
	//player.attackzoffset 20
	//Player.AttackZOffset 8
	//Player.ViewHeight 41
	// Override Strife properties with Doom properties to simulate DoomPlayer motions
	Radius 16
	Player.ColorRange 112, 127
	MaxStepHeight 24
	Player.RunHealth 5
	Player.CrouchSprite "PLYC"
	DamageFactor "BowlingPin", 0.0
	Scale 1
    states
    {
	JetSee:
	 JETS A 4 A_CheckFloor("Spawn")
	 JETS A 0 A_SpawnItemEx ("JetpackFire", -12, 5, 28, -2, 0, -8, 0, 128)
     Loop
	JetMissile:
     JETS B 4 BRIGHT A_SpawnItemEx ("JetpackFire", -12, 5, 28, -2, 0, -8, 0, 128)
     JETS B 4 BRIGHT A_SpawnItemEx ("JetpackFire", -12, 5, 28, -2, 0, -8, 0, 128)
     JETS B 4 BRIGHT A_SpawnItemEx ("JetpackFire", -12, 5, 28, -2, 0, -8, 0, 128)
     Goto JetSee
    Jump:
	 PLAY A 1
    Jump2:
	 PLAY B 4 A_CheckFloor("Spawn")
     PLAY A 0 A_JumpIf(waterlevel >= 2, "Swim")
     PLAY A 0 A_JumpIfInventory ("PowerFlight",1,"JetSee")
	 Loop
    Spawn:
     PLAY A 0 A_JumpIf(waterlevel >= 2, "Swim")
     PLAY A 5
     PLAY A 0 A_CheckFloor("Spawn")
	See:
     PLAY A 0 A_CheckFloor(1)
     Goto Jump
     PLAY A 4
     PLAY B 4
     PLAY B 0 A_CheckFloor(1)
     Goto Jump
     PLAY C 4
     PLAY D 4
     Goto Spawn
	Swim:
     PLAY A 0 A_TakeInventory("KatanaToken",999)
	Swim1:
     PLAY BCDA 4
     PLAY A 0 A_JumpIf(waterlevel <= 1, "Spawn")
     Loop
	Melee.Swing:
    Melee:
     PLAY A 0 A_JumpIfInventory ("PowerFlight",1,"JetMissile")
     PLAY F 6 BRIGHT
    Missile:
     PLAY A 0 A_JumpIfInventory ("PowerFlight",1,"JetMissile")
     PLAY E 12
     Goto Spawn
    Pain.KameCharge:
     PLAY G 20
    Goto Spawn
    Pain:
     PLAY G 4
     PLAY G 4 A_Pain
    Goto Spawn
    Pain.Stomp:
	 PLAY G 1// ACS_ExecuteAlways(403,0)
	goto Pain
    Death.Shinken:
	 PLAY G 30 A_PlaySound("DSFNSTWT")
	 PLAY GGGGG 4 A_Pain
	 goto XDeath
	Melee.Wahtaaa:
     PLAY CECEC 1
     PLAY E 20
    Goto Spawn
    Death.Gib:
    XDeath:
     PLAY O 0 A_PlayerSkinCheck("AltSkinXDeath")
	XDeath1:
     PLAY O 5
     //Goto Death.Sword
	 PLAY O 0 A_SpawnItem("NashGore_GibGenerator",0,0,0,0)
     PLAY P 5 A_PlaySound("misc/gibbed")
     //PLAY P 5 A_XScream
     PLAY Q 5 A_NoBlocking
     PLAY RSTUV 5
     PLAY W -1
     Stop
    AltSkinDeath:
     PLAY H 6
     PLAY I 6 A_PlayerScream
     PLAY JK 6
     PLAY L 6 A_NoBlocking
     PLAY MNO 6
     PLAY P -1
     Stop
    AltSkinXDeath:
     PLAY Q 5 A_PlayerScream
     PLAY R 0 A_NoBlocking
     PLAY R 5 A_SkullPop
     PLAY STUVWX 5
     PLAY Y -1
     Stop
	Death.Sword:
	 PLAY O 0 A_PlayerSkinCheck("AltSkinDeath")
     PLAY O 0 A_XScream
     PLAY O 5 A_NoBlocking
     PLAY O 0 A_SpawnItemEx("PlayerBottom",0,0,8,0,0,0,0,SXF_NOCHECKPOSITION|SXF_CLIENTSIDE|SXF_TRANSFERTRANSLATION)
     PLAY AAAAAAAAA 0 A_SpawnItemEx("FlyingBlood",0,0,24,random(2,4),random(2,4),random(6,14),random(0,360),SXF_NOCHECKPOSITION)
     PLAY O 0 ThrustThingZ (0, 50, 0, 1)
     PLAY O 0 ThrustThing((angle*256)/360, 4, 0, 0)
     PLYA A 0 A_Jump(128,"Sword2")
     PLYA ABCDABCDABCDABCD 5
     PLYA ABCD 6
     PLYA ABCD 8
     PLYA E -1
     Stop
    Sword2:
     PLYA KLMNKLMNKLMNKLMN 5
     PLYA KLMN 6
     PLYA KLMN 8
     PLYA O -1
     Stop
    Death.Stomp:
     CRS1 A 0 ACS_ExecuteAlways(403,0)
    Death.KShell:
     CRS1 A 0 A_Fall
	 CRS1 A 0 A_SpawnItem("NashGore_GibGenerator",0,0,0,0)
     CRS1 A 0 A_GiveToTarget("Money", 40)
     CRS1 A 0 A_SpawnItemEx("StompPoints40",0,0,40,0,0,1,0,SXF_NOCHECKPOSITION)
	Crush:
	 CRS1 A 10
	 CRS1 A -1
	 stop
    Disintegrate:
     PLAY Z 10 A_SpawnItem("VaporisedBody",0,0,0,0)
    Remove:
	 PLAY Z 10 A_Fall
     PLAY Z 10 A_CheckPlayerDone
     Wait
    Death:
     PLAY H 0 A_PlayerSkinCheck("AltSkinDeath")
     PLAY H 0 A_PlayerScream
     PLAY H 0 A_NoBlocking
     PLAY H 0 A_Jump(256,"Death1","BTDeath","MGDeath","SGDeath","STDeath","SMDeath","BedDeath","PLDeath")
    Death1:
     PLAY H 10
     PLAY I 10
     PLAY J 10
     PLAY KLM 10
     PLAY N -1
     Stop
    BTDeath:
     PLAY H 0 A_Jump(128,"BTDeath1")
     PYD2 ABCDEF 10
     PYD2 G -1
     Stop
    BTDeath1:
     PYD2 HIJKLM 10
     PYD2 N -1
     Stop
    MGDeath:
     PLAY H 0 A_Jump(128,"MGDeath1")
     PYD3 ABCDEFGH 10
     PYD3 I -1
     Stop
    MGDeath1:
     PYD3 JKLMNOPQ 10
     PYD3 R -1
     Stop
    SGDeath:
     PLAY H 0 A_Jump(128,"SGDeath1")
     PYD4 ABCD 10
     PYD4 E -1
     Stop
    SGDeath1:
     PYD4 FGHI 10
     PYD4 J -1
     Stop
    Death.Sniper:
     PLAY H 0 A_PlayerScream
     PLAY H 0 A_NoBlocking
    STDeath:
     PLAY H 0 A_Jump(128,"STDeath1")
     PYD5 ABCDEFGH 10
     PYD5 I -1
     Stop
    STDeath1:
     PYD5 JKLMNOPQ 10
     PYD5 R -1
     Stop
    Death.Arrow:
     PLAY H 0 A_PlayerScream
     PLAY H 0 A_NoBlocking
    CBDeath:
     PLAY H 0 A_Jump(128,"CBDeath1")
     PYD6 ABCDE 10
     PYD6 F -1
     Stop
    CBDeath1:
     PYD6 GHIJK 10
     PYD6 L -1
     Stop
    Death.Smoke:
     PLAY H 0 A_PlayerScream
     PLAY H 0 A_NoBlocking
    SMDeath:
     PLAY H 0 A_Jump(170,"SMDeath1","PLDeath")
     PYD7 ABCD 10
     PYD7 E -1
     Stop
    SMDeath1:
     PYD7 FGHI 10
     PYD7 J -1
     Stop
    PLDeath:
     PLAY H 0 A_Jump(128,"PLDeath1")
     PYD9 ABCD 10
     PYD3 E -1
     Stop
    PLDeath1:
     PYD9 EFGH 10
     PYD3 N -1
     Stop
    Death.Sleep:
     PLAY H 0 A_PlayerScream
     PLAY H 0 A_NoBlocking
    BedDeath:
     PLAY H 0 A_Jump(128,"BedDeath1")
     PYD8 ABCD 10
     PYD8 E -1
     Stop
    BedDeath1:
     PYD8 FGHI 10
     PYD8 J -1
     Stop
    Sit:
     PLYS Z 10
     PLYS Z 0 A_CheckFloor("Sit")
     Goto Spawn
    }
}