﻿namespace JLGames.RocketDriver.Games.PanelManager
{
    public class PanelSettings : IPanelSettings
    {
        private IPanelAssetSettings m_AssetSettings;
        private IPanelBackgroundSettings m_BackgroundSettings;
        private IPanelAnimSettings m_AnimSettings;

        public IPanelAssetSettings AssetSettings => m_AssetSettings;
        public IPanelBackgroundSettings BackgroundSettings => m_BackgroundSettings;
        public IPanelAnimSettings AnimSettings => m_AnimSettings;

        public PanelSettings()
        {
        }

        public PanelSettings(IPanelAssetSettings assetSettings, IPanelBackgroundSettings backgroundSettings,
            IPanelAnimSettings animSettings)
        {
            m_AssetSettings = assetSettings;
            m_BackgroundSettings = backgroundSettings;
            m_AnimSettings = animSettings;
        }

        public void SetAssetSettings(string bundleName, string assetPath, string mainScriptName, string mainScriptArgs)
        {
            var settings = new PanelAssetSettings(bundleName, assetPath, mainScriptName, mainScriptArgs);
            SetAssetSettings(settings);
        }

        public void SetAssetSettings(IPanelAssetSettings settings)
        {
            if (null == settings) return;
            m_AssetSettings = settings;
        }
    }
}