protected override async Task ProcessUncanceledMessage(string message) { switch (_state) { case State.title: await ProcessTitleAsync(message); break; case State.description: await ProcessDescriptionAsync(message); break; case State.channel: await ProcessChannelAsync(message); break; case State.date: await ProcessDateAsync(message); _raid.AddStandardReminder(); break; case State.duration: await ProcessDurationAsync(message); break; case State.organisator: await ProcessOrganisatorAsync(message); break; case State.guild: await ProcessGuildAsync(message); break; case State.voicechat: await ProcessVoiceChatAsync(message); break; case State.accountType: await ProcessAccountTypeAsync(message); break; case State.roles: await ProcessRolesAsync(message); break; } }
private async Task <bool> CreateRaid(string message) { StringReader strReader = new StringReader(message); if (!await SetTitleAsync(strReader.ReadLine())) { return(false); } if (!await SetChannelAsync(strReader.ReadLine())) { return(false); } if (!await SetDateAsync(strReader.ReadLine())) { return(false); } if (!await SetDurationAsync(strReader.ReadLine())) { return(false); } if (!await SetOrganisatorAsync(strReader.ReadLine())) { return(false); } if (!await SetGuildAsync(strReader.ReadLine())) { return(false); } if (!await SetVoiceChatAsync(strReader.ReadLine())) { return(false); } if (!await SetAccountTypeAsync(strReader.ReadLine())) { return(false); } string line = strReader.ReadLine(); while (line != null && Parsers.TryParseRole(line, out int noPositions, out string roleName, out string roleDecription)) { _raid.AddRole(noPositions, roleName, roleDecription); line = strReader.ReadLine(); } if (_raid.Roles.Count == 0) { await UserExtensions.SendMessageAsync(_user, $"No role was found."); return(false); } string description = string.Empty; while (line != null) { if (!string.IsNullOrEmpty(description)) { description += "\n"; } description += line; line = strReader.ReadLine(); } _raid.Description = description; _raid.AddStandardReminder(); return(true); }