raquette.gd 1002 B

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