private IEnumerator PopulateLevelData(LevelData ld) { pfd.OnGetCompletedLevelData(ld.GetLevelName()); bool returnSuccess; float time = 0; while (!pfd.GetRequestReturned()) { yield return(new WaitForSeconds(0.1f)); time += Time.deltaTime; if (time > 15.0f) { break; } else { } // TODO: Time Out } returnSuccess = pfd.GetRequestSuccess(); if (returnSuccess) { string lp = pfd.GetLevelCompletionData(); ggm.SetLevelPerformance(lp); // TODO: Set data to the proper UI stuffs. } else { // TODO: Set default values. } }