public void LoadXml() // XML 저장된 것을 불러오는 함수이다. { MapSettingTutorials = new List <MapSettingTutorialText>(); // Menuals 리스트를 새로 정의 XmlDocument Document = new XmlDocument(); // XML도 Document로 새로 정의 Document.Load(filePath); // filePath를 불러와 XML현재 위치를 불러와 관리 XmlElement MapSettingTutorialListElement = Document["MapSettingTutorialList"]; // MenualList라는 XML파일을 불러옴 foreach (XmlElement MapSettingTutorialElement in MapSettingTutorialListElement.ChildNodes) // 배열을 위한 for문 { MapSettingTutorialText MapSettingTutorial = new MapSettingTutorialText { InherentNumber = System.Convert.ToInt32(MapSettingTutorialElement.GetAttribute("InherentNumber")), MenualExplanationText = MapSettingTutorialElement.GetAttribute("MenualExplanationText") }; //Debug.Log(MenualElement.GetAttribute("MenualExplanationText")); MapSettingTutorials.Add(MapSettingTutorial); } }
IEnumerator TutorialTextCoroutine() { /// <summary> /// CurrentText에서 text를 미리 캐싱해놓음 /// </summary> TutoriaMainTextLayOut.gameObject.SetActive(true); TutorialMenualText.text = DummyText.text; TemporatySave.text = DummyText.text; SkipButton.gameObject.SetActive(true); if (TextNumber == 17) { Debug.Log("씨발 제발 좀"); } if (TextNumber == 18) // 씬넘기기 { SceneChange.Instance.MapSettingGameStartTutorial(); yield return(new WaitForSeconds(0.9f)); } CurrentText = XMLMapSettingTutorial.Instance.GetMapSettingTutorial(TextNumber); if (TextNumber == 23) { yield return(new WaitForSeconds(0.2f)); } EventProduct(CurrentText.EventNumber); // 이벤트씬 CharactersName.text = CurrentText.Characters; // 현 대화창 이름 TemporatySave.text = CurrentText.MenualExplanationText; yield return(new WaitForSeconds(0.1f)); // 일부러 지연시킴 TemporatySave가 빠르게 읽지를 못하는경우가 있어서 while (true) { TutorialMenualText.text = TutorialMenualText.text.ToString().Insert(TutorialMenualText.text.ToString().Length, TemporatySave.text[TextCount].ToString()); yield return(new WaitForSeconds(0.01f)); // 일부러 지연시킴 SoundManagement.Instance.KeyboardSound(); yield return(new WaitForSeconds(TextTime)); // 텍스트 나오는 속도 TextCount++; if (TemporatySave.text.ToString().Length <= TutorialMenualText.text.ToString().Length) { //Debug.Log("여기 지나나?"); TextCount = 0; // 텍스트 카운트 리셋시켜줌 if (CurrentText.EventNumber != 30) { NextButton.gameObject.SetActive(true); // 대화스크립트가 끝나면 여기서 멈춰줌 UI_animaiton.Instance.StartCoroutine("UI_ani"); } Debug.Log("이벤트제어 변수 값 : " + CurrentText.EventNumber); if (CurrentText.EventNumber == 9) { CharactersName.GetComponent <Text>().text = "릴리"; } else if (CurrentText.EventNumber == 30) { NextButton.gameObject.SetActive(false); //LilyLeft.GetComponentInChildren<CharEvent>().BoxSetActiveTrue(); //Ellisia.GetComponentInChildren<CharEvent>().BoxSetActiveTrue(); LilyLeft.GetComponent <CharEvent>().BoxSetActiveTrue(); Ellisia.GetComponent <CharEvent>().BoxSetActiveTrue(); } StopCoroutine("TutorialTextCoroutine"); // 대화스크립트가 끝나면 여기서 멈춰줌 break; } // currentText의 길이값 보다 커지면 break 걸어야할듯? } }
public void TutorialEvent3132(int _TextNumber) { CurrentText = XMLMapSettingTutorial.Instance.GetMapSettingTutorial(_TextNumber); CharactersName.text = CurrentText.Characters; TutorialMenualText.text = CurrentText.MenualExplanationText; }
public void CurrentTutorialText() { CurrentText = XMLMapSettingTutorial.Instance.GetMapSettingTutorial(TextNumber); TutorialMenualText.text = CurrentText.MenualExplanationText; }