Red de conocimiento informático - Problemas con los teléfonos móviles - Análisis del código fuente de Pygame

Análisis del código fuente de Pygame

Prueba esto.

Importar numpy como np

Importar pygame

Importar sistema

Importar trazabilidad

Importar copia

p>

Importar* desde pygame.locals

pygame.init()

pygame.mixer.init()

#Color

Fondo=(201, 202, 187)

Tablero de ajedrez=(80, 80, 80)

botón=(52, 53, 44)

#Música

jugar _ ajedrez _ sonido = py juego mezclador sonido(" música/jugar _ ajedrez . wav ")

jugar _ ajedrez _ sonido . set_volume(0.2)

botón_sonido = py juego mezclador sonido("música/botón. wav")

button_sound.set_volume(0.2)

victor _ sound = py game . mezclador . sound(" music/victory . wav ")

victor_sound.set_volume(0.2)

#Dibuja un tablero de ajedrez

def Dibujar _ un _Tablero de ajedrez (pantalla):

#Rellenar color de fondo

Relleno de pantalla (fondo)

fondo = py carga de imagen del juego (. "fondo .jpg ").

convert_alpha()

screen.blit(fondo, (0, 0))

#Dibuja un tablero de ajedrez

Para I(21) en el rango:

pygame.draw.line(pantalla, tablero, (40*i+3, 3), (40*i+3, 803))

pygame.draw.line(pantalla , tablero de ajedrez, (3, 40*i+3), (803, 40*i+3))

#Dibujar una línea

pygame.draw.line(pantalla, tablero de ajedrez , (3, 3), (803, 3), 5)

pygame.draw.line(pantalla, tablero, (3, 3), (3, 803), 5)

pygame.draw.line(pantalla,tablero,(803,3),(803,803),5)

pygame.draw.line(pantalla,tablero,(3,803), (803, 803 ), 5)

#Dibujar punto de anclaje

pygame.draw.circle(pantalla, tablero, (163, 163), 6)

pygame.draw .circle(pantalla, tablero, (163, 643), 6)

pygame.draw.circle(pantalla, tablero, (643, 163), 6)

pygame.draw .circle(pantalla, tablero, (643, 643), 6)

pygame.draw.circle(pantalla, tablero, (403, 403), 6)

#Dibuja el Botones "Arrepentirse", "Reiniciar" y "Salir"

pygame.draw.rect(pantalla, botón,)

#Borrar la lista de mapas

p>

Definir clear():

Mapa global

Para I en el rango(24):

Para j en el rango(24):

Mapa)

#Definir nombre de ventana

Pygame.display.set_caption("Gobang")

#Dibujar uno en la ventana El tablero, un recordatorio y un botón

Dibujar el tablero (pantalla)

pygame.display.flip()

clock=pygame.time.Clock()

p>

Aunque es correcto:

#Solo puedes caer si estás corriendo de verdad. Se utiliza principalmente para evitar volver a caer después del juego.

si se está ejecutando:

si t:

color=1

text("blackmove",screen,54)

De lo contrario:

Color=2

Texto("Movimiento de las blancas", pantalla, 54)

Para eventos pygame.event en get( ):

#Haga clic en X para cerrar la ventana.

if event.type ==pygame. Salir:

pygame.quit()

sys.exit()

#Haga clic en la capacidad del curso en la ventana y complete las instrucciones correspondientes.

evento elif .tipo == botón del mouse presionado:

if evento.botón == 1:

x, y = posición del evento [0], evento Posición [1]

Para I(19) en el rango:

Para j(19) en el rango:

#Haga clic en el correspondiente en el posición del tablero de ajedrez

Si i*43+20<x<i*43+60<j*43+20<y<j*43+60< corriendo:

#Coloca las piezas de ajedrez de los colores correspondientes en las posiciones correspondientes en el tablero de ajedrez.

Draw_a_chessman(i+1, j+1, pantalla, color)

#Reproducir efecto de sonido

play_chess_sound.play(0)

#Registrar la posición del manantial en el mapa

map[I][j]=color

#Guardar el mapa en "Mapa"

map3=copiar .deepcopy(map)

maps.append(map 3)

#Determine si hay cinco niños en la línea después de moverse.

if win(i,j):

if t:

text("Las negras ganaron, por favor juega de nuevo", pantalla, 30)

De lo contrario:

Text("Las blancas ganaron, juega de nuevo", pantalla, 30)

#Reproducir efectos de sonido

Victor_sound.Play( 0)

#No vuelvas a caer en el tablero

Running=false

pygame.display.flip()

t = no t

#Si haces clic en "Comenzar de nuevo"

Si 900 & ltx & lt1100 y 500 & lty & lt600:

#Desbloquear

Ejecutar=True

#Reproducir efectos de sonido

Button_Sound.Play(0)

#Reiniciar

Principal()

#Haz clic en "Salir del juego" para salir del juego.

elif 900 & ltx & lt1100 y 650 & lty & lt750:

#Reproducir efecto de sonido

Button_sound.play(0)

pygame.quit()

sys.exit()

#Haga clic en "Arrepentirse"

elif 900 & ltx & lt1020 y 350 & lty & lt450 y len (mapa)! =1:

#Reproducir efecto de sonido

Button_Sound.Play(0)

#Eliminar el último elemento del mapa

del mapas[len(maps)-1]

#Luego copia el último elemento al mapa.

mapa = copiar copia profunda(maps[len(maps)-1])

#Cambiar orden

t = no t

#Mostrar mapa.

Usa piezas de ajedrez para dibujar el tablero (mapa, pantalla)

#Si te arrepientes de haber jugado ajedrez, no te arrepientas de volver a jugar ajedrez.

x, y=0, 0

clock.tick(60)

if __name__ == "__main__ ":

Intenta :

Principal()

Excepto SystemExit:

Aprobar

Excepto:

traceback.print_exc()

pygame.quit()

Entrada()