class UseSandevistanAction extends UseAction
{

	public override function StartAction( gameInstance : GameInstance )
	{
		var psmEvent : PSMPostponedParameterBool;
		var player : PlayerPuppet;
		player = ( ( PlayerPuppet )( GetExecutor() ) );
		super.StartAction( gameInstance );
		if( player )
		{
			psmEvent = new PSMPostponedParameterBool;
			psmEvent.value = true;
			psmEvent.id = 'requestSandevistanActivation';
			GameInstance.GetTelemetrySystem( gameInstance ).LogActiveCyberwareUsed( player, GetItemData().GetID() );
			player.QueueEvent( psmEvent );
			player.IconicCyberwareActivated();
		}
	}

}

class DisableSandevistanAction extends UseAction
{

	public override function StartAction( gameInstance : GameInstance )
	{
		var psmEvent : PSMPostponedParameterBool;
		var player : PlayerPuppet;
		player = ( ( PlayerPuppet )( GetExecutor() ) );
		super.StartAction( gameInstance );
		if( player )
		{
			if( GameInstance.GetStatusEffectSystem( player.GetGame() ).HasStatusEffect( player.GetEntityID(), T"BaseStatusEffect.PlayerInFinisherWorkspot" ) )
			{
				return;
			}
			psmEvent = new PSMPostponedParameterBool;
			psmEvent.id = 'requestSandevistanDeactivation';
			psmEvent.value = true;
			player.QueueEvent( psmEvent );
			StatusEffectHelper.RemoveStatusEffect( player, T"BaseStatusEffect.Tech_Master_Perk_2_Buff" );
		}
	}

}

