25개 이상의 토픽을 선택하실 수 없습니다. Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

63 lines
1.4 KiB

  1. import pgzrun
  2. TITLE = "Paf l'oiseau"
  3. WIDTH = 400
  4. HEIGHT = 708
  5. def on_mouse_down(button):
  6. if (titi.vivant):
  7. print('Clic souris !')
  8. titi.speed = -6.5
  9. def on_key_down(key):
  10. if key == keys.A:
  11. titi.invincible = True
  12. print('vivant !!')
  13. def reset():
  14. print("Retour au départ...")
  15. titi.invincible = False
  16. titi.vivant = True
  17. titi.image = "bird1"
  18. titi.speed = 1
  19. titi.center = (75, 50)
  20. tube_superieur.center = (300, 0)
  21. tube_inferieur.center = (300, tube_superieur.height + ecart)
  22. def heurte_tube():
  23. print("Paf l'oiseau!")
  24. if titi.invincible == False:
  25. titi.image = "birddead"
  26. titi.vivant = False
  27. def update():
  28. titi.speed += gravite
  29. titi.y += titi.speed
  30. tube_superieur.x -= vitesse_defilement
  31. tube_inferieur.x -= vitesse_defilement
  32. if tube_superieur.right < 0 :
  33. tube_superieur.left = WIDTH
  34. tube_inferieur.left = WIDTH
  35. if titi.y > HEIGHT or titi.y < 0:
  36. reset()
  37. if (titi.colliderect(tube_superieur)) or (titi.colliderect(tube_inferieur)):
  38. heurte_tube()
  39. titi.vivant = False
  40. def draw():
  41. screen.blit('background', (0, 0))
  42. titi.draw()
  43. tube_superieur.draw()
  44. tube_inferieur.draw()
  45. titi = Actor('bird1')
  46. ecart = 140
  47. tube_superieur = Actor('top')
  48. tube_inferieur = Actor('bottom')
  49. vitesse_defilement = 1
  50. gravite = 0.3
  51. reset()
  52. # print(tube_superieur.width, tube_superieur.height)
  53. pgzrun.go()