Foros del Web » Programando para Internet » Python »

Ayuda!

Estas en el tema de Ayuda! en el foro de Python en Foros del Web. Hola soy un novato en esto. Quiero hacer un juego con pygame muy sencillo en el que aparece la pantalla llena de circulos y un ...
  #1 (permalink)  
Antiguo 09/02/2011, 00:53
 
Fecha de Ingreso: febrero-2011
Mensajes: 1
Antigüedad: 13 años, 2 meses
Puntos: 0
Exclamación Ayuda!

Hola soy un novato en esto. Quiero hacer un juego con pygame muy sencillo en el que aparece la pantalla llena de circulos y un circulo es de otro color y el objetivo es presionar el circulo diferente. Pero cada ves que juegas el juego el circulo esta en otro lugar.

Hasta el momento ya tengo ya la pantalla llena de círculos y un circulo de otro color que lo puse con un random para que cada ves este en un sitio diferente. Pero nose como hacerle para que cuando le pique al circulo simplemente hacer un print de ganaste.

Se que con un evento de MOUSEBUTTONDOWN y con un IF. Pero como cada ves cambia de lugar el circulo nose como indicarle donde esta el circulo.

Si alguien puede ayudarme se lo agradecería.
  #2 (permalink)  
Antiguo 09/02/2011, 01:04
Avatar de razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 1 mes
Puntos: 1360
Respuesta: Ayuda!

Si postearas el código seria mas fácil saber lo que estas tratando de hacer. Y seria mas fácil ayudarte.
  #3 (permalink)  
Antiguo 09/02/2011, 10:28
Avatar de razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 1 mes
Puntos: 1360
Respuesta: Ayuda!

Es mas o menos esto lo que quieres?
Código Python:
Ver original
  1. import random
  2. import pygame
  3. from pygame.locals import *
  4. width, height = 640, 480
  5.  
  6. pygame.init()
  7. screen = pygame.display.set_mode((width, height))
  8. clock = pygame.time.Clock()
  9. done = 1
  10. r = 30
  11. l = random.sample([(x, y) for x in xrange(r, width-r, r) for y in xrange(r, height-r, r)], 5)
  12. for i in l: pygame.draw.circle(screen, (0, 0, 255), i, r)
  13.  
  14. font = pygame.font.Font(None, 20)
  15. text = font.render('ganaste', True, (0, 255, 0))
  16. textRect = text.get_rect()
  17.  
  18. pygame.display.flip()
  19.  
  20. def distance(a, b):
  21.     return ( (a[0] - b[0]) * (a[0] - b[0]) + (a[1] - b[1]) * (a[1] - b[1]) ) ** .5
  22. while done:
  23.     screen.fill((0, 0, 0))
  24.     for e in pygame.event.get():
  25.         if e.type == QUIT: done = 0
  26.         if e.type == MOUSEBUTTONDOWN:
  27.             pos = pygame.mouse.get_pos()
  28.             for i in l[:]:
  29.                 if distance(i, pos) < r:
  30.                     textRect.center = i
  31.                     screen.blit(text, textRect)
  32.                     l.remove(i)
  33.                     break
  34.            
  35.             for i in l: pygame.draw.circle(screen, (0, 0, 255), i, r)
  36.             if not l:
  37.                 done = 0
  38.             pygame.display.flip()
  39.     clock.tick(80)

Etiquetas: Ninguno
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:24.