using UnityEngine;

public static class Const {

    public static readonly string UnityVersion = "2019.4.19f1";

    public static readonly string DefaultAppVersion = "0.1.0";

    // parameter
    public static readonly int DefaultMachineLevel = 1;
    public static readonly int DefaultRecipeId = 1;
    public static readonly int DefaultPanId = 1;
    public static readonly int TankCapacity = 20;
    public static readonly int SpecialShopLevel = 9999;
    public static readonly int SpecialCategory = 9999;
    public static readonly int NotSetMaterialId = 0;
    public static readonly string RedColorString = "#fb6346";
    public static readonly int DailyMissionResetOffset = 0;

    // tag
    public static readonly string GameDataTag = "GameData";
    public static readonly string VibrationTag = "Vibration";
    public static readonly string LanguageDataTypeTag = "LanguageDataType";
    public static readonly string LocalNotificationTag = "LocalNotification";
    public static readonly string ProductViewTypeTag = "ProductViewType";

    // sns
    public static readonly string LineURL = "http://nav.cx/aVZ8nEK";
    public static readonly string FacebookURL = "https://www.facebook.com/usayaApp/";
    public static readonly string TwitterURL = "https://twitter.com/usayaApp";
    
    // sheet
    public static readonly string AvatarDataSheet = "AvatarData";
    public static readonly string ShopDataSheet = "ShopData";
    public static readonly string ShopLevelDataSheet = "ShopLevelData";
    public static readonly string ProductDataSheet = "ProductData";
    public static readonly string PanDataSheet = "PanData";
    public static readonly string RarityDataSheet = "RarityData";
    public static readonly string FieldUpgradeDataSheet = "FieldUpgradeData";
    public static readonly string MissionDataSheet = "MissionData";
    public static readonly string BulkOrderDataSheet = "BulkOrderData";
    public static readonly string BulkOrderTextDataSheet = "BulkOrderTextData";
    public static readonly string ScriptDataSheet = "ScriptData";
    public static readonly string TutorialScriptDataSheet = "TutorialData";

    // language
    public static readonly string LangJapanDataSheet = "LangJapanData";
    public static readonly string LangEnglishDataSheet = "LangEnglishData";
    public static readonly string LangChineseTraditionaldDataSheet = "LangChineseTraditionaldData";
    public static readonly string LangChineseSimplifiedDataSheet = "LangChineseSimplifiedData";
    public static readonly string UILangJapanDataSheet = "UILangJapanData";
    public static readonly string UILangEnglishDataSheet = "UILangEnglishData";
    public static readonly string UILangChineseTraditionaldDataSheet = "UILangChineseTraditionaldData";
    public static readonly string UILangChineseSimplifiedDataSheet = "UILangChineseSimplifiedData";

    public sealed class SheetData {
        public string name;
        public string className;
        public SheetData(string name) : this(name, name){}
        public SheetData(string name, string className){
            this.name = name;
            this.className = className;
        }
    }
    public static readonly SheetData[] BaseSheetNameList = new SheetData[]{
        // new SheetData(Const.AvatarDataSheet),
        new SheetData(Const.ShopDataSheet),
        new SheetData(Const.ShopLevelDataSheet),
        new SheetData(Const.ProductDataSheet),
        new SheetData(Const.PanDataSheet),
        new SheetData(Const.RarityDataSheet),
        new SheetData(Const.FieldUpgradeDataSheet),
        new SheetData(Const.MissionDataSheet),
        new SheetData(Const.BulkOrderDataSheet),
        new SheetData(Const.BulkOrderTextDataSheet),
        new SheetData(Const.ScriptDataSheet),
        new SheetData(Const.TutorialScriptDataSheet),
    };
    public static readonly SheetData[] LanguageSheetNameList = new SheetData[]{
        new SheetData(Const.LangJapanDataSheet, "LanguageData"),
        // new SheetData(Const.LangEnglishDataSheet, "LanguageData"),
        // new SheetData(Const.LangChineseTraditionaldDataSheet, "LanguageData"),
        // new SheetData(Const.LangChineseSimplifiedDataSheet, "LanguageData"),
        new SheetData(Const.UILangJapanDataSheet, "LanguageData"),
        // new SheetData(Const.UILangEnglishDataSheet, "LanguageData"),
        // new SheetData(Const.UILangChineseTraditionaldDataSheet, "LanguageData"),
        // new SheetData(Const.UILangChineseSimplifiedDataSheet, "LanguageData"),
    };
}