public override void Update(float deltaTime) { base.Update(deltaTime); var enemy3Controller = enemy as Enemy3Controller; if (enemy3Controller.IsSeeingPlayer(_parameters.distanceToAttack) && GameManager.Player.isControlled) { enemy.SetState(Enemy3Controller.AttackingState); return; } _rigidbody.velocity = new Vector2(_direction * _parameters.Stats.velocity, _rigidbody.velocity.y); if (_canChangeDirection && IsGoingToChangeDirection()) { ChangeDirection(); } // Flip del sprite. var isOrientationRight = _direction > 0; _spriteRenderer.flipX = !isOrientationRight; _staffController.UpdateXOffset(isOrientationRight); }
public override void Update(float deltaTime) { base.Update(deltaTime); // Flip del sprite. var directionFromPlayer = Mathf.Sign(GameManager.Player.transform.position.x - _transform.position.x); var isOrientationRight = directionFromPlayer > 0; _spriteRenderer.flipX = !isOrientationRight; _staffController.UpdateXOffset(isOrientationRight); if (_parameters.hasBeenSpawned) { return; } if (!GameManager.Player.isControlled) { enemy.SetState(Enemy3Controller.IdleState); } else if (!IsSeeingPlayer()) { enemy.SetState(Enemy3Controller.IdleState); }/* * if (canStopAttacking) * { * enemy.SetState(Enemy3Controller.IdleState); * } * else if (!_canAlreadyStopAttackingDelayer.AlreadyHasADelay()) * { * _canAlreadyStopAttackingDelayer.SetNewDelay(TimeBeforeStopAttacking); * } * } * else * { * _canAlreadyStopAttackingDelayer.StopDelay(); * }*/ }