Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅

Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² Python

Поиск

НовоС Π½Π° сайтС

Π—ΠΌΠ΅ΠΉΠΊΠ° Π½Π° Python

БСгодня ΠΌΡ‹ напишСм ΠΈΠ³Ρ€Ρƒ Π·ΠΌΠ΅ΠΉΠΊΠ° Π½Π° Python. Π­Ρ‚ΠΎ ΠΎΠ΄Π½Π° ΠΈΠ· самых распространСнных Π°Ρ€ΠΊΠ°Π΄ Π² ΠΌΠΈΡ€Π΅. Π’ основС Π΅Π΅ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π±ΡƒΠ΄Π΅Ρ‚ Π΄Π²Π° класса:

Π’ процСссС написания Π·ΠΌΠ΅ΠΉΠΊΠΈ Ρƒ нас Π±ΡƒΠ΄ΡƒΡ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ этапы:

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ графичСского ΠΎΠΊΠ½Π° прилоТСния.

ΠœΡ‹ Π±ΡƒΠ΄Π΅ΠΌ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ tkinter, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΎΠΊΠ½ΠΎ задаСтся ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ вСсь ΠΎΡΡ‚Π°Π»ΡŒΠ½ΠΎΠΉ ΠΊΠΎΠ΄ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Π΄ΠΎ строки root.mainloop()

ОбъявлСниС Π²ΡΠΏΠΎΠΌΠΎΠ³Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ….

Π’ΡƒΡ‚ всС просто, для облСгчСния ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ создадим ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅:

Установка Π½Π° ΠΎΠΊΠ½Π΅ области для рисования.

ΠžΠ±Π»Π°ΡΡ‚ΡŒ для рисования Π² tkinter Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ класса Canvas, ΠΈΠΌ ΠΈ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡΡ.

Если Π²Ρ‹ всС Π΄Π΅Π»Π°Π»ΠΈ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ, Ρ‚ΠΎ запустив ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹ΠΉ ΠΊΠΎΠ΄ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½Ρƒ

Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅. python snake canvas. Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅ Ρ„ΠΎΡ‚ΠΎ. Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅-python snake canvas. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° python snake canvas. БСгодня ΠΌΡ‹ напишСм ΠΈΠ³Ρ€Ρƒ Π·ΠΌΠ΅ΠΉΠΊΠ° Π½Π° Python. Π­Ρ‚ΠΎ ΠΎΠ΄Π½Π° ΠΈΠ· самых распространСнных Π°Ρ€ΠΊΠ°Π΄ Π² ΠΌΠΈΡ€Π΅. Π’ основС Π΅Π΅ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π±ΡƒΠ΄Π΅Ρ‚ Π΄Π²Π° класса:

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ классов сСгмСнта ΠΈ Π·ΠΌΠ΅ΠΈ:

Класс сСгмСнта Π·ΠΌΠ΅ΠΉΠΊΠΈ.

Π‘Π΅Π³ΠΌΠ΅Π½Ρ‚ Π·ΠΌΠ΅ΠΉΠΊΠΈ Π±ΡƒΠ΄Π΅Ρ‚ простым ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠΎΠΌ, созданным ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° create_rectangle класса Canvas модуля tkinter.

Класс змСйки.

Π—ΠΌΠ΅ΠΉΠΊΠ° Ρƒ нас Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°Π±ΠΎΡ€ΠΎΠΌ сСгмСнтов. Π£ Π½Π΅Π΅ Π±ΡƒΠ΄ΡƒΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ двиТСния, измСнСния направлСния ΠΈ добавлСния сСгмСнта.

Π’ΠΎΡ‚ Ρ‚Π°ΠΊ выглядит наша ΠΈΠ³Ρ€Π° Π½Π° Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚.

Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅. python snake initial. Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅ Ρ„ΠΎΡ‚ΠΎ. Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅-python snake initial. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° python snake initial. БСгодня ΠΌΡ‹ напишСм ΠΈΠ³Ρ€Ρƒ Π·ΠΌΠ΅ΠΉΠΊΠ° Π½Π° Python. Π­Ρ‚ΠΎ ΠΎΠ΄Π½Π° ΠΈΠ· самых распространСнных Π°Ρ€ΠΊΠ°Π΄ Π² ΠΌΠΈΡ€Π΅. Π’ основС Π΅Π΅ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π±ΡƒΠ΄Π΅Ρ‚ Π΄Π²Π° класса:

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π²ΡΠΏΠΎΠΌΠΎΠ³Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ.

Для Π½Π°Ρ‡Π°Π»Π° напишСм Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ создания яблок (ΠΈΠ»ΠΈ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΌ наша змСя Π±ΡƒΠ΄Π΅Ρ‚ Π΅ΡΡ‚ΡŒ). НС Π·Π°Π±ΡƒΠ΄ΡŒΡ‚Π΅ ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ random, Ρ‡Ρ‚ΠΎΠ±Ρ‹ всС Ρ€Π°Π±ΠΎΡ‚Π°Π»ΠΎ

Π’Π΅ΠΏΠ΅Ρ€ΡŒ основная функция main, которая Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ΠΈΠ³Ρ€ΠΎΠ²Ρ‹ΠΌ процСссом.

Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅. python snake final. Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅ Ρ„ΠΎΡ‚ΠΎ. Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅-python snake final. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° python snake final. БСгодня ΠΌΡ‹ напишСм ΠΈΠ³Ρ€Ρƒ Π·ΠΌΠ΅ΠΉΠΊΠ° Π½Π° Python. Π­Ρ‚ΠΎ ΠΎΠ΄Π½Π° ΠΈΠ· самых распространСнных Π°Ρ€ΠΊΠ°Π΄ Π² ΠΌΠΈΡ€Π΅. Π’ основС Π΅Π΅ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π±ΡƒΠ΄Π΅Ρ‚ Π΄Π²Π° класса:

Π’ΠΎΡ‚ такая Ρƒ нас ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»Π°ΡΡŒ Π·ΠΌΠ΅ΠΉΠΊΠ° Π½Π° Python. ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΡƒΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠ³Ρ€Ρƒ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ счСт, ускорСниС ΠΈΠ³Ρ€Ρ‹, ΠΎΡ‚Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ create_block Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½ΠΎΠ²Ρ‹Π΅ яблоки Π½Π΅ появлялись Π½Π° самой Π·ΠΌΠ΅ΠΉΠΊΠ΅, ΠΈΠ»ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ систСму ΡƒΡ€ΠΎΠ²Π½Π΅ΠΉ.

UPD: Π’ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ с пСрСзапуском ΠΈΠ³Ρ€Ρ‹ послС ΠΏΡ€ΠΎΠΈΠ³Ρ€Ρ‹ΡˆΠ°.

ΠŸΠΎΠ»Π½Ρ‹ΠΉ ΠΊΠΎΠ΄ ΠΈΠ³Ρ€Ρ‹ Π·ΠΌΠ΅ΠΉΠΊΠ° Π½Π° Python Π½Π° GitHub

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

ПишСм ΠΈΠ³Ρ€Ρƒ Π½Π° Python

ΠŸΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ ΠΌΡ‹ Π½Π°Ρ‡Π½Ρ‘ΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠ΅ Π½Π° Python, Π΄Π°Π²Π°ΠΉΡ‚Π΅ Π·Π°ΠΊΠΎΠ΄ΠΈΠΌ Ρ‡Ρ‚ΠΎ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ интСрСсноС. НапримСр, свою ΠΈΠ³Ρ€Ρƒ, Π³Π΄Π΅ Π½ΡƒΠΆΠ½ΠΎ Π½Π΅ Π΄Π°Ρ‚ΡŒ ΡˆΠ°Ρ€ΠΈΠΊΡƒ ΡƒΠΏΠ°ΡΡ‚ΡŒ, Ρ‚ΠΈΠΏΠ° Арканоида. Π’Ρ‹, скорСС всСго, ΠΈΠ³Ρ€Π°Π»ΠΈ Π² дСтствС Π²ΠΎ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ΅, поэтому ΠΎΡΠ²ΠΎΠΈΡ‚ΡŒΡΡ Π±ΡƒΠ΄Π΅Ρ‚ просто.

Π›ΠΎΠ³ΠΈΠΊΠ° ΠΈΠ³Ρ€Ρ‹

Π•ΡΡ‚ΡŒ ΠΈΠ³Ρ€ΠΎΠ²ΠΎΠ΅ ΠΏΠΎΠ»Π΅ β€” простой ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊ с Ρ‚Π²Ρ‘Ρ€Π΄Ρ‹ΠΌΠΈ Π³Ρ€Π°Π½ΠΈΡ†Π°ΠΌΠΈ. Когда ΡˆΠ°Ρ€ΠΈΠΊ касаСтся стСнки ΠΈΠ»ΠΈ ΠΏΠΎΡ‚ΠΎΠ»ΠΊΠ°, ΠΎΠ½ отскакиваСт Π² Π΄Ρ€ΡƒΠ³ΡƒΡŽ сторону. Если ΠΎΠ½ ΡƒΠΏΠ°Π΄Ρ‘Ρ‚ Π½Π° ΠΏΠΎΠ» β€” Π²Ρ‹ ΠΏΡ€ΠΎΠΈΠ³Ρ€Π°Π»ΠΈ. Π§Ρ‚ΠΎΠ±Ρ‹ этого Π½Π΅ ΡΠ»ΡƒΡ‡ΠΈΠ»ΠΎΡΡŒ, Π²Π½ΠΈΠ·Ρƒ вдоль ΠΏΠΎΠ»Π° Π»Π΅Ρ‚Π°Π΅Ρ‚ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°, Π° Π²Ρ‹ Π΅ΠΉ управляСтС с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ стрСлок. Π’Π°ΡˆΠ° Π·Π°Π΄Π°Ρ‡Π° β€” ΠΏΠΎΠ΄ΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡƒ ΠΏΠΎΠ΄ ΡˆΠ°Ρ€ΠΈΠΊ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ дольшС. Π—Π° ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ ΡƒΠ΄Π°Ρ‡Π½ΠΎΠ΅ спасСниС ΡˆΠ°Ρ€ΠΈΠΊΠ° Π²Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚Π΅ ΠΎΠ΄Π½ΠΎ ΠΎΡ‡ΠΊΠΎ.

Алгоритм

Π§Ρ‚ΠΎΠ±Ρ‹ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Π°ΠΊΡƒΡŽ Π»ΠΎΠ³ΠΈΠΊΡƒ ΠΈΠ³Ρ€Ρ‹, Π½ΡƒΠΆΠ½ΠΎ ΠΏΡ€Π΅Π΄ΡƒΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ‚Π°ΠΊΠΈΠ΅ сцСнарии повСдСния:

Π₯ΠΈΡ‚Ρ€ΠΎΡΡ‚ΡŒ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ всё это происходит ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎ ΠΈ нСзависимо Π΄Ρ€ΡƒΠ³ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³Π°. Π’ΠΎ Π΅ΡΡ‚ΡŒ ΠΏΠΎΠΊΠ° ΡˆΠ°Ρ€ΠΈΠΊ Π»Π΅Ρ‚Π°Π΅Ρ‚, ΠΌΡ‹ Π²ΠΏΠΎΠ»Π½Π΅ ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π²ΠΈΠ³Π°Ρ‚ΡŒ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡƒ, Π° ΠΌΠΎΠΆΠ΅ΠΌ ΠΈ ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π΅Ρ‘ Π½Π° мСстС. И ΠΊΠΎΠ³Π΄Π° ΡˆΠ°Ρ€ΠΈΠΊ отскакиваСт ΠΎΡ‚ стСн, это Ρ‚ΠΎΠΆΠ΅ Π½Π΅ ΠΌΠ΅ΡˆΠ°Π΅Ρ‚ Π΄Ρ€ΡƒΠ³ΠΈΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌ Π΄Π²ΠΈΠ³Π°Ρ‚ΡŒΡΡ ΠΈ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ΅ΠΆΠ΄Ρƒ собой.

ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ΡΡ, Ρ‡Ρ‚ΠΎ Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ Ρ‚Ρ€ΠΈ класса β€” ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡƒ, сам ΡˆΠ°Ρ€ΠΈΠΊ ΠΈ счёт, ΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ, ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ Ρ€Π΅Π°Π³ΠΈΡ€ΡƒΡŽΡ‚ Π½Π° дСйствия Π΄Ρ€ΡƒΠ³ Π΄Ρ€ΡƒΠ³Π°. ПолС Π½Π°ΠΌ самим ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ β€” для этого Π΅ΡΡ‚ΡŒ ΡƒΠΆΠ΅ готовая Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°. А ΠΏΠΎΡ‚ΠΎΠΌ Π² этих классах ΠΌΡ‹ ΠΏΡ€ΠΎΠΏΠΈΡˆΠ΅ΠΌ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ β€” ΠΎΠ½ΠΈ ΠΊΠ°ΠΊ Ρ€Π°Π· ΠΈ Π±ΡƒΠ΄ΡƒΡ‚ ΠΎΡ‚Π²Π΅Ρ‡Π°Ρ‚ΡŒ Π·Π° ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π½Π°ΡˆΠΈΡ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ².

По коням, пишСм на Python

Для этого ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π²Π°ΠΌ потрСбуСтся ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΈ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ срСду Python. Как это ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ β€” Ρ‡ΠΈΡ‚Π°ΠΉΡ‚Π΅ Π² нашСй ΡΡ‚Π°Ρ‚ΡŒΠ΅.

Начало ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

Π§Ρ‚ΠΎΠ±Ρ‹ Ρƒ нас появилась Π³Ρ€Π°Ρ„ΠΈΠΊΠ° Π² ΠΈΠ³Ρ€Π΅, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ Tkinter. Она Π²Ρ…ΠΎΠ΄ΠΈΡ‚ Π² Π½Π°Π±ΠΎΡ€ стандартных Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ Python ΠΈ позволяСт Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠΈΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ β€” Π»ΠΈΠ½ΠΈΠΈ, ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠΈ, ΠΊΡ€ΡƒΠ³ΠΈ ΠΈ ΠΊΡ€Π°ΡΠΈΡ‚ΡŒ ΠΈΡ… Π² Ρ€Π°Π·Π½Ρ‹Π΅ Ρ†Π²Π΅Ρ‚Π°. Π’Π°ΠΊΠΎΠΉ простой Paint, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для Python.

Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΎΠΊΠ½ΠΎ, Π³Π΄Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π²ΠΈΠ΄Π½Π° Π³Ρ€Π°Ρ„ΠΈΠΊΠ°, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ класс Tk(). Он просто Π΄Π΅Π»Π°Π΅Ρ‚ ΠΎΠΊΠ½ΠΎ, Π½ΠΎ Π±Π΅Π· содСрТимого. Π§Ρ‚ΠΎΠ±Ρ‹ появилось содСрТимоС, ΡΠΎΠ·Π΄Π°ΡŽΡ‚ холст β€” Π²ΠΈΠ΄ΠΈΠΌΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ ΠΎΠΊΠ½Π°. ИмСнно Π½Π° Π½Ρ‘ΠΌ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π½Π°ΡˆΡƒ ΠΈΠ³Ρ€Ρƒ. Π—Π° холст ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ класс Canvas(), поэтому Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ свой ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ΠΈΠ· этого класса ΠΈ дальшС ΡƒΠΆΠ΅ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с этим ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ.

Если ΠΌΡ‹ ΠΏΡ€ΠΈΠ½ΡƒΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π½Π΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠΌ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹, Ρ‚ΠΎ ΠΎΠ½Π° Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Ρ‚ΡŒΡΡ ΠΌΠ³Π½ΠΎΠ²Π΅Π½Π½ΠΎ, вСдь ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ считаСт ΠΎΡ‡Π΅Π½ΡŒ быстро ΠΈ ΠΌΠΎΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½ΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π²ΠΈΠ½Π΅Ρ‚ Π΅Ρ‘ ΠΊ Π΄Ρ€ΡƒΠ³ΠΎΠΌΡƒ ΠΊΡ€Π°ΡŽ. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ искусствСнно ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°Ρ‚ΡŒ врСмя двиТСния, Π° для этого Π½Π°ΠΌ понадобится ΠΌΠΎΠ΄ΡƒΠ»ΡŒ Time β€” ΠΎΠ½ Ρ‚ΠΎΠΆΠ΅ стандартный.

ПослСднСС, Ρ‡Ρ‚ΠΎ Π½Π°ΠΌ глобально Π½ΡƒΠΆΠ½ΠΎ, β€” Π·Π°Π΄Π°Π²Π°Ρ‚ΡŒ случайным ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ΅ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡˆΠ°Ρ€ΠΈΠΊΠ° ΠΈ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π±Ρ‹Π»ΠΎ интСрСснСС ΠΈΠ³Ρ€Π°Ρ‚ΡŒ. Π—Π° это ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ Random β€” ΠΎΠ½ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ случайныС числа ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅ΡˆΠΈΠ²Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅.

Π—Π°ΠΏΠΈΡˆΠ΅ΠΌ всё это Π² Π²ΠΈΠ΄Π΅ ΠΊΠΎΠ΄Π° Π½Π° Python:

ΠœΡ‹ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΠ»ΠΈ всС Π½ΡƒΠΆΠ½Ρ‹Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, сдСлали ΠΈ настроили ΠΈΠ³Ρ€ΠΎΠ²ΠΎΠ΅ ΠΏΠΎΠ»Π΅. Π’Π΅ΠΏΠ΅Ρ€ΡŒ займёмся классами.

Π¨Π°Ρ€ΠΈΠΊ

Π‘Π½Π°Ρ‡Π°Π»Π° ΠΏΡ€ΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ словами, Ρ‡Ρ‚ΠΎ Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΎΡ‚ ΡˆΠ°Ρ€ΠΈΠΊΠ°. Он Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡƒΠΌΠ΅Ρ‚ΡŒ:

ΠŸΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°

Π‘Π΄Π΅Π»Π°Π΅ΠΌ Ρ‚ΠΎ ΠΆΠ΅ самоС для ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ β€” сначала опишСм Π΅Ρ‘ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ словами, Π° ΠΏΠΎΡ‚ΠΎΠΌ ΠΏΠ΅Ρ€Π΅Π²Π΅Π΄Ρ‘ΠΌ Π² ΠΊΠΎΠ΄. Π˜Ρ‚Π°ΠΊ, Π²ΠΎΡ‚ Ρ‡Ρ‚ΠΎ Π΄ΠΎΠ»ΠΆΠ½Π° ΡƒΠΌΠ΅Ρ‚ΡŒ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°:

А Π²ΠΎΡ‚ ΠΊΠ°ΠΊ это Π±ΡƒΠ΄Π΅Ρ‚ Π² Π²ΠΈΠ΄Π΅ ΠΊΠΎΠ΄Π°:

МоТно Π±Ρ‹Π»ΠΎ Π½Π΅ Π²Ρ‹Π΄Π΅Π»ΡΡ‚ΡŒ счёт Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ класс ΠΈ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π· ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ. Но здСсь Ρ€Π΅Π°Π»ΡŒΠ½ΠΎ ΠΏΡ€ΠΎΡ‰Π΅ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ класс, Π·Π°Π΄Π°Ρ‚ΡŒ Π½ΡƒΠΆΠ½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ΠΈ сами ΠΏΠΎΡ‚ΠΎΠΌ Ρ€Π°Π·ΠΎΠ±Ρ€Π°Π»ΠΈΡΡŒ, Ρ‡Ρ‚ΠΎ ΠΈ ΠΊΠΎΠ³Π΄Π° Π΄Π΅Π»Π°Ρ‚ΡŒ.

ΠžΡ‚ счёта Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄Π½ΠΎ (ΠΊΡ€ΠΎΠΌΠ΅ конструктора) β€” Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ Ρ€Π΅Π°Π³ΠΈΡ€ΠΎΠ²Π°Π» Π½Π° касаниС ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹, ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Π» число ΠΎΡ‡ΠΊΠΎΠ² ΠΈ Π²Ρ‹Π²ΠΎΠ΄ΠΈΠ» ΠΈΡ… Π½Π° экран:

Π£ нас всё Π³ΠΎΡ‚ΠΎΠ²ΠΎ для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ саму ΠΈΠ³Ρ€Ρƒ. ΠœΡ‹ ΡƒΠΆΠ΅ ΠΏΡ€ΠΎΠ²Π΅Π»ΠΈ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡƒΡŽ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΡƒ всСх элСмСнтов, ΠΈ Π½Π°ΠΌ остаётся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ΡˆΠ°Ρ€ΠΈΠΊΠ°, ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ ΠΈ счёта ΠΈ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΈΠΌ, Π² ΠΊΠ°ΠΊΠΎΠΌ порядкС ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ.

Бмысл ΠΈΠ³Ρ€Ρ‹ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ ΡƒΡ€ΠΎΠ½ΠΈΡ‚ΡŒ ΡˆΠ°Ρ€ΠΈΠΊ. Пока этого Π½Π΅ ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ»ΠΎ β€” всё двиТСтся, Π½ΠΎ ΠΊΠ°ΠΊ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΡˆΠ°Ρ€ΠΈΠΊ ΡƒΠΏΠ°Π» β€” Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ сообщСниС ΠΎ ΠΊΠΎΠ½Ρ†Π΅ ΠΈΠ³Ρ€Ρ‹ ΠΈ ΠΎΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ.

ΠŸΠΎΡΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅, ΠΊΠ°ΠΊ Π»Π°ΠΊΠΎΠ½ΠΈΡ‡Π½ΠΎ выглядит ΠΊΠΎΠ΄ нСпосрСдствСнно самой ΠΈΠ³Ρ€Ρ‹:

Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅. 0. Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅ Ρ„ΠΎΡ‚ΠΎ. Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅-0. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° 0. БСгодня ΠΌΡ‹ напишСм ΠΈΠ³Ρ€Ρƒ Π·ΠΌΠ΅ΠΉΠΊΠ° Π½Π° Python. Π­Ρ‚ΠΎ ΠΎΠ΄Π½Π° ΠΈΠ· самых распространСнных Π°Ρ€ΠΊΠ°Π΄ Π² ΠΌΠΈΡ€Π΅. Π’ основС Π΅Π΅ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π±ΡƒΠ΄Π΅Ρ‚ Π΄Π²Π° класса:

Π§Ρ‚ΠΎ дальшС

На основС этого ΠΊΠΎΠ΄Π° Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ свою ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ ΠΈΠ³Ρ€Ρ‹:

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

ПишСм ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅Ρ€ Π½Π° Python, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ pygame

Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅. image loader. Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅ Ρ„ΠΎΡ‚ΠΎ. Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅-image loader. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° image loader. БСгодня ΠΌΡ‹ напишСм ΠΈΠ³Ρ€Ρƒ Π·ΠΌΠ΅ΠΉΠΊΠ° Π½Π° Python. Π­Ρ‚ΠΎ ΠΎΠ΄Π½Π° ΠΈΠ· самых распространСнных Π°Ρ€ΠΊΠ°Π΄ Π² ΠΌΠΈΡ€Π΅. Π’ основС Π΅Π΅ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π±ΡƒΠ΄Π΅Ρ‚ Π΄Π²Π° класса:
Π‘Ρ€Π°Π·Ρƒ ΠΎΠ³ΠΎΠ²ΠΎΡ€ΡŽΡΡŒ, Ρ‡Ρ‚ΠΎ здСсь написано для самых ΠΌΠ°Π»Π΅Π½ΡŒΠΊΠΈΡ…Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ….

Π”Π°Π²Π½ΠΎ Ρ…ΠΎΡ‚Π΅Π» ΠΏΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ сСбя Π² качСствС ΠΈΠ³Ρ€ΠΎΠ΄Π΅Π»Π°, ΠΈ Π½Π΅Π΄Π°Π²Π½ΠΎ Π²Ρ‹ΠΏΠ°Π» случай ΠΈΠ·ΡƒΡ‡ΠΈΡ‚ΡŒ Python ΠΈ ΠΈΡΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ давнюю ΠΌΠ΅Ρ‡Ρ‚Ρƒ.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅Ρ€?

ΠŸΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅Ρ€(platformer)β€” ΠΆΠ°Π½Ρ€ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Ρ‹Ρ… ΠΈΠ³Ρ€, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… основной Ρ‡Π΅Ρ€Ρ‚ΠΎΠΉ ΠΈΠ³Ρ€ΠΎΠ²ΠΎΠ³ΠΎ процСсса являСтся ΠΏΡ€Ρ‹Π³Π°Π½ΠΈΠ΅ ΠΏΠΎ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°ΠΌ, лазаньС ΠΏΠΎ лСстницам, собираниС ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚ΠΎΠ², ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Ρ… для Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ уровня.
Π’ΠΈΠΊΠΈ

Одними ΠΈΠ· ΠΌΠΎΠΈΡ… Π»ΡŽΠ±ΠΈΠΌΡ‹Ρ… ΠΈΠ³Ρ€ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΆΠ°Π½Ρ€Π° ΡΠ²Π»ΡΡŽΡ‚ΡΡ Β«Super Mario BrothersΒ» ΠΈ Β«Super Meat BoyΒ». Π”Π°Π²Π°ΠΉΡ‚Π΅ ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π½Π΅Ρ‡Ρ‚ΠΎ срСднСС ΠΌΠ΅ΠΆΠ΄Ρƒ Π½ΠΈΠΌΠΈ.

Π‘Π°ΠΌΠΎΠ΅ β€” самоС Π½Π°Ρ‡Π°Π»ΠΎ.

Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅! Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ python Π²Π΅Ρ‚ΠΊΠΈ 2.Ρ…, с 3.Ρ… ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½Ρ‹ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ запуска ниТСописанных скриптов!

НавСрноС, Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΈΠ³Ρ€Ρ‹, Π΄Π° ΠΈ всС прилоТСния, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΠ΅ pygame Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ΡΡ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ Ρ‚Π°ΠΊ:

Π˜Π³Ρ€Π° Π±ΡƒΠ΄Π΅Ρ‚ Β«ΠΊΡ€ΡƒΡ‚ΠΈΡ‚ΡŒΡΡΒ» Π² Ρ†ΠΈΠΊΠ»Π΅ ( while 1), ΠΊΠ°ΠΆΠ΄ΡƒΡŽ ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΡŽ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠ΅Ρ€Π΅Ρ€ΠΈΡΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒ всё (Ρ„ΠΎΠ½, ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹, монстров, Ρ†ΠΈΡ„Ρ€ΠΎΠ²Ρ‹Π΅ сообщСния ΠΈ Ρ‚.Π΄). Π’Π°ΠΆΠ½ΠΎ Π·Π°ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ рисованиС ΠΈΠ΄Π΅Ρ‚ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, Ρ‚.Π΅. Ссли спСрва Π½Π°Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ гСроя, Π° ΠΏΠΎΡ‚ΠΎΠΌ Π·Π°Π»ΠΈΡ‚ΡŒ Ρ„ΠΎΠ½, Ρ‚ΠΎ гСроя Π²ΠΈΠ΄Π½ΠΎ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚, ΡƒΡ‡Ρ‚ΠΈΡ‚Π΅ это Π½Π° Π±ΡƒΠ΄ΡƒΡ‰Π΅Π΅.

Запустив этот ΠΊΠΎΠ΄, ΠΌΡ‹ ΡƒΠ²ΠΈΠ΄ΠΈΠΌ ΠΎΠΊΠ½ΠΎ, Π·Π°Π»ΠΈΡ‚ΠΎΠ΅ зСлСнСньким Ρ†Π²Π΅Ρ‚ΠΎΠΌ.

Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅. image loader. Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅ Ρ„ΠΎΡ‚ΠΎ. Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅-image loader. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° image loader. БСгодня ΠΌΡ‹ напишСм ΠΈΠ³Ρ€Ρƒ Π·ΠΌΠ΅ΠΉΠΊΠ° Π½Π° Python. Π­Ρ‚ΠΎ ΠΎΠ΄Π½Π° ΠΈΠ· самых распространСнных Π°Ρ€ΠΊΠ°Π΄ Π² ΠΌΠΈΡ€Π΅. Π’ основС Π΅Π΅ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π±ΡƒΠ΄Π΅Ρ‚ Π΄Π²Π° класса:
(ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° кликабСльна)

Ну Ρ‡Ρ‚ΠΎ ΠΆΠ΅, Π½Π°Ρ‡Π°Π»ΠΎ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΎ, ΠΈΠ΄Ρ‘ΠΌ дальшС.

Π£Ρ€ΠΎΠ²Π΅Π½ΡŒ.

А ΠΊΠ°ΠΊ Π±Π΅Π· Π½Π΅Π³ΠΎ? Под словом Β«ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒΒ» Π±ΡƒΠ΄Π΅ΠΌ ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°Ρ‚ΡŒ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½ΡƒΡŽ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½ΠΎΠ³ΠΎ пространства, Π·Π°ΠΏΠΎΠ»Π½Π΅Π½Π½ΡƒΡŽ всякой β€” всячиной, ΠΈ ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅Π΄Π²ΠΈΠ³Π°Ρ‚ΡŒΡΡ наш пСрсонаТ.

Для построСния уровня создадим Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив m Π½Π° n. КаТдая ячСйка (m,n) Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ ΠΈΠ· сСбя ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊ. ΠŸΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ Π² сСбС Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ, Π° ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈ Π±Ρ‹Ρ‚ΡŒ пустым. ΠœΡ‹ Π² ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠ°Ρ… Π±ΡƒΠ΄Π΅ΠΌ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹.

Π”ΠΎΠ±Π°Π²ΠΈΠΌ Π΅Ρ‰Π΅ константы

Π—Π°Ρ‚Π΅ΠΌ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ объявлСниС уровня Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ main

И Π² основной Ρ†ΠΈΠΊΠ» Π΄ΠΎΠ±Π°Π²ΠΈΠΌ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅:

Π’.Π΅. ΠœΡ‹ ΠΏΠ΅Ρ€Π΅Π±ΠΈΡ€Π°Π΅ΠΌ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹ΠΉ массив level, ΠΈ, Ссли Π½Π°Ρ…ΠΎΠ΄ΠΈΠΌ символ Β«-Β», Ρ‚ΠΎ ΠΏΠΎ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π°ΠΌ (x * PLATFORM_WIDTH, y * PLATFORM_HEIGHT), Π³Π΄Π΅ x,y β€” индСкс Π² массивС level

Запустив, ΠΌΡ‹ ΡƒΠ²ΠΈΠ΄ΠΈΠΌ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅:

Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅. image loader. Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅ Ρ„ΠΎΡ‚ΠΎ. Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅-image loader. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° image loader. БСгодня ΠΌΡ‹ напишСм ΠΈΠ³Ρ€Ρƒ Π·ΠΌΠ΅ΠΉΠΊΠ° Π½Π° Python. Π­Ρ‚ΠΎ ΠΎΠ΄Π½Π° ΠΈΠ· самых распространСнных Π°Ρ€ΠΊΠ°Π΄ Π² ΠΌΠΈΡ€Π΅. Π’ основС Π΅Π΅ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π±ΡƒΠ΄Π΅Ρ‚ Π΄Π²Π° класса:

ΠŸΠ΅Ρ€ΡΠΎΠ½Π°ΠΆ

ΠŸΡ€ΠΎΡΡ‚ΠΎ ΠΊΡƒΠ±ΠΈΠΊΠΈ Π½Π° Ρ„ΠΎΠ½Π΅ β€” это ΠΎΡ‡Π΅Π½ΡŒ скучно. Нам Π½ΡƒΠΆΠ΅Π½ наш пСрсонаТ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ Π±Π΅Π³Π°Ρ‚ΡŒ ΠΈ ΠΏΡ€Ρ‹Π³Π°Ρ‚ΡŒ ΠΏΠΎ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°ΠΌ.

Π‘ΠΎΠ·Π΄Π°Ρ‘ΠΌ класс нашСго гСроя.

Для удобства, Π±ΡƒΠ΄Π΅ΠΌ Π΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ нашСго пСрсонаТа Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΌ Ρ„Π°ΠΉΠ»Π΅ player.py

Π§Ρ‚ΠΎ Ρ‚ΡƒΡ‚ интСрСсного?
Начнём с Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ создаём Π½ΠΎΠ²Ρ‹ΠΉ класс, Π½Π°ΡΠ»Π΅Π΄ΡƒΡΡΡŒ ΠΎΡ‚ класса pygame.sprite.Sprite, Ρ‚Π΅ΠΌ самым Π½Π°ΡΠ»Π΅Π΄ΡƒΡŽ всС характСристики спрайта.
CΠΏΡ€Π°ΠΉΡ‚ β€” это двиТущССся растровоС ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅. Π˜ΠΌΠ΅Π΅Ρ‚ ряд ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Ρ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΈ свойств.

self.rect = Rect(x, y, WIDTH, HEIGHT), Π² этой строчкС ΠΌΡ‹ создаСм фактичСскиС Π³Ρ€Π°Π½ΠΈΡ†Ρ‹ нашСго пСрсонаТа, ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊ, ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Ρ‚ΡŒ гСроя, Π½ΠΎ ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ Π΅Π³ΠΎ Π½Π° столкновСния. Но ΠΎΠ± этом Ρ‡ΡƒΡ‚ΡŒ Π½ΠΈΠΆΠ΅.

ΠœΠ΅Ρ‚ΠΎΠ΄ update(self, left, right)) ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для описания повСдСния ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°. ΠŸΠ΅Ρ€Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅Ρ‚ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ update(*args) β†’ None. ΠœΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒΡΡ Π² Π³Ρ€ΡƒΠΏΠΏΠ°Ρ… спрайтов.

ΠœΠ΅Ρ‚ΠΎΠ΄ draw(self, screen) ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Π²Ρ‹Π²ΠΎΠ΄Π° пСрсонаТа Π½Π° экран. Π”Π°Π»Π΅Π΅ ΠΌΡ‹ ΡƒΠ±Π΅Ρ€Π΅ΠΌ этот ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΈ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ интСрСсный способ отобраТСния гСроя.

Π”ΠΎΠ±Π°Π²ΠΈΠΌ нашСго гСроя Π² ΠΎΡΠ½ΠΎΠ²Π½ΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

ΠŸΠ΅Ρ€Π΅Π΄ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ΠΌ уровня Π΄ΠΎΠ±Π°Π²ΠΈΠΌ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ гСроя ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Π΅Π³ΠΎ пСрСмСщСния.

Π’ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ событий Π΄ΠΎΠ±Π°Π²ΠΈΠΌ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅:

Π’.Π΅. Если Π½Π°ΠΆΠ°Π»ΠΈ Π½Π° ΠΊΠ»Π°Π²ΠΈΡˆΡƒ Β«Π»Π΅Π²ΠΎΒ», Ρ‚ΠΎ ΠΈΠ΄Ρ‘ΠΌ Π²Π»Π΅Π²ΠΎ. Если отпустили β€” останавливаСмся. Π’Π°ΠΊ ΠΆΠ΅ с ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ Β«ΠΏΡ€Π°Π²ΠΎΒ»

Π‘Π°ΠΌΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ вызываСтся Ρ‚Π°ΠΊ: (добавляСм послС пСрСрисовки Ρ„ΠΎΠ½Π° ΠΈ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌ)

Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅. image loader. Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅ Ρ„ΠΎΡ‚ΠΎ. Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅-image loader. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° image loader. БСгодня ΠΌΡ‹ напишСм ΠΈΠ³Ρ€Ρƒ Π·ΠΌΠ΅ΠΉΠΊΠ° Π½Π° Python. Π­Ρ‚ΠΎ ΠΎΠ΄Π½Π° ΠΈΠ· самых распространСнных Π°Ρ€ΠΊΠ°Π΄ Π² ΠΌΠΈΡ€Π΅. Π’ основС Π΅Π΅ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π±ΡƒΠ΄Π΅Ρ‚ Π΄Π²Π° класса:

Но, ΠΊΠ°ΠΊ ΠΌΡ‹ Π²ΠΈΠ΄ΠΈΠΌ, наш сСрый Π±Π»ΠΎΠΊ слишком быстро пСрСмСщаСтся, Π΄ΠΎΠ±Π°Π²ΠΈΠΌ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ Π² количСствС ΠΊΠ°Π΄Ρ€ΠΎΠ² Π² сСкунду. Для этого послС опрСдСлСния уровня Π΄ΠΎΠ±Π°Π²ΠΈΠΌ Ρ‚Π°ΠΉΠΌΠ΅Ρ€

И Π² Π½Π°Ρ‡Π°Π»ΠΎ основного Ρ†ΠΈΠΊΠ»Π° Π΄ΠΎΠ±Π°Π²ΠΈΠΌ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅:

Завис Π² Π²ΠΎΠ·Π΄ΡƒΡ…Π΅

Π”Π°, наш Π³Π΅Ρ€ΠΎΠΉ Π² Π±Π΅Π·Π²Ρ‹Ρ…ΠΎΠ΄Π½ΠΎΠΌ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ, ΠΎΠ½ завис Π² Π²ΠΎΠ·Π΄ΡƒΡ…Π΅.
Π”ΠΎΠ±Π°Π²ΠΈΠΌ Π³Ρ€Π°Π²ΠΈΡ‚Π°Ρ†ΠΈΠΈ ΠΈ возмоТности ΠΏΡ€Ρ‹Π³Π°Ρ‚ΡŒ.

И Ρ‚Π°ΠΊ, Ρ€Π°Π±ΠΎΡ‚Π°Π΅ΠΌ Π² Ρ„Π°ΠΉΠ»Π΅ player.py

Π”ΠΎΠ±Π°Π²ΠΈΠΌ Π΅Ρ‰Π΅ констант

Π’ ΠΌΠ΅Ρ‚ΠΎΠ΄ _init_ добавляСм строки:

ДобавляСм Π²Ρ…ΠΎΠ΄Π½ΠΎΠΉ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ Π² ΠΌΠ΅Ρ‚ΠΎΠ΄ update
def update(self, left, right, up):
И Π² Π½Π°Ρ‡Π°Π»ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° добавляСм:

И ΠΏΠ΅Ρ€Π΅Π΄ строчкой self.rect.x += self.xvel
ДобавляСм

И Π΄ΠΎΠ±Π°Π²ΠΈΠΌ Π² ΠΎΡΠ½ΠΎΠ²Π½ΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹:
ПослС строчки left = right = False
Π”ΠΎΠ±Π°Π²ΠΈΠΌ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ up

Π’ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ событий Π΄ΠΎΠ±Π°Π²ΠΈΠΌ

И ΠΈΠ·ΠΌΠ΅Π½ΠΈΠΌ Π²Ρ‹Π·ΠΎΠ² ΠΌΠ΅Ρ‚ΠΎΠ΄Π° update, Π΄ΠΎΠ±Π°Π²ΠΈΠ² Π½ΠΎΠ²Ρ‹ΠΉ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ up:
hero.update(left, right)
Π½Π°

Π—Π΄Π΅ΡΡŒ ΠΌΡ‹ создали силу Π³Ρ€Π°Π²ΠΈΡ‚Π°Ρ†ΠΈΠΈ, которая Π±ΡƒΠ΄Π΅Ρ‚ Ρ‚ΡΠ½ΡƒΡ‚ΡŒ нас Π²Π½ΠΈΠ·, постоянно наращивая ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ, Ссли ΠΌΡ‹ Π½Π΅ стоим Π½Π° Π·Π΅ΠΌΠ»Π΅, ΠΈ ΠΏΡ€Ρ‹Π³Π°Ρ‚ΡŒ Π² ΠΏΠΎΠ»Π΅Ρ‚Π΅ ΠΌΡ‹ Π½Π΅ ΡƒΠΌΠ΅Π΅ΠΌ. А ΠΌΡ‹ ΠΏΠΎΠΊΠ° Π½Π΅ ΠΌΠΎΠΆΠ΅ΠΌ Ρ‚Π²Π΅Ρ€Π΄ΠΎ Π²ΡΡ‚Π°Ρ‚ΡŒ Π½Π° Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ, поэтому Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ наш Π³Π΅Ρ€ΠΎΠΉ ΠΏΠ°Π΄Π°Π΅Ρ‚ Π΄Π°Π»Π΅ΠΊΠΎ Π·Π° Π³Ρ€Π°Π½ΠΈΡ†Ρ‹ видимости.
Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅. image loader. Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅ Ρ„ΠΎΡ‚ΠΎ. Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅-image loader. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° image loader. БСгодня ΠΌΡ‹ напишСм ΠΈΠ³Ρ€Ρƒ Π·ΠΌΠ΅ΠΉΠΊΠ° Π½Π° Python. Π­Ρ‚ΠΎ ΠΎΠ΄Π½Π° ΠΈΠ· самых распространСнных Π°Ρ€ΠΊΠ°Π΄ Π² ΠΌΠΈΡ€Π΅. Π’ основС Π΅Π΅ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π±ΡƒΠ΄Π΅Ρ‚ Π΄Π²Π° класса:

Π’ΡΡ‚Π°Π½ΡŒ ΠΎΠ±Π΅ΠΈΠΌΠΈ Π½ΠΎΠ³Π°ΠΌΠΈ Π½Π° зСмлю свою.

Как ΡƒΠ·Π½Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ Π½Π° Π·Π΅ΠΌΠ»Π΅ ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ΠΎΠΉ Ρ‚Π²Π΅Ρ€Π΄ΠΎΠΉ повСрхности? ΠžΡ‚Π²Π΅Ρ‚ ΠΎΡ‡Π΅Π²ΠΈΠ΄Π΅Π½ β€” ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ Π½Π° пСрСсСчСниС, Π½ΠΎ для этого ΠΈΠ·ΠΌΠ΅Π½ΠΈΠΌ созданиС ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌ.

Π‘ΠΎΠ·Π΄Π°Π΄ΠΈΠΌ Π΅Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ Ρ„Π°ΠΉΠ» blocks.py, ΠΈ пСрСнСсСм Π² Π½Π΅Π³ΠΎ описаниС ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹.

Π”Π°Π»ΡŒΡˆΠ΅ создадим класс, Π½Π°ΡΠ»Π΅Π΄ΡƒΡΡΡŒ ΠΎΡ‚ pygame.sprite.Sprite

Π’ΡƒΡ‚ Π½Π΅Ρ‚ Π½ΠΈ Ρ‡Π΅Π³ΠΎ Π½Π°ΠΌ ΡƒΠΆΠ΅ Π½Π΅ Π·Π½Π°ΠΊΠΎΠΌΠΎΠ³ΠΎ, ΠΈΠ΄Ρ‘ΠΌ дальшС.

Π’ основной Ρ„Π°ΠΉΠ»Π΅ ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅ΠΌ измСнСния, ΠΏΠ΅Ρ€Π΅Π΄ описаниСм массива level Π΄ΠΎΠ±Π°Π²ΠΈΠΌ

Π“Ρ€ΡƒΠΏΠΏΠ° спрайтов entities Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для отобраТСния всСх элСмСнтов этой Π³Ρ€ΡƒΠΏΠΏΡ‹.
Массив platforms Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π½Π° пСрСсСчСниС с ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠΎΠΉ.

Π’.Π΅. создаём экзСмплр класса Platform, добавляСм Π΅Π³ΠΎ Π² Π³Ρ€ΡƒΠΏΠΏΡƒ спрайтов entities ΠΈ массив platforms. Π’ entities, Ρ‡Ρ‚ΠΎΠ±Ρ‹ для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π±Π»ΠΎΠΊΠ° Π½Π΅ ΠΏΠΈΡΠ°Ρ‚ΡŒ Π»ΠΎΠ³ΠΈΠΊΡƒ отобраТСния. Π’ platforms Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΡ‚ΠΎΠΌ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ массив Π±Π»ΠΎΠΊΠΎΠ² Π½Π° пСрСсСчСниС с ΠΈΠ³Ρ€ΠΎΠΊΠΎΠΌ.

Π”Π°Π»ΡŒΡˆΠ΅, вСсь ΠΊΠΎΠ΄ Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ уровня выносим ΠΈΠ· Ρ†ΠΈΠΊΠ»Π°.

И Ρ‚Π°ΠΊ ΠΆΠ΅ строчку
hero.draw(screen) # ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅
Π—Π°ΠΌΠ΅Π½ΠΈΠΌ Π½Π°

Запустив, ΠΌΡ‹ ΡƒΠ²ΠΈΠ΄ΠΈΠΌ, Ρ‡Ρ‚ΠΎ Π½ΠΈ Ρ‡Π΅Π³ΠΎ Π½Π΅ измСнилось. Π’Π΅Ρ€Π½ΠΎ. Π’Π΅Π΄ΡŒ ΠΌΡ‹ Π½Π΅ провСряСм нашСго гСроя Π½Π° столкновСния. Начнём это ΠΈΡΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ.

Π Π°Π±ΠΎΡ‚Π°Π΅ΠΌ Π² Ρ„Π°ΠΉΠ»Π΅ player.py

УдаляСм ΠΌΠ΅Ρ‚ΠΎΠ΄ draw, ΠΎΠ½ Π½Π°ΠΌ большС Π½Π΅ Π½ΡƒΠΆΠ΅Π½. И добавляСм Π½ΠΎΠ²Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ collide

Π’ этом ΠΌΠ΅Ρ‚ΠΎΠ΄Π΅ происходит ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° пСрСсСчСниС ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚ гСроя ΠΈ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌ, Ссли Ρ‚Π°ΠΊΠΎΠ²ΠΎΠ΅ имССтся, Ρ‚ΠΎ Π²Ρ‹ΡˆΠ΅ описанной Π»ΠΎΠ³ΠΈΠΊΠ΅ происходит дСйствиС.

Ну, ΠΈ для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ Π±Ρ‹ это всё происходило, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ этот ΠΌΠ΅Ρ‚ΠΎΠ΄.
ИзмСним число Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² для ΠΌΠ΅Ρ‚ΠΎΠ΄Π° update, Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΎΠ½ выглядит Ρ‚Π°ΠΊ:

И Π½Π΅ Π·Π°Π±ΡƒΠ΄ΡŒΡ‚Π΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π΅Π³ΠΎ Π²Ρ‹Π·ΠΎΠ² Π² основном Ρ„Π°ΠΉΠ»Π΅.

Π’.Π΅. ΠΏΠ΅Ρ€Π΅Π΄Π²ΠΈΠ½ΡƒΠ»ΠΈ гСроя Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎ, ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΠ»ΠΈ Π½Π° пСрСсСчСниС ΠΏΠΎ Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΠΈ, ΠΏΠ΅Ρ€Π΅Π΄Π²ΠΈΠ½ΡƒΠ»ΠΈ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½ΠΎ, снова ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΠ»ΠΈ Π½Π° пСрСсСчСниС ΠΏΠΎ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΠΈ.

Π’ΠΎΡ‚, Ρ‡Ρ‚ΠΎ получится, ΠΊΠΎΠ³Π΄Π° запустим.

Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅. image loader. Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅ Ρ„ΠΎΡ‚ΠΎ. Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅-image loader. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° image loader. БСгодня ΠΌΡ‹ напишСм ΠΈΠ³Ρ€Ρƒ Π·ΠΌΠ΅ΠΉΠΊΠ° Π½Π° Python. Π­Ρ‚ΠΎ ΠΎΠ΄Π½Π° ΠΈΠ· самых распространСнных Π°Ρ€ΠΊΠ°Π΄ Π² ΠΌΠΈΡ€Π΅. Π’ основС Π΅Π΅ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π±ΡƒΠ΄Π΅Ρ‚ Π΄Π²Π° класса:

Π€Ρƒ[Ρƒ]! ДвиТущийся ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊ β€” Π½Π΅ красиво!

Π”Π°Π²Π°ΠΉΡ‚Π΅ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ приукрасим нашСго ΠœΠ°Ρ€ΠΈΠΎΠ‘ΠΎΡ.

НачнСм с ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌ. Для этого Π² Ρ„Π°ΠΉΠ»Π΅ blocks.py сдСлаСм нСбольшиС измСнСния.

Π—Π°ΠΌΠ΅Π½ΠΈΠΌ Π·Π°Π»ΠΈΠ²ΠΊΡƒ Ρ†Π²Π΅Ρ‚ΠΎΠΌ Π½Π° ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ, для этого строчку
self.image.fill(Color(PLATFORM_COLOR))
Π—Π°ΠΌΠ΅Π½ΠΈΠΌ Π½Π°

ΠœΡ‹ Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅ΠΌ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ вмСсто сплошного Ρ†Π²Π΅Ρ‚Π°. РазумССтся, Ρ„Π°ΠΉΠ» Β«platform.pngΒ» Π΄ΠΎΠ»ΠΆΠ΅Π½ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Π² ΠΏΠ°ΠΏΠΊΠ΅ Β«blocksΒ», которая Π΄ΠΎΠ»ΠΆΠ½Π° Ρ€Π°ΡΠΏΠΎΠ»Π°Π³Π°Ρ‚ΡŒΡΡ Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ с исходными ΠΊΠΎΠ΄Π°ΠΌΠΈ.

Π’ΠΎΡ‚, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΎΡΡŒ

Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅. image loader. Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅ Ρ„ΠΎΡ‚ΠΎ. Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅-image loader. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° image loader. БСгодня ΠΌΡ‹ напишСм ΠΈΠ³Ρ€Ρƒ Π·ΠΌΠ΅ΠΉΠΊΠ° Π½Π° Python. Π­Ρ‚ΠΎ ΠΎΠ΄Π½Π° ΠΈΠ· самых распространСнных Π°Ρ€ΠΊΠ°Π΄ Π² ΠΌΠΈΡ€Π΅. Π’ основС Π΅Π΅ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π±ΡƒΠ΄Π΅Ρ‚ Π΄Π²Π° класса:

Π‘ΠΏΠ΅Ρ€Π²Π° Π΄ΠΎΠ±Π°Π²ΠΈΠΌ Π² Π±Π»ΠΎΠΊ констант.

Π’ΡƒΡ‚, Π΄ΡƒΠΌΠ°ΡŽ, понятно, анимация Ρ€Π°Π·Π½Ρ‹Ρ… дСйствий гСроя.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅ Π² ΠΌΠ΅Ρ‚ΠΎΠ΄ __init__

Π—Π΄Π΅ΡΡŒ для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ дСйствия ΠΌΡ‹ создаСм Π½Π°Π±ΠΎΡ€ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΉ, ΠΈ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ ΠΈΡ…(Ρ‚.Π΅. Π’ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ смСну ΠΊΠ°Π΄Ρ€ΠΎΠ²).
))
ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΊΠ°Π΄Ρ€ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΈ врСмя ΠΏΠΎΠΊΠ°Π·Π°.

ΠžΡΡ‚Π°Π»ΠΎΡΡŒ Π² Π½ΡƒΠΆΠ½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ Π½ΡƒΠΆΠ½ΡƒΡŽ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ.

Π”ΠΎΠ±Π°Π²ΠΈΠΌ смСну Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΉ Π² ΠΌΠ΅Ρ‚ΠΎΠ΄ update.

Вуаля!
Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅. image loader. Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅ Ρ„ΠΎΡ‚ΠΎ. Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅-image loader. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° image loader. БСгодня ΠΌΡ‹ напишСм ΠΈΠ³Ρ€Ρƒ Π·ΠΌΠ΅ΠΉΠΊΠ° Π½Π° Python. Π­Ρ‚ΠΎ ΠΎΠ΄Π½Π° ΠΈΠ· самых распространСнных Π°Ρ€ΠΊΠ°Π΄ Π² ΠΌΠΈΡ€Π΅. Π’ основС Π΅Π΅ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π±ΡƒΠ΄Π΅Ρ‚ Π΄Π²Π° класса:

Π‘ΠΎΠ»ΡŒΡˆΠ΅, Π½ΡƒΠΆΠ½ΠΎ большС мСста

ΠžΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ Π² Ρ€Π°Π·ΠΌΠ΅Ρ€Π΅ ΠΎΠΊΠ½Π° ΠΌΡ‹ ΠΏΡ€Π΅ΠΎΠ΄ΠΎΠ»Π΅Π΅ΠΌ созданиСм динамичСской ΠΊΠ°ΠΌΠ΅Ρ€Ρ‹.

Для этого создадим класс Camera

Π”Π°Π»Π΅Π΅, Π΄ΠΎΠ±Π°Π²ΠΈΠΌ Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ΅ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠ°ΠΌΠ΅Ρ€Ρ‹

Π‘ΠΎΠ·Π΄Π°Π΄ΠΈΠΌ экзСмпляр ΠΊΠ°ΠΌΠ΅Ρ€Ρ‹, Π΄ΠΎΠ±Π°Π²ΠΈΠΌ ΠΏΠ΅Ρ€Π΅Π΄ основным Ρ†ΠΈΠΊΠ»ΠΎΠΌ:

ΠœΡ‹ создали Π²Π½ΡƒΡ‚Ρ€ΠΈ большого ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠ°, Ρ€Π°Π·ΠΌΠ΅Ρ€Ρ‹ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π²Ρ‹Ρ‡ΠΈΡΠ»ΡΡŽΡ‚ΡΡ Ρ‚Π°ΠΊ:

мСньший ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊ, Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ, ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ‡Π½Ρ‹ΠΌ Ρ€Π°Π·ΠΌΠ΅Ρ€Ρƒ ΠΎΠΊΠ½Π°.

МСньший ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊ цСнтрируСтся ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ пСрсонаТа(ΠΌΠ΅Ρ‚ΠΎΠ΄ update), ΠΈ всС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ Ρ€ΠΈΡΡƒΡŽΡ‚ΡΡ Π² мСньшСм ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠ΅ (ΠΌΠ΅Ρ‚ΠΎΠ΄ apply), Π·Π° счСт Ρ‡Π΅Π³ΠΎ создаётся Π²ΠΏΠ΅Ρ‡Π°Ρ‚Π»Π΅Π½ΠΈΠ΅ двиТСния ΠΊΠ°ΠΌΠ΅Ρ€Ρ‹.

Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π²Ρ‹ΡˆΠ΅ΠΎΠΏΠΈΡΠ°Π½Π½ΠΎΠ³ΠΎ, Π½ΡƒΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ рисованиС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ².

Π—Π°ΠΌΠ΅Π½ΠΈΠΌ строчку
entities.draw(screen) # ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅
На

И ΠΏΠ΅Ρ€Π΅Π΄ Π½Π΅ΠΉ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ.

Π’ΠΎΡ‚, собствСнно, ΠΈ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚
Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅. image loader. Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅ Ρ„ΠΎΡ‚ΠΎ. Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅-image loader. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° image loader. БСгодня ΠΌΡ‹ напишСм ΠΈΠ³Ρ€Ρƒ Π·ΠΌΠ΅ΠΉΠΊΠ° Π½Π° Python. Π­Ρ‚ΠΎ ΠΎΠ΄Π½Π° ΠΈΠ· самых распространСнных Π°Ρ€ΠΊΠ°Π΄ Π² ΠΌΠΈΡ€Π΅. Π’ основС Π΅Π΅ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π±ΡƒΠ΄Π΅Ρ‚ Π΄Π²Π° класса:

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Ρ‡Π°Ρ‚ΡŒ, ссылка Π½Π° GitHub

Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ части, Ссли Π±ΡƒΠ΄Π΅Ρ‚ вострСбовано сообщСством, ΠΌΡ‹ создадим свой Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€ ΡƒΡ€ΠΎΠ²Π½Π΅ΠΉ с блэкдТСком ΠΈ ΡˆΠ»ΡŽΡ…Π°ΠΌΠΈ с Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ Ρ‚ΠΈΠΏΠ°ΠΌΠΈ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌ, монстрами, Ρ‚Π΅Π»Π΅ΠΏΠΎΡ€Ρ‚Π°ΠΌΠΈ, ΠΈ ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ ΠΆΠ΅, принцСссой.

upd pygame ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Ρ‡Π°Ρ‚ΡŒ ΠΎΡ‚ΡΡŽΠ΄Π°, спасибо, Chris_Griffin Π·Π° Π·Π°ΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅
upd1 Вторая Ρ‡Π°ΡΡ‚ΡŒ

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

ПишСм ΠΏΡ€ΠΎΡΡ‚ΡƒΡŽ ΠΈΠ³Ρ€Ρƒ Π½Π° python

БСгодня ΠΌΡ‹ создадим всСм ΠΈΠ·Π²Π΅ΡΡ‚Π½ΡƒΡŽ ΠΈΠ³Ρ€Ρƒ камСнь, Π½ΠΎΠΆΠ½ΠΈΡ†Ρ‹, Π±ΡƒΠΌΠ°Π³Π°. Π’ этом Π½Π°ΠΌ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ ЯП python ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° tkinter, Π½ΠΎ Ссли Π²Ρ‹ Π½Π΅ Π·Π½Π°Π΅Ρ‚Π΅ Ρ‡Ρ‚ΠΎ это Ρ‚Π°ΠΊΠΎΠ΅, ΡΠΎΠ²Π΅Ρ‚ΡƒΡŽ ΠΏΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π΄Π°Π½Π½ΡƒΡŽ ΡΡ‚Π°Ρ‚ΡŒΡŽ.

Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅. image loader. Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅ Ρ„ΠΎΡ‚ΠΎ. Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅-image loader. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° image loader. БСгодня ΠΌΡ‹ напишСм ΠΈΠ³Ρ€Ρƒ Π·ΠΌΠ΅ΠΉΠΊΠ° Π½Π° Python. Π­Ρ‚ΠΎ ΠΎΠ΄Π½Π° ΠΈΠ· самых распространСнных Π°Ρ€ΠΊΠ°Π΄ Π² ΠΌΠΈΡ€Π΅. Π’ основС Π΅Π΅ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π±ΡƒΠ΄Π΅Ρ‚ Π΄Π²Π° класса:

ΠŸΠ΅Ρ€Π²ΠΎΠ΅, Ρ‡Ρ‚ΠΎ Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ, это Π½Π°Ρ‡Π°Π»ΡŒΠ½Π°Ρ структура, окошко, Ρƒ мСня ΠΎΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ Ρ‚Π°ΠΊ:

Π—Π΄Π΅ΡΡŒ ΠΌΡ‹ создаём нСизмСняСмоС ΠΎΠΊΠ½ΠΎ 500 Π½Π° 500 с Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠΌ «КамСнь, Π½ΠΎΠΆΠ½ΠΈΡ†Ρ‹, Π±ΡƒΠΌΠ°Π³Π°Β» ΠΈ Π±Π΅Π»Ρ‹ΠΌ Ρ„ΠΎΠ½ΠΎΠΌ. ИмСнно Π² это окошко ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΎΡ‡ΠΊΠΈ, счСтчики ΠΈ Ρ‚.Π΄.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π² наш ΠΌΠ΅Ρ‚ΠΎΠ΄ startUI Π΄ΠΎΠ±Π°Π²ΠΈΠΌ Ρ‚Π°ΠΊΠΈΠ΅ строчки:

Π­Ρ‚ΠΈ 7 строчСк добавят Π² нашС ΠΎΠΊΠ½ΠΎ 3 ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅Ρ‡Π΅Π³ΠΎ Π½Π΅ Π΄Π΅Π»Π°ΡŽΡ‚. ΠœΡ‹ исправим это ΠΏΠΎΠ·ΠΆΠ΅.

ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π΄Π΅Π»Π°Π΅Ρ‚ свой Π²Ρ‹Π±ΠΎΡ€, наТимая Π½Π° ΠΎΠ΄Π½Ρƒ ΠΈΠ· 3 ΠΊΠ½ΠΎΠΏΠΎΠΊ, это ΠΊΡ€ΡƒΡ‚ΠΎ, Π½ΠΎ Π½Π°ΠΌ Π½ΡƒΠΆΠ΅Π½ ΠΎΠΏΠΏΠΎΠ½Π΅Π½Ρ‚, ΠΈΠΌΠ΅Π½Π½ΠΎ для этого Π½ΡƒΠΆΠ΅Π½ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ random.

А Π²ΠΎΡ‚ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΡ‹ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ, которая Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ Π²Ρ‹Π±ΠΎΡ€, ΠΈ Π²Ρ‹Π΄Π°Π²Π°Ρ‚ΡŒ ΠΎΡ‚Π²Π΅Ρ‚, ΠΊΡ‚ΠΎ ΠΆΠ΅ Π²Ρ‹ΠΈΠ³Ρ€Π°Π» Π² этом Ρ€Π°ΡƒΠ½Π΄Π΅. Π‘Π΄Π΅Π»Π°Π΅ΠΌ это Π²ΠΎΡ‚ Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

Π§Ρ‚ΠΎ Ρ‚ΡƒΡ‚ происходит?

Всё ΠΎΡ‡Π΅Π½ΡŒ просто. Π“Ρ€ΡƒΠ±ΠΎ говоря, Ссли ΠΈΠ³Ρ€ΠΎΠΊ Π½Π°ΠΆΠΌΠ΅Ρ‚ камСнь, отправится 1, Ссли Π½ΠΎΠΆΠ½ΠΈΡ†Ρ‹, Ρ‚ΠΎ 2, Π° Ссли Π±ΡƒΠΌΠ°Π³Π°, Ρ‚ΠΎ 3, ΠΏΡ€ΠΈΡ‡Π΅ΠΌ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ отправится, Π½ΠΎ ΠΈ вывСдСтся Π² консоль.
На счСт ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°. Он свой Π²Ρ‹Π±ΠΎΡ€ Π΄Π΅Π»Π°Π΅Ρ‚, Π½ΠΎ Π΅Π³ΠΎ Π²Ρ‹Π±ΠΎΡ€ Π½ΠΈΠΊΡƒΠ΄Π° Π½Π΅ ΠΈΠ΄Ρ‘Ρ‚.

ΠŸΠ΅Ρ€Π΅Π΄ Ρ‚Π΅ΠΌ, ΠΊΠ°ΠΊ Π΄Π΅Π»Π°Ρ‚ΡŒ Π»ΠΎΠ³ΠΈΠΊΡƒ, Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ ΠΈΠ³Ρ€ΠΎΠΊΡƒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚, ΠΈ для этого ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Label. Π”ΠΎΠ±Π°Π²ΠΈΠΌ Π² startUI Ρ‚Π°ΠΊΠΈΠ΅ строчки:

ΠžΡ‚Π»ΠΈΡ‡Π½ΠΎ. Π’Π΅ΠΏΠ΅Ρ€ΡŒ Ρƒ нас Π΅ΡΡ‚ΡŒ надпись, Π² ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Ρ€Π°ΡƒΠ½Π΄Π° ΠΈ надпись со статистикой.

Π‘Π΄Π΅Π»Π°Π΅ΠΌ 3 счСтчика:

1. ΠŸΠΎΡ€Π°ΠΆΠ΅Π½ΠΈΠΉ
2. ПобСд
3. НичСй

Для этого всС Π² Ρ‚ΠΎΡ‚ ΠΆΠ΅ startUI Π΄ΠΎΠ±Π°Π²ΠΈΠΌ Ρ‚Π°ΠΊΡƒΡŽ строку:

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π² классС main создаСм ΠΌΠ΅Ρ‚ΠΎΠ΄ btn_click, ΠΈ пишСм Π² Π½Π΅Π³ΠΎ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ строки:

НСдолго ΠΌΡƒΠ·Ρ‹ΠΊΠ° ΠΈΠ³Ρ€Π°Π»Π°. Π’Π°ΠΌ ΠΆΠ΅, Π² btn_click, удаляСм

БобствСнно всё, Π½Π° этом созданиС Π·Π°ΠΊΠΎΠ½Ρ‡ΠΈΠ»ΠΎΡΡŒ. Всё Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ³Ρ€Π°Ρ‚ΡŒ.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π—ΠΌΠ΅ΠΉΠΊΠ° Π½Π° Python

Π― Ρ‚ΠΎΡ‡Π½ΠΎ знаю, Ρ‡Ρ‚ΠΎ Π² дСтствС Π²Ρ‹ всС ΠΈΠ³Ρ€Π°Π»ΠΈ Π² ΠΈΠ³Ρ€Ρƒ Β«Π—ΠΌΠ΅ΠΉΠΊΠ°Β» ΠΈ, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ, всСгда Ρ…ΠΎΡ‚Π΅Π»ΠΈ Π²Ρ‹ΠΈΠ³Ρ€Π°Ρ‚ΡŒ. Π‘ΡƒΠ΄ΡƒΡ‡ΠΈ Π΄Π΅Ρ‚ΡŒΠΌΠΈ, ΠΌΡ‹ всС любили ΠΈΡΠΊΠ°Ρ‚ΡŒ Π±Π°Π³ΠΈ Π² ΠΈΠ³Ρ€Π΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ Π²ΠΈΠ΄Π΅Ρ‚ΡŒ сообщСниС Game over, Π½ΠΎ сСйчас, Π±ΡƒΠ΄ΡƒΡ‡ΠΈ тСхнарями, Π½Π°ΠΌ навСрняка хочСтся ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΈΠ³Ρ€Ρƒ Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΊΠΎΠΌΠ°Ρ€ носа Π½Π΅ ΠΏΠΎΠ΄Ρ‚ΠΎΡ‡ΠΈΠ». ИмСнно ΠΎΠ± этом ΠΈ ΠΏΠΎΠΉΠ΄Π΅Ρ‚ Ρ€Π΅Ρ‡ΡŒ Π² нашСй ΡΡ‚Π°Ρ‚ΡŒΠ΅.

ΠŸΠ΅Ρ€Π΅Π΄ Ρ‚Π΅ΠΌ ΠΊΠ°ΠΊ Π΄Π²ΠΈΠ³Π°Ρ‚ΡŒΡΡ дальшС, Π΄Π°Π²Π°ΠΉΡ‚Π΅ посмотрим Π½Π° основныС Ρ€Π°Π·Π΄Π΅Π»Ρ‹ нашСй ΡΡ‚Π°Ρ‚ΡŒΠΈ:

Установка Pygame

ΠŸΠ΅Ρ€Π²ΠΎΠ΅, Ρ‡Ρ‚ΠΎ Π½Π°ΠΌ Π½Π°Π΄ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ, это ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ Pygame. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ, просто Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΠ² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ:

Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈΠ² это, просто ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΡƒΠ΅ΠΌ эту Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ ΠΈ приступим ΠΊ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΈΠ³Ρ€Ρ‹. Но ΠΏΠ΅Ρ€Π΅Π΄ этим Π΄Π°Π²Π°ΠΉΡ‚Π΅ взглянСм Π½Π° основныС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π΄Π°Π½Π½ΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈ создании ΠΈΠ³Ρ€Ρ‹.

Π€ΡƒΠ½ΠΊΡ†ΠΈΡΠžΠΏΠΈΡΠ°Π½ΠΈΠ΅
Π˜Π½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ всС ΠΌΠΎΠ΄ΡƒΠ»ΠΈ Pygame (Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ Π² случаС успСха ΠΈΠ»ΠΈ Π½Π΅ΡƒΠ΄Π°Ρ‡ΠΈ).
Для создания повСрхности ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ Π² качСствС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° Π»ΠΈΠ±ΠΎ список Π»ΠΈΠ±ΠΎ ΠΊΠΎΡ€Ρ‚Π΅ΠΆ (ΠΊΠΎΡ€Ρ‚Π΅ΠΆ ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Ρ‚ΠΈΡ‚Π΅Π»ΡŒΠ½Π΅ΠΉ).
Π—Π°Π΄Π°Π΅Ρ‚ ΡˆΡ€ΠΈΡ„Ρ‚ Pygame, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ систСмныС рСсурсы.

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ экрана

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚:

Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅. display1 snake game in python edureka. Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅ Ρ„ΠΎΡ‚ΠΎ. Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅-display1 snake game in python edureka. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° display1 snake game in python edureka. БСгодня ΠΌΡ‹ напишСм ΠΈΠ³Ρ€Ρƒ Π·ΠΌΠ΅ΠΉΠΊΠ° Π½Π° Python. Π­Ρ‚ΠΎ ΠΎΠ΄Π½Π° ΠΈΠ· самых распространСнных Π°Ρ€ΠΊΠ°Π΄ Π² ΠΌΠΈΡ€Π΅. Π’ основС Π΅Π΅ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π±ΡƒΠ΄Π΅Ρ‚ Π΄Π²Π° класса:

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Ρƒ нас Π΅ΡΡ‚ΡŒ экран для ΠΈΠ³Ρ€Ρ‹, Π½ΠΎ ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ ΠΊΠ»ΠΈΠΊΠ½Π΅Ρ‚Π΅ ΠΏΠΎ ΠΊΠ½ΠΎΠΏΠΊΠ΅ close, экран Π½Π΅ закроСтся. Π­Ρ‚ΠΎ ΠΏΠΎΡ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ Π½Π΅ прСдусмотрСли Ρ‚Π°ΠΊΠΎΠ³ΠΎ повСдСния. Для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ этой Π·Π°Π΄Π°Ρ‡ΠΈ Π² Pygame прСдусмотрСно событиС Β«QIUTΒ», ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ ΡΠ»Π΅ΡƒΠ΄ΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

Π’Π΅ΠΏΠ΅Ρ€ΡŒ, ΠΊΠΎΠ³Π΄Π° наш экран ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²Π»Π΅Π½, Π½Π°ΠΌ прСдстоит Π½Π°Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π½Π° Π½Π΅ΠΌ Π·ΠΌΠ΅ΠΉΠΊΡƒ. Π­Ρ‚ΠΎΠΌΡƒ посвящСн ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Ρ€Π°Π·Π΄Π΅Π».

ΠœΠ°Ρ€ΠΊ Π›ΡƒΡ‚Ρ† Β«Π˜Π·ΡƒΡ‡Π°Π΅ΠΌ PythonΒ»

Π‘ΠΊΠ°Ρ‡ΠΈΠ²Π°ΠΉΡ‚Π΅ ΠΊΠ½ΠΈΠ³Ρƒ Ρƒ нас Π² Ρ‚Π΅Π»Π΅Π³Ρ€Π°ΠΌ

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π·ΠΌΠ΅ΠΉΠΊΠΈ

ΠŸΠ΅Ρ€Π΅Π΄ Ρ‚Π΅ΠΌ ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π·ΠΌΠ΅ΠΉΠΊΡƒ, ΠΌΡ‹ ΠΈΠ½ΠΈΡ†ΠΈΠΈΡ€ΡƒΠ΅ΠΌ нСсколько Ρ†Π²Π΅Ρ‚ΠΎΠ²Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… для Ρ€Π°ΡΠΊΡ€Π°ΡˆΠΈΠ²Π°Π½ΠΈΡ самой Π·ΠΌΠ΅ΠΉΠΊΠΈ, Π΅Π΄Ρ‹ ΠΈ экрана. Π’ Pygame ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ цвСтовая схСма RGB (RED, GREEN, BLUE). Установка всСх Ρ†Π²Π΅Ρ‚ΠΎΠ² Π² 0 соотвСтствуСт Ρ‡Π΅Ρ€Π½ΠΎΠΌΡƒ Ρ†Π²Π΅Ρ‚Ρƒ, Π° Π² 255 β€” соотвСтствСнно, Π±Π΅Π»ΠΎΠΌΡƒ.

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚:

Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅. creating the snake snake game in python edureka. Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅ Ρ„ΠΎΡ‚ΠΎ. Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅-creating the snake snake game in python edureka. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° creating the snake snake game in python edureka. БСгодня ΠΌΡ‹ напишСм ΠΈΠ³Ρ€Ρƒ Π·ΠΌΠ΅ΠΉΠΊΠ° Π½Π° Python. Π­Ρ‚ΠΎ ΠΎΠ΄Π½Π° ΠΈΠ· самых распространСнных Π°Ρ€ΠΊΠ°Π΄ Π² ΠΌΠΈΡ€Π΅. Π’ основС Π΅Π΅ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π±ΡƒΠ΄Π΅Ρ‚ Π΄Π²Π° класса:

Как ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ, Π·ΠΌΠ΅ΠΉΠΊΠ° создана Π² Π²ΠΈΠ΄Π΅ Π³ΠΎΠ»ΡƒΠ±ΠΎΠ³ΠΎ ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠ°. Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π½Π°ΡƒΡ‡ΠΈΡ‚ΡŒ Π΅Π΅ Π΄Π²ΠΈΠ³Π°Ρ‚ΡŒΡΡ.

Π”Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ Π·ΠΌΠ΅ΠΉΠΊΠΈ

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚:

Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅. no point. Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅ Ρ„ΠΎΡ‚ΠΎ. Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅-no point. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° no point. БСгодня ΠΌΡ‹ напишСм ΠΈΠ³Ρ€Ρƒ Π·ΠΌΠ΅ΠΉΠΊΠ° Π½Π° Python. Π­Ρ‚ΠΎ ΠΎΠ΄Π½Π° ΠΈΠ· самых распространСнных Π°Ρ€ΠΊΠ°Π΄ Π² ΠΌΠΈΡ€Π΅. Π’ основС Π΅Π΅ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π±ΡƒΠ΄Π΅Ρ‚ Π΄Π²Π° класса:

Β«Game overΒ» ΠΏΡ€ΠΈ достиТСнии Π·ΠΌΠ΅ΠΉΠΊΠΎΠΉ Π³Ρ€Π°Π½ΠΈΡ†Ρ‹

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚:

Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅. boundries edureka. Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅ Ρ„ΠΎΡ‚ΠΎ. Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅-boundries edureka. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° boundries edureka. БСгодня ΠΌΡ‹ напишСм ΠΈΠ³Ρ€Ρƒ Π·ΠΌΠ΅ΠΉΠΊΠ° Π½Π° Python. Π­Ρ‚ΠΎ ΠΎΠ΄Π½Π° ΠΈΠ· самых распространСнных Π°Ρ€ΠΊΠ°Π΄ Π² ΠΌΠΈΡ€Π΅. Π’ основС Π΅Π΅ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π±ΡƒΠ΄Π΅Ρ‚ Π΄Π²Π° класса:

Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π΅Π΄Ρ‹

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΡ‹ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π΅Π΄Ρ‹ для Π·ΠΌΠ΅ΠΉΠΊΠΈ, ΠΈ ΠΊΠΎΠ³Π΄Π° ΠΎΠ½Π° Π±ΡƒΠ΄Π΅Ρ‚ Π΅Π΅ ΠΏΠ΅Ρ€Π΅ΡΠ΅ΠΊΠ°Ρ‚ΡŒ, ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒ сообщСниС Β«Yummy!!”. Помимо этого, ΠΌΡ‹ внСсСм нСбольшиС измСнСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄Π°Π΄ΡƒΡ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΈΠ³Ρ€ΠΎΠΊΡƒ ΠΏΡ€Π΅ΠΊΡ€Π°Ρ‰Π°Ρ‚ΡŒ ΠΈΠ³Ρ€Ρƒ, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π½Π°Ρ‡ΠΈΠ½Π°Ρ‚ΡŒ Π΅Π΅ Π·Π°Π½ΠΎΠ²ΠΎ Π² случаС пораТСния.

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚:

Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅. adding the food snake game in python edureka. Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅ Ρ„ΠΎΡ‚ΠΎ. Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅-adding the food snake game in python edureka. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° adding the food snake game in python edureka. БСгодня ΠΌΡ‹ напишСм ΠΈΠ³Ρ€Ρƒ Π·ΠΌΠ΅ΠΉΠΊΠ° Π½Π° Python. Π­Ρ‚ΠΎ ΠΎΠ΄Π½Π° ΠΈΠ· самых распространСнных Π°Ρ€ΠΊΠ°Π΄ Π² ΠΌΠΈΡ€Π΅. Π’ основС Π΅Π΅ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π±ΡƒΠ΄Π΅Ρ‚ Π΄Π²Π° класса:

Terminal:

Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅. adding the food terminal snake game in python edureka. Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅ Ρ„ΠΎΡ‚ΠΎ. Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅-adding the food terminal snake game in python edureka. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° adding the food terminal snake game in python edureka. БСгодня ΠΌΡ‹ напишСм ΠΈΠ³Ρ€Ρƒ Π·ΠΌΠ΅ΠΉΠΊΠ° Π½Π° Python. Π­Ρ‚ΠΎ ΠΎΠ΄Π½Π° ΠΈΠ· самых распространСнных Π°Ρ€ΠΊΠ°Π΄ Π² ΠΌΠΈΡ€Π΅. Π’ основС Π΅Π΅ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π±ΡƒΠ΄Π΅Ρ‚ Π΄Π²Π° класса:

Π£Π²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠ΅ Π΄Π»ΠΈΠ½Ρ‹ Π·ΠΌΠ΅ΠΉΠΊΠΈ

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠ΄ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Ρ‚ΡŒ Π΄Π»ΠΈΠ½Ρƒ Π·ΠΌΠ΅ΠΉΠΊΠΈ послС поглощСния Сю Π΅Π΄Ρ‹. Π’Π°ΠΊΠΆΠ΅, Ссли Π·ΠΌΠ΅ΠΉΠΊΠ° сталкиваСтся с собствСнным хвостом, ΠΈΠ³Ρ€Π° заканчиваСтся ΠΈ выводится сообщСниС: β€œYou Lost! Press Q-Quit or C-Play Againβ€œ. Π”Π»ΠΈΠ½Π° Π·ΠΌΠ΅ΠΉΠΊΠΈ хранится Π² спискС, Π° Π±Π°Π·ΠΎΠ²Ρ‹Π΅ значСния Π·Π°Π΄Π°Π½Ρ‹ Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΊΠΎΠ΄Π΅.

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚:

Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅. point 1. Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅ Ρ„ΠΎΡ‚ΠΎ. Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅-point 1. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° point 1. БСгодня ΠΌΡ‹ напишСм ΠΈΠ³Ρ€Ρƒ Π·ΠΌΠ΅ΠΉΠΊΠ° Π½Π° Python. Π­Ρ‚ΠΎ ΠΎΠ΄Π½Π° ΠΈΠ· самых распространСнных Π°Ρ€ΠΊΠ°Π΄ Π² ΠΌΠΈΡ€Π΅. Π’ основС Π΅Π΅ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π±ΡƒΠ΄Π΅Ρ‚ Π΄Π²Π° класса:

Π’Ρ‹Π²ΠΎΠ΄ счСта Π½Π° экран

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚:

Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅. final screen snake game edureka. Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅ Ρ„ΠΎΡ‚ΠΎ. Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅-final screen snake game edureka. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ для ΠΈΠ³Ρ€Ρ‹ Π½Π° ΠΏΠΈΡ‚ΠΎΠ½Π΅. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° final screen snake game edureka. БСгодня ΠΌΡ‹ напишСм ΠΈΠ³Ρ€Ρƒ Π·ΠΌΠ΅ΠΉΠΊΠ° Π½Π° Python. Π­Ρ‚ΠΎ ΠΎΠ΄Π½Π° ΠΈΠ· самых распространСнных Π°Ρ€ΠΊΠ°Π΄ Π² ΠΌΠΈΡ€Π΅. Π’ основС Π΅Π΅ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π±ΡƒΠ΄Π΅Ρ‚ Π΄Π²Π° класса:

Π’ΠΎΡ‚ ΠΌΡ‹ ΠΈ дошли Π΄ΠΎ ΠΊΠΎΠ½Ρ†Π° нашСй ΡΡ‚Π°Ρ‚ΡŒΠΈ. ΠœΡ‹ надССмся, Ρ‡Ρ‚ΠΎ ΠΎΠ½Π° Π²Π°ΠΌ ΠΏΠΎΠ½Ρ€Π°Π²ΠΈΠ»Π°ΡΡŒ ΠΈ всС Π±Ρ‹Π»ΠΎ понятно. Π‘Π°ΠΌΠΎΠ΅ Π³Π»Π°Π²Π½ΠΎΠ΅, Π½Π΅ Π·Π°Π±Ρ‹Π²Π°ΠΉΡ‚Π΅ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ большС ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ваши знания Π½Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *