コード例 #1
0
    /// <summary> private method for start play sound. </summary>
    private void PlaySound(AudioClip clip, float volume, ClipPriority priority = ClipPriority.Low)
    {
        if (MuteSound)
        {
            return;
        }
        AudioSourcePreset sourcePreset = SoundsSource.Find(s => !s.Source.isPlaying);

        if (sourcePreset == null)
        {
            sourcePreset = SoundsSource.Find(s => s.Priority < priority);
        }
        if (sourcePreset == null)
        {
            sourcePreset = SoundsSource.FindLast(s => s.Priority == priority);
        }
        if (sourcePreset == null)
        {
            return;
        }

        sourcePreset.Source.Stop();
        sourcePreset.Source.clip   = clip;
        sourcePreset.Source.volume = volume * SoundVolume;
        sourcePreset.Source.Play();
        sourcePreset.Priority = priority;
    }
コード例 #2
0
ファイル: Clipper.cs プロジェクト: jayvan/exileConMobile
    private ClipComparer GetComparer(ClipPriority priority)
    {
        switch (priority)
        {
        case ClipPriority.MOST_DAMAGED:
            return(new MostDamagedComparer());

        case ClipPriority.LEAST_DAMAGED:
            return(new LeastDamagedComparer());

        case ClipPriority.MOST_RARE:
            return(new HighestRarityComparer());

        case ClipPriority.LEAST_RARE:
            return(new LowestRarityComparer());

        case ClipPriority.WEAPON:
            return(new WeaponComparer());

        case ClipPriority.SHIELD:
            return(new ShieldComparer());

        case ClipPriority.BODY:
            return(new BodyComparer());

        case ClipPriority.AMULET:
            return(new AmuletComparer());

        case ClipPriority.RING:
            return(new RingComparer());

        case ClipPriority.JEWELRY:
            return(new JewelryComparer());

        default:
            throw new ArgumentOutOfRangeException(nameof(priority), priority, null);
        }
    }