public override void Attack() { if (CanAttack()) { MotionState = ArcherAttackMotionState.MotionState.First; } }
// Use this for initialization protected override void Start() { base.Start(); ArcherAttackMotionState.Initialize(transform, simpleAnim); ArcherAttackMotionState.AttackEvent.Subscribe(forward => { ShootArrow(forward); }).AddTo(this); ArcherAttackMotionState.NextStateEvent.Subscribe(state => { MotionState = state; }).AddTo(this); ArcherAttackMotionState.CammeraFixedEvent.Subscribe(flag => { cameraInstance.FixFlag = flag; }).AddTo(this); }