public async Task Save([Remainder, Summary("Filename")] string filename) { if (characters == null) { characters = new List <CharacterNode>(); } CharacterNode old = findCharacter(Context.User); if (old == null) { await Context.Channel.SendMessageAsync("You have no active character."); } else { if (filename.Contains(' ') || filename.Contains('\\') || filename.Contains('/')) { await Context.Channel.SendMessageAsync("That is not an adequite filename."); } else { int error = old.saveToFile(Context.User, filename); if (error == 1) { await Context.Channel.SendMessageAsync("An error occured while saving your character. Please try again later and contact a developer."); } else if (error == 2) { await Context.Channel.SendMessageAsync("That file already exists. Please select a new filename."); } else { await Context.Channel.SendMessageAsync("Character saved to " + filename); } } } }