49 lines
1.2 KiB
C#
49 lines
1.2 KiB
C#
using System;
|
|
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using UnityEngine;
|
|
|
|
public class AvatarGroup : MonoBehaviour
|
|
{
|
|
private Animator[] mAnimators;
|
|
|
|
private void Awake()
|
|
{
|
|
//mAnimators = GetComponentsInChildren<Animator>();
|
|
mAnimators = new Animator[1] { GetComponentInChildren<Animator>()};
|
|
}
|
|
|
|
public void SetACTrigger(SoldierACTrigger pTrigger, float pSpeed = 1)
|
|
{
|
|
//reset all trigger
|
|
foreach (string tTriggerName in Enum.GetNames(typeof(SoldierACTrigger)))
|
|
{
|
|
for (int i = 0; i < mAnimators.Length; i++)
|
|
{
|
|
if (!mAnimators[i].enabled)
|
|
continue;
|
|
|
|
if (mAnimators[i].HasState(0, Animator.StringToHash("Base Layer." + tTriggerName)))
|
|
mAnimators[i].ResetTrigger(tTriggerName);
|
|
}
|
|
}
|
|
|
|
for (int i = 0; i < mAnimators.Length; i++)
|
|
{
|
|
if (!mAnimators[i].enabled)
|
|
continue;
|
|
|
|
mAnimators[i].speed = pSpeed;
|
|
mAnimators[i].SetTrigger(pTrigger.ToString());
|
|
}
|
|
}
|
|
}
|
|
|
|
public enum SoldierACTrigger
|
|
{
|
|
TriggerIdle,
|
|
TriggerRun,
|
|
TriggerAttack,
|
|
TriggerWin,
|
|
TriggerDie
|
|
} |