using System.Collections; using System.Collections.Generic; using UnityEngine; public class GameLogic : MonoBehaviour { [SerializeField] Transform mCtnStage; private Film mFilm; private int[] mSoundOrder; private int mCurIndex; private void Start() { PanelGame tUIGame = UIManager.Instance.OpenUI(); tUIGame.Init(); mFilm = Instantiate(ResourceManager.Instance.LoadRes(Const.Path.GetFilm(PlayerData.Instance.CurrentLevelID))); mFilm.transform.SetParent(mCtnStage); mFilm.transform.localPosition = Vector3.zero; mFilm.transform.localScale = Vector3.one; tUIGame.DelPlay = PlayFilm; } private void PlayFilm(int[] pSoundOrder) { mSoundOrder = pSoundOrder; string tOrderStr = ""; for (int i = 0; i < mSoundOrder.Length; i++) { tOrderStr += (mSoundOrder[i] + 1).ToString(); if (i < mSoundOrder.Length - 1) { tOrderStr += "_"; } } mFilm.PlayScene(tOrderStr); mCurIndex = 0; AudioManager.Instance.PlaySound(ResourceManager.Instance.LoadRes(Const.Path.GetSound(PlayerData.Instance.CurrentLevelID, mSoundOrder[mCurIndex]))); TimerManager.Instance.Schedule(PlaySound, 1.5f, mSoundOrder.Length - 1); } private void PlaySound() { mCurIndex++; AudioManager.Instance.PlaySound(ResourceManager.Instance.LoadRes(Const.Path.GetSound(PlayerData.Instance.CurrentLevelID, mSoundOrder[mCurIndex]))); } }