Beste lui,

Ik  mail voor de zoveelste keer over dit programmaatje dat ik heb geschreven, 
maar ik geef niet op.
Na verschillende keren de code aan te passen blijkt dit het beste te werken. En 
ik heb de clou!
In de while loop heb ik  ‘print z’ voor de gein ingevoegd en wat blijkt: Hij 
doorloopt de lus telkens en telt  van nul op naar oneindig hoever je maar kunt 
tellen!
Vandaar dat ‘elif z>3’ of ‘while z>3’ niet werkt. Hoe kan ik dat een halt toe 
roepen?
Ik heb al verschillende mail verstuurd en heb de code verscheidende malen 
herzien. Maar ben door jullie telkens op de verkeerde been gezet. (Al dan niet 
opzettelijk)
Nu zou ik hieraan eindelijk  een einde  willen breien, zodat ik hier een punt 
achter kan zetten.
Waarschijnlijk wordt de lus van pygame telkens opnieuw gelezen en tel hij dan 1 
bij z op, terwijl niet aan de if of elif voorwaarde wordt voldaan! 
De vraag is : hoe doorbreek ik dat probleem?

                                              In afwachting op uw reactie,

                                                                                
Groetjes Marc Stevens



import pygame
from pygame.locals import *

pygame.init()
screen = pygame.display.set_mode((1200,1000))
lucifer = pygame.image.load("lucifer.png")
plofkip=pygame.image.load("plofkip.png")
aangebrandekip=pygame.image.load("aangebrande-kip.png")
kerstdiner=pygame.image.load("kerstdiner.png")
x = y = z = 0
    
running = True
while running:
    for event in pygame.event.get():
        if event.type == QUIT:
            running = False
    mouse=pygame.mouse.get_pos()
    click=pygame.mouse.get_pressed()
    print (z)
    screen.fill((0,0,0))
    screen.blit(plofkip,(100,100))
    screen.blit(plofkip,(800,100))
    screen.blit(plofkip,(400,600))
    screen.blit(lucifer, (mouse))
    if x<100 and y<100:
        screen.blit(aangebrandekip,(100,100))
        z=z+1
    elif x>800 and y<100:
        screen.blit(aangebrandekip,(800,100))
        z=z+1
    elif 350<x<450 and 550<y<650:
        screen.blit(aangebrandekip,(400,600))
        z=z+1
    elif z>3: 
        screen.blit(kerstdiner,(0,0))
        
    pygame.display.update()

pygame.quit()
_______________________________________________
Python-nl mailing list
[email protected]
https://mail.python.org/mailman/listinfo/python-nl

Antwoord per e-mail aan