private async Task <int> WriteMe(string textToWrite, string layer, string stringDelimiters = " ,!.?", int delayMilliseconds = 500) { //Set a random-ish display layer await _misty.SetTextDisplaySettingsAsync ( layer, new TextSettings { Weight = _random.Next(600, 1001), Blue = (byte)_random.Next(0, 256), Red = (byte)_random.Next(0, 256), Green = (byte)_random.Next(0, 256), Size = _random.Next(70, 100), VerticalAlignment = ImageVerticalAlignment.Bottom, Style = ImageStyle.Italic, FontFamily = "Calibri", HorizontalAlignment = ImageHorizontalAlignment.Center, Wrap = true, PadTop = _random.Next(180, 220), Opacity = 1, PlaceOnTop = true, Rotation = _random.Next(5, 11), Visible = true } ); string[] stringArray = Regex.Split(textToWrite, $@"(?<=[{stringDelimiters}])"); foreach (string text in stringArray) { _misty.DisplayText(text, layer, null); if (!_misty.Wait(delayMilliseconds)) { return(stringArray.Length); } } return(stringArray.Length); }