示例#1
0
    void Start()
    {
        //好用的東東但用不到 會取所有的AudioSource 連帶影響到BGM
        //SFXSource = FindObjectsOfType(typeof(AudioSource))as AudioSource[];
        //抓取全部有以下 Tag的物件
        SFXGameObjectGroup1 = GameObject.FindGameObjectsWithTag("Monster");
        SFXGameObjectGroup2 = GameObject.FindGameObjectsWithTag("SFXSource");//本來只有一個現在Player跟Canvas
        getHitEffect        = FindObjectOfType <GetHitEffect>();
        BGMSource           = GetComponent <AudioSource>();
        //音量初始
        //foreach (AudioSource SFXAudioSource in SFXSource)
        //{
        //    SFXAudioSource.volume = CentralData.GetInst().SFXVol;
        //}
        //所有有Monster Tag的物件的音量全部設定
        foreach (GameObject SFXAudioSource in SFXGameObjectGroup1)
        {
            SFXAudioSource.GetComponent <AudioSource>().volume = CentralData.GetInst().SFXVol;
        }
        foreach (GameObject SFXAudioSource in SFXGameObjectGroup2)
        {
            SFXAudioSource.GetComponent <AudioSource>().volume = CentralData.GetInst().SFXVol;
        }

        BGMSource.volume = CentralData.GetInst().BGMVol;
        BGMSlider.value  = CentralData.GetInst().BGMVol;
        SFXSlider.value  = CentralData.GetInst().SFXVol;
    }
 private void Awake()
 {
     //Add Audio Soruce. we need a global player because
     if (explosionSource == null)
     {
         explosionSource = gameObject.AddComponent <SFXAudioSource>();
     }
 }
    private void Awake()
    {
        DontDestroyOnLoad(this);

        if (Instance != null)
        {
            Destroy(this.gameObject);
        }
        else
        {
            Instance = this;
        }
    }
示例#4
0
    public void SetSFXVol(float v)
    {
        //CentralData.GetInst().SFXVol = v;
        //foreach (AudioSource audioSource in SFXSource)
        //{
        //    audioSource.volume = v;
        //}

        foreach (GameObject SFXAudioSource in SFXGameObjectGroup1)
        {
            SFXAudioSource.GetComponent <AudioSource>().volume = v;
        }
        foreach (GameObject SFXAudioSource in SFXGameObjectGroup2)
        {
            SFXAudioSource.GetComponent <AudioSource>().volume = v;
        }
    }
示例#5
0
    public void playSFX(string sfxName)
    {
        int randomLaserSound;

        switch (sfxName)
        {
        case "shipFiring":
            randomLaserSound = Random.Range(0, shipFiring.Length);
            SFXAudioSource.PlayOneShot(shipFiring[Random.Range(0, shipFiring.Length)]);
            break;

        case "shipTripleFiring":
            randomLaserSound = Random.Range(0, shipFiring.Length);
            SFXAudioSource.PlayOneShot(shipFiring[randomLaserSound]);
            SFXAudioSource.PlayOneShot(shipFiring[randomLaserSound]);
            break;

        case "nukeDeploy":
            SFXAudioSource.PlayOneShot(nukeDeploy);
            break;

        case "shipBoost":
            SFXAudioSource.PlayOneShot(shipBoost);
            break;

        case "shipBoostRecharge":
            SFXAudioSource.PlayOneShot(shipBoostRecharge);
            break;

        case "ammoPickup":
            SFXAudioSource.PlayOneShot(ammoPickup);
            break;

        case "shieldPowerUpPickup":
            SFXAudioSource.PlayOneShot(shieldPowerUpPickup);
            break;

        case "tripleBulletPowerUpPickup":
            SFXAudioSource.PlayOneShot(tripleBulletPowerUpPickup);
            break;

        case "berserkerPowerUpPickup":
            SFXAudioSource.PlayOneShot(shipBerserkerPowerUpPickup);
            break;

        case "laserPowerUpPickup":
            SFXAudioSource.PlayOneShot(laserPowerUpPickup);
            break;

        case "nukePowerUpPickup":
            SFXAudioSource.PlayOneShot(nukePowerUpPickup);
            break;

        case "shipHitDamage":
            SFXAudioSource.PlayOneShot(shipHitDamage);
            break;

        case "shipDeath":
            SFXAudioSource.PlayOneShot(shipDeath);
            break;

        case "enemyBulletHit":
            SFXAudioSource.PlayOneShot(enemyHit);
            break;

        case "enemyBerserkerHit":
            SFXAudioSource.PlayOneShot(enemyHit);
            break;

        case "enemyLaserHit":
            SFXAudioSource.PlayOneShot(enemyLaserHit);
            break;

        case "purpleBombFiring":
            SFXAudioSource.PlayOneShot(purpleBombFiring);
            break;

        case "purpleBombHit":
            SFXAudioSource.PlayOneShot(purpleBombHit);
            break;

        case "enemy4BulletFire":
            SFXAudioSource.PlayOneShot(enemy4BulletFire);
            break;

        default:
            //Only for tests purposes
            Debug.Log("Missing AudioClip association");
            break;
        }
    }
示例#6
0
    public void PlayRandomCoinClip()
    {
        int random = Random.Range(0, coinCollection.Count);

        SFXAudioSource.PlayOneShot(coinCollection [random]);
    }