using System;
using UnityEngine;
namespace Unity.MLAgents
{
public partial class Agent
{
///
/// Deprecated, use instead.
///
///
public virtual void CollectDiscreteActionMasks(DiscreteActionMasker actionMasker)
{
}
///
/// Deprecated, use instead.
///
///
public virtual void Heuristic(float[] actionsOut)
{
Debug.LogWarning("Heuristic method called but not implemented. Returning placeholder actions.");
Array.Clear(actionsOut, 0, actionsOut.Length);
}
///
/// Deprecated, use instead.
///
///
public virtual void OnActionReceived(float[] vectorAction) { }
///
/// Returns the last action that was decided on by the Agent.
///
///
/// The last action that was decided by the Agent (or null if no decision has been made).
///
///
// [Obsolete("GetAction has been deprecated, please use GetStoredActionBuffers, Or GetStoredDiscreteActions.")]
public float[] GetAction()
{
var storedAction = m_Info.storedVectorActions;
if (!storedAction.ContinuousActions.IsEmpty())
{
return storedAction.ContinuousActions.Array;
}
else
{
return Array.ConvertAll(storedAction.DiscreteActions.Array, x => (float)x);
}
}
}
}