﻿using UnityEngine;
using System.Collections;

namespace Nostalgia.Example
{
	[AddComponentMenu("Nostalgia/Example/InfoTrigger")]
	public sealed class InfoTrigger : MonoBehaviour
	{
		[System.Serializable]
		public class Message
		{
			public SystemLanguage language;
			public string text;
		}

		public string defaultInfo;
		public Message[] infos;
		public Sprite infoIcon;
		public Vector2 offset = new Vector2(0.0f, 3.0f);

		private string _Info;

		void Awake()
		{
			_Info = defaultInfo;
			if (infos != null)
			{
				SystemLanguage language = Application.systemLanguage;
				int infoCount = infos.Length;
				for (int infoIndex = 0; infoIndex < infoCount; infoIndex++)
				{
					Message info = infos[infoIndex];
					if (info.language == language)
					{
						_Info = info.text;
						break;
					}
				}
			}
		}

		public void OnEnter(Player player)
		{
			if (!string.IsNullOrEmpty(_Info))
			{
				InfoBoard.Open(_Info, infoIcon, transform.position + (Vector3)offset);
			}
		}

		public void OnExit(Player player)
		{
			InfoBoard.Close();
		}
	}
}
