using System;
using System.Collections.Generic;
using System.Text;
using Yanesdk.Draw;

namespace Kyojin.Model
{
    /// <summary>
    /// シーンで使うパラメーターを実装する
    /// </summary>
    public class OptionScenePram
    {
        #region メンバフィールド

        #endregion

    }

    /// <summary>
    /// セーブ/ロード画面用のパラメーター
    /// </summary>
    public class BookmarkSceneParam
    {
        #region メンバフィールド

        private CurrentInfo currentScenarioInfo;

        #endregion

        public CurrentInfo CurrentScenarioInfo
        {
            get { return currentScenarioInfo; }
            set { currentScenarioInfo = value; }
        }
    }

    /// <summary>
    /// テロップ画面用のシーンパラメータ
    /// </summary>
    public class TelopParam
    {
        private string callTaskId;
        private ITexture screenImg;

        public string CallTaskId
        {
            get { return callTaskId; }
            set { callTaskId = value; }
        }
        private KyojinConst.ScenarioID callScenarioNo;

        public KyojinConst.ScenarioID CallScenarioNo
        {
            get { return callScenarioNo; }
            set { callScenarioNo = value; }
        }
        /// <summary>
        /// 前画面のスクリーン画像
        /// </summary>
        public ITexture ScreenImg
        {
            get { return screenImg; }
            set { screenImg = value; }
        }

    }

    /// <summary>
    /// シナリオシーンへのパラメータ
    /// </summary>
    public class ScenarioSceneParam
    {
        #region メンバフィールド

        private ScenarioInfo scenarioInfo = new ScenarioInfo();
        private bool readTop = true;
        private bool useExtraMusic = false;

        #endregion

        /// <summary>
        /// はじめから読むか
        /// </summary>
        public bool IsReadTop
        {
            get { return readTop; }
            set { readTop = value; }
        }

        /// <summary>
        /// 開始シナリオ情報
        /// </summary>
        public ScenarioInfo ScenarioInfo
        {
            get { return scenarioInfo; }
            set { scenarioInfo = value; }
        }

        /// <summary>
        /// 拡張音楽を使用するかどうか
        /// </summary>
        public bool IsUseExtraMusic
        {
            get { return useExtraMusic; }
            set { useExtraMusic = value; }
        }
    }

    /// <summary>
    /// 去人たちエンディング用シーンパラメータ
    /// </summary>
    public class KyojinEndingSceneParam
    {
        #region メンバフィールド

        private bool autoPlay;

        public bool IsAutoPlay
        {
            get { return autoPlay; }
            set { autoPlay = value; }
        }
        private bool showGuide;

        public bool IsShowGuide
        {
            get { return showGuide; }
            set { showGuide = value; }
        }
        private bool showMovie;

        public bool IsShowMovie
        {
            get { return showMovie; }
            set { showMovie = value; }
        }
        private bool showTime;

        public bool IsShowTime
        {
            get { return showTime; }
            set { showTime = value; }
        }
        private bool showScore;

        public bool IsShowScore
        {
            get { return showScore; }
            set { showScore = value; }
        }

        #endregion

    }


    /// <summary>
    /// テロップ画面用のシーンパラメータ
    /// </summary>
    public class EyeCatcheSceneParam
    {
        private string callTaskId;
        private ITexture screenImg;
        private int pattern;
        private bool jumpTitle;

        public bool JumpTitle
        {
            get { return jumpTitle; }
            set { jumpTitle = value; }
        }

        /// <summary>
        /// アイキャッチのパターン
        /// </summary>
        public int Pattern
        {
            get { return pattern; }
            set { pattern = value; }
        }

        public string CallTaskId
        {
            get { return callTaskId; }
            set { callTaskId = value; }
        }
        private KyojinConst.ScenarioID callScenarioNo;

        public KyojinConst.ScenarioID CallScenarioNo
        {
            get { return callScenarioNo; }
            set { callScenarioNo = value; }
        }
        /// <summary>
        /// 前画面のスクリーン画像
        /// </summary>
        public ITexture ScreenImg
        {
            get { return screenImg; }
            set { screenImg = value; }
        }

    }

}
