using UnityEngine;
using Enviro;

namespace HutongGames.PlayMaker.Actions
{
	[ActionCategory("ENVIRO")]
	[Tooltip("Gets the current weather with name.")] 
	public class GetWeather : FsmStateAction
	{
		public FsmInt WeatherID;
		public FsmString WeatherName;

		[Tooltip("Repeat every frame.")]
		public bool everyFrame;

		public override void OnEnter()
		{

			if(EnviroManager.instance.Weather != null)
			{		
			for (int i = 0; i < EnviroManager.instance.Weather.Settings.weatherTypes.Count; i++)
			{
				if (EnviroManager.instance.Weather.Settings.weatherTypes[i] == EnviroManager.instance.Weather.targetWeatherType)
					WeatherID.Value = i;
			}

			if (EnviroManager.instance.Weather.targetWeatherType != null)
				WeatherName.Value = EnviroManager.instance.Weather.targetWeatherType.name;
			}

			if (!everyFrame)
			{
				Finish();
			}
		}

		public override void OnUpdate()
		{
			if(EnviroManager.instance.Weather != null)
			{		
			for (int i = 0; i < EnviroManager.instance.Weather.Settings.weatherTypes.Count; i++)
			{
				if (EnviroManager.instance.Weather.Settings.weatherTypes[i] == EnviroManager.instance.Weather.targetWeatherType)
					WeatherID.Value = i;
			}

			if (EnviroManager.instance.Weather.targetWeatherType != null)
				WeatherName.Value = EnviroManager.instance.Weather.targetWeatherType.name;
			}
		}

	}
}