public void SetupLevel() { ////Get information of current category CategoryInfo categoryInfo = GuessManager.Instance.GetCategoryInfo(activeCategoryName); levelItemObjectPool.ReturnAllObjectsToPool(); for (int i = 0; i < categoryInfo.levelInfos.Count; i++) { LevelListItem.Type type; if (i < numbersOfActiveLevel) { type = LevelListItem.Type.Completed; } else if (i == numbersOfActiveLevel) { type = LevelListItem.Type.Normal; } else { type = LevelListItem.Type.Locked; } LevelListItem levelListItem = levelListContainer.GetChild(i).transform.gameObject.GetComponent <LevelListItem>(); levelListItem.Setup(categoryInfo, i + 1, type, categoryInfo.levelInfos[i].answer, categoryInfo.levelInfos[i].question, categoryInfo.levelInfos[i].sprite, categoryInfo.levelInfos[i].description); levelListItem.gameObject.SetActive(true); } for (int j = 0; j < categoryInfo.levelInfos.Count; j++) { LevelListItem levelListItem = levelListContainer.GetChild(j).transform.gameObject.GetComponent <LevelListItem>(); levelListItem.SetupMode(timeMode.Contains(j + 1), lockMode.Contains(j + 1)); } }
public void LoadLevelList() { TextAsset listAsset = Resources.Load <TextAsset> ("levelList"); if (listAsset != null) { var content = JSON.Parse(listAsset.text); if (content != null) { JSONArray list = content ["levelList"].AsArray; for (int i = 0; i < list.Count; i++) { GameObject itemGO = GameObject.Instantiate(listItem); LevelListItem item = itemGO.GetComponent <LevelListItem>(); if (item != null) { item.SetData(list[i]["name"], list[i]["uri"]); item.gManager = gManager; item.lManager = this; itemGO.transform.SetParent(grid.transform); } } } } }
public override void OnShowing(object data) { base.OnShowing(data); levelItemObjectPool.ReturnAllObjectsToPool(); CategoryInfo categoryInfo = GameManager.Instance.GetCategoryInfo((string)data); bool completed = true; for (int i = 0; i < categoryInfo.levelInfos.Count; i++) { LevelListItem.Type type = completed ? LevelListItem.Type.Completed : LevelListItem.Type.Locked; if (completed && !GameManager.Instance.IsLevelCompleted(categoryInfo, i)) { completed = false; type = LevelListItem.Type.Normal; } LevelListItem levelListItem = levelItemObjectPool.GetObject().GetComponent <LevelListItem>(); levelListItem.Setup(categoryInfo, i, type); levelListItem.gameObject.SetActive(true); } }
private static IEnumerator LoadNewAudio(uint i) { AudioPlayer player = Objects[i].audioPlayer; LevelListItem item = Instance.LevelList[i]; player.LoadNewClip(item.clip); yield return(null); }
// Start is called before the first frame update void Start() { foreach (var key in GameData.levels.Keys) { GameObject new_item = Instantiate(list_item); LevelListItem new_item_script = new_item.GetComponent <LevelListItem>(); new_item_script.level_menu = this; new_item_script.level = GameData.levels[key]; new_item.transform.SetParent(list.transform); } }
private static Texture2D MeasureTexture(LevelListItem item, uint i) { if (MeasureIsLocked(i)) { return(Instance.MeasureLock); } else { return(item.measure); } }
private static Texture2D ComicTexture(LevelListItem item, uint i) { if (ComicIsLocked(i)) { return(Instance.ComicLock); } else { return(item.comic); } }
private static Texture2D MeasureTexture(LevelListItem item, uint i) { if (MeasureIsLocked(i)) { return Instance.MeasureLock; } else { return item.measure; } }
private static Texture2D ComicTexture(LevelListItem item, uint i) { if (ComicIsLocked(i)) { return Instance.ComicLock; } else { return item.comic; } }
private static void AddLevelListItem(uint i, LevelListItem item) { uint row, col; Vector3 center, comicOffset, measureOffset, headerOffset; Vector3 comicBgPos, measureBgPos, comicTilePos, measureTilePos, headerPos; Vector2 comicBgSize, measureBgSize, comicTileSize, measureTileSize, totalSize; row = i / Instance.LevelsPerLine; col = i % Instance.LevelsPerLine; comicBgSize = ComicBgSize(); comicTileSize = ComicTileSize(comicBgSize); measureBgSize = MeasureBgSize(row); measureTileSize = MeasureTileSize(measureBgSize); totalSize = TotalSize(row); center = LLICenterPosition(row, col); comicOffset = ComicOffset(totalSize, comicBgSize); measureOffset = MeasureOffset(totalSize, measureBgSize); headerOffset = HeaderOffset(totalSize, comicBgSize); comicBgPos = center + comicOffset + BgOffset; comicTilePos = center + comicOffset; measureBgPos = center + measureOffset + BgOffset; measureTilePos = center + measureOffset; headerPos = center + headerOffset; GameObject parent = new GameObject(string.Format("Level {0}", i + 1)); parent.transform.parent = Instance.transform; parent.transform.position = center; Objects[i].parent = parent; Objects[i].comicBg = SpriteUtil.AddSprite(Instance.ComicBackground, comicBgSize, comicBgPos, string.Format("Comic Background {0}", i + 1), parent); Objects[i].comicTile = SpriteUtil.AddSprite(ComicTexture(item, i), comicTileSize, comicTilePos, string.Format("Comic Tile {0}", i + 1), parent); Objects[i].measureBg = SpriteUtil.AddSprite(Instance.MeasureBackground, measureBgSize, measureBgPos, string.Format("Measure Background {0}", i + 1), parent); Objects[i].measureTile = SpriteUtil.AddSprite(MeasureTexture(item, i), measureTileSize, measureTilePos, string.Format("Measure Tile {0}", i + 1), parent); Objects[i].header = AddHeader(parent, i + 1, headerPos); GameObject audioObject = new GameObject(string.Format("Audio Source {0}", i + 1)); audioObject.transform.parent = parent.transform; AudioSource audioSource = audioObject.AddComponent<AudioSource>(); Objects[i].audioSource = audioSource; AudioClip clip; if (MeasureIsLocked(i)) { clip = Instance.LockedClip; } else { clip = item.clip; } Objects[i].audioPlayer = new AudioPlayer(clip, audioSource); }
private static void AddLevelListItem(uint i, LevelListItem item) { uint row, col; Vector3 center, comicOffset, measureOffset, headerOffset; Vector3 comicBgPos, measureBgPos, comicTilePos, measureTilePos, headerPos; Vector2 comicBgSize, measureBgSize, comicTileSize, measureTileSize, totalSize; row = i / Instance.LevelsPerLine; col = i % Instance.LevelsPerLine; comicBgSize = ComicBgSize(); comicTileSize = ComicTileSize(comicBgSize); measureBgSize = MeasureBgSize(row); measureTileSize = MeasureTileSize(measureBgSize); totalSize = TotalSize(row); center = LLICenterPosition(row, col); comicOffset = ComicOffset(totalSize, comicBgSize); measureOffset = MeasureOffset(totalSize, measureBgSize); headerOffset = HeaderOffset(totalSize, comicBgSize); comicBgPos = center + comicOffset + BgOffset; comicTilePos = center + comicOffset; measureBgPos = center + measureOffset + BgOffset; measureTilePos = center + measureOffset; headerPos = center + headerOffset; GameObject parent = new GameObject(string.Format("Level {0}", i + 1)); parent.transform.parent = Instance.transform; parent.transform.position = center; Objects[i].parent = parent; Objects[i].comicBg = SpriteUtil.AddSprite(Instance.ComicBackground, comicBgSize, comicBgPos, string.Format("Comic Background {0}", i + 1), parent); Objects[i].comicTile = SpriteUtil.AddSprite(ComicTexture(item, i), comicTileSize, comicTilePos, string.Format("Comic Tile {0}", i + 1), parent); Objects[i].measureBg = SpriteUtil.AddSprite(Instance.MeasureBackground, measureBgSize, measureBgPos, string.Format("Measure Background {0}", i + 1), parent); Objects[i].measureTile = SpriteUtil.AddSprite(MeasureTexture(item, i), measureTileSize, measureTilePos, string.Format("Measure Tile {0}", i + 1), parent); Objects[i].header = AddHeader(parent, i + 1, headerPos); GameObject audioObject = new GameObject(string.Format("Audio Source {0}", i + 1)); audioObject.transform.parent = parent.transform; AudioSource audioSource = audioObject.AddComponent <AudioSource>(); Objects[i].audioSource = audioSource; AudioClip clip; if (MeasureIsLocked(i)) { clip = Instance.LockedClip; } else { clip = item.clip; } Objects[i].audioPlayer = new AudioPlayer(clip, audioSource); }