@startuml Geometry Dash - Diagramme d'etats du joueur start :avancer; repeat partition "en l'air" { if (Le joueur percute un obstacle ?) then (Oui) :Le joueur meurt; stop endif } partition "Forme" { switch (Forme) case (Forme fusée) :Mode fusée; case (Forme roue) :Mode roue; case (Forme sens inversé) :Mode sens inversé; case (Forme gravité inversée) :Mode gravité inversée; endswitch if (Le joueur percute un obstacle ?) then (Oui) :Le joueur meurt; stop endif } partition "Activer un bonus" { switch (Type de bonus) case (Temps ralenti) :Activer ralentissement du temps; :Temps ralenti : 3 secondes; if (Le joueur percute un obstacle ?) then (Oui) :Le joueur meurt; stop endif case (Annulation d'obstacle) :Supprimer tous les obstacles; :Durée : 3 secondes; endswitch } partition "Menu de Pause" { if (Le joueur clique sur reprendre?) then (Oui) :Le niveau reprend correctement; else (le joueur clique sur quitter) stop endif } while (Le joueur n'a pas fini le niveau) stop @enduml