1. 맵2 제작 끝!!!!!!!
2. 게임 모드 선택 가능
Tile2Unity로 제작했던 맵을 Unity에서 새로 만들었돠!
using TMPro;
using UnityEngine;
using System.Collections.Generic;
public class MapDropdown : MonoBehaviour
{
[SerializeField] private TMP_Dropdown mode_dropdown;
[SerializeField] private TMP_Dropdown map_dropdown;
[SerializeField] private TextMeshProUGUI text;
private string[] maze_list = new string[3] { "Forest Stage1", "Forest Stage2", "Tokyo Stage1" };
private string[] sullae_list = new string[4] { "apple", "mango", "juice", "pepper" };
public void OnModeSelect()
{
// 현재 dropdown에 있는 모든 옵션을 제거
map_dropdown.ClearOptions();
// 새로운 옵션 설정을 위한 OptionData 생성
List<TMP_Dropdown.OptionData> optionList = new List<TMP_Dropdown.OptionData>();
if (mode_dropdown.value == 1)
{
// sullae_list 배열에 있는 모든 문자열 데이터를 불러와서 optionList에 저장
foreach (string str in sullae_list)
{
optionList.Add(new TMP_Dropdown.OptionData(str));
}
}
else
{
// maze_list 배열에 있는 모든 문자열 데이터를 불러와서 optionList에 저장
foreach (string str in maze_list)
{
optionList.Add(new TMP_Dropdown.OptionData(str));
}
}
// 위에서 생성한 optionList를 dropdown의 옵션 값에 추가
map_dropdown.AddOptions(optionList);
// 현재 dropdown에 선택된 옵션을 0번으로 설정
map_dropdown.value = 0;
}
public void OnDropdownEvent(int index)
{
// 선택한 map 이름을 보여줌
if (mode_dropdown.value == 1)
{
text.text = $"{sullae_list[map_dropdown.value]}";
} else
{
text.text = $"{maze_list[map_dropdown.value]}";
}
}
}
미로찾기, 술래잡기 모드에 따라 dropdown에 보이는 option들을 분기해줬당
눈 떠보니 4주차가 끝나가네,,,
왕,,,, 벌써 4월이라니,,,
시간은 참 빨라,,,
벌써 올해의 1/4가 가고있다
dropdown에 대한 자료가 많이 없어서 걱정했지만
뚝딱뚝딱 하다보니 또 된다.
저 mode를 선택할 때의 함수를 private void Awake(), private void Update()로 했을 때는 불가능했다.
왜냐하면 Awake는 시작할 때 1회 호출, Update는 매 프레임마다 호출하기 때문이다.
그래서 함수를 따로 만들어줬다.
요것은 제노님이 알려주셨다!!!!
역쉬 넘나 똑똑한 살암,,,✨