привет, чтобы снежинки не дергались в разные стороны, а летели в разные стороны нужно вывести скорость x из метода move_snow() в init(self) примерно вот так: class Snow(): def __init__(self, x, y): self.x = x self.y = y self.speed_y = random.randint(1, 3) self.speed_x = random.randint(-1, 1) / 2 self.img_num = random.randint(1, 4) self.image_filename = "snow" + str(self.img_num) + ".png" self.image = pygame.image.load(self.image_filename).convert_alpha() self.image = pygame.transform.scale(self.image, (SNOW_SIZE, SNOW_SIZE)) def move_snow(self): self.y = self.y + self.speed_y if self.y >= MAX_Y: self.y = (0 - SNOW_SIZE) self.x = self.x + self.speed_x if self.x >= MAX_X: self.x = (0 - SNOW_SIZE) elif self.x
@ADV-IT, спасибо, пока самый блатной урок) Kreved RUS52, также сразу использовал "random.randint(-1, 1)" и почитав комментарий убрал дерганье, спасибо, круто получилось. Еще в предпоследней строчке интересней получается, если self.x сравнивать с (0 - SNOW_SIZE), а не с нулем: self.x += self.speed_x if self.x > MAX_X: self.x = (0 - SNOW_SIZE) elif self.x < (0 - SNOW_SIZE): self.x = MAX_X
Ошибки 1) in initilize_snow(MAX_SNOW, snowfall) 2) in initilize_snow snowfall.append(Snow(xx, yy)) 3) не открываются то один то другой файлы изображений
Спасибо за урок. Но не понял почему при сложении игрека снежинки падают вниз, ведь должно быть наоборот, надо от макс_у отнимать по пикселю чтобы двигалась в низ
Единственное не понял почему методы из класса Snow срабатывают для переменной i, вроде кода изучали классы применяли методы(функции) вместе с этим классом то есть должно применяться к примеру Snow.move_snow() , а почему работает i.move_snow() ??? Объясите , пожалуйста.
@@ADV-IT А все понял, у нас же получается массив классов Snow и естественно к каждому его экземпляру доступны егог методы. Спасибо!!! Я пошел на 29 урок.
Здравстуйте,огромное спасибо за ваши уроки всё очень доступно и понятно.Есть два вопроса,во-первых,у меня программа как-то странно реагирует на события,то есть в коде как у вас при нажатии на клавишу у меня всё как бы останавливается(К примеру,если запустить программу и сразу нажать какую-то клавишу то окно просто останется в текущем положении,как-будто паузу поставили)и,во-вторых,у вас снежинки падают бесконечно сверху вниз,а у меня почему-то они один раз все упали вниз,а сверху опять не появляются и не падают.Код как у вас,может ли это быть из-за того что я работаю не в PyChar,а в стандартном Python IDLE? UPD:Со вторым вопросом разобрался)
Насчет первого, проверь что у тебя код точно так же как и у меня, может где-то у тебя в цикле проблема. Тоесть пробелов к какой-то строчке, и эта строчка относится к циклу, а не должна.
при копировании твоего кода, у меня такие же ошибки при запуске как и на моем коде, тоесть проблем ане в коде, хотя даже картинки названы как у тебя : Traceback (most recent call last): File "C:/pythonProject/pyNewgame/urok28 snowfall.py", line 63, in initialize_snow(MAX_SNOW, snowfall) File "C:/pythonProject/pyNewgame/urok28 snowfall.py", line 43, in initialize_snow snowfall.append(Snow(xx, yy)) File "C:/pythonProject/pyNewgame/urok28 snowfall.py", line 17, in __init__ self.image = pygame.image.load(self.image_filename).convert() pygame.error: Couldn't open snow4.png HELP ребят
Денис, подскажите пожалуйста, при запуске происходит задержка секунд на 20, только потом выходят снежинки. После выхода из режима просмотра в PyCharm вижу многократно повторяющееся сообщение: "libpng warning: iCCP: known incorrect sRGB profile", но после него все равно завершение идет с кодом 0. С чем это связано?
Задержка может быть из-за больших по размеру картинок или слегка медленного компа. но если используешь мои картинки то они вообще-то маленькие и должно все быть быстро, попробуй уменьшить количество снежинок, если поможет значит поидее, но не уверен на 100% памяти побольше компу надо, ато видать комп все не в память, а на диск пишет, пока все запишет берет время.
raceback (most recent call last): File "C:\Users\Ruman\PycharmProjects\FallSnow\snowfall.py", line 59, in initialize_snow(max_snow, snowfall) TypeError: 'tuple' object is not callable Чё делать?
Что изменить в коде если у меня только 1 тип снежинок? И у меня дохера ошибок. Traceback (most recent call last): initialize_snow (MAX_SNOW, snowfall) snowfall.append (snow (xx, yy)) self.image = pygame.rransform. scale (self.image, SNOW_SIZE, SNOW_SIZE) TypeEror: argument 2 must be 2-item sequence, not int libpng warning: iCCP: profile 'ProPhoto RGB': 0h: PCS illuminant is not D50 Это значит программирование не для меня? 😂
Traceback (most recent call last): File "D:/pygame/lesson-28.snowfall.py", line 63, in initialize_snow(max_snow, snow_fall) File "D:/pygame/lesson-28.snowfall.py", line 45, in initialize_snow snow_fall.append(Snow(xx, yy)) NameError: name 'Snow' is not defined
сначала все работало, потом высыпало ошибками: File "/home/a1500/gitrepo/python/PythonScripts/SnowFall_PyGame.py", line 56, in init_snow(MAX_SNOW, snowfall) File "/home/a1500/gitrepo/python/PythonScripts/SnowFall_PyGame.py", line 43, in init_snow snowfall.append(Snow(xx, yy)) File "/home/a1500/gitrepo/python/PythonScripts/SnowFall_PyGame.py", line 18, in __init__ self.image = pygame.image.load(self.image_filename).convert_alpha() FileNotFoundError: No such file or directory.
"Эту же программу можно запустить на Линуксе и она заработает" - изначально писал ее на линуксе, с относительными путями к картинкам не заработала, только абсолютные нужно было прописать
Лучшие уроки по питону) изложение огонь, без заумного задротства, автор ты огонь!
Спасибо!
Ставлю Лайк до просмотра, автоматно!
Спасибо за урок! Магия))
привет, чтобы снежинки не дергались в разные стороны, а летели в разные стороны нужно вывести скорость x из метода move_snow() в init(self)
примерно вот так:
class Snow():
def __init__(self, x, y):
self.x = x
self.y = y
self.speed_y = random.randint(1, 3)
self.speed_x = random.randint(-1, 1) / 2
self.img_num = random.randint(1, 4)
self.image_filename = "snow" + str(self.img_num) + ".png"
self.image = pygame.image.load(self.image_filename).convert_alpha()
self.image = pygame.transform.scale(self.image, (SNOW_SIZE, SNOW_SIZE))
def move_snow(self):
self.y = self.y + self.speed_y
if self.y >= MAX_Y:
self.y = (0 - SNOW_SIZE)
self.x = self.x + self.speed_x
if self.x >= MAX_X:
self.x = (0 - SNOW_SIZE)
elif self.x
Snowfall v2
Молодец, реально хорошие рекомендации
@@ADV-IT Спасибо вам за уроки)
@ADV-IT, спасибо, пока самый блатной урок)
Kreved RUS52, также сразу использовал "random.randint(-1, 1)" и почитав комментарий убрал дерганье, спасибо, круто получилось.
Еще в предпоследней строчке интересней получается, если self.x сравнивать с (0 - SNOW_SIZE), а не с нулем:
self.x += self.speed_x
if self.x > MAX_X:
self.x = (0 - SNOW_SIZE)
elif self.x < (0 - SNOW_SIZE):
self.x = MAX_X
Это просто класс, спасибо огромное
Ошибки 1) in
initilize_snow(MAX_SNOW, snowfall)
2) in initilize_snow
snowfall.append(Snow(xx, yy))
3) не открываются то один то другой файлы изображений
Очередной охрененно классный урок!
Я афигенно рад что охрененно получилось!
Видос как обычно на уровне! Респект! Скажи, а почему в pygame нет атрибута FULLSCREEN?
Как нет! У меня же есть!
screen = pygame.display.set_mode((MAX_X, MAX_Y), pygame.FULLSCREEN)
у меня почему то не в 27 не 28 уроке с атрибутом .convert программа не запускалась,как только удалил снегопад пошел)
Ты потрясный!
Спасибо за урок. Но не понял почему при сложении игрека снежинки падают вниз, ведь должно быть наоборот, надо от макс_у отнимать по пикселю чтобы двигалась в низ
Единственное не понял почему методы из класса Snow срабатывают для переменной i, вроде кода изучали классы применяли методы(функции) вместе с этим классом то есть должно применяться к примеру Snow.move_snow() , а почему работает i.move_snow() ??? Объясите , пожалуйста.
i это теперь не переменная, а объект из класса snow
Мы создали кучу таких объектов в цикле, учи циклы сначала.
@@ADV-IT А все понял, у нас же получается массив классов Snow и естественно к каждому его экземпляру доступны егог методы. Спасибо!!! Я пошел на 29 урок.
Як зробити таке саме, але без чорного фону?
Здравстуйте,огромное спасибо за ваши уроки всё очень доступно и понятно.Есть два вопроса,во-первых,у меня программа как-то странно реагирует на события,то есть в коде как у вас при нажатии на клавишу у меня всё как бы останавливается(К примеру,если запустить программу и сразу нажать какую-то клавишу то окно просто останется в текущем положении,как-будто паузу поставили)и,во-вторых,у вас снежинки падают бесконечно сверху вниз,а у меня почему-то они один раз все упали вниз,а сверху опять не появляются и не падают.Код как у вас,может ли это быть из-за того что я работаю не в PyChar,а в стандартном Python IDLE?
UPD:Со вторым вопросом разобрался)
Насчет первого, проверь что у тебя код точно так же как и у меня, может где-то у тебя в цикле проблема.
Тоесть пробелов к какой-то строчке, и эта строчка относится к циклу, а не должна.
при копировании твоего кода, у меня такие же ошибки при запуске как и на моем коде, тоесть проблем ане в коде, хотя даже картинки названы как у тебя :
Traceback (most recent call last):
File "C:/pythonProject/pyNewgame/urok28 snowfall.py", line 63, in
initialize_snow(MAX_SNOW, snowfall)
File "C:/pythonProject/pyNewgame/urok28 snowfall.py", line 43, in initialize_snow
snowfall.append(Snow(xx, yy))
File "C:/pythonProject/pyNewgame/urok28 snowfall.py", line 17, in __init__
self.image = pygame.image.load(self.image_filename).convert()
pygame.error: Couldn't open snow4.png
HELP ребят
Убери пробел из названия твоего файла
@@ADV-IT все разобрался, один файл в .jpg был, спасибо
Таже ошибка, все файлы snow.png но пишем что не может найти файл. Можно ли как то заменить формирования файла абсолютным путем к картинкам?
Отличный урок, спс. Ничего не длинный , интересно всякие игрухи писать , я пробовал странички на РНР вот это скукотища.
Денис, подскажите пожалуйста, при запуске происходит задержка секунд на 20, только потом выходят снежинки. После выхода из режима просмотра в PyCharm вижу многократно повторяющееся сообщение: "libpng warning: iCCP: known incorrect sRGB profile", но после него все равно завершение идет с кодом 0. С чем это связано?
Задержка может быть из-за больших по размеру картинок или слегка медленного компа. но если используешь мои картинки то они вообще-то маленькие и должно все быть быстро, попробуй уменьшить количество снежинок, если поможет значит поидее, но не уверен на 100% памяти побольше компу надо, ато видать комп все не в память, а на диск пишет, пока все запишет берет время.
Заменил картинки и все заработало! Спасибо
Ништяк!
raceback (most recent call last):
File "C:\Users\Ruman\PycharmProjects\FallSnow\snowfall.py", line 59, in
initialize_snow(max_snow, snowfall)
TypeError: 'tuple' object is not callable
Чё делать?
github.com/adv4000/Python-Lessons/blob/master/Lesson-28-SnowFall.py
Какая то лампочка на Пайчарме всё время загорается, чо она значит? Маленькая такая то там, то сям.
Фигня, это просто напоминание что вы не закончили строку, и то что уже написали не имеет полного значения.
подскажите пожалуйста, а как добавить звук?
Играть музыку:
pygame.mixer.music.load('metallica.wav')
pygame.mixer.music.play(-1)
Звук:
my_sound = pygame.mixer.Sound("kriki.wav")
pygame.mixer.Sound.play(my_sound)
@@ADV-IT спасибо большое
@@ADV-IT Музыку не играет. В чем может быть проблема? Издает зацикленные звуки, но это не весь трек
Что изменить в коде если у меня только 1 тип снежинок? И у меня дохера ошибок. Traceback (most recent call last): initialize_snow (MAX_SNOW, snowfall)
snowfall.append (snow (xx, yy))
self.image = pygame.rransform. scale (self.image, SNOW_SIZE, SNOW_SIZE)
TypeEror: argument 2 must be 2-item sequence, not int
libpng warning: iCCP: profile 'ProPhoto RGB': 0h: PCS illuminant is not D50
Это значит программирование не для меня? 😂
Скачать мой код и всё. github.com/adv4000/Python-Lessons
@@ADV-IT тупой вопрос, но как добавить эти картинки в pycharm?
Traceback (most recent call last):
File "D:/pygame/lesson-28.snowfall.py", line 63, in
initialize_snow(max_snow, snow_fall)
File "D:/pygame/lesson-28.snowfall.py", line 45, in initialize_snow
snow_fall.append(Snow(xx, yy))
NameError: name 'Snow' is not defined
как добавить картинки в pycharm?
А ты не довавялешь, ты просто копируешь эти картинки куда-нибудь на своем диске, и в своем пайтон файле указываешь откуда их открыть
чет не получилось. код один в один(( пишет libpng warning: iCCP: known incorrect sRGB profile
Проверь, у меня же ты видел получилось, мож где -то чето забыл, уменьши количество снежинок, иногда памяти мало у компа
Знаю такую ощибку, просто поменяй картинки на какие-нибудь другие
только в PNG формате используй новые
astahov.net/python/lesson26-28.zip
astahov.net/python/lesson26-28.zip
сначала все работало, потом высыпало ошибками:
File "/home/a1500/gitrepo/python/PythonScripts/SnowFall_PyGame.py", line 56, in
init_snow(MAX_SNOW, snowfall)
File "/home/a1500/gitrepo/python/PythonScripts/SnowFall_PyGame.py", line 43, in init_snow
snowfall.append(Snow(xx, yy))
File "/home/a1500/gitrepo/python/PythonScripts/SnowFall_PyGame.py", line 18, in __init__
self.image = pygame.image.load(self.image_filename).convert_alpha()
FileNotFoundError: No such file or directory.
Раз сначала работало, значит подумай что ты сделал после того как работало :)
Помоему не находит файл с картинкой
24:58
"Эту же программу можно запустить на Линуксе и она заработает" - изначально писал ее на линуксе, с относительными путями к картинкам не заработала, только абсолютные нужно было прописать
У меня на убунте робит
Подскажите, пожалуйстка, как вынлядит код с абсолютными путями?Спасибо