package playerStateMachineTimeDilation
using playerStateMachineStateBase

baseTimeDilationState : baseState
{
}

timeDilationReady : baseTimeDilationState
{
	string[] transitionTo = 
	[
		"sandevistan", "kerenzikov", "timeDilationFocusMode"
	];
	string[] transitionCondition = 
	[
		"", "", ""
	];
}

sandevistan : baseTimeDilationState
{
	bool hasEnterCondition = true;
	bool hasOnEnter = true;
	bool hasOnExit = true;
	bool hasOnUpdate = true;
	string[] transitionTo = 
	[
		"timeDilationReady", "timeDilationFocusMode"
	];
	string[] transitionCondition = 
	[
		"=", ""
	];
	float deactivationTimeStamp = 1.0;
	float resourceDrain = -0.35;
}

kerenzikov : baseTimeDilationState
{
	bool hasEnterCondition = true;
	bool hasOnEnter = true;
	bool hasOnExit = true;
	string[] transitionTo = 
	[
		"timeDilationReady", "timeDilationFocusMode"
	];
	string[] transitionCondition = 
	[
		"=", ""
	];
}

timeDilationFocusMode : baseTimeDilationState
{
	bool hasEnterCondition = true;
	bool hasOnEnter = true;
	bool hasOnExit = true;
	bool hasOnUpdate = true;
	string[] transitionTo = 
	[
		"timeDilationReady"
	];
	string[] transitionCondition = 
	[
		"="
	];
}

timeDilationAcceptedReasons
{
	CName[] sandevistanEffectReasons = 
	[
		"sandevistan"
	];
	CName[] kereznikovEffectReasons = 
	[
		"kereznikov"
	];
}

