ΠΠΎΠ΄ΡΠ»ΠΈ ΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ
ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Π²ΠΊΠ»ΡΡΠ°Π΅Ρ Π² ΡΠ΅Π±Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ:
- — ΠΠ°Π±ΠΎΡ ΠΊΠ½ΠΎΠΏΠΎΠΊ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ;
- — ΠΠ³ΡΠΎΠ²ΠΎΠ΅ ΠΏΠΎΠ»Π΅.
ΠΠΎΠ΄ΡΠ»Ρ
ΠΡΠΎΠ΅ΠΊΡ ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· 3 ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ:
- 1) core. pas: ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΠΌΠΎΠ΄ΡΠ»Ρ ΠΈΠ³ΡΡ, ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ ΡΠΎΡΠΌΡ ΠΈ ΠΏΡΠΎΡΠ΅Π΄ΡΡΡ;
- 2) Snake. pas: ΡΠ΅Π½ΡΡΠ°Π»ΡΠ½ΡΠΉ ΡΠ²ΡΠ·ΡΡΡΠΈΠΉ ΠΌΠΎΠ΄ΡΠ»Ρ;
- 3) Help. pas: ΠΌΠΎΠ΄ΡΠ»Ρ Ρ ΠΎΠΊΠ½ΠΎΠΌ ΡΠΏΡΠ°Π²ΠΊΠΈ;
Π’Π°ΠΊ ΠΆΠ΅ Π² ΠΏΡΠΎΠ΅ΠΊΡΠ΅ ΠΈΠΌΠ΅Π΅ΡΡΡ ΡΠ°ΠΉΠ» ΡΠ΅ΡΡΡΡΠΎΠ² (snake.res), Π² Π½Π΅ΠΌ Ρ
ΡΠ°Π½ΡΡΡΡ Π±ΠΈΡΠΎΠ²ΡΠ΅ ΠΎΠ±ΡΠ°Π·Ρ (bmp), Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΡΠ΅ Π΄Π»Ρ Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ.
ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΉ ΠΌΠΎΠ΄ΡΠ»Ρ
Π Π΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΡ Π·ΠΌΠ΅ΠΉΠΊΠΈ.
ΠΠ»Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΡΠΈΠ½ΡΠΈΠΏΠ° Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΡ Π½Π°ΠΌ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ Π½Π°ΠΏΠΈΡΠ°ΡΡ Π΄Π²Π΅ ΠΏΡΠΎΡΠ΅Π΄ΡΡΡ: ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° ΠΈΠ· Ρ
Π²ΠΎΡΡΠ° ΡΠΏΠΈΡΠΊΠ° (DelFromTail) ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° Π² Π³ΠΎΠ»ΠΎΠ²Ρ ΡΠΏΠΈΡΠΊΠ° (InsertToHead). ΠΠ»Ρ ΡΠΎΠ³ΠΎ ΡΡΠΎΠ±Ρ ΡΡΠΈΡΠ°ΡΡ Π·Π²Π΅Π½ΠΎ Π·ΠΌΠ΅ΠΉΠΊΠΈ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ ΠΏΡΠΎΡΠ΅Π΄ΡΡΠΎΠΉ DrawSegment, Π½ΠΎ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΠ²Π΅ΡΠ° ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π·Π²Π΅Π½Π° Π·Π°Π΄Π°Π΄ΠΈΠΌ ΡΠ²Π΅Ρ ΡΠΎΠ½Π° ΠΊΠ°Π½Π²Ρ, ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ.
ΠΠ»Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΡΠ²Π΅ΡΠ° ΡΠΎΡΠΊΠΈ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ²ΠΎΠΉΡΡΠ²ΠΎ ΠΊΠ°Π½Π²Ρ — Pixels[x, y], ΠΊΠΎΡΠΎΡΠΎΠ΅ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΈ Π·Π°Π΄Π°Π΅Ρ ΡΠ²Π΅Ρ ΡΠΎΡΠΊΠΈ ΠΊΠ°Π½Π²Ρ Ρ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΠ°ΠΌΠΈ (x, y).
ΠΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ TTimer ΠΏΠΎΠ΄ ΠΈΠΌΠ΅Π½Π΅ΠΌ ShakeTimer — ΡΡΠΎΡ ΡΠ°ΠΉΠΌΠ΅Ρ ΠΏΠΎ ΠΈΡΡΠ΅ΡΠ΅Π½ΠΈΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π±ΡΠ΄Π΅Ρ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠΎΠ²ΡΠ²Π°ΡΡ Π·ΠΌΠ΅ΠΉΠΊΡ ΠΈ Π·Π°ΡΡΠ°Π²Π»ΡΡΡ Π΅Ρ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ Π΄Π²ΠΈΠ³Π°ΡΡΡΡ Π² ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌ Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠΈ, Π·Π°Π΄Π°Π½Π½ΡΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ. ΠΠ»Ρ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠΎΠ²ΠΊΠΈ Π·ΠΌΠ΅ΠΉΠΊΠΈ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ΅ Π²ΡΠ΅ΠΌΡ ΠΈ ΠΈΠ½ΠΎΠ³Π΄Π° ΡΡΠΎ Π²ΡΠ΅ΠΌΡ ΠΏΡΠ΅Π²ΡΡΠ°Π΅Ρ ΠΈΠ½ΡΠ΅ΡΠ²Π°Π» Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΡΠ°ΠΉΠΌΠ΅ΡΠ° (Π²ΡΠ΅ Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΡΠΊΠΎΡΠΎΡΡΠΈ ΡΠ°Π±ΠΎΡΡ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ°). Π‘ ΡΡΠΎΠΉ ΡΠ΅Π»ΡΡ ΠΌΡ Π²Π²ΠΎΠ΄ΠΈΠΌ Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΡΡ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ BreakToReadKey, ΠΏΡΠΈ ΠΊΠΎΡΠΎΡΠΎΠΉ Π΅ΡΠ»ΠΈ ΠΎΠ½Π° ΠΈΡΡΠΈΠ½Π½Π°, ΡΠΎ Π·ΠΌΠ΅ΠΉΠΊΠ° ΠΏΠ΅ΡΠ΅ΡΠΈΡΠΎΠ²ΡΠ²Π°Π΅ΡΡΡ. ΠΠ΅ΡΠ΅ΡΠΈΡΠΎΠ²ΠΊΡ ΠΏΠΈΡΠΎΠ½Π° ΡΠ°ΠΊΠΆΠ΅ Π²ΡΠ΄Π΅Π»ΠΈΠΌ Π² ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ ΠΏΡΠΎΡΠ΅Π΄ΡΡΡ. ΠΡΠΈ ΡΡΠΎΠΌ Π½Π° Ρ
Π°ΡΠ°ΠΊΡΠ΅Ρ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠΎΠ²ΠΊΠΈ ΠΏΠΈΡΠΎΠ½Π° Π±ΡΠ΄Π΅Ρ Π²Π»ΠΈΡΡΡ ΡΠ°ΠΊΠΆΠ΅ Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π΅Π³ΠΎ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΡ, Ρ. Π΅. ΠΊΠΎΠ΄ ΠΊΠ»Π°Π²ΠΈΡΠΈ ΠΊΡΡΡΠΎΡΠ°, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π°ΠΆΠ°Π» ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ. Π ΡΠ²ΡΠ·ΠΈ Ρ ΡΡΠΈΠΌ Π½Π°Π·ΠΎΠ²Π΅ΠΌ Π½Π°ΡΡ ΠΏΡΠΎΡΠ΅Π΄ΡΡΡ ReadShakeKey, ΠΎΠ½Π° ΠΈΠΌΠ΅Π΅Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ Image: TImage, Π³Π΄Π΅ ΡΠΈΡΠΎΠ²Π°ΡΡ Π·ΠΌΠ΅ΠΉΠΊΡ, ΡΠ°ΠΊΠΆΠ΅ Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΠΎΠΉ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ WhatKeyPressed, Ρ
ΡΠ°Π½ΡΡΠ΅ΠΉ ΠΊΠΎΠ΄ Π½Π°ΠΆΠ°ΡΠΎΠΉ ΠΊΠ»Π°Π²ΠΈΡΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ Π½Π° ΡΠΎΡΠΌΠ΅ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΡ Π·ΠΌΠ΅ΠΉΠΊΠΈ.