//If the user put a "!" or similar infront, check list for commands
        //public CommandIdentifier(SoundboardManager sm, FileManager fm, IrcClient client, AudioDeviceManager adm, NotificationSoundManager nsm, TTS tts, CommantProcessor cp, ExecutionOrderManager eom)
        //{
        //    this.sm = sm;
        //    this.fm = fm;
        //    this.client = client;
        //    this.adm = adm;
        //    this.nsm = nsm;
        //    this.tts = tts;
        //    this.cp = cp;
        //    this.eom = eom;
        //    LoadSettings();
        //}

        public static void LoadSettings()
        {
            commandCharacter = FileManager.GetCommandCharacter();
            whitelistOnly    = FileManager.GetWhitelistOnly();
            commands         = FileManager.GetCommandsList();
        }
Example #2
0
        //Trigger sound by chat
        public static void PlaySoundeffect(Comment c, Command command)
        {
            CheckCooldownList(); //Clear out the list of any left over user

            //Info on how to use this command
            if (c.comment.Substring(1) == command.name)
            {
                string folders = " ";
                foreach (string s in subDirektories)
                {
                    folders += GetDirName(s) + ", ";                                  //Display all folders/Sublibraries to choose from
                }
                client.SendChatMessage("Use " + FileManager.GetCommandCharacter() + "play + a sound name, ID or category OR random. Sublibraries:" + folders);
                return;
            }
            //If the user is on the cooldown list, return
            foreach (UserCooldown uc in cooldownList)
            {
                if (uc.username == c.user)
                {
                    if (!responseCooldownActive)
                    {
                        client.SendChatMessage("@" + c.user + " not ready (" + uc.TimeLeft() + "sec)");
                        SetResponseCooldown();
                        return;
                    }
                    else
                    {
                        return;
                    }
                }
            }
            //Play a random sound out of the library
            if (c.comment.Substring(1) == command.name + " random")
            {
                PlayRandom(c);
            }
            //Search for a specific sound. ID or name
            else if (c.comment.Substring(1).Contains(command.name) && c.comment.Length > command.name.Length)
            {
                //Get the comment Substring without !play
                string cSubstring = c.comment.Substring(c.comment.IndexOf(" ") + 1);
                int    idSearch; //ID to try to parse

                //Check if it's a ID
                if (int.TryParse(cSubstring, out idSearch))
                {
                    if (GetPathByID(idSearch) != null)
                    {
                        PlayID(c, idSearch);
                    }
                }
                //Check if it's a Sublibrarie name
                foreach (string s in subDirektories)
                {
                    if (cSubstring.Equals(s.Substring(s.LastIndexOf(@"\") + 1)))
                    {
                        PlayFolder(c, s);
                    }
                }
                //Check if it's a soundfile name
                foreach (string path in soundFiles)
                {
                    if (cSubstring.Equals(FileManager.GetSoundname(path)))
                    {
                        PlaySound(path, c, 0);
                    }
                }
            }
        }