using System.Collections;
using System.Collections.Generic;
using UnityEngine;

[CreateAssetMenu()]
public class SquadBehaviour : ScriptableObject
{
	[SerializeField]
	private float _timeScale = 1;
	public float TimeScale { get { return _timeScale; } }


	[SerializeField]
	[Range(0, 10)]
	private float _separationMultiplier = 1;
	public float SeparationMultiplier { get { return _separationMultiplier; } }

	[SerializeField]
	[Range(0, 10)]
	private float _alignmentMultiplier = 1;
	public float AlignmentMultiplier { get { return _alignmentMultiplier; } }

	[SerializeField]
	[Range(0, 10)]
	private float _cohesionMultiplier = 1;
	public float CohesionMultiplier { get { return _cohesionMultiplier; } }

	[SerializeField]
	[Range(0, 10)]
	private float _boundingMultiplier = 1;
	public float BoundingMultiplier { get { return _boundingMultiplier; } }

	[SerializeField]
	[Range(0, 10)]
	private float _wanderMultiplier = 1;
	public float WanderMultiplier { get { return _wanderMultiplier; } }

	[SerializeField]
	[Range(0, 10)]
	private float _commandMultiplier = 1;
	public float CommandMultiplier { get { return _commandMultiplier; } }

	[SerializeField]
	[Range(0, 10)]
	private float _faceOutMultiplier = 1;
	public float FaceOutMultiplier { get { return _faceOutMultiplier; } }

	[SerializeField]
	[Range(0, 10)]
	private float _fleeMultiplier = 0;
	public float FleeMultiplier { get { return _fleeMultiplier; } }

	[SerializeField]
	[Range(0, 1000)]
	private float _separationThreshold = 2;
	public float SeparationThreshold { get { return _separationThreshold; } }

	[SerializeField]
	[Range(0, 100)]
	private float _maxVelocity = 10;
	public float MaxVelocity { get { return _maxVelocity; } }

	[SerializeField]
	[Range(1, 100)]
	private float _acceleration = 15;
	public float Acceleration { get { return _acceleration; } }

	[SerializeField]
	[Range(1, 100)]
	private float _turnAcceleration = 10;
	public float TurnAcceleration { get { return _turnAcceleration; } }
}
