67 lines
2.5 KiB
C#
67 lines
2.5 KiB
C#
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using Ichni.Menu;
|
|
using Ichni.Story;
|
|
using TMPro;
|
|
using UnityEngine;
|
|
using UnityEngine.UI;
|
|
|
|
namespace Ichni.UI
|
|
{
|
|
public partial class PrepareUIPage : UIPageBase
|
|
{
|
|
public TextButton enterGameButton;
|
|
public TextButton switchDifficultyButton;
|
|
|
|
public string songName;
|
|
public List<string> difficulties;
|
|
public string difficultyName;
|
|
|
|
private ChapterSelectionUnit chapter;
|
|
private SongItemData songItem;
|
|
private DifficultyData difficultyData;
|
|
}
|
|
|
|
public partial class PrepareUIPage
|
|
{
|
|
public void SetUpPrepareUIPage(string songName)
|
|
{
|
|
chapter = ChapterSelectionManager.instance.currentChapter;
|
|
songItem = chapter.songs.FirstOrDefault(s => s.songName == songName);
|
|
|
|
this.songName = songName;
|
|
this.difficulties = new List<string>();
|
|
foreach (DifficultyData difficulty in songItem.difficultyDataList)
|
|
{
|
|
this.difficulties.Add(difficulty.difficultyName);
|
|
}
|
|
|
|
this.difficultyName = difficulties[0];
|
|
|
|
difficultyData = songItem.difficultyDataList.FirstOrDefault(d => d.difficultyName == difficultyName);
|
|
switchDifficultyButton.GetComponentInChildren<TMP_Text>().text = difficultyName + " Lv." + difficultyData.difficultyValue;
|
|
switchDifficultyButton.GetComponentInChildren<TMP_Text>().color = difficultyData.color;
|
|
}
|
|
|
|
public void SwitchDifficulty()
|
|
{
|
|
int currentIndex = difficulties.IndexOf(difficultyName);
|
|
int nextIndex = (currentIndex + 1) % difficulties.Count;
|
|
difficultyName = difficulties[nextIndex];
|
|
|
|
difficultyData = songItem.difficultyDataList
|
|
.FirstOrDefault(d => d.difficultyName == difficultyName);
|
|
|
|
switchDifficultyButton.GetComponentInChildren<TMP_Text>().text = difficultyName + " Lv." + difficultyData.difficultyValue;
|
|
switchDifficultyButton.GetComponentInChildren<TMP_Text>().color = difficultyData.color;
|
|
}
|
|
|
|
public void EnterGame()
|
|
{
|
|
InformationTransistor.instance.SetInformation(ChapterSelectionManager.instance.currentChapter, songItem, difficultyData);
|
|
MenuAudioManager.instance.audioContainer.StopEvent("PlayPreview");
|
|
MenuManager.instance.TestEnterGame();
|
|
}
|
|
}
|
|
} |