void M8.UIModal.Interface.IPush.Push(M8.GenericParams parms) { Pause(true); if (mCurPage != null) { mCurPage.Hide(); mCurPage = null; } //grab page string levelName; if (parms.TryGetValue(parmLevelName, out levelName)) { if (!mPages.TryGetValue(levelName, out mCurPage)) { Debug.LogWarning("Unknown Page: " + levelName); return; } } mCurPage.Show(); int hintButtonCount = mCurPage.pages.Length; //determine hint unlock mHintCounter = GameData.instance.GetHintCounter(levelName); for (int i = 0; i < mHintCounter; i++) { hintButtons[i].Show(); hintButtons[i].available = true; hintButtons[i].highlight = false; } for (int i = mHintCounter; i < hintButtonCount; i++) { hintButtons[i].Show(); hintButtons[i].available = false; hintButtons[i].highlight = false; } for (int i = hintButtonCount; i < hintButtons.Length; i++) { hintButtons[i].Hide(); } //set default page if (mHintCounter > 0 && hintButtons[0].available) { OpenPage(0); } else { OpenPage(-1); } }