public static FadeAudio Do(AudioSource audio, EZAnimation.ANIM_MODE mode, float dest, EZAnimation.Interpolator interp, float dur, float delay, EZAnimation.CompletionDelegate startDel, EZAnimation.CompletionDelegate del)
    {
        FadeAudio fadeAudio = (FadeAudio)EZAnimator.instance.GetAnimation(EZAnimation.ANIM_TYPE.FadeAudio);

        fadeAudio.Start(audio, mode, dest, interp, dur, delay, startDel, del);
        return(fadeAudio);
    }
Beispiel #2
0
    public void FadeAudioSource(AudioSource audioSource, FadeAudio.FadeType type, float duration, float targetVolume, bool pause = true)
    {
        FadeAudio fadeAudioComponent = gameObject.AddComponent <FadeAudio>() as FadeAudio;

        fadeAudioComponent.fadeType     = type;
        fadeAudioComponent.audioSource  = audioSource;
        fadeAudioComponent.fadeDuration = duration;
        fadeAudioComponent.targetVolume = targetVolume;
        fadeAudioComponent.canBePaused  = pause;
    }
    public void FadeAudio(AudioSource source = null)
    {
        if (source == null)
        {
            source = primaryAudioSource;
        }
        Task fadeAudio = new FadeAudio(source, source.volume, 0, 0.5f);

        _tm.Do(fadeAudio);
    }
Beispiel #4
0
    public IEnumerator EndBattleCo2()
    {
        //this makes the sound fade twice when going back to scene - which is not desireable
        //yield return new WaitForSeconds(1f);

        uiButtonsHolder.SetActive(false);
        targetMenu.SetActive(false);
        magicMenu.SetActive(false);
        battleActive = false;
        if (!playerDead)
        {
            AudioManager.instance.music[4].volume = 0f;
            //StartCoroutine(FadeAudio.StartFade(AudioManager.instance.music[4], 1f, 0f));
            yield return(null);
        }

        for (int i = 0; i < activeBattlers.Count; i++)
        {
            if (activeBattlers[i].isPlayer)
            {
                for (int j = 0; j < GameManager.instance.playerStats.Length; j++)
                {
                    if (activeBattlers[i].charName == GameManager.instance.playerStats[i].charName)
                    {
                        GameManager.instance.playerStats[j].currentHp = activeBattlers[i].currentHp;
                        GameManager.instance.playerStats[j].currentMp = activeBattlers[i].currentMp;
                    }
                }
            }
            Destroy(activeBattlers[i].gameObject);
        }
        currentTurn = 0;
        GameManager.instance.battleActive = false;
        battleActive = false;
        Camera.SetActive(false);
        Player.instance.OnRunSpeed();
        EnemyDefeated ef = obj.AddComponent <EnemyDefeated>();

        ef.DetermineDefeated(npcName);

        // battlescene unactive
        BattleScene.SetActive(false);
        //Reset battler list
        activeBattlers.Clear();

        //find music from worldcontroller
        int sceneMusic = FindObjectOfType <WorldController>().musicToPlay;

        AudioManager.instance.music[sceneMusic].volume = 0f;
        AudioManager.instance.PlayMusic(sceneMusic);
        StartCoroutine(FadeAudio.StartFade(AudioManager.instance.music[sceneMusic], 3, 0.2f));
        //}
        Player.instance.UnMuteWalk();
    }
Beispiel #5
0
    //start battle   //this needs the name of enemies we want to spawn in battle.
    public void BattleStart(string[] enemiesToSpawn)
    {
        if (!battleActive)
        {
            //UIFade.instance.FadeToBlack();
            Player.instance.OffRunSpeed();
            Player.instance.MuteWalk();
            AudioManager.instance.PlayMusic(4);
            StartCoroutine(FadeAudio.StartFade(AudioManager.instance.music[4], 3, 0.2f)); //fade in battle music
                                                                                          //activating battlescene camera
            Camera.SetActive(true);
            //setting battleactive boolean true
            battleActive = true;
            //activating battlescene GameObject
            BattleScene.SetActive(true);

            //put players in scene. Only 1 player here
            for (int i = 0; i < playerPositions.Length; i++)
            {
                //Put players in right positions on the battle
                if (GameManager.instance.playerStats[i].gameObject.activeInHierarchy)
                {
                    // find player
                    for (int j = 0; j < playerPrefabs.Length; j++)
                    {
                        //add Stats for player in battle. Health, Strength, Defence, etc.
                        if (playerPrefabs[j].charName == GameManager.instance.playerStats[i].charName)
                        {
                            BattleChar newPLayer = Instantiate(playerPrefabs[j], playerPositions[i].position, playerPositions[i].rotation);
                            newPLayer.transform.parent = playerPositions[i];
                            activeBattlers.Add(newPLayer); //adding to list
                            CharStats thePlayer = GameManager.instance.playerStats[i];
                            activeBattlers[i].currentHp = Player.instance.currentHealth;
                            activeBattlers[i].maxHp     = Player.instance.maxHealth;
                            activeBattlers[i].currentMp = thePlayer.currentMp;
                            activeBattlers[i].maxMp     = thePlayer.maxMp;
                            activeBattlers[i].strength  = thePlayer.strength;
                            activeBattlers[i].defence   = thePlayer.defence;
                        }
                    }
                }
                //UIFade.instance.FadeFromBlack();
            }
            //Spawn enemies to battlefield and on the right places.
            for (int i = 0; i < enemiesToSpawn.Length; i++)
            {
                if (enemiesToSpawn[i] != "")
                {
                    for (int j = 0; j < enemyPrefabs.Length; j++)
                    {
                        if (enemyPrefabs[j].charName == enemiesToSpawn[i])
                        {
                            BattleChar newEnemy = Instantiate(enemyPrefabs[j], enemyPositions[i].position, enemyPositions[i].rotation);
                            newEnemy.transform.parent = enemyPositions[i];
                            activeBattlers.Add(newEnemy);
                        }
                    }
                }
            }
            turnWaiting = true; //when we start the battle . turnWaiting should be true.
            currentTurn = 0;    // or you could randomize who starts = Random.Range(0, activeBattlers.Count);
        }
    }