class ActivityCardsHelper
{

	public function CanPlayerSkipTime() : Bool
	{
		var playerPuppet : PlayerPuppet;
		var psmBlackboard : IBlackboard;
		var timeSystem : TimeSystem;
		var blockTimeSkip : Bool;
		var tier : Int32;
		var variantData : Variant;
		var securityData : SecurityAreaData;
		blockTimeSkip = false;
		playerPuppet = ( ( PlayerPuppet )( GameInstance.GetPlayerSystem( GetGameInstance() ).GetLocalPlayerMainGameObject() ) );
		tier = playerPuppet.GetPlayerStateMachineBlackboard().GetInt( GetAllBlackboardDefs().PlayerStateMachine.HighLevel );
		psmBlackboard = playerPuppet.GetPlayerStateMachineBlackboard();
		variantData = psmBlackboard.GetVariant( GetAllBlackboardDefs().PlayerStateMachine.SecurityZoneData );
		if( variantData.IsValid() )
		{
			securityData = ( ( SecurityAreaData )variantData );
		}
		blockTimeSkip = ( ( ( ( ( ( ( ( ( ( psmBlackboard.GetInt( GetAllBlackboardDefs().PlayerStateMachine.Combat ) == ( ( Int32 )( gamePSMCombat.InCombat ) ) ) || StatusEffectSystem.ObjectHasStatusEffectWithTag( playerPuppet, 'NoTimeSkip' ) ) || timeSystem.IsPausedState() ) || playerPuppet.IsMovingVertically() ) || ( psmBlackboard.GetInt( GetAllBlackboardDefs().PlayerStateMachine.Swimming ) == ( ( Int32 )( gamePSMSwimming.Diving ) ) ) ) || ( psmBlackboard.GetInt( GetAllBlackboardDefs().PlayerStateMachine.Vehicle ) == ( ( Int32 )( gamePSMVehicle.Transition ) ) ) ) || ( ( tier >= ( ( Int32 )( gamePSMHighLevel.SceneTier3 ) ) ) && ( tier <= ( ( Int32 )( gamePSMHighLevel.SceneTier5 ) ) ) ) ) || ( securityData.securityAreaType > ESecurityAreaType.SAFE ) ) || GameInstance.GetPhoneManager( playerPuppet.GetGame() ).IsPhoneCallActive() ) || psmBlackboard.GetBool( GetAllBlackboardDefs().PlayerStateMachine.Carrying ) ) || psmBlackboard.GetBool( GetAllBlackboardDefs().PlayerStateMachine.IsInLoreAnimationScene );
		return !( blockTimeSkip );
	}

	public function GetCurrentDisctrictName() : String
	{
		var uiBlackboard : IBlackboard;
		var currentLocationName : String;
		uiBlackboard = GameInstance.GetBlackboardSystem( GetGameInstance() ).Get( GetAllBlackboardDefs().UI_Map );
		if( uiBlackboard )
		{
			currentLocationName = uiBlackboard.GetString( GetAllBlackboardDefs().UI_Map.currentLocationEnumName );
		}
		return currentLocationName;
	}

}

