示例#1
0
    private GHUD GenHUD(HUDType a_HUDType)
    {
        HUDInfo hudInfo = DbMgr.s_Instance.GetHUDInfo(a_HUDType);

        if (hudInfo == null)
        {
            return(null);
        }

        GameObject hudPref = Resources.Load <GameObject>(hudInfo.m_PrefPath);

        if (hudPref == null)
        {
            return(null);
        }

        // instantiate & init new HUD
        GameObject hudObj = Instantiate(hudPref, transform);
        GHUD       gHUD   = hudObj.GetComponent <GHUD>();

        gHUD.OnCreateObj();
        gHUD.Init(hudInfo);
        m_lHUD.Add(gHUD);

        return(gHUD);
    }
示例#2
0
    // ================================== PRIVATE FUNCS ==================================
    #region Private Funcs
    private bool GenScene(SceneType a_sceneType)
    {
        SceneInfo sceneInfo = DbMgr.s_Instance.GetSceneInfo(a_sceneType);

        if (sceneInfo == null)
        {
            return(false);
        }

        GameObject scenePref = Resources.Load <GameObject>(sceneInfo.m_PrefPath);

        if (scenePref == null)
        {
            return(false);
        }

        // destroy old scene (if had)
        if (m_CurGScene)
        {
            m_CurGScene.OnDestroyObj();
        }

        // instantiate & init new scene
        GameObject sceneObj = Instantiate(scenePref, transform);

        m_CurGScene = sceneObj.GetComponent <GScene>();
        m_CurGScene.OnCreateObj();

        // add HUD
        GHUD gHUD = GenHUD(sceneInfo);

        m_CurGScene.Init(sceneInfo, gHUD);

        return(true);
    }
示例#3
0
 public void OnUpdate(float a_dt)
 {
     for (int i = 0; i < m_lHUD.Count; i++)
     {
         GHUD gHUD = m_lHUD[i];
         gHUD.OnUpdateObj(a_dt);
     }
 }
示例#4
0
    public void DisableGHUD(HUDType a_HUDType)
    {
        GHUD ghud = GetHUD(a_HUDType);

        if (ghud != null)
        {
            ghud.SetActive(false);
        }
    }
示例#5
0
 // ================================== PRIVATE FUNCS ==================================
 #region Private Funcs
 private GHUD GetHUD(HUDType a_HUDType)
 {
     for (int i = 0; i < m_lHUD.Count; i++)
     {
         GHUD ghud = m_lHUD[i];
         if (ghud.GetHUDInfo().m_HUDType == a_HUDType)
         {
             return(ghud);
         }
     }
     return(null);
 }
示例#6
0
    private void DestroyHUD(int a_Index)
    {
        if (a_Index >= m_lHUD.Count)
        {
            return;
        }

        GHUD gHUD = m_lHUD[a_Index];

        gHUD.OnDestroyObj();
        m_lHUD.RemoveAt(a_Index);
    }
示例#7
0
    // ================================== PUBLIC FUNCS ==================================
    #region Public Funcs
    public void OnButtonClick()
    {
        // show || hide STORY MAP
        if (m_StoryMap)
        {
            m_StoryMap.SetActive(!m_StoryMap.IsActive());
        }
        // gen STORY MAP
        else
        {
            // instantiate vs parent transform is CANVAS
            m_StoryMap = HUDMgr.s_Instance.GenHUD(HUDMgr.HUDType.HUD_StoryMap);
        }

        // disable BOOK in case it opened
        if (m_StoryMap.IsActive())
        {
            if (HUDMgr.s_Instance.IsGHUDAvailable(HUDMgr.HUDType.HUD_Book))
            {
                HUDMgr.s_Instance.DisableGHUD(HUDMgr.HUDType.HUD_Book);
            }
        }
    }
示例#8
0
 // override GScene
 public override void Init(SceneInfo a_SceneInfo, GHUD a_GHUD)
 {
     base.Init(a_SceneInfo, a_GHUD);
     Init();
 }
示例#9
0
 public override void Init(GHUD a_HUD)
 {
     base.Init(a_HUD);
 }
示例#10
0
 // ================================== PUBLIC FUNCS ==================================
 #region Public Funcs
 public virtual void Init(SceneInfo a_SceneInfo, GHUD a_GHUD)
 {
     m_SceneInfo = a_SceneInfo;
     Ref_GHUD    = a_GHUD;
 }
示例#11
0
 // ================================== PUBLIC FUNCS ==================================
 #region Public Funcs
 public virtual void Init(GHUD a_HUD)
 {
     Ref_GHUD = a_HUD;
 }
示例#12
0
    public bool IsGHUDAvailable(HUDType a_HUDType)
    {
        GHUD ghud = GetHUD(a_HUDType);

        return(ghud != null ? true : false);
    }