void onClickHero(GameObject go)
    {
        if (hero != null)
        {
            hero.ani.Play(Monster.SHOOT);
            hero.pet.ani.Play(Monster.SHOOT);

            hero.ani.CrossFadeQueued(Monster.NORMAL);
            hero.pet.ani.CrossFadeQueued(Monster.NORMAL);

            SoundData.playPlayerAttackSound(GameManager.info.soundData[hero.resourceId], hero.playerData.characterId, 100);
        }
    }
Ejemplo n.º 2
0
    public void playAni(string id, float fadeTime = 0.2f)
    {
                #if UNITY_EDITOR
        //ff Log.log(resourceId, " id : " + id + "   hasani: " + hasAni + "    ui:  " + GameManager.me.uiManager.currentUI);
                #endif

        int i = 0;

        if (hasAni == false)
        {
            getAniDelayMethod().onCompleteAnimation(0.5f, id);
            //StartCoroutine(onCompleteAnimation(0.5f, id));
        }
        else
        {
            //fuckyou if(pet != null) pet.animation.CrossFade(id, aniFadeTime);
            aniFadeTime = fadeTime;

            if (id.Contains(SHOOT_HEADER))
            {
                setAniData(id);

//				Debug.Log(resourceId + "   " + _tempAniData.ani);

                float speedValue = (1.0f / ani[_tempAniData.ani].speed);

                if (GameManager.me.uiManager.currentUI == UIManager.Status.UI_PLAY)
                {
#if UNITY_EDITOR
                    //ff Log.log(resourceId, "_tempAniData.delayLength : " + _tempAniData.delayLength);
#endif

                    for (i = 0; i < _tempAniData.delayLength; ++i)
                    {
#if UNITY_EDITOR
                        //ff Log.log(resourceId, "getAniDelayMethod().onAttackAnimation : " , _tempAniData.delay[i], id, i, _tempAniData.ani);
#endif
                        getAniDelayMethod().onAttackAnimation(_tempAniData.delay[i] * speedValue, id, i, _tempAniData.ani, this);
                        //StartCoroutine(onAttackAnimation(_tempAniData.delay[i], id, i, _tempAniData.ani));
                    }

#if UNITY_EDITOR
                    if (BattleSimulator.nowSimulation && BattleSimulator.instance.skipTime > 1)
                    {
                    }
                    else
#endif
                    {
                        for (i = 0; i < _tempAniData.effectNum; ++i)
                        {
                            StartCoroutine(onAniEffect(_tempAniData.effect[i].delay * speedValue, _tempAniData.effect[i], _tempAniData.id, i, _tempAniData.ani));
                        }

                        for (i = 0; i < _tempAniData.camEffectNum; ++i)
                        {
                            StartCoroutine(onAniCamEffect(_tempAniData.camEffect[i].delay * speedValue, _tempAniData.camEffect[i], _tempAniData.ani));
                        }

                        for (i = 0; i < _tempAniData.soundNum; ++i)
                        {
                            StartCoroutine(onAniSound(_tempAniData.sound[i].delay * speedValue, _tempAniData.sound[i].id));
                        }
                    }
                }

                ++_setAniCount;
                nowAniId = _tempAniData.ani;

                if (GameManager.info.soundData.TryGetValue(resourceId, out SoundData.tempSoundData))
                {
                    int atkNum = 0;

                    if (Monster.ATK_INDEX.TryGetValue(_tempAniData.ani, out atkNum))
                    {
                        if (isPlayer)
                        {
                            SoundData.playPlayerAttackSound(SoundData.tempSoundData, playerData.characterId);
                        }
                        else
                        {
                            SoundData.playAttackSound(monsterData.resource, atkNum);
                        }
                    }
                }

                getAniDelayMethod().onCompleteAnimation(ani[_tempAniData.ani].length * speedValue, id);
                //StartCoroutine(onCompleteAnimation(animation[_tempAniData.ani].length, id));
            }
            else if (id == DEAD)
            {
                _setAniCount = 0;

                //fuckyouanimation.CrossFade(id, aniFadeTime);
                if (ani.GetClip(id))
                {
                    nowAniId = id;

                    renderAni();

                    getAniDelayMethod().onCompleteAnimation(ani[id].length * 1.1f, id);
                }
                else
                {
                    getAniDelayMethod().onCompleteAnimation(0.1f, id);
                }



                //StartCoroutine(onCompleteAnimation(animation[id].length, id));
            }
            else
            {
                _setAniCount = 0;
                //if(animation.clip == animation[id].clip && animation.isPlaying && animation[id].clip.isLooping) return;
                //if(animation.clip == animation[id].clip && animation.isPlaying && animation[id].clip.isLooping) return;
                nowAniId = id;
            }
        }
    }