public void Generate() { gameObject.SetActive(true); int diff = DayManager.instance.excitement - lastExcitement; graph.sprite = diff > 0 ? upwardGraph : diff < 0 ? downwardGraph : neutralGraph; lastExcitement = DayManager.instance.excitement; views.text = Mathf.RoundToInt( Random.value * Mathf.Pow(10, 1 + 2 * Mathf.Log(Mathf.Max(1, DayManager.instance.excitement)))).ToString(); advice.text = DayManager.note; foreach (Transform transform in comments) { Destroy(transform.gameObject); } foreach (CommentChain commentChain in CommentChainManager.comments.OrderBy(c => c.adviceRating).Take(3)) { CommentChain.Comment comment = commentChain.comments.OrderBy(c => Random.value).FirstOrDefault(); CommentChainManager.CreateComment(comments, commentChain, comment, messagePrefab).GetComponentInChildren <TextMeshProUGUI>().fontSize = 16; } DayManager.Delay(0, delegate { // Force layout rebuild VerticalLayoutGroup layout = comments.GetComponent <VerticalLayoutGroup>(); layout.enabled = false; layout.enabled = true; }); }
// Act while live public override void Play(DrugState state) { Sprite originalMouth = state.slug.mouth.sprite; Sprite originalEyes = state.slug.eyes.sprite; state.slug.mouth.sprite = sneezeMouth; state.slug.eyes.sprite = sneezeEyes; state.slug.audio.PlayOneShot(sneezeSound); DayManager.Delay(sneezeSound.length / state.slug.audio.pitch, delegate { state.slug.mouth.sprite = originalMouth; state.slug.eyes.sprite = originalEyes; }); }
public void Generate(Procedure procedure) { description.text = procedure.description; // Removes all children, skipping over description and "instructions" title for (int i = 2; i < conditions.childCount; i++) { Destroy(conditions.GetChild(i).gameObject); } GenerateSlug(procedure.firstSlug); GenerateSlug(procedure.secondSlug); GenerateSlug(procedure.thirdSlug); GenerateSlug(procedure.fourthSlug); DayManager.Delay(0, Layout); }