Ver Mensaje Individual
  #13 (permalink)  
Antiguo 04/11/2011, 21:07
Avatar de razpeitia
razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 2 meses
Puntos: 1360
Respuesta: Que IDE utilizar con python(pygame)

Pero efectivamente es tu código.

Código Python:
Ver original
  1. while True:
  2.     if pygame.time.get_ticks():
  3.         continue
Aquí es donde te quedas trabado, pygame.time.get_ticks() te regresa el tiempo en milisegundos que hay entre pygame.init() y pygame.time.get_ticks().

Por eso tu condición siempre sera verdadera causando que nunca se ejecute el resto de tu código.

Entonces esto no es problema del IDE es problema de tu código.

Aquí lo medio arregle para que funcionara, solo le añadi la indentación correcta, cambie algo de código de lugar y añadí algo de código para controlar el framerate.

Código Python:
Ver original
  1. #Importaciones
  2. from pygame.locals import *
  3. import os
  4. import pygame
  5. import sys
  6. #Bucle principal
  7. def main():
  8.     #Iniciar Pygame
  9.     pygame.init()
  10.     #Variables constantes
  11.     fps=60
  12.     tiempo=0
  13.     BLANCO=(255,255,255)
  14.     pelotaX=50
  15.     pelotaY=50
  16.     pelotaDX=5
  17.     pelotaDY=5
  18.     raquetaX=50
  19.     raquetaY=250
  20.     raquetaDY=5
  21.     raqueta2X=740
  22.     raqueta2Y=250
  23.     raqueta2DY=5
  24.     #Crear Surface
  25.     visor = pygame.display.set_mode((800,600),0,32)
  26.     clock = pygame.time.Clock()
  27.     running = True
  28.    
  29.     while running:
  30.         for evento in pygame.event.get():
  31.             if evento.type== KEYDOWN and evento.key==K_ESCAPE:
  32.                 running = False
  33.         #Salida de pantalla de pelota
  34.         if pelotaX <5 or pelotaX >795:
  35.             pelotaDX = -pelotaDX
  36.         if pelotaY <5 or pelotaY >595:  
  37.             pelotaDY = -pelotaDY
  38.             pelotaX+=pelotaDX
  39.         pelotaY+=pelotaDY        
  40.        
  41.         #movimiento de raqueta
  42.         teclaPulsada = pygame.key.get_pressed()
  43.         if teclaPulsada [K_a]:
  44.             raquetaX+=raquetaDY
  45.             if teclaPulsada [K_d]:
  46.                 raquetaY-=raquetaDY
  47.                 #Movimiento de raqueta 2
  48.                 teclaPulsada = pygame.key.get_pressed()
  49.                 if teclaPulsada [K_j]:
  50.                     raqueta2Y+=raqueta2DY
  51.                 if teclaPulsada [K_l]:
  52.                     raqueta2Y-=raqueta2DY
  53.        
  54.         #Salida de pantalla de la raqueta
  55.         if raquetaY <0:
  56.             raqueta =0
  57.             if raquetaY >550:
  58.                 raqueta=550
  59.                 #Salida de pantalla de raqueta 2
  60.                 if raqueta2Y <0:
  61.                     raqueta=0
  62.                     if raqueta2Y >550:
  63.                         raqueta=550
  64.                         #Efecto rebote
  65.                         rebote1 = pelotaY-raquetaY
  66.                         if pelotaX == raquetaX +10 and rebote1 >=0 and rebote1 <=50:
  67.                             pelotaDY=-raquetaDY
  68.                             rebote2 = pelotaY-raqueta2Y
  69.                             if pelotaX == raqueta2X +10 and rebote2 >=0 and rebote2 <=50:
  70.                                 pelotaDY=-raqueta2DY
  71.            
  72.  
  73.         #Movimiento de pelota
  74.         pelotaX+=5
  75.         pelotaY+=5
  76.         visor.fill((0,0,0))
  77.  
  78.         #Dibujamos
  79.         pygame.draw.circle(visor,BLANCO,(pelotaX,pelotaY),4,0)
  80.         pygame.draw.rect(visor,BLANCO,(raquetaX,raquetaY,10,50))
  81.         pygame.draw.rect(visor,BLANCO,(raqueta2X,raqueta2Y,10,50))
  82.         pygame.display.update()
  83.         clock.tick(60)
  84.  
  85. if __name__=="__main__":
  86.     main()