//Phone

ACTOR StupidRatPhone : Weapon
{
	Inventory.RestrictedTo "StupidRatClass"
	Weapon.SelectionOrder 3700
	Obituary "%k got paged in"
	Inventory.Pickupmessage "$PICKUP_PISTOL_DROPPED"
	Weapon.AmmoUse 1
	Weapon.Ammotype "StupidRatPhoneAmmo" 
	+WEAPON.AMMO_OPTIONAL
	Tag "Phone"
	+weapon.noalert
	States
	{
	Reload:
		TNT1 A 0 bright ACS_NamedExecuteAlways("RatDanceState")
		TNT1 A 0 A_GiveInventory("StupidRatDancing")
		TNT1 A 0 SetPlayerProperty(0,1,PROP_FROZEN)
		TNT1 A 0 A_PlaySound("characters/stupidrat/music",7,1,1,5)
		TNT1 A 0 ACS_NamedExecuteWithResult("SetRatChasecam2",40)
		TNT1 A 0 ACS_NamedExecuteWithResult("SpookyDoiseTime")
	Dance:
		TNT1 A 0 A_WeaponReady(WRF_NOFIRE|WRF_NOSWITCH)
		SRWP D 10 bright 
		TNT1 A 0 A_jumpifinventory("reloadholding",1,"Dance")
		TNT1 A 0 SetPlayerProperty(0,0,PROP_FROZEN)
		TNT1 A 0 A_takeinventory("StupidRatDancing")
		TNT1 A 0 A_StopSound(7)
		TNT1 A 0 ACS_NamedExecuteWithResult("SetRatChasecam2",0)
		TNT1 A 0 ACS_NamedExecuteWithResult("SpookyDoiseTimeStop")
		TNT1 A 0 bright ACS_NamedExecuteAlways("RatCheeseState")
		SRWP DEFG 4 bright
		Goto Ready
	Ready: 
		TNT1 A 0 A_GiveInventory("StupidRatHoldingPhone")
		SRWP DEFG 4 bright A_WeaponReady(WRF_NOBOB|WRF_ALLOWRELOAD)
		Loop
	Deselect:
		TNT1 A 0 ACS_NamedExecuteWithResult("SetRatChasecam2",0)
		TNT1 A 0 A_StopSound(7)
	DeselectLoop:
		TNT1 A 0 A_TakeInventory("StupidRatHoldingPhone")
		TNT1 A 0 bright ACS_NamedExecuteAlways("StupidRatViewHeightReset")
		TNT1 A 0 A_Changeflag("NOPAIN",0)
		TNT1 A 0 SetPlayerProperty(0,0,PROP_FROZEN)
		TNT1 A 0 A_StopSound(6)
		SRWP A 0 A_Lower
		Loop
	Select:
		TNT1 A 0 bright ACS_NamedExecuteAlways("RatPhoneState")
	SelectLoop:
		SRWP A 0 A_Raise
		Loop
	//Firing
	Fire:
		SRWP D 4 bright A_JumpIfInventory("StupidRatPhoneAmmo",1,"ContinueFire")
		SRWP C 1 bright A_WeaponReady(WRF_NOBOB|WRF_NOFIRE)
		Goto Ready
	ContinueFire:
		TNT1 A 0 a_alertmonsters
		TNT1 A 0 A_PlaySound("characters/stupidrat/phonecall",0)
		TNT1 A 0 SetPlayerProperty(0,1,PROP_FROZEN)
		TNT1 A 0 A_Changeflag("NoPain",1)
		TNT1 A 0 bright ACS_NamedExecuteAlways("RatPhoneAttack1State")
		SRWP H 20 bright  A_ScaleVelocity(0.4)
		SRWP ji 4 bright 
		SRWP H 20 bright 
		SRWP ji 4 bright 
		SRWP H 20 bright 
		SRWP ji 4 bright 
		SRWP H 20 bright 
		SRWP ji 4 bright 
		TNT1 A 0 A_PlaySound("characters/stupidrat/phonethumbup",0)
		TNT1 A 0 A_PlaySound("characters/stupidrat/applause",0)
		SRWP kll 4 bright
		TNT1 A 0 A_takeinventory("StupidRatPhoneAmmo")
		SRWP k 50 bright A_SpawnItemEx("StupidRatPizzaSpawner",0,0,2,48)
		SRWP k 20 bright 
		TNT1 A 0 SetPlayerProperty(0,0,PROP_FROZEN)
		SRWP H 4 bright 
		TNT1 A 0 A_Changeflag("NOPAIN",0)
		TNT1 A 0 A_TakeInventory("StupidRatPhoneAmmo",1)
		TNT1 A 0 A_TakeInventory("StupidRatPhoneCooldown",0)		
		TNT1 A 0 A_PlaySound("characters/stupidrat/OKAY",0)
		Goto Ready
	}
}