// @Brief : Start void Start() { m_pScreenCaches = new List <KrScreenCache>(); KrUIArgumentParameter pParam = new KrUIArgumentParameter(); RequestScreen(eSCREEN_TYPE.COMMON, pParam); }
// @Brief : Request dialog // @Param : eDialogType => Dialog type // : pParam => Initialization parameters public void RequestDialog(eDIALOG_TYPE eDialogType, KrUIArgumentParameter pParam) { Transform pBarrier = Create <Transform>(barrierToClone, dialogBase); KrDebug.Assert(s_pDIALOG_PATH_DIC.ContainsKey(eDialogType), "The path of the corresponding dialog is not set. eDialogType = " + eDialogType.ToString(), typeof(KrUIManager)); KrDialog pDialog = Create <KrDialog>(s_pDIALOG_PATH_DIC[eDialogType], pBarrier); pDialog.Initialize(pParam); }
//:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: // PUBLIC FUNCTION //:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: // @Brief : Request screen // @Param : eScreenType => Screen type // : pParam => Initialization parameters public void RequestScreen(eSCREEN_TYPE eScreenType, KrUIArgumentParameter pParam) { KrDebug.Assert(s_pSCREEN_PATH_DIC.ContainsKey(eScreenType), "The path of the corresponding dialog is not set. eScreenType = " + eScreenType.ToString(), typeof(KrUIManager)); KrScreen pScreen = Create <KrScreen>(s_pSCREEN_PATH_DIC[eScreenType], screenBase); pScreen.Initialize(pParam); // Cache screen data CacheScreen(eScreenType, pParam); }
//:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: // PRIVATE FUNCTION //:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: // @Brief : Cache screen data // @Param : eScreenType => Screen type // : pParam => Initialization parameters private void CacheScreen(eSCREEN_TYPE eScreenType, KrUIArgumentParameter pParam) { // Do not cache if the same screen as the current screen if (m_pScreenCaches.Count > 0) { if (m_pScreenCaches[0].IsSameType(eScreenType)) { return; } } KrScreenCache pCache = new KrScreenCache(eScreenType, pParam); m_pScreenCaches.Add(pCache); // When the number of screens that can be cached is exceeded, the cache is deleted from the old one if (m_pScreenCaches.Count > cacheScreenNum) { m_pScreenCaches.RemoveAt(cacheScreenNum); } }
public KrUIArgumentParameter m_pParameter = null; // initialization parameters //:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: // CONSTRUCTOR //:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: // @Brief : Constructor // @Param : eScreenType => Screen type // : pParam => Initialization parameters // @Return : KrScreenCache instance public KrScreenCache(KrUIManager.eSCREEN_TYPE eScreenType, KrUIArgumentParameter pParam) { m_eScreenType = eScreenType; m_pParameter = pParam; }
//:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: // PUBLIC FUNCTION //:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: // @Brief : Initialize // @Param : pParam => Arguments for initialize public override void Initialize(KrUIArgumentParameter pParam) { KrCharagekiManager pManager = KrCharagekiManager.Create(transform, scriptPaths, charaParent, charagekiMode, 1.0f); KrCharagekiUIController pUIController = pManager.GetUIController(); // AddListener tap screen tapScreen.onClick.AddListener(() => { pManager.TapScreen(); }); // Register fade process pUIController.RegisterFade(KrValueAnimator.eEASE.NONE, 1.0f, 1.0f, fadeImage.gameObject, (float fFadeValue) => { Color pColor = fadeImage.color; pColor.a = fFadeValue; fadeImage.color = pColor; }); // Register title process pUIController.RegisterTitle((string pStr) => { V_TITLE_TEXT.text = pStr; }, () => { V_TITLE_TEXT.gameObject.SetActive(true); }, () => { V_TITLE_TEXT.gameObject.SetActive(false); }); // Register background process pUIController.RegisterBackground((Sprite pBackground) => { backgroundImage.sprite = pBackground; backgroundImage.SetNativeSize(); }, () => { backgroundImage.gameObject.SetActive(true); }, () => { backgroundImage.gameObject.SetActive(false); }); // Register text area process pUIController.RegisterTextArea(0.1f, (string pCharaName) => { V_CHARA_NAME.text = pCharaName; }, (string pComment) => { V_COMMENT.text = pComment; }, () => { commentObject.gameObject.SetActive(true); }, () => { commentObject.gameObject.SetActive(false); }); // AddListener switch menu menu.onClick.AddListener(cbSwitchMenu); // AddListener skip skip.onClick.AddListener(() => { pUIController.ResetAutoMode(); }); // AddListener auto mode auto.onClick.AddListener(() => { pUIController.ToggleAutoMode(); }); }
//:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: // PUBLIC FUNCTION //:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: // @Brief : Initialize // @Param : pParam => Arguments for initialize public virtual void Initialize(KrUIArgumentParameter pParam) { }