ΠΊΠΎΠ΄ Π·ΠΌΠ΅ΠΉΠΊΠΈ Π½Π° ΠΏΠ°ΠΉΠ³Π΅ΠΉΠΌ

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

ΠŸΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠ°Ρ Π·ΠΌΠ΅ΠΉΠΊΠ° Π½Π° Python ΠΌΠ΅Π½Π΅Π΅, Ρ‡Π΅ΠΌ Π² 100 строчСк ΠΊΠΎΠ΄Π°

На самом Π΄Π΅Π»Π΅ строчСк ΠΊΠΎΠ΄Π° с Π»ΠΎΠ³ΠΈΠΊΠΎΠΉ ΠΈΠ³Ρ€Ρ‹ Π±ΡƒΠ΄Π΅Ρ‚ Π³ΠΎΡ€Π°Π·Π΄ΠΎ мСньшС, Π΄ΠΎΠ±Ρ€ΡƒΡŽ ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Ρƒ скрипта Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° ΠΈΠ³Ρ€ΠΎΠ²ΠΎΠ³ΠΎ поля, рисованиС Π½ΠΎΠ²ΠΎΡ€ΠΎΠΆΠ΄Ρ‘Π½Π½ΠΎΠΉ Π·ΠΌΠ΅ΠΈ, Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ клавиш управлСния ΠΈ Π΅Ρ‰Ρ‘ ΠΏΠ°Ρ€ΠΎΡ‡ΠΊΠ° ΠΌΠ΅Π»ΠΎΡ‡Π΅ΠΉ. ΠŸΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΡ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠ»Π΅Π·Π½Π° для Ρ‚Π°ΠΊΠΈΡ… ΠΆΠ΅ Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…, ΠΊΠ°ΠΊ ΠΈ я сам. И Π΄Π°, Π² ΠΊΠΎΠ΄Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ошибки, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ я Π² настоящий ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π½Π΅ Π²ΠΈΠΆΡƒ Π² силу своСго нСбольшого ΠΎΠΏΡ‹Ρ‚Π° программирования, Π·Π°ΠΊΠ°Π½Ρ‡ΠΈΠ²Π°ΡŽΡ‰Π΅Π³ΠΎΡΡ Π½Π° ΠΏΡ€ΠΎΡ‡Ρ‚Π΅Π½ΠΈΠΈ ΠœΠ°Ρ€ΠΊΠ° Π›ΡƒΡ‚Ρ†Π° ΠΈ ΠΏΠΎΠΊΠ° Π΅Ρ‰Ρ‘ нСдописанном Ρ‚Π΅Π»Π΅Π³Ρ€Π°ΠΌ Π±ΠΎΡ‚Π΅, Π½ΠΎ Π·ΠΌΠ΅ΠΉΠΊΠ° Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ исправно ΠΈ Π΄Π΅Π»Π°Π΅Ρ‚ всё, Ρ‡Ρ‚ΠΎ Π±Ρ‹Π»ΠΎ Π·Π°Π΄ΡƒΠΌΠ°Π½ΠΎ. ΠŸΠΈΡΠ°Ρ‚ΡŒ Π±ΡƒΠ΄Ρƒ с использованиСм модуля turtle. Погнали.

Π˜ΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΡƒΠ΅ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ ΠΈ Π·Π°Π΄Π°Ρ‘ΠΌ Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½ΡƒΡŽ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ. ΠœΠΎΠ΄ΡƒΠ»ΡŒ time понадобится для установки ΠΏΠ°ΡƒΠ·Ρ‹ Π² основном бСсконСчном Ρ†ΠΈΠΊΠ»Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, turtle Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚Π²Π΅Ρ‡Π°Ρ‚ΡŒ Π·Π° Π³Ρ€Π°Ρ„ΠΈΠΊΡƒ Π² ΠΈΠ³Ρ€Π΅, ΠΈΠ· модуля random Π²ΠΎΠ·ΡŒΠΌΡ‘ΠΌ ΠΎΠ΄ΠΈΠ½ ΠΌΠ΅Ρ‚ΠΎΠ΄ randrange для Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚ Π΅Π΄Ρ‹ для нашСй Π·ΠΌΠ΅ΠΈ. Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ BREAK_FLAG Π±ΡƒΠ΄Π΅ΠΌ ΠΎΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ ΠΈΠ³Ρ€Ρƒ ΠΏΡ€ΠΈ укусС Π·ΠΌΠ΅ΠΉΠΊΠΈ самой сСбя, ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ ΠΎΠ± этом ΠΏΠΎΠ·ΠΆΠ΅.

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ шагом создаём ΠΎΠΊΠ½ΠΎ ΠΈΠ³Ρ€Ρ‹, Π½Π°Π·Π½Π°Ρ‡Π°Π΅ΠΌ Π½Π°Π·Π²Π°Π½ΠΈΠ΅, Π·Π°Π΄Π°Ρ‘ΠΌ Ρ†Π²Π΅Ρ‚ Ρ„ΠΎΠ½Π° ΠΈ Ρ€Π°Π·ΠΌΠ΅Ρ€Ρ‹ ΠΎΠΊΠ½Π°. Π‘Ρ‚Ρ€ΠΎΠΊΠ° screen.tracer(0) ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ, Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ°Π΄Ρ€Ρ‹ Π±ΡƒΠ΄Π΅ΠΌ сами Π² основном Ρ†ΠΈΠΊΠ»Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Если этого Π½Π΅ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ вновь созданный сСгмСнт Π·ΠΌΠ΅ΠΉΠΊΠΈ ΠΈ Π½ΠΎΠ²Ρ‹ΠΉ элСмСнт Π΅Π΄Ρ‹, послС поСдания Π΄ΠΎΠ±Ρ‹Ρ‡ΠΈ, Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΡΠ²Π»ΡΡ‚ΡŒΡΡ Π² Ρ†Π΅Π½Ρ‚Ρ€Π΅ поля ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎΡ‚ΠΎΠΌ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Ρ‚ΡŒΡΡ Π² Π·Π°Π΄Π°Π½Π½Ρ‹Π΅ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ ΠΈ вСсь этот процСсс ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ Π²ΠΈΠ΄Π΅Ρ‚ΡŒ. Π­Ρ‚ΠΎ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ turtle, ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Π½ΠΎΠ²Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ всСгда появляСтся Π² Ρ†Π΅Π½Ρ‚Ρ€Π΅ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚.

Для наглядности нарисуСм Π³Ρ€Π°Π½ΠΈΡ†Ρ‹ ΠΈΠ³Ρ€ΠΎΠ²ΠΎΠ³ΠΎ поля. Π‘ΠΎΠ·Π΄Π°Ρ‘ΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Ρ‡Π΅Ρ€Π΅ΠΏΠ°ΡˆΠΊΠΈ border = turtle.Turtle(), Π΄Π΅Π»Π°Π΅ΠΌ Π΅Π³ΠΎ Π½Π΅Π²ΠΈΠ΄ΠΈΠΌΡ‹ΠΌ border.hideturtle(), Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΡ‚ Π½Π΅Π³ΠΎ Π½Π°ΠΌ понадобится Ρ‚ΠΎΠ»ΡŒΠΊΠΎ линия, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΎΠ½ Ρ‡Π΅Ρ€Ρ‚ΠΈΡ‚ ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠΈ. И опуская ΠΈ поднимая ΠΏΠ΅Ρ€ΠΎ border.penup(), border.pendown() ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Π΅ΠΌ Π½Π°ΡˆΡƒ Ρ‡Π΅Ρ€Π΅ΠΏΠ°ΡˆΠΊΡƒ ΠΏΠΎ строго Π·Π°Π΄Π°Π½Π½Ρ‹ΠΌ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π°ΠΌ. На Π²Ρ‹Ρ…ΠΎΠ΄Π΅ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ Ρ‡Ρ‘Ρ€Π½Ρ‹ΠΉ ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚, Π³Ρ€Π°Π½ΠΈΡ†Ρ‹ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ нСльзя Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅ΡΠ΅ΠΊΠ°Ρ‚ΡŒ нашСй Π·ΠΌΠ΅Π΅.

Π‘ΠΎΠ·Π΄Π°Π΄ΠΈΠΌ Π·ΠΌΠ΅ΠΉΠΊΡƒ. Наша вновь роТдённая змСя Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΎΡΡ‚ΠΎΡΡ‚ΡŒ ΠΈΠ· Ρ‚Ρ€Ρ‘Ρ… сСгмСнтов ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π±ΡƒΠ΄Π΅Ρ‚ ΡΠ²Π»ΡΡ‚ΡŒΡΡ Π½ΠΎΠ²Ρ‹ΠΌ экзСмпляром класса Turtle. Π”Ρ€ΡƒΠ³ΠΈΠΌΠΈ словами змСя Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΎΡΡ‚ΠΎΡΡ‚ΡŒ ΠΈΠ· мноТСства Ρ‡Π΅Ρ€Π΅ΠΏΠ°ΡˆΠ΅ΠΊ. НадСюсь контСкст слова Β«Ρ‡Π΅Ρ€Π΅ΠΏΠ°ΡˆΠΊΠ°Β» Π² этой ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΠΈ понятСн всСм Π±Π΅Π· объяснСний. Π₯Ρ€Π°Π½ΠΈΡ‚ΡŒ Π·ΠΌΠ΅ΠΉΠΊΡƒ Ρ†Π΅Π»ΠΈΠΊΠΎΠΌ Π±ΡƒΠ΄Π΅ΠΌ Π² Π²ΠΈΠ΄Π΅ списка Π² ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ snake. Π‘ΠΎΠ·Π΄Π°Ρ‘ΠΌ змСю Π² Ρ†ΠΈΠΊΠ»Π΅ for, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ прогоняСм Ρ‚Ρ€ΠΈ Ρ€Π°Π·Π°. Π‘ΠΎΠ·Π΄Π°Ρ‘ΠΌ Π½ΠΎΠ²Ρ‹ΠΉ сСгмСнт snake_segment = turtle.Turtle(), Π·Π°Π΄Π°Ρ‘ΠΌ Ρ„ΠΎΡ€ΠΌΡƒ snake_segment.shape(‘square’) ΠΈ ΠΏΠΎΠ΄Π½ΠΈΠΌΠ°Π΅ΠΌ ΠΏΠ΅Ρ€ΠΎ snake_segment.penup() Ρ‚Π°ΠΊ, ΠΊΠ°ΠΊ Π½Π°ΠΌ Π½Π΅ Π½Π°Π΄ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π·ΠΌΠ΅ΠΉΠΊΠ° оставляла послС сСбя слСд. УсловиС if Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ для окраски сСгмСнтов Π² сСрый Ρ†Π²Π΅Ρ‚. ΠšΡ€Π°ΡΡΡ‚ΡΡ всС ΠΊΡ€ΠΎΠΌΠ΅ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ, Π³ΠΎΠ»ΠΎΠ²Π° остаётся Ρ‡Ρ‘Ρ€Π½ΠΎΠΉ. Π’ ΠΊΠΎΠ½Ρ†Π΅ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΈ добавляСм сСгмСнт Π² список хранящий всю змСю Ρ†Π΅Π»ΠΈΠΊΠΎΠΌ snake.append(snake_segment).

Π’ этом Π±Π»ΠΎΠΊΠ΅ ΠΊΠΎΠ΄Π° создаём ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Π΅Π΄Ρ‹, Π·Π°Π΄Π°Ρ‘ΠΌ Π΅ΠΌΡƒ ΠΊΡ€ΡƒΠ³Π»ΡƒΡŽ Ρ„ΠΎΡ€ΠΌΡƒ, Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Π΅ΠΌ Π΅Π΄Ρƒ Π½Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½ΠΎΠ΅ для Π½Π΅Ρ‘ мСсто.

Π£ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ Π·ΠΌΠ΅ΠΉΠΊΠΎΠΉ Π±ΡƒΠ΄Π΅ΠΌ ΠΊΠ½ΠΎΠΏΠΊΠ°ΠΌΠΈ Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΈ со стрСлками. Π—Π° привязку клавиш ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ screen.onkeypress(). ΠœΠ΅Ρ‚ΠΎΠ΄Ρƒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ Π² качСствС Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ΠΈ имя ΠΊΠ½ΠΎΠΏΠΊΠΈ, которая Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ. ΠœΠ΅Ρ‚ΠΎΠ΄ setheading() Π·Π°Π΄Π°Ρ‘Ρ‚ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ двиТСния ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Ρ‡Π΅Ρ€Π΅ΠΏΠ°ΡˆΠΊΠΈ. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ Π±ΡƒΠ΄Π΅ΠΌ Π² Ρ‚Π°ΠΊΠΎΠΌ Π²ΠΈΠ΄Π΅ snake[0].setheading(90), Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Π³ΠΎΠ»ΠΎΠ²Ρƒ Π·ΠΌΠ΅ΠΉΠΊΠΈ ΠΏΠΎΠ²Π΅Ρ€Π½ΡƒΡ‚ΡŒ Π½Π° 90 градусов ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ направлСния ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ. Для нас это Π·Π½Π°Ρ‡ΠΈΡ‚ Π²Π²Π΅Ρ€Ρ…. ΠžΠ±ΠΎΡ€Π°Ρ‡ΠΈΠ²Π°Π΅ΠΌ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π² лямбда Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅, это ΠΎΡ‚Π»ΠΎΠΆΠΈΡ‚ Π΅Π³ΠΎ Π²Ρ‹Π·ΠΎΠ² Π΄ΠΎ ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° наТатия Π½Π° ΠΊΠ»Π°Π²ΠΈΡˆΡƒ. Имя ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‘ΠΌ Π² Π²ΠΈΠ΄Π΅ строки ‘Up’ повторяСм ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ для ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Ρ… Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠΉ. НачинаСм ΡΠ»ΡƒΡˆΠ°Ρ‚ΡŒ события с ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρ‹ screen.listen()

Ну ΠΈ Π½Π°ΠΊΠΎΠ½Π΅Ρ† самоС интСрСсноС. Π›ΠΎΠ³ΠΈΠΊΠ° ΠΈΠ³Ρ€Ρ‹ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒΡΡ Π² бСсконСчном Ρ†ΠΈΠΊΠ»Π΅. Для наглядности ΠΏΠΎΠ»ΠΎΠΆΡƒ Π΅Π³ΠΎ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ здСсь ΠΏΠΎΠ΄

А Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΏΠΎ порядку. Если расстояниС ΠΎΡ‚ Π³ΠΎΠ»ΠΎΠ²Ρ‹ Π·ΠΌΠ΅ΠΈ Π΄ΠΎ Π΅Π΄Ρ‹ мСньшС 10 if snake[0].distance(food)

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

Π—ΠΌΠ΅ΠΉΠΊΠ° Π½Π° python с pygame (100 строчСк Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰Π΅Π³ΠΎ)

200 мсСк послС прорисовки Π·ΠΌΠ΅ΠΉΠΊΠΈ, Ρ‚ΠΎ ΠΎΠ½Π° Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎ сходит Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ Ρ†ΠΈΠΊΠ»Π΅, ΠΈΠ½Π°Ρ‡Π΅ происходит ΠΊΠ°ΠΊ написано Π²Ρ‹ΡˆΠ΅.
Как Ρ€Π΅ΡˆΠΈΡ‚ΡŒ Π΄Π°Π½Π½ΡƒΡŽ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ?

PS: ΠΈΠ·Π²ΠΈΠ½ΠΈΡ‚Π΅ Π·Π° Ρ‚Π°Π±ΡƒΠ»ΡΡ†ΠΈΡŽ

ΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² написании ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Ρ…, курсовых ΠΈ Π΄ΠΈΠΏΠ»ΠΎΠΌΠ½Ρ‹Ρ… Ρ€Π°Π±ΠΎΡ‚ здСсь.

Python Pygame
ΠŸΠΎΡ‡Π΅ΠΌΡƒ-Ρ‚ΠΎ ΠΊΠ°ΠΏΠ»ΠΈ ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ Π·Π° собой слСд, Π° ΠΌΠ½Π΅ Π½Π°Π΄ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ΠΈ просто Π²Π½ΠΈΠ· ΡƒΡ…ΠΎΠ΄ΠΈΠ»ΠΈ. ΠŸΠΎΠ΄ΡΠΊΠ°ΠΆΠΈΡ‚Π΅, Π².

PyGame python 3.4
Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ вопрос Π·Π°Π΄Π°Π²Π°Π»ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ людСй, Π½ΠΎ ΠΊΠ°ΠΊ ΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ PyGame Π½Π° Python 3.4?

ΠœΠΎΠ΄ΡƒΠ»ΡŒ pygame Π² python 2,7,x
ВсСм Π΄ΠΎΠ±Ρ€ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ суток. Π’ΠΎΠ·Π½ΠΈΠΊΠ»Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°: Ρ…ΠΎΡ‡Ρƒ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ изобраТСния ΠΈΠ³Ρ€ΠΎΠΊΠ° ΠΈ Π²Ρ€Π°Π³Π°.

МоТно Π»ΠΈ Π½Π°ΠΉΡ‚ΠΈ Pygame для Python вСрсии 3.5.1?
ЗдравствуйтС. Π£ мСня установлСн Python 3.5.1, подскаТитС, Π³Π΄Π΅ ΠΌΠΎΠΆΠ½ΠΎ для этой вСрсии Π½Π°ΠΉΡ‚ΠΈ Pygame?

200 мсСк послС прорисовки Π·ΠΌΠ΅ΠΉΠΊΠΈ, Ρ‚ΠΎ ΠΎΠ½Π° Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎ сходит Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ Ρ†ΠΈΠΊΠ»Π΅, ΠΈΠ½Π°Ρ‡Π΅ происходит ΠΊΠ°ΠΊ написано Π²Ρ‹ΡˆΠ΅.
Как Ρ€Π΅ΡˆΠΈΡ‚ΡŒ Π΄Π°Π½Π½ΡƒΡŽ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ?

Π£ мСня вопрос, ΠΎΡ‚Π²Π΅Ρ‚ΡŒΡ‚Π΅ поТалуйста.

Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΎ Ρ‡Π΅Ρ€Π΅Π· 7 ΠΌΠΈΠ½ΡƒΡ‚
Π² ΠΊΠ°ΠΊΠΎΠΉ ΠΏΠ°ΠΏΠΊΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅*

Для анимирования пСрсонаТСй использовал Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ pyganim.

Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΎ Ρ‡Π΅Ρ€Π΅Π· 33 ΠΌΠΈΠ½ΡƒΡ‚Ρ‹
ΠšΡΡ‚Π°Ρ‚ΠΈ Π²ΠΎΡ‚ ΠΈ сама ΠΈΠ³Ρ€Π°, ΠΌΠΎΠΆΠ΅Ρ‚ ΠΊΠΎΠΌΡƒ-Ρ‚ΠΎ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡ‚ΡŒΡΡ, провСрял Π½Π° Π²ΠΈΠ½Π΄Π΅.
http://www.fayloobmennik.net/5344386

ΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² написании ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Ρ…, курсовых ΠΈ Π΄ΠΈΠΏΠ»ΠΎΠΌΠ½Ρ‹Ρ… Ρ€Π°Π±ΠΎΡ‚ здСсь.

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

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

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

НаписаниС змСйки для Android на Kivy, Python

[UPD ΠΎΡ‚ 2021: этот Ρ‚ΡƒΡ‚ΠΎΡ€ΠΈΠ°Π» создан ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΈΠ·-Π·Π° отсутствия Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½Ρ‹Ρ… Ρ‚ΡƒΡ‚ΠΎΡ€ΠΈΠ°Π»ΠΎΠ² ΠΏΠΎ Ρ‚Π΅ΠΌΠ΅ Π½Π° ΠΌΠΎΠΌΠ΅Π½Ρ‚ написания, Π° Π½Π΅ ΠΈΠ· побуТдСния Π½Π°ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΌΠΈΡ€ программистов Ρ‡Π΅ΠΌΡƒ-Ρ‚ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠΌΡƒ]

Много людСй Ρ…ΠΎΡ‚Π΅Π»ΠΈ Π±Ρ‹ Π½Π°Ρ‡Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄, Π½ΠΎ Android Studio ΠΈ Java ΠΈΡ… ΠΎΡ‚ΠΏΡƒΠ³ΠΈΠ²Π°ΡŽΡ‚. ΠŸΠΎΡ‡Π΅ΠΌΡƒ? ΠŸΠΎΡ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ это Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ смыслС ΠΈΠ· ΠΏΡƒΡˆΠΊΠΈ ΠΏΠΎ Π²ΠΎΡ€ΠΎΠ±ΡŒΡΠΌ. Β«Π― лишь Ρ…ΠΎΡ‡Ρƒ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π·ΠΌΠ΅ΠΉΠΊΡƒ, ΠΈ всС!Β»

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

НачнСм! (бонус Π² ΠΊΠΎΠ½Ρ†Π΅)

Если Π²Ρ‹ β€” питонист, ΠΈ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π½Π°Ρ‡Π°Ρ‚ΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρƒ простых ΠΈΠ³Ρ€ ΠΏΠΎΠ΄ Π°Π½Π΄Ρ€ΠΎΠΈΠ΄, Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ ΡƒΠΆΠ΅ Π·Π°Π³ΡƒΠ³Π»ΠΈΠ»ΠΈ Β«Π·ΠΌΠ΅ΠΉΠΊΠ° Π½Π° Π°Π½Π΄Ρ€ΠΎΠΈΠ΄Π΅Β» ΠΈ нашли это (Eng) ΠΈΠ»ΠΈ Π΅Π΅ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ (Рус). И я Ρ‚ΠΎΠΆΠ΅ Ρ‚Π°ΠΊ сдСлал. К соТалСнию, я нашСл ΡΡ‚Π°Ρ‚ΡŒΡŽ бСсполСзной ΠΏΠΎ нСскольким ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π°ΠΌ:

ΠŸΠ»ΠΎΡ…ΠΎΠΉ ΠΊΠΎΠ΄
Π‘Ρ‚Π°Ρ‚ΡŒΡ Π½Π΅ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½Π° для Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΎΠ²

Π­Ρ‚ΠΎ ΠΌΠΎΠ΅ Π›Π˜Π§ΠΠžΠ• ΠΌΠ½Π΅Π½ΠΈΠ΅. Π‘ΠΎΠ»Π΅Π΅ Ρ‚ΠΎΠ³ΠΎ, я Π½Π΅ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΡŽ, Ρ‡Ρ‚ΠΎ моя ΡΡ‚Π°Ρ‚ΡŒΡ Π±ΡƒΠ΄Π΅Ρ‚ Π±ΠΎΠ»Π΅Π΅ интСрСсной ΠΈ понятной. Но ΠΏΠΎΡΡ‚Π°Ρ€Π°ΡŽΡΡŒ, Π° Π΅Ρ‰Π΅ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΡŽ:

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π½Π΅ ΠΊΠΎΠΌΠΈΠ»ΡŒΡ„ΠΎ

Знакомство

ΠŸΠ΅Ρ€Π²ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅

ΠŸΠΎΠΆΠ°Π»ΡƒΠΉΡΡ‚Π°, ΡƒΠ΄ΠΎΡΡ‚ΠΎΠ²Π΅Ρ€Ρ‚Π΅ΡΡŒ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΡƒΠΆΠ΅ установили Kivy (Ссли Π½Π΅Ρ‚, слСдуйтС инструкциям) ΠΈ запуститС
buildozer init Π² ΠΏΠ°ΠΏΠΊΠ΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°.

Запустим ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ:

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

ΠœΡ‹ создали Π²ΠΈΠ΄ΠΆΠ΅Ρ‚. Аналогично, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΊΡƒ ΠΈΠ»ΠΈ любой Π΄Ρ€ΡƒΠ³ΠΎΠΉ элСмСнт графичСского интСрфСйса:

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

Π£Ρ€Π°! ΠŸΠΎΠ·Π΄Ρ€Π°Π²Π»ΡΡŽ! Π’Ρ‹ создали ΠΊΠ½ΠΎΠΏΠΊΡƒ!

Однако, Π΅ΡΡ‚ΡŒ Π΄Ρ€ΡƒΠ³ΠΎΠΉ способ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Ρ‚Π°ΠΊΠΈΠ΅ элСмСнты. Π‘Π½Π°Ρ‡Π°Π»Π° объявим Π½Π°ΡˆΡƒ Ρ„ΠΎΡ€ΠΌΡƒ:

Π—Π°Ρ‚Π΅ΠΌ создаСм Β«worm.kvΒ» Ρ„Π°ΠΉΠ».

Π§Ρ‚ΠΎ ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ»ΠΎ? ΠœΡ‹ создали Π΅Ρ‰Π΅ ΠΎΠ΄Π½Ρƒ ΠΊΠ½ΠΎΠΏΠΊΡƒ ΠΈ присвоим id but_id. Π’Π΅ΠΏΠ΅Ρ€ΡŒ but_id ассоциировано с but2 Ρ„ΠΎΡ€ΠΌΡ‹. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒΡΡ ΠΊ button с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ but2:

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

Π“Ρ€Π°Ρ„ΠΈΠΊΠ°

Π”Π°Π»Π΅Π΅ создадим графичСский элСмСнт. Π‘Π½Π°Ρ‡Π°Π»Π° объявим Π΅Π³ΠΎ Π² worm.kv:

ΠœΡ‹ связали ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠ° с self.pos ΠΈ Π΅Π³ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€ с self.size. Π’Π°ΠΊ Ρ‡Ρ‚ΠΎ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ эти свойства доступны ΠΈΠ· Cell, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΊΠ°ΠΊ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΌΡ‹ создаСм ΠΊΠ»Π΅Ρ‚ΠΊΡƒ, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΌΠ΅Π½ΡΡ‚ΡŒ Π΅Π΅ Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΈ ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ:

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

ОкСй, ΠΌΡ‹ создали ΠΊΠ»Π΅Ρ‚ΠΊΡƒ.

НСобходимыС ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹

Π”Π°Π²Π°ΠΉΡ‚Π΅ ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ Π΄Π²ΠΈΠ³Π°Ρ‚ΡŒ змСю. Π§Ρ‚ΠΎΠ±Ρ‹ это ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Form.update ΠΈ ΠΏΡ€ΠΈΠ²ΡΠ·Π°Ρ‚ΡŒ ΠΊ Ρ€Π°ΡΠΏΠΈΡΠ°Π½ΠΈΡŽ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Clock.schedule.

ΠšΠ»Π΅Ρ‚ΠΊΠ° Π±ΡƒΠ΄Π΅Ρ‚ Π΄Π²ΠΈΠ³Π°Ρ‚ΡŒΡΡ ΠΏΠΎ Ρ„ΠΎΡ€ΠΌΠ΅. Как Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²ΠΈΠ΄Π΅Ρ‚ΡŒ, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Ρ‚Π°ΠΉΠΌΠ΅Ρ€ Π½Π° Π»ΡŽΠ±ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Clock.

Π”Π°Π»Π΅Π΅, создадим событиС наТатия (touch event). ΠŸΠ΅Ρ€Π΅ΠΏΠΈΡˆΠ΅ΠΌ Form:

ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ touch_down создаСт ΠΊΠ»Π΅Ρ‚ΠΊΡƒ с ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π°ΠΌΠΈ = (touch.x, touch.y) ΠΈ Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ = 30. Π—Π°Ρ‚Π΅ΠΌ, ΠΌΡ‹ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ Π΅Π΅ ΠΊΠ°ΠΊ Π²ΠΈΠ΄ΠΆΠ΅Ρ‚ Ρ„ΠΎΡ€ΠΌΡ‹ И Π² наш собствСнный массив (Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ·Π΄Π½Π΅Π΅ ΠΎΠ±Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ ΠΊ Π½Π΅ΠΌΡƒ).

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ Π½Π° Ρ„ΠΎΡ€ΠΌΡƒ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΊΠ»Π΅Ρ‚ΠΊΡƒ.

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

ΠΡΡˆΠ½Ρ‹Π΅ настройки

Π’Π°ΠΊ ΠΊΠ°ΠΊ ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΊΡ€Π°ΡΠΈΠ²ΡƒΡŽ Π·ΠΌΠ΅ΠΉΠΊΡƒ, ΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ логичСски Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚ΡŒ Π³Ρ€Π°Ρ„ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ ΠΈ Π½Π°ΡΡ‚ΠΎΡΡ‰ΡƒΡŽ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ.

Много ΠΏΡ€ΠΈΡ‡ΠΈΠ½ Π΄Π΅Π»Π°Ρ‚ΡŒ это. Вся Π»ΠΎΠ³ΠΈΠΊΠ° Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ соСдинСна с Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΠΎΠΉ настоящСй ΠΏΠΎΠ·ΠΈΡ†ΠΈΠ΅ΠΉ, Π° Π²ΠΎΡ‚ графичСская β€” Π΅ΡΡ‚ΡŒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ настоящСй. НапримСр, Ссли ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ отступы, настоящая позиция Π±ΡƒΠ΄Π΅Ρ‚ (100, 100) ΠΏΠΎΠΊΠ° графичСская β€” (102, 102).

P. S. ΠœΡ‹ Π±Ρ‹ этим Π½Π΅ ΠΏΠ°Ρ€ΠΈΠ»ΠΈΡΡŒ Ссли Π±Ρ‹ ΠΈΠΌΠ΅Π»ΠΈ Π΄Π΅Π»ΠΎ с on_draw. Но Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΡ‹ Π½Π΅ обязаны ΠΏΠ΅Ρ€Π΅Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΠΎΡ€ΠΌΡƒ Π»Π°ΠΏΠΊΠ°ΠΌΠΈ.

Π”Π°Π²Π°ΠΉΡ‚Π΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠΌ Ρ„Π°ΠΉΠ» worm.kv:

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

Появился отступ, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ это выглядит Π»ΡƒΡ‡ΡˆΠ΅ Π½Π΅ смотря Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ создали Π²Ρ‚ΠΎΡ€ΡƒΡŽ ΠΊΠ»Π΅Ρ‚ΠΊΡƒ с X = 130 вмСсто 132. ПозТС ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ Π΄Π΅Π»Π°Ρ‚ΡŒ мягкоС ΠΏΠ΅Ρ€Π΅Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅, основанноС Π½Π° расстоянии ΠΌΠ΅ΠΆΠ΄Ρƒ actual_pos ΠΈ graphical_pos.

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ чСрвяка

ОбъявлСниС

Π˜Π½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅ΠΌ config Π² main.py

(ΠŸΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅, Π²Ρ‹ это ΠΏΠΎΠ»ΡŽΠ±ΠΈΡ‚Π΅!)

Π—Π°Ρ‚Π΅ΠΌ присвойтС config ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡŽ:

ΠŸΠ΅Ρ€Π΅ΠΏΠΈΡˆΠΈΡ‚Π΅ init ΠΈ start:

НадСюсь, это Π±Ρ‹Π»ΠΎ Π±ΠΎΠ»Π΅Π΅ ΠΌΠ΅Π½Π΅Π΅ понятно.

Π”Π°Π²Π°ΠΉΡ‚Π΅ создадим нашСго чСрвячка.

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

Π”Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΏΠΎΠ΄Π²ΠΈΠ³Π°Π΅ΠΌ ЭВО.

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

Оно ТивоС! Оно ТивоС!

Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅

Как Π²Ρ‹ ΠΌΠΎΠ³Π»ΠΈ ΡΡƒΠ΄ΠΈΡ‚ΡŒ ΠΏΠΎ ΠΏΠ΅Ρ€Π²ΠΎΠΉ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ΅, ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π·ΠΌΠ΅ΠΈ Π±ΡƒΠ΄Π΅Ρ‚ Ρ‚Π°ΠΊΠΈΠΌ:

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

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

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Ρ„Ρ€ΡƒΠΊΡ‚Π°

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

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΎΠ±ΡŠΡΠ²ΠΈΡ‚ΡŒ нСсколько ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² Worm:

ΠšΡΡ‚Π°Ρ‚ΠΈ, послС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΌΡ‹ объявили gather_positions, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΡƒΠ»ΡƒΡ‡ΡˆΠΈΡ‚ΡŒ fruit_dislocate:

На этот ΠΌΠΎΠΌΠ΅Π½Ρ‚Π΅ позиция яблока Π½Π΅ смоТСт ΡΠΎΠ²ΠΏΠ°Π΄Π°Ρ‚ΡŒ с ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ хвоста

… ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ Π² update()

ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ пСрСсСчСния Π³ΠΎΠ»ΠΎΠ²Ρ‹ ΠΈ хвоста

ΠœΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ ΡƒΠ·Π½Π°Ρ‚ΡŒ Ρ‚Π° ΠΆΠ΅ Π»ΠΈ позиция Ρƒ Π³ΠΎΠ»ΠΎΠ²Ρ‹, Ρ‡Ρ‚ΠΎ Ρƒ ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ ΠΊΠ»Π΅Ρ‚ΠΊΠΈ хвоста.

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

Π Π°ΡΠΊΡ€Π°ΡˆΠΈΠ²Π°Π½ΠΈΠ΅, Π΄Π΅ΠΊΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅, Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ ΠΊΠΎΠ΄Π°

НачнСм с Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π°.

ΠŸΠ΅Ρ€Π΅ΠΏΠΈΡˆΠ΅ΠΌ ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Ссли чСрвяк ΠΌΠ΅Ρ€Ρ‚Π² (Π·Π°ΠΌΠΎΡ€ΠΎΠΆΠ΅Π½), Ссли Π²Ρ‹ Π½Π°ΠΆΠΌΠ΅Ρ‚Π΅ Π½Π° экран, ΠΈΠ³Ρ€Π° Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°Ρ‡Π°Ρ‚Π° Π·Π°Π½ΠΎΠ²ΠΎ.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΏΠ΅Ρ€Π΅ΠΉΠ΄ΠΈΠΌ ΠΊ Π΄Π΅ΠΊΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ ΠΈ Ρ€Π°ΡΠΊΡ€Π°ΡˆΠΈΠ²Π°Π½ΠΈΡŽ.

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

Π”ΠΎΠ±Π°Π²ΠΈΠΌ это ΠΊ Cell.__init__:

ΠŸΡ€Π΅Π²ΠΎΡΡ…ΠΎΠ΄Π½ΠΎ, Π½Π°ΡΠ»Π°ΠΆΠ΄Π°ΠΉΡ‚Π΅ΡΡŒ Π·ΠΌΠ΅ΠΉΠΊΠΎΠΉ

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

НаконСц, ΠΌΡ‹ создадим надпись Β«game overΒ»

И Π·Π°Π΄Π°Π΄ΠΈΠΌ Β«Ρ€Π°Π½Π΅Π½ΠΎΠΉΒ» ΠΊΠ»Π΅Ρ‚ΠΊΠ΅ красный Ρ†Π²Π΅Ρ‚:

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

Π’Ρ‹ Π΅Ρ‰Π΅ Ρ‚ΡƒΡ‚? Бамая интСрСсная Ρ‡Π°ΡΡ‚ΡŒ Π²ΠΏΠ΅Ρ€Π΅Π΄ΠΈ!

Бонус β€” ΠΏΠ»Π°Π²Π½ΠΎΠ΅ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅

Π’Π°ΠΊ ΠΊΠ°ΠΊ шаг чСрвячка Ρ€Π°Π²Π΅Π½ cell_size, выглядит Π½Π΅ ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠ»Π°Π²Π½ΠΎ. Но ΠΌΡ‹ Π±Ρ‹ Ρ…ΠΎΡ‚Π΅Π»ΠΈ ΡˆΠ°Π³Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ Ρ‡Π°Ρ‰Π΅ Π±Π΅Π· ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ пСрСписывания Π»ΠΎΠ³ΠΈΠΊΠΈ ΠΈΠ³Ρ€Ρ‹. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Π½Π°ΠΌ Π½ΡƒΠΆΠ΅Π½ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π΄Π²ΠΈΠ³Π°Π» Π±Ρ‹ наши графичСскиС ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ (graphical_pos) Π½ΠΎ Π½Π΅ влиял Π±Ρ‹ Π½Π° настоящиС (actual_pos). Π― написал ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠ΄:

Π’Π°ΠΊ, Π²Ρ‹ лишь создаСтС smooth.py and ΠΈ ΠΊΠΎΠΏΠΈΡ€ΡƒΠ΅Ρ‚Π΅ ΠΊΠΎΠ΄ Π² Ρ„Π°ΠΉΠ».
НаконСц, заставим ЭВО Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ!

Π—Π°ΠΌΠ΅Π½ΠΈΠΌ self.worm.move() с

А это ΠΊΠ°ΠΊ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Cell Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π²Ρ‹Π³Π»ΡΠ΄ΠΈΡ‚ΡŒ

Ну Π²ΠΎΡ‚ ΠΈ всС, спасибо Π·Π° вашС Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅! Код снизу.

ДСмонстрационноС Π²ΠΈΠ΄Π΅ΠΎ ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚:

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

Π˜Π³Ρ€Π° Snake с использованиСм PyGame

Π― написал ΠΏΡ€ΠΎΡΡ‚ΡƒΡŽ ΠΈΠ³Ρ€Ρƒ Π·ΠΌΠ΅ΠΈ Python, которая составляСт ΠΎΠΊΠΎΠ»ΠΎ 250 строк ΠΊΠΎΠ΄Π°. ΠœΠΎΠΆΠ΅Ρ‚ Π»ΠΈ ΠΊΡ‚ΠΎ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ Π΄Π°Ρ‚ΡŒ ΠΌΠ½Π΅ нСсколько совСтов ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ я ΠΌΠΎΠ³Ρƒ Ρ€Π΅ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ /ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π΅Π³ΠΎ Π»ΡƒΡ‡ΡˆΠ΅?

game.py

classes.py

1 ΠΎΡ‚Π²Π΅Ρ‚

1. Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅

Π­Ρ‚ΠΎ Π½Π΅ΠΏΠ»ΠΎΡ…ΠΎ Π² Ρ†Π΅Π»ΠΎΠΌ, учитывая, Ρ‡Ρ‚ΠΎ это ваша пСрвая ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°, написанная с PyGame. Π― ΠΏΡ€ΠΈΠ²Π΅Π» ΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π² Π½ΠΈΠΆΠ΅, Π½ΠΎ Π½Π΅ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°ΡŽ ΠΎΡ‚Π²Π΅Ρ‚Π° Π½Π° этот ΠΎΡ‚Π²Π΅Ρ‚: всСгда Π΅ΡΡ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ Ρ‡Π΅Π³ΠΎ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΎ кускС ΠΊΠΎΠ΄Π° этой Π΄Π»ΠΈΠ½Ρ‹.

2. ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ с Π΄ΠΈΠ·Π°ΠΉΠ½ΠΎΠΌ ΠΈΠ³Ρ€Ρ‹

Π˜Π³Ρ€Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ связана с Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ инструкциями. МнС ΠΏΡ€ΠΈΡˆΠ»ΠΎΡΡŒ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ исходный ΠΊΠΎΠ΄, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΌΠ½Π΅ Π½ΡƒΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ WASD для пСрСмСщСния. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ΡŒ ΠΈΠ³Ρ€ΠΎΠΊΡƒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ клавиши со стрСлками (это СстСствСнныС клавиши, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ³Ρ€ΠΎΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ).

Π’Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ FPS (количСство ΠΊΠ°Π΄Ρ€ΠΎΠ² Π² сСкунду) для управлСния ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒΡŽ Π·ΠΌΠ΅ΠΈ. Π­Ρ‚ΠΎ дизайнСрскоС Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ обязываСт вас ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ всС Π² ΠΈΠ³Ρ€Π΅ Π½Π° Ρ‚ΠΎΠΉ ΠΆΠ΅ частотС, Ρ‡Ρ‚ΠΎ ΠΈ змСя. ΠŸΠΎΠ½ΡΡ‚ΠΈΡ ΠΊΠ°Π΄Ρ€Ρ‹ Π² сСкунду ΠΈ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ Π·ΠΌΠ΅ΠΈ Π² пСрСмСщСниях Π² сСкунду Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹, поэтому ΠΈΡ… ΠΎΡ‚Π»ΠΈΡ‡Π°Π΅Ρ‚ отличная ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ°.

Π’ настоящий ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π² ΠΈΠ³Ρ€Π΅ Π½Π΅Ρ‚ Π½ΠΈΡ‡Π΅Π³ΠΎ, ΠΊΡ€ΠΎΠΌΠ΅ Π·ΠΌΠ΅ΠΈ, поэтому Π²Π°ΠΌ это Π½Π΅ удастся. Но ΠΊΠ°ΠΊ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²Ρ‹ добавляСтС Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΈΠ³Ρ€ΠΎΠ²Ρ‹Π΅ элСмСнты, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½ΡƒΠΆΠ½ΠΎ ΠΎΠΆΠΈΠ²Π»ΡΡ‚ΡŒ с Ρ€Π°Π·Π½ΠΎΠΉ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒΡŽ, Π²Ρ‹ ΡΡ‚ΠΎΠ»ΠΊΠ½Π΅Ρ‚Π΅ΡΡŒ с этой Ρ‚Ρ€ΡƒΠ΄Π½ΠΎΡΡ‚ΡŒΡŽ. Π›ΡƒΡ‡ΡˆΠ΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ это ΠΏΡ€Π°Π²ΠΎ, ΠΏΠΎΠΊΠ° всС Π΅Ρ‰Π΅ просто.

Π‘ΠΌ. Ρ€Π°Π·Π΄Π΅Π» 5 для ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ· способов Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ этой ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹.

НовыС кусочки ΠΏΠΈΡ‰ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ созданы Π² полоТСниях, занятых Π·ΠΌΠ΅Π΅ΠΉ!

ΠŸΠΈΡ‰Π΅Π²Π°Ρ позиция Π½Π΅ сбрасываСтся ΠΏΡ€ΠΈ запускС Π½ΠΎΠ²ΠΎΠΉ ΠΈΠ³Ρ€Ρ‹. (Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ Ρ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ змСя Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅ΠΊΡ€Ρ‹Π²Π°Ρ‚ΡŒ ΠΏΠΈΡ‰Ρƒ Π² Π½Π°Ρ‡Π°Π»Π΅ ΠΈΠ³Ρ€Ρ‹.)

ΠžΡ†Π΅Π½ΠΊΠ° Π½Π΅ набираСтся Π²ΠΎ врСмя ΠΈΠ³Ρ€Ρ‹.

3. ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ

docstring для collidesWithSelf читаСтся ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

Π­Ρ‚ΠΎ нСдопустимый ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚ для docstring. ЦСлью docstring являСтся объяснСниС интСрфСйса ΠΌΠ΅Ρ‚ΠΎΠ΄Π° программисту, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ пытаСтся Π΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ. Но здСсь Ρƒ вас Π΅ΡΡ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π·Π°ΠΌΠ΅Ρ‚ΠΊΠΈ ΠΎ истории этой Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈ ΠΎ Ρ‚ΠΎΠΌ, ΠΏΠΎΡ‡Π΅ΠΌΡƒ ΠΎΠ½Π° Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° Ρ‚Π°ΠΊ, ΠΊΠ°ΠΊ Π΅ΡΡ‚ΡŒ. Π­Ρ‚ΠΈ примСчания Π΄ΠΎΠ»ΠΆΠ½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°Ρ‚ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΡŽ.

ΠŸΡ€ΠΈΡ‡ΠΈΠ½Π°, ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Ρƒ вас Π²ΠΎΠ·Π½ΠΈΠΊΠ»ΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ с этой Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ, Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ рост Π·ΠΌΠ΅ΠΈ Π½Π΅ ΠΏΡ€Π°Π². Π’ ΠΌΠ΅Ρ‚ΠΎΠ΄Π΅ grow() Π²Ρ‹ создаСтС Π½ΠΎΠ²Ρ‹ΠΉ сСгмСнт хвоста Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²ΠΎΠΏΠΎΠ»ΠΎΠΆΠ½ΠΎΠΌ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠΈ ΠΊ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΌΡƒ двиТСнию Π·ΠΌΠ΅ΠΈ. Но это ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ ΡΠ°ΠΌΠΎΠΏΠ΅Ρ€Π΅ΡΠ΅Ρ‡Π΅Π½ΠΈΡŽ Π·ΠΌΠ΅ΠΈ.

ΠžΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ способ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Β«Π·ΠΌΠ΅ΠΈΠ½Ρ‹Π΅Β» ΠΈΠ³Ρ€Ρ‹, состоит Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ, ΠΊΠΎΠ³Π΄Π° змСя Сст ΠΊΠ°ΠΊΡƒΡŽ-Ρ‚ΠΎ ΠΏΠΈΡ‰Ρƒ, ΠΎΠ½Π° Π½Π΅ сразу Π²Ρ‹Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ Π½ΠΎΠ²Ρ‹ΠΉ хвостовой сСгмСнт. ВмСсто этого ΠΎΠ½ ΠΆΠ΄Π΅Ρ‚, ΠΏΠΎΠΊΠ° Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Ρ€Π°Π· ΠΎΠ½ Π½Π΅ пСрСмСстится ΠΈ Π½Π΅ вырастСт Π½ΠΎΠ²Ρ‹ΠΉ сСгмСнт хвоста Π² Ρ‚ΠΎΠΌ мСстС, Π³Π΄Π΅ Ρ€Π°Π½ΡŒΡˆΠ΅ Π±Ρ‹Π» Π΅Π³ΠΎ старый хвост. Π­Ρ‚ΠΎ Π»Π΅Π³ΠΊΠΎ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ, увСличивая счСтчик ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π·, ΠΊΠΎΠ³Π΄Π° змСя Сст ΠΏΠΈΡ‰Ρƒ:

, Π° Π·Π°Ρ‚Π΅ΠΌ ΡƒΠΌΠ΅Π½ΡŒΡˆΠ°Ρ счСтчик вмСсто удалСния сСгмСнта хвоста:

Π­Ρ‚ΠΎ позволяСт ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ самопСрСсСчСния, ΠΈ это ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ Π²Π°ΠΌ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ столкновСния с использованиСм вашСго ΠΏΠ΅Ρ€Π²ΠΎΠ½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π°. Но Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Ρ€Π°ΡΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ этот Π±ΠΎΠ»Π΅Π΅ простой ΠΏΠΎΠ΄Ρ…ΠΎΠ΄:

(Но см. 3.4 Π½ΠΈΠΆΠ΅ для Π»ΡƒΡ‡ΡˆΠ΅Π³ΠΎ прСдлоТСния.)

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡΡ‚, Ρ‡ΠΈΡ‚Π°ΡŽΡ‰ΠΈΠΉ это, Ρ…ΠΎΡ‚Π΅Π» Π±Ρ‹ Π·Π½Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ‚, Ссли self.direction Π½Π΅ находится Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅ ΠΎΡ‚ 1 Π΄ΠΎ 4. ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, Π²Ρ‹ Π½Π°Π΄Π΅Π΅Ρ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π»ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ это Π½Π΅ ΠΌΠΎΠ³Π»ΠΎ Π±Ρ‹Π²Π°Π΅Ρ‚. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ это ΠΊΡ€ΠΈΡΡ‚Π°Π»ΡŒΠ½ΠΎ понятным, пСрСписав этот ΠΊΠΎΠ΄ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

(Но см. 3.4 Π½ΠΈΠΆΠ΅ для Π»ΡƒΡ‡ΡˆΠ΅Π³ΠΎ прСдлоТСния.)

Ρƒ вас ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ‚Π°Π±Π»ΠΈΡ†Π° поиска, которая ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅Ρ‚ ΠΊΠ»ΡŽΡ‡ Π² Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠΈ:

, Π° Π·Π°Ρ‚Π΅ΠΌ тСст Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

Π’Ρ‹ провСряСтС Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ столкновСния с краями ΠΈΠ³Ρ€ΠΎΠ²ΠΎΠ³ΠΎ поля ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

, Π° Π·Π°Ρ‚Π΅ΠΌ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ Π½Π° столкновСниС ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΠΏΡ€ΠΎΡΡ‚ΠΈΡ‚ΡŒ этот ΠΊΠΎΠ΄, сдСлав класс для прСдставлСния ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΉ ΠΈΠ²Π΅ΠΊΡ‚ΠΎΡ€Ρ‹. К соТалСнию, PyGame Π½Π΅ поставляСтся с Ρ‚Π°ΠΊΠΈΠΌ классом, Π½ΠΎ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π»Π΅Π³ΠΊΠΎ Π½Π°ΠΉΡ‚ΠΈ мноТСство Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΉ Π² Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π΅ ΠΈΠ»ΠΈ просто Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ сами:

Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ:

4. ΠΠ΅Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ

Руководство ΠΏΠΎ ΡΡ‚ΠΈΠ»ΡŽ Python ( PEP8 ) Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚, Ρ‡Ρ‚ΠΎ ΠΈΠΌΠ΅Π½Π° ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Β«Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€Π°Π²ΠΈΠ»Π° имСнования Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ: строчныС Π±ΡƒΠΊΠ²Ρ‹ со словами, Π²Ρ‹Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌΠΈ символами подчСркивания, для ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΡ удобочитаСмости Β». ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π²Π°ΠΌ слСдуСт Ρ€Π°ΡΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ пСрСимСнования collidesWithSelf Π² качСствС collides_with_self ΠΈ Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅. (Π’Ρ‹ Π½Π΅ обязаны ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ PEP8, Π½ΠΎ это ΠΎΠ±Π»Π΅Π³Ρ‡Π°Π΅Ρ‚ для Π΄Ρ€ΡƒΠ³ΠΈΡ… программистов Python Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ вашСго ΠΊΠΎΠ΄Π°.)

Π’Π°ΠΌ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ sys.exit() Π² ΠΊΠΎΠ½Ρ†Π΅ main : Python автоматичСски Π·Π°Π²Π΅Ρ€ΡˆΠ°Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΏΡ€ΠΈ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠΈ Ρ€Π°Π±ΠΎΡ‚Ρ‹ вашСй ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ этой строки просто затрудняСт тСстированиС вашСй ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠ³ΠΎ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€Π°, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ Π²Ρ‹Ρ…ΠΎΠ΄ΠΈΡ‚Π΅ ΠΈΠ· ΠΈΠ³Ρ€Ρ‹, ΠΎΠ½Π° Ρ‚Π°ΠΊΠΆΠ΅ Π²Ρ‹Ρ…ΠΎΠ΄ΠΈΡ‚ ΠΈΠ· ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠ³ΠΎ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€Π°.

Π’ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ… мСстах Π²ΠΎ всСх мСстах Π΅ΡΡ‚ΡŒ лишниС скобки. Π‘Ρ‚Ρ€ΠΎΠΊΠ° Π²Ρ€ΠΎΠ΄Π΅:

, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ запятая связываСтся Π±ΠΎΠ»Π΅Π΅ высоко, Ρ‡Π΅ΠΌ Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π² Python. » ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°, ΠΊΠ°ΠΊ Π±ΡƒΠ΄Ρ‚ΠΎ Π²Ρ‹ Π·Π½Π°Π΅Ρ‚Π΅ язык «!

DIRECTON_DOWN ΠΈΠΌΠ΅Π΅Ρ‚ ΠΎΡ€Ρ„ΠΎΠ³Ρ€Π°Ρ„ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ ΠΎΡˆΠΈΠ±ΠΊΡƒ. (Π­Ρ‚ΠΎ ΠΏΠΎΡ‡Π΅ΠΌΡƒ Π²Ρ‹ Π΅Π³ΠΎ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅?)

Π’Ρ‹ прСдставляСтС змСю, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΉ, Ρ‡Ρ‚ΠΎ являСтся Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΌ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΎΠΌ. Однако Π²Ρ‹ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚Π΅ свою ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ список Python. ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ списки Python эффСктивны ΠΏΡ€ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠΈ элСмСнтов Π² ΠΊΠΎΠ½Ρ†Π΅, Π½ΠΎ Π½Π΅ Π² Π½Π°Ρ‡Π°Π»Π΅. Π’ частности, опСрация

Π’Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ индСксы списка ΠΎΠ±Ρ€Π°Ρ‰Π°ΡŽΡ‚ΡΡ Π½Π°Π·Π°Π΄ ΠΎΡ‚ ΠΊΠΎΠ½Ρ†Π° списка.

ВмСсто Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΈ ΠΏΡ€ΠΈΠ½ΡƒΠΆΠ΄Π΅Π½ΠΈΠ΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° ΠΊ Ρ†Π΅Π»ΠΎΠΌΡƒ числу:

5.ΠŸΠ΅Ρ€Π΅ΡΠΌΠΎΡ‚Ρ€Π΅Π½Π½Ρ‹ΠΉ ΠΊΠΎΠ΄

Π­Ρ‚ΠΎΡ‚ ΠΊΠΎΠ΄ описываСт ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹Π΅ Π²Ρ‹ΡˆΠ΅ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ ΠΈ содСрТит Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΡ для вас.

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

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

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