public void Talking() { if (Community.EndMessage && !isTutorial)//대화 끝의 여부를 확인한다 끝난경우는 아래를 실행 { switch (TutorialPage) { case 1: if (CurrentMsgIndex < 9) { if (CurrentMsgIndex > 0) { if (MessageLabel.text.Length < CurrentMessage[CurrentMsgIndex - 1].Split(':')[1].Length) { return; } } string target = CurrentMessage[CurrentMsgIndex].Split(':')[0]; string emotion = CurrentMessage[CurrentMsgIndex].Split(':')[1]; string message = CurrentMessage[CurrentMsgIndex].Split(':')[2]; bool isBigFont = CurrentMessage[CurrentMsgIndex].Split(':').Length == 4; if (target == "라임") { Story.StartCoroutine("PlayerPopUpSprite"); NameTag.localPosition = new Vector3(-2500, 400, 0); PlayerSprite.spriteName = "Player_라임-" + emotion; } else if (target == "라인") { Story.StartCoroutine("NPCPopUpSprite"); NameTag.localPosition = new Vector3(2500, 400, 0); NPCSprite.spriteName = "NPC_라인-" + emotion; } Community.IntroSetting(target, message); Community.EndMessage = false; MessageLabel.fontSize = isBigFont ? 400 : 225; CurrentMsgIndex += 1; } else { StartFirstComing(); PageNum = 0; TutorialOpen(); Community.UIVisible(false); } break; case 2: if (CurrentMsgIndex < 2) { if (CurrentMsgIndex > 0) { if (MessageLabel.text.Length < CurrentMessage[CurrentMsgIndex - 1].Split(':')[1].Length) { return; } } string target = CurrentMessage[CurrentMsgIndex].Split(':')[0]; string emotion = CurrentMessage[CurrentMsgIndex].Split(':')[1]; string message = CurrentMessage[CurrentMsgIndex].Split(':')[2]; bool isBigFont = CurrentMessage[CurrentMsgIndex].Split(':').Length == 4; if (target == "라임") { Story.StartCoroutine("PlayerPopUpSprite"); NameTag.localPosition = new Vector3(-2500, 400, 0); PlayerSprite.spriteName = "Player_라임-" + emotion; } else if (target == "라인") { Story.StartCoroutine("NPCPopUpSprite"); NameTag.localPosition = new Vector3(2500, 400, 0); NPCSprite.spriteName = "NPC_라인-" + emotion; } Community.IntroSetting(target, message); Community.EndMessage = false; MessageLabel.fontSize = isBigFont ? 400 : 225; CurrentMsgIndex += 1; } else //독백 끝 1. { Community.UIVisible(false); Pointer.color = new Color(255, 0, 142, 255); } break; case 3: if (CurrentMsgIndex < 1) { if (CurrentMsgIndex > 0) { if (MessageLabel.text.Length < CurrentMessage[CurrentMsgIndex - 1].Split(':')[1].Length) { return; } } string target = CurrentMessage[CurrentMsgIndex].Split(':')[0]; string emotion = CurrentMessage[CurrentMsgIndex].Split(':')[1]; string message = CurrentMessage[CurrentMsgIndex].Split(':')[2]; bool isBigFont = CurrentMessage[CurrentMsgIndex].Split(':').Length == 4; if (target == "라임") { Story.StartCoroutine("PlayerPopUpSprite"); NameTag.localPosition = new Vector3(-2500, 400, 0); PlayerSprite.spriteName = "Player_라임-" + emotion; } else if (target == "라인") { Story.StartCoroutine("NPCPopUpSprite"); NameTag.localPosition = new Vector3(2500, 400, 0); NPCSprite.spriteName = "NPC_라인-" + emotion; } Community.IntroSetting(target, message); Community.EndMessage = false; MessageLabel.fontSize = isBigFont ? 400 : 225; CurrentMsgIndex += 1; } else //독백 끝 1. { Community.UIVisible(false); PageNum = 1; TutorialOpen(); Pointer2.color = new Color(255, 0, 142, 255); } break; case 4: //뒷마당에서 독백 if (CurrentMsgIndex < 2) { if (CurrentMsgIndex > 0) { if (MessageLabel.text.Length < CurrentMessage[CurrentMsgIndex - 1].Split(':')[1].Length) { return; } } string target = CurrentMessage[CurrentMsgIndex].Split(':')[0]; string emotion = CurrentMessage[CurrentMsgIndex].Split(':')[1]; string message = CurrentMessage[CurrentMsgIndex].Split(':')[2]; bool isBigFont = CurrentMessage[CurrentMsgIndex].Split(':').Length == 4; if (target == "라임") { Story.StartCoroutine("PlayerPopUpSprite"); NameTag.localPosition = new Vector3(-2500, 400, 0); PlayerSprite.spriteName = "Player_라임-" + emotion; } else if (target == "라인") { Story.StartCoroutine("NPCPopUpSprite"); NameTag.localPosition = new Vector3(2500, 400, 0); NPCSprite.spriteName = "NPC_라인-" + emotion; } Community.IntroSetting(target, message); Community.EndMessage = false; MessageLabel.fontSize = isBigFont ? 400 : 225; CurrentMsgIndex += 1; } else //독백 끝 1. { Community.UIVisible(false); PageNum = 2; TutorialOpen(); Pointer3.color = new Color(255, 0, 142, 255); } break; case 5: //상점에서 독백 if (CurrentMsgIndex < 2) { if (CurrentMsgIndex > 0) { if (MessageLabel.text.Length < CurrentMessage[CurrentMsgIndex - 1].Split(':')[1].Length) { return; } } string target = CurrentMessage[CurrentMsgIndex].Split(':')[0]; string emotion = CurrentMessage[CurrentMsgIndex].Split(':')[1]; string message = CurrentMessage[CurrentMsgIndex].Split(':')[2]; bool isBigFont = CurrentMessage[CurrentMsgIndex].Split(':').Length == 4; if (target == "라임") { Story.StartCoroutine("PlayerPopUpSprite"); NameTag.localPosition = new Vector3(-2500, 400, 0); PlayerSprite.spriteName = "Player_라임-" + emotion; } else if (target == "라인") { Story.StartCoroutine("NPCPopUpSprite"); NameTag.localPosition = new Vector3(2500, 400, 0); NPCSprite.spriteName = "NPC_라인-" + emotion; } Community.IntroSetting(target, message); Community.EndMessage = false; MessageLabel.fontSize = isBigFont ? 400 : 225; CurrentMsgIndex += 1; } else //독백 끝 1. { Community.UIVisible(false); PageNum = 3; Community.NowFirstTalking = false; TutorialOpen(); } break; } } else //대화중의 경우 타입이펙트를 끈다. 타입이펙트를 끄면 대화가 끝난것으로 친다. { Community.typeEffect.Finish(); Community.EndMessage = true; if (!Community.NowFirstTalking) { Community.EndMessage = false; } } }
public void Storying()//호출하면 대화 이벤트를 시작한다. { TutorialSpeech.SetActive(false); StorySpeech.SetActive(true); BossSpeech.SetActive(false); if (Community.EndMessage)//대화 끝의 여부를 확인한다 끝난경우는 아래를 실행 { switch (StoryPage) { case 1: //------1번스토리의 경우 if (CurrentStoryIndex < 14) { if (CurrentStoryIndex > 0) { if (MessageLabel.text.Length < CurrentMessage[CurrentStoryIndex - 1].Split(':')[1].Length) { return; } } string target = CurrentMessage[CurrentStoryIndex].Split(':')[0]; string emotion = CurrentMessage[CurrentStoryIndex].Split(':')[1]; string message = CurrentMessage[CurrentStoryIndex].Split(':')[2]; bool isBigFont = CurrentMessage[CurrentStoryIndex].Split(':').Length == 4; if (target == "라임") { StartCoroutine("PlayerPopUpSprite"); NameTag.localPosition = new Vector3(-2500, 400, 0); PlayerSprite.spriteName = "Player_라임-" + emotion; } else if (target == "전산양") { StartCoroutine("NPCPopUpSprite"); NPCSprite.width = 2700; NPCSprite.height = 3500; NameTag.localPosition = new Vector3(2500, 400, 0); NPCSprite.spriteName = "NPC_전산양-" + emotion; } else if (target == "???") { StartCoroutine("NPCPopUpSprite"); NPCSprite.width = 2700; NPCSprite.height = 3500; NameTag.localPosition = new Vector3(2400, 400, 0); NPCSprite.spriteName = "NPC_사냥터지기-" + emotion; } Community.IntroSetting(target, message); Community.EndMessage = false; MessageLabel.fontSize = isBigFont ? 400 : 225; CurrentStoryIndex += 1; } else { FirstItemGive(); FirstItemGive(); FirstItemGive(); Community.typeEffect.Finish(); Community.UIVisible(false); StoryPage += 1; Tuto.StartFirstOut(); } break; case 2: //2번스토리의 경우 if (CurrentStoryIndex < 10) { if (CurrentStoryIndex > 0) { if (MessageLabel.text.Length < CurrentMessage[CurrentStoryIndex - 1].Split(':')[1].Length) { return; } } string target = CurrentMessage[CurrentStoryIndex].Split(':')[0]; string emotion = CurrentMessage[CurrentStoryIndex].Split(':')[1]; string message = CurrentMessage[CurrentStoryIndex].Split(':')[2]; bool isBigFont = CurrentMessage[CurrentStoryIndex].Split(':').Length == 4; if (target == "라임") { StartCoroutine("PlayerPopUpSprite"); NameTag.localPosition = new Vector3(-2500, 400, 0); PlayerSprite.spriteName = "Player_라임-" + emotion; } else if (target == "라인") { StartCoroutine("NPCPopUpSprite"); NPCSprite.width = 2300; NPCSprite.height = 3000; NameTag.localPosition = new Vector3(2500, 400, 0); NPCSprite.spriteName = "NPC_라인-" + emotion; } Community.IntroSetting(target, message); Community.EndMessage = false; MessageLabel.fontSize = isBigFont ? 400 : 225; CurrentStoryIndex += 1; } else { TutorialSpeech.SetActive(true); StorySpeech.SetActive(false); BossSpeech.SetActive(false); Tuto.NPCScale.transform.localScale = new Vector3(-1f, 1f, 1f); Community.UIVisible(false); Tuto.NextTutorial(); } break; case 99: //가구상인 break; case 98: //야간행상인 break; case 97: //스킬마스터 if (CurrentStoryIndex < 10) { if (CurrentStoryIndex > 0) { if (MessageLabel.text.Length < CurrentMessage[CurrentStoryIndex - 1].Split(':')[1].Length) { return; } } string target = CurrentMessage[CurrentStoryIndex].Split(':')[0]; string emotion = CurrentMessage[CurrentStoryIndex].Split(':')[1]; string message = CurrentMessage[CurrentStoryIndex].Split(':')[2]; bool isBigFont = CurrentMessage[CurrentStoryIndex].Split(':').Length == 4; if (target == "라임") { StartCoroutine("PlayerPopUpSprite"); NameTag.localPosition = new Vector3(-2500, 400, 0); PlayerSprite.spriteName = "Player_라임-" + emotion; } else if (target == "선생님") { StartCoroutine("NPCPopUpSprite"); NPCSprite.width = 2100; NPCSprite.height = 2850; NameTag.localPosition = new Vector3(2500, 400, 0); NPCSprite.spriteName = "NPC_마법선생-" + emotion; } Community.IntroSetting(target, message); Community.EndMessage = false; MessageLabel.fontSize = isBigFont ? 400 : 225; CurrentStoryIndex += 1; } else { TutorialSpeech.SetActive(true); StorySpeech.SetActive(false); BossSpeech.SetActive(false); Tuto.NPCScale.transform.localScale = new Vector3(-1f, 1f, 1f); Community.UIVisible(false); Tuto.PageNum = 9; Tuto.TutorialOpen(); //Tuto.NextTutorial(); } break; } //------------------2번스토리의 경우 } else//대화중의 경우 타입이펙트를 끈다. 타입이펙트를 끄면 대화가 끝난것으로 친다. { Community.typeEffect.Finish(); Community.EndMessage = true; } }