Curso de pygame 2023: Movimiento del personaje principal. | Cap. 4

Поделиться
HTML-код
  • Опубликовано: 1 фев 2025

Комментарии • 5

  • @MundoGamer-jfgalcantara
    @MundoGamer-jfgalcantara Год назад

    ¿Por qué usar "playerX_change" que te obliga a ver cuándo se deja de pulsar una tecla y no cambiar el valor directamente de playerX cada vez que se pulse la tecla?
    if event.key == paygame.K_LEFT:
    playerX += -0.1
    if event.key == paygame.K_RIGHT:
    playerX += 0.1

    • @geekers9572
      @geekers9572  Год назад +1

      Genial gracias por tu feedback. al programar hay muchos caminos y muchas buenas practicas que seguir para optimizar tu codigo.. sin embargo, el objetivo de estos tutoriales es mostrar los fundamentos de pygame. Espero que en proximas series podamos aplicar POO, buenas practicas. y un codigo mas optimizado. saludos

    • @MundoGamer-jfgalcantara
      @MundoGamer-jfgalcantara Год назад

      @@geekers9572 Me he instalado pygame, estoy haciendo pruebas y resula que el evento de pulsar una tecla sólo reacciona una vez. De ahí que tengas que usar la variable que dices. Estaba convencido que al dejar pulsada la tecla seguiría moviéndose.

    • @geekers9572
      @geekers9572  Год назад +1

      @@MundoGamer-jfgalcantara Si correcto la variable es para controlar el estado en X. Y que el movimiento sea continúo. No una sola vez. Sin embargo como te comenté anteriormente hay muchas formas de hacerlo. Yo en el vídeo propongo la más sencilla.. que bueno que te tomaste el tiempo de realizar el código y ver porque lo estamos haciendo así, esa es la idea. Gracias por el feedback. Un saludo.

  • @piedra5337
    @piedra5337 Год назад +1

    Hola, soy un alguien que recien se esta metiendo en la programacion y si bien entiendo como funciona los codigos, los ciclos while y for, como definir variables, etc.
    Normalmente le pido ayuda a ChatGPT si me quedo pillado en algun tema 😅, y le pedi que me optimizara el codigo y asi que:
    import pygame
    pygame.init()
    # Configuración de la ventana
    SCREEN_WIDTH = 1200
    SCREEN_HEIGHT = 700
    Screen = pygame.display.set_mode((SCREEN_WIDTH, SCREEN_HEIGHT))
    pygame.display.set_caption("#Coloca el titulo")
    icon = pygame.image.load('#Aqui va tu imagen')
    pygame.display.set_icon(icon)
    # Colores
    BLACK = (0, 0, 0)
    # Jugador
    PlayerImg = pygame.image.load('#imagen del jugador')
    PlayerX = 600
    PlayerY = 350
    PlayerX_change = 0
    def player(x, y):
    Screen.blit(PlayerImg, (x, y))
    def handle_events():
    global PlayerX_change # Hacer PlayerX_change global para que pueda modificarse
    for event in pygame.event.get():
    if event.type == pygame.QUIT:
    pygame.quit() # Cierra Pygame
    exit() # Sale del programa
    if event.type == pygame.KEYDOWN:
    if event.key == pygame.K_LEFT:
    PlayerX_change = -0.1
    if event.key == pygame.K_RIGHT:
    PlayerX_change = 0.1
    if event.type == pygame.KEYUP:
    if event.key == pygame.K_LEFT or event.key == pygame.K_RIGHT:
    PlayerX_change = 0
    while True:
    Screen.fill(BLACK) # Llena la pantalla de negro
    handle_events()
    PlayerX += PlayerX_change
    player(PlayerX, PlayerY)
    pygame.display.update()
    Espero que te ayude tambien