raquette.gd 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. @icon("res://composants/objets/raquette/IconeRaquette.svg")
  2. class_name Raquette
  3. extends StaticBody2D
  4. const VITESSE_MAX: float = 14.0
  5. var _vitesse: float = 0.0
  6. func _physics_process(_delta: float) -> void:
  7. if not est_vivant():
  8. return
  9. position.x += _vitesse
  10. position.x = clampf(position.x, 0.0, 400.0)
  11. func _unhandled_input(evenement: InputEvent) -> void:
  12. if not est_vivant():
  13. return
  14. if evenement is InputEventMouseMotion:
  15. _bouger_avec_souris(evenement)
  16. elif evenement is InputEventKey:
  17. _bouger_avec_clavier(evenement)
  18. func est_vivant() -> bool:
  19. return true
  20. func _bouger_avec_souris(evenement_souris: InputEventMouseMotion) -> void:
  21. position.x = evenement_souris.get_position().x
  22. func _bouger_avec_clavier(evenement_clavier: InputEventKey) -> void:
  23. if evenement_clavier.is_action_pressed("bouger_a_droite") or evenement_clavier.is_action_released("bouger_a_gauche"):
  24. _vitesse += VITESSE_MAX
  25. elif evenement_clavier.is_action_pressed("bouger_a_gauche") or evenement_clavier.is_action_released("bouger_a_droite"):
  26. _vitesse -= VITESSE_MAX