chicken_dy/Assets/Scripts/Game/GameLogic.cs

52 lines
1.6 KiB
C#

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<PanelGame>();
tUIGame.Init();
mFilm = Instantiate(ResourceManager.Instance.LoadRes<Film>(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<AudioClip>(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<AudioClip>(Const.Path.GetSound(PlayerData.Instance.CurrentLevelID, mSoundOrder[mCurIndex])));
}
}