public override void Update() { base.Update(); _crow.setPlayerPosition(_crow.isPlayerInAggroRange()); if (Time.time >= _crow.getTimer() + _crow.getUnBreakableBondCountDown() && _crow.GetWaterCrow() != null) { _stateMachine.ChangeState(_crow._unbreakableBond); } if (!_crow.IsIneluttable()) { if (_isDetectingPlayer) { _stateMachine.ChangeState(_crow._PlayerDetect); } } if (_isDetectingWall) { _crow._IdleState.setFlipAfterIdle(true); _stateMachine.ChangeState(_crow._IdleState); } else { _crow.Move(_entityData.movementSpeed); } }