private static void SetVotingsFromFile(string directory, VotingHandler votingHandler) { string path = Path.Combine(directory, "votings.json"); if (File.Exists(path)) { try { using (StreamReader r = File.OpenText(path)) { string json = r.ReadToEnd(); VotingValue[] votings = JsonConvert.DeserializeObject <VotingValue[]>(json); foreach (var voting in votings) { votingHandler.AddVoting(voting.name, voting.choices, voting.time); } } } catch (Exception ex) { Console.WriteLine(string.Format("Voting import error: {0}", ex.Message)); } } else { Console.WriteLine("No votings found!"); } }
private static VotingHandler InitVotings(string directory, ITwitchClient client, OBSWebsocket obs, Config config) { VotingHandler votings = new VotingHandler(client, obs, config.channel, config.time); // Add Scene voting string action = "scene"; Regex reg = new Regex(config.scene); List <OBSScene> scenes = obs.ListScenes(); string[] choices = scenes.Where(s => reg.IsMatch(s.Name)).Select(s => s.Name).ToArray(); var afterVote = new Action <OBSWebsocket, IEnumerable <Tuple <string, int> > >(ChangeObsScene); votings.AddVoting(action, choices, config.time, afterVote); SetVotingsFromFile(directory, votings); return(votings); }