Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ скрипты Π² ΠΈΠ³Ρ€Π°Ρ…

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ скрипты Π² ΠΈΠ³Ρ€Π°Ρ…

ΠŸΡ€ΠΈ создании ΠΈΠ³Ρ€Ρ‹ скрипты ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠΌ Ρ‚Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ кинорСТиссСр ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ сцСнарий β€” для контроля ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ аспСкта вашСго «произвСдСния». Π˜Π³Ρ€ΠΎΠ²Ρ‹Π΅ скрипты ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΌΡƒ ΠΊΠΎΠ΄Ρƒ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Ρ‹ ΠΏΠΈΡˆΠ΅Ρ‚Π΅, ΠΊΠΎΠ³Π΄Π° создаСтС ΠΈΠ³Ρ€Ρƒ, Π·Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ скрипты ΡΠ²Π»ΡΡŽΡ‚ΡΡ внСшними ΠΏΠΎ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡŽ ΠΊ ΠΈΠ³Ρ€ΠΎΠ²ΠΎΠΌΡƒ Π΄Π²ΠΈΠΆΠΊΡƒ. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΠ½ΠΈ внСшниС, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ быстро ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ скрипт Π½Π΅ компилируя Π·Π°Π½ΠΎΠ²ΠΎ вСсь ΠΈΠ³Ρ€ΠΎΠ²ΠΎΠΉ Π΄Π²ΠΈΠΆΠΎΠΊ. Π’ΠΎΠΎΠ±Ρ€Π°Π·ΠΈΡ‚Π΅ сСбС ΠΏΡ€ΠΎΠ΅ΠΊΡ‚, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ большС ΠΌΠΈΠ»Π»ΠΈΠΎΠ½Π° строк ΠΊΠΎΠ΄Π°, ΠΈ Π²Π°ΠΌ Π½Π°Π΄ΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ вСсь этот ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π·Π°Π½ΠΎΠ²ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΎΠ΄Π½Ρƒ строку Π² Π΄ΠΈΠ°Π»ΠΎΠ³Π΅!

Π‘ΠΎ скриптами совсСм Π½Π΅ Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ, ΠΈ ΠΏΠΎΡ‡Ρ‚ΠΈ каТдая Ρ‡Π°ΡΡ‚ΡŒ вашСй ΠΈΠ³Ρ€Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠ·Π²Π»Π΅Ρ‡ΡŒ ΠΏΠΎΠ»ΡŒΠ·Ρƒ ΠΎΡ‚ использования скриптов. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ скрипты ΠΏΡ€ΠΈ Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΈ ΠΏΠΎ мСню, для управлСния сраТСниями, для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с имущСством ΠΈΠ³Ρ€ΠΎΠΊΠ° ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ³ΠΎ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ. ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²ΡŒΡ‚Π΅ сСбС, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΈΠ³Ρ€Ρ‹ Π²Π°ΠΌ Π·Π°Ρ…ΠΎΡ‚Π΅Π»ΠΎΡΡŒ, ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ Π²ΠΎ врСмя Π±ΠΈΡ‚Π²Ρ‹ ΠΈΠ³Ρ€ΠΎΠΊΡƒ список магичСских Π·Π°ΠΊΠ»ΠΈΠ½Π°Π½ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ½ рСгулярно ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ для Π°Ρ‚Π°ΠΊ. Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΡŒΡ‚Π΅, Ρ‡Ρ‚ΠΎ Π² Ρ…ΠΎΠ΄Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π²Ρ‹ Ρ€Π΅ΡˆΠΈΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ· этих Π·Π°ΠΊΠ»ΠΈΠ½Π°Π½ΠΈΠΉ. Если информация ΠΎ заклинаниях ТСстко Π·Π°ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½Π°, Π²Ρ‹ ΡΡ‚ΠΎΠ»ΠΊΠ½Π΅Ρ‚Π΅ΡΡŒ с ΡΠ΅Ρ€ΡŒΠ΅Π·Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΎΠΉ; Π²Π°ΠΌ придСтся ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ экзСмпляр ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ управляСт заклинаниями, Π½Π΅ говоря ΡƒΠΆΠ΅ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π½ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ придСтся Ρ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ ΠΎΡ‚Π»Π°ΠΆΠΈΠ²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π΄ΠΎΠ±ΠΈΡ‚ΡŒΡΡ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹. Π—Π°Ρ‡Π΅ΠΌ Ρ‚Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Ρ‚Π°ΠΊ ΠΌΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π½Π° ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Π΅ измСнСния?

ВмСсто этого Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ для магичСских Π·Π°ΠΊΠ»ΠΈΠ½Π°Π½ΠΈΠΉ ΠΈ ΠΈΡ… дСйствий Π½Π° пСрсонаТСй ΠΈΠ³Ρ€Ρ‹ Π² Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Π½Π΅Π±ΠΎΠ»ΡŒΡˆΠΈΡ… скриптах. Всякий Ρ€Π°Π·, ΠΊΠΎΠ³Π΄Π° начинаСтся сраТСниС, Π·Π°Π³Ρ€ΡƒΠΆΠ°ΡŽΡ‚ΡΡ эти скрипты ΠΈ отобраТаСтся панСмль Π²Ρ‹Π±ΠΎΡ€Π° магичСских Π·Π°ΠΊΠ»ΠΈΠ½Π°Π½ΠΈΠΉ. Когда выбираСтся Π·Π°ΠΊΠ»ΠΈΠ½Π°Π½ΠΈΠ΅, скрипт ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ всС эффСкты β€” ΠΎΡ‚ наносимых ΠΏΠΎΠ²Ρ€Π΅ΠΆΠ΄Π΅Π½ΠΈΠΉ Π΄ΠΎ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠΉ ΠΈ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ графичСских эффСктов заклинания.

Для этой ΠΊΠ½ΠΈΠ³ΠΈ я колСбался ΠΌΠ΅ΠΆΠ΄Ρƒ двумя Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ Ρ‚ΠΈΠΏΠ°ΠΌΠΈ скриптовых систСм. ΠŸΠ΅Ρ€Π²Π°Ρ ΠΈΠ· Π½ΠΈΡ… ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ‚ использованиС языка, ΠΏΠΎΡ…ΠΎΠΆΠ΅Π³ΠΎ Π½Π° Π‘++. Π’ Ρ„Π°ΠΉΠ»Π΅ скрипта Π²Ρ‹ ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π΅Ρ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹, ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΠ΅Ρ‚Π΅ Π΅Π³ΠΎ ΠΈ исполняСтС скомпилированный скрипт ΠΈΠ· вашСй ΠΈΠ³Ρ€Ρ‹. Вторая систСма скриптов являСтся Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡƒΠΏΡ€ΠΎΡ‰Π΅Π½Π½Ρ‹ΠΌ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠΌ ΠΏΠ΅Ρ€Π²ΠΎΠΉ. ВмСсто Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ΡŒ Π²Π°ΠΌ ΠΏΠ΅Ρ‡Π°Ρ‚Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Π² Ρ„Π°ΠΉΠ»Π΅, эта систСма обСспСчиваСт созданиС скриптов ΠΏΡƒΡ‚Π΅ΠΌ Π²Ρ‹Π±ΠΎΡ€Π° ΠΊΠΎΠΌΠ°Π½Π΄ ΠΈΠ· ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ Π½Π°Π±ΠΎΡ€Π°.

ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΌΠΎΠ΅ΠΉ Ρ†Π΅Π»ΡŒΡŽ Π±Ρ‹Π»ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ быстрСС ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π²Π°ΠΌ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠΉ скриптовый Π΄Π²ΠΈΠΆΠΎΠΊ, я Π²Ρ‹Π±Ρ€Π°Π» использованиС Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ° скриптовой систСмы. Π­Ρ‚Π° систСма, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ я Π½Π°Π·Π²Π°Π» Mad Lib Scripting, Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Π½Π°Π±ΠΎΡ€ ΠΏΡ€Π΅Π΄ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… ΠΊΠΎΠΌΠ°Π½Π΄, Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹Ρ… дСйствия (actions), с ΠΊΠ°ΠΆΠ΄Ρ‹ΠΌ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… связана игровая функция. Π’ΠΎΠ·ΡŒΠΌΠ΅ΠΌ, для ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°, дСйствия ΠΈΠ· Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ 10.1 β€” Ρƒ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ дСйствия Π΅ΡΡ‚ΡŒ конкрСтная выполняСмая функция.

Π’Π°Π±Π»ΠΈΡ†Π° 10.1. ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΊΠΎΠΌΠ°Π½Π΄ дСйствий

ДСйствиСЀункция
PrintΠŸΠ΅Ρ‡Π°Ρ‚Π°Π΅Ρ‚ строку тСкста Π½Π° экранС.
EndΠ—Π°Π²Π΅Ρ€ΡˆΠ°Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ скрипта.
Move CharacterΠŸΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Π΅Ρ‚ ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΉ пСрсонаТ Π² Π·Π°Π΄Π°Π½Π½ΠΎΠΌ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠΈ.
Play SoundВоспроизводит ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΉ Π·Π²ΡƒΠΊΠΎΠ²ΠΎΠΉ эффСкт.

Π‘ Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½Ρ‹ΠΌ Π½Π°Π±ΠΎΡ€ΠΎΠΌ дСйствий Π²Π°ΠΌ Π½Π΅ Π½ΡƒΠΆΠ½Π° ΠΌΠΎΡ‰ΡŒ слоТных ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Ρ… скриптовых языков; вмСсто этого Π²Π°ΠΌ Π½ΡƒΠΆΠ½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΡΠΏΡ€ΠΎΡΠΈΡ‚ΡŒ ΡΠΊΡ€ΠΈΠΏΡ‚ΠΎΠ²ΡƒΡŽ систСму, ΠΊΠ°ΠΊΠΎΠ΅ дСйствиС выполняСтся, ΠΈ ΠΊΠ°ΠΊΠΈΠ΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ дСйствия Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΈΠ³Ρ€ΠΎΠ²ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. Π‘Π°ΠΌΠΎΠ΅ Π·Π°ΠΌΠ΅Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ Π² этом ΠΌΠ΅Ρ‚ΠΎΠ΄Π΅ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ вмСсто написания строк ΠΊΠΎΠ΄Π°, ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‰ΠΈΡ… простоС дСйствиС, Π²Ρ‹ ΡΡΡ‹Π»Π°Π΅Ρ‚Π΅ΡΡŒ Π½Π° дСйствия ΠΈ ΠΈΡ… ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ чисСл.

Для ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° скаТСм, Ρ‡Ρ‚ΠΎ Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡŽ Play Sound соотвСтствуСт Π½ΠΎΠΌΠ΅Ρ€ 4, ΠΈ дСйствиС Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ СдинствСнного ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° β€” Π½ΠΎΠΌΠ΅Ρ€Π° воспроизводимого Π·Π²ΡƒΠΊΠ°. Π’ скриптС Π²Π°ΠΌ потрСбуСтся ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π΄Π²Π° числа: ΠΎΠ΄Π½ΠΎ для дСйствия, ΠΈ ΠΎΠ΄Π½ΠΎ, ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰Π΅Π΅ Π·Π²ΡƒΠΊ. ИспользованиС чисСл для прСдставлСния дСйствий (вмСсто тСкста) Π΄Π΅Π»Π°Π΅Ρ‚ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ скриптов Ρ‚Π°ΠΊΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ° быстрой ΠΈ простой.

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

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ скрипты ΠΈ с Ρ‡Π΅ΠΌ ΠΈΡ… Сдят β€” Lua & C++

Π”ΠΎΠ±Ρ€Ρ‹ΠΉ дСнь, Π₯Π°Π±Ρ€Π°Ρ…Π°Π±Ρ€!
РСшил Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ этот Ρ‚ΠΎΠΏΠΈΠΊ Π½Π° Ρ‚Π΅ΠΌΡƒ скриптов

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ скрипты Π² ΠΈΠ³Ρ€Π°Ρ…. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ скрипты Π² ΠΈΠ³Ρ€Π°Ρ…. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ скрипты Π² ΠΈΠ³Ρ€Π°Ρ…. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ скрипты Π² ΠΈΠ³Ρ€Π°Ρ…. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ скрипты Π² ΠΈΠ³Ρ€Π°Ρ…

Π§Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ Π·Π½Π°Ρ‚ΡŒ?

Но Π΅ΡΡ‚ΡŒ способ, Π½Π° Π³ΠΎΠ»ΠΎΠ²Ρƒ Π²Ρ‹ΡˆΠ΅ β€” использованиС скриптов.

РСшСниС ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹

«ОкСй, для Ρ‚Π°ΠΊΠΈΡ… Π΄Π΅Π» Ρ…Π²Π°Ρ‚Π°Π΅Ρ‚ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π° с описаниСм характСристиков ΠΈΠ³Ρ€ΠΎΠΊΠ°. Но Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ, Ссли Π² Π±ΡƒΡ€Π½ΠΎ Ρ€Π°Π·Π²ΠΈΠ²Π°ΡŽΡ‰Π΅ΠΌΡΡ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅ ΠΏΠΎΡ‡Ρ‚ΠΈ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ дСнь приходится Π½Π΅ΠΌΠ½ΠΎΠΆΠΊΠΎ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ Π»ΠΎΠ³ΠΈΠΊΡƒ Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ ΠΈΠ³Ρ€ΠΎΠΊΠ°, ΠΈ, ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, ΠΌΠ½ΠΎΠ³ΠΎ Ρ€Π°Π· ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚?Β»
Π₯ΠΎΡ€ΠΎΡˆΠΈΠΉ вопрос. Π’ этом случаС Π½Π°ΠΌ Π½Π° ΠΏΠΎΠΌΠΎΡ‰ΡŒ приходят скрипты, Π΄Π΅Ρ€ΠΆΠ°Ρ‰ΠΈΠ΅ ΠΈΠΌΠ΅Π½Π½ΠΎ Π»ΠΎΠ³ΠΈΠΊΡƒ ΠΈΠ³Ρ€ΠΎΠΊΠ° со всСми характСристиками Π»ΠΈΠ±ΠΎ ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ Π΄Ρ€ΡƒΠ³ΠΎΠΉ части ΠΈΠ³Ρ€Ρ‹.
ЕстСствСнно, ΡƒΠ΄ΠΎΠ±Π½Π΅Π΅ всСго Π΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ, Π»ΠΎΠ³ΠΈΠΊΡƒ ΠΈΠ³Ρ€ΠΎΠΊΠ° Π² Π²ΠΈΠ΄Π΅ ΠΊΠΎΠ΄Π° ΠΊΠ°ΠΊΠΎΠ³ΠΎ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ языка программирования.
ΠŸΠ΅Ρ€Π²Π°Ρ ΠΌΡ‹ΡΠ»ΡŒ β€” Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ свой ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€ своСго скриптового языка, выкидываСтся ΠΈΠ· ΠΌΠΎΠ·Π³Π° Ρ‡Π΅Ρ€Π΅Π· нСсколько сСкунд. Π›ΠΎΠ³ΠΈΠΊΠ° ΠΈΠ³Ρ€ΠΎΠΊΠ° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎ Π½Π΅ стоит Ρ‚Π°ΠΊΠΈΡ… ΠΆΡƒΡ‚ΠΊΠΈΡ… Π·Π°Ρ‚Ρ€Π°Ρ‚.
К ΡΡ‡Π°ΡΡ‚ΡŒΡŽ, Π΅ΡΡ‚ΡŒ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ скриптовых языков для Π‘++, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°ΡŽΡ‚ Π½Π° Π²Ρ…ΠΎΠ΄ тСкстовый Ρ„Π°ΠΉΠ» ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ Π΅Π³ΠΎ.

Об ΠΎΠ΄Π½ΠΎΠΌ Ρ‚Π°ΠΊΠΎΠΌ скриптовом языкС Lua ΠΏΠΎΠΉΠ΄Π΅Ρ‚ Ρ€Π΅Ρ‡ΡŒ.

Как это Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚?

ΠŸΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ Π½Π°Ρ‡Π°Ρ‚ΡŒ, Π²Π°ΠΆΠ½ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ, ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ скриптовый язык. Π”Π΅Π»ΠΎ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π² скриптовых языках Π΅ΡΡ‚ΡŒ ΠΎΡ‡Π΅Π½ΡŒ ΠΌΠ°Π»ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, ΠΏΡ€ΠΈ Π½Π°Π»ΠΈΡ‡ΠΈΠΈ конструкций for, while, if, ΠΏΡ€ΠΎΡ‡ΠΈΡ….
Π’ основном это Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π²Ρ‹Π²ΠΎΠ΄Π° тСкста Π² консоль, матСматичСскиС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ.
Как ΠΆΠ΅ Ρ‚ΠΎΠ³Π΄Π° ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ΠΈΠ³Ρ€ΠΎΠΊΠΎΠΌ Ρ‡Π΅Ρ€Π΅Π· скрипты?

ΠœΡ‹ Π² Π‘++-ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Π΄Π΅Π»Π°Π΅ΠΌ ΠΊΠ°ΠΊΠΈΠ΅-Π»ΠΈΠ±ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, «рСгистрируСм» ΠΈΡ… ΠΏΠΎΠ΄ ΠΊΠ°ΠΊΠΈΠΌ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ ΠΈΠΌΠ΅Π½Π΅ΠΌ Π² скриптС ΠΈ Π²Ρ‹Π·Ρ‹Π²Π°Π΅ΠΌ Π² скриптС. Π’ΠΎ Π΅ΡΡ‚ΡŒ Ссли ΠΌΡ‹ зарСгистрировали Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ SetPos(x,y) для опрСдСлСния ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ ΠΈΠ³Ρ€ΠΎΠΊΠ° Π² Π‘++-ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅, Ρ‚ΠΎ, встрСтив эту Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Π² скриптС, Β«ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€Β» ΠΈΠ· Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ скриптового языка Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ эту Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Π² Π‘++-ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅, СстСствСнно, с ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π΅ΠΉ всСх ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ².
Π£Π΄ΠΈΠ²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ, Π΄Π°? πŸ™‚

UPD: Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅! Один ΡŽΠ·Π΅Ρ€ обратился ΠΌΠ½Π΅ с ΠΌΠ΅ΠΉΠ»ΠΎΠΌ, Ρ‡Ρ‚ΠΎ, ΠΊΠΎΠ³Π΄Π° я Π·Π°Π»ΠΈΠ²Π°Π» ΠΊΠΎΠ΄, я Π½Π΅ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ устранил всС ошибки β€” habrahabr.ru/post/196272/#comment_6850016
Π’ ΠΊΠΎΠ΄Π΅ с позволСния Ρ…Π°Π±Ρ€Π° ΠΏΡ€ΠΎΠ½ΠΈΠΊΠ»ΠΈ ΠΆΡƒΡ‡ΠΊΠΈ
Π—Π°ΠΌΠ΅Π½ΠΈΡ‚Π΅ участки ΠΊΠΎΠ΄Π° Π²Ρ€ΠΎΠ΄Π΅

И Π΅Ρ‰Π΅ вмСсто lua_CFunction проскакиваСт lua_cfunction
Бпасибо!

Π― Π³ΠΎΡ‚ΠΎΠ²!

Когда Π²Ρ‹ поняли прСимущСства скриптовых языков программирования, самоС врСмя Π½Π°Ρ‡Π°Ρ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ!
Π‘ΠΊΠ°Ρ‡Π°ΠΉΡ‚Π΅ ΠΈΠ· рСпозитория Π½Π° Π³ΠΈΡ‚Ρ…Π°Π±Π΅ (Π½ΠΈΠ· Ρ‚ΠΎΠΏΠΈΠΊΠ°) lib’Ρƒ ΠΈ includ’Ρ‹ Lua, Π»ΠΈΠ±ΠΎ Π²ΠΎΠ·ΠΌΠΈΡ‚Π΅ ΠΈΡ… Π½Π° ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΌ сайтС.

Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ ΠΊΠΎΠ½ΡΠΎΠ»ΡŒΠ½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π»ΠΈΠ±ΠΎ Win32 (это Π½Π΅Π²Π°ΠΆΠ½ΠΎ) Π² Visual Studio (Ρƒ мСня стоит вСрсия 2012)

Π—Π°Ρ…ΠΎΠ΄ΠΈΠΌ Π² ΠŸΡ€ΠΎΠ΅ΠΊΡ‚->Бвойства->Бвойства ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ->ΠšΠ°Ρ‚Π°Π»ΠΎΠ³ΠΈ VC++ ΠΈ Π² Β«ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΈ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡΒ» ΠΈ Β«ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΒ» Π΄ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ ΠΏΠ°ΠΏΠΊΡƒ Include ΠΈ Lib ΠΈΠ· рСпозитория соотвСтствСнно.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ создаСм Ρ„Π°ΠΉΠ» main.cpp, пишСм Π² Π½Π΅ΠΌ:

Как Π²Ρ‹ догадались, Ρƒ мСня консольноС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΠΌ ΠΊ ΠΊΠΎΠ΄ΠΈΠ½Π³Ρƒ

ΠžΠ±Π΅Ρ‰Π°ΡŽ, Ρ‡Ρ‚ΠΎ Π±ΡƒΠ΄Ρƒ Ρ‚Ρ‰Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΠ±ΡŠΡΡΠ½ΡΡ‚ΡŒ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚

Π£ нас Π·Π° скрипты Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚Π²Π΅Ρ‡Π°Ρ‚ΡŒ класс Script. Π― Π±ΡƒΠ΄Ρƒ ΠΎΠ±ΡŠΡΠ²Π»ΡΡ‚ΡŒ ΠΈ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π² Script.h/.cpp
БоздаСм Script.cpp и пишСм в нСм

БоздаСм Script.h и пишСм в нСм

ПослС 2 строчки ΠΈ ΠΏΠ΅Ρ€Π΅Π΄ #endif ΠΌΡ‹ опрСдСляСм класс скриптов
Π­Ρ‚ΠΎΡ‚ ΠΊΠΎΠ΄ ΠΏΠΈΡˆΠ΅Ρ‚ΡΡ для прСдотвращСния Π²Π·Π°ΠΈΠΌΠ½ΠΎΠ³ΠΎ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Ρ„Π°ΠΉΠ»ΠΎΠ². Допустим, Ρ‡Ρ‚ΠΎ Ρ„Π°ΠΉΠ» Game.h ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Script.h, Π° Script.h ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Game.h β€” нСпорядок! А с Ρ‚Π°ΠΊΠΈΠΌ ΠΊΠΎΠ΄ΠΎΠΌ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ выполняСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ 1 Ρ€Π°Π·

Π’Π΅ΠΏΠ΅Ρ€ΡŒ пишСм Π²Π½ΡƒΡ‚Ρ€ΠΈ этого ΠΊΠΎΠ΄Π° Π²ΠΎΡ‚ это

ΠŸΠ΅Ρ€Π²Π°Ρ строчка ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ сам lua.lib ΠΈΠ· Π°Ρ€Ρ…ΠΈΠ²Π°.
Для Ρ‡Π΅Π³ΠΎ Π½ΡƒΠΆΠ΅Π½ extern Β«CΒ»? Π”Π΅Π»ΠΎ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ lua написан Π½Π° Π‘ ΠΈ поэтому Ρ‚Π°ΠΊΠΎΠΉ ΠΊΠΎΠ΄ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌ для ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ.

Π”Π°Π»ΡŒΡˆΠ΅ ΠΈΠ΄Π΅Ρ‚ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Ρ…ΠΎΡ€ΠΎΡˆΠΎ извСстных ΠΌΠ½ΠΎΠ³ΠΈΠΌ Ρ„Π°ΠΉΠ»ΠΎΠ² для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с консолью

Π’Π΅ΠΏΠ΅Ρ€ΡŒ приступим ΠΊ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΡŽ класса

Π‘Π°ΠΌΡ‹ΠΉ Π³Π»Π°Π²Π½Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Lua для C++ β€” lua_State, ΠΎΠ½ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌ для выполнСния скриптов

Π”Π°Π»ΡŒΡˆΠ΅ ΠΈΠ΄ΡƒΡ‚ ΠΏΡƒΠ±Π»ΠΈΡ‡Π½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ

Π­Ρ‚Π° функция ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ lua_State

Π•Π³ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π² Script.cpp

ΠŸΠ΅Ρ€Π²ΠΎΠΉ строчкой ΠΌΡ‹ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅ΠΌ наш lua_State.
ΠŸΠΎΡ‚ΠΎΠΌ ΠΌΡ‹ объявляСм список Β«ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹Ρ… Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΒ». Π”Π΅Π»ΠΎ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π² «чистом» Π²ΠΈΠ΄Π΅ Π² Π»ΡƒΠ° Π΅ΡΡ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ функция print(). Для матСматичСских ΠΈ ΠΏΡ€ΠΎΡ‡ΠΈΡ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ трСбуСтся ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΈ ΠΏΠΎΡ‚ΠΎΠΌ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ ΠΈΡ… ΠΊΠ°ΠΊ math.foo, base.foo, io.foo. Для ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π΄Ρ€ΡƒΠ³ΠΈΡ… Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ Π΄ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ Π² lualibs, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, <Β«mathΒ», luaopen_math>. ВсС названия Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ΡΡ с luaopen_. Π² ΠΊΠΎΠ½Ρ†Π΅ lialibs Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΡ‚ΠΎΡΡ‚ΡŒ

ΠŸΡ€ΠΎΡΡ‚ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ lua_close()

А эта функция выполняСт Ρ„Π°ΠΉΠ». На Π²Ρ…ΠΎΠ΄ ΠΎΠ½Π° ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»Π°, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Β«C:\\script.luaΒ».
ΠŸΠΎΡ‡Π΅ΠΌΡƒ ΠΎΠ½Π° Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ int? ΠŸΡ€ΠΎΡΡ‚ΠΎ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ скрипты ΠΌΠΎΠ³ΡƒΡ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ return, прСрывая Ρ€Π°Π±ΠΎΡ‚Ρƒ скрипта ΠΈ возвращая ΠΊΠ°ΠΊΠΎΠ΅-Π½ΠΈΠ±ΡƒΠ΄ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅.

Как Π²Ρ‹ Π²ΠΈΠ΄ΠΈΡ‚Π΅, я Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽ скрипт ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°ΡŽ int. Но Π²ΠΎΠ·Ρ€Π°Ρ‰Π°Ρ‚ΡŒ функция ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ int, Π½ΠΎ Π΅Ρ‰Π΅ ΠΈ bool ΠΈ char*, просто я всСгда Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°ΡŽ числа (lua_toboolean, lua_tostring)

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΡ‹ сдСлаСм Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ, Ρ€Π΅Π³ΠΈΡΡ‚Ρ€ΠΈΡ€ΡƒΡŽΡ‰ΡƒΡŽ константы (числа, строки, Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ)

ΠœΡ‹ дСйствуСм Ρ‡Π΅Ρ€Π΅Π· ΡˆΠ°Π±Π»ΠΎΠ½Ρ‹. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Π²Ρ‹Π·ΠΎΠ²Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ:
Π•Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅

Для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΠ³ΠΎ значСния class T ΠΌΡ‹ опрСдСляСм свои дСйствия.
*ΠšΠ°ΠΏΠΈΡ‚Π°Π½* послСднСС ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ β€” рСгистрация Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ
Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Π³ΠΎΠ΄Π½Ρ‹Π΅ для рСгистрации, выглядят Ρ‚Π°ΠΊ:

Π“Π΄Π΅ n β€” количСство Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΡ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ. Если n = 2, Ρ‚ΠΎ Π² Π›ΡƒΠ° ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Ρ‚Π°ΠΊ:

Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΌΠ°Π½ΡƒΠ°Π»Ρ‹ ΠΏΠΎ Π›ΡƒΠ°, Ссли Π±Ρ‹Π»ΠΈ ΡƒΠ΄ΠΈΠ²Π»Π΅Π½Ρ‹ Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ ΠΎΠ΄Π½Π° функция Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ нСсколько Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ πŸ™‚

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ функция создаСт Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ для Π›ΡƒΠ°. Если нСпонятно, Ρ‡Ρ‚ΠΎ это Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‚ΠΎ Ρ‚Π°ΠΌΠΎΡˆΠ½Π°Ρ Ρ‚Π°Π±Π»ΠΈΡ†Π° всС Ρ€Π°Π²Π½ΠΎ Ρ‡Ρ‚ΠΎ массив

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ функция рСгистрируСт элСмСнт Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅.

Если Π²Ρ‹ Π½Π΅ Π·Π½Π°Π΅Ρ‚Π΅ Lua, Π²Ρ‹, Π½Π°Π²Π΅Ρ€Π½ΠΎΠ΅, ΡƒΠ΄ΠΈΠ²Π»Π΅Π½Ρ‹ Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ Π² ΠΎΠ΄ΠΈΠ½ массив помСщаСтся ΡΡ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚ΠΈΠΏΠΎΠ²? πŸ™‚
На самом Π΄Π΅Π»Π΅ Π² элСмСнтС Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒΡΡ Π΅Ρ‰Π΅ ΠΈ Ρ‚Π°Π±Π»ΠΈΡ†Π°, я Ρ‚Π°ΠΊ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ дСлаю.

НаконСц, Π·Π°ΠΏΠΎΠ»Π½Π΅Π½Π½ΡƒΡŽ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Π½ΡƒΠΆΠ½ΠΎ Π·Π°Ρ€Π΅Π³ΠΈΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ

НичСго особСнного Π½Π΅Ρ‚

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Ρ‹ Π² основном Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Ρ‚ΠΈΠΏΠ° int foo(lua_State*), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½ΡƒΠΆΠ½Ρ‹ для рСгистрации Π² Π›ΡƒΠ°.

ΠŸΠ΅Ρ€Π²Π°Ρ ΠΈΠ· Π½ΠΈΡ… β€” ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ количСство Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ²

Π­Ρ‚Π° функция Π½ΡƒΠΆΠ½Π°, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, для Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Write(), ΠΊΡƒΠ΄Π° ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΠΈΡ…Π°Ρ‚ΡŒ сколь ΡƒΠ³ΠΎΠ΄Π½ΠΎ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ², Π° ΠΌΠΎΠΆΠ½ΠΎ ΠΈ Π½ΠΈ ΠΎΠ΄Π½ΠΎΠ³ΠΎ
ΠŸΠΎΠ΄ΠΎΠ±Π½ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ΠΌΡ‹ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅ΠΌ ΠΏΠΎΠ·ΠΆΠ΅

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ функция ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚, ΠΏΠ΅Ρ€Π΅Π΄Π°Π½Π½Ρ‹ΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π² скриптС

МоТно ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ всС Ρ‚ΠΈΠΏΡ‹, ΠΎΠΏΠΈΡΡ‹Π²Π°Π²ΡˆΠΈΠ΅ΡΡ Ρ€Π°Π½Π΅Π΅, ΠΊΡ€ΠΎΠΌΠ΅ Ρ‚Π°Π±Π»ΠΈΡ† ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ
index β€” это Π½ΠΎΠΌΠ΅Ρ€ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°. И ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ начинаСтся с 1.

НаконСц, послСдняя функция, которая Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π² скрипт

Π‘ΠΎΠ΅Π²ΠΎΠΉ ΠΊΠΎΠ΄

ΠŸΠΎΡ€Π° Ρ‡Ρ‚ΠΎ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ!
ИзмСняСм main.cpp

ΠšΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΠ΅ΠΌ. Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈΡΡ‚ΡƒΠΏΠΈΡ‚ΡŒ ΠΊ Ρ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ нашСго класса

ΠŸΠΎΠΌΠ½ΠΈΡ‚Π΅, я ΠΎΠ±Π΅Ρ‰Π°Π» ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Write? πŸ™‚
ВидоизмСняСм main.cpp

А Π² ΠΏΠ°ΠΏΠΊΠ΅ с ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ создаСм Ρ„Π°ΠΉΠ» script.lua

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ скрипты Π² ΠΈΠ³Ρ€Π°Ρ…. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ скрипты Π² ΠΈΠ³Ρ€Π°Ρ…. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ скрипты Π² ΠΈΠ³Ρ€Π°Ρ…. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ скрипты Π² ΠΈΠ³Ρ€Π°Ρ…. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ скрипты Π² ΠΈΠ³Ρ€Π°Ρ…

ΠšΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΠ΅ΠΌ ΠΈ запускаСм ΠΏΡ€ΠΎΠ΅ΠΊΡ‚.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ скрипты Π² ΠΈΠ³Ρ€Π°Ρ…. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ скрипты Π² ΠΈΠ³Ρ€Π°Ρ…. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ скрипты Π² ΠΈΠ³Ρ€Π°Ρ…. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ скрипты Π² ΠΈΠ³Ρ€Π°Ρ…. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ скрипты Π² ΠΈΠ³Ρ€Π°Ρ…

Π’Π΅ΠΏΠ΅Ρ€ΡŒ измСняСм script.lua

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΏΠΎ 2 строки («\n» β€” созданиС Π½ΠΎΠ²ΠΎΠΉ строки), ΠΆΠ΄Π°Ρ‚ΡŒ наТатия Enter ΠΈ снова Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒ строки.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ скрипты Π² ΠΈΠ³Ρ€Π°Ρ…. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ скрипты Π² ΠΈΠ³Ρ€Π°Ρ…. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ скрипты Π² ΠΈΠ³Ρ€Π°Ρ…. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ скрипты Π² ΠΈΠ³Ρ€Π°Ρ…. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ скрипты Π² ΠΈΠ³Ρ€Π°Ρ…

ЭкспСримСнтируйтС со скриптами!

Π’ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ main.cpp с функциями ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ script.lua

ΠŸΠΎΠ»Π΅Π·Π½Ρ‹Π΅ совСты
Вопросы ΠΈ ΠΎΡ‚Π²Π΅Ρ‚Ρ‹

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

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ скрипт Π² ΠΈΠ³Ρ€Π°Ρ…

ΠŸΡ€ΠΈ создании ΠΈΠ³Ρ€Ρ‹ скрипты ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠΌ Ρ‚Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ кинорСТиссСр ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ сцСнарий β€” для контроля ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ аспСкта вашСго «произвСдСния». Π˜Π³Ρ€ΠΎΠ²Ρ‹Π΅ скрипты ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΌΡƒ ΠΊΠΎΠ΄Ρƒ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Ρ‹ ΠΏΠΈΡˆΠ΅Ρ‚Π΅, ΠΊΠΎΠ³Π΄Π° создаСтС ΠΈΠ³Ρ€Ρƒ, Π·Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ скрипты ΡΠ²Π»ΡΡŽΡ‚ΡΡ внСшними ΠΏΠΎ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡŽ ΠΊ ΠΈΠ³Ρ€ΠΎΠ²ΠΎΠΌΡƒ Π΄Π²ΠΈΠΆΠΊΡƒ. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΠ½ΠΈ внСшниС, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ быстро ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ скрипт Π½Π΅ компилируя Π·Π°Π½ΠΎΠ²ΠΎ вСсь ΠΈΠ³Ρ€ΠΎΠ²ΠΎΠΉ Π΄Π²ΠΈΠΆΠΎΠΊ. Π’ΠΎΠΎΠ±Ρ€Π°Π·ΠΈΡ‚Π΅ сСбС ΠΏΡ€ΠΎΠ΅ΠΊΡ‚, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ большС ΠΌΠΈΠ»Π»ΠΈΠΎΠ½Π° строк ΠΊΠΎΠ΄Π°, ΠΈ Π²Π°ΠΌ Π½Π°Π΄ΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ вСсь этот ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π·Π°Π½ΠΎΠ²ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΎΠ΄Π½Ρƒ строку Π² Π΄ΠΈΠ°Π»ΠΎΠ³Π΅!

Π‘ΠΎ скриптами совсСм Π½Π΅ Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ, ΠΈ ΠΏΠΎΡ‡Ρ‚ΠΈ каТдая Ρ‡Π°ΡΡ‚ΡŒ вашСй ΠΈΠ³Ρ€Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠ·Π²Π»Π΅Ρ‡ΡŒ ΠΏΠΎΠ»ΡŒΠ·Ρƒ ΠΎΡ‚ использования скриптов. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ скрипты ΠΏΡ€ΠΈ Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΈ ΠΏΠΎ мСню, для управлСния сраТСниями, для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с имущСством ΠΈΠ³Ρ€ΠΎΠΊΠ° ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ³ΠΎ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ. ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²ΡŒΡ‚Π΅ сСбС, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΈΠ³Ρ€Ρ‹ Π²Π°ΠΌ Π·Π°Ρ…ΠΎΡ‚Π΅Π»ΠΎΡΡŒ, ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ Π²ΠΎ врСмя Π±ΠΈΡ‚Π²Ρ‹ ΠΈΠ³Ρ€ΠΎΠΊΡƒ список магичСских Π·Π°ΠΊΠ»ΠΈΠ½Π°Π½ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ½ рСгулярно ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ для Π°Ρ‚Π°ΠΊ. Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΡŒΡ‚Π΅, Ρ‡Ρ‚ΠΎ Π² Ρ…ΠΎΠ΄Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π²Ρ‹ Ρ€Π΅ΡˆΠΈΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ· этих Π·Π°ΠΊΠ»ΠΈΠ½Π°Π½ΠΈΠΉ. Если информация ΠΎ заклинаниях ТСстко Π·Π°ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½Π°, Π²Ρ‹ ΡΡ‚ΠΎΠ»ΠΊΠ½Π΅Ρ‚Π΅ΡΡŒ с ΡΠ΅Ρ€ΡŒΠ΅Π·Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΎΠΉ; Π²Π°ΠΌ придСтся ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ экзСмпляр ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ управляСт заклинаниями, Π½Π΅ говоря ΡƒΠΆΠ΅ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π½ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ придСтся Ρ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ ΠΎΡ‚Π»Π°ΠΆΠΈΠ²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π΄ΠΎΠ±ΠΈΡ‚ΡŒΡΡ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹. Π—Π°Ρ‡Π΅ΠΌ Ρ‚Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Ρ‚Π°ΠΊ ΠΌΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π½Π° ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Π΅ измСнСния?

ВмСсто этого Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ для магичСских Π·Π°ΠΊΠ»ΠΈΠ½Π°Π½ΠΈΠΉ ΠΈ ΠΈΡ… дСйствий Π½Π° пСрсонаТСй ΠΈΠ³Ρ€Ρ‹ Π² Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Π½Π΅Π±ΠΎΠ»ΡŒΡˆΠΈΡ… скриптах. Всякий Ρ€Π°Π·, ΠΊΠΎΠ³Π΄Π° начинаСтся сраТСниС, Π·Π°Π³Ρ€ΡƒΠΆΠ°ΡŽΡ‚ΡΡ эти скрипты ΠΈ отобраТаСтся панСмль Π²Ρ‹Π±ΠΎΡ€Π° магичСских Π·Π°ΠΊΠ»ΠΈΠ½Π°Π½ΠΈΠΉ. Когда выбираСтся Π·Π°ΠΊΠ»ΠΈΠ½Π°Π½ΠΈΠ΅, скрипт ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ всС эффСкты β€” ΠΎΡ‚ наносимых ΠΏΠΎΠ²Ρ€Π΅ΠΆΠ΄Π΅Π½ΠΈΠΉ Π΄ΠΎ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠΉ ΠΈ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ графичСских эффСктов заклинания.

Для этой ΠΊΠ½ΠΈΠ³ΠΈ я колСбался ΠΌΠ΅ΠΆΠ΄Ρƒ двумя Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ Ρ‚ΠΈΠΏΠ°ΠΌΠΈ скриптовых систСм. ΠŸΠ΅Ρ€Π²Π°Ρ ΠΈΠ· Π½ΠΈΡ… ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ‚ использованиС языка, ΠΏΠΎΡ…ΠΎΠΆΠ΅Π³ΠΎ Π½Π° Π‘++. Π’ Ρ„Π°ΠΉΠ»Π΅ скрипта Π²Ρ‹ ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π΅Ρ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹, ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΠ΅Ρ‚Π΅ Π΅Π³ΠΎ ΠΈ исполняСтС скомпилированный скрипт ΠΈΠ· вашСй ΠΈΠ³Ρ€Ρ‹. Вторая систСма скриптов являСтся Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡƒΠΏΡ€ΠΎΡ‰Π΅Π½Π½Ρ‹ΠΌ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠΌ ΠΏΠ΅Ρ€Π²ΠΎΠΉ. ВмСсто Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ΡŒ Π²Π°ΠΌ ΠΏΠ΅Ρ‡Π°Ρ‚Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Π² Ρ„Π°ΠΉΠ»Π΅, эта систСма обСспСчиваСт созданиС скриптов ΠΏΡƒΡ‚Π΅ΠΌ Π²Ρ‹Π±ΠΎΡ€Π° ΠΊΠΎΠΌΠ°Π½Π΄ ΠΈΠ· ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ Π½Π°Π±ΠΎΡ€Π°.

ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΌΠΎΠ΅ΠΉ Ρ†Π΅Π»ΡŒΡŽ Π±Ρ‹Π»ΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ быстрСС ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π²Π°ΠΌ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠΉ скриптовый Π΄Π²ΠΈΠΆΠΎΠΊ, я Π²Ρ‹Π±Ρ€Π°Π» использованиС Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ° скриптовой систСмы. Π­Ρ‚Π° систСма, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ я Π½Π°Π·Π²Π°Π» Mad Lib Scripting, Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Π½Π°Π±ΠΎΡ€ ΠΏΡ€Π΅Π΄ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… ΠΊΠΎΠΌΠ°Π½Π΄, Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹Ρ… дСйствия (actions), с ΠΊΠ°ΠΆΠ΄Ρ‹ΠΌ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… связана игровая функция. Π’ΠΎΠ·ΡŒΠΌΠ΅ΠΌ, для ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°, дСйствия ΠΈΠ· Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ 10.1 β€” Ρƒ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ дСйствия Π΅ΡΡ‚ΡŒ конкрСтная выполняСмая функция.

Π’Π°Π±Π»ΠΈΡ†Π° 10.1. ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΊΠΎΠΌΠ°Π½Π΄ дСйствий

ДСйствиСЀункция
PrintΠŸΠ΅Ρ‡Π°Ρ‚Π°Π΅Ρ‚ строку тСкста Π½Π° экранС.
EndΠ—Π°Π²Π΅Ρ€ΡˆΠ°Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ скрипта.
Move CharacterΠŸΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Π΅Ρ‚ ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΉ пСрсонаТ Π² Π·Π°Π΄Π°Π½Π½ΠΎΠΌ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠΈ.
Play SoundВоспроизводит ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΉ Π·Π²ΡƒΠΊΠΎΠ²ΠΎΠΉ эффСкт.

Π‘ Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½Ρ‹ΠΌ Π½Π°Π±ΠΎΡ€ΠΎΠΌ дСйствий Π²Π°ΠΌ Π½Π΅ Π½ΡƒΠΆΠ½Π° ΠΌΠΎΡ‰ΡŒ слоТных ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Ρ… скриптовых языков; вмСсто этого Π²Π°ΠΌ Π½ΡƒΠΆΠ½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΡΠΏΡ€ΠΎΡΠΈΡ‚ΡŒ ΡΠΊΡ€ΠΈΠΏΡ‚ΠΎΠ²ΡƒΡŽ систСму, ΠΊΠ°ΠΊΠΎΠ΅ дСйствиС выполняСтся, ΠΈ ΠΊΠ°ΠΊΠΈΠ΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ дСйствия Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΈΠ³Ρ€ΠΎΠ²ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. Π‘Π°ΠΌΠΎΠ΅ Π·Π°ΠΌΠ΅Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ Π² этом ΠΌΠ΅Ρ‚ΠΎΠ΄Π΅ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ вмСсто написания строк ΠΊΠΎΠ΄Π°, ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‰ΠΈΡ… простоС дСйствиС, Π²Ρ‹ ΡΡΡ‹Π»Π°Π΅Ρ‚Π΅ΡΡŒ Π½Π° дСйствия ΠΈ ΠΈΡ… ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ чисСл.

Для ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° скаТСм, Ρ‡Ρ‚ΠΎ Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡŽ Play Sound соотвСтствуСт Π½ΠΎΠΌΠ΅Ρ€ 4, ΠΈ дСйствиС Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ СдинствСнного ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° β€” Π½ΠΎΠΌΠ΅Ρ€Π° воспроизводимого Π·Π²ΡƒΠΊΠ°. Π’ скриптС Π²Π°ΠΌ потрСбуСтся ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π΄Π²Π° числа: ΠΎΠ΄Π½ΠΎ для дСйствия, ΠΈ ΠΎΠ΄Π½ΠΎ, ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰Π΅Π΅ Π·Π²ΡƒΠΊ. ИспользованиС чисСл для прСдставлСния дСйствий (вмСсто тСкста) Π΄Π΅Π»Π°Π΅Ρ‚ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ скриптов Ρ‚Π°ΠΊΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ° быстрой ΠΈ простой.

Π§Ρ‚ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ сСгодня Π½Π΅ Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ скриптами, ΠΊ мСсту ΠΈ Π½Π΅ ΠΊ мСсту употрСбляя это ΠΌΠΎΠ΄Π½ΠΎΠ΅ словСчко! НСкоторыС люди Π²ΠΊΠ»Π°Π΄Ρ‹Π²Π°ΡŽΡ‚ Π² это слово ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ свой, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΈΠΌ понятный смысл, Π° Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²ΠΎΠΎΠ±Ρ‰Π΅ Π½Π΅ Π²ΠΊΠ»Π°Π΄Ρ‹Π²Π°ΡŽΡ‚ Π½ΠΈΠΊΠ°ΠΊΠΎΠ³ΠΎ смысла. На самом Π΄Π΅Π»Π΅, Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΈΡΠ°Ρ‚ΡŒ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠ΅ скрипты, Ссли Π½Π΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ Ρ‚ΠΎΡ‡Π½ΠΎΠ³ΠΎ значСния этого слова, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ, Π΄Π°Π²Π°ΠΉΡ‚Π΅ ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ Π² Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Ρ…, для Π½Π°Ρ‡Π°Π»Π°.

ΠšΠΎΡ€ΠΎΡ‚Π΅Π½ΡŒΠΊΠ°Ρ справочка ΠΈΠ»ΠΈ Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΠ΅, это для ΠΊΠΎΠ³ΠΎ ΠΊΠ°ΠΊ. Π―Π·Ρ‹ΠΊΠΈ программирования дСлятся Π½Π° Π΄Π²Π΅ большиС Π³Ρ€ΡƒΠΏΠΏΡ‹ – ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Π΅ ΠΈ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Π΅.

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

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

ОсновноС прСимущСство ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΌΠΈ, это ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρ‹. Иногда эта ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π²Ρ‹ΡˆΠ΅ Π½Π° нСсколько порядков! Π˜Π½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€Ρ‹, бСзусловно, Π±ΡƒΠ΄ΡƒΡ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΌΠ΅Π΄Π»Π΅Π½Π½Π΅Π΅, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΈΠΌ приходится Π΄Π΅Π»Π°Ρ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ±ΠΎΡ‡Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΠΎΠΌΠΈΠΌΠΎ выполнСния основной ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. А вСдь ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ для нас ΠΎΡ‡Π΅Π½ΡŒ Π²Π°ΠΆΠ½Π°, особСнно Ссли ΠΌΡ‹ создаСм ΠΈΠ³Ρ€Ρƒ! ΠœΡ‹ вСдь Π½Π΅ Ρ…ΠΎΡ‚ΠΈΠΌ Π²ΠΈΠ΄Π΅Ρ‚ΡŒ Π΄Π΅Ρ€Π³Π°ΡŽΡ‰ΠΈΡ…ΡΡ ΠΈ тормозящих пСрсонаТСй, Ρ‚Π΅ΠΌ Π±ΠΎΠ»Π΅Π΅ слайд-ΡˆΠΎΡƒ! Для нас вСдь Π²Π°ΠΆΠ½ΠΎ, Π±ΡƒΠ΄Π΅Ρ‚ созданный Π½Π°ΠΌΠΈ пСрсонаТ Ρ€Π΅Π°Π³ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ‡Π΅Ρ€Π΅Π· 1 миллисСкунду ΠΈΠ»ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Π΅Ρ€Π΅Π· 10 сСкунд.

Π—Π°Ρ‡Π΅ΠΌ Π½Π°ΠΌ Π²ΠΎΠΎΠ±Ρ‰Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ язык программирования для создания ΠΈΠ³Ρ€? И ΠΌΠΎΠΆΠ½ΠΎ Π»ΠΈ Π΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ΅? Π”Π΅Π»ΠΎ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Ρƒ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Ρ… языков Ρ‚ΠΎΠΆΠ΅ Π΅ΡΡ‚ΡŒ свои прСимущСства, ΠΈ ΠΎΠ΄Π½ΠΎ ΠΈΠ· Π½ΠΈΡ… Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ ΠΌΠΎΠΆΠ½ΠΎ быстро ΠΎΡ‚Π»Π°ΠΆΠΈΠ²Π°Ρ‚ΡŒ (Ρ‚.Π΅. ΠΈΡΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ошибки), Π΄ΠΎΠΏΠΎΠ»Π½ΡΡ‚ΡŒ ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ. Π’Π΅Π΄ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° хранится Π½Π° дискС Π² Ρ‚ΠΎΠΌ Π²ΠΈΠ΄Π΅, ΠΊΠ°ΠΊ Π΅Ρ‘ написал программист ΠΈ Π΅Ρ‘ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π· ΠΏΠ΅Ρ€Π΅ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ послС исправлСния малСнькой ошибки. ΠšΡΡ‚Π°Ρ‚ΠΈ, поэтому ΠΈ Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ Π² Ρ‡ΡƒΠΆΠΈΡ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ… ΠΏΡ€ΠΎΡ‰Π΅ – языки программирования, особСнно ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ Π½Π° написаниС скриптов, ΠΎΡ‡Π΅Π½ΡŒ просты для понимания, Π° Π²ΠΎΡ‚ Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Ρ… ΠΊΠΎΠ΄Π°Ρ… Π±Π΅Π· ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎΠ³ΠΎ знания ассСмблСра (Ρ‡Ρ‚ΠΎ Π΄Π°Π½ΠΎ Π΄Π°Π»Π΅ΠΊΠΎ Π½Π΅ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡƒ) практичСски нСвозмоТно…

Π’ ΠΎΠ±Ρ‰Π΅ΠΌ, программистам всСгда Ρ…ΠΎΡ‚Π΅Π»ΠΎΡΡŒ ΡΠΎΠ²ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Ρ… языков ΠΈ простоту ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Ρ…. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ стал своСобразный Π³ΠΈΠ±Ρ€ΠΈΠ΄, Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹ΠΉ ΠΏΡ€Π΅ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€ΠΎΠ². ΠŸΡ€ΠΈ этом ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° хранится Π½Π° дискС Π² Ρ‚ΠΎΠΌ Π²ΠΈΠ΄Π΅, ΠΊΠ°ΠΊ Π΅Ρ‘ написал программист, Π½ΠΎ Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Π² ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΡƒΡŽ ΠΏΠ°ΠΌΡΡ‚ΡŒ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π° ΠΎΠ½Π° пСрСводится (ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ, часто Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΠΎΠΉ прСпроцСссором) ΠΈΠ»ΠΈ нСпосрСдствСнно Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Π΅ ΠΊΠΎΠ΄Ρ‹ ΠΈΠ»ΠΈ Π² Π±ΠΎΠ»Π΅Π΅ ΡƒΠ΄ΠΎΠ±Π½Ρ‹ΠΉ для дальнСйшСй ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½Ρ‹ΠΉ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚. Π’ΠΎΡ‚! Π­Ρ‚ΠΎ ΠΊΠ°ΠΊ Ρ€Π°Π· ΠΈ Π΅ΡΡ‚ΡŒ наш Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ со скриптами Π² ΠœΠ°Ρ„ΠΈΠΈ, Π΄Π° ΠΈ Π² ΠΎΠ³Ρ€ΠΎΠΌΠ½ΠΎΠΌ количСствС Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΈΠ³Ρ€ ИмССм Ρ…ΠΎΡ€ΠΎΡˆΡƒΡŽ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΈ простоту ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ, Π² частности ΠΌΠΎΠ΄Π΄ΠΈΠ½Π³Π°.
Π˜Π³Ρ€Π° Mafia: The City of Lost Heaven написана Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΌ языкС Π‘++, программисту это ΡƒΠΆΠ΅ ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠΌ Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚! Для нСпрограммистов поясню, Ρ‡Ρ‚ΠΎ Π² соотвСтствии с Π»ΠΎΠ³ΠΈΠΊΠΎΠΉ этого языка, всё, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ Π²ΠΈΠ΄ΠΈΠΌ ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ΅ ΠΈΠ· Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ Π½Π΅ Π²ΠΈΠ΄ΠΈΠΌ, описано Π² Π²ΠΈΠ΄Π΅ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ². ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ, каТдая машина ΠΈΠ»ΠΈ Π·Π΄Π°Π½ΠΈΠ΅, каТдая ΠΊΠΎΡ€ΠΎΠ±ΠΊΠ° ΠΈΠ»ΠΈ тСлСфонная Π±ΡƒΠ΄ΠΊΠ°, каТдая Π΄ΠΎΡ€ΠΎΠ³Π° ΠΈΠ»ΠΈ Π²Ρ‹Π΅Π·Π΄ ΠΈΠ· Π³ΠΎΡ€ΠΎΠ΄Π° ΠΈ Ρ‚.д… Π² ΠΎΠ±Ρ‰Π΅ΠΌ всё это ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹! ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ относится ΠΊ ΠΊΠ°ΠΊΠΎΠΌΡƒ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ классу, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΌΠ°ΡˆΠΈΠ½Ρ‹, Π΄Ρ€ΡƒΠ·ΡŒΡ, полицСйскиС ΠΈ Ρ‚.Π΄. Π§ΡƒΡ‚ΡŒ ΠΏΠΎΠ·ΠΆΠ΅ ΠΌΡ‹ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎΠ± этом ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅, Π° сСйчас Π½Π°ΠΌ Π²Π°ΠΆΠ½ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΡƒΡΠ²ΠΎΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΈΠ³Ρ€Π° ΠœΠ°Ρ„ΠΈΡ, Π²Π΅Ρ€Π½Π΅Π΅ наш Π³ΠΎΡ€ΠΎΠ΄ΠΎΠΊ Лост Π₯эвСн, вСсь состоит ΠΈΠ· ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², ΠΎΠ½ ΠΈΠ· Π½ΠΈΡ… построСн.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΎ скриптах. Π‘ΠΊΡ€ΠΈΠΏΡ‚, это сцСнарий, ΠΎΡ‚ английского слова Β«ScriptΒ». Π’ΠΎΡ‡Π½ΠΎ Ρ‚Π°ΠΊΠΎΠΉ ΠΆΠ΅ сцСнарий ΠΈΠ»ΠΈ Ρ€ΠΎΠ»ΡŒ, ΠΊΠ°ΠΊ Π² Ρ‚Π΅Π°Ρ‚Ρ€Π°Π»ΡŒΠ½ΠΎΠΉ пьСсС! На Ρ„ΠΎΡ€ΡƒΠΌΠ΅ Π’Π΅Π±Π³Π΅ΠΉΠΌΠ΅Ρ€Π°, ΠΊΠ°ΠΊ Π²Ρ‹ΡΡΠ½ΠΈΠ»ΠΎΡΡŒ, Π΅ΡΡ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ Ρ‚Π΅Π°Ρ‚Ρ€Π°Π»ΠΎΠ², людСй, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π»ΡŽΠ±ΡΡ‚ Ρ‚Π΅Π°Ρ‚Ρ€ ΠΈ Ρ€Π°Π·Π±ΠΈΡ€Π°ΡŽΡ‚ΡΡ Π² Π½Π΅ΠΌ. Π’ΠΎΡ‚ ΠΈΠΌ-Ρ‚ΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ понятно, ΠΎ Ρ‡Π΅ΠΌ я Π²Π΅Π΄Ρƒ Ρ€Π΅Ρ‡ΡŒ. Π’Ρ‹ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΠΎΠ±Ρ€Π°Ρ‰Π°Π»ΠΈ внимания, Π½Π΅ Π·Π°Π΄ΡƒΠΌΡ‹Π²Π°Π»ΠΈΡΡŒ, ΠΏΠΎΡ‡Π΅ΠΌΡƒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Π½Π°Π·Π²Π°Π»ΠΈ ΠΈΠ³Ρ€ΠΎΠ²Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹ сцСнами (scene.4ds, scene2.bin ΠΈ Ρ‚.Π΄.), Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹, ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… состоят эти Ρ„Π°ΠΉΠ»Ρ‹ Π°ΠΊΡ‚Π΅Ρ€Π°ΠΌΠΈ (actors)? Или ΠΎΡ‚ΠΊΡƒΠ΄Π° пошло Ρ‚Π°ΠΊΠΎΠ΅ понятиС ΠΊΠ°ΠΊ «игровая сцСна»? Π”Π΅Π»ΠΎ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΈΠ³Ρ€ΠΎΠ²Ρ‹Π΅ скрипты-сцСнарии, особСнно для ΠΈΠ³Ρ€ Ρ‚ΠΈΠΏΠ° Β«actionΒ» (кстати, Π΅Ρ‰Π΅ ΠΎΠ΄Π½ΠΎ словСчко ΠΈΠ· ΡˆΠΎΡƒ-бизнСса), ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΡ…ΠΎΠΆΠΈ Π½Π° сцСнарии ΠΈ ΠΏΡŒΠ΅ΡΡ‹ Ρ‚Π΅Π°Ρ‚Ρ€Π°Π»ΡŒΠ½Ρ‹Π΅, ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ Π±Π»ΠΈΠ·ΠΊΠΈΠ΅ родствСнники. И Π² Ρ‚ΠΎΠΌ ΠΈ Π² Π΄Ρ€ΡƒΠ³ΠΎΠΌ случаС Ρƒ нас Π΅ΡΡ‚ΡŒ сцСна с расставлСнными дСкорациями ΠΈ Π°ΠΊΡ‚Π΅Ρ€Π°ΠΌΠΈ (мизансцСна), ΠΏΡ€ΠΈ этом Ρƒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π°ΠΊΡ‚Π΅Ρ€ΠΎΠ² Π΅ΡΡ‚ΡŒ свой сцСнарий, своя Ρ€ΠΎΠ»ΡŒ, свой экшСн, Π° Ρƒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… этого Π½Π΅Ρ‚, ΠΎΠ½ΠΈ ΠΊΠ°ΠΊ Π±Ρ‹ ΠΈΠ³Ρ€Π°ΡŽΡ‚ Π² массовкС. Но вСдь ΠΈ массовка Ρ‚ΠΎΠΆΠ΅ Π²Π°ΠΆΠ½Π°, Π±Π΅Π· Π½Π΅Π΅ Ρƒ нас Π½Π΅ получится цСлостности, ΠΏΠΎΠ»Π½ΠΎΡ‚Ρ‹ впСчатлСния ΠΎΡ‚ спСктакля.

АктСр, Π² любом случаС Π°ΠΊΡ‚Π΅Ρ€, нСзависимо Π΅ΡΡ‚ΡŒ Ρƒ Π½Π΅Π³ΠΎ Ρ€ΠΎΠ»ΡŒ со словами ΠΈ экшСном (свой скрипт) ΠΈΠ»ΠΈ ΠΎΠ½ ΠΈΠ³Ρ€Π°Π΅Ρ‚ Π±Π΅ΡΡΠ»ΠΎΠ²Π΅ΡΠ½ΡƒΡŽ ΡΡ‚Π°Ρ‚ΡƒΡŽ. Как я Π³ΠΎΠ²ΠΎΡ€ΠΈΠ» Π²Ρ‹ΡˆΠ΅, всС ΠΈΠ· Ρ‡Π΅Π³ΠΎ состоит Π³ΠΎΡ€ΠΎΠ΄, это ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹. Π­Ρ‚ΠΎ Π²Π΅Ρ€Π½ΠΎ ΠΈ понятно Π»ΡŽΠ±ΠΎΠΌΡƒ программисту! Но Π² Ρ‚ΠΎ ΠΆΠ΅ врСмя любой ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ являСтся Π°ΠΊΡ‚Π΅Ρ€ΠΎΠΌ Π½Π° нашСй сцСнС, ΠΏΠΎ Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΎΠ»ΠΎΠ³ΠΈΠΈ программистов Illusion Softworks, ΠΈ с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния Β«Ρ‚Π΅Π°Ρ‚Ρ€Π°Π»ΡŒΠ½ΠΎΠ³ΠΎΒ» ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π° ΠΊ скриптам, ΠΎ Ρ‡Π΅ΠΌ я Π³ΠΎΠ²ΠΎΡ€ΠΈΠ» Π²Ρ‹ΡˆΠ΅. ПозТС ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ с этим ΠΏΠΎΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅, Π° ΠΏΠΎΠΊΠ° просто Π·Π°ΠΏΠΎΠΌΠ½ΠΈΠΌ, Ρ‡Ρ‚ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ΠΈ Π°ΠΊΡ‚Π΅Ρ€, это ΠΎΠ΄Π½ΠΎ ΠΈ Ρ‚ΠΎ ΠΆΠ΅ – Π½Π°Π·Ρ‹Π²Π°ΠΉΡ‚Π΅ ΠΊΠ°ΠΊ Π²Π°ΠΌ ΡƒΠ΄ΠΎΠ±Π½Π΅Π΅. Π“Π»Π°Π²Π½ΠΎΠ΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹ ΠΏΠΎΠ½ΠΈΠΌΠ°Π»ΠΈ, Ρ‡Ρ‚ΠΎ Π±ΡƒΡ‚Ρ‹Π»ΠΊΠ° ΠΈ Ρ‡Π°ΡˆΠΊΠ°, стоящиС Π² Π±Π°Ρ€Π΅ Ρƒ Π›ΡƒΠΈΠ΄ΠΆΠΈ, ΠΈ сам Π›ΡƒΠΈΠ΄ΠΆΠΈ, это ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹, ΠΈ Π°ΠΊΡ‚Π΅Ρ€Ρ‹ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ.

Π˜Ρ‚Π°ΠΊ, ΠΌΡ‹ построили сцСну, расставили Π°ΠΊΡ‚Π΅Ρ€ΠΎΠ² ΠΈ Ρ€Π°Π·Π΄Π°Π»ΠΈ ΠΈΠΌ ΠΈΡ… Ρ€ΠΎΠ»ΠΈ (scripts), Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΡΡ‹Π³Ρ€Π°Ρ‚ΡŒ Π½Π°ΠΌ ΡΠΏΠ΅ΠΊΡ‚Π°ΠΊΠ»ΡŒ, Π° ΠΌΡ‹ Π½Π°ΡΠ»Π°Π΄ΠΈΡ‚ΡŒΡΡ Π·Ρ€Π΅Π»ΠΈΡ‰Π΅ΠΌ, НО ΠΎΡ‡Π΅Π½ΡŒ скоро это Π½Π°ΠΌ наскучит, вСдь ΠΌΡ‹ Π΄Π΅Π»Π°Π΅ΠΌ ΠΈΠ³Ρ€Ρƒ, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Ρ…ΠΎΡ‚ΠΈΠΌ сами ΠΏΡ€ΠΈΠ½ΡΡ‚ΡŒ участиС Π² спСктаклС, самому ΡΡ‚Π°Ρ‚ΡŒ Π°ΠΊΡ‚Π΅Ρ€ΠΎΠΌ, Π° Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π°Π±Π»ΡŽΠ΄Π°Ρ‚ΡŒ Π·Π° Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ Π°ΠΊΡ‚Π΅Ρ€Π°ΠΌΠΈ. Π’ΡƒΡ‚ Π΅ΡΡ‚ΡŒ ΠΎΠ΄ΠΈΠ½ интСрСсный ΠΌΠΎΠΌΠ΅Π½Ρ‚! ВсС Π°ΠΊΡ‚Π΅Ρ€Ρ‹ ΠΈΠΌΠ΅ΡŽΡ‚ свои Ρ€ΠΎΠ»ΠΈ, Π² соотвСтствии с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ ΠΎΠ½ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ ΠΊΠ°ΠΊΠΈΠ΅-Ρ‚ΠΎ дСйствия, ΠΏΡ€ΠΈΡ‡Π΅ΠΌ Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎ со стороны ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ Π°ΠΊΡ‚Π΅Ρ€Ρ‹ Ρ€Π°Π·ΡƒΠΌΠ½Ρ‹. БоздаСтся Π²ΠΏΠ΅Ρ‡Π°Ρ‚Π»Π΅Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ Π°ΠΊΡ‚Π΅Ρ€Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ Π΄ΡƒΠΌΠ°Ρ‚ΡŒ ΠΈ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ ΠΎΠ±Π»Π°Π΄Π°ΡŽΡ‚ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ, достаточно ΡƒΠ±ΠΎΠ³ΠΈΠΌ, Π½ΠΎ всС-Ρ‚Π°ΠΊΠΈ ΠΏΠΎΠ΄ΠΎΠ±ΠΈΠ΅ΠΌ искусствСнного ΠΈΠ½Ρ‚Π΅Π»Π»Π΅ΠΊΡ‚Π° (Artificial Intelligence a.k.a. AI), для простоты часто ΠΈ говорят, Ρ‡Ρ‚ΠΎ ΠΈΠ³Ρ€ΠΎΠ²Ρ‹Π΅ пСрсонаТи ΠΎΠ±Π»Π°Π΄Π°ΡŽΡ‚ AI. Π—Π°ΠΊΠΎΠ½ΠΎΠΌΠ΅Ρ€Π½Ρ‹ΠΉ вопрос, Π° Ссли ΠΈΠ³Ρ€ΠΎΠΊ выступаСт Π² качСствС ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ· Π°ΠΊΡ‚Π΅Ρ€ΠΎΠ², Ρ‚ΠΎ Π½ΡƒΠΆΠ΅Π½ Π»ΠΈ ΠΈΠ³Ρ€ΠΎΠΊΡƒ ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΠΉ Π΅Π³ΠΎ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΌ скрипт? Π£ ΠΈΠ³Ρ€ΠΎΠΊΠ° вСдь Π΅ΡΡ‚ΡŒ своя Π³ΠΎΠ»ΠΎΠ²Π° Π½Π° ΠΏΠ»Π΅Ρ‡Π°Ρ…, часто ΠΈ Π½Π΅ пустая! Π˜Π³Ρ€ΠΎΠΊ сам ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ, Π² этом ΠΈ Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ ΡΡƒΡ‚ΡŒ ΠΈΠ³Ρ€ΠΎΠ²ΠΎΠ³ΠΎ процСсса, Π·Π°Ρ‡Π΅ΠΌ для ΠΈΠ³Ρ€ΠΎΠΊΠ° ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ скрипт ΠΈ AI. Π’ ΠΏΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠ΅ΠΌ случаС для взаимодСйствия с AI Π΄Ρ€ΡƒΠ³ΠΈΡ… Π°ΠΊΡ‚Π΅Ρ€ΠΎΠ², Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€: Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ Π·Π΄ΠΎΡ€ΠΎΠ²ΡŒΡ ΠΈΠ³Ρ€ΠΎΠΊΠ°, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ Π½Π΅ Π·Π°Π»Π΅Π· ΠΊΡƒΠ΄Π° Π½Π΅ просят, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΡΡ‚ΡŒ прохоТдСния миссии ΠΈΠ³Ρ€ΠΎΠΊΠΎΠΌ (Ρ‡ΠΈΡ‚Ρ‹, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€), Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π·Π°Π²Π΅Ρ€ΡˆΠΈΡ‚ΡŒ миссию, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½Π° ΠΏΡ€ΠΎΠΉΠ΄Π΅Π½Π°. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, получаСтся, Ρ‡Ρ‚ΠΎ Ссли для Π΄Ρ€ΡƒΠ³ΠΈΡ… Π°ΠΊΡ‚Π΅Ρ€ΠΎΠ² скрипты ΠΈΠ³Ρ€Π°ΡŽΡ‚ Π² основном ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΡƒΡŽ Ρ€ΠΎΠ»ΡŒ, ΠΎΠ½ΠΈ Π΄ΡƒΠΌΠ°ΡŽΡ‚ ΠΈ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°ΡŽΡ‚ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π·Π° Π°ΠΊΡ‚Π΅Ρ€ΠΎΠ², Ρ‚ΠΎ Π² случаС с ΠΈΠ³Ρ€ΠΎΠΊΠΎΠΌ, скрипты большС ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹ Π½Π° ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ Π΅Π³ΠΎ повСдСния ΠΈ взаимодСйствия с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ Π°ΠΊΡ‚Π΅Ρ€Π°ΠΌΠΈ.

А Π΄ΡƒΠΌΠ°Ρ‚ΡŒ ΠΈ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΈΠ³Ρ€ΠΎΠΊΡƒ прСдлагаСтся самому.

Π˜Ρ‚Π°ΠΊ, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ скрипта.

Π‘ΠΊΡ€ΠΈΠΏΡ‚ (script), это сцСнарий, ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‰ΠΈΠΉ ΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‰ΠΈΠΉ Ρ€ΠΎΠ»ΡŒ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π°ΠΊΡ‚Π΅Ρ€Π°, Π΅Π³ΠΎ свойства, характСристики, ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΈ взаимодСйствиС с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ Π°ΠΊΡ‚Π΅Ρ€Π°ΠΌΠΈ.

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠΏΡ€ΠΎΡΠΈΡ‚ΡŒ, Π° ΠΊΠ°ΠΊ ΠΆΠ΅, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, скрипт Π±Π°Π½Π΄Ρ‹ ΠΈΠ· Alive mod? Π’Π΅Π΄ΡŒ Π½Π΅ ΠΎΠ΄ΠΈΠ½ Π°ΠΊΡ‚Π΅Ρ€ составляСт Π±Π°Π½Π΄Ρƒ? Π”Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ, Π² Π±Π°Π½Π΄Π΅ нСсколько Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ, Ρƒ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… свой скрипт ΠΈ свои Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒβ€¦ ВсС Π²Π΅Ρ€Π½ΠΎ, ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· Ρ‡Π»Π΅Π½ΠΎΠ² Π±Π°Π½Π΄Ρ‹ являСтся ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΌ Π°ΠΊΡ‚Π΅Ρ€ΠΎΠΌ ΠΈ ΠΈΠΌΠ΅Π΅Ρ‚ свой ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ скрипт, ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‰ΠΈΠΉ Π΅Π³ΠΎ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΈ свойства. НО, Π² Ρ‚ΠΎ ΠΆΠ΅ врСмя, вмСстС Ρ‡Π»Π΅Π½Ρ‹ Π±Π°Π½Π΄Ρ‹ ΡΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ Π½ΠΎΠ²Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ΠΈΠ»ΠΈ Π°ΠΊΡ‚Π΅Ρ€Π°, Ρ‡Ρ‚ΠΎ ΠΎΠ΄Π½ΠΎ ΠΈ Ρ‚ΠΎΠΆΠ΅. Если Π²Π°ΠΌ Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ это ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ, Ρ‚ΠΎ ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΊΠΈΡ€ΠΏΠΈΡ‡! ΠšΠΈΡ€ΠΏΠΈΡ‡ являСтся ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ относится ΠΊ классу Β«Π‘Ρ‚Ρ€ΠΎΠΉΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Ρ‹Β», ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… дСсятков ΠΈΠ»ΠΈ сотСн ΠΊΠΈΡ€ΠΏΠΈΡ‡Π΅ΠΉ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ стСну, которая Ρ‚ΠΎΠΆΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ ΡΠ²Π»ΡΡ‚ΡŒΡΡ ΠΎΠ΄Π½ΠΈΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ, нСсмотря Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ построСна ΠΈΠ· мноТСства Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², Ρ‚Π΅Ρ… самых ΠΊΠΈΡ€ΠΏΠΈΡ‡Π΅ΠΉ. А ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… стСн ΠΌΡ‹ построим Π΄ΠΎΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ‚ΠΎΠΆΠ΅ являСтся ΠΎΠ΄Π½ΠΈΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ, просто Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ, Π±ΠΎΠ»Π΅Π΅ ΠΊΡ€ΡƒΠΏΠ½ΠΎΠ³ΠΎ класса Β«Π”ΠΎΠΌΠ°Β», ΠΈ Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅, Π΄ΠΎ Ρ€Π°ΠΉΠΎΠ½Π° ΠΈ Π³ΠΎΡ€ΠΎΠ΄Π° Π² Ρ†Π΅Π»ΠΎΠΌ. Π’ Ρ‚ΠΎ ΠΆΠ΅ самоС врСмя наш малСнький ΠΊΠΈΡ€ΠΏΠΈΡ‡ Π½ΠΈΠΊΡƒΠ΄Π° Π½Π΅ дСлся, ΠΎΠ½ ΠΊΠ°ΠΊ Π±Ρ‹Π», Ρ‚Π°ΠΊ ΠΈ остался ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ.

Π’ΠΎΡ‡Π½ΠΎ Ρ‚Π°ΠΊ ΠΆΠ΅ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΡŽΡ‚ΡΡ ΠΈ скрипты, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ соотвСтствуСт ΠΎΠ΄ΠΈΠ½ скрипт, Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΡ‚ΡŒ Π² сСбС мноТСство Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ². Π’ΠΎΡ‚ ΠΈ получаСтся, Ρ‡Ρ‚ΠΎ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ‡Π»Π΅Π½ Π±Π°Π½Π΄Ρ‹ ΠΈΠΌΠ΅Π΅Ρ‚ свой ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ скрипт, Ρƒ Π±Π°Π½Π΄Ρ‹ свой скрипт, Π° Ρƒ миссии свой. Π‘Π»ΠΎΠΆΠ½ΠΎ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ? НичСго, Π² процСссС Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π±ΡƒΠ΄Π΅Ρ‚ понятнСС, я надСюсь. А ΠΏΠΎΠΊΠ° Π·Π°ΠΏΠΎΠΌΠ½ΠΈΠΌ, Ρ‡Ρ‚ΠΎ ΠΎΠ΄Π½ΠΈΠΌ Π°ΠΊΡ‚Π΅Ρ€ΠΎΠΌ ΠΌΠΎΠ³ΡƒΡ‚ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ нСсколько Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… скриптов, это зависит ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, ΠΊ ΠΊΠ°ΠΊΠΎΠΌΡƒ классу ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΎΠ½ относится, ΠΈ насколько слоТныС Ρ€ΠΎΠ»ΠΈ Π΅ΠΌΡƒ прСдстоит ΠΈΡΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Π² этих классах.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ скрипты Π² ΠΈΠ³Ρ€Π°Ρ…. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ скрипты Π² ΠΈΠ³Ρ€Π°Ρ…. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ скрипты Π² ΠΈΠ³Ρ€Π°Ρ…. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ скрипты Π² ΠΈΠ³Ρ€Π°Ρ…. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ скрипты Π² ΠΈΠ³Ρ€Π°Ρ…

БСрия ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π°:

Π­Ρ‚ΠΎΡ‚ ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚ являСтся Ρ‡Π°ΡΡ‚ΡŒΡŽ # ΠΈΠ· сСрии # статСй: 30 ΠΈΠ³Ρ€ΠΎΠ²Ρ‹Ρ… скриптов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Π½Π° языкС PHP

Π­Ρ‚ΠΎΡ‚ ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚ являСтся Ρ‡Π°ΡΡ‚ΡŒΡŽ сСрии: 30 ΠΈΠ³Ρ€ΠΎΠ²Ρ‹Ρ… скриптов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Π½Π° языкС PHP

Π‘Π»Π΅Π΄ΠΈΡ‚Π΅ Π·Π° Π²Ρ‹Ρ…ΠΎΠ΄ΠΎΠΌ Π½ΠΎΠ²Ρ‹Ρ… статСй этой сСрии.

Начало Ρ€Π°Π±ΠΎΡ‚Ρ‹

Π’ качСствС гСйммастСра/Π²Π΅Π΄ΡƒΡ‰Π΅Π³ΠΎ ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° ΠΈΠ³Ρ€ ΠΌΠ½Π΅ часто приходится ΠΏΠΈΡΠ°Ρ‚ΡŒ нСбольшиС ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ ΠΈ скрипты, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‚ ΠΌΠ½Π΅ ΠΏΡ€ΠΈ руководствС ΠΈΠ³Ρ€Π°ΠΌΠΈ, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΈ ΠΏΠ»Π°Π½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ ΠΈΠ³Ρ€ ΠΈ ΠΏΡ€ΠΈ нСпосрСдствСнном участии Π² Π½ΠΈΡ…. Иногда ΠΌΠ½Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠ° быстрая подсказка. Π’ Π΄Ρ€ΡƒΠ³ΠΎΠΉ Ρ€Π°Π· ΠΌΠ½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚ΡŒΡΡ большоС количСство ΠΈΠΌΠ΅Π½ для NPC-пСрсонаТСй (Non-Player Character – пСрсонаТ, Π½Π΅ управляСмый ΠΈΠ³Ρ€ΠΎΠΊΠΎΠΌ). ВрСмя ΠΎΡ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΌΠ½Π΅ приходится Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с числами, ΠΏΠΎΠ΄ΡΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡˆΠ°Π½ΡΡ‹ ΠΈΠ»ΠΈ ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π² ΠΈΠ³Ρ€Ρƒ Ρ‚Π΅ ΠΈΠ»ΠΈ ΠΈΠ½Ρ‹Π΅ Π³ΠΎΠ»ΠΎΠ²ΠΎΠ»ΠΎΠΌΠΊΠΈ. РСализация ΠΌΠ½ΠΎΠ³ΠΈΡ… ΠΈΠ· этих Π·Π°Π΄Π°Ρ‡ сущСствСнно упрощаСтся, Ссли Π·Π°Π±Π»Π°Π³ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠΈΡ‚ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ усилия ΠΊ написанию ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ скрипта.

Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ анализируСтся 10 Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹Ρ… скриптов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ Π² ΠΈΠ³Ρ€Π°Ρ… Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ°. ΠŸΡ€ΠΈΠ»Π°Π³Π°Π΅ΠΌΡ‹ΠΉ ΠΊ Π΄Π°Π½Π½ΠΎΠΉ ΡΡ‚Π°Ρ‚ΡŒΠ΅ Π°Ρ€Ρ…ΠΈΠ² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° (Π΄Π°Π»Π΅Π΅ – Архив) содСрТит ΠΏΠΎΠ»Π½Ρ‹ΠΉ исходный тСкст для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ описываСмого Π² Π½Π΅ΠΉ скрипта. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ всС эти скрипты Β«Π² дСйствии» Π½Π° Web-сайтС: chaoticneutral.

ΠœΡ‹ «пробСТимся» ΠΏΠΎ этим скриптам достаточно быстро. Π’Π°ΠΊΠΈΠ΅ Ρ‚Π΅ΠΌΡ‹ ΠΊΠ°ΠΊ поиск хостинга ΠΈΠ»ΠΈ настройка сСрвСра Π² Π΄Π°Π½Π½ΠΎΠΉ ΡΡ‚Π°Ρ‚ΡŒΠ΅ Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒΡΡ Π½Π΅ Π±ΡƒΠ΄ΡƒΡ‚. БСгодня сущСствуСт мноТСство Web-хостов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°ΡŽΡ‚ PHP-дистрибутивы; Π² частности, инсталлятор XAMPP ΡƒΠ΄ΠΎΠ±Π΅Π½ Π² Ρ‚ΠΎΠΌ случаС, Ссли Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΡΡ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ свою ΡΠΎΠ±ΡΡ‚Π²Π΅Π½Π½ΡƒΡŽ срСду. ΠœΡ‹ Π½Π΅ Π±ΡƒΠ΄Π΅ΠΌ Ρ‚Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π½Π° Ρ€Π°Π·Π³ΠΎΠ²ΠΎΡ€Ρ‹ ΠΎ Π½Π°ΠΈΠ»ΡƒΡ‡ΡˆΠΈΡ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈΠΊΠ°Ρ… PHP-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈΠ»ΠΈ ΠΎ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ°Ρ… проСктирования ΠΈΠ³Ρ€. ΠŸΡ€ΠΈ создании рассматриваСмых скриптов ΠΊ Π½ΠΈΠΌ ΠΏΡ€Π΅Π΄ΡŠΡΠ²Π»ΡΠ»ΠΈΡΡŒ нСсколько ΠΈΠ½Ρ‹Π΅ трСбования – эти скрипты Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Π»ΠΈ Π±Ρ‹Ρ‚ΡŒ простыми для понимания, Π»Π΅Π³ΠΊΠΈΠΌΠΈ Π² использовании ΠΈ быстрыми Π² усвоСнии.

Π‘Π°Π·ΠΎΠ²Ρ‹ΠΉ Β«ΠΊΠΈΠ΄Π°Ρ‚Π΅Π»ΡŒ ΠΊΡƒΠ±ΠΈΠΊΠ°Β» (die roller)

Листинг 1. ИспользованиС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ с Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠΌ случайных чисСл mt_rand()

Π”Π°Π»Π΅Π΅, Ρ‚ΠΈΠΏ ΠΊΡƒΠ±ΠΈΠΊΠ°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΡ‹ собираСмся ΠΊΠΈΠ½ΡƒΡ‚ΡŒ, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ Π² эту Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Π² Π²ΠΈΠ΄Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° (листинг 2).

Листинг 2. ΠŸΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° Ρ‚ΠΈΠΏΠ° ΠΊΡƒΠ±ΠΈΠΊΠ° ΠΊΠ°ΠΊ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°

Π’Π΅ΠΏΠ΅Ρ€ΡŒ, Π² зависимости ΠΎΡ‚ Π½Π°ΡˆΠΈΡ… потрСбностСй, ΠΌΡ‹ смоТСм Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ бросаниС Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΊΡƒΠ±ΠΈΠΊΠΎΠ² ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ (возвращая массив Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ²) ΠΈΠ»ΠΈ ΠΆΠ΅ бросаниС Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΊΡƒΠ±ΠΈΠΊΠΎΠ² Ρ€Π°Π·Π½ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ°. Для Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡ ΠΌΡ‹ смоТСм Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ нашим простым скриптом.

Π“Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€ случайных ΠΈΠΌΠ΅Π½

Если Π²Π°ΠΌ приходится Ρ€ΡƒΠΊΠΎΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΈΠ³Ρ€Π°ΠΌΠΈ, ΡΠΎΡ‡ΠΈΠ½ΡΡ‚ΡŒ ΡΡŽΠΆΠ΅Ρ‚Ρ‹ ΠΈΠ»ΠΈ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Π³Ρ€ΡƒΠΏΠΏΡƒ пСрсонаТСй, Ρ‚ΠΎ ΠΈΠ½ΠΎΠ³Π΄Π° Ρƒ вас ΠΌΠΎΠ³ΡƒΡ‚ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Ρ‚ΡŒ трудности с ΠΏΡ€ΠΈΠ΄ΡƒΠΌΡ‹Π²Π°Π½ΠΈΠ΅ΠΌ Π½ΠΎΠ²Ρ‹Ρ… ΠΈΠΌΠ΅Π½. Рассмотрим простой Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€ случайных ΠΈΠΌΠ΅Π½, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Ρ‹ смоТСтС ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ этой Π·Π°Π΄Π°Ρ‡ΠΈ. Для Π½Π°Ρ‡Π°Π»Π° создадим Π΄Π²Π° простых массива β€” ΠΎΠ΄ΠΈΠ½ с ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ, Π΄Ρ€ΡƒΠ³ΠΎΠΉ с фамилиями (листинг 3).

Листинг 3. Π”Π²Π° простых массива с ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ ΠΈ с фамилиями
Листинг 4. ΠŸΠ΅Ρ€Π΅ΠΌΠ΅ΡˆΠΈΠ²Π°Π½ΠΈΠ΅ массивов ΠΈΠΌΠ΅Π½ ΠΈ Ρ„Π°ΠΌΠΈΠ»ΠΈΠΉ

ΠŸΡ€ΠΈΠ½ΡΠ² эту Π±Π°Π·ΠΎΠ²ΡƒΡŽ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΡŽ, ΠΌΡ‹ смоТСм ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ тСкстовыС Ρ„Π°ΠΉΠ»Ρ‹ для хранСния Π½Π°ΡˆΠΈΡ… ΠΈΠΌΠ΅Π½ ΠΈ Ρ„Π°ΠΌΠΈΠ»ΠΈΠΉ. Если Π² ΠΊΠ°ΠΆΠ΄ΡƒΡŽ строку своСго тСкстового Ρ„Π°ΠΉΠ»Π° ΠΌΡ‹ ΠΏΠΎΠΌΠ΅Ρ‰Π°Π΅ΠΌ ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΌΡƒ ΠΈΠΌΠ΅Π½ΠΈ (Ρ„Π°ΠΌΠΈΠ»ΠΈΠΈ), Ρ‚ΠΎ ΠΌΡ‹ смоТСм Π»Π΅Π³ΠΊΠΎ ΡΠ΅ΠΊΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ содСрТимоС этого Ρ„Π°ΠΉΠ»Π° с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ символов Β«Ρ€Π°Π·Ρ€Ρ‹Π² строки» с Ρ†Π΅Π»ΡŒΡŽ ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ построСния Π½Π°ΡˆΠΈΡ… исходных массивов (листинг 5).

Листинг 5. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ тСкстовых Ρ„Π°ΠΉΠ»ΠΎΠ² для ΠΈΠΌΠ΅Π½ ΠΈ Ρ„Π°ΠΌΠΈΠ»ΠΈΠΉ

Π‘ΠΎΠ·Π΄Π°ΠΉΡ‚Π΅ ΠΈΠ»ΠΈ Π½Π°ΠΉΠ΄ΠΈΡ‚Π΅ Ρ„Π°ΠΉΠ»Ρ‹ с Π½Π°Π±ΠΎΡ€ΠΎΠΌ подходящих ΠΈΠΌΠ΅Π½/Ρ„Π°ΠΌΠΈΠ»ΠΈΠΉ (Π΄Π²Π° Ρ‚Π°ΠΊΠΈΡ… Ρ„Π°ΠΉΠ»Π° Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ Π² Архив), послС Ρ‡Π΅Π³ΠΎ всС ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ с ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ Π±ΡƒΠ΄ΡƒΡ‚ Ρ€Π΅ΡˆΠ΅Π½Ρ‹.

Π“Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€ сцСнариСв

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Ρ‚Π΅ ΠΆΠ΅ Π±Π°Π·ΠΎΠ²Ρ‹Π΅ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡ‹, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… построСн Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€ ΠΈΠΌΠ΅Π½, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹ΠΉ Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€ сцСнариСв. Π’Π°ΠΊΠΎΠΉ Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€ ΠΏΠΎΠ»Π΅Π·Π΅Π½ Π² Ρ€ΠΎΠ»Π΅Π²Ρ‹Ρ… ΠΈΠ³Ρ€Π°Ρ… ΠΈ Π² Π΄Ρ€ΡƒΠ³ΠΈΡ… ситуациях, Π³Π΄Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡ€ΠΈΠ΄ΡƒΠΌΠ°Ρ‚ΡŒ псСвдослучайный Π½Π°Π±ΠΎΡ€ ΠΎΠ±ΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΡΡ‚Π², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для разыгрывания Ρ€ΠΎΠ»Π΅ΠΉ, ΠΈΠΌΠΏΡ€ΠΎΠ²ΠΈΠ·Π°Ρ†ΠΈΠΈ, написания ΡΡŽΠΆΠ΅Ρ‚Π° ΠΈ Ρ‚.Π΄. Одна ΠΈΠ· ΠΌΠΎΠΈΡ… Π»ΡŽΠ±ΠΈΠΌΡ‹Ρ… ΠΈΠ³Ρ€, Paranoia, сопровоТдаСтся ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠΌ GM Pack, Π² состав ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π²Ρ…ΠΎΠ΄ΠΈΡ‚ инструмСнт Mission Blender. Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚ Mission Blender позволяСт быстро ΡΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΠ»Π½ΡƒΡŽ миссию ΠΏΠΎ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°ΠΌ «кидания ΠΊΡƒΠ±ΠΈΠΊΠ°Β». Π”Π°Π²Π°ΠΉΡ‚Π΅ создадим свой собствСнный Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€ сцСнариСв.

Π’ΠΎΡ‡Π½ΠΎ Ρ‚Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΌΡ‹ создавали тСкстовыС Ρ„Π°ΠΉΠ»Ρ‹ для Π½Π°ΡˆΠΈΡ… ΠΈΠΌΠ΅Π½ ΠΈ Ρ„Π°ΠΌΠΈΠ»ΠΈΠΉ, Π½Π°Ρ‡Π½ΠΈΡ‚Π΅ с создания ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ тСкстового Ρ„Π°ΠΉΠ»Π° для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ аспСкта – исходного полоТСния, Ρ†Π΅Π»ΠΈ, ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΈΠΊΠΎΠ² ΠΈ ослоТнСний. Π‘ΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ эталонныС Ρ„Π°ΠΉΠ»Ρ‹ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ Π² Архив. ПослС Ρ‚ΠΎΠ³ΠΎ ΠΊΠ°ΠΊ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ Ρ€Π°ΡΠΏΠΎΠ»Π°Π³Π°Ρ‚ΡŒ этими Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ, ΠΊΠΎΠ΄ для Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ сцСнария Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ ΠΏΠΎΡ‡Ρ‚ΠΈ Ρ‚Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΊΠΎΠ΄ для Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ ΠΈΠΌΠ΅Π½/Ρ„Π°ΠΌΠΈΠ»ΠΈΠΉ (листинг 6).

Листинг 6. ГСнСрация сцСнария

ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π²Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Π² наши сцСнарии Π½ΠΎΠ²Ρ‹Π΅ элСмСнты посрСдством добавлСния Π½ΠΎΠ²Ρ‹Ρ… тСкстовых Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΈΠ»ΠΈ Π²Π²ΠΎΠ΄ΠΈΡ‚ΡŒ многочислСнныС ослоТнСния. Π§Π΅ΠΌ большС ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² ΠΌΡ‹ добавляСм ΠΊ своим Π±Π°Π·ΠΎΠ²Ρ‹ΠΌ тСкстовым Ρ„Π°ΠΉΠ»Π°ΠΌ, Ρ‚Π΅ΠΌ Π±ΠΎΠ»Π΅Π΅ Ρ€Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ Π±ΡƒΠ΄ΡƒΡ‚ ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒΡΡ наши сцСнарии с Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ΠΌ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ.

ΠŸΠΎΡΡ‚Ρ€ΠΎΠΈΡ‚Π΅Π»ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΎΡ‡Π½ΠΎΠΉ ΠΊΠΎΠ»ΠΎΠ΄Ρ‹ ΠΈ Ρ‚Π°ΡΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΎΡ‡Π½ΠΎΠΉ ΠΊΠΎΠ»ΠΎΠ΄Ρ‹

Если Π²Ρ‹ ΠΈΠ³Ρ€Π°Π΅Ρ‚Π΅ Π² ΠΊΠ°Ρ€Ρ‚ΠΎΡ‡Π½Ρ‹Π΅ ΠΈΠ³Ρ€Ρ‹ ΠΈ ΠΈΠ½Ρ‚Π΅Ρ€Π΅ΡΡƒΠ΅Ρ‚Π΅ΡΡŒ созданиСм ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… скриптов, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ Β«ΠΏΠΎΡΡ‚Ρ€ΠΎΠΈΡ‚Π΅Π»ΡŒΒ» ΠΊΠ°Ρ€Ρ‚ΠΎΡ‡Π½ΠΎΠΉ ΠΊΠΎΠ»ΠΎΠ΄Ρ‹ со встроСнным «тасоватСлСм» этой ΠΊΠΎΠ»ΠΎΠ΄Ρ‹. Для Π½Π°Ρ‡Π°Π»Π° построим Π±Π°Π·ΠΎΠ²ΡƒΡŽ ΠΊΠΎΠ»ΠΎΠ΄Ρƒ ΠΈΠ· стандартных ΠΈΠ³Ρ€Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΊΠ°Ρ€Ρ‚. ΠœΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π΄Π²Π° массива, ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для хранСния мастСй, Π° Π²Ρ‚ΠΎΡ€ΠΎΠΉ – для хранСния достоинств ΠΊΠ°Ρ€Ρ‚. Π­Ρ‚ΠΎ обСспСчит Π½Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡƒΡŽ Π³ΠΈΠ±ΠΊΠΎΡΡ‚ΡŒ впослСдствии, Ссли ΠΌΡ‹ Π·Π°Ρ…ΠΎΡ‚ΠΈΠΌ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ масти ΠΈΠ»ΠΈ Ρ‚ΠΈΠΏΡ‹ ΠΊΠ°Ρ€Ρ‚ (листинг 7).

Листинг 7. ΠŸΠΎΡΡ‚Ρ€ΠΎΠ΅Π½ΠΈΠ΅ Π±Π°Π·ΠΎΠ²ΠΎΠΉ ΠΊΠ°Ρ€Ρ‚ΠΎΡ‡Π½ΠΎΠΉ ΠΊΠΎΠ»ΠΎΠ΄Ρ‹

Π’Π΅ΠΏΠ΅Ρ€ΡŒ построим массив, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ всС ΠΊΠ°Ρ€Ρ‚Ρ‹ ΠΊΠΎΠ»ΠΎΠ΄Ρ‹. ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ это достаточно просто – с использованиСм Π΄Π²ΡƒΡ… Ρ†ΠΈΠΊΠ»ΠΎΠ² foreach foreach (листинг 8).

Листинг 8. ΠŸΠΎΡΡ‚Ρ€ΠΎΠ΅Π½ΠΈΠ΅ массива ΠΊΠ°Ρ€Ρ‚ΠΎΡ‡Π½ΠΎΠΉ ΠΊΠΎΠ»ΠΎΠ΄Ρ‹

ПослС Ρ‚ΠΎΠ³ΠΎ ΠΊΠ°ΠΊ ΠΌΡ‹ построили массив ΠΊΠ°Ρ€Ρ‚ΠΎΡ‡Π½ΠΎΠΉ ΠΊΠΎΠ»ΠΎΠ΄Ρ‹, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π»Π΅Π³ΠΊΠΎ ΠΏΠ΅Ρ€Π΅Ρ‚Π°ΡΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ»ΠΎΠ΄Ρƒ ΠΈ Π²Ρ‹Ρ‚ΡΠ½ΡƒΡ‚ΡŒ ΠΊΠ°Ρ€Ρ‚Ρƒ случайным ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ (листинг 9).

Листинг 9. ΠŸΠ΅Ρ€Π΅ΠΌΠ΅ΡˆΠΈΠ²Π°Π½ΠΈΠ΅ ΠΊΠ°Ρ€Ρ‚ΠΎΡ‡Π½ΠΎΠΉ ΠΊΠΎΠ»ΠΎΠ΄Ρ‹ ΠΈ вытаскиваниС случайной ΠΊΠ°Ρ€Ρ‚Ρ‹

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ с Π»Π΅Π³ΠΊΠΎΡΡ‚ΡŒΡŽ ΡΠΎΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ Π½Π°Π±ΠΎΡ€Ρ‹ ΠΈΠ· Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ количСства ΠΊΠ°Ρ€Ρ‚ ΠΈΠ»ΠΈ ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡ‚Ρ‹ ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΊΠ°Ρ€Ρ‚ΠΎΡ‡Π½Ρ‹Ρ… ΠΊΠΎΠ»ΠΎΠ΄.

ΠšΠ°Π»ΡŒΠΊΡƒΠ»ΡΡ‚ΠΎΡ€ шансов: вытягиваниС ΠΊΠ°Ρ€Ρ‚Ρ‹

ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΌΡ‹ построили ΠΊΠ°Ρ€Ρ‚ΠΎΡ‡Π½ΡƒΡŽ ΠΊΠΎΠ»ΠΎΠ΄Ρƒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ (Π° ΠΈΠΌΠ΅Π½Π½ΠΎ, с Ρ€Π°Π·Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΌ отслСТиваниСм достоинства ΠΈ масти для ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΊΠ°Ρ€Ρ‚Ρ‹), Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΌ способом ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ эту ΠΊΠΎΠ»ΠΎΠ΄Ρƒ для выполнСния Ρ‚Π΅Ρ… ΠΈΠ»ΠΈ ΠΈΠ½Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, для вычислСния шансов получСния ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ ΠΊΠ°Ρ€Ρ‚Ρ‹. НачнСм с комплСктования Π΄Π²ΡƒΡ… Ρ€ΡƒΠΊ ΠΏΠΎ пяти ΠΊΠ°Ρ€Ρ‚ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΉ (листинг 10).

Листинг 10. ΠšΠΎΠΌΠΏΠ»Π΅ΠΊΡ‚ΠΎΠ²Π°Π½ΠΈΠ΅ Π΄Π²ΡƒΡ… Ρ€ΡƒΠΊ ΠΏΠΎ пяти ΠΊΠ°Ρ€Ρ‚ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΉ
Листинг 11. ВычислСниС шансов Π½Π° вытягиваниС ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ ΠΊΠ°Ρ€Ρ‚Ρ‹

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

Листинг 12. Поиск ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ ΠΊΠ°Ρ€Ρ‚Ρ‹

ΠœΡ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΊΠ°Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚Ρƒ с ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌ достоинством ΠΈΠ»ΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ масти (листинг 13).

Листинг 13. Поиск ΠΊΠ°Ρ€Ρ‚Ρ‹ с ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌ достоинством ΠΈΠ»ΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ масти

ΠŸΡ€ΠΎΡΡ‚ΠΎΠΉ Π΄ΠΈΠ»Π΅Ρ€ для ΠΈΠ³Ρ€Ρ‹ Π² ΠΏΠΎΠΊΠ΅Ρ€

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

Π‘Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠΉΡ‚Π΅ ΠΈ пСрСтасуйтС ΠΊΠ°Ρ€Ρ‚ΠΎΡ‡Π½ΡƒΡŽ ΠΊΠΎΠ»ΠΎΠ΄Ρƒ (ΠΊΠ°ΠΊ Π±Ρ‹Π»ΠΎ описано Π² ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΌ Ρ€Π°Π·Π΄Π΅Π»Π΅), послС Ρ‡Π΅Π³ΠΎ сформируйтС ΠΎΠ΄Π½Ρƒ Ρ€ΡƒΠΊΡƒ ΠΈΠ· пяти ΠΊΠ°Ρ€Ρ‚. ΠžΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚Π΅ эти ΠΊΠ°Ρ€Ρ‚Ρ‹ ΠΏΠΎ ΠΈΡ… индСксу Π² массивС Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ, ΠΊΠ°ΠΊΠΈΠ΅ ΠΊΠ°Ρ€Ρ‚Ρ‹ трСбуСтся Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ. Для указания Π½Π° замСняСмыС ΠΊΠ°Ρ€Ρ‚Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ„Π»Π°ΠΆΠΊΠΈ (checkbox) (листинг 14).

Листинг 14. ИспользованиС Ρ„Π»Π°ΠΆΠΊΠΎΠ² (checkbox) для указания Π½Π° замСняСмыС ΠΊΠ°Ρ€Ρ‚Ρ‹
Листинг 15. ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ Π²Ρ…ΠΎΠ΄Π½ΠΎΠ³ΠΎ массива

Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ этого скрипта Π²Ρ‹ смоТСтС Β«Π½Π°Π±ΠΈΡ‚ΡŒ Ρ€ΡƒΠΊΡƒΒ» β€” намСрСнная ΠΈΠ³Ρ€Π° слов β€” Π½Π° ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹Π΅ дСйствия ΠΏΡ€ΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… комбинациях ΠΊΠ°Ρ€Ρ‚.

Π˜Π³Ρ€Π° «ВисСлица»

Π˜Π³Ρ€Π° «ВисСлица» (ΠΈΠ»ΠΈ Β«ΠŸΠ°Π»Π°Ρ‡Β») – это, ΠΏΠΎ сущСству, ΠΈΠ³Ρ€Π° Π² ΠΎΡ‚Π³Π°Π΄Ρ‹Π²Π°Π½ΠΈΠ΅ слов. Π’Π΅Π΄ΡƒΡ‰ΠΈΠΉ (Β«ΠΏΠ°Π»Π°Ρ‡Β») Π·Π°Π΄ΡƒΠΌΡ‹Π²Π°Π΅Ρ‚ слово ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ Π΄Π»ΠΈΠ½Ρ‹, Π° ΠΈΠ³Ρ€ΠΎΠΊ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΎΡ‚Π³Π°Π΄Π°Ρ‚ΡŒ это слово, ΠΏΠΎΠΎΡ‡Π΅Ρ€Π΅Π΄Π½ΠΎ прСдлагая ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΉ Π±ΡƒΠΊΠ²Π΅ (ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½ΠΎΠ΅ число Ρ€Π°Π·). Если ΠΈΠ³Ρ€ΠΎΠΊ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠΈΠ» Π±ΡƒΠΊΠ²Ρƒ, которая встрСчаСтся Π² Π·Π°Π³Π°Π΄Π°Π½Π½ΠΎΠΌ словС, Ρ‚ΠΎ Π²Π΅Π΄ΡƒΡ‰ΠΈΠΉ заполняСт всС мСстополоТСния этой Π±ΡƒΠΊΠ²Ρ‹. ПослС Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ количСства Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹Ρ… Π΄ΠΎΠ³Π°Π΄ΠΎΠΊ (ΠΊΠ°ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, ΡˆΠ΅ΡΡ‚ΠΈ), ΠΈΠ³Ρ€ΠΎΠΊ ΠΏΡ€ΠΎΠΈΠ³Ρ€Ρ‹Π²Π°Π΅Ρ‚. Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²Π°Ρ‚ΡŒ шаблон для ΠΈΠ³Ρ€Ρ‹ Π² «ВисСлицу», ΠΌΡ‹ сначала Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ список слов. Π‘Π΄Π΅Π»Π°Π΅ΠΌ этот список Π΅Π³ΠΎ Π² Π²ΠΈΠ΄Π΅ простого массива (листинг 16).

Листинг 16. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ списка слов

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ описанныС Π²Ρ‹ΡˆΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ эти слова Π²ΠΎ внСшний тСкстовый Ρ„Π°ΠΉΠ» со списком слов, Π° Π·Π°Ρ‚Π΅ΠΌ ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΡ…, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ΠΈ Π½Π°ΠΌ понадобится.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ, ΠΊΠΎΠ³Π΄Π° Ρƒ нас Π΅ΡΡ‚ΡŒ список слов, ΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΠΎΠ΄Π½ΠΎ ΠΈΠ· Π½ΠΈΡ… ΠΏΠΎ случайному Π·Π°ΠΊΠΎΠ½Ρƒ, ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ΡŒ ΠΏΡƒΡΡ‚ΡƒΡŽ ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ для ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π±ΡƒΠΊΠ²Ρ‹ этого слова ΠΈ ΠΏΡ€ΠΈΡΡ‚ΡƒΠΏΠΈΡ‚ΡŒ ΠΊ ΠΏΡ€ΠΈΠ΅ΠΌΡƒ Π΄ΠΎΠ³Π°Π΄ΠΎΠΊ. На всСм протяТСнии ΠΈΠ³Ρ€Ρ‹ ΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΎΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹Π΅ ΠΈ Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹Π΅ Π΄ΠΎΠ³Π°Π΄ΠΊΠΈ. ΠœΡ‹ Ρ€Π΅ΡˆΠΈΠΌ эту Π·Π°Π΄Π°Ρ‡Ρƒ максимально просто – посрСдством сСриализации массивов Π΄ΠΎΠ³Π°Π΄ΠΎΠΊ ΠΈ продвиТСния ΠΈΡ… вмСстС с ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΎΡ‡Π΅Ρ€Π΅Π΄Π½ΠΎΠΉ Π΄ΠΎΠ³Π°Π΄ΠΊΠΎΠΉ. Если Π±Ρ‹ ΠΌΡ‹ Π·Π°Ρ…ΠΎΡ‚Π΅Π»ΠΈ Π²ΠΎΡΠΏΡ€Π΅ΠΏΡΡ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠΎΡˆΠ΅Π½Π½ΠΈΡ‡Π΅ΡΡ‚Π²Ρƒ посрСдством просмотра исходного тСкста страницы, Ρ‚ΠΎ Π½Π°ΠΌ слСдовало Π±Ρ‹ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π½Π΅Ρ‡Ρ‚ΠΎ Π±ΠΎΠ»Π΅Π΅ Π·Π°Ρ‰ΠΈΡ‰Π΅Π½Π½ΠΎΠ΅.

Π‘ΠΎΠ·Π΄Π°ΠΉΡ‚Π΅ массив для хранСния Π±ΡƒΠΊΠ² ΠΈ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹Ρ…/Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹Ρ… Π΄ΠΎΠ³Π°Π΄ΠΎΠΊ. Для ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹Ρ… Π΄ΠΎΠ³Π°Π΄ΠΎΠΊ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ Π·Π°ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ массив Π±ΡƒΠΊΠ²Π°ΠΌΠΈ Π² качСствС ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ² ΠΈ Ρ‚ΠΎΡ‡ΠΊΠ°ΠΌΠΈ Π² качСствС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ (листинг 17).

Листинг 17. ΠŸΠΎΡΡ‚Ρ€ΠΎΠ΅Π½ΠΈΠ΅ массивов для хранСния Π±ΡƒΠΊΠ² ΠΈ Π΄ΠΎΠ³Π°Π΄ΠΎΠΊ

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ нСбольшой Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° для ΠΎΡ†Π΅Π½ΠΊΠΈ Π΄ΠΎΠ³Π°Π΄ΠΎΠΊ ΠΈ дСмонстрации слова ΠΏΠΎ Ρ…ΠΎΠ΄Ρƒ ΠΈΠ³Ρ€Ρ‹ (листинг 18).

Листинг 18. ΠžΡ†Π΅Π½ΠΊΠ° Π΄ΠΎΠ³Π°Π΄ΠΎΠΊ ΠΈ дСмонстрация Ρ…ΠΎΠ΄Π° ΠΈΠ³Ρ€Ρ‹

Π’ АрхивС дСмонстрируСтся сСриализация массивов Π΄ΠΎΠ³Π°Π΄ΠΎΠΊ ΠΈ ΠΈΡ… ΠΏΡ€ΠΎΠ΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ ΠΎΡ‚ Π΄ΠΎΠ³Π°Π΄ΠΊΠΈ ΠΊ Π΄ΠΎΠ³Π°Π΄ΠΊΠ΅.

ΠŸΠΎΠΌΠΎΡ‰Π½ΠΈΠΊ для разгадывания кроссвордов

Листинг 19. ΠŸΡ€ΠΎΡ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΏΠΎ списку слов

ΠŸΡ€ΠΈ условии достаточно высокого качСства нашСго списка слов ΠΈ достаточной точности Π½Π°ΡˆΠΈΡ… Π΄ΠΎΠ³Π°Π΄ΠΎΠΊ ΠΌΡ‹ смоТСм ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΏΡ€ΠΈΠ΅ΠΌΠ»Π΅ΠΌΡ‹ΠΉ список слов для ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Π΅ совпадСния. ПослС этого Π²Π°ΠΌ останСтся Ρ€Π΅ΡˆΠΈΡ‚ΡŒ, ΠΊΠ°ΠΊΠΎΠ΅ ΠΈΠ· слов – Β«chestΒ» (грудная ΠΊΠ»Π΅Ρ‚ΠΊΠ°) ΠΈ Β«cheatΒ» (ΠΆΡƒΠ»ΡŒΠ½ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ) – Π»ΡƒΡ‡ΡˆΠ΅ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ Π½Π° Ρ€ΠΎΠ»ΡŒ слова ΠΈΠ· пяти Π±ΡƒΠΊΠ², ΠΎΠ·Π½Π°Ρ‡Π°ΡŽΡ‰Π΅Π³ΠΎ Β«Π½Π°Ρ€ΡƒΡˆΠ΅Π½ΠΈΠ΅ ΠΏΡ€Π°Π²ΠΈΠ» ΠΈΠ³Ρ€Ρ‹Β».

ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ для ΠΈΠ³Ρ€Ρ‹ Mad Libs

Mad Libs – это ΠΈΠ³Ρ€Π° Π² слова, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΈΠ³Ρ€ΠΎΠΊ Π±Π΅Ρ€Π΅Ρ‚ ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΈΠΉ рассказ ΠΈ замСняСт ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹ слов Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ словами Ρ‚ΠΎΠ³ΠΎ ΠΆΠ΅ Ρ‚ΠΈΠΏΠ°, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π½ΠΎΠ²ΡƒΡŽ, Π±ΠΎΠ»Π΅Π΅ Π³Π»ΡƒΠΏΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ Ρ‚ΠΎΠΉ ΠΆΠ΅ истории. Π’ΠΎΠ·ΡŒΠΌΠ΅ΠΌ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ тСкст: Β«I was walking in the park when I found a lake (Π― шСл ΠΏΠΎ ΠΏΠ°Ρ€ΠΊΡƒ ΠΈ нашСл ΠΎΠ·Π΅Ρ€ΠΎ). I jumped in and swallowed too much water (Π― Π½Ρ‹Ρ€Π½ΡƒΠ» Π² ΠΎΠ·Π΅Ρ€ΠΎ ΠΈ ΠΏΡ€ΠΎΠ³Π»ΠΎΡ‚ΠΈΠ» слишком ΠΌΠ½ΠΎΠ³ΠΎ Π²ΠΎΠ΄Ρ‹). I had to go to the hospital (МнС ΠΏΡ€ΠΈΡˆΠ»ΠΎΡΡŒ ΠΏΠΎΠΉΡ‚ΠΈ Π² Π±ΠΎΠ»ΡŒΠ½ΠΈΡ†Ρƒ)Β». НачнитС Π·Π°ΠΌΠ΅Π½ΡΡ‚ΡŒ Ρ‚ΠΈΠΏΡ‹ слов Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ Ρ‚ΠΎΠΊΠ΅Π½Π°ΠΌΠΈ. НачинайтС ΠΈ Π·Π°Π²Π΅Ρ€ΡˆΠ°ΠΉΡ‚Π΅ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ‚ΠΎΠΊΠ΅Π½ ΠΏΠΎΠ΄Ρ‡Π΅Ρ€ΠΊΠΈΠ²Π°Π½ΠΈΠ΅ΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ случайныС совпадСния строк (листинг 20).

Листинг 20. Π—Π°ΠΌΠ΅Π½Π° Ρ‚ΠΈΠΏΠΎΠ² слов символами слов

ПослС этого создайтС нСсколько списков Π±Π°Π·ΠΎΠ²Ρ‹Ρ… слов. Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ Π½Π΅ Π±ΡƒΠ΄Π΅ΠΌ Π΄Π°Π²Π°Ρ‚ΡŒ Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ волю своСй Ρ„Π°Π½Ρ‚Π°Π·ΠΈΠΈ (листинг 21).

Листинг 21. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… списков Π±Π°Π·ΠΎΠ²Ρ‹Ρ… слов

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΌΠ½ΠΎΠ³ΠΎΠΊΡ€Π°Ρ‚Π½ΠΎ ΠΎΡ†Π΅Π½ΠΈΠ²Π°Ρ‚ΡŒ тСкст Π½Π° ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΠΉ Π·Π°ΠΌΠ΅Π½Ρ‹ Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ² ΠΏΠΎ ΠΌΠ΅Ρ€Π΅ нСобходимости (листинг 22).

Листинг 22. ΠžΡ†Π΅Π½ΠΊΠ° тСкста

Π’ΠΏΠΎΠ»Π½Π΅ ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎ, Ρ‡Ρ‚ΠΎ это простой ΠΈ достаточно сырой ΠΏΡ€ΠΈΠΌΠ΅Ρ€. Π§Π΅ΠΌ Ρ‚ΠΎΡ‡Π½Π΅Π΅ Π±ΡƒΠ΄ΡƒΡ‚ наши списки слов ΠΈ Ρ‡Π΅ΠΌ большС Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΌΡ‹ ΠΏΠΎΡ‚Ρ€Π°Ρ‚ΠΈΠΌ Π½Π° созданиС нашСго Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ тСкста, Ρ‚Π΅ΠΌ Π»ΡƒΡ‡ΡˆΠ΅ Π±ΡƒΠ΄ΡƒΡ‚ наши Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹. ΠœΡ‹ ΡƒΠΆΠ΅ использовали тСкстовыС Ρ„Π°ΠΉΠ»Ρ‹ для создания списков ΠΈΠΌΠ΅Π½ ΠΈ списков Π±Π°Π·ΠΎΠ²Ρ‹Ρ… слов. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Ρ‚ΠΎΡ‚ ΠΆΠ΅ самый ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏ, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ списки слов, Ρ€Π°Π·Π±ΠΈΡ‚Ρ‹Π΅ ΠΏΠΎ Ρ‚ΠΈΠΏΠ°ΠΌ, ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΡ… для создания Π±ΠΎΠ»Π΅Π΅ Ρ€Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·Π½Ρ‹Ρ… ΠΈΠ³Ρ€ Ρ‚ΠΈΠΏΠ° Mad Libs.

ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ для ΠΈΠ³Ρ€Ρ‹ Π² Π»ΠΎΡ‚ΠΎ

ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΈ ΠΈΠ³Ρ€Π΅ Π² Π»ΠΎΡ‚ΠΎ ΡˆΠ΅ΡΡ‚ΠΈ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹Ρ… Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² – это, мягко говоря, статистичСски маловСроятный Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, ΠΌΠ½ΠΎΠ³ΠΈΠ΅ люди ΠΏΠΎ-ΠΏΡ€Π΅ΠΆΠ½Π΅ΠΌΡƒ платят дСньги, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠΈΠ³Ρ€Π°Ρ‚ΡŒ Π² эту ΠΈΠ³Ρ€Ρƒ. Если Π²Π°ΠΌ нравятся числа, Ρ‚ΠΎ вас ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°ΠΈΠ½Ρ‚Π΅Ρ€Π΅ΡΠΎΠ²Π°Ρ‚ΡŒ наблюдСниС Π·Π° тСндСнциями. Π‘ΠΎΠ·Π΄Π°Π΄ΠΈΠΌ скрипт, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Ρ‚ΡŒ Π²Ρ‹ΠΈΠ³Ρ€Ρ‹ΡˆΠ½Ρ‹Π΅ Π½ΠΎΠΌΠ΅Ρ€Π° ΠΈ прСдоставит ΡˆΠ΅ΡΡ‚ΡŒ Ρ€Π΅ΠΆΠ΅ всСго Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΡ… Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π² нашСм спискС.

(ΠžΡ‚ΠΊΠ°Π· ΠΎΡ‚ отвСтствСнности. Π­Ρ‚ΠΎΡ‚ скрипт Π½Π΅ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π²Π°ΠΌ Π²Ρ‹ΠΈΠ³Ρ€Ρ‹Π²Π°Ρ‚ΡŒ Π² Π»ΠΎΡ‚ΠΎ, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ Π½Π΅ Ρ‚Ρ€Π°Ρ‚ΡŒΡ‚Π΅ дСньги Π½Π° Π±ΠΈΠ»Π΅Ρ‚Ρ‹. Он ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ для развлСчСния).

ΠœΡ‹ сохраняСм Π²Ρ‹ΠΈΠ³Ρ€Ρ‹ΡˆΠ½Ρ‹Π΅ Π½ΠΎΠΌΠ΅Ρ€Π° Π² тСкстовом Ρ„Π°ΠΉΠ»Π΅. ΠœΡ‹ отдСляСм Π½ΠΎΠΌΠ΅Ρ€Π° запятыми ΠΈ ΠΏΠΎΠΌΠ΅Ρ‰Π°Π΅ΠΌ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π½Π° ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΡƒΡŽ строку. Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠΈΠΌΠΎΠ΅ этого Ρ„Π°ΠΉΠ»Π°, Ρ€Π°Π·Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ Π½Π° строки с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ символов-Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»Π΅ΠΉ строк, Π° Π² ΠΏΡ€Π΅Π΄Π΅Π»Π°Ρ… ΠΊΠ°ΠΆΠ΄ΠΎΠΉ строки Ρ€Π°Π·Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ запятых, Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ (листинг 23).

Листинг 23. Π‘ΠΎΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π²Ρ‹ΠΈΠ³Ρ€Ρ‹ΡˆΠ½Ρ‹Ρ… Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π»ΠΎΡ‚ΠΎ Π² тСкстовом Ρ„Π°ΠΉΠ»Π΅

Π’ΠΏΠΎΠ»Π½Π΅ ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎ, Ρ‡Ρ‚ΠΎ этого нСдостаточно для выявлСния статистичСских закономСрностСй. Π‘ Π΄Ρ€ΡƒΠ³ΠΎΠΉ стороны, этого Π²ΠΏΠΎΠ»Π½Π΅ достаточно для ΠΈΠ»Π»ΡŽΡΡ‚Ρ€Π°Ρ†ΠΈΠΈ основных ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΎΠ².

Листинг 24. ΠŸΡ€ΠΎΡ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΏΠΎ Π²Ρ‹ΠΏΠ°Π²ΡˆΠΈΠΌ значСниям

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

Листинг 25. Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ° чисСл ΠΏΠΎ частотС ΠΈΡ… выпадСния

РСгулярно добавляя Π² наш тСкстовый Ρ„Π°ΠΉΠ» с Π²Ρ‹ΠΏΠ°Π²ΡˆΠΈΠΌΠΈ Π½ΠΎΠΌΠ΅Ρ€Π°ΠΌΠΈ ΠΎΡ‡Π΅Ρ€Π΅Π΄Π½Ρ‹Π΅ Π²Ρ‹ΠΏΠ°Π²ΡˆΠΈΠ΅ Π½ΠΎΠΌΠ΅Ρ€Π°, ΠΌΡ‹ смоТСм ΠΎΡ†Π΅Π½ΠΈΡ‚ΡŒ Ρ‚Π΅Π½Π΄Π΅Π½Ρ†ΠΈΡŽ выпадСния Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π² долгосрочной пСрспСктивС ΠΈ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ, ΠΊΠ°ΠΊ часто Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‚ Ρ‚Π΅ ΠΈΠ»ΠΈ ΠΈΠ½Ρ‹Π΅ Π½ΠΎΠΌΠ΅Ρ€Π°.

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π­Ρ‚Π° ΡΡ‚Π°Ρ‚ΡŒΡ являСтся ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ΠΌ рСсурсом для всСх, ΠΊΡ‚ΠΎ Ρ…ΠΎΡ‚Π΅Π» Π±Ρ‹ ΠΏΡ€ΠΈΡΡ‚ΡƒΠΏΠΈΡ‚ΡŒ ΠΊ использованию языка PHP для обогащСния своих ΠΈΠ³Ρ€ΠΎΠ²Ρ‹Ρ… возмоТностСй. Π’ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΉ ΡΡ‚Π°Ρ‚ΡŒΠ΅ сСрии ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ Β«30 ΠΈΠ³Ρ€ΠΎΠ²Ρ‹Ρ… скриптов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Π½Π° языкС PHPΒ» ΠΌΡ‹ Π½Π° Π±Π°Π·Π΅ описанного Π² этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΊΠΎΠ΄Π° создадим Π±ΠΎΠ»Π΅Π΅ ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½Ρ‹Π΅ скрипты, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ прСдоставят Π½Π°ΠΌ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ возмоТности.

РСсурсы для скачивания

ΠŸΠΎΡ…ΠΎΠΆΠΈΠ΅ Ρ‚Π΅ΠΌΡ‹

ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ

Π’ΠΎΠΉΠ΄ΠΈΡ‚Π΅ ΠΈΠ»ΠΈ Π·Π°Ρ€Π΅Π³ΠΈΡΡ‚Ρ€ΠΈΡ€ΡƒΠΉΡ‚Π΅ΡΡŒ для Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ ΠΈΠ»ΠΈ ΠΏΠΎΠ΄ΠΏΠΈΡΠ°Ρ‚ΡŒΡΡ Π½Π° Π½ΠΈΡ….

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

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

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