using System;

public class VRTouchKagManager : BaseKagManager
{
	public VRTouchKagManager(SceneVRTouch scene, TJSScript tjs, ScriptManager script_mgr) : base(tjs, script_mgr)
	{
		this.scene_vr_touch_ = scene;
	}

	public override void Initialize()
	{
		base.Initialize();
		this.kag_.AddTagCallBack("shuffle", new KagScript.KagTagCallBack(this.TagShuffle));
	}

	public bool TagShuffle(KagTagSupport tag_data)
	{
		NDebug.Assert(this.scene_vr_touch_ != null, "SceneVRTouch インスタンスが見つかりません。");
		int f_nKouhun = 0;
		if (tag_data.IsValid("kouhun"))
		{
			f_nKouhun = tag_data.GetTagProperty("kouhun").AsInteger();
		}
		string f_strVoiceFileName = string.Empty;
		if (tag_data.IsValid("voice"))
		{
			f_strVoiceFileName = tag_data.GetTagProperty("voice").AsString();
		}
		string f_strFace = string.Empty;
		if (tag_data.IsValid("face"))
		{
			f_strFace = tag_data.GetTagProperty("face").AsString();
		}
		string f_strFaceBlend = string.Empty;
		if (tag_data.IsValid("faceblend"))
		{
			f_strFaceBlend = tag_data.GetTagProperty("faceblend").AsString();
		}
		this.voice_script_add_dg_(f_nKouhun, f_strVoiceFileName, f_strFace, f_strFaceBlend);
		return false;
	}

	public override string GetKagClassName()
	{
		return "VRタッチkag";
	}

	public void SetShuffleDg(VRTouchKagManager.dgOnVoiceScriptAdd f_dg)
	{
		this.voice_script_add_dg_ = f_dg;
	}

	private SceneVRTouch scene_vr_touch_;

	private VRTouchKagManager.dgOnVoiceScriptAdd voice_script_add_dg_;

	public delegate void dgOnVoiceScriptAdd(int f_nKouhun, string f_strVoiceFileName, string f_strFace, string f_strFaceBlend);
}
