Bonjour
Je suis actuellement en terminale spécialité ISN et je code un petit jeu en pygame
j' en suis au moment de créer une jauge "automatique" un peu comme un curseur mais qui bouge a l'infinie en va est viens
j'ai commencé à faire une classe qui marchait jusqu’au moment d'arriver à la boucle infinie qui me fait tout crasher.
auriez-vous des idées pour le faire fonctionner??
Voici le code:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
 
import pygame, time, sys, math
import pygame.gfxdraw
from pygame.locals import*
pygame.init()
 
 
 
screen = pygame.display.set_mode((1045, 630))
 
 
font = pygame.image.load("fontecran1.jpg").convert()
screen.blit(font, (0,0))
font = pygame.font.SysFont("Verdana", 12)
pygame.display.flip()
degrade = pygame.image.load("degrade.gif").convert()
 
 
class curseur_vitesse():
    def __init__(self, xpos, ypos):
        self.xpos = xpos
        self.ypos = ypos
        self.val = 0
        self.surf = pygame.surface.Surface((15, 100))
        self.rectangle = pygame.rect.Rect((0, self.val, 15, 4))
 
 
 
    def draw(self):
        surf = self.surf.copy()
        surf.blit(degrade, (0, 0))
        pygame.draw.rect(surf, YELLOW, self.rectangle)
        if self.val == 0:
            while self.val < 100:
                pygame.time.delay(100)
                self.val = self.val + 1
                self.rectangle.move_ip(0, self.val+2)
                pygame.draw.rect(surf, YELLOW, self.rectangle)
                print(self.val)
 
        if self.val == 100:
            while self.val > 0:
                pygame.time.delay(100)
                self.val = self.val - 1
                self.rectangle.move_ip(0, self.val-2)
                pygame.draw.rect(surf, YELLOW, self.rectangle)
                print(self.val)
 
        screen.blit(surf, (self.xpos, self.ypos))
        return self.val
 
 
WHITE = (255, 255, 255)
BLACK = (0, 0, 0)
RED = (255, 50, 50)
YELLOW = (255, 255, 0)
GREEN = (0, 255, 50)
BLUE = (50, 50, 255)
GREY = (200, 200, 200)
ORANGE = (200, 100, 50)
CYAN = (0, 255, 255)
MAGENTA = (255, 0, 255)
TRANS = (1, 1, 1)
 
test = curseur_vitesse(100, 60)
 
 
 
 
n = 1
continuer = 1
while continuer == 1:
    test.draw()
    if event.type == pygame.QUIT:
        pygame.quit()
        sys.exit()
 
    pygame.display.flip()
Merci