//
//	ToonHUD animations
//

event Hitmarker
{

	// Team colored hitmarker
	Animate	Hitmarker	Alpha	"255"	Linear 0.0 0.0		// tcHitmarker start
	Animate	Hitmarker	Alpha	"0"		Linear 0.0 0.95 	// tcHitmarker end
	
	//# Animate Crosshair1 Alpha "255" 	Linear 0.0 0.0		// CrosshairHitmarker1 start
	//# Animate Crosshair1 Alpha "255" 	Linear 0.0 0.950 	// CrosshairHitmarker1 end
	
	//# Animate Crosshair2 Alpha "255" 	Linear 0.0 0.0		// CrosshairHitmarker2 start
	//# Animate Crosshair2 Alpha "255" 	Linear 0.0 0.950 	// CrosshairHitmarker2 end
	
	//# Animate Crosshair3 Alpha "255" 	Linear 0.0 0.0		// CrosshairHitmarker3 start
	//# Animate Crosshair3 Alpha "255" 	Linear 0.0 0.950 	// CrosshairHitmarker3 end
	
}

//===========================================

event HudHealthBonusPulse
{
	Animate	G_PlayerStatusHealthValue		FgColor		"G_OverHeal"	Linear 0.0 0.0
	Animate	PlayerStatusHealthBonusImageBG	Alpha		"150"			Linear 0.0 0.5
	Animate	PlayerStatusHealthBonusImage 	Alpha		"255"		Linear 0.0 0.2
	Animate	PlayerStatusHealthBonusImage 	Alpha		"0"			Linear 0.2 0.4
	RunEvent HudHealthBonusPulseLoop	0.4
}

event HudHealthBonusPulseStop
{
	StopEvent HudHealthBonusPulse 0.0
	StopEvent HudHealthBonusPulseLoop 0.0
	Animate	PlayerStatusHealthBonusImageBG	Alpha		"0"				Linear 0.0 0.0
	Animate	G_PlayerStatusHealthValue		FgColor		"G_HealthValue"	Linear 0.0 0.0
}

//===========================================

event HudHealthDyingPulse
{
	Animate	G_PlayerStatusHealthValue	FgColor			"G_LowHealthValue"				Linear 0.0 0.0
	Animate	PlayerStatusHealthBonusImage 	Alpha		"255"		Linear 0.0 0.2
	Animate	PlayerStatusHealthBonusImage 	Alpha		"50"		Linear 0.2 0.4
	
	RunEvent HudHealthDyingPulseLoop	0.4
}

event HudHealthDyingPulseStop
{
	Animate	G_PlayerStatusHealthValue	FgColor			"G_HealthValue"		Linear 0.0 0.0
	StopEvent HudHealthDyingPulse 0.0
	StopEvent HudHealthDyingPulseLoop 0.0
}

//===========================================

event HudLowAmmoPulse
{	
	Animate AmmoInClip 		fgcolor		"G_LowAmmo" 			Linear 0.0 0.0
	Animate AmmoInReserve 	fgcolor		"G_LowAmmo" 			Linear 0.0 0.0
	Animate AmmoNoClip 		fgcolor		"G_LowAmmo" 			Linear 0.0 0.0
	Animate AmmoInClip 		fgcolor		"G_AmmoClipValue" 		Linear 0.5 0.3
	Animate AmmoInReserve 	fgcolor		"G_AmmoReserveValue" 	Linear 0.5 0.3
	Animate AmmoNoClip 		fgcolor		"G_AmmoClipValue" 		Linear 0.5 0.3
	Animate AmmoInClip 		fgcolor		"G_LowAmmo" 			Linear 1.3 0.3
	Animate AmmoInReserve 	fgcolor		"G_LowAmmo" 			Linear 1.3 0.3
	Animate AmmoNoClip 		fgcolor		"G_LowAmmo" 			Linear 1.3 0.3
	RunEvent HudLowAmmoPulseLoop 1.6
}

event HudLowAmmoPulseStop
{
	Animate AmmoInClip 		fgcolor		"G_AmmoClipValue" 		Linear 0.0 0.0
	Animate AmmoInReserve 	fgcolor		"G_AmmoReserveValue" 	Linear 0.0 0.0
	Animate AmmoNoClip 		fgcolor		"G_AmmoClipValue" 		Linear 0.0 0.0
	StopEvent HudLowAmmoPulse 0.0
	StopEvent HudLowAmmoPulseLoop 0.0
}

//===========================================


event HudSpyDisguiseChanged
{
	// Animate PlayerStatusSpyOutlineImage		Alpha		"255"			Linear 0.0 0.2
	// Animate PlayerStatusSpyOutlineImage		Position	"c-200 c-200"	Linear 0.0 0.2
	// Animate PlayerStatusSpyOutlineImage		Size		"400 400"		Linear 0.0 0.2
	// RunEvent HudSpyDisguiseHide	0.5
}

event HudSpyDisguiseHide
{
	// Animate PlayerStatusSpyOutlineImage		Position	"140 r0"		Linear 0.0 0.2
	// Animate PlayerStatusSpyOutlineImage		Size		"0 0"			Linear 0.0 0.2
	// Animate PlayerStatusSpyOutlineImage		Alpha		"0"				Linear 0.2 0.1
}

event HudSpyDisguiseFadeIn
{
	// RunEvent HudSpyDisguiseChanged	0
	
	Animate PlayerStatusSpyImage		Alpha		"255"	Linear 0.0 0.0
	
	// Animate classmodelpanel 			xpos		"0"		Linear 0.0 0.0
	// Animate classmodelpanel 			ypos		"r200"	Linear 0.0 0.0
	// Animate PlayerStatusClassImage 	xpos		"0"		Linear 0.0 0.0
	// Animate PlayerStatusClassImage 	ypos		"r50"	Linear 0.0 0.0
}

event HudSpyDisguiseFadeOut
{
	// RunEvent HudSpyDisguiseChanged	0
	
	Animate PlayerStatusSpyImage		Alpha		"0"			Linear 0.0 0.0
	
	// Animate classmodelpanel 			xpos		"-9999"		Linear 0.0 0.0
	// Animate classmodelpanel 			ypos		"r0"		Linear 0.0 0.0
	// Animate PlayerStatusClassImage 	xpos		"-9999"		Linear 0.0 0.0
	// Animate PlayerStatusClassImage 	ypos		"r0"		Linear 0.0 0.0
}

//===========================================

event HudSnapShotReminderIn
{
	Animate ScreenshotPanel		Position	"c-83 -50"	Linear 0.0 0.001
	Animate ScreenshotPanel		Position	"c-83 -50"	Spline 0.001 0.2
	
	// Fix for lingering HUD animations
	RunEvent HudHealthDyingPulseStop 10.0
    RunEvent HudHealthBonusPulseStop 10.0
    RunEvent HudLowAmmoPulseStop 10.0
    RunEvent HudMedicChargedStop 10.0
}

event HudReplayReminderIn	// Places the replay reminder in the same place as the snapshot reminder
{
	Animate ReplayReminder		Position	"c-83 -50"	Linear 0.0 0.001
	Animate ReplayReminder		Position	"c-83 -50"	Spline 0.001 0.2
}

event HudReplayReminderIn2	// Puts the panel below the snapshot panel
{
	Animate ReplayReminder		Position	"c-83 -50"	Linear 0.0 0.001
	Animate ReplayReminder		Position	"c-83 -50"	Spline 0.001 0.2
}

event HudReplayTipIn
{
	Animate ReplayTip			Position	"10 -100"	Linear 0.0 0.001
	Animate ReplayTip			Position	"10 -100"	Spline 0.001 0.1
}

event HudReplayTipOut
{
	Animate ReplayTip			Position	"10 -100"	Linear 0.0 0.001
	Animate ReplayTip			Position	"10 -100"	Spline 0.001 0.1
}

event HudTournamentSetupPanelOpen
{
	Animate HudTournamentSetup	Position	"c-90 -70"	Linear 0.0 0.001
	Animate HudTournamentSetup	Position	"c-90 80"	Spline 0.001 0.2
}

event HudTournamentSetupPanelClose
{
	Animate HudTournamentSetup	Position	"c-90 80"	Linear 0.0 0.001
	Animate HudTournamentSetup	Position	"c-90 -70"	Spline 0.001 0.2
}

//====================================

// Flash the medic charge hud when we have full charge

event UberchargeBg
{
	Animate	UberchargeBg	bgcolor		"G_Heal"						Linear 0.0 0.3
	Animate	UberchargeBg	bgcolor		"G_CenteredUberchargeBg"		Linear 1.0 0.3
	Animate	UberchargeReady	Alpha		"255"			Linear 0.0 0.2
	Animate	UberchargeReady	FgColor		"G_Heal"		Linear 0.2 0.2
	Animate	UberchargeReady	FgColor		"G_White"		Linear 0.5 0.2
	Animate	UberchargeReady	Alpha		"0"				Linear 0.7 0.2
}

event HudMedicChargedBlink
{
	Animate	ChargeMeter 			FgColor		"G_White"		Linear 0.0 0.45
	Animate	ChargeMeter1 			FgColor		"G_White"		Linear 0.0 0.2
	Animate	ChargeMeter2 			FgColor		"G_White"		Linear 0.1 0.2
	Animate	ChargeMeter3 			FgColor		"G_White"		Linear 0.2 0.2
	Animate	ChargeMeter4 			FgColor		"G_White"		Linear 0.3 0.2
	Animate	ChargeMeter 			FgColor		"G_Heal"		Linear 0.45 0.45
	Animate	ChargeMeter1 			FgColor		"G_Heal"		Linear 0.4 0.2
	Animate	ChargeMeter2 			FgColor		"G_Heal"		Linear 0.5 0.2
	Animate	ChargeMeter3 			FgColor		"G_Heal"		Linear 0.6 0.2
	Animate	ChargeMeter4 			FgColor		"G_Heal"		Linear 0.7 0.2
	RunEvent HudMedicChargedLoop	0.9
}

event HudMedicCharged
{
	RunEvent UberchargeBg				0.0
	RunEvent HudMedicChargedBlink		0.0
}


event HudMedicChargedLoop
{
	RunEvent HudMedicChargedBlink 0.0
}

event HudMedicChargedStop
{
	StopEvent HudMedicCharged 0.0
	StopEvent HudMedicChargedLoop 0.0
	StopEvent HudMedicChargedBlink 0.0
	Animate	ChargeMeter 			FgColor		"G_White"		Linear 0.0 0.45
	Animate	ChargeMeter1 			FgColor		"G_White"		Linear 0.0 0.2
	Animate	ChargeMeter2 			FgColor		"G_White"		Linear 0.0 0.2
	Animate	ChargeMeter3 			FgColor		"G_White"		Linear 0.0 0.2
	Animate	ChargeMeter4 			FgColor		"G_White"		Linear 0.0 0.2
}

//===========================================

event ActiveTimerHighlight
{
	Animate TimePanelValue FgColor	"255 255 255 255"		Linear 0.1 0.1
	Animate TimePanelValue FgColor	"255 255 255 100"		Linear 0.3 0.1
	Animate TimePanelValue FgColor	"255 255 255 255"		Linear 0.5 0.1
	Animate TimePanelValue FgColor	"255 255 255 100"		Linear 0.7 0.1
	Animate TimePanelValue FgColor	"255 255 255 255"		Linear 0.9 0.1
	Animate TimePanelValue FgColor	"255 255 255 100"		Linear 1.1 0.1
	Animate TimePanelValue FgColor	"255 255 255 255"		Linear 1.3 0.3
	
}

event ActiveTimerDim
{
	// Slow fade out
	Animate TimePanelValue FgColor	"255 255 255 100"		Linear 0.0 0.4
}

//===========================================

event HasMOTDBlink
{
	Animate	MOTD_ShowButtonPanel_SB 	Ypos		"-1"		Linear 0.0 0.05
	Animate	MOTD_ShowButtonPanel_SB 	Ypos		"0"			Linear 0.05 0.1
		
	Animate	MOTD_ShowButtonPanel_SB 	Ypos		"-1"		Linear 0.4 0.45
	Animate	MOTD_ShowButtonPanel_SB 	Ypos		"0"			Linear 0.45 0.5
	
	Animate	MOTD_ShowButtonPanel_SB 	Ypos		"-1"		Linear 0.8 0.85
	Animate	MOTD_ShowButtonPanel_SB 	Ypos		"0"			Linear 0.85 0.9

	RunEvent HasMOTDBlinkLoop		2.0
}

event HasMOTDBlinkLoop
{
	RunEvent HasMOTDBlink			0.0
}

event HasMOTDBlinkStop
{
	StopEvent HasMOTDBlink				0.0
	StopEvent HasMOTDBlinkLoop 			0.0
	Animate	MOTD_ShowButtonPanel_SB 	Ypos	"0"		Linear 0.0 0.05
}

//===========================================

event HasNotificationsBlink
{
	Animate	Notifications_ShowButtonPanel_SB 	Ypos	"0"		Linear 0.0 0.3
	Animate	Notifications_CountLabel 			Xpos	"0"		Linear 0.3 0.2
	Animate	Notifications_CountLabel 			Alpha	"255"	Linear 0.3 0.2
}

event HasNotificationsBlinkStop
{
	StopEvent HasNotificationsBlink				0.0
	StopEvent HasNotificationsBlinkLoop 		0.0
	Animate	Notifications_CountLabel 			Xpos		"16"	Linear 0.0 0.0
	Animate	Notifications_CountLabel 			Alpha		"0"		Linear 0.0 0.0
	Animate	Notifications_ShowButtonPanel_SB 	Ypos		"-26"	Linear 0.0 0.0
}

//===========================================

event DamagedPlayer
{
	StopEvent 	HitMarker 	0.0
	RunEvent 	HitMarker	0.01
}

//===========================================

event HudReadyPulse
{	
	Animate	TournamentInstructionsLabel 		Alpha		"255"				Linear 0.0 0.1
	Animate	TournamentInstructionsLabelShadow 	Alpha		"255"				Linear 0.0 0.1
	Animate	TournamentInstructionsLabel 	FgColor		"G_White"		Linear 0.0 0.1
	Animate	TournamentInstructionsLabel 	FgColor		"RedSolid"		Linear 0.3 0.4
	RunEvent HudReadyPulseLoop	0.5
}

event HudReadyPulseEnd
{
	Animate	TournamentInstructionsLabel 		FgColor		"G_White"		Linear 0.0 0.1
	Animate	TournamentInstructionsLabel 		Alpha		"0"				Linear 0.0 0.1
	Animate	TournamentInstructionsLabelShadow 	Alpha		"0"				Linear 0.0 0.1
	StopEvent HudReadyPulse			0.0
	StopEvent HudReadyPulseLoop		0.0
}


// Robot Destruction

event RDPositiveScorePulse
{
	Animate Score FgColor	"25 255 25 255"		Linear 0.0 0.0
	Animate Score FgColor	"G_White"			Linear 0.1 0.2
	Animate Score Ypos	"8"		Deaccel 0.0 0.05
	Animate Score Ypos	"10"	Accel 0.05 0.2
	Animate ScoreShadow FgColor	"0 0 0 200"		Deaccel 0.0 0.05
	Animate ScoreShadow FgColor	"0 0 0 255"		Accel 0.1 0.2
}

event RDNegativeScorePulse
{
	Animate Score FgColor	"255 75 75 255"		Linear 0.0 0.0
	Animate Score FgColor	"G_White"			Linear 0.1 0.2
	Animate Score Ypos	"8"		Deaccel 0.0 0.05
	Animate Score Ypos	"10"	Accel 0.05 0.2
	Animate ScoreShadow FgColor	"0 0 0 200"		Deaccel 0.0 0.05
	Animate ScoreShadow FgColor	"0 0 0 255"		Accel 0.1 0.2
}

//===========================================

// Do not move chat window
event CompetitiveGame_LowerChatWindow { }
event CompetitiveGame_RestoreChatWindow { }
event HudTournament_MoveChatWindow { }

//===========================================


event HudTournament_ShowTimerCompetitive
{
	Animate CountdownLabel ypos 90 Linear 0 0
	Animate CountdownLabelShadow ypos 91 Linear 0 0
	SetVisible CountdownBG  1 0
	SetVisible CountdownLabel 1 0
	SetVisible CountdownLabelShadow 1 0
}

event HudTournament_ShowTimerDefault
{
	Animate CountdownLabel ypos 123 Linear 0 0
	Animate CountdownLabelShadow ypos 124 Linear 0 0
	SetVisible CountdownBG  1 0
	SetVisible CountdownLabel 1 0
	SetVisible CountdownLabelShadow 1 0
}