Игра на Pygame с нуля / Урок #5 - Передвижение и прыжок

Поділитися
Вставка
  • Опубліковано 4 січ 2025

КОМЕНТАРІ • 175

  • @arlevein4ik
    @arlevein4ik Рік тому +17

    Спасибо за урок, радуюсь, как ребенок, когда все получилось)

    • @Hero-zt3yw
      @Hero-zt3yw Рік тому +2

      почему как? так и есть

    • @Mono6lade
      @Mono6lade 10 місяців тому +3

      бро, но ты же и есть ребенок)

  • @prosto_foxy
    @prosto_foxy 6 місяців тому +4

    Спасибо огромное, никогда не понимал как сделать прыжок
    👍👍👍

  • @salogavida4232
    @salogavida4232 2 роки тому +7

    Спасибо за такие подробности,очень помог

    • @attrakcion
      @attrakcion Рік тому +2

      Здравстуй читатель. Хочу сказать тебе: не отчаивайся. Все у тебя может получиться. Не нужно думать что те у кого получилось достичь своих целей им просто случайно повезло. Это только так кажеться. Поверьте случайного везения не бывает.
      Ребята хочу вам сказать что случайностей вообще не бывает и вот почему:
      Представь себе выходишь ты в сад и видишь что все деревья в саду повалены. Какая мысль придет к тебе в голову? Скорее всего ты подумаешь что ночью прошел сильный ураган. А теперь представь что ты также выйдешь в свой сад и увидишь что не все деревья повалены, а каждое третье дерево повалено. Какая мысль придет к тебе в голову? Ну врят ли ты здесь все спишешь на ураган. Вполне возможно ты подумаешь что кто-то решил тебе отомстить и это явно не ураган.
      А теперь представь что у тебя в коробке 3000 (три тысяча) буквенных символов. И представь что ты подкинул все эти буквы в воздух. Упав на асфальт какова вероятность что эти буквы образуют какое нибудь слово? А какова вероятность что эти буквы образуют какое нибудь предложение? А какова вероятность что эти буквы образуют какой нибудь абзац? А какова вероятность что эти буквы образуют какой нибудь текст? А какова вероятность что эти буквы образуют какую нибудь книгу? Вероятность равна почти нолю.
      А ведь двойная спираль днк намного сложнее устроена чем текст на асфальте.
      Верить в то что там где то сверкнула молния и вот там тоже где то сверкнула молния, а потом произошла химическая реакция и химические элементы бац соединились и образовали сложное химическое вещество, которая вдруг стало бороться за свое сохранение и не просто сохранение, а ещё и воспроизведение себе подобных- это глупо.
      Это все равно что будучи археологом ты наткнешься на руины древнего города и первая мысль которая к тебе в голову придет- это что здесь когда то жили люди. Ну, а если твой коллега скажет: "неа, это просто там сверкнула молния и вон там тоже сверкнула молния, а потом началось землетрясение и вот таким образом и образовался этот город". Ты после этого разговора скорее всего попросишь руководство что бы твоего коллегу отстранили от работы в связи с тем что у него поехала крыша.
      Так вот предыдущая ситуация еще более нелепая.
      Бытует мнение что наша вселенная хаотична. Но я с этим не соглашусь. Я уверен что наша вселенная упорядоченна.
      Так что ребята случайностей не бывает. Случайного везения просто нет. Наша вселенная не хаотична, а упорядоченна. Просто ставьте цели и достигайте их. И верьте что у вас тоже может получиться. Не сдавайтесь ребята.
      Мой девиз в жизни такой:
      Терпеливо
      Активно
      Учитесь
      Хорошим
      Искренним
      Делам.
      Запомните эту аббревиатуру. И пусть этот девиз сопровождает вас везде..

  • @rapida7162
    @rapida7162 2 роки тому +8

    Блин круто, надеюсь будет больше видосов по пайгейм

  • @Thyndu
    @Thyndu Рік тому +6

    Спасибо Вам за Ваш труд❤❤❤❤🎉🐍🐍🐍

    • @attrakcion
      @attrakcion Рік тому +4

      Здравстуй читатель. Хочу сказать тебе: не отчаивайся. Все у тебя может получиться. Не нужно думать что те у кого получилось достичь своих целей им просто случайно повезло. Это только так кажеться. Поверьте случайного везения не бывает.
      Ребята хочу вам сказать что случайностей вообще не бывает и вот почему:
      Представь себе выходишь ты в сад и видишь что все деревья в саду повалены. Какая мысль придет к тебе в голову? Скорее всего ты подумаешь что ночью прошел сильный ураган. А теперь представь что ты также выйдешь в свой сад и увидишь что не все деревья повалены, а каждое третье дерево повалено. Какая мысль придет к тебе в голову? Ну врят ли ты здесь все спишешь на ураган. Вполне возможно ты подумаешь что кто-то решил тебе отомстить и это явно не ураган.
      А теперь представь что у тебя в коробке 3000 (три тысяча) буквенных символов. И представь что ты подкинул все эти буквы в воздух. Упав на асфальт какова вероятность что эти буквы образуют какое нибудь слово? А какова вероятность что эти буквы образуют какое нибудь предложение? А какова вероятность что эти буквы образуют какой нибудь абзац? А какова вероятность что эти буквы образуют какой нибудь текст? А какова вероятность что эти буквы образуют какую нибудь книгу? Вероятность равна почти нолю.
      А ведь двойная спираль днк намного сложнее устроена чем текст на асфальте.
      Верить в то что там где то сверкнула молния и вот там тоже где то сверкнула молния, а потом произошла химическая реакция и химические элементы бац соединились и образовали сложное химическое вещество, которая вдруг стало бороться за свое сохранение и не просто сохранение, а ещё и воспроизведение себе подобных- это глупо.
      Это все равно что будучи археологом ты наткнешься на руины древнего города и первая мысль которая к тебе в голову придет- это что здесь когда то жили люди. Ну, а если твой коллега скажет: "неа, это просто там сверкнула молния и вон там тоже сверкнула молния, а потом началось землетрясение и вот таким образом и образовался этот город". Ты после этого разговора скорее всего попросишь руководство что бы твоего коллегу отстранили от работы в связи с тем что у него поехала крыша.
      Так вот предыдущая ситуация еще более нелепая.
      Бытует мнение что наша вселенная хаотична. Но я с этим не соглашусь. Я уверен что наша вселенная упорядоченна.
      Так что ребята случайностей не бывает. Случайного везения просто нет. Наша вселенная не хаотична, а упорядоченна. Просто ставьте цели и достигайте их. И верьте что у вас тоже может получиться. Не сдавайтесь ребята.
      Мой девиз в жизни такой:
      Терпеливо
      Активно
      Учитесь
      Хорошим
      Искренним
      Делам.
      Запомните эту аббревиатуру. И пусть этот девиз сопровождает вас везде..

  • @supermikebros
    @supermikebros Рік тому

    Спасибо,всё получилось : )

  • @ДмитрийБыстрых-ф4г

    2 луны😀

  • @androiddecolt11
    @androiddecolt11 6 місяців тому +1

    У меня челик пропадал, когда не нажимаешь кнопки.
    Для корректного движения вправо или влево лучшим решением для себя определил, что до цикла надо задать переменную move_direction = walk_right
    Затем внутри цикла без условий выводить screen.blit(move_direction[player_anim_count], (player_x, 400))
    А ниже по условию переопределять значение переменной move_direction. Примерно так:
    if keys[pygame.K_LEFT]:
    move_direction = walk_left
    elif keys[pygame.K_RIGHT]:
    move_direction = walk_right

  • @aboderu8533
    @aboderu8533 Рік тому +6

    А как например сделать что бы скорость анимаций была более медленная, а вот скорость прыжка более быстрая?

    • @tursynbek3704
      @tursynbek3704 Рік тому +1

      bg_x -= 5 поставь если еще медленно то =-1 и т.д можешь изменить

  • @ІлляМоканюк
    @ІлляМоканюк Рік тому +6

    так можна сделать так
    import pyautogui
    if is_presed == любая кнопка:
    действия

    • @mr_potato7946
      @mr_potato7946 6 місяців тому

      а анимации как сделать?

    • @Чего-ы1п
      @Чего-ы1п 2 місяці тому

      А как записать шаг вправо?

  • @Artur.Urmeev
    @Artur.Urmeev 11 днів тому

    Сделал все в точности, как на видео. Ходьбы влево вправо работет. Прыжок нет. Совсем. Есть альтернативный способ:?

  • @Былобыславно
    @Былобыславно Рік тому

    4:00 у меня открывается и сразу закрывается , что делать?

  • @folzi4343
    @folzi4343 10 місяців тому +2

    Подскажите пожалуйста, сделал всё как на видео, но не выводится на экран не иконка программы, не квадраты, ничего проверял всё по нескольку раз

    • @alk4335
      @alk4335 9 місяців тому

      Если ответят подскажите мне тоже, такая же проблема

    • @layfan_carparking
      @layfan_carparking 7 місяців тому

      ты импортирвал pygame?

    • @СашаКвантова
      @СашаКвантова 2 місяці тому

      Может быть вы не написали в цикле pygame.display.update(), которое постоянно обновляет экран

  • @ДимонитБомбит
    @ДимонитБомбит 6 місяців тому +1

    Помогите, когда у меня начинает повторяться фон у меня появляются помехи

  • @Wunder944
    @Wunder944 10 місяців тому +1

    Подскажите пожалуйста как уменьшить скорость спрайта не через команду clock.tick , а так чтобы замедлялся только спрайт я просто увеличили фпс а скорость спрайта понизить не могу что делать?

  • @awesome1420
    @awesome1420 Рік тому +10

    У меня прыжок не робит

    • @Penguin_builder
      @Penguin_builder Рік тому +1

      Ты нашёл причину?

    • @awesome1420
      @awesome1420 Рік тому

      @@Penguin_builder не нашел, я просто сделал свою систему прыжка

    • @Korodor-bv4dn
      @Korodor-bv4dn Рік тому

      И у меня прыжок не рубит.
      Почему?

    • @Korodor-bv4dn
      @Korodor-bv4dn Рік тому

      Может дело в том что у тебя Windows а у itproger Mac OS

    • @Penguin_builder
      @Penguin_builder Рік тому +2

      @@Korodor-bv4dn это невозможно библиотека и версия питона ведь 1 при чём тут операциока 🤦

  • @alexdonny7760
    @alexdonny7760 Рік тому +4

    Не могу понять причину почему у меня персонаж может прыгнуть, но только один раз. Дальше пробел не работает как не старайся...

    • @АнастастияТатуйко
      @АнастастияТатуйко Рік тому +1

      Разобрались?

    • @alexdonny7760
      @alexdonny7760 Рік тому

      @@АнастастияТатуйко Нет, к сожалению. Проект я уже забросил

    • @АнастастияТатуйко
      @АнастастияТатуйко Рік тому

      import pygame
      clock = pygame.time.Clock()
      pygame.init()
      screen = pygame.display.set_mode((450, 300))
      pygame.display.set_caption('Pygame beginner')
      icon = pygame.image.load('image/umb.png')
      pygame.display.set_icon(icon)
      bg = pygame.image.load('image/back1.jpg')
      player = pygame.image.load('image/person/right/1_0.png')
      walk_right = [
      pygame.image.load('image/person/right/1_0.png'),
      pygame.image.load('image/person/right/1_1.png'),
      pygame.image.load('image/person/right/1_2.png'),
      pygame.image.load('image/person/right/1_3.png'),
      pygame.image.load('image/person/right/1_4.png'),
      pygame.image.load('image/person/right/1_5.png'),
      pygame.image.load('image/person/right/1_6.png')
      ]
      walk_left = [
      pygame.image.load('image/person/left/2_0.png'),
      pygame.image.load('image/person/left/2_1.png'),
      pygame.image.load('image/person/left/2_2.png'),
      pygame.image.load('image/person/left/2_3.png'),
      pygame.image.load('image/person/left/2_4.png'),
      pygame.image.load('image/person/left/2_5.png'),
      pygame.image.load('image/person/left/2_6.png')
      ]
      bg_sound = pygame.mixer.Sound('music/skazka.mp3')
      bg_sound.play()
      bg_x = 0

      player_anim_count = 1
      player_speed = 10
      player_x = 40
      player_y = 194
      is_jamp = False
      jamp_count = 7
      running = True # условие работы программы
      while running:


      screen.blit(bg, (bg_x, 0))
      screen.blit(bg, (bg_x + 450, 0))

      keys = pygame.key.get_pressed()

      if keys[pygame.K_LEFT]:
      screen.blit(walk_left[player_anim_count], (player_x,player_y))
      else:
      screen.blit(walk_right[player_anim_count], (player_x, player_y))

      if keys[pygame.K_LEFT] and player_x > 15:
      player_x -= player_speed
      elif keys[pygame.K_RIGHT] and player_x < 435:
      player_x += player_speed


      if not is_jamp:
      if keys[pygame.K_SPACE]:
      is_jamp = True
      else:
      if jamp_count >= -7:
      if jamp_count > 0:
      player_y -= (jamp_count ** 2) / 2
      else:
      player_y += (jamp_count ** 2) / 2
      jamp_count -= 2
      elif jamp_count < -7:
      is_jamp = False
      jump_count = 7
      if player_anim_count == 6:
      player_anim_count = 1
      else:
      player_anim_count += 1

      pygame.display.update()

      for event in pygame.event.get():
      if event.type == pygame.QUIT:
      running= False
      pygame.quit()



      bg_x -= 2
      if bg_x == - 450:
      bg_x = 0

      clock.tick(3)

    • @АнастастияТатуйко
      @АнастастияТатуйко Рік тому

      Может быть, кто-то подскажет, почему прыжок при таком коде возможен только один раз за запуск?

    • @layfan_carparking
      @layfan_carparking 7 місяців тому

      @@АнастастияТатуйко А у меня он вообще не работает

  • @Twager
    @Twager 3 місяці тому

    Помогите пожалуйста, в моменте приземления прыжка, он останавливается не на прошлом месте, а чуть выше, что делать?

  • @AnDroidS91100
    @AnDroidS91100 Рік тому +1

    у меня при нажатии на кнопку влево получается два изображения на заднем плане игрок идет в лево, а на него наложено изображение игрок идет в право.
    Что за ошибка? подскажите

    • @Vena_5
      @Vena_5 Рік тому

      import pygame
      clock = pygame.time.Clock()
      pygame.init()
      screen = pygame.display.set_mode((1280, 720))
      pygame.display.set_caption(title='my_first_project')
      pygame.display.set_icon(pygame.image.load('images/icon.png'))
      bg = pygame.image.load('images/bg.jpg')
      bg = pygame.transform.scale(bg, (1280, 720))
      move_left = [
      pygame.image.load('images/charter left/left (1).png'),
      pygame.image.load('images/charter left/left (2).png'),
      pygame.image.load('images/charter left/left (3).png'),
      pygame.image.load('images/charter left/left (4).png'),
      ]
      move_right = [
      pygame.image.load('images/charter right/right (1).png'),
      pygame.image.load('images/charter right/right (2).png'),
      pygame.image.load('images/charter right/right (3).png'),
      pygame.image.load('images/charter right/right (4).png'),
      ]
      moving_animation_count = 0
      bg_x = 0
      bg_sound = pygame.mixer.Sound('sounds/bgsound.mp3')
      bg_sound.play()
      charter_speed = 5
      charter_x = 250
      running = True
      while running:
      screen.blit(bg, (bg_x, 0))
      screen.blit(bg, (bg_x + 1280, 0))
      keys = pygame.key.get_pressed()
      if not keys[pygame.K_LEFT]:
      screen.blit(move_right[moving_animation_count], (charter_x, 556))
      if keys[pygame.K_LEFT]:
      screen.blit(move_left[moving_animation_count], (charter_x, 556))
      elif keys[pygame.K_RIGHT]:
      screen.blit(move_right[moving_animation_count], (charter_x, 556))
      if keys[pygame.K_LEFT] and charter_x > 50:
      charter_x -= charter_speed
      elif keys[pygame.K_RIGHT] and charter_x < 1230:
      charter_x += charter_speed
      if moving_animation_count == 3:
      moving_animation_count = 0
      else:
      moving_animation_count += 1
      bg_x -= 2
      if bg_x == -1280:
      bg_x = 0
      pygame.display.update()
      for event in pygame.event.get():
      if event.type == pygame.QUIT:
      running = False
      pygame.quit()
      clock.tick(15)
      Немного изменил названия(переменные) под себя и у меня была проблема с тем, что персонаж не отображался когда не двигается (исправил это), тут только код до середины видео, до прыжков пока не дошел

  • @shalfys
    @shalfys Рік тому

    Спасибо из за твоих анимаци и списков,для тех кто этого не делал не работает

  • @zurapro3131
    @zurapro3131 2 місяці тому

    Why if not is_jump and not if is_jump?

  • @_tehnick_7777
    @_tehnick_7777 8 місяців тому +2

    У меня такая проблема, персонаж двигается, фон двигается, но когда фон первый раз проходит весь экран, второй раз проходит весь экран, то вроде бы всё нормально, но на третий раз происходит как бы умножение этого фона, он как бы накладывается сам на себя бесконечно. И экран превращается в просто большое количество полос. Надеюсь, смог объяснить... Если кто-то понял, можете объяснить, почему так?

    • @b-boymatvix1348
      @b-boymatvix1348 5 місяців тому +1

      потому что изначальное расположение второго фона например 600 не делится ровно на растояние которое он проходит например 4

  • @xDANILx_0339
    @xDANILx_0339 Рік тому +4

    а ничего что когда солнце наполовину скрылось с другой стороны выходит другое солнце?

  • @hackerff763
    @hackerff763 2 роки тому

    Топ✊

  • @DvoeVTankeSt.
    @DvoeVTankeSt. Рік тому +3

    А как сделать так, что когда игрок прыгает, земля идет в низ, а потом возвращается на место?

    • @salogavida4232
      @salogavida4232 Рік тому

      Зафиксируй камеру на объекте

    • @DvoeVTankeSt.
      @DvoeVTankeSt. Рік тому +1

      @@salogavida4232 логично, что сказать

    • @Дэнчик-ы8ц
      @Дэнчик-ы8ц Рік тому +1

      Нужно будет двигать не камеру, а землю. Так игрок останется на одном месте, а земля уйдет вниз

    • @densaroken607
      @densaroken607 Рік тому

      отнимай координаты не у игрока а у координат фона:
      if not is_jump:
      if keys[pygame.K_SPACE]:
      is_jump = True
      else:
      if jump_count >= -7:
      if jump_count > 0:
      background_y += jump_count **2
      else:
      background_y -= jump_count **2
      jump_count -=1
      background_y - соответственно 0
      получается говнище из-за фпс

    • @deadtie
      @deadtie Рік тому

      @@Дэнчик-ы8ц в больших проектах будет двигатся камера, а не земля

  • @СергейБабенко-я5ы

    можете помочь я когда жму кнопку налево то у меня анимация просто пропадает и он стоя летит налево

  • @bdsm_shadovfoxy7533
    @bdsm_shadovfoxy7533 5 місяців тому

    У меня персонаж пропадает если кнопки не тыкать что делать ?

  • @negrila_n
    @negrila_n Рік тому

    помогите что делать если сам игрок и фон очень быстро идут

  • @АйназикКакенова

    Написала такой же код но не прыгает а остальное работает....???

    • @mmnmmm6516
      @mmnmmm6516 Місяць тому

      Нашли причину? У меня такая же ситуация

  • @qMaRRk
    @qMaRRk 8 місяців тому

    Ребят помогите пожалуйста, когда щакодировал прыжок, под размеры экрана. То мой персонаж при нажатии на спейс подпрыгивал за пределы программы. Ну за фон а потом на секунду возвращался и снова улетал уже навсегда

  • @Allj_onelove
    @Allj_onelove Рік тому +1

    Народ, подскажите, пожалуйста, что делать, если при каждом последующем прыжке персонаж проваливается под землю?

    • @maxfiredark9494
      @maxfiredark9494 Рік тому

      пересмотри код, возможно где-то у тебя не правильные координаты стоят. Или удали и перепиши точь в точь как автор видео код пишет

    • @Allj_onelove
      @Allj_onelove Рік тому

      @@maxfiredark9494 Хорошо, спасибо)

    • @Эрик-я5ц
      @Эрик-я5ц 10 місяців тому

      Скорее всего у тебя не совпадает значение переменной jump_count вне цикла и в цикле

  • @sryided
    @sryided 4 місяці тому

    что если он у меня летит без остановки, нажал спейс и всё полетел

  • @vegeTOR
    @vegeTOR 3 місяці тому

    Помогите пожалуйста, у меня персонаж постоянно смотрит на лево. Иду на право то смотрит на право, отпуская нокпку стоит на месте но смотрит на лево

    • @СашаКвантова
      @СашаКвантова 2 місяці тому

      Нужно два списка фотографий, для движения направо и движения налево, и это все в коде прописать

  • @user-vanmihan
    @user-vanmihan Рік тому

    почему у меня ругается на двойные скобки на 38 строке, а у вас нет?

  • @СофияСидорова-м7в
    @СофияСидорова-м7в 8 місяців тому

    здравствуйте, что делать если после тгго как добавил кнопки и запустил у тебя сначала все работает, а потом идет все полосами и фон с игроком превращаются в лдинную полосу

    • @愚かなお尻
      @愚かなお尻 7 місяців тому

      Чел ты нашел ответ
      Если да скажи какой?

    • @愚かなお尻
      @愚かなお尻 7 місяців тому

      Мне очень надо

    • @_pawel_7418
      @_pawel_7418 6 місяців тому

      ты уже нашел решение этой проблемы? если да то скажи пж

  • @asmdonasondkjasldmaskdnoa
    @asmdonasondkjasldmaskdnoa Рік тому +1

    На видео в строке 62 автор пишет код player_y -= (jump_count **2) / 2.В этом же месте я у себя писал просто playe_y -= jump_count и мой объект просто зависал в верхней точке прыжка(при след нажатии пробела снова летел вверх и не падал),а как только я написал это непонятное (jump_count ** 2) / 2 у меня все заработало как на видео.Объект прыгал(да еще и красиво),а затем также спускался(красиво))).И не могу понять в чем магия.Ладно бы это влияло только на красоту,но при обычном -=jump объект делает что-то наподобии двойного прыжка вверх и зависвает в верхней точке

    • @DavlatovZ
      @DavlatovZ 11 місяців тому

      Там было (jumpcount ** 2) / 2. Не путайте ** - знак степени с * -знаком умножения

  • @pain-mn6vn
    @pain-mn6vn Рік тому +1

    TypeError: argument 1 must be pygame.surface.Surface, not list

    • @restabilvilia3674
      @restabilvilia3674 Рік тому

      такая же ошибка:( ну я подумал и поправил код, но всё равно персонаж пропал (; _ ;)
      keys = pygame.key.get_pressed()
      if keys[pygame.K_LEFT]:
      sc.blit(walk_left, [player_anim_count], (player_x, 260))
      elif keys[pygame.K_RIGHT]:
      sc.blit(walk_right, [player_anim_count], (player_x, 260))

    • @restabilvilia3674
      @restabilvilia3674 Рік тому +1

      о получилось, между walk_left(твоим спрайтом) и [player_anim_count] стоит " , " а там её нет :). В двух словах просто убери лишнюю запятую.

    • @danil7310
      @danil7310 Рік тому

      ​​@@restabilvilia3674ты обращаешься к элементам списков walk_left и walk_right, индексом является player_anim_count, между ними не должно быть запятой. Чтобы программировать на pygame надо всё таки основы питона знать

  • @fan-wk9qj
    @fan-wk9qj 7 місяців тому

    что делать если персонаж сам прыгает помогите

  • @Game-ej6vo
    @Game-ej6vo Рік тому

    у меня просто крашится после того как я закодил прыжок что делать

  • @flexyyyapk
    @flexyyyapk Рік тому

    что делать если я нажимаю кнопку налево/направо а он не ходит,а через некоторое время когда я держу кнопку он ходит один раз и всё

  • @Alisher_edit
    @Alisher_edit 10 місяців тому

    Когда я сделал все правильно про прыжок у меня высвечивается черный экран
    Почему так?

    • @alk4335
      @alk4335 9 місяців тому

      Если ответят подскажи, такая же проблема

  • @ДимаЛитвинов-ф8ж
    @ДимаЛитвинов-ф8ж 2 роки тому

    Что делать если у меня spritesheet создает картинки как это исправить

  • @Molgish70
    @Molgish70 Рік тому

    Здравствуйте, что делать если персонаж просто не появляется? код точно такойже

    • @AbyssChris731
      @AbyssChris731 Рік тому

      ну на ум приходит только, то что ты персанажа добавил до фона и фон перекрывает персонажа

  • @МакарСайкралов

    после того как назначили клавиши передвежения персонаж пропал, помогите пожалуйста!, что делать?????

  • @КотБася-ь7д
    @КотБася-ь7д 2 місяці тому

    У меня нету анимации чтобы когда он ходил назад он в лево он просто ходит назад как Майкл Джексон

  • @5.25.5.1.x
    @5.25.5.1.x Рік тому

    блин все идеально работает но почему когда удерживаю левую кнопку у меня появляется задний фон в других координатах как исправить

    • @Дэнчик-ы8ц
      @Дэнчик-ы8ц Рік тому

      Написать правильный код. Это всё что я могу тебе сказать. Ты мог ошибиться слишком во многих местах, чтобы я с точностью мог сказать где ошибка. Лучше сразу скинуть код, чтоб люди могли тебе помочь

    • @5.25.5.1.x
      @5.25.5.1.x Рік тому

      @@Дэнчик-ы8ц да понимаю написал херню выше хотел удалить но забыл
      я все исправил

  • @makin616
    @makin616 Рік тому +1

    Кто может скинуть код , он будет подсказкой для меня,буду благодарен🙂

  • @ВаасилийЛитвин
    @ВаасилийЛитвин Рік тому +2

    странно почему то у меня прыжок проигрывается миллион раз и супер быстро

    • @firebiven
      @firebiven 9 місяців тому

      ответ найден , в строке elif is jump == True : замените elif на if , будет прыгать один раз , если нажмете опять , то опять один раз

  • @QewSob
    @QewSob 2 роки тому +2

    урок топовый очень жду некст урок

    • @attrakcion
      @attrakcion Рік тому +1

      Здравстуй читатель. Хочу сказать тебе: не отчаивайся. Все у тебя может получиться. Не нужно думать что те у кого получилось достичь своих целей им просто случайно повезло. Это только так кажеться. Поверьте случайного везения не бывает.
      Ребята хочу вам сказать что случайностей вообще не бывает и вот почему:
      Представь себе выходишь ты в сад и видишь что все деревья в саду повалены. Какая мысль придет к тебе в голову? Скорее всего ты подумаешь что ночью прошел сильный ураган. А теперь представь что ты также выйдешь в свой сад и увидишь что не все деревья повалены, а каждое третье дерево повалено. Какая мысль придет к тебе в голову? Ну врят ли ты здесь все спишешь на ураган. Вполне возможно ты подумаешь что кто-то решил тебе отомстить и это явно не ураган.
      А теперь представь что у тебя в коробке 3000 (три тысяча) буквенных символов. И представь что ты подкинул все эти буквы в воздух. Упав на асфальт какова вероятность что эти буквы образуют какое нибудь слово? А какова вероятность что эти буквы образуют какое нибудь предложение? А какова вероятность что эти буквы образуют какой нибудь абзац? А какова вероятность что эти буквы образуют какой нибудь текст? А какова вероятность что эти буквы образуют какую нибудь книгу? Вероятность равна почти нолю.
      А ведь двойная спираль днк намного сложнее устроена чем текст на асфальте.
      Верить в то что там где то сверкнула молния и вот там тоже где то сверкнула молния, а потом произошла химическая реакция и химические элементы бац соединились и образовали сложное химическое вещество, которая вдруг стало бороться за свое сохранение и не просто сохранение, а ещё и воспроизведение себе подобных- это глупо.
      Это все равно что будучи археологом ты наткнешься на руины древнего города и первая мысль которая к тебе в голову придет- это что здесь когда то жили люди. Ну, а если твой коллега скажет: "неа, это просто там сверкнула молния и вон там тоже сверкнула молния, а потом началось землетрясение и вот таким образом и образовался этот город". Ты после этого разговора скорее всего попросишь руководство что бы твоего коллегу отстранили от работы в связи с тем что у него поехала крыша.
      Так вот предыдущая ситуация еще более нелепая.
      Бытует мнение что наша вселенная хаотична. Но я с этим не соглашусь. Я уверен что наша вселенная упорядоченна.
      Так что ребята случайностей не бывает. Случайного везения просто нет. Наша вселенная не хаотична, а упорядоченна. Просто ставьте цели и достигайте их. И верьте что у вас тоже может получиться. Не сдавайтесь ребята.
      Мой девиз в жизни такой:
      Терпеливо
      Активно
      Учитесь
      Хорошим
      Искренним
      Делам.
      Запомните эту аббревиатуру. И пусть этот девиз сопровождает вас везде..

    • @QewSob
      @QewSob Рік тому

      @@attrakcion спасибо
      от души поднял мотивацию

  • @migelel3071
    @migelel3071 Рік тому

    Все било нормально, пропало изображение, ошибок не ппоказует. Пожалуйста помогите

  • @firebiven
    @firebiven 9 місяців тому

    помогите , пожалуйста , у меня прыжок зацикливается и игрок постоянно прыгает

    • @firebiven
      @firebiven 9 місяців тому

      ответ найден , в строке elif is jump == True : замените elif на if

    • @ludmilaselezneva8765
      @ludmilaselezneva8765 4 місяці тому

      у меня такая проблема (нажимаю space один раз и персонаж начинает прыгать, больше не останавливается, направо и налево продолжает перемещаться) возникла из-за опечатки в названии переменной в последнем фрагменте цикла прыжка (переменную is_jump назвала как if_jump, никаких ошибок при запуске кода не было, поэтому не сразу увидела 🤦🏻‍♀️) код писала точь в точь как в видео, исправила опечатку и все заработало как у автора в видео

  • @Faraon1y
    @Faraon1y Рік тому +1

    А что делать если персонаж прыгает сам?

    • @СеребряныйТапочек
      @СеребряныйТапочек Рік тому

      попробуй подредактировать код где написано: is_jump = False
      jump_count = 8

    • @СеребряныйТапочек
      @СеребряныйТапочек Рік тому

      если после этого персонаж начнёт прыгать вниз, а не вверх, то попробуй поменять местами + с минусом player_y += (jump_count ** 2) / 2
      else:
      player_y -= (jump_count ** 2) / 2
      вот тут. Думаю как-то я тебе помог)

    • @Faraon1y
      @Faraon1y Рік тому +1

      @@СеребряныйТапочек нет чувак не помогло, он все также прыгает только уже вниз. Что еще посоветуешь?

    • @СеребряныйТапочек
      @СеребряныйТапочек Рік тому

      Скинь свой скрипт сюда, я его просмотрю

    • @Faraon1y
      @Faraon1y Рік тому

      @@СеребряныйТапочек вот надеюсь сможешь мне помочь

  • @Жоскичел-ж8я
    @Жоскичел-ж8я 9 місяців тому

    кто знает как изменить размер персонажа? а то он у меня высокий

    • @Brawmain209
      @Brawmain209 8 місяців тому

      Это только другой спрайт брать

    • @Brawmain209
      @Brawmain209 8 місяців тому

      А нет сор вот код
      player_size = pygame.transform.scale(player, (Размер в пикселях))
      Если что взял у другого коммента:)

  • @ДонджуанФамилия
    @ДонджуанФамилия 2 роки тому +1

    крч народ, у меня такая проблема я импортировал pygame, но у меня не получается запустить код... Может быть кто-то знает в чем проблема?

    • @m9tayoutub3
      @m9tayoutub3 2 роки тому

      Pygame - не встроенная библиотека. Чтобы ее использовать, ее нужно установить.

    • @layfan_carparking
      @layfan_carparking 7 місяців тому

      @@m9tayoutub3 Встроеная в терминале пишешь pip install pygame

  • @newbie-in-python
    @newbie-in-python Рік тому +1

    А как сделать кнопки что бы можно было управлять на телефоне

    • @flexyyyapk
      @flexyyyapk Рік тому

      Нужно скачать клавиатуру компа

  • @nickel_785
    @nickel_785 2 роки тому

    люди, проблема:
    я написал точно такой же код, как в видео, но игрок сам начинает идти вперед, не упирается ни в какую невидимую стену справа и в какой то момент карта (задний фон) начинает багать

    • @cubver3934
      @cubver3934 Рік тому

      Мне кажется ты что-то неправильно указал

    • @cubver3934
      @cubver3934 Рік тому

      Скорее всего ты перепутал персонажа с фоном (может быть я не знаю)

    • @vsratie1964
      @vsratie1964 Рік тому

      возможно косяк с отступами

  • @опытинский
    @опытинский 2 роки тому

    Inmost? похоже

  • @Anton-hx3gm
    @Anton-hx3gm 3 місяці тому

    задумался, pygame того стоит?

  • @МагомедСельмурзаев-м9ч
    @МагомедСельмурзаев-м9ч 11 місяців тому

    почему у меня он вообще не прыгает

  • @krystynayeroshkina5070
    @krystynayeroshkina5070 2 роки тому

    А як у вас місцезнаходження Україна яндекс дзен та вконтактє?

  • @Nove_Under889
    @Nove_Under889 Рік тому

    у меня сразу сам при запуске начинает прыгать бесконечно, а если нажать пробел он просто остонавливается лол

    • @Fanfa397
      @Fanfa397 Рік тому

      Тоже самое нашол решение?

    • @Tverdiy_pufik
      @Tverdiy_pufik Рік тому +1

      Я нашёл решение: когда он пишет строку на тайм коде 10:09 заметьте, что он перед 7 написал -

  • @SekiroKVX
    @SekiroKVX 2 місяці тому +2

    Такие себе у вас уроки конечно... Для всей игры нужно было задать стабильную частоту кадров через pygame.time.Clock().tick(fps), где fps - частота обновления монитора. А для прыжка следует создать гравитацию, объекты по которым передвигается игрок и коллизию для них, иначе никакого смысла от такого прыжка не будет.

  • @Lemomelo-u8y
    @Lemomelo-u8y Рік тому +1

    Я нажимаю на пробел и мой player улетает в космос 🤔😵

    • @skywalker12435
      @skywalker12435 Рік тому

      тоже самое

    • @skywalker12435
      @skywalker12435 Рік тому

      даже вместо 7 поставил 1 все равно не помогло

  • @GarrisenG
    @GarrisenG Рік тому +1

    КТО МОЖЕТСКИНУТЬ ВЕСЬ КОД

  • @Жоскичел-ж8я
    @Жоскичел-ж8я 9 місяців тому

    что делать если прыжок не работает? вот код :

    • @Жоскичел-ж8я
      @Жоскичел-ж8я 9 місяців тому

      import pygame
      clock = pygame.time.Clock()
      pygame.init()
      screen = pygame.display.set_mode((1280,748))
      pygame.display.set_caption("king of avalon")
      image = pygame.image.load("image/icon.png")
      pygame.display.set_icon(image)
      bg = pygame.image.load("image/bg.png")
      walk_left = [
      pygame.image.load("image/player lefts/left 1.png"),
      pygame.image.load("image/player lefts/left2.png"),
      pygame.image.load("image/player lefts/left3.png"),
      pygame.image.load("image/player lefts/left4.png"),
      ]
      walk_right = [
      pygame.image.load("image/player right/right1.png"),
      pygame.image.load("image/player right/right2.png"),
      pygame.image.load("image/player right/right3.png"),
      pygame.image.load("image/player right/right4.png"),
      ]
      player_anim_count = 0
      bgx = 0
      player_speed = 5
      player_x = 150
      player_y = 250
      is_jump = False
      jump_count = 7
      bg_sound = pygame.mixer.Sound('sounds/king of avalon.mp3')
      bg_sound.play()
      running = True
      while running:
      keys = pygame.key.get_pressed()
      screen.blit(bg, (bgx, 0))
      screen.blit(bg,(bgx + 1280 , 0))
      if keys[pygame.K_LEFT]:
      screen.blit(walk_left[player_anim_count], (player_x, 350))
      else:
      screen.blit(walk_right[player_anim_count], (player_x, 350))
      if player_anim_count == 3:
      player_anim_count = 0
      else:
      player_anim_count +=1
      pygame.display.update()
      if keys[pygame.K_LEFT] and player_x > 50:
      player_x -= player_speed
      elif keys [pygame.K_RIGHT]:
      player_x += player_speed and player_x < 200
      player_x + player_speed
      if not is_jump:
      if keys [pygame.K_SPACE]:
      is_jump = True
      else:
      if jump_count >= -7:
      if jump_count > 0:
      player_y -= (jump_count ** 2) / 2
      else:
      player_y += (jump_count ** 2) / 2
      jump_count -= 1
      else:
      is_jump = False
      jump_count = 7
      bgx -= 2
      if bgx == -1280:
      bgx = 0
      pygame.display.update()
      for event in pygame.event.get():
      if event.type == pygame.QUIT:
      running = False
      pygame.quit()
      clock.tick(8)

    • @trable6645
      @trable6645 Місяць тому

      @@Жоскичел-ж8я if keys[pygame.K_LEFT]:
      screen.blit(walk_left[player_anim_count], (player_x, 350))
      else:
      screen.blit(walk_right[player_anim_count], (player_x, 350))
      Вот тут, координату y поменяй на player_y

  • @kok706
    @kok706 11 місяців тому

    ДА ПОЧЕМУ У ВСЕХ РАБОТАЕТ А У МЕНЯ НЕТ?

  • @ГлебГрицевич-ц1ъ
    @ГлебГрицевич-ц1ъ Місяць тому

    Короче ясно. Передвижение тоже не работает

  • @entesour
    @entesour 2 роки тому

    🥺Инмост разрабатываете

  • @S2P-s3p
    @S2P-s3p Рік тому

    Всем привет, кто знает, в чем может заключаться такая проблема: Когда персонаж идет, то его изображение иногда размывается? Это плохо обрезанный файл или может дело в другом?

    • @grovestreet2126
      @grovestreet2126 Рік тому

      Тут дело уже в том, как ты прописал сам код

    • @愚かなお尻
      @愚かなお尻 7 місяців тому

      Размывается- превращается в полосу?

  • @karmaakabane4310
    @karmaakabane4310 Рік тому

    Выдает за ошибку keys[pygame.K_Left]:

    • @karmaakabane4310
      @karmaakabane4310 Рік тому

      Просто переписал 1в1 и заработало

  • @_pawel_7418
    @_pawel_7418 6 місяців тому

    Помогите, когда у меня начинает повторяться фон у меня появляются помехи

  • @negrila_n
    @negrila_n Рік тому +1

    помогите!
    что делать если при нажатии прыжка игрок очень быстро прыгает, а мне надо замедлить как в видео!
    он очень быстро прыгает

    • @бодябебра228
      @бодябебра228 4 місяці тому

      попробуй уменьшить фпс или наоборот увеличить

  • @ДорофеяСидоренко

    что делать, если вылезает такая ошибка: AttributeError: module 'pygame' has no attribute 'get_pressed'

    • @mimasroblox228
      @mimasroblox228 Рік тому

      перепроверь как ты написал, должно быть так:
      pygame.key.get_pressed()

  • @smail-ik
    @smail-ik 8 місяців тому

    Помогите прыжок не работает, вылетает при заходе

    • @mmnmmm6516
      @mmnmmm6516 Місяць тому

      Нашли причину?

    • @smail-ik
      @smail-ik Місяць тому

      @mmnmmm6516 да