Een andere oplossing is om bij te houden welke kippen al aangebrand zijn,
en dat aan elke if/elif toe te voegen, zodat je ze maar één keer kunt
aansteken. Dan kan de loop blijven lopen, maar z wordt maar één keer per
kip opgehoogd.

Voorbeeldcode als ik niet op mijn mobiel ben.

Grts,
Bart

On Fri, Nov 28, 2014, 01:21 Marc Stevens <[email protected]> wrote:

>   Beste Reinoud,
>
> Het probleem is al opgelost.
> Ik had het ‘print z’  commando ingegeven en had niet in de gaten dat de
> muis op gebied stond (100,100) waar de z met een werd opgehoog en dit
> uitprintte.
> Dat heb ik verholpen door de voorwaarden uit te breiden met  ‘and
> click[0]==1’ . Dan moet je eerst klikken met de muis als je op dat
> specifieke gebied staat.
> Alleen wordt de lus zo vaak ververst dat z al meteen na 1 muis klik naar
> waarde 6 springt en het na het eindscherm. Dit is waarschijnlijk te
> verhelpen door na de pygame lus het commando ‘clock.tick(15)’ bij te voegen.
> Hierbij is het probleem voorzover verholpen. Deze laatste bijgevoegde code
> is de juiste. eind goed al goed.
>
> Alsnog bedankt voor de moeite,
>                                         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 and click[0]==1:
>         screen.blit(aangebrandekip,(100,100))
>         z=z+1
>     elif x>800 and y<100 and click[0]==1:
>         screen.blit(aangebrandekip,(800,100))
>         z=z+1
>     elif 350<x<450 and 550<y<650 and click[0]==1:
>         screen.blit(aangebrandekip,(400,600))
>         z=z+1
>     elif z>3:
>         screen.blit(kerstdiner,(0,0))
>
>     pygame.display.update()
>
> pygame.quit()
>
>  *From:* Reinoud van Leeuwen <[email protected]>
> *Sent:* Friday, November 28, 2014 12:44 AM
> *To:* Dutch Python developers and users <[email protected]>
> *Subject:* Re: [python-nl] probleeemje
>
> Wat je wilt is erg onduidelijk, maar ik vermoed dat je 'elif z>3' wilt
> vervangen door 'if z>3'
>
> Reinoud
>  On 28 Nov 2014, at 00:00, Marc Stevens <[email protected]> wrote:
>
>  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
>
>
>
>
> __________________________________________
> Python-nl mailing list
> [email protected]
> https://mail.python.org/mailman/listinfo/python-nl
>
>  ------------------------------
> _______________________________________________
> Python-nl mailing list
> [email protected]
> https://mail.python.org/mailman/listinfo/python-nl
> _______________________________________________
> Python-nl mailing list
> [email protected]
> https://mail.python.org/mailman/listinfo/python-nl
>
_______________________________________________
Python-nl mailing list
[email protected]
https://mail.python.org/mailman/listinfo/python-nl

Antwoord per e-mail aan