Example #1
0
    public override void OnEnter(Animator animator, AnimatorStateInfo stateInfo, int layerIndex)
    {
        base.OnEnter(animator, stateInfo, layerIndex);

        //添加位移
        Character.transform.DOMove(Character.transform.position + Character.transform.forward, duration)
        .SetEase(atkCurve);

        //每次,有进入状态.就创建一次  new AttackInfo()
        attackInfo = new AttackInfo();
        attackInfo.ResetInfo();
        isAttack = false;
    }
Example #2
0
    public override void OnEnter(CharacterState characterState, Animator animator, AnimatorStateInfo stateInfo)
    {
        animator.SetBool(TransitionParameter.Attack.ToString(), false);

        GameObject obj  = PoolManager.Instance.GetObject(PoolObjectType.ATTACKINFO);
        AttackInfo info = obj.GetComponent <AttackInfo>();

        obj.SetActive(true);
        info.ResetInfo(this, characterState.GetCharacterControl(animator));

        if (!AttackManager.Instance.CurrentAttacks.Contains(info))
        {
            AttackManager.Instance.CurrentAttacks.Add(info);
        }
    }
Example #3
0
        public override void OnEnter(CharacterState characterState, Animator animator, AnimatorStateInfo stateInfo)
        {
            characterControl = characterState.GetCharacterControl(animator);
            animator.SetBool(TransitionParameter.Attack.ToString(), false);

            GameObject obj  = Instantiate(Resources.Load("AttackInfo", typeof(GameObject))) as GameObject;
            AttackInfo info = obj.GetComponent <AttackInfo>();

            info.ResetInfo(this);

            if (!AttackManager.Instance.currentAttacks.Contains(info))
            {
                AttackManager.Instance.currentAttacks.Add(info);
            }
        }
Example #4
0
    public override void OnEnter(CharacterState characterState, Animator animator, AnimatorStateInfo stateInfo)
    {
        characterState.GetCharacterController2D(animator).attack = false;
        animator.SetBool("Attack", false);

        //GameObject obj = Instantiate(Resources.Load("AttackInfo", typeof(GameObject))) as GameObject;
        GameObject obj  = PoolManager.Instance.GetObject(PoolObjectType.ATTACKINFO);
        AttackInfo info = obj.GetComponent <AttackInfo>();

        //obj.SetActive(true);

        info.ResetInfo(this, characterState.GetCharacterController2D(animator));

        if (!AttackManager.Instance.CurrentAttacks.Contains(info))
        {
            AttackManager.Instance.CurrentAttacks.Add(info);
        }
    }