ΠΊΠ°ΠΊ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты для ΠΈΠ³Ρ€

ΠœΠ°Π½ΡƒΠ°Π» ΠΏΠΎ написанию скриптов + ΠΏΠ°Ρ€Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ²

===Вводная Ρ‡Π°Ρ‚ΡŒ===

БобствСнно ΠΏΠΎΠ΄ влияниСм поста ΠΎΡ‚ @LaCTuK Ρ€Π΅ΡˆΠΈΠ» Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ этот ΠΌΠ°Π½ΡƒΠ°Π».

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

Π‘ΠΊΡ€ΠΈΠΏΡ‚ – это автоматизация ΠΈ упрощСния дСйствий. Π”Π°Π²Π°ΠΉΡ‚Π΅ сразу договоримся ΠΈ Π½Π΅ Π±ΡƒΠ΄Π΅ΠΌ Ρ€Π°Π·Π²ΠΎΠ΄ΠΈΡ‚ΡŒ споров, хотя ΠΌΠ½Π΅ это Π±ΡƒΠ΄Π΅Ρ‚ ΠΈ Π²Ρ‹Π³ΠΎΠ΄Π½ΠΎ πŸ™‚ скрипты это Π½Π΅ читСрство. Если вас удивляСт, Ρ‡Ρ‚ΠΎ Π² ΠΎΠ±Ρ‰Π΅ ΠΎΠ± этом Π½Π°Ρ‡Π°Π» Ρ€Π°Π·Π³ΠΎΠ²ΠΎΡ€, Ρ‚ΠΎ Π²ΠΎΡ‚ ΠΏΡ€ΠΎΡ„ Π»ΠΈΠ½ΠΊ Π² Ρ‚ΠΎΠΏΠΈΠΊΠ΅ Π³Ρ€ΡƒΠΏΠΏΡ‹ Π² ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Π΅ Π½Π΅ считайтС Π·Π° Ρ€Π΅ΠΊΠ»Π°ΠΌΡƒ ΠΆ).

ΠœΠΎΡ‘ ΠΌΠ½Π΅Π½ΠΈΠ΅ мысли, Ссли Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Π΄Π°Π»ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΈ Π½Π΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°ΡŽΡ‚ сиС дСйствиС ΠΏΡ€ΠΈ ΠΈΠ³Ρ€Π΅ ΠΏΠΎ сСти Π·Π½Π°Ρ‡ΠΈΡ‚ это Π½Π΅ ΠΏΠ»ΠΎΡ…ΠΎ ΠΈ Π½Π΅ читСрство(слово Π½Π΅ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚) это скорСС прСимущСство, Π½ΠΎ Ссли ваш ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΈΠΊ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ это Π½Π΅ Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‡Ρ‚ΠΎ ΠΈ Π²Ρ‹ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ это ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ.

ΠžΠ±ΠΎΠ·Π½Π°Ρ‡Π΅Π½ΠΈΡ

Π’Π°ΠΊ ΠΊΠ°ΠΊ Π² тСкстС Π±ΡƒΠ΄Π΅Ρ‚ ΠΌΠΎΡ€Π΅ ΠΊΠΎΠΌΠ°Π½Π΄ ΠΈ ΠΊΠΎΠ΄ΠΎΠ² я Ρ€Π΅ΡˆΠΈΠ» ввСсти Π½Π΅ большиС обозначСния. каТдая новая сточка Π² ΠΊΠΎΠ΄Π°Ρ… Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°Ρ‡ΠΈΠ½Π°Ρ‚ΡŒΡΡ с Π·Π½Π°ΠΊΠ° | Ρ‚Π°ΠΊΠΆΠ΅ Π±ΡƒΠ΄ΡƒΡ‚ вСсти Π½ΡƒΠΌΠ΅Ρ€Π°Ρ†ΠΈΡŽ для облСгчСния понимания. На ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΊΠΎΠ΄ ΠΈΠ· ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ:

1| alias recdemo «recon»

2| alias recon «record tf2demo; developer 1; echo Recording Demo!; developer 0; alias recdemo recoff»

3| alias recoff «stop; developer 1; echo Demo Complete!; developer 0; alias recdemo recon»

Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΈΡ… Π² скриптС Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ просто для понимания тСкста Ρ‚ΡƒΡ‚ Ρ€Π΅ΡˆΠΈΠ» ΠΏΠΈΡΠ°Ρ‚ΡŒ Ρ‚Π°ΠΊ.

===ВСорСтичСская Ρ‡Π°ΡΡ‚ΡŒ===

==ΠžΡΠ½ΠΎΠ²Ρ‹==

Для ΠšΠ»ΠΈΠ΅Π½Ρ‚Π° ΠΊΠΎΡ€Π½Π΅Π²Ρ‹ΠΌ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠΌ для скриптов Π±ΡƒΠ΄Π΅Ρ‚:

Steam\steamapps\*Π»ΠΎΠ³ΠΈΠ½ Π² стимС*\team fortress 2\tf\cfg

Π’ ΠΏΠ°ΠΏΠΊΠ΅ ΠΏΠΎ Π΄Π΅Ρ„ΠΎΠ»Ρ‚Ρƒ Π±ΡƒΠ΄ΡƒΡ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Ρ„Π°ΠΉΠ»Ρ‹:

*heavyweapons.cfg- ΠΊΠΎΠ½Ρ„ΠΈΠ³ для ΠΏΡƒΠ»Π΅ΠΌΠ΅Ρ‚Ρ‡ΠΈΠΊΠ°

*medic.cfg- ΠΊΠΎΠ½Ρ„ΠΈΠ³ для ΠΌΠ΅Π΄ΠΈΠΊΠ°

*pyro.cfg- ΠΊΠΎΠ½Ρ„ΠΈΠ³ для подТигатСля

*scout.cfg- ΠΊΠΎΠ½Ρ„ΠΈΠ³ для скаута

*sniper.cfg- ΠΊΠΎΠ½Ρ„ΠΈΠ³ для снайпСра

*soldier.cfg- ΠΊΠΎΠ½Ρ„ΠΈΠ³ для солдата

*spy.cfg- ΠΊΠΎΠ½Ρ„ΠΈΠ³ для шпиона

Π’Π°ΠΊΠΆΠ΅ ΠΈΠ³Ρ€Π° Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅Ρ‚ Ρ„Π°ΠΉΠ»Ρ‹ vavle.rc Π΅Π³ΠΎ ΠΌΡ‹ Ρ‚ΡƒΡ‚ Π½Π΅ Π²ΠΈΠ΄ΠΈΠΌ, Π½ΠΎ спокойно ΠΌΠΎΠΆΠ΅ΠΌ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Ρ‡Π΅Ρ€Π΅Π· Π²Ρ‹ΡˆΠ΅ ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Π΅ прилоТСния ΠΈ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Π² Π½Ρ‘ΠΌ exec autoexec.cfg, Ρ‡Ρ‚ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ» (ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΊ слову Ρ‚ΠΎΠΆΠ΅ стоит ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ) autoexec.cfg Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΈ запускС ΠΈΠ³Ρ€Ρ‹.

Π Π°Π·Π±Π΅Ρ€Ρ‘ΠΌ Ρ„Π°ΠΉΠ» vavle.rc

Π² Π½Ρ‘ΠΌ ΠΌΡ‹ написали exec autoexec.cfg

Π’Π°ΠΆΠ½ΠΎ каТдая новая ΠΊΠΎΠΌΠ°Π½Π΄Π° новая сточка!

Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΡ‡Π΅ΡΡ‚ΡŒ ΠΊΠΎΠΌΡƒ ΠΊΠ°ΠΊ ΡƒΠ΄ΠΎΠ±Π½Π΅Π΅ Ρ„Π°ΠΉΠ» autoexec.cfg ΠΌΡ‹ ΠΌΠΎΠ³Π»ΠΈ Π±Ρ‹ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ exec XXXX.cfg ΠΈ Ρ‚ΠΎΠ³Π΄Π° Π±Ρ‹ запустился Ρ„Π°ΠΉΠ» XXXX.cfg. ΠŸΠΎΡ‡Π΅ΠΌΡƒ autoexec.cfg это Π΄Π΅Ρ„ΠΎΠ»Ρ‚ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»Π° для Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ скриптов ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΈ Π»ΡƒΡ‡ΡˆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ. А ΡƒΠΆΠ΅ Π² Π½Ρ‘ΠΌ(Π² Ρ„Π°ΠΉΠ»Π΅ autoexec.cfg) прописываСм Π½ΡƒΠΆΠ½Ρ‹Π΅ Π½Π°ΠΌ ΠΏΡ€ΠΈ запускС скрипты. Π’ΠΎ Π΅ΡΡ‚ΡŒ получаСтся такая систСма ΠΈΠ³Ρ€Π° запускаСт vavle.rc ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ запускаСт autoexec.cfg ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π² свою ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ ΡƒΠΆΠ΅ запускаСт всС ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ ваши скрСпты для всСй ΠΈΠ³Ρ€Ρ‹ Π² Ρ†Π΅Π»ΠΎΠΌ.

На ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Ρƒ вас Π΅ΡΡ‚ΡŒ скрипт Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для солдата.

Π’ΠΎΠ³Π΄Π° для Π΅Π³ΠΎ запуска Π½ΡƒΠΆΠ½ΠΎ Π² Ρ„Π°ΠΉΠ»Π΅ soldier.cfg ΠΏΡ€ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ exec имя Ρ„Π°ΠΉΠ»Π° скрипта.cfg.

Π₯ΠΎΡ‡Ρƒ Π·Π°ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ Source Π½Π΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅Ρ‚ русских символов Π² Π½Π°Π·Π²Π°Π½ΠΈΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ².

Π Π°Π·Π±Π΅Ρ€Ρ‘ΠΌ Π½Π΅ ΠΌΠ½ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ» config.cfg

Ρ‚Π°ΠΊΠΆΠ΅ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ… скриптах Π²ΡΡ‚Ρ€Π΅Ρ‡Π°ΡŽΡ‚ΡΡ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ Π² Ρ„Π°ΠΉΠ»Π°Ρ… скриптах. ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ Ρ€Π°ΡΠΏΠΎΠ»Π°Π³Π°ΡŽΡ‚ΡΡ Ρ‡Π΅Ρ€Π΅Π· // ΠΈ послС Π½ΠΈΡ… Π² строчкС Π΄Π²ΠΈΠΆΠΊΠΎΠΌ ΠΈΠ³Ρ€Ρ‹ ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΡƒΡŽΡ‚ΡΡ слова Π½Π΅ ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π°ΡŽΡ‰ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΡƒΡŽΡ‚ΡŒΡΡ. ΠžΡ‡Π΅Π½ΡŒ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ ΠΏΠΎΠ΄ΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ Ρ‚Π° ΠΈΠ»ΠΈ иная ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΈΠ»ΠΈ Π΄Π΅Π»Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ» скрипта Π½Π° Π±Π»ΠΎΠΊΠΈ. ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ оставляСтся Ρ‚Π°ΠΊΠΆΠ΅ Π½Π° Π½ΠΎΠ²ΠΎΠΉ строчки. Π― Π±ΡƒΠ΄Ρƒ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ для ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ΠΏΠ΅Ρ€Π΅Π΄ Π΅Ρ‘ исполнСниСм.

Русский Π² коммСнтариях Ρ€Π°Π·Ρ€Π΅ΡˆΡ‘Π½.

==ОписаниС команд==

ALIAS

Данная ΠΊΠΎΠΌΠ°Π½Π΄Π° носит ΠΎΠ±Ρ‰ΠΈΠΉ Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€ ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠΌΠ° повсСмСстно. Алиас Π±ΡƒΠΊΠ²Π°Π»ΡŒΠ½ΠΎ создаСт Π½ΠΎΠ²ΡƒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ, ΡΠΎΡΡ‚ΠΎΡΡ‰ΡƒΡŽ ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Π΄Ρ€ΡƒΠ³ΠΈΡ…, ΠΎΠ±Π»Π΅Π³Ρ‡Π°Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΏΡ€ΠΈ создании слоТных скриптов.

BUILD

Команда ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠΌΠ° ΠΏΡ€ΠΈ написании скриптов для Π˜Π½ΠΆΠ΅Π½Π΅Ρ€Π° ΠΈ Π¨ΠΏΠΈΠΎΠ½Π°: Ссли Π˜Π½ΠΆΠ΅Π½Π΅Ρ€ ΠΈΠΌΠ΅Π΅Ρ‚ достаточноС количСство ΠΌΠ΅Ρ‚Π°Π»Π»Π°, ΠΎΠ½ Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Π²Ρ‹Π±Ρ€Π°Π½Π½ΡƒΡŽ ΠΊΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΡŽ; Π¨ΠΏΠΈΠΎΠ½ Π² свою ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ Π±Π΅Ρ€Π΅Ρ‚ Π² Ρ€ΡƒΠΊΠΈ ΠΏΠΎΠ΄Ρ€Ρ‹Π²Π½ΠΎΠ΅ устройство ΠΈ Π³ΠΎΡ‚ΠΎΠ² ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ ΠΆΡƒΡ‡ΠΊΠΎΠ² Π½Π° сооруТСния ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΈΠΊΠ°.

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

DESTROY

Если Ρ‚Ρ‹ построил Π² Ρ€ΠΎΠ»ΠΈ Π˜Π½ΠΆΠ΅Π½Π΅Ρ€Π° ΠΊΠ°ΠΊΠΎΠ΅-Π»ΠΈΠ±ΠΎ устройство, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ этой ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Ρ‚Ρ‹ моТСшь ΡΡ‚Π°Ρ‚ΡŒ ΠΎΠ±Π»Π°Π΄Π°Ρ‚Π΅Π»Π΅ΠΌ ΠΊΡƒΡ‡ΠΈ ΠΌΠ΅Ρ‚Π°Π»Π»ΠΎΠ»ΠΎΠΌΠ°.

DISGUISE

LASTDISGUISE

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

LASTINV

MENUSELECT

Команда позволяСт Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΉ ΠΏΡƒΠ½ΠΊΡ‚ мСню. НСобходимо ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ΄ словом мСню Π² Π΄Π°Π½Π½ΠΎΠΌ случаС подразумСваСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ мСню Ρ‚ΠΈΠΏΠ° списка голосовых ΠΊΠΎΠΌΠ°Π½Π΄, Π½ΠΎ Π½ΠΈΠΊΠ°ΠΊ Π½Π΅ мСню Π²Ρ‹Π±ΠΎΡ€Π° пСрсонаТа ΠΈ Ρ‚.ΠΏ.

PLAY

ΠŸΡ€ΠΎΠΈΠ³Ρ€Ρ‹Π²Π°Π΅Ρ‚ ΠΈΠ³Ρ€Π°ΡŽΡ‰Π΅ΠΌΡƒ мСлодию (Π·Π²ΡƒΠΊ), сохранСнный Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ wav. Π’Π°ΠΌ потрСбуСтся GCF Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ для извлСчСния Π·Π²ΡƒΠΊΠΎΠ² ΠΈΠ· Ρ„Π°ΠΉΠ»ΠΎΠ² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° gcf. Π’Π°ΠΊΠΆΠ΅ Ρ‚Ρ‹ моТСшь Π·Π°ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠΈΠ³Ρ€Ρ‹Π²Π°Ρ‚ΡŒΡΡ свои собствСнныС Ρ„Π°ΠΉΠ»Ρ‹ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° wav, Ρ‚Π΅Π±Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ эти Ρ„Π°ΠΉΠ»Ρ‹ Π² ΠΏΠ°ΠΏΠΊΡƒ:

Steam\steamapps\*Π»ΠΎΠ³ΠΈΠ½ Π² стимС*\team fortress 2\tf\sound\

Данная ΠΏΠ°ΠΏΠΊΠ° выступаСт ΠΊΠΎΡ€Π½Π΅Π²Ρ‹ΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠΌ ΠΏΡ€ΠΈ ΡƒΠΊΠ°Π·Π°Π½ΠΈΠΈ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΏΡƒΡ‚ΠΈ Π΄ΠΎ Ρ„Π°ΠΉΠ»ΠΎΠ² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° wav.

SLOT

VOICEMENU

Данная ΠΊΠΎΠΌΠ°Π½Π΄Π° позволяСт ΠΏΠΎΠ΄Π°Π²Π°Ρ‚ΡŒ голосовыС сообщСния Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ (Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π΅ с ΠΊΠ½ΠΎΠΏΠΊΠ°ΠΌΠΈ z,x,c). По сути ΠΎΠ½Π° позволяСт Π’Π°ΠΌ ΠΏΡ€ΠΈΠ²ΡΠ·Π°Ρ‚ΡŒ Π³ΠΎΠ»ΠΎΡΠΎΠ²ΡƒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ ΠΊ любой ΠΊΠ½ΠΎΠΏΠΊΠ΅, Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ стандартной привязки (нСсколько Π½Π°ΠΆΠ°Ρ‚ΠΈΠΉ Π½Π° клавиши).

WAIT

Команда ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΠ»Π΅Π·Π½Π° ΠΏΡ€ΠΈ исполнСнии Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΊΠΎΠΌΠ°Π½Π΄ Π² ΠΎΠ΄Π½Ρƒ строку. По сути, ΠΎΠ½Π° приостанавливаСт Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΡ… ΠΊΠΎΠΌΠ°Π½Π΄ Π½Π° X ΠΊΠ°Π΄Ρ€ΠΎΠ², ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Π΅ Π² качСствС Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° (ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ€Π°Π²Π½ΠΎ 1). Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ΄Π±ΠΈΡ€Π°ΡŽΡ‚ΡΡ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ ΠΏΡ€ΠΎΠ± ΠΈ ошибок, 100 ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ Ρ€Π°Π²Π½ΠΎ 1 сСкундС. Π’ качСствС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° для ΠΌΠΎΠ΄Π΅Ρ€Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ постройки Π˜Π½ΠΆΠ΅Π½Π΅Ρ€Π°:

НСобходимо ΡƒΡ‡Π΅ΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ данная ΠΊΠΎΠΌΠ°Π½Π΄Π° Π½ΠΈΠΊΠ°ΠΊ Π½Π΅ ΠΈΡΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½Ρ‹ΠΉ Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ Π½Π° клавиши, выступаСт Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊΠ°ΠΊ Ρ‚Π°ΠΉΠΌΠ΅Ρ€ ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ скриптов.

wait [_Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠ°_], Π³Π΄Π΅ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠ° любоС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΎΡ‚ 1 ΠΈ большС.

Π­Ρ‚ΠΎ СстСствСнно Π½Π΅ всС ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹, Π½ΠΎ ΠΎΠ½ΠΈ Π±ΡƒΠ΄ΡƒΡ‚ вострСбованы. НиТС располоТСны ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ клавиш ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρ‹ ΠΈ ΠΌΡ‹ΡˆΠΈ Π² скриптах.

ВсС ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΠ΅ клавиши ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρ‹, ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΌΡ‹ΡˆΠΈ ΠΈ ΠΏΡ€ΠΎΠΊΡ€ΡƒΡ‚ΠΊΠ° срСднСй ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΌΡ‹ΡˆΠΈ ΠΈΠΌΠ΅ΡŽΡ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ обозначСния Π² скриптах. Π’ΠΎΡ‚ ΠΏΠΎΠ»Π½Ρ‹ΠΉ список:

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

ПишСм Π±ΠΎΡ‚Π° для ΠΎΠ½Π»Π°ΠΉΠ½-ΠΈΠ³Ρ€Ρ‹ Π½Π° JavaScript с ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ AOP

1. Π“ΠΎΡ‚ΠΎΠ²ΠΈΠΌ ΠΈΠ½Π³Ρ€Π΅Π΄ΠΈΠ΅Π½Ρ‚Ρ‹

Π’Π°ΠΆΠ½ΠΎ! Π˜Π³Ρ€Π° Π΄ΠΎΠ»ΠΆΠ½Π° Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅, Π° Π½Π΅ Π² ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅. ΠŸΡ€ΠΈΡ‡Π΅ΠΌ Π½Π΅ Π½Π° Flash, Π° Π½Π° HTML+JavaScript.
На Π²Ρ‹Ρ…ΠΎΠ΄Π΅ Ρƒ нас Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ для Chrome, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠ³Ρ€Π°Ρ‚ΡŒ вмСсто нас.

2. Π”Π΅Π»Π°Π΅ΠΌ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅

О Ρ‚ΠΎΠΌ ΠΊΠ°ΠΊ дСлаСтся Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ я Π½Π΅ Π±ΡƒΠ΄Ρƒ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ Ρ€Π°ΡΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ. На Ρ…Π°Π±Ρ€Π΅ ΠΎΠ± этом ΡƒΠΆΠ΅ писали, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρ‚ΡƒΡ‚.
ΠŸΡ€ΠΈΠ²Π΅Π΄Ρƒ лишь ΠΊΠΎΠ΄Ρ‹, Π½ΡƒΠΆΠ½Ρ‹Ρ… Π½Π°ΠΌ Ρ„Π°ΠΉΠ»ΠΎΠ².
Π’ manifest.json

Π’ строчкС Β«matchesΒ»: [ Β«pernatsk.ru*Β» ] Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ адрСс вашСй ΠΈΠ³Ρ€Ρ‹.
Π€Π°ΠΉΠ» background.js я ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ для случаСв, ΠΊΠΎΠ³Π΄Π° Ρ…ΠΎΡ‡Ρƒ ΠΈΠ½Π΄ΠΆΠ΅ΠΊΡ‚ΠΈΡ‚ΡŒ Π½Π° сайтС свой JS ΠΊΠΎΠ΄Π°. БобствСнно ΠΊΠΎΠ΄ background.js:

Π’Π°ΠΆΠ½ΠΎ! Если Π²Ρ‹ Π½Π΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅Ρ‚Π΅, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ Π΄Π΅Π»Π°Π΅ΠΌ Π² этой СдинствСнной Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Ρ‚ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ Π±ΠΎΡ‚Π° Π²Π°ΠΌ ΠΏΠΎΠΊΠ° Ρ€Π°Π½ΠΎ. ΠŸΠΎΡ‡ΠΈΡ‚Π°ΠΉΡ‚Π΅ основы JavaScript.
Вся Ρ€Π°Π±ΠΎΡ‚Π° Ρƒ нас Π±ΡƒΠ΄Π΅Ρ‚ Π²Π΅ΡΡ‚ΠΈΡΡŒ Π² Ρ„Π°ΠΉΠ»Π΅ injected.js Π•Π³ΠΎ ΠΊΠΎΠ΄ ΠΏΠΎΠΊΠ° Ρ‚Π°ΠΊΠΎΠΉ:

ВсС эти Ρ„Π°ΠΉΠ»Ρ‹ сохраняСм Π² ΠΎΠ΄Π½ΠΎΠΉ ΠΏΠ°ΠΏΠΊΠ΅ bot.

3. ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ пуск Π±ΠΎΡ‚Π°

4. ДобавляСм AOP

Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π±ΠΎΡ‚Π° Π½Π°ΠΌ ΠΏΠΎΡ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ. Мой Π»ΡŽΠ±ΠΈΠΌΡ‹ΠΉ jQuery ΡƒΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π½Π° ΠŸΠ΅Ρ€Π½Π°Ρ‚ΡΠΊΠ΅, поэтому Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ Π΅Π³ΠΎ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚.
Π”ΠΎΠ±Π°Π²ΠΈΠΌ ΠΏΠ»Π°Π³ΠΈΠ½ AOP for Jquery. По Ρ…ΠΎΡ€ΠΎΡˆΠ΅ΠΌΡƒ это стоило Π·Π°ΠΏΠ°ΠΊΠΎΠ²Π°Ρ‚ΡŒ Π² само Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ Π² Π²ΠΈΠ΄Π΅ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π°, Π½ΠΎ я Π»Π΅Π½ΠΈΠ². ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ просто Π΄ΠΎΠ±Π°Π²ΠΈΠΌ ΠΊΠΎΠ΄ bin/aop.pack.js ΠΏΠ΅Ρ€Π²ΠΎΠΉ строкой Π² наш injected.js.
ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΈΠΌ, Ρ‡Ρ‚ΠΎ это Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ² ai_on

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡΠ΅ΠΌ, Ρ‡Ρ‚ΠΎ AOP Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΠ»ΠΎΡΡŒ. Π’ консолС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π±ΡƒΠ΄Π΅Ρ‚ строчка Β«jQuery detected!Β» Π‘ΠΎΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π·, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ я ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π°ΡŽ совСт послС ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ ΠΆΠ΅ срабатывания.
Π’Π°ΠΆΠ½ΠΎ! ΠŸΡ€ΠΎΡ‡ΠΈΡ‚Π°ΠΉΡ‚Π΅ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡŽ AOP for Jquery, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ½ΡΡ‚ΡŒ jQuery.aop.after ΠΈ bot[0].unweave().

5. Π—Π°Ρ‡Π΅ΠΌ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ AOP

6. Π£Ρ‡ΠΈΠΌ Π±ΠΎΡ‚Π° ΠΏΠ΅Ρ€Π²ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Π΅

Π’ injected.js Π΄ΠΎΠ±Π°Π²ΠΈΠΌ Ρ‚Π°ΠΊΠΎΠΉ ΠΊΠΎΠ΄:

По этой ΠΊΠΎΠΌΠ°Π½Π΄Π΅ наша Π±ΠΎΡ‚-ΠΏΡ‚ΠΈΡ‡ΠΊΠ° Π±ΡƒΠ΄Π΅Ρ‚ Π»Π΅Ρ‚Π΅Ρ‚ΡŒ Π² ΠŸΠ΅Ρ€Π½Π°Ρ‚ΡΠΊΠ΅ Π·Π° шишками. Код слСгка ΠΌΡƒΠ΄Ρ€Π΅Π½Π½Ρ‹ΠΉ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π² ΠŸΠ΅Ρ€Π½Π°Ρ‚ΡΠΊΠ΅ Π΅ΡΡ‚ΡŒ нСбольшая Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ Π±ΠΎΡ‚ΠΎΠ².
Когда Π²Ρ‹ Π±ΡƒΠ΄Π΅Ρ‚Π΅ ΠΏΠΈΡΠ°Ρ‚ΡŒ свои ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ я Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΡŽ сначала ΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΡ… Ρ€Π°Π±ΠΎΡ‚ΠΎΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡ‚ΡŒ Π² console, Π° ΡƒΠΆΠ΅ ΠΏΠΎΡ‚ΠΎΠΌ ΠΏΠ΅Ρ€Π΅Π½ΠΎΡΠΈΡ‚ΡŒ ΠΊΠΎΠ΄ Π² Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€.
Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΡ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ нашСй ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ запустим Π² коснолС ΠΊΠΎΠ΄ commands.conessearch() ВсС Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚.

7. Π˜Ρ‰Π΅ΠΌ событиС Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ Ρ€Π΅Π°Π³ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π±ΠΎΡ‚

Π’ΡƒΡ‚ Π΅ΡΡ‚ΡŒ Π΄Π²Π° ΠΌΠ΅Ρ‚ΠΎΠ΄Π° ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ β€” Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅ΠΌ ΠΊΠΎΠ΄ ΠΈΠ³Ρ€Ρ‹. Π”ΠΎΠ»Π³ΠΎ πŸ™
Π’Ρ‚ΠΎΡ€ΠΎΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ β€” Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ AOP, ΠΈ послС всСх Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ срабатывали вывСсти Π² Π»ΠΎΠ³ ΠΈΡ… имя. ΠŸΠΎΡ‚ΠΎΠΌ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Π½ΡƒΠΆΠ½Ρ‹Π΅.
МСняСм ai_on()

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Ρƒ нас ΠΎΡ‚Ρ€Π°ΠΆΠ°ΡŽΡ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΅Ρ‰Π΅ Π½Π΅ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π»ΠΈΡΡŒ. Π˜Ρ… ΠΏΠΎΠ»Π½Ρ‹ΠΉ список ΠΌΡ‹ Ρ…Ρ€Π°Π½ΠΈΠΌ Π² fnList.
ПослС ΠΏΠ°Ρ€Ρ‹ ΠΌΠΈΠ½ΡƒΡ‚ Ρ‚Π°ΠΌ Π±ΡƒΠ΄ΡƒΡ‚ Ρ‚Π°ΠΊΠΈΠ΅ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ для ΠΏΡ€ΠΈΡ†Π΅ΠΏΠΊΠΈ [«clearInterval», «$», «setTimeout», «timerTick», «serverTimeUpdate», «getComputedStyle», «setInterval», «tutorialArr», «showQ», «showQc», «updateBirdData», «viz», «unviz», «weatherUpdate»]
МСняя target ΠΈ рСгулярноС Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π² method ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΠ΄ΠΎΠ±Ρ€Π°Ρ‚ΡŒ Ρ‚Ρƒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ, которая Π½Π°ΠΌ ΠΏΠΎΠ΄ΠΎΠΉΠ΄Π΅Ρ‚, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΊ Π½Π΅ΠΉ ΠΏΡ€ΠΈΡ†Π΅ΠΏΠΈΡ‚ΡŒΡΡ. Для ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°, я Π²Ρ‹Π±ΠΈΡ€Π°ΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ weatherUpdate Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π· ΠΊΠ°ΠΊ Π±ΡƒΠ΄Π΅Ρ‚ ΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ ΠΏΠΎΠ³ΠΎΠ΄Π° наша ΠΏΡ‚ΠΈΡ‡ΠΊΠ° Π±ΡƒΠ΄Π΅Ρ‚ Π»Π΅Ρ‚Π΅Ρ‚ΡŒ Π·Π° шишками.

7. Π£Ρ‡ΠΈΠΌ Π±ΠΎΡ‚Π° Ρ€Π΅Π°Π³ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½Π° события

ΠœΡ‹ снова мСняСм ΠΊΠΎΠ΄ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ai_on()

Π€ΡƒΠ½ΠΊΡ†ΠΈΡΡŽ ai_off Π½ΡƒΠΆΠ½Π°, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ‡Π΅Ρ€Π΅Π· консоль Π²Ρ‹ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π±ΠΎΡ‚Π°.

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

Как Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΈΠ³Ρ€Ρƒ Π½Π° JavaScript

Π‘ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Ρ‹ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΈΠ³Ρ€Ρ‹ с ΠΏΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½ΠΎΠΉ Π³Ρ€Π°Ρ„ΠΈΠΊΠΎΠΉ. РассказываСм, ΠΊΠ°ΠΊ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ простыС Π³ΠΎΠ½ΠΊΠΈ Π½Π° JavaScript ΠΈ HTML5.

ΠΊΠ°ΠΊ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты для ΠΈΠ³Ρ€. 51923142fef808bda0f44639b9a29e2e. ΠΊΠ°ΠΊ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты для ΠΈΠ³Ρ€ Ρ„ΠΎΡ‚ΠΎ. ΠΊΠ°ΠΊ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты для ΠΈΠ³Ρ€-51923142fef808bda0f44639b9a29e2e. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΊΠ°ΠΊ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты для ΠΈΠ³Ρ€. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° 51923142fef808bda0f44639b9a29e2e. ===Вводная Ρ‡Π°Ρ‚ΡŒ===

ΠΊΠ°ΠΊ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты для ΠΈΠ³Ρ€. 483bef0983015bfcd7f2634896d01742. ΠΊΠ°ΠΊ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты для ΠΈΠ³Ρ€ Ρ„ΠΎΡ‚ΠΎ. ΠΊΠ°ΠΊ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты для ΠΈΠ³Ρ€-483bef0983015bfcd7f2634896d01742. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΊΠ°ΠΊ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты для ΠΈΠ³Ρ€. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° 483bef0983015bfcd7f2634896d01742. ===Вводная Ρ‡Π°Ρ‚ΡŒ===

БСйчас Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Ρ‹ Π΄Π°ΡŽΡ‚ JavaScript-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ ΠΎΠ³Ρ€ΠΎΠΌΠ½ΠΎΠ΅ количСство возмоТностСй для создания интСрСсных сайтов. РаньшС для этого использовался Flash β€” ΠΎΠ½ Π±Ρ‹Π» популярСн, ΠΈ Π½Π° Π½Ρ‘ΠΌ Π±Ρ‹Π»ΠΎ создано бСссчётноС количСство ΠΈΠ³Ρ€, ΠΏΠ»Π΅Π΅Ρ€ΠΎΠ², Π½Π΅ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Ρ… интСрфСйсов ΠΈ Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅. Однако ΠΎΠ½ΠΈ ΡƒΠΆΠ΅ Π½Π΅ запустятся Π½ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ соврСмСнном Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅.

Π”Π΅Π»ΠΎ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ тСхнология Flash тяТСловСсна, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ»Π½Π° уязвимостСй, поэтому ΠΎΡ‚ Π½Π΅Ρ‘ стали ΠΎΡ‚ΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒΡΡ. Π’Π΅ΠΌ Π±ΠΎΠ»Π΅Π΅ Ρ‡Ρ‚ΠΎ появилась Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π° Π² Π²ΠΈΠ΄Π΅ HTML5 β€” Π² этой вСрсии появился элСмСнт canvas.

Canvas β€” это холст, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΌΠΎΠΆΠ½ΠΎ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ JS-ΠΊΠΎΠΌΠ°Π½Π΄. Π•Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для создания Π°Π½ΠΈΠΌΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… Ρ„ΠΎΠ½ΠΎΠ², Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… конструкторов ΠΈ, самоС Π³Π»Π°Π²Π½ΠΎΠ΅, ΠΈΠ³Ρ€.

Из этой ΡΡ‚Π°Ρ‚ΡŒΠΈ Π²Ρ‹ ΡƒΠ·Π½Π°Π΅Ρ‚Π΅, ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π½ΡƒΡŽ ΠΈΠ³Ρ€Ρƒ Π½Π° JavaScript ΠΈ HTML5. Но ΠΏΡ€Π΅ΠΆΠ΄Π΅ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅ΠΌ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚ΡŒΡΡ с ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π² JS (достаточно ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ класс, ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚). Оно Π»ΡƒΡ‡ΡˆΠ΅ всСго ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ для создания ΠΈΠ³Ρ€, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ позволяСт Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с сущностями, Π° Π½Π΅ с абстрактными Π΄Π°Π½Π½Ρ‹ΠΌΠΈ. Однако Π΅ΡΡ‚ΡŒ ΠΈ нСдостаток: ООП Π½Π΅ поддСрТиваСтся Π½ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· вСрсий Internet Explorer.

ΠΊΠ°ΠΊ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты для ΠΈΠ³Ρ€. kucheryaviy. ΠΊΠ°ΠΊ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты для ΠΈΠ³Ρ€ Ρ„ΠΎΡ‚ΠΎ. ΠΊΠ°ΠΊ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты для ΠΈΠ³Ρ€-kucheryaviy. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΊΠ°ΠΊ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты для ΠΈΠ³Ρ€. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° kucheryaviy. ===Вводная Ρ‡Π°Ρ‚ΡŒ===

ΠŸΠΈΡˆΠ΅Ρ‚ ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ, Π² свободноС врСмя создаСт ΠΈΠ³Ρ€Ρ‹. ΠœΠ΅Ρ‡Ρ‚Π°Π΅Ρ‚ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ свою ΡΡ‚ΡƒΠ΄ΠΈΡŽ ΠΈ Π²Ρ‹ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ Π»Π°ΠΌΠΏΠΎΠ²Ρ‹Π΅ RPG.

Вёрстка страницы с ΠΈΠ³Ρ€ΠΎΠΉ

Для Π½Π°Ρ‡Π°Π»Π° Π½ΡƒΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ страницу, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒΡΡ холст. Для этого потрСбуСтся совсСм Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ HTML:

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π½ΡƒΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ стили:

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ Π² HTML элСмСнту canvas Π±Ρ‹Π»ΠΈ Π·Π°Π΄Π°Π½Ρ‹ Π½ΡƒΠ»Π΅Π²Ρ‹Π΅ ΡˆΠΈΡ€ΠΈΠ½Π° ΠΈ высота, Π² Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ Π² CSS ΡƒΠΊΠ°Π·Π°Π½ΠΎ 100%. Π’ этом ΠΏΠ»Π°Π½Π΅ холст Π²Π΅Π΄Ρ‘Ρ‚ сСбя ΠΊΠ°ΠΊ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅. Π£ Π½Π΅Π³ΠΎ Π΅ΡΡ‚ΡŒ фактичСскоС ΠΈ Π²ΠΈΠ΄ΠΈΠΌΠΎΠ΅ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅.

Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ стилСй мСняСтся Π²ΠΈΠ΄ΠΈΠΌΠΎΠ΅ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅. Однако ΠΏΡ€ΠΈ этом Ρ€Π°Π·ΠΌΠ΅Ρ€Ρ‹ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ останутся ΠΏΡ€Π΅ΠΆΠ½ΠΈΠΌΠΈ: ΠΎΠ½Π° просто растянСтся ΠΈΠ»ΠΈ соТмётся. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ фактичСскиС ΡˆΠΈΡ€ΠΈΠ½Π° ΠΈ высота Π±ΡƒΠ΄ΡƒΡ‚ ΡƒΠΊΠ°Π·Π°Π½Ρ‹ ΠΏΠΎΠ·ΠΆΠ΅ β€” Ρ‡Π΅Ρ€Π΅Π· скрипт.

Π‘ΠΊΡ€ΠΈΠΏΡ‚ для ΠΈΠ³Ρ€Ρ‹

Для Π½Π°Ρ‡Π°Π»Π° Π΄ΠΎΠ±Π°Π²ΠΈΠΌ Π·Π°Π³ΠΎΡ‚ΠΎΠ²ΠΊΡƒ скрипта для ΠΈΠ³Ρ€Ρ‹:

Π’ этом скриптС Π΅ΡΡ‚ΡŒ всё, Ρ‡Ρ‚ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ для создания ΠΈΠ³Ρ€Ρ‹: Π΄Π°Π½Π½Ρ‹Π΅ (массивы), Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ обновлСния, прорисовки ΠΈ управлСния. ΠžΡΡ‚Π°Ρ‘Ρ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ это основной Π»ΠΎΠ³ΠΈΠΊΠΎΠΉ. Π’ΠΎ Π΅ΡΡ‚ΡŒ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ, ΠΊΠ°ΠΊ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ Π±ΡƒΠ΄ΡƒΡ‚ сСбя вСсти ΠΈ ΠΊΠ°ΠΊ Π±ΡƒΠ΄ΡƒΡ‚ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Π½Π° холст.

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

Π’ΠΎ врСмя Π²Ρ‹Π·ΠΎΠ²Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Update () Π±ΡƒΠ΄ΡƒΡ‚ ΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ состояния ΠΈΠ³Ρ€ΠΎΠ²Ρ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ². ПослС этого ΠΎΠ½ΠΈ ΠΎΡ‚Ρ€ΠΈΡΠΎΠ²Ρ‹Π²Π°ΡŽΡ‚ΡΡ Π½Π° canvas с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Draw (). Π’ΠΎ Π΅ΡΡ‚ΡŒ Π½Π° самом Π΄Π΅Π»Π΅ ΠΌΡ‹ Π½Π΅ Π΄Π²ΠΈΠ³Π°Π΅ΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ Π½Π° холстС β€” ΠΌΡ‹ рисуСм ΠΈΡ… ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π·, ΠΏΠΎΡ‚ΠΎΠΌ мСняСм ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹, стираСм староС ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΈ Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ с Π½ΠΎΠ²Ρ‹ΠΌΠΈ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π°ΠΌΠΈ. Всё это происходит Ρ‚Π°ΠΊ быстро, Ρ‡Ρ‚ΠΎ создаётся иллюзия двиТСния.

Рассмотрим это Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π΄ΠΎΡ€ΠΎΠ³ΠΈ.

ΠΊΠ°ΠΊ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты для ΠΈΠ³Ρ€. 12233210102019 a05b0a246d94ca49cd63912b54f76d25cd17bc3c. ΠΊΠ°ΠΊ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты для ΠΈΠ³Ρ€ Ρ„ΠΎΡ‚ΠΎ. ΠΊΠ°ΠΊ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты для ΠΈΠ³Ρ€-12233210102019 a05b0a246d94ca49cd63912b54f76d25cd17bc3c. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΊΠ°ΠΊ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты для ΠΈΠ³Ρ€. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° 12233210102019 a05b0a246d94ca49cd63912b54f76d25cd17bc3c. ===Вводная Ρ‡Π°Ρ‚ΡŒ===

На холстС выводится Π²ΠΎΡ‚ Ρ‚Π°ΠΊΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΈ постСпСнно двигаСтся Π²Π½ΠΈΠ·. Π‘Ρ€Π°Π·Ρƒ ΠΆΠ΅ слСдом Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Π΅Ρ‰Ρ‘ ΠΎΠ΄Π½Π° такая ΠΆΠ΅ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ°, благодаря Ρ‡Π΅ΠΌΡƒ создастся ΠΎΡ‰ΡƒΡ‰Π΅Π½ΠΈΠ΅ бСсконСчной Π΄ΠΎΡ€ΠΎΠ³ΠΈ.

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

Π’ массив с Ρ„ΠΎΠ½Π°ΠΌΠΈ Π΄ΠΎΠ±Π°Π²Π»ΡΡŽΡ‚ΡΡ Π΄Π²Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° класса Road:

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Update (), Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ мСнялось с ΠΊΠ°ΠΆΠ΄Ρ‹ΠΌ ΠΊΠ°Π΄Ρ€ΠΎΠΌ.

ΠžΡΡ‚Π°Ρ‘Ρ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π²Ρ‹Π²ΠΎΠ΄ этих ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ:

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ, ΠΊΠ°ΠΊ это Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π² ΠΈΠ³Ρ€Π΅:

ΠΊΠ°ΠΊ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты для ΠΈΠ³Ρ€. 12233310102019 f0646c625095b49e4e4c41332dd1408112ad8d69. ΠΊΠ°ΠΊ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты для ΠΈΠ³Ρ€ Ρ„ΠΎΡ‚ΠΎ. ΠΊΠ°ΠΊ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты для ΠΈΠ³Ρ€-12233310102019 f0646c625095b49e4e4c41332dd1408112ad8d69. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΊΠ°ΠΊ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты для ΠΈΠ³Ρ€. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° 12233310102019 f0646c625095b49e4e4c41332dd1408112ad8d69. ===Вводная Ρ‡Π°Ρ‚ΡŒ===

ΠŸΠΎΡ€Π° Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΈΠ³Ρ€ΠΎΠΊΠ° ΠΈ NPC. Для этого Π½ΡƒΠΆΠ½ΠΎ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ класс Car. Π’ Π½Ρ‘ΠΌ Π±ΡƒΠ΄Π΅Ρ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ Move (), с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΈΠ³Ρ€ΠΎΠΊ управляСт своим Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»Π΅ΠΌ. Π”Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ NPC Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡ‚ΡŒΡΡ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Update (), Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ просто мСняСтся ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π° Y.

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

Π˜Π³Ρ€ΠΎΠ²ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅. Π£Ρ€ΠΎΠΊΠΈ скриптописания

Для ΠΌΠ½ΠΎΠ³ΠΈΡ… Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ… игростроСвцСв, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡƒΠΆΠ΅ ΡΠΎΠ±ΠΈΡ€Π°ΡŽΡ‚ свою ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠ»Π΅ΠΏΠΈΡ‚ΡŒ Π½Π° ΠΊΠΎΠ»Π΅Π½ΠΊΠ΅ ΠΎΡ‡Π΅Ρ€Π΅Π΄Π½ΠΎΠΉ ΡˆΠ΅Π΄Π΅Π²Ρ€, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ часто видится ΠΆΡƒΡ‚ΠΊΠΈΠΌ монстром, с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ нСпонятно ΠΊΠ°ΠΊ Π±ΠΎΡ€ΠΎΡ‚ΡŒΡΡ. Π’Ρ€ΠΎΠ΄Π΅ ΠΈ Π² 3D ΡƒΠΆΠ΅ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ ΡƒΠΌΠ΅ΡŽΡ‚, ΠΈ Π² Photoshop кисточкой сноровисто Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚, ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π΅ΠΏΠ»ΠΎΡ…ΠΎ Π·Π½Π°ΡŽΡ‚. Но ΠΊΠ°ΠΊ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π΄Π΅Π»ΠΎ Π΄ΠΎΡ…ΠΎΠ΄ΠΈΡ‚ Π΄ΠΎ ΠΊΠΎΠ΄Π°, начинаСтся ΠΏΠ°Π½ΠΈΠΊΠ° ΠΈ Π½Π΅Ρ€Π°Π·Π±Π΅Ρ€ΠΈΡ…Π°: β€œ ΠšΡ‚ΠΎ спрограммируСт? ΠšΡ‚ΠΎ Π½Π°ΠΏΠΈΡˆΠ΅Ρ‚ Π·Π°Π²Π΅Ρ‚Π½Ρ‹Π΅ строчки? А Ссли ΠΈ Π½Π°ΠΏΠΈΡˆΠ΅Ρ‚, Ρ‚ΠΎ ΠΊΠ°ΠΊ Π² Π½ΠΈΡ… ΠΏΠΎΡ‚ΠΎΠΌ Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ?! ”.

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

Установка срСды Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ

ΠšΠ»Π°ΡΡΡ‹ ΠΈΠ³Ρ€Ρ‹ ΠΈ иСрархия

Распаковка ΠΈΠ³Ρ€ΠΎΠ²Ρ‹Ρ… скриптов

Настройка срСды Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ

Π’ ООП ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Ρ‚Ρ€ΠΈ основных ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ°, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… строятся практичСски всС логичСскиС манипуляции с ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ.

Π˜Π½ΠΊΠ°ΠΏΡΡƒΠ»ΡΡ†ΠΈΡ β€” объСдинСниС Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π΄Π°Π½Π½Ρ‹Ρ… с ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ для ΠΈΡ… ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ. НапримСр, Ссли рассматриваСтся класс β€œΠ›Π°ΠΌΠΏΠΎΡ‡ΠΊΠ°β€, Ρ‚ΠΎ Ρƒ Π½Π΅Π³ΠΎ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ β€œΠ²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ свСт” ΠΈ β€œΠ²Ρ‹ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ свСт”.

НаслСдованиС β€” созданиС класса ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π½Π° основС ΡƒΠΆΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ класса. ΠŸΡ€ΠΈ этом создаваСмый класс Π±ΡƒΠ΄Π΅Ρ‚ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ всС Π΄Π°Π½Π½Ρ‹Π΅ ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ класса, Π½ΠΎ ΠΈ ΠΎΠ±Π»Π°Π΄Π°Ρ‚ΡŒ своими собствСнными. ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹ Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ класса ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Ρ‹. ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ наслСдования ΠΈ пСрСопрСдСлСния: Ссли класс β€œΠŸΠ΅Π³Π°Ρβ€ наслСдуСтся ΠΎΡ‚ класса β€œΠ›ΠΎΡˆΠ°Π΄ΡŒβ€, Ρ‚ΠΎ Ρƒ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ появляСтся Π½ΠΎΠ²ΠΎΠ΅ свойство β€” β€œΠΊΡ€Ρ‹Π»ΡŒΡβ€ ΠΈ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ β€œΠΌΠ°Ρ…Π°Ρ‚ΡŒ ΠΊΡ€Ρ‹Π»ΡŒΡΠΌΠΈβ€. ВсС ΠΎΡΡ‚Π°Π»ΡŒΠ½ΠΎΠ΅ Ρƒ этих Π΄Π²ΡƒΡ… классов ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎΠ΅. Если ΠΌΡ‹ рассмотрим класс β€œΠ ΡƒΡΠ°Π»ΠΊΠ°β€, основанный Π½Π° классС β€œΠ§Π΅Π»ΠΎΠ²Π΅ΠΊβ€, Ρ‚ΠΎ Π² Π΄Π°Π½Π½ΠΎΠΌ случаС Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ мСсто ΠΏΠ΅Ρ€Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ свойства β€œΠ½ΠΎΠ³ΠΈβ€ Π½Π° β€œΡ€Ρ‹Π±ΠΈΠΉ хвост”, Π° ΠΌΠ΅Ρ‚ΠΎΠ΄ β€œΠ΄Π²ΠΈΠ³Π°Ρ‚ΡŒΡΡβ€ Π±ΡƒΠ΄Π΅Ρ‚ вмСсто двиТСния Π½ΠΎΠ³ ΠΎΡ‚Π²Π΅Ρ‡Π°Ρ‚ΡŒ Π·Π° ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ хвоста.

ΠŸΠΎΠ»ΠΈΠΌΠΎΡ€Ρ„ΠΈΠ·ΠΌ β€” Ρ‡Ρ‚ΠΎ это Ρ‚Π°ΠΊΠΎΠ΅, ΠΏΡ€ΠΎΡ‰Π΅ всСго Ρ€Π°ΡΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π½Π° ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅. Рассмотрим Π΄Π²Π° класса ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² β€” β€œΠŸΠ΅Π³Π°Ρβ€ ΠΈ β€œΠ›ΠΎΡˆΠ°Π΄ΡŒβ€. ΠŸΠΎΠ»ΠΈΠΌΠΎΡ€Ρ„ΠΈΠ·ΠΌ Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ любого пСгаса ΠΊΠ°ΠΊ лошадь ΠΈ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρƒ ΠΎΠ±ΠΎΠΈΡ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ β€œΠΊΡƒΡˆΠ°Ρ‚ΡŒ траву” ΠΈΠ»ΠΈ β€œΠ±Π΅ΠΆΠ°Ρ‚ΡŒ галопом”.

МногиС Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΠ΅ программисты Π½Π΅ Ρ€Π°Π·Π»ΠΈΡ‡Π°ΡŽΡ‚ понятия β€œΠΊΠ»Π°ΡΡβ€ ΠΈ β€œΠΎΠ±ΡŠΠ΅ΠΊΡ‚β€. Но ΠΏΡ€ΠΈ этом эти Π΄Π²Π° понятия Ρ€Π°Π·Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ Ρ‚Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ, скаТСм, Ρ‡Π΅Ρ€Ρ‚Π΅ΠΆ устройства ΠΈ Π³ΠΎΡ‚ΠΎΠ²ΠΎΠ΅ устройство Π² ΠΌΠ°Π³Π°Π·ΠΈΠ½Π΅. Π’ ΠΆΠΈΠ·Π½ΠΈ ΠΈΡ… ΡΠΏΡƒΡ‚Π°Ρ‚ΡŒ Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ.

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

К соТалСнию, Π² UDE ΠΊΠ½ΠΎΠΏΠΊΠ° β€œΠ‘ΠΎΠ·Π΄Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹ΠΉ проСкт” отсутствуСт. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ создаСм Π² ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠΉ ΠΏΠ°ΠΏΠΊΠ΅ UT2004 Ρ„Π°ΠΉΠ» CreateNewClass.bat с ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌΠΈ:

echo class %pkg% extends //base class>> %pkg%\Classes\%pkg%.uc

Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ pkg β€” это имя нашСго ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° (Π² Π΄Π°Π½Π½ΠΎΠΌ случаС β€” Megakiller ). ΠžΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ строки Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΡŽΡ‚ β€œΠΏΡƒΡΡ‚ΠΎΠΉβ€ скрипт.

ИдСя ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ

ΠŸΠ΅Ρ€Π΅Π΄ ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΠ΅ΠΌ Π½ΠΈΠΆΠ΅ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π½Π°ΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ рСкомСндуСтся ΠΈΠ·ΡƒΡ‡ΠΈΡ‚ΡŒ тСкстовый Π±Π»ΠΎΠΊ β€œ Анатомия Unreal-класса ”.

Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅! Читая Π½ΠΈΠΆΠ΅ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Π°Π±Π·Π°Ρ†Ρ‹, смотритС ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ строки Π² листингС ΠΊΠΎΠ΄Π°, ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ Π½Π° ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΉ страницС (Π½ΠΎΠΌΠ΅Ρ€Π° строк ΡƒΠΊΠ°Π·Π°Π½Ρ‹ слСва ΠΎΡ‚ ΠΊΠΎΠ΄Π°).

Класс оруТия

Рис. 1. Π”ΠΈΠ°Π»ΠΎΠ³ создания Π΄Π΅Ρ€Π΅Π²Π° классов ΠΈ Π°Ρ€Ρ…ΠΈΠ²ΠΎΠ².

Класс Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠΉ ΡΡ‚Ρ€Π΅Π»ΡŒΠ±Ρ‹

Рис. 2. Окна с Π΄Π΅Ρ€Π΅Π²ΠΎΠΌ классов ΠΈ списком Π°Ρ€Ρ…ΠΈΠ²ΠΎΠ².

Π’ Π½Π°Ρ‡Π°Π»Π΅ Ρ„Π°ΠΉΠ»Π° объявляСм нСсколько Π½ΠΎΠ²Ρ‹Ρ… свойств для ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² класса ( строки 2-5 ): Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ‚ΠΈΠΏ Π²Π·Ρ€Ρ‹Π²Π° ( ExplosionClass ), Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ‚ΠΈΠΏ слСда ΠΎΡ‚ Π²Π·Ρ€Ρ‹Π²Π°, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π½Π° стСнах ( ExplosionDecalClass ). Π’ΠΈΠΏ Π»ΡƒΡ‡Π° ΠΏΡ€ΠΈ Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠΉ ΡΡ‚Ρ€Π΅Π»ΡŒΠ±Π΅ ( BeamEffectClass ) ΠΈ радиус пораТСния ΠΏΡ€ΠΈ Π²Π·Ρ€Ρ‹Π²Π΅ ( DamageRadius ).

Рис. 3. Π”ΠΈΠ°Π»ΠΎΠ³ создания подкласса.

ΠšΠ»Π°ΡΡΡ‹ поврСТдСния

Рис. 4. Окно компиляции.

Класс ΠΈΠ³Ρ€ΠΎΠ²ΠΎΠ³ΠΎ ΠΌΡƒΡ‚Π°Ρ‚ΠΎΡ€Π°

β€” просто Π»Π΅ΠΆΠ°Ρ‚ΡŒ Π½Π° ΠΊΠ°Ρ€Ρ‚Π΅ ( строка 15 ). Π’ΡƒΡ‚ Π½Π°ΠΌ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ класс WeaponPickup ( строка 15 ). ПодмСна осущСствляСтся Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ ReplaceWith ( строка 19 ).

Рис. 5. Π‘ΠΎΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅ ΠΎΠ± ошибкС ΠΈ справка.

Дуэли Π½Π° «ΠœΠ΅Π³Π°ΠΊΠΈΠ»Π»Π΅Ρ€Π°Ρ…» ΠΈΠ½ΠΎΠ³Π΄Π° ΠΏΡ€Π΅Π²Ρ€Π°Ρ‰Π°ΡŽΡ‚ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ Π±ΠΎΠΉ Π² фССричСскоС Π·Ρ€Π΅Π»ΠΈΡ‰Π΅.

Π§Π΅Ρ€Π½ΠΎΠΊΠΎΠΆΠΈΠΉ стрСлок пытаСтся Π±Π΅Π·ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ ΠΏΠΎΠ΄ΡΡ‚Ρ€Π΅Π»ΠΈΡ‚ΡŒ «Π°Π½Ρ‚ΠΈΡ‡Π½ΡƒΡŽ» ΠΌΠ°Π΄Π°ΠΌ.

ΠœΠ΅ΡΡ‚Π½Ρ‹Π΅ Π»Π΅Π΄ΠΈ способны просто-Ρ‚Π°ΠΊΠΈ Π·Π°Ρ€ΡΠΆΠ°Ρ‚ΡŒ вас энСргиСй!

ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ Π§Π΅Π±ΡƒΡ€Π°ΡˆΠΊΠ° ΠΌΠ΅Ρ‡Ρ‚Π°Π΅Ρ‚ ΠΎ большой ΠΏΡƒΡˆΠΊΠ΅!

ΠšΠΎΠΌΠΏΠΈΠ»ΡΡ†ΠΈΡ ΠΈ тСстированиС

Для Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹ сразу ΠΌΠΎΠ³Π»ΠΈ ΠΎΡ†Π΅Π½ΠΈΡ‚ΡŒ дСйствиС ΠΌΡƒΡ‚Π°Ρ‚ΠΎΡ€Π° ΠΈ ΠΏΠΎΠΈΠ³Ρ€Π°Ρ‚ΡŒ Π² Π½Π΅Π³ΠΎ, ΠΌΡ‹ Π²Ρ‹ΠΊΠ»Π°Π΄Ρ‹Π²Π°Π΅ΠΌ ΠΏΠΎΠ»Π½ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ β€œΠœΠ΅Π³Π°ΠΊΠΈΠ»Π»Π΅Ρ€Π°β€ Π½Π° наш диск.

ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏΡ‹ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ программирования

Класс ΠΈΠ³Ρ€Ρ‹ ΠΈΠΌΠ΅Π΅Ρ‚ ΡƒΠ½ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½Π½ΡƒΡŽ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρƒ. Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° Ρ„Π°ΠΉΠ»Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ.

β€” Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ, содСрТащий объявлСниС класса:

class ClassName extends BaseClass config(user); Π³Π΄Π΅ ClassName β€” Π½Π°Π·Π²Π°Π½ΠΈΠ΅ нашСго класса, BaseClass β€” Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ класс, Π½Π° основС ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ создаСтся Π½ΠΎΠ²Ρ‹ΠΉ класс, config(user) β€” ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° Π² объявлСнии класса β€” ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ΠΈΠ· Ρ„Π°ΠΉΠ»Π° User.ini. ВсС ΠΈΠ³Ρ€ΠΎΠ²Ρ‹Π΅ классы ΠΈΠΌΠ΅ΡŽΡ‚ Π² качСствС Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ класс Object ΠΈΠ»ΠΈ любой ΠΈΠ· Π΅Π³ΠΎ классов-ΠΏΠΎΡ‚ΠΎΠΌΠΊΠΎΠ². ЛСксСмы class ΠΈ extends ΡΠ²Π»ΡΡŽΡ‚ΡΡ Π·Π°Ρ€Π΅Π·Π΅Ρ€Π²ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌΠΈ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π°ΠΌΠΈ объявлСния ΠΈΠ³Ρ€ΠΎΠ²ΠΎΠ³ΠΎ класса. Π’Π°ΠΆΠ½ΠΎ Π·Π°ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½Ρ‹ΠΌ являСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚ΠΎΡ‚ uc-Ρ„Π°ΠΉΠ», имя ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ совпадаСт с Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ объявлСнного Π² Π½Π΅ΠΌ класса. И Π² ΠΎΠ΄Π½ΠΎΠΌ uc-Ρ„Π°ΠΉΠ»Π΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ описан Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ класс.

β€” ОбъявлСния Π½ΠΎΠ²Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… (свойств класса) Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅:

PropertyName; ΠΈΠ»ΠΈ var() SimpleType PropertyName; Π³Π΄Π΅ PropertyClass β€” Π½Π°Π·Π²Π°Π½ΠΈΠ΅ класса создаваСмого свойства, SimpleType β€” элСмСнтарный Ρ‚ΠΈΠΏ, Ρ‚Π°ΠΊΠΎΠΉ ΠΊΠ°ΠΊ byte (Π±Π°ΠΉΡ‚ΠΎΠ²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΎΡ‚ 0 Π΄ΠΎ 255), int (Π·Π½Π°ΠΊΠΎΠ²Ρ‹ΠΉ Ρ†Π΅Π»Ρ‹ΠΉ Ρ‚ΠΈΠΏ), bool (логичСский Ρ‚ΠΈΠΏ), float (Π·Π½Π°ΠΊΠΎΠ²Ρ‹ΠΉ вСщСствСнный Ρ‚ΠΈΠΏ), string (символьная строка) ΠΈ Ρ‚.Π΄. (ΠΏΠΎΠ»Π½Ρ‹ΠΉ список элСмСнтарных Ρ‚ΠΈΠΏΠΎΠ² ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π² справкС UDE), PropertyName β€” имя Π½ΠΎΠ²ΠΎΠ³ΠΎ свойства.

β€” ОбъявлСния Π½ΠΎΠ²Ρ‹Ρ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΈΠ»ΠΈ ΠΏΠ΅Ρ€Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ унаслСдованных ΠΎΡ‚ Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ класса ΠΈΠΌΠ΅ΡŽΡ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Π²ΠΈΠ΄:

β€” Π—Π°Π΄Π°Π½ΠΈΠ΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² (свойств) ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ класса:

defaultproperties Π³Π΄Π΅ defaultproperties β€” лСксСма, ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‰Π°Ρ Π½Π°Ρ‡Π°Π»ΠΎ Π±Π»ΠΎΠΊΠ° свойств, Variable1Name β€” Π½Π°Π·Π²Π°Π½ΠΈΠ΅ свойства, ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰Π΅Π³ΠΎ собой Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ класса ClassName, содСрТащСгося Π² u-Ρ„Π°ΠΉΠ»Π΅ с ΠΈΠΌΠ΅Π½Π΅ΠΌ Package. ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ Variable2Name ΠΈΠΌΠ΅Π΅Ρ‚ элСмСнтарный Ρ‚ΠΈΠΏ, поэтому ΠΈ присваиваСмоС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Variable2Value Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΈΠΌΠ΅Ρ‚ΡŒ Ρ‚ΠΎΡ‚ ΠΆΠ΅ Ρ‚ΠΈΠΏ. Π‘ΠΈΠΌΠ²ΠΎΠ» «=» ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ присвоСния значСния справа ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ слСва. Π€ΠΈΠ³ΡƒΡ€Π½Ρ‹Π΅ скобки ΠΎΠ±ΠΎΡΠΎΠ±Π»ΡΡŽΡ‚ Π² ΠΊΠΎΠ΄Π΅ Π±Π»ΠΎΠΊ присвоСний.

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

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

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½Π°Π³Ρ€ΡƒΠ·ΠΎΡ‡Π½Ρ‹Ρ… скриптов для Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π½Ρ‹Ρ…/ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… ΠΈΠ³Ρ€. Π§Π°ΡΡ‚ΡŒ 1

ΠŸΡ€ΠΈΠ²Π΅Ρ‚, Π₯Π°Π±Ρ€. Π’ ΠΏΡ€ΠΎΡˆΠ»ΠΎΠΉ ΡΡ‚Π°Ρ‚ΡŒΠ΅ я рассказал ΠΎΠ± Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ процСсса Π½Π°Π³Ρ€ΡƒΠ·ΠΎΡ‡Π½ΠΎΠ³ΠΎ тСстирования Π² ΠΈΠ³Ρ€ΠΎΠ²ΠΎΠΉ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ я Ρ€Π°Π±ΠΎΡ‚Π°ΡŽ. Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΏΡ€ΠΈΡˆΠ»ΠΎ врСмя остановится Π½Π° Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡Π°Ρ…, с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ ΠΏΡ€ΠΈΡˆΠ»ΠΎΡΡŒ ΡΡ‚ΠΎΠ»ΠΊΠ½ΡƒΡ‚ΡŒΡΡ Π² Ρ…ΠΎΠ΄Π΅ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠΈ ΠΊ процСссу тСстирования самих ΠΈΠ³Ρ€.

Π•ΡΡ‚ΡŒ большая Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ тСстированиСм Ρ€Π°Π·Π½Ρ‹Ρ… банковских/retail-процСссов ΠΈ ΠΈΠ³Ρ€. Π’ ΠΏΠ΅Ρ€Π²ΠΎΠΌ случаС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ ΠΈΡ… Π·Π°Π΄Π°Ρ‡ΠΈ ΠΏΠΎΡ‡Ρ‚ΠΈ ΠΈΠ·ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎ Π΄Ρ€ΡƒΠ³ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³Π° ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚Π΅ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈ элСмСнты, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ видят Π² ΠΎΠΊΠ½Π΅ своих Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠ² ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ² Π² Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚, Ρ‡Ρ‚ΠΎ ΠΎΠ±Π»Π΅Π³Ρ‡Π°Π΅Ρ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ Π½Π°Π³Ρ€ΡƒΠ·ΠΎΡ‡Π½Ρ‹Ρ… скриптов. Π’ ΠΈΠ³Ρ€Π°Ρ… ΠΆΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ (ΠΈΠ³Ρ€ΠΎΠΊΠΈ) находятся Π² Π΄ΠΈΠ½Π°ΠΌΠΈΡ‡Π½ΠΎ ΠΌΠ΅Π½ΡΡŽΡ‰Π΅ΠΌΡΡ ΠΌΠΈΡ€Π΅ ΠΈ часто ΠΏΠΎΠ΄Π²Π΅Ρ€ΠΆΠ΅Π½Ρ‹ влиянию Π΄Ρ€ΡƒΠ³ Π΄Ρ€ΡƒΠ³Π°. Π’ ΠΌΠΎΠ΅ΠΌ Π²ΠΎΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ Ρ€Π°Π·Π½ΠΈΡ†Π° выглядит ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ Ρ‚Π°ΠΊ:

ΠΊΠ°ΠΊ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты для ΠΈΠ³Ρ€. image loader. ΠΊΠ°ΠΊ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты для ΠΈΠ³Ρ€ Ρ„ΠΎΡ‚ΠΎ. ΠΊΠ°ΠΊ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты для ΠΈΠ³Ρ€-image loader. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΊΠ°ΠΊ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты для ΠΈΠ³Ρ€. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° image loader. ===Вводная Ρ‡Π°Ρ‚ΡŒ===

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

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

ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Ρ€Π΅Π»Π΅Π²Π°Π½Ρ‚Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…

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

Одна ΠΈΠ· Π³Π»Π°Π²Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ ΠΏΡ€ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ скриптов для ΠΈΠ³Ρ€Ρ‹ β€” это ΡΠ»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ самого слСТСниС (Ρ‚Ρ€Π΅ΠΊΠΈΠ½Π³Π°) ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ»ΠΈ Π΄ΠΎ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ ΠΌΠΎΠΌΠ΅Π½Ρ‚Π°, ΠΏΠ΅Ρ€Π΅Π΄ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹. Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡ ΠΎΠ± ΠΈΠ·ΠΌΠ΅Π½Ρ‘Π½Π½ΠΎΠΌ состоянии ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², рСсурсов, ΡŽΠ½ΠΈΡ‚ΠΎΠ² ΠΈ ΠΏΡ€. ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠΉΡ‚ΠΈ Π² любой ΠΌΠΎΠΌΠ΅Π½Ρ‚, Π΄Π°ΠΆΠ΅ послС выполнСния Π½Π΅ связанных с ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΌΠΈ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ дСйствий. Если ΠΏΡ€ΠΎΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Π΄Π°Π½Π½ΠΎΠ΅ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅, Ρ‚ΠΎ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ (VU, Ρ‚Ρ€Π΅Π΄ Π² Jmeter) Π±ΡƒΠ΄Π΅Ρ‚ рассинхронизован с ΠΈΠ³Ρ€ΠΎΠΉ ΠΈ Π½Π°Ρ‡Π½Π΅Ρ‚ Π³Π΅Π½Π΅Ρ€ΠΈΡ‚ΡŒ ошибки аля β€œΠ½Π΅Π΄ΠΎΡΡ‚Π°Ρ‚ΠΎΡ‡Π½ΠΎ рСсурсов” ΠΈΠ»ΠΈ Β«Π½Π΅Ρ‚ мСста Π½Π° ΠΊΠ°Ρ€Ρ‚Π΅Β» ΠΈ ΠΏΡ€Π΅Π²Ρ€Π°Ρ‰Π°Ρ‚ΡŒ Π½Π°Π³Ρ€ΡƒΠ·ΠΎΡ‡Π½Ρ‹ΠΉ тСст Π² Π½Π΅Ρ‡Ρ‚ΠΎ бСсполСзноС. ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ всСгда Π΅ΡΡ‚ΡŒ Π²Π΅Ρ€ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ всё ΠΆΠ΅ скрипт выдаст Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Ρ‚ΠΈΠΏΠ° β€œΠ½Π΅Π»ΡŒΠ·Ρ Π°Ρ‚Π°ΠΊΠΎΠ²Π°Ρ‚ΡŒ ΡΠΎΡŽΠ·Π½ΠΈΠΊΠ°β€, Ссли ΠΎΠ½ сСкунду Π½Π°Π·Π°Π΄ стал Ρ‚Π°ΠΊΠΎΠ²Ρ‹ΠΌ, Π½ΠΎ Ρ‚ΠΎ ΠΆΠ΅ самоС ΠΏΡ€ΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ‚ ΠΈ Π² настоящСм ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅.

Π’Π°ΠΊΠΆΠ΅ ослоТняСт Тизнь Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΏΠΎΡ‡Ρ‚ΠΈ всСгда всС исходныС Π΄Π°Π½Π½Ρ‹Π΅ ΠΈ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π΅ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄Π΅Π» Π² ΠΈΠ³Ρ€ΠΎΠ²ΠΎΠΌ ΠΌΠΈΡ€Π΅ приходят Π² ΠΊΠ»ΠΈΠ΅Π½Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΈ Π»ΠΎΠ³ΠΈΠ½Π΅ Π² ΠΈΠ³Ρ€Ρƒ (ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ это ΠΎΠ³Ρ€ΠΎΠΌΠ½Ρ‹ΠΉ JSON Π½Π° нСсколько ΠΌΠ΅Π³Π°Π±Π°ΠΉΡ‚) ΠΈ Π΄Π°Π»Π΅Π΅ ΠΏΠΎ Ρ…ΠΎΠ΄Ρƒ ΠΈΠ³Ρ€Ρ‹ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ исходя ΠΈΠ· этих ΠΏΠ΅Ρ€Π²ΠΎΠ½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ прСходящих ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ находится Π² Ρ€Π΅Π»Π΅Π²Π°Π½Ρ‚Π½ΠΎΠΌ состоянии, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Π·Π½Π°Π΅Ρ‚ ΠΎ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΌ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Π΄Π΅Π». Π’ΠΎ ΠΆΠ΅ самоС Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ Π² скриптС, Π½Π°Π΄ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ VU β€œΠ·Π°ΠΏΠΎΠΌΠ½ΠΈΠ»β€ Ρ‡Ρ‚ΠΎ ΠΈΠ³Ρ€Π° присылаСт Π½Π° стадии Π»ΠΎΠ³ΠΈΠ½Π° ΠΈ Π΄Π°Π»Π΅Π΅ Π°ΠΊΠΊΡƒΡ€Π°Ρ‚Π½ΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ эти Π΄Π°Π½Π½Ρ‹Π΅ Π² Ρ…ΠΎΠ΄Π΅ выполнСния тСста. Π”Π°Π»Π΅Π΅ ΠΏΡ€ΠΈΠ²Π΅Π΄Ρƒ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΊΠ°ΠΊ я Ρ€Π΅ΡˆΠ°Π» ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ с ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· ΠΈΠ³Ρ€ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ InnoGames.

Forge of Empires

(надСюсь это Π½Π΅ зачтСтся Π·Π° Ρ€Π΅ΠΊΠ»Π°ΠΌΡƒ, Π½ΡƒΠΆΠ½ΠΎ ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ ΡΡƒΡ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ ΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ, Π½ΠΎ Π½Π΅ ΠΌΠΎΠ³Ρƒ Π±Π΅Π· ΠΊΡ€Π°Ρ‚ΠΊΠΎΠ³ΠΎ описания самой ΠΈΠ³Ρ€Ρ‹)

Π­Ρ‚ΠΎ Π³Ρ€Π°Π΄ΠΎΡΡ‚Ρ€ΠΎΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ симулятор Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΈΠ³Ρ€ΠΎΠΊ Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ с эпохи ΠΊΠ°ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ Π²Π΅ΠΊΠ° ΠΈ постСпСнно, развивая Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ, завоСвывая ΠΏΡ€ΠΎΠ²ΠΈΠ½Ρ†ΠΈΠΈ, воюя с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ ΠΈΠ³Ρ€ΠΎΠΊΠ°ΠΌΠΈ, ΠΏΡ€ΠΎΠ΄Π²ΠΈΠ³Π°Π΅Ρ‚ ΠΈ Ρ€Π°ΡΡˆΠΈΡ€ΡΠ΅Ρ‚ свой Π³ΠΎΡ€ΠΎΠ΄ до… эндгСйма, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΡ‡Π΅Π½ΡŒ Π΄Π°Π»Π΅ΠΊΠΎ.

Π’Π½ΠΎΠ²ΡŒ зарСгистрированный ΠΈΠ³Ρ€ΠΎΠΊ послС Π»ΠΎΠ³ΠΈΠ½Π° Π²ΠΈΠ΄ΠΈΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅: пустоС ΠΏΠΎΠ»Π΅ ΠΈ ΠΎΠ΄Π½ΠΎ Π³Π»Π°Π²Π½ΠΎΠ΅ большоС Π·Π΄Π°Π½ΠΈΠ΅ (Π“Π—), ΠΏΠ°Ρ€Ρƒ Π΄Π΅Ρ€Π΅Π²ΡŒΠ΅Π² ΠΈ Π΄ΠΎΡ€ΠΎΠ³ Π½Π° Π½Π΅ΠΌ:
ΠΊΠ°ΠΊ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты для ΠΈΠ³Ρ€. image loader. ΠΊΠ°ΠΊ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты для ΠΈΠ³Ρ€ Ρ„ΠΎΡ‚ΠΎ. ΠΊΠ°ΠΊ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты для ΠΈΠ³Ρ€-image loader. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΊΠ°ΠΊ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты для ΠΈΠ³Ρ€. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° image loader. ===Вводная Ρ‡Π°Ρ‚ΡŒ===

Π‘Π°ΠΌΠΎ нСзанятоС ΠΏΠΎΠ»Π΅ ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ Ρ€Π°Π·Π±ΠΈΡ‚Ρ‹ Π½Π° ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Ρ‹, Π² зависимости ΠΎΡ‚ Ρ€Π°Π·ΠΌΠ΅Ρ€Π° приходится ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒΡΡ с Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ самого здания ΠΈ свободного мСста Π½Π° ΠΊΠ°Ρ€Ρ‚Π΅. Здания дСлятся Π½Π° Ρ‚ΠΈΠΏΡ‹: ΠΆΠΈΠ»Ρ‹Π΅, производствСнныС, Π²ΠΎΠ΅Π½Π½Ρ‹Π΅, ΠΊΡƒΠ»ΡŒΡ‚ΡƒΡ€Π½Ρ‹Π΅, Π΄ΠΎΡ€ΠΎΠ³ΠΈ ΠΈ ΠΏΡ€ΠΎΡ‡Π΅Π΅. Π Π°Π·Π½Ρ‹Π΅ здания производят Ρ€Π°Π·Π½Ρ‹Π΅ рСсурсы: ΠΆΠΈΠ»Ρ‹Π΅ β€” насСлСниС ΠΈ дСньги, производствСнныС β€” Ρ‚ΠΎΠ²Π°Ρ€Ρ‹ ΠΈ рСсурсы, ΠΊΡƒΠ»ΡŒΡ‚ΡƒΡ€Π½Ρ‹Π΅ β€” ΡΡ‡Π°ΡΡ‚ΡŒΠ΅ ΠΈ Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅. ΠŸΡ€ΠΈ постройкС ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ здания Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ Ρ‚Π΅ ΠΆΠ΅ самыС рСсурсы ΠΈ Ссли ΠΈΡ… Π½Π΅ Ρ…Π²Π°Ρ‚Π°Π΅Ρ‚ Π½ΡƒΠΆΠ½ΠΎ Π»ΠΈΠ±ΠΎ ΠΆΠ΄Π°Ρ‚ΡŒ, Π»ΠΈΠ±ΠΎ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΠΎΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Π½ΠΎΠ²Ρ‹ΠΉ Π΄ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²ΠΎΡΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ насСлСниС. ЧувствуСтС ΠΊΡƒΠ΄Π° я клоню? Π­Ρ‚ΠΎ Π½Π΅ бухгалтСрскиС ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΊΠΈ ΡΠΌΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ πŸ™‚

Π‘Ρ‚Ρ€ΠΎΠΈΡ‚Π΅Π»ΡŒΡΡ‚Π²ΠΎ

Π’ Π³Ρ€Π°Π΄ΠΎΡΡ‚Ρ€ΠΎΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΌ симуляторС Π³Π»Π°Π²Π½Ρ‹ΠΌ бизнСс-процСссом (Π½Π°Π·ΠΎΠ²Π΅ΠΌ это Ρ‚Π°ΠΊ) являСтся собствСнно само ΡΡ‚Ρ€ΠΎΠΈΡ‚Π΅Π»ΡŒΡΡ‚Π²ΠΎ. Π­Ρ‚ΠΎ пСрвая ΠΈ главная ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° ΠΏΡ€ΠΈ создании скриптов для ΠΈΠ³Ρ€ Ρ‚Π°ΠΊΠΎΠ³ΠΎ Ρ€ΠΎΠ΄Π°. ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΠ° постройки здания дСлится Π½Π° нСсколько ΠΏΠΎΠ΄Π·Π°Π΄Π°Ρ‡, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ€Π΅ΡˆΠ°Ρ‚ΡŒ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ:

ПослС Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… часов Ρ€Π°Π·Π΄ΡƒΠΌΠΈΠΉ ΠΏΡ€ΠΈΡˆΠ»Π° идСя простого Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°, я Π½Π°Π·Π²Π°Π» Π΅Π³ΠΎ β€œΡΡ‚Ρ€ΠΎΠΈΡ‚Π΅Π»ΡŒΡΡ‚Π²ΠΎ слоями”. Π‘ΡƒΡ‚ΡŒ Π΅Π³ΠΎ Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ. Как Π²Ρ‹ ΠΌΠΎΠ³Π»ΠΈ Π·Π°ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ Π½Π° ΡΠΊΡ€ΠΈΠ½ΡˆΠΎΡ‚Π΅ свСрху, Π“Π— ΠΏΡ€ΠΈΠΆΠ°Ρ‚ΠΎ ΠΊ ΠΊΡ€Π°ΡŽ ΠΊΠ°Ρ€Ρ‚Ρ‹ Π·Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ ΡƒΠΆΠ΅ Π½ΠΈΡ‡Π΅Π³ΠΎ ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ нСльзя ΠΈ это сыграло Π½Π° Ρ€ΡƒΠΊΡƒ. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ VU послС Π»ΠΎΠ³ΠΈΠ½Π° ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ Π΄Π΅Π»ΠΎΠΌ строит Π΄ΠΎΡ€ΠΎΠ³Ρƒ ΠΏΠΎ ΠΊΠΎΠ½Ρ‚ΡƒΡ€Ρƒ ΠΊΠ°Ρ€Ρ‚Ρ‹ ΠΈ самого Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ здания, Π° ΡƒΠΆΠ΅ ΠΏΠΎΡ‚ΠΎΠΌ строит Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ здания, Π²ΠΎΠ·Π»Π΅ этой Π΄ΠΎΡ€ΠΎΠ³ΠΈ, ΠΏΠΎΠΊΠ° Π΅ΡΡ‚ΡŒ мСсто. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ всС здания построСнныС Ρƒ Π΄ΠΎΡ€ΠΎΠ³ΠΈ Π±ΡƒΠ΄ΡƒΡ‚ связаны с Π“Π—. Π”Π°Π»Π΅Π΅ ΠΌΡ‹ строим ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ β€œΡΠ»ΠΎΠΉβ€ Π΄ΠΎΡ€ΠΎΠ³ΠΈ ΡƒΠΆΠ΅ ΠΏΠΎ ΠΊΠΎΠ½Ρ‚ΡƒΡ€Ρƒ построСнный Π·Π΄Π°Π½ΠΈΠΉ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΏΠ΅Ρ€Π²ΠΎΠ½Π°Ρ‡Π°Π»ΡŒΠ½ΡƒΡŽ Π΄ΠΎΡ€ΠΎΠ³Ρƒ ΠΌΡ‹ строим, исходя ΠΈΠ· условия: Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Ссли слСва Π³Ρ€Π°Π½ΠΈΡ†Π° ΠΊΠ°Ρ€Ρ‚Ρ‹, справа β€” пусто, Π° свСрху ΠΈ снизу ΠΎΡ‚ провСряСмого ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π° пусто ΠΈΠ»ΠΈ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ, Ρ‚ΠΎ ΠΌΡ‹ вСроятно ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Π΄ΠΎΡ€ΠΎΠ³Ρƒ.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ Ρ‚Π°ΠΊ (Π·Π΅Π»Π΅Π½Ρ‹ΠΉ ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚ β€” Π“Π—, ΠΆΡ‘Π»Ρ‚Ρ‹ΠΉ β€” Π΄ΠΎΡ€ΠΎΠ³Π°, Ρ‡Π΅Ρ€Π½Ρ‹ΠΉ β€” ΠΊΠ°ΠΊΠΎΠ΅-Π»ΠΈΠ±ΠΎ Π·Π΄Π°Π½ΠΈΠ΅):

ΠΊΠ°ΠΊ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты для ΠΈΠ³Ρ€. image loader. ΠΊΠ°ΠΊ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты для ΠΈΠ³Ρ€ Ρ„ΠΎΡ‚ΠΎ. ΠΊΠ°ΠΊ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты для ΠΈΠ³Ρ€-image loader. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΊΠ°ΠΊ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты для ΠΈΠ³Ρ€. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° image loader. ===Вводная Ρ‡Π°Ρ‚ΡŒ===

ΠŸΠΎΠ΅Ρ…Π°Π»ΠΈ

Π’Π°ΠΊ ΠΊΠ°ΠΊ данная ΠΈΠ³Ρ€Π° общаСтся с ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠΌ ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ посрСдством http с JSON`Π°ΠΌΠΈ, я ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ Π² Jmeter Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ org.json для Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΈ парсинга запросов/ΠΎΡ‚Π²Π΅Ρ‚ΠΎΠ² Π² post- ΠΈ pre- процСссорах.

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

Для упрощСния ΠΊΠΎΠ΄Π° впослСдствии ΠΈ ΡƒΠΌΠ΅Π½ΡŒΡˆΠ΅Π½ΠΈΡ потрСбляСмой памяти ΠΊΠ°ΠΆΠ΄Ρ‹ΠΌ java-Ρ‚Ρ€Π΅Π΄ΠΎΠΌ ΠΌΡ‹ сохраняСм ΠΈΠ· всСго Π½Π°Π±ΠΎΡ€Π° Π΄Π°Π½Π½Ρ‹Ρ… Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚Π΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ, поэтому ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π΄Π²Π° ΠΏΡ€ΠΎΡΡ‚Π΅Π½ΡŒΠΊΠΈΡ… Π²ΡΠΏΠΎΠΌΠΎΠ³Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… класса Entity ΠΈ ExistEntity β€” ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ Π·Π° любоС доступноС Π² ΠΈΠ³Ρ€Π΅ Π·Π΄Π°Π½ΠΈΠ΅ Π² ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ΅ (со ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒΡŽ, Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ, функциями ΠΈ ΠΏΡ€ΠΎΡ‡ΠΈΠΌ), Π° Π²Ρ‚ΠΎΡ€ΠΎΠΉ Π·Π° ΡƒΠΆΠ΅ построСнноС Π² Π³ΠΎΡ€ΠΎΠ΄Π΅ (с ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π°ΠΌΠΈ).

ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ POST-запрос StaticData_getData Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΎΠ³Ρ€ΠΎΠΌΠ½Ρ‹ΠΉ JSON вСсом Π² 1-2 ΠΌΠ΅Π³Π°Π±Π°ΠΉΡ‚Π°. Распарсим Π΅Π³ΠΎ, создадим структуру, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ HashMap ΠΈ Π·Π°ΠΏΠΎΠ»Π½ΠΈΠΌ Π΅Ρ‘ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ Entity с ΠΊΠ»ΡŽΡ‡Π°ΠΌΠΈ id, Ρ‡Ρ‚ΠΎΠ±Ρ‹ впослСдствии ΠΎΠ±Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ ΠΊ этому Ρ…ΡΡˆ-ΠΌΠ°ΠΏΡƒ Π·Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ ΠΎ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΌ Π·Π΄Π°Π½ΠΈΠΈ:

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π·Π½Π°Π΅Ρ‚ всю Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ зданиях. Π”Π°Π»Π΅Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ β€œΠ·Π°ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒβ€ Ρ‚Π΅Ρ€Ρ€ΠΈΡ‚ΠΎΡ€ΠΈΡŽ, Π΅Ρ‘ Ρ€Π°Π·ΠΌΠ΅Ρ€Ρ‹ ΠΈ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π΅ располоТСниС Π·Π΄Π°Π½ΠΈΠΉ Π² самом Π³ΠΎΡ€ΠΎΠ΄Π΅. Π― использовал Ρ‚Π°ΠΊΠΆΠ΅ HashMap, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π² качСствС ΠΊΠ»ΡŽΡ‡Π΅ΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ класса java.awt.Point с ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π°ΠΌΠΈ X, Y, Π° Π² качСствС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ String с Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ Ρ‚ΠΈΠΏΠ° здания Π² Π΄Π°Π½Π½ΠΎΠΉ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π΅.

Π‘Π°ΠΌΠ° тСрритория Π³ΠΎΡ€ΠΎΠ΄Π° Π½Π΅ являСтся ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚ΠΎΠΌ Π° состоит ΠΈΠ· Π½Π°Π±ΠΎΡ€Π° ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹Ρ… областСй, Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ 4×4, поэтому ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ ΠΌΡ‹ заполняСм Π΄Π°Π½Π½Ρ‹ΠΉ Ρ…ΡΡˆ-ΠΌΠ°ΠΏ нулями ΠΏΠΎ всСм ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π°ΠΌ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ ΠΈ доступны ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ. Помимо этого, Π½Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅Π³ΠΎ шага, Ρ‚.ΠΊ. ΠΌΡ‹ получая Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ здания ΠΈΠ· Π΄Π°Π½Π½ΠΎΠ³ΠΎ запроса, Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ β€œΠ·Π°Π»ΠΈΡ‚ΡŒβ€ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹, исходя ΠΈΠ· ΡˆΠΈΡ€ΠΈΠ½Ρ‹ ΠΈ высоты здания.

ΠŸΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ vars.putObject() Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ‚Ρ€Π΅Π΄ (VU) Π±ΡƒΠ΄Π΅Ρ‚ Π·Π½Π°Ρ‚ΡŒ всю Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ, остаётся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ воврСмя ΠΎΠ±Π½ΠΎΠ²Π»ΡΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΌ этапС выполнСния скрипта, Ссли ΠΈΠ³Ρ€Π° присылаСт ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Π΅.

Π‘Ρ‚Ρ€ΠΎΠΈΠΌ

Π’Π΅ΠΏΠ΅Ρ€ΡŒ зная ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒ, Ρ€Π°Π·ΠΌΠ΅Ρ€Ρ‹ Π·Π΄Π°Π½ΠΈΠΉ, Π° Ρ‚Π°ΠΊΠΆΠ΅ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π΅ располоТСниС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π½Π° Ρ‚Π΅Ρ€Ρ€ΠΈΡ‚ΠΎΡ€ΠΈΠΈ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ Π³ΠΎΡ€ΠΎΠ΄Π°, ΠΌΠΎΠΆΠ½ΠΎ Π½Π°Ρ‡ΠΈΠ½Π°Ρ‚ΡŒ ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ здания. ΠŸΠ΅Ρ€Π²Ρ‹ΠΌ шагом, ΠΊΠ°ΠΊ я писал Ρ€Π°Π½Π½Π΅Π΅, являСтся ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ β€œΡΠ»ΠΎΠΉβ€ Π΄ΠΎΡ€ΠΎΠ³ΠΈ ΠΏΠΎ ΠΊΠΎΠ½Ρ‚ΡƒΡ€Ρƒ ΠΊΠ°Ρ€Ρ‚Ρ‹, Ρ‡Ρ‚ΠΎΠ±Ρ‹ всС ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ здания ΠΈΠΌΠ΅Π»ΠΈ связь с Π³Π»Π°Π²Π½Ρ‹ΠΌ.

ДобавляСм Π² HTTP Sampler jsr223 pre-processor ΠΈ Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΠ΅ΠΌ запрос. ΠŸΠ΅Ρ€Π΅Π±ΠΈΡ€Π°Π΅ΠΌ ΠΊΠ°ΠΆΠ΄ΡƒΡŽ ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚ΠΈΠΊ, ΠΈΡ‰Π΅ΠΌ пустой ΠΈ Ρ‚ΠΎΡ‚, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΎΠΊΡ€ΡƒΠΆΠ°Π΅Ρ‚ Ρ…ΠΎΡ‚ΡŒ ΠΎΠ΄ΠΈΠ½ (ΠΈΠ· 8) занятый Π΄Ρ€ΡƒΠ³ΠΈΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ (Π²ΠΊΠ»ΡŽΡ‡Π°Ρ Π³Ρ€Π°Π½ΠΈΡ†Ρƒ) ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΌΡ‹ β€œΠΎΠ±Π²Π΅Π΄Ρ‘ΠΌβ€ Π΄ΠΎΡ€ΠΎΠ³ΠΎΠΉ любой ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ Π³Ρ€Π°Π½ΠΈΡ†Ρƒ Ρ‚Π΅Ρ€Ρ€ΠΈΡ‚ΠΎΡ€ΠΈΠΈ (здСсь Π΅ΡΡ‚ΡŒ большой простор для ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΉ, надСюсь ΠΊΡ‚ΠΎ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ подскаТСт Π±ΠΎΠ»Π΅Π΅ Π»ΡƒΡ‡ΡˆΠΈΠΉ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ):

Π”Π°Π»Π΅Π΅ Π½Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ само Π·Π΄Π°Π½ΠΈΠ΅. Допустим, сСйчас Π½Π°ΠΌ Π½Π΅Π²Π°ΠΆΠ½ΠΎ ΠΊΠ°ΠΊΠΎΠ΅, Π½Π°ΠΌ Π²Π°ΠΆΠ΅Π½ лишь Π΅Π³ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€. БоотвСтсвСнно ΠΈΡ‰Π΅ΠΌ Π½Π° Π²ΠΎΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΠΎΠΉ ΠΊΠ°Ρ€Ρ‚Π΅ Ρ‚Π°ΠΊΡƒΡŽ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρƒ, ΠΎΡ‚ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π½Π° расстоянии ΡˆΠΈΡ€ΠΈΠ½Ρ‹ здания ΠΏΠΎ оси X ΠΈ высоты здания ΠΏΠΎ оси Y находятся свободныС ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Ρ‹, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π² ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· восьми ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚ΠΎΠ² ΠΏΠΎ ΡƒΠ³Π»Π°ΠΌ здания Π΅ΡΡ‚ΡŒ Π΄ΠΎΡ€ΠΎΠ³Π° (я ΠΏΡ€Π°Π²Π΄Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡŽ 4 Π²Π΅Ρ€Ρ…Π½ΠΈΡ…, Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π³ΠΎΡ€ΠΎΠ΄Π° ΠΈΠ΄Π΅Ρ‚ свСрху Π²Π½ΠΈΠ·):

ΠΊΠ°ΠΊ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты для ΠΈΠ³Ρ€. image loader. ΠΊΠ°ΠΊ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты для ΠΈΠ³Ρ€ Ρ„ΠΎΡ‚ΠΎ. ΠΊΠ°ΠΊ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты для ΠΈΠ³Ρ€-image loader. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΊΠ°ΠΊ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты для ΠΈΠ³Ρ€. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° image loader. ===Вводная Ρ‡Π°Ρ‚ΡŒ===

Π’Π°ΠΊΠΆΠ΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΠ΄ΠΎΡΡ‚ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ Π½Π° всСй ΠΆΠ΅Π»Π°Π΅ΠΌΠΎΠΉ Ρ‚Π΅Ρ€Ρ€ΠΈΡ‚ΠΎΡ€ΠΈΠΈ Π±ΡƒΠ΄ΡƒΡ‰Π΅Π³ΠΎ здания Π½Π΅ окаТСтся ΠΊΠ°ΠΊΠΎΠ³ΠΎ Π»ΠΈΠ±ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° (Π΄Π΅Ρ€Π΅Π²Π° Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€):

На самом Π²Π΅Ρ€Ρ…Π½Π΅ΠΌ ΡƒΡ€ΠΎΠ²Π½Π΅ тСст-ΠΏΠ»Π°Π½Π° Jmeter добавляСм Post-processor ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ, Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π΅Π°Π³ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½Π° ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ входящий рСспонс ΠΎΡ‚ ΠΈΠ³Ρ€Ρ‹, ΠΏΠ°Ρ€ΡΠΈΡ‚ΡŒ Π΅Π³ΠΎ ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡ‚ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π½Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ‚Ρ€Π΅ΠΊΠ°Ρ‚ΡŒ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ рСсурсов, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡ‚ΡŒ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΊΠ°Ρ€Ρ‚Ρƒ Π½ΠΎΠ²Ρ‹ΠΌΠΈ зданиями:

Как ΠΈΡ‚ΠΎΠ³ΠΎ послС ΠΎΠ΄Π½ΠΎΠ³ΠΎ 12-часового Π½Π°Π³Ρ€ΡƒΠ·ΠΎΡ‡Π½ΠΎΠ³ΠΎ тСста ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎ построСнный Π³ΠΎΡ€ΠΎΠ΄ с Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ зданиями, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ соСдинСны с Π³Π»Π°Π²Π½Ρ‹ΠΌ Π·Π΄Π°Π½ΠΈΠ΅ΠΌ, Π° Π·Π½Π°Ρ‡ΠΈΡ‚ Π²ΠΏΠΎΠ»Π½Π΅ сСбС Π½Π΅ΠΏΠ»ΠΎΡ…ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½ΠΈΡ€ΡƒΡŽΡ‚:
ΠΊΠ°ΠΊ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты для ΠΈΠ³Ρ€. image loader. ΠΊΠ°ΠΊ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты для ΠΈΠ³Ρ€ Ρ„ΠΎΡ‚ΠΎ. ΠΊΠ°ΠΊ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты для ΠΈΠ³Ρ€-image loader. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΊΠ°ΠΊ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ скрипты для ΠΈΠ³Ρ€. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° image loader. ===Вводная Ρ‡Π°Ρ‚ΡŒ===

Бпасибо Π·Π° Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, я Ρ€Π΅ΡˆΠΈΠ» Π½Π΅ ΡΠ²Π°Π»ΠΈΠ²Π°Ρ‚ΡŒ всё Π² ΠΊΡƒΡ‡Ρƒ ΠΈ Ρ€Π°Π·Π±ΠΈΡ‚ΡŒ Ρ‚Π΅ΠΌΡƒ Π½Π° нСсколько частСй. Π‘Π»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ Ρ‡Π°ΡΡ‚ΡŒ Π±ΡƒΠ΄Π΅Ρ‚ посвящСна Ρ€Π΅ΡˆΠ΅Π½ΠΈΡŽ Ρ‚ΠΎΠΉ ΠΆΠ΅ самой ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹, Π½ΠΎ Π² Π±ΠΎΠ»Π΅Π΅ Тёстких условиях, ΠΊΠΎΠ³Π΄Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚ ΠΈΠ³Ρ€Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ HTTP-ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» с protobuf, Π° обновлСния ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ Ρ‡Π΅Ρ€Π΅Π· web-сокСт с STOMP.

ΠžΡΡ‚Π°Π²Π»ΡŽ ссылку Π½Π° наш Π³ΠΈΡ‚Ρ…Π°Π±, ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π°ΠΉΠ΄Π΅Ρ‚Π΅ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ интСрСсноС.

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

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

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

Анатомия Unreal-класса