/// <summary>
        /// Checks if this.voicepack refers to the same sounds as other.voicepack
        /// </summary>
        /// <returns>true when equal, false when not equal</returns>
        public bool EqualSoundFilenames(VoicepackExtended other)
        {
            if (!this.IsValidVoicepackLoaded() && !other.IsValidVoicepackLoaded())
            {
                return(true);
            }

            if (!this.IsValidVoicepackLoaded() || !other.IsValidVoicepackLoaded())
            {
                return(false);
            }

            var achievements      = Voicepack.groupManager.achievementList;
            var otherAchievements = other.Voicepack.groupManager.achievementList;

            return(VoicepackComparer.EqualAchievementLists(achievements, otherAchievements));
        }
        /// <summary>
        /// Merges the achievementsOptionsComponens (aka voicepack) of other into this
        /// </summary>
        /// <param name="other"></param>
        public void Merge(VoicepackExtended other)
        {
            if (!IsValidVoicepackLoaded())
            {
                throw new InvalidOperationException();
            }
            if (other == null || !other.IsValidVoicepackLoaded())
            {
                throw new ArgumentNullException();
            }

            VoicepackMerger.Merge(this, other);
        }