public string buildClosing() { string result = ""; while (letterQueue.Count > 0 && currentLE.type == LetterEvent.Type.CLOSING) { result += currentLE.text.Replace("[player]", GameManager.playerName); currentLE = letterQueue.Dequeue(); } return(result); }
void Start() { timer = GameObject.Find("GameManager").GetComponent <Timer>(); player = GameObject.Find("Player").GetComponent <Transform>(); letterEvent = GameObject.Find("QuickTimeEvent").GetComponent <LetterEvent>(); //Get last letter from this gameobject name and it to lower case letter character = this.gameObject.name.Substring(6).Remove(1).ToLower(); }
public string buildHeader() { string result = ""; while (letterQueue.Count > 0 && currentLE.type == LetterEvent.Type.INTRO) { result += currentLE.text; currentLE = letterQueue.Dequeue(); } return(result); }
void Start() { generatorManager = new GeneratorManager(offset, radius, mask, spacing, dropMin, dropMax, ressource, colliders); spriteRenderer = GetComponent <SpriteRenderer>(); letterEvent = GameObject.Find("QuickTimeEvent").GetComponent <LetterEvent>(); player = GameObject.Find("Player").GetComponent <Player>(); timer = GameObject.Find("GameManager").GetComponent <Timer>(); }
public string buildLetter() { string result = ""; if (letterQueue.Count == 0) { return(""); } while (currentLE.type != LetterEvent.Type.EOL) { switch (currentLE.type) { case LetterEvent.Type.INTRO: header.text = buildHeader(); break; case LetterEvent.Type.SENTENCE: result += " " + currentLE.text.Replace("[player]", GameManager.playerName); break; case LetterEvent.Type.CLOSING: result += checkForMadLibs(); closing.text = buildClosing(); break; case LetterEvent.Type.CHOICE: result += resolveChoice().Replace("[player]", GameManager.playerName); break; case LetterEvent.Type.EOP: result += "\n\n "; break; case LetterEvent.Type.EOL: default: break; } currentLE = letterQueue.Dequeue(); } result = result.Replace("[player]", GameManager.playerName); return(result); }
public string buildParagraph() { string result = ""; if (letterQueue.Count == 0) { return(""); } while (letterQueue.Count > 0) { bool breakLoop = false; switch (currentLE.type) { case LetterEvent.Type.SENTENCE: result += " " + currentLE.text.Replace("[player]", GameManager.playerName); break; case LetterEvent.Type.CHOICE: breakLoop = true; break; case LetterEvent.Type.EOP: result += "\n\n "; breakLoop = true; break; case LetterEvent.Type.EOL: breakLoop = true; break; default: breakLoop = true; break; } if (breakLoop) { break; } currentLE = letterQueue.Dequeue(); } return(result); }
private LetterEvent[] getChoices() { List <LetterEvent> result = new List <LetterEvent>(); if (currentLE.type != LetterEvent.Type.CHOICE) { return(null); } while (currentLE.type == LetterEvent.Type.CHOICE) { result.Add(currentLE); currentLE = letterQueue.Dequeue(); } for (int i = 0; i < result.Count; i++) { buttonList[i].text = wrappers[i].getWrappedString(result[i].text); } waitingForInput = true; return(result.ToArray()); }
public void selectChoice(int buttonNum) { if (!waitingForInput) { return; } if (buttonNum < choices.Length) { chosenLE = choices[buttonNum]; waitingForInput = false; bodyRevealer.setPlaying(true); bodyRevealer.addText(" " + chosenLE.text); for (int i = 0; i < buttonList.Length; i++) { buttonList[i].text = ""; } choices = null; GameManager.playerPositiveScore += chosenLE.positive; GameManager.playerNegativeScore += chosenLE.negative; GameManager.playerChoiceHistory.Add(chosenLE.eventID); } }
private async Task SendEmailAsync() { MailAddress from = new MailAddress("*****@*****.**", "Stas"); MailAddress to = new MailAddress("*****@*****.**"); MailMessage m = new MailMessage(from, to); m.Subject = "Аппарат ТСА"; m.Body = $"Новый Аппарат создан. И доступен для изготовления."; SmtpClient smtp = new SmtpClient("smtp.gmail.com", 587); smtp.Credentials = new NetworkCredential("*****@*****.**", ""); smtp.EnableSsl = true; try { await smtp.SendMailAsync(m); LetterEvent?.Invoke(this, new NewVentEventArgs("Письмо отправлено.")); } catch (Exception e) { Console.WriteLine($"\n\nДоставка письма не получилась. {e.Message}"); } }
private string resolveChoice() { List <LetterEvent> result = new List <LetterEvent>() { currentLE }; while (letterQueue.Peek().type == LetterEvent.Type.CHOICE) { currentLE = letterQueue.Dequeue(); result.Add(currentLE); } foreach (LetterEvent e in result) { foreach (int j in GameManager.playerChoiceHistory) { if (e.relatedToID == j) { return(e.text); } } } return("BAD CHOICE MADE"); }
void Start() { letterQueue = new Queue <LetterEvent>(GameManager.playerQueue); currentLE = letterQueue.Dequeue(); wrappers = new TextMeshWrapper[buttonList.Length]; for (int i = 0; i < buttonList.Length; i++) { wrappers[i] = buttonList[i].GetComponent <TextMeshWrapper>(); } sendButton.SetActive(false); sendText.SetActive(false); if (inFastForward) { headerRevealer.charDelay = shortDelay; bodyRevealer.charDelay = shortDelay; closingRevealer.charDelay = shortDelay; } else { headerRevealer.charDelay = regularDelay; bodyRevealer.charDelay = regularDelay; closingRevealer.charDelay = regularDelay; } }
void Start() { letterQueue = GameManager.palQueue; currentLE = letterQueue.Dequeue(); textWrapper.addAndWrapText(buildLetter()); }
// Update is called once per frame void Update() { if (initialDelayTimer < initialDelayDuration) { initialDelayTimer += Time.deltaTime; } else { if (state == State.LetterWriting) { switch (currentLE.type) { case (LetterEvent.Type.INTRO): headerRevealer.begin(); headerRevealer.setText(buildHeader()); break; case (LetterEvent.Type.SENTENCE): if (headerRevealer.playing() || waitingForInput) { break; } bodyRevealer.begin(); string paragraph = buildParagraph(); bodyRevealer.addText(paragraph); break; case (LetterEvent.Type.CLOSING): if (bodyRevealer.playing() || waitingForInput) { break; } closingRevealer.begin(); closingRevealer.setText(buildClosing()); break; case (LetterEvent.Type.CHOICE): if (bodyRevealer.playing()) { break; } if (choices == null) { choices = getChoices(); } break; case LetterEvent.Type.EOP: headerRevealer.allText += '\n'; currentLE = letterQueue.Dequeue(); break; case LetterEvent.Type.EOL: state = State.LetterDone; break; case LetterEvent.Type.ERROR: Debug.Log("ERROR"); break; } } else if (state == State.LetterDone) { sendButton.SetActive(true); sendText.SetActive(true); } } }
public void OnLetter(LetterEventArgs e) { LetterEvent?.Invoke(this, e); }
private void CreateLetterEvent(string[] entry, int i) { LetterEvent e = new LetterEvent(); e.eventID = Convert.ToInt32(entry[0]); if (entry[1].Equals("player")) { e.speaker = LetterEvent.Speaker.PLAYER; e.group = Convert.ToInt32(entry[2]); e.type = ResolveLetterType(entry[3], i); e.text = entry[4]; e.prompt = entry[5]; if (!entry[6].Equals("0")) { e.positive = Convert.ToInt32(entry[6]); } if (!entry[7].Equals("0")) { e.negative = Convert.ToInt32(entry[7]); } if (!entry[8].Equals("-1")) { e.relatedToID = Convert.ToInt32(entry[8]); } e.goToNext = ResolveSpeakerType(entry[9]); GameManager.playerQueue.Enqueue(e); } else if (entry[1].Equals("narrative")) { e.speaker = LetterEvent.Speaker.NARRATIVE; e.group = Convert.ToInt32(entry[2]); e.type = ResolveLetterType(entry[3], i); e.text = entry[4]; e.prompt = entry[5]; if (!entry[6].Equals("0")) { e.positive = Convert.ToInt32(entry[7]); } if (!entry[7].Equals("0")) { e.negative = Convert.ToInt32(entry[7]); } if (!entry[8].Equals("-1")) { e.relatedToID = Convert.ToInt32(entry[8]); } e.goToNext = ResolveSpeakerType(entry[9]); GameManager.narrativeQueue.Enqueue(e); } else if (entry[1].Equals("pal")) { e.speaker = LetterEvent.Speaker.PAL; e.group = Convert.ToInt32(entry[2]); e.type = ResolveLetterType(entry[3], i); e.text = entry[4]; e.prompt = entry[5]; if (!entry[6].Equals("0")) { e.positive = Convert.ToInt32(entry[6]); } if (!entry[7].Equals("0")) { e.negative = Convert.ToInt32(entry[7]); } if (!entry[8].Equals("-1")) { e.relatedToID = Convert.ToInt32(entry[8]); } e.goToNext = ResolveSpeakerType(entry[9]); GameManager.palQueue.Enqueue(e); } else { Debug.Log("Error: cannot resolve speaker for entry " + entry[1] + i.ToString()); } }
private IEnumerator textLoop(Text textObject, GraphicColorLerp colorLerp, float initialDelay, float[] timers, int index) { while (initialDelay > 0) { if (Input.GetButtonDown("Submit")) { timers[0] = .1f; timers[1] = .1f; break; } initialDelay -= Time.deltaTime; yield return(null); } Color start = colorLerp.startColor; Color end = colorLerp.endColor; while (true) { curIndex = cutSceneQueue.Dequeue(); switch (curIndex.type) { case LetterEvent.Type.SENTENCE: //continue break; case LetterEvent.Type.EOL: loadNextScene(); //break out of scene yield break; } textObject.text = curIndex.text; colorLerp.startColor = start; colorLerp.endColor = end; colorLerp.startColorChange(); yield return(null); timers[index] = holdDuration - gapBetweenSentences; while (timers[index] > 0) { if (Input.GetButtonDown("Submit")) { timers[0] = .1f; timers[1] = .1f; } timers[index] -= Time.deltaTime; yield return(null); } colorLerp.startColor = end; colorLerp.endColor = start; colorLerp.startColorChange(); yield return(null); timers[index] = holdDuration + gapBetweenSentences; while (timers[index] > 0) { if (Input.GetButtonDown("Submit")) { timers[0] = .1f; timers[1] = .1f; } timers[index] -= Time.deltaTime; yield return(null); } } }