Программируй в MINECRAFT

Page 1



AL SWEIGART

CODING WITH MINECRAFT

BUILD TALLER, FARM FASTER, MINE DEEPER, AND AUTOMATE THE BORING STUFF


ЭЛ СВЕЙГАРТ

ПРОГРАММИРУЙ В MINECRAFT

СТРОЙ ВЫШЕ, ВЫРАЩИВАЙ БЫСТРЕЕ, КОПАЙ ГЛУБЖЕ И АВТОМАТИЗИРУЙ ВСЮ СКУЧНУЮ РАБОТУ!


ƣƔƚ 004.4-93 ƑƑƚ 32.973.26-018 ơ24 Al Sweigart CODING WITH MINECRAFT: BUILD TALLER, FARM FASTER, MINE DEEPER, AND AUTOMATE THE BORING STUFF © 2018 by Al Sweigart. Title of English-language original: Coding with Minecraft: Build Taller, Farm Faster, Mine Deeper, and Automate the Boring Stuff, ISBN 978-1-59327-853-3, published by No Starch Press. Russian-language edition copyright © 2018 by EKSMO Publishing House. All rights reserved

ơ24

ƦƷƺƾƸƵDžLJ, Ʋǀ. ƟǀƾƳǀưƼƼƸǀǃƹ Ʋ Minecraft. ơǂǀƾƹ ƲNjLjƵ, ƲNjǀưljƸƲưƹ ƱNjǁǂǀƵƵ, ƺƾƿưƹ ƳƻǃƱƶƵ Ƹ ưƲǂƾƼưǂƸƷƸǀǃƹ Ʋǁǎ ǁƺǃLJƽǃǎ ǀưƱƾǂǃ! / ƭƻ ơƲƵƹƳưǀǂ ; [ƿƵǀ. ǁ ưƽƳƻ. ƠưƹǂƼưƽ Ɯ.Ɛ.]. — ƜƾǁƺƲư : ƭƺǁƼƾ, 2019. — 344 ǁ. — (ƟǀƾƳǀưƼƼƸǀƾƲưƽƸƵ ƴƻǏ ƴƵǂƵƹ). ƝƾƲưǏ ƺƽƸƳư ƴƻǏ ƲǁƵDž ƻǎƱƸǂƵƻƵƹ ƸƳǀNj Minecraft ƾǂ ưƲǂƾǀư ƼƸǀƾƲNjDž ƱƵǁǂǁƵƻƻƵǀƾƲ-ǁưƼƾǃLJƸǂƵƻƵƹ ƿƾ ƿǀƾƳǀưƼƼƸǀƾƲưƽƸǎ ƭƻư ơƲƵƹƳưǀǂư. ƑƻưƳƾƴưǀǏ ǁƲƾƵƼǃ ƼƽƾƳƾƻƵǂƽƵƼǃ ƾƿNjǂǃ, ơƲƵƹƳưǀǂ ǃƼƵƵǂ Ʋ ǃƲƻƵƺưǂƵƻnjƽƾƹ ƸƳǀƾƲƾƹ DŽƾǀƼƵ ƿƾƴưǂnj ƴưƶƵ ǁưƼǃǎ ƽƵƿǀƾǁǂǃǎ ƸƽDŽƾǀƼưdžƸǎ Ƹ ƷưƸƽǂƵǀƵǁƾƲưǂnj ƴưƶƵ ǂƵDž ƼưƻƵƽnjƺƸDž LJƸǂưǂƵƻƵƹ, ƺƾǂƾǀNjDž LJǂƵƽƸƵ ƽƵ ƸƽǂƵǀƵǁǃƵǂ. ơưƼưǏ ƿƾƿǃƻǏǀƽưǏ ǃ ƴƵǂƵƹ Ʋƾ ƲǁƵƼ ƼƸǀƵ ƸƳǀư ǁǂưƽƵǂ ƵljƵ ƸƽǂƵǀƵǁƽƵƵ, ƺƾƳƴư ƲưLj ǀƵƱƵƽƾƺ ƽưǃLJƸǂǁǏ ƸǁƿƾƻnjƷƾƲưǂnj Ƹ ǁƲƾƸƼƸ ǀǃƺưƼƸ ƿǀƾƳǀưƼƼƸǀƾƲưǂnj ưƲǂƾƼưǂƸLJƵǁƺƸDž ƿƾƼƾljƽƸƺƾƲ-LJƵǀƵƿưLjƵƺ, ƴƵƻưǎljƸDž Ʋ Minecraft Ʒư ƸƳǀƾƺư Ʋǁǎ ǁưƼǃǎ ǁƺǃLJƽǃǎ ǀưƱƾǂǃ. ơ Ǎǂƾƹ ƺƽƸƳƾƹ LJƸǂưǂƵƻƸ ǁƼƾƳǃǂ ƽƵ ǂƾƻnjƺƾ ǁǂưǂnj ƿǀƾƴƲƸƽǃǂNjƼƸ ƳƵƹƼƵǀưƼƸ, ƽƾ Ƹ ƿƾƷƽưƺƾƼǏǂǁǏ ǁ ƾǁƽƾƲưƼƸ ƿǀƾƳǀưƼƼƸǀƾƲưƽƸǏ Ƹ ƿƾƻǃLJưǂ džƵƽƽNjƵ ƽưƲNjƺƸ, ƺƾǂƾǀNjƵ Ʋ ƴưƻnjƽƵƹLjƵƼ ǁƼƾƳǃǂ ǀưƷƲƸǂnj. ƨƙƟ 004.4-93 ƖƖƟ 32.973.26-018

Все права защищены. Книга или любая ее часть не может быть скопирована, воспроизведена в электронной или механической форме, в виде фотокопии, записи в память ЭВМ, репродукции или каким-либо иным способом, а также использована в любой информационной системе без получения разрешения от издателя. Копирование, воспроизведение и иное использование книги или ее части без согласия издателя является незаконным и влечет уголовную, административную и гражданскую ответственность.

Издание для досуга Для среднего школьного возраста ПРОГРАММИРОВАНИЕ ДЛЯ ДЕТЕЙ

Эл Свейгарт ПРОГРАММИРУЙ В MINECRAFT

Строй выше, выращивай быстрее, копай глубже и автоматизируй всю скучную работу! Главный редактор Р. Фасхутдинов. Ответственный редактор Е. Истомина Художественный редактор А. Гусев. Младший редактор Е. Минина ООО «Издательство «Эксмо» 123308, Москва, ул. Зорге, д. 1. Тел.: 8 (495) 411-68-86. Home page: www.eksmo.ru E-mail: info@eksmo.ru Bндіруші: «ЭКСМО» АIБ Баспасы, 123308, МKскеу, Ресей, Зорге кLшесі, 1 Mй. Тел.: 8 (495) 411-68-86. Home page: www.eksmo.ru E-mail: info@eksmo.ru. Тауар белгісі: «Эксмо» Интернет-магазин : www.book24.ru Интернет-д*кен : www.book24.kz Импортёр в Республику Казахстан ТОО «РДЦ-Алматы». IазаRстан РеспубликасындаSы импорттаушы «РДЦ-Алматы» ЖШС. Дистрибьютор и представитель по приему претензий на продукцию, в Республике Казахстан: ТОО «РДЦ-Алматы» IазаRстан Республикасында дистрибьютор жKне Lнім бойынша арыз-талаптарды RабылдаушыныX Lкілі «РДЦ-Алматы» ЖШС, Алматы R., Домбровский кLш., 3«а», литер Б, офис 1. Тел.: 8 (727) 251-59-90/91/92; E-mail: RDC-Almaty@eksmo.kz BнімніX жарамдылыR мерзімі шектелмеген. Сертификация туралы аRпарат сайтта: www.eksmo.ru/certification Сведения о подтверждении соответствия издания согласно законодательству РФ о техническом регулировании можно получить на сайте Издательства «Эксмо» www.eksmo.ru/certification Bндірген мемлекет: Ресей. Сертификация RарастырылмаSан

EKSMO.RU новинки издательства

Подписано в печать 31.08.2018. Формат 70x1001/16. Печать офсетная. Усл. печ. л. 27,87. Тираж экз. Заказ

ISBN 978-5-04-096471-0

© ƥƵƾLJǁƵǂ ơ.ƕ., DŽƺDžƺƷǃƹ ǂƵ DžLjdždžƿƽƾ ǔƼǐƿ, 2018 © ƣljǃDžǁǀƺǂƽƺ. ƣƣƣ «ƝƼƹƵLJƺǀǑdžLJƷǃ «Ʋƿdžǁǃ», 2018


ĝĚĐđĜĒČęĔđ Ǽȏ ȎȐȠȜȞȓ........................................................................................................ 13

ĎĎđĐđęĔđ ..................................................................................................14 ȅȠȜ ȠȎȘȜȓ ȚȜȒȩ Ȓșȭ 0LQHFUDIW" ................................................................... 15 ȅȠȜ ȠȎȘȜȓ &RPSXWHU&UDIW" ............................................................................ 15 ǸȎȘ ȝȜșȪȕȜȐȎȠȪȟȭ ȫȠȜȗ ȘțȖȑȜȗ"................................................................... 16 ǿȠȞȡȘȠȡȞȎ ȘțȖȑȖ ........................................................................................... 17 ǽȜșȡȥȓțȖȓ ȝȜȚȜȧȖ ....................................................................................... 19 ǰȓȏ ȞȓȟȡȞȟȩ ................................................................................................... 20 ȅȠȜ Țȩ ȡȕțȎșȖ............................................................................................... 21

ďėČĎČ ęČģČėĚ ĜČčĚĞħ ĝ +758=<-:+:).< ................... 22 ȁȟȠȎțȜȐȘȎ 0LQHFUDIW -DYD $7/DXQFKHU Ȗ &RPSXWHU&UDIW....................... 22 ǽȜȘȡȝȘȎ 0LQHFUDIW Ȑ ǶțȠȓȞțȓȠȓ .................................................................. 23 ǵȎȑȞȡȕȘȎ Ȗ ȡȟȠȎțȜȐȘȎ ȟȞȓȒȩ -DYD ............................................................... 24 ǵȎȑȞȡȕȘȎ Ȗ ȡȟȠȎțȜȐȘȎ $7/DXQFKHU ............................................................. 24 ǵȎȑȞȡȕȘȎ Ȗ ȡȟȠȎțȜȐȘȎ &RPSXWHU&UDIW ......................................................... 27 ǵȎȝȡȟȘ 0LQHFUDIW ........................................................................................... 30 ǿȜȕȒȎțȖȓ țȜȐȜȑȜ ȚȖȞȎ .................................................................................. 30 ǾȎȕșȖȥȖȭ ȖȑȞȜȐȩȣ ȞȓȔȖȚȜȐ 0LQHFUDIW ....................................................... 31 ȅȠȜ Țȩ ȡȕțȎșȖ............................................................................................... 33

ďėČĎČ ĚĝęĚĎħ ěĜĚďĜČĘĘĔĜĚĎČęĔī .............................. 34 ǵțȎȘȜȚȟȠȐȜ ȟ ȥȓȞȓȝȎȦȘȎȚȖ ......................................................................... 34 ǿȜȕȒȎțȖȓ ȥȓȞȓȝȎȦȘȖ ȦȎȣȠȓȞȎ .................................................................... 36 ǵȎȝȡȟȘ ȝȞȜȑȞȎȚȚ Ȑ ȖțȠȓȞȢȓȗȟȓ ȥȓȞȓȝȎȦȘȖ .............................................. 38 ©ǸȜȞȚșȓțȖȓª ȥȓȞȓȝȎȦȘȖ .............................................................................. 41 ǽȓȞȓȚȓȧȓțȖȓ ȥȓȞȓȝȎȦȘȖ ............................................................................ 44 ǼȟȐȜȓțȖȓ ȭȕȩȘȎ ȝȞȜȑȞȎȚȚȖȞȜȐȎțȖȭ /XD ................................................... 46 ǵȎȝȡȟȘ ȜȏȜșȜȥȘȖ /XD .................................................................................... 46 ȅȎȜ /XD ȐȩȣȜȒ Ȗȕ ȜȏȜșȜȥȘȖ /XD................................................................ 49 ǺȎȠȓȚȎȠȖȥȓȟȘȖȓ ȕȎȒȎȥȘȖ ȟ /XD .................................................................. 50

5


ǽȜȞȭȒȜȘ ȒȓȗȟȠȐȖȗ ......................................................................................... 52 DZȓțȓȞȎȤȖȭ ȟșȡȥȎȗțȩȣ ȥȖȟȓș ....................................................................... 53 ǿȜȣȞȎțȓțȖȓ ȕțȎȥȓțȖȗ ȟ ȝȜȚȜȧȪȬ ȝȓȞȓȚȓțțȩȣ ........................................ 55 ǽȞȜȐȓȞȘȎ ©ȟȩȠȜȟȠȖª ȥȓȞȓȝȎȦȘȖ .................................................................. 59 ȅȠȜ Țȩ ȡȕțȎșȖ............................................................................................... 60

ďėČĎČ čđĝđĐħ ĝ ģđĜđěČĤĖĚĕ ................................................61 ȁȥȖȚ ȥȓȞȓȝȎȦȘȡ ȕȒȜȞȜȐȎȠȪȟȭ ..................................................................... 61 ǵȎȝȡȟȘ ȝȞȜȑȞȎȚȚȩ hello ............................................................................ 64 ǽȞȜȟȚȜȠȞ ȟȝȖȟȘȎ ȢȎȗșȜȐ ȟ ȝȜȚȜȧȪȬ ȘȜȚȎțȒȩ ls .................................... 65 ǰȩȐȜȒ ȠȓȘȟȠȎ ȟ ȝȜȚȜȧȪȬ ȢȡțȘȤȖȖ print() ............................................. 66 ǿȠȞȜȘȖ ............................................................................................................ 67 ǿȜȓȒȖțȓțȖȓ ȟȠȞȜȘ ȟ ȝȜȚȜȧȪȬ ȘȜțȘȎȠȓțȎȤȖȖ ............................................ 67 ǶȕȐșȓȥȓțȖȓ ȖȚȓț ȥȓȞȓȝȎȦȓȘ ...................................................................... 68 ǼȏȞȎȏȜȠȘȎ ȐȐȜȒȎ ȟ ȘșȎȐȖȎȠȡȞȩ ȟ ȝȜȚȜȧȪȬ ȢȡțȘȤȖȖ io.read() .......... 70 ȀȓȘȟȠ ȟ ȫȢȢȓȘȠȜȚ ȝȖȦȡȧȓȗ ȚȎȦȖțȘȖ ....................................................... 70 ǽȓȞȓȖȚȓțȜȐȎțȖȓ ȥȓȞȓȝȎȦȓȘ ....................................................................... 71 ȅȠȜ Țȩ ȡȕțȎșȖ............................................................................................... 71

ďėČĎČ Ĕ ěğĝĞīĞĝī ģđĜđěČĤĖĔ Ď ěėīĝ .......................... 73 ǸȜȒ ȝȞȜȑȞȎȚȚȩ ȠȎțȤȡșȓȘ ............................................................................ 73 ǵȎȝȡȟȘ ȝȞȜȑȞȎȚȚȩ mydance........................................................................ 75 ǶȟȝȜșȪȕȜȐȎțȖȓ ȘȜȚȚȓțȠȎȞȖȓȐ Ȑ ȘȜȒȓ......................................................... 76 ȀȎțȤȓȐȎșȪțȩȓ ȝȎ ȥȓȞȓȝȎȦȘȖ ..................................................................... 77 ȋȘȟȝȓȞȖȚȓțȠȖȞȡȓȚ ȟ ȝȓȞȓȚȓȧȓțȖȭȚȖ ȥȓȞȓȝȎȦȘȖ................................... 78 ȄȖȘșȩ ȫȢȢȓȘȠ ȕȎȓȐȦȓȗ ȝșȎȟȠȖțȘȖ .......................................................... 79 ǰȞȎȧȓțȖȓ ȥȓȞȓȝȎȦȘȖ .................................................................................. 81 ǽȞȩȔȜȘ țȎ ȚȓȟȠȓ .......................................................................................... 82 ǽȡȏșȖȘȎȤȖȭ Ȗ ȕȎȑȞȡȕȘȎ ȝȞȜȑȞȎȚȚ Ȑ ǶțȠȓȞțȓȠȓ ....................................... 83 ȁȒȎșȓțȖȓ ȢȎȗșȜȐ Ȗȕ ȝȎȚȭȠȖ ȥȓȞȓȝȎȦȘȖ................................................... 84 ǼȑȞȎțȖȥȓțȖȭ țȎ ȟȎȗȠȓ SDVWHELQ.FRP........................................................... 85 WXUWOHDSSVWRUH.FRP ......................................................................................... 85 ȅȠȜ Țȩ ȡȕțȎșȖ............................................................................................... 86

6


ďėČĎČ ģđĜđěČĤĖĔ · ĖĚĜĚėđĎħ ĞČęĢěĚėČ ................... 88 ǾȎȕȞȎȏȜȠȘȎ ȝȞȜȑȞȎȚȚȩ ................................................................................ 88 ǵȎȝȡȟȘ ȝȞȜȑȞȎȚȚȩ mydance2 ..................................................................... 90 ǹȜȑȖȥȓȟȘȖȓ ȠȖȝȩ ȒȎțțȩȣ ............................................................................ 91 ȀȖȝ ȒȎțțȩȣ nil ............................................................................................ 92 ȄȖȘș while ................................................................................................... 92 ǽȞȖțȭȠȖȓ ȞȓȦȓțȖȗ ȟ ȝȜȚȜȧȪȬ ȖțȟȠȞȡȘȤȖȗ if ........................................ 94 ǿȞȎȐțȓțȖȓ ȒȐȡȣ ȕțȎȥȓțȖȗ ȟ ȝȜȚȜȧȪȬ ȜȝȓȞȎȠȜȞȜȐ ȟȞȎȐțȓțȖȭ ................ 95 ǮșȪȠȓȞțȎȠȖȐțȩȓ ȐȩȥȖȟșȓțȖȭ ȟ ȝȜȚȜȧȪȬ ȖțȟȠȞȡȘȤȖȗ elseif .............. 98 ǰșȜȔȓțțȩȓ ȏșȜȘȖ ȘȜȒȎ .............................................................................. 100 ǽȞȖțȭȠȖȓ ȞȓȦȓțȖȭ« ȖșȖ ȖțȟȠȞȡȘȤȖȭ else .......................................... 100 ǽȓȞȓȚȓȧȓțȖȓ ȐȐȓȞȣ Ȗ ȐțȖȕ ....................................................................... 101 ǽȜȐȜȞȜȠ ȘȞȡȑȜȚ ........................................................................................... 102 ȅȠȜ Țȩ ȡȕțȎșȖ............................................................................................. 104

ďėČĎČ ěĜĚďĜČĘĘĔĜĚĎČęĔđ ģđĜđěČĤĖĔ ėđĝĚĜğčČ ... 105 ǼȟțȎȧȓțȖȓ ȥȓȞȓȝȎȦȓȘ ȖțȟȠȞȡȚȓțȠȎȚȖ ................................................... 106 ǮșȑȜȞȖȠȚ ȞȡȏȘȖ ȒȓȞȓȐȎ .............................................................................. 107 ǸȜȒ ȝȞȜȑȞȎȚȚȩ choptree ......................................................................... 110 ǵȎȝȡȟȘ ȝȞȜȑȞȎȚȚȩ choptree ................................................................... 111 ǼȏțȎȞȡȔȓțȖȓ ȏșȜȘȜȐ ȟ ȢȡțȘȤȖȭȚȖ ȜȏțȎȞȡȔȓțȖȭ ȥȓȞȓȝȎȦȘȖ.............. 112 ǹȜȑȖȥȓȟȘȖȗ ȜȝȓȞȎȠȜȞ not .......................................................................... 112 ǹȜȑȖȥȓȟȘȖȗ ȜȝȓȞȎȠȜȞ and .......................................................................... 114 ǹȜȑȖȥȓȟȘȖȗ ȜȝȓȞȎȠȜȞ or ............................................................................ 115 ǵȎȐȓȞȦȓțȖȓ ȝȞȜȑȞȎȚȚ ȟ ȝȜȚȜȧȪȬ ȢȡțȘȤȖȖ error() ........................... 117 ǰȩȞȡȏȘȎ ȒȞȓȐȓȟȖțȩ ȟ ȝȜȚȜȧȪȬ ȥȓȞȓȝȎȦȘȖ ............................................ 118 ǿȞȎȐțȓțȖȓ ȏșȜȘȜȐ ȟ ȝȜȚȜȧȪȬ ȢȡțȘȤȖȗ ȟȞȎȐțȓțȖȭ ............................... 119 ǰȜȕȐȞȎȧȓțȖȓ țȎ ȕȓȚșȬ .............................................................................. 120 ǵȎȝȡȟȘ ȝȞȜȑȞȎȚȚ Ȗ ȢȡțȘȤȖȭ shell.run() ............................................ 120 ȅȠȜ Țȩ ȡȕțȎșȖ............................................................................................. 121

ďėČĎČ ĝĚēĐČęĔđ ĘĚĐğėđĕ Đėī ĘęĚďĚĖĜČĞęĚďĚ ĔĝěĚėĨēĚĎČęĔī ĖĚĐČ ..................................................................123 ǿȜȕȒȎțȖȓ ȢȡțȘȤȖȗ ȟ ȝȜȚȜȧȪȬ ȖțȟȠȞȡȘȤȖȖ function .......................... 123

7


ǮȞȑȡȚȓțȠȩ Ȗ ȝȎȞȎȚȓȠȞȩ ............................................................................ 125 ǰȜȕȐȞȎȧȎȓȚȩȓ ȕțȎȥȓțȖȭ ........................................................................... 127 ǿȜȕȒȎțȖȓ ȚȜȒȡșȭ ȢȡțȘȤȖȗ ........................................................................ 128 ǵȎȑȞȡȕȘȎ ȚȜȒȡșȭ ȟ ȝȜȚȜȧȪȬ ȢȡțȘȤȖȖ os.loadAPI() .......................... 130 ȋȘȟȝȓȞȖȚȓțȠȩ ȟ ȚȜȒȡșȓȚ hare ................................................................. 131 ǾȎȏȜȠȎ ȟ ȖțȐȓțȠȎȞȓȚ ȥȓȞȓȝȎȦȘȖ .............................................................. 133 ǰȩȏȜȞ ȭȥȓȗȘȖ ȖțȐȓțȠȎȞȭ ........................................................................... 134 ǽȜȒȟȥȓȠ ȘȜșȖȥȓȟȠȐȎ ȝȞȓȒȚȓȠȜȐ Ȑ ȭȥȓȗȘȓ ................................................. 135 ǽȜșȡȥȓțȖȓ ȖțȢȜȞȚȎȤȖȖ Ȝ ȟȜȒȓȞȔȖȚȜȚ ȭȥȓȗȘȖ...................................... 135 ȀȎȏșȖȥțȩȓ ȕțȎȥȓțȖȭ .................................................................................. 136 ǼȏȕȜȞ ȠȎȏșȖȤȩ ȐȜȕȐȞȎȧȎȓȚȜȗ ȢȡțȘȤȖȓȗ turtle.getItemDetail() .137 DZșȜȏȎșȪțȎȭ Ȗ șȜȘȎșȪțȎȭ ȜȏșȎȟȠȖ ȐȖȒȖȚȜȟȠȖ ......................................... 138 ǽȜȖȟȘ ȝȞȓȒȚȓȠȎ ȟ ȝȜȚȜȧȪȬ ȤȖȘșȎ for .................................................... 140 ǰȩȏȜȞ ȝȡȟȠȜȗ ȭȥȓȗȘȖ ȖțȐȓțȠȎȞȭ .............................................................. 141 ȅȠȜ Țȩ ȡȕțȎșȖ............................................................................................. 142

ďėČĎČ ēČěğĝĖ ČĎĞĚĘČĞĔēĔĜĚĎČęęĚĕ ėđĝĚĠđĜĘħ ...................................................................................................143 ǽȞȜȓȘȠȖȞȜȐȎțȖȓ ȝȞȜȑȞȎȚȚȩ șȓȟȜȢȓȞȚȩ ................................................. 144 ǸȜȒ ȝȞȜȑȞȎȚȚȩ farmtrees ....................................................................... 145 ǵȎȝȡȟȘ ȝȞȜȑȞȎȚȚȩ farmtrees ................................................................. 147 ȀȖȝȩ ȒȓȞȓȐȪȓȐ Ȑ 0LQHFUDIW ........................................................................ 148 ǵȎȑȞȡȕȘȎ ȥȎțȘȜȐ Ȑ 0LQHFUDIW ..................................................................... 149 ǵȎȑȞȡȕȘȎ ȚȜȒȡșȓȗ ȟ ȝȜȚȜȧȪȬ ȢȡțȘȤȖȖ os.loadAPI() ........................ 150 ǽȞȜȐȓȞȘȎ ȢȎȗșȜȐ ȟ ȝȜȚȜȧȪȬ ȢȡțȘȤȖȖ fs.exists() ........................... 150 ǰȩȏȜȞ ȟȎȔȓțȤȓȐ Ȑ ȖțȐȓțȠȎȞȓ ȥȓȞȓȝȎȦȘȖ................................................ 151 ǽȜȟȎȒȘȎ ȒȓȞȓȐȎ ........................................................................................... 152 ǽȞȜȐȓȞȘȎ ȏșȜȘȜȐ Ȗ ȜȔȖȒȎțȖȓ ȞȜȟȠȎ ȒȓȞȓȐȪȓȐ ......................................... 153 ǽȞȓȞȩȐȎțȖȓ ȤȖȘșȎ ȟ ȝȜȚȜȧȪȬ ȖțȟȠȞȡȘȤȖȖ break ................................ 155 ǵȎȝȡȟȘ ȒȞȡȑȖȣ ȝȞȜȑȞȎȚȚ ȟ ȝȜȚȜȧȪȬ ȢȡțȘȤȖȖ shell.run() .............. 155 ǰȩȑȞȡȕȘȎ ȥȓȞȓȝȎȦȘȜȗ ȒȜȏȩȠȜȗ ȒȞȓȐȓȟȖțȩ ............................................. 156 ǶȕȚȓțȓțȖȓ ȘȜȒȎ ȓȟșȖ țȓȠ ȘȜȟȠțȜȗ ȚȡȘȖ ................................................. 158 ȅȠȜ Țȩ ȡȕțȎșȖ............................................................................................. 160

8


ďėČĎČ ! ĝĞĜĚĔĞđėĨĝĞĎĚ ďđęđĜČĞĚĜČ čğėħĒęĔĖČ .. 161 ǽȞȜȓȘȠ ȑȓțȓȞȎȠȜȞȎ ȏȡșȩȔțȖȘȎ ................................................................. 161 ȁȟȠȎțȜȐȘȎ ȝȓȥȓȗ Ȓșȭ ȝșȎȐȘȖ ȏȡșȩȔțȖȘȎ ............................................... 163 ǸȜȒ ȝȞȜȑȞȎȚȚȩ cobminer ......................................................................... 164 ǵȎȝȡȟȘ ȝȞȜȑȞȎȚȚȩ cobminer ................................................................... 166 ǻȎȟȠȞȜȗȘȎ ȝȞȜȑȞȎȚȚȩ Ȗ ȒȜȏȎȐșȓțȖȓ ȘȜțȟȠȎțȠ ....................................... 166 DzȜȏȩȥȎ ȏȡșȩȔțȖȘȎ Ȗȕ ȑȓțȓȞȎȠȜȞȎ ........................................................... 168 ǰȕȎȖȚȜȒȓȗȟȠȐȖȓ ȟ ȝȓȥȎȚȖ .......................................................................... 169 ȁșȡȥȦȓțȖȓ ȘȜȒȎ ȟ ȝȜȚȜȧȪȬ ȘȜțȟȠȎțȠ ..................................................... 170 ǵȎȑȞȡȕȘȎ ȏȡșȩȔțȖȘȎ Ȑ ȝȓȥȖ ..................................................................... 171 ǼȘȞȡȑșȓțȖȓ ȥȖȟȓș ȟ ȝȜȚȜȧȪȬ ȢȡțȘȤȖȗ math.ÀRRU() Ȗ math.ceil()............................................................................................ 172 ǰȩȥȖȟșȓțȖȓ ȘȜșȖȥȓȟȠȐȎ ȏȡșȩȔțȖȘȎ Ȓșȭ ȕȎȑȞȡȕȘȖ Ȑ ȘȎȔȒȡȬ ȝȓȥȪ .... 173 ǰȜȕȐȞȎȧȓțȖȓ ȥȓȞȓȝȎȦȘȖ țȎ ȖȟȣȜȒțȡȬ ȝȜȕȖȤȖȬ .................................... 175 ȅȠȜ Țȩ ȡȕțȎșȖ............................................................................................. 177

ďėČĎČ ěĜĚĔēĎĚĐĝĞĎĚ ĖČĘđęęħġ ĖĔĜěĔģđĕ ........178 ǾȎȕȞȎȏȜȠȘȎ ȝȞȜȑȞȎȚȚȩ ȝȞȜȖȕȐȜȒȟȠȐȎ ȘȎȚȓțțȜȑȜ ȘȖȞȝȖȥȎ ................... 179 ǿȜȕȒȎțȖȓ ȘȞȎȢȠ ȥȓȞȓȝȎȦȘȖ ...................................................................... 180 ǸȜȒ ȝȞȜȑȞȎȚȚȩ brickcrafter ................................................................ 182 ǵȎȝȡȟȘ ȝȞȜȑȞȎȚȚȩ brickcrafter ........................................................... 184 ǻȎȟȠȞȜȗȘȎ ȝȞȜȑȞȎȚȚȩ brickcrafter .................................................... 186 ǽȞȜȐȓȞȘȎ ©ȟȩȠȜȟȠȖª ȥȓȞȓȝȎȦȘȖ ................................................................ 186 ǿȏȜȞ ȘȎȚțȭ Ȗȕ ȝȓȥȓȗ .................................................................................. 187 ǶȕȑȜȠȜȐșȓțȖȓ ȘȖȞȝȖȥȓȗ ............................................................................. 189 ǰȜȕȐȞȎȧȓțȖȓ ȥȓȞȓȝȎȦȘȖ țȎ ȖȟȣȜȒțȡȬ ȝȜȕȖȤȖȬ .................................... 191 ǿȠȞȜȖȠȓșȪȟȠȐȜ ȕȒȎțȖȭ ȕȎȐȜȒȖȘȎ ............................................................... 193 ȅȠȜ Țȩ ȡȕțȎșȖ............................................................................................. 194

ďėČĎČ ĎĚēĎđĐđęĔđ ĝĞđę .......................................................196 DzȜȞȎȏȜȠȘȎ ȚȜȒȡșȭ hare ............................................................................. 197 ǽȜȒȟȥȓȠ ȏșȜȘȜȐ Ȑ ȖțȐȓțȠȎȞȓ ȟ ȝȜȚȜȧȪȬ ȢȡțȘȤȖȖ countinventory().200 ǰȩȏȜȞ Ȗ ȞȎȕȚȓȧȓțȖȓ ȏșȜȘȎ ....................................................................... 201 ǾȎȕȞȎȏȜȠȘȎ ȎșȑȜȞȖȠȚȎ ȐȜȕȐȓȒȓțȖȭ ȟȠȓț ................................................... 202

9


ȂȡțȘȤȖȭ buildWall() .............................................................................. 206 ǾȎȕȞȎȏȜȠȘȎ Ȗ ȕȎȝȡȟȘ ȝȞȜȑȞȎȚȚȩ buildwall .......................................... 211 ǵȎȑȞȡȕȘȎ ȚȜȒȡșȭ hare................................................................................ 212 ǶȟȝȜșȪȕȜȐȎțȖȓ ȚȎȟȟȖȐȜȐ ........................................................................... 213 ǶȟȝȜșȪȕȜȐȎțȖȓ ȎȞȑȡȚȓțȠȜȐ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ....................................... 214 ǰȩȐȜȒ ȟȜȜȏȧȓțȖȗ ȝȜșȪȕȜȐȎȠȓșȬ ............................................................... 214 ǰȩȕȜȐ ȢȡțȘȤȖȖ hare.buildWall() Ȓșȭ ȝȜȟȠȞȜȗȘȖ ȟȠȓțȩ .................. 215 ȅȠȜ Țȩ ȡȕțȎșȖ............................................................................................. 217

ďėČĎČ ĝĞĜĚĔĞđėĨĝĞĎĚ ĖĚĘęČĞ .....................................218 ǽȞȜȓȘȠȖȞȜȐȎțȖȓ ȎșȑȜȞȖȠȚȎ ȝȜȟȠȞȜȓțȖȭ ȘȜȚțȎȠ .................................... 219 DzȜȞȎȏȜȠȘȎ ȚȜȒȡșȭ hare ............................................................................. 220 ǰȩȥȖȟșȓțȖȓ ȜȏȧȓȑȜ ȘȜșȖȥȓȟȠȐȎ ȏșȜȘȜȐ țȓȜȏȣȜȒȖȚȩȣ Ȓșȭ ȟȠȞȜȖȠȓșȪȟȠȐȎ ȘȜȚțȎȠȩ .............................................................................. 221 ǸȜȒ ȢȡțȘȤȖȖ buildRoom()....................................................................... 222 ǸȜȒ ȝȞȜȑȞȎȚȚȩ buildwall ....................................................................... 225 ǵȎȝȡȟȘ ȝȞȜȑȞȎȚȚȩ buildwall ................................................................. 226 ȅȠȜ Țȩ ȡȕțȎșȖ............................................................................................. 227

ďėČĎČ ĝĞĜĚĔĞđėĨĝĞĎĚ ěĚėČ Ĕ ěĚĞĚėĖČ .................. 229 ǽȞȜȓȘȠȖȞȜȐȎțȖȓ ȎșȑȜȞȖȠȚȎ ȐȩȘșȎȒȩȐȎțȖȭ ȝȓȞȓȘȞȩȠȖȭ ..................... 230 ǿȠȞȜȖȠȓșȪȟȠȐȜ ȝȓȞȓȘȞȩȠȖȗ ....................................................................... 231 ǰȜȕȐȞȎȠ Ș ȖȟȣȜȒțȜȗ ȝȜȕȖȤȖȖ ..................................................................... 235 ǽȓȞȓȒȎȥȎ ȜȒțȜȗ ȢȡțȘȤȖȖ Ȑ ȒȞȡȑȡȬ .......................................................... 237 DzȜȞȎȏȜȠȘȎ ȚȜȒȡșȭ hare ............................................................................. 239 ǰȩȕȜȐ ȢȡțȘȤȖȖ sweepFunc() .................................................................. 241 ǽȓȞȓȚȓȧȓțȖȓ ȝȜ ȟȠȞȜȘȎȚ Ȗ ȟȠȜșȏȤȎȚ ...................................................... 243 ǼȝȞȓȒȓșȓțȖȓ ȥȓȠțȜȟȠȖ ȥȖȟșȎ ȟ ȝȜȚȜȧȪȬ ȜȝȓȞȎȠȜȞȎ ȒȓșȓțȖȭ ȝȜ ȚȜȒȡșȬ .................................................................................................... 244 ǼȏȞȎȠțȩȗ ȝȡȠȪ Ȑ ȟșȡȥȎȓ ȥȓȠțȜȑȜ Ȗ țȓȥȓȠțȜȑȜ ȘȜșȖȥȓȟȠȐȎ ȏșȜȘȜȐ ȝȜ ȦȖȞȖțȓ ......................................................................................................... 245 ǿȜȕȒȎțȖȓ ȢȡțȘȤȖȖ buildFloor()........................................................... 247 ǿȜȕȒȎțȖȓ ȝȞȜȑȞȎȚȚȩ EXLOGÀRRU ............................................................. 248 ǵȎȝȡȟȘ ȝȞȜȑȞȎȚȚȩ EXLOGÀRRU ................................................................. 249 ǿȜȕȒȎțȖȓ ȡȕȜȞȥȎȠȜȑȜ ȝȓȞȓȘȞȩȠȖȭ ............................................................. 249

10


ǸȜȒ ȝȞȜȑȞȎȚȚȩ buildcheckerboard...................................................... 250 ǵȎȝȡȟȘ ȝȞȜȑȞȎȚȚȩ buildcheckerboard ................................................ 251 ǸȜȒ ȢȡțȘȤȖȖ placeCheckerboard() ..................................................... 253 ǰȩȕȜȐ ȢȡțȘȤȖȖ sweepField() ................................................................ 255 ȅȠȜ Țȩ ȡȕțȎșȖ............................................................................................. 255

ďėČĎČ ěĜĚďĜČĘĘĔĜĚĎČęĔđ ģđĜđěČĤĖĔ ĠđĜĘđĜČ .................................................................. 257 ǽȜȒȑȜȠȜȐȘȎ ȝȦȓțȖȥțȜȑȜ ȝȜșȭ ................................................................... 258 ǾȎȕȞȎȏȜȠȘȎ ȎșȑȜȞȖȠȚȎ ȡȝȞȎȐșȓțȖȭ ȝȦȓțȖȥțȜȗ ȢȓȞȚȜȗ ....................... 259 DzȜȞȎȏȜȠȘȎ ȚȜȒȡșȭ hare ............................................................................. 261 ǸȜȒ ȝȞȜȑȞȎȚȚȩ farmwheat ....................................................................... 262 ǵȎȝȡȟȘ ȝȞȜȑȞȎȚȚȩ farmwheat ................................................................. 265 ǸȜțȢȖȑȡȞȎȤȖȭ ȝȞȜȑȞȎȚȚȩ farmwheat.................................................... 266 ǸȜȒ ȢȡțȘȤȖȗ ȖȟȝȜșȪȕȡȓȚȩȣ Ȑ ȜȟțȜȐțȜȗ ȝȞȜȑȞȎȚȚȓ ............................. 268 ǼȠȟșȓȔȖȐȎțȖȓ ȡȞȜȔȎȭ ............................................................................... 268 ǽȜȟȓȐ ȝȦȓțȖȤȩ ........................................................................................... 270 ȃȞȎțȓțȖȓ ȝȦȓțȖȤȩ .................................................................................... 271 ǾȎȏȜȠȎ Ȑ ȤȖȘșȓ ............................................................................................ 273 ǿȜȐȓȠȩ ȝȜ ȎȐȠȜȚȎȠȖȕȎȤȖȖ ȒȞȡȑȖȣ ȐȖȒȜȐ ȕȓȚșȓȒȓșȖȭ ............................ 277 ǼȐȜȧțȩȓ ȝșȎțȠȎȤȖȖ .................................................................................. 277 DzȜȗȘȎ ȘȜȞȜȐ Ȗ ȟȠȞȖȔȘȎ ȜȐȓȤ ..................................................................... 278 ǽȠȖȤȓȢȎȏȞȖȘȎ............................................................................................. 279 ǰȩȞȎȧȖȐȎțȖȓ ȘȎȘȠȡȟȜȐ Ȗ ȟȎȣȎȞțȜȑȜ ȠȞȜȟȠțȖȘȎ...................................... 280 ȅȠȜ Țȩ ȡȕțȎșȖ............................................................................................. 281

ďėČĎČ ěĜĚďĜČĘĘĔĜĚĎČęĔđ ģđĜđěČĤĖĔ ĤČġĞđĜČ .................................................................. 283 ǾȎȕȞȎȏȜȠȘȎ ȎșȑȜȞȖȠȚȎ ȟȜȕȒȎțȖȭ ȦȎȣȠȩ ȟ șȓȟȠțȖȤȓȗ ............................. 285 DzȜȞȎȏȜȠȘȎ ȚȜȒȡșȭ hare ............................................................................. 290 ǸȜȒ ȢȡțȘȤȖȗ digUntilClear() Ȗ dftgUpUntilClear() ................... 291 ǸȜȒ ȝȞȜȑȞȎȚȚȩ stairminer ..................................................................... 293 ǵȎȝȡȟȘ ȝȞȜȑȞȎȚȚȩ stairminer ............................................................... 295 ǻȎȟȠȞȜȗȘȎ ȝȞȜȑȞȎȚȚȩ stairminer ......................................................... 295

11


ǿȜȕȒȎțȖȓ ȝȓȞȐȜȗ șȓȟȠțȖȤȩ ....................................................................... 297 ǾȎȕȞȎȏȜȠȘȎ ȐțȖȕ .......................................................................................... 297 ǽȞȜȐȓȞȘȎ ©ȟȩȠȜȟȠȖª ȥȓȞȓȝȎȦȘȖ ................................................................ 300 ǽȞȜȐȓȞȘȎ ȖțȐȓțȠȎȞȭ ȥȓȞȓȝȎȦȘȖ .............................................................. 304 ǾȎȕȞȎȏȜȠȘȎ ȐȐȓȞȣ ........................................................................................ 305 ȅȠȜ Țȩ ȡȕțȎșȖ............................................................................................. 306

ěĜĔėĚĒđęĔđ Č ĝěĔĝĚĖ ĠğęĖĢĔĕ ........................................ 308 ǶțȠȓȞȢȓȗȟ fs ȢȎȗșȜȐȎȭ ȟȖȟȠȓȚȎ ........................................................... 309 ǶțȠȓȞȢȓȗȟ hare.......................................................................................... 309 ǶțȠȓȞȢȓȗȟ io ȐȐȜȒȎ ȐȩȐȜȒȎ ................................................................... 311 ǶțȠȓȞȢȓȗȟ math ȚȎȠȓȚȎȠȖȥȓȟȘȖȓ ȢȡțȘȤȖȖ ......................................... 311 ǶțȠȓȞȢȓȗȟ os ȜȝȓȞȎȤȖȜțțȎȭ ȟȖȟȠȓȚȎ ................................................... 311 ǶțȠȓȞȢȓȗȟ shell ȜȏȜșȜȥȘȎ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ .................................... 312 ǶțȠȓȞȢȓȗȟ string ȟȠȞȜȘȜȐȩȓ ȢȡțȘȤȖȖ ................................................ 312 ǶțȠȓȞȢȓȗȟ textutils ȠȓȘȟȠȜȐȩȓ ȫȢȢȓȘȠȩ .......................................... 313 ǶțȠȓȞȢȓȗȟ turtle ȡȝȞȎȐșȓțȖȓ ȥȓȞȓȝȎȦȘȜȗ ....................................... 313 ǿȠȞȜȖȠȓșȪțȩȓ ȢȡțȘȤȖȖ ............................................................................. 313 ȀȜȝșȖȐțȩȓ ȢȡțȘȤȖȖ .................................................................................. 314 ȂȡțȘȤȖȖ ȟȐȭȕȎțțȩȓ ȟ ȖțȐȓțȠȎȞȓȚ .......................................................... 315 ȂȡțȘȤȖȖ ȒȐȖȔȓțȖȭ .................................................................................... 317 ȂȡțȘȤȖȖ ȐȜȟȝȞȖȭȠȖȭ ................................................................................. 318 ȂȡțȘȤȖȖ ȟȐȭȕȎțțȩȓ ȟ ȖțȟȠȞȡȚȓțȠȎȚȖ.................................................... 319 ȂȡțȘȤȖȖ /XD ............................................................................................... 320

ěĜĔėĚĒđęĔđ č ĝěĔĝĚĖ ĔĐđęĞĔĠĔĖČĞĚĜĚĎ ...................321 ǽȜȖȟȘ ȖȒȓțȠȖȢȖȘȎȠȜȞȎ ȏșȜȘȎ ................................................................... 321 ǾȎȕșȖȥȖȭ ȚȓȔȒȡ ȏșȜȘȎȚȖ ȟ ȜȒȖțȎȘȜȐȩȚ ȖȒȓțȠȖȢȖȘȎȠȜȞȜȚ ............... 323 ǿȝȖȟȜȘ ȖȒȓțȠȖȢȖȘȎȠȜȞȜȐ ȏșȜȘȜȐ.............................................................. 324 ǮșȢȎȐȖȠțȩȗ ȡȘȎȕȎȠȓșȪ.............................................................................. 343


Ěč ČĎĞĚĜđ

ȋș ǿȐȓȗȑȎȞȠ ² ȝȞȜȢȓȟȟȖȜțȎșȪțȩȗ ȞȎȕȞȎȏȜȠȥȖȘ ȝȞȜ ȑȞȎȚȚțȜȑȜ ȜȏȓȟȝȓȥȓțȖȭ ȟȜȐȚȓȧȎȬȧȖȗ ȞȎȏȜȠȡ ȟ ȝȞȓȝȜȒȎȐȎțȖȓȚ ȜȟțȜȐ ȝȞȜȑȞȎȚȚȖȞȜȐȎțȖȭ ȒȓȠȭȚ Ȗ ȐȕȞȜȟșȩȚ ȋș țȎȝȖȟȎș țȓȟȘȜșȪȘȜ ȠȜȝȜȐȩȣ ȘțȖȑ Ȓșȭ țȎȥȖțȎȬȧȖȣ ȐȘșȬȥȎȭ ©ȁȥȖȚ 3\WKRQ ȒȓșȎȭ ȘȞȡȠȩȓ ȖȑȞȩª Ȗ ©ǽȞȜȑȞȎȚȚȖȞȜȐȎțȖȓ Ȓșȭ ȒȓȠȓȗ DzȓșȎȗ ȖȑȞȩ Ȗ ȡȥȖ ȭȕȩȘ 6FUDWFK ª


ĎĎđĐđęĔđ ©dzȧȓ ȝȎȞȎ ȎșȚȎȕȜȐ ² Ȗ ȝȓȞȓȞȩȐ ª ² ȐȟȝȜȚȖ țȎȬ ȭ ȘȎȘ ȖȑȞȎș Ȑ 0LQHFUDIW Ǻțȓ ȘȞȜȐȪ Ȗȕ țȜȟȡ țȡȔțȩ ȏȩșȖ ȎșȚȎȕȩ Ȓșȭ ȘȞȎȢȠȎ țȜȐȜȗ ȘȖȞȘȖ Ǯ ȘȖȞȘȎ ȏȩșȎ țȡȔțȎ Ȓșȭ ȒȜȏȩȥȖ ȜȏȟȖ ȒȖȎțȎ ǼȏȟȖȒȖȎț Ȕȓ ȠȞȓȏȜȐȎșȟȭ ȥȠȜȏȩ ȝȜȟȠȞȜ ȖȠȪ ȝȜȞȠȎș Ȑ ǻȓȕȓȞ ȍ ȣȜȠȓș ȜȠȝȞȎȐȖȠȪȟȭ Ȑ ǻȓȕȓȞ ȕȎ șȎȐȜȗ Ǯ șȎȐȎ ȏȩșȎ țȡȔțȎ« Ȏȣ Ȓșȭ ȥȓȑȜ Ȕȓ Țțȓ ȏȩșȎ țȡȔțȎ șȎȐȎ" Ǯ ȠȜȥțȜ ȍ ȜȏțȎȞȡȔȖș ȑȖȑȎțȠȟȘȡȬ ȟȠȎȠȡȬ Ȣȓ țȖȘȟȎ Ȑ ȟȘȎșȎȣ Ȗ ȣȜȠȓș ȟȒȓșȎȠȪ ȠȎȘ ȥȠȜȏȩ șȎȐȎ ȐȩșȖȐȎ șȎȟȪ Ȗȕ ȑșȎȕ Ȗ ȘșȬȐȎ ȫȠȜȗ ȝȜȠȞȭȟȎȬȧȓȗ ȝȠȖȤȩ ǿȝȡȟȠȭ ȒȐȎ ȥȎȟȎ ȭ Ȑȟȓ ȓȧȓ ȖȑȞȎș țȓ Ȑ ȟȖșȎȣ ȜȠȜȞȐȎȠȪȟȭ 0LQHFUDIW ² ȕȎȣȐȎȠȩȐȎȬȧȎȭ ȖȑȞȎ Ǹ țȎȥȎșȡ ȑȜȒȎ ȝȞȜȒȎțȜ ȟȐȩȦȓ ȚȖșșȖȜțȜȐ1 ȘȜȝȖȗ ȫȠȜȗ ȖȑȞȩ ȏșȎȑȜ ȒȎȞȭ ȥȓȚȡ 0LQHFUDIW ȟȠȎș ȐȠȜȞȜȗ ȝȜ ȝȜȝȡșȭȞțȜȟȠȖ ȘȜȚȝȪȬ ȠȓȞțȜȗ ȖȑȞȜȗ Ȑȟȓȣ ȐȞȓȚȓț Ȗ țȎȞȜȒȜȐ ȡȟȠȡȝȖȐ ȠȜșȪȘȜ șȓȑȓț ȒȎȞțȜȚȡ ©ȀȓȠȞȖȟȡª 0LQHFUDIW ² ȫȠȜ ȜȠȘȞȩȠȩȗ ȘȞȓȎȠȖȐțȩȗ ȚȖȞ ȟȜȕȒȎțțȩȗ Ȓșȭ ȟȏȜȞȎ ȞȓȟȡȞȟȜȐ Ȗ ȟȠȞȜȖȠȓșȪȟȠȐȎ ȟȎȚȩȣ țȓȐȓȞȜȭȠțȩȣ ȘȜțȟȠȞȡȘȤȖȗ Ȁȩ ȚȜȔȓȦȪ ȐȜȕȐȜȒȖȠȪ ȕȎȚȘȖ 1

14

expandedramblings.com/index.php/minecraft-statistics/

ǰǰdzDzdzǻǶdz


Ȓșȭ ȕȎȧȖȠȩ ȜȠ țȎȟȓȒȎȬȧȖȣ ȜȞȒ ȕȜȚȏȖ ȕȎȟȓȖȐȎȠȪ ȝȜșȭ ȝȜ șȓȕțȩȚȖ ȘȡșȪȠȡȞȎȚȖ Ȗ ȞȎȕȐȜȒȖȠȪ ȟȘȜȠ țȎ ȢȓȞȚȎȣ ȖșȖ Ȕȓ ȜȏȨȓȒȖțȖȐȦȖȟȪ ȟ ȒȞȡȕȪȭȚȖ ȐȜȟȟȜȕȒȎȐȎȠȪ Ȑ ȐȖȞȠȡȎșȪțȜȚ ȚȖȞȓ ȦȓȒȓȐȞȩ ȖȟȘȡȟȟȠȐȎ 0LQHFUDIW țȎȤȓșȓț țȎ ȟȎȚȡȬ ȞȎȕ țȡȬ ȎȡȒȖȠȜȞȖȬ Ȑ ȐȜȟȠȜȞȑȓ ȜȠ ȫȠȜȗ ȖȑȞȩ ȒȓȠȖ ȝȜȒȞȜȟȠȘȖ Ȗ ȒȎȔȓ ȐȕȞȜȟșȩȓ ǰ ȫȠȜȗ ȘțȖȑȓ Ƞȩ ȕȎȗȚȓȦȪȟȭ ȖȕȡȥȓțȖȓȚ ȚȜȒȎ &RPSXWHU &UDIW ȠȎȘȔȓ ȖȕȐȓȟȠțȜȑȜ ȝȜȒ ȘȜȒȜȐȩȚ țȎȕȐȎțȖȓȚ && ȘȜ ȠȜȞȩȗ ȝȞȓȐȞȎȠȖȠ ȠȐȜȓ ȔȓșȎțȖȓ ȘȞȎȢȠȖȠȪ Ȑ ȔȓșȎțȖȓ ȝȞȜ ȑȞȎȚȚȖȞȜȐȎȠȪ ǻȜ ȥȠȜ ȠȎȘȜȓ ȚȜȒȩ Ȗ ȟȎȚ &RPSXWHU&UDIW"

ģĞĚ ĞČĖĚđ ĘĚĐħ Đėī 516-+:).<' ǿȎȚȎ ȝȜ ȟȓȏȓ ȖȑȞȎ 0LQHFUDIW țȎȕȩȐȎȓȚȎȭ ȐȎțȖșȪțȜȗ ȐȓȞȟȖȓȗ 0LQHFUDIW ² ȫȠȜ ȠȜșȪȘȜ ȜȟțȜȐȎ 0LQHFUDIW ȚȜȔȓȠ ȏȩȠȪ ȚȜȒȖȢȖȤȖȞȜȐȎț Ȗ ȞȎȟȦȖȞȓț ȝȞȜȑȞȎȚȚțȩȚ Ȝȏȓȟȝȓȥȓ țȖȓȚ ȟȠȜȞȜțțȖȣ ȞȎȕȞȎȏȜȠȥȖȘȜȐ țȎȕȩȐȎȓȚȩȚ ȚȜȒȎȚȖ ȋȠȖ ȚȜȒȩ ȝȞȓȒȜȟȠȎȐșȭȬȠ ȖȑȞȜȘȡ ȒȜȝȜșțȖȠȓșȪțȩȓ ȢȡțȘȤȖȖ Ȑ ȠȜȚ ȥȖȟșȓ țȜȐȩȓ ȏșȜȘȖ ȡȟȠȞȜȗȟȠȐȎ ȝȞȓȒȚȓȠȩ ȚȜȏȜȐ Ȗ ȒȎ Ȕȓ ȚȖȞȩ ȘȜȠȜȞȩȓ țȓ ȐȘșȬȥȓțȩ Ȑ ȐȎțȖșȪțȡȬ ȐȓȞȟȖȬ ȖȑȞȩ ǯșȎȑȜȒȎȞȭ ȟȐȜȓȗ ȝȜȝȡșȭȞțȜȟȠȖ ȖȑȞȎ 0LQHFUDIW ȟȜȏȞȎșȎ ȐȜ ȘȞȡȑ ȟȓȏȭ ȜȒțȜ Ȗȕ ȘȞȡȝțȓȗȦȖȣ ȟȜȜȏȧȓȟȠȐ ȢȎțȎȠȜȐ ȚȜȒȓȞȜȐ ȘȜȚȝȪȬȠȓȞțȩȣ ȖȑȞ ȋȠȖ ȢȎțȎȠȟȘȖȓ ȚȜȒȩ ȚȜȔțȜ ȟȘȎȥȎȠȪ ȟȜȐȓȞȦȓțțȜ ȏȓȟ ȝșȎȠțȜ ǼȒțȖ ȚȜȒȩ ȒȜȏȎȐșȭȬȠ ȐȜȕȚȜȔțȜȟȠȪ ȖȟȟșȓȒȜȐȎțȖȭ ȘȜȟȚȜȟȎ Ȗ ȕȎȝȡȟȘȎ ȞȎȘȓȠ DzȞȡȑȖȓ ² ȚȎȑȖȬ Ȗ ȕȎȘșȖțȎțȖȭ Ȁȩ ȒȎȔȓ ȚȜȔȓȦȪ ȐȟȠȞȓȠȖȠȪ ȚȜȒȩ 0LQHFUDIW Ȓșȭ ȟȠȞȜȖȠȓșȪ ȟȠȐȎ ȟȜȏȟȠȐȓțțȩȣ ȝȎȞȘȜȐ ȌȞȟȘȜȑȜ ȝȓȞȖȜȒȎ ȐȩȟȜȘȜȟȘȜȞȜȟȠ țȩȣ ȔȓșȓȕțȜȒȜȞȜȔțȩȣ ȟȓȠȓȗ Ȗ ȝȥȓșȜȐȜȒțȩȣ ȣȜȕȭȗȟȠȐ Dzșȭ ȫȠȜȗ ȘțȖȑȖ ȭ ȐȩȏȞȎș ȚȜȒ &RPSXWHU&UDIW ² Ȝț ȝȜȚȜȔȓȠ Ƞȓȏȓ țȎȡȥȖȠȪȟȭ ȝȞȜȑȞȎȚȚȖȞȜȐȎȠȪ

ģĞĚ ĞČĖĚđ +758=<-:+:).<' &RPSXWHU&UDIW ² ȫȠȜ ȚȜȒ Ȓșȭ ȖȑȞȩ 0LQHFUDIW ȘȜȠȜȞȩȗ ȒȜ ȏȎȐșȭȓȠ Ȑ țȓȓ ȝȞȜȑȞȎȚȚȖȞȡȓȚȩȣ ȞȜȏȜȠȜȐ țȎȕȩȐȎȓȚȩȣ ȥȓȞȓȝȎȦȘȎȚȖ ȋȠȖ ȞȜȏȜȠȩ țȓȐȓȞȜȭȠțȜ ȘȞȡȠȩ Ȗ ȟȝȜȟȜȏțȩ ȒȓșȎȠȪ ȝȜȥȠȖ Ȑȟȓ ȥȠȜ ȚȜȔȓȠ ȖȑȞȜȘ ȘȜȝȎȠȪ ȦȎȣȠȩ ȞȡȏȖȠȪ

ǰǰdzDzdzǻǶdz

15


ȒȓȞȓȐȪȭ ȟȠȞȜȖȠȪ ȕȒȎțȖȭ ȘȞȎȢȠȖȠȪ ȝȞȓȒȚȓȠȩ ȟȎȔȎȠȪ ȟȓȚȓ țȎ ȒȜȖȠȪ ȘȜȞȜȐ ȐȩȝȓȘȎȠȪ ȠȜȞȠȩ Ȗ ȚțȜȑȜȓ ȒȞȡȑȜȓ ȟȚ ȞȖȟ ǮȞȚȖȭ ȠȎȘȖȣ ȘȐȎȒȞȎȠțȩȣ ȥȓȞȓȝȎȦȓȘ ȚȜȔȓȠ ȎȐȠȜȚȎȠȖȥȓȟȘȖ ȐȩȝȜșțȭȠȪ Ȑȟȓ ȞȡȠȖțțȩȓ ȒȓȗȟȠȐȖȭ ȘȜȠȜȞȩȓ ȖȑȞȜȘ ȜȏȩȥțȜ ȒȓșȎȓȠ ȟȎȚȜȟȠȜȭȠȓșȪțȜ

ˀ̛̭͘ 1͘ ˋ̡̛̖̬̖̪̹͕̌ ̨̛̼̺̖̔̍̏̌̀ ̛̬̖̖̭̦̱̔̏ ;̭̣̖̏̌Ϳ͕ ̛ ̸̨̼̔̍̌ ;̭̪̬̌̏̌Ϳ

ȂȖȦȘȎ Ȑ ȠȜȚ ȥȠȜ ȟțȎȥȎșȎ Ƞȩ ȒȜșȔȓț țȎȡȥȖȠȪȟȭ ȝȞȜ ȑȞȎȚȚȖȞȜȐȎȠȪ ȅȓȞȓȝȎȦȘȖ Ȗȕ ȚȜȒȎ &RPSXWHU&UDIW ȝȜțȖ ȚȎȬȠ ȘȜȒ țȎȝȖȟȎțțȩȗ țȎ ȭȕȩȘȓ ȝȞȜȑȞȎȚȚȖȞȜȐȎțȖȭ /XD ©șȡțȎª Ȑ ȝȓȞȓȐȜȒȓ ȟ ȝȜȞȠȡȑȎșȪȟȘȜȑȜ ȘȜȠȜȞȩȗ ȖȟȝȜșȪȕȡ ȓȠȟȭ ȝȞȜȢȓȟȟȖȜțȎșȪțȩȚȖ ȞȎȕȞȎȏȜȠȥȖȘȎȚȖ ǽǼ Ȑ ȠȎȘȖȣ ȜȏșȎȟȠȭȣ ȘȎȘ ȐȟȠȞȎȖȐȎȓȚȩȓ ȐȩȥȖȟșȖȠȓșȪțȩȓ ȟȖȟȠȓȚȩ Ȗ ȐȖȒȓȜȖȑȞȩ ǽȞȜȑȞȎȚȚțȜȓ ȜȏȓȟȝȓȥȓțȖȓ ȖțȠȓȞȝȞȓȠȎȠȜȞȎ Ȑȩ ȝȜșțȭȬȧȓȑȜ ȟȤȓțȎȞȖȖ țȎ ȭȕȩȘȓ /XD ©ȐȓȟȖȠª ȐȟȓȑȜ Ǹȏ ȝȜȫȠȜȚȡ ȓȑȜ ȚȜȔțȜ șȓȑȘȜ ȐȟȠȞȜȖȠȪ Ȑ ȒȞȡȑȖȓ ȝȞȜȑȞȎȚȚțȩȓ ȫșȓȚȓțȠȩ țȎȝȞȖȚȓȞ ȚȜȒȩ Ȓșȭ 0LQHFUDIW ȍȕȩȘ /XD ȥȎȟȠȜ ȖȟȝȜșȪȕȡȓȠȟȭ ȝȞȖ ȞȎȕȞȎȏȜȠȘȓ ȐȖȒȓȜȖȑȞ țȎȝȞȖȚȓȞ :RUOG RI :DUFUDIW 'DUN 6RXOV 3RUWDO )DFWRULR Ȗ ȚțȜȑȖȣ ȒȞȡȑȖȣ ȃȜȠȭ /XD Ȗ ȝȞȜȧȓ ȒȞȡȑȖȣ ȭȕȩȘȜȐ ȝȞȜȑȞȎȚȚȖȞȜȐȎțȖȭ Ȝț ȏȩȟȠȞȩȗ Ȗ ȚȜȧțȩȗ ȋȠȜ ȝȜȗȒȓȠ Ȗ țȎȚ țȎ ȝȜșȪȕȡ ǯșȎȑȜȒȎ Ȟȭ ȟȐȜȓȗ ȝȞȜȟȠȜȠȓ /XD ² ȜȠșȖȥțȩȗ ȭȕȩȘ Ȓșȭ ȞȎȕȐȖȠȖȭ ȝȞȜ ȑȞȎȚȚȖȟȠȟȘȖȣ țȎȐȩȘȜȐ ȓȟșȖ ȡ Ƞȓȏȭ țȓȠ ȜȝȩȠȎ ȝȞȜȑȞȎȚȚȖ ȞȜȐȎțȖȭ

ĖČĖ ěĚėĨēĚĎČĞĨĝī ĩĞĚĕ ĖęĔďĚĕ' Ȁȓȏȓ țȡȔțȜ ȝȞȖȜȏȞȓȟȠȖ ȘȜȝȖȬ ȖȑȞȩ 0LQHFUDIW Ȓșȭ ȜȝȓȞȎ ȤȖȜțțȜȗ ȟȖȟȠȓȚȩ :LQGRZV ȖșȖ PDF26 Ȏ ȠȎȘȔȓ ȟȘȎȥȎȠȪ ȏȓȟȝșȎȠțȩȗ ȚȜȒ &RPSXWHU&UDIW Ȗ ȏȓȟȝșȎȠțȡȬ ȝȞȜȑȞȎȚȚȡ

16

ǰǰdzDzdzǻǶdz


șȎȡțȥȓȞ $7/DXQFKHU ǿȚ ȑșȎȐȡ Ȑ ȘȜȠȜȞȜȗ ȭ ȝȞȖȐȓș Ȑȟȓ ȖțȟȠȞȡȘȤȖȖ ȝȜ ȕȎȑȞȡȕȘȓ Ȗ ȡȟȠȎțȜȐȘȓ ǽȞȖ țȎȏȜȞȓ ȝȞȖȚȓȞȜȐ ȖȟȣȜȒțȜȑȜ ȘȜȒȎ Ȗȕ ȫȠȜȗ ȘțȖȑȖ țȓ ȐȐȜȒȖ țȜȚȓȞ Ȑ țȎȥȎșȓ ȘȎȔȒȜȗ ȟȠȞȜȘȖ ǻȎȝȞȖȚȓȞ ȓȟșȖ Ƞȩ ȐȟȠȞȓȠȖș ȡȘȎȕȎțțȡȬ țȖȔȓ ȟȠȞȜȘȡ ȘȜȒȎ Ƞȓȏȓ țȓ țȡȔțȜ ȏȡ ȒȓȠ ȐȐȜȒȖȠȪ ȥȖȟșȜ 9 ȡȘȎȕȎțțȜȓ ȟșȓȐȎ ȠȜȥȘȡ Ȗ ȝȞȜȏȓș ȟșȓ ȒȜȚ ȕȎ țȓȗ 9. print Ʉɚɤ ɬɟɛɹ ɡɨɜɭɬ"

Ɍɵ ɞɨɥɠɟɧ ɜɜɟɫɬɢ ɬɨɥɶɤɨ ɷɬɨ print Ʉɚɤ ɬɟɛɹ ɡɨɜɭɬ"

ǻȜȚȓȞȎ ȟȠȞȜȘ țȡȔțȩ Ȓșȭ ȠȜȑȜ ȥȠȜȏȩ ȝȜ ȠȓȘȟȠȡ ȘțȖȑȖ ȟȟȩșȎȠȪȟȭ țȎ Ƞȓ ȖșȖ Ȗțȩȓ ȟȠȞȜȘȖ Ȑ ȘȜȒȓ ȝȞȜȑȞȎȚȚȩ ǼțȖ țȓ ȜȠțȜȟȭȠȟȭ Ș ȖȟȣȜȒțȜȚȡ ȘȜȒȡ ȝȞȜȑȞȎȚȚȩ ǰ țȓȘȜȠȜȞȩȣ ȟșȡȥȎȭȣ Ȑ șȖȟȠȖțȑȎȣ ȘȜȒȎ Ƞȩ ȚȜȔȓȦȪ ȐȟȠȞȓȠȖȠȪ țȓțȡȚȓȞȜȐȎțțȩȓ ȟȠȞȜȘȖ ȟ ȠȓȘȟȠȜȚ ...ɩɪɨɩɭɫɤ.... ȀȎȘȖȓ ȟȠȞȜȘȖ ȡȘȎȕȩȐȎȬȠ țȎ ȠȜ ȥȠȜ ȥȎȟȠȪ ȘȜȒȎ ȏȩșȎ ȝȞȜȝȡ ȧȓțȎ Ȓșȭ ȫȘȜțȜȚȖȖ ȏȡȚȎȑȖ ǿȎȚȖ ȟȠȞȜȘȖ ...ɩɪɨɩɭɫɤ... țȓ ȜȠțȜȟȭȠȟȭ Ș ȖȟȣȜȒțȜȚȡ ȘȜȒȡ ȝȞȜȑȞȎȚȚȩ

ĝĞĜğĖĞğĜČ ĖęĔďĔ ǽȞȜȥȖȠȎȐ ȝȓȞȐȩȓ țȓȟȘȜșȪȘȜ ȑșȎȐ ȜȝȖȟȩȐȎȬȧȖȓ ȜȟțȜȐțȩȓ ȘȜțȤȓȝȤȖȖ ȝȞȜȑȞȎȚȚȖȞȜȐȎțȖȭ Ƞȩ ȝȞȖȟȠȡȝȖȦȪ țȓȝȜȟȞȓȒ ȟȠȐȓțțȜ Ș ȝȞȜȑȞȎȚȚȖȞȜȐȎțȖȬ ǸȎȔȒȎȭ ȝȜȟșȓȒȡȬȧȎȭ ȑșȎ ȐȎ ȫȠȜȗ ȘțȖȑȖ ȝȜȟȐȭȧȓțȎ țȎȝȖȟȎțȖȬ ȝȞȜȑȞȎȚȚȩ ȘȜȠȜȞȡȬ ȚȜȔȓȠ ȐȩȝȜșțȭȠȪ ȠȐȜȭ ȥȓȞȓȝȎȦȘȎ ȥȠȜȏȩ ȝȜȚȜȥȪ Ƞȓȏȓ Ȑȩ ȔȖȐȎȠȪ Ȗ ȝȞȜȤȐȓȠȎȠȪ Ȑ ȖȑȞȓ 0LQHFUDIW Ȁȩ ȠȎȘȔȓ ȐȟȠȞȓȠȖȦȪ ȒȜȝȜșțȖȠȓșȪțȩȓ ȕȎȒȎțȖȭ ȘȜȠȜȞȩȓ ȝȜȕȐȜșȭȠ ȝȞȜȐȓȞȖȠȪ ȠȐȜȖ țȎȐȩȘȖ ȝȞȜȑȞȎȚȚȖȞȜȐȎțȖȭ ǰȜȠ ȥȠȜ Ƞȩ ȡȕțȎȓȦȪ Ȑ ȘȎȔȒȜȗ ȑșȎȐȓ ʇ Ƕȕ ȑșȎȐȩ Ƞȩ ȡȕțȎȓȦȪ ȘȎȘ ȡȟȠȎțȜȐȖȠȪ Ȗ țȎȟȠȞȜȖȠȪ ȖȑȞȡ 0LQHFUDIW Ȗ ȚȜȒ &RPSXWHU&UDIW ȥȠȜȏȩ țȎȥȎȠȪ ȖȕȡȥȎȠȪ ȝȞȜȑȞȎȚȚȖȞȜȐȎțȖȓ

ǰǰdzDzdzǻǶdz

17


ʇ ǰ ȑșȎȐȓ ȝȞȓȒȟȠȎȐșȓțȩ ȜȟțȜȐțȩȓ ȘȜțȤȓȝȤȖȖ ȝȞȜ ȑȞȎȚȚȖȞȜȐȎțȖȭ Ȗ ȜȝȖȟȎțȎ ȖțȠȓȞȎȘȠȖȐțȎȭ ȜȏȜșȜȥȘȎ ʇ DZșȎȐȎ ȕțȎȘȜȚȖȠ ȟ ȞȓȒȎȘȠȜȞȜȚ ȢȎȗșȜȐ ȘȜȠȜȞȩȗ Ƞȩ ȏȡȒȓȦȪ ȖȟȝȜșȪȕȜȐȎȠȪ Ȓșȭ țȎȝȖȟȎțȖȭ ȘȜȒȎ ȝȓȞȐȜȗ ȝȞȜȑȞȎȚ Țȩ ʇ DZșȎȐȎ ȞȎȟȟȘȎȕȩȐȎȓȠ ȘȎȘ țȎȝȖȟȎȠȪ ȝȞȜȑȞȎȚȚȡ Ȓșȭ ȝȓȞȓȚȓȧȓțȖȭ ȥȓȞȓȝȎȦȓȘ Ȑ ȚȖȞȓ 0LQHFUDIW. ʇ DZșȎȐȎ țȎȡȥȖȠ Ƞȓȏȭ ȒȜȏȎȐșȭȠȪ Ș ȠȎțȤȓȐȎșȪțȜȗ ȝȞȜ ȑȞȎȚȚȓ Ȗȕ ȝȞȓȒȩȒȡȧȓȗ ȑșȎȐȩ țȜȐȩȓ ȖțȟȠȞȡȘȤȖȖ ȝȞȜȑȞȎȚ ȚȖȞȜȐȎțȖȭ ʇ ǰ ȑșȎȐȓ Ƞȩ ȡȕțȎȓȦȪ ȘȎȘ țȎȡȥȖȠȪ ȥȓȞȓȝȎȦȘȡ ȞȡȏȖȠȪ ȒȓȞȓȐȪȭ Ȗ ȟȜȏȖȞȎȠȪ ȒȞȓȐȓȟȖțȡ ʇ DZșȎȐȎ țȎȡȥȖȠ ȫȘȜțȜȚȖȠȪ ȐȞȓȚȭ ȝȖȟȎȠȪ ȘȜȒ ȜȒȖț ȞȎȕ Ȗ ȖȟȝȜșȪȕȜȐȎȠȪ ȓȑȜ Ȑ ȞȎȕțȩȣ ȝȞȜȑȞȎȚȚȎȣ ʇ DZșȎȐȎ ȞȎȕȐȖȐȎȓȠ ȠȓȚȡ ȑșȎȐȩ Ƞȩ ȟȜȕȒȎȦȪ ȝȜșțȜ ȟȠȪȬ ȎȐȠȜȚȎȠȖȥȓȟȘȜȓ ȒȓȞȓȐȜȜȏȞȎȏȎȠȩȐȎȬȧȓȓ ȝȞȓȒȝȞȖȭȠȖȓ țȎ ȘȜȠȜȞȜȚ ȥȓȞȓȝȎȦȘȖ ȟȚȜȑȡȠ ȟȜȏȖȞȎȠȪ ȒȞȓȐȓȟȖțȡ ȟ ȞȎȕțȩȣ ȒȓȞȓȐȪȓȐ ʇ DZșȎȐȎ țȎȝȞȎȐșȓțȎ țȎ ȞȎȕȞȎȏȜȠȘȡ ȝȞȜȑȞȎȚȚȩ Ȓșȭ ȒȜ ȏȩȥȖ țȓȜȑȞȎțȖȥȓțțȩȣ ȕȎȝȎȟȜȐ ȏȡșȩȔțȖȘȎ ȘȜȠȜȞȩȗ ȥȓȞȓ ȝȎȦȘȖ ȏȡȒȡȠ ȖȟȝȜșȪȕȜȐȎȠȪ Ȑ ȘȎȥȓȟȠȐȓ ȟȠȞȜȖȠȓșȪțȜȑȜ ȚȎȠȓ ȞȖȎșȎ Ȑ ȑșȎȐȎȣ ² ʇ ǰ ȑșȎȐȓ Ƞȩ ȝȜȟȠȞȜȖȦȪ ȘȖȞȝȖȥțȩȗ ȕȎȐȜȒȖȘ ȝȞȓȐȞȎ ȧȎȬȧȖȗ ȏȡșȩȔțȖȘ ȝȞȜȖȕȐȜȒȖȚȩȗ ȝȞȜȑȞȎȚȚȜȗ Ȗȕ ȑșȎȐȩ Ȑ ȘȎȚȓțțȩȓ ȘȖȞȝȖȥȖ ʇ DZșȎȐȎ ȞȎȟȟȘȎȕȩȐȎȓȠ Ȝ ȝȞȜȑȞȎȚȚȓ ȘȜȠȜȞȎȭ ȝȜȚȜȑȎȓȠ ȟȠȞȜȖȠȪ ȘȎȚȓțțȩȓ ȟȠȓțȩ Ȗȕ ȘȖȞȝȖȥȓȗ ʇ Ƕȕ ȑșȎȐȩ Ƞȩ ȡȕțȎȓȦȪ ȘȎȘ țȎȝȖȟȎȠȪ ȝȞȜȑȞȎȚȚȡ Ȓșȭ ȢȜȞȚȖȞȜȐȎțȖȭ ȘȜȚțȎȠ Ȗȕ ȟȠȓț ʇ DZșȎȐȎ ȝȜȟȐȭȧȓțȎ ȟȜȕȒȎțȖȬ ȝȜșȜȐ Ȗ ȝȜȠȜșȘȜȐ Ȑ ȘȜȚ țȎȠȎȣ ʇ DZșȎȐȎ țȎȝȞȎȐșȓțȎ țȎ ȒȜȏȩȥȡ ȓȒȩ ȥȓȞȓȝȎȦȘȖ ȏȡȒȡȠ ȟȎȔȎȠȪ Ȗ ȟȜȏȖȞȎȠȪ ȞȎȕșȖȥțȩȓ ȐȖȒȩ ȟȓșȪȟȘȜȣȜȕȭȗȟȠȐȓțțȩȣ ȘȡșȪȠȡȞ ȥȠȜȏȩ ȠȐȜȗ ȑȓȞȜȗ țȓ ȡȚȓȞ ȟ ȑȜșȜȒȡ

18

ǰǰdzDzdzǻǶdz


ʇ ǰ ȑșȎȐȓ Ƞȩ ȞȎȕȞȎȏȜȠȎȓȦȪ ȝȞȜȑȞȎȚȚȡ Ȓșȭ ȘȜȝȎțȖȭ ȦȎȣȠ Ȗ ȒȜȏȩȥȖ ȞȡȒȩ Ȗ ȒȞȡȑȖȣ ȝȜșȓȕțȩȣ ȖȟȘȜȝȎȓȚȩȣ ʇ ǰ ȟȝȞȎȐȜȥțȖȘȓ ȢȡțȘȤȖȗ ȝȓȞȓȥȖȟșȓțȩ Ȗ ȜȝȖȟȎțȩ Ȑȟȓ ȢȡțȘȤȖȖ Ȗȕ ȫȠȜȗ ȘțȖȑȖ ǿȝȞȎȐȜȥțȖȘ ȖȒȓțȠȖȢȖȘȎȠȜȞȜȐ ȟȜȒȓȞȔȖȠ ȟȝȖȟȜȘ Ȗȕ țȎȖ ȏȜșȓȓ ȝȜȝȡșȭȞțȩȣ ȏșȜȘȜȐ Ȗ ȝȞȓȒȚȓȠȜȐ 0LQHFUDIW ȟ ȡȘȎȕȎțȖ ȓȚ Ȗȣ ȖȒȓțȠȖȢȖȘȎȠȜȞȜȐ ȘȜȠȜȞȩȓ ȖȟȝȜșȪȕȡȬȠȟȭ Ȑ ȝȞȜȑȞȎȚ ȚȎȣ

ěĚėğģđęĔđ ěĚĘĚĥĔ ǰ ȖȑȞȓ 0LQHFUDIW ȜȥȓțȪ țȓ ȣȐȎȠȎȓȠ ȖțȟȠȞȡȘȤȖȖ Ȓșȭ țȜȐȖȥ ȘȜȐ ǰ țȓȗ țȓȠ ȞȡȘȜȐȜȒȟȠȐȎ ȝȜșȪȕȜȐȎȠȓșȭ ȖșȖ ȒȎȔȓ ȚȓțȬ ©ǿȝȞȎȐȘȎª ǶȑȞȎȭ Ȑ 0LQHFUDIW Ƞȩ ȟȎȚ țȓȟȓȦȪ ȜȠȐȓȠȟȠȐȓț țȜȟȠȪ ȕȎ ȟȐȜȓ ȜȏȡȥȓțȖȓ Ȁȓȏȓ țȡȔțȜ ȏȡȒȓȠ ȖȟȘȎȠȪ Ȑ ǶțȠȓȞțȓ Ƞȓ ȟȝȜȟȜȏȩ ȞȓȦȓțȖȭ ȎȘȠȡȎșȪțȩȣ ȕȎȒȎȥ ȕȎȒȎȐȎȠȪ ȐȜȝȞȜȟȩ Ȗ ȖȟȘȎȠȪ țȎ țȖȣ ȜȠȐȓȠȩ Ȏ ȖțȜȑȒȎ ȝȜȝȞȜȟȠȡ ȫȘȟȝȓȞȖȚȓțȠȖȞȜ ȐȎȠȪ țȎ ȟȐȜȗ ȟȠȞȎȣ Ȗ ȞȖȟȘ 0LQHFUDIW ȘȡșȪȠȖȐȖȞȡȓȠ ȡ ȖȑȞȜ ȘȜȐ ȑȖȏȘȖȗ ȠȖȝ ȚȩȦșȓțȖȭ DzȎȔȓ ȝȜȟșȓ ȠȜȑȜ ȘȎȘ ȜțȖ ȡȝȎșȖ Ȑ șȎȐȡ ȖșȖ țȎȠȜșȘțȡșȖȟȪ țȎ țȓȓ ȝȞȜȏȖȐ ȟȠȓțȡ ȜțȖ ȐȜȕȐȞȎ ȧȎȬȠȟȭ Ș ȫȠȜȚȡ ȚȓȟȠȡ ȥȠȜȏȩ țȎȡȥȖȠȪȟȭ ȝȞȓȜȒȜșȓȐȎȠȪ ȝȞȜ ȏșȓȚȡ ȀȓȚ țȓ Țȓțȓȓ ȫȠȎ ȘțȖȑȎ ȝȜȟȐȭȧȓțȎ ȚȜȒȡ &RPSXWHU&UDIW Ȏ țȓ ȜȟțȜȐȎȚ ȖȑȞȩ Ȑ 0LQHFUDIW ȅȠȜȏȩ ȝȜșțȜȤȓțțȜ ȐȜȟȝȜșȪ ȕȜȐȎȠȪȟȭ ȫȠȜȗ ȘțȖȑȜȗ Ȑ 0LQHFUDIW Ƞȩ ȒȜșȔȓț ȡȚȓȠȪ ȟșȓȒȡȬ ȧȓȓ ʇ ȒȜȏȩȐȎȠȪ ȞȡȒȡ ȘȎȚȓțȪ ȡȑȜșȪ ȒȞȓȐȓȟȖțȡ Ȗ ȒȞȡȑȖȓ ȏșȜȘȖ ʇ ȘȞȎȢȠȖȠȪ ȐȓȞȟȠȎȘ Ȗ ȖțȟȠȞȡȚȓțȠȩ ȠȎȘȖȓ ȘȎȘ ȠȜȝȜȞȩ șȜȝȎȠȩ ȢȎȘȓșȩ Ȗ ȘȖȞȘȖ ʇ ȘȞȎȢȠȖȠȪ ȝȓȥȪ țȎȝȜșțȭȠȪ ȓȓ ȠȜȝșȖȐȜȚ Ȗ ȝȓȞȓȝșȎȐ șȭȠȪ Ȑ țȓȗ ȏșȜȘȖ ȞȡȒȩ ȖșȖ ȔȎȞȖȠȪ ȚȭȟȜ ʇ ȘȞȎȢȠȖȠȪ ȟȠȡȝȓțȪȘȖ șȓȟȠțȖȤȩ ȟȡțȒȡȘȖ ȒȐȓȞȖ ȕȎȏȜ Ȟȩ Ȗ ȒȞȡȑȖȓ ȎȞȣȖȠȓȘȠȡȞțȩȓ ȫșȓȚȓțȠȩ ȘȜȠȜȞȩȓ ȏȡȒȓȦȪ Ȗȟ ȝȜșȪȕȜȐȎȠȪ ȝȞȖ ȟȠȞȜȖȠȓșȪȟȠȐȓ ȟȜȜȞȡȔȓțȖȗ ʇ ȟȓȭȠȪ ȟȓȚȓțȎ Ȗ ȟȜȏȖȞȎȠȪ ȡȞȜȔȎȗ

ǰǰdzDzdzǻǶdz

19


dzȟșȖ Ƞȩ țȓ ȡȚȓȓȦȪ ȫȠȜȑȜ țȓ ȐȜșțȡȗȟȭ Ȁȩ ȚȜȔȓȦȪ Ȑȟȓ Țȡ țȎȡȥȖȠȪȟȭ ȐȜȟȝȜșȪȕȜȐȎȐȦȖȟȪ ȝȜȖȟȘȜȚ Ȑ ǶțȠȓȞțȓȠȓ ǼȠ ȘȞȜȗ ȟȎȗȠ ȟȐȜȓȗ șȬȏȖȚȜȗ ȝȜȖȟȘȜȐȜȗ ȟȖȟȠȓȚȩ Ȗ ȐȐȓȒȖ ȟșȜȐȜ PLQHFUDIW ȐȚȓȟȠȓ ȟ ȕȎȝȞȜȟȜȚ ȒȓȗȟȠȐȖȭ ȘȜȠȜȞȜȓ ȣȜȥȓȦȪ Ȗȕ ȡȥȖȠȪ ǻȎȝȞȖȚȓȞ Ƞȩ ȚȜȔȓȦȪ ȖȟȝȜșȪȕȜȐȎȠȪ ȝȜȖȟȘȜȐȩȓ ȕȎ ȝȞȜȟȩ PLQHFUDIW ȒȜȏȩȐȎȠȪ ȞȡȒȡ PLQHFUDIW ȟȒȓșȎȠȪ ȠȜȞȠ ȖșȖ ȒȎȔȓ ȝȞȜȟȠȜ PLQHFUDIW ȞȡȘȜȐȜȒȟȠȐȜ Ȓșȭ țȜȐȖȥȘȜȐ ȥȠȜȏȩ țȎȗȠȖ țȡȔțȡȬ ȖțȢȜȞȚȎȤȖȬ Ȁȩ ȠȎȘȔȓ ȚȜȔȓȦȪ ȖȟȘȎȠȪ ȐȖ ȒȓȜȞȜșȖȘȖ ȝȜȘȎȕȩȐȎȬȧȖȓ ȘȎȘ ȥȠȜ ȠȜ ȒȓșȎȠȪ Ȑ 0LQHFUDIW țȎ Ȑȓȏ ȟȎȗȠȎȣ ȠȖȝȎ ZZZ \RXWXEH FRP ȡȘȎȕȩȐȎȭ Ƞȓ Ȕȓ ȕȎȝȞȜ ȟȩ ȥȠȜ Ȗ Ȑ ȝȜȖȟȘȜȐȜȗ ȟȖȟȠȓȚȓ ǸȎȘ ȭ ȡȝȜȚȖțȎș ȞȎțȓȓ ȝȜȟȘȜșȪȘȡ ȚȜȒ &RPSXWHU&UDIW ȏȩș ȞȎȕȞȎȏȜȠȎț Ȗ ȜȏțȜȐșȭȓȠȟȭ ȟȜȐȓȞȦȓțțȜ ȒȞȡȑȖȚȖ șȬȒȪ ȚȖ Ȏ țȓ ȘȜȚȝȎțȖȓȗ 0RMDQJ țȎ ȚțȜȑȖȣ ȟȎȗȠȎȣ ȝȜȟȐȭȧȓț țȩȣ ȫȠȜȗ ȖȑȞȓ Ƞȩ țȓ țȎȗȒȓȦȪ ȖțȢȜȞȚȎȤȖȬ Ȝ ȚȜȒȓ ǼȢȖȤȖ ȎșȪțȎȭ ȒȜȘȡȚȓțȠȎȤȖȭ Ș ȚȜȒȡ &RPSXWHU&UDIW țȎ ȎțȑșȖȗȟȘȜȚ ȭȕȩȘȓ ȒȜȟȠȡȝțȎ țȎ ȐȖȘȖ ȟȎȗȠȓ www.computercraft.info/ wiki/. ǸȞȎȠȘȎȭ ȟȝȞȎȐȘȎ țȎ ȞȡȟȟȘȜȚ ȭȕȩȘȓ ȜȝȡȏșȖȘȜȐȎțȎ țȎ ȟȎȗȠȓ minecraft-ru.gamepedia.com/ComputerCraft dzȟșȖ ȡ Ƞȓȏȭ ȐȜȕțȖȘșȖ ȐȜȝȞȜȟȩ ȟȐȭȕȎțțȩȓ ȟ ȫȠȖȚ ȚȜȒȜȚ Ƞȩ ȚȜ ȔȓȦȪ ȕȎȞȓȑȖȟȠȞȖȞȜȐȎȠȪ ȏȓȟȝșȎȠțȡȬ ȡȥȓȠțȡȬ ȕȎȝȖȟȪ țȎ ȢȜ ȞȡȚȓ www.computercraft.info/forums2 Ȗ ȕȎȒȎȐȎȠȪ ȟȐȜȖ ȐȜȝȞȜȟȩ ȠȎȚ dzȟșȖ Ȕȓ ȐȜȕțȖȘșȖ ȒȜȝȜșțȖȠȓșȪțȩȓ ȐȜȝȞȜȟȩ Ȝ ȝȞȜȑȞȎȚȚȎȣ Ȗȕ ȫȠȜȗ ȘțȖȑȖ țȎ țȖȣ Ƞȩ ȟȚȜȔȓȦȪ ȝȜșȡȥȖȠȪ ȜȠȐȓȠȩ ȝȜ ȎȒȞȓȟȡ www.reddit.com/r/turtleappstore/.

Ďđč ĜđĝğĜĝħ ǵȎȑȞȡȕȘȎ Ȑȟȓȣ ȝȞȜȑȞȎȚȚ ȜȝȖȟȎțțȩȣ Ȑ ȫȠȜȗ ȘțȖȑȓ ȐȜȕ ȚȜȔțȎ țȓȝȜȟȞȓȒȟȠȐȓțțȜ Ȗȕ ȖȑȞȩ 0LQHFUDIW ȟȚ ȞȎȕȒȓș ©ǽȡȏșȖȘȎȤȖȭ Ȗ ȕȎȑȞȡȕȘȎ ȝȞȜȑȞȎȚȚ Ȑ ǶțȠȓȞțȓȠȓª ȑșȎȐȩ Ȓșȭ ȝȜșȡȥȓțȖȭ ȝȜȒȞȜȏțȩȣ ȖțȟȠȞȡȘȤȖȗ Ƕ ȣȜȠȭ 0LQHFUDIW țȓ ȝȜȒȒȓȞȔȖȐȎȓȠ ȘȜȝȖȞȜȐȎțȖȓ Ȗ ȐȟȠȎȐȘȡ ȘȜȒȎ Ȑțȓ ȖȑȞȩ ȐȓȟȪ ȘȜȒ Ȗ ȒȜȝȜșțȖȠȓșȪțȩȓ ȢȎȗșȩ Ȓșȭ ȫȠȜȗ ȘțȖȑȖ ȒȜ ȟȠȡȝțȩ țȎ ȟȎȗȠ eksmo.ru/files/minecraft_files.zip. ȀȎȚ Ȕȓ ȚȜȔțȜ ȟȘȎȥȎȠȪ ȢȎȗșȩ ȟ ȘȜȒȜȚ Ȓșȭ ȐȩȝȜșțȓțȖȭ ȒȜȝȜș țȖȠȓșȪțȩȣ ȕȎȒȎțȖȗ ȓȟșȖ Ƞȩ ȖȟȝȩȠȩȐȎȓȦȪ ȕȎȠȞȡȒțȓțȖȭ Ȗ ȣȜȥȓȦȪ ȝȞȜȐȓȞȖȠȪ ȞȓȦȓțȖȭ Ȁȩ ȠȎȘȔȓ țȎȗȒȓȦȪ ȟȟȩșȘȖ

20

ǰǰdzDzdzǻǶdz


țȎ ȒȖȟȠȞȖȏȡȠȖȐȩ țȓȜȏȣȜȒȖȚȜȑȜ ȝȞȜȑȞȎȚȚțȜȑȜ ȜȏȓȟȝȓȥȓțȖȭ Ȓșȭ ȒȜȝȜșțȖȠȓșȪțȜȗ ȖțȢȜȞȚȎȤȖȖ ȟȚ ȑșȎȐȡ dzȟșȖ Ƞȩ ȣȜȥȓȦȪ ȝȜȟȚȜȠȞȓȠȪ ȝȞȜȑȞȎȚȚȩ ȒȞȡȑȖȣ ȝȜșȪȕȜȐȎȠȓșȓȗ ȖșȖ ȝȜȒȓșȖȠȪȟȭ ȟȜȏȟȠȐȓțțȩȚȖ ȠȜ ȚȜȔȓȦȪ ȟȒȓșȎȠȪ ȫȠȜ țȎ ȟȎȗ Ƞȓ WXUWOHDSSVWRUH FRP ȝȜȕȐȜșȭȬȧȓȚ ȏȓȟȝșȎȠțȜ ȝȡȏșȖȘȜȐȎȠȪ ȟȤȓțȎȞȖȖ Ȓșȭ ȚȜȒȎ &RPSXWHU&UDIW Ȓșȭ ȒȜȝȜșțȖȠȓșȪțȜȗ Ȗț ȢȜȞȚȎȤȖȖ ȟȚ ȞȎȕȒȓș ©WXUWOHDSSVWRUH FRPª Ȑ ȑșȎȐȓ

ģĞĚ Ęħ ğēęČėĔ 0LQHFUDIW ² ȢȓțȜȚȓțȎșȪțȎȭ ȖȑȞȎ ȘȜȠȜȞȡȬ ȚȜȔțȜ ȝȞȜȣȜȒȖȠȪ ȞȎȕțȩȚȖ ȟȝȜȟȜȏȎȚȖ ȥȠȜ ȝȞȖȐșȓȘȎȓȠ ȟȎȚȡȬ ȞȎȕțȜȦȓȞȟȠțȡȬ ȝȡȏșȖȘȡ ǰ ȫȠȜȗ ȘțȖȑȓ Ƞȩ ȡȕțȎȓȦȪ ȘȎȘ ȐȜȕȐȜȒȖȠȪ ȝȜȟȠȞȜȗ ȘȖ țȎȚțȜȑȜ ȏȩȟȠȞȓȓ ȟ ȝȜȚȜȧȪȬ ȚȜȒȎ &RPSXWHU&UDIW ȘȜȠȜ Ȟȩȗ ȝȜȕȐȜșȭȓȠ ȝȞȜȑȞȎȚȚȖȞȜȐȎȠȪ țȎ ȭȕȩȘȓ /XD ȟȝȓȤȖȎșȪ țȩȣ ȞȜȏȜȠȜȐ ȥȓȞȓȝȎȦȓȘ ǼȏȡȥȎȭȟȪ ȝȞȜȑȞȎȚȚȖȞȜȐȎțȖȬ țȎ ȭȕȩȘȓ /XD ȟ ȝȜȚȜȧȪȬ ȚȜȒȎ &RPSXWHU&UDIW Ƞȩ țȎȡȥȖȦȪȟȭ ȎȐȠȜȚȎȠȖȕȖȞȜȐȎȠȪ ȚțȜȑȖȓ ȞȡȠȖțțȩȓ ȕȎȒȎȥȖ ȘȜȠȜȞȩȓ ȞȎțȓȓ ȝȞȖȣȜȒȖșȜȟȪ ȒȓșȎȠȪ ȟȎȚȜȟȠȜȭȠȓșȪțȜ țȎȝȞȖȚȓȞ ȒȜȏȩȐȎȠȪ ȝȜșȓȕțȩȓ ȖȟȘȜȝȎȓȚȩȓ ȐȓȟȠȖ ȟȓșȪȟȘȜȓ ȣȜȕȭȗȟȠȐȜ ȟȠȞȜȖȠȪ Ȗ ȘȞȎȢȠȖȠȪ ǿ ȝȜȚȜȧȪȬ ȖȑȞȩ 0LQHFUDIW Ȗ ȚȜȒȎ &RPSXWHU&UDIW Ƞȩ țȎ ȡȥȖȦȪȟȭ ȞȓȦȎȠȪ ȝȞȜȏșȓȚȩ ȟȎȚȜȟȠȜȭȠȓșȪțȜ Ȗ ȝȞȖȜȏȞȓȠȓȦȪ ȏȎȕȜȐȩȓ țȎȐȩȘȖ ȝȞȜȑȞȎȚȚȖȞȜȐȎțȖȭ țȎ ȘȜȚȝȪȬȠȓȞȓ ǽȜȓȣȎșȖ


1 ęČģČėĚ ĜČčĚĞħ ĝ +758=<-:+:).< ǽȞȓȔȒȓ ȥȓȚ Ƞȩ țȎȥțȓȦȪ ȝȞȜȑȞȎȚȚȖȞȜȐȎȠȪ ȞȜȏȜȠȖȕȖȞȜȐȎțțȩȣ ȥȓȞȓȝȎȦȓȘ țȡȔțȜ ȡȟȠȎ țȜȐȖȠȪ Ȗ țȎȟȠȞȜȖȠȪ ȖȑȞȡ 0LQHFUDIW Ȗ ȚȜȒ &RPSXWHU&UDIW ǻȓ ȐȜșțȡȗȟȭ ȏȓȟȝșȎȠțȜȓ ȝȞȜ ȑȞȎȚȚțȜȓ ȜȏȓȟȝȓȥȓțȖȓ $7/DXQFKHU ȟȖșȪțȜ ȡȝȞȜȧȎȓȠ ȫȠȜȠ ȝȞȜȤȓȟȟ ǰ ȫȠȜȗ ȑșȎȐȓ ȭ ȝȜȘȎȔȡ Ƞȓȏȓ ȘȎȘ ȟȘȎȥȎȠȪ Ȗ ȡȟȠȎțȜȐȖȠȪ ȖȑȞȡ 0LQHFUDIW Ȗ ȚȜȒ &RPSXWHU&UDIW Ȏ ȕȎȠȓȚ ȝȞȜȐȓȒȡ ȥȓȞȓȕ Ȑȟȓ ȫȠȎȝȩ țȎȟȠȞȜȗȘȖ ȘȜȠȜȞȩȓ țȡȔțȜ ȐȩȝȜșțȖȠȪ ȝȞȓȔȒȓ ȥȓȚ ȝȞȖȟȠȡȝȖȠȪ Ș ȝȞȜȑȞȎȚȚȖȞȜȐȎțȖȬ

ğĝĞČęĚĎĖČ 516-+:).< 2)>) )<4)=6+0-: Ĕ +758=<-:+:).< ǾȎțȪȦȓ ȒȜȏȎȐșȭȠȪ Ȗ țȎȟȠȞȎȖȐȎȠȪ ȚȜȒȩ Ȑ ȖȑȞȡ 0LQHFUDIW ȏȩ șȜ ȠȞȡȒțȜ ȝȜȟȘȜșȪȘȡ țȡȔțȜ ȏȩșȜ ȐȩȝȜșțȖȠȪ ȞȭȒ ȟșȜȔțȩȣ ȦȎȑȜȐ Ǯ ȠȓȝȓȞȪ Ƞȩ ȚȜȔȓȦȪ ȐȜȟȝȜșȪȕȜȐȎȠȪȟȭ ȟȝȓȤȖȎșȪțȩȚ șȎȡțȥȓȞȜȚ2 $7/DXQFKHU Ȓșȭ ȝȞȜȟȠȜȗ Ȗ ȏȩȟȠȞȜȗ ȕȎȑȞȡȕȘȖ ȚȜ 2

Программой, запускающей другие программы с определенными настройками.

22

DZǹǮǰǮ


ȒȜȐ Ȑ ȖȑȞȓ 0LQHFUDIW ȀȎȘ ȘȎȘ 0LQHFUDIW $7/DXQFKHU Ȗ &RP SXWHU&UDIW ȞȎȕȞȎȏȜȠȎțȩ ȞȎȕțȩȚȖ ȘȜȚȝȎțȖȭȚȖ Ƞȓȏȓ țȡȔțȜ ȟȘȎȥȎȠȪ Ȗ ȡȟȠȎțȜȐȖȠȪ ȘȎȔȒȡȬ ȝȞȜȑȞȎȚȚȡ ȜȠȒȓșȪțȜ ǰȟȓ ȜțȖ ȒȜȟȠȡȝțȩ Ȓșȭ ȜȝȓȞȎȤȖȜțțȩȣ ȟȖȟȠȓȚ :LQGRZV PDF26 Ȗ 8EXQWX ǸȞȜȚȓ ȠȜȑȜ ȚȜȒ &RPSXWHU&UDIW țȓșȪȕȭ ȕȎȝȡȟȠȖȠȪ țȎ ȚȜȏȖșȪțȩȣ ȝșȎȠȢȜȞȚȎȣ Ȏ ȠȎȘȔȓ ȖȑȞȜȐȩȣ ȝȞȖȟȠȎȐȘȎȣ 0LFURVRIW ;ER[ Ȗ 6RQ\ 3OD\6WDWLRQ. ǺȜȒȩ ȞȎȏȜȠȎȬȠ ȠȜșȪȘȜ Ȓșȭ -DYD (GLWLRQ 0LQHFUDIW ȘȜȠȜ Ȟȩȗ ȠȎȘȔȓ țȎȕȩȐȎȓȠȟȭ ȐȓȞȟȖȓȗ 0LQHFUDIW Ȓșȭ :LQGRZV ǰȓȞ ȟȖȭ :LQGRZV Ȓșȭ 0LQHFUDIW țȓ ȝȜȒȒȓȞȔȖȐȎȓȠ ȚȜȒȩ ȣȜȠȭ ȜțȎ ȝȜȒȒȓȞȔȖȐȎȓȠ țȜȐȡȬ ȢȜȞȚȡ ȚȜȒȜȐ țȎȕȩȐȎȓȚȩȣ țȎȒ ȟȠȞȜȗȘȎȚȖ ǻȜ țȓ ȐȜșțȡȗȟȭ Ǻȩ ȏȡȒȓȚ ȖȟȝȜșȪȕȜȐȎȠȪ ȝȞȜ ȑȞȎȚȚțȜȓ ȜȏȓȟȝȓȥȓțȖȓ $7/DXQFKHU Ȓșȭ ȕȎȑȞȡȕȘȖ Ȗ ȡȟȠȎțȜȐ ȘȖ ȝȞȎȐȖșȪțȜȗ ȐȓȞȟȖȖ 0LQHFUDIW.

ěĚĖğěĖČ 516-+:).< Ď ĔęĞđĜęđĞđ ǽȞȜȑȞȎȚȚȩ -DYD $7/DXQFKHU Ȗ &RPSXWHU&UDIW ȏȓȟȝșȎȠțȩ Ȏ ȐȜȠ ȖȑȞȎ 0LQHFUDIW ȞȎȟȝȞȜȟȠȞȎțȭȓȠȟȭ ȘȜȚȝȎțȖȓȗ 0RMDQJ ȠȓȝȓȞȪ ȝȞȖțȎȒșȓȔȎȧȓȗ ȘȜȞȝȜȞȎȤȖȖ 0LFURVRIW țȎ ȝșȎȠ țȜȗ ȜȟțȜȐȓ ǸȡȝȖȠȪ ȖȑȞȡ ȚȜȔțȜ Ȑ ǶțȠȓȞțȓȠȓ ȝȜ ȎȒȞȓȟȡ www.minecraft.net ȝȜȟșȓ ȞȓȑȖȟȠȞȎȤȖȖ ȏȓȟȝșȎȠțȜȗ ȡȥȓȠ țȜȗ ȕȎȝȖȟȖ 0RMDQJ ǽȜȟșȓ ȜȝșȎȠȩ ȝȜȘȡȝȘȖ țȓ ȕȎȑȞȡȔȎȗ ȖȑȞȡ 0LQHFUDIW ȟ ȡȘȎȕȎțțȜȑȜ ȟȎȗȠȎ ǰȚȓȟȠȜ ȫȠȜȑȜ Ȓșȭ ȕȎ ȑȞȡȕȘȖ Ȗ ȡȟȠȎțȜȐȘȖ 0LQHFUDIW țȎ ȟȐȜȗ ȘȜȚȝȪȬȠȓȞ Ƞȩ ȕȎȝȡ ȟȠȖȦȪ șȎȡțȥȓȞ $7/DXQFKHU dzȟșȖ ȡ Ƞȓȏȭ ȡȔȓ ȡȟȠȎțȜȐșȓțȎ ȖȑȞȎ 0LQHFUDIW Ƞȩ Ȑȟȓ ȞȎȐțȜ ȒȜșȔȓț ȟșȓȒȜȐȎȠȪ ȖțȟȠȞȡȘ ȤȖȭȚ ȝȜ ȡȟȠȎțȜȐȘȓ ȖȑȞȩ 0LQHFUDIW ȟ ȝȜȚȜȧȪȬ ȝȞȜȑȞȎȚȚȩ $7/DXQFKHU

ǽȞȖȚȓȥȎțȖȓ ȃȞȎțȖ ȟȐȜȗ ȝȎȞȜșȪ ȜȠ ȡȥȓȠțȜȗ ȕȎȝȖȟȖ Mojang Ȑ ȏȓȕȜȝȎȟțȜȚ ȚȓȟȠȓ Ȗ țȓ ȑȜȐȜȞȖ ȓȑȜ ȒȞȡȕȪȭȚ Ȗ șȬȒȭȚ ȐȩȒȎȬȧȖȚ ȟȓȏȭ ȕȎ ȟȜȠȞȡȒțȖȘȜȐ Mojang ǶȟȝȜșȪȕȡȗ ȓȑȜ ȠȜșȪȘȜ Ȓșȭ ȎȐȠȜȞȖȕȎȤȖȖ Ȑ șȎȡțȥȓȞȓ ATLauncher ȖșȖ țȎ ȟȎȗȠȓ www.minecraft.net Ȗ ȒȞȡȑȖȣ ȞȓȟȡȞȟȎȣ Mojang dzȟșȖ Ƞȩ ȟȥȖȠȎȓȦȪ ȥȠȜ ȘȠȜ ȠȜ ȓȧȓ ȚȜȔȓȠ ȐȜȗȠȖ Ȑ ȠȐȜȬ ȡȥȓȠțȡȬ ȕȎȝȖȟȪ țȓȚȓȒșȓțțȜ ȖȕȚȓțȖ ȝȎȞȜșȪ Ș țȓȗ.

ǻǮȅǮǹǼ ǾǮǯǼȀȉ ǿ &20387(5&5$)7

23


ēČďĜğēĖČ Ĕ ğĝĞČęĚĎĖČ ĝĜđĐħ 2)>) ǿȞȓȒȎ -DYD țȓȜȏȣȜȒȖȚȎ Ȓșȭ ȕȎȝȡȟȘȎ ȝȞȜȑȞȎȚȚ țȎȝȖȟȎț țȩȣ țȎ ȭȕȩȘȓ -DYD Ǹ ȠȎȘȖȚ ȝȞȜȑȞȎȚȚȎȚ ȜȠțȜȟȭȠȟȭ Ȗ 0LQH FUDIW Ȗ $7/DXQFKHU ȃȜȠȭ ȟȜȐȞȓȚȓțțȩȓ ȐȓȞȟȖȖ ȖȑȞȩ 0LQH FUDIW țȓ ȠȞȓȏȡȬȠ ȜȠȒȓșȪțȜȗ ȡȟȠȎțȜȐȘȖ ȟȞȓȒȩ -DYD Ȑ ȟșȡȥȎȓ ȓȓ ȜȠȟȡȠȟȠȐȖȭ țȎ ȘȜȚȝȪȬȠȓȞȓ șȎȡțȥȓȞ $7/DXQFKHU ȝȜȝȞȜȟȠȡ țȓ ȕȎȝȡȟȠȖȠȟȭ ȅȠ Ȝȏȩ ȟȘȎȥȎȠ Ȫ ȟȞȓȒ ȡ -DYD ȝȓȞȓȗ Ȓ Ȗ țȎ ȟȎ ȗ Ƞ java. com/ru/download/ ǻȎȔȚȖ ȘȞȎȟțȡȬ ȘțȜȝȘȡ ǵȎȑȞȡȕȖȠȪ Java ȏȓȟȝșȎȠțȜ ()UHH -DYD 'RZQORDG Ȏ ȕȎȠȓȚ ȘțȜȝȘȡ ǿȜȑșȎȟȖȠȪȟȭ Ȗ țȎȥȎȠȪ ȏȓȟȝșȎȠțȡȬ ȕȎȑȞȡȕȘȡ ($JUHH DQG 6WDUW )UHH 'RZQORDG ǿȜȣȞȎțȖȐ ȟȘȎȥȎțțȩȗ ȢȎȗș Ȑ șȬȏȜȗ ȝȎȝȘȓ ȕȎȝȡȟȠȖ ȓȑȜ Ȗ ȟșȓȒȡȭ ȡȘȎȕȎțȖȭȚ ȡȟȠȎțȜȐȧȖȘȎ ȡȟȠȎțȜȐȖ ȟȞȓȒȡ -DYD. ǰ ȟșȡȥȎȓ ȕȎȠȞȡȒțȓțȖȗ ȝȜȟȚȜȠȞȖ ȐȖȒȓȜȖțȟȠȞȡȘȤȖȬ ȝȜ ȡȟȠȎțȜȐȘȓ ȝȜ ȎȒȞȓȟȡ youtu.be/f9SGAdDLAU4.

ēČďĜğēĖČ Ĕ ğĝĞČęĚĎĖČ )<4)=6+0-: ǽȞȜȑȞȎȚȚȎ $7/DXQFKHU ȡȝȞȜȧȎȓȠ ȒȜȏȎȐșȓțȖȓ ȚȜȒȜȐ Ȑ ȖȑȞȡ 0LQHFUDIW ǻȎ ȞȖȟ ȝȜȘȎȕȎț ȟȎȗȠ www.atlauncher.com țȎ ȘȜȠȜȞȜȚ Ƞȩ ȚȜȔȓȦȪ ȏȓȟȝșȎȠțȜ ȟȘȎȥȎȠȪ ȫȠȡ ȝȞȜȑȞȎȚȚȡ ǽȓȞȓȗȒȖ țȎ ȐȘșȎȒȘȡ Downloads Ȑ ȐȓȞȣțȓȗ ȥȎȟȠȖ ȟȠȞȎ țȖȤȩ ȥȠȜȏȩ ȝȜșȡȥȖȠȪ ȒȜȟȠȡȝ Ș ȟȟȩșȘȎȚ țȎ ȒȖȟȠȞȖȏȡȠȖȐ ȝȞȜȑȞȎȚȚȩ Ȗ ȐȖȒȓȜȖțȟȠȞȡȘȤȖȖ ȝȜ ȡȟȠȎțȜȐȘȓ Dzșȭ ȕȎȑȞȡȕ ȘȖ Ȗ ȡȟȠȎțȜȐȘȖ ȝȞȜȑȞȎȚȚȩ $7/DXQFKHU țȎȔȚȖ ȘțȜȝȘȡ ȟ ȟȟȩșȘȜȗ țȎ ȒȖȟȠȞȖȏȡȠȖȐ Ȓșȭ ȠȐȜȓȗ ȜȝȓȞȎȤȖȜțțȜȗ ȟȖȟȠȓ Țȩ ǰ ȟșȡȥȎȓ ȕȎȠȞȡȒțȓțȖȗ ȝȜȟȚȜȠȞȖ ȐȖȒȓȜȖțȟȠȞȡȘȤȖȬ ȝȜ ȡȟȠȎțȜȐȘȓ ǰȖȒȓȜȖțȟȠȞȡȘȤȖȭ ȠȎȘȔȓ ȒȜȟȠȡȝțȎ țȎ ȟȎȗȠȓ <RX7XEH ȝȜ ȎȒȞȓȟȡ youtu.be/mXb94DpiF78. ǰțȖȚȎțȖȓ ǼȏȞȎȠȖ ȐțȖȚȎțȖȓ ȥȠȜ ȝȓȞȓȒ ȕȎȝȡȟȘȜȚ ȡȟȠȎțȜȐȘȖ ȝȞȜȑȞȎȚȚȩ ATLauncher țȡȔțȜ ȝȜȚȓȟȠȖȠȪ ȟȘȎȥȎțțȩȗ ȢȎȗș ȒȖȟȠȞȖȏȡȠȖȐȎ Ȑ ȜȠȒȓșȪțȡȬ ȝȎȝȘȡ ǻȓ ȕȎȝȡȟȘȎȗ ȢȎȗș ȡȟȠȎțȜȐȘȖ Ȗȕ ȘȜȞțȓȐȜȑȜ ȘȎȠȎșȜȑȎ ȖșȖ ȞȎȏȜȥȓȑȜ ȟȠȜșȎ ǽȞȜȑȞȎȚȚȎ ȡȟȠȎțȜȐȘȖ ȖȕȐșȓȘȎȓȠ Ȑȟȓ ȢȎȗșȩ Ȑ Ƞȡ Ȕȓ ȝȎȝȘȡ Ȑ ȘȜȠȜȞȜȗ țȎȣȜȒȖȠȟȭ Ȗ ȟȎȚ ȢȎȗș ȒȖȟȠȞȖȏȡȠȖȐȎ

24

DZǹǮǰǮ


ǽȜȟșȓ ȡȟȠȎțȜȐȘȖ ȝȞȜȑȞȎȚȚȩ $7/DXQFKHU ȕȎȝȡȟȠȖ ȓȓ Ȗ ȝȓȞȓȗȒȖ țȎ ȐȘșȎȒȘȡ Accounts ȁȥȓȠțȩȓ ȕȎȝȖȟȖ ȟȝȞȎȐȎ ȁȘȎȔȖ ȟȐȜȖ ȖȚȭ ȝȜșȪȕȜȐȎȠȓșȭ Ȗ ȝȎȞȜșȪ ȡȥȓȠțȜȗ ȕȎȝȖȟȖ 0RMDQJ Ȁȩ ȚȜȔȓȦȪ ȡȟȠȎțȜȐȖȠȪ ȢșȎȔȜȘ Remember password ǵȎȝȜȚțȖȠȪ ȝȎȞȜșȪ ȥȠȜȏȩ țȓ ȐȐȜȒȖȠȪ ȒȎțțȩȓ ȟȐȜȓȗ ȡȥȓȠțȜȗ ȕȎȝȖȟȖ ȘȎȔȒȩȗ ȞȎȕ ȘȜȑȒȎ ȕȎȝȡȟȘȎȓȦȪ 0LQHFUDIW.

ˀ̛̭͘ 1.1. ʦ̖̍Ͳ̭̜̯͕̌ ̦̌ ̡̨̨̨̯̬̥ ̯̼ ̨̥̙̖̹̽ ̸̡̭̯̌̌̽ ̨̪̬̬̥̐̌​̥̱ ATLauncher

ȅȠȜȏȩ ȝȜȒȘșȬȥȖȠȪȟȭ Ș ȟȓȞȐȓȞȡ 0LQHFUDIW Ƞȓȏȓ țȡȔțȜ ȡȟȠȎțȜȐȖȠȪ Ƞȓ Ȕȓ ȚȜȒȩ Ȗ ȐȓȞȟȖȖ ȫȠȖȣ ȚȜȒȜȐ ȥȠȜ Ȗ țȎ ȟȓȞ ȐȓȞȓ ǽȜȟȘȜșȪȘȡ ȟȡȧȓȟȠȐȡȓȠ ȚțȜȔȓȟȠȐȜ ȘȜȚȏȖțȎȤȖȗ ȚȜ ȒȜȐ ȢȎțȎȠȩ ȝȞȖȒȡȚȎșȖ ȝȎȘȓȠȩ ȚȜȒȜȐ ȘȜȠȜȞȩȓ ȟȜȒȓȞȔȎȠ ©ȟȏȎșȎțȟȖȞȜȐȎțțȩȗª țȎȏȜȞ ȚȜȒȜȐ ǿȓȗȥȎȟ Țȩ ȕȎȑȞȡȕȖȚ ©ȐȎțȖșȪțȩȗª ȝȎȘȓȠ ȚȜȒȜȐ Ƞ ȓ ȝȎȘȓȠ ȟ ȜȥȓțȪ țȓȏȜșȪȦȖȚ ȘȜșȖȥȓȟȠȐȜȚ ȚȜȒȜȐ Ȗ ȒȜȏȎȐȖȚ Ȑ ȖȑȞȡ ȚȜȒ &RPSXWHU&UDIW. ǽȓȞȓȗȒȖ țȎ ȐȘșȎȒȘȡ Packs ǽȎȘȓȠȩ Ȗ țȎȗȒȖ ȝȎȘȓȠ Vanilla Minecraft Ȁȩ ȒȜȏȎȐȖȦȪ ȚȜȒ &RPSXWHU&UDIW Ȑ ȫȠȡ ȐȓȞȟȖȬ ȖȑȞȩ 0LQHFUDIW. ǻȎȔȚȖ ȘțȜȝȘȡ New Instance ǻȜȐȩȗ ȫȘȕȓȚȝșȭȞ Ȑ ȜȝȖȟȎțȖȖ ȚȜȒȎ 9DQLOOD 0LQHFUDIW ȋȘȕȓȚȝșȭȞ ² ȫȠȜ ȘȜȝȖȭ ȝȎȘȓȠȎ ȚȜȒȜȐ ȡȟȠȎțȜȐșȓțțȎȭ țȎ ȠȐȜȓȚ ȘȜȚȝȪȬȠȓȞȓ ǰ ȝȜ ȭȐȖȐȦȓȚȟȭ ȒȖȎșȜȑȜȐȜȚ ȜȘțȓ ȡȘȎȔȖ țȎȕȐȎțȖȓ ȫȘȕȓȚȝșȭ ȞȎ țȎȝȞȖȚȓȞ CC Minecraft ǼȏȭȕȎȠȓșȪțȜ ȐȩȏȓȞȖ ȐȓȞȟȖȬ ȖȑȞȩ 1.8.9 (0LQHFUDIW Ȑ ȞȎȟȘȞȩȐȎȬȧȓȚȟȭ ȟȝȖȟȘȓ țȖ Ȕȓ ȝȜȠȜȚȡ ȥȠȜ ȫȠȜ ȝȜȟșȓȒțȭȭ ȐȓȞȟȖȭ ȖȑȞȩ ȘȜȠȜȞȎȭ ȝȜȒ

ǻǮȅǮǹǼ ǾǮǯǼȀȉ ǿ &20387(5&5$)7

25


ȒȓȞȔȖȐȎȓȠ ȚȜȒ &RPSXWHU&UDIW ȁȟȠȎțȜȐȖ ȢșȎȔȜȘ Enable User Lock ǰȘșȬȥȖȠȪ ȏșȜȘȖȞȜȐȘȡ ȝȜșȪȕȜȐȎȠȓșȭ ǮȘȠȖ ȐȎȤȖȭ ȒȎțțȜȑȜ ȝȎȞȎȚȓȠȞȎ ȜȕțȎȥȎȓȠ ȥȠȜ ȠȜșȪȘȜ ȝȜșȪȕȜȐȎ ȠȓșȪ ȠȓȘȡȧȓȗ ȡȥȓȠțȜȗ ȕȎȝȖȟȖ ȜȝȓȞȎȤȖȜțțȜȗ ȟȖȟȠȓȚȩ ȟȚȜ ȔȓȠ ȝȜșȡȥȖȠȪ ȒȜȟȠȡȝ Ș ȫȠȜȚȡ ȫȘȕȓȚȝșȭȞȡ ǽȞȖȚȓȥȎțȖȓ ǯȡȒȡȧȖȓ ȐȓȞȟȖȖ ComputerCraft ȚȜȑȡȠ ȏȩȠȪ ȟȜȐȚȓȟȠȖȚȩ ȟ ȏȜșȓȓ țȜȐȩȚȖ ȐȓȞȟȖȭȚȖ ȖȑȞȩ Minecraft ǰ ȫȠȜȚ ȟșȡȥȎȓ ȜȏțȜȐșȓțțȩȓ ȖțȟȠȞȡȘȤȖȖ ȝȜ ȡȟȠȎțȜȐȘȓ ȭ Ȝȝȡȏ șȖȘȡȬ țȎ ȟȎȗȠȓ www.nostarch.com/codingwithminecraft/. ǰ ȝȜȭȐȖȐȦȓȚȟȭ ȜȘțȓ Select Mods to Install ǰȩȏȜȞ ȚȜȒȜȐ Ȓșȭ ȡȟȠȎțȜȐȘȖ ȡȟȠȎțȜȐȖ ȠȜșȪȘȜ ȜȒȖț ȢșȎȔȜȘ ² țȎ ȝȞȜȠȖȐ ȝȡțȘȠȎ ȞȭȒȜȚ ȟ Minecraft Forge (Recommended) (0LQHFUDIW )RUJH ȞȓȘȜȚȓțȒȡȓȠȟȭ

² Ȏ ȕȎȠȓȚ țȎȔȚȖ ȘțȜȝ Șȡ Install ȁȟȠȎțȜȐȖȠȪ ǺȜȒ 0LQHFUDIW )RUJH țȓȜȏȣȜȒȖȚ Ȓșȭ ȞȎȏȜȠȩ &RPSXWHU&UDIW. ĘęĚďĚěĚėĨēĚĎČĞđėĨĝĖČī ĔďĜČ ĝ ĘĚĐČĘĔ

Если ты только знакомишься с игрой Minecraft, я рекомендую начинать с однопользовательского режима. Но если ты хочешь подключиться к публичному многопользовательскому серверу, в твоем экземпляре должны быть установлены те же моды, что и на сервере. На большинстве публичных серверов вряд ли будет установлен мод ComputerCraft, поэтому тебе понадобится установить на вкладке Packs (Пакеты) другой пакет модов, а не Vanilla Minecraft. Популярные пакеты модов, которые содержат ComputerCraft, – это Resonant Rise, Sky Factory 2, Space Astronomy, Golden Cobblestone и Yogscast Complete. (Мне больше всего нравится Resonant Rise.) Ты также можешь пролистать список пакетов модов на вкладке Packs (Пакеты) и, нажимая кнопку View Mods (Просмотр модов), просмотреть, входит ли в состав мод ComputerCraft. Если ты решил установить один из таких пакетов модов, пропусти раздел «Загрузка и установка ComputerCraft», потому что корректные версии ComputerCraft и Minecraft будут ав-

26

DZǹǮǰǮ


томатически установле ны вместе с пакетом. Пакетам модовприсваиваются номера версий, поэтому, если ты решил играть на публичном сервере, обязательно устанавливай ту же версию пакета модов, которая установлена на этом сервере. Чтобы найти публичные серверы для выбранного пакета модов, выполни в Интернете поиск по запросу название_ пакета_модов сервер Minecraft или перейди на сайт www. atlauncher.com и щелкни мышью по ссылке Servers в верхней части страницы.

ǸȜȑȒȎ ȡȟȠȎțȜȐȘȎ ȏȡȒȓȠ ȕȎȐȓȞȦȓțȎ Ƞȩ țȎȗȒȓȦȪ ȟȐȜȗ ȫȘ ȕȓȚȝșȭȞ ȖȑȞȩ 0LQHFUDIW țȎ ȐȘșȎȒȘȓ Instances ȋȘȕȓȚȝ șȭȞȩ Ȑ ȝȞȎȐȜȗ ȥȎȟȠȖ ȜȘțȎ $7/DXQFKHU ȋȠȜ ȫȘȕȓȚȝșȭȞ ȐȎțȖșȪțȜȗ ȐȓȞȟȖȖ ȖȑȞȩ 0LQHFUDIW ȝȜȫȠȜȚȡ Ƞȓȏȓ țȡȔțȜ ȐȞȡȥțȡȬ ȕȎȑȞȡȕȖȠȪ Ȗ ȡȟȠȎțȜȐȖȠȪ ȚȜȒ &RPSXWHU&UDIW.

ēČďĜğēĖČ Ĕ ğĝĞČęĚĎĖČ +758=<-:+:).< ǰ ȫȠȜȚ ȞȎȕȒȓșȓ ȭ ȞȎȟȟȘȎȔȡ ȘȎȘ ȕȎȑȞȡȕȖȠȪ Ȗ ȡȟȠȎțȜȐȖȠȪ ȚȜȒ &RPSXWHU&UDIW ȀȎȘȔȓ Ƞȩ ȚȜȔȓȦȪ ȝȞȜȟȚȜȠȞȓȠȪ ȐȖȒȓȜȞȜșȖȘ ȒȓȚȜțȟȠȞȖȞȡȬȧȖȗ ȘȎȘ ȡȟȠȎțȜȐȖȠȪ &RPSXWHU&UDIW țȎ ȟȎȗ Ƞȓ youtu.be/g4Zs2JY1vi8/ ǿȘȎȥȎȠȪ ȚȜȒ &RPSXWHU&UDIW Ƞȩ ȚȜȔȓȦȪ ȝȜ ȎȒȞȓȟȡ www.computercraft.info/download/. ȇȓșȘ ț Ȗ ȚȩȦȪȬ ȝȜ ȟȟȩșȘȓ Download ComputerCraft 1.79 (for Minecraft 1.8.9) ȥȠȜȏȩ ȟȘȎȥȎȠȪ ȢȎȗș ComputerCraft1.79.jar ȋȠȜȠ ȢȎȗș ȠȎȘȔȓ ȒȜȟȠȡȝȓț ȝȜ ȎȒȞȓȟȡ www. nostarch.com/codingwithminecraft/. ȍ ȒȓȞȔȡ ȫȠȜȠ ȢȎȗș Ȑ ȝȎȝȘȓ șȎȡțȥȓȞȎ $7/DXQFKHU ȥȠȜȏȩ ȓȑȜ ȚȜȔțȜ ȏȩșȜ șȓȑȘȜ țȎȗȠȖ ǻȎ ȐȘșȎȒȘȓ Instances ȋȘ ȕȓȚȝșȭȞȩ Ȑ ȝȞȎȐȜȗ ȥȎȟȠȖ ȜȘțȎ ȝȞȜȑȞȎȚȚȩ $7/DXQFKHU țȎȔȚȖ ȘțȜȝȘȡ Edit Mods ǶȕȚȓțȖȠȪ ȚȜȒȩ ȟȐȜȓȑȜ ȫȘȕȓȚ ȝșȭȞȎ 9DQLOOD 0LQHFUDIW ǼȠȘȞȜȓȠȟȭ ȒȖȎșȜȑȜȐȜȓ ȜȘțȜ (GLWLQJ 0RGV ǶȕȚȓțȓțȖȓ ȚȜȒȜȐ ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ Ȑ ȘȜȠȜ ȞȜȚ Ȑ țȎȟȠȜȭȧȓȓ ȐȞȓȚȭ ȒȜȏȎȐșȓț Ȗ ȎȘȠȖȐȖȞȜȐȎț ȠȜșȪȘȜ ȚȜȒ 0LQHFUDIW )RUJH.

ǻǮȅǮǹǼ ǾǮǯǼȀȉ ǿ &20387(5&5$)7

27


ˀ̛̭͘ 1.2. ʰ̛̥̖̦̖̦̖̚ ̨̨̥̔̏ ̣̔́ ̨̨̯̖̏̐ ̡̖̥̪̣̬̾́̌̚ ̛̬̼̐

ǻȎȔȚȖ ȘțȜȝȘȡ Add Mod DzȜȏȎȐȖȠȪ ȚȜȒ Ȑ ȝȜȭȐȖȐȦȓȚȟȭ ȜȘțȓ ȧȓșȘțȖ ȚȩȦȪȬ ȝȜ ȘțȜȝȘȓ Select ǰȩȏȞȎȠȪ Ȗ ȐȩȏȓȞȖ ȞȎțȓȓ ȟȘȎȥȎțțȩȗ ȢȎȗș ComputerCraft1.79.jar ǰ ȞȎȟȘȞȩȐȎȬ ȧȓȚȟȭ ȟȝȖȟȘȓ Type of Mod ǿȝȜȟȜȏ ȚȜȒȖȢȖȘȎȤȖȖ ȐȩȏȓȞȖ ȝȡțȘȠ Inside Minecraft.jar ǰțȡȠȞȖ 0LQHFUDIW.MDU ǵȎȠȓȚ țȎȔȚȖ ȘțȜȝȘȡ Add DzȜȏȎȐȖȠȪ ǽȡțȘȠ ComputerCraft1.79.jar ȝȜȭȐȖȠȟȭ Ȑ ȝȞȎȐȜȗ ȥȎȟȠȖ ȜȘțȎ Ȑ ȟȠȜșȏȤȓ Disabled Mods ǼȠȘșȬȥȓțțȩȓ ȚȜȒȩ ȋȠȜȠ ȚȜȒ ȒȜȏȎȐșȓț Ȑ ȠȐȜȗ ȫȘȕȓȚȝșȭȞ 0LQHFUDIW țȜ Ƞȩ ȒȜșȔȓț ȎȘ ȠȖȐȖȞȜȐȎȠȪ ȓȑȜ ȥȠȜȏȩ țȎȥȎȠȪ ȖȟȝȜșȪȕȜȐȎȠȪ ȁȟȠȎțȜȐȖ ȢșȎ ȔȜȘ țȎȝȞȜȠȖȐ ȝȡțȘȠȎ ComputerCraft1.79.jar Ȏ ȕȎȠȓȚ țȎȔ ȚȖ ȘțȜȝȘȡ Enable Mod ǰȘșȬȥȖȠȪ ȚȜȒ Ȑ țȖȔțȓȗ ȥȎȟȠȖ ȜȘțȎ ǽȡțȘȠ ComputerCraft1.79.jar ȝȓȞȓȚȓȟȠȖȠȟȭ Ȑ șȓȐȡȬ ȥȎȟȠȪ ȜȘțȎ Ȑ ȞȎȕȒȓș Enabled Mods ǰȘșȬȥȓțțȩȓ ȚȜȒȩ ǻȎȔȚȖ ȘțȜȝȘȡ Close ǵȎȘȞȩȠȪ ȥȠȜȏȩ ȕȎȘȞȩȠȪ ȜȘțȜ ǰȓȞțȡȐȦȖȟȪ țȎ ȐȘșȎȒȘȡ Instances ȋȘȕȓȚȝșȭȞȩ țȎȔ ȚȖ ȘțȜȝȘȡ Play ǶȑȞȎȠȪ ȟȐȜȓȑȜ ȫȘȕȓȚȝșȭȞȎ 0LQHFUDIW ȥȠȜȏȩ ȕȎȝȡȟȠȖȠȪ ȖȑȞȡ ǽȞȖ ȝȓȞȐȜȚ țȎȔȎȠȖȖ ȘțȜȝȘȖ Play ǶȑȞȎȠȪ ȝȜȭȐȖȠȟȭ ȜȘțȜ ȟ ȟȜȜȏȧȓțȖȓȚ Ȝ ȠȜȚ ȥȠȜ ȒȜȟȠȡȝțȜ ȜȏțȜȐșȓțȖȓ ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ ǻȎȔȚȖ ȘțȜȝȘȡ Don't Remind Me Again ǻȓ țȎȝȜȚțȖȠȪ Țțȓ ȟțȜȐȎ ȥȠȜȏȩ ȜȠȘȎ ȕȎȠȪȟȭ ȜȠ ȜȏțȜȐșȓțȖȭ Ȗ ȟȘȞȩȠȪ ȫȠȜ ȜȘțȜ

28

DZǹǮǰǮ


dzȟșȖ Ƞȩ ȟșȡȥȎȗțȜ țȎȔȚȓȦȪ ȘțȜȝȘȡ Yes DzȎ Ȗ ȜȏțȜ ȐȖȦȪ ȫȘȕȓȚȝșȭȞ ȐȝȜșțȓ ȐȜȕȚȜȔțȜ ȚȜȒ &RPSXWHU&UDIW ȏȡ ȒȓȠ ȞȎȏȜȠȎȠȪ țȓȝȞȎȐȖșȪțȜ ǰ ȫȠȜȚ ȟșȡȥȎȓ ȡȒȎșȖ ȫȘȕȓȚȝ șȭȞ ȖȑȞȩ Ȗ ȝȜȐȠȜȞȖ Ȑȟȓ ȦȎȑȖ ȝȜ ȡȟȠȎțȜȐȘȓ Ȗ țȎȟȠȞȜȗȘȓ ȟțȎȥȎșȎ

ˀ̛̭͘ 1.3. ˄̨̛̖̥̣̖̦̖̏̔ ̨ ̨̨̭̯̱̪̦̥̔ ̨̨̛̦̣̖̦̍̏​̛

ęČĝĞĜĚĕĖČ ĘĚĐČ +758=<-:+:).<

У мода ComputerCraft есть некоторые настраиваемые параметры, записываемые в текстовый файл ŽŵƉƵƚĞƌ ƌĂĨƚ͘ĐĨŐ͘ В большинстве случаев, тебе не нужно редактировать этот файл, и я предполагаю, что ты используешь конфигурацию по умолчанию. Большинство публичных многопользовательских серверов Minecraft также используют настройки по умолчанию. Однако если по какой-то причине ты хочешь изменить настройки мода ComputerCraft, тебе нужно знать, где находится файл конфигурации. Ты найдешь этот файл на своем компьютере там же, куда установил программу ATLauncher. На моем компьютере под управлением операционной системы Windows я установил программу ATLauncher в папку C:\ATLauncher, поэтому файл конфигурации я обнаружил по адресу C:\ATLauncher\ /ŶƐƚĂŶĐĞƐͰ DŝŶĞĐƌĂĨƚͰĐŽŶĨŝŐͰ ŽŵƉƵƚĞƌ ƌĂĨƚ͘ĐĨŐ͘ Открой этот файл в текстовом редакторе, например Блокнот (Notepad) или TextMate. Настройки в файле сопровождаются комментариями. Ты можешь изменять параметры, указывая новые значения после знака равенства (=).

ǻǮȅǮǹǼ ǾǮǯǼȀȉ ǿ &20387(5&5$)7

29


ēČěğĝĖ 516-+:).< ǽȜȟșȓ ȕȎȝȡȟȘȎ șȎȡțȥȓȞȎ $7/DXQFKHU Ȗ țȎȔȎȠȖȭ ȘțȜȝȘȖ Play ǶȑȞȎȠȪ ȝȜȭȐȖȠȟȭ ȑșȎȐțȜȓ ȚȓțȬ ȖȑȞȩ 0LQHFUDIW ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ

ˀ̛̭͘ 1.4. ʧ̨̣̦̖̌̏ ̥̖̦̀ ̛̬̼̐ DŝŶĞĐƌĂŌ

ǻȎȔȚȖ ȘțȜȝȘȡ ǼȒȖțȜȥțȎȭ ȖȑȞȎ (6LQJOHSOD\HU ȜȠȘȞȜ ȓȠȟȭ ȟȝȖȟȜȘ ȚȖȞȜȐ ȘȜȠȜȞȩȓ Ƞȩ ȟȜȕȒȎș dzȟșȖ 0LQHFUDIW Ƞȩ ȕȎȝȡȟȠȖș ȐȝȓȞȐȩȓ ȟȝȖȟȜȘ ȏȡȒȓȠ ȝȡȟȠ ² Ƞȓȏȓ țȡȔțȜ ȟȜȕȒȎȠȪ ȟȐȜȗ ȝȓȞȐȩȗ ȚȖȞ

ĝĚēĐČęĔđ ęĚĎĚďĚ ĘĔĜČ ǰ ȖȑȞȓ 0LQHFUDIW țȓȠ ȘȎȘȜȑȜ ȠȜ ȟȠȎțȒȎȞȠțȜȑȜ țȎȏȜȞȎ ȡȞȜȐ țȓȗ ǶȑȞȜȐȜȗ ȚȖȞ ȑȓțȓȞȖȞȡȓȠȟȭ ȟșȡȥȎȗțȩȚ ȜȏȞȎȕȜȚ Ȗ Ȑȟȓȑ ȒȎ ȜȠȘȞȩȐȎȓȠ țȜȐȡȬ țȓȖȕȐȓȟȠțȡȬ ȜȏșȎȟȠȪ ȖȟȟșȓȒȜȐȎțȖȭ ǻȎȔȚȖ ȘțȜȝȘȡ ǿȜȕȒȎȠȪ țȜȐȩȗ ȚȖȞ (&UHDWH 1HZ :RUOG ȥȠȜȏȩ ȜȠȘȞȩȠȪ ȜȒțȜȖȚȓțțȩȗ ȫȘȞȎț ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ ǰȐȓȒȖ țȎȕȐȎțȖȓ ȚȖȞȎ țȎȝȞȖȚȓȞ ǺȜȗ ȚȖȞ ComputerCraft Ȑ ȠȓȘȟȠȜȐȜȓ ȝȜșȓ ǻȎȕȐȎțȖȓ ȚȖȞȎ (:RUOG 1DPH ǵȎȠȓȚ țȎȔȖȚȎȗ ȘțȜȝȘȡ ǾȓȔȖȚ ȖȑȞȩ (*DPH 0RGH ȝȜȘȎ țȎ țȓȗ țȓ ȜȠȜȏȞȎȕȖȠȟȭ ȟȠȞȜȘȎ ǾȓȔȖȚ ȖȑȞȩ ǰȩȔȖȐȎțȖȓ (*DPH 0RGH: 6XUYLYDO Ȁȩ ȠȎȘȔȓ ȚȜȔȓȦȪ ȝȓȞȓȘșȬȥȎȠȪ ȞȓȔȖȚȩ Ȑ ȝȞȜ Ȥȓȟȟȓ ȖȑȞȩ

30

DZǹǮǰǮ


ˀ̛̭͘ 1.5. ˑ̡̬̦̌ ˁ̨̯̔̌̽̚ ̨̦̼̜̏ ̛̥̬

ǻȎȔȚȖ ȘțȜȝȘȡ DzȜȝȜșțȖȠȓșȪțȩȓ țȎȟȠȞȜȗȘȖ ȚȖȞȎ (0RUH :RUOG 2SWLRQV Ȏ ȕȎȠȓȚ ȘțȜȝȘȡ ǶȟȝȜșȪȕȜȐȎțȖȓ ȥȖȠȜȐ ($OORZ &KHDWV ȥȠȜȏȩ țȎ țȓȗ ȜȠȜȏȞȎȕȖșȎȟȪ ȟȠȞȜȘȎ ǶȟȝȜșȪȕȜȐȎțȖȓ ȥȖȠȜȐ ǰǸǹ ($OORZ &KHDWV: 21 ȅȖȠȩ ȝȜ ȕȐȜșȭȠ Ƞȓȏȓ ȝȓȞȓȘșȬȥȎȠȪȟȭ ȚȓȔȒȡ ȞȓȔȖȚȎȚȖ ȖȑȞȩ ȐȩȔȖ ȐȎțȖȭ Ȗ ȠȐȜȞȥȓȟȘȖȚ Ȝ ȘȜȠȜȞȩȣ ȭ ȞȎȟȟȘȎȔȡ ȒȎșȓȓ ȅȠȜȏȩ ȟȜȕȒȎȠȪ țȜȐȩȗ ȚȖȞ țȎȔȚȖ ȘțȜȝȘȡ ǿȜȕȒȎȠȪ țȜȐȩȗ ȚȖȞ (&UHDWH 1HZ :RUOG

ĜČēėĔģĔī ĔďĜĚĎħġ ĜđĒĔĘĚĎ 516-+:).< ǰ 0LQHFUDIW ȒȜȟȠȡȝțȜ ȠȞȖ ȞȓȔȖȚȎ Ȑ ȘȜȠȜȞȩȣ Ƞȩ ȚȜȔȓȦȪ ȖȑȞȎȠȪ ȀȐȜȞȥȓȟȘȖȗ (&UHDWLYH ǰȩȔȖȐȎțȖȓ (6XUYLYDO Ȗ ȃȎȞȒȘȜȞ (+DUGFRUH ǰ ȠȐȜȞȥȓȟȘȜȚ ȞȓȔȖȚȓ Ƞȩ ȚȜȔȓȦȪ ȟȘȜșȪ ȡȑȜȒțȜ șȓȠȎȠȪ țȓ țȡȔțȜ ȓȟȠȪ Ƞȩ țȓ ȚȜȔȓȦȪ ȡȚȓȞȓȠȪ Ȗ ȡ Ƞȓȏȭ ȓȟȠȪ țȓȜȑȞȎ țȖȥȓțțȜȓ ȘȜșȖȥȓȟȠȐȜ șȬȏȩȣ ȏșȜȘȜȐ ȋȠȜȠ ȞȓȔȖȚ ȖȒȓȎșȓț ȓȟșȖ Ƞȩ ȣȜȥȓȦȪ ȕȎțȭȠȪȟȭ ȟȠȞȜȖȠȓșȪȟȠȐȜȚ Ȗȕ ȏșȜȘȜȐ 0LQH FUDIW ȟȜȜȞȡȔȓțȖȗ ȠȎȘȖȣ ȘȎȘ ȕȎȚȘȖ ȖșȖ ȑȖȑȎțȠȟȘȖȓ ȝȞȜȖȕ ȐȓȒȓțȖȭ ȖȟȘȡȟȟȠȐȎ

ǻǮȅǮǹǼ ǾǮǯǼȀȉ ǿ &20387(5&5$)7

31


ǰ ȞȓȔȖȚȓ ȐȩȔȖȐȎțȖȭ ȖȑȞȎ ȟȠȎțȜȐȖȠȟȭ ȝȞȖȏșȖȔȓțțȜȗ Ș ȞȓȎșȪțȜȟȠȖ Ȁȓȏȓ țȡȔțȜ ȏȡȒȓȠ ȖȟȘȎȠȪ ȝȖȧȡ ȥȠȜȏȩ ȠȐȜȗ ȝȓȞȟȜțȎȔ țȓ ȡȚȓȞ ȜȠ ȑȜșȜȒȎ dzȒȖțȟȠȐȓțțȩȓ ȏșȜȘȖ ȟ ȝȜȚȜ ȧȪȬ ȘȜȠȜȞȩȣ Ƞȩ ȚȜȔȓȦȪ ȟȠȞȜȖȠȪ ² Ƞȓ ȘȜȠȜȞȩȓ Ƞȩ ȒȜȏȩș ȟȎȚȜȟȠȜȭȠȓșȪțȜ Ȁȩ țȓ ȚȜȔȓȦȪ șȓȠȎȠȪ Ȏ ȓȟșȖ ȡȝȎȒȓȦȪ ȟ ȜȏȞȩȐȎ ȐȓșȖȘ ȦȎțȟ ȝȜșȡȥȖȠȪ ȠȞȎȐȚȩ ȖșȖ ȐȜȐȟȓ ȟȐȓȞțȡȠȪ ȦȓȬ ǻȡ Ȏ țȜȥȪȬ ȝȜȭȐșȭȬȠȟȭ ȚȜțȟȠȞȩ ǽȜȟȘȜșȪȘȡ ȝȞȖ ȟȜȕȒȎțȖȖ ȚȖȞȎ Ƞȩ ȞȎȕȞȓȦȖș ȖȟȝȜșȪ ȕȜȐȎ ț Ȗȓ ȥ Ȗ Ƞ ȜȐ Ƞ ȩ ȚȜȔȓȦ Ȫ ȖȟȝȜș Ȫ ȕȜȐȎȠ Ȫ ȘȜȚȎ ț Ȓ ȡ / gamemode Ȓșȭ ȝȓȞȓȘșȬȥȓțȖȭ ȚȓȔȒȡ ȞȓȔȖȚȎȚȖ ȐȩȔȖȐȎ țȖȭ Ȗ ȠȐȜȞȥȓȟȘȖȚ ȅȠȜȏȩ ȖȕȚȓțȖȠȪ ȖȑȞȜȐȜȗ ȞȓȔȖȚ țȎȔ ȚȖ ȘșȎȐȖȦȡ T ȜȠȘȞȩȐȎȬȧȡȬ ȜȘțȜ ȘȜțȟȜșȖ Ȗ ȐȐȓȒȖ ȟȠȞȜ Șȡ /gamemode creative ȖșȖ /gamemode survival ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ

ˀ̛̭͘ 1.6. ʦ̨̏̔ ̡̨̥̦̼̌̔ /gamemode ̏ ̨̡̦̖ ̡̨̨̛̦̭̣

ǻȎ ȚȜȗ ȐȕȑșȭȒ Ȑ ȞȓȔȖȚȓ ȐȩȔȖȐȎțȖȭ ȖȑȞȎȠȪ ȟșȜȔțȓȓ Ȗ ȖțȠȓȞȓȟțȓȓ ǾȓȟȡȞȟȩ ȜȑȞȎțȖȥȓțȩ Ȏ ȏșȜȘȖ țȡȔțȜ ȒȜȏȩ ȐȎȠȪ ȐȞȡȥțȡȬ ǾȓȔȖȚ ȐȩȔȖȐȎțȖȭ ȠȎȘȔȓ ȝȜȒȜȗȒȓȠ ȓȟșȖ Ȗȟ ȝȜșȪȕȡȓȠȟȭ ȚȜȒ &RPSXWHU&UDIW ǽȞȜȑȞȎȚȚȖȞȡȭ ȥȓȞȓȝȎȦȓȘ ȎȐȠȜȚȎȠȖȕȖȞȡȬȧȖȣ ȞȡȠȖțțȩȓ ȕȎȒȎȥȖ Ƞȩ ȐȟȓȑȒȎ ȏȡȒȓȦȪ Ȑ ȏȓȕȜȝȎȟțȜȟȠȖ ȟȩȠ Ȗ ȟ ȝȜșțȩȚ țȎȏȜȞȜȚ ȏșȜȘȜȐ Ȗ ȝȞȓȒȚȓȠȜȐ ǻȓ ȝȓȞȓȔȖȐȎȗ Ȝ ȠȜȚ ȥȠȜ Ȑ ȞȓȔȖȚȓ ȐȩȔȖȐȎțȖȭ ȠȐȜȗ ȝȓȞȟȜțȎȔ ȚȜȔȓȠ ȡȚȓȞȓȠȪ dzȟșȖ Ȝț ȝȜȑȖȏțȓȠ ȠȜ ȡȞȜțȖȠ

32

DZǹǮǰǮ


ȝȞȓȒȚȓȠȩ Ȗ ȏșȜȘȖ ȘȜȠȜȞȩȓ țȜȟȖș Ȑ ȖțȐȓțȠȎȞȓ Ȗ ȐȓȞțȓȠȟȭ Ș ȖȟȣȜȒțȜȗ ȠȜȥȘȓ ȟȝȎȡțȎ ȜȠȘȡȒȎ Ƞȩ ȟȚȜȔȓȦȪ ȝȞȜȒȜșȔȖȠȪ ȖȑȞȡ ȃȎȞȒȘȜȞ ȞȓȔȖȚ ȝȜȣȜȔ țȎ ȞȓȔȖȚ ȐȩȔȖȐȎțȖȭ țȜ ȡ Ƞȓȏȭ ȏȡȒȓȠ ȠȜșȪȘȜ ȜȒțȎ ȔȖȕțȪ ǽȜȟșȓ ȟȚȓȞȠȖ ȖȑȞȜȐȜȗ ȚȖȞ ȝȞȖ ȒȓȠȟȭ ȝȜȘȖțȡȠȪ ǺȜȒ &RPSXWHU&UDIW ȝȜȒȒȓȞȔȖȐȎȓȠ ȃȎȞȒ ȘȜȞ ȞȓȔȖȚ țȜ ȟȓȗȥȎȟ ȭ ȞȓȘȜȚȓțȒȡȬ ȖȑȞȎȠȪ Ȑ ȞȓȔȖȚȓ Ȑȩ ȔȖȐȎțȖȭ

ģĞĚ Ęħ ğēęČėĔ ǰȜȠ Ƞȩ Ȗ ȐȩȝȜșțȖș Ȑȟȓ țȎȟȠȞȜȗȘȖ țȓȜȏȣȜȒȖȚȩȓ Ȓșȭ Ȝȏ ȡȥȓțȖȭ ȝȞȜȑȞȎȚȚȖȞȜȐȎțȖȬ ȟ ȝȜȚȜȧȪȬ ȫȠȜȗ ȘțȖȑȖ Ȁȩ ȟȘȎȥȎș Ȗ ȡȟȠȎțȜȐȖș ȖȑȞȡ 0LQHFUDIW ȟȞȓȒȡ -DYD șȎȡțȥȓȞ $7/DXQFKHU Ȗ ȚȜȒ &RPSXWHU&UDIW ǸȎȘ ȡȝȜȚȖțȎșȜȟȪ ȞȎțȓȓ -DYD $7/DXQFKHU Ȗ &RPSXWHU&UDIW ȏȓȟȝșȎȠțȩ Ȏ ȐȜȠ ȖȑȞȎ 0LQHFUDIW ² țȓȠ ǶȑȞȎ 0LQHFUDIW ȠȎȘ ȐȓșȖȘȎ Ȗ ȖȚȓȓȠ ȟȠȜșȪȘȜ ȚȜȒȜȐ ȥȠȜ ȝȓȞȓȒ țȎȥȎșȜȚ ȖȑȞȩ ȠȞȓȏȡȓȠȟȭ ȐțȓȟȠȖ ȘȜȓ ȘȎȘȖȓ țȎȟȠȞȜȗ ȘȖ ǻȜ ȠȓȝȓȞȪ ȘȜȑȒȎ Ƞȩ ȑȜȠȜȐ ȖȑȞȎȠȪ Ƞȩ ȠȎȘȔȓ ȚȜȔȓȦȪ ȝȞȖȟȠȡȝȎȠȪ Ș ȜȏȡȥȓțȖȬ ȝȜȫȠȜȚȡ ȒȎȐȎȗ ȝȖȟȎȠȪ ȘȜȒ


2 ĚĝęĚĎħ ěĜĚďĜČĘĘĔĜĚĎČęĔī ǰ ȫȠȜȗ ȑșȎȐȓ Ƞȩ ȝȜȕțȎȘȜȚȖȦȪȟȭ ȟ ȜȟțȜȐȎȚȖ ȟȜȕȒȎțȖȭ ȞȜȏȜȠȜȐ 0LQHFUDIW țȎȕȩȐȎȓȚȩȣ ȥȓ ȞȓȝȎȦȘȎȚȖ DzȎȐȎȗ ȟȜȕȒȎȒȖȚ țȎȦȡ ȝȓȞȐȡȬ ȥȓȞȓȝȎȦȘȡ Ȗ ȒȎȒȖȚ ȓȗ ȘșȖȥȘȡ ǵȎȠȓȚ Țȩ ©ȝȜ ȘȜȞȚȖȚª ȓȓ Ȗ ȝȜȝȞȜȏȡȓȚ ȐȩȝȜșțȖȠȪ ȝȎȞȡ ȝȞȜ ȑȞȎȚȚțȩȣ ȖțȟȠȞȡȘȤȖȗ Ȁȩ ȠȎȘȔȓ ȜȟȐȜȖȦȪ țȓȘȜ ȠȜȞȩȓ ȏȎȕȜȐȩȓ ȘȜțȤȓȝȤȖȖ ȝȞȜȑȞȎȚȚȖȞȜȐȎțȖȭ Ȗ ȡȕțȎȓȦȪ ȘȎȘ ȝȞȎȘȠȖȘȜȐȎȠȪȟȭ ȝȞȜȑȞȎȚȚȖȞȜȐȎȠȪ Ȑ ȖȑȞȓ 0LQHFUDIW

ēęČĖĚĘĝĞĎĚ ĝ ģđĜđěČĤĖČĘĔ ȍȕȩȘ ȝȞȜȑȞȎȚȚȖȞȜȐȎțȖȭ /RJR ȟȜȕȒȎțțȩȗ Ȑ ȓ ȑȜȒȩ ȐȐȓș ȝȜțȭȠȖȓ ȝȞȜȑȞȎȚȚȖȞȡȓȚȩȣ ȥȓȞȓȝȎȦȓȘ ǰ ȫȠȜȚ ȭȕȩ Șȓ ȥȓȞȓȝȎȦȘȖ ȏȩșȖ ȠȜȥȘȎȚȖ țȎ ȫȘȞȎțȓ ȘȜȠȜȞȩȓ ȚȜȔțȜ ȏȩșȜ ȕȎȝȞȜȑȞȎȚȚȖȞȜȐȎȠȪ Ȓșȭ ȝȓȞȓȚȓȧȓțȖȭ Ȗ ȞȖȟȜȐȎțȖȭ șȖțȖȗ ȟȜȕȒȎȐȎȭ ȡȒȖȐȖȠȓșȪțȩȓ ȡȕȜȞȩ ǶȕȡȥȎȭ ȭȕȩȘ /RJR ȚȜȔțȜ țȎȡȥȖȠȪȟȭ ȝȞȜȑȞȎȚȚȖȞȜȐȎȠȪ ȠȐȜȞȭ ȦȓȒȓȐȞȩ ȟ ȝȜ ȚȜȧȪȬ ȘȜȚȝȪȬȠȓȞȎ ǻȎ ȞȖȟ ȝȜȘȎȕȎț ȡȕȜȞ ȟȒȓșȎțțȩȗ ȟ ȝȜȚȜȧȪȬ ȝȞȜȑȞȎȚȚȩ ȜȝȖȟȎțțȜȗ Ȑ ȘțȖȑȓ ǯȞȎȗȟȜțȎ ǽȫȗ țȎ ©3\WKRQ Ȓșȭ ȒȓȠȓȗ Ȗ ȞȜȒȖȠȓșȓȗ ǶȑȞȎȗ Ȗ ȝȞȜȑȞȎȚȚȖȞȡȗª ȋȘȟȚȜ ȋȠȜ ȜȠșȖȥțȩȗ ȝȞȖȚȓȞ /RJR ȖȟȘȡȟȟȠȐȎ țȎȝȖ ȟȎțțȩȗ țȎ ȭȕȩȘȓ ȝȞȜȑȞȎȚȚȖȞȜȐȎțȖȭ 3\WKRQ.

34

DZǹǮǰǮ


ˀ̛̭͘ 2.1. ʿ̛̬̥̖̬ ̸̡̨̨̨̬̭̦̌̐ ̸̨̖̬̖̪̹̖̌̽̐ ̡̛̭̱̭​̭̯̏̌

ǺȜȒ &RPSXWHU&UDIW ȝȞȖȐțȜȟȖȠ Ƞȡ Ȕȓ ȖȒȓȬ Ȑ ȚȖȞ 0LQH FUDIW ȑȒȓ ȥȓȞȓȝȎȦȘȖ ² ȫȠȜ ȞȜȏȜȠȩ ȘȜȠȜȞȩȓ ȚȜȑȡȠ ȒȜȏȩȐȎȠȪ ȞȡȒȡ Ȗ ȘȞȎȢȠȖȠȪ ȝȞȓȒȚȓȠȩ ȟșȡȦȎȭȟȪ ȝȞȜȑȞȎȚȚ ȘȜȠȜȞȩȓ Ƞȩ țȎȝȖȦȓȦȪ ǻȎ ȞȖȟ ȝȜȘȎȕȎțȜ ȘȎȘ ȐȩȑșȭȒȭȠ ȫȠȖ ȏșȜȥ țȩȓ ȞȜȏȜȠȩ ȥȓȞȓȝȎȦȘȖ ȠȎȘȔȓ țȎȕȩȐȎȓȚȩȓ ȏȜȠȎȚȖ Спереди

Сзади

Снизу

ˀ̛̭͘ 2.2. ˋ̡̖̬̖̪̹̌̌ ̭ ̡̡̨̛̬̜ ;̭̣̖̏̌Ϳ ̛ ̛̏̔ ̸̡̛̖̬̖̪̹̌ ̭ ̵̬̦̼̌̚ ̨̨̭̯̬̦

ȋȠȖ ȞȜȏȜȠȖȕȖȞȜȐȎțțȩȓ ȭȧȖȥȘȖ țȎ ȐțȓȦțȖȗ ȐȖȒ țȓ ȐțȡȦȎȬȠ ȒȜȐȓȞȖȭ țȜ ȡ țȖȣ ȏȜșȪȦȜȗ ȝȜȠȓțȤȖȎș ȅȓȞȓȝȎȦ ȘȖ ȚȜȑȡȠ ȒȐȖȑȎȠȪȟȭ Ȑ șȬȏȩȣ țȎȝȞȎȐșȓțȖȭȣ ǼțȖ ȚȜȑȡȠ ȝȎ ȞȖȠȪ Ȑ ȐȜȕȒȡȣȓ ȐȩȔȖȐȎȠȪ ȝȜȒ ȐȜȒȜȗ Ȗ ȒȎȔȓ Ȑ șȎȐȓ Ȏ ȠȎȘȔȓ

ǼǿǻǼǰȉ ǽǾǼDZǾǮǺǺǶǾǼǰǮǻǶȍ

35


țȜȟȖȠȪ ȝȞȓȒȚȓȠȩ ǸȜȑȒȎ Ƞȩ ȜȟȐȜȖȦȪ Ȏȕȩ ȝȞȜȑȞȎȚȚȖȞȜȐȎ țȖȭ ȠȐȜȖ ȥȓȞȓȝȎȦȘȖ ȏȡȒȡȠ ȐȩȝȜșțȭȠȪ ȟșȜȔțȩȓ ȕȎȒȎȥȖ ȝȜ ȝȓȞȐȜȗ Ȕȓ ȘȜȚȎțȒȓ

ĝĚēĐČęĔđ ģđĜđěČĤĖĔ ĤČġĞđĜČ ǶȑȞȎȭ Ȑ ȠȐȜȞȥȓȟȘȜȚ ȞȓȔȖȚȓ Ƞȩ ȚȜȔȓȦȪ ȟȜȕȒȎȠȪ ȥȓȞȓȝȎȦ Șȡ ȠȜȥțȜ ȠȎȘ Ȕȓ ȘȎȘ Ȗ șȬȏȜȗ ȒȞȡȑȜȗ ȝȞȓȒȚȓȠ ȖșȖ ȏșȜȘ ǻȎȔȚȖ ȘșȎȐȖȦȡ E ȥȠȜȏȩ ȜȠȘȞȩȠȪ ȖțȐȓțȠȎȞȪ ȝȓȞȓȗȒȖ țȎ ȐȘșȎȒȘȡ ȟ ȖȕȜȏȞȎȔȓțȖȓȚ ȘȜȚȝȎȟȎ Ȏ ȕȎȠȓȚ țȎȏȓȞȖ Ȑ ȟȠȞȜȘȓ ȝȜȖȟȘȎ ȟșȜȐȜ turtle Ș ȟȜȔȎșȓțȖȬ ȚȜȒ țȓ ȞȡȟȖȢȖȤȖȞȜȐȎț ȥȠȜȏȩ țȎȗȠȖ Ȑȟȓ ȐȖȒȩ ȥȓȞȓȝȎȦȓȘ ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ ǰ ȫȠȜȗ ȘțȖȑȓ ȜȝȖȟȎțȎ ȞȎȏȜȠȎ ȟ ȜȏȩȥțȩȚȖ ȟȓȞȩȚȖ ȥȓȞȓȝȎȦ ȘȎȚȖ Ȏ țȓ ȝȞȜȒȐȖțȡȠȩȚȖ ȕȜșȜȠȩȚȖ ǽȜȟșȓȒțȖȓ ȞȎȏȜȠȎȬȠ ȎțȎșȜȑȖȥțȜ

ˀ̛̭͘ 2.3. ʿ̨̡̛̭ ̸̡̖̬̖̪̹̖̌ ̏ ̸̨̡̨̯̬̖̭̥̏ ̛̬̖̙̥̖

ǽȞȖȚȓȥȎțȖȓ ȅȠȜȏȩ ȝȓȞȓȘșȬȥȖȠȪȟȭ Ȑ ȠȐȜȞȥȓȟȘȖȗ ȞȓȔȖȚ țȎȔȚȖ ȘșȎȐȖȦȡ T ȖșȖ / ȥȠȜȏȩ ȜȠȘȞȩȠȪ ȟȠȞȜȘȡ ȘȜțȟȜșȖ ȥȎȠȎ ȕȎȠȓȚ ȐȐȓȒȖ ȘȜȚȎțȒȡ /gamemode creative Ȗ țȎȔȚȖ ȘșȎȐȖȦȡ Enter ȅȠȜȏȩ ȝȓȞȓȘșȬȥȖȠȪȟȭ Ȑ ȞȓȔȖȚ ȐȩȔȖȐȎțȖȭ țȎȔȚȖ ȘșȎȐȖȦȡ T ȖșȖ / Ȗ Ȑ ȟȠȞȜȘȓ ȘȜțȟȜșȖ ȥȎȠȎ ȐȐȓȒȖ ȘȜȚȎțȒȡ /gamemode survival.

36

DZǹǮǰǮ


ǻȜ ȠȎȘ ȘȎȘ Țȩ ȣȜȠȖȚ ȖȟȝȜșȪȕȜȐȎȠȪ ȥȓȞȓȝȎȦȓȘ Ȑ ȞȓȔȖȚȓ ȐȩȔȖȐȎțȖȭ țȡȔțȜ țȎȡȥȖȠȪȟȭ ȟȜȕȒȎȐȎȠȪ ȥȓȞȓȝȎȦȓȘ Ȗ Ȑȟȓ ȜȟȠȎșȪțȜȓ ȟ țȡșȭ ǰȜȠ ȘȎȘ ȫȠȜ ȟȒȓșȎȠȪ 1. ǿȜȕȒȎȗ ȘȜȚȝȪȬȠȓȞ ǰ ȞȓȤȓȝȠȓ ȘȞȎȢȠȎ ȥȓȞȓȝȎȦȘȖ țȡ Ȕȓț ȘȜȚȝȪȬȠȓȞ ȝȜȫȠȜȚȡ ȝȞȓȔȒȓ ȥȓȚ Ƞȩ ȟȚȜȔȓȦȪ ȟȜȕȒȎȠȪ ȥȓȞȓȝȎȦȘȡ țȡȔțȜ ȟȘȞȎȢȠȖȠȪ ȘȜȚȝȪȬȠȓȞ Ȗȕ ȘȎȚțȭ ȘȞȎȟțȜȗ ȝȩșȖ3 Ȗ ȟȠȓȘșȭțțȜȗ ȝȎțȓșȖ dzȟșȖ Ƞȩ țȓ ȕțȎȓȦȪ ȘȎȘ ȟȒȓșȎȠȪ ȘȎȚțȖ ȖșȖ ȟȠȓȘșȭțțȡȬ ȝȎțȓșȪ ȖșȖ ȘȎȘ ȝȜșȡȥȖȠȪ ȘȞȎȟțȡȬ ȝȩșȪ ȜȠȘȞȜȗ Ȑ Ȑȓȏ ȏȞȎȡȕȓȞȓ ȟȎȗȠ ȝȜȖȟȘȜȐȜȗ ȟȖȟȠȓȚȩ Ȗ ȐȐȓ ȒȖ ȕȎȝȞȜȟ minecraft ȝȜșȡȥȖȠȪ ȘȞȎȟțȡȬ ȝȩșȪ ȖșȖ minecraft ȝȜșȡȥȖȠȪ ȞȓȒȟȠȜȡț ȖșȖ minecraft ȝȜșȡȥȖȠȪ ȟȠȓȘșȭțțȡȬ ȝȎțȓșȪ ȅȠȜȏȩ ȟȜȕȒȎȠȪ ȘȜȚȝȪȬȠȓȞ ȟșȓȒȡȗ Ȟȓ ȤȓȝȠȡ ȝȜȘȎȕȎțțȜȚȡ țȎ ȞȖȟ ˀ̛̭͘ 2.4. ˁ̨̛̦̖̔̌̚ ̡̨̥̪̯̖̬̽̀̌ ̛̚ ̛̭̖̥ ̡̥̖̦̌​̵̦̼ ̨̡̨̣͕̍̏ ̸̡̡̛̱ ̡̨̬̭̦̜̌ ̛̪̼̣ ̛ ̨̨̦̜̔ ̡̭̯̖̣̦́​̨̦̜ ̛̪̦̖̣̌

ǶȟȝȜșȪȕȡȗ ȘȜȚȝȪȬȠȓȞ Ȓșȭ ȘȞȎȢȠȎ ȥȓȞȓȝȎȦȘȖ Ǻȩ țȓ ȏȡȒȓȚ ȞȎȕȚȓȧȎȠȪ ȘȜȚȝȪȬȠȓȞ Ȑ ȖȑȞȜȐȜȚ ȚȖȞȓ ȝȜȠȜȚȡ ȥȠȜ Ȝț țȓ ȏȡȒȓȠ ȖȟȝȜșȪȕȜȐȎȠȪȟȭ ȟȎȚȜȟȠȜȭȠȓșȪțȜ Ȑ ȫȠȜȗ ȘțȖȑȓ ǻȎȚ Ȝț țȡȔȓț ȘȎȘ ȖțȑȞȓȒȖȓțȠ ȘȞȎȢȠȎ Ȑ ȞȓȤȓȝȠȓ ȥȓȞȓȝȎȦȘȖ Dzșȭ ȟȜȕȒȎțȖȭ ȏȎȕȜȐȜȗ ȥȓȞȓ ȝȎȦȘȖ țȡȔȓț ȘȜȚȝȪȬ ȠȓȞ Ȕȓșȓȕțȩȓ ȟșȖȠȘȖ Ȗ ȟȡțȒȡȘ ȘȎȘ ȝȜȘȎȕȎțȜ Ȑ ȞȓȤȓȝȠȓ țȎ ȞȖȟ ˀ̛̭͘ 2.5. ˁ̨̛̦̖̔̌̚ ̸̡̛̖̬̖̪̹̌ ̛̚ ̛̭̖̥ ̵̙̖̣̖̦̼̚ ̡̨̛̭̣̯͕̏ ̨̨̨̦̔̐ ̡̭̱̦̱̔̌ ̛ ̨̨̨̦̔̐ ̡̨̥̪̯̖̬̽̀̌

ǰȜȜȞȡȔȖ ȥȓȞȓȝȎȦȘȡ ȖțȟȠȞȡȚȓțȠȎȚȖ ǻȎ ȒȎțțȩȗ ȚȜ ȚȓțȠ ȡ țȎȟ ȓȟȠȪ ȏȎȕȜȐȎȭ ȥȓȞȓȝȎȦȘȎ ǼțȎ ȚȜȔȓȠ ȝȓȞȓȚȓȧȎȠȪ ȟȭ țȜ țȓ ȡȚȓȓȠ ȒȜȏȩȐȎȠȪ ȞȡȒȡ ȘȜȝȎȠȪ Ȗ ȐȩȝȜșțȭȠȪ ȒȞȡȑȖȓ 3

В новых версиях игры называется редстоуном (прим. ред.)

ǼǿǻǼǰȉ ǽǾǼDZǾǮǺǺǶǾǼǰǮǻǶȍ

37


ȞȎȏȜȥȖȓ ȒȓȗȟȠȐȖȭ ȝȜȘȎ Țȩ țȓ ȒȎȒȖȚ ȓȗ ȖțȟȠȞȡȚȓțȠ ǺȜȔțȜ ȐȜȜȞȡȔȖȠȪ ȥȓȞȓȝȎȦȘȡ ȎșȚȎȕțȜȗ ȘȖȞȘȜȗ șȜȝȎȠȜȗ ȠȜȝȜȞȜȚ ȚȜȠȩȑȜȗ ȖșȖ ȚȓȥȜȚ ǶțȟȠȞȡȚȓțȠ ȖșȖ ȜȞȡȔȖȓ ȒȜșȔȓț ȏȩȠȪ ȎșȚȎȕțȩȚ Ȗ ȟȜȐȓȞȦȓțțȜ țȜȐȩȚ ǶȕțȜȦȓțțȩȓ ȖșȖ ȘȎȚȓț țȩȓ ȒȓȞȓȐȭțțȩȓ Ȕȓșȓȕțȩȓ ȕȜșȜȠȩȓ ȖțȟȠȞȡȚȓțȠȩ țȓ ȝȜȒȜȗ ȒȡȠ ȀȎȘȔȓ ȚȜȔțȜ ȟțȎȏȒȖȠȪ ȥȓȞȓȝȎȦȘȡ ȐȓȞȟȠȎȘȜȚ ǻȎȦȡ ȝȓȞȐȡȬ ȥȓȞȓȝȎȦȘȡ ȟțȎȏȒȖȚ ȎșȚȎȕțȜȗ ȘȖȞȘȜȗ ȥȠȜȏȩ ȝȞȓȐȞȎȠȖȠȪ ȓȓ Ȑ ȥȓȞȓȝȎȦȘȡ ȦȎȣȠȓȞȎ ȘȎȘ ȝȜȘȎȕȎțȜ Ȑ ȞȓȤȓȝȠȓ țȎ ȞȖȟ

ˀ̛̭͘ 2.6. ʶ̴̬̯̌ ̸̡̛̖̬̖̪̹̌Ͳ̵̹̯̖̬̌̌ ̛̚ ̨̨̦̜̔ ̨̨̪̬̭̯̜ ̸̡̛̖̬̖̪̹̌ ̛ ̨̨̦̜̔ ̨̣̥̦̜̌̌̚ ̡̡̛̛̬

ēČěğĝĖ ěĜĚďĜČĘĘ Ď ĔęĞđĜĠđĕĝđ ģđĜđěČĤĖĔ Dzșȭ ȕȎȝȡȟȘȎ ȥȓȞȓȝȎȦȘȖ ȐȩȏȓȞȖ ȓȓ Ȑ ȖțȐȓțȠȎȞȓ Ȗ ȧȓșȘțȖ ȝȞȎȐȜȗ ȘțȜȝȘȜȗ ȚȩȦȖ ȥȠȜȏȩ ȝȜȚȓȟȠȖȠȪ ȥȓȞȓȝȎȦȘȡ Ȑ ȚȖȞ ȠȎȘ Ȕȓ ȘȎȘ Ȗ șȬȏȜȗ ȒȞȡȑȜȗ ȏșȜȘ ǵȎȠȓȚ ȧȓșȘțȖ ȝȞȎȐȜȗ ȘțȜȝȘȜȗ ȚȩȦȖ ȝȜ ȡȟȠȎțȜȐșȓțțȜȗ ȥȓȞȓȝȎȦȘȓ ȥȠȜȏȩ ȜȠ ȘȞȩȠȪ ȓȓ ȑȞȎȢȖȥȓȟȘȖȗ ȖțȠȓȞȢȓȗȟ GUI) Ȑ ȘȜȠȜȞȜȚ ȚȜȔțȜ ȕȎȝȞȜȑȞȎȚȚȖȞȜȐȎȠȪ ȥȓȞȓȝȎȦȘȡ Ȗ ȡȝȞȎȐșȭȠȪ ȓȓ ȖțȐȓțȠȎ ȞȓȚ ȁȥȖȠȩȐȎȗ ȥȠȜ ȖȑȞȎ 0LQHFUDIW țȓ ȝȞȖȜȟȠȎțȎȐșȖȐȎȓȠȟȭ ȘȜȑȒȎ Ƞȩ ȜȠȘȞȩȐȎȓȦȪ ȑȞȎȢȖȥȓȟȘȖȗ ȖțȠȓȞȢȓȗȟ ȝȜȫȠȜȚȡ Ƞȓȏȓ țȡȔțȜ ȏȩȠȪ ȜȟȠȜȞȜȔțȩȚ Ȗ ȟșȓȒȖȠȪ ȥȠȜȏȩ ȐȞȎȔȒȓȏ țȩȓ ȚȜȏȩ țȓ ȝȜȒȘȞȎșȖȟȪ Ș Ƞȓȏȓ ȝȜȘȎ Ƞȩ ȐȐȜȒȖȦȪ ȘȜȚȎț Ȓȩ ǾȖȟ ȒȓȚȜțȟȠȞȖȞȡȓȠ ȑȞȎȢȖȥȓȟȘȖȗ ȖțȠȓȞȢȓȗȟ ȥȓȞȓ ȝȎȦȘȖ

38

DZǹǮǰǮ


Craft05 1.7 >_ Оболочка командной строки

Инвентарь игрока

Инвентарь черепашки

ˀ̛̭͘ 2.7. ʧ̴̸̡̛̛̬̖̭̜̌ ̴̛̦̯̖̬̖̜̭ ̸̡̛̖̬̖̪̹̌

DZȞȎȢȖȥȓȟȘȖȗ ȖțȠȓȞȢȓȗȟ ȟȜȟȠȜȖȠ Ȗȕ ȭȥȓȓȘ ȠȐȜȓȑȜ ȖțȐȓț ȠȎȞȭ ȖțȐȓțȠȎȞȭ ȥȓȞȓȝȎȦȘȖ Ȗ ȜȏȜșȜȥȘȖ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ Ȑ ȘȜȠȜȞȜȗ Ƞȩ ȏȡȒȓȦȪ ȝȖȟȎȠȪ ȟȐȜȖ ȝȞȜȑȞȎȚȚȩ Ȗ ȐȐȜȒȖȠȪ ȘȜ ȚȎțȒȩ Ȁȩ ȚȜȔȓȦȪ ȣȞȎțȖȠȪ țȓȟȘȜșȪȘȜ ȫȘȕȓȚȝșȭȞȜȐ ȜȒțȜȑȜ Ȗ ȠȜȑȜ Ȕȓ ȏșȜȘȎ ȖșȖ ȝȞȓȒȚȓȠȎ Ȑ ȜȒțȜȗ ȭȥȓȗȘȓ ȖțȐȓțȠȎȞȭ ȟȜȕȒȎȐȎȭ ȟȠȓȘ ȫȠȖȣ ȏșȜȘȜȐ ȖșȖ ȝȞȓȒȚȓȠȜȐ ǯȜșȪȦȖțȟȠȐȜ ȏșȜȘȜȐ ȖșȖ ȝȞȓȒȚȓȠȜȐ ȚȜȔțȜ ȟȘșȎȒȩȐȎȠȪ ȒȜ ȫȘȕȓȚȝșȭ ȞȜȐ Ȑ ȜȒțȜȗ ȭȥȓȗȘȓ ǰ ȖțȐȓțȠȎȞȓ ȥȓȞȓȝȎȦȘȖ ȭȥȓȓȘ Ȁȩ ȚȜȔȓȦȪ ȝȓȞȓȠȎȟȘȖȐȎȠȪ ȏșȜȘȖ Ȗ ȝȞȓȒȚȓȠȩ Ȗȕ ȟȐȜȓȑȜ ȖțȐȓț ȠȎȞȭ Ȑ ȥȓȞȓȝȎȦȖȗ Ȗ ȜȏȞȎȠțȜ ȅȓȞȓȝȎȦȘȖ ȣȞȎțȭȠ Ȑ ȝȎȚȭȠȖ țȓȘȜȠȜȞȩȓ ȝȞȓȒȡȟȠȎțȜȐ șȓțțȩȓ ȝȞȜȑȞȎȚȚȩ ȐȘșȬȥȎȭ label dance refuel go Ȗ lua ǿțȎȥȎșȎ Țȩ ȒȜșȔțȩ ȝȞȖȟȐȜȖȠȪ țȎȦȓȗ ȥȓȞȓȝȎȦȘȓ ȖȚȭ ȟ ȝȜȚȜȧȪȬ ȝȞȜȑȞȎȚȚȩ label ǰ ȫȠȜȗ ȘțȖȑȓ ȭ țȎȕȐȎș ȥȓȞȓ ȝȎȦȓȘ ȖȚȓțȎȚȖ ȥȓȠȩȞȓȣ ȖȠȎșȪȭțȟȘȖȣ ȣȡȒȜȔțȖȤ ȫȝȜȣȖ Ǿȓ țȓȟȟȎțȟȎ ǿȜȢȜțȖȟȏȎ ǹȎȐȖțȖȭ ǮȞȠȓȚȖȕȖȭ Ȗ ȋșȖȕȎȏȓȠȠȎ Ȁȩ ȚȜȔȓȦȪ ȖȟȝȜșȪȕȜȐȎȠȪ ȫȠȖ ȖȚȓțȎ ȖșȖ ȡȘȎȕȎȠȪ șȬȏȩȓ ȒȞȡȑȖȓ ȇȓșȘțȖ ȝȞȎȐȜȗ ȘțȜȝȘȜȗ ȚȩȦȖ ȝȜ ȥȓȞȓȝȎȦȘȓ ȥȠȜȏȩ ȜȠ ȘȞȩȠȪ ȑȞȎȢȖȥȓȟȘȖȗ ȖțȠȓȞȢȓȗȟ Ȗ ȕȎȝȡȟȠȖ ȝȞȜȑȞȎȚȚȡ label ȡȘȎȕȎȐ Ȑ ȜȏȜșȜȥȘȓ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ țȎȕȐȎțȖȓ ȝȞȜ ȑȞȎȚȚȩ label ȒȎșȓȓ ȘȜȚȎțȒȡ set ȥȠȜȏȩ țȎȕțȎȥȖȠȪ ȖȚȭ

ǼǿǻǼǰȉ ǽǾǼDZǾǮǺǺǶǾǼǰǮǻǶȍ

39


ȥȓȞȓȝȎȦȘȖ Ȏ ȕȎȠȓȚ ȖȚȭ Sofonisba ǼȏȜșȜȥȘȎ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ țȓ ȝȜȒȒȓȞȔȖȐȎȓȠ ȞȡȟȟȘȖȗ ȭȕȩȘ ȝȜȫȠȜȚȡ ȘȜȚȎțȒȩ Ȗ ȖȚȓțȎ ȝȞȖȒȓȠȟȭ ȝȖȟȎȠȪ țȎ ȎțȑșȖȗȟȘȜȚ ȭȕȩȘȓ ǵȎȠȓȚ țȎȔ ȚȖ ȘșȎȐȖȦȡ Enter: > label set Sofonisba Computer label set to "Sofonisba"

ǿșȜȐȎ s et S ofo n i s b a țȎȕȩȐȎȬȠȟȭ ȎȞȑȡ ȚȓțȠȎȚȖ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ǼțȖ ȟȜȜȏȧȎȬȠ ȝȞȜȑȞȎȚȚȓ label ȥȠȜ țȡȔțȜ ȒȓșȎȠȪ ǰȚȓȟȠȓ ȝȞȜȑȞȎȚȚȎ label Ȗ ȎȞȑȡȚȓțȠȩ ȘȜ ȚȎțȒțȜȗ ȟȠȞȜȘȖ set Sofonisba ȜȏȞȎȕȡȬȠ ȘȜȚȎțȒȡ ȘȜȠȜ ȞȡȬ ȒȜșȔțȎ ȐȩȝȜșțȖȠȪ ȥȓȞȓȝȎȦȘȎ ǿȖȚȐȜș > Ȑ țȎȥȎșȓ ȟȠȞȜȘȖ ȘȜȒȎ țȎȕȩȐȎȓȠȟȭ ȝȞȖȑșȎȦȓ țȖȓȚ Ȁȩ ȐȐȜȒȖȦȪ ȘȜȚȎțȒȩ Ȑ ȜȏȜșȜȥȘȓ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ȝȜȟșȓ ȟȖȚȐȜșȎ > Ȏ ȝȜȟșȓ ȠȜȑȜ ȘȎȘ ȥȓȞȓȝȎȦȘȎ Ȗȣ ȐȩȝȜșțȖ șȎ ȝȜȭȐșȭȓȠȟȭ țȜȐȩȗ ȟȖȚȐȜș > ȜȔȖȒȎȬȧȖȗ ȐȐȜȒȎ ȟșȓȒȡȬ ȧȓȗ ȘȜȚȎțȒȩ ǰțȖȚȎțȖȓ Ȁȩ ȚȜȔȓȦȪ ȝȜȚȓȟȠȖȠȪ ȥȓȞȓȝȎȦȘȡ Ȑ ȟȐȜȗ ȖțȐȓțȠȎȞȪ ȟȜȏȞȎȐ ȓȓ ȟ ȝȜȚȜȧȪȬ ȘȖȞȘȖ țȜ ȒȓșȎȗ ȫȠȜ ȠȜșȪȘȜ ȝȜȟșȓ ȠȜȑȜ ȘȎȘ ȝȞȖȟȐȜȖș ȥȓȞȓȝȎȦȘȓ ȖȚȭ ǰ ȝȞȜȠȖȐțȜȚ ȟșȡȥȎȓ ȥȓȞȓȝȎȦȘȎ ȝȜȠȓȞȭȓȠ Ȑȟȓ ȟȐȜȓ ȠȜȝșȖȐȜ Ȗ ȡȒȎșȖȠ Ȑȟȓ ȟȐȜȖ ȝȞȜȑȞȎȚȚȩ Ǹ ȠȜȝșȖȐȡ Țȩ ȐȓȞțȓȚȟȭ Ȑ ȟșȓȒȡȬȧȓȚ ȞȎȕȒȓșȓ ǿȜȏȞȎțțȎȭ ȥȓȞȓȝȎȦȘȎ ȐȩȏȞȎȟȩȐȎȓȠ ȐȓȟȪ ȟȐȜȗ ȖțȐȓțȠȎȞȪ ȘȎȘ Ȗ ȝȞȖ ȟȏȜȞȓ ȟȡțȒȡȘȎ ȀȓȝȓȞȪ ȘȜȑȒȎ ȟ ȝȜȚȜȧȪȬ ȝȞȜȑȞȎȚȚȩ label Țȩ ȕȎȒȎ șȖ ȖȚȭ ȥȓȞȓȝȎȦȘȓ Sofonisba ȒȎȐȎȗ ȐȩȝȜșțȖȚ ȘȜȚȎțȒȡ dance ȥȠȜȏȩ ȕȎȝȡȟȠȖȠȪ ȓȧȓ ȜȒțȡ ȝȞȓȒȡȟȠȎțȜȐșȓțțȡȬ ȝȞȜ ȑȞȎȚȚȡ > dance Preparing to get down... Press any key to stop the groove

ǻȎȔȚȖ ȘșȎȐȖȦȡ Esc ȥȠȜȏȩ ȕȎȘȞȩȠȪ ȖțȠȓȞȢȓȗȟ ȥȓȞȓ ȝȎȦȘȖ Ȁȩ ȡȐȖȒȖȦȪ ȥȠȜ ȘȜȑȒȎ ȝȞȜȑȞȎȚȚȎ dance ȐȩȝȜș țȭȓȠȟȭ ȥȓȞȓȝȎȦȘȎ Ȑ ȟșȡȥȎȗțȜȚ țȎȝȞȎȐșȓțȖȖ ȐȞȎȧȎȓȠȟȭ ȐȜȘȞȡȑ ȟȐȜȓȗ ȜȟȖ ȇȓșȘțȖ ȝȞȎȐȜȗ ȘțȜȝȘȜȗ ȚȩȦȖ ȝȜ ȥȓ

40

DZǹǮǰǮ


ȞȓȝȎȦȘȓ ȥȠȜȏȩ ȟțȜȐȎ ȜȠȘȞȩȠȪ ȓȓ ȖțȠȓȞȢȓȗȟ ǽȞȜȑȞȎȚȚȎ dance Ȑȟȓ ȓȧȓ ȐȩȝȜșțȭȓȠȟȭ Ȗ ȜȔȖȒȎȓȠ ȜȟȠȎțȜȐȘȖ țȎȔȎ ȠȖȓȚ șȬȏȜȗ ȘșȎȐȖȦȖ Ȁȩ ȠȎȘȔȓ ȚȜȔȓȦȪ ȕȎȐȓȞȦȖȠȪ șȬ ȏȡȬ ȝȞȜȑȞȎȚȚȡ ȡȒȓȞȔȖȐȎȭ ȟȜȥȓȠȎțȖȓ ȘșȎȐȖȦ Ctrl+T Ȑ ȠȓȥȓțȖȓ ȜȒțȜȗ ȟȓȘȡțȒȩ ȝȞȖ ȜȠȘȞȩȠȜȚ ȑȞȎȢȖȥȓȟȘȜȚ Ȗț ȠȓȞȢȓȗȟȓ ěėīĤĔ ěėīĤĔ ģđĜđěČĤĖČ" ěĚĎĞĚĜęħĕ ēČěğĝĖ ĖĚĘČęĐ

Если ты хочешь выполнить программу, которую запускал ранее, то можешь воспользоваться следующим советом. Если нажимать клавиши Ĺ и Ļ, в оболочке командной строки будут отображаться предыдущие выполненные программы. Например, ты ранее запустил программу dance: > dance Если ты хочешь еще раз запустить программу dance, тебе не нужно снова вводить ее название с клавиатуры; просто нажми клавишу Ĺ, и оболочка командной строки отобразит последнюю выполненную команду. Если ты снова нажмешь клавишу Ĺ, оболочка командной строки продолжит отматывать историю ранее введенных команд, начиная с последней введенной команды. Этот прием также работает и в оболочке Lua, которая описана в разделе «Освоение языка программирования Lua» далее в этой главе.

®ĖĚĜĘėđęĔđ¯ ģđĜđěČĤĖĔ ȅȓȞȓȝȎȦȘȖ ȚȜȑȡȠ ȒȐȖȑȎȠȪȟȭ ȐȝȓȞȓȒ țȎȕȎȒ ȐȐȓȞȣ ȖșȖ ȐțȖȕ Ȗ ȒȎȔȓ șȓȠȎȠȪ ǻȜ ȥȠȜȏȩ ȒȐȖȑȎȠȪȟȭ Ȗȣ țȡȔțȜ ȘȜȞ ȚȖȠȪ ȝȞȖȥȓȚ țȓ ȓȒȜȗ Ȏ« ȠȜȝșȖȐȜȚ ǹȬȏȩȓ ȝȞȓȒȚȓȠȩ ȘȜȠȜȞȩȓ ȑȜȞȭȠ Ȑ ȝȓȥȖ ȚȜȔțȜ ȟȘȜȞȚȖȠȪ Ȗ ȥȓȞȓȝȎȦȘȎȚ Ȑ ȐȖȒȓ ȠȜȝșȖȐȎ ȝȞȖ ȫȠȜȚ ȜȒțȎ ȓȒȖțȖȤȎ ȠȜȝșȖȐȎ ȝȜȕȐȜșȭȓȠ ȝȓȞȓȚȓȧȎȠȪ ȥȓȞȓȝȎȦȘȡ țȎ ȞȎȟȟȠȜȭțȖȓ Ȑ ȜȒȖț ȏșȜȘ ǰ ȠȎȏș ȝȜȘȎȕȎțȜ ȟȘȜșȪȘȜ ȓȒȖțȖȤ ȠȜȝșȖȐȎ ȝȜșȡȥȎȓȠȟȭ Ȗȕ ȠȜȑȜ ȖșȖ ȖțȜȑȜ ȝȞȓȒȚȓȠȎ

ǼǿǻǼǰȉ ǽǾǼDZǾǮǺǺǶǾǼǰǮǻǶȍ

41


˃̣̌̍͘ Ϯ͘ϭ͘ ʰ̸̨̡̛̛̭̯̦ ̨̛̯̪̣̏̌ ̸̡̛̖̬̖̪̹̌4

ʿ̡̱̦̯

ʻ̛̦̖̌̏̌̚ ̨̯̬̏̌̌

ʫ̶̛̛̦̼̔ ̨̛̯̪̣̏̌

ʿ̡̣̌̌

5

ʪ̖̬̖̦̏́​̦̼̖ ̛̦̭̯̬̱̥̖̦̯̼ ;̡̡̛̬͕̌ ̨̣̪̯̌̌ ̛ ̯̪͘͘Ϳ

10

ʪ̛̬̖̖̭̦̏̌

15

ʪ̨̡̛̭

15

ʶ̥̖̦̌​̦̼̜ ̛̛̣ ̬̖̖̭̦̼̜̔̏ ̨̱̣̐̽

80

ˁ̯̖̬̙̖̦̽ ̴̛̛̬̯̌4

120

˄̨̣̦̼̜̐̽ ̨̡̣̍

800

ʦ̨̖̬̔ ̣̼̌̏

1000

ǻȎȖȏȜșȪȦȓȓ ȘȜșȖȥȓȟȠȐȜ ȓȒȖțȖȤ ȠȜȝșȖȐȎ ȝȞȓȒȜȟȠȎȐșȭ ȓȠ ȐȓȒȞȜ șȎȐȩ ǼȏȞȎȠȖ ȐțȖȚȎțȖȓ ȥȠȜ ȒȞȓȐȓȟȖțȎ Ȗ ȒȜȟȘȖ ȜȏȓȟȝȓȥȖȐȎȬȠ ȓȒȖțȖȤ ȠȜȝșȖȐȎ Ȁȩ ȚȜȔȓȦȪ Ȗȕ ȜȒțȜȑȜ ȏșȜȘȎ ȒȞȓȐȓȟȖțȩ ȟȒȓșȎȠȪ ȥȓȠȩȞȓ ȏșȜȘȎ ȒȜȟȜȘ Ȗ ȝȜșȡȥȖȠȪ Ȑ ȖȠȜȑȓ Ȑ ȥȓȠȩȞȓ ȞȎȕȎ ȏȜșȪȦȓ ȠȜȝșȖȐȎ ǽȞȜȧȓ ȐȟȓȑȜ ȖȟȝȜșȪ 4

42

В новых версиях игры называется огненным жезлом (прим. ред.)

DZǹǮǰǮ


ȕȜȐȎȠȪ ȘȎȚȓțțȩȗ ȖșȖ ȒȞȓȐȓȟțȩȗ ȡȑȜșȪ ȘȜȠȜȞȩȗ șȓȑȘȜ ȒȜ ȏȩȠȪ Ȗ ȘȜȠȜȞȩȚ ȚȜȔțȜ țȎȒȜșȑȜ ȟțȎȏȒȖȠȪ ȥȓȞȓȝȎȦȓȘ Ȑ ȘȎ ȥȓȟȠȐȓ ȠȜȝșȖȐȎ ȁȑȜșȪ ȝȞȓȒȜȟȠȎȐșȭȓȠ ȓȒȖțȖȤ ȠȜȝșȖȐȎ Ȏ ȡȑȜșȪțȩȓ ȏșȜȘȖ ² Ȥȓșȩȣ ǽȜȟȘȜșȪȘȡ Ȓșȭ ȖȕȑȜȠȜȐșȓ țȖȭ ȡȑȜșȪțȜȑȜ ȏșȜȘȎ ȠȞȓȏȡȓȠȟȭ ȐȟȓȑȜ ȒȓȐȭȠȪ ȘȡȟȘȜȐ ȡȑșȭ ȫȢȢȓȘȠȖȐțȓȓ ȝȞȓȐȞȎȧȎȠȪ ȡȑȜșȪ Ȑ ȡȑȜșȪțȩȓ ȏșȜȘȖ ȝȓȞȓȒ ©ȟȘȎȞȚșȖȐȎțȖȓȚª ȥȓȞȓȝȎȦȘȓ ǿȠȓȞȔțȖ ȖȢȞȖȠȎ ȐȟȠȞȓ ȥȎȬȠȟȭ ȜȥȓțȪ ȞȓȒȘȜ Ȗȣ ȐȩȏȞȎȟȩȐȎȬȠ ȠȜșȪȘȜ ȝȜȏȓȔȒȓț țȩȓ ȖȢȞȖȠȩ5 Ȑ ǻȓȕȓȞȓ Ȗ ȜȠțȜȟȖȠȓșȪțȜ ȚȎșȜȫȢȢȓȘȠȖȐțȩ ȘȎȘ ȖȟȠȜȥțȖȘ ȠȜȝșȖȐȎ ȝȜȫȠȜȚȡ șȡȥȦȓ Ȗȣ ȝȞȖȏȓȞȓȥȪ Ȓșȭ ȘȞȎȢȠȎ ǯȎȕȜȐȎȭ ȥȓȞȓȝȎȦȘȎ ȚȜȔȓȠ ȣȞȎțȖȠȪ ȐȝșȜȠȪ ȒȜ ȓȒȖțȖȤ ȠȜȝșȖȐȎ țȓȜȏȣȜȒȖȚȜȑȜ Ȓșȭ ȒȐȖȔȓțȖȭ ǼțȜ țȓ ȠȞȎ ȠȖȠȟȭ ȝȞȖ ȝȜȐȜȞȜȠȓ ȥȓȞȓȝȎȦȘȖ Ȑ ȝȞȜȤȓȟȟȓ ȒȜȏȩȥȖ ȘȞȎȢȠȎ ȘȜȝȎțȖȭ ² ȟșȜȐȜȚ ȐȟȓȑȜ ȥȠȜ ȒȓșȎȓȠ ȥȓȞȓȝȎȦȘȎ ǽȎȞȓțȖȓ Ȑ ȐȜȕȒȡȣȓ ȠȎȘȔȓ țȓ ȠȞȓȏȡȓȠ ȠȜȝșȖȐȎ ȅȠȜȏȩ ©țȎȘȜȞȚȖȠȪª ȥȓȞȓȝȎȦȘȡ ȠȜȝșȖȐȜ țȎȒȜ ȝȜȚȓȟȠȖȠȪ Ȑ ȓȓ ȖțȐȓțȠȎȞȪ Ȑ ȠȓȘȡȧȡȬ ȭȥȓȗȘȡ ȐȩȒȓșȓțțȡȬ ȠȜșȟȠȜȗ ȞȎȚȘȜȗ ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ ǽȜȟșȓ ȠȜȑȜ ȘȎȘ Ƞȩ ȝȜȚȓȟȠȖȦȪ ȠȜȝșȖȐȜ Ȑ ȫȠȡ ȭȥȓȗȘȡ ȕȎȝȡȟȠȖ ȝȞȜȑȞȎȚȚȡ refuel dzȟșȖ Ƞȩ ȝȜ ȚȓȟȠȖș ȏȜșȓȓ ȜȒțȜȑȜ ȫȘȕȓȚȝșȭȞȎ ȝȞȓȒȚȓȠȎ ȖȟȝȜșȪȕȡȓȚȜȑȜ Ȑ ȘȎȥȓ ȟȠȐȓ ȠȜȝ ș ȖȐȎ Ƞȩ ȚȜȔȓȦȪ Ȑ ȘȜ ȚȎțȒȓ ȡȘȎȕȎȠȪ ȘȜșȖȥȓȟȠȐȜ ȝȞȓȒ ȚȓȠȜȐ ȘȜȠȜȞȩȓ țȡȔțȜ ȟȔȓȥȪ ȝȜȟșȓ ȖȚȓțȖ ȝȞȜȑȞȎȚȚȩ refuel. ˀ̛̭͘ 2.8. ˔̸̡̖̜̌ ̣̔́ ̨̛̯̪̣̏̌ ̏ ̛̦̖̦̯̬̖̏̌ ̸̡̛̖̬̖̪̹̌ ̛̥̖​̖̯ ̨̣̖̍​̖ ̨̯̣̭̯̱̀ ̶̛̬̦̱͕̐̌ ̸̖̥ ̛̬̱̖̔̐ ̸̡̛̖̜́

ǻȎȝȞȖȚȓȞ ȐȐȓȒȖ Ȑ ȜȏȜșȜȥȘȓ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ȟșȓȒȡȬ ȧȡȬ ȘȜȚȎțȒȡ > refuel 64 Fuel level is 5120 5

В новых версиях игры называются всполохами (прим. ред.)

ǼǿǻǼǰȉ ǽǾǼDZǾǮǺǺǶǾǼǰǮǻǶȍ

43


ȋȠȎ ȘȜȚȎțȒȎ ȕȎȝȡȟȘȎȓȠ ȝȞȜȑȞȎȚȚȡ refuel Ȗ ȒȜȏȎȐșȭȓȠ Ȑ ȘȎȥȓȟȠȐȓ ȠȜȝșȖȐȎ ȝȞȓȒȚȓȠȎ Ȗȕ ȥȖȟșȎ Ƞȓȣ ȥȠȜ ȝȜȚȓȧȓ țȩ Ȑ ȭȥȓȗȘȡ ȠȜȝșȖȐȎ ǸȜșȖȥȓȟȠȐȜ ȓȒȖțȖȤ ȠȜȝșȖȐȎ ȘȜȠȜȞȜȓ ȏȡȒȓȠ ȒȜȏȎȐșȓțȜ ȕȎȐȖȟȖȠ ȜȠ ȠȖȝȎ ȠȜȝșȖȐȎ Ȑ ȭȥȓȗȘȓ ȅȠȜȏȩ ȡȕțȎȠȪ ȟȘȜșȪȘȜ ȠȜȝșȖȐȎ ȕȎȝȞȎȐșȓțȜ Ȑ ȥȓȞȓȝȎȦȘȡ ȡȘȎȔȖ Ȑ ȘȎȥȓȟȠȐȓ ȎȞȑȡȚȓțȠȎ 0: > refuel 0 Fuel level is 5120

ȋȠȎ ȘȜȚȎțȒȎ ȝȜȘȎȔȓȠ ȟȘȜșȪȘȜ ȠȜȝșȖȐȎ ȕȎȝȞȎȐșȓțȜ Ȑ ȥȓ ȞȓȝȎȦȘȡ ȏȓȕ țȓȜȏȣȜȒȖȚȜȟȠȖ ȒȜȏȎȐșȓțȖȭ Ȑ ȘȎȥȓȟȠȐȓ ȠȜȝșȖ ȐȎ ȝȞȓȒȚȓȠȜȐ Ȗȕ ȖțȐȓțȠȎȞȭ ǰțȖȚȎțȖȓ dzȟșȖ Ƞȩ ȕȎȒȡȚȎș ȟȜȏȞȎȠȪ ȥȓȞȓȝȎȦȘȡ Ȑ ȟȐȜȗ ȖțȐȓțȠȎȞȪ ȟ ȝȜȚȜȧȪȬ ȘȖȞȘȖ ȝȞȓȒȐȎȞȖȠȓșȪțȜ ȝȞȖȟȐȜȗ ȥȓȞȓȝȎȦȘȓ ȖȚȭ ȘȜȚȎțȒȜȗ label ȖțȎȥȓ ȥȓȞȓȝȎȦȘȎ ȝȜȠȓȞȭȓȠ Ȑȟȓ ȠȜȝșȖȐȜ ȘȜȠȜȞȜȓ Ƞȩ Ȑ țȓȓ ȒȜȏȎȐȖș ǼȏȭȕȎȠȓșȪțȜ ȐȩȝȜșțȖ ȝȞȜȑȞȎȚȚȡ label ȥȠȜȏȩ ȟțȎȥȎșȎ ȝȞȖȟȐȜȖȠȪ ȥȓȞȓȝȎȦȘȓ ȖȚȭ

ěđĜđĘđĥđęĔđ ģđĜđěČĤĖĔ Ɍɟɩɟɪɶ ɤɨɝɞɚ ɱɟɪɟɩɚɲɤɚ ©ɫɵɬɚª ɞɚɜɚɣ ɩɟɪɟɦɟɫɬɢɦ ɟɟ ɂɡ ɨɛɨɥɨɱɤɢ ɤɨɦɚɧɞɧɨɣ ɫɬɪɨɤɢ ɦɵ ɦɨɠɟɦ ɡɚɩɭɫɬɢɬɶ ɩɪɨɝɪɚɦɦɭ go ɱɬɨɛɵ ɩɪɢɤɚɡɚɬɶ ɱɟɪɟɩɚɲɤɟ ɞɜɢɝɚɬɶɫɹ ɜɩɟɪɟɞ ɧɚɡɚɞ ȼ ɨɛɨɥɨɱɤɟ ɤɨɦɚɧɞɧɨɣ ɫɬɪɨɤɢ ɜɜɟɞɢ ɫɥɟɞɭɸɳɭɸ ɤɨɦɚɧɞɭ > go forward

ǽȜȟșȓ ȠȜȑȜ ȘȎȘ Ƞȩ țȎȔȚȓȦȪ ȘșȎȐȖȦȡ Esc ȥȠȜȏȩ ȕȎ ȘȞȩȠȪ ȑȞȎȢȖȥȓȟȘȖȗ ȖțȠȓȞȢȓȗȟ ȥȓȞȓȝȎȦȘȎ ȝȓȞȓȚȓȟȠȖȠȟȭ ȐȝȓȞȓȒ țȎ ȜȒȖț ȏșȜȘ ǼȏȞȎȠȖ ȐțȖȚȎțȖȓ ȓȟșȖ ȝȓȞȓȒ ȥȓȞȓ ȝȎȦȘȜȗ ȏȡȒȓȠ ȟȠȜȭȠȪ ȏșȜȘ ȝȞȓȑȞȎȔȒȎȬȧȖȗ ȝȡȠȪ ȥȓȞȓ ȝȎȦȘȎ ȏȡȒȓȠ ȔȒȎȠȪ ȝȜȘȎ ȫȠȜȠ ȏșȜȘ țȓ ȏȡȒȓȠ ȡȒȎșȓț dzȟșȖ Ƞȩ ȣȜȥȓȦȪ ȕȎȐȓȞȦȖȠȪ ȝȞȜȑȞȎȚȚȡ țȎȔȚȖ Ȗ ȡȒȓȞȔȖȐȎȗ ȟȜ ȥȓȠȎțȖȓ ȘșȎȐȖȦ Ctrl+T Ȑ ȠȓȥȓțȖȓ ȜȒțȜȗ ȟȓȘȡțȒȩ ȅȠȜȏȩ ȐȓȞțȡȠȪ ȥȓȞȓȝȎȦȘȡ țȎȕȎȒ ȐȐȓȒȖ ȟșȓȒȡȬȧȡȬ ȘȜ ȚȎțȒȡ

44

DZǹǮǰǮ


> go back

ȅȓȞȓȝȎȦȘȎ ȐȓȞțȓȠȟȭ ȜȏȞȎȠțȜ țȎ ȜȒȖț ȏșȜȘ ǰȐȓȒȖ ȥȖȟșȜ ȝȜȟșȓ ȎȞȑȡȚȓțȠȎ forward ȖșȖ back Ȓșȭ ȝȓȞȓȚȓȧȓțȖȭ ȥȓȞȓ ȝȎȦȘȖ țȎ ȡȘȎȕȎțțȜȓ ȥȖȟșȜ ȏșȜȘȜȐ țȎȝȞȖȚȓȞ ȠȎȘ > go forward 2

ȅȓȞȓȝȎȦȘȎ ȟȒȓșȎȓȠ ȒȐȎ ȦȎȔȘȎ ȐȝȓȞȓȒ ȝȓȞȓȚȓȟȠȖȠȟȭ țȎ ȒȐȎ ȏșȜȘȎ ǽȜȐȜȞȎȥȖȐȎȠȪ ȥȓȞȓȝȎȦȘȡ ȚȜȔțȜ ȠȎȘȖȚ Ȕȓ ȜȏȞȎȕȜȚ ȁȘȎȔȖ ȟșȜȐȜ left ȖșȖ right Ȏ ȕȎȠȓȚ ȥȖȟșȜ ² ȟȘȜșȪȘȜ ȞȎȕ ȥȓȞȓȝȎȦȘȎ ȒȜșȔțȎ ȝȜȐȓȞțȡȠȪ țȎșȓȐȜ ȖșȖ țȎȝȞȎȐȜ țȎ ǻȎȝȞȖȚȓȞ ȘȜȚȎțȒȎ go left ȝȜȐȓȞțȓȠ ȥȓȞȓȝȎȦȘȡ țȎ țȎșȓȐȜ ǸȜȚȎțȒȎ go right 2 ȝȜȐȓȞțȓȠ ȥȓȞȓȝȎȦȘȡ țȎȝȞȎȐȜ ȒȐȎȔȒȩ Ƞ ȓ țȎ ȼ ɨɞɧɨɣ ɤɨɦɚɧɞɟ ɦɨɠɧɨ ɨɛɴɟɞɢɧɢɬɶ ɧɟɫɤɨɥɶɤɨ ɞɜɢɠɟɧɢɣ ɧɚɩɪɢɦɟɪ ɬɚɤ > go forward 2 up right forward down back 3 left

ȅȓȞȓȝȎȦȘȎ ȝȞȜȗȒȓȠ ȐȝȓȞȓȒ țȎ ȒȐȎ ȏșȜȘȎ ȝȜȒțȖȚȓȠȟȭ ȐȐȓȞȣ țȎ ȜȒȖț ȏșȜȘ ȝȜȐȓȞțȓȠ ȜȒȖț ȞȎȕ țȎȝȞȎȐȜ țȎ ȝȞȜȗȒȓȠ ȐȝȓȞȓȒ ȓȧȓ țȎ ȜȒȖț ȏșȜȘ ȕȎȠȓȚ ȐțȖȕ țȎ ȜȒȖț ȏșȜȘ ȝȞȜȗȒȓȠ țȎȕȎȒ țȎ ȠȞȖ ȏșȜȘȎ Ȗ țȎȘȜțȓȤ ȝȜȐȓȞțȓȠ ȜȒȖț ȞȎȕ țȎșȓȐȜ ǿȡȧȓȟȠȐȡȬȠ ȟȜȘȞȎȧȓțȖȭ ȘȜȠȜȞȩȓ Ƞȩ ȚȜȔȓȦȪ ȖȟȝȜșȪȕȜ ȐȎȠȪ Ȑ ȘȜȚȎțȒȎȣ go: fd Ȓșȭ ȟșȜȐȎ forward bk ² back lt ² left rt ² right Ȗ dn ² down ǰȩȦȓȝȞȖȐȓȒȓțțȎȭ ȘȜȚȎțȒȎ Ȑ ȘȞȎȠȘȜȚ ȐȖȒȓ ȏȡȒȓȠ ȐȩȑșȭȒȓȠȪ ȠȎȘ > go fd 2 up rt fd dn bk 3 lt

ȋȠȎ ȘȜȚȎțȒȎ ȝȓȞȓȚȓȧȎȓȠ ȥȓȞȓȝȎȦȘȡ ȠȜȥțȜ ȠȎȘ Ȕȓ ȘȎȘ Ȗ Ȑ ȝȞȓȒȩȒȡȧȓȚ ȝȞȖȚȓȞȓ ȕȎ ȖȟȘșȬȥȓțȖȓȚ ȠȜȑȜ ȥȠȜ țȎȏȖ ȞȎȠȪ ȏȡȘȐ țȡȔțȜ ȑȜȞȎȕȒȜ ȚȓțȪȦȓ

ǼǿǻǼǰȉ ǽǾǼDZǾǮǺǺǶǾǼǰǮǻǶȍ

45


ĚĝĎĚđęĔđ īēħĖČ ěĜĚďĜČĘĘĔĜĚĎČęĔī 4=) ǵȎȝȡȟȘ ȘȜȚȎțȒ ȘȜȠȜȞȩȓ ȐȩȝȜșțȭȬȠ ȥȓȞȓȝȎȦȘȖ ² ȡȒȜȏțȎȭ ȦȠȡȘȎ țȜ țȎȟȠȜȭȧȎȭ ȚȜȧȪ ȝȞȜȭȐșȭȓȠȟȭ ȘȜȑȒȎ Ƞȩ ȝȖȦȓȦȪ ȟȐȜȖ ȟȜȏȟȠȐȓțțȩȓ ȝȞȜȑȞȎȚȚȩ țȎ ȭȕȩȘȓ ȝȞȜȑȞȎȚȚȖȞȜȐȎ țȖȭ /XD. ȍȕȩȘ ȝȞȜȑȞȎȚȚȖȞȜȐȎțȖȭ ȖȟȝȜșȪȕȡȓȠȟȭ Ȓșȭ țȎ ȝȖȟȎțȖȭ ȖțȟȠȞȡȘȤȖȗ ȝȜțȭȠțȩȣ ȘȜȚȝȪȬȠȓȞȡ ǿȓȗȥȎȟ Ƞȩ țȓ ȝȜțȖȚȎȓȦȪ Ȓșȭ ȥȓȑȜ ȖȟȝȜșȪȕȡȬȠȟȭ ȫȠȖ ȖțȟȠȞȡȘȤȖȖ Ȗ ȝȞȜȑȞȎȚȚȖȟȠȟȘȖȓ ȟșȜȐȎ Ǯ ȫȠȜ ȐȎȔțȩȓ ȫșȓȚȓțȠȩ ȭȕȩȘȎ ² ȟȠȞȜȖȠȓșȪțȩȓ ȏșȜȘȖ Ȓșȭ ȝȜșȓȕțȩȣ ȝȞȜȑȞȎȚȚ ȘȜȠȜȞȩȓ Ƞȩ ȏȡȒȓȦȪ ȞȎȕȞȎȏȎȠȩȐȎȠȪ ȥȡȠȪ ȝȜȕȔȓ Ǻȩ ȏȡȒȓȚ ȝȜ ȜȒțȜȗ Ȗȕ ȡȥȎȠȪ ȖțȟȠȞȡȘȤȖȖ ȭȕȩȘȎ /XD.

ēČěğĝĖ ĚčĚėĚģĖĔ 4=) ȁ ȭȕȩȘȎ /XD ȓȟȠȪ ȟȝȓȤȖȎșȪțȎȭ ȜȏȜșȜȥȘȎ Lua ȘȜȠȜȞȎȭ ȝȜ ȕȐȜșȭȓȠ ȐȐȜȒȖȠȪ Ȗ ȐȩȝȜșțȭȠȪ ȘȜȚȎțȒȩ țȎ ȭȕȩȘȓ /XD Ȑ ȑȞȎ ȢȖȥȓȟȘȜȚ ȖțȠȓȞȢȓȗȟȓ ȥȓȞȓȝȎȦȘȖ Ȁȓȏȓ țȡȔțȜ ȕȎȝȡȟȠȖȠȪ ȝȞȜȑȞȎȚȚȡ lua Ȓșȭ ȒȜȟȠȡȝȎ Ș ȜȏȜșȜȥȘȓ > lua Interactive Lua prompt. Call exit() to exit. lua>

ȋȠȎ ȘȜȚȎțȒȎ ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ ȕȎȝȡȟȘȎȓȠ ȜȏȜșȜȥ Șȡ /XD Ȑ ȘȜȠȜȞȜȗ Ƞȩ ȏȡȒȓȦȪ ȐȐȜȒȖȠȪ Ȑȟȓ ȟȐȜȖ ȖțȟȠȞȡȘȤȖȖ /XD ǼȏȜșȜȥȘȎ /XD ȡȒȜȏțȎ Ȓșȭ ȝȞȜȟȚȜȠȞȎ ȞȓȕȡșȪȠȎȠȎ ȘȎȔ ȒȜȗ ȖțȟȠȞȡȘȤȖȖ ȝȜȠȜȚȡ ȥȠȜ Ƞȩ ȚȜȔȓȦȪ ȐȐȜȒȖȠȪ ȘȜȚȎțȒȩ ȝȜ ȜȥȓȞȓȒȖ ȫȘȜțȜȚȭ ȟȐȜȓ ȐȞȓȚȭ ǽȞȖȚȓȥȎțȖȓ ǰ ȫȠȜȗ ȘțȖȑȓ ȜȏȜșȜȥȘȎ Lua ² ȫȠȜ ȠȜ ȑȒȓ Ƞȩ ȐȐȜȒȖȦȪ ȘȜȒ țȎ ȭȕȩȘȓ Lua ǰ ȜȏȜșȜȥȘȓ Ȑ țȎȥȎșȓ ȘȎȔȒȜȗ ȟȠȞȜȘȖ ȜȠȜȏȞȎȔȎȓȠȟȭ ȝȞȖȑșȎȦȓțȖȓ lua> ȝȜȟșȓ ȘȜȠȜȞȜȑȜ Ƞȩ ȚȜȔȓȦȪ ȐȐȜȒȖȠȪ ȟȐȜȖ ȖțȟȠȞȡȘȤȖȖ țȎ ȭȕȩȘȓ Lua ǼȏȜșȜȥȘȎ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ² ȫȠȜ ȠȜ ȑȒȓ Ƞȩ ȐȐȜȒȖȦȪ ȘȜȚȎțȒȩ Ȓșȭ ȕȎȝȡȟȘȎ ȝȞȜȑȞȎȚȚ ǰ țȓȗ ȏȜșȓȓ ȝȞȜȟȠȜȓ ȝȞȖȑșȎȦȓțȖȓ Ȗȕ

46

DZǹǮǰǮ


ȜȒțȜȑȜ ȟȖȚȐȜșȎ > ȋȠȖ ȜȏȜșȜȥȘȖ șȓȑȘȜ ȟȝȡȠȎȠȪ dzȟșȖ ȡ Ƞȓȏȭ Ȑ ȖȑȞȓ ȝȜȭȐșȭȬȠȟȭ ȟȜȜȏȧȓțȖȭ Ȝȏ ȜȦȖȏȘȎȣ ȝȞȖ ȐȩȝȜșțȓțȖȖ ȘȜȒȎ ȒȐȎȔȒȩ ȝȞȜȐȓȞȪ ȘȎȘȡȬ ȜȏȜșȜȥȘȡ Ƞȩ ȖȟȝȜșȪȕȡȓȦȪ ȝȜȟȚȜȠȞȓȐ țȎ ȝȞȖȑșȎȦȓțȖȓ

ˀ̛̭͘ 2.9. ʽ̸̨̨̡̣̍̌ Lua ̏ ̴̸̡̨̛̬̖̭̥̐̌ ̴̛̦̯̖̬̖̜̭̖ ̸̡̛̖̬̖̪̹̌

ǻȎȥțȓȚ ȟ ȝȞȜȟȠȜȗ ȖțȟȠȞȡȘȤȖȖ ȘȜȠȜȞȎȭ ȝȜȐȜȞȎȥȖȐȎȓȠ ȥȓȞȓȝȎȦȘȡ țȎșȓȐȜ ǰȐȓȒȖ ȟșȓȒȡȬȧȡȬ ȖțȟȠȞȡȘȤȖȬ Ȑ ȜȏȜ șȜȥȘȓ /XD: lua> turtle.turnLeft() true

ǽȜ ȚȓȞȓ ȐȐȜȒȎ /XD ȝȜȝȩȠȎȓȠȟȭ ȎȐȠȜȚȎȠȖȥȓȟȘȖ ȕȎȐȓȞ ȦȖȠȪ ȖțȟȠȞȡȘȤȖȬ ȘȜȠȜȞȡȬ ȝȜ ȓȓ ȚțȓțȖȬ Ƞȩ ȟȜȏȞȎșȟȭ țȎ ȝȓȥȎȠȎȠȪ Ȁȩ ȚȜȔȓȦȪ țȎȔȎȠȪ ȘșȎȐȖȦȡ Tab ȥȠȜȏȩ ȝȞȖțȭȠȪ ȝȞȓȒșȜȔȓțȖȓ ȜȏȜșȜȥȘȖ Ȗ ȟȫȘȜțȜȚȖȠȪ ȐȞȓȚȭ ǻȎ ȞȖȟ ȭ țȎȏȞȎș ȠȓȘȟȠ turtle.tu Ȗ ȢȡțȘȤȖȭ ȎȐȠȜȕȎȐȓȞȦȓțȖȭ ȝȞȓȒ șȎȑȎȓȠ ȖȟȝȜșȪȕȜȐȎȠȪ ȘȜȚȎțȒȡ turtle.turnLeft( țȎȔȎȠȖȓ ȘșȎȐȖȦȖ Tab ȝȞȖȐȓȒȓȠ Ș ȎȐȠȜȚȎȠȖȥȓȟȘȜȗ ȝȜȒȟȠȎțȜȐȘȓ Ȑȩ Ȓȓșȓțțȩȣ ȟȖȚȐȜșȜȐ rnLeft( Ȏ ȕȎȠȓȚ ȭ ȚȜȑȡ ȐȐȓȟȠȖ ȜȟȠȎȐ ȦȡȬȟȭ ȟȘȜȏȘȡ ).

ǼǿǻǼǰȉ ǽǾǼDZǾǮǺǺǶǾǼǰǮǻǶȍ

47


ˀ̛̭͘ 2.10. ˇ̶̡̛̱̦́ ̨̛̯̖̬̹̖̦̌̏̌̏́̚ ̪̬̖̣̖̯̔̌̐̌ ̨̨̛̭̪̣̯̽̏̌̽̚ ̡̨̥̦̱̌̔ turtle.turnLeft(͕ ̡̨̐̔̌ ́ ̛̦̬̌̍̌̀ turtle.tu͘

ǿșȜȐȜ true ȖȟȠȖțȎ ȘȜȠȜȞȜȓ ȝȜȭȐșȭȓȠȟȭ ȝȜȟșȓ ȐȐȜȒȎ ȘȜ ȚȎțȒȩ țȎȕȩȐȎȓȠȟȭ ȐȜȕȐȞȎȧȎȓȚȩȚ ȕțȎȥȓțȖȓȚ Ȗ ȝȜȕȐȜșȭȓȠ ȡȕțȎȠȪ ȥȠȜ ȥȓȞȓȝȎȦȘȎ ȡȟȝȓȦțȜ ȝȜȐȓȞțȡșȎ țȎșȓȐȜ ǺțȜȑȖȓ ȖțȟȠȞȡȘȤȖȖ ȥȓȞȓȝȎȦȓȘ ȐȓȞțȡȠ ȕțȎȥȓțȖȓ true ȓȟșȖ ȐȐȓ ȒȓțțȎȭ ȖțȟȠȞȡȘȤȖȭ ȐȩȝȜșțȖȚȎ Ȗ false șȜȔȪ ȓȟșȖ țȓȠ ǵțȎȥȓțȖȭ true Ȗ false țȎȕȩȐȎȬȠȟȭ șȜȑȖȥȓȟȘȖȚȖ Ȗ ȜȏȨ ȭȟțȭȬȠȟȭ Ȑ ȑșȎȐȓ

ǽȜȟșȓ ȐȜȕȐȞȎȠȎ ȕțȎȥȓțȖȭ true ȟțȜȐȎ ȝȜȭȐȖȠȟȭ ȝȞȖȑșȎ ȦȓțȖȓ lua> ȜȔȖȒȎȬȧȓȓ ȐȐȜȒȎ ȟșȓȒȡȬȧȓȗ ȖțȟȠȞȡȘȤȖȖ ǻȎȔȚȖ ȘșȎȐȖȦȡ Esc ȥȠȜȏȩ ȡȐȖȒȓȠȪ ȥȠȜ ȥȓȞȓȝȎȦȘȎ ȝȜȐȓȞ țȡșȎȟȪ țȎșȓȐȜ ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ

ˀ̛̭͘ 2.11. ˋ̡̖̬̖̪̹̌̌ ̨̔ ̛ ̨̪̭̣̖ ̨̛̼̪̣̦̖̦̏́ ̶̡̛̛̦̭̯̬̱​̛ turtle.turnLeft()

ȇȓșȘțȖ ȝȞȎȐȜȗ ȘțȜȝȘȜȗ ȚȩȦȖ ȝȜ ȥȓȞȓȝȎȦȘȓ ȥȠȜȏȩ ȟțȜȐȎ ȜȠȜȏȞȎȕȖȠȪ ȓȓ ȖțȠȓȞȢȓȗȟ Ȗ ȐȐȓȒȖ ȟșȓȒȡȬȧȡȬ Ȗț ȟȠȞȡȘȤȖȬ Ȑ ȜȏȜșȜȥȘȡ /XD

48

DZǹǮǰǮ


lua> turtle.turnRight() true

ȀȓȝȓȞȪ ȘȜȑȒȎ Ƞȩ țȎȔȚȓȦȪ ȘșȎȐȖȦȡ Esc ȠȜ ȡȐȖȒȖȦȪ ȥȠȜ ȥȓȞȓȝȎȦȘȎ ȝȜȐȓȞțȡșȎȟȪ țȎȝȞȎȐȜ Ȗ țȎȣȜȒȖȠȟȭ Ȑ ȖȕțȎ ȥȎșȪțȜȚ ȝȜșȜȔȓțȖȖ ǶțȟȠȞȡȘȤȖȖ turtle.turnLeft() Ȗ turtle.turnRight() ² ȫȠȜ ȢȡțȘȤȖȖ ǰ ȝȞȜȑȞȎȚȚȖȞȜȐȎțȖȖ ȢȡțȘȤȖȭ ȭȐșȭȓȠȟȭ ȟȐȜȓȑȜ ȞȜȒȎ ȚȖțȖȝȞȜȑȞȎȚȚȜȗ ȐțȡȠȞȖ ȝȞȜȑȞȎȚȚȩ ȂȡțȘȤȖȖ ȟȜȒȓȞȔȎȠ țȎȏȜȞ ȖțȟȠȞȡȘȤȖȗ Ȓșȭ ȐȩȝȜșțȓțȖȭ ȘȎȘȜȑȜ șȖȏȜ ȒȓȗȟȠȐȖȭ ǸȜȑȒȎ ȢȡțȘȤȖȭ ȕȎȝȡ ȟȘȎȓȠȟȭ ȟ ȝȜȚȜȧȪȬ ȖțȟȠȞȡȘȤȖȖ țȎ ȭȕȩȘȓ /XD ȑȜȐȜȞȭȠ ȥȠȜ ȢȡțȘȤȖȭ ȐȩȕȩȐȎȓȠȟȭ. ȂȡțȘȤȖȖ turtle.turnLeft() Ȗ turtle.turnRight() țȎȣȜȒȭȠȟȭ Ȑ ȚȜȒȡșȓ turtle. ǺȜȒȡșȪ ȝȞȓȒȟȠȎȐșȭȓȠ ȟȜȏȜȗ țȎȏȜȞ ȢȡțȘȤȖȗ ȅȠȜȏȩ ȐȩȕȩȐȎȠȪ ȢȡțȘȤȖȖ ȐțȡȠȞȖ ȚȜȒȡ șȭ turtle Ƞȓȏȓ țȡȔțȜ țȎȝȓȥȎȠȎȠȪ ȟșȜȐȜ turtle ȟ ȠȜȥȘȜȗ ȝȓȞȓȒ ȖȚȓțȓȚ ȢȡțȘȤȖȖ ǺȜȒȡșȪ turtle ȟȜȒȓȞȔȖȠ ȚțȜȑȜ ȢȡțȘȤȖȗ ȝȜȕȐȜșȭȬȧȖȣ ȥȓȞȓȝȎȦȘȓ ȒȐȖȑȎȠȪȟȭ ȒȜȏȩȐȎȠȪ ȞȡȒȡ ȘȜȝȎȠȪ ȞȎȕȚȓȧȎȠȪ ȏșȜȘȖ Ȗ ȒȓșȎȠȪ Ȑȟȓ ȜȟȠȎșȪțȜȓ Ȁȩ ȡȕțȎȓȦȪ Ȝ ȚțȜȑȖȣ Ȗȕ ȫȠȖȣ ȢȡțȘȤȖȗ Ȗ ȚȜȒȡșȓȗ Ȗȕ ȫȠȜȗ ȘțȖȑȖ

ģČĚ 4=)" ĎħġĚĐ Ĕē ĚčĚėĚģĖĔ 4=) ǼȏȞȎȠȖ ȐțȖȚȎțȖȓ ȥȠȜ țȎȔȎȠȖȓ ȘșȎȐȖȦȖ Esc ȕȎȘȞȩȐȎȓȠ ȑȞȎȢȖȥȓȟȘȖȗ ȖțȠȓȞȢȓȗȟ țȜ Ȑ ȟșȓȒȡȬȧȖȗ ȞȎȕ ȘȜȑȒȎ Ƞȩ ȧȓșȘțȓȦȪ ȝȞȎȐȜȗ ȘțȜȝȘȜȗ ȚȩȦȖ ȝȜ ȥȓȞȓȝȎȦȘȓ Ƞȩ ȐȓȞ țȓȦȪȟȭ Ș ȜȏȜșȜȥȘȓ /XD Ȁȩ ȚȜȔȓȦȪ ȐȩȗȠȖ Ȗȕ ȜȏȜșȜȥȘȖ /XD Ȗ ȐȓȞțȡȠȪȟȭ Ș ȝȞȖȑșȎȦȓțȖȬ ȜȏȜșȜȥȘȖ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ȐȩȕȐȎȐ ȢȡțȘȤȖȬ exit() ǰȐȓȒȖ Ȑ ȜȏȜșȜȥȘȡ /XD ȟșȓȒȡȬȧȡȬ ȘȜȚȎțȒȡ lua> exit() >

ǽȜȟșȓ ȐȩȝȜșțȓțȖȭ ȫȠȜȗ ȢȡțȘȤȖȖ Ƞȩ ȡȐȖȒȖȦȪ ȥȠȜ ȝȞȖ ȑșȎȦȓțȖȓ lua> ȟȚȓțȖșȜȟȪ țȎ ȝȞȖȑșȎȦȓțȖȓ ȜȏȜșȜȥȘȖ ȘȜ ȚȎțȒțȜȗ ȟȠȞȜȘȖ >.

ǼǿǻǼǰȉ ǽǾǼDZǾǮǺǺǶǾǼǰǮǻǶȍ

49


ĘČĞđĘČĞĔģđĝĖĔđ ēČĐČģĖĔ ĝ 4=) ǻȓ ȐȜșțȡȗȟȭ ȓȟșȖ Ƞȩ ȟȥȖȠȎȓȦȪ ȟȓȏȭ ȒȎșȓȘȖȚ ȜȠ ȚȎȠȓȚȎ ȠȖȘȖ /XD ȐȩȝȜșțȖȠ ȕȎ Ƞȓȏȭ Ȑȟȓ ȐȩȥȖȟșȓțȖȭ /XD ȡȚȓȓȠ Ȟȓ ȦȎȠȪ ȚȎȠȓȚȎȠȖȥȓȟȘȖȓ ȕȎȒȎȥȖ șȡȥȦȓ ȘȎșȪȘȡșȭȠȜȞȎ ȓȟșȖ Ƞȩ ȕȎȒȎȦȪ ȓȗ ȝȞȎȐȖșȪțȩȓ ȖțȟȠȞȡȘȤȖȖ ǰȓȞțȖȟȪ Ș ȝȞȖȑșȎȦȓțȖȬ /XD Ȗ ȐȐȓȒȖ ȟșȓȒȡȬȧȡȬ ȘȜ ȚȎțȒȡ lua> 2 + 2 4

Ǻȩ țȎȕȩȐȎȓȚ ȠȎȘȖȓ ȚȎȠȓȚȎȠȖȥȓȟȘȖȓ ȕȎȒȎȥȘȖ ȐȩȞȎȔȓ țȖȭȚȖ DzȐȓ ȤȖȢȞȩ 2 Ȑ ȐȩȞȎȔȓțȖȖ țȎȕȩȐȎȬȠȟȭ ȕțȎȥȓțȖȭ ȚȖ ǰ ȫȠȜȚ ȘȜțȘȞȓȠțȜȚ ȟșȡȥȎȓ ȫȠȜ ȥȖȟșȜȐȩȓ ȕțȎȥȓțȖȭ ǵțȎȘ + Ȑ ȐȩȞȎȔȓțȖȖ țȎȕȩȐȎȓȠȟȭ ȜȝȓȞȎȠȜȞȜȚ ǸȜȑȒȎ Ƞȩ ȝȓȞȓȒȎ ȓȦȪ ȫȠȖ ȕțȎȥȓțȖȭ Ȗ ȜȝȓȞȎȠȜȞ ȜȏȜșȜȥȘȓ /XD Ȑ ȐȖȒȓ ȐȩȞȎȔȓ țȖȭ /XD ȐȩȥȖȟșȭȓȠ ȞȓȕȡșȪȠȎȠ ȐȩȞȎȔȓțȖȭ Ȑ ȐȖȒȓ ȜȒțȜȑȜ ȕțȎȥȓțȖȭ ȘȜȠȜȞȜȓ ȭȐșȭȓȠȟȭ ȜȠȐȓȠȜȚ țȎ ȚȎȠȓȚȎȠȖȥȓȟȘȡȬ ȕȎȒȎȥȡ ǰȩȞȎȔȓțȖȓ 2 + 2 ȐȩȥȖȟșȭȓȠȟȭ ȘȎȘ 4. ǽȞȜȏȓșȩ Ȑ ȐȩȞȎȔȓțȖȭȣ țȓ ȐȎȔțȩ Ȁȩ ȚȜȔȓȦȪ țȓ ȡȘȎ ȕȩȐȎȠȪ ȝȞȜȏȓșȩ ȖșȖ ȐȐȓȟȠȖ ȟȠȜșȪȘȜ ȟȘȜșȪȘȜ ȣȜȥȓȦȪ ǰȐȓ ȒȖ Ȑ ȜȏȜșȜȥȘȡ /XD ȟșȓȒȡȬȧȖȓ ȘȜȚȎțȒȩ lua> 3+4 7 lua> 3 7

+

4

ǻȓȟȚȜȠȞȭ țȎ ȠȜ ȥȠȜ Ƞȩ ȚȜȔȓȦȪ țȎȏȖȞȎȠȪ ȟȠȜșȪȘȜ ȝȞȜȏȓ șȜȐ ȟȘȜșȪȘȜ ȣȜȥȓȠȟȭ ȏȜșȪȦȖțȟȠȐȜ ȝȞȜȑȞȎȚȚȖȟȠȜȐ ȟȥȖȠȎȬȠ ȝȞȎȐȖșȪțȩȚ țȎȏȖȞȎȠȪ ȜȒȖț ȝȞȜȏȓș ȚȓȔȒȡ ȕțȎȥȓțȖȭȚȖ Ȗ ȜȝȓȞȎȠȜȞȎȚȖ ȥȠȜȏȩ ȘȜȒ ȏȩș ȏȜșȓȓ ȘȜȚȢȜȞȠțȩȚ Ȓșȭ ȥȠȓ țȖȭ ǼȏȜșȜȥȘȎ /XD ȝȜȒȒȓȞȔȖȐȎȓȠ ȚȎȠȓȚȎȠȖȥȓȟȘȖȓ ȜȝȓȞȎȠȜȞȩ ȟșȜȔȓțȖȭ (+ ȐȩȥȖȠȎțȖȭ (- ȡȚțȜȔȓțȖȭ (* ȒȓșȓțȖȭ (/ Ȗ ȐȜȕȐȓȒȓțȖȭ Ȑ ȟȠȓȝȓțȪ (^ ǰȐȓȒȖ ȡȘȎȕȎțțȩȓ țȖȔȓ ȘȜȚȎțȒȩ

50

DZǹǮǰǮ


Ȑ ȜȏȜșȜȥȘȓ /XD ȥȠȜȏȩ ȡȐȖȒȓȠȪ ȝȞȖȚȓȞȩ ȖȟȝȜșȪȕȜȐȎțȖȭ ȝȓ ȞȓȥȖȟșȓțțȩȣ ȜȝȓȞȎȠȜȞȜȐ lua> 101 lua> 6 lua> 35 lua> 7 lua> 9

100 + 1 10 – 4 7 * 5 21 / 3 3^2

ȃȜȠȭ Ȑ țȓȘȜȠȜȞȩȣ Ȗȕ ȫȠȖȣ ȜȝȓȞȎȤȖȗ ȖȟȝȜșȪȕȡȬȠȟȭ ȒȞȡ ȑȖȓ ȟȖȚȐȜșȩ Ȏ țȓ Ƞȓ ȥȠȜ Ƞȩ ȖȕȡȥȎș Ȑ ȦȘȜșȓ ȜțȖ ȞȎȏȜȠȎȬȠ ȠȜȥțȜ ȠȎȘ Ȕȓ ǵțȎȥȓțȖȓ ȟȎȚȜ ȝȜ ȟȓȏȓ ȠȎȘȔȓ ȭȐșȭȓȠȟȭ ȐȩȞȎȔȓțȖȓȚ ȜțȜ ȐȩȥȖȟșȭȓȠȟȭ ȟȎȚȖȚ ȟȜȏȜȗ ǰȓȞțȖȟȪ Ș ȝȞȖȑșȎȦȓțȖȬ /XD Ȗ ȐȐȓȒȖ ȟșȓȒȡȬȧȡȬ ȘȜȚȎțȒȡ lua> 42 42

ǸȎȘ ȐȖȒȖȦȪ ȕțȎȥȓțȖȓ 42 ȟȎȚȜ ȝȜ ȟȓȏȓ ȐȩȥȖȟșȭȓȠȟȭ Ȑ 42. ǰȩȞȎȔȓțȖȭ ȐȟȓȑȒȎ ȐȩȥȖȟșȭȬȠȟȭ Ȑ ȜȒțȜ ȕțȎȥȓțȖȓ ȒȎȔȓ Ȑ ȟșȡȥȎȭȣ țȓȏȜșȪȦȖȣ ȐȩȞȎȔȓțȖȗ ȠȎȘȖȣ ȘȎȘ 42. ǰȩȞȎȔȓțȖȭ ȚȜȑȡȠ ȏȩȠȪ șȬȏȜȗ ȒșȖțȩ ǰȐȓȒȖ Ȑ ȜȏȜșȜȥȘȡ /XD ȟșȓȒȡȬȧȡȬ ȘȜȚȎțȒȡ lua> 1 + 2 + 3 + 4 + 5 15

ȋȠȜ ȐȩȞȎȔȓțȖȓ ȟȜȒȓȞȔȖȠ ȝȭȠȪ ȕțȎȥȓțȖȗ Ȗ ȥȓȠȩȞȓ Ȝȝȓ ȞȎȠȜȞȎ Ȗ ȜȏȜșȜȥȘȎ /XD ȐȩȥȖȟșȖșȎ ȓȑȜ Ȑ ȓȒȖțȟȠȐȓțțȜȓ ȕțȎȥȓțȖȓ 15. /XD ȐȩȥȖȟșȭȓȠ ȐȩȞȎȔȓțȖȓ ȝȜ ȦȎȑȎȚ ȟșȓȐȎ țȎȝȞȎȐȜ ȣȜȠȭ Ƞȩ Ȗ țȓ ȐȖȒȖȦȪ Ȑȟȓ ȫȠȖ ȦȎȑȖ țȎ ȟȐȜȓȚ ȘȜȚ ȝȪȬȠȓȞȓ

ǼǿǻǼǰȉ ǽǾǼDZǾǮǺǺǶǾǼǰǮǻǶȍ

51


Ěĕ ĚĤĔčĖČ

Обрати внимание, что в выражениях на умножение в языке Lua используется звездочка *, а не значок крестика × и не буква ɯ. Если ты попробуешь использовать значок × или букву ɯ в качестве оператора умножения, оболочка Lua выдаст ошибку. Смотри: lua> 5 x 5 bios.lua:14: [string "lua"]:1: unexpected symbol Ошибка означает, что оболочка Lua не смогла понять инструкцию, которую ты ввел. Убедись, что твоя команда набрана корректно, и повтори ее ввод. Ошибки в программировании могут сбивать с толку. Если ты не понимаешь, что означает сообщение, ты можешь набрать текст сообщения об ошибке (например, «unexpected symbol» в этом примере) в поле ввода на сайте поисковой системы и найти объяснение.

ěĚĜīĐĚĖ ĐđĕĝĞĎĔĕ ǽȞȎȐȖșȎ ȜȝȞȓȒȓșȭȬȧȖȓ ȘȎȘȖȓ ȥȎȟȠȖ ȐȩȞȎȔȓțȖȭ Ȑȩ ȥȖȟșȭȬȠȟȭ ȝȓȞȐȩȚȖ țȎȕȩȐȎȬȠȟȭ ȝȜȞȭȒȘȜȚ ȒȓȗȟȠȐȖȗ ǽȜ ȞȭȒȜȘ ȒȓȗȟȠȐȖȗ Ȑ /XD ȠȎȘȜȗ Ȕȓ ȥȠȜ Ȗ Ȑ ȚȎȠȓȚȎȠȖȘȓ ǰȩȥȖȟ șȓțȖȓ ȝȞȜȖȕȐȜȒȖȠȟȭ ȟșȓȐȎ țȎȝȞȎȐȜ ȟțȎȥȎșȎ ȐȩȝȜșțȭȬȠȟȭ ȜȝȓȞȎȤȖȖ Ȑ ȘȞȡȑșȩȣ ȟȘȜȏȘȎȣ ȕȎȠȓȚ ȜȝȓȞȎȤȖȖ ȐȜȕȐȓȒȓțȖȭ Ȑ ȟȠȓȝȓțȪ ^ ȕȎȠȓȚ ȜȝȓȞȎȤȖȖ ȡȚțȜȔȓțȖȭ Ȗ ȒȓșȓțȖȭ * Ȗ / ȕȎ ȘȜȠȜȞȩȚȖ ȟșȓȒȡȬȠ ȜȝȓȞȎȤȖȖ ȟșȜȔȓțȖȭ Ȗ ȐȩȥȖȠȎțȖȭ + Ȗ -. ǰ ȜȏȜșȜȥȘȓ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ȐȐȓȒȖ ȟșȓȒȡȬȧȡȬ ȘȜȚȎțȒȡ lua> 2 + 3 * 4 14

ǰȩȞȎȔȓțȖȓ 2 + 3 * 4 ȐȩȥȖȟșȭȓȠȟȭ ȘȎȘ 14 Ȏ țȓ 20 ȝȜ ȠȜȚȡ ȥȠȜ ȟțȎȥȎșȎ ȐȩȥȖȟșȭȓȠȟȭ ȜȝȓȞȎȤȖȭ 3 * 4 = 12 Ȏ ȕȎ ȠȓȚ 2 + 12 ȥȠȜ Ȑ ȖȠȜȑȓ ȞȎȐțȜ 14.

52

DZǹǮǰǮ


ǼȏȜșȜȥȘȎ /XD ȐȩȥȖȟșȭȓȠ ȫȠȜ ȐȩȞȎȔȓțȖȓ ȝȜ ȦȎȑȎȚ ȘȎȘ ȝȜȘȎȕȎțȜ țȖȔȓ 2 + 3 * 4 2 + 12 14

Ȁȩ ȚȜȔȓȦȪ ȖȕȚȓțȖȠȪ ȝȜȞȭȒȜȘ ȐȩȝȜșțȓțȖȭ ȜȝȓȞȎȤȖȗ ȟ ȝȜȚȜȧȪȬ ȘȞȡȑșȩȣ ȟȘȜȏȜȘ ǰȐȓȒȖ Ȑ ȜȏȜșȜȥȘȡ /XD ȟșȓȒȡȬ ȧȡȬ ȘȜȚȎțȒȡ lua> (2 + 3) * 4 20

ȀȓȝȓȞȪ ȟțȎȥȎșȎ ȐȩȝȜșțȭȓȠȟȭ ȜȝȓȞȎȤȖȭ (2 + 3) ȒȎȬȧȎȭ 5 Ȏ ȕȎȠȓȚ ȜȝȓȞȎȤȖȭ 5 * 4 ȝȞȖȐȜȒȭ Ȑ ȖȠȜȑȓ Ș ȞȓȕȡșȪȠȎȠȡ 20. /XD ȐȩȥȖȟșȭȓȠ ȫȠȜ ȐȩȞȎȔȓțȖȓ ȘȎȘ ȝȜȘȎȕȎțȜ țȖȔȓ (2 + 3) * 4 5 * 4 20

ďđęđĜČĢĔī ĝėğģČĕęħġ ģĔĝđė ǼȏȜșȜȥȘȎ /XD ȠȎȘȔȓ ȡȚȓȓȠ ȑȓțȓȞȖȞȜȐȎȠȪ ȟșȡȥȎȗțȩȓ ȥȖȟșȎ. ǺțȜȑȖȓ ȖȑȞȩ Ȗ ȝȞȜȑȞȎȚȚȩ ȖȟȝȜșȪȕȡȬȠ ȟșȡȥȎȗțȩȓ ȕțȎȥȓ țȖȭ ȕȎȒȡȚȎȗȟȭ Ȑ ȟȘȜșȪȘȖȣ țȎȟȠȜșȪțȩȣ ȖȑȞȎȣ ȖȟȝȜșȪȕȡȬȠ ȟȭ ȟșȡȥȎȗțȩȓ ȥȖȟșȎ ȑȓțȓȞȖȞȡȓȚȩȓ ȟ ȝȜȚȜȧȪȬ ȖȑȞȎșȪțȩȣ ȘȡȏȖȘȜȐ ȝȜȫȠȜȚȡ Ƞȓȏȓ țȡȔțȜ ȡȚȓȠȪ ȟȜȕȒȎȐȎȠȪ Ȗ ȖȟȝȜșȪ ȕȜȐȎȠȪ ȟșȡȥȎȗțȩȓ ȥȖȟșȎ Dzșȭ ȫȠȜȑȜ Ƞȩ ȐȜȟȝȜșȪȕȡȓȦȪȟȭ ȢȡțȘȤȖȓȗ math.random() ȘȜȠȜȞȎȭ ȝȞȖ ȘȎȔȒȜȚ ȐȩȕȜȐȓ ȐȜȕ ȐȞȎȧȎȓȠ ȟșȡȥȎȗțȜȓ ȥȖȟșȜ ǼȏȞȎȠȖ ȐțȖȚȎțȖȓ ȥȠȜ ȢȡțȘȤȖȭ

ǼǿǻǼǰȉ ǽǾǼDZǾǮǺǺǶǾǼǰǮǻǶȍ

53


random() țȎȣȜȒȖȠȟȭ ȐțȡȠȞȖ ȚȜȒȡșȭ math ǰȐȓȒȖ Ȑ ȜȏȜșȜȥȘȡ /XD ȟșȓȒȡȬȧȖȓ ȘȜȚȎțȒȩ lua> 6 lua> 1 lua> 1 lua> 3 lua> 142

math.random(1, 6) math.random(1, 6) math.random(1, 6) math.random(1, 6) math.random(100, 200)

ǽȜȟȘȜșȪȘȡ ȐȜȕȐȞȎȧȎȓȚȩȓ ȕțȎȥȓțȖȭ ȟșȡȥȎȗțȩ ȥȖȟșȎ Ȑ ȠȐȜȓȚ ȐȩȐȜȒȓ țȎȐȓȞțȭȘȎ ȏȡȒȡȠ ȜȠșȖȥȎȠȪȟȭ ȜȠ ȝȞȖȐȓȒȓțțȩȣ Ȑ ȫȠȜȚ ȝȞȖȚȓȞȓ ǼȏȞȎȠȖ ȐțȖȚȎțȖȓ ȥȠȜ ȘȜȑȒȎ Țȩ ȐȩȕȩȐȎȓȚ ȢȡțȘȤȖȬ random() Ȑ ȘȞȡȑșȩȣ ȟȘȜȏȘȎȣ ȡȘȎȕȩȐȎȓȚ ȒȐȎ ȥȖȟ șȎ ȥȓȞȓȕ ȕȎȝȭȠȡȬ ȋȠȖ ȕțȎȥȓțȖȭ ȭȐșȭȬȠȟȭ ȎȞȑȡȚȓțȠȎȚȖ ȐȩȕȜȐȎ ȢȡțȘȤȖȖ ǵȒȓȟȪ ȎȞȑȡȚȓțȠȩ ² ȕțȎȥȓțȖȭ ȝȓȞȓȒȎȐȎ ȓȚȩȓ ȢȡțȘȤȖȖ ȝȞȖ ȓȓ ȐȩȕȜȐȓ Ȗ ȟȜȜȏȧȎȬȧȖȓ ȓȗ ȘȎȘ ȟȓȏȭ ȐȓȟȠȖ ǸȜȑȒȎ Ƞȩ ȝȜȚȓȧȎȓȦȪ ȎȞȑȡȚȓțȠȩ Ȑ ȘȞȡȑșȩȓ ȟȘȜȏȘȖ ȝȜȟșȓ ȖȚȓțȖ ȢȡțȘȤȖȖ Ƞȩ ȝȓȞȓȒȎȓȦȪ ȎȞȑȡȚȓțȠȩ ȐȩȕȜȐȡ ȢȡțȘȤȖȖ ȂȡțȘȤȖȭ random() ȝȞȖțȖȚȎȓȠ ȒȐȎ ȎȞȑȡȚȓțȠȎ ȚȖțȖȚȎșȪțȜ Ȗ ȚȎȘȟȖȚȎșȪțȜ ȒȜȝȡȟȠȖȚȜȓ ȟșȡȥȎȗțȜȓ ȥȖȟ șȜ ȘȜȠȜȞȜȓ ȒȜșȔȓț ȐȜȕȐȞȎȧȎȠȪ ȐȩȕȜȐ ȢȡțȘȤȖȖ dzȟșȖ Ȑȩ ȕȜȐȡ ȢȡțȘȤȖȖ Ƞȩ ȝȓȞȓȒȎȓȦȪ ȕțȎȥȓțȖȭ 1 Ȗ 6 ȐȜȕȐȞȎȧȎȓȚȜȓ ȥȖȟșȜ ȐȟȓȑȒȎ ȏȡȒȓȠ țȎȣȜȒȖȠȪȟȭ Ȑ ȒȖȎȝȎȕȜțȓ ȜȠ 1 ȒȜ 6 dzȟșȖ Ƞȩ ȝȓȞȓȒȎȦȪ 100 Ȗ 200 ȐȜȕȐȞȎȧȎȓȚȜȓ ȕțȎȥȓțȖȓ ȏȡȒȓȠ țȎ ȣȜȒȖȠȪȟȭ Ȑ ȒȖȎȝȎȕȜțȓ ȜȠ 100 ȒȜ 200. ǰȜ Ȑȟȓȣ ȟșȡȥȎȭȣ ȘȜȑȒȎ Ƞȓȏȓ țȡȔțȜ ȒȜȏȎȐȖȠȪ ȟșȡȥȎȗțȜȓ ȕțȎȥȓțȖȓ Ȑ ȟȐȜȬ ȝȞȜȑȞȎȚȚȡ Ƞȩ ȏȡȒȓȦȪ ȖȟȝȜșȪȕȜȐȎȠȪ ȢȡțȘ ȤȖȬ random() Ǻȩ ȟȒȓșȎȓȚ ȫȠȜ Ȑ ȝȞȜȑȞȎȚȚȓ mydance ȘȜȠȜ ȞȡȬ țȎȝȖȦȓȚ Ȑ ȑșȎȐȓ

54

DZǹǮǰǮ


ĝĚġĜČęđęĔđ ēęČģđęĔĕ ĝ ěĚĘĚĥĨĪ ěđĜđĘđęęħġ ȅȠȜȏȩ Ȑ ȝȞȜȑȞȎȚȚȓ ȖȟȝȜșȪȕȜȐȎȠȪ ȕțȎȥȓțȖȭ țȓȟȘȜșȪȘȜ ȞȎȕ Ȗȣ ȚȜȔțȜ ȣȞȎțȖȠȪ Ȑ ȝȓȞȓȚȓțțȩȣ. ǽȓȞȓȚȓțțȎȭ ² ȫȠȜ ȟșȜȐ țȜ ȘȜȞȜȏȜȥȘȎ Ȑ ȝȎȚȭȠȖ ȘȜȚȝȪȬȠȓȞȎ ǰ ȫȠȜȗ ȘȜȞȜȏȜȥȘȓ Ƞȩ ȚȜȔȓȦȪ ȟȜȣȞȎțȖȠȪ ȜȒțȜ ȕțȎȥȓțȖȓ ȟȚ ȞȖȟ ȅȠȜȏȩ ȟȜȕ ȒȎȠȪ ȝȓȞȓȚȓțțȡȬ Ƞȩ ȝȖȦȓȦȪ ȖȚȭ ȝȓȞȓȚȓțțȜȗ ȕȎȠȓȚ ȕțȎȘ ȞȎȐȓțȟȠȐȎ = ȕȎ ȘȜȠȜȞȩȚ ȟșȓȒȡȓȠ ȕțȎȥȓțȖȓ ȘȜȠȜȞȜȓ Ƞȩ ȣȜ ȥȓȦȪ ȟȜȣȞȎțȖȠȪ Ȑ ȝȓȞȓȚȓțțȜȗ ǻȎȝȞȖȚȓȞ ȓȟșȖ Ƞȩ ȣȜȥȓȦȪ ȕȎȝȖȟȎȠȪ ȟȘȜșȪȘȜ ȡȑșȭ ȡ Ƞȓȏȭ ȓȟȠȪ Ƞȩ ȚȜȔȓȦȪ ȖȟȝȜșȪȕȜ ȐȎȠȪ ȖțȟȠȞȡȘȤȖȬ coal = 10 Ȓșȭ ȣȞȎțȓțȖȭ ȕțȎȥȓțȖȭ 10 Ȑ ȝȓȞȓȚȓțțȜȗ ȟ ȖȚȓțȓȚ coal Ǹ ȝȞȖȚȓȞȡ ȫȠȎ ȝȓȞȓȚȓțțȎȭ ȚȜȔȓȠ ȣȞȎțȖȠȪ ȟȘȜșȪȘȜ ȡȑșȭ ȒȜȏȩșȎ ȥȓȞȓȝȎȦȘȎ ȀȎȘȎȭ ȘȜȚȎțȒȎ țȎȕȩȐȎȓȠȟȭ ȖțȟȠȞȡȘȤȖȓȗ ȝȞȖȟȐȎȖȐȎțȖȭ Ȏ ȕțȎȘ ȞȎȐȓțȟȠȐȎ = țȎȕȩȐȎȓȠȟȭ ȜȝȓȞȎȠȜȞȜȚ ȝȞȖȟȐȎȖȐȎțȖȭ.

10 coal

ˀ̛̭͘ 2.12. ʰ̶̡̛̦̭̯̬̱́ coal = 10 ʹ ̨̯̾ ̡̡̌ ̨̱̯̍̔ ̯̼ ̡̭̣̌̌̚ ̨̪̬̬̥̐̌​̥̖͗ ͨʿ̖̬̖̥̖̦​̨̦̜ coal ̸̨̦̦̖̦̌̌̚ ̸̨̨̛̭̣̖̏ ̸̛̦̖̦̖̌̚ 10»

Ȁȩ ȚȜȔȓȦȪ ȖȟȝȜșȪȕȜȐȎȠȪ ȝȓȞȓȚȓțțȡȬ Ȑ ȐȩȞȎȔȓțȖȭȣ ȐȚȓȟȠȜ țȓȝȜȟȞȓȒȟȠȐȓțțȜȑȜ ȕțȎȥȓțȖȭ ǻȎȝȞȖȚȓȞ ȐȐȓȒȖ Ȑ ȜȏȜșȜȥȘȡ /XD ȟșȓȒȡȬȧȖȓ ȘȜȚȎțȒȩ lua> lua> 14 lua> 20 lua> 5

coal = 10 coal + 4 coal + 10 12 - coal + 3

ǼǿǻǼǰȉ ǽǾǼDZǾǮǺǺǶǾǼǰǮǻǶȍ

55


ǰ ȝȓȞȐȜȗ ȟȠȞȜȘȓ Ƞȩ ȜȏȨȭȐșȭȓȦȪ Ƞ ȓ ȟȜȜȏȧȎȓȦȪ ȜȏȜșȜȥ Șȓ ȥȠȜ ȠȓȝȓȞȪ ȓȟȠȪ ȝȓȞȓȚȓțțȎȭ ȟ ȫȠȖȚ ȖȚȓțȓȚ ȝȓȞȓȚȓțțȡȬ coal Ȗ ȝȞȖȟȐȎȖȐȎȓȦȪ ȓȗ ȕțȎȥȓțȖȓ 10 ǽȜȟșȓ ȫȠȜȑȜ ȕțȎȥȓțȖȓ 10 ȝȜȒȟȠȎȐșȭȓȠȟȭ ȐȓȕȒȓ ȑȒȓ Ƞȩ ȖȟȝȜșȪȕȡȓȦȪ ȝȓȞȓȚȓțțȡȬ coal. ǿȝȞȎȐȎ ȜȠ ȜȝȓȞȎȠȜȞȎ = Ƞȩ ȚȜȔȓȦȪ ȝȜȚȓȟȠȖȠȪ țȓ ȠȜșȪȘȜ ȥȖȟșȜȐȜȓ ȕțȎȥȓțȖȓ țȜ Ȗ ȐȩȞȎȔȓțȖȓ ȥȠȜȏȩ ȝȞȖȟȐȜȖȠȪ ȝȓȞȓ ȚȓțțȜȗ ȞȓȕȡșȪȠȎȠ ȓȑȜ ȐȩȥȖȟșȓțȖȭ ǾȓȕȡșȪȠȎȠ ȐȩȥȖȟșȓțȖȭ ȏȡȒȓȠ ȟȜȣȞȎțȓț Ȑ ȐȖȒȓ ȕțȎȥȓțȖȭ ȝȓȞȓȚȓțțȜȗ dzȟșȖ ȐȐȓȟȠȖ ȖțȟȠȞȡȘȤȖȬ coal = 2 * 3 + 4 /XD ȐȩȥȖȟșȖȠ ȕțȎȥȓțȖȓ ȝȓȞȓȚȓțțȜȗ coal ȘȎȘ 10 ȟȚ țȖȔȓ coal = 2 * 3 + 4 coal = 6 + 4

coal = 10

ǸȞȜȚȓ ȠȜȑȜ ȝȜ ȝȞȖțȤȖȝȡ ȐȩȥȖȟșȓțȖȭ ȕțȎȥȓțȖȭ Ȗȕ ȟȎȚȜ ȑȜ ȟȓȏȭ Ƞȩ ȚȜȔȓȦȪ ȝȜȟȚȜȠȞȓȠȪ ȘȎȘȜȓ ȕțȎȥȓțȖȓ ȣȞȎțȖȠȟȭ Ȑ ȝȓȞȓȚȓțțȜȗ ȐȐȓȒȭ ȓȓ ȖȚȭ Ȑ ȜȏȜșȜȥȘȓ /XD: lua> coal 10

ǾȎțȓȓ Țȩ ȝȞȖȟȐȜȖșȖ ȝȓȞȓȚȓțțȜȗ coal ȥȖȟșȜ ȝȜȫȠȜ Țȡ ȘȜȑȒȎ Țȩ ȐȐȜȒȖȚ ȖȚȭ ȝȓȞȓȚȓțțȜȗ coal ȐȩȥȖȟșȭȓȠȟȭ ȕțȎȥȓțȖȓ 10. DzȎȐȎȗ ȖȕȚȓțȖȚ ȕțȎȥȓțȖȓ ȣȞȎțȭȧȓȓȟȭ Ȑ ȝȓȞȓȚȓțțȜȗ coal ȟ ȝȜȚȜȧȪȬ ȓȧȓ ȜȒțȜȑȜ ȜȝȓȞȎȠȜȞȎ ȝȞȖȟȐȎȖȐȎțȖȭ ȋȠȎ ȜȝȓȞȎȤȖȭ țȎȕȩȐȎȓȠȟȭ ȝȓȞȓȕȎȝȖȟȪȬ ȝȓȞȓȚȓțțȜȗ ǰȐȓȒȖ Ȑ ȜȏȜșȜȥȘȡ /XD ȟșȓȒȡȬȧȖȓ ȘȜȚȎțȒȩ lua> coal = 100 lua> 2 + coal + 3 105 lua> coal = 200

56

DZǹǮǰǮ


lua> 2 + coal + 3 205

ǽȓȞȓȚȓțțȩȓ ȚȜȑȡȠ ȣȞȎțȖȠȪ ȠȜșȪȘȜ ȜȒțȜ ȕțȎȥȓțȖȓ dzȟșȖ ȕțȎȥȓțȖȓ ȝȓȞȓȚȓțțȜȗ ȝȓȞȓȕȎȝȖȟȩȐȎȓȠȟȭ țȜȐȩȚ ȕțȎȥȓțȖȓȚ ȟȠȎȞȜȓ ȕțȎȥȓțȖȓ ȜȠȏȞȎȟȩȐȎȓȠȟȭ Ȗ ȟȠȖȞȎȓȠȟȭ ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ

0

20

10

0

coal

ˀ̛̭͘ 2.13. ʿ̖̬̖̥̖̦​̨̦̜ coal ̛̛̪̬̭̖̯̭̏̌̏̌́ ̨̨̦̖̏ ̸̛̦̖̦̖̌̚ 200͕ ̌ ̨̭̯̬̖̌ ̸̛̦̖̦̖̌̚ 100 ̛̭̯̬̖̯̭̌́

ǽȜȟșȓ ȝȞȖȟȐȜȓțȖȭ ȝȓȞȓȚȓțțȜȗ ȕțȎȥȓțȖȭ Ƞȩ ȚȜȔȓȦȪ Ȗȟ ȝȜșȪȕȜȐȎȠȪ ȓȓ Ȑ ȒȞȡȑȖȣ ȖțȟȠȞȡȘȤȖȭȣ ȝȞȖȟȐȎȖȐȎțȖȭ Ƕȟ ȝȜșȪȕȡȭ ȝȓȞȓȚȓțțȡȬ ȟ ȖȚȓțȓȚ counter ȐȐȓȒȖ ȟșȓȒȡȬȧȖȓ ȘȜȚȎțȒȩ Ȑ ȜȏȜșȜȥȘȓ /XD: X lua> counter = lua> counter 0 Y lua> counter = lua> counter Z 1 [ lua> counter = lua> counter 2 \ lua> counter = lua> counter 102

0

counter + 1

counter + 1

counter + 100

ǼǿǻǼǰȉ ǽǾǼDZǾǮǺǺǶǾǼǰǮǻǶȍ

57


ǿțȎȥȎșȎ ȝȞȖȟȐȜȗ ȝȓȞȓȚȓțțȜȗ counter ȕțȎȥȓțȖȓ 0 X Ȏ ȕȎȠȓȚ țȎȕțȎȥȪ ȓȗ ȕțȎȥȓțȖȓ ȞȎȐțȜȓ counter + 1 Y ǰ Ȟȓ ȕȡșȪȠȎȠȓ ȕțȎȥȓțȖȓ ȝȓȞȓȚȓțțȜȗ counter ȠȓȝȓȞȪ ȞȎȐțȜ 1 Z. Ȁȩ ȚȜȔȓȦȪ ȝȞȜȒȜșȔȎȠȪ ȒȜȏȎȐșȭȠȪ 1 Ș ȕțȎȥȓțȖȬ ȝȓȞȓȚȓț țȜȗ counter [ țȎȔȖȚȎȭ ȘșȎȐȖȦȡ Ń ȥȠȜȏȩ ȐȩȐȜȒȖȠȪ ȝȞȓ ȒȩȒȡȧȖȓ ȖțȟȠȞȡȘȤȖȖ ȘȎȘ Ȗ Ȑ ȜȏȜșȜȥȘȓ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ DzȜȏȎȐșȓțȖȓ 1 Ș ȕțȎȥȓțȖȬ ȝȓȞȓȚȓțțȜȗ counter ȝȜȕȐȜșȭȓȠ ȖȟȝȜșȪȕȜȐȎȠȪ ȫȠȡ ȝȓȞȓȚȓțțȡȬ Ȓșȭ ȝȜȒȟȥȓȠȎ ȋȠȜȠ ȚȓȠȜȒ ȏȡ ȒȓȠ ȝȜșȓȕȓț Ȑ ȏȡȒȡȧȖȣ ȝȞȜȑȞȎȚȚȎȣ ȓȟșȖ Ș ȝȞȖȚȓȞȡ Ƞȓȏȓ ȝȜțȎȒȜȏȖȠȟȭ ȝȜȟȥȖȠȎȠȪ ȘȜșȖȥȓȟȠȐȜ ȐȩȝȜșțȓțȖȗ ȘȜȚȎțȒȩ Ȁȩ ȚȜȔȓȦȪ ȚȓțȭȠȪ ȕțȎȥȓțȖȓ ȝȓȞȓȚȓțțȜȗ counter ȟȠȜșȪȘȜ ȞȎȕ ȟȘȜșȪȘȜ țȡȔțȜ Ȗ ȒȎȔȓ ȚȜȔȓȦȪ ȖȕȚȓțȖȠȪ ȓȑȜ ȟ ȝȜȚȜ ȧȪȬ ȐȓșȖȥȖțȩ ȜȠșȖȥțȜȗ ȜȠ 1 țȎȝȞȖȚȓȞ 100 \. ǽȓȞȓȚȓțțȩȓ ȝȜșȓȕțȩ Ȓșȭ ȣȞȎțȓțȖȭ ȞȓȕȡșȪȠȎȠȜȐ Ȑȩ ȥȖȟșȓțȖȗ ȖșȖ ȒȞȡȑȖȣ ȒȎțțȩȣ ȘȜȠȜȞȩȓ Ƞȩ ȣȜȥȓȦȪ ȖȟȝȜșȪ ȕȜȐȎȠȪ Ȑ ȝȞȜȑȞȎȚȚȓ ǯȜșȪȦȖțȟȠȐȜ ȝȞȜȑȞȎȚȚ ȘȜȠȜȞȩȓ Ƞȩ ȏȡȒȓȦȪ ȝȖȟȎȠȪ Ȗ ȝȜȥȠȖ Ȑȟȓ ȝȞȜȑȞȎȚȚȩ Ȑ ȫȠȜȗ ȘțȖȑȓ Ȗȟ ȝȜșȪȕȡȬȠ ȝȓȞȓȚȓțțȩȓ ĔĘđęČ ěđĜđĘđęęħġ

Имена переменных должны начинаться с буквы или символа подчеркивания и состоять только из латинских букв, цифр и символов подчеркивания. Имена переменных обычно описывают то, что хранят, например FuelPercentage, spaceLeft или coal. Имена переменных зависимы от регистра, т.е. одно и то же имя переменной в разном написании считается различным. Например, coal, Coal и COAL – три разные переменные. Кроме того, в таблице ниже приведены слова, которые зарезервированы в языке Lua и не могут быть использованы в качестве имен переменных:

and end in repeat

58

DZǹǮǰǮ

break false local return

do for nil then

else function not true

elseif if or until


ěĜĚĎđĜĖČ ®ĝħĞĚĝĞĔ¯ ģđĜđěČĤĖĔ DzȎȐȎȗ ȝȜȝȞȜȏȡȓȚ ȖȟȝȜșȪȕȜȐȎȠȪ ȝȓȞȓȚȓțțȩȓ Ȗ ȐȩȞȎȔȓțȖȭ Ȑ ȜȏȜșȜȥȘȓ /XD Ȓșȭ ȐȩȥȖȟșȓțȖȭ ȘȜșȖȥȓȟȠȐȎ ȡȑșȭ țȓȜȏȣȜȒȖ ȚȜȑȜ Ȓșȭ ȝȜșțȜȑȜ țȎȝȜșțȓțȖȭ ȥȓȞȓȝȎȦȘȖ ȠȜȝșȖȐȜȚ ȂȡțȘ ȤȖȭ turtle.getFuelLevel() ȐȜȕȐȞȎȧȎȓȠ ȠȓȘȡȧȖȗ ȡȞȜȐȓțȪ ȠȜȝșȖȐȎ Ȏ ȢȡțȘȤȖȭ turtle.getFuelLimit() ² ȚȎȘȟȖȚȎșȪ țȜȓ ȘȜșȖȥȓȟȠȐȜ ȠȜȝșȖȐȎ ȘȜȠȜȞȜȓ ȚȜȔȓȠ ȣȞȎțȖȠȪ ȥȓȞȓȝȎȦ ȘȎ ǰȐȓȒȖ ȟșȓȒȡȬȧȖȓ ȘȜȚȎțȒȩ Ȑ ȜȏȜșȜȥȘȓ /XD: lua> turtle.getFuelLimit() 20000 lua> turtle.getFuelLevel() 968 X lua> spaceLeft = turtle.getFuelLimit() - turtle.get FuelLevel() lua> spaceLeft 19032 Y lua> coalNeeded = spaceLeft / 80 lua> coalNeeded 237.9

ǰȩȞȎȔȓțȖȓ turtle.getFuelLimit() - turtle.getFuelLevel() ȐȩȥȖȟșȭȓȠ ȜȏȨȓȚ ȝȞȜȟȠȞȎțȟȠȐȎ ȜȟȠȎȐȦȓȑȜȟȭ Ȑ ȠȜȝșȖȐțȜȚ ȏȎȘȓ ȥȓȞȓȝȎȦȘȖ Œ. ǵțȎȥȓțȖȓ ȝȜșȡȥȓțțȜȓ Ȑ ȖȠȜȑȓ ȟȜȣȞȎțȭȓȠȟȭ Ȑ ȝȓȞȓȚȓțțȜȗ spaceLeft ǽȜȟȘȜșȪȘȡ ȜȒȖț ȘȡȟȜȘ ȡȑșȭ ȞȎȐȓț ȓȒȖțȖȤȎȚ ȠȜȝșȖȐȎ ȘȜșȖȥȓȟȠȐȜ ȡȑșȭ țȓȜȏȣȜȒȖȚȜȑȜ Ȓșȭ țȎȝȜșțȓțȖȭ ȠȜȝșȖȐțȜȑȜ ȏȎȘȎ ȥȓ ȞȓȝȎȦȘȖ ȚȜȔțȜ ȐȩȥȖȟșȖȠȪ ȝȜ ȢȜȞȚȡșȓ spaceLeft / 80. ǽȜșȡȥȓțțȜȓ ȕțȎȥȓțȖȓ ȟȜȣȞȎțȭȓȠȟȭ Ȑ ȝȓȞȓȚȓțțȜȗ coalNeeded. ǸȎȘ ȐȖȒȖȦȪ ȐȩȕȜȐȩ ȢȡțȘȤȖȗ ȐȩȞȎȔȓțȖȭ Ȗ ȝȓȞȓȚȓț țȩȓ ȚȜȑȡȠ ȏȩȠȪ ȟȘȜȚȏȖțȖȞȜȐȎțȩ Ȑ ȡȒȜȏțȩȗ ȘȜȒ Ȓșȭ ȞȜȏȜȠȎ ȥȓȞȓȝȎȦȘȖ ǸȜȑȒȎ Ƞȩ ȡȕțȎȓȦȪ ȏȜșȪȦȓ ȝȞȖțȤȖȝȜȐ ȝȞȜȑȞȎȚ ȚȖȞȜȐȎțȖȭ ȟȜȕȒȎȐȎȓȚȩȗ ȠȜȏȜȗ ȘȜȒ ȟȠȎțȓȠ ȟȡȧȓȟȠȐȓțțȜ ȟșȜȔțȓȓ

ǼǿǻǼǰȉ ǽǾǼDZǾǮǺǺǶǾǼǰǮǻǶȍ

59


ģĞĚ Ęħ ğēęČėĔ ǰ ȫȠȜȗ ȑșȎȐȓ Ƞȩ ȡȕțȎș ȘȎȘ ȟȜȕȒȎȐȎȠȪ Ȗ ȡȝȞȎȐșȭȠȪ ȥȓȞȓȝȎȦ ȘȎȚȖ ǾȜȏȜȠȖȕȖȞȜȐȎțțȩȓ ȥȓȞȓȝȎȦȘȖ ȟȜȕȒȎȬȠȟȭ ȠȎȘ Ȕȓ ȘȎȘ Ȗ șȬȏȜȗ ȒȞȡȑȜȗ ȝȞȓȒȚȓȠ Ȑ 0LQHFUDIW Ȗ ȚȜȑȡȠ ȏȩȠȪ ȜȟțȎȧȓ țȩ ȠȜșȪȘȜ țȜȐȩȚȖ ȎșȚȎȕțȩȚȖ ȖțȟȠȞȡȚȓțȠȎȚȖ ȅȠȜȏȩ ȒȐȖ ȑȎȠȪȟȭ ȥȓȞȓȝȎȦȘȖ ȝȜȠȞȓȏșȭȬȠ ȠȜȝșȖȐȜ ȠȎȘȜȓ ȘȎȘ ȒȞȓȐȓȟȖ țȎ Ȗ ȡȑȜșȪ ȇȓșȥȘȜȚ ȝȞȎȐȜȗ ȘțȜȝȘȜȗ ȚȩȦȖ ȝȜ ȥȓȞȓȝȎȦȘȓ ȚȜȔțȜ ȜȠȘȞȩȠȪ ȓȓ ȑȞȎȢȖȥȓȟȘȖȗ ȖțȠȓȞȢȓȗȟ Ȑ ȘȜȠȜȞȜȚ ȜȠȜ ȏȞȎȔȎȓȠȟȭ ȖțȐȓțȠȎȞȪ ȥȓȞȓȝȎȦȘȖ Ȗ ȜȏȜșȜȥȘȎ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ǰ ȜȏȜșȜȥȘȓ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ Ƞȩ ȐȐȜȒȖȦȪ ȘȜȚȎțȒȩ Ȗ ȕȎȝȡȟȘȎȓȦȪ ȝȞȜȑȞȎȚȚȩ ȅȓȞȓȝȎȦȘȖ ȡȔȓ ȕțȎȬȠ țȓȘȜȠȜ Ȟȩȓ ȝȞȜȑȞȎȚȚȩ țȎȝȞȖȚȓȞ label dance Ȗ refuel. Ȁȩ ȠȎȘȔȓ țȎȡȥȖșȟȭ ȜȟțȜȐȎȚ ȝȞȜȑȞȎȚȚȖȞȜȐȎțȖȭ țȎ ȭȕȩ Șȓ /XD Ȑ ȜȏȜșȜȥȘȓ /XD ǽȞȜȟȠȓȗȦȖȗ ȠȖȝ ȖțȟȠȞȡȘȤȖȗ Ȑ ȭȕȩ Șȓ /XD ² ȐȩȞȎȔȓțȖȭ ȠȎȘȖȓ ȘȎȘ 2 + 2 ǰȩȞȎȔȓțȖȭ ȟȜȟȠȜȭȠ Ȗȕ ȕțȎȥȓțȖȗ țȎȝȞȖȚȓȞ 2 Ȗ ȜȝȓȞȎȠȜȞȜȐ țȎȝȞȖȚȓȞ + Ȗ Ȑȩ ȥȖȟșȭȬȠȟȭ ȒȜ ȓȒȖțȜȑȜ ȕțȎȥȓțȖȭ ȍȕȩȘ /XD ȠȎȘȔȓ ȐȘșȬȥȎȓȠ Ȑ ȟȓȏȭ ȢȡțȘȤȖȖ ȘȜȠȜȞȩȓ ȚȜȔțȜ ȝȞȓȒȟȠȎȐȖȠȪ ȘȎȘ ȚȖțȖ ȝȞȜȑȞȎȚȚȩ ȐțȡȠȞȖ ȝȞȜȑȞȎȚ Țȩ țȎ ȭȕȩȘȓ /XD ǰȩȕȩȐȎȭ ȫȠȖ ȢȡțȘȤȖȖ ȚȜȔțȜ ȐȩȝȜșțȭȠȪ ȝȞȜȟȠȩȓ ȒȓȗȟȠȐȖȭ țȎȝȞȖȚȓȞ ȝȜȐȜȞȎȥȖȐȎȠȪ ȥȓȞȓȝȎȦȘȡ ȖșȖ ȑȓțȓȞȖȞȜȐȎȠȪ ȟșȡȥȎȗțȩȓ ȥȖȟșȎ ǰȩȕȜȐȩ ȢȡțȘȤȖȗ ȝȞȖȐȜ ȒȭȠ Ș ȐȩȥȖȟșȓțȖȬ ȖșȖ ȐȜȕȐȞȎȠȡ ȕțȎȥȓțȖȗ ǵțȎȥȓțȖȭ ȚȜȑȡȠ ȣȞȎțȖȠȪȟȭ Ȑ ȝȓȞȓȚȓțțȩȣ ȘȜȠȜȞȩȓ Ȑ ȒȎșȪțȓȗȦȓȚ ȚȜȔțȜ ȖȟȝȜșȪȕȜȐȎȠȪ Ȑ ȝȞȜȑȞȎȚȚȓ ȘȜȒ ȝȞȎȘ ȠȖȥȓȟȘȖ Ȑȟȓȣ ȝȞȜȑȞȎȚȚ ȟȜȒȓȞȔȖȠ ȝȓȞȓȚȓțțȩȓ Dzșȭ ȜȏȨȭȐ șȓțȖȭ ȝȓȞȓȚȓțțȩȣ Ȗ ȟȜȣȞȎțȓțȖȭ Ȑ țȖȣ ȕțȎȥȓțȖȗ ȖȟȝȜșȪȕȡ ȓȠȟȭ ȜȝȓȞȎȠȜȞ ȝȞȖȟȐȎȖȐȎțȖȭ = țȎȝȞȖȚȓȞ ȠȎȘ coal = 10. ȃȜȠȭ ȘȜțȤȓȝȤȖȖ ȝȞȜȑȞȎȚȚȖȞȜȐȎțȖȭ Ȝ ȘȜȠȜȞȩȣ Ƞȩ ȡȕ țȎș Ȑ ȫȠȜȗ ȑșȎȐȓ ȚȜȑȡȠ ȝȜȘȎȕȎȠȪȟȭ ȟȘȡȥțȩȚȖ Ȑ ȟȞȎȐțȓțȖȖ ȟ ȘȞȎȢȠȜȚ ȕȎȚȓȥȎȠȓșȪțȩȣ ȞȜȏȜȠȜȐ ȫȠȜ țȓȜȏȣȜȒȖȚȩȓ ȟȠȞȜ ȖȠȓșȪțȩȓ ȏșȜȘȖ ȝȞȜȑȞȎȚȚțȜȑȜ ȜȏȓȟȝȓȥȓțȖȭ ǰ ȑșȎȐȓ Ƞȩ ȐȜȟȝȜșȪȕȡȓȦȪȟȭ ȝȜșȡȥȓțțȩȚȖ ȕțȎțȖȭȚȖ Ȗ țȎȝȖȦȓȦȪ țȎ ȟȠȜȭȧȖȓ ȝȞȜȑȞȎȚȚȩ


3 čđĝđĐħ ĝ ģđĜđěČĤĖĚĕ ǼțȖ ȔȖȐȩȓ ǰ ȑșȎȐȓ Ƞȩ ȟȜȕȒȎș ȟȐȜȓȑȜ ȝȓȞȐȜ ȑȜ ȞȜȏȜȠȎ ȥȓȞȓȝȎȦȘȡ țȎȘȜȞȚȖș ȓȓ Ȗ ȜȔȖȐȖș ȀȐȜȓ ȞȜȏȜȠȜȠȓȣțȖȥȓȟȘȜȓ ȟȜȕȒȎțȖȓ ȚȜȔȓȠ ȝȜ ȣȐȎȟȠȎȠȪȟȭ ȠȓșȜȚ țȜ Ș ȟȜȔȎșȓțȖȬ ȜȏȒȓșȓțȜ ȚȜȕȑȎȚȖ ǺȜȕȑ ȥȓȞȓȝȎȦȘȖ Ȗȕ ȖȑȞȩ 0LQHFUDIW ² ȫȠȜ ȝȞȜȑȞȎȚȚȎ ȘȜȠȜȞȎȭ ȡȘȎȕȩȐȎȓȠ ȥȓȞȓȝȎȦ Șȓ ȥȠȜ ȓȗ ȒȓșȎȠȪ ǯȓȕ ȕȎȝȡȧȓțțȜȗ ȝȞȜȑȞȎȚȚȩ ȠȐȜȗ ȞȜȏȜȠ ȟȠȜȖȠ ȘȎȘ ȖȟȠȡȘȎț DzȎȐȎȗ ȟșȓȑȘȎ ȜȥȓșȜȐȓȥȖȚ ȞȜȏȜȠȎ țȎȝȖȟȎȐ ȝȞȜȑȞȎȚȚȡ ȘȜȠȜȞȎȭ ȝȜȕȐȜșȖȠ țȎȚ ȜȏȧȎȠȪȟȭ ȟ țȖȚ

ğģĔĘ ģđĜđěČĤĖğ ēĐĚĜĚĎČĞĨĝī Ǻȩ ȐȜȟȝȜșȪȕȡȓȚȟȭ ȐȟȠȞȜȓțțȜȗ Ȑ ȥȓȞȓȝȎȦȘȡ ȝȞȜȑȞȎȚȚȜȗ edit ȟ ȝȜȚȜȧȪȬ ȘȜȠȜȞȜȗ ȟȜȕȒȎȒȖȚ țȜȐȩȗ ȢȎȗș Ȗ țȎȝȖȦȓȚ țȎȦȡ ȝȓȞȐȡȬ ȝȞȜȑȞȎȚȚȡ ȀȎȘȖȓ ȝȞȜȑȞȎȚȚȩ ȘȎȘ edit ȘȜ ȠȜȞȡȬ Țȩ ȕȎȝȡȟȠȖȚ Ȓșȭ țȎȝȖȟȎțȖȭ ȒȞȡȑȖȣ ȝȞȜȑȞȎȚȚ țȎ ȕȩȐȎȬȠȟȭ ȠȓȘȟȠȜȐȩȚȖ ȞȓȒȎȘȠȜȞȎȚȖ ȇȓșȘțȖ ȝȞȎȐȜȗ ȘțȜȝ ȘȜȗ ȚȩȦȖ ȝȜ ȥȓȞȓȝȎȦȘȓ ȥȠȜȏȩ ȜȠȘȞȩȠȪ ȓȓ ȑȞȎȢȖȥȓȟȘȖȗ ȖțȠȓȞȢȓȗȟ Ȏ ȕȎȠȓȚ ȐȐȓȒȖ Ȑ ȜȏȜșȜȥȘȓ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ȟșȓȒȡȬȧȡȬ ȘȜȚȎțȒȡ > edit hello

ǯdzǿdzDzȉ ǿ ȅdzǾdzǽǮȆǸǼǷ

61


ǸȎȔȒȩȗ ȞȎȕ ȘȜȑȒȎ Ƞȩ ȣȜȥȓȦȪ ȟȜȕȒȎȠȪ ȖșȖ ȜȠȘȞȩȠȪ ȢȎȗș ȝȞȜȑȞȎȚȚȩ Ƞȓȏȓ țȡȔțȜ țȎȝȖȟȎȠȪ ȘșȬȥȓȐȜȓ ȟșȜȐȜ edit ȕȎ ȘȜȠȜȞȩȚ ȟșȓȒȡȓȠ ȖȚȭ ȢȎȗșȎ ǸȜȒ edit hello ȕȎȝȡȟȘȎȓȠ ȝȞȜȑȞȎȚȚȡ edit Ȗ ȟȜȕȒȎȓȠ Ȏ ȕȎȠȓȚ ȜȠȘȞȩȐȎȓȠ Ȓșȭ ȞȓȒȎȘȠȖ ȞȜȐȎțȖȭ ȢȎȗș ȟ ȖȚȓțȓȚ hello ǰ ȫȠȜȚ ȢȎȗșȓ Țȩ țȎȝȖȦȓȚ ȖțȟȠȞȡȘȤȖȖ țȎȦȓȗ ȝȞȜȑȞȎȚȚȩ ǰȟȓ ȖțȟȠȞȡȘȤȖȖ ȏȡȒȡȠ Ȑȩ ȝȜșțȭȠȪȟȭ ȜȒțȎ ȕȎ ȒȞȡȑȜȗ ȝȜ ȜȥȓȞȓȒȖ ȠȎȘ Ȕȓ ȘȎȘ Ȗ Ȑ ȠȜȚ ȟșȡȥȎȓ ȘȜȑȒȎ Țȩ ȐȐȜȒȖșȖ Ȗȣ Ȑ ȜȏȜșȜȥȘȓ /XD Ȑ ȑșȎȐȓ ǽȞȜ ȑȞȎȚȚȎ hello ȜȠȜȏȞȎȕȖȠ țȎ ȫȘȞȎțȓ ȟșȜȐȎ Hello, world! ² ȠȞȎȒȖȤȖȜțțȜȓ ȝȞȖȐȓȠȟȠȐȖȓ ȝȞȜȑȞȎȚȚȖȟȠȜȐ Ȑȟȓȣ ȟȠȞȎț ǻȓȟȚȜȠȞȭ țȎ ȠȜ ȥȠȜ ȫȘȞȎț ȠȓȘȟȠȜȐȜȑȜ ȞȓȒȎȘȠȜȞȎ ȘȎȔȓȠȟȭ ȘȞȜȣȜȠțȩȚ Ƞȩ ȚȜȔȓȦȪ ȐȐȜȒȖȠȪ ȒșȖțțȩȓ ȖțȟȠȞȡȘȤȖȖ Ȑ ȜȒ țȜȗ ȟȠȞȜȘȓ ȅȠȜȏȩ ȝȓȞȓȚȓȧȎȠȪ ȚȖȑȎȬȧȖȗ ȘȡȞȟȜȞ țȎ ȒȞȡȑȖȓ ȟȠȞȜȘȖ ȖȟȝȜșȪȕȡȗ ȘșȎȐȖȦȖ ȘșȎȐȖȎȠȡȞȩ ȝȓȞȓȥȖȟșȓțțȩȓ Ȑ ȠȎȏș ˃̣̌̍͘ 3.1. ʶ̛̛̣̹̌̏ ̡̛̣̯̱̬̼͕̌̏̌ ̨̛̭̪̣̱̖̥̼̖̽̚ ̏ ̡̨̨̯̖̭̯̥̏ ̡̨̬̖̯̬̖̔̌

ʶ̛̣̹̌̏̌ ̡̛̣̯̱̬̼̌̏̌ ʪ̛̖̜̭̯̖̏

ĸ Ĺ Ļ ɢ ĺ

ʿ̖̬̖̥̖̺̖̯̌ ̡̨̱̬̭̬ ̏ ̛̦̪̬̣̖̦̌̌̏​̛ ̡̛̭̯̬̖̣ ̦̌ ̡̛̣̹̖̌̏

PgUp PgDn

ʿ̖̬̖̥̖̺̖̯̌ ̡̨̱̬̭̬ ̏​̵̖̬̏ ̛̛̣ ̛̦̏̚ ̭̬̱̌̚ ̦̌ ̡̨̡̨̦̖̭̣̽ ̨̡̭̯̬

Backspace

˄̣̖̯̔̌́ ̡̯̖̭̯ ̨̪̭̣̖ ̡̨̱̬̭̬̌

Del

ˁ̛̯̬̖̯̌ ̡̯̖̭̯ ̪̖̬̖̔ ̡̨̨̱̬̭̬̥

Home

ʿ̖̬̖̥̖̺̖̯̌ ̡̨̱̬̭̬ ̡ ̸̦̣̱̌̌ ̨̡̛̭̯̬

End

ʿ̖̬̖̥̖̺̖̯̌ ̡̨̱̬̭̬ ̏ ̶̡̨̦̖ ̨̡̛̭̯̬

Tab

ʤ̸̨̡̛̛̯̥̯̖̭̏̌ ̖̬̹̖̯̌̏̌̚ ̛̦̬̖̥̱̌̍̌̀ ̶̡̛̛̦̭̯̬̱̀

ǶțȟȠȞȡȘȤȖȖ ȝȞȜȑȞȎȚȚȩ țȎȕȩȐȎȬȠȟȭ ȖȟȣȜȒțȩȚ ȘȜȒȜȚ. ǰȐȓȒȖ ȟșȓȒȡȬȧȖȗ ȖȟȣȜȒțȩȗ ȘȜȒ ȝȞȜȑȞȎȚȚȩ hello Ȑ ȞȓȒȎȘ ȠȜȞ ȠȜșȪȘȜ țȓ ȐȐȜȒȖ țȜȚȓȞȎ ȟȠȞȜȘ ȠȜȥȘȖ ȝȜȟșȓ țȖȣ Ȗ ȝȞȜ ȏȓșȩ Ȑ țȎȥȎșȓ ȘȎȔȒȜȗ ȟȠȞȜȘȖ ǻȜȚȓȞȎ ȟȠȞȜȘ ȖȟȝȜșȪȕȡȬȠȟȭ Ȓșȭ ȡȒȜȏȟȠȐȎ ȡȘȎȕȎțȖȭ țȎ ȜȠȒȓșȪțȩȓ ȟȠȞȜȘȖ ȘȜȒȎ ȝȞȖȚȓ ȞȜȐ ȍ ȝȜ ȟȠȞȜȘȎȚ ȜȏȨȭȟțȬ ȘȜȒ Ȑ ȫȠȜȗ ȑșȎȐȓ ȝȜȫȠȜȚȡ țȓ ȏȓȟ ȝȜȘȜȗȟȭ ȓȟșȖ țȓ ȝȜțȖȚȎȓȦȪ ȒȓȗȟȠȐȖȓ ȘȎȔȒȜȗ ȟȠȞȜȘȖ

62

DZǹǮǰǮ


hello 1. print('Hello, world!') 2. print('I am ' .. os.getComputerLabel()) SULQW :KDW LV \RXU QDPH"

4. name = io.read() 5. textutils.slowPrint('Nice to meet you, ' .. name)

ǸȜȑȒȎ Ƞȩ ȕȎȘȜțȥȖȦȪ ȐȐȜȒ ȘȜȒȎ țȎȔȚȖ ȘșȎȐȖȦȡ Ctrl ȥȠȜȏȩ ȜȠȘȞȩȠȪ ȟȠȞȜȘȡ ȚȓțȬ ȟȜȣȞȎțȓțȖȭ ȐȩȣȜȒȎ Ȑ țȖȔțȓȗ ȥȎȟȠȖ ȜȏȜșȜȥȘȖ ǽȞȜȑȞȎȚȚȎ edit ȟ ȜȠȘȞȩȠȩȚ ȚȓțȬ ȏȡȒȓȠ ȐȩȑșȭȒȓȠȪ ȠȎȘ ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ

ˀ̛̭͘ 3.1. ʶ̨̔ ̨̪̬̬̥̐̌​̥̼ hello͕ ̦̬̦̌̍̌​̦̼̜ ̏ ̡̨̬̖̯̬̖̔̌

ǸȜȚȎțȒȎ [Save] ȜȘȞȡȔȓțȎ ȟȘȜȏȘȎȚȖ ȒȓȚȜțȟȠȞȖȞȡȭ ȥȠȜ ȐȩȒȓșȓțȎ ǻȎȔȚȖ ȘșȎȐȖȦȡ Enter ȥȠȜȏȩ ȟȜȣȞȎțȖȠȪ ȢȎȗș hello Ȑ ȥȓȞȓȝȎȦȘȓ ǽȜȕȒțȓȓ Ƞȩ ȚȜȔȓȦȪ ȜȠȘȞȩȠȪ Ȗȕ ȚȓțȖȠȪ Ȗ ȕȎȝȡȟȠȖȠȪ ȝȞȜȑȞȎȚȚȡ hello ȀȓȝȓȞȪ ȟțȜȐȎ țȎȔ ȚȖ ȘșȎȐȖȦȡ Ctrl ȥȠȜȏȩ ȐțȜȐȪ ȜȠȘȞȩȠȪ ȚȓțȬ ȟȜȣȞȎțȓțȖȭ ȐȩȣȜȒȎ ǻȎȔȚȖ ȘșȎȐȖȦȡ ń ȥȠȜȏȩ ȐȩȒȓșȖȠȪ ȝȡțȘȠ [Exit] Ȏ ȕȎȠȓȚ țȎȔȚȖ ȘșȎȐȖȦȡ Enter ȥȠȜȏȩ ȕȎȘȞȩȠȪ ȢȎȗș Ȗ ȠȓȘȟȠȜȐȩȗ ȞȓȒȎȘȠȜȞ Ȗ ȐȓȞțȡȠȪȟȭ Ș ȜȏȜșȜȥȘȓ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ

ǯdzǿdzDzȉ ǿ ȅdzǾdzǽǮȆǸǼǷ

63


ēČěğĝĖ ěĜĚďĜČĘĘħ 0-447 ǰ ȜȏȜșȜȥȘȓ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ Ƞȩ ȚȜȔȓȦȪ ȕȎȝȡȟȠȖȠȪ ȝȞȜ ȑȞȎȚȚȡ hello ȠȜȥțȜ ȠȎȘ Ȕȓ ȘȎȘ Ƞȩ ȕȎȝȡȟȘȎș ȝȞȜȑȞȎȚȚȩ label dance Ȗ refuel ǽȞȜȟȠȜ ȐȐȓȒȖ ȟșȜȐȜ hello Ȑ ȜȏȜșȜȥ Șȓ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ Ȗ țȎȔȚȖ ȘșȎȐȖȦȡ Enter: > hello Hello, world! I am Sofonisba What is your name"

ĘĚī ěĜĚďĜČĘĘČ ęđ ĜČčĚĞČđĞ

Если при запуске программы у тебя возникла ошибка hello:1: attempt to concatenate string and nil, ты не назначил своей черепашке имя с помощью команды label. В строке оболочки после приглашения > выполни команду label set Sofonisba, чтобы твоя черепашка откликалась на имя Sofonisba. (Ты также можешь использовать любое другое имя на латинице.)

ȅȓȞȓȝȎȦȘȎ ȝȜȝȞȖȐȓȠȟȠȐȡȓȠ ȐȓȟȪ ȚȖȞ ȝȞȓȒȟȠȎȐȖȠȟȭ Ȗ ȟȝȞȜȟȖȠ ȘȎȘ Ƞȓȏȭ ȕȜȐȡȠ ǽȜȟșȓ ȐȐȜȒȎ ȖȚȓțȖ țȎ ȎțȑșȖȗȟȘȜȚ ȭȕȩȘȓ țȎȝȞȖȚȓȞ Vasya ȝȞȜȑȞȎȚȚȎ ȏȡȒȓȠ ȐȩȑșȭȒȓȠȪ ȠȎȘ > hello Hello, world! I am Sofonisba :KDW LV \RXU QDPH" Vasya Nice to meet you, Vasya

ǸȜȑȒȎ ȝȞȜȑȞȎȚȚȎ ȕȎȐȓȞȦȖȠȟȭ ȜȏȜșȜȥȘȎ ȐțȜȐȪ ȜȠȜȏȞȎȕȖȠ ȝȞȖȑșȎȦȓțȖȓ > Ȑ ȜȔȖȒȎțȖȖ ȕȎȝȡȟȘȎ țȜȐȜȗ ȝȞȜȑȞȎȚȚȩ ǽȞȜȑȞȎȚȚțȜȓ ȜȏȓȟȝȓȥȓțȖȓ ȘȜȠȜȞȜȓ ȕȎȝȡȟȘȎȓȠ ȝȞȜ ȑȞȎȚȚȩ țȎ ȭȕȩȘȓ ȝȞȜȑȞȎȚȚȖȞȜȐȎțȖȭ /XD țȎȕȩȐȎȓȠȟȭ ȖțȠȓȞȝȞȓȠȎȠȜȞȜȚ Lua ȍ ȝȖȦȡ ȟȜȘȞȎȧȓțțȜ ȏȓȕ ȟșȜȐȎ ©Ȗț ȠȓȞȝȞȓȠȎȠȜȞª ȝȞȜȟȠȜ /XD ȟȟȩșȎȭȟȪ ȘȎȘ țȎ ȭȕȩȘ ȝȞȜȑȞȎȚ

64

DZǹǮǰǮ


ȚȖȞȜȐȎțȖȭ ȠȎȘ Ȗ țȎ ȝȞȜȑȞȎȚȚțȜȓ ȜȏȓȟȝȓȥȓțȖȓ ȘȜȠȜȞȜȓ ȕȎ ȝȡȟȘȎȓȠ ȘȜȒ țȎȝȖȟȎțțȩȗ țȎ ȫȠȜȚ ȭȕȩȘȓ ǽȜȕȖȤȖȭ Ȑ ȘȜȒȓ ȑȒȓ Ȑ țȎȟȠȜȭȧȓȓ ȐȞȓȚȭ ȖțȠȓȞȝȞȓȠȎȠȜȞ /XD ȐȩȝȜșțȭȓȠ Ȗț ȟȠȞȡȘȤȖȖ țȎȕȩȐȎȓȠȟȭ ȖȟȝȜșțȓțȖȓȚ ǼțȜ ȐȟȓȑȒȎ țȎȥȖțȎȓȠ ȟȭ ȟ ȝȓȞȐȜȗ ȟȠȞȜȘȖ ȝȞȜȑȞȎȚȚȩ DZȜȐȜȞȭȠ ȥȠȜ ȖțȠȓȞȝȞȓȠȎȠȜȞ ȖȟȝȜșțȭȓȠ ȖșȖ ȐȩȝȜșțȭȓȠ ȖțȟȠȞȡȘȤȖȬ Ȑ ȟȠȞȜȘȓ ǵȎȠȓȚ Ȝț ȝȓȞȓȚȓȧȎȓȠȟȭ țȖȔȓ Ȗ ȖȟȝȜșțȭȓȠ ȟșȓȒȡȬȧȡȬ ȘȜȚȎțȒȡ ȖșȖ ȟȠȞȜȘȡ ȖȟȣȜȒțȜȑȜ ȘȜȒȎ ǽȜȟȚȜȠȞȖ țȎ ȐȩȐȓȒȓțțȩȗ țȎ ȫȘȞȎț ȝȞȜȑȞȎȚȚȜȗ ȠȓȘȟȠ Ȏ ȕȎȠȓȚ ȐȕȑșȭțȖ țȎ ȖȟȣȜȒțȩȗ ȘȜȒ ȝȞȜȑȞȎȚȚȩ hello ǽȞȓȔȒȓ ȥȓȚ ȭ ȜȏȨȭȟțȬ ȘȎȘ ȜțȎ ȞȎȏȜȠȎȓȠ ȝȜȝȞȜȏȡȗ ȟȎȚȜȟȠȜȭȠȓșȪțȜ ȐȩȭȟțȖȠȪ ȥȠȜ ȒȓșȎȓȠ ȘȎȔȒȎȭ ȟȠȞȜȘȎ ȘȜȒȎ ǽȜȝȞȜȏȡȗ ȖȕȚȓ țȖȠȪ ȟȠȞȜȘȡ print('Hello, world!') țȎ print('Privet!'). ǵȎȠȓȚ ȟȜȣȞȎțȖ ȝȞȜȑȞȎȚȚȡ ȐȩȗȒȖ Ȗȕ ȞȓȒȎȘȠȜȞȎ Ȗ ȟțȜȐȎ ȕȎ ȝȡȟȠȖ ȝȞȜȑȞȎȚȚȡ hello ȥȠȜȏȩ ȡȕțȎȠȪ ȥȠȜ ȖȕȚȓțȖșȜȟȪ ȋȠȜ ȐȓȞțȩȓ ȦȎȑȖ țȎ ȝȡȠȖ Ș ȠȜȚȡ ȥȠȜȏȩ ȟȠȎȠȪ ȘȞȡȠȩȚ ȝȞȜȑȞȎȚ ȚȖȟȠȜȚ ȡȑȎȒȎȗ ȥȠȜ ȒȓșȎȓȠ ȘȜȒ ȜȝȞȓȒȓșȖ ȝȞȎȐȖșȪțȜȟȠȪ ȟȐȜȓȑȜ ȝȞȓȒȝȜșȜȔȓțȖȭ ȐȩȭȟțȖ ȝȜȥȓȚȡ ȠȐȜȭ ȒȜȑȎȒȘȎ țȓ ȐȓȞțȎ ȓȟșȖ ȫȠȜ ȠȎȘ Ȗ ȝȜȫȘȟȝȓȞȖȚȓțȠȖȞȡȗ ȟ ȘȜȒȜȚ ȥȠȜȏȩ ȡȕțȎȠȪ ȥȠȜ ȚȓțȭȓȠȟȭ

ěĜĚĝĘĚĞĜ ĝěĔĝĖČ ĠČĕėĚĎ ĝ ěĚĘĚĥĨĪ ĖĚĘČęĐħ 4; dzȟșȖ Ƞȩ ȕȎȏȩș ȘȎȘȖȓ ȢȎȗșȩ ȣȞȎțȭȠȟȭ Ȑ ȥȓȞȓȝȎȦȘȓ Ƞȩ ȚȜ ȔȓȦȪ ȐȩȝȜșțȖȠȪ ȘȜȚȎțȒȡ ls ȖșȖ list ȜȏȞȎȠȖ ȐțȖȚȎțȖȓ ȥȠȜ ȫȠȜ ȟȠȞȜȥțȎȭ ȏȡȘȐȎ l Ȏ țȓ ȓȒȖțȖȥȘȎ 1 ȥȠȜȏȩ ȐȩȐȓȟȠȖ Ȗȣ ȖȚȓțȎ Ȑ ȐȖȒȓ ȟȝȖȟȘȎ ǰ ȜȏȜșȜȥȘȓ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ȐȐȓ ȒȖ ȟșȓȒȡȬȧȡȬ ȘȜȚȎțȒȡ > ls rom hello

ǸȜȚȎțȒȎ ls ȐȩȐȜȒȖȠ ȟȝȖȟȜȘ ȢȎȗșȜȐ Ȑ ȠȜȚ ȥȖȟșȓ ȝȞȜ ȑȞȎȚȚ Ȗ ȝȎȝȜȘ ȘȜȠȜȞȩȓ ȟȜȒȓȞȔȎȠ ȒȞȡȑȖȓ ȢȎȗșȩ ǰ ȝȎȝȘȓ rom ȟȜȣȞȎțȓțȩ ȞȎȕțȩȓ ȢȎȗșȩ ȘȜȠȜȞȩȓ ȝȞȓȒȡȟȠȎțȜȐșȓțȩ Ȑ ȝȎȚȭȠȖ ȥȓȞȓȝȎȦȘȖ țȜ Țȩ țȓ ȏȡȒȓȚ ȖȟȝȜșȪȕȜȐȎȠȪ Ȗȣ Ȑ ȫȠȜȗ ȘțȖȑȓ

ǯdzǿdzDzȉ ǿ ȅdzǾdzǽǮȆǸǼǷ

65


ĎħĎĚĐ ĞđĖĝĞČ ĝ ěĚĘĚĥĨĪ ĠğęĖĢĔĔ 8:16< DzȎȐȎȗ ȞȎȟȟȚȜȠȞȖȚ ȝȞȜȑȞȎȚȚȡ hello ȖȕȡȥȖȐ ȘȎȔȒȡȬ ȟȠȞȜȘȡ ǽȓȞȐȎȭ ȟȠȞȜȘȎ ȐȩȑșȭȒȖȠ ȟșȓȒȡȬȧȖȚ ȜȏȞȎȕȜȚ hello 1. print('Hello, world!')

ȋȠȎ ȟȠȞȜȘȎ ȝȞȓȒȟȠȎȐșȭȓȠ ȟȜȏȜȗ ȐȩȕȜȐ ȢȡțȘȤȖȖ print() ȘȜȠȜȞȎȭ ȐȩȐȜȒȖȠ țȎ ȫȘȞȎț ȠȓȘȟȠ Hello, world! Ȁȩ ȚȜ ȔȓȦȪ ȝȜȫȘȟȝȓȞȖȚȓțȠȖȞȜȐȎȠȪ ȟ ȢȡțȘȤȖȓȗ print() Ȑ ȜȏȜ șȜȥȘȓ /XD ǵȎȝȡȟȠȖ ȝȞȜȑȞȎȚȚȡ lua Ȗ ȐȐȓȒȖ ȟșȓȒȡȬȧȡȬ ȘȜȚȎțȒȡ lua> print('Hello, world!') Hello, world! 1

ǸȜȑȒȎ Ƞȓȏȓ țȡȔțȜ ȜȝȞȓȒȓșȖȠȪ ȥȠȜ ȒȓșȎȓȠ ȠȜȠ ȖșȖ ȖțȜȗ ȢȞȎȑȚȓțȠ ȘȜȒȎ Ƞȩ ȚȜȔȓȦȪ ȐȐȓȟȠȖ ȓȑȜ Ȓșȭ ȝȞȜȐȓȞȘȖ Ȑ ȜȏȜ șȜȥȘȡ /XD ǸȎȘ ȐȖȒȖȦȪ ȢȡțȘȤȖȭ print() ȕȎțȖȚȎȓȠȟȭ Ȑȩ ȐȜȒȜȚ ȠȓȘȟȠȎ țȎ ȫȘȞȎț 1 Ȑ ȘȜțȤȓ ² ȫȠȜ ȐȜȕȐȞȎȧȎȓȚȜȓ ȕțȎ ȥȓțȖȓ ȢȡțȘȤȖȖ print() ȟȜȜȏȧȎȬȧȓȓ Ȝ ȘȜșȖȥȓȟȠȐȓ ȟȠȞȜȘ ȠȓȘȟȠȎ ȘȜȠȜȞȩȓ ȏȩșȖ ȜȠȜȏȞȎȔȓțȩ 1 țȓ ȏȡȒȓȠ ȜȠȜȏȞȎȔȎȠȪ ȟȭ ȝȞȖ ȐȩȕȜȐȓ ȢȡțȘȤȖȖ print() Ȑ ȝȞȜȑȞȎȚȚȓ ȝȜȒȜȏțȜȗ hello ȋȠȜ ȕțȎȥȓțȖȓ ȜȠȜȏȞȎȔȎȓȠȟȭ ȠȜșȪȘȜ ȕȒȓȟȪ ȝȜȠȜȚȡ ȥȠȜ ȜȏȜșȜȥȘȎ /XD ȐȩȐȜȒȖȠ ȐȜȕȐȞȎȧȎȓȚȩȓ ȕțȎȥȓțȖȭ Ȑȟȓȣ ȢȡțȘȤȖȗ ǰȟȝȜȚțȖ Ȑ ȑșȎȐȓ Țȩ ȑȜȐȜȞȖșȖ Ȝ ȠȜȚ ȥȠȜ ȢȡțȘȤȖȭ math.random() ȝȞȖ ȐȩȕȜȐȓ ȝȞȖțȖȚȎȓȠ ȒȐȎ ȕțȎȥȓțȖȭ Ȑțȡ ȠȞȖ ȘȞȡȑșȩȣ ȟȘȜȏȜȘ ȋȠȖ ȎȞȑȡȚȓțȠȩ ȟȜȜȏȧȎȬȠ ȢȡțȘȤȖȖ ȒȖ ȎȝȎȕȜț ȟșȡȥȎȗțȩȣ ȥȖȟȓș ȜȒțȜ Ȗȕ ȘȜȠȜȞȩȣ ȢȡțȘȤȖȭ ȒȜșȔ țȎ ȐȓȞțȡȠȪ ȂȡțȘȤȖȭ print() ȠȎȘȔȓ ȝȞȖțȖȚȎȓȠ ȎȞȑȡȚȓțȠ ȘȜȠȜȞȩȗ Ȑ ȫȠȜȚ ȟșȡȥȎȓ ȭȐșȭȓȠȟȭ ȠȓȘȟȠȜȚ 'Hello, world!'. ȀȎȘȖȓ ȠȓȘȟȠȜȐȩȓ ȕțȎȥȓțȖȭ țȎȕȩȐȎȬȠȟȭ ȟȠȞȜȘȜȐȩȚȖ ȖșȖ ȝȞȜȟȠȜ ȟȠȞȜȘȎȚȖ Ȝ ȥȓȚ Țȩ ȝȜȑȜȐȜȞȖȚ ȒȎșȓȓ

66

DZǹǮǰǮ


ĝĞĜĚĖĔ Ȁȩ ȡȔȓ ȖȟȝȜșȪȕȜȐȎș Ȑ ȟȐȜȖȣ ȝȞȜȑȞȎȚȚȎȣ ȥȖȟșȜȐȩȓ ȕțȎȥȓ țȖȭ țȎȝȞȖȚȓȞ 2 Ȗ 10 țȜ ȠȎȘȔȓ Ƞȓȏȓ ȝȜțȎȒȜȏȖȠȟȭ ȖȟȝȜșȪȕȜ ȐȎȠȪ Ȗ ȏȡȘȐȩ ǿȠȞȜȘȎ ² ȫȠȜ ȠȖȝ ȕțȎȥȓțȖȭ ȘȜȠȜȞȩȗ ȟȜȒȓȞȔȖȠ ȠȓȘȟȠ ȐȚȓȟȠȜ ȤȖȢȞ ǽȜȒȜȏțȜ ȥȖȟșȜȐȩȚ ȕțȎȥȓțȖȭȚ ȟȠȞȜȘȖ ȚȜȑȡȠ ȣȞȎțȖȠȪȟȭ Ȑ ȝȓȞȓȚȓțțȩȣ Ȗ ȖȟȝȜșȪȕȜȐȎȠȪȟȭ Ȑ ȐȩȞȎ ȔȓțȖȭȣ ǿȠȞȜȘȖ Ȗ ȥȖȟșȎ ² ȫȠȜ ȠȖȝȩ ȒȎțțȩȣ ȫȠȖȣ ȕțȎȥȓțȖȗ Ȁȩ ȡȕțȎȓȦȪ Ȝ ȒȞȡȑȖȣ ȠȖȝȎȣ ȒȎțțȩȣ țȎȝȞȖȚȓȞ șȜȑȖȥȓȟȘȖȣ Ȗ nil Ȑ ȑșȎȐȓ ǽȜȟȘȜșȪȘȡ ȟȠȞȜȘȖ ȟȜȟȠȜȭȠ Ȗȕ ȏȡȘȐ ȘȜȠȜȞȩȓ ȚȜȑȡȠ ȏȩȠȪ ȝȜȣȜȔȖ țȎ ȘȜȚȎțȒȩ ȭȕȩȘȎ /XD ȖțȠȓȞȝȞȓȠȎȠȜȞ /XD ȒȜșȔȓț ȕțȎȠȪ ȘȜȑȒȎ țȎȥȖțȎȓȠȟȭ Ȗ ȕȎȘȎțȥȖȐȎȓȠȟȭ ȟȠȞȜȘȜȐȜȓ ȕțȎȥȓ țȖȓ ȥȠȜȏȩ țȓ ȝȡȠȎȠȪ ȓȑȜ ȟ ȖȟȝȜșțȭȓȚȩȚ ȘȜȒȜȚ țȎ ȭȕȩȘȓ /XD ǿȠȞȜȘȖ țȎȥȖțȎȬȠȟȭ Ȗ ȕȎȘȎțȥȖȐȎȬȠȟȭ ȜȒȖțȎȞțȜȗ ȘȎ ȐȩȥȘȜȗ ' ȘȎȘ Țȩ ȫȠȜ ȝȖȟȎșȖ Ȑ ȕțȎȥȓțȖȖ 'Hello, world!'. ǼȒȖțȜȥțȎȭ ȘȎȐȩȥȘȎ țȓ ȭȐșȭȓȠȟȭ ȥȎȟȠȪȬ ȠȓȘȟȠȎ ȜțȎ ȝȞȜȟȠȜ ȜȠȚȓȥȎȓȠ ȑȒȓ ȟȠȞȜȘȎ țȎȥȖțȎȓȠȟȭ Ȗ ȕȎȘȎțȥȖȐȎȓȠȟȭ Ȑ ȖȟȣȜȒ țȜȚ ȘȜȒȓ Ȁȩ ȠȎȘȔȓ ȚȜȔȓȦȪ ȖȟȝȜșȪȕȜȐȎȠȪ Ȗ ȒȐȜȗțȩȓ ȘȎ ȐȩȥȘȖ " țȎȝȞȖȚȓȞ ȠȎȘ "Hello, world!". ǺȜȔțȜ ȖȟȝȜșȪȕȜȐȎȠȪ ȝȡȟȠȜȓ ȟȠȞȜȘȜȐȜȓ ȕțȎȥȓțȖȓ ȏȓȕ ȘȎ ȘȜȑȜ șȖȏȜ ȠȓȘȟȠȎ ȚȓȔȒȡ ȒȐȡȚȭ ȘȎȐȩȥȘȎȚȖ ȠȎȘ '' ȖșȖ ȠȎȘ "" ȀȎȘȜȓ ȕțȎȥȓțȖȓ țȎȕȩȐȎȓȠȟȭ ȝȡȟȠȜȗ ȟȠȞȜȘȜȗ.

ĝĚđĐĔęđęĔđ ĝĞĜĚĖ ĝ ěĚĘĚĥĨĪ ĖĚęĖČĞđęČĢĔĔ DzȎȐȎȗ ȐȕȑșȭțȓȚ țȎ ȟȠȞȜȘȡ Ȑ ȖȟȣȜȒțȜȚ ȘȜȒȓ ȝȞȜȑȞȎȚȚȩ hello: hello 2. print('I am ' .. os.getComputerLabel())

ǿȠȞȜȘȎ ȟȜȒȓȞȔȖȠ ȐȩȕȜȐ ȢȡțȘȤȖȖ print() țȜ ȕțȎȥȓțȖȓ ȘȜȠȜȞȜȓ Țȩ ȝȓȞȓȒȎȓȚ ȢȡțȘȤȖȖ print() ȐȘșȬȥȎȓȠ țȓȘȜȠȜ Ȟȩȗ țȓȕțȎȘȜȚȩȗ ȘȜȒ țȎ ȭȕȩȘȓ /XD ǿȖȚȐȜșȩ .. țȎȕȩȐȎ ȬȠȟȭ ȜȝȓȞȎȠȜȞȜȚ ȘȜțȘȎȠȓțȎȤȖȖ ȟȠȞȜȘ Ǽț ȐȓȒȓȠ ȟȓȏȭ ȘȎȘ ȜȝȓȞȎȠȜȞ ȟșȜȔȓțȖȭ + Ȓșȭ ȥȖȟȓș ȠȜșȪȘȜ ȝȞȓȒțȎȕțȎȥȓț Ȓșȭ

ǯdzǿdzDzȉ ǿ ȅdzǾdzǽǮȆǸǼǷ

67


ȟȠȞȜȘ ǸȎȘ ȜȝȓȞȎȠȜȞ + ȚȜȔȓȠ ȟșȜȔȖȠȪ ȒȐȎ ȥȖȟșȎ ȐȚȓȟȠȓ Ȑ țȜȐȜȓ ȥȖȟșȜ ȜȝȓȞȎȠȜȞ .. ȚȜȔȓȠ ȘȜțȘȎȠȓțȖȞȜȐȎȠȪ ȖșȖ ȜȏȨ ȓȒȖțȖȠȪ ȒȐȎ ȟȠȞȜȘȜȐȩȣ ȕțȎȥȓțȖȭ Ȑ ȜȒțȡ ȟȠȞȜȘȡ ǰȐȓȒȖ Ȑ ȜȏȜșȜȥȘȡ /XD ȟșȓȒȡȬȧȡȬ ȘȜȚȎțȒȡ lua> 'Hello,' .. 'world!' Hello,world!

ȋȠȎ ȟȠȞȜȘȎ ȘȜȒȎ ȭȐșȭȓȠȟȭ ȐȩȞȎȔȓțȖȓȚ ȠȎȘ Ȕȓ ȘȎȘ 2 + 2. 'Hello,' Ȗ 'world!' ² ȕțȎȥȓțȖȭ Ȏ .. ² ȜȝȓȞȎȠȜȞ ǸȎȘ Ȗ Ȑȟȓ ȐȩȞȎȔȓțȖȭ 'Hello,' .. 'world!' ȐȩȥȖȟșȭȓȠȟȭ Ȑ ȜȒțȜ ȕțȎȥȓțȖȓ ȘȜȠȜȞȜȓ Ȑ ȫȠȜȚ ȟșȡȥȎȓ ȟȠȎțȜȐȖȠȟȭ ȟȠȞȜȘȜȗ Hello,world!. ǶțȠȓȞȝȞȓȠȎȠȜȞ /XD țȓ ȒȜȏȎȐșȭȓȠ ȝȞȜȏȓșȩ ȘȜȑȒȎ Ƞȩ ȘȜțȘȎȠȓțȖȞȡȓȦȪ ȟȠȞȜȘȖ ǽȜȟȘȜșȪȘȡ țȖ ȜȒțȎ Ȗȕ ȒȐȡȣ ȟȠȞȜȘ Ȑ țȎȦȓȚ ȝȞȖȚȓȞȓ țȓ ȟȜȒȓȞȔȖȠ ȝȞȜȏȓș ȚȓȔȒȡ ȟșȜȐȎȚȖ Ȑ Ȟȓ ȕȡșȪȠȖȞȡȬȧȓȗ ȟȠȞȜȘȓ ȠȜȔȓ țȓȠ ȝȞȜȏȓșȎ dzȟșȖ Ƞȓȏȓ țȡȔțȜ ȡȘȎȕȎȠȪ ȝȞȜȏȓș ȚȓȔȒȡ ȟșȜȐȎȚȖ Ȑ ȠȐȜȓȚ ȠȓȘȟȠȓ Ƞȩ ȒȜșȔȓț ȒȜȏȎȐȖȠȪ ȓȑȜ Ș ȜȒțȜȚȡ Ȗȕ ȟȠȞȜȘȜȐȩȣ ȕțȎȥȓțȖȗ ǻȎȝȞȖȚȓȞ ȠȎȘ 'Hello, ' .. 'world!' ȖșȖ ȠȎȘ 'Hello,' .. ' world!' ȥȠȜȏȩ Ȑ ȞȓȕȡșȪȠȎȠȓ ȝȜșȡȥȖȠȪ Hello, world!. ǰ ȟȠȞȜȘȓ ȝȞȜȑȞȎȚȚȩ ȘȜțȘȎȠȓțȖȞȡȬȠȟȭ ȒȐȓ ȟȠȞȜ ȘȖ ȜȒțȎ Ȗȕ ȘȜȠȜȞȩȣ ȟȜȒȓȞȔȖȠ ȕțȎȥȓțȖȓ 'I a m ' Ȏ ȐȠȜ ȞȎȭ ² ȕțȎȥȓțȖȓ ȐȜȕȐȞȎȧȎȓȚȜȓ țȜȐȜȗ ȢȡțȘȤȖȓȗ ȟ ȖȚȓțȓȚ os.getComputerLabel() ȍ ȞȎȟȟȘȎȔȡ ȘȎȘ ȞȎȏȜȠȎȓȠ ȫȠȎ ȢȡțȘȤȖȭ Ȑ ȟșȓȒȡȬȧȓȚ ȞȎȕȒȓșȓ

ĔēĎėđģđęĔđ ĔĘđę ģđĜđěČĤđĖ ǰ ȑșȎȐȓ Ƞȩ țȎȡȥȖșȟȭ ȝȞȖȟȐȎȖȐȎȠȪ ȥȓȞȓȝȎȦȘȎȚ ȖȚȓțȎ ȖȟȝȜșȪȕȡȭ ȝȞȜȑȞȎȚȚȡ label ȀȐȜȖ ȝȞȜȑȞȎȚȚȩ ȚȜȑȡȠ Ȗȕ ȐșȓȘȎȠȪ ȫȠȖ ȖȚȓțȎ Ȑ ȐȖȒȓ ȟȠȞȜȘȜȐȩȣ ȕțȎȥȓțȖȗ ȟ ȝȜȚȜȧȪȬ ȢȡțȘȤȖȖ os.getComputerLabel() ǰȩȕȜȐȩ ȢȡțȘȤȖȖ ȚȜ ȑȡȠ ȏȩȠȪ ȥȎȟȠȪȬ ȐȩȞȎȔȓțȖȭ ȠȜȥțȜ ȠȎȘ Ȕȓ ȘȎȘ Ȗ ȕțȎȥȓ țȖȭ ȝȜȠȜȚȡ ȥȠȜ ȐȩȕȜȐ ȢȡțȘȤȖȖ ȝȞȖȐȜȒȖȠ Ș ȐȩȥȖȟșȓțȖȬ ȐȜȕȐȞȎȧȎȓȚȜȑȜ ȓȬ ȕțȎȥȓțȖȭ ǰȐȓȒȖ ȟșȓȒȡȬȧȖȓ ȘȜȚȎțȒȩ Ȑ ȜȏȜșȜȥȘȡ /XD ȥȠȜȏȩ ȞȎȕȜȏȞȎȠȪȟȭ ȘȎȘ ȞȎȏȜȠȎȓȠ ȢȡțȘȤȖȭ os.getComputerLabel():

68

DZǹǮǰǮ


lua> os.getComputerLabel() Sofonisba lua> turtleName = os.getComputerLabel() lua> print(turtleName) Sofonisba 1

ǰȩȕȜȐ ȢȡțȘȤȖȖ ȝȞȖȐȜȒȖȠ Ș ȐȩȥȖȟșȓțȖȬ ȟȠȞȜȘȜȐȜȑȜ ȕțȎȥȓțȖȭ Ȑ ȐȖȒȓ ȖȚȓțȖ ȥȓȞȓȝȎȦȘȖ ȝȜȫȠȜȚȡ ȘȜȚȎțȒȎ turtleName = os.getComputerLabel() ȝȞȖȐȜȒȖȠ Ș ȠȜȚȡ Ȕȓ ȞȓȕȡșȪȠȎȠȡ ȥȠȜ Ȗ turtleName = ‚Sofonisba'. dzȧȓ ȞȎȕ ȐȕȑșȭțȖ țȎ ȟȠȞȜȘȡ Ȑ ȝȞȜȑȞȎȚȚȓ hello: hello 2. print('I am ' .. os.getComputerLabel())

ǰȩȞȎȔȓțȖȓ 'I am ' .. os.getComputerLabel() ȘȜțȘȎ ȠȓțȖȞȡȓȠ ȖȚȭ ȥȓȞȓȝȎȦȘȖ ȟȜ ȟȠȞȜȘȜȗ 'I am ' ȥȠȜȏȩ ȝȜșȡ ȥȖȠȪ ȜȒțȡ ȟȠȞȜȘȡ ȋȠȎ ȓȒȖțȎȭ ȟȠȞȜȘȎ ȝȓȞȓȒȎȓȠȟȭ ȢȡțȘȤȖȖ print() ȝȜȫȠȜȚȡ ȝȞȖ ȕȎȝȡȟȘȓ ȝȞȜȑȞȎȚȚȩ țȎ ȫȘȞȎțȓ ȝȜȭȐșȭ ȓȠȟȭ ȠȓȘȟȠ I am Sofonisba ǿȠȞȜȘȎ ² ȫȠȜ ȝȞȜȟȠȜ ȐȩȞȎ ȔȓțȖȓ ȘȜȠȜȞȜȓ ȐȩȥȖȟșȭȓȠȟȭ Ȑ ȜȒțȜ ȕțȎȥȓțȖȓ ȘȎȘ ȝȜȘȎȕȎțȜ țȖȔȓ print('I am ' .. os.getComputerLabel())

print('I am ' .. 'Sofonisba') print('I am Sofonisba') 1

ǽȜȚțȖ ȥȠȜ ȢȡțȘȤȖȭ print() ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ ȘȜ șȖȥȓȟȠȐȎ ȜȠȜȏȞȎȔȓțțȩȣ ȟȠȞȜȘ ȝȜȫȠȜȚȡ ȜțȜ ȞȎȐțȜ 1 ǿȠȞȜ ȘȜȐȜȓ ȕțȎȥȓțȖȓ ȘȜȠȜȞȜȓ ȐȩȐȜȒȖȠ ȢȡțȘȤȖȭ print() țȓ ȭȐ șȭȓȠȟȭ ȓȑȜ ȐȜȕȐȞȎȧȎȓȚȩȚ ȕțȎȥȓțȖȓȚ

ǯdzǿdzDzȉ ǿ ȅdzǾdzǽǮȆǸǼǷ

69


ĚčĜČčĚĞĖČ ĎĎĚĐČ ĝ ĖėČĎĔČĞğĜħ ěĜĔ ěĚĘĚĥĔ ĠğęĖĢĔĔ 17 :-), ȼɡɝɥɹɧɢ ɧɚ ɫɬɪɨɤɢ ɢ ɜ ɩɪɨɝɪɚɦɦɟ hello hello SULQW :KDW LV \RXU QDPH"

4. name = io.read()

ǿȠȞȜȘȎ ȟȜȒȓȞȔȖȠ ȓȧȓ ȜȒȖț ȐȩȕȜȐ ȢȡțȘȤȖȖ print(). Ǯ Ȑ ȟȠȞȜȘȓ ȖȟȝȜșȪȕȡȓȠȟȭ țȜȐȎȭ ȢȡțȘȤȖȭ ² io.read(). ǽȞȖ ȐȩȕȜȐȓ ȢȡțȘȤȖȭ io.read() ȝȞȖȜȟȠȎțȎȐșȖȐȎȓȠ Ȗȟ ȝȜșțȓțȖȓ ȝȞȜȑȞȎȚȚȩ ȜȔȖȒȎȭ ȝȜȘȎ ȝȜșȪȕȜȐȎȠȓșȪ țȓ țȎȏȓ ȞȓȠ ȥȠȜ șȖȏȜ țȎ ȘșȎȐȖȎȠȡȞȓ Ȗ țȓ țȎȔȚȓȠ ȘșȎȐȖȦȡ Enter. ǰȐȓȒȓțțȩȗ ȝȜșȪȕȜȐȎȠȓșȓȚ ȠȓȘȟȠ ȐȜȕȐȞȎȧȎȓȠȟȭ Ȗȕ ȢȡțȘȤȖȖ io.read() Ȑ ȐȖȒȓ ȟȠȞȜȘȖ ȘȜȠȜȞȎȭ ȝȞȖȟȐȎȖȐȎȓȠȟȭ ȝȓȞȓȚȓț țȜȗ name. dzȟșȖ ȝȜșȪȕȜȐȎȠȓșȪ ȐȐȓș ȖȚȭ Vasya ȝȓȞȓȚȓțțȜȗ ȏȡȒȓȠ ȝȞȖȟȐȜȓțȜ ȟȠȞȜȘȜȐȜȓ ȕțȎȥȓțȖȓ 'Vasya'. ĐĚěĚėęĔĞđėĨęĚđ ēČĐČęĔđ" ĖĜČĞĖĚ Ě ĝđčđ

Ты написал программу приветствия, которая позволяет сказать черепашке твое имя, но ты также можешь рассказать черепашке о себе немного больше. Напиши программу, в которой черепашка спрашивает пользователя не только как его зовут, но и сколько ему лет и какая его любимая компьютерная игра. Сохрани каждый из полученных ответов в отдельную переменную, а затем используй функцию print() и оператор .., чтобы показать их пользователю.

ĞđĖĝĞ ĝ ĩĠĠđĖĞĚĘ ěĔĤğĥđĕ ĘČĤĔęĖĔ ǰȜȕȚȜȔțȜ Ƞȩ ȕȎȚȓȠȖș ȥȠȜ ȘȜȑȒȎ Ƞȩ ȕȎȝȡȟȠȖș ȝȞȜȑȞȎȚȚȡ hello ȠȓȘȟȠ Ȑ ȝȜȟșȓȒțȓȗ ȟȠȞȜȘȓ ȐȩȐȜȒȖșȟȭ ȝȜ ȏȡȘȐȎȚ ȘȎȘ ȏȡȒȠȜ Ȝț ȚȓȒșȓțțȜ ȝȓȥȎȠȎȓȠȟȭ țȎ ȝȖȦȡȧȓȗ ȚȎȦȖțȘȓ ȀȎ ȘȜȗ ȫȢȢȓȘȠ ȒȜȟȠȖȑȎȓȠȟȭ ȟ ȝȜȚȜȧȪȬ ȢȡțȘȤȖȖ textutils. slowPrint():

70

DZǹǮǰǮ


hello 5. textutils.slowPrint('Nice to meet you, ' .. name)

ǮȞȑȡȚȓțȠ ȢȡțȘȤȖȖ slowPrint() ² ȫȠȜ ȟȠȞȜȘȎ 'Nice to meet you, ' ȘȜțȘȎȠȓțȖȞȡȓȚȎȭ ȟȜ ȟȠȞȜȘȜȐȩȚ ȕțȎȥȓțȖȓȚ ȝȓȞȓȚȓțțȜȗ name ȠȎȘ ȘȎȘ ȝȞȜȑȞȎȚȚȎ ȝȞȖȐȓȠȟȠȐȡȓȠ ȝȜșȪ ȕȜȐȎȠȓșȭ Ȗ ȕȎȝȞȎȦȖȐȎȓȠ ȡ țȓȑȜ ȖȚȭ ǿȠȞȜȘȎ ² ȝȜȟșȓȒțȭȭ ȟȠȞȜȘȎ ȖȟȣȜȒțȜȑȜ ȘȜȒȎ ȝȜȫȠȜȚȡ ȝȞȜȑȞȎȚȚȎ ȝȞȓȘȞȎȧȎȓȠ ȖȟȝȜșțȓțȖȓ ȕȎȐȓȞȦȎȓȠ ȞȎȏȜȠȡ ȝȜȟșȓ ȓȓ ȐȩȝȜșțȓțȖȭ

ěđĜđĔĘđęĚĎČęĔđ ģđĜđěČĤđĖ Ȁȩ ȚȜȔȓȦȪ ȖȕȚȓțȖȠȪ ȖȚȭ ȥȓȞȓȝȎȦȘȖ ȐȩȕȐȎȐ ȢȡțȘȤȖȬ os.setComputerLabel() Ȗ ȝȓȞȓȒȎȐ ȓȗ ȟȠȞȜȘȜȐȜȓ ȕțȎȥȓțȖȓ ǰȐȓȒȖ ȟșȓȒȡȬȧȖȓ ȘȜȚȎțȒȩ Ȑ ȜȏȜșȜȥȘȓ /XD. lua> os.setComputerLabel(‚Elisabetta') lua> os.getComputerLabel() Elisabetta

ȀȓȝȓȞȪ ȠȐȜȬ ȥȓȞȓȝȎȦȘȡ ȕȜȐȡȠ Elisabetta Ȁȩ ȚȜȔȓȦȪ ȝȓȞȓȖȚȓțȜȐȩȐȎȠȪ ȟȐȜȬ ȥȓȞȓȝȎȦȘȡ ȣȜȠȪ ȘȎȔȒȩȗ ȒȓțȪ Ȗȟ ȝȜșȪȕȡȭ ȢȡțȘȤȖȬ os.setComputerLabel(). ĐĚěĚėęĔĞđėĨęĚđ ēČĐČęĔđ" ěđĜđĔĘđęĚĎČęĔđ ģđĜđěČĤđĖ

Попробуй написать собственную версию программы label. Ты можешь выполнить команду edit mylabel для создания нового файла. Вызови в программе функции print() и io.read() и спроси игрока, каким именем следует назвать черепашку, а затем передай это имя функции os.setComputerLabel().

ģĞĚ Ęħ ğēęČėĔ ǰ ȫȠȜȗ ȑșȎȐȓ Țȩ ȟȜȕȒȎșȖ ȝȞȜȑȞȎȚȚȡ ȐȩȐȜȒȭȧȡȬ țȎ ȫȘȞȎț ȠȓȘȟȠ Hello, world! ² ȘșȎȟȟȖȥȓȟȘȜȓ ȝȞȖȐȓȠȟȠȐȖȓ țȎȥȖțȎ ȬȧȖȣ ȝȞȜȑȞȎȚȚȖȟȠȜȐ ȟȜ ȐȟȓȑȜ ȚȖȞȎ ȋȠȎ ȝȞȜȑȞȎȚȚȎ ȡȚȓȓȠ

ǯdzǿdzDzȉ ǿ ȅdzǾdzǽǮȆǸǼǷ

71


ȐȩȐȜȒȖȠȪ ȠȓȘȟȠ ȟ ȝȜȚȜȧȪȬ ȢȡțȘȤȖȗ print() Ȗ textutils. slowPrint() Ȗ ȐȐȜȒȖȠȪ ȓȑȜ ȟ ȝȜȚȜȧȪȬ ȢȡțȘȤȖȖ io.read() ǰ ȭȕȩȘȓ /XD ȠȓȘȟȠ ȖȟȝȜșȪȕȡȓȠȟȭ Ȑ ȐȖȒȓ ȟȠȞȜȘȜȐȩȣ ȕțȎȥȓțȖȗ ȖșȖ ȝȞȜȟȠȜ ȟȠȞȜȘ ȘȜȠȜȞȩȓ ȚȜȑȡȠ ȏȩȠȪ ȟȜȣȞȎțȓțȩ Ȑ ȐȖȒȓ ȕțȎȥȓțȖȗ ȝȓȞȓȚȓțțȩȣ Ȗ ȖȟȝȜșȪȕȜȐȎțȩ Ȑ ȐȩȞȎȔȓțȖȭȣ ȠȜȥ țȜ ȠȎȘ Ȕȓ ȘȎȘ Ȗ ȥȖȟșȜȐȩȓ ȕțȎȥȓțȖȭ ǿȠȞȜȘȜȐȩȓ ȕțȎȥȓțȖȭ ȟȠȞȜȘ ȠȎȘȔȓ ȝȜȒȒȓȞȔȖȐȎȬȠ Ȗȟ ȝȜșȪȕȜȐȎțȖȓ ȜȝȓȞȎȠȜȞȜȐ ȘȎȘ Ȗ ȥȖȟșȎ ǼȝȓȞȎȠȜȞ ȘȜțȘȎ ȠȓțȎȤȖȖ .. ȜȏȨȓȒȖțȭȓȠ ȒȐȓ ȟȠȞȜȘȖ Ȓșȭ ȢȜȞȚȖȞȜȐȎțȖȭ țȜ ȐȜȗ ȓȒȖțȜȗ ȟȠȞȜȘȖ ǽȞȜȑȞȎȚȚȎ hello Ȑ ȫȠȜȗ ȑșȎȐȓ ȏȩșȎ ȐȟȓȑȜ șȖȦȪ ȝȓȞȐȩȚ ȦȎȑȜȚ Ȑ țȎȝȖȟȎțȖȖ ȝȞȜȑȞȎȚȚ Ȓșȭ ȠȐȜȖȣ ȞȜȏȜȠȜȐ ǰ ȑșȎȐȓ Ƞȩ ȡȕțȎȓȦȪ ȓȧȓ țȓȟȘȜșȪȘȜ ȝȞȖȓȚȜȐ ȝȞȜȑȞȎȚȚȖȞȜȐȎțȖȭ Ȗ țȎȡȥȖȦȪ ȥȓȞȓȝȎȦȘȡ țȓ ȠȜșȪȘȜ ȒȐȖȑȎȠȪȟȭ țȜ Ȗ ȝșȭȟȎȠȪ ǽȜȑțȎșȖ


4 Ĕ ěğĝĞīĞĝī ģđĜđěČĤĖĔ Ď ěėīĝ Ǻȩ țȎȡȥȖșȖ ȥȓȞȓȝȎȦȓȘ ȑȜȐȜȞȖȠȪ DzȎȐȎȗ țȎ ȡȥȖȚ Ȗȣ ȣȜȒȖȠȪ ǶșȖ ȓȧȓ șȡȥȦȓ ȒȎȐȎȗ țȎȡ ȥȖȚ Ȗȣ ȠȎțȤȓȐȎȠȪ ȃȜȠȭ Ȗ ȟȡȧȓȟȠȐȡȓȠ ȑȜȠȜȐȎȭ ȝȞȜȑȞȎȚȚȎ ȟ țȎȕȐȎțȖȓȚ dance ȜțȎ ȟșȖȦȘȜȚ ȝȞȖȚȖȠȖȐțȎ Ȗ ȝȞȜȟȠȜ ȝȓȞȓȒȐȖȑȎȓȠ ȥȓȞȓȝȎȦȘȡ ȟșȡȥȎȗțȩȚ ȜȏȞȎȕȜȚ ǰ ȫȠȜȗ ȑșȎȐȓ Țȩ ȟȜȕȒȎȒȖȚ ȑȜȞȎȕȒȜ ȏȜșȓȓ ȖțȠȓȞȓȟțȡȬ ȝȞȜȑȞȎȚȚȡ ² ȠȎțȤȡȬȧȓȗ ȥȓȞȓ ȝȎȦȘȖ ȀȎțȤȓȐȎșȪțȩȓ ȝȎ ȥȓȞȓȝȎȦȘȖ ȏȡȒȡȠ ȐȩȑșȭȒȓȠȪ ȠȎȘ ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ

ĖĚĐ ěĜĚďĜČĘĘħ ĞČęĢğėđĖ ǶȟȝȜșȪȕȡȭ ȠȓȘȟȠȜȐȩȗ ȞȓȒȎȘȠȜȞ ȟȜȕȒȎȗ ȝȞȜȑȞȎȚȚȡ ȟ ȖȚȓțȓȚ mydance ȐȩȝȜșțȖȐ ȘȜȚȎțȒȡ edit mydance Ȑ ȜȏȜșȜȥȘȓ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ǰ ȠȓȘȟȠȜȐȜȚ ȞȓȒȎȘȠȜȞȓ ȐȐȓ ȒȖ ȝȜȘȎȕȎțțȩȓ țȖȔȓ ȟȠȞȜȘȖ ȘȜȒȎ ǻȓ ȕȎȏȡȒȪ ȥȠȜ țȜȚȓȞȎ ȟȠȞȜȘȡȘȎȕȩȐȎȠȪ țȓ țȡȔțȜ ǰ ȘțȖȑȓ ȜțȖ Ȓșȭ ȡȒȜȏȟȠȐȎ ȥȠȜȏȩ ȚȜȔțȜ ȏȩșȜ ȜȏȞȎȧȎȠȪȟȭ Ș ȟȠȞȜȘȎȚ ȝȜ Ȗȣ țȜȚȓȞȎȚ

Ƕ ǽȁǿȀȍȀǿȍ ȅdzǾdzǽǮȆǸǶ ǰ ǽǹȍǿ

73


ˀ̛̭͘ 4.1. ˃̶̦̖̣̦̼̖̌̏̌̽ ̪̌ ̸̡̛̖̬̖̪̹̌

mydance >>ɉɪɨɝɪɚɦɦɚ ɬɚɧɰɭɥɟɤ ɗɥɚ ɋɜɟɣɝɚɪɬɚ 2. Make the turtle dance!]] 3. 4. print('Time to dance!') 5. ɑɟɪɟɩɚɲɤɚ ɧɚɱɢɧɚɟɬ ɬɚɧɰɟɜɚɬɶ 7. turtle.forward() 8. turtle.back() 9. turtle.turnRight() 10. turtle.forward() 11. turtle.back() 12. turtle.back()

74

DZǹǮǰǮ


13. turtle.turnLeft() 14. turtle.turnLeft() 15. turtle.back() 16. turtle.turnRight() 17. ɑɟɪɟɩɚɲɤɚ ɤɪɭɬɢɬɫɹ 19. for i = 1, 4 do 20. turtle.turnRight() 21. end 22. 23. turtle.up() 24. turtle.down() 25. print('Done.')

ǿȜȣȞȎțȖ ȝȞȜȑȞȎȚȚȡ ȝȜȟșȓ ȐȐȜȒȎ Ȑȟȓȣ ȖțȟȠȞȡȘȤȖȗ ǻȎ ȔȎȐ ȘșȎȐȖȦȡ Ctrl ȜȠȘȞȜȗ ȚȓțȬ ǰȩȏȓȞȖ ȝȡțȘȠ [Save] Ȗ țȎȔȚȖ ȘșȎȐȖȦȡ Enter ǵȎȠȓȚ ȐȩȗȒȖ Ȗȕ ȞȓȒȎȘȠȜȞȎ țȎ ȔȎȐ ȘșȎȐȖȦȡ Ctrl ȐȩȏȞȎȐ ȝȡțȘȠ [Exit] Ȗ țȎȔȎȐ ȘșȎȐȖ Ȧȡ Enter.

ēČěğĝĖ ěĜĚďĜČĘĘħ 5A,)6+ǽȜȟșȓ ȐȩȣȜȒȎ Ȗȕ ȞȓȒȎȘȠȜȞȎ ȕȎȝȡȟȠȖ ȝȞȜȑȞȎȚȚȡ mydance Ȑ ȜȏȜșȜȥȘȓ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ > mydance Time to dance! Done.

ǻȎ ȫȘȞȎțȓ ȝȜȭȐȖȠȟȭ ȠȓȘȟȠ Time to dance! ǸȜȑȒȎ ȞȜȏȜȠ țȎȥțȓȠ ȠȎțȤȓȐȎȠȪ țȎ ȫȘȞȎțȓ ȝȜȭȐȖȠȟȭ ȠȓȘȟȠ Done ȅȠȜȏȩ ȞȎȟ ȟȚȜȠȞȓȠȪ ȚȎșȓțȪȘȖȗ ȠȎțȓȤ ȥȓȞȓȝȎȦȘȖ țȎȔȚȖ ȘșȎȐȖȦȡ Esc ȟȞȎȕȡ ȝȜȟșȓ ȕȎȝȡȟȘȎ ȝȞȜȑȞȎȚȚȩ ȒȜ ȠȜȑȜ ȘȎȘ ȝȜȭȐȖȠȟȭ ȠȓȘȟȠ Done ǰȟȓ ȝȎ ȘȜȠȜȞȩȓ ȟȜȐȓȞȦȎȓȠ ȥȓȞȓȝȎȦȘȎ ² ȫȠȜ ȖȚȓțțȜ Ƞȓ ȒȐȖȔȓțȖȭ ȘȜȠȜȞȩȓ Ƞȩ ȕȎȝȞȜȑȞȎȚȚȖȞȜȐȎș ǾȖȟ Ȓȓ ȚȜțȟȠȞȖȞȡȓȠ ȘȎȘ ȥȓȞȓȝȎȦȘȎ ȒȐȖȔȓȠȟȭ ȟșȡȦȎȭȟȪ ȢȡțȘȤȖȗ turtle.forward() Ȗ turtle.back() ȘȜȠȜȞȩȓ ȐȩȕȩȐȎȬȠȟȭ Ȑ ȟȠȞȜȘȎȣ Ȗ

Ƕ ǽȁǿȀȍȀǿȍ ȅdzǾdzǽǮȆǸǶ ǰ ǽǹȍǿ

75


ˀ̛̭͘ 4.2. ʿ̖̬̼̖̏ ̔̏̌ ̶̵̯̦̖̣̦̼̌̏̌̽ ̪̌ ̸̡̛̖̬̖̪̹̌

DzȎȐȎȗ ȞȎȟȟȚȜȠȞȖȚ ȘȎȔȒȡȬ ȖțȟȠȞȡȘȤȖȬ Ȑ ȘȜȒȓ ȝȞȜȑȞȎȚ Țȩ mydance.

ĔĝěĚėĨēĚĎČęĔđ ĖĚĘĘđęĞČĜĔđĎ Ď ĖĚĐđ ǽȓȞȐȩȓ ȒȐȓ ȟȠȞȜȘȖ Ȑ ȝȞȜȑȞȎȚȚȓ ȟȜȒȓȞȔȎȠ ȘȜȚȚȓțȠȎȞȖȖ. ǶțȠȓȞȝȞȓȠȎȠȜȞ /XD ȖȑțȜȞȖȞȡȓȠ ȘȜȚȚȓțȠȎȞȖȖ ȝȜȠȜȚȡ ȥȠȜ ȫȠȜ ȝȜ ȟȡȠȖ ȕȎȚȓȠȘȖ ȝȞȜȑȞȎȚȚȖȟȠȎ ǰ ȒȎțțȜȚ ȘȜȚȚȓțȠȎ ȞȖȖ ȜȝȖȟȩȐȎȓȠȟȭ ȥȠȜ ȒȓșȎȓȠ ȝȞȜȑȞȎȚȚȎ Ȗ ȘȠȜ ȓȓ ȎȐȠȜȞ ǽȞȖȚȓȥȎțȖȓ ǼȏȞȎȠȖ ȐțȖȚȎțȖȓ ȥȠȜ Ȑ șȖȟȠȖțȑȎȣ ȝȞȖȐȓȒȓțțȩȣ Ȑ ȘțȖȑȓ ȘȜȚȚȓțȠȎȞȖȖ țȎȏȞȎțȩ țȎ ȞȡȟȟȘȜȚ ȭȕȩȘȓ ȥȠȜȏȩ Ƞȓȏȓ ȏȩșȜ ȝȜțȭȠțȜ ȕȎ ȥȠȜ ȜȠȐȓȥȎȓȠ ȠȎ ȖșȖ ȖțȎȭ ȥȎȟȠȪ ȘȜȒȎ ǽȞȖ ȞȎȏȜȠȓ ȟ Lua ȖȟȝȜșȪȕȜȐȎȠȪ ȞȡȟȟȘȖȗ ȭȕȩȘ ȡ Ƞȓȏȭ țȓ ȝȜșȡȥȖȠȟȭ mydance >>ɉɪɨɝɪɚɦɦɚ ɬɚɧɰɭɥɟɤ ɗɥɚ ɋɜɟɣɝɚɪɬɚ 2. Make the turtle dance!]] 3. 4. print('Time to dance!') 5. ɑɟɪɟɩɚɲɤɚ ɧɚɱɢɧɚɟɬ ɬɚɧɰɟɜɚɬɶ

ǸȜȚȚȓțȠȎȞȖȗ ȘȜȠȜȞȩȗ țȎȥȖțȎȓȠȟȭ Ȑ ȟȠȞȜȘȓ ȝȞȜȒȜș ȔȎȓȠȟȭ Ȑ ȟȠȞȜȘȓ ȋȠȜ ȚțȜȑȜȟȠȞȜȥțȩȗ ȘȜȚȚȓțȠȎȞȖȗ ȝȜ ȟȘȜșȪȘȡ ȞȎȟȝȜșȎȑȎȓȠȟȭ ȏȜșȓȓ ȥȓȚ țȎ ȜȒțȜȗ ȟȠȞȜȘȓ ǺțȜ

76

DZǹǮǰǮ


ȑȜȟȠȞȜȥțȩȓ ȘȜȚȚȓțȠȎȞȖȖ țȎȥȖțȎȬȠȟȭ ȟ ȟȖȚȐȜșȜȐ --[[ Ȗ ȕȎȐȓȞȦȎȬȠȟȭ ȟȖȚȐȜșȎȚȖ ]]. ǿȠȞȜȘȎ ȟȜȒȓȞȔȖȠ ȐȩȕȜȐ ȢȡțȘȤȖȖ print() ȘȜȠȜȞȎȭ Ȑȩ ȐȜȒȖȠ țȎ ȫȘȞȎț ȠȓȘȟȠ Time to dance! ǶȚȓțțȜ ȫȠȜȠ ȠȓȘȟȠ ȝȜȭȐșȭȓȠȟȭ ȝȞȖ ȕȎȝȡȟȘȓ ȝȞȜȑȞȎȚȚȩ ǿ ȢȡțȘȤȖȓȗ print() Ƞȩ ȡȔȓ ȐȟȠȞȓȥȎșȟȭ Ȑ ȑșȎȐȓ ǿȠȞȜȘȎ ² ȫȠȜ ȠȜȔȓ ȘȜȚȚȓțȠȎȞȖȗ ȠȜșȪȘȜ ȜȒțȜȟȠȞȜȥțȩȗ ǼȒțȜȟȠȞȜȥțȩȗ ȘȜȚȚȓțȠȎȞȖȗ țȎȥȖțȎȓȠȟȭ ȟ ȟȖȚȐȜșȜȐ -Ȗ ȕȎȘȎțȥȖȐȎȓȠȟȭ Ȑ ȘȜțȤȓ ȟȠȞȜȘȖ ȠȜ ȓȟȠȪ Ȝț ȕȎțȖȚȎȓȠ ȠȜșȪ ȘȜ ȜȒțȡ ȟȠȞȜȘȡ ǶțȠȓȞȝȞȓȠȎȠȜȞ /XD ȖȑțȜȞȖȞȡȓȠ ȫȠȡ ȟȠȞȜȘȡ ȝȜȠȜȚȡ ȥȠȜ ȫȠȜ ȝȞȜȟȠȜ ȠȓȘȟȠ ȘȜȠȜȞȩȗ ȝȜȭȟțȭȓȠ ȥȠȜ ȏȡȒȓȠ ȝȞȜȖȟȣȜȒȖȠȪ ȒȎșȓȓ ȋȠȜ ȝȞȖȚȓȥȎțȖȓ Ȓșȭ șȬȒȓȗ ȘȜȠȜȞȩȓ ȏȡȒȡȠ ȥȖȠȎȠȪ ȘȜȒ ȝȞȜȑȞȎȚȚȩ

ĞČęĢđĎČėĨęħđ ěČ ģđĜđěČĤĖĔ ǽȜȟșȓ ȟȠȞȜȘȖ ȟșȓȒȡȓȠ țȓȟȘȜșȪȘȜ ȟȠȞȜȘ ȘȜȒȎ ȟ ȢȡțȘȤȖȭ ȚȖ ȐȩȕȩȐȎȭ ȘȜȠȜȞȩȓ ȝȞȜȑȞȎȚȚȎ mydance ȕȎȟȠȎȐșȭȓȠ ȥȓȞȓ ȝȎȦȘȡ ȒȐȖȑȎȠȪȟȭ mydance ɑɟɪɟɩɚɲɤɚ ɧɚɱɢɧɚɟɬ ɬɚɧɰɟɜɚɬɶ 7. turtle.forward() 8. turtle.back() 9. turtle.turnRight() 10. turtle.forward() 11. turtle.back() 12. turtle.back() 13. turtle.turnLeft() 14. turtle.turnLeft() 15. turtle.back() 16. turtle.turnRight()

ǰ ȑșȎȐȓ Ƞȩ ȡȔȓ ȝȜȕțȎȘȜȚȖșȟȭ ȟ ȢȡțȘȤȖȭȚȖ turtle. turnLeft() Ȗ turtle.turnRight() ǻȜ ȓȟȠȪ ȓȧȓ ȥȓȠȩȞȓ ȢȡțȘȤȖȖ Ȓșȭ ȝȓȞȓȚȓȧȓțȖȭ ȥȓȞȓȝȎȦȘȖ ȘȜȠȜȞȩȓ Ƞȩ ȝȜȘȎ țȓ ȕțȎȓȦȪ turtle.up() turtle.down() turtle.forward() Ȗ turtle.back().

Ƕ ǽȁǿȀȍȀǿȍ ȅdzǾdzǽǮȆǸǶ ǰ ǽǹȍǿ

77


ĩĖĝěđĜĔĘđęĞĔĜğđĘ ĝ ěđĜđĘđĥđęĔīĘĔ ģđĜđěČĤĖĔ DzȎȐȎȗ ȝȜȫȘȟȝȓȞȖȚȓțȠȖȞȡȓȚ ȟ ȫȠȖȚȖ ȢȡțȘȤȖȭȚȖ ȝȞȓȒțȎ ȕțȎȥȓțțȩȚȖ Ȓșȭ ȒȐȖȔȓțȖȭ ȁȏȓȒȖȟȪ ȥȠȜ Ƞȩ țȎȣȜȒȖȦȪȟȭ Ȑ ȜȏȜșȜȥȘȓ /XD ȐȚȓȟȠȜ ȝȞȖȑșȎȦȓțȖȭ > ȒȜșȔțȜ ȏȩȠȪ ȡȘȎȕȎțȜ lua> Ȗ ȐȩȝȜșțȖ ȟșȓȒȡȬȧȖȓ ȖțȟȠȞȡȘȤȖȖ lua> true lua> true lua> true lua> true

turtle.up() turtle.down() turtle.forward() turtle.back()

ǻȓ ȕȎȏȩȐȎȗ ȝȓȞȓȒ ȡȘȎȕȎțȖȓȚ țȎȝȞȎȐșȓțȖȭ ȒȜȏȎȐșȭȠȪ ȟșȜȐȜ turtle. Ȗ ȡȏȓȒȖȟȪ ȥȠȜ ȡ ȥȓȞȓȝȎȦȘȖ ȓȟȠȪ ȠȜȝșȖȐȜ ȂȡțȘȤȖȖ turtle.up() Ȗ turtle.down() ȝȓȞȓȚȓȧȎȬȠ ȥȓ ȞȓȝȎȦȘȡ ȐȐȓȞȣ Ȑ ȐȜȕȒȡȣ Ȗ ȐȜȕȐȞȎȧȎȬȠ ȐțȖȕ țȎ ȕȓȚșȬ ȂȡțȘȤȖȖ turtle.forward() Ȗ turtle.back() ȝȓȞȓȚȓȧȎȬȠ ȥȓȞȓȝȎȦȘȡ ȐȝȓȞȓȒ ȠȜ ȓȟȠȪ Ȑ țȎȝȞȎȐșȓțȖȖ Ȑ ȘȜȠȜȞȜȚ ȜțȎ ©ȟȚȜȠȞȖȠª Ȗ țȎȕȎȒ ȠȜ ȓȟȠȪ Ȑ ȝȞȜȠȖȐȜȝȜșȜȔțȜȚ țȎȝȞȎȐșȓ țȖȖ ȋȠȖ ȒȐȖȔȓțȖȭ ȝȜȘȎȕȎțȩ țȎ ȞȖȟ

ˀ̛̭͘ 4.3. ˑ̡̛̭̪̖̬̥̖̦̯̼ ̭ ̴̶̡̛̛̱̦̥́ ̛̛̙̖̦̔̏́ ̸̡̛̖̬̖̪̹̌

dzȟșȖ ȥȓȞȓȝȎȦȘȎ ȝȓȞȓȚȓȧȎȓȠȟȭ Ȑ țȎȝȞȎȐșȓțȖȖ ȘȜȠȜȞȜȓ ȠȞȓȏȡȓȠ ȢȡțȘȤȖȭ ȒȐȖȔȓțȖȭ ȠȜ ȫȠȎ ȢȡțȘȤȖȭ ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ true. (true ǶȟȠȖțȎ Ȗ false ǹȜȔȪ ² ȫȠȜ șȜȑȖ ȥȓȟȘȖȓ ȖșȖ ȏȡșȓȐȩ ȕțȎȥȓțȖȭ ȘȜȠȜȞȩȓ Țȩ ȝȜȒȞȜȏțȜ ȞȎȟ ȟȚȜȠȞȖȚ Ȑ ȑșȎȐȓ

78

DZǹǮǰǮ


ǽȜȟȠȎȐȪ ȥȓȞȓȝȎȦȘȡ țȎ ȕȓȚșȬ Ȏ Ȑ ȜȏȜșȜȥȘȓ /XD ȐȩȕȜȐȖ ȢȡțȘȤȖȬ turtle.down() țȎȝȞȖȚȓȞ ȠȎȘ lua> turtle.down() false Movement obstructed

ǽȜȟȘȜșȪȘȡ țȎ ȝȡȠȖ ȥȓȞȓȝȎȦȘȖ țȎȣȜȒȖȠȟȭ ȏșȜȘ ȜțȎ țȓ ȟȚȜȔȓȠ ȝȓȞȓȚȓȟȠȖȠȪȟȭ Ȑ ȠȞȓȏȡȓȚȜȚ țȎȝȞȎȐșȓțȖȖ ȠȜȑȒȎ Ȑȩ ȕȜȐ ȢȡțȘȤȖȖ turtle.down() ȐȓȞțȓȠ ȕțȎȥȓțȖȓ false Ȗ Ȑȩ ȐȓȒȓȠ țȎ ȫȘȞȎț ȟȠȞȜȘȡ ȟ ȟȜȜȏȧȓțȖȓȚ Ȝȏ ȜȦȖȏȘȓ dzȟșȖ ȡ ȥȓȞȓ ȝȎȦȘȖ țȓȠ ȠȜȝșȖȐȎ ȜțȎ ©ȝȞȜȑȜșȜȒȎșȎȟȪª ȝȓȞȓȒȐȖȔȓțȖȭ ȠȎȘȔȓ țȓ ȝȞȜȖȕȜȗȒȓȠ țȜ ȜȠȜȏȞȎȕȖȠȟȭ ȒȞȡȑȜȓ ȟȜȜȏȧȓțȖȓ lua> turtle.forward() false Out of fuel

ȀȎȘȖȚ ȜȏȞȎȕȜȚ ȢȡțȘȤȖȖ ȒȐȖȔȓțȖȭ ȖțȢȜȞȚȖȞȡȬȠ Ȝ ȝȞȖȥȖțȓ ȝȜ ȘȜȠȜȞȜȗ ȒȐȖȔȓțȖȓ țȓȐȜȕȚȜȔțȜ ǿȜȕȒȎȐȎȭ ȝȞȜ ȑȞȎȚȚȩ ȜȝȖȟȎțțȩȓ Ȑ ȫȠȜȗ ȘțȖȑȓ Ƞȩ ȏȡȒȓȦȪ ȥȎȟȠȜ Ȑȩȕȩ ȐȎȠȪ ȢȡțȘȤȖȖ ȒȐȖȔȓțȖȭ Ȓșȭ ȝȓȞȓȚȓȧȓțȖȭ ȥȓȞȓȝȎȦȓȘ

ĢĔĖėħ" ĩĠĠđĖĞ ēČđĎĤđĕ ěėČĝĞĔęĖĔ DzȜ ȟȖȣ ȝȜȞ ȖȟȝȜșțȓțȖȓ ȝȞȜȑȞȎȚȚȩ mydance ȜȟȡȧȓȟȠȐșȭ șȜȟȪ ȟȝȜȟȜȏȜȚ ȘȜȠȜȞȩȗ țȎȕȩȐȎȓȠȟȭ ȝȜȠȜȘȜȚ ȖȟȝȜșțȓțȖȭ: ȖȟȝȜșțȓțȖȓ ȝȞȜȑȞȎȚȚȩ țȎȥȖțȎșȜȟȪ ȟ ȝȓȞȐȜȗ ȟȠȞȜȘȖ ȖȟȣȜȒ țȜȑȜ ȘȜȒȎ Ȗ ȝȜȟșȓȒȜȐȎȠȓșȪțȜ ȝȓȞȓȚȓȧȎșȜȟȪ ȐțȖȕ ȐȩȝȜș țȭȭ ȘȎȔȒȡȬ ȟȠȞȜȘȡ ǼȒțȎȘȜ țȓȟȘȜșȪȘȜ ȖțȟȠȞȡȘȤȖȗ ȚȜȔțȜ ȜȏȨȓȒȖțȖȠȪ Ȑ ȑȞȡȝȝȡ ȥȠȜȏȩ ȝȜȐȠȜȞȖȠȪ ȖȟȝȜșțȓțȖȓ ȫȠȜȗ ȑȞȡȝȝȩ ȖțȟȠȞȡȘȤȖȗ țȓȟȘȜșȪȘȜ ȞȎȕ ² ȤȖȘșȖȥȓȟȘȖ Dzșȭ ȫȠȜ ȑȜ ȟȡȧȓȟȠȐȡȬȠ ȟȝȓȤȖȎșȪțȩȓ ȖțȟȠȞȡȘȤȖȖ ȀȎȘȖȓ ȖțȟȠȞȡȘ ȤȖȖ ȖȕȚȓțȭȬȧȖȓ ȝȜȞȭȒȜȘ ȖȟȝȜșțȓțȖȭ ȝȞȜȑȞȎȚȚȩ ² ȝȜȟșȓ ȒȜȐȎȠȓșȪțȜȑȜ ȖȟȝȜșțȓțȖȭ ȟȠȞȜȘȖ ȕȎ ȟȠȞȜȘȜȗ ² țȎȕȩȐȎȬȠȟȭ ȖțȟȠȞȡȘȤȖȭȚȖ ȡȝȞȎȐșȓțȖȭ ȝȜȠȜȘȜȚ. ȅȠȜȏȩ ȝȜțȎȏșȬȒȎȠȪ ȕȎ ȞȎȏȜȠȜȗ ȜȒțȜȗ Ȗȕ ȠȎȘȖȣ ȖțȟȠȞȡȘ ȤȖȗ țȎȕȩȐȎȓȚȜȗ ȤȖȘșȜȚ for Ȑ ȜȏȜșȜȥȘȓ /XD ȐȓȒȖ ȟșȓȒȡȬ ȧȡȬ ȟȠȞȜȘȡ ȘȜȒȎ

Ƕ ǽȁǿȀȍȀǿȍ ȅdzǾdzǽǮȆǸǶ ǰ ǽǹȍǿ

79


lua> for i = 1, 4 do print(i) end 1 2 3 4

ǰȐȓȒȓțțȎȭ ȠȜȏȜȗ ȖțȟȠȞȡȘȤȖȭ Ȗ ȓȟȠȪ ȖțȟȠȞȡȘȤȖȭ ȤȖȘșȎ for ȀȎȘȜȗ ȤȖȘș ȚȜȔȓȠ țȓȟȘȜșȪȘȜ ȞȎȕ ȝȜȐȠȜȞȖȠȪ ȖȟȝȜșțȓțȖȓ ȡȘȎȕȎțțȜȗ ȑȞȡȝȝȩ ȘȜȚȎțȒ ǽȜȟșȓȒȜȐȎȠȓșȪțȜȟȠȪ ȘȜȚȎțȒ ȝȜȒșȓȔȎȧȎȭ ȖȟȝȜșțȓțȖȬ ȞȎȟȝȜșȎȑȎȓȠȟȭ ȚȓȔȒȡ ȘșȬȥȓȐȩ ȚȖ ȟșȜȐȎȚȖ do Ȗ end Ȗ țȎȕȩȐȎȓȠȟȭ ȏșȜȘȜȚ Ȏ ȘȎȔȒȜȓ Ȗȟ ȝȜșțȓțȖȓ ȏșȜȘȎ țȎȕȩȐȎȓȠȟȭ ȖȠȓȞȎȤȖȓȗ ǰ țȎȦȓȚ ȝȞȖȚȓȞȓ ȏșȜȘ ȟȜȟȠȜȖȠ ȐȟȓȑȜ Ȗȕ ȜȒțȜȗ ȢȡțȘȤȖȖ print(i) ǽȞȜȑȞȎȚ ȚȖȟȠȩ Ȑ ȤȖȘșȎȣ ȥȎȟȠȜ ȖȟȝȜșȪȕȡȬȠ ȖȚȓțțȜ ȝȓȞȓȚȓțțȡȬ i. dzȓ ȖȚȭ ȝȞȜȖȟȣȜȒȖȠ ȟȘȜȞȓȓ ȐȟȓȑȜ ȜȠ ȟșȜȐȎ ©LWHUDWLRQª ȥȠȜ Ȝȕ țȎȥȎȓȠ ©ȖȠȓȞȎȤȖȭª ǯșȜȘ ȚȜȔȓȠ ȟȜȟȠȜȭȠȪ țȓ Ȗȕ ȜȒțȜȗ Ȏ Ȗȕ țȓȟȘȜșȪȘȖȣ ȟȠȞȜȘ ȘȜȒȎ țȜ Ȑ țȎȦȓȚ ȝȞȖȚȓȞȓ ȫȠȜȠ ȏșȜȘ ȝȞȜȟȠ Ȗ ȟȜȒȓȞȔȖȠ ȐȩȕȜȐ ȠȜșȪȘȜ ȜȒțȜȗ ȢȡțȘȤȖȖ ȄȖȘș ȟȜȐȓȞȦȎȓȠ țȎȒ ȢȡțȘȤȖȓȗ print(i) ȖȠȓȞȎȤȖȖ ȜȠ 1 ȒȜ 4 ȠȜ ȓȟȠȪ ȝȞȜȟȠȜ ȐȩȕȩȐȎȓȠ ȫȠȡ ȢȡțȘȤȖȬ ȥȓȠȩȞȓ ȞȎȕȎ ȝȜȒȞȭȒ ǰ ȖȠȜȑȓ ȤȖȘș i = 1, 4 do print(i) end ȝȜȟșȓȒȜȐȎ ȠȓșȪțȜ ȐȩȐȜȒȖȠ țȎ ȫȘȞȎț ȥȖȟșȎ ȜȠ 1 ȒȜ 4 ǰ țȎȥȎșȓ ȖȟȝȜșțȓ țȖȭ ȤȖȘșȎ ȖțȠȓȞȝȞȓȠȎȠȜȞ /XD ȝȞȖȟȐȎȖȐȎȓȠ ȝȓȞȓȚȓțțȜȗ i ȕțȎȥȓțȖȓ 1 ȝȞȓȐȞȎȧȎȭ ȐȩȕȜȐ Ȑ ȘȜȒ print(1) Ȗ ȜȠȜȏȞȎȔȎȓȠ țȎ ȫȘȞȎțȓ 1 ȋȠȜ ȝȓȞȐȎȭ ȖȠȓȞȎȤȖȭ ȤȖȘșȎ for DzȎșȓȓ ȟșȓȒȡ ȓȠ ȖțȟȠȞȡȘȤȖȭ ȘȜțȤȎ ȏșȜȘȎ ² end ² Ȗ ȖȟȝȜșțȓțȖȓ ȟțȜȐȎ ȐȜȕ ȐȞȎȧȎȓȠȟȭ Ș țȎȥȎșȡ ȏșȜȘȎ ǻȎ ȐȠȜȞȜȗ ȖȠȓȞȎȤȖȖ ȕțȎȥȓțȖȓ ȝȓȞȓȚȓțțȜȗ i ȡȐȓșȖȥȖȐȎȓȠȟȭ țȎ 1 Ȗ țȎ ȫȘȞȎțȓ ȜȠȜȏȞȎȔȎȓȠ ȟȭ ȥȖȟșȜ 2 ǶȟȝȜșțȓțȖȓ ȘȜȒȎ ȝȞȜȒȜșȔȎȓȠȟȭ ȒȜ Ƞȓȣ ȝȜȞ ȝȜȘȎ ȝȓȞȓȚȓțțȎȭ i țȓ ȟȠȎțȓȠ ȞȎȐțȎ 4 ȠȜ ȓȟȠȪ ȥȖȟșȡ ȝȜȟșȓ ȕȎȝȭ ȠȜȗ ȋȠȜ ȏȡȒȓȠ ȥȓȠȐȓȞȠȎȭ Ȗ ȝȜȟșȓȒțȭȭ ȖȠȓȞȎȤȖȭ ȤȖȘșȎ for. ǰ ȠȎȘȜȚ ȤȖȘșȓ ȚȜȔțȜ ȖȟȝȜșȪȕȜȐȎȠȪ șȬȏȩȓ ȥȖȟșȎ ǻȎ ȝȞȖȚȓȞ ȥȠȜȏȩ ȜȞȑȎțȖȕȜȐȎȠȪ ȤȖȘș ȜȠ 10 ȒȜ 13 Ȑ ȜȏȜșȜȥȘȓ /XD ȐȐȓȒȖ ȟșȓȒȡȬȧȖȗ ȘȜȒ lua> for i = 10, 13 do print(i) end 10 11 12 13

80

DZǹǮǰǮ


dzȟșȖ ȡȘȎȕȎȠȪ ȠȞȓȠȪȓ ȥȖȟșȜ ȘȜȠȜȞȜȓ țȎȕȩȐȎȓȠȟȭ ȦȎȑȜȚ ȤȖȘșȎ ȠȜ ȝȓȞȓȚȓțțȎȭ ȤȖȘșȎ i țȎ ȘȎȔȒȜȗ ȖȠȓȞȎȤȖȖ ȏȡȒȓȠ ȡȐȓșȖȥȖȐȎȠȪȟȭ țȓ țȎ 1 Ȏ țȎ ȡȘȎȕȎțțȩȗ ȦȎȑ ǻȎȝȞȖȚȓȞ ȝȜ ȝȞȜȏȡȗ Ȑ ȜȏȜșȜȥȘȓ /XD ȐȩȝȜșțȖȠȪ ȟșȓȒȡȬȧȡȬ ȖțȟȠȞȡȘȤȖȬ lua> for i = 10, 20, 2 do print(i) end 10 12 14 16 18 20

ǰ ȫȠȜȗ ȟȠȞȜȘȓ ȘȜȒȎ ȦȎȑ ȞȎȐȓț 2 ȝȜȫȠȜȚȡ ȖțȠȓȞȝȞȓȠȎȠȜȞ /XD ȏȡȒȓȠ ȐȩȐȜȒȖȠȪ Ȑȟȓ ȥȓȠțȩȓ ȥȖȟșȎ Ȑ ȒȖȎȝȎȕȜțȓ ȜȠ 10 ȒȜ 20. ǰ ȘȎȥȓȟȠȐȓ ȦȎȑȎ ȚȜȔțȜ ȖȟȝȜșȪȕȜȐȎȠȪ Ȗ ȜȠȞȖȤȎȠȓșȪțȩȓ ȥȖȟșȎ ȠȜȑȒȎ ȝȓȞȓȚȓțțȎȭ ȤȖȘșȎ ȏȡȒȓȠ țȓ ȡȐȓșȖȥȖȐȎȠȪȟȭ Ȏ ȡȚȓțȪȦȎȠȪȟȭ ȠȜ ȓȟȠȪ ȜȠȟȥȓȠ ȏȡȒȓȠ ȝȞȜȖȕȐȜȒȖȠȪȟȭ Ȑ ȜȏȞȎȠ țȡȬ ȟȠȜȞȜțȡ ȜȠ ȝȓȞȐȜțȎȥȎșȪțȜȑȜ ȕțȎȥȓțȖȭ ǿșȓȒȡȬȧȖȗ ȘȜȒ ȒȓȚȜțȟȠȞȖȞȡȓȠ ȒȓȗȟȠȐȖȓ ȦȎȑȎ -1: lua> for i = 4, 1, -1 do print(i) end 4 3 2 1

ȋȠȜȠ ȘȜȒ ȝȞȜȖȕȐȜȒȖȠ ȜȏȞȎȠțȩȗ ȜȠȟȥȓȠ Ȑ ȒȖȎȝȎȕȜțȓ ȜȠ 4 ȒȜ 1 ǽȜȝȞȜȏȡȗ ȖȕȚȓțȖȠȪ ȦȎȑ țȎ -2 Ȗ ȝȜȟȚȜȠȞȖ ȥȠȜ ȝȞȜ ȖȕȜȗȒȓȠ ȄȖȘșȩ ² ȫȠȜ ȝȞȜȟȠȜȗ ȟȝȜȟȜȏ ȐȩȝȜșțȖȠȪ țȓȟȘȜșȪȘȜ ȞȎȕ ȑȞȡȝȝȡ ȘȜȚȎțȒ ȏȓȕ țȓȜȏȣȜȒȖȚȜȟȠȖ ȚțȜȑȜȘȞȎȠțȜ țȎȏȖ ȞȎȠȪ ȜȒțȖ Ȗ Ƞȓ Ȕȓ ȘȜȚȎțȒȩ ǰ ȑșȎȐȓ Ƞȩ ȡȕțȎȓȦȪ Ȗ Ȝ ȒȞȡ ȑȖȣ ȖțȟȠȞȡȘȤȖȭȣ ȡȝȞȎȐșȓțȖȭ ȝȜȠȜȘȜȚ

ĎĜČĥđęĔđ ģđĜđěČĤĖĔ ǰȓȞțȓȚȟȭ Ș ȝȞȜȑȞȎȚȚȓ mydance ǿȠȞȜȘȖ ȟ ȝȜ ȟȜȒȓȞȔȎȠ ȤȖȘș for ȡȘȎȕȩȐȎȬȧȖȗ ȥȓȞȓȝȎȦȘȓ ȟȜȐȓȞȦȖȠȪ ȝȜȐȜȞȜȠ ȐȜ ȘȞȡȑ ȟȐȜȓȗ ȜȟȖ

Ƕ ǽȁǿȀȍȀǿȍ ȅdzǾdzǽǮȆǸǶ ǰ ǽǹȍǿ

81


mydance ɑɟɪɟɩɚɲɤɚ ɤɪɭɬɢɬɫɹ 19. for i = 1, 4 do 20. turtle.turnRight() 21. end

ǽȞȖ țȎȝȖȟȎțȖȖ ȤȖȘșȜȐ for Ȑ ȘȎȔȒȜȗ ȟȠȞȜȘȓ ȘȜȒȎ Ȗȕ ȘȜȠȜȞȜȑȜ ȟȜȟȠȜȖȠ ȏșȜȘ ȤȖȘșȎ ȜȏȩȥțȜ ȖȟȝȜșȪȕȡȓȠȟȭ ȜȠȟȠȡȝ ȠȜ ȓȟȠȪ ȒȜȝȜșțȖȠȓșȪțȩȓ ȝȞȜȏȓșȩ Ȑ țȎȥȎșȓ ȟȠȞȜȘȖ ȀȎȘȖȓ ȜȠȟȠȡȝȩ ȜȏșȓȑȥȎȬȠ ȝȜțȖȚȎțȖȓ ȘȎȘȖȓ ȖȚȓțțȜ ȟȠȞȜȘȖ țȎ ȣȜȒȭȠȟȭ ȐțȡȠȞȖ ȏșȜȘȜȐ ȜȟȜȏȓțțȜ ȓȟșȖ ȐțȡȠȞȖ ȜȒțȜȑȜ ȏșȜȘȎ ȟȜȕȒȎȬȠȟȭ ȒȞȡȑȖȓ Ȑ ȑșȎȐȓ Țȩ ȟȒȓșȎȓȚ ȫȠȜ ȅȠȜȏȩ ȐȖȒȓȠȪ ȑȒȓ ȤȖȘș țȎȥȖțȎȓȠȟȭ Ȗ ȑȒȓ ȕȎȘȎțȥȖȐȎȓȠȟȭ ȘșȬȥȓȐȜȓ ȟșȜȐȜ end ȞȎȕȚȓȧȎȬȠ țȎ ȠȜȚ Ȕȓ ȡȞȜȐțȓ ȜȠȟȠȡȝȎ ȥȠȜ Ȗ ȘșȬȥȓȐȜȓ ȟșȜȐȜ for. ǰ ȝȞȖȐȓȒȓțțȜȚ ȝȞȖȚȓȞȓ ȟȠȞȜȘȎ ȘȜȒ ȘȜȠȜȞȜȗ ȝȜȐȜȞȎ ȥȖȐȎȓȠ ȥȓȞȓȝȎȦȘȡ țȎȝȞȎȐȜ ȐȩȝȜșțȭȓȠȟȭ ȥȓȠȩȞȓ ȞȎȕȎ ȀȎ ȘȖȚ ȜȏȞȎȕȜȚ ȥȓȞȓȝȎȦȘȎ ȞȎȕȐȜȞȎȥȖȐȎȓȠȟȭ țȎ ȑȞȎȒȡȟȜȐ ǻȜ ȓȟșȖ Ȑ ȟȠȞȜȘȓ ȡȘȎȕȎȠȪ ȕțȎȥȓțȖȭ i = 1, 8 ȥȓȞȓȝȎȦȘȎ ȟȜȐȓȞȦȖȠ ȒȐȎ ȝȜșțȩȣ ȜȏȜȞȜȠȎ ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ

ˀ̛̭͘ 4.4. ˋ̡̖̬̖̪̹̌̌ ̨̼̪̣̦̖̯̏́ ̔̏̌ ̨̨̨̬̯͕̍̌ ̸̨̨̛̪̬̭̏̌̏̌́̽ ̨̦̪̬̌̌̏ ̨̭̖̥̏̽ ̬̌̚

ěĜħĒĚĖ ęČ ĘđĝĞđ ǻȎȘȜțȓȤ Ȑ ȟȠȞȜȘȎȣ Ȗ ȥȓȞȓȝȎȦȘȎ ȟȜȐȓȞȦȖȠ ȝȞȩȔȜȘ țȎ ȚȓȟȠȓ ȠȜ ȓȟȠȪ ȝȜȒțȖȚȓȠȟȭ ȐȐȓȞȣ Ȏ ȕȎȠȓȚ ȜȝȡȟȠȖȠȟȭ mydance 23. turtle.up() 24. turtle.down() 25. print('Done.')

ȀȎȘȜȗ ȝȞȩȔȜȘ ȖȕȜȏȞȎȔȓț țȎ ȞȖȟ ǽȜȟșȓȒțȭȭ ȟȠȞȜȘȎ ȐȩȐȜȒȖȠ țȎ ȫȘȞȎț ȟșȜȐȜ Done. ǿȠȞȜȘȎ ȝȜȟșȓȒțȭȭ țȖȔȓ țȓȠ ȖȟȝȜșțȭȓȚȜȑȜ ȘȜȒȎ Ȗ ȝȞȜȑȞȎȚȚȎ ȕȎȐȓȞȦȎȓȠȟȭ

82

DZǹǮǰǮ


ˀ̛̭͘ 4.5. ˋ̡̖̬̖̪̹̌̌ ̨̭̖̬̹̖̯̏̌ ̨̡̪̬̼̙͕ ̡̨̐̔̌ ̼̼̯̭̏̏̌̀́̚ ̴̶̡̛̱̦​̛ turtle.up() ̛ turtle.down()͘

ĐĚěĚėęĔĞđėĨęĚđ ēČĐČęĔđ" ęĚĎħĕ ĞČęđĢ

Попробуй создать для черепашки свои собственные танцевальные движения. Для этого ты можешь использовать функции перемещения и поворота, научить черепашку прыгать, крутиться и танцевать в соответствии с твоей собственной хореографической программой!

ěğčėĔĖČĢĔī Ĕ ēČďĜğēĖČ ěĜĚďĜČĘĘ Ď ĔęĞđĜęđĞđ ǽȜȟșȓ ȠȜȑȜ ȘȎȘ Ƞȩ țȎȝȖȟȎș ȝȞȜȑȞȎȚȚȡ Ȓșȭ ȟȐȜȓȗ ȥȓȞȓ ȝȎȦȘȖ Ƞȩ ȚȜȔȓȦȪ ȝȜȒȓșȖȠȪȟȭ ȓȬ ȟȜ ȟȐȜȖȚȖ ȒȞȡȕȪȭȚȖ ȅȠȜȏȩ ȕȎȑȞȡȔȎȠȪ ȟȐȜȖ ȝȞȜȑȞȎȚȚȩ Ȑ ǶțȠȓȞțȓȠ Ƞȩ ȚȜȔȓȦȪ ȐȜȟȝȜșȪȕȜȐȎȠȪȟȭ ȟȎȗȠȜȚ pastebin.com ȑȒȓ ȝȜșȪȕȜȐȎȠȓșȖ Ȝȏ ȧȎȬȠȟȭ ȜțșȎȗț Ȗ ȜȏȚȓțȖȐȎȬȠȟȭ ȖȟȣȜȒțȩȚȖ ȘȜȒȎȚȖ ȝȞȜ ȑȞȎȚȚ ȞȎȕȚȓȧȎȭ Ȗȣ țȎ ȟȎȗȠȓ Ȁȩ ȠȜȔȓ ȚȜȔȓȦȪ ȕȎȑȞȡȔȎȠȪ ȘȜȒȩ ȟȐȜȖȣ ȝȞȜȑȞȎȚȚ țȎ ȟȎȗȠ pastebin.com ȖȟȝȜșȪȕȡȭ ȝȞȜȑȞȎȚȚȡ pastebin ȣȞȎțȭȧȡȬȟȭ Ȑ ȝȎȚȭȠȖ ȥȓȞȓȝȎȦȘȖ ǰ ȜȏȜșȜȥȘȓ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ȐȩȝȜșțȖ ȝȜȘȎȕȎțțȡȬ țȖ Ȕȓ ȘȜȚȎțȒȡ ȥȠȜȏȩ ȕȎȑȞȡȕȖȠȪ ȝȞȜȑȞȎȚȚȡ mydance țȎ ȟȎȗȠ pastebin.com: > pastebin put mydance Connecting to pastebin.com... Success. Uploaded as https://pastebin.com/BLCJbpQJ

Ƕ ǽȁǿȀȍȀǿȍ ȅdzǾdzǽǮȆǸǶ ǰ ǽǹȍǿ

83


Run «pastebin get BLCJbpQJ» to download anywhere

ǽȜȟșȓ ȕȎȑȞȡȕȘȖ ȝȞȜȑȞȎȚȚȩ Ȓșȭ țȓȓ ȏȡȒȓȠ ȟȑȓțȓȞȖȞȜȐȎț ȡțȖȘȎșȪțȩȗ Ȑȓȏ ȎȒȞȓȟ ǸȜȑȒȎ ȭ ȕȎȑȞȡȔȎș ȟȐȜȬ ȝȞȜȑȞȎȚȚȡ ȟ ȝȜȚȜȧȪȬ ȘȜȚȎțȒȩ pastebin ȟ ȟȎȗȠȎ ȝȞȖȦșȜ ȟȜȜȏȧȓțȖȓ ȥȠȜ ȝȞȜȑȞȎȚȚȎ mydance ȏȩșȎ ȡȟȝȓȦțȜ ȕȎȑȞȡȔȓțȎ ȝȜ ȎȒȞȓ ȟȡ https://pastebin.com/BLCJbpQJ/ ǽȜȟșȓ ȫȠȜȑȜ șȬȏȜȗ ȔȓșȎȬȧȖȗ ȚȜȔȓȠ ȝȞȜȟȚȜȠȞȓȠȪ ȚȜȬ ȝȞȜȑȞȎȚȚȡ ȝȓȞȓȗȒȭ ȝȜ ȫȠȜȚȡ ȎȒȞȓȟȡ Ȑ ȟȐȜȓȚ ȏȞȎȡȕȓȞȓ Ȁȩ ȠȜȔȓ ȚȜȔȓȦȪ ȕȎȑȞȡ ȕȖȠȪ ȚȜȬ ȝȞȜȑȞȎȚȚȡ Ȑ ȟȐȜȬ ȥȓȞȓȝȎȦȘȡ ȐȐȓȒȭ Ȑ ȜȏȜșȜȥȘȓ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ȟșȓȒȡȬȧȡȬ ȘȜȚȎțȒȡ > pastebin get BLCJbpQJ mydance Connecting to pastebin.com... Success. Downloaded as mydance

ǿȠȞȜȘȎ get BLCJbpQJ mydance ȟȜȜȏȧȎȓȠ ȟȎȗȠȡ pastebin.com ȥȠȜ Ƞȩ ȣȜȥȓȦȪ ȝȜșȡȥȖȠȪ ȝȞȜȑȞȎȚȚȡ ȟȜȣȞȎțȓțțȡȬ ȝȜ ȎȒȞȓȟȡ https pastebin.com/BLCJbpQJ/ Ȗ ȟȜȣȞȎțȖȠȪ ȓȓ Ȑ ȝȎȚȭȠȖ ȥȓȞȓȝȎȦȘȖ ȝȜȒ ȖȚȓțȓȚ mydance ȀȓȝȓȞȪ ȡ Ƞȓȏȭ ȓȟȠȪ ȟȝȜȟȜȏ ȕȎȑȞȡȔȎȠȪ ȢȎȗșȩ ȥȠȜȏȩ ȒȓșȖȠȪȟȭ ȖȚȖ ȟ ȒȞȡȑȖ ȚȖ ȝȞȜȑȞȎȚȚȖȟȠȎȚȖ dzȟșȖ ȘȜȚȎțȒȎ pastebin ȝȞȖ ȐȩȝȜșțȓțȖȖ ȜȠȜȏȞȎȔȎȓȠ ȟȜȜȏȧȓțȖȓ Connecting to pastebin.com... Failed. ȝȞȜ ȐȓȞȪ ȝȜȒȘșȬȥȓțȖȓ Ș ǶțȠȓȞțȓȠȡ Ȗ ȘȜȞȞȓȘȠțȜȟȠȪ ȡȘȎȕȎțțȜȑȜ ȎȞȑȡȚȓțȠȎ ȘȜȚȎțȒȩ ȕțȎȥȓțȖȭ BLCJbpQJ ȖșȖ șȬȏȜȑȜ ȒȞȡȑȜ ȑȜ ȎȒȞȓȟȎ țȎȕțȎȥȓțțȜȑȜ ȟȎȗȠȜȚ dzȟșȖ ȘȜȚȎțȒȎ pastebin ȐȩȐȜȒȖȠ ȟȜȜȏȧȓțȖȓ File already exists Ƞ ȓ ȢȎȗș ȡȔȓ ȟȡȧȓȟȠȐȡȓȠ ȠȜ ȟȡȧȓȟȠȐȡȬȧȡȬ ȝȞȜȑȞȎȚȚȡ mydance ȟțȎȥȎ șȎ ȟșȓȒȡȓȠ ȡȒȎșȖȠȪ ǸȎȘ" ȅȖȠȎȗ ȒȎșȪȦȓ

ğĐČėđęĔđ ĠČĕėĚĎ Ĕē ěČĘīĞĔ ģđĜđěČĤĖĔ ǸȜȑȒȎ Ƞȩ ȕȎȝȡȟȘȎȓȦȪ ȝȞȜȑȞȎȚȚȡ pastebin Ƞȩ ȟȜȜȏȧȎȓȦȪ ȓȗ ȥȠȜ ȣȜȥȓȦȪ ȕȎȑȞȡȕȖȠȪ ȢȎȗș Ȗ ȟȜȣȞȎțȖȠȪ ȓȑȜ ȝȜȒ ȖȚȓțȓȚ mydance Ȑ ȝȎȚȭȠȖ ȥȓȞȓȝȎȦȘȖ ǻȜ ȓȟșȖ ȝȞȜȑȞȎȚȚȎ ȟ ȠȎȘȖȚ ȖȚȓțȓȚ ȡȔȓ ȟȡȧȓȟȠȐȡȓȠ țȎȝȞȖȚȓȞ ȠȎ ȘȜȠȜȞȡȬ Ƞȩ ȟȜȕȒȎș ȟ ȝȜȚȜȧȪȬ ȘȜȚȎțȒȩ edit mydance țȡȔțȜ ȐȩȏȞȎȠȪ ȒȞȡȑȜȓ ȖȚȭ ȖșȖ ȡȒȎșȖȠȪ ȟȡȧȓȟȠȐȡȬȧȡȬ ȝȞȜȑȞȎȚȚȡ mydance.

84

DZǹǮǰǮ


Dzșȭ ȡȒȎșȓțȖȭ ȝȞȜȑȞȎȚȚȩ Ȗȕ ȝȎȚȭȠȖ ȥȓȞȓȝȎȦȘȖ ȐȐȓȒȖ ȘȜȚȎțȒȡ delete Ȏ ȕȎȠȓȚ ȖȚȭ ȡȒȎșȭȓȚȜȗ ȝȞȜȑȞȎȚȚȩ ǻȎ ȝȞȖȚȓȞ ȠȎȘ > delete mydance

ȋȠȎ ȘȜȚȎțȒȎ ȡȒȎșȖȠ ȝȞȜȑȞȎȚȚȡ mydance ȀȓȝȓȞȪ ȥȠȜȏȩ ȕȎȑȞȡȕȖȠȪ ȝȞȜȑȞȎȚȚȡ Ȗȕ ǶțȠȓȞțȓȠȎ Ƞȩ ȟțȜȐȎ ȚȜȔȓȦȪ Ȑȩ ȝȜșțȖȠȪ ȘȜȚȎțȒȡ pastebin get BLCJbpQJ mydance.

ĚďĜČęĔģđęĔī ęČ ĝČĕĞđ 8);<-*16 +75 ǶȚȓȗ Ȑ ȐȖȒȡ ȥȠȜ Ȓșȭ ȘȎȔȒȜȑȜ ȟȓȞȐȓȞȎ 0LQHFUDIW ȟȎȗȠ pastebin.com ȝȜȕȐȜșȭȓȠ ȐȩȝȜșțȭȠȪ țȓ ȏȜșȓȓ ȕȎȑȞȡȕȜȘ Ȑ ȟȡȠȘȖ ȋȠȜ ȜȑȞȎțȖȥȓțȖȓ ȚȜȔȓȠ ȕȎȠȞȡȒțȖȠȪ ȜȏțȜȐșȓțȖȓ ȝȞȜȑȞȎȚȚ ȜȟȜȏȓțțȜ ȓȟșȖ țȎ ȠȐȜȓȚ ȟȓȞȐȓȞȓ ȚțȜȔȓȟȠȐȜ ȖȑȞȜȘȜȐ

<=:<4-)88;<7:-.+75 DzȓșȖȠȪȟȭ ȟȐȜȖȚȖ ȝȞȜȑȞȎȚȚȎȚȖ Ȑ ǶțȠȓȞțȓȠȓ Ȗ ȏȓȕ ȜȑȞȎțȖ ȥȓțȖȗ ȚȜȔțȜ ȠȎȘȔȓ țȎ ȟȎȗȠȓ turtleappstore.com ǰȚȓȟȠȜ ȘȜȚȎțȒȩ pastebin ȚȜȔțȜ ȖȟȝȜșȪȕȜȐȎȠȪ ȝȞȜȑȞȎȚȚȡ appstore Dzșȭ ȓȓ ȕȎȑȞȡȕȘȖ Ȑ ȜȏȜșȜȥȘȓ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ Ȑȩ ȝȜșțȖ ȘȜȚȎțȒȡ pastebin get iXRkjNsG appstore: > pastebin get iXRkjNsG appstore Connecting to pastebin.com... Success. Downloaded as appstore

ǸȜȚȎțȒȎ appstore ȡȚȓȓȠ ȕȎȑȞȡȔȎȠȪ ȝȞȜȑȞȎȚȚȩ Ȑ ȝȎ ȚȭȠȪ ȥȓȞȓȝȎȦȘȖ ȠȎȘ Ȕȓ ȘȎȘ Ȗ pastebin ǻȎȝȞȖȚȓȞ Ƞȩ ȚȜȔȓȦȪ ȐȩȝȜșțȖȠȪ ȘȜȚȎțȒȡ appstore get AlSweigart mydance ȥȠȜȏȩ ȕȎȑȞȡȕȖȠȪ ȚȜȬ ȝȞȜȑȞȎȚȚȡ mydance Ȗȕ ȚȜȓ ȑȜ ȎȘȘȎȡțȠȎ țȎ Ȑȓȏ ȟȎȗȠȓ turtleappstore.com. ȅȠȜȏȩ ȕȎȑȞȡȔȎȠȪ ȟȐȜȖ ȝȞȜȑȞȎȚȚȩ Ȗ ȟȘȎȥȖȐȎȠȪ ȝȞȜȑȞȎȚ Țȩ ȒȞȡȑȖȣ ȝȜșȪȕȜȐȎȠȓșȓȗ ȝȓȞȓȗȒȖ țȎ ȟȎȗȠ turtleappstore. com Ȗ ȏȓȟȝșȎȠțȜ ȕȎȞȓȑȖȟȠȞȖȞȡȗȟȭ ǻȎ ȫȠȜȚ ȟȎȗȠȓ Ƞȩ țȎȗ ȒȓȦȪ ȝȞȜȑȞȎȚȚȩ țȎȝȖȟȎțțȩȓ ȒȞȡȑȖȚȖ ȝȜșȪȕȜȐȎȠȓșȭȚȖ Ȗ ȟȚȜȔȓȦȪ ȝȞȜȟȚȜȠȞȓȠȪ Ȗȣ ȘȜȒ ǻȎ ȫȠȜȚ ȟȎȗȠȓ ȠȎȘȔȓ ȞȎȕ Țȓȧȓțȩ Ȑȟȓ ȝȞȜȑȞȎȚȚȩ Ȗȕ ȫȠȜȗ ȘțȖȑȖ

Ƕ ǽȁǿȀȍȀǿȍ ȅdzǾdzǽǮȆǸǶ ǰ ǽǹȍǿ

85


ĐĚěĚėęĔĞđėĨęĚđ ēČĐČęĔđ" čđďğĥĔĕ Ď ėČčĔĜĔęĞđ

Построй небольшой лабиринт из блоков, как показано на рис. 4.6, а затем напиши программу для черепашки, которая сможет пройти через него. Тебе придется точно запрограммировать ходы черепашки, чтобы она смогла выбраться из лабиринта. Если черепашка застрянет, ты всегда сможешь начать все сначала, вернув черепашку на исходную позицию.

ˀ̛̭͘ 4.6. ˋ̡̖̬̖̪̹̌̌ ̦̌ ̵̨̖̏̔ ̏ ̨̨̣̹̜̍̽ ̛̛̣̬̦̯̌̍

ģĞĚ Ęħ ğēęČėĔ ǰ ȫȠȜȗ ȑșȎȐȓ Ƞȩ ȖȕȡȥȖș țȓȟȘȜșȪȘȜ țȜȐȩȣ ȘȜțȤȓȝȤȖȗ ȝȞȜ ȑȞȎȚȚȖȞȜȐȎțȖȭ Ȁȩ ȡȕțȎș ȘȎȘ ȖȟȝȜșȪȕȜȐȎȠȪ ȘȜȚȚȓțȠȎ ȞȖȖ ȥȠȜȏȩ ȒȓșȎȠȪ ȕȎȚȓȠȘȖ ȘȜȠȜȞȩȓ ȖțȠȓȞȝȞȓȠȎȠȜȞ /XD ȖȑțȜȞȖȞȡȓȠ ȋȠȖ ȘȜȚȚȓțȠȎȞȖȖ ȚȜȑȡȠ ȟșȡȔȖȠȪ țȎȝȜȚȖțȎțȖ ȓȚ ȖșȖ ȜȝȖȟȎțȖȓȚ ȠȜȑȜ Ȓșȭ ȥȓȑȜ ȟșȡȔȎȠ ȞȎȕșȖȥțȩȓ ȥȎȟȠȖ ȠȐȜȓȗ ȝȞȜȑȞȎȚȚȩ ǼȒțȜȟȠȞȜȥțȩȓ ȘȜȚȚȓțȠȎȞȖȖ țȎȥȖțȎȬȠ ȟȭ ȟ ȟȖȚȐȜșȜȐ –- Ȗ ȕȎȘȎțȥȖȐȎȬȠȟȭ Ȑ ȘȜțȤȓ ȟȠȞȜȘȖ Ȏ ȚțȜȑȜ ȟȠȞȜȥțȩȓ ȝȜȚȓȧȎȬȠȟȭ ȚȓȔȒȡ ȟȖȚȐȜșȎȚȖ --[[ Ȗ ]]. Ȁȩ țȎȡȥȖșȟȭ ȝȓȞȓȚȓȧȎȠȪ ȥȓȞȓȝȎȦȘȡ ȟ ȝȜȚȜȧȪȬ ȢȡțȘ ȤȖȗ ȒȐȖȔȓțȖȭ turtle.forward() turtle.back() turtle. turnLeft() turtle.turnRight() turtle.up() Ȗ turtle. down().

86

DZǹǮǰǮ


ǰ ȫȠȜȗ ȑșȎȐȓ ȠȎȘȔȓ ȞȎȟȟȚȜȠȞȓț țȜȐȩȗ ȟȝȜȟȜȏ ȡȝȞȎȐșȓ țȖȭ ȝȜȠȜȘȜȚ ȖȟȝȜșțȓțȖȭ țȎȕȩȐȎȓȚȩȗ ȤȖȘșȜȚ for ȋȠȖ ȤȖ Șșȩ ȝȜȕȐȜșȭȬȠ ȖȟȝȜșțȭȠȪ ȜȒȖț Ȗ ȠȜȠ Ȕȓ ȏșȜȘ ȘȜȒȎ ȡȘȎȕȎț țȜȓ ȘȜșȖȥȓȟȠȐȜ ȞȎȕ ȀȓȝȓȞȪ Ƞȩ ȚȜȔȓȦȪ ȖȟȝȜșȪȕȜȐȎȠȪ ȝȞȜȑȞȎȚȚȡ pastebin ȘȜȠȜȞȎȭ ȝȞȓȒȡȟȠȎțȜȐșȓțȎ Ȑ ȝȎȚȭȠȖ ȥȓȞȓȝȎȦȓȘ &RPSXWHU &UDIW ȥȠȜȏȩ ȒȓșȖȠȪȟȭ ȟȐȜȖȚȖ ȝȞȜȑȞȎȚȚȎȚȖ ȟ ȒȞȡȕȪȭȚȖ Ȑ ǶțȠȓȞțȓȠȓ țȎ ȟȎȗȠȓ pastebin.com ǮțȎșȜȑȖȥțȩȓ ȐȜȕȚȜȔ țȜȟȠȖ ȝȞȓȒȜȟȠȎȐșȭȓȠ ȝȞȜȑȞȎȚȚȎ appstore ȓȟșȖ ȝȜȟȓȠȖȠȪ ȟȎȗȠ turtleappstore.com. ǰ ȟșȓȒȡȬȧȓȗ ȑșȎȐȓ Țȩ ȡȟȜȐȓȞȦȓțȟȠȐȡȓȚ ȝȞȜȑȞȎȚȚȡ mydance țȎȡȥȖȚȟȭ ȖȟȝȜșȪȕȜȐȎȠȪ țȜȐȩȓ ȠȖȝȩ ȒȎțțȩȣ Ȝȝȓ ȞȎȠȜȞȩ Ȗ ȖțȟȠȞȡȘȤȖȖ ȡȝȞȎȐșȓțȖȭ ȝȜȠȜȘȜȚ ȋȠȖ țȜȐȩȓ ȕțȎ țȖȭ ȝȜȕȐȜșȭȠ Ƞȓȏȓ ȎȐȠȜȚȎȠȖȕȖȞȜȐȎȠȪ ȠȞȡȒ ȥȓȞȓȝȎȦȓȘ 0LQH FUDIW


5 ģđĜđěČĤĖĔ · ĖĚĜĚėđĎħ ĞČęĢěĚėČ ȀȎțȤȓȐȎșȪțȎȭ ȝȞȜȑȞȎȚȚȎ Ȑ ȑșȎȐȓ ȏȩșȎ ȒȜ ȐȜșȪțȜ ȝȞȜȟȠȜȗ ȥȓȞȓȝȎȦȘȎ ȝȞȜȟȠȜ ȝȜȐȠȜȞȭ șȎ ȜȒțȖ Ȗ Ƞȓ Ȕȓ ȒȐȖȔȓțȖȭ ǰ ȫȠȜȗ ȑșȎȐȓ Țȩ ȟȜȕȒȎȒȖȚ țȜȐȡȬ ȝȞȜȑȞȎȚȚȡ ȝȜȒ ȡȝȞȎȐșȓțȖȓȚ ȘȜȠȜȞȜȗ ȥȓȞȓȝȎȦȘȎ ȏȡȒȓȠ ȟȜȐȓȞȦȎȠȪ ȞȎȕșȖȥțȩȓ ȒȐȖȔȓțȖȭ ȟșȡȥȎȗțȩȚ ȜȏȞȎȕȜȚ ǰȜ ȐȞȓȚȭ ȞȎȕȞȎȏȜȠ ȘȖ ȫȠȜȗ ȝȞȜȑȞȎȚȚȩ Ƞȩ ȡȕțȎȓȦȪ Ȝ ȤȖȘșȓ while șȜȑȖȥȓȟȘȖȣ ȠȖȝȎȣ ȒȎțțȩȣ Ȗ ȟȝȓȤȖȎșȪțȜȚ ȕțȎȥȓțȖȖ nil Ȏ ȠȎȘȔȓ Ȝ ȠȜȚ ȘȎȘ ȕȎȝȡȟȘȎȠȪ ȖșȖ ȝȞȜȝȡȟȘȎȠȪ ȏșȜȘȖ ȘȜȒȎ Ȑ ȕȎȐȖȟȖȚȜȟȠȖ ȜȠ ȟȜȏșȬȒȓțȖȭ ȖșȖ țȎȜȏȜȞȜȠ țȓȟȜȏșȬȒȓțȖȭ ȜȝȞȓȒȓșȓțțȩȣ ȡȟșȜȐȖȗ

ĜČēĜČčĚĞĖČ ěĜĚďĜČĘĘħ ǰ ȜȏȜșȜȥȘȓ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ȕȎȝȡȟȠȖ ȠȓȘȟȠȜȐȩȗ ȞȓȒȎȘȠȜȞ ȐȩȝȜșțȖȐ ȘȜȚȎțȒȡ edit mydance2. ǰ ȠȓȘȟȠȜȐȜȚ ȞȓȒȎȘȠȜȞȓ ȐȐȓȒȖ ȝȜȘȎȕȎțțȩȓ țȖȔȓ ȟȠȞȜȘȖ ȘȜȒȎ ǻȓ ȕȎȏȡȒȪ ȥȠȜ țȜȚȓȞȎ ȟȠȞȜȘ ȡȘȎȕȩȐȎȠȪ țȓ țȡȔțȜ ǰ ȘțȖȑȓ ȜțȖ Ȓșȭ ȡȒȜȏȟȠȐȎ ȥȠȜȏȩ ȏȩșȜ ȚȜȔțȜ ȜȏȞȎȧȎȠȪȟȭ Ș ȟȠȞȜȘȎȚ ȝȜ Ȗȣ țȜȚȓȞȎȚ mydance2 1. --[[ɍɥɭɱɲɟɧɧɚɹ ɉɪɨɝɪɚɦɦɚ ɬɚɧɰɭɥɟɤ ɗɥɚ ɋɜɟɣɝɚɪɬɚ 2. Make the turtle dance better!]]

88

DZǹǮǰǮ


3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43.

local isUp = false local isBack = false local danceMove print('Hold Ctrl-T to stop dancing.') while true do danceMove = math.random(1, 5) if danceMove == 1 then -- ɩɨɜɨɪɨɬ ɧɚɥɟɜɨ print('Turn to the left!') turtle.turnLeft() elseif danceMove == 2 then -- ɩɨɜɨɪɨɬ ɧɚɩɪɚɜɨ print('Turn to the right!') turtle.turnRight() elseif danceMove == 3 then -- ɞɜɢɠɟɧɢɹ ɜɩɟɪɟɞ ɧɚɡɚɞ if isBack then print('Move forward!') turtle.forward() isBack = false else print('Move back!') turtle.back() isBack = true end elseif danceMove == 4 then -- ɞɜɢɠɟɧɢɹ ɜɜɟɪɯ/ɜɧɢɡ if isUp then print('Get down!') turtle.down() isUp = false else print('Get up!') turtle.up() isUp = true end

ȅdzǾdzǽǮȆǸǶ ² ǸǼǾǼǹdzǰȉ ȀǮǻȄǽǼǹǮ

89


44. 45. else 46. -- ɤɪɭɠɢɬɫɹ 47. print('Spin!') 48. for i = 1, 4 do 49. turtle.turnLeft() 50. end 51. end 52. end

ǿȜȣȞȎțȖ ȝȞȜȑȞȎȚȚȡ ȝȜȟșȓ ȐȐȜȒȎ Ȑȟȓȣ ȖțȟȠȞȡȘȤȖȗ ǻȎ ȔȎȐ ȘșȎȐȖȦȡ Ctrl ȜȠȘȞȜȗ ȚȓțȬ ǰȩȏȓȞȖ ȝȡțȘȠ [Save] Ȗ țȎȔȚȖ ȘșȎȐȖȦȡ Enter ǵȎȠȓȚ ȐȩȗȒȖ Ȗȕ ȞȓȒȎȘȠȜȞȎ țȎȔȎȐ ȘșȎȐȖȦȡ Ctrl ȐȩȏȞȎȐ ȝȡțȘȠ [Exit] Ȗ țȎȔȎȐ ȘșȎȐȖȦȡ Enter.

ēČěğĝĖ ěĜĚďĜČĘĘħ 5A,)6+- ǽȜȟșȓ ȐȩȣȜȒȎ Ȗȕ ȞȓȒȎȘȠȜȞȎ Ȑ ȜȏȜșȜȥȘȓ ȘȜȚȎțȒțȜȗ ȟȠȞȜ ȘȖ ȕȎȝȡȟȠȖ ȝȞȜȑȞȎȚȚȡ myd ance2 ǿȞȎȕȡ ȝȜȟșȓ ȕȎȝȡȟȘȎ ȝȞȜȑȞȎȚȚȩ țȎȔȚȖ ȘșȎȐȖȦȡ Esc Ȗ ȝȜțȎȏșȬȒȎȗ ȘȎȘ ȥȓȞȓ ȝȎȦȘȎ ȟȜȐȓȞȦȎȓȠ ȟșȡȥȎȗțȩȓ ȠȎțȤȓȐȎșȪțȩȓ ȒȐȖȔȓțȖȭ Ƕȟ ȝȜșțȓțȖȓ ȝȞȜȑȞȎȚȚȩ ȏȡȒȓȠ ȝȞȜȒȜșȔȎȠȪȟȭ ȒȜ Ƞȓȣ ȝȜȞ ȝȜȘȎ Ƞȩ țȓ ȜȟȠȎțȜȐȖȦȪ ȓȓ ȡȒȓȞȔȖȐȎȭ ȟȜȥȓȠȎțȖȓ ȘșȎȐȖȦ Ctrl+T Ȑ ȠȓȥȓțȖȓ ȜȒțȜȗ ȟȓȘȡțȒȩ ǽȜȟșȓ ȜȟȠȎțȜȐȘȖ ȝȞȜȑȞȎȚȚȩ ȐȓȞțȖȟȪ Ȑ ȘȜȚȎțȒțȡȬ ȜȏȜșȜȥȘȡ ȑȒȓ Ƞȩ ȡȐȖȒȖȦȪ ȝȞȖȚȓȞțȜ ȟșȓȒȡȬȧȓȓ > mydance2 Hold Ctrl-T to stop dancing. Spin! Get down! Move back! Move forward! Spin! Get up! Turn to the left! Terminated

ǻȎ ȞȖȟ. 5.1 ȝȜȘȎȕȎțȎ ȐȓȞȠȭȧȎȭȟȭ ȥȓȞȓȝȎȦȘȎ.

90

DZǹǮǰǮ


ˀ̛̭͘ ϱ͘ϭ͘ ʦ̖̬̯̺̭́̌́́ ̸̡̖̬̖̪̹̌̌

dzȟșȖ ȝȞȖ ȕȎȝȡȟȘȓ ȫȠȜȗ ȝȞȜȑȞȎȚȚȩ ȐȜȕțȖȘȎȬȠ ȜȦȖȏȘȖ ȠȧȎȠȓșȪțȜ ȟȞȎȐțȖ ȟȐȜȗ ȘȜȒ ȟ șȖȟȠȖțȑȜȚ Ȑ ȫȠȜȗ ȘțȖȑȓ ȐȜȕ ȚȜȔțȜ Ƞȩ țȎȗȒȓȦȪ ȡ ȟȓȏȭ ȜȝȓȥȎȠȘȖ dzȟșȖ ȝȞȜȑȞȎȚȚȡ Ȗȟ ȝȞȎȐȖȠȪ țȓ ȡȒȎȓȠȟȭ ȡȒȎșȖ ȢȎȗș ȐȩȝȜșțȖȐ ȘȜȚȎțȒȡ delete mydance2 Ȗ ȕȎȑȞȡȕȖ ȝȞȜȑȞȎȚȚȡ ȕȎțȜȐȜ ȐȩȝȜșțȖȐ ȘȜȚȎțȒȡ pastebin get QAH0uYqS mydance2. ǸȜȒ ȝȞȜȑȞȎȚȚȩ mydance2 ȟȜȒȓȞȔȖȠ șȜȑȖȥȓȟȘȖȓ ȠȖȝȩ ȒȎțțȩȣ ȟȝȓȤȖȎșȪțȜȓ ȕțȎȥȓțȖȓ nil ȤȖȘșȩ while Ȗț ȟȠȞȡȘȤȖȖ if Ȗ ȚțȜȑȜȓ ȒȞȡȑȜȓ DzȎȐȎȗ ȞȎȟȟȚȜȠȞȖȚ Ȑȟȓ ȫȠȜ ȦȎȑ ȕȎ ȦȎȑȜȚ

ėĚďĔģđĝĖĔđ ĞĔěħ ĐČęęħġ ǽȓȞȐȎȭ ȝȎȞȎ ȟȠȞȜȘ ȘȜȒȎ ȝȞȜȑȞȎȚȚȩ ȟȜȒȓȞȔȖȠ ȘȜȚȚȓțȠȎ ȞȖȖ ȘȜȠȜȞȩȓ ȝȜȭȟțȭȬȠ ȥȠȜ ȫȠȜ ȕȎ ȝȞȜȑȞȎȚȚȎ Ȗ ȘȠȜ ȓȓ ȎȐ ȠȜȞ ǿȠȞȜȘȖ Ȗ ² ȫȠȜ ȖțȟȠȞȡȘȤȖȖ ȝȞȖȟȐȎȖȐȎțȖȭ: mydance2 1. --[[ɍɥɭɱɲɟɧɧɚɹ ɩɪɨɝɪɚɦɦɚ ɬɚɧɰɭɥɟɤ ɗɥɚ ɋɜɟɣɝɚɪɬɚ 2. Make the turtle dance better!]] 3. 4. local isUp = false 5. local isBack = false

ǼȏȓȖȚ ȝȓȞȓȚȓțțȩȚ isUp Ȗ isBack ȝȞȖȟȐȎȖȐȎȬȠȟȭ ȕțȎȥȓțȖȭ false ȀȎȘ Ƞȩ ȟȜȜȏȧȎȓȦȪ ȝȞȜȑȞȎȚȚȓ ȥȠȜ ȫȠȜ țȓ ȟȠȞȜȘȜȐȩȓ ȕțȎȥȓțȖȭ ȠȎȘ ȘȎȘ ȜțȖ țȓ ȜȘȞȡȔȓțȩ ȜȒȖțȎȞ țȩȚȖ ȖșȖ ȒȐȜȗțȩȚȖ ȘȎȐȩȥȘȎȚȖ ȋȠȜ șȜȑȖȥȓȟȘȖȓ ȖșȖ ȏȡșȓȐȩ ȕțȎȥȓțȖȭ ³ țȜȐȩȗ ȠȖȝ ȒȎțțȩȣ ǹȜȑȖȥȓȟȘȖȓ ȝȓȞȓ Țȓțțȩȓ ȚȜȑȡȠ ȝȞȖțȖȚȎȠȪ șȖȦȪ ȜȒțȜ Ȗȕ ȒȐȡȣ șȜȑȖȥȓȟȘȖȣ ȕțȎȥȓțȖȗ true ȖȟȠȖțȎ ȖșȖ false șȜȔȪ ǿșȜȐȜ ©ȏȡșȓȐȜª

ȅdzǾdzǽǮȆǸǶ ² ǸǼǾǼǹdzǰȉ ȀǮǻȄǽǼǹǮ

91


ȝȞȜȖȟȣȜȒȖȠ ȜȠ ȢȎȚȖșȖȖ ȖȕȐȓȟȠțȜȑȜ ȚȎȠȓȚȎȠȖȘȎ XIX ȐȓȘȎ DzȔȜȞȒȔȎ ǯȡșȭ

ȀȎțȓȤ ȥȓȞȓȝȎȦȓȘ ȐȘșȬȥȎȓȠ ȒȐȖȔȓțȖȭ ȐȐȓȞȣ Ȗ țȎȕȎȒ ȅȠȜ ȏȩ ȥȓȞȓȝȎȦȘȎ țȓ ȟșȖȦȘȜȚ ȡȒȎșȭșȎȟȪ ȜȠ ȟȐȜȓȑȜ ȖȟȣȜȒțȜȑȜ ȝȜ șȜȔȓțȖȭ Țȩ ȐȐȜȒȖȚ ȝȓȞȓȚȓțțȩȓ isUp Ȗ isBack ȟ ȝȜȚȜȧȪȬ ȘȜȠȜȞȩȣ ȏȡȒȓȚ ȜȠȟșȓȔȖȐȎȠȪ ȝȓȞȓȚȓȧȎșȎȟȪ șȖ ȥȓȞȓȝȎȦȘȎ ȐȐȓȞȣ ȖșȖ țȎȕȎȒ ȃȜȠȭ ȫȠȖ ȝȓȞȓȚȓțțȩȓ Ȗ ȜȏȨȭȐșȭȬȠȟȭ Ȑ țȎ ȥȎșȓ ȝȞȜȑȞȎȚȚȩ ȖȟȝȜșȪȕȡȓȚ Țȩ Ȗȣ Ȑ ȟȎȚȜȚ ȘȜțȤȓ ȘȜȒȎ

ĞĔě ĐČęęħġ 614 Ɉɛɪɚɬɢ ɜɧɢɦɚɧɢɟ ɜ ɫɬɪɨɤɟ ɨɛɴɹɜɥɹɟɬɫɹ ɩɟɪɟɦɟɧɧɚɹ danceMove ɛɟɡ ɩɪɢɫɜɨɟɧɢɹ ɟɣ ɡɧɚɱɟɧɢɹ mydance2 6. local danceMove

ǻȓȟȚȜȠȞȭ țȎ ȠȜ ȥȠȜ ȫȠȜ țȓ ȝȞȜȝȖȟȎțȜ Ȑ ȘȜȒȓ ȭȐțȜ ȝȓȞȓ ȚȓțțȜȗ danceMove ȎȐȠȜȚȎȠȖȥȓȟȘȖ ȝȞȖȟȐȎȖȐȎȓȠȟȭ ȕțȎȥȓ țȖȓ nil. nil ² ȓȒȖțȟȠȐȓțțȜȓ ȕțȎȥȓțȖȓ ȠȖȝȎ ȒȎțțȩȣ ȘȜ ȠȜȞȜȓ ȠȎȘ Ȗ țȎȕȩȐȎȓȠȟȭ ² nil ȀȖȝ ȒȎțțȩȣ nil ȜȕțȎȥȎȓȠ ȥȠȜ ȕțȎȥȓțȖȭ țȓȠ ȜțȜ ȜȠȟȡȠȟȠȐȡȓȠ ǹȬȏȎȭ șȜȘȎșȪțȎȭ Ȗț ȟȠȞȡȘȤȖȭ ȘȜȠȜȞȎȭ țȓ ȝȞȖȟȐȎȖȐȎȓȠ ȕțȎȥȓțȖȭ ȜȏȨȭȐșȓțțȜȗ ȝȓȞȓȚȓțțȜȗ ȝȞȖȟȐȎȖȐȎȓȠ ȓȗ ȕțȎȥȓțȖȓ nil ǸȜȒ Ȑ ȟȠȞȜȘȓ ȞȎȐțȜȕțȎȥȓț ȟȠȞȜȘȓ danceMove = nil.

ĢĔĖė ?014ǽȜȚȖȚȜ ȤȖȘșȎ for ȟȡȧȓȟȠȐȡȓȠ Ȗ ȒȞȡȑȜȗ ȠȖȝ ȤȖȘșȎ ² while. ȋȠȜȠ ȤȖȘș ȖȟȝȜșțȭȓȠ ȏșȜȘ ȘȜȒȎ ȒȜ Ƞȓȣ ȝȜȞ ȝȜȘȎ ȐȩȝȜș țȭȓȠȟȭ ȘȎȘȜȓ șȖȏȜ ȡȟșȜȐȖȓ Ƞ ȓ ȓȑȜ ȕțȎȥȓțȖȓ ȞȎȐțȜ true ȁȟșȜȐȖȓ ² ȫȠȜ ȐȩȞȎȔȓțȖȓ ȘȜȠȜȞȜȓ ȚȜȔȓȠ ȏȩȠȪ ȖȟȠȖțțȩȚ (true ȖșȖ șȜȔțȩȚ false ȁȟșȜȐȖȓ ² ȫȠȜ ȘȜțȠȞȜșȪțȎȭ ȥȎȟȠȪ ȖțȟȠȞȡȘȤȖȖ while ȜțȜ ȝȞȜȐȓȞȭȓȠȟȭ ȐȜ ȐȞȓȚȭ ȘȎȔȒȜȗ ȖȠȓȞȎȤȖȖ Ȏ ȏșȜȘ ȘȜȒȎ ² ȖȟȝȜșțȭȓȚȎȭ ȥȎȟȠȪ ȠȜ ȓȟȠȪ Ȓȓȗ ȟȠȐȖȓ ȘȜȠȜȞȜȓ ȒȜșȔțȜ ȐȩȝȜșțȭȠȪȟȭ ȓȟșȖ ȡȟșȜȐȖȓ ȖȟȠȖțțȜ ǿȠȞȜȘȎ ȟȜȒȓȞȔȖȠ țȎȝȜȚȖțȎțȖȓ ȖȑȞȜȘȡ Ȝ ȠȜȚ ȥȠȜ Ȝț ȚȜȔȓȠ ȕȎȐȓȞȦȖȠȪ ȝȞȜȑȞȎȚȚȡ ȡȒȓȞȔȖȐȎȭ ȟȜȥȓȠȎțȖȓ ȘșȎ ȐȖȦ Ctrl+T Ȏ ȘȜȒ Ȑ ȟȠȞȜȘȓ ² ȫȠȜ ȖțȟȠȞȡȘȤȖȭ while:

92

DZǹǮǰǮ


mydance2 7. print('Hold Ctrl-T to stop dancing.') 8. while true do 9. danceMove = math.random(1, 5)

ǿȖțȠȎȘȟȖȟ ȖțȟȠȞȡȘȤȖȖ ȟȜȟȠȜȖȠ Ȗȕ ȘșȬȥȓȐȜȑȜ ȟșȜȐȎ while ȕȎ ȘȜȠȜȞȩȚ ȟșȓȒȡȓȠ ȡȟșȜȐȖȓ Ȑ ȒȎțțȜȚ ȟșȡȥȎȓ true Ȗ ȘșȬȥȓȐȜȓ ȟșȜȐȜ do ȘȜȠȜȞȜȓ ȜȠȚȓȥȎȓȠ țȎȥȎșȜ ȏșȜȘȎ Ƕȟ ȝȜșțȭȓȚȩȓ ȖțȟȠȞȡȘȤȖȖ țȎȣȜȒȭȠȟȭ ȐțȡȠȞȖ ȏșȜȘȎ ȘȜȒȎ ȘȜ ȠȜȞȩȗ țȎȥȖțȎȓȠȟȭ Ȑ ȟȠȞȜȘȓ ǸȜțȓȤ ȏșȜȘȎ ȜȠȚȓȥȓț ȘșȬȥȓ ȐȩȚ ȟșȜȐȜȚ end ǽȜȟȘȜșȪȘȡ Ȑ ȫȠȜȗ ȝȞȜȑȞȎȚȚȓ ȏșȜȘ ȤȖȘșȎ ȒșȖțțȩȗ ȐȜ ȢȞȎȑȚȓțȠȓ ȘȜȒȎ ȐȩȦȓ ȝȜȘȎȕȎțȎ șȖȦȪ ȝȓȞȐȎȭ ȟȠȞȜȘȎ ȏșȜȘȎ Ȗ țȓ ȝȜȘȎȕȎțȜ ȘșȬȥȓȐȜȓ ȟșȜȐȜ end ȘȜȠȜȞȜȓ țȎ ȣȜȒȖȠȟȭ Ȑ ȟȠȞȜȘȓ ǸȜȑȒȎ ȖȟȝȜșțȓțȖȓ ȝȞȜȑȞȎȚȚȩ ȒȜȟȠȖ ȑȎȓȠ ȘșȬȥȓȐȜȑȜ ȟșȜȐȎ end ȡȝȞȎȐșȓțȖȓ ȝȓȞȓȒȎȓȠȟȭ Ȑ țȎȥȎșȜ ȏșȜȘȎ ȑȒȓ ȕȎțȜȐȜ ȝȞȜȐȓȞȭȓȠȟȭ ȡȟșȜȐȖȓ ȀȎȘȖȚ ȜȏȞȎȕȜȚ Ȑȩ ȝȜșțȓțȖȓ ȤȖȘșȎ ȖȠȓȞȎȤȖȖ ȝȞȜȒȜșȔȎȓȠȟȭ ȒȜ Ƞȓȣ ȝȜȞ ȝȜȘȎ ȡȟșȜȐȖȓ ȖȟȠȖțțȜ Ƞ ȓ ȞȎȐțȜ true ǸȜȑȒȎ ȡȟșȜȐȖȓ ȟȠȎțȜȐȖȠȟȭ șȜȔțȩȚ false ȤȖȘș while ȕȎȐȓȞȦȎȓȠȟȭ ǻȎ ȞȖȟ ȝȜȘȎȕȎț ȝȞȖȚȓȞ ȤȖȘșȎ while. Если это условие оценивается как true, выполняется внутренний блок кода. Если это условие оценивается как false, выполнение цикла прекращается.

while coal < 10 do moveType = math.random(1, 5) ...пропуск...

При достижении слова end исполнение вновь переходит к началу цикла.

end

ˀ̛̭͘ ϱ͘Ϯ͘ ʰ̨̛̭̪̣̦̖̦̖ ̶̡̛̣̌ while͘

ȄȖȘș while ȖȟȝȜșțȭȓȠȟȭ ȒȜ Ƞȓȣ ȝȜȞ ȝȜȘȎ ȡȟșȜȐȖȓ țȓ ȝȞȖȚȓȠ ȕțȎȥȓțȖȓ false ȖșȖ nil ǰȜ ȚțȜȑȖȣ ȡȟșȜȐȖȭȣ Ȗȟ ȝȜșȪȕȡȬȠȟȭ ȜȝȓȞȎȠȜȞȩ ȟȞȎȐțȓțȖȭ ȘȎȘ Ȗ Ȑ ȫȠȜȚ ȝȞȖȚȓȞȓ ǵȒȓȟȪ Ȑ ȡȟșȜȐȖȖ ȖȟȝȜșȪȕȡȓȠȟȭ ȐȩȞȎȔȓțȖȓ coal < 10 ȘȜ ȠȜȞȜȓ ȝȞȜȐȓȞȭȓȠ ȕțȎȥȓțȖȓ ȝȓȞȓȚȓțțȜȗ coal ȚȓțȪȦȓ șȖ ȜțȜ 10 ǽȜȕȔȓ Ȑ ȫȠȜȗ ȑșȎȐȓ Ƞȩ ȡȕțȎȓȦȪ ȏȜșȪȦȓ Ȝȏ ȜȝȓȞȎȠȜȞȎȣ ȟȞȎȐțȓțȖȭ ȁȟșȜȐȖȭ Ȑ ȘȜȠȜȞȩȣ ȖȟȝȜșȪȕȡȬȠȟȭ ȜȝȓȞȎȠȜȞȩ ȟȞȎȐțȓțȖȭ ȚȜȑȡȠ ȝȞȖțȖȚȎȠȪ ȕțȎȥȓțȖȓ ȘȎȘ true ȠȎȘ Ȗ false dzȟșȖ ȡȘȎȕȎțțȜȓ Ȑ ȡȟșȜȐȖȖ ȥȖȟșȜȐȜȓ ȖșȖ ȟȠȞȜȘȜȐȜȓ ȟȜȜȠțȜȦȓțȖȓ ȐȩȝȜșțȭȓȠȟȭ ȟȠȞȜȘȜȐȩȓ ȢȡțȘȤȖȖ ȠȜȔȓ ȚȜȑȡȠ

ȅdzǾdzǽǮȆǸǶ ² ǸǼǾǼǹdzǰȉ ȀǮǻȄǽǼǹǮ

93


ȐȜȕȐȞȎȧȎȠȪ ȥȖȟșȜȐȩȓ ȕțȎȥȓțȖȭ ȟȥȖȠȎȓȠȟȭ ȥȠȜ ȡȟșȜȐȖȓ ȝȞȖțȖȚȎȓȠ ȕțȎȥȓțȖȓ true. ǽȜȚțȖ ȥȠȜ ȐȩȞȎȔȓțȖȓ ȚȜȔȓȠ ȟȜȟȠȜȭȠȪ Ȗȕ ȜȒțȜȑȜ ȕțȎȥȓ țȖȭ Ȑ ȫȠȜȚ ȟșȡȥȎȓ ȐȩȞȎȔȓțȖȓ ȏȡȒȓȠ ȜȤȓțȖȐȎȠȪ ȟȎȚȜ ȟȓȏȭ ǰȟȝȜȚțȖ ȘȎȘ Ȑ ȑșȎȐȓ Ƞȩ ȐȐȜȒȖș Ȑ ȜȏȜșȜȥȘȓ /XD ȕțȎȥȓțȖȓ 42 ȘȜȠȜȞȜȓ Ȗ ȜȤȓțȖȐȎșȜȟȪ ȘȎȘ ȕțȎȥȓțȖȓ 42 ǰ ȝȞȜȑȞȎȚȚȓ mydance2 ȡȟșȜȐȖȓ Ȑ ȟȠȞȜȘȓ ȐȩȝȜșțȭȓȠȟȭ Ȗ ȝȜȟȘȜșȪȘȡ ȜțȜ ȐȩȝȜșțȭȓȠȟȭ ȐȟȓȑȒȎ ȡȟșȜȐȖȓ ȤȖȘșȎ while ȐȟȓȑȒȎ ȏȡȒȓȠ ȖȟȠȖțțȜ true ȀȎȘȖȚ ȜȏȞȎȕȜȚ ȤȖȘș ȏȡȒȓȠ ȖȟȝȜșțȭȠȪȟȭ ȒȜ Ƞȓȣ ȝȜȞ ȝȜȘȎ ȝȜșȪȕȜȐȎȠȓșȪ țȓ ȜȟȠȎțȜȐȖȠ ȓȑȜ ȕȎȐȓȞȦȖȐ ȝȞȜȑȞȎȚȚȡ ȀȎȘȜȗ ȤȖȘș țȎȕȩȐȎȓȠȟȭ ȏȓȟȘȜțȓȥțȩȚ ǰ ȞȎȟ ȟȚȎȠȞȖȐȎȓȚȜȗ ȝȞȜȑȞȎȚȚȓ ȖȟȝȜșȪȕȜȐȎț ȏȓȟȘȜțȓȥțȩȗ ȤȖȘș ȝȜȠȜȚȡ ȥȠȜ Țȩ ȣȜȠȖȚ ȥȠȜȏȩ ȥȓȞȓȝȎȦȘȎ ȝȞȜȒȜșȔȎșȎ ȠȎțȤȓ ȐȎȠȪ ȝȜȘȎ Țȩ țȓ ȕȎȐȓȞȦȖȚ ȝȞȜȑȞȎȚȚȡ ȡȒȓȞȔȖȐȎȭ ȟȜȥȓȠȎ țȖȓ ȘșȎȐȖȦ Ctrl+T. ǰ țȎȦȓȗ ȝȞȜȑȞȎȚȚȓ ȥȓȞȓȝȎȦȘȎ ȟȜȐȓȞȦȎȓȠ ȝȭȠȪ ȞȎȕșȖȥ țȩȣ ȠȎțȤȓȐȎșȪțȩȣ ȒȐȖȔȓțȖȗ ȘȜȠȜȞȩȓ ȐȩȏȖȞȎȬȠȟȭ ȟșȡ ȥȎȗțȩȚ ȜȏȞȎȕȜȚ ǰȩȏȜȞ ȜȟțȜȐȎț țȎ ȕțȎȥȓțȖȖ ȝȓȞȓȚȓțțȜȗ danceMove ǸȜȒ Ȑ ȟȠȞȜȘȓ ȐȩȕȩȐȎȓȠ ȢȡțȘȤȖȬ math.random() Ȓșȭ ȑȓțȓȞȎȤȖȖ ȟșȡȥȎȗțȜȑȜ ȥȖȟșȎ Ȑ ȒȖȎȝȎȕȜțȓ ȜȠ 1 ȒȜ 5 Ȗ ȟȜȣȞȎțȭȓȠ ȫȠȜ ȟșȡȥȎȗțȜȓ ȥȖȟșȜ Ȑ ȐȖȒȓ ȕțȎȥȓțȖȭ ȝȓȞȓ ȚȓțțȜȗ danceMove.

ěĜĔęīĞĔđ ĜđĤđęĔĕ ĝ ěĚĘĚĥĨĪ ĔęĝĞĜğĖĢĔĕ 1. ǻȎȝȜȚțȬ ȥȠȜ ȝȜȠȜȘ ȖȟȝȜșțȓțȖȭ ² ȫȠȜ ȝȜȞȭȒȜȘ ȐȩȝȜș țȓțȖȭ ȟȠȞȜȘ ȘȜȒȎ ǼȏȩȥțȜ ȝȜȠȜȘ ȖȟȝȜșțȭȓȠȟȭ ȟȐȓȞȣȡ ȐțȖȕ ȄȖȘșȩ ȠȎȘȖȓ ȘȎȘ for ȖșȖ while ² ȫȠȜ ȜȝȓȞȎȤȖȖ ȡȝȞȎȐșȓ țȖȭ ȝȜȠȜȘȜȚ ȝȜȟȘȜșȪȘȡ ȖȕȚȓțȭȬȠ ȝȜȞȭȒȜȘ ȓȑȜ ȖȟȝȜșțȓțȖȭ ȐȜȕȐȞȎȧȎȭ ȝȞȜȑȞȎȚȚȡ Ș țȎȥȎșȡ ȤȖȘșȎ if ² ȫȠȜ ȒȞȡȑȜȗ ȠȖȝ ȖțȟȠȞȡȘȤȖȖ ȡȝȞȎȐșȓțȖȭ ȝȜȠȜȘȜȚ ǿȠȞȜȘȎ ȟȜȒȓȞȔȖȠ ȖțȟȠȞȡȘȤȖȬ if ȘȜȠȜȞȎȭ ȒȜȝȡȟȘȎȓȠ ȖȟȝȜșțȓțȖȓ ȏșȜȘȎ ȘȜȒȎ ȠȜșȪȘȜ Ȑ ȠȜȚ ȟșȡȥȎȓ ȓȟșȖ ȡȟșȜȐȖȓ ȤȖȘșȎ ȖȟȠȖțțȜ true mydance2 11. if danceMove == 1 then

94

DZǹǮǰǮ


12. 13. 14. 15. 16.

-- ɩɨɜɨɪɨɬ ɧɚɥɟɜɨ print('Turn to the left!') turtle.turnLeft() elseif danceMove == 2 then

ǿȖțȠȎȘȟȖȟ ȖțȟȠȞȡȘȤȖȖ ȟȜȟȠȜȖȠ Ȗȕ ȘșȬȥȓȐȜȑȜ ȟșȜȐȎ if ȕȎ ȘȜȠȜȞȩȚ ȟșȓȒȡȓȠ ȡȟșȜȐȖȓ Ȗ ȘșȬȥȓȐȜȑȜ ȟșȜȐȎ then ȜȠȚȓ ȥȎȬȧȓȑȜ țȎȥȎșȜ ȏșȜȘȎ ȘȜȒȎ ǰ ȟȠȞȜȘȓ țȎȥȖțȎȓȠȟȭ ȏșȜȘ ȖȟȝȜșțȭȓȚȜȑȜ ȘȜȒȎ ȘȜȠȜȞȩȗ ȐȩȝȜșțȭȓȠȟȭ ȓȟșȖ ȡȟșȜȐȖȓ Ȗȟ ȠȖțțȜ ǸșȬȥȓȐȩȓ ȟșȜȐȎ elseif else ȖșȖ end ȜȠȚȓȥȎȬȠ ȘȜ țȓȤ ȏșȜȘȎ ȖțȟȠȞȡȘȤȖȖ if ǰ țȎȦȓȚ ȟșȡȥȎȓ ȟȠȞȜȘȎ ȕȎȐȓȞ ȦȎȓȠ ȏșȜȘ ȘșȬȥȓȐȩȚ ȟșȜȐȜȚ elseif ȘȜȠȜȞȜȓ Țȩ ȝȜȒȞȜȏțȜ ȞȎȟȟȚȜȠȞȖȚ ȝȜȕȔȓ ȁȟșȜȐȖȓ Ȑ ȟȠȞȜȘȓ ȟȜȒȓȞȔȖȠ ȘȜȒ ȘȜȠȜȞȩȗ Ƞȓȏȓ ȓȧȓ țȓ ȕțȎȘȜȚ ȝȜȠȜȚȡ ȥȠȜ ȟȜȒȓȞȔȖȠ ȒȞȡȑȜȗ ȜȝȓȞȎȠȜȞ ȟȞȎȐțȓțȖȭ DzȎȐȎȗ ȞȎȟȟȚȜȠȞȖȚ ȜȝȓȞȎȠȜȞȩ ȟȞȎȐțȓțȖȭ

ĝĜČĎęđęĔđ ĐĎğġ ēęČģđęĔĕ ĝ ěĚĘĚĥĨĪ ĚěđĜČĞĚĜĚĎ ĝĜČĎęđęĔī ǼȝȓȞȎȠȜȞȩ ȟȞȎȐțȓțȖȭ ȐȩȝȜșțȭȬȠ ȟȞȎȐțȓțȖȓ ȒȐȡȣ ȕțȎȥȓțȖȗ Ȗ ȝȞȖȟȐȎȖȐȎȬȠ ȡȟșȜȐȖȬ ȟȜȜȠȐȓȠȟȠȐȡȬȧȓȓ ȕțȎȥȓțȖȓ ² true ȖșȖ false ȁȟșȜȐȖȓ Ȑ ȟȠȞȜȘȓ ² danceMove == 1 ² ȟȜȒȓȞ ȔȖȠ ȜȝȓȞȎȠȜȞ ȟȞȎȐțȓțȖȭ ©ȞȎȐțȜª == ǼȝȓȞȎȠȜȞ == ȝȞȜȐȓȞȭ ȓȠ ȞȎȐțȩ șȖ ȕțȎȥȓțȖȭ ȟ ȒȐȡȣ ȟȠȜȞȜț ȜȠ țȓȑȜ Ȗ ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ true ȓȟșȖ ȕțȎȥȓțȖȭ ȞȎȐțȩ ȖșȖ false ȓȟșȖ țȓȠ dzȟșȖ ȕțȎȥȓțȖȓ ȝȓȞȓȚȓțțȜȗ danceMove ȞȎȐțȜ 1 ȖȟȝȜșțȭȓȠ ȟȭ ȘȜȒ Ȑ ȟȠȞȜȘȎȣ ² ȚȓȔȒȡ ȘșȬȥȓȐȩȚȖ ȟșȜȐȎȚȖ then Ȗ elseif ȋȠȜȠ ȘȜȒ ȐȩȐȜȒȖȠ țȎ ȫȘȞȎț ȟȜȜȏȧȓțȖȓ Turn to the left! Ȗ ȝȜȐȜȞȎȥȖȐȎȓȠ ȥȓȞȓȝȎȦȘȡ țȎșȓȐȜ ǯȡȒȪ ȜȟȠȜȞȜȔȓț țȓ ȝȡȠȎȗ ȜȝȓȞȎȠȜȞ ȟȞȎȐțȓțȖȭ ©ȞȎȐțȜª (== Ȗ ȜȝȓȞȎȠȜȞ ȝȞȖȟȐȎȖȐȎțȖȭ = ǼȝȓȞȎȠȜȞ ȟȞȎȐțȓțȖȭ == ȝȞȜȐȓȞȭȓȠ ȞȎȐțȩ șȖ ȕțȎȥȓțȖȭ ȝȜ Ȝȏȓ ȟȠȜȞȜțȩ ȜȠ ȜȝȓȞȎȠȜȞȎ Ȗ ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ true ȓȟșȖ ȫȠȜ ȠȎȘ ȠȜȑȒȎ ȘȎȘ ȜȝȓȞȎ ȠȜȞ ȝȞȖȟȐȎȖȐȎțȖȭ = ȝȞȖȟȐȎȖȐȎȓȠ ȝȓȞȓȚȓțțȜȗ ȖȚȭ ȘȜȠȜȞȜȗ ȡȘȎȕȩȐȎȓȠȟȭ ȝȓȞȓȒ ȜȝȓȞȎȠȜȞȜȚ ȕțȎȥȓțȖȓ ȘȜȠȜȞȜȓ ȡȘȎȕȎțȜ ȝȜȟșȓ ȜȝȓȞȎȠȜȞȎ ǰ ȠȎȏș ȝȓȞȓȥȖȟșȓțȩ ȜȝȓȞȎȠȜȞȩ ȟȞȎȐ țȓțȖȭ ȝȜȒȒȓȞȔȖȐȎȓȚȩȓ ȖțȠȓȞȝȞȓȠȎȠȜȞȜȚ /XD.

ȅdzǾdzǽǮȆǸǶ ² ǸǼǾǼǹdzǰȉ ȀǮǻȄǽǼǹǮ

95


˃̶̛̣̌̍̌ ϱ͘ϭ͘ ʽ̨̪̖̬̯̬̼̌ ̛̭̬̦̖̦̌̏́ ̏ ̡̼̖́̚ Lua

ʽ̨̪̖̬̯̬̌ ̛̭̬̦̖̦̌̏́

ʽ̛̛̪̭̦̖̌

==

ˀ̨̦̌̏

~=

ʻ̖ ̨̬̦̌̏

>

ʥ̨̣̹̖̽

<

ʺ̖̦̹̖̽

>=

ʥ̨̣̹̖̽ ̛̛̣ ̨̬̦̌̏

<=

ʺ̖̦̹̖̽ ̛̛̣ ̨̬̦̌̏

ǾȎȒȖ ȫȘȟȝȓȞȖȚȓțȠȎ Ȑ ȜȏȜșȜȥȘȓ /XD ȐȐȓȒȖ ȟșȓȒȡȬȧȖȓ ȐȩȞȎȔȓțȖȭ X lua> 2 == 2 true lua> 4 == 2 + 2 true Y lua> 2 ~= 3 true lua> 2 < 3 true lua> 3 < 3 Z false lua> 3 > 2 true lua> 2 >= 2 true [ lua> 2 + 9 * 2 == (25 – 15) * 2 true

ȀȓȝȓȞȪ Ƞȓȏȓ ȒȜșȔțȜ ȏȩȠȪ ȝȜțȭȠțȜ ȥȠȜ ȐȩȞȎȔȓțȖȭ ȟ ȜȝȓȞȎȠȜȞȎȚȖ ȟȞȎȐțȓțȖȭ ȐȟȓȑȒȎ ȐȜȕȐȞȎȧȎȬȠ șȜȑȖȥȓȟȘȜȓ ȕțȎȥȓțȖȓ true ȖșȖ false ǼȝȓȞȎȠȜȞ ©ȞȎȐțȜª == ȟȞȎȐțȖ ȐȎȓȠ ȒȐȎ ȕțȎȥȓțȖȭ Ȗ ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ true ȓȟșȖ ȜțȖ ȞȎȐțȩ X ǼȝȓȞȎȠȜȞ ©țȓ ȞȎȐțȜª ~= ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ true ȓȟșȖ țȎȜȏȜȞȜȠ ȜțȖ țȓ ȞȎȐțȩ Y ǼȝȓȞȎȠȜȞȩ ©ȚȓțȪ Ȧȓª < Ȗ ©ȏȜșȪȦȓª > ȞȎȏȜȠȎȬȠ ȠȎȘ Ȕȓ ȘȎȘ Ƞȩ ȖȕȡȥȎș țȎ ȡȞȜȘȎȣ ȚȎȠȓȚȎȠȖȘȖ ǼțȖ ȜȝȞȓȒȓșȭȬȠ ȏȜșȪȦȓ ȖșȖ ȚȓțȪȦȓ ȕțȎȥȓțȖȓ ȟșȓȐȎ ȜȠ ȜȝȓȞȎȠȜȞȎ ȝȜ ȟȞȎȐțȓțȖȬ ȟȜ ȕțȎȥȓțȖȓȚ ȟȝȞȎȐȎ ȜȠ țȓȑȜ Ȗ ȐȜȕȐȞȎȧȎȬȠ true ȓȟșȖ ȡȟșȜȐȖȓ ȐȩȝȜș țȭȓȠȟȭ ǻȜ ȓȟșȖ ȕțȎȥȓțȖȭ ȝȜ Ȝȏȓ ȟȠȜȞȜțȩ ȜȠ ȜȝȓȞȎȠȜȞȎ ȞȎȐ

96

DZǹǮǰǮ


țȩ ȒȞȡȑ ȒȞȡȑȡ ȖșȖ țȓȞȎȐȓțȟȠȐȜ țȓ ȐȩȝȜșțȭȓȠȟȭ ȜȝȓȞȎȠȜȞ < ȖșȖ > ȐȓȞțȓȠ false Z. ǼȝȓȞȎȠȜȞȩ ©ȏȜșȪȦȓ ȖșȖ ȞȎȐțȜª >= Ȗ ©ȚȓțȪȦȓ ȖșȖ ȞȎȐ țȜª <= ȐȩȝȜșțȭȬȠ ȠȎȘȜȓ Ȕȓ ȟȞȎȐțȓțȖȓ ȥȠȜ Ȗ ȜȝȓȞȎȠȜȞȩ ©ȚȓțȪȦȓª < Ȗ ©ȏȜșȪȦȓª > țȜ ȐȓȞțȡȠ true ȠȎȘȔȓ Ȗ Ȑ ȠȜȚ ȟșȡȥȎȓ ȓȟșȖ ȕțȎȥȓțȖȭ ȝȜ Ȝȏȓ ȟȠȜȞȜțȩ ȜȝȓȞȎȠȜȞȎ ȞȎȐțȩ ǼȝȓȞȎȠȜȞȩ ȟȞȎȐțȓțȖȭ ȚȜȔțȜ ȖȟȝȜșȪȕȜȐȎȠȪ Ȗ Ȓșȭ ȟȞȎȐ țȓțȖȭ ȐȩȞȎȔȓțȖȗ țȎȝȞȖȚȓȞ 2 + 9 * 2 == (25 - 15) * 2 [ ǰȩȞȎȔȓțȖȭ ȠȎȘȜȑȜ ȠȖȝȎ ȚȜȔțȜ ȝȞȖȐȓȟȠȖ Ș ȐȩȞȎȔȓ țȖȬ ȟȞȎȐțȓțȖȭ ȒȐȡȣ ȕțȎȥȓțȖȗ ȘȎȘ ȝȜȘȎȕȎțȜ țȖȔȓ 2 + 9 * 2 == (25 − 15) * 2

2 + 9 * 2 == 10 * 2

2 + 18 == 10 * 2 2 + 18 == 20 20 == 20 true

ǰ ȖȠȜȑȓ ȠȎȘȖȓ ȐȩȞȎȔȓțȖȭ ȏȡȒȡȠ ȜȝȞȓȒȓșȓțȩ ȘȎȘ ȖȟȠȖț țȩȓ ȖșȖ șȜȔțȩȓ

ČėĨĞđĜęČĞĔĎęħđ ĎħģĔĝėđęĔī ĝ ěĚĘĚĥĨĪ ĔęĝĞĜğĖĢĔĕ -4;-1. ǰ ȘȜțȓȤ ȏșȜȘȎ ȖțȟȠȞȡȘȤȖȖ if ȚȜȔțȜ ȒȜȏȎȐȖȠȪ ȖțȟȠȞȡȘȤȖȬ elseif ȂȎȘȠȖȥȓȟȘȖ ȫȠȎ ȖțȟȠȞȡȘȤȖȭ ȞȎȏȜȠȎȓȠ ȝȜȥȠȖ ȠȎȘ Ȕȓ ȘȎȘ Ȗ ȟȎȚȎ ȖțȟȠȞȡȘȤȖȭ if ǼțȖ Ȝȏȓ ȖȚȓȬȠ ȟȜȏȟȠȐȓțțȜȓ ȘșȬȥȓȐȜȓ ȟșȜȐȜ if ȖșȖ elseif ȟȜȏȟȠȐȓțțȜȓ ȡȟșȜȐȖȓ Ȗ ȡ ȜȏȓȖȣ ȘșȬȥȓȐȜȓ ȟșȜȐȜ then ȜȠȚȓȥȎȓȠ țȎȥȎșȜ ȏșȜȘȎ ǶȟȝȜș țȭȓȚȩȓ ȖțȟȠȞȡȘȤȖȖ ȞȎȕȚȓȧȎȬȠȟȭ ȐțȡȠȞȖ ȏșȜȘȎ Ȏ ȘșȬȥȓ ȐȜȓ ȟșȜȐȜ elseif else ȖșȖ end ȜȠȚȓȥȎȓȠ ȓȑȜ ȘȜțȓȤ

ȅdzǾdzǽǮȆǸǶ ² ǸǼǾǼǹdzǰȉ ȀǮǻȄǽǼǹǮ

97


ǶțȟȠȞȡȘȤȖȭ elseif ȒȜșȔțȎ ȏȩȠȪ ȟȜȝȞȭȔȓțȎ ȟ Ȗț ȟȠȞȡȘȤȖȓȗ if ȠȜ ȓȟȠȪ ȖȟȝȜșțȭȠȪ ȟȐȜȗ ȏșȜȘ ȓȟșȖ ȡȟșȜȐȖȓ ȖțȟȠȞȡȘȤȖȖ if șȜȔțȜ Ȏ ȡȟșȜȐȖȓ ȖțȟȠȞȡȘȤȖȖ elseif ȝȞȖ ȫȠȜȚ ȖȟȠȖțțȜ ǽȞȜȧȓ ȚȜȔțȜ ȟȘȎȕȎȠȪ ȠȎȘ ©dzȟșȖ if ȖȟȠȖț țȜ ȟȒȓșȎȗ ȫȠȜ Ȏ ȓȟșȖ if șȜȔțȜ Ȏ elseif ȖȟȠȖțțȜ ȟȒȓșȎȗ ȠȜª dzȟșȖ ȜȏȎ ȡȟșȜȐȖȭ șȜȔțȩ țȖ ȜȒȖț ȏșȜȘ ȘȜȒȎ țȓ ȐȩȝȜș țȭȓȠȟȭ Ȗ ȖȟȝȜșțȓțȖȓ ȝȓȞȓȣȜȒȖȠ Ș ȟșȓȒȡȬȧȓȗ ȥȎȟȠȖ ȝȞȜ ȑȞȎȚȚȩ ǿȠȞȜȘȖ ² ȖȟȝȜșțȭȬȠȟȭ ȓȟșȖ ȡȟșȜȐȖȓ Ȑ ȟȠȞȜȘȓ danceMove == 1 șȜȔțȜ false Ȏ ȡȟșȜȐȖȓ Ȑ ȟȠȞȜȘȓ danceMove == 2 ȖȟȠȖțțȜ true mydance2 16. elseif danceMove == 2 then 17. -- ɩɨɜɨɪɨɬ ɧɚɩɪɚɜɨ 18. print('Turn to the right!') 19. turtle.turnRight() 20. 21. elseif danceMove == 3 then

dzȟșȖ ȝȓȞȓȚȓțțȜȗ danceMove ȝȞȖȟȐȜȓțȜ ȕțȎȥȓțȖȓ 2 ȘȜȒ Ȑ ȟȠȞȜȘȓ ȐȩȐȜȒȖȠ ȟȜȜȏȧȓțȖȓ Turn to the right! Ȏ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȝȜȐȜȞȎȥȖȐȎȓȠ ȥȓȞȓȝȎȦȘȡ țȎȝȞȎȐȜ

ĎėĚĒđęęħđ čėĚĖĔ ĖĚĐČ Dzșȭ ȟșȡȥȎȭ ȓȟșȖ ȝȓȞȓȚȓțțȜȗ danceMove ȝȞȖȟȐȜȓțȜ ȕțȎȥȓ țȖȓ 3 Ȑ ȟȠȞȜȘȓ ȞȎȕȚȓȧȓțȎ ȓȧȓ ȜȒțȎ ȖțȟȠȞȡȘȤȖȭ elseif. ǰțȡȠȞȖ ȏșȜȘȎ ȖțȟȠȞȡȘȤȖȖ elseif Ȑ ȟȠȞȜȘȓ ȝȜȚȓȧȓțȎ ȒȞȡȑȎȭ ȖțȟȠȞȡȘȤȖȭ if Ȗ ȓȓ ȏșȜȘ ȘȜȒȎ ȘȜȠȜȞȩȗ țȎȥȖțȎȓȠȟȭ Ȑ ȟȠȞȜȘȓ Ȗ ȕȎȘȎțȥȖȐȎȓȠȟȭ Ȑ ȟȠȞȜȘȓ DzȜȏȎȐșȓțȖȓ ȏșȜȘȎ ȘȜȒȎ ȐțȡȠȞȪ ȒȞȡȑȜȑȜ ȏșȜȘȎ țȎȕȩȐȎȓȠȟȭ ȐșȜȔȓțȖȓȚ ǼȏȞȎȠȖ ȐțȖȚȎțȖȓ ȥȠȜ ȝȜȟȘȜșȪȘȡ ȟȠȞȜȘȖ ² țȎȣȜȒȭȠȟȭ ȐțȡȠȞȖ țȜȐȜȑȜ ȏșȜȘȎ ȜȠȟȠȡȝ ȡȐȓșȖȥȖȐȎȓȠȟȭ țȎ ȒȐȎ ȝȞȜȏȓșȎ ȋȠȜȠ ȜȠȟȠȡȝ țȓ ȜȏȭȕȎȠȓșȓț țȜ ȘȜȒ ȟȠȎțȜȐȖȠȟȭ ȏȜșȓȓ ȡȒȜȏțȩȚ Ȓșȭ ȥȠȓțȖȭ mydance2 21. elseif danceMove == 3 then

98

DZǹǮǰǮ


22. 23. 24. 25. 26.

-- ɞɜɢɠɟɧɢɹ ɜɩɟɪɟɞ/ɧɚɡɚɞ if isBack then print('Move forward!') turtle.forward() isBack = false

ǶțȟȠȞȡȘȤȖȭ if ȐșȜȔȓțȎ Ȑ ȏșȜȘ elseif ȝȜȫȠȜȚȡ ȖȟȝȜș țȭȓȠȟȭ ȠȜșȪȘȜ ȓȟșȖ ȡȟșȜȐȖȓ ȖțȟȠȞȡȘȤȖȖ elseif ȖȟȠȖțțȜ ǰșȜȔȓțțȎȭ ȖțȟȠȞȡȘȤȖȭ if țȓȜȏȣȜȒȖȚȎ ȝȜȠȜȚȡ ȥȠȜ ȠȎțȤȓ ȐȎșȪțȜȓ ȒȐȖȔȓțȖȓ Ȑ ȟȠȞȜȘȓ ȜȠșȖȥȎȓȠȟȭ ȜȠ ȜȟȠȎșȪțȩȣ ȋȠȜȠ ȠȎțȤȓȐȎșȪțȩȗ ȝȖȞȡȫȠ ȝȓȞȓȚȓȧȎȓȠ ȥȓȞȓȝȎȦȘȡ ȐȝȓȞȓȒ țȜ Țȩ țȓ ȣȜȠȖȚ ȥȠȜȏȩ ȥȓȞȓȝȎȦȘȎ ȡȣȜȒȖșȎ ȟșȖȦȘȜȚ ȒȎșȓ ȘȜ Ȏ ȠȜ ȜțȎ ȚȜȔȓȠ Ȗ ȐȜȐȟȓ ȟȘȞȩȠȪȟȭ ȟ ȑșȎȕ ǵțȎȥȖȠ țȎȒȜ ȝȞȜ ȐȓȞȭȠȪ ȝȓȞȓȚȓȟȠȖșȎȟȪ șȖ ȥȓȞȓȝȎȦȘȎ ȐȝȓȞȓȒ Ȗ ȓȟșȖ ȒȎ ȠȜ țȡȔțȜ ȐȓȞțȡȠȪ ȓȓ țȎȕȎȒ ǶȚȓțțȜ ȫȠȜ Țȩ Ȗ ȒȓșȎȓȚ ȟ ȝȜȚȜȧȪȬ ȐșȜȔȓțțȜȗ Ȗț ȟȠȞȡȘȤȖȖ if ȘȜȠȜȞȎȭ ȟȜȒȓȞȔȖȠ ȝȓȞȓȚȓțțȡȬ isBack Ǻȩ ȜȏȨȭȐȖșȖ ȓȓ Ȑ țȎȥȎșȓ ȝȞȜȑȞȎȚȚȩ Ȏ ȠȓȝȓȞȪ ȖȟȝȜșȪȕȡȓȚ Ȓșȭ ȣȞȎțȓțȖȭ șȜȑȖȥȓȟȘȜȑȜ ȕțȎȥȓțȖȭ ȡȘȎȕȩȐȎȬȧȓȑȜ ȐȓȞ țȡșȎȟȪ șȖ ȥȓȞȓȝȎȦȘȎ Ȑ ȠȜȥȘȡ țȎȥȎșȎ ȟȐȜȓȑȜ ȒȐȖȔȓțȖȭ ǵȎȝȜȚțȖ ȕțȎȥȓțȖȓ ȝȓȞȓȚȓțțȜȗ ȚȜȔȓȠ ȖȟȝȜșȪȕȜȐȎȠȪȟȭ ȐțȡȠȞȖ ȏșȜȘȎ ȠȜșȪȘȜ Ȑ ȠȜȚ ȟșȡȥȎȓ ȓȟșȖ ȫȠȜ ȕțȎȥȓțȖȓ Ȑȩ ȥȖȟșȭȓȠȟȭ ȖșȖ ȝȞȖȟȐȎȖȐȎȓȠȟȭ ȐțȡȠȞȖ ȠȜȑȜ Ȕȓ ȟȎȚȜȑȜ ȏșȜ ȘȎ ǽȜȫȠȜȚȡ ȓȟșȖ ȝȓȞȓȚȓțțȜȗ isBack ȝȞȖȟȐȜȓțȜ ȕțȎȥȓțȖȓ true ȡȟșȜȐȖȓ Ȑ ȟȠȞȜȘȓ ȖȟȠȖțțȜ Ȗ ȖȟȝȜșțȭȬȠȟȭ ȟȠȞȜȘȖ ² ȘȜȠȜȞȩȓ ȝȓȞȓȚȓȧȎȓȠ ȥȓȞȓȝȎȦȘȡ ȐȝȓȞȓȒ Ȗ ȝȞȖȟȐȎȖ ȐȎȬȠ ȝȓȞȓȚȓțțȜȗ isBack ȕțȎȥȓțȖȓ false.

ĚĞĝĞğěħ

Отступы в исходном коде Lua необязательны, но добавленные пробелы в начале строк кода упрощают его чтение. Глядя на отступы, ты можешь сразу определить, где начинаются и заканчиваются блоки кода. Сравни следующие листинги – в примере слева есть отступы, а в примере справа нет:

ȅdzǾdzǽǮȆǸǶ ² ǸǼǾǼǹdzǰȉ ȀǮǻȄǽǼǹǮ

99


ͲͲ ˑ̨̯̯ ̡̨̔ ̯̬̱̦̖̔​̖ ̸̛̯̯̌̽͘ ͲͲ ˑ̨̯̯ ̡̨̔ ̸̣̖̖̐ ̸̛̯̯̌̽͊ if isBack then if isBack then ƉƌŝŶƚ;ΖDŽǀĞ ĨŽƌǁĂƌĚ͊ΖͿ ƉƌŝŶƚ;ΖDŽǀĞ ĨŽƌǁĂƌĚ͊ΖͿ ƚƵƌƚůĞ͘ĨŽƌǁĂƌĚ;Ϳ ƚƵƌƚůĞ͘ĨŽƌǁĂƌĚ;Ϳ isBack = false isBack = false else else ƉƌŝŶƚ;ΖDŽǀĞ ďĂĐŬ͊ΖͿ ƉƌŝŶƚ;ΖDŽǀĞ ďĂĐŬ͊ΖͿ ƚƵƌƚůĞ͘ďĂĐŬ;Ϳ ƚƵƌƚůĞ͘ďĂĐŬ;Ϳ isBack = true isBack = true end end В листинге слева четко видно, где начинаются и заканчиваются блоки кода. А вот в листинге справа инструкции else и end еще придется поискать. Ставить отступы – это хорошая привычка.

ěĜĔęīĞĔđ ĜđĤđęĔī° ĔėĔ ĔęĝĞĜğĖĢĔī -4;ǸȜȒ Ȑ ȟȠȞȜȘȓ ² ȫȠȜ ȖțȟȠȞȡȘȤȖȭ else ȘȜȠȜȞȩȗ ȕȎȐȓȞȦȎȓȠ ȏșȜȘ ȖțȟȠȞȡȘȤȖȖ if ǯșȜȘ ȘȜȒȎ ȟșȓȒȡȬȧȖȗ ȕȎ ȖțȟȠȞȡȘȤȖ ȓȗ else ȖȟȝȜșțȭȓȠȟȭ ȓȟșȖ Ȑȟȓ ȝȞȓȒȩȒȡȧȖȓ ȡȟșȜȐȖȭ if Ȗ elseif ȭȐșȭȬȠȟȭ șȜȔțȩȚȖ ǰ țȎȦȓȚ ȝȞȖȚȓȞȓ ȖțȟȠȞȡȘȤȖȭ else ȟȜȝȞȭȔȓțȎ ȟ ȖțȟȠȞȡȘȤȖȓȗ if Ȗȕ ȟȠȞȜȘȖ țȜ țȓ ȟ Ȗț ȟȠȞȡȘȤȖȭȚȖ if ȖșȖ elseif Ȗȕ ȟȠȞȜȘ Ȗ ǽȞȖȥȖțȎ Ȑ ȠȜȚ ȥȠȜ ȖțȟȠȞȡȘȤȖȭ else ȐșȜȔȓțȎ Ȑ ȖțȟȠȞȡȘȤȖȬ elseif ȟȠȞȜȘȖ Ȏ ȫȠȜ ȜȕțȎȥȎȓȠ ȥȠȜ ȜțȎ ȖȟȝȜșțȭȓȠȟȭ ȠȜșȪȘȜ Ȑ ȠȜȚ ȟșȡȥȎȓ ȓȟșȖ ȡȟșȜȐȖȓ Ȑ ȟȠȞȜȘȓ ȖȟȠȖțțȜ ǸȜȒ Ȑ ȟȠȞȜȘȎȣ ² ȖȟȝȜșțȭȓȠȟȭ ȓȟșȖ ȡȟșȜȐȖȓ Ȑ ȟȠȞȜȘȓ șȜȔțȜ ǯșȜȘ ȘȜȒȎ ȝȜȟșȓ ȖțȟȠȞȡȘȤȖȖ else ȕȎȘȎțȥȖȐȎȓȠ ȟȭ ȘȜȑȒȎ ȝȞȜȑȞȎȚȚȎ ȒȜȟȠȖȑȎȓȠ ȘșȬȥȓȐȜȑȜ ȟșȜȐȎ end ǯșȜȘ else ȞȎȏȜȠȎȓȠ ȠȜșȪȘȜ Ȑ ȠȜȚ ȟșȡȥȎȓ ȓȟșȖ ȡȟșȜȐȖȭ Ȑȟȓȣ ȝȞȓ ȒȩȒȡȧȖȣ ȖțȟȠȞȡȘȤȖȗ if Ȗ elseif șȜȔțȩ ȝȜȫȠȜȚȡ ȜțȎ ȟȎ ȚȎ țȓ ȖȚȓȓȠ țȖȘȎȘȜȑȜ ȡȟșȜȐȖȭ mydance2 27. else 28. print('Move back!')

100

DZǹǮǰǮ


29. 30. 31.

turtle.back() isBack = true end

dzȟșȖ ȝȓȞȓȚȓțțȜȗ isBack ȝȞȖȟȐȜȓțȜ ȕțȎȥȓțȖȓ false Ȗȟ ȝȜșțȭȓȠȟȭ ȘȜȒ Ȑ ȟȠȞȜȘȎȣ ² ȘȜȠȜȞȩȗ ȐȩȐȜȒȖȠ țȎ ȫȘȞȎț ȟȜȜȏȧȓțȖȓ Move back! ȝȓȞȓȚȓȧȎȓȠ ȥȓȞȓȝȎȦȘȡ țȎȕȎȒ Ȗ ȝȞȖȟȐȎȖȐȎȓȠ ȝȓȞȓȚȓțțȜȗ isBack ȕțȎȥȓțȖȓ true. ǼȏȞȎȠȖ ȐțȖȚȎțȖȓ ȥȠȜ ȓȟșȖ ȝȓȞȓȚȓțțȜȗ isBack ȝȞȖ ȟȐȜȓțȜ ȕțȎȥȓțȖȓ true ȝȞȜȑȞȎȚȚȎ ȝȞȖȟȐȎȖȐȎȓȠ ȓȗ ȕțȎȥȓțȖȓ false dzȟșȖ ȝȓȞȓȚȓțțȜȗ isBack ȝȞȖȟȐȜȓțȜ ȕțȎȥȓțȖȓ false ȝȞȜȑȞȎȚȚȎ ȝȞȖȟȐȎȖȐȎȓȠ ȓȗ ȕțȎȥȓțȖȓ true ǰ ȞȓȕȡșȪȠȎȠȓ ȘȎȔȒȩȗ ȞȎȕ ȘȜȑȒȎ ȝȓȞȓȚȓțțȜȗ danceMove ȝȞȖȟȐȎȖȐȎȓȠȟȭ ȕțȎȥȓțȖȓ 3 ȥȓȞȓȝȎȦȘȎ ȥȓȞȓȒȡȓȠ ȒȐȖȔȓțȖȭ ȐȝȓȞȓȒ Ȗ țȎ ȕȎȒ ȀȎȘȖȚ ȜȏȞȎȕȜȚ ȥȓȞȓȝȎȦȘȎ țȖȘȜȑȒȎ țȓ ȡȗȒȓȠ ȟșȖȦȘȜȚ ȒȎșȓȘȜ țȎȕȎȒ ȖșȖ ȐȝȓȞȓȒ ǼțȎ ȏȡȒȓȠ ȝȓȞȓȚȓȧȎȠȪȟȭ ȚȓȔȒȡ ȒȐȡȚȭ ȝȜȕȖȤȖȭȚȖ

ěđĜđĘđĥđęĔđ ĎĎđĜġ Ĕ ĎęĔē ǸȜȒ Ȑ ȟȠȞȜȘȓ ² ȫȠȜ ȖțȟȠȞȡȘȤȖȭ elseif ȘȜȠȜȞȎȭ ȝȞȜ ȐȓȞȭȓȠ ȝȞȖȟȐȜȓțȜ șȖ ȝȓȞȓȚȓțțȜȗ danceMove ȕțȎȥȓțȖȓ 4. ǼȏȞȎȠȖ ȐțȖȚȎțȖȓ ȥȠȜ ȝȜȟȘȜșȪȘȡ ȖțȟȠȞȡȘȤȖȭ if Ȑ ȟȠȞȜ Șȓ if isBack then ȐșȜȔȓțȎ Ȑ ȝȞȓȒȩȒȡȧȖȗ ȏșȜȘ elseif ȝȞȜȑȞȎȚȚȎ ȝȞȜȝȡȟȠȖȠ ȓȓ ȓȟșȖ ȕțȎȥȓțȖȓ ȝȓȞȓȚȓț țȜȗ danceMove țȓ ȞȎȐțȜ 3 Ȗ ȖȟȝȜșțȓțȖȓ ȝȓȞȓȗȒȓȠ Ș Ȗț ȟȠȞȡȘȤȖȖ elseif Ȑ ȟȠȞȜȘȓ ȋȠȜ ȜȕțȎȥȎȓȠ ȥȠȜ ȖțȟȠȞȡȘ ȤȖȭ elseif Ȑ ȟȠȞȜȘȓ ȟȜȝȞȭȔȓțȎ ȟ ȖțȟȠȞȡȘȤȖȓȗ if Ȑ ȟȠȞȜȘȓ mydance2 33. elseif danceMove == 4 then 34. -- ɞɜɢɠɟɧɢɹ ɜɜɟɪɯ/ɜɧɢɡ 35. if isUp then 36. print('Get down!') 37. turtle.down() 38. isUp = false 39. else 40. print('Get up!')

ȅdzǾdzǽǮȆǸǶ ² ǸǼǾǼǹdzǰȉ ȀǮǻȄǽǼǹǮ

101


41. 42. 43.

turtle.up() isUp = true end

ǸȜȒ Ȑ ȟȠȞȜȘȎȣ ² ȎțȎșȜȑȖȥȓț ȘȜȒȡ Ȑ ȟȠȞȜȘȎȣ ² dzȟșȖ ȕțȎȥȓțȖȓ ȝȓȞȓȚȓțțȜȗ danceMove ȞȎȐțȜ 4 ȐșȜȔȓțțȎȭ ȖțȟȠȞȡȘȤȖȭ if Ȑ ȟȠȞȜȘȓ ȖȟȝȜșțȖȠ ȟȐȜȗ ȏșȜȘ ȓȟșȖ ȝȓȞȓ ȚȓțțȜȗ isUp ȝȞȖ ȫȠȜȚ ȝȞȖȟȐȜȓțȜ ȕțȎȥȓțȖȓ true ǰ ȝȞȜȠȖȐ țȜȚ ȟșȡȥȎȓ ȖțȟȠȞȡȘȤȖȭ else Ȑ ȟȠȞȜȘȓ ȐȩȝȜșțȖȠ ȟȐȜȗ ȏșȜȘ ȘȜȒȎ ǰ ȘȜȒȓ ȝȞȜȑȞȎȚȚȩ ȖȟȝȜșȪȕȡȬȠȟȭ ȝȓȞȓȚȓțțȩȓ isBack Ȗ isUp Ȓșȭ ȜȝȞȓȒȓșȓțȖȭ ȘȎȘȜȗ ȦȎȑ ȟȒȓșȎȠȪ ȓȟșȖ ȝȓȞȓȚȓț țȜȗ danceMove ȝȞȖȟȐȜȓțȜ ȕțȎȥȓțȖȓ 3 ȖșȖ 4 ǶȟȝȜșțȓțȖȓ ȖțȟȠȞȡȘȤȖȗ if elseif Ȗ else țȎȝȞȭȚȡȬ ȕȎȐȖȟȖȠ ȜȠ ȕțȎȥȓ țȖȗ ȫȠȖȣ ȠȞȓȣ ȝȓȞȓȚȓțțȩȣ ǾȖȟ ȒȓȚȜțȟȠȞȖȞȡȓȠ ȘȎȘ ȥȓȞȓȝȎȦȘȎ ȒȐȖȔȓȠȟȭ ȐȐȓȞȣ Ȗ ȐțȖȕ

ˀ̛̭͘ ϱ͘ϯ͘ ˋ̡̖̬̖̪̹̌̌ ̛̙̖̯̭̔̏́ ̏​̵̖̬̏ ̛ ̛̦̏̚

ěĚĎĚĜĚĞ ĖĜğďĚĘ dzȧȓ ȜȒțȎ ȖțȟȠȞȡȘȤȖȭ else țȎȣȜȒȖȠȟȭ Ȑ ȟȠȞȜȘȓ Ȗ ȟȜȝȞȭ ȔȓțȎ ȟ ȖțȟȠȞȡȘȤȖȓȗ if Ȑ ȟȠȞȜȘȓ dzȟșȖ Ȑȟȓ ȡȟșȜȐȖȭ Ȗț ȟȠȞȡȘȤȖȗ if Ȗ elseif Ȑ ȟȠȞȜȘȎȣ Ȗ șȜȔțȩ ȏȡȒȓȠ ȖȟȝȜșțȓț ȏșȜȘ ȖȚȓțțȜ ȫȠȜȗ ȖțȟȠȞȡȘȤȖȖ else: mydance2 8. while true do 9. danceMove = math.random(1, 5) 10. 11. if danceMove == 1 then

102

DZǹǮǰǮ


...ɩɪɨɩɭɫɤ... 45. else 46. -- ɤɪɭɠɢɬɫɹ 47. print('Spin!') 48. for i = 1, 4 do 49. turtle.turnLeft() 50. end 51. end 52. end

ǰ ȫȠȜȚ ȏșȜȘȓ ȘȜȠȜȞȩȗ ȞȎȕȚȓȧȓț Ȑ ȟȠȞȜȘȎȣ ² ȐȩȐȜ ȒȖȠȟȭ ȟȜȜȏȧȓțȖȓ Spin! Ȗ ȕȎȝȡȟȘȎȓȠȟȭ ȤȖȘș ȘȜȠȜȞȩȗ ȝȜȐȜ ȞȎȥȖȐȎȓȠ ȥȓȞȓȝȎȦȘȡ țȎșȓȐȜ ȥȓȠȩȞȓ ȞȎȕȎ ȀȎȘȜȗ ȞȎȕȐȜȞȜȠ ȜȟȠȎȐșȭȓȠ ȥȓȞȓȝȎȦȘȡ Ȑ ȝȓȞȐȜțȎȥȎșȪțȜȚ țȎȝȞȎȐșȓțȖȖ ǿȠȞȜȘȖ ² ȟȜȒȓȞȔȎȠ ȖțȟȠȞȡȘȤȖȖ end ǰȕȑșȭțȡȐ țȎ ȜȠȟȠȡȝȩ Ȗȣ ȚȜȔțȜ șȓȑȘȜ ȟȜȝȜȟȠȎȐȖȠȪ ȟ ȖțȟȠȞȡȘȤȖȭȚȖ Ș ȘȜȠȜȞȩȚ ȜțȖ ȜȠțȜȟȭȠȟȭ ȟșȓȒȡȬȧȖȚ ȜȏȞȎȕȜȚ z ǿȠȞȜȘȎ ² ȫȠȜ ȘȜțȓȤ ȏșȜȘȎ ȖțȟȠȞȡȘȤȖȖ for țȎȥȖțȎ Ȭȧȓȗȟȭ Ȑ ȟȠȞȜȘȓ z ǿȠȞȜȘȎ ² ȫȠȜ ȘȜțȓȤ ȏșȜȘȎ ȖțȟȠȞȡȘȤȖȖ else țȎȥȖ țȎȬȧȓȗȟȭ Ȑ ȟȠȞȜȘȓ z ǿȠȞȜȘȎ ² ȫȠȜ ȘȜțȓȤ ȏșȜȘȎ ȖțȟȠȞȡȘȤȖȖ while țȎȥȖ țȎȬȧȓȗȟȭ Ȑ ȟȠȞȜȘȓ ǵȎȝȜȚțȖ ȖȟȝȜșțȭȓȠȟȭ ȜȒȖț Ȗ ȠȜșȪȘȜ ȜȒȖț Ȗȕ ȏșȜ ȘȜȐ ȟșȓȒȡȬȧȖȣ ȕȎ ȖțȟȠȞȡȘȤȖȭȚȖ if elseif Ȗ else ǰȟȓ ȜȟȠȎșȪțȩȓ ȏșȜȘȖ ȖȑțȜȞȖȞȡȬȠȟȭ ȀȎȘȖȚ ȜȏȞȎȕȜȚ ȝȜȟșȓ Ȗȟ ȝȜșțȓțȖȭ ȜȒțȜȑȜ Ȗȕ ȫȠȖȣ ȏșȜȘȜȐ ȖȟȝȜșțȓțȖȓ ȝȓȞȓȣȜȒȖȠ Ș ȖțȟȠȞȡȘȤȖȖ end Ȑ ȟȠȞȜȘȓ ǿșȓȒȡȬȧȎȭ ȟȠȞȜȘȎ ȘȜȒȎ ² Ȗț ȟȠȞȡȘȤȖȭ end ȤȖȘșȎ while ȝȜȫȠȜȚȡ ȖȟȝȜșțȓțȖȓ ȐȜȕȐȞȎ ȧȎȓȠȟȭ Ș ȟȠȞȜȘȓ Ȗ ȝȓȞȓȝȞȜȐȓȞȭȓȠ ȡȟșȜȐȖȓ ȤȖȘșȎ while. ǽȜȟȘȜșȪȘȡ ȫȠȜ ȡȟșȜȐȖȓ ȐȩȝȜșțȭȓȠȟȭ ȐȟȓȑȒȎ ȖȟȝȜșțȓțȖȓ ȝȞȜȑȞȎȚȚȩ ȝȞȜȒȜșȔȖȠȟȭ Ȗ ȥȓȞȓȝȎȦȘȎ ȟȜȐȓȞȦȖȠ ȓȧȓ ȜȒȖț ȠȎțȤȓȐȎșȪțȩȗ ȝȖȞȡȫȠ Ƕȕ ȕȎ ȏȓȟȘȜțȓȥțȜȑȜ ȤȖȘșȎ țȓȠ ȝȞȖȥȖț Ȓșȭ ȕȎȐȓȞȦȓțȖȭ ȫȠȜȗ ȝȞȜȑȞȎȚȚȩ ȅȓȞȓȝȎȦȘȎ ȏȡȒȓȠ ȝȞȜȒȜșȔȎȠȪ ȠȎțȤȓȐȎȠȪ ȏȓȟȘȜțȓȥțȜ ȒȜșȑȜ ȝȜȘȎ Ƞȩ țȓ ȕȎȐȓȞȦȖȦȪ ȝȞȜȑȞȎȚȚȡ ȡȒȓȞ ȔȖȐȎȭ ȟȜȥȓȠȎțȖȓ ȘșȎȐȖȦ Ctrl+T.

ȅdzǾdzǽǮȆǸǶ ² ǸǼǾǼǹdzǰȉ ȀǮǻȄǽǼǹǮ

103


ĐĚěĚėęĔĞđėĨęĚđ ēČĐČęĔđ" ģđĜđěČĤĖČ·ģČĝĚĎĚĕ

Отправь свою черепашку нести караульную службу. Используя циклы, заставь черепашку пройти маршем вперед 10 шагов, затем развернуться и промаршировать назад. Помести весь этот код в бесконечный цикл, чтобы черепашка продолжала маршировать до тех пор, пока у нее не закончится топливо или игрок не нажмет сочетание клавиш Ctrl+T.

ģĞĚ Ęħ ğēęČėĔ ǰ ȫȠȜȗ ȑșȎȐȓ Ƞȩ ȡȕțȎș Ȝ ȤȖȘșȎȣ Ȗ ȡȟșȜȐȖȭȣ ȘȜȠȜȞȩȓ ȝȜ ȕȐȜșȭȬȠ ȝȜȐȠȜȞȭȠȪ ȜȒȖț Ȗ ȠȜȠ Ȕȓ ȘȜȒ Ȁȩ ȠȎȘȔȓ ȡȕțȎș ȘȎȘ ȖȟȝȜșȪȕȜȐȎȠȪ ȖțȟȠȞȡȘȤȖȖ if elseif Ȗ else Ȗ ȜȝȓȞȎȠȜȞȩ ȟȞȎȐțȓțȖȭ Ȓșȭ ȖȟȝȜșțȓțȖȭ ȖșȖ ȝȞȜȝȡȟȘȎ ȏșȜȘȜȐ ȘȜȒȎ ȋȠȖ ȖțȟȠȞȡȘȤȖȖ ȡȝȞȎȐșȓțȖȭ ȝȜȠȜȘȜȚ ȝȜȕȐȜșȭȬȠ ȕȎȝȞȜȑȞȎȚ ȚȖȞȜȐȎȠȪ ȥȓȞȓȝȎȦȘȡ țȎ ȝȞȖțȭȠȖȭ ȞȓȦȓțȖȗ ȘȜȠȜȞȩȓ ȜȝȞȓ ȒȓșȭȬȠ ȓȓ ȒȎșȪțȓȗȦȓȓ ȝȜȐȓȒȓțȖȓ ǼȝȓȞȎȠȜȞȩ ȟȞȎȐțȓțȖȭ ȝȞȜȖȕȐȜȒȭ ȟȞȎȐțȓțȖȓ ȕțȎȥȓțȖȗ ȐȜȕȐȞȎȧȎȬȠ șȜȑȖȥȓȟȘȖȗ ȞȓȕȡșȪȠȎȠ true ȖșȖ false ȀȖȝ ȒȎțțȩȣ nil ȖȚȓȓȠ ȠȜșȪȘȜ ȜȒțȜ ȕțȎȥȓțȖȓ nil ȥȠȜ ȜȕțȎȥȎȓȠ ȜȠȟȡȠȟȠȐȖȓ ȕțȎȥȓțȖȭ ǸȜțȓȥțȜ ȓȟșȖ ȕȎȣȜȥȓȠȟȭ ȒȜȝȜșțȖȠȓșȪțȜ ȒȞȓȟȟȖȞȜȐȎȠȪ ȥȓȞȓȝȎȦȓȘ ȠȜ ȝȞȖ țȎȝȖȟȎțȖȖ ȘȜȒȎ țȡȔțȜ ȏȡȒȓȠ ȖȟȝȜșȪȕȜ ȐȎȠȪ ȚțȜȔȓȟȠȐȜ ȖțȟȠȞȡȘȤȖȗ if Ȗ ȤȖȘșȜȐ ǻȜ ȠȎțȤȡȬȧȎȭ ȥȓȞȓȝȎȦȘȎ ² ȫȠȜ ȡȔȓ țȓȝșȜȣȜ Ȓșȭ țȎȥȎșȎ


6 ěĜĚďĜČĘĘĔĜĚĎČęĔđ ģđĜđěČĤĖĔ ėđĝĚĜğčČ ǽȞȖȦșȜ ȐȞȓȚȭ țȜȐȩȣ ȕțȎțȖȗ Ȗ ȝȞȜȐȓȞȘȖ Ȗȣ Ȑ ȚȖȞȓ 0LQHFUDIW Ǻȩ ȕȎȝȞȜȑȞȎȚȚȖȞȡȓȚ ȥȓȞȓ ȝȎȦȘȡ ȠȎȘ ȥȠȜȏȩ ȜțȎ ȞȡȏȖșȎ ȒȓȞȓȐȪȭ ǿ ȝȜ ȚȜȧȪȬ ȥȓȞȓȝȎȦȓȘ șȓȟȜȞȡȏȜȐ ȏȡȒȡȠ ȞȓȦȓțȩ ȝȞȜȏșȓȚȩ ȟ ȒȜȏȩȥȓȗ ȒȞȓȐȓȟȖțȩ ǰȩȞȡȏȘȎ ȒȓȞȓȐȪȓȐ Ȑ 0LQHFUDIW ȐȞȡȥțȡȬ ² ȒȜ ȐȜșȪțȜ țȡȒțȎȭ ȕȎȒȎȥȎ ȋȠȜ ȚȓȒșȓțțȩȗ ȝȞȜȤȓȟȟ Ȝț ȖȕțȎ ȦȖȐȎȓȠ ȖțȟȠȞȡȚȓțȠȩ Ȗ ȥȠȜȏȩ ȝȜșțȜȟȠȪȬ ȟȞȡȏȖȠȪ ȒȓȞȓȐȜ țȡȔțȜ ȒȜȏȞȎȠȪȟȭ ȒȜ ȟȎȚȜȑȜ ȐȓȞȣțȓȑȜ ȒȓȞȓȐȭțțȜȑȜ ȏșȜȘȎ Ǯ ȐȜȠ ȥȓȞȓȝȎȦȘȖ ȟȚȜȑȡȠ ȟȞȡȏȖȠȪ ȏșȜȘ ȒȞȓȐȓȟȖțȩ Ȑ ȜȒȖț ȝȞȖȓȚ Ȗȣ ȖțȟȠȞȡȚȓțȠȩ țȓ ȖȕțȎȦȖȐȎȬȠȟȭ ȒȎ Ȗ ȝȜȒțȖ ȚȎȠȪȟȭ țȎȦȖ ȞȜȏȜȠȩ ȚȜȑȡȠ țȎ șȬȏȡȬ ȐȩȟȜȠȡ ȘȎȘ ȫȠȜ ȝȜ ȘȎȕȎțȜ țȎ ȞȖȟ ǽȞȓȔȒȓ ȥȓȚ Țȩ ȟȚȜȔȓȚ țȎȝȖȟȎȠȪ ȝȞȜȑȞȎȚȚȡ ȜȏȞȎȏȜȠȘȖ ȒȓȞȓȐȪȓȐ Ƞȓȏȓ țȡȔțȜ ȖȕȡȥȖȠȪ țȓȘȜȠȜȞȩȓ ȒȜȝȜșțȖȠȓșȪțȩȓ ȐȜȕȚȜȔțȜȟȠȖ ȥȓȞȓȝȎȦȘȖ Ȗ ȜȏȒȡȚȎȠȪ ȘȎȘ ȖȚȓțțȜ ȒȜșȔțȎ ȞȎȏȜȠȎȠȪ ȝȞȜȑȞȎȚȚȎ

ǽǾǼDZǾǮǺǺǶǾǼǰǮǻǶdz ȅdzǾdzǽǮȆǸǶ ǹdzǿǼǾȁǯǮ

105


ˀ̛̭͘ ϲ͘ϭ͘ ˋ̖̯̼̬̖ ̸̡̛̖̬̖̪̹̌ ̬̱̯̍́ ̨̡̨̼̭̖̏ ̸̨̡̨̛̯̬̪̖̭̖ ̨̖̬̖̔̏

ĚĝęČĥđęĔđ ģđĜđěČĤđĖ ĔęĝĞĜğĘđęĞČĘĔ ȅȠȜȏȩ ȥȓȞȓȝȎȦȘȎ ȚȜȑșȎ ȞȡȏȖȠȪ ȒȓȞȓȐȪȭ ȓȓ țȡȔțȜ ȜȟțȎ ȟȠȖȠȪ ȟȜȐȓȞȦȓțțȜ țȜȐȩȚ ȎșȚȎȕțȩȚ ȖțȟȠȞȡȚȓțȠȜȚ ȅȓȞȓ ȝȎȦȓȘ ȚȜȔțȜ ȜȏȜȞȡȒȜȐȎȠȪ ȎșȚȎȕțȩȚȖ ȘȖȞȘȎȚȖ șȜȝȎȠȎȚȖ ȠȜȝȜȞȎȚȖ ȚȜȠȩȑȎȚȖ ȖșȖ ȚȓȥȎȚȖ țȜ țȖ Ȕȓșȓȕțȩȗ țȖ Ȗȕ țȜȦȓțțȩȗ ȎșȚȎȕțȩȗ ȖțȟȠȞȡȚȓțȠ ȞȎȏȜȠȎȠȪ țȓ ȏȡȒȓȠ ǵȎȠȜ ȥȓȞȓȝȎȦȘȖ țȓ ȖȕțȎȦȖȐȎȬȠ ȖțȟȠȞȡȚȓțȠ ȝȞȖ ȞȎȏȜȠȓ ȅȠȜȏȩ ȜȟțȎȟȠȖȠȪ ȥȓȞȓȝȎȦȘȡ ȖțȟȠȞȡȚȓțȠȜȚ țȡȔțȜ ȝȜ ȚȓȟȠȖȠȪ ȓȑȜ Ȑ ȠȓȘȡȧȡȬ ȭȥȓȗȘȡ ȖțȐȓțȠȎȞȭ Ƞȡ ȘȜȠȜȞȎȭ Ȑȩ ȒȓșȓțȎ ȠȜșȟȠȜȗ ȞȎȚȘȜȗ ȥȓȞȓȝȎȦȘȖ ǰȜȕȪȚȖ ȎșȚȎȕțȡȬ ȘȖȞ Șȡ Ȗ ȝȜȚȓȟȠȖ ȓȓ Ȑ ȠȓȘȡȧȡȬ ȭȥȓȗȘȡ ǵȎȠȓȚ ȕȎȝȡȟȠȖ ȜȏȜșȜȥȘȡ /XD ȐȐȓȒȭ ȟșȓȒȡȬȧȡȬ ȘȜȚȎțȒȡ > lua Interactive Lua prompt. Call exit() to exit.

ǵȎȠȓȚ ȥȠȜȏȩ ȫȘȖȝȖȞȜȐȎȠȪ ȥȓȞȓȝȎȦȘȡ ȒȜȏȎȐșȓțțȩȚ Ȗț ȟȠȞȡȚȓțȠȜȚ ȐȩȝȜșțȖ ȟșȓȒȡȬȧȡȬ ȘȜȚȎțȒȡ lua> turtle.equipLeft()

106

DZǹǮǰǮ


ȅȓȞȓȝȎȦȘȡ ȚȜȔțȜ ȜȟțȎȟȠȖȠȪ ȟȞȎȕȡ ȒȐȡȚȭ ȖțȟȠȞȡȚȓț ȠȎȚȖ ȜȒțȖȚ ȟșȓȐȎ Ȏ ȒȞȡȑȖȚ ȟȝȞȎȐȎ dzȟșȖ Ȕȓ țȡȔțȜ ©ȞȎ ȕȜȞȡȔȖȠȪª ȥȓȞȓȝȎȦȘȡ ȐȩȕȜȐȖ ȢȡțȘȤȖȬ turtle.eq uipLeft() ȖșȖ turtle.equipRight() țȖȥȓȑȜ țȓ ȒȜȏȎȐșȭȭ Ȑ ȠȓȘȡȧȡȬ ȭȥȓȗȘȡ ǶțȟȠȞȡȚȓțȠ ȏȡȒȓȠ ȡȏȞȎț Ȗ ȝȜȚȓȧȓț Ȑ ȖțȐȓțȠȎȞȪ ȅȓȞȓȝȎȦȘȡ ȚȜȔțȜ ȜȟțȎȟȠȖȠȪ șȬȏȩȚȖ ȎșȚȎȕțȩȚȖ Ȗț ȟȠȞȡȚȓțȠȎȚȖ țȜ ȎșȚȎȕțȎȭ ȘȖȞȘȎ ȡțȖȐȓȞȟȎșȪțȎ ǮșȚȎȕțȎȭ șȜȝȎȠȎ ȝȜȕȐȜșȭȓȠ ȐȩȘȎȝȩȐȎȠȪ ȕȓȚșȭțȩȓ ȏșȜȘȖ Ȏ ȎșȚȎȕ țȩȗ ȠȜȝȜȞ ² ȐȩȞȡȏȎȠȪ ȒȞȓȐȓȟȖțȡ țȜ țȓ ȜțȖ țȓ ȚȜȑȡȠ ȒȜȏȩ ȐȎȠȪ ȘȎȚȓțȪ ȖșȖ ȞȡȒȡ ǮșȚȎȕțȎȭ ȘȖȞȘȎ ȝȜȕȐȜșȭȓȠ ȒȜȏȩȐȎȠȪ Ȑȟȓ ȠȖȝȩ ȏșȜȘȜȐ ȝȜȫȠȜȚȡ Țȩ Ȗ ȏȡȒȓȚ ȓȓ ȖȟȝȜșȪȕȜȐȎȠȪ Ȓșȭ Ȑȟȓȣ ȥȓȞȓȝȎȦȓȘ Ȑ ȫȠȜȗ ȘțȖȑȓ ǰȜȜȞȡȔȓțțȎȭ ȘȖȞȘȜȗ ȥȓȞȓȝȎȦȘȎ ȚȜȔȓȠ ȐȩȕȐȎȠȪ ȢȡțȘ ȤȖȬ turtle.dig() ȟ ȝȜȚȜȧȪȬ ȘȜȠȜȞȜȗ ȜțȎ ȚȜȔȓȠ ȒȜȏȩ ȐȎȠȪ ȏșȜȘȖ Ȗ ȒȞȓȐȓȟȖțȡ ȋȠȜ Țȩ Ȗ ȖȕȡȥȖȚ Ȑ ȟșȓȒȡȬȧȓȚ ȞȎȕȒȓșȓ

ČėďĚĜĔĞĘ ĜğčĖĔ ĐđĜđĎČ ǽȞȓȔȒȓ ȥȓȚ ȝȖȟȎȠȪ ȘȜȒ ȒȎȐȎȗ ȠȧȎȠȓșȪțȜ ȝȞȜȒȡȚȎȓȚ ȥȠȜ țȡȔțȜ ȒȓșȎȠȪ ȥȓȞȓȝȎȦȘȓ șȓȟȜȞȡȏȡ ǽȞȓȒȐȎȞȖȠȓșȪțȜȓ ȝșȎțȖȞȜȐȎțȖȓ ȝȜȚȜȔȓȠ ȐȩȭȐȖȠȪ ȜȦȖȏȘȖ ȒȜ ȠȜȑȜ ȘȎȘ ȝȞȜ ȑȞȎȚȚȎ ȏȡȒȓȠ țȎȝȖȟȎțȎ Ȏ țȓ ȝȜȟșȓ ǸȎȘ ȑȜȐȜȞȭȠ ȜȝȩȠțȩȓ ȝșȜȠțȖȘȖ ©ȟȓȚȪ ȞȎȕ ȜȠȚȓȞȪ ȜȒȖț ȜȠȞȓȔȪª ǽȞȜȞȎȏȜȠȎȓȚ ȎșȑȜȞȖȠȚ ȞȎȏȜȠȩ ȥȓȞȓȝȎȦȘȖ șȓȟȜȞȡȏȎ ǮșȑȜȞȖȠȚ ² ȫȠȜ ȝȜ ȟșȓȒȜȐȎȠȓșȪțȜȟȠȪ ȒȓȗȟȠȐȖȗ ȘȜȠȜȞȩȓ țȎȒȜ ȐȩȝȜșțȖȠȪ ȘȜȚ ȝȪȬȠȓȞȡ Ȓșȭ ȞȓȦȓțȖȭ ȝȜȟȠȎȐșȓțțȜȗ ȕȎȒȎȥȖ ȅȠȜȏȩ ȟȞȡȏȖȠȪ ȒȓȞȓȐȜ Țȩ ȝȜȚȓȧȎȓȚ ȥȓȞȓȝȎȦȘȡ ȡ ȓȑȜ Ȝȟ țȜȐȎțȖȭ ȞȡȏȖȚ ȒȐȖȑȎȓȚȟȭ ȐȝȓȞȓȒ ȞȡȏȖȚ țȎȒ ȥȓȞȓȝȎȦȘȜȗ ȝȜȒțȖȚȎȓȚȟȭ ȐȐȓȞȣ Ȏ ȕȎȠȓȚ ȝȜȐȠȜȞȭȓȚ ȝȜȟșȓȒțȖȓ ȒȐȎ ȦȎȑȎ Ȓșȭ ȐȟȓȑȜ ȒȓȞȓȐȎ ǸȜȑȒȎ ȥȓȞȓȝȎȦȘȎ ȝȜșțȜȟȠȪȬ ȐȩȞȡȏȖȠ Ȓȓ ȞȓȐȜ ȜțȎ ȐȓȞțȓȠȟȭ țȎ ȕȓȚșȬ ȥȠȜȏȩ ȓȓ ȚȜȔțȜ ȏȩșȜ ȕȎȏȞȎȠȪ ǻȎ ȞȖȟ ² ȝȜȘȎȕȎț ȐȓȟȪ ȝȞȜȤȓȟȟ Dzșȭ ȝȓȞȓȚȓȧȓțȖȭ ȥȓȞȓȝȎȦȘȖ Țȩ ȏȡȒȓȚ ȖȟȝȜșȪȕȜȐȎȠȪ ȢȡțȘȤȖȖ turtle.forward() Ȗ turtle.up() Ǯ ȥȠȜȏȩ ȕȎȟȠȎ ȐȖȠȪ ȥȓȞȓȝȎȦȘȡ ȞȡȏȖȠȪ ȠȜ ȓȟȠȪ ȒȜȏȩȐȎȠȪ ȒȞȓȐȓȟȖțȡ Ȗȟ ȝȜșȪȕȡȓȚ ȢȡțȘȤȖȬ turtle.dig() ȘȜȠȜȞȎȭ ȏȡȒȓȠ ȒȜȏȩȐȎȠȪ

ǽǾǼDZǾǮǺǺǶǾǼǰǮǻǶdz ȅdzǾdzǽǮȆǸǶ ǹdzǿǼǾȁǯǮ

107


ˀ̛̭͘ ϲ͘Ϯ͘ ˋ̡̖̬̖̪̹̌̌ ̨̪̖̬̦̱̯̏̌ ̡ ̖̬̖̱̔̏ ̛ ̸̛̦̦̖̯̌̌ ̡̬̱̱̍ ̏ ̛̦̙̦̖̜ ̨̖̐ ̸̛̭̯̌

ˀ̛̭͘ ϲ͘ϯ͘ ˋ̡̖̬̖̪̹̌̌ ̼̏Ͳ ̬̱̖̯̍̌ ̛̛̦̙̦̜ ̨̡̣̍ ̖̬̖͕̔̏̌ ̌ ̯̖̥̌̚ ̛̙̖̯̔̏Ͳ ̭́ ̪̖̬̖͕̏̔ ̡̯͕̌ ̸̨̯̼̍ ̸̨̛̱̯̯̭̽́ ̨̪̔ ̨̖̬̖̥̔̏

ˀ̛̭͘ ϲ͘ϱ͘ ˋ̡̖̬̖̪̹̌̌ ̨̨̪̬̣̙̖̯̔̌ ̼̬̱̯̏̍̌̽ ̖̬̖̦̔̏́​̦̼̖ ̨̡̛̣͕̍ ̨̡̪̌ ̦̌̔ ̦̖̜ ̦̖ ̨̭̯̦̖̯̭̌́ ̛̬̖̖̭̦̼̔̏

ˀ̛̭͘ ϲ͘ϰ͘ ˋ̡̖̬̖̪̹̌̌ ̼̏Ͳ ̬̱̖̯̍̌ ̨̡̣͕̍ ̡̨̨̯̬̼̜ ̵̨̛̦̯̭̌̔́ ̦̌̔ ̦̖̜͕ ̌ ̯̖̥̌̚ ̛̙̖̯̭̔̏́ ̏​̵̖̬̏ ̦̌ ̨̦̱̔ ̶̨̛̛̪̀̚

ˀ̛̭͘ ϲ͘ϲ͘ ˋ̡̖̬̖̪̹̌̌ ̨̏̚Ͳ ̬̺̖̯̭̏̌̌́ ̦̌ ̖̥̣͕̀̚ ̸̨̯̼̍ ̨̡̛̬̐ ̨̥̐ ̖​̖ ̌̚Ͳ ̬̯̍̌̽͘ ʸ̛̭̯̽́ ̨̪̬̪̱̯̌̔ ̸̖̬̖̚ ̡̨̨̨̦̖̯̬̖ ̬̖̥̏́

ȏșȜȘ ȞȎȟȝȜșȜȔȓțțȩȗ ȝȓȞȓȒ țȓȗ Ȏ ȠȎȘȔȓ ȢȡțȘȤȖȬ turtle. digUp() ȘȜȠȜȞȎȭ ȒȜȏȩȐȎȓȠ ȏșȜȘ țȎȒ ȥȓȞȓȝȎȦȘȜȗ DzȓȞȓȐȪȭ Ȑ 0LQHFUDIW ȒȜȟȠȖȑȎȬȠ ȞȎȕțȜȗ ȐȩȟȜȠȩ ȝȜȫȠȜȚȡ ȣȜȠȓșȜȟȪ ȏȩ țȎȝȖȟȎȠȪ ȝȞȜȑȞȎȚȚȡ Ȑ ȘȜȠȜȞȜȗ țȓ ȏȡȒȓȠ ȔȓȟȠ ȘȜ ȘȜȒȖȞȜȐȎȠȪȟȭ ȐȩȟȜȠȎ ȒȓȞȓȐȎ ǴȓȟȠȘȜȓ ȘȜȒȖȞȜȐȎțȖȓ Ȝȕ țȎȥȎȓȠ ȝȞȜȑȞȎȚȚȖȞȜȐȎțȖȓ ȜȑȞȎțȖȥȓțțȜȑȜ ȢȖȘȟȖȞȜȐȎț țȜȑȜ ȞȓȦȓțȖȭ ǽȞȜȑȞȎȚȚȩ ȟ ȔȓȟȠȘȖȚ ȘȜȒȖȞȜȐȎțȖȓȚ țȓ ȚȜȑȡȠ ȜȏȞȎȏȎȠȩȐȎȠȪ ȞȎȕșȖȥțȩȓ ȟȖȠȡȎȤȖȖ ȠȎȘ ȘȎȘ Ȓșȭ

108

DZǹǮǰǮ


ȫȠȜȑȜ ȠȞȓȏȡȓȠȟȭ ȝȓȞȓȝȖȟȎȠȪ ȘȜȒ ǻȎȝȞȖȚȓȞ ȚȜȔțȜ țȎȝȖ ȟȎȠȪ ȠȎȘȜȗ ȘȜȒ turtle.digUp() turtle.up() turtle.digUp() turtle.up() turtle.digUp() turtle.up() turtle.digUp()

ȋȠȎ ȝȞȜȑȞȎȚȚȎ ȝȞȜȟȠȎ Ȗ ȝȜțȭȠțȎ țȜ ȟ țȓȗ ȥȓȞȓȝȎȦȘȎ ȚȜȔȓȠ ȞȡȏȖȠȪ ȠȜșȪȘȜ Ƞȓ ȒȓȞȓȐȪȭ ȐȩȟȜȠȎ ȘȜȠȜȞȩȣ ȟȜȟȠȎȐșȭ ȓȠ ȞȜȐțȜ ȥȓȠȩȞȓ ȏșȜȘȎ dzȟșȖ Ȕȓ Ƞȩ ȣȜȥȓȦȪ ȥȠȜȏȩ ȥȓȞȓȝȎȦ ȘȎ ȐȩȞȡȏȎșȎ ȒȓȞȓȐȪȭ ȞȎȕțȩȣ ȞȎȕȚȓȞȜȐ ȫȠȜȠ ȒȎșȓȘȜ țȓ ȖȒȓ ȎșȪțȩȗ ȘȜȒ ȝȞȖȒȓȠȟȭ ȝȓȞȓȝȖȟȎȠȪ ǻȜ ȟțȎȥȎșȎ ȒȎȐȎȗ ȞȎȕȞȎȏȜȠȎȓȚ ȎșȑȜȞȖȠȚ Ȓșȭ ȐȩȞȡȏȘȖ ȒȓȞȓȐȪȓȐ șȬȏȜȑȜ ȞȎȕȚȓȞȎ Ǹ ȝȞȖȚȓȞȡ ȎșȑȜȞȖȠȚ ȚȜȔȓȠ ȟȜ ȟȠȜȭȠȪ Ȗȕ ȟșȓȒȡȬȧȖȣ ȦȎȑȜȐ 1. ȅȓȞȓȝȎȦȘȎ ȝȜȐȓȞțȡȠȎȭ Ȑ țȎȝȞȎȐșȓțȖȖ ȒȓȞȓȐȎ ȝȜȚȓ ȧȎȓȠȟȭ ȡ ȓȑȜ ȜȟțȜȐȎțȖȭ 2. ȅȓȞȓȝȎȦȘȎ ȐȩȞȡȏȎȓȠ țȖȔțȖȗ ȏșȜȘ ȒȓȞȓȐȎ ȞȎȟȝȜșȜ Ȕȓțțȩȗ ȝȞȭȚȜ ȝȓȞȓȒ țȓȗ 3. ȅȓȞȓȝȎȦȘȎ ȒȐȖȔȓȠȟȭ ȝȜȒ ȒȓȞȓȐȜ 4. ǰȩȞȡȏȎȓȠ ȏșȜȘ ȞȎȟȝȜșȜȔȓțțȩȗ țȎȒ țȓȗ Ȗ ȝȜȒțȖȚȎ ȓȠȟȭ ȐȩȦȓ ȒȜ Ƞȓȣ ȝȜȞ ȝȜȘȎ țȎȒ țȓȗ țȓ ȜȟȠȎțȓȠȟȭ ȏșȜȘȜȐ ȒȞȓȐȓȟȖțȩ 5. DzȐȖȔȓȠȟȭ ȐțȖȕ ȝȜȘȎ țȓ ȐȓȞțȓȠȟȭ țȎ ȕȓȚșȬ 6. ǿȠȜȝ ȋȠȜȠ ȎșȑȜȞȖȠȚ ȝȜȕȐȜșȖȠ ȥȓȞȓȝȎȦȘȓ ȞȡȏȖȠȪ ȒȓȞȓȐȪȭ șȬ ȏȜȗ ȐȩȟȜȠȩ dzȑȜ Ƞȩ ȞȓȎșȖȕȡȓȦȪ Ȑ ȝȞȜȑȞȎȚȚȓ choptree.

ĖĚĐ ěĜĚďĜČĘĘħ +078<:-ǰ ȜȏȜșȜȥȘȓ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ȐȩȝȜșțȖ ȘȜȚȎțȒȡ edit c h o pt r e e ȥȠȜȏȩ ȕȎȝȡȟȠȖȠȪ ȠȓȘȟȠȜȐȩȗ ȞȓȒȎȘȠȜȞ ǰ ȠȓȘȟȠȜȐȜȚ ȞȓȒȎȘȠȜȞȓ ȐȐȓȒȖ ȝȜȘȎȕȎțțȩȓ țȖȔȓ ȟȠȞȜȘȖ

ǽǾǼDZǾǮǺǺǶǾǼǰǮǻǶdz ȅdzǾdzǽǮȆǸǶ ǹdzǿǼǾȁǯǮ

109


Č˜ČœČ’ČŽ Ç˝ČœČšČ›Č– ČĽČ Čœ Č›ČœČšČ“ČžČŽ Č&#x;Č ČžČœČ˜ ČĄ Č˜ČŽČ•ČŠČ?ČŽČ ČŞ țȓ Č›ČĄČ”Č›Čœ Ç° Č˜Č›Č–Č‘Č“ ČœČ›Č– Ȓșȭ ČĄČ’ČœČ?Č&#x;Č Č?ČŽ ČĽČ ČœČ?ČŠ ČšČœČ”Č›Čœ Č?ČŠČ™Čœ ČœČ?ȞȎȧČŽČ ČŞČ&#x;Č­ Č˜ Č&#x;Č ČžČœČ˜ČŽČš Č˜ČœČ’ČŽ Č?Čœ Č–ČŁ Č›ČœČšČ“ČžČŽČš. choptree >>ɉɪɨÉ?ɪɚɌɌɚ ÉœɾɪɭÉ›ɤɢ ÉžÉ&#x;ÉŞÉ&#x;ÉœÉśÉ&#x;Éœ É—ÉĽÉš É‹ÉœÉ&#x;ÉŁÉ?ɚɪɏɚ 2. Chops down the tree in front of turtle.]] 3. 4. if not turtle.detect() then HUURU &RXOG QRW ÂżQG WUHH

6. end 7. 8. print('Chopping tree...') 9. LI QRW WXUWOH GLJ WKHQ ÉœɾɪɭÉ›ɤÉš ɨɍɧɨɜɚɧɢɚ ÉžÉ&#x;ÉŞÉ&#x;ɜɚ 11. error('Turtle needs a digging tool!') 12. end 13. WXUWOH IRUZDUG ÉŠÉ&#x;ÉŞÉ&#x;ÉŚÉ&#x;ÉłÉ&#x;ɧɢÉ&#x; ɊɨÉž ÉžÉ&#x;ÉŞÉ&#x;Éœɨ 15. while turtle.compareUp() do ÉœɾɪɭÉ›ɤÉš ɊɨɤÉš ɨÉ›ɧÉšÉŞÉ­É É˘ÉœÉšÉ&#x;ÉŹÉŤÉš ɞɪÉ&#x;ÉœÉ&#x;ɍɢɧÉš 17. turtle.digUp() 18. turtle.up() 19. end 20. ÉœɨɥÉœÉŞÉšÉłÉ&#x;ɧɢÉ&#x; ɧÉš ÉĄÉ&#x;Ɍɼɸ 22. while not turtle.detectDown() do 23. turtle.down() 24. end 25. 26. print('Done chopping tree.')

ÇżČœČŁČžČŽČ›Č– Č?ČžČœČ‘ČžČŽČšČšČĄ Č?ČœČ&#x;șȓ Č?Č?ČœČ’ČŽ Č?Č&#x;Č“ČŁ Č–Č›Č&#x;Č ČžČĄČ˜ȤČ–Č— ǝȎ ȔȎČ? Č˜Č™ČŽČ?Č–ČŚČĄ Ctrl ČœČ Č˜ČžČœČ— Țȓțȏ Ç°ČŠČ?ȓȞȖ Č?ČĄČ›Č˜Č [Save] Č– țȎȔȚȖ Č˜Č™ČŽČ?Č–ČŚČĄ Enter ÇľČŽČ Č“Čš Č?ČŠČ—Č’Č– Č–Č• ČžČ“Č’ČŽČ˜Č ČœČžČŽ țȎ ȔȎČ? Č˜Č™ČŽČ?Č–ČŚČĄ Ctrl Č?ČŠČ?ȞȎČ? Č?ČĄČ›Č˜Č [Exit] Č– țȎȔȎČ? Č˜Č™ČŽČ?Č– ČŚČĄ Enter.

110

ǹǚǎǰǎ


ēČěğĝĖ ěĜĚďĜČĘĘħ +078<:-ǰȩȏȓȞȖ ȥȓȞȓȝȎȦȘȡ Ȗ ȝȜȚȓȟȠȖ țȜȐȡȬ ȎșȚȎȕțȡȬ ȘȖȞȘȡ Ȑ ȓȓ ȖțȐȓțȠȎȞȪ ǻȎȗȒȖ ȒȓȞȓȐȜ Ȑ ȚȖȞȓ 0LQHFUDIW Ȗ ȡȟȠȎțȜȐȖ ȥȓȞȓȝȎȦȘȡ ȠȎȘ ȥȠȜȏȩ ȝȓȞȓȒțȓȗ ȥȎȟȠȪȬ ȜțȎ ȏȩșȎ ȜȏȞȎȧȓ țȎ Ș țȖȔțȓȚȡ ȏșȜȘȡ ȐȩȏȞȎțțȜȑȜ ȒȓȞȓȐȎ ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ

ˀ̛̭͘ ϲ͘ϳ͘ ˄̨̛̭̯̦̌̏ ̸̡̖̬̖̪̹̱̌ ̱ ̨̨̛̭̦̦̏̌́ ̖̬̖̔̏̌

ȇȓșȘțȖ ȝȞȎȐȜȗ ȘțȜȝȘȜȗ ȚȩȦȖ ȝȜ ȥȓȞȓȝȎȦȘȓ ȥȠȜȏȩ ȜȠ ȘȞȩȠȪ ȓȓ ȑȞȎȢȖȥȓȟȘȖȗ ȖțȠȓȞȢȓȗȟ ȁȏȓȒȖȟȪ Ȑ țȎșȖȥȖȖ ȠȜ ȝșȖȐȎ ȡ ȥȓȞȓȝȎȦȘȖ Ȗ ȥȠȜ ȓȓ ȠȓȘȡȧȎȭ ȭȥȓȗȘȎ ȝȡȟȠȎ ³ Ȑ țȓȗ ȜțȎ ȏȡȒȓȠ ȟȜȣȞȎțȭȠȪ ȐȩȞȡȏșȓțțȩȓ ȏșȜȘȖ ǵȎȠȓȚ ȕȎȝȡȟȠȖ ȝȞȜȑȞȎȚȚȡ choptree Ȗ ȝȜțȎȏșȬȒȎȗ ȘȎȘ ȥȓȞȓȝȎȦȘȎ ȐȩȞȡ ȏȖȠ Ȑȟȓ ȒȓȞȓȐȜ ǽȜȟșȓ ȠȜȑȜ ȘȎȘ ȥȓȞȓȝȎȦȘȎ ȒȜȏȡȒȓȠ ȐȟȬ ȒȞȓ ȐȓȟȖțȡ ȜțȎ ȐȓȞțȓȠȟȭ țȎ ȕȓȚșȬ ȑȒȓ Ƞȩ ȟȚȜȔȓȦȪ ȕȎȏȞȎȠȪ Ȗȕ ȓȓ ȖțȐȓțȠȎȞȭ Ȑȟȓ ȒȜȏȩȠȩȓ ȏșȜȘȖ dzȟșȖ ȝȞȖ ȕȎȝȡȟȘȓ ȫȠȜȗ ȝȞȜȑȞȎȚȚȩ ȐȜȕțȖȘȎȬȠ ȜȦȖȏȘȖ ȠȧȎȠȓșȪțȜ ȟȞȎȐțȖ ȟȐȜȗ ȘȜȒ ȟ șȖȟȠȖțȑȜȚ Ȑ ȫȠȜȗ ȘțȖȑȓ Ȗ Ȗȟ ȝȞȎȐȪ Ȑȟȓ ȜȝȓȥȎȠȘȖ dzȟșȖ ȖȟȝȞȎȐȖȠȪ ȝȞȜȑȞȎȚȚȡ țȓ ȡȒȎȓȠȟȭ ȡȒȎșȖ ȢȎȗș ȐȩȝȜșțȖȐ ȘȜȚȎțȒȡ delete choptree Ȏ ȕȎȠȓȚ ȕȎȑȞȡȕȖ ȝȞȜȑȞȎȚȚȡ ȕȎțȜȐȜ ȟ ȝȜȚȜȧȪȬ ȘȜȚȎțȒȩ pastebin get 8NgPXXxN choptree.

ǽǾǼDZǾǮǺǺǶǾǼǰǮǻǶdz ȅdzǾdzǽǮȆǸǶ ǹdzǿǼǾȁǯǮ

111


ĚčęČĜğĒđęĔđ čėĚĖĚĎ ĝ ĠğęĖĢĔīĘĔ ĚčęČĜğĒđęĔī ģđĜđěČĤĖĔ DzȎȐȎȗ ȞȎȟȟȚȜȠȞȖȚ ȘȎȔȒȡȬ ȟȠȞȜȘȡ ȖȟȣȜȒțȜȑȜ ȘȜȒȎ ȝȞȜȑȞȎȚ Țȩ choptree ǿțȎȥȎșȎ ȥȓȞȓȝȎȦȘȓ țȡȔțȜ ȝȞȜȐȓȞȖȠȪ ȓȟȠȪ șȖ ȝȓȞȓȒ țȓȗ ȒȓȞȓȐȜ choptree >>ɉɪɨɝɪɚɦɦɚ ɜɵɪɭɛɤɢ ɞɟɪɟɜɶɟɜ ɗɥɚ ɋɜɟɣɝɚɪɬɚ 2. Chops down the tree in front of turtle.]] 3. 4. if not turtle.detect() then

ȂȡțȘȤȖȭ turtle.detect() ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ true ȓȟșȖ ȘȎȘȜȗ șȖȏȜ ȏșȜȘ țȎȣȜȒȖȠȟȭ ȝȓȞȓȒ ȥȓȞȓȝȎȦȘȜȗ ȖșȖ false ȓȟșȖ ȝȓȞȓȒ țȓȗ țȖȥȓȑȜ țȓȠ ȂȡțȘȤȖȭ ȠȎȘȔȓ ȐȜȕȐȞȎ ȧȎȓȠ ȕțȎȥȓțȖȓ false ȓȟșȖ ȝȓȞȓȒ ȥȓȞȓȝȎȦȘȜȗ ȐȜȒȎ ȖșȖ șȎ ȐȎ ȝȜȠȜȚȡ ȥȠȜ ȥȓȞȓȝȎȦȘȎ ȚȜȔȓȠ ȝȓȞȓȚȓȧȎȠȪȟȭ ȝȜ ȫȠȖȚ ȠȖ ȝȎȚ ȏșȜȘȜȐ ǽȜȒȜȏțȜ ȐȩȕȜȐȎȚ turtle.digUp() Ȗ turtle.digDown() ȢȡțȘȤȖȖ turtle.detectUp() Ȗ turtle.detectDown() Ȝȏ țȎȞȡȔȖȐȎȬȠ ȏșȜȘȖ ȐȩȦȓ Ȗ țȖȔȓ ȥȓȞȓȝȎȦȘȖ ȟȜȜȠȐȓȠȟȠȐȓț țȜ ȃȜȠȭ ȢȡțȘȤȖȭ turtle.detect() ȚȜȔȓȠ ȜȝȞȓȒȓșȖȠȪ țȎ ȣȜȒȖȠȟȭ șȖ ȠȐȓȞȒȩȗ ȏșȜȘ ȝȓȞȓȒ ȥȓȞȓȝȎȦȘȜȗ ȜțȎ țȓ ȚȜȔȓȠ ȡȕțȎȠȪ ȘȎȘȜȗ ȖȚȓțțȜ ȫȠȜ ȏșȜȘ ǽȞȜȑȞȎȚȚȓ ȝȞȖȣȜȒȖȠȟȭ ȝȜ șȎȑȎȠȪȟȭ țȎ ȠȜ ȥȠȜ ȝȜșȪȕȜȐȎȠȓșȪ ȝȜȚȓȟȠȖȠ ȥȓȞȓȝȎȦȘȡ ȝȓ ȞȓȒ ȒȓȞȓȐȜȚ ǽȓȞȓȒ ȢȡțȘȤȖȓȗ turtle.detect() Ȑ ȟȠȞȜȘȓ țȎȣȜȒȖȠȟȭ șȜȑȖȥȓȟȘȖȗ ȜȝȓȞȎȠȜȞ not ȘȜȠȜȞȩȗ Țȩ ȞȎȟȟȚȜȠȞȖȚ Ȑ ȟșȓȒȡ ȬȧȓȚ ȞȎȕȒȓșȓ

ėĚďĔģđĝĖĔĕ ĚěđĜČĞĚĜ 67< ǼȝȓȞȎȠȜȞ not ȝȜȒȒȓȞȔȖȐȎȓȠ ȠȜșȪȘȜ șȜȑȖȥȓȟȘȖȓ ȐȩȞȎȔȓ țȖȭ ȐȜȕȐȞȎȧȎȭ ȕțȎȥȓțȖȓ ȝȞȜȠȖȐȜȝȜșȜȔțȜȓ ȎȞȑȡȚȓțȠȡ ȀȎ ȘȖȚ ȜȏȞȎȕȜȚ QRW WUXH ² ȫȠȜ IDOVH Ȏ QRW IDOVH ² ȫȠȜ WUXH ǰ ȜȏȜ șȜȥȘȓ /XD ȐȐȓȒȖ ȟșȓȒȡȬȧȖȓ ȘȜȚȎțȒȩ

112

DZǹǮǰǮ


lua> not true false lua> not false true lua> myAge = 8 lua> not (myAge > 5) false

ǹȜȑȖȥȓȟȘȖȗ ȜȝȓȞȎȠȜȞ not ȚȜȔțȜ ȖȟȝȜșȪȕȜȐȎȠȪ țȓ ȠȜșȪ ȘȜ Ȑ ȘȜțȟȠȞȡȘȤȖȭȣ ȠȖȝȎ not false țȜ Ȗ Ȑ șȬȏȩȣ ȒȞȡȑȖȣ șȜȑȖȥȓȟȘȖȣ ȐȩȞȎȔȓțȖȭȣ țȎȝȞȖȚȓȞ not (myAge > 5) ȋȠȜ ȞȎȏȜȠȎȓȠ ȟșȓȒȡȬȧȖȚ ȜȏȞȎȕȜȚ not (myAge > 5) not (8 > 5) not true false

ǰ ȟȠȞȜȘȓ ȝȞȜȑȞȎȚȚȩ choptree ȜȝȓȞȎȠȜȞ not ȖȕȚȓțȭ ȓȠ șȜȑȖȥȓȟȘȜȓ ȕțȎȥȓțȖȓ ȐȜȕȐȞȎȧȎȓȚȜȓ ȢȡțȘȤȖȓȗ turtle. detect() țȎ ȝȞȜȠȖȐȜȝȜșȜȔțȜȓ dzȟșȖ ȝȓȞȓȒ ȥȓȞȓȝȎȦȘȜȗ țȓȠ ȏșȜȘȎ ȢȡțȘȤȖȭ turtle.detect() ȐȓȞțȓȠ false Ȏ Ȝȝȓ ȞȎȠȜȞ not ȜȏȞȎȠȖȠ ȫȠȜ ȕțȎȥȓțȖȓ Ȑ true ǿȠȞȜȘȡ if not turtle.detect() then ȚȜȔțȜ ȝȞȜȥȖȠȎȠȪ ȘȎȘ ©ȓȟșȖ ȥȓȞȓ ȝȎȦȘȎ țȓ ȜȏțȎȞȡȔȖȐȎȓȠ ȏșȜȘ ȜțȎ ȐȩȝȜșțȭȓȠ ȟșȓȒȡȬȧȖȗ ȏșȜȘ ȘȜȒȎª dzȟșȖ ȘȎȘȜȗ șȖȏȜ ȏșȜȘ ȜȏțȎȞȡȔȓț ȝȓȞȓȒ ȥȓȞȓ ȝȎȦȘȜȗ ȐȩȝȜșțȭȓȠȟȭ ȏșȜȘ ȘȜȒȎ ȘȜȠȜȞȩȗ ȟșȓȒȡȓȠ ȕȎ Ȗț ȟȠȞȡȘȤȖȓȗ if. ǿȡȧȓȟȠȐȡȓȠ ȓȧȓ ȒȐȎ șȜȑȖȥȓȟȘȖȣ ȜȝȓȞȎȠȜȞȎ and Ȗ or Ǻȩ țȓ ȏȡȒȓȚ ȖȟȝȜșȪȕȜȐȎȠȪ Ȗȣ Ȑ ȝȞȜȑȞȎȚȚȓ choptree țȜ ȞȎȟ ȟȚȜȠȞȖȚ ȘȎȘ ȜțȖ ȞȎȏȜȠȎȬȠ ȝȜȟȘȜșȪȘȡ ȜțȖ ȝȞȖȑȜȒȭȠȟȭ Ȑ ȒȞȡȑȖȣ ȝȞȜȑȞȎȚȚȎȣ

ǽǾǼDZǾǮǺǺǶǾǼǰǮǻǶdz ȅdzǾdzǽǮȆǸǶ ǹdzǿǼǾȁǯǮ

113


ėĚďĔģđĝĖĔĕ ĚěđĜČĞĚĜ )6, ǹȜȑȖȥȓȟȘȖȗ ȜȝȓȞȎȠȜȞ and ȜȤȓțȖȐȎȓȠ ȒȐȎ șȜȑȖȥȓȟȘȖȣ ȕțȎȥȓ țȖȭ Ȗ ȐȜȕȐȞȎȧȎȓȠ ȞȓȕȡșȪȠȎȠ true ȓȟșȖ ȜțȖ ȜȏȎ ȖȟȠȖțțȩ (true dzȟșȖ ȣȜȠȭ ȏȩ ȜȒțȜ Ȗȕ țȖȣ șȜȔțȜ false ȠȜ Ȗ ȜȝȓȞȎ ȠȜȞ ȐȓȞțȓȠ ȕțȎȥȓțȖȓ false ǰ ȜȏȜșȜȥȘȓ /XD ȐȐȓȒȖ ȟșȓȒȡȬ ȧȖȓ ȖțȟȠȞȡȘȤȖȖ lua> true and true true lua> true and false false lua> false and true false lua> false and false false

ǽȜȞȭȒȜȘ ȞȎȟȝȜșȜȔȓțȖȭ ȜȤȓțȖȐȎȓȚȩȣ ȕțȎȥȓțȖȗ țȓ ȐșȖȭ ȓȠ țȎ ȜȤȓțȘȡ ȐȩȞȎȔȓțȖȭ Ȑ ȤȓșȜȚ ȋȠȜȠ ȜȝȓȞȎȠȜȞ ȚȜȔțȜ ȖȟȝȜșȪȕȜȐȎȠȪ Ȗ Ȑ ȟșȜȔțȩȣ ȐȩȞȎ ȔȓțȖȭȣ țȎȝȞȖȚȓȞ ȠȎȘ lua> 4 < 5 and 5 < 6 true lua> myName = 'Al' lua> theirName = 'Alice' lua> myName == 'Al' and theirName == 'Bob' false

ǰȩȞȎȔȓțȖȓ 4 < 5 and 5 < 6 ȜȤȓțȖȐȎȓȠȟȭ ȟșȓȒȡȬȧȖȚ ȜȏȞȎȕȜȚ 4 < 5 and 5 < 6 true and 5 < 6 true and true true

114

DZǹǮǰǮ


ǽȜȟȘȜșȪȘȡ ȟ ȜȏȓȖȣ ȟȠȜȞȜț ȜȝȓȞȎȠȜȞȎ and ȐȩȞȎȔȓțȖȭ Ȗȟ ȠȖțțȩ ȠȜ Ȗ ȜȝȓȞȎȠȜȞ ȐȓȞțȓȠ ȕțȎȥȓțȖȓ true. ǻȜ Ȑ ȟȠȞȜȘȓ myName == 'Al' and theirName == 'Bob' ȐȩȞȎȔȓțȖȭ ȟ ȜȏȓȖȣ ȟȠȜȞȜț ȜȝȓȞȎȠȜȞȎ țȓ ȖȟȠȖțțȩ myName

== 'Al' and theirName == 'Bob'

'Al' == 'Al' and theirName == 'Bob'

true and theirName == 'Bob'

true and 'Alice' == 'Bob' true and false

false

ėĚďĔģđĝĖĔĕ ĚěđĜČĞĚĜ 7: ǹȜȑȖȥȓȟȘȖȗ ȜȝȓȞȎȠȜȞ or ȜȤȓțȖȐȎȓȠ ȒȐȎ șȜȑȖȥȓȟȘȖȣ ȕțȎȥȓ țȖȭ Ȗ ȐȜȕȐȞȎȧȎȓȠ ȞȓȕȡșȪȠȎȠ true ȓȟșȖ ȜȒțȜ Ȗȕ țȖȣ ȖȟȠȖț țȜ dzȟșȖ ȜȏȎ ȕțȎȥȓțȖȭ șȜȔțȩ false Ȑȟȓ ȐȩȞȎȔȓțȖȓ ȝȞȖ țȖȚȎȓȠ ȕțȎȥȓțȖȓ false ǰȐȓȒȖ Ȑ ȜȏȜșȜȥȘȓ /XD ȟșȓȒȡȬȧȖȓ ȖțȟȠȞȡȘȤȖȖ lua> true or true true lua> true or false true lua> false or true true lua> false or false false

ǰ ȜȠșȖȥȖȓ ȜȠ ȜȝȓȞȎȠȜȞȎ and ȜȝȓȞȎȠȜȞ or ȐȓȞțȡș ȕțȎȥȓ țȖȓ false ȠȜșȪȘȜ Ȑ ȝȜȟșȓȒțȓȚ ȟșȡȥȎȓ ȋȠȜȠ ȜȝȓȞȎȠȜȞ ȠȎȘȔȓ ȚȜȔțȜ ȖȟȝȜșȪȕȜȐȎȠȪ Ȑ ȟșȜȔțȩȣ Ȑȩ ȞȎȔȓțȖȭȣ țȎȝȞȖȚȓȞ ȠȎȘ

ǽǾǼDZǾǮǺǺǶǾǼǰǮǻǶdz ȅdzǾdzǽǮȆǸǶ ǹdzǿǼǾȁǯǮ

115


lua> 10 > 5 or 'Hello' == 'Hello' true lua> myName = 'Al' lua> myAge = 8 lua> myName == 'Zophie' or myAge < 10 true lua> myName == 'Zophie' or myAge ~= 8 false

ǰȊȞȎȔȓțȖȓ myName == 'Zophie' or myAge < 10 ČœȤČ“ țȖČ?ČŽČ“Č Č&#x;Č­ Č&#x;șȓȒȥȏȧČ–Čš ČœČ?ČžČŽČ•ČœČš myName == 'Zophie' or myAge < 10

'Al' == 'Zophie' or myAge < 10

false or myAge < 10

false or 8 < 10 false or true

true

Ç° ȞȎČ&#x;Č&#x;ČšČŽČ ČžČ–Č?ČŽČ“ČšČœČ— Č&#x;Č ČžČœČ˜Č“ ČœČ’Č›ČŽ ČĽČŽČ&#x;Č ČŞ Č™ČœČ”Č›ČŽ ČŽ ȒȞȥȑȎȭ Č–Č&#x; Č Č–Č›Č›ČŽ Č– Č?ȊȞȎȔȓțȖȓ Č? ȤČ“Č™ČœČš ČœȤȓțȖČ?ČŽČ“Č Č&#x;Č­ Č˜ČŽČ˜ Č–Č&#x;Č Č–Č›Č›ČœČ“ ÇťČœ myName == 'Zophie' or myAge ~= 8 Č? Č&#x;Č ČžČœČ˜Č“ myName == 'Zophie' or myAge ~= 8 Č™ČœČ”Č›ČŠ ČœČ?Č“ ČĽČŽČ&#x;Č Č– Č?ȊȞȎȔȓ 'Al' == 'Zophie' or myAge ~= 8 țȖȭ false or myAge ~= 8 false or 8 ~= 8 false or false

false

116

ǹǚǎǰǎ

Ç˝Čœ ČŤ Č ČœČš ČĄ Č? Č&#x; Č­ Č&#x; Č Čž ČœČ˜ ČŽ Č? Čœ Č• Č?Čž ČŽ ȧ ČŽČ“ Č Čž Č“ Č• ČĄČ™ ČŞČ ČŽČ false. ǸČŽČ˜ ČœČ?Č“ČžČŽČ ČœČž and Č ČŽČ˜ Č– ČœČ?Č“ČžČŽČ ČœČž or Č?ȞȖȚȓțȖ Čš ČŠ Č? Č?ČŠ ȞȎ Č” Č“Č› Č– Č­ ČŁ Č–Č&#x; Č?ČœČ™ČŞČ•ȥȏȧČ–ČŁ ȞȎȕțȊȓ Č Č– Č?ČŠ ȒȎțțȊȣ


ǹȜȑȖȥȓȟȘȖȓ ȜȝȓȞȎȠȜȞȩ and or Ȗ not ȝȜȕȐȜșȭȬȠ ȟȜȕȒȎ ȐȎȠȪ ȏȜșȓȓ ȟșȜȔțȩȓ ȡȟșȜȐȖȭ Ȓșȭ ȖțȟȠȞȡȘȤȖȗ if elseif Ȗ while.

ēČĎđĜĤđęĔđ ěĜĚďĜČĘĘ ĝ ěĚĘĚĥĨĪ ĠğęĖĢĔĔ -::7: ǰȓȞțȓȚȟȭ Ș ȝȞȜȑȞȎȚȚȓ choptree dzȟșȖ ȝȞȖ ȕȎȝȡȟȘȓ ȝȞȜ ȑȞȎȚȚȩ ȝȓȞȓȒ ȥȓȞȓȝȎȦȘȜȗ țȓȠ ȘȎȘȜȑȜ șȖȏȜ ȏșȜȘȎ ȠȜ ȓȟȠȪ ȡȟșȜȐȖȓ not turtle.detect() Ȑ ȟȠȞȜȘȓ ȐȜȕȐȞȎȧȎȓȠ ȕțȎ ȥȓțȖȓ false ȝȞȜȑȞȎȚȚȎ ȒȜșȔțȎ ȕȎȐȓȞȦȖȠȪȟȭ ȟ ȟȜȜȏȧȓ țȖȓȚ Ȝȏ ȜȦȖȏȘȓ ǼȏȩȥțȜ ȝȞȜȑȞȎȚȚȩ ȕȎȐȓȞȦȎȬȠ ȞȎȏȜȠȡ ȝȜ ȒȜȟȠȖȔȓțȖȖ ȝȜȟșȓȒțȓȗ ȟȠȞȜȘȖ ȘȜȒȎ ǻȜ Ƞȩ ȚȜȔȓȦȪ Ȑȩ ȕȐȎȠȪ ȢȡțȘȤȖȬ error() ȟȜ ȟȠȞȜȘȜȐȩȚ ȎȞȑȡȚȓțȠȜȚ ȥȠȜȏȩ ȕȎȐȓȞȦȖȠȪ ȝȞȜȑȞȎȚȚȡ ȞȎțȪȦȓ Ȗ ȜȠȜȏȞȎȕȖȠȪ ȟȜȜȏȧȓțȖȓ Ȝȏ ȜȦȖȏȘȓ dzȟșȖ ȐȩȕȐȎȠȪ ȢȡțȘȤȖȬ error() ȏȓȕ ȝȓȞȓȒȎȥȖ ȓȗ ȟȠȞȜȘȜȐȜȑȜ ȎȞȑȡȚȓțȠȎ ȝȞȜȑȞȎȚȚȎ ȝȞȜȟȠȜ ȝȞȓȘȞȎȧȎȓȠ Ȗȟ ȝȜșțȓțȖȓ țȓ ȜȠȜȏȞȎȔȎȭ țȖȘȎȘȜȑȜ ȟȜȜȏȧȓțȖȭ ǻȎȚ țȡȔțȜ ȐȩȐȓȟȠȖ ȟȜȜȏȧȓțȖȓ Ȝȏ ȜȦȖȏȘȓ ȓȟșȖ ȥȓȞȓ ȝȎȦȘȎ țȓ ȝȜȐȓȞțȡȠȎ Ș ȒȓȞȓȐȡ ȝȜȫȠȜȚȡ Ȑ ȟȠȞȜȘȓ Țȩ ȝȓȞȓ ȒȎȓȚ ȢȡțȘȤȖȖ error()ȟȠȞȜȘȜȐȩȗ ȎȞȑȡȚȓțȠ choptree 4. if not turtle.detect() then HUURU &RXOG QRW ¿QG WUHH

6. end

dzȟșȖ ȝȓȞȓȒ ȥȓȞȓȝȎȦȘȜȗ țȓȠ ȏșȜȘȎ ȝȞȜȑȞȎȚȚȎ ȕȎȐȓȞ ȦȎȓȠ ȞȎȏȜȠȡ Ȗ ȐȩȐȜȒȖȠ Ȑ ȖțȠȓȞȢȓȗȟȓ ȥȓȞȓȝȎȦȘȖ ȟȜȜȏȧȓ țȖȓ choptree:5:Could not ¿QG tree! ǵțȎȥȓțȖȓ choptree:5 ȒȜȏȎȐșȓțȜ ȖțȠȓȞȝȞȓȠȎȠȜȞȜȚ /XD ǼțȜ ȡȘȎȕȩȐȎȓȠ ȥȠȜ ȜȦȖȏȘȡ ȐȩȕȐȎșȎ ȟȠȞȜȘȎ ȝȞȜȑȞȎȚȚȩ choptree ǰ Ȟȓ ȕȡșȪȠȎȠȓ ȓȟșȖ ȝȓȞȓȒ ȥȓȞȓȝȎȦȘȜȗ țȓȠ ȒȓȞȓȐȎ Ȓșȭ ȐȩȞȡȏȘȖ ȝȞȜȑȞȎȚȚȎ ȝȞȓȘȞȎȧȎȓȠ ȞȎȏȜȠȡ

ǽǾǼDZǾǮǺǺǶǾǼǰǮǻǶdz ȅdzǾdzǽǮȆǸǶ ǹdzǿǼǾȁǯǮ

117


ĎħĜğčĖČ ĐĜđĎđĝĔęħ ĝ ěĚĘĚĥĨĪ ģđĜđěČĤĖĔ dzȟșȖ ȡȟșȜȐȖȓ not turtle.detect() Ȑ ȟȠȞȜȘȓ ȘȜȒȎ ȐȜȕ ȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ false Ƞ ȓ ȥȓȞȓȝȎȦȘȎ ȜȏțȎȞȡȔȖȐȎȓȠ ȝȓȞȓȒ ȟȜȏȜȗ ȏșȜȘ ȢȡțȘȤȖȭ error() ȐȩȕȐȎțȎ țȓ ȏȡȒȓȠ ǰȚȓȟȠȜ ȫȠȜȑȜ ȝȞȜȑȞȎȚȚȎ choptree ȐȩȞȡȏȎȓȠ țȖȔțȖȗ ȏșȜȘ ȐȩȕȩȐȎȭ ȢȡțȘȤȖȬ turtle.dig() Ȏ ȕȎȠȓȚ ȝȓȞȓȚȓ ȧȎȓȠ ȥȓȞȓȝȎȦȘȡ ȝȜȒ ȒȓȞȓȐȜ DzȜȏȩȠȩȗ ȏșȜȘ ȝȜȚȓȧȎȓȠȟȭ Ȑ ȠȓȘȡȧȡȬ ȭȥȓȗȘȡ ȖșȖ ȒȞȡȑȡȬ ȭȥȓȗȘȡ ȓȟșȖ ȠȓȘȡȧȎȭ ȕȎ țȭȠȎ ǸȜȒ Ȑ ȟȠȞȜȘȎȣ ² ȐȩȐȜȒȖȠ ȟȜȜȏȧȓțȖȓ Ȝ ȠȜȚ ȥȠȜ ȝȞȜȑȞȎȚȚȎ ȕȎȝȡȧȓțȎ ȐȩȞȡȏȎȓȠ ȏșȜȘ Ȗ ȝȓȞȓȚȓȧȎȓȠ ȥȓȞȓ ȝȎȦȘȡ ȝȜȒ ȒȓȞȓȐȜ choptree 8. print('Chopping tree...') 9. LI QRW WXUWOH GLJ WKHQ ɜɵɪɭɛɤɚ ɨɫɧɨɜɚɧɢɹ ɞɟɪɟɜɚ 11. error('Turtle needs a digging tool!') 12. end 13. WXUWOH IRUZDUG ɩɟɪɟɦɟɳɟɧɢɟ ɩɨɞ ɞɟɪɟɜɨ

ǼȏȞȎȠȖ ȐțȖȚȎțȖȓ ȥȠȜ ȡ ȥȓȞȓȝȎȦȘȖ ȒȜșȔțȎ ȏȩȠȪ ȘȖȞȘȎ ȖțȎȥȓ ȢȡțȘȤȖȭ turtle.dig() țȓ ȟȞȎȏȜȠȎȓȠ Ȗ ȐȓȞțȓȠ ȕțȎ ȥȓțȖȓ false dzȟșȖ ȫȠȜ ȝȞȜȖȕȜȗȒȓȠ ȥȓȞȓȝȎȦȘȎ țȓ ȟȚȜȔȓȠ ȐȩȞȡȏȖȠȪ ȒȓȞȓȐȜ dzȟșȖ ȢȡțȘȤȖȭ turtle.dig() ȐȜȕȐȞȎȧȎ ȓȠ ȕțȎȥȓțȖȓ false ȡȟșȜȐȖȓ not turtle.dig() ȝȞȖțȖȚȎȓȠ ȕțȎȥȓțȖȓ true ȝȜȫȠȜȚȡ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȜȟȠȎțȜȐȖȠ ȝȞȜȑȞȎȚ Țȡ Ȗ ȜȠȜȏȞȎȕȖȠ ȟȜȜȏȧȓțȖȓ Ȝȏ ȜȦȖȏȘȓ choptree:11:Turtle needs a digging tool!. ȂȡțȘȤȖȖ turtle.digUp() Ȗ turtle.digDown() ȝȜȒȜȏțȜ ȐȩȕȜȐȡ turtle.dig() ȠȎȘȔȓ ȒȜȏȩȐȎȬȠ ȏșȜȘȖ țȜ țȓ ȝȓȞȓȒ ȥȓȞȓȝȎȦȘȜȗ Ȏ ȐȩȦȓ ȖșȖ țȖȔȓ ȓȓ ȟȜȜȠȐȓȠȟȠȐȓțțȜ

118

DZǹǮǰǮ


ĝĜČĎęđęĔđ čėĚĖĚĎ ĝ ěĚĘĚĥĨĪ ĠğęĖĢĔĕ ĝĜČĎęđęĔī ȂȡțȘȤȖȭ turtle.compare() ȟȞȎȐțȖȐȎȓȠ ȏșȜȘ Ș ȘȜȠȜȞȜȚȡ ȝȜȐȓȞțȡȠȎ ȥȓȞȓȝȎȦȘȎ ȟ ȏșȜȘȜȚ Ȑ ȓȓ ȠȓȘȡȧȜȗ ȭȥȓȗȘȓ dzȟșȖ ȜțȖ ȖȒȓțȠȖȥțȩ ȢȡțȘȤȖȭ turtle.compare() ȐȓȞțȓȠ ȕțȎ ȥȓțȖȓ true dzȟșȖ ȜțȖ ȞȎȕșȖȥțȩ ȢȡțȘȤȖȭ turtle.compare() ȐȓȞțȓȠ ȕțȎȥȓțȖȓ false ȂȡțȘȤȖȖ turtle.compareUp() Ȗ turtle.compareDown() ȐȩȝȜșțȭȬȠ ȎțȎșȜȑȖȥțȩȓ ȒȓȗȟȠȐȖȭ ȕȎ ȖȟȘșȬȥȓțȖȓȚ ȠȜȑȜ ȥȠȜ ȜțȖ ȟȞȎȐțȖȐȎȬȠ ȏșȜȘ ȐȩȦȓ ȖșȖ țȖȔȓ ȥȓȞȓȝȎȦȘȖ ȟȜȜȠȐȓȠȟȠȐȓțțȜ ǽȜȟȘȜșȪȘȡ ȝȓȞȐȎȭ ȥȎȟȠȪ ȝȞȜȑȞȎȚȚȩ ȐȩȞȡȏȎȓȠ ȟȎȚȩȗ țȖȔțȖȗ ȏșȜȘ ȒȓȞȓȐȎ ȝȓȞȓȒ țȎȥȎșȜȚ ȝȓȞȓȚȓȧȓțȖȭ ȥȓȞȓ ȝȎȦȘȖ ȐȐȓȞȣ ȝȜ ȒȓȞȓȐȡ Ȑ ȓȓ ȠȓȘȡȧȓȗ ȭȥȓȗȘȓ ȡȔȓ ȒȜșȔȓț ȏȩȠȪ ȏșȜȘ ǻȎȚ țȡȔțȜ ȝȞȜȐȓȞȖȠȪ ȖȒȓțȠȖȥȓț șȖ ȏșȜȘ țȎȒ ȥȓȞȓȝȎȦȘȜȗ ȏșȜȘȡ Ȑ ȓȓ ȠȓȘȡȧȓȗ ȭȥȓȗȘȓ ȝȜȫȠȜȚȡ ȒȜ ȕȎȝȡȟȘȎ ȝȞȜȑȞȎȚȚȩ ȐȎȔțȜ ȡȏȓȒȖȠȪȟȭ ȥȠȜ ȠȓȘȡȧȎȭ ȭȥȓȗȘȎ ȝȡȟȠȎ Dzșȭ ȫȠȜȑȜ Țȩ ȖȟȝȜșȪȕȡȓȚ ȢȡțȘȤȖȬ turtle.compareUp(). ȋȠȎ ȢȡțȘȤȖȭ ȝȞȜȐȓȞȭȓȠ ȏșȜȘ țȎȒ ȥȓȞȓȝȎȦȘȜȗ Ȏ țȓ ȝȓȞȓȒ țȓȗ Ȗ ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ true ȓȟșȖ țȎȒ ȥȓȞȓȝȎȦȘȜȗ Ȝȏ țȎȞȡȔȓț ȏșȜȘ ȒȞȓȐȓȟȖțȩ choptree 15. while turtle.compareUp() do ɜɵɪɭɛɤɚ ɩɨɤɚ ɨɛɧɚɪɭɠɟɧɚ ɞɪɟɜɟɫɢɧɚ 17. turtle.digUp() 18. turtle.up() 19. end

ȄȖȘș while ȏșȜȘ ȘȜȒȎ ȘȜȠȜȞȜȑȜ țȎȥȖțȎȓȠȟȭ Ȑ ȟȠȞȜȘȓ ȖȟȝȜșȪȕȡȓȠ Ȑ ȟȐȜȓȚ ȡȟșȜȐȖȖ ȕțȎȥȓțȖȓ ȘȜȠȜȞȜȓ ȐȜȕȐȞȎȧȎȓȠ ȢȡțȘȤȖȭ turtle.compareUp() ȀȜ ȓȟȠȪ ȝȜȘȎ țȎȒ ȥȓȞȓȝȎȦ ȘȜȗ ȓȟȠȪ ȒȓȞȓȐȜ ȫȠȜȠ ȤȖȘș ȏȡȒȓȠ ȐȩȝȜșțȭȠȪȟȭ ǸȜȒ Ȑ ȟȠȞȜȘȓ ȐȩȞȡȏȎȓȠ ȏșȜȘ țȎȒ ȥȓȞȓȝȎȦȘȜȗ Ȏ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȝȓȞȓ ȚȓȧȎȓȠ ȓȓ ȐȐȓȞȣ ȄȖȘș ȜȟȠȎțȎȐșȖȐȎȓȠȟȭ ȘȜȑȒȎ ȢȡțȘȤȖȭ turtle.compareUp() ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ false ² ȫȠȜ ȝȞȜ ȖȟȣȜȒȖȠ ȘȜȑȒȎ ȟȠȐȜș ȒȓȞȓȐȎ ȕȎȘȎțȥȖȐȎȓȠȟȭ

ǽǾǼDZǾǮǺǺǶǾǼǰǮǻǶdz ȅdzǾdzǽǮȆǸǶ ǹdzǿǼǾȁǯǮ

119


ǼȏȞȎȠȖ ȐțȖȚȎțȖȓ ȥȠȜ Ȑ ȟȖȠȡȎȤȖȭȣ ȘȜȑȒȎ ȫȠȜ ȐȜȕȚȜȔ țȜ ȚȜȔțȜ ȠȎȘȔȓ ȖȟȝȜșȪȕȜȐȎȠȪ ȢȡțȘȤȖȬ turtle.compareDown() Ȓșȭ ȝȞȜȐȓȞȘȖ ȏșȜȘȜȐ ȝȜȒ ȥȓȞȓȝȎȦȘȜȗ

ĎĚēĎĜČĥđęĔđ ęČ ēđĘėĪ ȄȖȘș while ȕȎȐȓȞȦȎȓȠȟȭ ȘȜȑȒȎ țȎȒ ȥȓȞȓȝȎȦȘȜȗ ȏȜșȪȦȓ țȓȠ ȒȞȓȐȓȟȖțȩ ȝȜȟșȓ ȥȓȑȜ ȜțȎ ȒȜșȔțȎ ȐȓȞțȡȠȪȟȭ țȎ ȕȓȚșȬ choptree ɜɨɡɜɪɚɳɟɧɢɟ ɧɚ ɡɟɦɥɸ 22. while not turtle.detectDown() do 23. turtle.down() 24. end 25. 26. print('Done chopping tree.')

ǸȜȒ Ȑ ȟȠȞȜȘȓ țȎȥȖțȎȓȠ țȜȐȩȗ ȤȖȘș while Ȑ ȡȟșȜȐȖȖ ȘȜȠȜȞȜȑȜ ȖȟȝȜșȪȕȡȓȠȟȭ ȐȩȞȎȔȓțȖȓ not turtle.detectDown() ȄȖȘș ȝȞȜȒȜșȔȎȓȠȟȭ ȒȜ Ƞȓȣ ȝȜȞ ȝȜȘȎ ȥȓȞȓȝȎȦȘȎ țȓ ȜȏțȎȞȡȔȖȠ ȏșȜȘ ȝȜȒ ȟȜȏȜȗ ȠȜ ȓȟȠȪ ȝȜȘȎ ȡȟșȜȐȖȓ ȐȜȕȐȞȎȧȎ ȓȠ ȕțȎȥȓțȖȓ true ȐȩȕȩȐȎȓȠȟȭ ȢȡțȘȤȖȭ turtle.down(). ǸȜȑȒȎ ȤȖȘș ȕȎȐȓȞȦȖȠȟȭ Ȗ ȥȓȞȓȝȎȦȘȎ ȐȓȞțȓȠȟȭ țȎ ȕȓȚșȬ ȝȞȜȑȞȎȚȚȎ ȐȩȐȓȒȓȠ ȟȜȜȏȧȓțȖȓ Done chopping tree. ȥȠȜȏȩ ȖȑȞȜȘ ȕțȎș ȥȠȜ ȝȞȖȦșȜ ȐȞȓȚȭ ȕȎȏȞȎȠȪ ȥȓȞȓȝȎȦȘȡ ȐȚȓȟȠȓ ȟ ȟȜȏȞȎțțȜȗ ȒȞȓȐȓȟȖțȜȗ

ēČěğĝĖ ěĜĚďĜČĘĘ Ĕ ĠğęĖĢĔī ;0-44 :=6 ǽȞȜȑȞȎȚȚȡ choptree ȏȡȒȓȠ ȝȞȜȧȓ ȖȟȝȜșȪȕȜȐȎȠȪ ȓȟșȖ ȟȒȓ șȎȠȪ ȠȎȘ ȥȠȜȏȩ ȜțȎ ȕȎȝȡȟȘȎșȎȟȪ ȟȞȎȕȡ Ȕȓ ȘȎȘ ȠȜșȪȘȜ ȥȓ ȞȓȝȎȦȘȎ ȜȘȎȔȓȠȟȭ ȝȓȞȓȒ ȒȓȞȓȐȜȚ Ǻȩ ȚȜȔȓȚ ȫȠȜ ȟȒȓșȎȠȪ ȖȟȝȜșȪȕȡȭ ȟȝȓȤȖȎșȪțȡȬ ȝȞȜȑȞȎȚȚȡ startup ȘȜȠȜȞȎȭ ȏȡ ȒȓȠ ȕȎȝȡȟȘȎȠȪȟȭ ȝȞȖ ȜȠȘȞȩȠȖȖ ȑȞȎȢȖȥȓȟȘȜȑȜ ȖțȠȓȞȢȓȗȟȎ ȥȓȞȓȝȎȦȘȖ ȘȜȑȒȎ ȠȎ ȟȠȜȖȠ ȝȓȞȓȒ ȒȓȞȓȐȜȚ DzȎȐȎȗ țȎȝȖȦȓȚ ȠȎȘȡȬ ȝȞȜȑȞȎȚȚȡ

120

DZǹǮǰǮ


ǵȎȝȡȟȠȖ ȠȓȘȟȠȜȐȩȗ ȞȓȒȎȘȠȜȞ ȐȐȓȒȭ ȘȜȚȎțȒȡ e d it startup Ȑ ȜȏȜșȜȥȘȓ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ǰ ȠȓȘȟȠȜȐȜȚ ȞȓȒȎȘ ȠȜȞȓ ȐȐȓȒȖ ȟșȓȒȡȬȧȡȬ ȟȠȞȜȘȡ ȘȜȒȎ startup shell.run('choptree')

ȂȡțȘȤȖȭ shell.run() ȕȎȝȡȟȠȖȠ ȟȠȞȜȘȡ ȘȜȒȎ ȘȜȠȜȞȡȬ Ƞȩ ȓȗ ȝȓȞȓȒȎȦȪ ȘȎȘ ȓȟșȖ ȏȩ Ƞȩ ȐȐȓș ȓȓ Ȑ ȜȏȜșȜȥȘȓ ȘȜȚȎțȒ țȜȗ ȟȠȞȜȘȖ ǰ țȎȦȓȚ ȟșȡȥȎȓ ȝȞȖ ȝȓȞȐȜȚ ȜȠȘȞȩȠȖȖ ȑȞȎȢȖ ȥȓȟȘȜȑȜ ȖțȠȓȞȢȓȗȟȎ ȥȓȞȓȝȎȦȘȖ ȏȡȒȓȠ ȕȎȝȡȧȓțȎ ȝȞȜȑȞȎȚ ȚȎ startup ȘȜȠȜȞȎȭ Ȑ ȟȐȜȬ ȜȥȓȞȓȒȪ ȕȎȝȡȟȠȖȠ ȝȞȜȑȞȎȚȚȡ choptree Ȗ țȓ țȡȔțȜ ȐȐȜȒȖȠȪ țȎȕȐȎțȖȓ ȝȞȜȑȞȎȚȚȩ choptree Ȑ ȜȏȜșȜȥȘȓ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ȂȡțȘȤȖȭ shell.run() ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ true ȓȟșȖ ȜțȎ ȚȜȔȓȠ ȡȟȝȓȦțȜ ȕȎȝȡ ȟȠȖȠȪ ȝȞȜȑȞȎȚȚȡ Ȗ ȕțȎȥȓțȖȓ false ȓȟșȖ țȓ ȚȜȔȓȠ țȎȗȠȖ ȡȘȎȕȎțțȡȬ ȝȞȜȑȞȎȚȚȡ ȖșȖ ȕȎȝȡȟȘ ȝȞȜȑȞȎȚȚȩ ȐȩȕȩȐȎȓȠ ȜȦȖȏȘȡ ² ȢȡțȘȤȖȬ error(). ĐĚěĚėęĔĞđėĨęĚđ ēČĐČęĔđ" Ė ĢđęĞĜğ ēđĘėĔ

Создай программу, с помощью которой черепашка выроет глубокую дыру, а не срубит дерево. Это можно сделать, вызывая в цикле функции turtle.digDown() и turtle. down(). Затем создай цикл, вызывающий функцию turtle. up(), столько же раз, сколько функцию turtle.down() до этого. Этот цикл вернет черепашку на поверхность. Ты же не хочешь, чтобы она остановилась на дне шахты?

ģĞĚ Ęħ ğēęČėĔ Ǻȩ ȕȎȝȞȜȑȞȎȚȚȖȞȜȐȎșȖ ȥȓȞȓȝȎȦȘȡ șȓȟȜȞȡȏȎ ȥȠȜȏȩ ȡȟȘȜ ȞȖȠȪ ȒȜȏȩȥȡ ȒȞȓȐȓȟȖțȩ ȝȞȖ șȓȟȜȕȎȑȜȠȜȐȘȎȣ ǽȞȜȑȞȎȚȚȡ choptree ȚȜȔțȜ ȕȎȑȞȡȕȖȠȪ Ȑ țȓȟȘȜșȪȘȜ ȥȓȞȓȝȎȦȓȘ ȁȟȠȎ țȜȐȖ ȜȒțȡ ȥȓȞȓȝȎȦȘȡ ȝȓȞȓȒ ȒȓȞȓȐȜȚ Ȗ ȝȜȘȎ ȜțȎ ȒȜȏȩȐȎȓȠ ȒȞȓȐȓȟȖțȡ ȝȜȟȠȎȐȪ ȒȞȡȑȡȬ ȥȓȞȓȝȎȦȘȡ ȝȓȞȓȒ ȒȞȡȑȖȚ ȒȓȞȓ ȐȜȚ Ȗ Ƞ Ȓ ȀȎȘȖȚ ȜȏȞȎȕȜȚ Ƞȩ ȟȚȜȔȓȦȪ ȝȜșȡȥȖȠȪ ȜȑȞȜȚțȜȓ ȘȜșȖȥȓȟȠȐȜ ȒȞȓȐȓȟȖțȩ Ȑ ȘȞȎȠȥȎȗȦȖȓ ȟȞȜȘȖ

ǽǾǼDZǾǮǺǺǶǾǼǰǮǻǶdz ȅdzǾdzǽǮȆǸǶ ǹdzǿǼǾȁǯǮ

121


DzȞȓȐȓȟȖțȡ ȘȜȠȜȞȡȬ ȒȜȏȩȐȎȬȠ ȥȓȞȓȝȎȦȘȖ ȚȜȔțȜ Ȗȟ ȝȜșȪȕȜȐȎȠȪ Ȑ ȘȎȥȓȟȠȐȓ ȠȜȝșȖȐȎ ȥȠȜȏȩ ©ȘȜȞȚȖȠȪª ȟȎȚȖȣ ȥȓ ȞȓȝȎȦȓȘ ǼȏȭȕȎȠȓșȪțȜ ȡȏȓȒȖȟȪ ȥȠȜ Ȗȕ ȘȎȔȒȜȑȜ ȏșȜȘȎ ȒȞȓ ȐȓȟȖțȩ ȏȡȒȓȠ ȖȕȑȜȠȜȐșȓțȜ ȥȓȠȩȞȓ ȏșȜȘȎ ȒȜȟȜȘ ȝȜȠȜȚȡ ȥȠȜ ȒȜȟȘȖ ȘȎȘ Ȗ ȒȞȓȐȓȟȖțȎ ȜȏȓȟȝȓȥȖȐȎȬȠ ȥȓȞȓȝȎȦȘȡ ȓȒȖ țȖȤȎȚȖ ȠȜȝșȖȐȎ ȅȓȞȓȝȎȦȘȎ șȓȟȜȞȡȏ ² ȫȠȜ ȣȜȞȜȦȓȓ ȝȜȒȟȝȜȞȪȓ țȜ Ȑȟȓ ȓȧȓ țȡȔțȜ ȚțȜȑȜ ȝȜȠȞȡȒȖȠȪȟȭ ȥȠȜȏȩ ȟȠȎȐȖȠȪ ȘȎȔȒȡȬ ȥȓȞȓȝȎȦ Șȡ ȡ ȜȟțȜȐȎțȖȭ ȒȓȞȓȐȎ ǰ ȟșȓȒȡȬȧȖȣ țȓȟȘȜșȪȘȖȣ ȑșȎȐȎȣ Ƞȩ ȡȕțȎȓȦȪ ȘȎȘ ȚțȜȑȜȘȞȎȠțȜ ȖȟȝȜșȪȕȜȐȎȠȪ ȓȒȖțȜȔȒȩ țȎȝȖ ȟȎțțȩȗ ȘȜȒ Ȗ ȘȎȘ ȟȜȕȒȎȠȪ ȒȓȞȓȐȜȜȏȞȎȏȎȠȩȐȎȬȧȡȬ ȢȓȞȚȡ ȝȞȜȑȞȎȚȚȖȞȡȭ ȥȓȞȓȝȎȦȓȘ țȎ ȟȎȚȜȟȠȜȭȠȓșȪțȜȓ ȐȩȞȎȧȖȐȎ țȖȓ Ȗ ȐȩȞȡȏȘȡ ȒȓȞȓȐȪȓȐ


7 ĝĚēĐČęĔđ ĘĚĐğėđĕ Đėī ĘęĚďĚĖĜČĞęĚďĚ ĔĝěĚėĨēĚĎČęĔī ĖĚĐČ ǽȜ ȚȓȞȓ ȠȜȑȜ ȘȎȘ ȝȞȜȑȞȎȚȚȩ ȟȠȎțȜȐȭȠȟȭ ȏȜ șȓȓ ȟșȜȔțȩȚȖ ȐȜȕțȖȘȎȓȠ ȔȓșȎțȖȓ ȟȫȘȜțȜ ȚȖȠȪ ȐȞȓȚȭ Ȗ ȝȜȐȠȜȞțȜ ȖȟȝȜșȪȕȜȐȎȠȪ ȡȔȓ țȎ ȝȖȟȎțțȩȗ ȘȜȒ ȋȠȜ ȚȜȔțȜ ȜȞȑȎțȖȕȜȐȎȠȪ ȓȟșȖ ȖȟȝȜșȪȕȜȐȎȠȪ ȚȜȒȡșȖ ² ȝȞȜȑȞȎȚȚȩ ȟȜȒȓȞȔȎ ȧȖȓ ȢȡțȘȤȖȖ ȘȜȠȜȞȩȓ ȚȜȑȡȠ ȏȩȠȪ ȐȩȕȐȎțȩ ȠȐȜȖ ȚȖ ȝȞȖșȜȔȓțȖȭȚȖ ǰ ȫȠȜȗ ȑșȎȐȓ Ƞȩ ȡȕțȎȓȦȪ ȘȎȘ ȟȜȕȒȎȐȎȠȪ ȝȜșȪȕȜȐȎȠȓșȪ ȟȘȖȓ ȢȡțȘȤȖȖ Ȗ ȟȜȏȟȠȐȓțțȩȓ ȚȜȒȡșȖ Ȁȩ țȎȝȖȦȓȦȪ ȢȡțȘ ȤȖȖ ȘȜȠȜȞȩȓ ȥȓȞȓȝȎȦȘȖ ȢȓȞȚȓȞȩ Ȗ Ȑȟȓ ȜȟȠȎșȪțȩȓ ȥȠȜ Ƞȩ ȟȜȕȒȎȦȪ ȐȝȜȟșȓȒȟȠȐȖȖ Ȑ ȑșȎȐȓ ȏȡȒȡȠ ȕȎȑȞȡȔȎȠȪ Ȗȕ ȚȜȒȡșȭ

ĝĚēĐČęĔđ ĠğęĖĢĔĕ ĝ ěĚĘĚĥĨĪ ĔęĝĞĜğĖĢĔĔ .=6+<176 ȅȠȜȏȩ ȟȜȕȒȎȠȪ ȟȐȜȬ ȟȜȏȟȠȐȓțțȡȬ ȢȡțȘȤȖȬ țȎȒȜ ȖȟȝȜșȪȕȜ ȐȎȠȪ ȖțȟȠȞȡȘȤȖȬ function ǿȖțȠȎȘȟȖȟ ȫȠȜȗ ȖțȟȠȞȡȘȤȖȖ ȟȜȟȠȜȖȠ Ȗȕ ȘșȬȥȓȐȜȑȜ ȟșȜȐȎ function ȕȎ ȘȜȠȜȞȩȚ ȟșȓȒȡȓȠ

ǿǼǵDzǮǻǶdz ǺǼDzȁǹdzǷ Dzǹȍ ǺǻǼDZǼǸǾǮȀǻǼDZǼ ǶǿǽǼǹȊǵǼǰǮǻǶȍ ǸǼDzǮ

123


ȖȚȭ ȢȡțȘȤȖȖ ȕȎȘșȬȥȓțțȜȓ Ȑ ȘȞȡȑșȩȓ ȟȘȜȏȘȖ ǸȜȒ ȝȜȚȓ ȧȓțțȩȗ ȚȓȔȒȡ ȖțȟȠȞȡȘȤȖȭȚȖ function Ȗ end ² ȫȠȜ ȠȓșȜ ȢȡțȘȤȖȖ DzȎȐȎȗ ȝȜȟȚȜȠȞȖȚ ȘȎȘ ȫȠȜ ȞȎȏȜȠȎȓȠ ǿȜȕȒȎȗ țȜȐȡȬ ȝȞȜ ȑȞȎȚȚȡ ȐȩȝȜșțȖȐ ȘȜȚȎțȒȡ edit hellofunction Ȗ ȐȐȓȒȭ ȟșȓȒȡȬȧȖȗ ȘȜȒ hellofunction 1. print('Start of the program.') 2. 3. function hello() 4. print('Hello, world!') 5. end 6. 7. hello() 8. hello() 9. print('End of the program.')

ǵȎȠȓȚ ȕȎȝȡȟȠȖ ȝȞȜȑȞȎȚȚȡ hellofunction Ȗȕ ȜȏȜșȜȥȘȖ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ǾȓȕȡșȪȠȎȠ ȏȡȒȓȠ ȐȩȑșȭȒȓȠȪ ȠȎȘ: > hellofunction Start of the program. Hello, world! Hello, world! End of the program.

ǿȠȞȜȘȎ ȐȩȐȜȒȖȠ ȟȜȜȏȧȓțȖȓ Start of the program. ȘȜȠȜȞȜȓ țȓ ȜȠțȜȟȖȠȟȭ Ș ȢȡțȘȤȖȖ ǿȠȞȜȘȎ ȟȜȕȒȎȓȠ ȢȡțȘ ȤȖȬ hello() țȜ ȜȏȞȎȠȖ ȐțȖȚȎțȖȓ ȥȠȜ ȢȡțȘȤȖȭ hello() ȕȒȓȟȪ țȓ ȕȎȝȡȟȘȎȓȠȟȭ ȐȚȓȟȠȜ ȫȠȜȑȜ ȖȟȝȜșțȓțȖȓ ȝȓȞȓȣȜȒȖȠ Ș ȟȠȞȜȘȓ ǸȜȒ ȢȡțȘȤȖȖ ȝȞȖ ȓȓ ȟȜȕȒȎțȖȖ țȓ ȖȟȝȜșțȭȓȠȟȭ Ȝț ȏȡȒȓȠ ȖȟȝȜșțȓț ȠȜșȪȘȜ ȝȞȖ ȓȓ ȐȩȕȜȐȓ Dzșȭ ȐȩȕȜȐȎ ȢȡțȘȤȖȖ Ȑ ȝȞȜ ȑȞȎȚȚȓ ȡȘȎȕȩȐȎȓȠȟȭ ȓȓ ȖȚȭ ȟ ȒȜȏȎȐșȓțȖȓȚ ȘȞȡȑșȩȣ ȟȘȜȏȜȘ ȀȎȘȎȭ ȘȜțȟȠȞȡȘȤȖȭ ȟȜȜȏȧȎȓȠ ȝȞȜȑȞȎȚȚȓ ȥȠȜ ȟșȓȒȡȓȠ Ȗȟ ȝȜșțȖȠȪ ȘȜȒ ȟȜȒȓȞȔȎȧȖȗȟȭ Ȑ ȢȡțȘȤȖȖ ȟ ȡȘȎȕȎțțȩȚ ȖȚȓ țȓȚ ǿȠȞȜȘȎ ȐȩȕȩȐȎȓȠ ȢȡțȘȤȖȬ hello() Ȗ ȖȟȝȜșțȓțȖȓ ȝȓȞȓȣȜȒȖȠ Ș ȟȠȞȜȘȓ ȑȒȓ ȏȩșȎ ȟȜȕȒȎțȎ ȫȠȎ ȢȡțȘȤȖȭ ȋȠȎ ȟȠȞȜȘȎ ȐȩȐȜȒȖȠ țȎ ȫȘȞȎț ȟȜȜȏȧȓțȖȓ Hello, world!.

124

DZǹǮǰǮ


ǸȜȑȒȎ ȐȩȕȜȐ ȢȡțȘȤȖȖ ȕȎȐȓȞȦȎȓȠȟȭ ȝȞȜȑȞȎȚȚȎ ȐȜȕȐȞȎ ȧȎȓȠȟȭ Ș ȟȠȞȜȘȓ ȘȜȠȜȞȎȭ ȐȩȕȩȐȎșȎ ȢȡțȘȤȖȬ Ȗ ȝȞȜȒȜș ȔȎȓȠ ȞȎȏȜȠȡ ǰ țȎȦȓȚ ȟșȡȥȎȓ ȘȜȑȒȎ ȖȟȝȜșțȓțȖȓ ȒȜȟȠȖȑȎ ȓȠ ȖțȟȠȞȡȘȤȖȖ end ȢȡțȘȤȖȖ hello() ȜțȜ ȐȜȕȐȞȎȧȎȓȠȟȭ Ș ȟȠȞȜȘȓ ȑȒȓ ȏȩșȎ ȐȩȕȐȎțȎ ȢȡțȘȤȖȭ Ȏ ȕȎȠȓȚ ȝȓȞȓȣȜȒȖȠ Ș ȟȠȞȜȘȓ ǿȠȞȜȘȎ ȠȎȘȔȓ ȐȩȕȩȐȎȓȠ ȢȡțȘȤȖȬ hello() ȠȜ ȓȟȠȪ ȖȟȝȜșțȓțȖȓ ȟțȜȐȎ ȐȜȕȐȞȎȧȎȓȠȟȭ ȟȠȞȜȘȓ Ȗ țȎ ȫȘȞȎț ȓȧȓ ȞȎȕ ȐȩȐȜȒȖȠȟȭ ȟȜȜȏȧȓțȖȓ Hello, world! ǵȎȠȓȚ ȘȜȑ ȒȎ ȖȟȝȜșțȓțȖȓ ȒȜȟȠȖȑȎȓȠ ȘȜțȤȎ ȢȡțȘȤȖȖ hello() ȝȞȜȖȟ ȣȜȒȖȠ ȐȜȕȐȞȎȠ Ș ȟȠȞȜȘȓ ǻȎȘȜțȓȤ ȟȠȞȜȘȎ ȐȩȐȜȒȖȠ ȠȓȘȟȠ End of the program. Ȗ ȝȞȜȑȞȎȚȚȎ ȕȎȐȓȞȦȎȓȠ ȞȎȏȜȠȡ ȂȡțȘȤȖȭ hello() ȜȥȓțȪ ȝȞȜȟȠȎ țȜ Ȑȟȓ ȞȎȐțȜ ȝȞȜȧȓ Ȑȩ ȕȐȎȠȪ ȢȡțȘȤȖȬ ȥȓȚ ȒȐȎ ȞȎȕȎ țȎȏȖȞȎȠȪ ȖțȟȠȞȡȘȤȖȬ ȐȩȕȜ ȐȎ ȢȡțȘȤȖȖ print() ǽȜ ȚȓȞȓ ȡȟșȜȔțȓțȖȭ ȠȐȜȖȣ ȝȞȜȑȞȎȚȚ ȜȢȜȞȚșȓțȖȓ ȘȜȒȎ Ȑ ȐȖȒȓ ȢȡțȘȤȖȗ ȟȠȎțȓȠ ȏȜșȓȓ ȎȘȠȡȎșȪ țȩȚ ȜȟȜȏȓțțȜ ȝȜȟșȓ ȠȜȑȜ ȘȎȘ Ƞȩ țȎȡȥȖȦȪȟȭ ȖȟȝȜșȪȕȜȐȎȠȪ ȎȞȑȡȚȓțȠȩ

ČĜďğĘđęĞħ Ĕ ěČĜČĘđĞĜħ ǽȞȖ ȐȩȕȜȐȓ ȢȡțȘȤȖȗ ȖȚ ȚȜȔțȜ ȝȓȞȓȒȎȐȎȠȪ ȞȎȕșȖȥțȩȓ ȕțȎ ȥȓțȖȭ ȋȠȖ ȕțȎȥȓțȖȭ țȎȕȩȐȎȬȠ ȎȞȑȡȚȓțȠȎȚȖ Ȏ ȝȓȞȓȚȓț țȩȓ ȘȜȠȜȞȩȚ ȝȞȖȟȐȎȖȐȎȬȠȟȭ ȫȠȖ ȎȞȑȡȚȓțȠȩ țȎȕȩȐȎȬȠȟȭ ȝȎȞȎȚȓȠȞȎȚȖ ǼțȖ ȖȟȝȜșȪȕȡȬȠȟȭ ȐțȡȠȞȖ ȢȡțȘȤȖȖ ȠȎȘ Ȕȓ ȘȎȘ Ȗ ȝȓȞȓȚȓțțȩȓ ȅȠȜȏȩ ȡȕțȎȠȪ ȘȎȘ ȞȎȏȜȠȎȬȠ ȎȞȑȡȚȓțȠȩ Ȗ ȝȎȞȎȚȓȠȞȩ ȟȜȕȒȎȗ țȜȐȡȬ ȝȞȜȑȞȎȚȚȡ ȐȩȝȜșțȖȐ ȘȜȚȎțȒȡ edit sayhello Ȗ ȐȐȓȒȭ ȘȜȒ ȝȞȖȐȓȒȓțțȩȗ țȖȔȓ ǽȜȒ ȡȝȞȎȐșȓțȖȓȚ ȫȠȜȗ ȝȞȜȑȞȎȚȚȩ ȥȓȞȓȝȎȦȘȎ ȐȩȐȜȒȖȠ țȎ ȫȘȞȎț ȝȞȖȐȓȠȟȠȐȓțțȜȓ ȟȜȜȏȧȓțȖȓ ȒȞȡȑȜȗ ȥȓȞȓȝȎȦȘȓ sayhello IXQFWLRQ VD\+HOOR QDPH QDPH ± ɷɬɨ ɩɚɪɚɦɟɬɪ 2. print('Hello, ' .. name) 3. end 4. VD\+HOOR $UWHPLVLD

$UWHPLVLD ± ɷɬɨ ɚɪɝɭɦɟɧɬ VD\+HOOR (OLVDEHWWD

(OLVDEHWWD ± ɷɬɨ ɚɪɝɭɦɟɧɬ

ǿǼǵDzǮǻǶdz ǺǼDzȁǹdzǷ Dzǹȍ ǺǻǼDZǼǸǾǮȀǻǼDZǼ ǶǿǽǼǹȊǵǼǰǮǻǶȍ ǸǼDzǮ

125


ǰ ȫȠȜȗ ȝȞȜȑȞȎȚȚȓ ȝȓȞȓȚȓțțȎȭ name Ȑ ȢȡțȘȤȖȖ sayHello() Ȑ ȟȠȞȜȘȓ ² ȫȠȜ ȝȎȞȎȚȓȠȞ Ǯ ȟȠȞȜȘȜȐȩȓ ȕțȎȥȓțȖȭ 'Artemisia' Ȗ 'Elisabetta' Ȑ ȟȠȞȜȘȎȣ Ȗ ² ȫȠȜ ȎȞȑȡ ȚȓțȠȩ ǰ ȟȠȞȜȘȓ ȟȜȕȒȎȓȠȟȭ ȢȡțȘȤȖȭ sayHello() țȜ ȘȜȒ ȢȡțȘ ȤȖȖ ȐȩȝȜșțȭȓȠȟȭ ȠȜșȪȘȜ ȠȜȑȒȎ ȘȜȑȒȎ ȝȞȜȖȟȣȜȒȖȠ ȐȩȕȜȐ ȟȎȚȜȗ ȢȡțȘȤȖȖ ȠȜ ȓȟȠȪ ȘȜȑȒȎ ȖȟȝȜșțȓțȖȓ ȝȞȜȑȞȎȚȚȩ ȝȓ ȞȓȣȜȒȖȠ Ș ȟȠȞȜȘȓ ȋȠȎ ȟȠȞȜȘȎ ȟȜȒȓȞȔȖȠ ȐȩȕȜȐ ȢȡțȘȤȖȖ sayHello() ǸȜȑȒȎ Țȩ ȐȩȕȩȐȎȓȚ ȢȡțȘȤȖȬ ȝȜȒȜȏțȩȚ ȜȏȞȎ ȕȜȚ ȘȎȘ Ȑ ȟȠȞȜȘȓ Țȩ ȑȜȐȜȞȖȚ ȥȠȜ ȝȓȞȓȒȎȓȚ ȎȞȑȡȚȓțȠ Ȑ ȐȩȕȜȐ ȢȡțȘȤȖȖ ǿȠȞȜȘȎ ȝȓȞȓȒȎȓȠ ȕțȎȥȓțȖȓ 'Artemisia' Ȑ ȘȎȥȓȟȠȐȓ ȎȞȑȡȚȓțȠȎ ȢȡțȘȤȖȖ sayHello() ȐȩȕȜȐ ȘȜȠȜ ȞȜȗ ȐȜȕȐȞȎȧȎȓȠ ȖȟȝȜșțȓțȖȓ ȝȞȜȑȞȎȚȚȩ Ș ȟȠȞȜȘȓ ǵȎȠȓȚ ȝȓȞȓȚȓțțȜȗ na me ȘȜȠȜȞȎȭ ȭȐșȭȓȠȟȭ ȝȎȞȎȚȓȠȞȜȚ ȢȡțȘ ȤȖȖ ȝȞȖȟȐȎȖȐȎȓȠȟȭ ȝȓȞȓȒȎțțȩȗ ȎȞȑȡȚȓțȠ 'Artemisia'. ǰ ȟȠȞȜȘȓ ȝȓȞȓȚȓțțȎȭ na m e ȖȟȝȜșȪȕȡȓȠȟȭ ȝȞȖ ȐȩȕȜȐȓ ȢȡțȘȤȖȖ print() ȝȜȫȠȜȚȡ ȝȞȜȑȞȎȚȚȎ ȐȩȐȜȒȖȠ ȠȓȘȟȠ Hello, Artemisia. ǸȜȑȒȎ ȖȟȝȜșțȓțȖȓ ȝȞȜȑȞȎȚȚȩ ȒȜȟȠȖȑȎȓȠ ȘȜțȤȎ ȢȡțȘȤȖȖ sayHello() ȜțȜ ȐȜȕȐȞȎȧȎȓȠȟȭ Ș ȟȠȞȜȘȓ Ȏ ȕȎȠȓȚ ȝȓȞȓȣȜȒȖȠ Ș ȟȠȞȜȘȓ ǰ țȓȗ ȟțȜȐȎ ȐȩȕȩȐȎȓȠȟȭ ȢȡțȘȤȖȭ sayHello() țȜ țȎ ȫȠȜȠ ȞȎȕ Ȑ ȘȎȥȓȟȠȐȓ ȎȞȑȡȚȓțȠȎ ȝȓȞȓȒȎȓȠȟȭ ȕțȎȥȓțȖȓ 'Elisabetta' Ȗ ȝȓȞȓȚȓțțȜȗ name ȝȞȖȟȐȎȖȐȎȓȠȟȭ ȫȠȜ ȕțȎȥȓ țȖȓ ǽȜȫȠȜȚȡ ȘȜȑȒȎ ȖȟȝȜșțȓțȖȓ ȝȞȜȑȞȎȚȚȩ ȐțȜȐȪ ȐȜȕȐȞȎ ȧȎȓȠȟȭ Ș ȟȠȞȜȘȓ țȎ ȫȘȞȎț ȐȩȐȜȒȖȠȟȭ ȟȜȜȏȧȓțȖȓ Hello, Elisabetta. ǽȜȟșȓ ȖȟȝȜșțȓțȖȭ ȘȜȒȎ ȢȡțȘȤȖȖ sayHello() ȝȞȜȑȞȎȚ ȚȎ ȐȜȕȐȞȎȧȎȓȠȟȭ Ș ȟȠȞȜȘȓ ǽȜȟȘȜșȪȘȡ ȟȠȞȜȘ ȘȜȒȎ ȏȜșȪȦȓ țȓȠ ȝȞȜȑȞȎȚȚȎ ȕȎȐȓȞȦȎȓȠȟȭ ǵȎȝȡȟȠȖ ȝȞȜȑȞȎȚȚȡ sayhello Ȗ ȜțȎ ȜȠȜȏȞȎȕȖȠ ȟșȓȒȡȬȧȓȓ > sayhello Hello, Artemisia Hello, Elisabetta

ȂȡțȘȤȖȭ sayHello() ȏȡȒȓȠ ȝȓȥȎȠȎȠȪ ȟȠȞȜȘȖ Ȑ ȟȜȜȠȐȓȠ ȟȠȐȖȖ ȟ ȝȓȞȓȒȎțțȩȚȖ ȓȗ ȎȞȑȡȚȓțȠȎȚȖ

126

DZǹǮǰǮ


ĎĚēĎĜČĥČđĘħđ ēęČģđęĔī ǰȩȕȜȐȩ Ȣȡ ț ȘȤ Ȗȗ ȝȜȥ Ƞ Ȗ ȐȟȓȑȒȎ Ȗ ȚȓȬȠ ȐȜȕȐȞȎ ȧȎȓȚȜȓ ȕțȎȥȓțȖȓ ȘȜȠȜȞȜȓ ȚȜȔțȜ ȖȟȝȜșȪȕȜȐȎȠȪ ȝȜȒȜȏțȜ șȬȏȜȚȡ ȒȞȡȑȜȚȡ ǻȎȝȞȖȚȓȞ ȐȩȕȜȐȩ ȢȡțȘȤȖȖ ȚȜȔțȜ ȖȟȝȜșȪȕȜȐȎȠȪ Ȑ ȐȩȞȎȔȓțȖȭȣ ȘȎȘ ȝȓȞȓȚȓțțȩȓ Dzșȭ ȝȞȖȚȓȞȎ Ȑ ȜȏȜșȜȥȘȓ /XD ȐȐȓȒȖ ȟșȓȒȡȬȧȡȬ ȖțȟȠȞȡȘȤȖȬ lua> math.random(1, 6) + 1 5

ǰȩȕȜȐ ȢȡțȘȤȖȖ math.random(1, 6) ȐȜȕȐȞȎȧȎȓȠ ȟșȡ ȥȎȗțȜȓ ȕțȎȥȓțȖȓ ȜȠ 1 ȒȜ 6 ǰ ȫȠȜȚ ȝȞȖȚȓȞȓ ȐȜȕȐȞȎȧȎȓȚȜȓ ȕțȎȥȓțȖȓ ȞȎȐțȜ 4 ȝȜȫȠȜȚȡ Ȑȟȓ ȐȩȞȎȔȓțȖȓ ȐȩȥȖȟșȭȓȠȟȭ ȘȎȘ 4 + 1 ȐȩȒȎȐȎȭ ȕțȎȥȓțȖȓ 5 ǰȓȞȜȭȠțȜ Ƞȩ ȝȜșȡȥȖȦȪ ȒȞȡȑȜȓ ȥȖȟșȜ ȠȎȘ ȘȎȘ ȢȡțȘȤȖȭ math.random() ȐȜȕȐȞȎȧȎȓȠ ȟșȡȥȎȗțȜȓ ȥȖȟșȜ

ǽȞȖ ȟȜȕȒȎțȖȖ ȢȡțȘȤȖȖ ȐȜȕȐȞȎȧȎȓȚȜȓ ȕțȎȥȓțȖȓ ȡȘȎȕȩ ȐȎȓȠȟȭ ȟ ȝȜȚȜȧȪȬ ȖțȟȠȞȡȘȤȖȖ return dzȓ ȟȖțȠȎȘȟȖȟ ȟȜȟȠȜ ȖȠ Ȗȕ ȘșȬȥȓȐȜȑȜ ȟșȜȐȎ return Ȗ ȟșȓȒȡȬȧȓȑȜ ȕȎ țȖȚ ȕțȎȥȓ țȖȭ ȖșȖ ȐȩȞȎȔȓțȖȭ ȅȠȜȏȩ ȝȜȟȚȜȠȞȓȠȪ țȎ ȝȞȎȘȠȖȘȓ ȘȎȘ ȞȎȏȜȠȎȓȠ ȖțȟȠȞȡȘȤȖȭ return ȟȜȕȒȎȗ țȜȐȡȬ ȝȞȜȑȞȎȚȚȡ Ȑȩ ȝȜșțȖȐ ȘȜȚȎțȒȡ edit givecandy Ȗ ȐȐȓȒȖ ȟșȓȒȡȬȧȖȗ ȘȜȒ givecandy 1. function candiesToGive(name) 2. if name == 'Al' then 3. return 10 4. end 5. 6. return 2 7. end 8. 9. lavCandy = candiesToGive('Lavinia') 10. alCandy = candiesToGive('Al') 11. print('Lavinia gets ' .. lavCandy .. ' pieces') 12. print('Al gets ' .. alCandy .. ' pieces')

ȂȡțȘȤȖȭ candiesToGive() ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ 10 ȖșȖ 2 Ȑ ȕȎȐȖȟȖȚȜȟȠȖ ȜȠ ȠȜȑȜ ȘȎȘȜȓ ȖȚȭ ȝȓȞȓȒȎȓȠȟȭ Ȑ ȘȎȥȓȟȠȐȓ ȝȎ

ǿǼǵDzǮǻǶdz ǺǼDzȁǹdzǷ Dzǹȍ ǺǻǼDZǼǸǾǮȀǻǼDZǼ ǶǿǽǼǹȊǵǼǰǮǻǶȍ ǸǼDzǮ

127


ȞȎȚȓȠȞȎ name dzȟșȖ ȝȓȞȓȒȎȓȠȟȭ ȕțȎȥȓțȖȓ 'Al' ȖțȟȠȞȡȘȤȖȭ if Ȑ ȟȠȞȜȘȓ ȝȞȖțȖȚȎȓȠ ȕțȎȥȓțȖȓ true ȠȜȑȒȎ ȖȟȝȜșțȓțȖȓ ȝȓȞȓȣȜȒȖȠ Ș ȟȠȞȜȘȓ Ȗ ȐȩȕȜȐ ȢȡțȘȤȖȖ ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓ țȖȓ 10 dzȟșȖ ȢȡțȘȤȖȖ ȝȓȞȓȒȎȓȠȟȭ ȘȎȘȜȓ șȖȏȜ ȒȞȡȑȜȓ ȕțȎȥȓ țȖȓ ȖțȟȠȞȡȘȤȖȭ if ȝȞȖțȖȚȎȓȠ ȕțȎȥȓțȖȓ false ȖȟȝȜșțȓțȖȓ ȝȓȞȓȣȜȒȖȠ Ș ȟȠȞȜȘȓ Ȗ ȢȡțȘȤȖȭ ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ 2 ǮȞ ȑȡȚȓțȠȩ ȚȜȔțȜ ȞȎȟȟȚȎȠȞȖȐȎȠȪ ȘȎȘ ȐȣȜȒțȩȓ ȒȎțțȩȓ ȢȡțȘ ȤȖȖ Ȏ ȐȜȕȐȞȎȧȎȓȚȩȓ ȕțȎȥȓțȖȭ ȘȎȘ ȐȩȣȜȒțȩȓ ǰ ȟȠȞȜȘȓ ȑȒȓ ȢȡțȘȤȖȖ candiesToGive() ȝȓȞȓȒȎȓȠȟȭ ȕțȎȥȓțȖȓ 'Lavinia' ȢȡțȘȤȖȭ ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ 2 Ƞ ȓ ȝȓȞȓȚȓțțȜȗ lavCandy ȝȞȖȟȐȎȖȐȎȓȠȟȭ ȕțȎȥȓțȖȓ 2 ǰ ȟȠȞȜ Șȓ ȝȓȞȓȚȓțțȜȗ alCandy ȝȞȖȟȐȎȖȐȎȓȠȟȭ ȕțȎȥȓțȖȓ 10 ȝȜȠȜȚȡ ȥȠȜ ȢȡțȘȤȖȭ candiesToGive() ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓ țȖȓ 10 ȓȟșȖ Ȑ ȘȎȥȓȟȠȐȓ ȎȞȑȡȚȓțȠȎ ȓȗ ȝȓȞȓȒȎȓȠȟȭ ȕțȎȥȓ țȖȓ 'Al' ǽȓȞȓȚȓțțȩȓ lavCandy Ȗ alCandy ȚȜȔțȜ ȖȟȝȜșȪ ȕȜȐȎȠȪ ȝȞȖ ȐȩȕȜȐȓ ȢȡțȘȤȖȖ print() ȘȎȘ ȫȠȜ ȒȓșȎȓȠȟȭ Ȑ ȟȠȞȜȘȎȣ Ȗ ȝȜȠȜȚȡ ȥȠȜ Ȝȏȓ ȝȓȞȓȚȓțțȩȓ ȟȜȣȞȎțȭȬȠ ȐȜȕȐȞȎȧȎȓȚȩȓ ȕțȎȥȓțȖȭ dzȟșȖ Ƞȩ ȕȎȝȡȟȠȖȦȪ ȫȠȡ ȝȞȜȑȞȎȚȚȡ ȠȜ ȡȐȖȒȖȦȪ ȟșȓȒȡȬ ȧȓȓ > givecandy Lavinia gets 2 pieces Al gets 10 pieces

ĝĚēĐČęĔđ ĘĚĐğėī ĠğęĖĢĔĕ ǰȚȓȟȠȜ ȠȜȑȜ ȥȠȜȏȩ Ȑ ȘȎȔȒȜȗ ȝȞȜȑȞȎȚȚȓ ȕȎțȜȐȜ ȟȜȕȒȎȐȎȠȪ ȢȡțȘȤȖȖ ȚȜȔțȜ ȜȒȖț ȞȎȕ țȎȝȖȟȎȠȪ Ȗȣ Ȗ ȝȜȚȓȟȠȖȠȪ Ȑ ȚȜ ȒȡșȪ ȀȜȑȒȎ ȝȞȜȑȞȎȚȚȎ ȘȜȠȜȞȎȭ ȕȎȑȞȡȕȖȠ ȠȎȘȜȗ ȚȜȒȡșȪ ȟȚȜȔȓȠ ȐȜȟȝȜșȪȕȜȐȎȠȪȟȭ ȓȑȜ ȢȡțȘȤȖȭȚȖ ȋȠȜ țȎȕȩȐȎȓȠȟȭ ȚțȜȑȜȘȞȎȠțȩȚ ȖȟȝȜșȪȕȜȐȎțȖȓȚ ȘȜȒȎ. ǺȜȒȡșȖ ȟȜȕȒȎȬȠȟȭ Ȑ ȞȓȒȎȘȠȜȞȓ ȠȎȘ Ȕȓ ȘȎȘ Ȗ ȝȞȜȑȞȎȚ Țȩ ǽȜȟșȓ ȟȜȕȒȎțȖȭ Ƞȩ ȚȜȔȓȦȪ ȖȚȝȜȞȠȖȞȜȐȎȠȪ ȚȜȒȡșȖ Ȑ ȒȞȡȑȖȓ ȝȞȜȑȞȎȚȚȩ ǰ ȫȠȜȗ ȑșȎȐȓ Ƞȩ ȡȕțȎȓȦȪ ȘȎȘ ȟȜȕȒȎȐȎȠȪ ȚȜȒȡșȖ Ȏ Ȑ ȟșȓȒȡȬȧȓȗ ȑșȎȐȓ ² ȘȎȘ Ȗȣ ȖȟȝȜșȪȕȜȐȎȠȪ Ȑ ȟȐȜ Ȗȣ ȝȞȜȑȞȎȚȚȎȣ DzȎȐȎȗ ȟȜȕȒȎȒȖȚ ȚȜȒȡșȪ hare Ȗ ȒȎȒȖȚ ȐȜȕ

128

DZǹǮǰǮ


ČšČœČ”Č›ČœČ&#x;Č ČŞ Č?Č&#x;Č“Čš țȎȌȖȚ ȼȓȞȓČ?ČŽČŚČ˜ČŽČš Č?ČœČ™ČŞČ•ČœČ?ČŽČ ČŞČ&#x;Č­ Č“Č‘Čœ Č?Č&#x;Č ČžČœ ȓțțȊȚȖ ȢȥČ›Č˜ȤȖȭȚȖ Č…Č ČœČ?ČŠ Č&#x;ČœČ•Č’ČŽČ ČŞ ČšČœČ’ČĄČ™ČŞ hare Č? ČœČ?ČœČ™ČœČĽČ˜Č“ Č˜ČœČšČŽČ›Č’Č›ČœČ— Č&#x;Č ČžČœ Č˜Č– Č?ČŠČ?ČœČ™Č›Č– Č˜ČœČšČŽČ›Č’ČĄ edit hare Č– Č?Č?Č“Č’Č– Č&#x;șȓȒȥȏȧČ–Č— Č˜ČœČ’ hare >>Ɇɨɞɭɼɜ ÉŤ ɎɭɧɤɰɢɚɌɢ É—ÉĽÉš É‹ÉœÉ&#x;ÉŁÉ?ɚɪɏɚ 2. Provides useful utility functions.]] 3. Ɏɭɧɤɰɢɚ VHOHFW,WHP ɢɳÉ&#x;ÉŹ ɚɹÉ&#x;ɣɤɭ Âą ÉŤ ɭɤɚɥɚɧɧɾɌ É›ɼɨɤɨɌ ɢ ÉœɨɥÉœÉŞÉšÉłÉšÉ&#x;ÉŹ WUXH É&#x;ɍɼɢ ɧɚɣɞÉ&#x;ɧÉš ɢ IDOVH É&#x;ɍɼɢ ɧÉ&#x;ÉŹ 7. function selectItem(name) ɊɪɨÉœÉ&#x;ɪɤÉš ÉœÉŤÉ&#x;ÉŻ ɚɹÉ&#x;É&#x;ɤ ɢɧÉœÉ&#x;ɧɏɚɪɚ 9. local item 10. for slot = 1, 16 do 11. item = turtle.getItemDetail(slot) 12. if item ~= nil and item['name'] == name then 13. turtle.select(slot) 14. return true 15. end 16. end 17. UHWXUQ IDOVH É›ɼɨɤ ɧÉ&#x; ɧɚɣɞÉ&#x;ɧ 19. end 20. 21. Ɏɭɧɤɰɢɚ VHOHFW(PSW\6ORW ɢɳÉ&#x;ÉŹ Ɋɭɍɏɭɸ ɚɹÉ&#x;ɣɤɭ ɢ ÉœɨɥÉœÉŞÉšÉłÉšÉ&#x;ÉŹ WUXH É&#x;ɍɼɢ ɧÉšɯɨÉžɢɏ ɢ IDOVH É&#x;ɍɼɢ ɧÉ&#x;ÉŹ 25. function selectEmptySlot() 26 ÉŠÉ&#x;ÉŞÉ&#x;É›ɢɪÉšɧɢÉ&#x; ÉœÉŤÉ&#x;ÉŻ ɚɹÉ&#x;É&#x;ɤ 28. for slot = 1, 16 do 29. if turtle.getItemCount(slot) == 0 then 30. turtle.select(slot) 31. return true 32. end 33. end UHWXUQ IDOVH ÉŤÉœɨÉ›ɨÉžɧɨɣ ɚɹÉ&#x;ɣɤɢ ɧÉ&#x;ÉŹ 35. end

ǿǟǾDzǎǝǜdz ÇşÇźÇ˛Č ÇšÇłÇˇ DzǚČ? ǺǝǟǹǟǸǞǎČ€ǝǟǹǟ ǜǿǽǟǚČŠǾǟǰǎǝǜČ? ǸǟDzǎ

129


ǸȜȒ ȫȠȜȑȜ ȚȜȒȡșȭ ȟȜȟȠȜȖȠ Ȗȕ ȟȠȞȜȘ țȜ Ȗȣ țȡȔțȜ țȎ ȏȞȎȠȪ ȠȜșȪȘȜ ȜȒȖț ȞȎȕ ǯȓȕ ȫȠȜȑȜ ȚȜȒȡșȭ ȠȎȘȜȗ ȘȜȒ ȝȞȖ ȒȓȠȟȭ țȎȏȖȞȎȠȪ Ȑ ȘȎȔȒȜȗ ȝȞȜȑȞȎȚȚȓ ȟ ȎțȎșȜȑȖȥțȩȚȖ ȐȜȕȚȜȔțȜȟȠȭȚȖ ȘȜȠȜȞȡȬ Ƞȩ ȕȎȣȜȥȓȦȪ țȎȝȖȟȎȠȪ ǺȜȒȡșȖ ȫȘȜțȜȚȭȠ ȚțȜȑȜ ȐȞȓȚȓțȖ ǰ ȟșȓȒȡȬȧȓȚ ȞȎȕȒȓșȓ Țȩ ȝȜȫȘ ȟȝȓȞȖȚȓțȠȖȞȡȓȚ ȟ ȢȡțȘȤȖȭȚȖ ȚȜȒȡșȭ hare Ȑ ȜȏȜșȜȥȘȓ /XD. dzȟșȖ ȝȞȖ ȕȎȝȡȟȘȓ ȫȠȜȗ ȝȞȜȑȞȎȚȚȩ ȐȜȕțȖȘȎȬȠ ȜȦȖȏȘȖ ȠȧȎȠȓșȪțȜ ȟȞȎȐțȖ ȟȐȜȗ ȘȜȒ ȟ șȖȟȠȖțȑȜȚ Ȑ ȫȠȜȗ ȘțȖȑȓ Ȗ Ȗȟ ȝȞȎȐȪ Ȑȟȓ ȜȝȓȥȎȠȘȖ dzȟșȖ ȖȟȝȞȎȐȖȠȪ ȝȞȜȑȞȎȚȚȡ țȓ ȡȒȎȓȠȟȭ ȡȒȎșȖ ȢȎȗș ȐȩȝȜșțȖȐ ȘȜȚȎțȒȡ delete hare Ȏ ȕȎȠȓȚ ȕȎ ȑȞȡȕȖ ȚȜȒȡșȪ ȟ ȝȜȚȜȧȪȬ ȘȜȚȎțȒȩ pastebin get wwzvaKuW hare ǼȏȞȎȠȖ ȐțȖȚȎțȖȓ ȥȠȜ ȚȜȒȡșȪ hare ȘȜȠȜȞȩȗ Ƞȩ ȕȎ ȑȞȡȔȎȓȦȪ ȟ ȟȎȗȠȎ SDVWHELQ ȟȜȒȓȞȔȖȠ Ȑȟȓ ȢȡțȘȤȖȖ ȜȝȖȟȎț țȩȓ Ȑ ȘțȖȑȓ Ȏ țȓ ȠȜșȪȘȜ Ƞȓ ȥȠȜ ȒȜȏȎȐșȓțȩ Ȑ ȫȠȜȗ ȑșȎȐȓ

ēČďĜğēĖČ ĘĚĐğėī ĝ ěĚĘĚĥĨĪ ĠğęĖĢĔĔ 7; 47),)81 ǺȜȒȡșȪ hare ȟȜȒȓȞȔȖȠ ȒȐȓ ȢȡțȘȤȖȖ selectItem() Ȗ selectEmptySlot() ȂȡțȘȤȖȭ selectItem() ȐȩȏȖȞȎȓȠ ȭȥȓȗ Șȡ ȖțȐȓțȠȎȞȭ ȟȜȒȓȞȔȎȧȡȬ ȡȘȎȕȎțțȩȗ ȏșȜȘ ȖșȖ ȝȞȓȒȚȓȠ Ȏ ȢȡțȘȤȖȭ selectEmptySlot() ȐȩȏȖȞȎȓȠ ȝȓȞȐȡȬ ȝȡȟȠȡȬ ȭȥȓȗȘȡ ȖțȐȓțȠȎȞȭ Ǽȏȓ ȢȡțȘȤȖȖ ȐȓȟȪȚȎ ȝȜșȓȕțȩ ȝȞȖ ȞȎȏȜ Ƞȓ ȟ ȖțȐȓțȠȎȞȓȚ ȥȓȞȓȝȎȦȘȖ ǰȟȠȞȜȓțțȩȓ ȚȜȒȡșȖ /XD ȠȎȘȖȓ ȘȎȘ math Ȗ os ȕȎȑȞȡ ȔȎȬȠȟȭ ȎȐȠȜȚȎȠȖȥȓȟȘȖ Ȓșȭ Ȑȟȓȣ ȝȞȜȑȞȎȚȚ ȥȓȞȓȝȎȦȓȘ țȜ ȟȓȗȥȎȟ Ƞȓȏȓ țȡȔțȜ ȕȎȑȞȡȕȖȠȪ ȚȜȒȡșȪ ȟȜȕȒȎțțȩȗ ȠȜȏȜȗ Dzșȭ ȫȠȜȑȜ ȖȟȝȜșȪȕȡȓȠȟȭ ȢȡțȘȤȖȭ os.load API() ǼȏȞȎȠȖ ȐțȖȚȎțȖȓ ȥȠȜ Ȑ &RPSXWHU&UDIW ȚȜȒȡșȖ ȠȎȘȔȓ țȎȕȩȐȎȬȠȟȭ ȝȞȜȑȞȎȚȚțȩȚȖ ȖțȠȓȞȢȓȗȟȎȚȖ ($SSOLFDWLRQ 3URJUDPPLQJ ,Q WHUIDFHV $3, ȅȠȜȏȩ ȖȟȝȜșȪȕȜȐȎȠȪ ȢȡțȘȤȖȬ os.loadAPI() ȝȓȞȓȒȎȗ ȓȗ Ȑ ȐȖȒȓ ȟȠȞȜȘȜȐȜȑȜ ȕțȎȥȓțȖȭ ȖȚȭ ȚȜȒȡșȭ ȘȜ ȠȜȞȩȗ Ƞȩ ȣȜȥȓȦȪ ȕȎȑȞȡȕȖȠȪ ǻȎȝȞȖȚȓȞ ȥȠȜȏȩ ȖȟȝȜșȪȕȜ ȐȎȠȪ Ȑ ȟȐȜȓȗ ȝȞȜȑȞȎȚȚȓ ȚȜȒȡșȪ hare țȡȔțȜ ȐȐȓȟȠȖ ȘȜȒ os.loadAPI('hare'). ȂȡțȘȤȖȭ os.loadAPI() ȟȒȓșȎȓȠ ȢȡțȘȤȖȖ ȫȠȜȑȜ ȚȜȒȡșȭ ȒȜȟȠȡȝțȩȚȖ Ȓșȭ ȐȩȕȩȐȎȬȧȓȗ ȝȞȜȑȞȎȚȚȩ ȂȡțȘȤȖȭ ȐȓȞ

130

DZǹǮǰǮ


țȓȠ ȕțȎȥȓțȖȓ true ȓȟșȖ ȚȜȒȡșȪ ȏȩș țȎȗȒȓț Ȗ ȕȎȑȞȡȔȓț Ȗ false ȓȟșȖ ȚȜȒȡșȪ țȓ ȟȡȧȓȟȠȐȡȓȠ țȎȝȞȖȚȓȞ ȓȟșȖ Ƞȩ ȟȒȓ șȎș ȜȝȓȥȎȠȘȡ ȐȜȠ ȠȎȘ ² os.loadAPI('har') ǰ ȟșȓȒȡȬȧȓȚ ȞȎȕȒȓșȓ Ƞȩ ȕȎȑȞȡȕȖȦȪ ȚȜȒȡșȪ hare Ȗ ȐȩȕȜȐȓȦȪ țȓȘȜȠȜȞȩȓ Ȗȕ ȓȑȜ ȢȡțȘȤȖȗ

ĩĖĝěđĜĔĘđęĞħ ĝ ĘĚĐğėđĘ 0):ȅȠȜȏȩ ȡȐȖȒȓȠȪ ȘȎȘ ȞȎȏȜȠȎȓȠ ȢȡțȘȤȖȭ selectItem() ȜȠ ȘȞȜȗ ȖțȠȓȞȢȓȗȟ ȥȓȞȓȝȎȦȘȖ Ȗ ȝȜȚȓȟȠȖ Ȑ ȖțȐȓțȠȎȞȪ ȏșȜȘ Ȓȡ ȏȜȐȜȗ ȒȞȓȐȓȟȖțȩ Ȗ țȓȟȘȜșȪȘȜ ȒȞȡȑȖȣ ȏșȜȘȜȐ ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ

ˀ̛̭͘ ϳ͘ϭ͘ ʰ̦̖̦̯̬̏̌̽ ̸̡̛̖̬̖̪̹̌ ̨̛̭̖̬̙̯̔ ̨̡̣̍ ̨̨̱̜̔̍̏ ̛̬̖̖̭̦̼̔̏ ̛ ̡̨̡̨̦̖̭̣̽ ̵̛̬̱̔̐ ̨̡̨̣͕̍̏ ̡̯̖̱̺̌́ ʹ ̸̡̖̜́̌ ϭ

ǵȎȠȓȚ ȜȠȘȞȜȗ ȜȏȜșȜȥȘȡ /XD Ȗ Ȓșȭ ȐȩȏȜȞȎ ȭȥȓȗȘȖ ȟ ȒȡȏȜ ȐȜȗ ȒȞȓȐȓȟȖțȜȗ ȐȐȓȒȖ ȟșȓȒȡȬȧȖȗ ȘȜȒ lua> os.loadAPI('hare') true lua> hare.selectItem('minecraft:log') true

ǽȓȞȐȎȭ ȟȠȞȜȘȎ ȘȜȒȎ ȕȎȑȞȡȔȎȓȠ ȚȜȒȡșȪ hare Ȏ ȐȠȜȞȎȭ ² ȐȩȏȖȞȎȓȠ ȭȥȓȗȘȡ ȖțȐȓțȠȎȞȭ ȟ ȒȡȏȜȐȜȗ ȒȞȓȐȓȟȖțȜȗ ȝȓȞȓȒȎ ȐȎȭ ȢȡțȘȤȖȖ selectItem() ȟȠȞȜȘȡ 'minecraft:log'.

ǿǼǵDzǮǻǶdz ǺǼDzȁǹdzǷ Dzǹȍ ǺǻǼDZǼǸǾǮȀǻǼDZǼ ǶǿǽǼǹȊǵǼǰǮǻǶȍ ǸǼDzǮ

131


ǿȠȞȜȘȎ 'minecraft:log' ² ȫȠȜ ȖȒȓțȠȖȢȖȘȎȠȜȞ 0LQHFUDIW ȏșȜȘȎ ȒȡȏȜȐȜȗ ȒȞȓȐȓȟȖțȩ ǶȒȓțȠȖȢȖȘȎȠȜȞ ² ȫȠȜ ȡțȖȘȎșȪ țȎȭ ȟȠȞȜȘȎ țȎȥȖțȎȬȧȎȭȟȭ ȟȜ ȕțȎȥȓțȖȭ 'minecraft:' ȘȜȠȜȞȎȭ Ȑ ȖȑȞȓ 0LQHFUDIW ȖȟȝȜșȪȕȡȓȠȟȭ Ȓșȭ ȘȜȒȖȞȜȐȎțȖȭ șȬȏȩȣ ȏșȜȘȜȐ Ȗ ȝȞȓȒȚȓȠȜȐ ǿȝȖȟȜȘ ȖȒȓțȠȖȢȖȘȎȠȜȞȜȐ ȚȜȔ țȜ țȎȗȠȖ Ȑ ȞȎȕȒȓșȓ «ǿȝȖȟȜȘ ȖȒȓțȠȖȢȖȘȎȠȜȞȜȐ ȏșȜȘȜȐª ȝȞȖșȜȔȓțȖȭ ǯ ǰ ȞȎȕȒȓșȓ «ǽȜșȡȥȓțȖȓ ȖțȢȜȞȚȎȤȖȖ Ȝ ȟȜȒȓȞȔȖȚȜȚ ȭȥȓȗȘȖª ȒȎșȓȓ Ȑ ȫȠȜȗ ȑșȎȐȓ Ƞȩ ȡȕțȎȓȦȪ ȘȎȘ ȖȕȐșȓȥȪ ȖȒȓțȠȖȢȖȘȎȠȜȞ ȏșȜȘȎ ȝȞȓȒȚȓȠȎ ȟȜȒȓȞȔȎȧȓȑȜȟȭ Ȑ ȭȥȓȗȘȓ ȟ ȝȜȚȜȧȪȬ ȢȡțȘȤȖȖ turtle.getItemDetail() ȐȚȓȟȠȜ ȠȜȑȜ ȥȠȜȏȩ ȖȟȘȎȠȪ ȓȑȜ dzȟșȖ ȐȕȑșȭțȡȠȪ țȎ ȖțȐȓțȠȎȞȪ ȥȓȞȓȝȎȦȘȖ ȝȜȟșȓ Ȑȩ ȕȜȐȎ ȢȡțȘȤȖȖ hare.selectItem() Ƞȩ ȡȐȖȒȖȦȪ ȥȠȜ Ȑȩ ȏȞȎ țȎ ȭ ȥȓȗ ȘȎ ȟ ȏșȜȘȜȚ Ȓ ȞȓȐȓȟȖ ț ȩ ȘȎ Ș ȝȜȘȎȕȎ țȜ țȎ ȞȖȟ ȋȠȎ ȢȡțȘȤȖȭ ȖȧȓȠ Ȗ ȐȩȏȖȞȎȓȠ ȭȥȓȗȘȡ ȟ ȒȞȓȐȓ ȟȖțȜȗ țȓȕȎȐȖȟȖȚȜ ȜȠ ȠȜȑȜ Ȑ ȘȎȘȜȗ ȭȥȓȗȘȓ ȖțȐȓțȠȎȞȭ țȎ ȣȜȒȖȠȟȭ ȏșȜȘ ȒȞȓȐȓȟȖțȩ ǽȜȝȞȜȏȡȗ ȝȓȞȓȚȓȟȠȖȠȪ ȒȡȏȜȐȡȬ ȒȞȓȐȓȟȖțȡ Ȑ ȒȞȡȑȡȬ ȭȥȓȗȘȡ Ȗ ȟțȜȐȎ ȐȩȕȜȐȖ ȢȡțȘȤȖȬ hare. selectItem('minecraft:log') ǯȡȒȓȠ ȐȩȏȞȎțȎ ȒȞȡȑȎȭ ȭȥȓȗȘȎ ȟ ȒȞȓȐȓȟȖțȜȗ Ȗ ȫȠȎ ȭȥȓȗȘȎ ȏȡȒȓȠ ȐȩȒȓșȓțȎ ȞȎȚȘȜȗ

ˀ̛̭͘ ϳ͘Ϯ͘ ˔̸̡̖̜̌ ̭ ̨̛̬̖̖̭̦̜̔̏ ̼̖̣̖̦̏̔̌ ̨̪̭̣̖ ̨̛̼̪̣̦̖̦̏́ ̴̶̡̛̱̦​̛ hare. selectItem('minecraft:log')

ȂȡțȘȤȖȭ selectEmptySlot() ȐȩȏȖȞȎȓȠ ȝȓȞȐȡȬ ȝȡȟȠȡȬ ȭȥȓȗȘȡ ȖțȐȓțȠȎȞȭ ȘȜȠȜȞȡȬ ȜȏțȎȞȡȔȖȐȎȓȠ ȋȠȎ ȢȡțȘȤȖȭ ȝȜțȎȒȜȏȖȠȟȭ ȘȜȑȒȎ Ƞȩ ȟȜȏȓȞȓȦȪȟȭ ȒȜȏȩȐȎȠȪ ȘȎȘȖȓ șȖȏȜ

132

DZǹǮǰǮ


ȏșȜȘȖ ȠȎȘ ȘȎȘ Ȓșȭ Ȗȣ ȣȞȎțȓțȖȭ ȝȜțȎȒȜȏȖȠȟȭ ȝȡȟȠȎȭ ȭȥȓȗ ȘȎ ǰ ȜȏȜșȜȥȘȓ /XD ȐȩȝȜșțȖ ȟșȓȒȡȬȧȖȗ ȘȜȒ lua> os.loadAPI('hare') true lua> hare.selectEmptySlot() true

ǽȜȟșȓ ȐȩȕȜȐȎ ȢȡțȘȤȖȖ hare.selectEmptySlot() ȏȡȒȓȠ ȐȩȏȞȎțȎ ȝȓȞȐȎȭ ȝȡȟȠȎȭ ȭȥȓȗȘȎ ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ

ˀ̛̭͘ ϳ͘ϯ͘ ʦ̼̖̣̖̦̔̌ ̪̖̬̏̌́ ̪̱̭̯̌́ ̸̡̖̜́̌ ̨̪̭̣̖ ̨̼̏̏̌̚ ̴̶̡̛̱̦​̛ hare.selectEmptySlot()

Ǽȏȓ ȫȠȖ ȢȡțȘȤȖȖ ȏȡȒȡȠ ȖȟȝȜșȪȕȜȐȎțȩ Ȑ ȝȞȜȑȞȎȚȚȓ șȓ ȟȜȢȓȞȚȩ Ȗȕ ȑșȎȐȩ țȜ ȜțȖ ȚȜȑȡȠ ȝȞȖȑȜȒȖȠȪȟȭ Ȗ ȐȜ ȚțȜȑȖȣ ȒȞȡȑȖȣ ȝȞȜȑȞȎȚȚȎȣ Ȓșȭ ȥȓȞȓȝȎȦȓȘ DzȎȐȎȗ ȞȎȟȟȚȜȠȞȖȚ ȘȜȒ Ȗȕ ȘȜȠȜȞȜȑȜ ȟȜȟȠȜȖȠ țȎȦ ȚȜȒȡșȪ

ĜČčĚĞČ ĝ ĔęĎđęĞČĜđĘ ģđĜđěČĤĖĔ ǽȓȞȐȩȓ ȒȐȓ ȟȠȞȜȘȖ ȘȜȒȎ ȚȜȒȡșȭ hare ȟȜȒȓȞȔȎȠ ȜȏȧȖȗ ȘȜȚ ȚȓțȠȎȞȖȗ Ș ȝȞȜȑȞȎȚȚȓ Ȏ ȝȜȟșȓȒȡȬȧȖȓ ȘȜȚȚȓțȠȎȞȖȖ ȝȜȭȟ țȭȬȠ ȘȎȘȖȓ ȒȓȗȟȠȐȖȭ ȝȞȜȖȕȐȜȒȖȠ ȢȡțȘȤȖȭ selectItem(). hare >>Ɇɨɞɭɥɶ ɫ ɮɭɧɤɰɢɹɦɢ ɗɥɚ ɋɜɟɣɝɚɪɬɚ

ǿǼǵDzǮǻǶdz ǺǼDzȁǹdzǷ Dzǹȍ ǺǻǼDZǼǸǾǮȀǻǼDZǼ ǶǿǽǼǹȊǵǼǰǮǻǶȍ ǸǼDzǮ

133


ɞɥɹ ɪɟɲɟɧɢɹ ɩɨɥɟɡɧɵɯ ɡɚɞɚɱ @@ 3. Ɏɭɧɤɰɢɹ VHOHFW,WHP ɢɳɟɬ ɹɱɟɣɤɭ ɫ ɭɤɚɡɚɧɧɵɦ ɛɥɨɤɨɦ ɢ ɜɨɡɜɪɚɳɚɟɬ WUXH ɟɫɥɢ ɧɚɣɞɟɧ ɢ IDOVH ɟɫɥɢ ɧɟɬ 7. function selectItem(name)

ǶțȟȠȞȡȘȤȖȭ function selectItem() ȞȎȟȝȜșȜȔȓțȎ Ȑ ȟȠȞȜ Șȓ ǵȎȝȜȚțȖ ȥȠȜ ȏșȜȘ ȘȜȒȎ ȝȜȟșȓ ȖțȟȠȞȡȘȤȖȖ function Ȗȟ ȝȜșțȭȓȠȟȭ ȘȎȔȒȩȗ ȞȎȕ ȘȜȑȒȎ ȢȡțȘȤȖȭ ȐȩȕȩȐȎȓȠȟȭ ǯșȜȘ ȘȜȒȎ țȓ ȖȟȝȜșțȭȓȠȟȭ ȓȟșȖ ȖțȟȠȞȡȘȤȖȭ function ȐȟȠȞȓȥȎȓȠ ȟȭ ȐȝȓȞȐȩȓ ȅȠȜȏȩ ȝȜțȭȠȪ ȘȜȒ ȢȡțȘȤȖȖ selectItem() Ƞȓȏȓ ȟțȎȥȎșȎ țȡȔțȜ ȖȕȡȥȖȠȪ țȓȘȜȠȜȞȩȓ ȢȡțȘȤȖȖ ȘȜȠȜȞȩȓ Ȗȟ ȝȜșȪȕȡȬȠȟȭ Ȓșȭ ȞȎȏȜȠȩ ȟ ȖțȐȓțȠȎȞȓȚ ȥȓȞȓȝȎȦȘȖ ǸȎȔȒȎȭ ȥȓȞȓȝȎȦȘȎ ȖȚȓȓȠ ȖțȐȓțȠȎȞȪ ȟȜȟȠȜȭȧȖȗ Ȗȕ ȭȥȓȓȘ ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

ˀ̛̭͘ 7.4͘ ʻ̶̛̱̥̖̬̌́ ̸̖́​̡̖ ̛̦̖̦̯̬̏̌́ ̸̡̛̖̬̖̪̹̌

ȁ ȥȓȞȓȝȎȦȓȘ ȓȟȠȪ ȠȞȖ ȐȟȠȞȜȓțțȩȓ ȢȡțȘȤȖȖ ȘȜȠȜȞȩȓ ȝȜ ȕȐȜșȭȬȠ ȐȕȎȖȚȜȒȓȗȟȠȐȜȐȎȠȪ ȟ ȖțȐȓțȠȎȞȓȚ ȟ ȝȜȚȜȧȪȬ țȜȚȓ ȞȜȐ ȭȥȓȓȘ turtle.select() turtle.getItemCount() Ȗ turtle.getItemDetail() DzȎȐȎȗ ȞȎȟȟȚȜȠȞȖȚ ȘȎȘ ȜțȖ ȞȎȏȜȠȎȬȠ

ĎħčĚĜ īģđĕĖĔ ĔęĎđęĞČĜī Ȁȩ ȚȜȔȓȦȪ ȐȩȏȞȎȠȪ ȠȓȘȡȧȡȬ ȭȥȓȗȘȡ ȖȟȝȜșȪȕȡȭ ȢȡțȘȤȖȬ turtle.select() Ȗ ȝȓȞȓȒȎȐ ȓȗ țȜȚȓȞ ȔȓșȎȓȚȜȗ ȭȥȓȗȘȖ ǻȜ ȚȓȞȎ ȭȥȓȓȘ ȝȜȘȎȕȎțȩ țȎ ȞȖȟ ȅȠȜȏȩ ȝȜȟȚȜȠȞȓȠȪ ȘȎȘ ȞȎ

134

DZǹǮǰǮ


ȏȜȠȎȓȠ ȫȠȎ ȢȡțȘȤȖȭ Ȑ ȜȏȜșȜȥȘȓ /XD ȐȐȓȒȖ ȟșȓȒȡȬȧȖȓ ȟȠȞȜ ȘȖ ȘȜȒȎ lua> turtle.select(2) true lua> turtle.select(16) true

ǽȜȟșȓ ȐȩȕȜȐȎ ȢȡțȘȤȖȖ ȜȏȞȎȠȖ ȐțȖȚȎțȖȓ țȎ ȠȜșȟȠȡȬ ȞȎȚȘȡ ȘȜȠȜȞȎȭ ȜȏȜȕțȎȥȎȓȠ ȠȓȘȡȧȡȬ ȭȥȓȗȘȡ ǺțȜȑȖȓ ȢȡțȘ ȤȖȖ ȥȓȞȓȝȎȦȘȖ ȖȟȝȜșȪȕȡȬȠ ȖȚȓțțȜ ȠȓȘȡȧȡȬ ȭȥȓȗȘȡ ȝȜ ȫȠȜȚȡ ȐȓȟȪȚȎ ȝȜșȓȕțȜ ȕțȎȠȪ ȘȎȘ ȓȓ ȐȩȏȞȎȠȪ ȅȎȟȠȜ ȏȩȐȎȓȠ țȡȔțȜ ȐȩȏȞȎȠȪ ȠȓȘȡȧȓȗ ȜȝȞȓȒȓșȓțțȡȬ ȭȥȓȗȘȡ țȎȝȞȖȚȓȞ ȟȜȒȓȞȔȎȧȡȬ ȘȎȘȜȗ șȖȏȜ țȡȔțȩȗ ȏșȜȘ ȖșȖ ȝȞȓȒȚȓȠ

ěĚĐĝģđĞ ĖĚėĔģđĝĞĎČ ěĜđĐĘđĞĚĎ Ď īģđĕĖđ dzȟșȖ Ƞȩ ȕȎȣȜȥȓȦȪ ȡȕțȎȠȪ ȟȘȜșȪȘȜ ȝȞȓȒȚȓȠȜȐ ȏșȜȘȜȐ țȎȣȜ ȒȖȠȟȭ Ȑ ȭȥȓȗȘȓ ȖțȐȓțȠȎȞȭ ȐȩȕȜȐȖ ȢȡțȘȤȖȬ turtle.getItemCount() Ȗ ȝȓȞȓȒȎȗ ȓȗ țȜȚȓȞ ȭȥȓȗȘȖ ǰ ȜȏȜșȜȥȘȓ /XD ȐȐȓȒȖ ȟșȓȒȡȬȧȖȓ ȟȠȞȜȘȖ ȘȜȒȎ lua> turtle.getItemCount(1) 1 lua> turtle.getItemCount(16) 0

dzȟșȖ Ƞȩ țȓ ȝȓȞȓȒȎȦȪ ȢȡțȘȤȖȖ turtle.getItemCount() ȎȞȑȡȚȓțȠ ȟ țȜȚȓȞȜȚ ȭȥȓȗȘȖ ȢȡțȘȤȖȭ ȝȞȜȐȓȞȖȠ ȠȓȘȡȧȡȬ ȭȥȓȗȘȡ ȋȠȎ ȢȡțȘȤȖȭ ȜȥȓțȪ ȝȞȜȟȠȎ ȜțȎ ȐȜȕȐȞȎȧȎȓȠ ȘȜșȖ ȥȓȟȠȐȜ ȫșȓȚȓțȠȜȐ Ȑ ȭȥȓȗȘȓ ȖțȐȓțȠȎȞȭ țȜ țȖȥȓȑȜ țȓ ȟȜȜȏȧȎ ȓȠ Ȝ ȠȜȚ ȥȠȜ ȖȚȓțțȜ Ȑ ȭȥȓȗȘȓ țȎȣȜȒȖȠȟȭ ȅȠȜȏȩ ȝȜșȡȥȖȠȪ ȝȜȒȞȜȏțȡȬ ȖțȢȜȞȚȎȤȖȬ Ȝ ȟȜȒȓȞȔȖȚȜȚ ȭȥȓȗȘȖ Ƞȓȏȓ ȝȜțȎ ȒȜȏȖȠȟȭ ȢȡțȘȤȖȭ turtle.getItemDetail().

ěĚėğģđęĔđ ĔęĠĚĜĘČĢĔĔ Ě ĝĚĐđĜĒĔĘĚĘ īģđĕĖĔ Ȁȩ ȚȜȔȓȦȪ ȝȜșȡȥȖȠȪ ȖțȢȜȞȚȎȤȖȬ Ȝ ȠȜȚ ȥȠȜ ȟȜȒȓȞȔȖȠȟȭ Ȑ ȖțȐȓțȠȎȞȓ ȥȓȞȓȝȎȦȘȖ ȐȩȕȐȎȐ ȢȡțȘȤȖȬ turtle.getItem-

ǿǼǵDzǮǻǶdz ǺǼDzȁǹdzǷ Dzǹȍ ǺǻǼDZǼǸǾǮȀǻǼDZǼ ǶǿǽǼǹȊǵǼǰǮǻǶȍ ǸǼDzǮ

135


Detail() Ȗ ȝȓȞȓȒȎȐ ȓȗ țȜȚȓȞ ȭȥȓȗȘȖ ȘȜȠȜȞȡȬ Ƞȩ ȣȜȥȓȦȪ ȝȞȜȐȓȞȖȠȪ ǽȜȚȓȟȠȖ ȏșȜȘ ȒȞȓȐȓȟȖțȩ Ȑ ȭȥȓȗȘȡ Ȏ ȕȎȠȓȚ Ȑ ȜȏȜșȜȥȘȓ /XD ȐȐȓȒȖ ȟșȓȒȡȬȧȖȗ ȘȜȒ lua> turtle.getItemDetail(1) { count = 1, name = «minecraft:log», damage = 0, }

ǵțȎȥȓțȖȓ ȐȜȕȐȞȎȧȎȓȚȜȓ ȢȡțȘȤȖȓȗ turtle.getItemDetail() ȡȘȎȕȩȐȎȓȠ țȎ ȠȜ ȥȠȜ Ȑ ȭȥȓȗȘȓ țȎȣȜȒȖȠȟȭ ȜȒȖț ȏșȜȘ ȒȞȓȐȓȟȖțȩ ȏȓȕ ȝȜȐȞȓȔȒȓțȖȗ ȎȘȠȡȎșȪțȜ Ȓșȭ ȖțȟȠȞȡ ȚȓțȠȜȐ ȜȞȡȔȖȭ Ȗ ȏȞȜțȖ dzȟșȖ ȡȘȎȕȎțțȎȭ ȭȥȓȗȘȎ ȝȡȟȠȎ ȢȡțȘȤȖȭ turtle.getItemDetail() ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ nil dzȟșȖ ȢȡțȘȤȖȖ turtle.getItemDetail() țȓ ȝȓȞȓȒȎ ȐȎȠȪ ȎȞȑȡȚȓțȠ ȜțȎ ȐȓȞțȓȠ ȖțȢȜȞȚȎȤȖȬ Ȝ ȠȓȘȡȧȓȗ ȭȥȓȗȘȓ ǰȜȕȐȞȎȧȎȓȚȜȓ ȫȠȜȗ ȢȡțȘȤȖȓȗ ȕțȎȥȓțȖȓ ȝȞȖțȤȖȝȖȎșȪ țȜ ȜȠșȖȥȎȓȠȟȭ ȜȠ ȕțȎȥȓțȖȗ ȘȜȠȜȞȩȓ Ƞȩ ȐȖȒȓș ȒȜ ȫȠȜȑȜ ȝȜ ȠȜȚȡ ȥȠȜ ȫȠȜ ȕțȎȥȓțȖȓ ȠȎȏșȖȥțȜȑȜ ȠȖȝȎ

ĞČčėĔģęħđ ēęČģđęĔī ȀȎȏșȖȥțȩȓ ȒȎțțȩȓ ȚȜȑȡȠ ȏȩȠȪ ȝȞȓȒȟȠȎȐșȓțȩ ȕțȎȥȓțȖȭȚȖ ȟȎȚȩȣ ȞȎȕțȩȣ ȠȖȝȜȐ ǽȜȒȜȏțȜ ȠȜȚȡ ȘȎȘ ȟȠȞȜȘȜȐȩȓ ȕțȎȥȓ țȖȭ țȎȥȖțȎȬȠȟȭ Ȗ ȕȎȘȎțȥȖȐȎȬȠȟȭ ȘȎȐȩȥȘȎȚȖ ȠȎȏșȖȥțȩȓ ȕțȎȥȓțȖȭ țȎȥȖțȎȬȠȟȭ Ȗ ȕȎȘȎțȥȖȐȎȬȠȟȭ ȢȖȑȡȞțȩȚȖ ȟȘȜȏ ȘȎȚȖ {} ȃȞȎțȭȧȖȓȟȭ Ȑ ȠȎȏșȖȤȓ ȒȎțțȩȓ ȜȏȞȎȕȡȬȠ ȝȎȞȩ ȘșȬȥ ȕțȎȥȓțȖȓ ȘȜȠȜȞȩȓ ȕȎȝȖȟȩȐȎȬȠȟȭ Ȑ ȜȒțȡ ȟȠȞȜȘȡ Ȗ ȫȠȖ ȟȠȞȜȘȖ ȟ ȝȎȞȎȚȖ ȜȠȒȓșȭȬȠȟȭ ȕȎȝȭȠȩȚȖ ȅȠȜȏȩ ȟȜȕȒȎȠȪ țȜȐȡȬ ȠȎȏșȖȤȡ Ȗ ȝȜȟȚȜȠȞȓȠȪ ȘȎȘ ȐȩȑșȭȒȭȠ ȝȎȞȩ ȘșȬȥ ȕțȎȥȓțȖȓ Ȑ ȜȏȜșȜȥȘȓ /XD ȐȐȓȒȖ ȟșȓȒȡȬȧȡȬ ȟȠȞȜȘȡ ȘȜȒȎ lua> myStuff = {logs=5, stone=4, arrows=10}

ȋȠȎ ȟȠȞȜȘȎ ȝȞȖȟȐȎȖȐȎȓȠ ȝȓȞȓȚȓțțȜȗ myStuff ȠȎȏșȖȥțȜȓ ȕțȎȥȓțȖȓ {logs = 5, stone = 4, arrows = 10} ȀȞȖ ȥȖȟșȜȐȩȣ ȕțȎȥȓțȖȭ ² 5 4 Ȗ 10 ȫȠȜ ȕțȎȥȓțȖȭ Ȗȕ ȝȎȞȩ ȘșȬȥ ȕțȎȥȓțȖȓ Ȏ ȖȒȓțȠȖȢȖȤȖȞȜȐȎȠȪ Ȗȣ ȚȜȔțȜ ȝȜ ȟȜȜȠȐȓȠȟȠȐȡȬ

136

DZǹǮǰǮ


ȧȖȚ ȘșȬȥȎȚ: 'logs' 'stone' Ȗ 'arrows' ǰȚȓȟȠȓ ȘșȬȥ Ȗ ȕțȎȥȓțȖȓ ȜȏȞȎȕȡȬȠ ȝȎȞȡ ȘșȬȥ ȕțȎȥȓțȖȓ țȎȝȞȖȚȓȞ logs = 5 ȑȒȓ ȟțȎȥȎșȎ ȡȘȎȕȩȐȎȓȠȟȭ ȘșȬȥ ȕȎȠȓȚ ȕțȎȘ ȞȎȐȓțȟȠȐȎ (= Ȏ ȕȎȠȓȚ ȕțȎȥȓțȖȓ ǸșȬȥȖ Ȗ ȕțȎȥȓțȖȭ ȚȜȑȡȠ ȏȩȠȪ ȝȞȓȒ ȟȠȎȐșȓțȩ ȝȞȎȘȠȖȥȓȟȘȖ șȬȏȩȚȖ ȠȖȝȎȚȖ ȒȎțțȩȣ țȎȝȞȖ ȚȓȞ ȘșȬȥ ȚȜȔȓȠ ȏȩȠȪ ȤȓșȩȚ ȥȖȟșȜȚ Ȏ ȕțȎȥȓțȖȓ ² ȟȠȞȜȘȜȗ dzȒȖțȟȠȐȓțțȜȓ ȖȟȘșȬȥȓțȖȓ ȟȜȟȠȜȖȠ Ȑ ȠȜȚ ȥȠȜ ȘșȬȥ ȠȎȏșȖ Ȥȩ țȓ ȚȜȔȓȠ ȏȩȠȪ ȕțȎȥȓțȖȓȚ nil. ȅȠȜȏȩ ȝȜșȡȥȖȠȪ ȒȜȟȠȡȝ Ș ȜȠȒȓșȪțȩȚ ȕțȎȥȓțȖȭȚ ȐțȡȠȞȖ ȠȎȏșȖȤȩ ȡȘȎȔȖ ȝȓȞȓȚȓțțȡȬ myStuff Ȏ ȕȎȠȓȚ Ȑ ȘȐȎȒȞȎȠ țȩȣ ȟȘȜȏȘȎȣ [] ȘșȬȥ ȀȎȘȜȓ ȐȩȞȎȔȓțȖȓ ȐȓȞțȓȠ ȕțȎȥȓțȖȓ ȠȎȏșȖȤȩ ȟȐȭȕȎțțȜȓ ȟ ȫȠȖȚ ȘșȬȥȜȚ ǻȎȝȞȖȚȓȞ Ȓșȭ ȒȜȟȠȡ ȝȎ Ș ȕțȎȥȓțȖȬ ȠȎȏșȖȤȩ ȘȜȠȜȞȡȬ Țȩ ȟȜȕȒȎșȖ Ȑ ȜȏȜșȜȥȘȓ /XD ȐȐȓȒȖ ȟșȓȒȡȬȧȓȓ lua> myStuff['logs'] 5 lua> 'I have ' .. myStuff['stone'] .. ' stone.' I have 4 stone. lua> 'I need ' .. (12 - myStuff['arrows']) .. ' more arrows to have a dozen.' I need 2 more arrows to have a dozen.

ǽȓȞȐȎȭ ȟȠȞȜȘȎ ȘȜȒȎ ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ ȟȐȭȕȎțțȜȓ ȟ ȘșȬȥȜȚ 'log' ȫȠȜ ȥȖȟșȜ 5 ǽȜȟȘȜșȪȘȡ ȐȩȞȎȔȓțȖȓ ȐȩȥȖȟșȭ ȓȠ ȕțȎȥȓțȖȓ ȓȑȜ ȚȜȔțȜ ȖȟȝȜșȪȕȜȐȎȠȪ ȠȎȘ Ȕȓ ȘȎȘ Ȗ șȬȏȜȓ ȒȞȡȑȜȓ ȕțȎȥȓțȖȓ țȎȝȞȖȚȓȞ ȝȞȖ ȘȜțȘȎȠȓțȎȤȖȖ ȟȠȞȜȘ ȖșȖ ȝȞȖ ȐȩȝȜșțȓțȖȖ ȚȎȠȓȚȎȠȖȥȓȟȘȖȣ ȒȓȗȟȠȐȖȗ ȓȟșȖ ȫȠȜ ȕțȎ ȥȓțȖȓ ȭȐșȭȓȠȟȭ ȥȖȟșȜȚ

ĚčēĚĜ ĞČčėĔĢħ ĎĚēĎĜČĥČđĘĚĕ ĠğęĖĢĔđĕ <=:<4- /-<1<-5,-<)14 DzȎȐȎȗ ȟțȜȐȎ ȞȎȟȟȚȜȠȞȖȚ ȢȡțȘȤȖȬ turtle.getItemDetail() ǽȜȚȓȟȠȖ ȜȒȖț ȒȓȞȓȐȭțțȩȗ ȏșȜȘ Ȑ ȭȥȓȗȘȡ Ȏ ȕȎȠȓȚ Ȑ ȜȏȜșȜȥȘȓ /XD ȐȐȓȒȖ ȟșȓȒȡȬȧȓȓ lua> item = turtle.getItemDetail(1) lua> item['name']

ǿǼǵDzǮǻǶdz ǺǼDzȁǹdzǷ Dzǹȍ ǺǻǼDZǼǸǾǮȀǻǼDZǼ ǶǿǽǼǹȊǵǼǰǮǻǶȍ ǸǼDzǮ

137


minecraft:log lua> item['count'] 1

ǰȐȜȒȭ ȘȜȒ ['na me'] Ƞȩ ȝȜșȡȥȎȓȦȪ ȕțȎȥȓțȖȓ ȘșȬȥȎ name ȠȎȏșȖȤȩ Ƞ ȓ minecraft:log ȀȜȥțȜ ȠȎȘ Ȕȓ ȚȜȔțȜ ȝȜșȡȥȖȠȪ Ȗ ȒȞȡȑȖȓ ȕțȎȥȓțȖȭ țȎȝȞȖȚȓȞ ȟȐȭȕȎțțȩȓ ȟ ȘșȬ ȥȜȚ count ȀȓȝȓȞȪ ȡ Ƞȓȏȭ ȓȟȠȪ ȟȝȜȟȜȏ ȝȜșȡȥȖȠȪ ȖțȢȜȞȚȎ ȤȖȬ Ȝȏ ȖțȐȓțȠȎȞȓ ȥȓȞȓȝȎȦȘȖ Ȑ ȐȖȒȓ ȟȠȞȜȘȜȐȩȣ Ȗ ȥȖȟșȜ Ȑȩȣ ȕțȎȥȓțȖȗ ǼȏȞȎȠȖ ȐțȖȚȎțȖȓ ȓȟșȖ ȢȡțȘȤȖȭ turtle. getItemDetail() ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ nil ȝȜȠȜȚȡ ȥȠȜ ȭȥȓȗȘȎ ȝȡȟȠȎ ȝȜȝȩȠȘȎ ȖȟȝȜșȪȕȜȐȎȠȪ ȘȐȎȒȞȎȠțȩȓ ȟȘȜȏȘȖ ȝȞȖȐȓȒȓȠ Ș ȜȦȖȏȘȓ lua> item = turtle.getItemDetail(16) lua> item['name'] OXD DWWHPSW WR LQGH[ " D QLO YDOXH

ȅȠȜȏȩ ȫȠȎ ȜȦȖȏȘȎ țȓ ȐȜȕțȖȘȎșȎ ȟșȓȒȡȓȠ ȖȟȝȜșȪȕȜȐȎȠȪ ȖțȟȠȞȡȘȤȖȬ if Ȗ ȡȏȓȒȖȠȪȟȭ ȥȠȜ ȝȓȞȓȚȓțțȜȗ item țȓ ȝȞȖ ȟȐȜȓțȜ ȕțȎȥȓțȖȓ nil ȃȜȠȭ ȫȠȜȠ ȘȜȒ Țȩ Ȗ țȓ ȏȡȒȓȚ ȖȟȝȜșȪ ȕȜȐȎȠȪ Ȑ ȫȠȜȗ ȑșȎȐȓ Ȑ ȏȡȒȡȧȖȣ ȝȞȜȑȞȎȚȚȎȣ Ȝț țȎȚ ȝȞȖȑȜ ȒȖȠȟȭ local item = turtle.getItemDetail(16) if item ~= nil then print(item['name']) end

ǿ ȝȜȚȜȧȪȬ ȫȠȜȑȜ ȘȜȒȎ ȐȩȕȜȐ item['name'] ȖȟȝȜșțȭȓȠ ȟȭ ȠȜșȪȘȜ Ȑ ȠȜȚ ȟșȡȥȎȓ ȓȟșȖ ȕțȎȥȓțȖȓ ȝȓȞȓȚȓțțȜȗ item țȓ ȞȎȐțȜ ~= nil.

ďėĚčČėĨęČī Ĕ ėĚĖČėĨęČī ĚčėČĝĞĔ ĎĔĐĔĘĚĝĞĔ ȂȡțȘȤȖȭ selectItem() ȒȜșȔțȎ țȎȗȠȖ Ȑ ȖțȐȓțȠȎȞȓ ȥȓȞȓ ȝȎȦȘȖ ȏșȜȘ ȖșȖ ȝȞȓȒȚȓȠ ȖȚȭ ȘȜȠȜȞȜȑȜ ȟȜȜȠȐȓȠȟȠȐȡȓȠ ȟȠȞȜ Șȓ ȝȓȞȓȒȎȐȎȓȚȜȗ ȝȎȞȎȚȓȠȞȜȚ name ȢȡțȘȤȖȖ ȂȡțȘȤȖȭ Ȑ ȟȠȞȜȘȓ ȜȏȨȭȐșȭȓȠ șȜȘȎșȪțȡȬ ȝȓȞȓȚȓțțȡȬ ȟ ȖȚȓțȓȚ item.

138

DZǹǮǰǮ


ȋȠȎ șȜȘȎșȪțȎȭ ȝȓȞȓȚȓțțȎȭ ȟȡȧȓȟȠȐȡȓȠ ȠȜșȪȘȜ ȐțȡȠȞȖ ȢȡțȘȤȖȖ selectItem() Ȗ țȓ ȚȜȔȓȠ ȏȩȠȪ ȖȟȝȜșȪȕȜȐȎțȎ Ȑ ȘȎȘȜȚ șȖȏȜ ȒȞȡȑȜȚ ȚȓȟȠȓ ȘȜȒȎ ȝȞȜȑȞȎȚȚȩ hare 7. function selectItem(name) ɩɪɨɜɟɪɤɚ ɜɫɟɯ ɹɱɟɟɤ ɢɧɜɟɧɬɚɪɹ 9. local item

Ȁȩ ȡȔȓ ȐȟȠȞȓȥȎșȟȭ ȟ ȘșȬȥȓȐȩȚ ȟșȜȐȜȚ local Ȑ ȞȎȕȒȓșȓ «ǹȜȑȖȥȓȟȘȖȓ ȠȖȝȩ ȒȎțțȩȣª ȑșȎȐȩ țȜ Ƞȩ ȓȧȓ țȓ ȕțȎ ȓȦȪ Ȝȏ ȜȏșȎȟȠȖ ȐȖȒȖȚȜȟȠȖ. ǼȏșȎȟȠȪ ȐȖȒȖȚȜȟȠȖ ² ȫȠȜ ȥȎȟȠȪ ȝȞȜȑȞȎȚȚȩ Ȑ ȘȜȠȜȞȜȗ ȚȜȔȓȠ ȖȟȝȜșȪȕȜȐȎȠȪȟȭ ȝȓȞȓȚȓțțȎȭ ǰ ȭȕȩȘȓ /XD ȝȞȓȒȡȟȚȜȠȞȓțȜ ȒȐȎ ȠȖȝȎ ȜȏșȎȟȠȖ ȐȖȒȖȚȜȟȠȖ ȝȓȞȓȚȓțțȩȣ ȑșȜȏȎșȪțȎȭ Ȗ șȜȘȎșȪțȎȭ ǽȓȞȓȚȓț ț ȩȓ Ȝȏ Ȩ ȭ Ȑșȓț ț ȩȓ Ȑ ȑșȜȏȎ ș ȪțȜȗ ȜȏșȎȟ Ƞ Ȗ ȐȖȒȖȚȜȟȠȖ ȟȡȧȓȟȠȐȡȬȠ Ȑțȓ ȘȎȘȜȗ șȖȏȜ ȢȡțȘȤȖȖ Ȗ ȒȜȟȠȡȝ țȩ ȐȜ Ȑȟȓȣ ȥȎȟȠȭȣ ȝȞȜȑȞȎȚȚȩ ȋȠȜ ȚȜȔȓȠ ȐȩȕȐȎȠȪ ȝȞȜȏșȓ Țȩ ȓȟșȖ Ƞȩ ȏȡȒȓȦȪ țȓȜȟȚȜȠȞȖȠȓșȪțȜ ȖȟȝȜșȪȕȜȐȎȠȪ ȖȚȭ ȠȎ ȘȜȗ ȝȓȞȓȚȓțțȜȗ ȝȜȠȜȚȡ ȥȠȜ ȟ ȜȒțȜȗ ȟȠȜȞȜțȩ ȝȞȜȑȞȎȚȚȎ ȏȡȒȓȠ ȝȜȚțȖȠȪ ȕțȎȥȓțȖȓ ȫȠȜȗ ȝȓȞȓȚȓțțȜȗ ȝȞȖȟȐȜȓțțȜȓ ȓȗ Ȑ ȒȞȡȑȜȚ ȚȓȟȠȓ ȟ ȒȞȡȑȜȗ ȟȠȜȞȜțȩ ȏȡȒȓȠ ȝȜȕȐȜșȭȠȪ șȬȏȩȚ ȢȡțȘȤȖȭȚ ȝȓȞȓȕȎȝȖȟȩȐȎȠȪ Ȑ ȫȠȡ ȝȓȞȓȚȓțțȡȬ țȜȐȩȓ ȕțȎȥȓ țȖȭ ȅȠȜȏȩ ȠȎȘȖȣ ȝȞȜȏșȓȚ țȓ ȐȜȕțȖȘȎșȜ ȚȜȔțȜ ȟȜȕȒȎȐȎȠȪ ȝȓȞȓȚȓțțȩȓ Ȑ șȜȘȎșȪțȜȗ ȜȏșȎȟȠȖ ȐȖȒȖȚȜȟȠȖ ȀȎȘȖȓ ȝȓȞȓ Țȓțțȩȓ ȟȜȕȒȎȬȠȟȭ ȘȎȔȒȩȗ ȞȎȕ ȝȞȖ ȜȏȞȎȧȓțȖȖ Ș ȢȡțȘȤȖȖ ǸȜȑȒȎ ȝȓȞȓȚȓțțȎȭ ȜȏȨȭȐșȭȓȠȟȭ șȜȘȎșȪțȜ ȜțȎ ȟȡȧȓȟȠȐȡȓȠ ȠȜșȪȘȜ ȐțȡȠȞȖ ȢȡțȘȤȖȖ Ȗ ȝȓȞȓȟȠȎȓȠ ȟȡȧȓȟȠȐȜȐȎȠȪ ȝȜȟșȓ ȓȓ ȕȎȐȓȞȦȓțȖȭ ǶȟȝȜșȪȕȡȭ șȜȘȎșȪțȩȓ ȝȓȞȓȚȓțțȩȓ ȚȜȔțȜ ȖȟȝȜșȪȕȜȐȎȠȪ țȓȟȘȜșȪȘȜ ȝȓȞȓȚȓțțȩȣ ȟ ȜȒȖțȎȘȜȐȩȚ ȖȚȓțȓȚ ȓȟșȖ ȜțȖ ȏȡ ȒȡȠ ȟȡȧȓȟȠȐȜȐȎȠȪ Ȑ ȞȎȕțȩȣ ȜȏșȎȟȠȭȣ ȐȖȒȖȚȜȟȠȖ ǽȜȟȘȜșȪȘȡ Ȑ ȏȡȒȡȧȓȚ Ƞȩ ȒȜȏȎȐȖȦȪ Ȑ ȚȜȒȡșȪ hare ȏȜșȪȦȓ ȢȡțȘȤȖȗ Țȩ ȜȏȨȭȐȖȚ ȝȓȞȓȚȓțțȡȬ item șȜȘȎșȪțȜ ȠȜșȪȘȜ Ȓșȭ ȢȡțȘȤȖȖ selectItem() DzȎȔȓ ȓȟșȖ Ƞȓȏȓ ȝȜțȎȒȜȏȖȠȟȭ ȝȓȞȓȚȓțțȎȭ Ș ȘȜȠȜȞȜȗ ȚȜȔțȜ ȝȜșȡȥȖȠȪ ȒȜȟȠȡȝ Ȑ ȝȞȜȟȠȞȎțȟȠȐȓ Ȑȟȓȗ ȝȞȜ ȑȞȎȚȚȩ Ȑȟȓ ȞȎȐțȜ șȡȥȦȓ ȜȏȨȭȐșȭȠȪ ȝȓȞȓȚȓțțȩȓ șȜȘȎșȪțȜ Ȑ ȘȎȔȒȜȗ ȢȡțȘȤȖȖ ȫȠȜ ȝȜȕȐȜșȖȠ ȖȕȏȓȔȎȠȪ ȝȞȜȏșȓȚ

ǿǼǵDzǮǻǶdz ǺǼDzȁǹdzǷ Dzǹȍ ǺǻǼDZǼǸǾǮȀǻǼDZǼ ǶǿǽǼǹȊǵǼǰǮǻǶȍ ǸǼDzǮ

139


ǽȓȞȓȚȓțțȩȓ ȖȟȝȜșȪȕȡȓȚȩȓ Ȑ ȤȖȘșȓ for ȠȎȘȖȓ ȘȎȘ ȝȓȞȓ ȚȓțțȎȭ i Ȑ ȐȩȞȎȔȓțȖȖ for i = 1, 4 do ȭȐșȭȬȠȟȭ șȜ ȘȎșȪțȩȚȖ ȝȓȞȓȚȓțțȩȚȖ Ȑ ȤȖȘșȓ for ȋȠȖ ȝȓȞȓȚȓțțȩȓ țȓ ȏȡȒȡȠ ȟȡȧȓȟȠȐȜȐȎȠȪ Ȑțȓ ȤȖȘșȎ ȠȎȘ Ȕȓ ȘȎȘ șȜȘȎșȪțȩȓ ȝȓȞȓ Țȓțțȩȓ ȢȡțȘȤȖȗ țȓ ȏȡȒȡȠ ȟȡȧȓȟȠȐȜȐȎȠȪ Ȑțȓ ȫȠȖȣ ȢȡțȘȤȖȗ

ěĚĔĝĖ ěĜđĐĘđĞČ ĝ ěĚĘĚĥĨĪ ĢĔĖėČ .7: ǽȜȟșȓ ȜȏȨȭȐșȓțȖȭ Ȑȟȓȣ ȝȓȞȓȚȓțțȩȣ Ȑ ȟȠȞȜȘȓ ȟȜȕȒȎȓȠ ȟȭ ȓȧȓ ȜȒțȎ ȝȓȞȓȚȓțțȎȭ ȟ ȖȚȓțȓȚ slot ȘȜȠȜȞȎȭ ȭȐșȭȓȠȟȭ șȜȘȎșȪțȜȗ Ȓșȭ ȤȖȘșȎ for. hare 10. for slot = 1, 16 do 11. item = turtle.getItemDetail(slot) 12. if item ~= nil and item['name'] == name then 13. turtle.select(slot) 14. return true 15. end 16. end 17. UHWXUQ IDOVH ɛɥɨɤ ɧɟ ɧɚɣɞɟɧ 19. end

ǽȓȞȓȚȓțțȎȭ slot Ȑ ȐȩȞȎȔȓțȖȖ for slot = 1, 16 do țȓ ȏȡȒȓȠ ȟȡȧȓȟȠȐȜȐȎȠȪ ȝȜȟșȓ ȕȎȐȓȞȦȓțȖȭ ȤȖȘșȎ Ƞ ȓ ȝȜȟșȓ Ȑȩ ȝȜșțȓțȖȭ ȖțȟȠȞȡȘȤȖȖ end ȄȖȘș for ȝȓȞȓȏȖȞȎȓȠ Ȑȟȓ țȜȚȓ ȞȎ ȭȥȓȓȘ ȜȠ ȒȜ ǰțȡȠȞȖ ȤȖȘșȎ Ȑ ȟȠȞȜȘȓ ȝȓȞȓȚȓțțȜȗ item ȝȞȖȟȐȎȖȐȎȓȠȟȭ ȠȎȏșȖȥțȜȓ ȕțȎȥȓțȖȓ ȐȜȕȐȞȎȧȎȓȚȜȓ ȢȡțȘȤȖȓȗ turtle.getItemDetail(slot) ǸȜȒ Ȑ ȟȠȞȜȘȓ ȝȞȜȐȓȞȭȓȠ ȥȠȜ ȕțȎȥȓțȖȓ ȝȓȞȓȚȓțțȜȗ item țȓ ȞȎȐțȜ nil Ȏ ȠȎȘȔȓ ȝȞȜȐȓȞȭȓȠ ȟȜȐȝȎȒȎȓȠ șȖ ȖȚȭ ȝȞȓȒȚȓȠȎ ȏșȜȘȎ ȟ ȝȎȞȎ ȚȓȠȞȜȚ name ǿȜȐȝȎȒȓțȖȓ ȜȕțȎȥȎȓȠ țȎȣȜȔȒȓțȖȓ ȖȟȘȜȚȜȑȜ ȫșȓȚȓțȠȎ ǿȠȞȜȘȎ ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ true ȠȎȘȖȚ Ȝȏ ȞȎȕȜȚ ȟȜȜȏȧȎȭ ȝȞȜȑȞȎȚȚȓ ȥȠȜ ȢȡțȘȤȖȭ selectItem() Ȑȩ ȒȓșȖșȎ ȭȥȓȗȘȡ ȟ ȖȟȘȜȚȩȚ ȝȞȓȒȚȓȠȜȚ ȏșȜȘȜȚ ǶțȟȠȞȡȘȤȖȭ end Ȑ ȟȠȞȜȘȓ ȕȎȐȓȞȦȎȓȠ ȘȜțȟȠȞȡȘȤȖȬ if Ȏ ȖțȟȠȞȡȘȤȖȭ end Ȑ ȟȠȞȜȘȓ ȕȎȐȓȞȦȎȓȠ ȐȓȟȪ ȤȖȘș dzȟșȖ

140

DZǹǮǰǮ


ȖȟȝȜșțȓțȖȓ ȟȜȐȓȞȦȖșȜ Ȑȟȓ ȖȠȓȞȎȤȖȖ ȤȖȘșȎ for Ȗ țȓ ȜȏțȎ ȞȡȔȖșȜ ȝȞȓȒȚȓȠ ȏșȜȘ ȟ ȟȜȜȠȐȓȠȟȠȐȡȬȧȖȚ ȖȚȓțȓȚ ȢȡțȘ ȤȖȭ ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ false ȘȜȒ Ȑ ȟȠȞȜȘȓ ǻȎȘȜțȓȤ ȖțȟȠȞȡȘȤȖȭ end Ȑ ȟȠȞȜȘȓ ȕȎȐȓȞȦȎȓȠ ȢȡțȘȤȖȬ

ĎħčĚĜ ěğĝĞĚĕ īģđĕĖĔ ĔęĎđęĞČĜī ȂȡțȘȤȖȭ selectEmptySlot() ȝȩȠȎȓȠȟȭ țȎȗȠȖ ȝȡȟȠȡȬ ȭȥȓȗ Șȡ Ȑ ȖțȐȓțȠȎȞȓ ǰȟȠȞȓȠȖȐ ȝȓȞȐȡȬ ȝȡȟȠȡȬ ȭȥȓȗȘȡ ȢȡțȘȤȖȭ ȐȩȏȖȞȎȓȠ ȓȓ ȝȞȖ ȝȜȚȜȧȖ ȐȩȕȜȐȎ turtle.select() Ȗ ȐȜȕȐȞȎ ȧȎȓȠ ȕțȎȥȓțȖȓ true dzȟșȖ ȖțȐȓțȠȎȞȪ ȥȓȞȓȝȎȦȘȖ ȝȜșțȜ ȟȠȪȬ ȕȎȝȜșțȓț ȢȡțȘȤȖȭ ȐȓȞțȓȠ ȕțȎȥȓțȖȓ false ǸȎȘ Ȗ selectItem() ȢȡțȘȤȖȭ selectEmptySlot() ȟȜȒȓȞȔȖȠ ȤȖȘș for ȘȜȠȜȞȩȗ ȝȞȜȐȓȞȭȓȠ ȭȥȓȗȘȖ ȟ ȝȜ ȄȖȘș for Ȑ ȫȠȜȗ ȢȡțȘȤȖȖ ȠȎȘȔȓ ȜȏȨȭȐșȭȓȠ ȝȓȞȓȚȓțțȡȬ slot Ȑ ȟȠȞȜȘȓ ȋȠȜ ȐȜȕȚȜȔțȜ ȝȜȟȘȜșȪȘȡ ȫȠȎ ȝȓȞȓȚȓțțȎȭ slot Ȗ ȝȓȞȓȚȓț țȎȭ slot ȜȏȨȭȐșȓțțȎȭ Ȑ ȟȠȞȜȘȓ ȟȡȧȓȟȠȐȡȬȠ Ȑ ȞȎȕțȩȣ șȜȘȎșȪțȩȣ ȜȏșȎȟȠȭȣ ȐȖȒȖȚȜȟȠȖ hare 25. function selectEmptySlot() 26 ɩɟɪɟɛɢɪɚɧɢɟ ɜɫɟɯ ɹɱɟɟɤ 28. for slot = 1, 16 do 29. if turtle.getItemCount(slot) == 0 then 30. turtle.select(slot) 31. return true 32. end 33. end UHWXUQ IDOVH ɫɜɨɛɨɞɧɨɝɨ ɦɟɫɬɚ ɧɟɬ 35. end

ǰțȡȠȞȖ ȤȖȘșȎ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȐȩȕȩȐȎȓȠ ȢȡțȘȤȖȬ turtle. getItemCount() ȥȠȜȏȩ ȝȞȜȐȓȞȖȠȪ ȞȎȐțȜ șȖ țȡșȬ ȘȜșȖȥȓȟȠȐȜ ȝȞȓȒȚȓȠȜȐ ȏșȜȘȜȐ Ȑ ȝȞȜȐȓȞȭȓȚȜȗ ȭȥȓȗȘȓ ǸȜȑȒȎ ȘȜȒ Ȑ ȟȠȞȜȘȓ țȎȣȜȒȖȠ ȝȓȞȐȡȬ ȝȡȟȠȡȬ ȭȥȓȗȘȡ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȐȩȏȖȞȎȓȠ ȫȠȡ ȭȥȓȗȘȡ Ȏ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ true. dzȟșȖ ȐȩȝȜșțȓțȩ Ȑȟȓ ȖȠȓȞȎȤȖȖ ȤȖȘșȎ for Ȏ ȟȐȜȏȜȒțȎȭ ȭȥȓȗȘȎ țȓ ȜȏțȎȞȡȔȓțȎ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓ țȖȓ false.

ǿǼǵDzǮǻǶdz ǺǼDzȁǹdzǷ Dzǹȍ ǺǻǼDZǼǸǾǮȀǻǼDZǼ ǶǿǽǼǹȊǵǼǰǮǻǶȍ ǸǼDzǮ

141


ĐĚěĚėęĔĞđėĨęĚđ ēČĐČęĔđ" ĘĚĐğėĨ ĞČęĢđĎČėĨęħġ ĐĎĔĒđęĔĕ

Попробуй создать новый модуль танцевальных движений, которые сможет выполнять черепашка. Ты можешь написать функции для выполнения прыжков, переворотов и лунной походки (движение задом).

ģĞĚ Ęħ ğēęČėĔ ǰ ȫȠȜȗ ȑșȎȐȓ Ƞȩ ȡȕțȎș ȘȎȘ ȟȜȕȒȎȐȎȠȪ ȚȜȒȡșȖ Ȗ ȟȐȜȖ ȟȜȏ ȟȠȐȓțțȩȓ ȢȡțȘȤȖȖ ȝȞȖ ȝȜȚȜȧȖ ȖțȟȠȞȡȘȤȖȖ function. ȂȡțȘȤȖȖ ȚȜȑȡȠ ȖȚȓȠȪ ȐȣȜȒțȩȓ ȒȎțțȩȓ ȖșȖ ȝȎȞȎȚȓȠȞȩ ȘȜ ȠȜȞȩȓ ȝȓȞȓȒȎȬȠȟȭ Ȑ ȘȎȥȓȟȠȐȓ ȎȞȑȡȚȓțȠȜȐ ȂȡțȘȤȖȖ ȠȎȘȔȓ ȚȜȑȡȠ ȐȜȕȐȞȎȧȎȠȪ ȕțȎȥȓțȖȓ ȝȞȜȑȞȎȚȚȓ ȘȜȠȜȞȎȭ ȓȓ ȐȩȕȐȎșȎ ǽȞȖ ȘȎȔȒȜȚ ȐȩȕȜȐȓ ȢȡțȘȤȖȖ ȟȜȕȒȎȓȠȟȭ țȜȐȎȭ șȜȘȎșȪ țȎȭ ȜȏșȎȟȠȪ ȐȖȒȖȚȜȟȠȖ ǸȜȑȒȎ ȢȡțȘȤȖȭ ȕȎȐȓȞȦȎȓȠȟȭ ȫȠȎ ȜȏșȎȟȠȪ ȐȖȒȖȚȜȟȠȖ ȝȓȞȓȟȠȎȓȠ ȟȡȧȓȟȠȐȜȐȎȠȪ ȐȚȓȟȠȓ ȟȜ Ȑȟȓ ȚȖ ȝȓȞȓȚȓțțȩȚȖ Ȑ țȓȗ ȋȠȜ ȕțȎȥȖȠ ȥȠȜ ȝȓȞȓȚȓțțȩȓ ȚȜȑȡȠ ȖȚȓȠȪ ȜȒțȜ Ȗ ȠȜ Ȕȓ ȖȚȭ ȓȟșȖ ȜțȖ ȜȏȨȭȐșȭȬȠȟȭ Ȑ ȞȎȕțȩȣ ȜȏșȎȟȠȭȣ ȐȖȒȖȚȜȟȠȖ ǽȓȞȓȚȓțțȎȭ ȤȖȘșȎ for ȠȎȘȔȓ ȟȡȧȓ ȟȠȐȡȬȠ ȠȜșȪȘȜ Ȑ ȟȐȜȓȗ șȜȘȎșȪțȜȗ ȜȏșȎȟȠȖ ȐȖȒȖȚȜȟȠȖ Ȑțȡ ȠȞȖ ȤȖȘșȎ ȂȡțȘȤȖȖ ȠȐȜȓȑȜ ȚȜȒȡșȭ hare ȐȩȕȩȐȎȬȠ ȒȞȡȑȖȓ ȢȡțȘȤȖȖ &RPSXWHU&UDIW: turtle.select() turtle.getItemDetail() Ȗ turtle.getItemCount(). Ȁȩ ȚȜȔȓȦȪ ȞȎȕȚȓȧȎȠȪ ȢȡțȘȤȖȖ ȘȜȠȜȞȩȓ ȝȖȦȓȦȪ Ȑțȡ ȠȞȖ ȚȜȒȡșȓȗ ȥȠȜȏȩ ȒȞȡȑȖȓ ȝȞȜȑȞȎȚȚȩ ȚȜȑșȖ Ȗȣ ȖȟȝȜșȪȕȜ ȐȎȠȪ ǿȜȕȒȎțȖȓ ȟȜȏȟȠȐȓțțȩȣ ȢȡțȘȤȖȗ Ȗ ȚȜȒȡșȓȗ ² ȫȠȜ Țȓ ȠȜȒ ȝȞȜȑȞȎȚȚȖȞȜȐȎțȖȭ ȘȜȠȜȞȩȗ ȝȜȕȐȜșȭȓȠ ȞȎȕȞȎȏȎȠȩȐȎȠȪ ȏȜșȓȓ ȟșȜȔțȩȓ ȝȞȜȑȞȎȚȚȩ ǰ ȑșȎȐȓ Ƞȩ ȏȡȒȓȦȪ ȖȟȝȜșȪȕȜ ȐȎȠȪ ȚȜȒȡșȪ hare ȝȞȖ ȟȜȕȒȎțȖȖ șȓȟȜȢȓȞȚȩ țȎ ȘȜȠȜȞȜȗ Ȑȩ ȞȎȧȓțțȩȓ ȒȓȞȓȐȪȭ ȏȡȒȡȠ ȐȩȞȡȏȎȠȪȟȭ ȥȓȞȓȝȎȦȘȎȚȖ Ȑ ȎȐȠȜ ȚȎȠȖȥȓȟȘȜȚ ȞȓȔȖȚȓ


8 ēČěğĝĖ ČĎĞĚĘČĞĔēĔĜĚĎČęęĚĕ ėđĝĚĠđĜĘħ ǰ ȑșȎȐȓ Țȩ ȕȎȝȞȜȑȞȎȚȚȖȞȜȐȎșȖ ȥȓȞȓȝȎȦ Șȡ țȎ ȞȡȏȘȡ ȒȓȞȓȐȪȓȐ țȜ ȝȓȞȓȒ ȕȎȝȡȟȘȜȚ ȝȞȜȑȞȎȚȚȩ ȖȑȞȜȘȡ ȝȞȖȣȜȒȖșȜȟȪ ȐȞȡ ȥțȡȬ ȟȠȎȐȖȠȪ ȥȓȞȓȝȎȦȘȡ ȝȓȞȓȒ ȘȎȔȒȩȚ ȒȓȞȓȐȜȚ ȁȟȠȎțȜȐȘȎ ȥȓȞȓȝȎȦȘȖ ȝȓȞȓȒ ȘȎȔȒȩȚ ȒȓȞȓȐȜȚ ȘȜȠȜȞȜȓ Ƞȩ ȣȜȥȓȦȪ ȟȞȡȏȖȠȪ țȓ țȎȚțȜȑȜ ȫȢȢȓȘ ȠȖȐțȓȓ ȥȓȚ ȞȡȏȖȠȪ ȒȓȞȓȐȪȭ ȐȞȡȥțȡȬ ǻȜ ȞȡȥțȜȗ ȠȞȡȒ ȚȜȔțȜ ȖȟȘșȬȥȖȠȪ Ȗ ȝȜșțȜȟȠȪȬ ȎȐȠȜȚȎȠȖȕȖȞȜȐȎȠȪ ȐȓȟȪ ȝȞȜȤȓȟȟ ȝȞȜȖȕȐȜȒȟȠȐȎ ȒȞȓȐȓȟȖțȩ Ȏ ȕȎȜȒțȜ ȕȎȝȞȜȑȞȎȚȚȖ ȞȜȐȎȠȪ ȥȓȞȓȝȎȦȘȡ țȎ ȝȜȟȎȒȘȡ ȟȎȔȓțȤȓȐ Ȗ ȐȩȞȎȧȖȐȎțȖȓ ȒȓȞȓȐȪȓȐ ȀȎȘȎȭ ȥȓȞȓȝȎȦȘȎ ȏȡȒȓȠ ȐȩȟȎȔȖȐȎȠȪ ȟȎȔȓțȓȤ ȟȞȡȏȎȠȪ ȒȓȞȓȐȜ ȘȜȑȒȎ ȜțȜ ȐȩȞȎȟȠȓȠ Ȗ ȟȎȔȎȠȪ țȜȐȩȗ ȟȎȔȓ țȓȤ ǰȓȟȪ ȫȠȜȠ ȝȞȜȤȓȟȟ ȜțȎ ȒȜșȔțȎ ȝȜȐȠȜȞȭȠȪ ȏȓȕ ȘȎȘȜȑȜ șȖȏȜ ȐȚȓȦȎȠȓșȪȟȠȐȎ ȟȜ ȟȠȜȞȜțȩ ȥȓșȜȐȓȘȎ ȅȠȜȏȩ ȟȒȓșȎȠȪ ȫȠȜ Țȩ țȎȝȖȦȓȚ ȝȞȜȑȞȎȚȚȡ ȝȜȒ țȎȕȐȎțȖȓȚ farmtrees. ȀȜȑȒȎ Ƞȩ ȟȚȜȔȓȦȪ țȎȟȠȞȜȖȠȪ țȓȟȘȜșȪȘȜ ȥȓȞȓȝȎȦȓȘ țȎ Ȑȩ ȞȎȧȖȐȎțȖȓ șȓȟȎ Ȗ ȕȎȑȜȠȜȐȘȡ ȒȞȓȐȓȟȖțȩ ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ Ǻȩ ȐȜȕȪȚȓȚ ȚȜȒȡșȪ hare Ȗȕ ȑșȎȐȩ ȥȠȜȏȩ ȝȜȐȠȜȞțȜ ȖȟȝȜșȪȕȜȐȎȠȪ ȡȔȓ țȎȝȖȟȎțțȩȗ ȘȜȒ Ȗ ȝȞȜȑȞȎȚȚȡ choptree

ǵǮǽȁǿǸ ǮǰȀǼǺǮȀǶǵǶǾǼǰǮǻǻǼǷ ǹdzǿǼȂdzǾǺȉ

143


Ȗȕ ȑșȎȐȩ ȀȎȘ ȡ țȎȟ țȓ ȏȡȒȓȠ țȓȜȏȣȜȒȖȚȜȟȠȖ ȝȓȞȓȝȖȟȩ ȐȎȠȪ ȐȓȟȪ ȫȠȜȠ ȘȜȒ

ˀ̛̭͘ ϴ͘ϭ͘ ʤ̨̨̛̛̯̥̯̬̦̏̌̏̌̚​̦̌́ ̴̨̣̖̭̖̬̥͕̌ ̨̛̭̣̱̙̖̥̍̏̌̌́ ̸̡̛̖̬̖̪̹̥̌̌ ̨̪̔ ̛̱̪̬̣̖̦̖̥̌̏ ̨̪̬̬̥̐̌​̥̼ farmtrees

ěĜĚđĖĞĔĜĚĎČęĔđ ěĜĚďĜČĘĘħ ėđĝĚĠđĜĘħ ǶȕȏȎȐȖȚȟȭ ȜȠ țȓȜȏȣȜȒȖȚȜȟȠȖ ȟȠȎȐȖȠȪ ȥȓȞȓȝȎȦȘȡ ȝȓȞȓȒ ȘȎȔ ȒȩȚ ȒȓȞȓȐȜȚ ǼȟȠȎȐȖȚ ȓȓ țȎ ȜȒțȜȚ ȚȓȟȠȓ Ȗ ȕȎȝȞȜȑȞȎȚȚȖȞȡ ȓȚ ȟȎȚȜȟȠȜȭȠȓșȪțȜ ȟȎȔȎȠȪ Ȗ ȐȩȞȎȧȖȐȎȠȪ ȟȎȔȓțȤȩ Ȏ ȠȎȘȔȓ ȖȟȝȜșȪȕȜȐȎȠȪ ȘȜȟȠțȡȬ ȚȡȘȡ ȥȠȜȏȩ ȡȟȘȜȞȖȠȪ Ȗȣ ȞȜȟȠ ǵȎȠȓȚ ȘȎȘ ȠȜșȪȘȜ ȟȎȔȓțȓȤ ȝȞȓȐȞȎȠȖȠȟȭ Ȑ ȒȓȞȓȐȜ ȥȓȞȓȝȎȦȘȎ ȟȞȡȏȖȠ ȓȑȜ Ȗ ȝȜȚȓȟȠȖȠ ȕȎȑȜȠȜȐșȓțțȡȬ ȒȞȓȐȓȟȖțȡ Ȑ ȟȡțȒȡȘ ǰȜȠ țȓȟȘȜșȪȘȜ ȦȎȑȜȐ ȘȜȠȜȞȩȓ ȒȜșȔțȎ ȐȩȝȜșțȭȠȪ ȝȞȜ ȑȞȎȚȚȎ șȓȟȜȕȎȑȜȠȜȐȘȖ 1. ȁȏȓȒȖȠȪȟȭ ȥȠȜ ȚȜȒȡșȪ hare Ȗ ȝȞȜȑȞȎȚȚȎ choptree ȟȡȧȓȟȠȐȡȬȠ 2. ǰȩȏȞȎȠȪ ȟȎȔȓțȤȩ ȒȓȞȓȐȪȓȐ Ȑ ȖțȐȓțȠȎȞȓ ȥȓȞȓȝȎȦȘȖ ǵȎȘȞȩȠȪ ȝȞȜȑȞȎȚȚȡ ȓȟșȖ ȟȎȔȓțȤȓȐ țȓȠ 3. ǽȜȟȎȒȖȠȪ ȟȎȔȓțȓȤ 4. ǽȜȟȎȔȓțțȩȗ ȟȎȔȓțȓȤ ȝȓȞȖȜȒȖȥȓȟȘȖ ȡȒȜȏȞȭȠȪ ȘȜȟȠțȜȗ ȚȡȘȜȗ ȝȜȘȎ Ȝț țȓ ȐȩȞȎȟȠȓȠ 5. ǵȎȝȡȟȠȖȠȪ ȝȞȜȑȞȎȚȚȡ choptree.

144

DZǹǮǰǮ


6. ǽȜȚȓȟȠȖȠȪ ȟȜȏȞȎțțȡȬ ȒȞȓȐȓȟȖțȡ Ȑ ȟȡțȒȡȘ 7. ǽȜȐȠȜȞȖȠȪ ȐȓȟȪ ȝȞȜȤȓȟȟ ȅȓȞȓȝȎȦȘȎ ȏȡȒȓȠ ȝȜȐȠȜȞȭȠȪ ȐȓȟȪ ȝȞȜȤȓȟȟ ȒȜ Ƞȓȣ ȝȜȞ ȝȜȘȎ țȓ ȕȎȘȜțȥȎȠȟȭ ȟȎȔȓțȤȩ ȒȓȞȓȐȪȓȐ ȖșȖ ȘȜȟȠțȎȭ ȚȡȘȎ ȀȓȝȓȞȪ ȘȜȑȒȎ Țȩ ȕțȎȓȚ ȥȠȜ ȒȜșȔȓț ȒȓșȎȠȪ ȘȜȒ ȒȎȐȎȗ țȎȝȖȦȓȚ ȓȑȜ

ĖĚĐ ěĜĚďĜČĘĘħ .):5<:--; ǰ ȜȏȜșȜȥȘȓ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ȕȎȝȡȟȠȖ ȠȓȘȟȠȜȐȩȗ ȞȓȒȎȘ ȠȜȞ ȐȩȝȜșțȖȐ ȘȜȚȎțȒȡ edit far mtrees. ǰ ȠȓȘȟȠȜȐȜȚ ȞȓȒȎȘȠȜȞȓ ȐȐȓȒȖ ȝȜȘȎȕȎțțȩȓ țȖȔȓ ȟȠȞȜȘȖ ȘȜȒȎ ǽȜȚțȖ ȥȠȜ țȜȚȓȞȎ ȟȠȞȜȘ ȡȘȎȕȩȐȎȠȪ țȓ țȡȔțȜ ǰ ȘțȖȑȓ ȜțȖ Ȓșȭ ȡȒȜȏȟȠȐȎ ȥȠȜȏȩ ȚȜȔțȜ ȏȩșȜ ȜȏȞȎȧȎȠȪȟȭ Ș ȟȠȞȜȘȎȚ ȝȜ Ȗȣ țȜȚȓȞȎȚ. farmtrees 1. --[[ɉɪɨɝɪɚɦɦɚ ɥɟɫɨɮɟɪɦɵ ɗɥɚ ɋɜɟɣɝɚɪɬɚ 2. ȼɵɪɚɳɢɜɚɧɢɟ ɢ ɪɭɛɤɚ ɞɟɪɟɜɶɟɜ.]] 3. 4. os.loadAPI('hare') -- ɡɚɝɪɭɡɤɚ ɦɨɞɭɥɹ hare 5. 6. local blockExists, item 7. local logCount = 0 8. 9. -- ɩɪɨɜɟɪɤɚ ɫɭɳɟɫɬɜɨɜɚɧɢɹ ɩɪɨɝɪɚɦɦɵ choptree 10. if not fs.exists('choptree') then HUURU <RX PXVW LQVWDOO FKRSWUHH SURJUDP ¿UVW

12. end 13. 14. while true do 15. -- ɩɪɨɜɟɪɤɚ ɧɚɥɢɱɢɹ ɫɚɠɟɧɰɟɜ ɜ ɢɧɜɟɧɬɚɪɟ 16. if not hare.selectItem('minecraft:sapling') then 17. error('Out of saplings.') 18. end 19. 20. print('Planting...') 21. turtle.place() -- ɜɵɫɚɞɤɚ ɫɚɠɟɧɰɚ 22.

ǵǮǽȁǿǸ ǮǰȀǼǺǮȀǶǵǶǾǼǰǮǻǻǼǷ ǹdzǿǼȂdzǾǺȉ

145


23. 24. 25. 26.

-- ɰɢɤɼɢɹɧɨÉ&#x; ÉœɾɊɨɼɧÉ&#x;ɧɢÉ&#x; ɊɨɤÉš ÉžÉ&#x;ÉŞÉ&#x;Éœɨ ɪɚɍɏÉ&#x;ÉŹ while true do blockExists, item = turtle.inspect() if blockExists and item['name'] == 'minecraft:sapling' then -- ÂŤdyeÂť - ɢÉžÉ&#x;ɧɏɢɎɢɤÉšɏɨɪ ɤɨɍɏɧɨɣ Ɍɭɤɢ if not hare.selectItem('minecraft:dye') then error('Out of bone meal.') end

27. 28. 29. 30. 31. 32. print('Using bone meal...') 33. turtle.place() -- ɢɍɊɨɼɜɥɨɜɚɧɢÉ&#x; ɤɨɍɏɧɨɣ Ɍɭɤɢ 34. else 35. break -- ÉžÉ&#x;ÉŞÉ&#x;Éœɨ Éœɾɪɨɍɼɨ 36. end 37. end 38. 39. hare.selectEmptySlot() 40. shell.run('choptree') -- ÉĄÉšɊɭɍɤ ɊɪɨÉ?ɪɚɌɌɾ choptree 41. 42. -- ÉŠÉ&#x;ÉŞÉ&#x;ÉŚÉ&#x;ÉłÉ&#x;ɧɢÉ&#x; ɢ ɊɨÉœɨɪɨɏ ɤ ɍɭɧÉžɭɤɭ 43. turtle.back() 44. turtle.turnLeft() 45. turtle.turnLeft() 46. 47. -- ɊɨɌÉ&#x;ÉłÉ&#x;ɧɢÉ&#x; ɞɪÉ&#x;ÉœÉ&#x;ɍɢɧɾ Éœ ɍɭɧÉžɭɤ 48. while hare.selectItem('minecraft:log') do 49. logCount = logCount + turtle.getItem Count() 50. print('Total logs: ' .. logCount) 51. turtle.drop() 52. end 53. 54. -- ÉœɨɥÉœÉŞÉšÉłÉ&#x;ɧɢÉ&#x; ɤ ÉŚÉ&#x;ÉŤÉŹÉ­ Éœɾɍɚɞɤɢ ÉŤÉšÉ É&#x;ɧɰÉš 55. turtle.turnLeft() 56. turtle.turnLeft() 57. end

ÇżČœČŁČžČŽČ›Č– Č?ČžČœČ‘ČžČŽČšČšČĄ Č?ČœČ&#x;șȓ Č?Č?ČœČ’ČŽ Č?Č&#x;Č“ČŁ Č–Č›Č&#x;Č ČžČĄČ˜ȤČ–Č— ǝȎ ȔȎČ? Č˜Č™ČŽČ?Č–ČŚČĄ Ctrl ČœČ Č˜ČžČœČ— Țȓțȏ Ç°ČŠČ?ȓȞȖ Č?ČĄČ›Č˜Č [Save] Č– țȎȔȚȖ Č˜Č™ČŽČ?Č–ČŚČĄ Enter ÇľČŽČ Č“Čš Č?ČŠČ—Č’Č– Č–Č• ČžČ“Č’ČŽČ˜Č ČœČžČŽ țȎ ȔȎČ? Č˜Č™ČŽČ?Č–ČŚČĄ Ctrl Č?ČŠČ?ȞȎČ? Č?ČĄČ›Č˜Č [Exit] Č– țȎȔȎČ? Č˜Č™ČŽČ?Č– ČŚČĄ Enter.

146

ǹǚǎǰǎ


ēČěğĝĖ ěĜĚďĜČĘĘħ .):5<:--; ǽȓȞȓȒ ȕȎȝȡȟȘȜȚ ȝȞȜȑȞȎȚȚȩ farmtrees țȡȔțȜ ȐȩȝȜșțȖȠȪ țȓȏȜșȪȦȡȬ ȝȜȒȑȜȠȜȐȘȡ ǰȜ ȝȓȞȐȩȣ ȡȏȓȒȖȟȪ ȥȠȜ ȟȡțȒȡȘ țȎ ȣȜȒȖȠȟȭ ȝȞȭȚȜ ȕȎ ȥȓȞȓȝȎȦȘȜȗ Ȏ Ȑ ȖțȐȓțȠȎȞȓ ȥȓȞȓȝȎȦȘȖ ȓȟȠȪ ȟȎȔȓțȤȩ Ȗ ȘȜȟȠțȎȭ ȚȡȘȎ ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ

ˀ̛̭͘ ϴ͘Ϯ͘ ˄̨̛̭̯̦̌̏ ̡̭̱̦̱̔ ̨̛̪̌̔̚ ̸̡̛̖̬̖̪̹͕̌ ̌ ̶̭̙̖̦̼̌ ̛ ̡̨̭̯̦̱̀ ̡̥̱̱ ̨̨̛̪̣̙ ̏ ̖​̖ ̛̦̖̦̯̬̏̌̽

ǸȜȟȠțȡȬ ȚȡȘȡ ȚȜȔțȜ ȖȕȑȜȠȜȐȖȠȪ Ȗȕ ȘȜȟȠȓȗ ȘȜȠȜȞȩȓ Ȑȩ ȝȎȒȎȬȠ Ȗȕ ȡȏȖȠȩȣ ȟȘȓșȓȠȜȐ Dzșȭ ȖȕȑȜȠȜȐșȓțȖȭ ȘȜȟȠțȜȗ Țȡ ȘȖ ȖȟȝȜșȪȕȡȗ ȞȓȤȓȝȠ ȝȜȘȎȕȎțțȩȗ țȎ ȞȖȟ

ˀ̛̭͘ ϴ͘ϯ͘ ˁ̨̛̦̖̔̌̚ ̵̯̬̖ ̸̡̡̱̖ ̡̨̨̭̯̦̜ ̡̛̥̱ ̛̚ ̨̨̦̜̔ ̡̨̛̭̯

ǰȜ ȐȠȜȞȩȣ ȡȏȓȒȖȟȪ ȥȠȜ Ƞȩ ȜȟȠȎȐȖș ȜȒțȡ ȭȥȓȗȘȡ ȖțȐȓț ȠȎȞȭ ȝȡȟȠȜȗ ȠȎȘ ȘȎȘ Ȑ țȓȗ ȏȡȒȓȠ ȟȜȣȞȎțȭȠȪȟȭ ȒȞȓȐȓȟȖțȎ ȘȜȠȜȞȡȬ ȐȩȞȡȏȖȠ ȥȓȞȓȝȎȦȘȎ ǸȜȑȒȎ ȕȎȘȜțȥȖȦȪ Ȑȟȓ ȝȞȖȑȜȠȜȐșȓțȖȭ ȕȎȝȡȟȠȖ ȝȞȜȑȞȎȚ Țȡ farmtrees Ȁȩ ȒȜșȔȓț ȡȐȖȒȓȠȪ ȘȎȘ ȥȓȞȓȝȎȦȘȎ ȟȎȔȎȓȠ ȟȎȔȓțȓȤ Ȏ ȕȎȠȓȚ ȘȜȑȒȎ Ȝț ȐȩȞȎȟȠȎȓȠ Ȑ ȒȓȞȓȐȜ ȟȞȡȏȎȓȠ ȓȑȜ ǽȜȠȜȚ ȥȓȞȓȝȎȦȘȎ ȐȓȞțȓȠȟȭ țȎ ȕȓȚșȬ Ȗ ȝȜȒȜȗȒȓȠ Ș ȟȡțȒȡȘȡ

ǵǮǽȁǿǸ ǮǰȀǼǺǮȀǶǵǶǾǼǰǮǻǻǼǷ ǹdzǿǼȂdzǾǺȉ

147


ȥȠȜȏȩ ȐȩȑȞȡȕȖȠȪ Ȑ țȓȑȜ ȒȜȏȩȠȡȬ ȒȞȓȐȓȟȖțȡ ǽȜȟșȓ ȞȎȕȑȞȡȕ ȘȖ ȥȓȞȓȝȎȦȘȎ ȞȎȕȐȓȞțȓȠȟȭ Ȑ ȖȟȣȜȒțȜȓ ȝȜșȜȔȓțȖȓ Ȗ ȝȜȐȠȜ ȞȖȠ ȐȓȟȪ ȝȞȜȤȓȟȟ ȕȎțȜȐȜ dzȟșȖ ȝȞȖ ȕȎȝȡȟȘȓ ȝȞȜȑȞȎȚȚȩ ȐȜȕțȖȘȎȬȠ ȜȦȖȏȘȖ ȠȧȎ ȠȓșȪțȜ ȟȞȎȐțȖ ȟȐȜȗ ȘȜȒ ȟ șȖȟȠȖțȑȜȚ Ȑ ȫȠȜȗ ȘțȖȑȓ ȥȠȜ ȏȩ țȎȗȠȖ ȐȜȕȚȜȔțȩȓ ȜȝȓȥȎȠȘȖ dzȟșȖ ȝȞȜȑȞȎȚȚȡ ȖȟȝȞȎ ȐȖȠȪ țȓ ȡȒȎȓȠȟȭ ȡȒȎșȖ ȢȎȗș ȐȩȝȜșțȖȐ ȘȜȚȎțȒȡ delete farmtrees Ȏ ȕȎȠȓȚ ȕȎȑȞȡȕȖ ȘȜȞȞȓȘȠțȩȗ ȘȜȒ Ȗȕ ǶțȠȓȞțȓ ȠȎ ȐȩȝȜșțȖȐ ȘȜȚȎțȒȡ pastebin get v5h8AgGs farmtrees.

ĞĔěħ ĐđĜđĎĨđĎ Ď 516-+:).< ǰ 0LQHFUDIW ȞȎȟȠȡȠ ȒȓȞȓȐȪȭ ȟȎȚȩȣ ȞȎȕțȜȜȏȞȎȕțȩȣ ȠȖȝȜȐ ȘȎȔȒȜȓ Ȗȕ ȘȜȠȜȞȩȣ ȖȚȓȓȠ ȟȐȜȗ ȟȜȏȟȠȐȓțțȩȗ ȟȎȔȓțȓȤ ǼȒțȖ ȒȓȞȓȐȪȭ ȝȞȖ ȖȟȝȜșȪȕȜȐȎțȖȖ ȝȞȜȑȞȎȚȚȩ farmtrees ȝȜȒȣȜ ȒȭȠ șȡȥȦȓ ȒȞȡȑȖȓ ² ȣȡȔȓ ȅȓȞȓȝȎȦȘȎ ȏȡȒȓȠ ȐȩȞȡȏȎȠȪ Ȓȓ ȞȓȐȜ ȒȐȖȑȎȭȟȪ ȝȜ ȟȠȐȜșȡ ȝȞȭȚȜ ȐȐȓȞȣ ǿșȓȒȜȐȎȠȓșȪțȜ ȓȟșȖ ȒȓȞȓȐȜ ȐȓȠȐȖȟȠȜȓ ȥȓȞȓȝȎȦȘȎ ȏȡȒȓȠ ȜȏȞȎȏȎȠȩȐȎȠȪ ȓȑȜ ȒȜ ȐȜșȪțȜ ȚȓȒșȓțțȜ ȐȓȒȪ ȓȗ ȝȞȖȒȓȠȟȭ ȝȓȞȓȒȐȖȑȎȠȪȟȭ ȝȜ ȐȟȓȚȡ ȟȠȐȜșȡ ǽȜȫȠȜȚȡ Ȓșȭ ȕȎȑȜȠȜȐȘȖ țȎȖȏȜșȓȓ ȡȒȜȏțȩ ȒȓȞȓȐȪȭ ȟ ȐȩȟȜȘȖȚȖ ȡȕȘȖȚȖ ȟȠȐȜșȎȚȖ ȠȎȘȖȓ ȘȎȘ Ȓȡȏ ȓșȪ ȏȓȞȓȕȎ Ȗ ȠȞȜȝȖȥȓȟȘȖȓ ȒȓȞȓȐȪȭ ȝȜȘȎȕȎțțȩȓ țȎ ȞȖȟ ǮȘȎȤȖȭ ȟșȖȦȘȜȚ ȐȓȠȐȖȟȠȎ Ȏ ȘȎȔȒȩȗ ȟȎȔȓțȓȤ ȠȓȚțȜȑȜ ȒȡȏȎ ȟșȓȒȡ ȓȠ ȟȎȔȎȠȪ țȎ ȝȞȜȟȠȞȎțȟȠȐȓ ð ȏșȜȘȎ ȠȜ ȓȟȠȪ ȝȜȠȞȓȏȡȓȠȟȭ ȟșȖȦȘȜȚ ȚțȜȑȜ ȚȓȟȠȎ Ȓșȭ ȐȩȞȎȧȖȐȎțȖȭ

ˀ̛̭͘ ϴ͘ϰ͘ ˁ̣̖̏̌ ̨̦̪̬̌̌̏͗ ̱͕̔̍ ̖̣͕̽ ̖̬̖̍̌̚ ̛ ̸̨̡̨̛̯̬̪̖̭̖ ̨̖̬̖̔̏

148

DZǹǮǰǮ


ǽȞȖ ȐȩȕȜȐȓ ȢȡțȘȤȖȖ h a r e.s e le c tIte m() Ȑ ȟȠȞȜ Ș ȓ ȡ Ȑ ȟ ȓ ȣ ȟ Ȏ Ȕ ȓ ț Ȥ ȓ Ȑ ȏȡ Ȓ ȓ Ƞ Ȝ Ȓ ț Ȝ Ȗ Ƞ Ȝ Ȕ ȓ Ȗ Ț ȭ ² 'minecraft:sapling'6 ȝȜȫȠȜȚȡ ȡȏȓȒȖȟȪ ȥȠȜ ȫȠȜ Ȓȡȏ ȓșȪ ȏȓȞȓȕȎ ȖșȖ ȠȞȜȝȖȥȓȟȘȜȓ ȒȓȞȓȐȜ ȘȜȑȒȎ ȏȡȒȓȦȪ ȝȜȚȓȧȎȠȪ ȟȎ ȔȓțȤȩ Ȑ ȖțȐȓțȠȎȞȪ ȥȓȞȓȝȎȦȘȖ

ēČďĜğēĖČ ģČęĖĚĎ Ď 516-+:).< ǰ ȝȞȜȑȞȎȚȚȓ farmtrees Ƞȓȏȓ țȓ țȡȔțȜ ȘȜțȠȞȜșȖȞȜȐȎȠȪ ȞȎ ȏȜȠȡ ȥȓȞȓȝȎȦȘȖ țȜ Ȑȟȓ Ȕȓ ȜȠȣȜȒȖȠȪ ȜȠ țȓȓ ȟșȖȦȘȜȚ ȒȎșȓȘȜ ȠȜȔȓ țȓ ȟȠȜȖȠ ȋȠȜ ȟȐȭȕȎțȜ ȟ ȜȟȜȏȓțțȜȟȠȭȚȖ ȑȓțȓȞȎȤȖȖ ȚȖ ȞȎ 0LQHFUDIW ȂȎȘȠȖȥȓȟȘȖ ȚȖȞ ȏȓȟȘȜțȓȥȓț ȝȜȠȜȚȡ ȥȠȜ țȜȐȩȓ ȥȎȟȠȖ ȚȖȞȎ ȑȓțȓȞȖȞȡȬȠȟȭ ȠȎȚ ȑȒȓ țȎȣȜȒȖȦȪȟȭ Ƞȩ ǼȒțȎȘȜ ȝȜȟȘȜșȪȘȡ Ȓșȭ ȕȎȑȞȡȕȘȖ ȐȟȓȑȜ ȚȖȞȎ ȠȞȓȏȡȓȠȟȭ ȟșȖȦȘȜȚ ȚțȜ ȑȜ ȝȎȚȭȠȖ ȖȑȞȎ 0LQHFUDIW ȕȎȑȞȡȔȎȓȠ ȠȜșȪȘȜ Ƞȓ ȜȏșȎȟȠȖ Ȑ ȘȜȠȜȞȩȣ țȎȣȜȒȖȠȟȭ ȖȑȞȜȘ ǺȖȞ 0LQHFUDIW ȞȎȕȒȓșȓț țȎ ȕȜțȩ Ȑ ȏșȜȘȜȐ Ȑ ȒșȖțȡ Ȗ ȏșȜȘȜȐ Ȑ ȦȖȞȖțȡ 7 ȘȜȠȜȞȩȓ țȎȕȩ ȐȎȬȠȟȭ ȥȎțȘȎȚȖ Ȗ ȘȜȠȜȞȩȓ ȝȜȒȑȞȡȔȎȬȠȟȭ Ȑ ȖȑȞȜȐȜȗ ȚȖȞ ȝȜ ȚȓȞȓ ȝȓȞȓȚȓȧȓțȖȭ ȖȑȞȜȘȎ ǽȞȖ ȝȡȠȓȦȓȟȠȐȖȖ ȖȑȞȜȘȎ ȝȜ ȚȖ Ȟȡ țȜȐȩȓ ȥȎțȘȖ ȕȎȑȞȡȔȎȬȠȟȭ Ȑ ȜȝȓȞȎȠȖȐțȡȬ ȝȎȚȭȠȪ ȘȜȚ ȝȪȬȠȓȞȎ Ȏ ȥȎțȘȖ ȜȠ ȘȜȠȜȞȩȣ Ȝț ȡȒȎșȭȓȠȟȭ ȐȩȑȞȡȔȎȬȠȟȭ ȋȠȜȠ ȚȜȚȓțȠ țȓȜȏȣȜȒȖȚȜ ȡȥȖȠȩȐȎȠȪ ȝȞȖ ȞȎȏȜȠȓ ȟ ȥȓȞȓ ȝȎȦȘȎȚȖ ȝȜȠȜȚȡ ȥȠȜ ȜțȖ ȚȜȑȡȠ ȏȩȠȪ ȐȩȑȞȡȔȓțȩ ȐȚȓȟȠȓ ȟ ȥȎțȘȎȚȖ Ȑ ȘȜȠȜȞȩȣ ȜțȖ țȎȣȜȒȭȠȟȭ ǻȎȝȞȖȚȓȞ țȎ ȚȜȓȚ ȘȜȚȝȪȬȠȓȞȓ ȥȓȞȓȝȎȦȘȖ ȐȩȑȞȡȔȎȬȠȟȭ ȓȟșȖ ȭ ȡȒȎșȭȬȟȪ ȜȠ țȖȣ țȎ ȞȎȟȟȠȜȭțȖȓ Ȑ ² ȏșȜȘȜȐ Ǯ ȓȟșȖ țȎ ȟȐȜȓȚ ȘȜȚ ȝȪȬȠȓȞȓ Ƞȩ ȡȚȓțȪȦȖș ȕțȎȥȓțȖȓ ȝȎȞȎȚȓȠȞȎ DzȎșȪțȜȟȠȪ ȝȞȜȞȖȟȜȐȘȖ (5HQGHU 'LVWDQFH ȓȑȜ ȚȜȔțȜ țȎȗȠȖ Ȑ ȞȎȕȒȓ șȓ ǻȎȟȠȞȜȗȘȖ ȑȞȎȢȖȘȖ (9LGHR 6HWWLQJV

ȥȓȞȓȝȎȦȘȖ ȏȡ ȒȡȠ ȐȩȑȞȡȔȎȠȪȟȭ ȓȧȓ ȞȎțȪȦȓ ȀȎȘȖȚ ȜȏȞȎȕȜȚ ȓȟșȖ Ƞȩ ȟȜȕȒȎȦȪ Ȗ ȞȎȕȚȓȟȠȖȦȪ țȓȟȘȜșȪȘȜ ȥȓȞȓȝȎȦȓȘ ȢȓȞȚȓȞȜȐ Ȗ ȡȗȒȓȦȪ ȜȠ țȖȣ ȟșȖȦȘȜȚ ȒȎșȓȘȜ ȜțȖ ȝȓȞȓȟȠȎțȡȠ ȞȎȏȜȠȎȠȪ ǽȜȫȠȜȚȡ șȡȥȦȓ ȒȓȞȔȎȠȪ ȝȜȒ ȝȞȖȟȚȜȠȞȜȚ ȞȎȏȜȠȎȬȧȖȣ ȥȓ ȞȓȝȎȦȓȘ Ȗ ȞȎȕȚȓȧȎȠȪ Ȗȣ ȘȎȘ ȚȜȔțȜ ȏșȖȔȓ ȒȞȡȑ Ș ȒȞȡȑȡ ȀȓȝȓȞȪ ȘȜȑȒȎ Ƞȩ ȕțȎȓȦȪ ȜȟȜȏȓțțȜȟȠȖ ȑȓțȓȞȎȤȖȖ ȚȖȞȎ 0LQHFUDIW ȒȎȐȎȗ ȝȜȒȞȜȏțȓȓ ȞȎȟȟȚȜȠȞȖȚ ȝȞȜȑȞȎȚȚȡ farmtrees. 6 7

С версии 1.13 разные (прим. перев.) И 256 блоков в глубину (прим. перев.) ǵǮǽȁǿǸ ǮǰȀǼǺǮȀǶǵǶǾǼǰǮǻǻǼǷ ǹdzǿǼȂdzǾǺȉ

149


ēČďĜğēĖČ ĘĚĐğėđĕ ĝ ěĚĘĚĥĨĪ ĠğęĖĢĔĔ 7; 47),)81 ǽȜȟșȓ ȘȜȚȚȓțȠȎȞȖȓȐ ȜȝȖȟȩȐȎȬȧȖȣ ȝȞȜȑȞȎȚȚȡ Ȑ ȟȠȞȜȘȎȣ Ȗ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȕȎȑȞȡȔȎȓȠ ȚȜȒȡșȪ hare ȘȜȠȜȞȩȗ Ƞȩ ȟȜȕȒȎș Ȑ ȑșȎȐȓ farmtrees 1. --[[ɉɪɨɝɪɚɦɦɚ ɥɟɫɨɮɟɪɦɵ ɗɥɚ ɋɜɟɣɝɚɪɬɚ 2. ȼɵɪɚɳɢɜɚɧɢɟ ɢ ɪɭɛɤɚ ɞɟɪɟɜɶɟɜ.]] 3. 4. os.loadAPI('hare') -- ɡɚɝɪɭɡɤɚ ɦɨɞɭɥɹ hare 5. 6. local blockExists, item 7. local logCount = 0

ȅȠȜȏȩ ȝȞȜȑȞȎȚȚȎ ȚȜȑșȎ ȐȩȕȩȐȎȠȪ ȢȡțȘȤȖȖ h a r e. selectEmptySlot() Ȗ hare.selectItem() ȘȜȠȜȞȩȓ ȏȩ șȖ ȜȝȖȟȎțȩ Ȑ ȑșȎȐȓ ȟțȎȥȎșȎ țȡȔțȜ ȐȩȕȐȎȠȪ ȢȡțȘȤȖȬ os.loadAPI() Ȗ ȝȓȞȓȒȎȠȪ ȓȗ ȟȠȞȜȘȡ 'hare' ȥȠȜȏȩ ȕȎȑȞȡȕȖȠȪ ȫȠȜȠ ȚȜȒȡșȪ ǰ ȟȠȞȜȘȎȣ Ȗ ȜȏȨȭȐșȭȬȠȟȭ ȝȓȞȓȚȓțțȩȓ ȘȜȠȜȞȩȓ ȡȝȞȜ ȧȎȬȠ ȝȜȖȟȘ ǽȎȞȎȚȓȠȞȩ blockExists Ȗ item ȟȜȣȞȎțȭȬȠ ȕțȎȥȓțȖȭ ȘȜȠȜȞȩȓ ȟȜȜȏȧȎȠ ȥȓȞȓȝȎȦȘȓ ȐȩȞȜȟ șȖ ȝȜȟȎȔȓț țȩȗ ȟȎȔȓțȓȤ Ȑ ȒȓȞȓȐȜ ǽȓȞȓȚȓțțȎȭ logCount ȜȠȟșȓȔȖȐȎȓȠ ȜȏȨȓȚȩ ȡȞȜȔȎȭ ȝȞȖ ȝȓȞȐȜȚ ȕȎȝȡȟȘȓ ȝȞȜȑȞȎȚȚȩ ȓȓ ȕțȎȥȓ țȖȓ ȞȎȐțȜ 0.

ěĜĚĎđĜĖČ ĠČĕėĚĎ ĝ ěĚĘĚĥĨĪ ĠğęĖĢĔĔ .; -@1;<; ǽȞȓȔȒȓ ȥȓȚ ȥȓȞȓȝȎȦȘȎ țȎȥțȓȠ ȐȩȞȎȧȖȐȎȠȪ ȒȓȞȓȐȪȭ ȜțȎ ȒȜșȔțȎ ȝȞȜȐȓȞȖȠȪ ȥȠȜ ȝȞȜȑȞȎȚȚȎ choptree ȟȡȧȓȟȠȐȡȓȠ ǶțȎȥȓ ȓȟșȖ ȥȓȞȓȝȎȦȘȎ ȝȜȝȩȠȎȓȠȟȭ ȕȎȝȡȟȠȖȠȪ ȝȞȜȑȞȎȚȚȡ farmtrees Ƞȩ ȡȐȖȒȖȦȪ ȟȜȜȏȧȓțȖȓ Ȝȏ ȜȦȖȏȘȓ farmtrees 9. -- ɩɪɨɜɟɪɤɚ ɫɭɳɟɫɬɜɨɜɚɧɢɹ ɩɪɨɝɪɚɦɦɵ choptree 10. if not fs.exists('choptree') then

150

DZǹǮǰǮ


HUURU <RX PXVW LQVWDOO FKRSWUHH SURJUDP ¿UVW

12. end

ǻȎșȖȥȖȓ ȝȞȜȑȞȎȚȚȩ choptree ȚȜȔțȜ ȝȞȜȐȓȞȖȠȪ ȟ ȝȜȚȜ ȧȪȬ ȢȡțȘȤȖȖ fs.exists() ȘȜȠȜȞȎȭ ȝȞȖțȖȚȎȓȠ ȖȚȭ ȢȎȗ șȎ Ȗ ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ true ȓȟșȖ ȢȎȗș ȟ ȫȠȖȚ ȖȚȓțȓȚ ȟȡȧȓȟȠȐȡȓȠ Ȗ false ² ȓȟșȖ țȓȠ dzȟșȖ ȝȞȜȑȞȎȚȚȎ choptree țȓ ȟȡȧȓȟȠȐȡȓȠ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȕȎȐȓȞȦȎȓȠ ȞȎȏȜȠȡ ȝȞȜȑȞȎȚ Țȩ Ȗ ȜȠȜȏȞȎȔȎȓȠ ȟȜȜȏȧȓțȖȓ Ȝȏ ȜȦȖȏȘȓ 'You must install choptree program ¿UVW.'.

ĎħčĚĜ ĝČĒđęĢđĎ Ď ĔęĎđęĞČĜđ ģđĜđěČĤĖĔ ǸȜȒ Ȑ ȟȠȞȜȘȓ țȎȥȖțȎȓȠ ȤȖȘș while ȘȜȠȜȞȩȗ ȟȎȔȎȓȠ Ȓȓ ȞȓȐȪȭ Ȗ ȟȜȏȖȞȎȓȠ ȒȞȓȐȓȟȖțȡ ǸȎȔȒȩȗ ȞȎȕ ȘȜȑȒȎ ȝȞȜȑȞȎȚȚȎ ȕȎȘȎțȥȖȐȎȓȠ ȐȩȞȡȏȘȡ ȐȩȞȜȟȦȓȑȜ ȒȓȞȓȐȎ ȜțȎ ȐȜȕȐȞȎȧȎȓȠ ȟȭ Ș ȟȠȞȜȘȓ ȥȠȜȏȩ ȝȜȐȠȜȞȖȠȪ ȝȞȜȤȓȟȟ ǽȜȟȘȜșȪȘȡ ȡȟșȜ ȐȖȓ ȤȖȘșȎ while ȐȟȓȑȒȎ ȖȟȠȖțțȜ ȫȠȜ ȏȓȟȘȜțȓȥțȩȗ ȤȖȘș ȖȟȝȜșțȓțȖȓ ȘȜȠȜȞȜȑȜ țȓ ȝȞȓȘȞȎȠȖȠȟȭ ȒȜ Ƞȓȣ ȝȜȞ ȝȜȘȎ ȝȞȜ ȑȞȎȚȚȎ țȓ ȕȎȐȓȞȦȖȠȟȭ ȐȩȕȜȐȜȚ ȢȡțȘȤȖȖ error() ȖșȖ Ȗț ȟȠȞȡȘȤȖȖ break() ȒȓȗȟȠȐȖȓ ȘȜȠȜȞȜȗ ȭ ȜȏȨȭȟțȬ Ȑ ȞȎȕȒȓșȓ ©ǽȞȓȞȩȐȎțȖȓ ȤȖȘșȎ ȟ ȝȜȚȜȧȪȬ ȖțȟȠȞȡȘȤȖȖ breakª ȒȎșȓȓ Ȑ ȫȠȜȗ ȑșȎȐȓ ǰțȡȠȞȖ ȤȖȘșȎ while ȝȞȜȑȞȎȚȚȎ ȟțȎȥȎșȎ ȝȞȜȐȓȞȭȓȠ țȎ șȖȥȖȓ ȟȎȔȓțȤȓȐ Ȑ ȖțȐȓțȠȎȞȓ ȥȓȞȓȝȎȦȘȖ farmtrees 14. while true do 15. -- ɩɪɨɜɟɪɤɚ ɧɚɥɢɱɢɹ ɫɚɠɟɧɰɟɜ ɜ ɢɧɜɟɧɬɚɪɟ 16. if not hare.selectItem('minecraft:sapling') then 17. error('Out of saplings.') 18. end

ǰ ȟȠȞȜȘȓ ȖȟȝȜșȪȕȡȓȠȟȭ ȢȡțȘȤȖȭ selectItem() ȚȜȒȡ șȭ hare Ȓșȭ ȐȩȏȜȞȎ ȭȥȓȗȘȖ ȟȜȒȓȞȔȎȧȓȗ ȟȎȔȓțȤȩ dzȟșȖ Ȑ ȖțȐȓțȠȎȞȓ ȥȓȞȓȝȎȦȘȖ ȟȎȔȓțȤȓȐ țȓȠ ȢȡțȘȤȖȭ ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ false ǰ ȫȠȜȚ ȟșȡȥȎȓ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȕȎȐȓȞȦȎȓȠ ȝȞȜȑȞȎȚȚȡ ȐȩȕȩȐȎȭ ȢȡțȘȤȖȬ error() Ȗ ȜȠȜȏȞȎȔȎȭ ȟȜȜȏ ȧȓțȖȓ 'Out of saplings.'.

ǵǮǽȁǿǸ ǮǰȀǼǺǮȀǶǵǶǾǼǰǮǻǻǼǷ ǹdzǿǼȂdzǾǺȉ

151


ěĚĝČĐĖČ ĐđĜđĎČ dzȟșȖ ȝȞȜȐȓȞȘȎ țȎ țȎșȖȥȖȓ ȟȎȔȓțȤȓȐ ȝȞȜȗȒȓțȎ ȡȟȝȓȦțȜ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȜȠȜȏȞȎȔȎȓȠ ȟȜȜȏȧȓțȖȓ Ȝ ȠȜȚ ȥȓȞȓȝȎȦȘȎ ȟȜ ȏȖȞȎȓȠȟȭ ȝȜȟȎȒȖȠȪ ȟȎȔȓțȓȤ ('Planting...' ǸȜȒ Ȑ ȟȠȞȜȘȓ ȐȩȕȩȐȎȓȠ ȢȡțȘȤȖȬ turtle.place() ȘȜȠȜȞȎȭ ȝȞȜȖȕȐȜ ȒȖȠ ȐȩȟȎȒȘȡ farmtrees 20. print('Planting...') 21. turtle.place() -- ɜɵɫɚɞɤɚ ɫɚɠɟɧɰɚ

ȂȡțȘȤȖȭ turtle.place() ȝȜȚȓȧȎȓȠ ȏșȜȘ Ȗȕ ȠȓȘȡȧȓȗ ȭȥȓȗȘȖ ȖțȐȓțȠȎȞȭ ȝȓȞȓȒ ȥȓȞȓȝȎȦȘȜȗ ȋȠȎ ȢȡțȘȤȖȭ ȝȞȖȚȓ țȖȚȎ Ȓșȭ ȟȎȔȓțȤȓȐ ȒȜȟȜȘ ȘȎȚȓțțȩȣ ȘȖȞȝȖȥȓȗ ȖșȖ șȬȏȩȣ ȒȞȡȑȖȣ ȏșȜȘȜȐ ȘȜȠȜȞȩȓ ȖȑȞȜȘ ȕȎȣȜȥȓȠ ȞȎȕȚȓȟȠȖȠȪ Ȑ ȚȖȞȓ 0LQHFUDIW ǻȎȝȜȚțȬ ȥȠȜ Ȑ ȟȠȞȜȘȓ ȐȩȏȞȎțȎ ȭȥȓȗȘȎ Ȗț ȐȓțȠȎȞȭ ȟ ȟȎȔȓțȤȎȚȖ ȝȜȫȠȜȚȡ ȢȡțȘȤȖȭ turtle.place() ȐȩȟȎȔȖȐȎȓȠ ȟȎȔȓțȓȤ ǻȎ ȞȖȟ ȝȜȘȎȕȎț ȟȎȔȓțȓȤ ȝȜȟșȓ ȠȜ ȑȜ ȘȎȘ Ȝț ȏȩș ȝȜȟȎȔȓț ȥȓȞȓȝȎȦȘȜȗ

ˀ̛̭͘ ϴ͘ϱ͘ ˁ̶̙̖̦̖͕̌ ̨̪̭̙̖̦̌​̦̼̜ ̸̡̨̖̬̖̪̹̜̌

ǽȞȖȚȓȥȎțȖȓ dzȟșȖ ȝȜțȎȒȜȏȖȠȟȭ Ƞȩ ȠȎȘȔȓ ȚȜȔȓȦȪ Ȗȟ ȝȜșȪȕȜȐȎȠȪ ȢȡțȘȤȖȖ turtle.placeUp() Ȗ turtle.placeDown() Ȓșȭ ȞȎȕȚȓȧȓțȖȭ ȏșȜȘȜȐ ȐȩȦȓ Ȗ țȖȔȓ ȥȓȞȓȝȎȦȘȖ ȋȠȖ ȢȡțȘȤȖȖ ȐȜȕȐȞȎȧȎȬȠ ȕțȎȥȓțȖȓ true ȓȟșȖ ȡȟȠȎțȜȐȘȎ ȏșȜȘȎ ȝȞȜȖȕȜȦșȎ ȡȟȝȓȦțȜ dzȟșȖ ȥȠȜ ȠȜ ȚȓȦȎȓȠ ȞȎȕȚȓȧȓ-

152

DZǹǮǰǮ


țȖȬ ȏșȜȘȎ țȎȝȞȖȚȓȞ ȒȞȡȑȜȗ ȏșȜȘ ȫȠȖ ȢȡțȘȤȖȖ ȐȜȕȐȞȎȧȎȬȠ ȕțȎȥȓțȖȓ false.

ěĜĚĎđĜĖČ čėĚĖĚĎ Ĕ ĚĒĔĐČęĔđ ĜĚĝĞČ ĐđĜđĎĨđĎ ǽȜȟșȓ ȝȜȟȎȒȘȖ ȟȎȔȓțȤȎ ȖȟȝȜșțȓțȖȓ ȝȓȞȓȣȜȒȖȠ Ȑ ȒȞȡȑȜȗ ȤȖȘș while ȘȜȠȜȞȩȗ ȐșȜȔȓț ȐțȡȠȞȪ ȝȞȓȒȩȒȡȧȓȑȜ țȎȥȎȐ ȦȓȑȜȟȭ Ȑ ȟȠȞȜȘȓ ȋȠȜȠ ȐțȡȠȞȓțțȖȗ ȤȖȘș while țȎȥȖțȎȓȠ ȟȭ Ȑ ȟȠȞȜȘȓ ǿ ȝȜȚȜȧȪȬ țȓȑȜ ȝȞȜȑȞȎȚȚȎ ȝȞȜȐȓȞȭȓȠ ȏșȜȘ ȟȠȜȭȧȖȗ ȝȓȞȓȒ ȥȓȞȓȝȎȦȘȜȗ ȖȟȝȜșȪȕȡȭ ȢȡțȘȤȖȬ turtle. inspect() ȘȜȠȜȞȎȭ ȝȜȣȜȔȎ țȎ turtle.detect() ȕȎ ȖȟȘșȬ ȥȓțȖȓȚ ȠȜȑȜ ȥȠȜ ȢȡțȘȤȖȭ turtle.detect() ȐȜȕȐȞȎȧȎȓȠ ȠȜșȪȘȜ ȕțȎȥȓțȖȓ true ȖșȖ false ȓȟșȖ ȝȞȖȟȡȠȟȠȐȡȓȠ ȏșȜȘ ȠȜȑȒȎ ȘȎȘ ȢȡțȘȤȖȭ turtle.inspect() ȐȜȕȐȞȎȧȎȓȠ ȠȎȏșȖȥ țȜȓ ȕțȎȥȓțȖȓ ȟȜ ȟȐȓȒȓțȖȭȚȖ Ȝ ȠȜȚ ȘȎȘȜȗ ȏșȜȘ țȎȣȜȒȖȠȟȭ ȝȓȞȓȒ ȥȓȞȓȝȎȦȘȜȗ farmtrees 23. -- ɰɢɤɥɢɱɧɨɟ ɜɵɩɨɥɧɟɧɢɟ ɩɨɤɚ ɞɟɪɟɜɨ ɪɚɫɬɟɬ 24. while true do 25. blockExists, item = turtle.inspect()

ȂȡțȘȤȖȭ turtle.inspect() ȐȜȕȐȞȎȧȎȓȠ ȒȐȎ ȕțȎȥȓțȖȭ ȘȜȠȜȞȩȓ ȣȞȎțȭȠȟȭ Ȑ ȝȓȞȓȚȓțțȩȣ blockExists Ȗ item ȜȏȨ ȭȐșȓțțȩȣ Ȑ țȎȥȎșȓ ȝȞȜȑȞȎȚȚȩ ǽȓȞȐȜȓ ȐȜȕȐȞȎȧȎȓȚȜȓ ȕțȎ ȥȓțȖȓ ȣȞȎțȭȧȓȓȟȭ Ȑ ȝȓȞȓȚȓțțȜȗ blockExists ȭȐșȭȓȠȟȭ șȜȑȖȥȓȟȘȖȚ ȕțȎȥȓțȖȓȚ true ȓȟșȖ ȏșȜȘ țȎȣȜȒȖȠȟȭ ȝȓȞȓȒ ȥȓ ȞȓȝȎȦȘȜȗ ȖșȖ false ² ȓȟșȖ ȏșȜȘȎ țȓȠ ǰȠȜȞȜȓ ȐȜȕȐȞȎȧȎȓȚȜȓ ȕțȎȥȓțȖȓ ȣȞȎțȭȧȓȓȟȭ Ȑ ȝȓȞȓȚȓțțȜȗ item ² ȫȠȜ ȠȎȏșȖȥțȜȓ ȕțȎȥȓțȖȓ ȟ ȖțȢȜȞȚȎȤȖȓȗ Ȝ ȏșȜȘȓ dzȟșȖ ȝȓȞȓȒ ȥȓȞȓȝȎȦȘȜȗ țȓȠ ȏșȜȘȎ ȐȠȜȞȜȓ ȐȜȕȐȞȎȧȎȓȚȜȓ ȕțȎȥȓțȖȓ ȏȡȒȓȠ ȞȎȐțȜ nil. ǵȎȝȡȟȠȖȐ ȢȡțȘȤȖȬ turtle.inspect() Ȑ ȜȏȜșȜȥȘȓ /XD ȚȜȔțȜ ȝȜșȡȥȖȠȪ ȖȚȭ șȬȏȜȑȜ ȏșȜȘȎ ȓȟșȖ Ȝț ȞȎȟȝȜșȜȔȓț ȝȞȭȚȜ ȝȓȞȓȒ ȥȓȞȓȝȎȦȘȜȗ ǻȎȝȞȖȚȓȞ ȓȟșȖ ȝȓȞȓȒ ȥȓȞȓȝȎȦ ȘȜȗ țȎȣȜȒȖȠȟȭ ȟȎȔȓțȓȤ ȠȜ ȝȞȖ ȕȎȝȡȟȘȓ ȫȠȜȗ ȘȜȚȎțȒȩ Ƞȩ ȡȐȖȒȖȦȪ ȟșȓȒȡȬȧȓȓ lua> turtle.inspect() true

ǵǮǽȁǿǸ ǮǰȀǼǺǮȀǶǵǶǾǼǰǮǻǻǼǷ ǹdzǿǼȂdzǾǺȉ

153


{ state = { type = «oak», stage = 0, }, name = «minecraft:sapling», metadata = 0, }

ǶțȟȠȞȡȘȤȖȭ if Ȑ ȟȠȞȜȘȓ ȝȞȜȐȓȞȭȓȠ țȎȣȜȒȖȠȟȭ șȖ ȝȓ ȞȓȒ ȥȓȞȓȝȎȦȘȜȗ ȏșȜȘ Ȗ ȭȐșȭȓȠȟȭ șȖ Ȝț ȟȎȔȓțȤȓȚ dzȟșȖ ȫȠȜ ȠȎȘ ȠȜ ȘȜȒ Ȑ ȟȠȞȜȘȎȣ ² ȏȡȒȓȠ țȓȜȒțȜȘȞȎȠțȜ ȡȒȜȏȞȭȠȪ ȓȑȜ ȘȜȟȠțȜȗ ȚȡȘȜȗ ȥȠȜȏȩ ȡȟȘȜȞȖȠȪ ȞȜȟȠ ȟȎȔȓțȤȎ farmtrees 26. if blockExists and item['name'] == 'minecraft:sapling' then 27. -- «dye» - ɢɞɟɧɬɢɮɢɤɚɬɨɪ ɤɨɫɬɧɨɣ ɦɭɤɢ 28. if not hare.selectItem('minecraft:dye') then 29. error('Out of bone meal.') 30. end

ǸȜȒ Ȑ ȟȠȞȜȘȓ ȝȞȜȐȓȞȭȓȠ țȎșȖȥȖȓ ȘȜȟȠțȜȗ ȚȡȘȖ Ȑ Ȗț ȐȓțȠȎȞȓ ȥȓȞȓȝȎȦȘȖ ǶȒȓțȠȖȢȖȘȎȠȜȞ ȘȜȟȠțȜȗ ȚȡȘȖ Ȑ ȖȑȞȓ 0LQHFUDIW ² 'minecraft:dye'8 ǽȜȒȜȏțȜ ȠȜȚȡ ȘȎȘ ȟȎȔȓț Ȥȩ ȞȎȕțȩȣ ȒȓȞȓȐȪȓȐ ȖȚȓȬȠ ȜȒȖț Ȗ ȠȜȠ Ȕȓ ȖȒȓțȠȖȢȖȘȎȠȜȞ 'minecraft:sapling' ȞȎȕțȩȓ ȘȞȎȟȖȠȓșȖ ȘȜȟȠțȎȭ ȚȡȘȎ ȜȠ țȜȟȖȠȟȭ Ș ȏȓșȩȚ ȘȞȎȟȖȠȓșȭȚ ȠȎȘȔȓ ȖȚȓȬȠ ȜȒȖț Ȗ ȠȜȠ Ȕȓ ȖȒȓțȠȖȢȖȘȎȠȜȞ dzȟșȖ Ȑ ȖțȐȓțȠȎȞȓ ȥȓȞȓȝȎȦȘȖ țȓȠ ȘȜȟȠțȜȗ ȚȡȘȖ ȢȡțȘ ȤȖȭ hare.selectItem('minecraft:dye') ȐȜȕȐȞȎȧȎȓȠ ȕțȎ ȥȓțȖȓ false Ȏ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȕȎȐȓȞȦȎȓȠ ȝȞȜȑȞȎȚȚȡ ȟȜȜȏ ȧȓțȖȓȚ Ȝȏ ȜȦȖȏȘȓ 'Out of bone meal.'. dzȟșȖ ȘȜȟȠțȎȭ ȚȡȘȎ Ȑ ȖțȐȓțȠȎȞȓ ȓȟȠȪ ȖȟȝȜșțȓțȖȓ ȝȞȜ ȒȜșȔȎȓȠȟȭ ȒȜ ȟȠȞȜȘȖ ȑȒȓ ȝȞȜȑȞȎȚȚȎ ȐȩȐȜȒȖȠ țȎ ȫȘȞȎț ȟȜȜȏȧȓțȖȓ Ȝ ȠȜȚ ȥȠȜ ȟȜȏȖȞȎȓȠȟȭ ȟȒȓșȎȠȪ ȥȓȞȓȝȎȦȘȎ 'Using bone meal...' Ȏ ȕȎȠȓȚ ȝȜȟȩȝȎȓȠ ȘȜȟȠțȜȗ ȚȡȘȜȗ ȟȎȔȓ țȓȤ ȘȜȠȜȞȩȗ ȞȎȟȠȓȠ ȝȓȞȓȒ ȥȓȞȓȝȎȦȘȜȗ 8

154

В версии 1.13 – 'minecraft:bone_meal' (прим. перев.)

DZǹǮǰǮ


farmtrees 32. print('Using bone meal...') 33. turtle.place() -- ɢɫɩɨɥɶɡɨɜɚɧɢɟ ɤɨɫɬɧɨɣ ɦɭɤɢ

ǶȟȝȜșțȓțȖȓ ȝȞȜȝȡȟȘȎȓȠ ȖțȟȠȞȡȘȤȖȬ else Ȑ ȟȠȞȜȘȓ ȝȜȠȜȚȡ ȥȠȜ ȓȓ ȡȟșȜȐȖȓ șȜȔțȜ Ȗ ȠȎȘ ȘȎȘ Ȑ ȤȖȘșȓ while ȏȜșȪ Ȧȓ țȓȠ ȟȠȞȜȘ ȘȜȒȎ ȖȟȝȜșțȓțȖȓ ȟțȜȐȎ ȝȓȞȓȣȜȒȖȠ Ș ȟȠȞȜȘȓ

ěĜđĜħĎČęĔđ ĢĔĖėČ ĝ ěĚĘĚĥĨĪ ĔęĝĞĜğĖĢĔĔ *:-)3 dzȟșȖ ȡȟșȜȐȖȓ Ȑ ȟȠȞȜȘȓ șȜȔțȜ Ȗ ȝȓȞȓȒ ȥȓȞȓȝȎȦȘȜȗ țȓ ȜȏțȎȞȡȔȓțȜ ȟȎȔȓțȤȎ ȖȟȝȜșțȓțȖ ȝȓȞȓȣȜȒȖȠ Ș ȟȠȞȜȘȓ Ȗ ȐȩȝȜșțȭȓȠȟȭ ȏșȜȘ ȘȜȒȎ ȝȜȟșȓ ȖțȟȠȞȡȘȤȖȖ else ǿȎȔȓțȓȤ Ȗȟȥȓȕ ȝȜȠȜȚȡ ȥȠȜ Ȝț ȝȞȓȐȞȎȠȖșȟȭ Ȑ ȒȓȞȓȐȜ Ȗ ȠȓȝȓȞȪ ȝȓȞȓȒ ȥȓȞȓȝȎȦȘȜȗ ȟȠȜȖȠ ȒȓȞȓȐȭțțȩȗ ȏșȜȘ ǼȏȞȎȏȜȠȘȎ ȖțȟȠȞȡȘ ȤȖȖ break Ȑ ȟȠȞȜȘȓ ȝȞȖȐȜȒȖȠ Ș ȠȜȚȡ ȥȠȜ ȝȞȜȑȞȎȚȚȎ ȕȎ ȐȓȞȦȎȓȠ ȤȖȘș while țȎȥȎȐȦȖȗȟȭ Ȑ ȟȠȞȜȘȓ farmtrees 34. else 35. break -- ɞɟɪɟɜɨ ɜɵɪɨɫɥɨ 36. end 37. end

ǶțȟȠȞȡȘȤȖȭ break ȟȜȟȠȜȖȠ ȠȜșȪȘȜ Ȗȕ ȘșȬȥȓȐȜȑȜ ȟșȜȐȎ break ǰȩȝȜșțȓțȖȓ ȫȠȜȗ ȖțȟȠȞȡȘȤȖȖ ȝȞȖȐȜȒȖȠ Ș ȠȜȚȡ ȥȠȜ ȝȞȜȑȞȎȚȚȎ țȓȚȓȒșȓțțȜ ȐȩȣȜȒȖȠ Ȗȕ ȤȖȘșȎ while țȓ ȝȓȞȓ ȝȞȜȐȓȞȭȭ ȓȑȜ ȡȟșȜȐȖȓ ȀȜ ȓȟȠȪ ȖțȟȠȞȡȘȤȖȭ break Ȑ ȟȠȞȜȘȓ ȝȓȞȓȚȓȧȎȓȠ ȖȟȝȜșțȓțȖȓ Ȑ ȝȓȞȐȡȬ ȟȠȞȜȘȡ ȕȎ ȝȞȓȒȓșȎȚȖ ȤȖȘșȎ Ȑ ȟȠȞȜȘȡ ǸȜȒ Ȑ ȟȠȞȜȘȓ ȕȎȐȓȞȦȎȓȠ ȏșȜȘ ȘȜȒȎ ȖțȟȠȞȡȘȤȖȖ else Ȏ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȕȎȐȓȞȦȎȓȠ ȤȖȘș while.

ēČěğĝĖ ĐĜğďĔġ ěĜĚďĜČĘĘ ĝ ěĚĘĚĥĨĪ ĠğęĖĢĔĔ ;0-44 :=6 ȂȡțȘȤȖȭ shell.run() ȝȜȕȐȜșȭȓȠ ȝȞȜȑȞȎȚȚȓ ȐȩȝȜșțȭȠȪ ȘȜȚȎțȒȩ ȠȎȘ Ȕȓ ȘȎȘ Ȗ Ȑ ȜȏȜșȜȥȘȓ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ǽȞȜ

ǵǮǽȁǿǸ ǮǰȀǼǺǮȀǶǵǶǾǼǰǮǻǻǼǷ ǹdzǿǼȂdzǾǺȉ

155


ȑȞȎȚȚȎ farmtrees ȖȟȝȜșȪȕȡȓȠ ȫȠȡ ȢȡțȘȤȖȬ Ȓșȭ ȕȎȝȡȟȘȎ ȝȞȜȑȞȎȚȚȩ choptree. farmtrees 39. hare.selectEmptySlot() 40. shell.run('choptree') -- ɡɚɩɭɫɤ ɩɪɨɝɪɚɦɦɵ choptree

ǸȜȒ Ȑ ȟȠȞȜȘȓ ȐȩȕȩȐȎȓȠ ȢȡțȘȤȖȬ selectEmptySlot() ȚȜȒȡșȭ hare ȘȜȠȜȞȎȭ ȝȞȜȐȓȞȭȓȠ ȥȠȜ ȒȜȏȩȠȎȭ ȥȓȞȓȝȎȦ ȘȜȗ ȒȞȓȐȓȟȖțȎ ȏȡȒȓȠ ȟȜȣȞȎțȓțȎ Ȑ ȝȡȟȠȡȬ ȭȥȓȗȘȡ ǰ ȝȞȜ ȠȖȐțȜȚ ȟșȡȥȎȓ ȝȞȜȑȞȎȚȚȎ choptree țȓ ȕȎȝȡȟȠȖȠȟȭ ǵȎȠȓȚ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȕȎȝȡȟȘȎȓȠ ȝȞȜȑȞȎȚȚȡ choptree ȐȩȕȩȐȎȭ ȢȡțȘȤȖȬ shell.run() Ȗ ȝȓȞȓȒȎȐȎȭ ȓȗ ȟȠȞȜȘȜȐȜȓ ȕțȎȥȓțȖȓ 'choptree'. ǿȠȞȜȘȎ ȝȓȞȓȒȎțțȎȭ Ȑ ȢȡțȘȤȖȬ shell.run() ȎțȎșȜȑȖȥ țȎ ȘȜȚȎțȒȓ ȘȜȠȜȞȡȬ Ƞȩ ȐȐȜȒȖȦȪ Ȑ ȜȏȜșȜȥȘȓ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ǰȩȕȜȐ ȢȡțȘȤȖȖ shell.run('choptree') Ȑ ȝȞȜȑȞȎȚ Țȓ ȝȞȖȐȜȒȖȠ Ș ȠȜȚȡ Ȕȓ ȞȓȕȡșȪȠȎȠȡ ȥȠȜ Ȗ ȕȎȝȡȟȘ ȝȞȜȑȞȎȚȚȩ choptree Ȑ ȜȏȜșȜȥȘȓ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ȀȎȘ ȠȐȜȭ ȝȞȜȑȞȎȚȚȎ ȚȜȔȓȠ ȕȎȝȡȟȘȎȠȪ șȬȏȩȓ ȒȞȡȑȖȓ ȝȞȜ ȑȞȎȚȚȩ ǸȜȑȒȎ ȝȞȜȑȞȎȚȚȎ choptree ȕȎȐȓȞȦȎȓȠȟȭ ȖȟȝȜș țȓțȖȓ ȝȓȞȓȣȜȒȖȠ Ș ȟȠȞȜȘȓ

ĎħďĜğēĖČ ģđĜđěČĤĖĚĕ ĐĚčħĞĚĕ ĐĜđĎđĝĔęħ ǰ ȘȜțȤȓ ȝȞȜȑȞȎȚȚȩ choptree ȥȓȞȓȝȎȦȘȎ ȟȝȡȟȘȎȓȠȟȭ țȎ ȕȓȚșȬ ȑȒȓ ȖȕțȎȥȎșȪțȜ ȏȩș ȝȜȟȎȔȓț ȟȎȔȓțȓȤ ǵȎȠȓȚ ȜțȎ ȐȜȕȐȞȎȧȎȓȠȟȭ Ȑ ȖȟȣȜȒțȜȓ ȝȜșȜȔȓțȖȓ ȜȠȟȠȡȝȎȭ țȎ ȜȒȖț ȏșȜȘ Ȗ ȒȐȎȔȒȩ ȝȜȐȜȞȎȥȖȐȎȓȠȟȭ țȎșȓȐȜ ȥȠȜȏȩ ȜȘȎȕȎȠȪȟȭ ȝȓȞȓȒ ȟȡțȒȡȘȜȚ Ȗ ȐȩȑȞȡȕȖȠȪ Ȑ țȓȑȜ ȒȞȓȐȓȟȖțȡ farmtrees 42. -- ɩɟɪɟɦɟɳɟɧɢɟ ɢ ɩɨɜɨɪɨɬ ɤ ɫɭɧɞɭɤɭ 43. turtle.back() 44. turtle.turnLeft() 45. turtle.turnLeft()

156

DZǹǮǰǮ


ȂȡțȘȤȖȭ turtle.drop() ȐȩȑȞȡȔȎȓȠ ȟȜȒȓȞȔȖȚȜȓ ȠȓȘȡ ȧȓȗ ȭȥȓȗȘȖ ȖțȐȓțȠȎȞȭ Ȑ ȟȡțȒȡȘ ȝȓȞȓȒ ȘȜȠȜȞȩȚ ȜțȎ țȎȣȜ ȒȖȠȟȭ ȖșȖ țȎ ȕȓȚșȬ ȓȟșȖ ȟȡțȒȡȘ ȜȠȟȡȠȟȠȐȡȓȠ dzȟșȖ ȝȓȞȓ ȒȎȠȪ ȢȡțȘȤȖȖ turtle.drop() ȥȖȟșȜ ȠȜ Ȗȕ ȠȓȘȡȧȓȗ ȭȥȓȗȘȖ ȚȜȔțȜ ȐȩȑȞȡȕȖȠȪ ȡȘȎȕȎțțȜȓ ȘȜșȖȥȓȟȠȐȜ ȏșȜȘȜȐ ǻȎȝȞȖȚȓȞ ȝȜȘȎȕȎțțȎȭ țȖȔȓ ȘȜȚȎțȒȎ Ȑ ȜȏȜșȜȥȘȓ /XD ȐȩȑȞȡȔȎȓȠ ȠȜșȪ ȘȜ ȜȒȖț ȏșȜȘ lua> turtle.drop(1)

ǽȞȖȚȓȥȎțȖȓ . dzȟșȖ ȝȜțȎȒȜȏȖȠȟȭ Ƞȩ ȠȎȘȔȓ ȚȜȔȓȦȪ ȖȟȝȜșȪȕȜȐȎȠȪ ȢȡțȘȤȖȖ turtle.dropUp() Ȗ turtle.dropDown() Ȓșȭ ȐȩȑȞȡȕȘȖ ȏșȜȘȜȐ ȐȩȦȓ Ȗ țȖȔȓ ȥȓȞȓȝȎȦȘȖ Ȏ țȓ ȝȓȞȓȒ țȓȗ ȄȖȘș while ȐȩȏȖȞȎȓȠ ȟȡȧȓȟȠȐȡȬȧȖȓ Ȑ ȖțȐȓțȠȎȞȓ ȥȓȞȓ ȝȎȦȘȖ ȏșȜȘȖ ȒȞȓȐȓȟȖțȩ ǼȒțȜȐȞȓȚȓțțȜ ȐțȡȠȞȖ ȤȖȘșȎ ȝȜȒ ȟȥȖȠȩȐȎȓȠȟȭ ȘȜșȖȥȓȟȠȐȜ ȏșȜȘȜȐ ȒȞȓȐȓȟȖțȩ ȘȜȠȜȞȜȓ ȐȩȑȞȡ ȔȎȓȠȟȭ Ȑ ȟȡțȒȡȘ farmtrees 47. -- ɩɨɦɟɳɟɧɢɟ ɞɪɟɜɟɫɢɧɵ ɜ ɫɭɧɞɭɤ 48. while hare.selectItem('minecraft:log') do 49. logCount = logCount + turtle.getItemCount() 50. print('Total logs: ' .. logCount) 51. turtle.drop() 52. end

ǰȩȕȜȐ ȢȡțȘȤȖȖ hare.selectItem() Ȑ ȟȠȞȜȘȓ ȐȜȕȐȞȎ ȧȎȓȠ ȕțȎȥȓțȖȓ true ȓȟșȖ ȜȏțȎȞȡȔȓț ȫșȓȚȓțȠ ȟ ȖȒȓțȠȖȢȖ ȘȎȠȜȞȜȚ 'minecraft:log' Ȏ ȫȠȜ ȕțȎȥȖȠ ȥȠȜ ȤȖȘș while ȏȡ ȒȓȠ ȝȞȜȒȜșȔȎȠȪȟȭ ȒȜ Ƞȓȣ ȝȜȞ ȝȜȘȎ Ȑ ȖțȐȓțȠȎȞȓ ȥȓȞȓȝȎȦȘȖ ȓȟȠȪ ȒȞȓȐȓȟȖțȎ ǰȩȕȜȐ ȢȡțȘȤȖȖ turtle.getItemCount() ȐȜȕȐȞȎȧȎȓȠ ȘȜșȖȥȓȟȠȐȜ ȏșȜȘȜȐ Ȑ ȠȓȘȡȧȓȗ ȭȥȓȗȘȓ ȋȠȜ ȕțȎȥȓțȖȓ Ȑ ȟȠȞȜȘȓ ȒȜȏȎȐșȭȓȠȟȭ Ș ȥȖȟșȡ ȣȞȎțȭȧȓȚȡȟȭ Ȑ ȝȓȞȓȚȓțțȜȗ logCount ȀȎȘȖȚ ȜȏȞȎȕȜȚ ȜȠȟșȓȔȖȐȎȓȠȟȭ Ȝȏȧȓȓ ȘȜșȖȥȓȟȠȐȜ ȏșȜȘȜȐ ȒȞȓȐȓȟȖțȩ ȟȘȜȝȖȐȦȖȣȟȭ Ȑ ȟȡțȒȡȘȓ Ȏ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȜȠȜȏȞȎȔȎȓȠ ȫȠȜ Ȝȏȧȓȓ ȘȜșȖȥȓȟȠȐȜ ǰ ȟȠȞȜȘȓ ȒȞȓȐȓȟȖțȎ

ǵǮǽȁǿǸ ǮǰȀǼǺǮȀǶǵǶǾǼǰǮǻǻǼǷ ǹdzǿǼȂdzǾǺȉ

157


ȐȩȑȞȡȔȎȓȠȟȭ Ȗȕ ȖțȐȓțȠȎȞȭ ȥȓȞȓȝȎȦȘȖ Ȑ ȟȡțȒȡȘ ȝȓȞȓȒ țȓȗ ȟ ȝȜȚȜȧȪȬ ȢȡțȘȤȖȖ turtle.drop(). ǸȜȒ Ȑ ȟȠȞȜȘȎȣ Ȗ ȒȐȎȔȒȩ ȝȜȐȜȞȎȥȖȐȎȬȠ ȥȓȞȓȝȎȦȘȡ țȎșȓȐȜ ȐȜȕȐȞȎȧȎȭ ȓȓ Ȑ ȖȟȣȜȒțȜȓ ȝȜșȜȔȓțȖȓ șȖȤȜȚ Ș ȢȓȞ Țȓ ǸȜȒ Ȑ ȟȠȞȜȘȓ ȕȎȐȓȞȦȎȓȠ ȤȖȘș while țȎȥȎȐȦȖȗȟȭ Ȑ ȟȠȞȜȘȓ ȝȜȫȠȜȚȡ ȖȟȝȜșțȓțȖȓ ȐȜȕȐȞȎȧȎȓȠȟȭ Ș ȟȠȞȜȘȓ ȀȓȝȓȞȪ ȥȓȞȓȝȎȦȘȎ ȑȜȠȜȐȎ ȝȜȟȎȒȖȠȪ ȟșȓȒȡȬȧȖȗ ȟȎȔȓțȓȤ farmtrees 54. -- ɜɨɡɜɪɚɳɟɧɢɟ ɤ ɦɟɫɬɭ ɜɵɫɚɞɤɢ ɫɚɠɟɧɰɚ 55. turtle.turnLeft() 56. turtle.turnLeft() 57. end

ǻȎȝȜȚțȬ ȥȠȜ ȤȖȘș while țȎȥȎȐȦȖȗȟȭ Ȑ ȟȠȞȜȘȓ ȏȓȟ ȘȜțȓȥȓț ǽȞȜȑȞȎȚȚȎ farmtrees ȕȎȐȓȞȦȖȠȟȭ ȠȜșȪȘȜ Ȑ ȠȜȚ ȟșȡȥȎȓ ȓȟșȖ ȏȡȒȓȠ ȐȩȕȐȎțȎ ȢȡțȘȤȖȭ error() Ȑ ȟȠȞȜȘȓ ȖșȖ ȋȠȜ ȚȜȔȓȠ ȝȞȜȖȕȜȗȠȖ ȓȟșȖ ȡ ȥȓȞȓȝȎȦȘȖ ȕȎȘȜțȥȎȠȟȭ șȖȏȜ ȟȎȔȓțȤȩ șȖȏȜ ȘȜȟȠțȎȭ ȚȡȘȎ ǶȑȞȜȘ ȚȜȔȓȠ ȝȜȝȜșțȖȠȪ ȕȎȝȎȟȩ ȥȓȞȓȝȎȦȘȖ ȒȎȔȓ ȐȜ ȐȞȓȚȭ ȐȩȝȜșțȓțȖȭ ȝȞȜȑȞȎȚȚȩ ǽȜȘȎ ȖȑȞȜȘ ȟțȎȏȔȎȓȠ ȥȓȞȓȝȎȦȘȡ ȟȎȔȓțȤȎȚȖ Ȗ ȘȜȟȠțȜȗ Țȡ ȘȜȗ ȝȞȜȑȞȎȚȚȎ ȏȡȒȓȠ ȐȩȝȜșțȭȠȪȟȭ ȏȓȟȘȜțȓȥțȜ

ĔēĘđęđęĔđ ĖĚĐČ đĝėĔ ęđĞ ĖĚĝĞęĚĕ ĘğĖĔ ǽȜ ȚȓȞȓ ȠȜȑȜ ȘȎȘ ȡșȡȥȦȎȬȠȟȭ ȠȐȜȖ țȎȐȩȘȖ ȝȞȜȑȞȎȚȚȖ ȞȜȐȎțȖȭ ȡ Ƞȓȏȭ ȚȜȑȡȠ ȐȜȕțȖȘȎȠȪ ȖȒȓȖ ȝȜ ȡșȡȥȦȓțȖȬ ȟȐȜ Ȗȣ ȝȞȜȑȞȎȚȚ ȡȔȓ ȝȜȟșȓ ȠȜȑȜ ȘȎȘ ȜțȖ țȎȝȖȟȎțȩ ǽȓȞȓȝȖ ȟȩȐȎȠȪ ȝȞȜȑȞȎȚȚȩ ȚȜȔțȜ ȟȘȜșȪȘȜ ȡȑȜȒțȜ ǻȎȝȞȖȚȓȞ Ƞȩ ȚȜȔȓȦȪ ȜȏțȎȞȡȔȖȠȪ ȥȠȜ ȕȎȝȎȟ ȘȜȟȠțȜȗ ȚȡȘȖ ȥȓȞȓȝȎȦȘȖ ȞȎȟȣȜȒȡȬȠ ȏȩȟȠȞȓȓ ȥȓȚ Ƞȩ ȡȏȖȐȎȓȦȪ ȟȘȓșȓȠȜȐ ǾȜȏȜȠȩ țȓ ȡȚȓȬȠ ȟȘȡȥȎȠȪ ȝȜȫȠȜȚȡ ȥȓȞȓȝȎȦȘȡ ȚȜȔțȜ ȕȎȝȞȜȑȞȎȚȚȖ ȞȜȐȎȠȪ țȎ ȜȔȖȒȎțȖȓ ȝȜȘȎ ȒȓȞȓȐȜ ȐȩȞȎȟȠȓȠ ȓȟȠȓȟȠȐȓțțȩȚ ȜȏȞȎȕȜȚ ȐȚȓȟȠȜ ȠȜȑȜ ȥȠȜȏȩ ȝȞȓȘȞȎȧȎȠȪ ȞȎȏȜȠȡ Ȗȕ ȕȎ ȜȠȟȡȠ ȟȠȐȖȭ ȘȜȟȠțȜȗ ȚȡȘȖ ǰ țȎȟȠȜȭȧȓȓ ȐȞȓȚȭ ȥȓȞȓȝȎȦȘȖ ȕȎȝȞȜȑȞȎȚȚȖȞȜȐȎțȩ țȎ ȝȜșțȜȓ ȝȞȓȞȩȐȎțȖȓ ȟȐȜȓȗ ȞȎȏȜȠȩ ȓȟșȖ Ȑ ȖțȐȓțȠȎȞȓ țȓȠ ȘȜȟȠțȜȗ ȚȡȘȖ ȅȠȜȏȩ ȝȓȞȓȝȞȜȑȞȎȚȚȖȞȜȐȎȠȪ Ȗȣ țȎ ȜȔȖȒȎțȖȓ

158

DZǹǮǰǮ


ȓȟȠȓȟȠȐȓțțȜȑȜ ȞȜȟȠȎ ȒȓȞȓȐȎ ȏȓȕ ȘȜȟȠțȜȗ ȚȡȘȖ ȖȕȚȓțȖ ȘȜȒ Ȑ ȟȠȞȜȘȓ error('Out of bone meal.') țȎ ȟșȓȒȡȬȧȓȓ farmtrees 29.

os.sleep(10)

ȂȡțȘȤȖȭ os.sleep() ȝȞȖȜȟȠȎțȎȐșȖȐȎȓȠ ȝȞȜȑȞȎȚȚȡ țȎ ȕȎȒȎțțȜȓ ȐȞȓȚȭ ǶȕȚȓțȓțțȩȗ ȘȜȒ Ȑ ȟȠȞȜȘȓ ©ȡȟȩȝȖȠª ȥȓȞȓȝȎȦȘȡ țȎ ȟȓȘȡțȒ ȝȞȓȔȒȓ ȥȓȚ ȜțȎ ȝȞȜȒȜșȔȖȠ Ȑȩ ȝȜșțȓțȖȓ ȜȟȠȎșȪțȜȗ ȥȎȟȠȖ ȝȞȜȑȞȎȚȚȩ ǽȜȟșȓ ȝȎȡȕȩ Ȑ ȟȓ ȘȡțȒ ȥȓȞȓȝȎȦȘȎ ȝȞȜȐȓȞȭȓȠ țȓ ȐȩȞȜȟ șȖ ȟȎȔȓțȓȤ Ȑ ȒȓȞȓȐȜ DzȞȡȑȜȓ ȝȞȓȖȚȡȧȓȟȠȐȜ ȢȡțȘȤȖȖ os.sleep() ȐȚȓȟȠȜ ȝȞȜ ȟȠȜȑȜ ȤȖȘșȎ ȕȎȘșȬȥȎȓȠȟȭ Ȑ ȠȜȚ ȥȠȜ ȝȞȖ ȐȩȕȜȐȓ ȢȡțȘȤȖȖ os.sleep() 0LQHFUDIW ȚȜȔȓȠ ȝȞȓȘȞȎȠȖȠȪ ȖȟȝȜșțȓțȖȓ ȘȜȒȎ ȥȓȞȓȝȎȦȘȖ Ȏ ȕȎȠȓȚ ȐȜȕȜȏțȜȐȖȠȪ ȓȑȜ ȝȜȟșȓ ȝȎȡȕȩ ǽȞȖȜȟȠȎ țȜȐȘȎ ȖȟȝȜșțȓțȖȭ ȜȒțȜȗ ȝȞȜȑȞȎȚȚȩ ȚȜȔȓȠ ȝȞȓȒȜȠȐȞȎȠȖȠȪ ȕȎȒȓȞȔȘȡ ȐȟȓȑȜ ȝȞȜȖȕȐȜȒȟȠȐȎ ȜȟȜȏȓțțȜ ȓȟșȖ Ȑ țȓȚ ȡȥȎȟȠȐȡ ȬȠ țȓȟȘȜșȪȘȜ ȥȓȞȓȝȎȦȓȘ ĐĚěĚėęĔĞđėĨęĚđ ēČĐČęĔđ" ģđĜđěČĤĖČ ĞĜğĐĚďĚėĔĖ

Нет нужды доверять черепашке заниматься только одним деревом. Ты можешь посадить несколько деревьев в ряд и поручить их обработку одной черепашке, чтобы она проверяла все деревья каждые несколько минут. Напиши программу, которая будет запускать программу farmtrees для нескольких деревьев, как показано на рис. 8.6. Придется изменить код программы farmtrees так, чтобы черепашка проводила проверку, выросло ли из саженца дерево, а потом переходила к следующему дереву, вместо того, чтобы постоянно проверять одно и то же, в цикле. Таким образом, ты сможешь повторно использовать код программы farmtrees и строить гораздо более крупные фермы.

ˀ̛̭͘ ϴ͘ϲ͘ ʽ̦̔̌ ̸̡̖̬̖̪̹̌̌ ̵̛̱̙̖̯̌̏̌ ̌̚ ̶̛̭̙̖̦̥̌̌ ̦̌ ̵̯̬̖ ̸̵̡̱̭̯̌̌

ǵǮǽȁǿǸ ǮǰȀǼǺǮȀǶǵǶǾǼǰǮǻǻǼǷ ǹdzǿǼȂdzǾǺȉ

159


ģĞĚ Ęħ ğēęČėĔ DZșȎȐțȎȭ ȤȓțțȜȟȠȪ ȝȞȜȑȞȎȚȚȩ farmtrees Ȑ ȠȜȚ ȥȠȜ ȜțȎ ȚȜ ȔȓȠ ȚȎȟȦȠȎȏȖȞȜȐȎȠȪȟȭ ȝȞȖ ȒȜȏȎȐșȓțȖȖ ȥȓȞȓȝȎȦȓȘ dzȟșȖ Ƞȩ ȒȜȏȎȐȖȦȪ ȒȓȟȭȠȪ ȥȓȞȓȝȎȦȓȘ ȝȞȜȖȕȐȜȒȟȠȐȜ ȒȞȓȐȓȟȖțȩ ȐȜȕȞȎȟȠȓȠ ȋȠȎ ȒȞȓȐȓȟȖțȎ ȏȡȒȓȠ ȝȜșȓȕțȎ țȓ ȠȜșȪȘȜ Ȑ ȘȎȥȓ ȟȠȐȓ ȟȠȞȜȖȠȓșȪțȜȑȜ ȚȎȠȓȞȖȎșȎ ȓȓ ȠȎȘȔȓ ȚȜȔțȜ ȟȔȓȥȪ Ȑ ȝȓȥȖ ȥȠȜȏȩ ȝȞȓȐȞȎȠȖȠȪ Ȑ ȒȞȓȐȓȟțȩȗ ȡȑȜșȪ dzȑȜ ȚȜȔțȜ Ȗȟ ȝȜșȪȕȜȐȎȠȪ ȘȎȘ ȠȜȝșȖȐȜ Ȓșȭ ȥȓȞȓȝȎȦȓȘ Ȏ ȫȠȜ ȕțȎȥȖȠ ȥȠȜ ȫȠȖȚ ȥȓȞȓȝȎȦȘȎȚ ȡȔȓ țȓ ȝȜțȎȒȜȏȖȠȟȭ ȥȓșȜȐȓȘ ȘȜȠȜȞȩȗ ȏȡ ȒȓȠ Ȗȣ ȕȎȝȞȎȐșȭȠȪ ǰ ȫȠȜȗ ȑșȎȐȓ Ƞȩ ȡȕțȎș Ȝ ȞȎȕțȩȣ ȠȖȝȎȣ ȒȓȞȓȐȪȓȐ Ȝȏ Ȝȏ șȎȟȠȭȣ ȐȖȒȖȚȜȟȠȖ ȝȓȞȓȚȓțțȩȣ Ȗ Ȝ ȠȜȚ ȥȠȜ ȥȓȞȓȝȎȦȘȖ ȝȞȜ ȒȜșȔȎȬȠ ȞȎȏȜȠȎȠȪ ȠȜșȪȘȜ ȒȜ Ƞȓȣ ȝȜȞ ȝȜȘȎ ȕȎȑȞȡȔȓțȎ Ȝȏ șȎȟȠȪ ȚȖȞȎ 0LQHFUDIW ȟ ȥȎțȘȎȚȖ Ȑ ȘȜȠȜȞȩȣ ȜțȖ ȟȡȧȓȟȠȐȡȬȠ Ȁȩ ȠȎȘȔȓ ȖȕȡȥȖș țȓȘȜȠȜȞȩȓ ȒȜȝȜșțȖȠȓșȪțȩȓ ȢȡțȘȤȖȖ ȥȓȞȓȝȎȦȘȖ ȂȡțȘȤȖȭ fs.exists() ȝȞȜȐȓȞȭȓȠ ȟȡȧȓȟȠȐȡȓȠ șȖ ȡȘȎȕȎțțȎȭ ȝȞȜȑȞȎȚȚȎ ǰ ȝȞȜȑȞȎȚȚȓ farmtrees ȢȡțȘ ȤȖȭ turtle.place() ȟȎȔȎșȎ Ȑ ȕȓȚșȬ ȟȎȔȓțȤȩ țȜ Ƞȩ ȠȎȘ Ȕȓ ȚȜȔȓȦȪ ȖȟȝȜșȪȕȜȐȎȠȪ ȓȓ Ȓșȭ ȞȎȕȚȓȧȓțȖȭ ȝȓȞȓȒ ȥȓȞȓ ȝȎȦȘȜȗ șȬȏȩȣ ȒȞȡȑȖȣ ȏșȜȘȜȐ ȂȡțȘȤȖȭ turtle.inspect() ȝȜȕȐȜșȭȓȠ ȥȓȞȓȝȎȦȘȓ ȜȝȞȓȒȓșȭȠȪ ȘȎȘȜȗ ȏșȜȘ țȎȣȜȒȖȠȟȭ ȝȓȞȓȒ țȓȗ ȂȡțȘȤȖȭ turtle.drop() ȐȩȑȞȡȔȎȓȠ ȟȜȒȓȞȔȖ ȚȜȓ ȭȥȓȗȘȖ ȝȓȞȓȒ ȥȓȞȓȝȎȦȘȜȗ țȎ ȕȓȚșȬ ȖșȖ Ȑ ȟȡțȒȡȘ ȂȡțȘȤȖȭ shell.run() ȝȜȕȐȜșȭȓȠ ȝȞȜȑȞȎȚȚȓ farmtrees ȕȎ ȝȡȟȘȎȠȪ ȒȞȡȑȖȓ ȝȞȜȑȞȎȚȚȩ ȠȎȘȖȓ ȘȎȘ choptree. ǶțȟȠȞȡȘȤȖȭ break ȝȞȖȐȜȒȖȠ Ș țȓȚȓȒșȓțțȜȚȡ ȐȩȣȜȒȡ ȝȞȜȑȞȎȚȚȩ Ȗȕ ȤȖȘșȎ while ȖșȖ for ȂȡțȘȤȖȭ os.sleep() ȝȜȕȐȜșȭȓȠ ȝȞȖȜȟȠȎțȜȐȖȠȪ ȖȟȝȜșțȓțȖȓ ȝȞȜȑȞȎȚȚȩ țȎ ȡȘȎ ȕȎțțȜȓ ȘȜșȖȥȓȟȠȐȜ ȟȓȘȡțȒ ǰ ȑșȎȐȓ Țȩ ȞȎȟȦȖȞȖȚ țȎȦȓ ȎȐȠȜȚȎȠȖȕȖȞȜȐȎțțȜȓ ȝȞȜ ȖȕȐȜȒȟȠȐȜ Ȗ țȎȥțȓȚ ȟȜȕȒȎȐȎȠȪ ȘȎȚȓțțȩȓ ȘȖȞȝȖȥȖ ǻȎȦ ȕȎ ȐȜȒȖȘ ȟȜȕȒȎȟȠ țȓȜȏȣȜȒȖȚȩȓ Ȓșȭ ȟȠȞȜȖȠȓșȪȟȠȐȎ ȏșȜȘȖ Ȗ Ƞȓ ȏȓ ȏȜșȪȦȓ țȓ ȝȞȖȒȓȠȟȭ șȓȕȠȪ ȕȎ țȖȚȖ Ȑ ȦȎȣȠȡ


9 ĝĞĜĚĔĞđėĨĝĞĎĚ ďđęđĜČĞĚĜČ čğėħĒęĔĖČ ǿȎȚȩȓ ȞȎȟȝȞȜȟȠȞȎțȓțțȩȓ ȏșȜȘȖ ȘȜȠȜȞȩȓ ȠȜșȪ ȘȜ ȚȜȔțȜ țȎȗȠȖ ² ȫȠȜ ȘȎȚȓțțȩȓ Ƕȕ țȖȣ ȒȜȏȩ ȐȎȓȠȟȭ ȏȓȟȢȜȞȚȓțțȩȗ ȏȡșȩȔțȖȘ țȜ ȓȑȜ ȚȜȔțȜ ȝȓȞȓȝșȎȐȖȠȪ Ȑ ȘȎȚȓțȪ Ȗȕ ȘȜȠȜȞȜȑȜ ȘȞȎȢȠȭȠȟȭ ȘȎȚȓțțȩȗ ȘȖȞȝȖȥȖ ² Ȗȣ Ƞȩ ȚȜȔȓȦȪ ȖȟȝȜșȪ ȕȜȐȎȠȪ Ȓșȭ ȟȠȞȜȖȠȓșȪȟȠȐȎ ȘȞȎȟȖȐȩȣ ȕȒȎțȖȗ ȁȢ ǸȎȘ ȚțȜȑȜ ȝȞȓȒȟȠȜȖȠ ȞȎȏȜȠȩ Ȑ ȜȝȎȟțȩȣ ȠȓȚțȩȣ ȦȎȣ ȠȎȣ ȝȞȓȔȒȓ ȥȓȚ ȚȜȔțȜ ȏȡȒȓȠ ȝȜșȡȥȖȠȪ ȘȎȚȓțțȩȓ ȘȖȞȝȖȥȖ ǰ ȫȠȜȗ ȑșȎȐȓ Ƞȩ ȡȕțȎȓȦȪ ȘȎȘ ȟȜȕȒȎȠȪ ȏȓȟȘȜțȓȥțȩȗ ȑȓ țȓȞȎȠȜȞ ȏȡșȩȔțȖȘȎ Ȏ ȕȎȠȓȚ Ƞȩ țȎȝȖȦȓȦȪ ȝȞȜȑȞȎȚȚȡ Ȓșȭ ȥȓȞȓȝȎȦȓȘ ȝȜȕȐȜșȭȬȧȡȬ ȎȐȠȜȚȎȠȖȕȖȞȜȐȎȠȪ ȝȞȜȤȓȟ ȟȩ ȒȜȏȩȥȖ ȏȡșȩȔțȖȘȎ Ȗ ȓȑȜ ȝȓȞȓȝșȎȐȘȖ ǾȎȕȚȓȟȠȖȐ ȝȞȜ ȖȕȐȜȒȟȠȐȓțțȡȬ șȖțȖȬ Ȑ ȏȓȕȜȝȎȟțȜȚ ȚȓȟȠȓ ȜȘȜșȜ ȒȜȚȎ Ƞȩ ȜȏȓȟȝȓȥȖȦȪ ȟȓȏȭ țȓȜȑȞȎțȖȥȓțțȩȚ ȘȜșȖȥȓȟȠȐȜȚ ȘȎȚȓțțȩȣ ȘȖȞȝȖȥȓȗ ȝȞȖȑȜȒțȩȣ Ȓșȭ ȟȠȞȜȖȠȓșȪȟȠȐȎ

ěĜĚđĖĞ ďđęđĜČĞĚĜČ čğėħĒęĔĖČ Ȁȩ ȡȔȓ ȕțȎȓȦȪ ȥȠȜ Ȑ 0LQHFUDIW ȏȡșȩȔțȖȘ Ȑ ȜȟțȜȐțȜȚ ȒȜ ȏȩȐȎȓȠȟȭ Ȑ ȦȎȣȠȎȣ țȜ ȓȑȜ ȠȎȘȔȓ ȚȜȔțȜ ȝȜșȡȥȖȠȪ ȟȚȓȦȖȐȎȭ

ǿȀǾǼǶȀdzǹȊǿȀǰǼ DZdzǻdzǾǮȀǼǾǮ ǯȁǹȉǴǻǶǸǮ

161


ȠȓȘȡȧȡȬ ȐȜȒȡ ȟ ȠȓȘȡȧȓȗ șȎȐȜȗ Ȑ ȞȓȕȡșȪȠȎȠȓ ȥȓȑȜ ȜȏȞȎȕȡȓȠ ȟȭ ȏȡșȩȔțȖȘ Ǻȩ ȝȞȖȚȓțȖȚ ȫȠȖ ȕțȎțȖȭ Ȓșȭ ȟȜȕȒȎțȖȭ ȑȓțȓ ȞȎȠȜȞȎ ȘȜȠȜȞȩȗ ȏȡȒȓȠ ȟȜȕȒȎȠȪ țȓȜȑȞȎțȖȥȓțțȜȓ ȘȜșȖȥȓȟȠȐȜ ȏșȜȘȜȐ ȏȡșȩȔțȖȘȎ ȅȓȞȓȝȎȦȘȎ ȟȚȜȔȓȠ ȒȜȏȩȐȎȠȪ ȏȡșȩȔțȖȘ ȏȓȟȘȜțȓȥțȜ ȒȜșȑȜ ȠȎȘ ȘȎȘ ȓȓ ȖțȟȠȞȡȚȓțȠȩ țȓ ȖȕțȎȦȖȐȎȬȠȟȭ ȅȠȜȏȩ ȟȜȕȒȎȠȪ ȑȓțȓȞȎȠȜȞ ȏȡșȩȔțȖȘȎ ȟșȓȒȡȗ ȟȣȓȚȓ ȝȜ ȘȎȕȎțțȜȗ țȎ ȞȖȟ ȁ Țȓțȭ ȑȓțȓȞȎȠȜȞ ȝȜȟȠȞȜȓț Ȗȕ ȟȠȓȘ șȎ țȜ Ƞȩ ȚȜȔȓȦȪ ȖȟȝȜșȪȕȜȐȎȠȪ șȬȏȩȓ ȒȞȡȑȖȓ țȓȑȜȞȬȥȖȓ ȏșȜȘȖ ȀȎȘȔȓ Ƞȓȏȓ ȝȜțȎȒȜȏȖȠȟȭ ȐȓȒȞȜ ȐȜȒȩ Ȗ ȐȓȒȞȜ șȎȐȩ ǰȓȒȞȜ ȚȜȔțȜ ȟȜȕȒȎȠȪ Ȗȕ ȠȞȓȣ Ȕȓșȓȕțȩȣ ȟșȖȠȘȜȐ Ȏ ȕȎȠȓȚ Ƞȓ ȏȓ ȟșȓȒȡȓȠ ȕȎȥȓȞȝțȡȠȪ șȎȐȡ Ȗ ȐȜȒȡ ȃȜȠȭ ȖȟȠȜȥțȖȘȖ șȎȐȩ ȚȜȔțȜ țȎȗȠȖ țȎ ȝȜȐȓȞȣțȜȟȠȖ ȥȎȧȓ ȐȟȓȑȜ ȜțȖ ȐȟȠȞȓȥȎȬȠȟȭ ȑșȡȏȜȘȜ ȝȜȒ ȕȓȚșȓȗ ȐȏșȖȕȖ ȏȓȒȞȜȘȎ ǰȜȒȡ ȚȜȔțȜ ȐȕȭȠȪ Ȗȕ ȞȓȘȖ ȜȕȓȞȎ ȖșȖ ȜȘȓȎțȎ Верхний уровень

Лава Булыжник Стекло Вода Черепашка с киркой

Средний уровень

Стекло

Нижний уровень

Стекло

ˀ̛̭͘ ϵ͘ϭ͘ ʦ̣̐́̔̚ ̭ ̨̼̭̯̼̏ ̸̨̛̪̯̖̽̐ ̨̪̣̖̯̌ ̦̌ ̨̖̦̖̬̯̬̐̌ ̡̛̱̣̼̙̦̍̌

ǽȞȖ ȞȎȕȚȓȧȓțȖȖ șȎȐȩ Ȗ ȐȜȒȩ ȜȏȭȕȎȠȓșȪțȜ Ȑȩșȓȗ șȎȐȡ Ȗȕ ȐȓȒȞȎ ȝȓȞȐȜȗ ǰ ȝȞȜȠȖȐțȜȚ ȟșȡȥȎȓ ȝȜȠȜȘ ȐȜȒȩ ȏȡȒȓȠ ȟȚȓ ȦȖȐȎȠȪȟȭ ȟ țȓȝȜȒȐȖȔțȜȗ șȎȐȜȗ Ȏ țȓ ȟ ȠȓȘȡȧȓȗ ȝȞȓȐȞȎȧȎȭ ȓȓ Ȑ ȜȏȟȖȒȖȎț ǯșȜȘ ȏȡșȩȔțȖȘȎ ȝȜȘȎȕȎțțȩȗ țȎ ȞȖȟȡțȘȓ Ȑ ȑȓțȓȞȎȠȜȞȓ ȞȎȕȚȓȧȎȠȪ țȓ țȡȔțȜ Ǽț ȏȡȒȓȠ ȟȢȜȞȚȖȞȜȐȎț ȎȐ ȠȜȚȎȠȖȥȓȟȘȖ

162

DZǹǮǰǮ


ǻȎ ȞȖȟ ȝȜȘȎȕȎț ȑȜȠȜȐȩȗ ȑȓțȓȞȎȠȜȞ ȏȡșȩȔțȖȘȎ

ˀ̛̭͘ ϵ͘Ϯ͘ ʧ̨̨̯̼̜̏ ̨̖̦̖̬̯̬̐̌ ̡̛̱̣̼̙̦̍̌ ̭ ̸̡̨̖̬̖̪̹̜̌ ̏ ̨̪̱̭̯̥ ̨̪̬̭̯̬̦̭̯̖̌̏ ̵̨̖̬̦̖̏̐ ̨̭̣́

ǽȞȖ ȘȎȔȒȜȚ ȖȕȐșȓȥȓțȖȖ ȑȜȠȜȐȜȑȜ ȏȡșȩȔțȖȘȎ Ȑ ȜȟȐȜȏȜ ȒȖȐȦȓȓȟȭ ȝȞȜȟȠȞȎțȟȠȐȜ ȕȎȠȓȘȎȓȠ șȎȐȎ Ȗ ȟȜȕȒȎȓȠȟȭ țȜȐȩȗ ȏșȜȘ Ȁȩ ȚȜȔȓȦȪ ȟȘȜșȪ ȡȑȜȒțȜ ȒȜșȑȜ ȒȜȏȩȐȎȠȪ ȏȡșȩȔțȖȘ Ȑ ȦȎȣȠȓ țȜ ȝȞȖ ȫȠȜȚ ȖȕțȎȦȖȐȎȬȠȟȭ ȘȖȞȘȖ Ǯ ȐȜȠ ȓȟșȖ Ȑ țȖȦȡ ȐȓȞȣțȓȑȜ ȟșȜȭ ȑȓțȓȞȎȠȜȞȎ ȝȜȚȓȟȠȖȠȪ ȥȓȞȓȝȎȦȘȡ ȝȜ ȐȓȞțȡȐ ȓȓ șȖȤȓȐȜȗ ȥȎȟȠȪȬ Ș ȤȓțȠȞȡ ȑȓțȓȞȎȠȜȞȎ ȥȓȞȓȝȎȦȘȎ ȏȡȒȓȠ ȒȜȏȩȐȎȠȪ ȏȡșȩȔțȖȘ ȏȓȕ ȒȜȝȜșțȖȠȓșȪțȩȣ ȕȎȠȞȎȠ ǽȞȖ ȫȠȜȚ ȜțȎ ȒȎȔȓ țȓ ȖȟȝȜșȪȕȡȓȠ ȠȜȝșȖȐȜ ȠȎȘ ȘȎȘ ȓȗ țȓ țȡȔțȜ ȒȐȖȑȎȠȪȟȭ

ğĝĞČęĚĎĖČ ěđģđĕ Đėī ěėČĎĖĔ čğėħĒęĔĖČ ȀȓȝȓȞȪ ȡ țȎȟ ȓȟȠȪ țȓȜȑȞȎțȖȥȓțțȩȗ ȕȎȝȎȟ ȏȡșȩȔțȖȘȎ țȜ ȫȠȜ ȓȧȓ țȓ Ȑȟȓ ǻȎȚ țȡȔțȜ ȓȑȜ ȝȓȞȓȝșȎȐȖȠȪ Ȓșȭ ȝȓȞȓȞȎȏȜȠ ȘȖ Ȑ ȘȎȚȓțȪ Dzșȭ ȫȠȜȑȜ Țȩ ȟȜȕȒȎȒȖȚ ȝȞȜȑȞȎȚȚȡ cobminer ȝȜȒ ȡȝȞȎȐșȓțȖȓȚ ȘȜȠȜȞȜȗ ȥȓȞȓȝȎȦȘȎ ȏȡȒȓȠ ȖȕȐșȓȘȎȠȪ ȏȡ șȩȔțȖȘ Ȗȕ ȑȓțȓȞȎȠȜȞȎ Ȏ ȕȎȠȓȚ ȝȜȚȓȧȎȠȪ ȒȜȏȩȠȩȗ ȏȡșȩȔ țȖȘ Ȑ ȝȓȥȖ Ȓșȭ ȝȓȞȓȝșȎȐȘȖ ǽȓȞȓȒ ȟȜȕȒȎțȖȓȚ ȝȞȜȑȞȎȚȚȩ cobminer țȡȔțȜ ȐȩȝȜșțȖȠȪ țȓȏȜșȪȦȖȓ ȝȞȖȑȜȠȜȐșȓțȖȭ ǰȜ ȝȓȞȐȩȣ țȡȔțȜ ȡȟȜȐȓȞȦȓțȟȠȐȜȐȎȠȪ ȑȓțȓȞȎȠȜȞ ȒȜȏȎ ȐȖȐ ȝȭȠȪ ȝȓȥȓȗ Ȑ ȟȞȓȒțȖȗ ȟșȜȗ ȟȞȎȕȡ ȕȎ ȥȓȞȓȝȎȦȘȜȗ ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ

ǿȀǾǼǶȀdzǹȊǿȀǰǼ DZdzǻdzǾǮȀǼǾǮ ǯȁǹȉǴǻǶǸǮ

163


ˀ̛̭͘ 9.3. ʿ̯́̽ ̸̪̖̖̜͕ ̨̣̖̦̔̍̌̏​̵̦̼ ̦̌ ̭̬̖̦̖̥̔ ̨̭̣̖ ̨̖̦̖̬̯̬̐̌̌ ̡̛̱̣̼̙̦̍̌ ;̭̣̖̏̌Ϳ͕ ̛ ̛̏̔ ̨̖̦̖̬̯̬̐̌̌ ̭ ̸̛̪̖̥̌ ̏ ̛̬̖̐

ǽȜȟșȓ ȕȎȝȡȟȘȎ ȟȜȕȒȎțțȜȗ ȝȞȜȑȞȎȚȚȩ ȥȓȞȓȝȎȦȘȎ ȏȡȒȓȠ ȒȜȏȩȐȎȠȪ ȏȡșȩȔțȖȘ ȒȜ Ƞȓȣ ȝȜȞ ȝȜȘȎ țȓ țȎȏȓȞȓȠ ȝȜșțȩȗ ȟȠȓȘ Ȗȕ ȦȠȡȘ ǵȎȠȓȚ ȜțȎ ȟȠȎțȓȠ ȒȐȖȑȎȠȪȟȭ ȐȒȜșȪ ȝȓȥȓȗ ȜȝȡȟȘȎȭ Ȑ țȖȣ ȏȡșȩȔțȖȘ ǽȓȥȖ ȏȡȒȡȠ ȓȑȜ ȝșȎȐȖȠȪ ȝȞȓȐȞȎ ȧȎȭ Ȑ ȘȎȚȓțȪ ǽȞȖ ȕȎȝȜșțȓțȖȖ Ȑȟȓȣ ȝȓȥȓȗ ȥȓȞȓȝȎȦȘȎ ȝȜ ȒȜȔȒȓȠ ȝȭȠȪ ȚȖțȡȠ ȝȞȓȔȒȓ ȥȓȚ țȎȥȖțȎȠȪ țȜȐȡȬ ȕȎȑȞȡȕȘȡ ȏȡșȩȔțȖȘȎ ǰȓȟȪ ȫȠȜȠ ȝȞȜȤȓȟȟ ȏȡȒȓȠ ȝȜȐȠȜȞȭȠȪȟȭ Ȑ ȏȓȟȘȜ țȓȥțȜȚ ȤȖȘșȓ ǰ ȑșȎȐȓ Țȩ ȟȜȕȒȎȒȖȚ ȝȞȜȑȞȎȚȚȡ brickcrafter Ȓșȭ ȝȜȒȘșȬȥȓțȖȭ ȐȠȜȞȜȗ ȥȓȞȓȝȎȦȘȖ ǽȜȒ ȡȝȞȎȐșȓțȖȓȚ ȫȠȜȗ ȝȞȜȑȞȎȚȚȩ ȥȓȞȓȝȎȦȘȎ ȏȡȒȓȠ ȖȕȐșȓȘȎȠȪ ȐȩȝșȎȐșȓțțȩȗ ȘȎȚȓțȪ Ȗȕ ȝȓȥȓȗ Ȗ ȖȟȝȜșȪȕȜȐȎȠȪ ȓȑȜ Ȓșȭ ȘȞȎȢȠȎ ȘȎȚȓțțȩȣ ȘȖȞȝȖȥȓȗ ȃȞȎțȖȠȪ ȑȜȠȜȐȩȓ ȏșȜȘȖ ȥȓȞȓȝȎȦȘȎ ȏȡȒȓȠ Ȑ ȏșȖ ȔȎȗȦȓȚ ȟȡțȒȡȘȓ

ĖĚĐ ěĜĚďĜČĘĘħ +7*516-: ȅȠȜȏȩ țȎȝȖȟȎȠȪ ȝȞȜȑȞȎȚȚȡ cobminer ȐȩȝȜșțȖ ȘȜȚȎțȒȡ edit cobminer Ȑ ȜȏȜșȜȥȘȓ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ Ȗ ȐȐȓȒȖ ȟșȓ ȒȡȬȧȖȗ ȘȜȒ cobminer >>ɉɪɨɝɪɚɦɦɚ ɝɟɧɟɪɚɬɨɪɚ ɛɭɥɵɠɧɢɤɚ ɗɥɚ ɋɜɟɣɝɚɪɬɚ Ⱦɨɛɵɱɚ ɛɭɥɵɠɧɢɤɚ ɫ ɩɨɦɨɳɶɸ ɝɟɧɟɪɚɬɨɪɚ ɱɟɪɟɩɚɲɤɚ ɢɡ @@ 3. RV ORDG$3, KDUH

ɡɚɝɪɭɡɤɚ ɦɨɞɭɥɹ KDUH

164

DZǹǮǰǮ


5. local numToDrop 6. local NUM_FURNACES = 5 7. 8. print('Starting mining program...') 9. while true do ÉžɨÉ›ɾɹÉš É›É­ÉĽÉľÉ É§É˘É¤Éš 11. if turtle.detect() then 12. print('Cobblestone detected. Mining...') WXUWOH GLJ ÉžɨÉ›ɾɹÉš É›É­ÉĽÉľÉ É§É˘É¤Éš 14. else 15. print('No cobblestone. Sleeping...') RV VOHHS Ɋɚɭɥɚ Éœ ɊɨɼɍÉ&#x;ɤɭɧɞɾ 17. end 18. ɊɪɨÉœÉ&#x;ɪɤÉš Ɋɨɼɨɧ ɼɢ ÉŤÉŹÉ&#x;ɤ É›É­ÉĽÉľÉ É§É˘É¤Éš 20. hare.selectItem('minecraft:cobblestone') 21. if turtle.getItemCount() == 64 then ɊɪɨÉœÉ&#x;ɪɤÉš ÉĄÉšÉŠÉŞÉšÉœÉĽÉ&#x;ɧÉš ɼɢ ɏɨɊɼɢÉœɨɌ ÉąÉ&#x;ÉŞÉ&#x;ÉŠÉšɲɤÉš 23. if turtle.getFuelLevel() < (2 * NUM_FURNACES) then 24. error('Turtle needs more fuel!') 25. end 26. ÉĄÉšÉ?ɪɭɥɤÉš É›É­ÉĽÉľÉ É§É˘É¤Éš Éœ ÉŠÉ&#x;ɹɢ 28. print('Dropping off cobblestone...') 29. for furnacesToFill = NUM_FURNACES, 1, -1 do WXUWOH EDFN ÉŠÉ&#x;ÉŞÉ&#x;ÉŚÉ&#x;ÉłÉ&#x;ɧɢÉ&#x; ɤ ÉŠÉ&#x;ɹɢ QXP7R'URS PDWK Ă€RRU WXUWOH JHW,WHP&RXQW furnacesToFill) WXUWOH GURS'RZQ QXP7R'URS ÉĄÉšÉ?ɪɭɥɤÉš É›É­ÉĽÉľÉ É§É˘É¤Éš Éœ ÉŠÉ&#x;ɹɢ 33. end 34. ÉœɨɥÉœÉŞÉšÉŹ ɤ É?É&#x;ɧÉ&#x;ÉŞÉšɏɨɪɭ É›É­ÉĽÉľÉ É§É˘É¤Éš 36. for moves = 1, NUM_FURNACES do 37. turtle.forward() 38. end 39. 40. if turtle.getItemCount() > 0 then 41. print('All furnaces full. Sleeping...') RV VOHHS Ɋɚɭɥɚ Éœ Ɍɢɧɭɏ

ǿȀǞǟǜČ€dzǚȊǿȀǰǟ ǹdzǝdzǞǎČ€ǟǞǎ ÇŻČ ÇšČ‰ǴǝǜǸǎ

165


43. end 44. end 45. end

ǿȜȣȞȎțȖ ȝȞȜȑȞȎȚȚȡ ȝȜȟșȓ ȐȐȜȒȎ Ȑȟȓȣ ȖțȟȠȞȡȘȤȖȗ ǻȎ ȔȎȐ ȘșȎȐȖȦȡ Ctrl ȜȠȘȞȜȗ ȚȓțȬ ǰȩȏȓȞȖ ȝȡțȘȠ [Save] Ȗ țȎȔȚȖ ȘșȎȐȖȦȡ Enter ǵȎȠȓȚ ȐȩȗȒȖ Ȗȕ ȞȓȒȎȘȠȜȞȎ țȎȔȎȐ ȘșȎȐȖȦȡ Ctrl ȐȩȏȞȎȐ ȝȡțȘȠ [Exit] Ȗ țȎȔȎȐ ȘșȎȐȖȦȡ Enter. ǸȞȜȚȓ ȠȜȑȜ Ƞȓȏȓ ȝȜțȎȒȜȏȖȠȟȭ ȚȜȒȡșȪ hare ȘȜȠȜȞȩȗ ȚȜȔțȜ ȟȘȎȥȎȠȪ ȐȩȝȜșțȖȐ ȘȜȚȎțȒȡ pastebin get wwzvaKuW hare.

ēČěğĝĖ ěĜĚďĜČĘĘħ +7*516-: ǿȜȕȒȎȐ ȑȓțȓȞȎȠȜȞ ȏȡșȩȔțȖȘȎ ȟ ȝȭȠȪȬ ȝȓȥȎȚȖ ȡȟȠȎțȜȐȖ ȥȓȞȓȝȎȦȘȡ ȝȜȐȓȞțȡȐ ȓȓ șȖȤȓȐȜȗ ȟȠȜȞȜțȜȗ Ș ȏșȜȘȡ ȏȡșȩȔ țȖȘȎ Ȗ ȕȎȝȡȟȠȖ ȝȞȜȑȞȎȚȚȡ cobminer ȅȓȞȓȝȎȦȘȎ țȎȥțȓȠ ȒȜȏȩȐȎȠȪ ȏȡșȩȔțȖȘ ȝȜȘȎ țȓ țȎȏȓȞȓȠ ȟȠȓȘ Ȑ ȏșȜȘȎ ȘȜȠȜ Ȟȩȗ ȕȎȠȓȚ ȕȎȑȞȡȕȖȠ Ȑ ȝȓȥȖ ǽȜȘȎ Ƞȩ țȓ ȒȜȏȓȞȓȦȪȟȭ ȒȜ ȑșȎ Ȑȩ Ȗ țȓ țȎȝȖȦȓȦȪ ȝȞȜȑȞȎȚȚȡ brickcrafter ȕȎȑȞȡȔȎȠȪ ȠȜȝșȖȐȜ Ȑ ȝȓȥȖ Ȗ ȖȕȐșȓȘȎȠȪ Ȗȕ țȖȣ ȝȓȞȓȝșȎȐșȓțțȩȓ ȘȎ Țȓțțȩȓ ȏșȜȘȖ ȝȞȖȒȓȠȟȭ ȐȞȡȥțȡȬ ȅȠȜȏȩ ȝȜșȡȥȖȠȪ ȠȜȝșȖȐȜ Ȓșȭ ȝȓȥȓȗ ȝȞȖȒȓȠȟȭ ȏȞȎȠȪ ȏșȜȘȖ ȒȞȓȐȓȟȖțȩ ȡ ȥȓȞȓȝȎȦȓȘ șȓȟȜȞȡȏȜȐ Ȗ ȝȓȞȓȔȖȑȎȠȪ ȫȠȖ ȏșȜȘȖ Ȑ ȡȑȜșȪ Ȑ ȜȠȒȓșȪțȩȣ ȝȓ ȥȎȣ DzȎȐȎȗ ȝȜȒȞȜȏțȜ ȞȎȟȟȚȜȠȞȖȚ ȘȎȔȒȡȬ ȥȎȟȠȪ ȝȞȜȑȞȎȚȚȩ cobminer. dzȟșȖ ȝȞȖ ȓȓ ȕȎȝȡȟȘȓ ȐȜȕțȖȘȎȬȠ ȜȦȖȏȘȖ ȠȧȎȠȓșȪțȜ ȟȞȎȐțȖ ȟȐȜȗ ȘȜȒ ȟ șȖȟȠȖțȑȜȚ Ȑ ȫȠȜȗ ȘțȖȑȓ ȚȜȔȓȠ ȏȩȠȪ ȡ Ƞȓȏȭ ȐȜȕțȖȘșȖ ȜȝȓȥȎȠȘȖ dzȟșȖ ȜȝȓȥȎȠȜȘ țȓȠ țȜ ȝȞȜȑȞȎȚȚȎ Ȑȟȓ ȞȎȐțȜ țȓ ȞȎȏȜȠȎȓȠ ȡȒȎșȖ ȢȎȗș ȐȩȝȜșțȖȐ ȘȜȚȎțȒȡ delete cobminer Ȏ ȕȎȠȓȚ ȕȎȑȞȡȕȖ ȘȜȒ ȕȎțȜȐȜ ȐȩȝȜșțȖȐ ȘȜ ȚȎțȒȡ pastebin get YhvSiw7e cobminer.

ęČĝĞĜĚĕĖČ ěĜĚďĜČĘĘħ Ĕ ĐĚčČĎėđęĔđ ĖĚęĝĞČęĞ ǽȓȞȐȩȓ ȒȐȓ ȟȠȞȜȘȖ ȝȞȜȑȞȎȚȚȩ ȟȜȒȓȞȔȎȠ Ȝȏȩȥțȩȗ ȘȜȚȚȓț ȠȎȞȖȗ ȘȜȠȜȞȩȗ ȜȝȖȟȩȐȎȓȠ ȥȠȜ ȫȠȜ ȕȎ ȝȞȜȑȞȎȚȚȎ

166

DZǹǮǰǮ


cobminer >>ɉɪɨɝɪɚɦɦɚ ɝɟɧɟɪɚɬɨɪɚ ɛɭɥɵɠɧɢɤɚ ɗɥɚ ɋɜɟɣɝɚɪɬɚ Ⱦɨɛɵɱɚ ɛɭɥɵɠɧɢɤɚ ɫ ɩɨɦɨɳɶɸ ɝɟɧɟɪɚɬɨɪɚ ɱɟɪɟɩɚɲɤɚ ɢɡ 2]] 3. RV ORDG$3, KDUH

ɡɚɝɪɭɡɤɚ ɦɨɞɭɥɹ KDUH 5. local numToDrop

ǸȜȒ Ȑ ȟȠȞȜȘȓ ȕȎȑȞȡȔȎȓȠ ȚȜȒȡșȪ hare ȘȜȠȜȞȩȗ ȝȞȜ ȑȞȎȚȚȎ ȟȚȜȔȓȠ ȐȩȕȐȎȠȪ ȟ ȝȜȚȜȧȪȬ ȢȡțȘȤȖȖ hare.selectItem() ǰ ȟȠȞȜȘȓ ȜȏȨȭȐșȭȓȠȟȭ ȝȓȞȓȚȓțțȎȭ ȟ ȖȚȓțȓȚ numToDrop ȘȜȠȜȞȎȭ ȏȡȒȓȠ ȖȟȝȜșȪȕȜȐȎȠȪȟȭ ȝȜȕȔȓ ǰ ȟȠȞȜȘȓ ȜȏȨȭȐșȭȓȠȟȭ ȝȓȞȓȚȓțțȎȭ NUM _ FURNACES ȘȜ ȠȜȞȎȭ ȟȜȒȓȞȔȖȠ ȤȓșȜȓ ȥȖȟșȜ ȟȜȜȠȐȓȠȟȠȐȡȬȧȓȓ ȘȜșȖȥȓȟȠȐȡ ȝȓȥȓȗ ȞȎȟȝȜșȜȔȓțțȩȣ ȕȎ ȥȓȞȓȝȎȦȘȜȗ cobminer 6. local NUM_FURNACES = 5

ǰ țȎȦȓȚ ȝȞȖȚȓȞȓ ȝȓȥȓȗ ȝȭȠȪ țȜ Ƞȩ ȚȜȔȓȦȪ ȡȟȠȎțȜȐȖȠȪ Ȗȣ ȟȘȜșȪȘȜ ȕȎȣȜȥȓȦȪ ǰ șȬȏȜȚ ȟșȡȥȎȓ ȝȓȞȓȚȓțțȜȗ NUM _ FURNACES ȟșȓȒȡȓȠ ȝȞȖȟȐȜȖȠȪ ȕțȎȥȓțȖȓ ȞȎȐțȜȓ ȘȜșȖȥȓȟȠȐȡ ȡȟȠȎțȜȐșȓțțȩȣ ȝȓȥȓȗ. ǶȚȭ ȝȓȞȓȚȓțțȜȗ NUM _ FURNACES ȡȘȎȕȎțȜ ȝȞȜȝȖȟțȩȚȖ ȏȡȘȐȎȚȖ ȝȜȠȜȚȡ ȥȠȜ ȫȠȜ ȢȖȘȟȖȞȜȐȎțțȎȭ ȝȓȞȓȚȓțțȎȭ țȎ ȕȩȐȎȓȚȎȭ ȘȜțȟȠȎțȠȜȗ ȋȠȜ ȕțȎȥȖȠ ȥȠȜ ȓȓ ȕțȎȥȓțȖȓ țȓ Ȗȕ ȚȓțȭȓȠȟȭ Ȑ ȝȞȜȤȓȟȟȓ ȖȟȝȜșțȓțȖȭ ȝȞȜȑȞȎȚȚȩ ǵȎȝȖȟȪ ȖȚȓț ȘȜțȟȠȎțȠ Ȑ ȐȓȞȣțȓȚ ȞȓȑȖȟȠȞȓ ² ȫȠȜ ȝȞȜȟȠȜ ȝȞȎȐȖșȜ ȜȢȜȞȚșȓ țȖȭ ǸȜțȟȠȎțȠȩ ² ȟȎȚȖ ȝȜ ȟȓȏȓ Ȝȏȩȥțȩȓ ȝȓȞȓȚȓțțȩȓ Ȏ ȖȚȭ ȝȞȜȝȖȟțȩȚȖ ȏȡȘȐȎȚȖ ȝȞȜȟȠȜ țȎȝȜȚȖțȎȓȠ ȥȠȜ țȓ ȟșȓȒȡȓȠ ȝȖȟȎȠȪ ȘȜȒ ȘȜȠȜȞȩȗ ȖȕȚȓțȭȓȠ ȕțȎȥȓțȖȓ ȫȠȜȗ ȝȓȞȓȚȓțțȜȗ ǶȟȝȜșȪȕȜȐȎțȖȓ ȝȓȞȓȚȓțțȜȗ ȕțȎȥȓțȖȓ ȘȜȠȜȞȜȗ țȖȘȜȑȒȎ țȓ ȚȓțȭȓȠȟȭ ȚȜȔȓȠ ȝȜȘȎȕȎȠȪȟȭ ȟȠȞȎțțȩȚ țȜ ȘȜțȟȠȎțȠȩ ȒȓșȎ ȬȠ ȘȜȒ ȏȜșȓȓ ȝȜțȭȠțȩȚ Ȗ ȡȝȞȜȧȎȬȠ ȐțȓȟȓțȖȓ ȖȕȚȓțȓțȖȗ Ȑ ȏȡȒȡȧȓȚ ǿȚȜȠȞȖ DzȜȝȡȟȠȖȚ Ȑ ȘȜȒȓ țȡȔțȜ ȡȘȎȕȎȠȪ ȘȜșȖȥȓȟȠȐȜ ȝȓȥȓȗ ǻȜ ȓȟșȖ Ƞȩ ȖȟȝȜșȪȕȡȓȦȪ ȥȖȟșȜ ȐȚȓȟȠȜ ȘȜțȟȠȎțȠȩ ȐȜ ȐȟȓȚ ȘȜȒȓ Ȏ ȕȎȠȓȚ ȖȕȚȓțȖȦȪ ȘȜșȖȥȓȟȠȐȜ ȝȓȥȓȗ Ƞȓȏȓ ȝȞȖ ȒȓȠȟȭ ȜȏțȜȐșȭȠȪ Ȑȟȓ ȐȣȜȔȒȓțȖȭ ȑȒȓ ȖȟȝȜșȪȕȡȓȠȟȭ ȫȠȜ ȥȖȟ șȜ dzȟșȖ Ȕȓ ȖȟȝȜșȪȕȜȐȎȠȪ ȘȜțȟȠȎțȠȡ ȠȖȝȎ NUM _ FURNACES

ǿȀǾǼǶȀdzǹȊǿȀǰǼ DZdzǻdzǾǮȀǼǾǮ ǯȁǹȉǴǻǶǸǮ

167


ȠȜ ȘȜȒ țȓ țȡȔțȜ ȜȏțȜȐșȭȠȪ ³ ȒȜȟȠȎȠȜȥțȜ ȖȕȚȓțȖȠȪ ȕțȎȥȓ țȖȓ Ȑ ȖțȟȠȞȡȘȤȖȖ ȝȞȖȟȐȎȖȐȎțȖȭ Ƞ ȓ ȜȒțȡ ȟȠȞȜȘȡ ȘȜȒȎ ȑȒȓ Ƞȩ ȝȞȖȟȐȎȖȐȎȓȦȪ ȘȜțȟȠȎțȠȓ ȕțȎȥȓțȖȓ ȘȜȠȜȞȎȭ Ȑ țȎȦȓȚ ȟșȡȥȎȓ țȎȣȜȒȖȠȟȭ Ȑ ȟȠȞȜȘȓ ǸȜțȟȠȎțȠȩ ȒȓșȎȬȠ ȘȜȒ ȝȜțȭȠ țȩȚ Ȗ ȡȝȞȜȧȎȬȠ ȓȑȜ ȖȕȚȓțȓțȖȓ

ĐĚčħģČ čğėħĒęĔĖČ Ĕē ďđęđĜČĞĚĜČ ǿȜ ȟȠȞȜȘȖ țȎȥȖțȎȓȠȟȭ ȤȖȘș while ȋȠȜ ȜȟțȜȐțȜȗ ȤȖȘș ȝȞȜȑȞȎȚȚȩ Ȑ ȘȜȠȜȞȜȚ ȥȓȞȓȝȎȦȘȎ ȒȜȏȩȐȎȓȠ ȏȡșȩȔțȖȘ ȝȓ ȞȓȚȓȧȎȓȠȟȭ ȐȒȜșȪ ȝȓȥȓȗ Ȗ ȕȎȑȞȡȔȎȓȠ ȏȡșȩȔțȖȘ Ȑ ȝȓȥȖ cobminer 8. print('Starting mining program...') 9. while true do ɞɨɛɵɱɚ ɛɭɥɵɠɧɢɤɚ 11. if turtle.detect() then 12. print('Cobblestone detected. Mining...') WXUWOH GLJ ɞɨɛɵɱɚ ɛɭɥɵɠɧɢɤɚ

ǽȓȞȐȎȭ ȥȎȟȠȪ ȤȖȘșȎ ȜȠȐȓȥȎȬȧȎȭ ȕȎ ȒȜȏȩȥȡ ȏȡșȩȔ țȖȘȎ țȎȥȖțȎȓȠȟȭ Ȑ ȟȠȞȜȘȓ ȂȡțȘȤȖȭ turtle.detect() ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ true ȓȟșȖ ȏșȜȘ ȏȡșȩȔțȖȘȎ țȎȣȜ ȒȖȠȟȭ ȝȓȞȓȒ ȥȓȞȓȝȎȦȘȜȗ ǰ ȫȠȜȚ ȟșȡȥȎȓ ȝȞȜȑȞȎȚȚȎ ȐȩȐȜ ȒȖȠ ȟȜȜȏȧȓțȖȓ 'Cobblestone detected. Mining...' Ȗ ȐȩȕȩȐȎȭ ȢȡțȘȤȖȬ turtle.dig() Ȑ ȟȠȞȜȘȓ ȒȜȏȩȐȎȓȠ ȏȡ șȩȔțȖȘ ǻȜ ȓȟșȖ ȏȡșȩȔțȖȘȎ țȓȠ ȝȜȠȜȚȡ ȥȠȜ Ȝț ȓȧȓ țȓ ȡȟȝȓș Ȝȏ ȞȎȕȜȐȎȠȪȟȭ ȝȜȟșȓ ȒȜȏȩȥȖ ȏșȜȘȎ ȢȡțȘȤȖȭ turtle.detect() ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ false ȀȜȑȒȎ ȡȟșȜȐȖȓ ȖțȟȠȞȡȘȤȖȖ if ȝȞȖțȖȚȎȓȠ ȕțȎȥȓțȖȓ false Ȗ ȐȩȝȜșțȭȓȠȟȭ ȏșȜȘ ȘȜȒȎ ȝȜȟșȓ ȖțȟȠȞȡȘȤȖȖ else ȞȎȟȝȜșȜȔȓțțȜȗ Ȑ ȟȠȞȜȘȓ cobminer 14. else 15. print('No cobblestone. Sleeping...') RV VOHHS ɩɚɭɡɚ ɜ ɩɨɥɫɟɤɭɧɞɵ 17. end

ȋȠȜȠ ȘȜȒ ȜȠȜȏȞȎȔȎȓȠ ȟȜȜȏȧȓțȖȓ 'No cobblestone. Sleeping...' Ȗ ȐȩȕȩȐȎȓȠ ȢȡțȘȤȖȬ os.sleep(0.5) Ȓșȭ ȝȞȖ

168

DZǹǮǰǮ


ȜȟȠȎțȜȐȘȖ ȖȟȝȜșțȓțȖȭ ȝȞȜȑȞȎȚȚȩ țȎ ȝȜșȟȓȘȡțȒȩ ȥȓȑȜ ȒȜ ȟȠȎȠȜȥțȜ Ȓșȭ ȢȜȞȚȖȞȜȐȎțȖȭ țȜȐȜȑȜ ȏșȜȘȎ Ǽț ȏȡȒȓȠ ȒȜȏȩȠ ȘȜȑȒȎ ȝȞȜȑȞȎȚȚȎ ȐȜȕȜȏțȜȐȖȠ ȞȎȏȜȠȡ ǸȜȑȒȎ ȥȓȞȓȝȎȦȘȎ țȎ ȏȓȞȓȠ ȝȜșțȩȗ ȟȠȓȘ ȏȡșȩȔțȖȘȎ ȏșȜȘȎ ȓȗ ȏȡȒȓȠ țȡȔțȜ ȝȓȞȓȝșȎȐȖȠȪ ȓȑȜ Ȑ ȝȓȥȎȣ

ĎēČĔĘĚĐđĕĝĞĎĔđ ĝ ěđģČĘĔ ǶțȠȓȞȢȓȗȟ ȝȓȥȖ ȟȜȒȓȞȔȖȠ ȠȞȖ ȭȥȓȗȘȖ ȠȜȝșȖȐțȡȬ Ȓșȭ ȕȎȑȞȡȕȘȖ ȠȜȝșȖȐȎ țȎȝȞȖȚȓȞ ȡȑșȭ ȐȐȜȒțȡȬ Ȓșȭ ȕȎȑȞȡȕ ȘȖ ȟȩȞȪȭ țȎ ȝȓȞȓȝșȎȐȘȡ Ȗ ȐȩȐȜȒțȡȬ ȑȒȓ ȞȓȕȡșȪȠȎȠ ȝȓ ȞȓȝșȎȐȘȖ ȟȜȣȞȎțȭȓȠȟȭ ȒȜ Ƞȓȣ ȝȜȞ ȝȜȘȎ ȖȑȞȜȘ țȓ ȕȎȏȓȞȓȠ ȏșȜȘȖ ǽȜșȜȔȓțȖȓ ȥȓȞȓȝȎȦȘȖ ȜȠțȜȟȖȠȓșȪțȜ ȝȓȥȖ ȜȝȞȓȒȓ șȭȓȠ ȐȜȕȚȜȔțȩȓ ȒȓȗȟȠȐȖȭ ȥȓȞȓȝȎȦȘȖ țȎȝȞȖȚȓȞ ȕȎȑȞȡȕ Șȡ ȠȜȝșȖȐȎ Ȑ ȝȓȥȪ ȕȎȑȞȡȕȘȡ ȟȩȞȪȭ Ȓșȭ ȝȓȞȓȝșȎȐȘȖ ȖșȖ ȟȏȜȞ ȑȜȠȜȐȜȑȜ ȝȞȜȒȡȘȠȎ dzȟșȖ ȥȓȞȓȝȎȦȘȎ țȎȣȜȒȖȠȟȭ ȟȏȜȘȡ ȜȠ ȝȓȥȖ ȜțȎ ȚȜȔȓȠ ȕȎȑȞȡȔȎȠȪ ȖșȖ ȜȥȖȧȎȠȪ ȠȜȝșȖȐțȡȬ ȭȥȓȗȘȡ dzȟșȖ ȥȓȞȓȝȎȦȘȎ țȎȣȜȒȖȠȟȭ țȎȒ ȝȓȥȪȬ ȜțȎ ȚȜȔȓȠ ȕȎȑȞȡȔȎȠȪ ȖșȖ ȜȥȖȧȎȠȪ ȐȐȜȒțȡȬ ȭȥȓȗȘȡ ȝȓȥȖ dzȟșȖ ȥȓ ȞȓȝȎȦȘȎ țȎȣȜȒȖȠȟȭ țȖȔȓ ȝȓȥȖ ȜțȎ ȚȜȔȓȠ ȖȕȐșȓȘȎȠȪ Ȟȓ ȕȡșȪȠȎȠ ȝȓȞȓȝșȎȐȘȖ ǻȎ ȞȖȟ ȝȜȘȎȕȎțȩ ȫȠȖ ȝȜșȜȔȓțȖȭ ȥȓȞȓȝȎȦȘȖ

Вводная ячейка Печь Топливная ячейка

Выводная ячейка

ˀ̛̭͘ ϵ͘ϰ͘ ʿ̨̨̛̣̙̖̦̖ ̸̡̛̖̬̖̪̹̌ ̨̪̬̖̖̣̖̯͕̔́ ̭ ̡̡̨̜̌ ̸̡̨̖̜̜́ ̸̛̪̖ ̨̦̌ ̨̛̥̖̜̭̯̱̖̯̏̌̔̏̚

ȀȓȝȓȞȪ ȥȓȞȓȝȎȦȘȎ ȕȎȑȞȡȕȖȠ ȏșȜȘȖ ȏȡșȩȔțȖȘȎ Ȑ ȝȓȥȖ

ǿȀǾǼǶȀdzǹȊǿȀǰǼ DZdzǻdzǾǮȀǼǾǮ ǯȁǹȉǴǻǶǸǮ

169


ğėğģĤđęĔđ ĖĚĐČ ĝ ěĚĘĚĥĨĪ ĖĚęĝĞČęĞ ȁȏȓȒȖȐȦȖȟȪ ȥȠȜ ȟȡȧȓȟȠȐȡȓȠ ȏșȜȘ ȏȡșȩȔțȖȘȎ Ȓșȭ ȒȜȏȩȥȖ ȝȞȜȑȞȎȚȚȎ ȝȞȜȐȓȞȭȓȠ ȘȜșȖȥȓȟȠȐȜ ȡȔȓ ȟȜȏȞȎțțȩȣ ȥȓȞȓȝȎȦ ȘȜȗ ȏșȜȘȜȐ ȒȜȟȠȖȑșȜ șȖ ȜțȜ ȚȎȘȟȖȚȎșȪțȜȑȜ ȕțȎȥȓțȖȭ ² dzȟșȖ ȚȎȘȟȖȚȡȚ ȒȜȟȠȖȑțȡȠ ȥȓȞȓȝȎȦȘȎ ȑȜȠȜȐȖȠȟȭ ȕȎȑȞȡȕȖȠȪ ȏȡșȩȔțȖȘ Ȑ ȝȓȥȖ Ȓșȭ ȥȓȑȜ ȝȞȜȐȓȞȭȓȠ ȒȜȟȠȎȠȜȥțȜ șȖ ȡ țȓȓ ȠȜȝșȖȐȎ Ȓșȭ ȝȓȞȓȚȓȧȓțȖȭ Ș ȝȓȥȎȚ Ȗ ȜȏȞȎȠțȜ Ș ȑȓțȓȞȎȠȜȞȡ ȏȡșȩȔțȖȘȎ cobminer ɩɪɨɜɟɪɤɚ ɩɨɥɨɧ ɥɢ ɫɬɟɤ ɛɭɥɵɠɧɢɤɚ 20. hare.selectItem('minecraft:cobblestone') 21. if turtle.getItemCount() == 64 then ɩɪɨɜɟɪɤɚ ɡɚɩɪɚɜɥɟɧɚ ɥɢ ɬɨɩɥɢɜɨɦ ɱɟɪɟɩɚɲɤɚ 23. if turtle.getFuelLevel() < (2 * NUM_FURNACES) then 24. error('Turtle needs more fuel!') 25. end

ǽȞȜȑȞȎȚȚȎ ȟ ȝȜȚȜȧȪȬ ȢȡțȘȤȖȖ hare.selectItem() Ȑ ȟȠȞȜȘȓ ȜȏȞȎȧȎȓȠȟȭ Ș ȥȓȞȓȝȎȦȘȓ ǸȜȒ Ȑ ȟȠȞȜȘȓ Ȑȩȕȩ ȐȎȓȠ ȢȡțȘȤȖȬ turtle.getItemCount() ȥȠȜȏȩ ȝȞȜȐȓȞȖȠȪ ȘȜșȖȥȓȟȠȐȜ ȏșȜȘȜȐ ȏȡșȩȔțȖȘȎ ȟȜȏȞȎțțȩȣ ȥȓȞȓȝȎȦȘȜȗ dzȟșȖ ȏșȜȘȜȐ ȏȡșȩȔțȖȘȎ Ȑ Ȝȏȧȓȗ ȟșȜȔțȜȟȠȖ ȝȞȜȑȞȎȚȚȎ ȐȩȕȩȐȎȓȠ ȢȡțȘȤȖȬ turtle.getFuelLevel() ȥȠȜȏȩ ȝȞȜȐȓ ȞȖȠȪ ȡȞȜȐȓțȪ ȠȜȝșȖȐȎ ȥȓȞȓȝȎȦȘȖ 1

2

3

4

5

10

9

8

7

6

5

ˀ̛̭͘ ϵ͘ϱ͘ ʻ̵̨̨̨̛̖̥̖̍̔ ̸̡̨̨̛̣̖̭̯̏ ̨̛̯̪̣̏̌ ̏ ̔̏̌ ̬̌̌̚ ̨̣̹̖̍̽ ̸̡̨̛̣̖̭̯̏̌ ̸̪̖̖̜͕ ̡̯̌ ̡̡̌ ̸̡̖̬̖̪̹̖̌ ̵̨̨̨̛̦̖̥̍̔ ̪̖̬̖̥̖̺̯̭̌̽́ ̦̖ ̨̡̨̯̣̽ ̡̨ ̭̖̥̏ ̸̪̖̥͕̌ ̨̦ ̛ ̯̖̥̌̚ ̖̬̦̱̯̭̏̽́ ̦̌ ̵̨̛̭̦̱̔̀ ̶̨̛̛̪̀̚

170

DZǹǮǰǮ


ǸȜȒ Ȑ ȟȠȞȜȘȓ ȝȞȜȐȓȞȭȓȠ ȥȠȜȏȩ ȡȞȜȐȓțȪ ȠȜȝșȖȐȎ ȥȓ ȞȓȝȎȦȘȖ ȏȩș țȓ Țȓțȓȓ ȥȓȚ ȞȓȕȡșȪȠȎȠ ȜȝȓȞȎȤȖȖ 2 * NUM _ FURNACES ȋȠȜ ȕțȎȥȓțȖȓ Țȩ ȏȓȞȓȚ ȝȜȠȜȚȡ ȥȠȜ ȥȓȞȓȝȎȦȘȓ ȠȞȓȏȡȓȠȟȭ ȠȜȝșȖȐȜ Ȓșȭ ȝȓȞȓȚȓȧȓțȖȭ Ș ȘȎȔȒȜȗ ȝȓȥȖ Ȗ ȐȜȕ ȐȞȎȧȓțȖȭ Ȑ ȖȟȣȜȒțȜȓ ȝȜșȜȔȓțȖȓ ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ dzȟșȖ ȡ ȥȓȞȓȝȎȦȘȖ țȓȒȜȟȠȎȠȜȥțȜ ȠȜȝșȖȐȎ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȐȩȕȩȐȎȓȠ ȢȡțȘȤȖȬ error() ȐȩȐȜȒȭȧȡȬ ȠȓȘȟȠ 'Turtle needs more fuel!' ǵȎȠȓȚ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȕȎȐȓȞȦȎȓȠ ȞȎȏȜ Ƞȡ ȝȞȜȑȞȎȚȚȩ

ēČďĜğēĖČ čğėħĒęĔĖČ Ď ěđģĔ dzȟșȖ ȡ ȥȓȞȓȝȎȦȘȖ țȎȘȜȝȖșȜȟȪ ȏșȜȘȎ ȏȡșȩȔțȖȘȎ Ȗ ȖȚȓȓȠ ȟȭ ȒȜȟȠȎȠȜȥțȜȓ ȘȜșȖȥȓȟȠȐȜ ȠȜȝșȖȐȎ Ȓșȭ ȝȓȞȓȚȓȧȓțȖȭ ȝȜ ȝȓ ȥȎȚ Ȗ ȐȜȕȐȞȎȧȓțȖȭ țȎ ȖȟȣȜȒțȡȬ ȝȜȕȖȤȖȬ ȜțȎ ȚȜȔȓȠ țȎȥȎȠȪ ȒȐȖȔȓțȖȓ Ȗ ȕȎȑȞȡȕȘȡ ȏȡșȩȔțȖȘȎ ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ

ˀ̛̭͘ ϵ͘ϲ͘ ˋ̡̖̬̖̪̹̌̌ ̬̱̙̖̯̌̐̌̚ ̨̡̛̣̍ ̡̛̱̣̼̙̦̍̌ ̏ ̸̛̪̖

ȄȖȘș for Ȑ ȟȠȞȜȘȓ țȓȚțȜȑȜ ȜȠșȖȥȎȓȠȟȭ ȜȠ ȤȖȘșȜȐ for ȘȜȠȜȞȩȓ Țȩ ȖȟȝȜșȪȕȜȐȎșȖ ȞȎțȓȓ ȆȎȑ ȤȖȘșȎ for ȚȜȔȓȠ ȞȎ Ȑȓț Ȑ ȟșȡȥȎȓ ȐȩȕȜȐȎ for i = 1, 10 do Ȁȩ ȠȎȘȔȓ ȚȜ ȔȓȦȪ ȖȟȝȜșȪȕȜȐȎȠȪ ȦȎȑ ȒȞȡȑȜȗ ȐȓșȖȥȖțȩ ȡȘȎȕȎȐ ȓȑȜ țȓȝȜ ȟȞȓȒȟȠȐȓțțȜ ȝȞȖ ȐȩȕȜȐȓ ǰȚȓȟȠȜ ȒȜȏȎȐșȓțȖȭ 1 ȝȞȖ ȘȎȔȒȜȗ ȖȠȓȞȎȤȖȖ ȤȖȘș for ȒȜȏȎȐȖȠ ȥȖȟșȜ ȡȘȎȕȎțțȜȓ Ȑ ȎȞȑȡȚȓțȠȓ ȦȎȑȎ dzȟșȖ ȖȟȝȜșȪȕȜȐȎȠȪ ȜȠȞȖȤȎȠȓșȪțȜȓ ȥȖȟșȜ țȎȝȞȖȚȓȞ for i = 10, 1, -1 do ȟȥȓȠȥȖȘ ȤȖȘșȎ ȏȡȒȓȠ ȞȎȏȜȠȎȠȪ țȎ ȡȚȓțȪȦȓțȖȓ

ǿȀǾǼǶȀdzǹȊǿȀǰǼ DZdzǻdzǾǮȀǼǾǮ ǯȁǹȉǴǻǶǸǮ

171


cobminer ɡɚɝɪɭɡɤɚ ɛɭɥɵɠɧɢɤɚ ɜ ɩɟɱɢ 28. print('Dropping off cobblestone...') 29. for furnacesToFill = NUM_FURNACES, 1, -1 do WXUWOH EDFN ɩɟɪɟɦɟɳɟɧɢɟ ɤ ɩɟɱɢ QXP7R'URS PDWK ÀRRU WXUWOH JHW,WHP&RXQW furnacesToFill) WXUWOH GURS'RZQ QXP7R'URS ɡɚɝɪɭɡɤɚ ɛɭɥɵɠɧɢɤɚ ɜ ɩɟɱɢ 33. end

ȄȖȘș for Ȑ ȟȠȞȜȘȓ ȟȜȑșȎȟțȜ ȕțȎȥȓțȖȬ ȘȜțȟȠȎțȠȩ NUM _ FURNACES Ƞ ȓ 5 ȜȝȞȓȒȓșȭȓȠ ȘȜșȖȥȓȟȠȐȜ ȝȓȞȓȚȓȧȓ țȖȗ ȥȓȞȓȝȎȦȘȖ țȎȕȎȒ Ƕ ȠȎȘ ȘȎȘ ȜȠȟȥȓȠ ȝȞȜȖȕȐȜȒȖȠȟȭ ȜȠ 5 ȒȜ 1 Ȏ țȓ ȜȠ 1 ȒȜ 5 Țȩ ȚȜȔȓȚ ȖȟȝȜșȪȕȜȐȎȠȪ ȝȓȞȓȚȓțțȡȬ furnacesToFill ȤȖȘșȎ for Ȑ ȟȠȞȜȘȓ ȥȠȜȏȩ ȞȎȟȟȥȖȠȎȠȪ ȟȘȜșȪȘȜ ȏșȜȘȜȐ ȏȡșȩȔțȖȘȎ țȡȔțȜ ȕȎȑȞȡȕȖȠȪ Ȑ ȘȎȔȒȡȬ ȝȓȥȪ ǰ ȫȠȜȚ ȐȩȥȖȟșȓțȖȖ ȖȟȝȜșȪȕȡȓȠȟȭ ȢȡțȘȤȖȭ math. ÀRRU() DzȎȐȎȗ ȝȜȟȚȜȠȞȖȚ ȘȎȘ ȞȎȏȜȠȎȓȠ ȫȠȎ ȢȡțȘȤȖȭ

ĚĖĜğďėđęĔđ ģĔĝđė ĝ ěĚĘĚĥĨĪ ĠğęĖĢĔĕ 5)<0 .477: Ĕ 5)<0 +-14 ȂȡțȘȤȖȭ math.ÀRRU() ȜȘȞȡȑșȭȓȠ Ȑ ȚȓțȪȦȡȬ ȟȠȜȞȜțȡ ȝȓ ȞȓȒȎțțȜȓ ȓȗ ȥȖȟșȜ Ȗ ȐȜȕȐȞȎȧȎȓȠ ȜȘȞȡȑșȓțțȜȓ Ȏ ȢȡțȘȤȖȭ math.ceil() ȜȘȞȡȑșȭȓȠ ȝȓȞȓȒȎțțȜȓ ȥȖȟșȜ Ȑ ȏyșȪȦȡȬ ȟȠȜ ȞȜțȡ Ȗ ȐȜȕȐȞȎȧȎȓȠ ȓȑȜ ȅȠȜȏȩ ȝȜȟȚȜȠȞȓȠȪ ȘȎȘ ȫȠȖ ȢȡțȘ ȤȖȖ ȞȎȏȜȠȎȬȠ Ȑ ȜȏȜșȜȥȘȓ /XD ȐȐȓȒȖ ȟșȓȒȡȬȧȖȓ ȖțȟȠȞȡȘ ȤȖȖ OXD! PDWK ÀRRU

4 OXD! PDWK ÀRRU

4 OXD! PDWK ÀRRU

10 OXD! PDWK ÀRRU

12 lua> math.ceil(4.2) 5

172

DZǹǮǰǮ


lua> math.ceil(4.9) 5 lua> math.ceil(10.5) 11 X lua> math.ceil(12.0) 12

ǽȓȞȓȒȎȥȎ ȒȞȜȏțȜȑȜ ȕțȎȥȓțȖȭ ȢȡțȘȤȖȖ math.floor() ȝȞȖȐȜȒȖȠ Ș ȜȠȜȏȞȎȔȓțȖȬ ȤȓșȜȗ ȥȎȟȠȖ ȥȖȟșȎ ȏȓȕ ȒȓȟȭȠȖȥ țȜȑȜ ȞȎȕȒȓșȖȠȓșȭ ȠȜȑȒȎ ȘȎȘ ȝȓȞȓȒȎȥȎ ȠȎȘȜȑȜ Ȕȓ ȕțȎȥȓțȖȭ ȢȡțȘȤȖȖ math.ceil() ȜȘȞȡȑșȭȓȠ ȥȖȟșȜ ȒȜ ȟșȓȒȡȬȧȓȑȜ Ȥȓ șȜȑȜ ȥȖȟșȎ dzȟșȖ ȝȓȞȓȒȎȠȪ ȢȡțȘȤȖȖ math.ceil() ȥȖȟșȜ ȟȜ ȕțȎȥȓțȖȓȚ 0 ȜțȜ ȘȎȘ Ƞȩ ȚȜȔȓȦȪ ȐȖȒȓȠȪ ȜȘȞȡȑșȭȓȠȟȭ ȒȜ ȏșȖȔȎȗȦȓȑȜ ȤȓșȜȑȜ ȥȖȟșȎ X ȂȡțȘȤȖȖ ȜȘȞȡȑșȓțȖȭ ȝȜȚȜ ȑȡȠ țȎȚ ȞȎȟȝȞȓȒȓșȭȠȪ ȏȡșȩȔțȖȘ Ȑ ȝȓȥȖ ȞȎȐțȜȚȓȞțȜ

ĎħģĔĝėđęĔđ ĖĚėĔģđĝĞĎČ čğėħĒęĔĖČ Đėī ēČďĜğēĖĔ Ď ĖČĒĐğĪ ěđģĨ ǰ ȖȑȞȓ 0LQHFUDIW ȐȐȜȒțȎȭ ȭȥȓȗȘȎ Ȑ ȖțȠȓȞȢȓȗȟȓ ȝȓȥȖ ȚȜ ȔȓȠ ȟȜȒȓȞȔȎȠȪ țȓ ȏȜșȓȓ ȏșȜȘȜȐ Ȓșȭ ȝȓȞȓȝșȎȐȘȖ Dzșȭ ȒȜȟȠȖȔȓțȖȭ ȚȎȘȟȖȚȎșȪțȜȗ ȫȢȢȓȘȠȖȐțȜȟȠȖ țȎȦȓȑȜ ȕȎȐȜ ȒȖȘȎ Țȩ ȣȜȠȖȚ ȥȠȜȏȩ Ȑȟȓ ȝȓȥȖ ȝȓȞȓȝșȎȐșȭșȖ ȏȡșȩȔțȖȘ ȜȒțȜȐȞȓȚȓțțȜ ȅȠȜȏȩ ȞȎȟȟȥȖȠȎȠȪ ȟȘȜșȪȘȜ ȏșȜȘȜȐ ȏȡșȩȔ țȖȘȎ țȡȔțȜ ȕȎȑȞȡȕȖȠȪ Ȑ ȘȎȔȒȡȬ ȝȓȥȪ Țȩ ȞȎȕȒȓșȖȚ ȘȜșȖ ȥȓȟȠȐȜ ȏșȜȘȜȐ ȏȡșȩȔțȖȘȎ Ȑ ȠȓȘȡȧȓȗ ȭȥȓȗȘȓ țȎ ȕțȎȥȓțȖȓ ȘȜțȟȠȎțȠȩ NUM _ FURNACES ǽȜȟȘȜșȪȘȡ Ȑ țȎȦȓȚ ȟșȡȥȎȓ ȝȓȥȓȗ ȝȭȠȪ ȫȠȎ ȜȝȓȞȎȤȖȭ ȒȓșȓțȖȭ țȓ ȚȜȔȓȠ ȝȞȖȐȓȟȠȖ Ș ȤȓșȜȚȡ ȥȖȟșȡ Ƞ ȓ Țȩ ȝȓȞȓȒȎȒȖȚ ȫȠȜ ȥȖȟșȜ ȢȡțȘȤȖȖ math.ÀRRU() ȘȜȠȜȞȎȭ ȜȘȞȡȑșȖȠ ȕțȎȥȓțȖȓ 12,8 ȒȜ 12 ǵȎ ȠȓȚ Ȑ ȘȎȔȒȡȬ ȝȓȥȪ Țȩ ȚȜȔȓȚ ȕȎȑȞȡȕȖȠȪ ȖȚȓțțȜ ȏșȜȘȜȐ ȏȡșȩȔțȖȘȎ ȥȠȜȏȩ Ȑȟȓ ȝȓȥȖ ȟȚȜȑșȖ ȝȓȞȓȝșȎȐșȭȠȪ ȏșȜȘȖ ȜȒțȜȐȞȓȚȓțțȜ ǻȜ ȠȡȠ ȐȜȕțȖȘȎȓȠ țȓȟȘȜșȪȘȜ ȝȞȜȏșȓȚ ǻȎȝȞȖȚȓȞ ȓȟșȖ ȡ țȎȟ ȓȟȠȪ ȏșȜȘȎ ȏȡșȩȔțȖȘȎ Ȗ ȝȓȥȓȗ ȥȓȞȓȝȎȦȘȎ ȕȎȑȞȡ ȕȖȠ ȝȜ ȏșȜȘȜȐ Ȑ ȘȎȔȒȡȬ ȝȓȥȪ Ȗ ȏșȜȘȎ ȜȟȠȎțȓȠȟȭ ȅȓȞȓ ȝȎȦȘȎ ȚȜȔȓȠ ȒȜȏȩȐȎȠȪ ȏȡșȩȔțȖȘ ȏȩȟȠȞȓȓ ȥȓȚ ȝȓȥȖ ȚȜȑȡȠ ȓȑȜ ȝșȎȐȖȠȪ Ȏ ȘȎȔȒȎȭ ȝȓȥȪ ȚȜȔȓȠ ȟȜȒȓȞȔȎȠȪ țȓ ȏȜșȓȓ ȏșȜȘȜȐ Ȑ ȐȐȜȒțȜȗ ȭȥȓȗȘȓ Dzșȭ ȘȎȔȒȜȗ ȕȎȝȜșțȓțțȜȗ ȝȓȥȖ ȘȜȠȜȞȎȭ țȓ ȚȜȔȓȠ ȏȜșȪȦȓ ȝȞȖțȖȚȎȠȪ ȏȡșȩȔțȖȘ ȥȓȞȓȝȎȦ

ǿȀǾǼǶȀdzǹȊǿȀǰǼ DZdzǻdzǾǮȀǼǾǮ ǯȁǹȉǴǻǶǸǮ

173


ȘȎ ȏȡȒȓȠ ȟȜȣȞȎțȭȠȪ ȥȎȟȠȪ ȟȐȜȖȣ ȏșȜȘȜȐ ² Ȑ țȎȦȓȚ ȟșȡȥȎȓ ȅȠȜȏȩ ȞȓȦȖȠȪ ȫȠȡ ȝȞȜȏșȓȚȡ Țȩ ȐȩȝȜșțȖȚ ȒȞȡȑȜȗ ȞȎȟ ȥȓȠ DzȎȐȎȗ ȞȎȟȟȚȜȠȞȖȚ ȟȠȞȜȘȖ ² cobminer 29. for furnacesToFill = NUM_FURNACES, 1, -1 do WXUWOH EDFN ɩɟɪɟɦɟɳɟɧɢɟ ɤ ɩɟɱɢ QXP7R'URS PDWK ÀRRU WXUWOH JHW,WHP&RXQW furnacesToFill) WXUWOH GURS'RZQ QXP7R'URS ɡɚɝɪɭɡɤɚ ɛɭɥɵɠɧɢɤɚ ɜ ɩɟɱɢ 33. end

ǿ ȝȜȚȜȧȪȬ ȝȓȞȓȚȓțțȜȗ numToDrop Ȑ ȟȠȞȜȘȓ 31 ȐȩȥȖȟ șȭȓȠȟȭ ȘȜșȖȥȓȟȠȐȜ ȏșȜȘȜȐ ȏȡșȩȔțȖȘȎ Ȓșȭ ȘȎȔȒȜȗ ȝȓȥȖ ² QXP7R'URS PDWK ÀRRU WXUWOH JHW,WHP&RXQW IXUnacesToFill). ǻȜ ȐȚȓȟȠȜ ȠȜȑȜ ȥȠȜȏȩ ȐȩȥȖȟșȖȠȪ ȜȒȖț ȞȎȕ ȘȜșȖȥȓȟȠȐȜ ȏȡșȩȔțȖȘȎ Ȓșȭ ȕȎȑȞȡȕȘȖ Ȑ ȜȒțȡ ȝȓȥȪ Ȗ ȟȜȣȞȎ țȖȠȪ ȫȠȜ ȥȖȟșȜ Ȑ ȝȓȞȓȚȓțțȜȗ numToDrop ȓȓ ȕțȎȥȓțȖȓ ȝȓȞȓ ȟȥȖȠȩȐȎȓȠȟȭ ȘȎȔȒȩȗ ȞȎȕ ȘȜȑȒȎ ȥȓȞȓȝȎȦȘȎ ȝȓȞȓȣȜȒȖȠ Ș ȟșȓȒȡȬȧȓȗ ȝȓȥȖ ǰ ȠȎȏș ȝȜȘȎȕȎțȜ ȘȎȘ ȕțȎȥȓțȖȓ ȝȓȞȓȚȓțțȜȗ numToDrop ȐȩȥȖȟșȭȓȠȟȭ ȝȞȖ ȘȎȔȒȜȗ ȖȠȓȞȎȤȖȖ ȤȖȘșȎ for ȘȜȑȒȎ Ȑȟȓ ȝȓȥȖ ȝȡȟȠȩ ˃̣̌̍͘ ϵ͘ϭ͘ ʯ̸̛̦̖̦̌́ ̪̖̬̖̥̖̦​̨̦̜ numToDrop͕ ̛̖̭̣ ̭̖̏ ̸̛̪̖ ̪̱̭̯̼ ʰ̶̛̯̖̬̌́

PDWK ÀRRU WXUWOH getItemCount()/ furnacesToFill)

ʯ̸̛̦̖̦̖̌ ʶ̸̨̨̛̣̖̭̯̏ ̪̖̬̖̥̖̦​̨̦̜ ̨̡̨̣̍̏ ̣̔́ numToDrop ̡̛̬̱̌̐̚̚ ̏ ̨̦̱̔ ̸̪̖̽

ʿ̖̬̏̌́

PDWK ÀRRU

12

12

ʦ̨̯̬̌́

PDWK ÀRRU

13

13

˃̬̖̯̽́

PDWK ÀRRU

13

13

ˋ̖̯̖̬̯̏̌́

PDWK ÀRRU

13

13

ʿ̯́̌́

PDWK ÀRRU

13

13 ʦ̨̭̖̐͗ ϲϰ

174

DZǹǮǰǮ


ȀȓȝȓȞȪ ȝȞȖȠȐȜȞȖȚȟȭ ȥȠȜ ȐȠȜȞȎȭ ȝȓȥȪ ȕȎȝȜșțȓțȎ ȝȜȠȜȚȡ ȥȠȜ ȖȑȞȜȘ ȟȏȞȜȟȖș Ȑ țȓȓ ȥȎȟȠȪ ȒȜȏȩȠȜȑȜ ȏȡșȩȔțȖȘȎ ȀȎȘȖȚ ȜȏȞȎȕȜȚ ȐȜ ȐȠȜȞȡȬ ȝȓȥȪ ȕȎȑȞȡȔȎȠȪ ȏȡșȩȔțȖȘ țȓșȪȕȭ ǻȜ ȝȜȟȘȜșȪȘȡ ȕțȎȥȓțȖȓ ȝȓȞȓȚȓțțȜȗ numToDrop ȝȓȞȓȟȥȖȠȩȐȎ ȓȠȟȭ ȝȞȖ ȘȎȔȒȜȗ ȖȠȓȞȎȤȖȖ ȤȖȘșȎ for ȝȞȜȑȞȎȚȚȎ ȎȐȠȜȚȎ ȠȖȥȓȟȘȖ ȡȐȓșȖȥȖȠ ȘȜșȖȥȓȟȠȐȜ ȏșȜȘȜȐ ȏȡșȩȔțȖȘȎ ȝȞȓȒ țȎȕțȎȥȓțțȩȣ Ȓșȭ ȜȟȠȎșȪțȩȣ ȝȓȥȓȗ ǰ ȠȎȏș ȝȜȘȎȕȎțȜ ȘȎȘ Ȑ ȫȠȜȚ ȟșȡȥȎȓ ȕțȎȥȓțȖȓ ȝȓȞȓȚȓțțȜȗ numToDrop ȞȎȟȟȥȖ ȠȩȐȎȓȠȟȭ ȝȞȖ ȘȎȔȒȜȗ ȖȠȓȞȎȤȖȖ ǼȏȞȎȠȖ ȐțȖȚȎțȖȓ ȥȠȜ țȎ ȐȠȜȞȜȗ ȖȠȓȞȎȤȖȖ ȘȜșȖȥȓȟȠȐȜ ȝȜȝȎȒȎȬȧȖȣ Ȑ ȝȓȥȪ ȏșȜȘȜȐ ȞȎȐțȜ ȝȜȠȜȚȡ ȥȠȜ ȐȠȜȞȎȭ ȝȓȥȪ ȕȎȝȜșțȓțȎ ˃̣̌̍͘ ϵ͘Ϯ͘ ʯ̸̛̦̖̦̌́ ̪̖̬̖̥̖̦​̨̦̜ numToDrop͕ ̛̖̭̣ ̨̯̬̏̌́ ̸̪̖̽ ̨̪̣̦̖̦̌̌̚ ʰ̶̛̯̖̬̌́ PDWK ÀRRU WXUWOH ʯ̸̛̦̖̦̖̌ getItemCount()/ ̪̖̬̖̥̖̦​̨̦̜ furnacesToFill) numToDrop

ʶ̸̨̨̛̣̖̭̯̏ ̨̡̨̣̍̏ ̣̔́ ̡̛̬̱̌̐̚̚ ̏ ̨̦̱̔ ̸̪̖̽

ʿ̖̬̏̌́

PDWK ÀRRU

12

12

ʦ̨̯̬̌́

PDWK ÀRRU

13

0

˃̬̖̯̽́

PDWK ÀRRU

17

17

ˋ̖̯̖̬̯̏̌́ PDWK ÀRRU

17

17

ʿ̯́̌́

18

18

PDWK ÀRRU

ʦ̨̭̖̐͗ ϲϰ ǿȠȞȜȘȖ ȘȜȒȎ ² ȝȜȘȎȕȩȐȎȬȠ ȥȠȜ ȓȟșȖ țȓȚțȜȑȜ ȝȞȜ ȒȡȚȎȠȪ ȘȜȒ ȠȜ ȝȓȥȖ ȚȜȔțȜ ȕȎȟȠȎȐȖȠȪ ȞȎȏȜȠȎȠȪ ȟ ȚȎȘȟȖ ȚȎșȪțȜȗ ȫȢȢȓȘȠȖȐțȜȟȠȪȬ ǸȜȑȒȎ ȤȖȘș for ȕȎȐȓȞȦȖȠȟȭ ȥȓ ȞȓȝȎȦȘȎ ȏȡȒȓȠ țȎȣȜȒȖȠȪȟȭ ȞȭȒȜȚ ȟ ȝȜȟșȓȒțȓȗ ȝȓȥȪȬ Ȗ ȓȗ țȡȔțȜ ȏȡȒȓȠ ȐȓȞțȡȠȪȟȭ țȎ ȖȟȣȜȒțȡȬ ȝȜȕȖȤȖȬ

ĎĚēĎĜČĥđęĔđ ģđĜđěČĤĖĔ ęČ ĔĝġĚĐęğĪ ěĚēĔĢĔĪ ǿȠȞȜȘȖ ȘȜȒȎ ² ȝȓȞȓȚȓȧȎȬȠ ȥȓȞȓȝȎȦȘȡ țȎȕȎȒ ȝȜȘȎ ȜțȎ țȓ ȜȘȎȔȓȠȟȭ ȝȓȞȓȒ ȏșȜȘȜȚ ȏȡșȩȔțȖȘȎ

ǿȀǾǼǶȀdzǹȊǿȀǰǼ DZdzǻdzǾǮȀǼǾǮ ǯȁǹȉǴǻǶǸǮ

175


cobminer ɜɨɡɜɪɚɬ ɤ ɝɟɧɟɪɚɬɨɪɭ ɛɭɥɵɠɧɢɤɚ 36. for moves = 1, NUM_FURNACES do 37. turtle.forward() 38. end

ǻȎ ȫȠȜȚ ȫȠȎȝȓ ȝȞȜȐȓȞȭȓȠȟȭ țȎșȖȥȖȓ ȏșȜȘȜȐ ȏȡșȩȔțȖȘȎ ȡ ȥȓȞȓȝȎȦȘȖ ǻȎȝȜȚțȬ ȥȠȜ ȥȓȞȓȝȎȦȘȎ ȚȜȔȓȠ ȒȜȏȩȐȎȠȪ ȏȡ șȩȔțȖȘ ȏȩȟȠȞȓȓ ȥȓȚ ȝȓȥȖ ȚȜȑȡȠ ȓȑȜ ȝȓȞȓȝșȎȐșȭȠȪ ǼȥȓțȪ ȟȘȜȞȜ Ȑȟȓ ȝȓȥȖ ȏȡȒȡȠ ȝȜșțȜȟȠȪȬ ȕȎȝȜșțȓțȩ Ȏ ȡ ȥȓȞȓȝȎȦȘȖ ȏȡȒȓȠ ȏșȜȘȎ ȏȡșȩȔțȖȘȎ dzȟșȖ ȡ ȥȓȞȓȝȎȦȘȖ Ȑ ȖțȐȓțȠȎȞȓ ȜȟȠȎȓȠȟȭ ȏȡșȩȔțȖȘ Ȏ Ȑȟȓ ȝȓȥȖ ȝȜșțȩ ȠȜ ȥȓȞȓȝȎȦȘȎ țȓ ȚȜ ȔȓȠ ȕȎȑȞȡȕȖȠȪ ȏșȜȘȖ Ȑ ȝȓȥȖ cobminer 40. if turtle.getItemCount() > 0 then 41. print('All furnaces full. Sleeping...') RV VOHHS ɩɚɭɡɚ ɜ ɦɢɧɭɬ 43. end 44. end 45. end

ǸȜȒ Ȑ ȟȠȞȜȘȓ ȕȎȐȓȞȦȎȓȠ ȏșȜȘ ȖțȟȠȞȡȘȤȖȖ if țȎȥȖțȎ ȬȧȖȗȟȭ Ȑ ȟȠȞȜȘȓ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȕȎȘȎțȥȖȐȎȓȠ ȏșȜȘ Ȗț ȟȠȞȡȘȤȖȖ if ȘȜȠȜȞȩȗ țȎȥȖțȎȓȠȟȭ Ȑ ȟȠȞȜȘȓ Ȏ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȕȎȐȓȞȦȎȓȠ ȤȖȘș while țȎȥȖțȎȬȧȖȗȟȭ Ȑ ȟȠȞȜȘȓ ǻȎ ȘȜțȓȤ ȖȟȝȜșțȓțȖȓ ȝȞȜȑȞȎȚȚȩ ȐȜȕȐȞȎȧȎȓȠȟȭ Ș ȟȠȞȜȘȓ Ȗ ȥȓȞȓȝȎȦȘȎ ȝȞȜȒȜșȔȎȓȠ ȒȜȏȩȐȎȠȪ ȏȡșȩȔțȖȘ Ȗ ȕȎȝȜșțȭȠȪ ȝȓȥȖ ȝȜȘȎ țȓ ȕȎȘȜțȥȖȠȟȭ ȓȓ ȠȜȝșȖȐȜ ĐĚěĚėęĔĞđėĨęĚđ ēČĐČęĔđ" ĐĚčħģČ ĖČĘęī ĝ čĚėĨĤĔĘ ĖĚėĔģđĝĞĎĚĘ ěđģđĕ

Попробуй создать генератор булыжника с более чем пятью печами. Тебе нужно будет изменить значение константы NUM_ FURNACES в программе, чтобы черепашка использовала дополнительные печи.

ǸȎȘ Ȗ Ȑ ȝȞȜȑȞȎȚȚȓ șȓȟȜȢȓȞȚȩ Ȗȕ ȑșȎȐȩ Ƞȩ ȚȜȔȓȦȪ ȞȎȟȦȖȞȖȠȪ ȟȐȜȓ ȝȞȜȖȕȐȜȒȟȠȐȜ ȝȜȟȠȞȜȖȐ țȓȟȘȜșȪȘȜ ȑȓțȓ ȞȎȠȜȞȜȐ ȏȡșȩȔțȖȘȎ Ȁȩ ȠȎȘȔȓ ȚȜȔȓȦȪ ȒȜȏȎȐȖȠȪ ȏȜșȪȦȓ

176

DZǹǮǰǮ


ȝȓȥȓȗ țȓ ȕȎȏȩȐ ȖȕȚȓțȖȠȪ ȕțȎȥȓțȖȓ ȘȜțȟȠȎțȠȩ NUM _ FURNACES ǽȭȠȪ ȖșȖ ȦȓȟȠȪ ȝȓȥȓȗ ȐȝȜșțȓ ȒȜȟȠȎȠȜȥțȜ ȥȠȜȏȩ ȝȓ ȞȓȝșȎȐșȭȠȪ ȏȡșȩȔțȖȘ Ȗȕ ȜȒțȜȑȜ ȑȓțȓȞȎȠȜȞȎ ǶțȎȥȓ ȥȓȞȓ ȝȎȦȘȎ țȓ ȟȚȜȔȓȠ ȒȜȏȩȐȎȠȪ ȏȡșȩȔțȖȘ ȒȜȟȠȎȠȜȥțȜ ȏȩȟȠȞȜ Ȗ ȝȓȥȖ ȏȡȒȡȠ ȝȞȜȟȠȎȖȐȎȠȪ

ģĞĚ Ęħ ğēęČėĔ ǰ ȫȠȜȗ ȑșȎȐȓ Ƞȩ ȡȕțȎș ȘȎȘ ȝȜȟȠȞȜȖȠȪ ȑȓțȓȞȎȠȜȞ ȏȡșȩȔțȖ ȘȎ Ȑ ȘȜȠȜȞȜȚ ȟȚȓȦȖȐȎȬȠȟȭ ȝȜȠȜȘȖ șȎȐȩ Ȗ ȐȜȒȩ Ȓșȭ ȏȓȟ ȘȜțȓȥțȜȑȜ ȝȞȜȖȕȐȜȒȟȠȐȎ ȏșȜȘȜȐ ȏȡșȩȔțȖȘȎ Ȁȩ ȖȟȝȜșȪ ȕȜȐȎș ȝȞȜȑȞȎȚȚȡ cobminer ȥȠȜȏȩ ȥȓȞȓȝȎȦȘȎ ȟȜȏȖȞȎșȎ ȏșȜȘȖ ȏȡșȩȔțȖȘȎ Ȗ ȕȎȑȞȡȔȎșȎ Ȗȣ Ȑ ȝȓȥȖ Ȓșȭ ȝȓȞȓȝșȎȐȘȖ Ȁȩ ȡȕțȎș Ȝ ȘȜțȟȠȎțȠȎȣ ² ȝȓȞȓȚȓțțȩȣ ȘȜȠȜȞȩȓ țȓ ȖȕȚȓțȭ ȬȠ ȟȐȜȖȣ ȕțȎȥȓțȖȗ ȒȓșȎȭ ȘȜȒ ȏȜșȓȓ ȡȒȜȏțȩȚ Ȓșȭ ȥȠȓțȖȭ ǸȞȜȚȓ ȠȜȑȜ Țȩ ȝȜȐȠȜȞȖșȖ ȥȠȜ ȦȎȑ ȎȞȑȡȚȓțȠȎ ȤȖȘșȎ for ȚȜȔțȜ ȡȘȎȕȎȠȪ ȭȐțȜ Ȗ ȤȖȘș for ȚȜȔȓȠ ȜȠȟȥȖȠȩȐȎȠȪȟȭ ȐțȖȕ Ȏ țȓ ȐȐȓȞȣ ǻȎȘȜțȓȤ Ƞȩ ȡȕțȎș ȘȎȘ ȢȡțȘȤȖȖ math.ÀRRU() Ȗ math.ceil() ȚȜȑȡȠ ȜȘȞȡȑșȭȠȪ ȥȖȟșȜ Ȑ ȚȓțȪȦȡȬ ȖșȖ ȏȜșȪ ȦȡȬ ȟȠȜȞȜțȡ ȟȜȜȠȐȓȠȟȠȐȓțțȜ ǰ ȑșȎȐȓ Țȩ ȝȞȖȚȓțȖȚ ȝȞȜȑȞȎȚȚȡ cobminer Ȓșȭ ȟȠȞȜȖ ȠȓșȪȟȠȐȎ ȕȎȐȜȒȖȘȎ ȘȎȚȓțțȜȑȜ ȘȖȞȝȖȥȎ ȘȜȠȜȞȎȭ ȏȡȒȓȠ ȜȝȓȞȖ ȞȜȐȎȠȪ ȡȔȓ ȒȐȡȚȭ ȥȓȞȓȝȎȦȘȎȚȖ Ǻȩ țȎȝȖȦȓȚ ȝȞȜȑȞȎȚȚȡ ȘȜȠȜȞȎȭ ȝȜȞȡȥȖȠ ȒȞȡȑȜȗ ȥȓȞȓȝȎȦȘȓ ȐȩȠȎȟȘȖȐȎȠȪ ȝȓȞȓȝșȎȐ șȓțțȩȓ ȘȎȚȓțțȩȓ ȏșȜȘȖ Ȗȕ ȝȓȥȓȗ Ȗ ȝȓȞȓȞȎȏȎȠȩȐȎȠȪ Ȗȣ Ȑ ȘȎ Țȓțțȩȗ ȘȖȞȝȖȥ ȟ ȝȜȚȜȧȪȬ ȝȞȜȑȞȎȚȚȩ brickcrafter.


10 ěĜĚĔēĎĚĐĝĞĎĚ ĖČĘđęęħġ ĖĔĜěĔģđĕ ȀȓȝȓȞȪ ȡ Ƞȓȏȭ ȓȟȠȪ ȥȓȞȓȝȎȦȘȎ ȘȜȠȜȞȎȭ ȒȜȏȩ ȐȎȓȠ ȏȡșȩȔțȖȘ Ȗȕ ȑȓțȓȞȎȠȜȞȎ Ȗ ȕȎȑȞȡȔȎȓȠ ȏȡșȩȔțȖȘ Ȑ ȝȓȥȖ Ȓșȭ ȝȓȞȓȝșȎȐȘȖ ǽȞȜȤȓȟȟ ȝȓȞȓȝșȎȐȘȖ ȎȐȠȜȚȎȠȖȕȖȞȜȐȎț țȜ ȒȜȟȠȎȐȎȠȪ ȘȎȚȓțțȩȓ ȏșȜȘȖ Ȗȕ ȝȓȥȓȗ Ȓșȭ Ȗȣ ȒȎșȪțȓȗȦȓȗ ȝȓȞȓȞȎȏȜȠȘȖ ȝȞȖȣȜȒȖȠȟȭ ȐȞȡȥțȡȬ ǰȟȓ ȫȠȜ ȣȜȞȜ ȦȜ țȜ țȓ ȒȜȠȭȑȖȐȎȓȠ ȒȜ ȝȜșțȜȤȓțțȜȑȜ ȕȎȐȜȒȖȘȎ ȝȜ ȝȞȜȖȕȐȜȒȟȠȐȡ ȘȎȚȓțțȜȑȜ ȘȖȞȝȖȥȎ ǻȡȔțȜ ȕȎȝȞȜȑȞȎȚȚȖ ȞȜȐȎȠȪ ȐȠȜȞȡȬ ȥȓȞȓȝȎȦȘȡ ȥȠȜȏȩ ȜțȎ ȐȩȠȎȟȘȖȐȎșȎ ȝȓȞȓ ȝșȎȐșȓțțȩȗ ȘȎȚȓțȪ Ȗ ȝȓȞȓȞȎȏȎȠȩȐȎșȎ ȓȑȜ Ȑ ȘȎȚȓțțȩȓ ȘȖȞȝȖȥȖ ǸȎȘ ȠȜșȪȘȜ ȏȡȒȓȠ ȝȜȒȑȜȠȜȐșȓțȎ ȘȜȚȎțȒȎ ȥȓȞȓ ȝȎȦȓȘ ȘȎȘ ȫȠȜ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ ȚȜȔțȜ ȏȡȒȓȠ Ȑ ȎȐ ȠȜȚȎȠȖȥȓȟȘȜȚ ȞȓȔȖȚȓ ȝȜșȡȥȎȠȪ ȘȖȞȝȖȥȖ ȝȞȖȑȜȒțȩȓ Ȓșȭ ȟȠȞȜȖȠȓșȪȟȠȐȎ

178

DZǹǮǰǮ


ˀ̛̭͘ ϭϬ͘ϭ͘ ʿ̨̨̣̦̭̯̽̀ ̨̨̛̛̯̥̯̬̦̌̏̌̏̌̚​̦̼̜ ̨̌̏̔̚ ̨̪ ̨̨̛̪̬̭̯̱̏̔̏̚ ̡̥̖̦̌​̨̨̦̐ ̸̡̛̛̬̪̌

ĜČēĜČčĚĞĖČ ěĜĚďĜČĘĘħ ěĜĚĔēĎĚĐĝĞĎČ ĖČĘđęęĚďĚ ĖĔĜěĔģČ ǽȓȞȐȎȭ ȥȓȞȓȝȎȦȘȎ ȞȎȏȜȠȎȬȧȎȭ ȝȜ ȝȞȜȑȞȎȚȚȓ cobminer ȞȎȟȝȜșȜȔȓțȎ țȎȒ ȝȓȥȎȚȖ ǰȠȜȞȎȭ ȥȓȞȓȝȎȦȘȎ ȏȡȒȓȠ ȒȐȖ ȑȎȠȪȟȭ țȖȔȓ ȝȓȥȓȗ ȥȠȜȏȩ ȜțȎ ȚȜȑșȎ ȐȩȠȎȟȘȖȐȎȠȪ ȏșȜȘȖ Ȗȕ ȐȩȐȜȒțȩȣ ȭȥȓȓȘ ȝȓȥȓȗ ǻȎȝȜȚțȬ ȥȠȜ Ȗȕ ȘȎȚțȭ ȖșȖ ȏȡșȩȔ țȖȘȎ ȒȜȏȩȐȎȬȠȟȭ ȏșȜȘȖ ȏȡșȩȔțȖȘȎ ȘȜȠȜȞȩȓ ȕȎȠȓȚ ȕȎȑȞȡ ȔȎȬȠȟȭ Ȑ ȝȓȥȖ Ȓșȭ ȝȓȞȓȝșȎȐȘȖ ǽȜșȡȥȓțțȩȓ Ȑ ȞȓȕȡșȪȠȎȠȓ ȝȓȞȓȝșȎȐȘȖ ȏșȜȘȖ ȘȎȚțȭ ȝȓȞȓȞȎȏȎȠȩȐȎȬȠȟȭ Ȑ ȘȎȚȓțțȩȗ ȘȖȞȝȖȥ ǸȎȘ Ȗ cobminer ȝȞȜȑȞȎȚȚȎ ȐȠȜȞȜȗ ȥȓȞȓȝȎȦȘȖ ȟțȎȥȎ șȎ ȒȜșȔțȎ ȝȞȜȐȓȞȖȠȪ ȥȠȜ ȡ ȥȓȞȓȝȎȦȘȖ ȒȜȟȠȎȠȜȥțȜ ȠȜȝșȖ ȐȎ Ȓșȭ ȝȓȞȓȚȓȧȓțȖȭ ȐȒȜșȪ ȝȓȥȓȗ Ȗ ȐȜȕȐȞȎȧȓțȖȭ țȎ ȖȟȣȜȒ țȡȬ ȝȜȕȖȤȖȬ DzȐȖȑȎȭȟȪ ȐȒȜșȪ ȝȓȥȓȗ ȥȓȞȓȝȎȦȘȎ ȟȜȏȖȞȎȓȠ ȏșȜȘȖ ȘȎȚțȭ ȘȜȠȜȞȩȓ ȏȩșȖ ȐȩȝșȎȐșȓțȩ Ȗȕ ȏȡșȩȔțȖȘȎ ǿȜȏȞȎȐ ȟȠȓȘ Ȗȕ ȏșȜȘȜȐ ȜțȎ ȟȜȕȒȎȟȠ Ȗȕ țȖȣ ȘȎȚȓțțȩȣ ȘȖȞȝȖȥȎ Ȗ ȝȜȚȓȟȠȖȠ Ȗȣ Ȑ ȟȡțȒȡȘ dzȟșȖ Ȑ ȐȩȐȜȒțȜȗ ȭȥȓȗ Șȓ ȝȓȥȓȗ ȟȘȜȝȖșȜȟȪ țȓȒȜȟȠȎȠȜȥțȜ ȘȎȚțȭ ȥȓȞȓȝȎȦȘȎ ȝȜ ȒȜȔȒȓȠ ȒȐȓ ȚȖțȡȠȩ ȥȠȜȏȩ ȘȜșȖȥȓȟȠȐȜ ȝȓȞȓȝșȎȐșȓțțȜȑȜ ȏȡșȩȔțȖȘȎ ȡȐȓșȖȥȖșȜȟȪ ǰȓȟȪ ȝȞȜȤȓȟȟ ȥȓȞȓȝȎȦȘȎ ȝȜȐȠȜ ȞȭȓȠ ȤȖȘșȖȥȓȟȘȖ

ǽǾǼǶǵǰǼDzǿȀǰǼ ǸǮǺdzǻǻȉȃ ǸǶǾǽǶȅdzǷ

179


ĝĚēĐČęĔđ ĖĜČĠĞ ģđĜđěČĤĖĔ Dzșȭ țȎȥȎșȎ ȥȓȞȓȝȎȦȘȡ țȎȒȜ țȎȡȥȖȠȪ ȖȕȑȜȠȎȐșȖȐȎȠȪ ȘȎ Țȓțțȩȓ ȘȖȞȝȖȥȖ Ȗȕ ȘȎȚțȭ ȅȓȞȓȝȎȦȘȖ ȚȜȑȡȠ ȟȜȕȒȎȐȎȠȪ ȞȎȕșȖȥțȩȓ ȏșȜȘȖ Ȗ ȝȞȓȒȚȓȠȩ ȟ ȝȜȚȜȧȪȬ ȢȡțȘȤȖȖ turtle. craft() ǼȒțȎȘȜ ȥȠȜȏȩ ȕȎȒȓȗȟȠȐȜȐȎȠȪ ȫȠȡ ȢȡțȘȤȖȬ Ƞȩ ȒȜșȔȓț ȜȟțȎȟȠȖȠȪ ȥȓȞȓȝȎȦȘȡ ȐȓȞȟȠȎȘȜȚ ȝȜ ȎțȎșȜȑȖȖ Ȝȟ țȎȧȓțȖȭ ȥȓȞȓȝȎȦȘȖ ȎșȚȎȕțȜȗ ȘȖȞȘȜȗ ǰȩȏȓȞȖ ȥȓȞȓȝȎȦȘȡ ȠȜșȪȘȜ țȓ Ƞȡ ȘȜȠȜȞȎȭ ȡȔȓ ȞȎȏȜȠȎȓȠ ȟ ȝȞȜȑȞȎȚȚȜȗ cobminer Ȏ ȓȧȓ ȜȒțȡ Ȗ ȝȜȚȓȟȠȖ ȐȓȞȟȠȎȘ Ȑ ȠȓȘȡȧȡȬ ȭȥȓȗȘȡ ȥȓȞȓȝȎȦ ȘȖ ǵȎȠȓȚ Ȑ ȜȏȜșȜȥȘȓ /XD ȐȩȝȜșțȖ ȟșȓȒȡȬȧȖȗ ȘȜȒ lua> turtle.equipLeft()

ȋȠȜȠ ȘȜȒ ȡȏȓȞȓȠ ȖȚȓȬȧȖȗȟȭ țȎ șȓȐȜȗ ȟȠȜȞȜțȓ ȥȓȞȓȝȎȦ ȘȖ ȖțȟȠȞȡȚȓțȠ Ȗ ȜȟțȎȟȠȖȠ ȓȓ ȐȓȞȟȠȎȘȜȚ ǾȖȟ ȒȓȚȜț ȟȠȞȖȞȡȓȠ ȥȓȞȓȝȎȦȘȡ Ȗ ȓȓ ȖțȐȓțȠȎȞȪ ȒȜ Ȗ ȝȜȟșȓ ȕȎȝȡȟȘȎ ȢȡțȘȤȖȖ turtle.equipLeft().

ˀ̛̭͘ ϭϬ͘Ϯ͘ ˇ̶̡̛̱̦́ turtle.equipLeft() ̥̖̦̖̯̌́̚ ̡̡̛̬̱ ̦̌ ̡̖̬̭̯̏̌͘ ˋ̡̖̬̖̪̹̌̌ ̪̖̬̖̔ ̨̛̼̪̣̦̖̦̖̥̏ ̡̨̔̌ ;̭̣̖̏̌Ϳ ̛ ̨̪̭̣̖ ;̭̪̬̌̏̌Ϳ

ȀȓȝȓȞȪ ȠȐȜȭ ȥȓȞȓȝȎȦȘȎ ȚȜȔȓȠ ȐȩȕȐȎȠȪ ȢȡțȘȤȖȬ turtle.craft(). ǼțȎ ȏȜșȪȦȓ țȓ ȚȜȔȓȠ ȜȏȞȎȧȎȠȪȟȭ Ș ȢȡțȘȤȖȖ turtle.dig() țȜ țȎȚ ȫȠȜ Ȗ țȓ țȡȔțȜ ǽȞȖȚȓȥȎțȖȓ dzȟșȖ Ƞȩ ȣȜȥȓȦȪ ȥȠȜȏȩ ȥȓȞȓȝȎȦȘȎ ȚȜȑșȎ Ȗ ȘȞȎȢȠȖȠȪ Ȗ ȒȜȏȩȐȎȠȪ ȜȒțȜȐȞȓȚȓțțȜ Ƞȩ ȚȜȔȓȦȪ ȜȟțȎȟȠȖȠȪ ȥȓȞȓȝȎȦȘȡ ȒȐȡȚȭ ȖțȟȠȞȡȚȓțȠȎȚȖ Dzșȭ ȫȠȜȑȜ

180

DZǹǮǰǮ


ȝȜțȎȒȜȏȭȠȟȭ ȒȐȓ ȢȡțȘȤȖȖ tu r tle.e q u ipL eft() Ȓșȭ ȞȎ ȕ Ț ȓȧ ȓțȖ ȭ ȜȒț ȜȑȜ Ȗț ȟȠȞȡȚ ȓțȠȎ ȟ ș ȓȐȜȗ ȟȠȜȞȜțȩ ȥȓȞȓȝȎȦȘȖ Ȗ turtle.equipRight() ȥȠȜȏȩ ȫȘȖȝȖȞȜȐȎȠȪ ȓȓ ȟ ȒȞȡȑȜȗ ȟȠȜȞȜțȩ ǻȎ ȞȖȟ ȝȜȘȎȕȎțȎ ȥȓȞȓȝȎȦȘȎ ȟ ȎșȚȎȕ țȜȗ ȘȖȞȘȜȗ ȟșȓȐȎ Ȗ ȐȓȞȟȠȎȘȜȚ ȟȝȞȎȐȎ ȀȎȘȎȭ ȥȓȞȓȝȎȦȘȎ ȚȜȔȓȠ ȐȩȕȩȐȎȠȪ ȘȎȘ ȢȡțȘȤȖȬ turtle.dig() ȠȎȘ Ȗ turtle.craft().

ˀ̛̭͘ ϭϬ͘ϯ͘ ˋ̡̖̬̖̪̹̌̌ ̭ ̨̣̥̦̜̌̌̚ ̡̡̨̛̬̜ ̦̌ ̨̣̖̜̏ ̨̨̭̯̬̦̖ ;̭̣̖̏̌Ϳ ̛ ̡̨̖̬̭̯̥̏̌ ̦̌ ̨̪̬̜̌̏ ;̭̪̬̌̏̌Ϳ

ȅȓȞȓȝȎȦȘȎ ȜȏȜȞȡȒȜȐȎțțȎȭ ȐȓȞȟȠȎȘȜȚ ȚȜȔȓȠ ȘȞȎȢȠȖȠȪ ȠȜșȪȘȜ Ȑ ȟȜȜȠȐȓȠȟȠȐȖȖ ȟ ȞȓȤȓȝȠȜȚ ȘȜȚȝȜțȓțȠȩ ȘȜȠȜȞȜ ȑȜ ȟȜȏȞȎțȩ Ȑ ȓȓ ȖțȐȓțȠȎȞȓ ǽȞȖ ȐȩȕȜȐȓ ȢȡțȘȤȖȖ turtle. craft() ȟȜȕȒȎțțȩȗ ȝȞȓȒȚȓȠ ȖșȖ ȏșȜȘ ȝȜȚȓȧȎȓȠȟȭ Ȑ ȠȓȘȡ ȧȡȬ ȭȥȓȗȘȡ ȖțȐȓțȠȎȞȭ ǻȎȝȞȖȚȓȞ ȥȠȜȏȩ ȟȘȞȎȢȠȖȠȪ ȘȎȚȓțțȩȗ ȘȖȞȝȖȥ ȝȜȚȓ ȟȠȖ ȥȓȠȩȞȓ ȘȎȚȓțțȩȣ ȏșȜȘȎ Ȑ ȖțȐȓțȠȎȞȪ ȥȓȞȓȝȎȦȘȖ ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ ȁȏȓȒȖȟȪ ȥȠȜ Ȑȟȓ ȜȟȠȎșȪțȩȓ ȭȥȓȗȘȖ ȖțȐȓțȠȎȞȭ ȝȡȟȠȩ Ȗ Ȑ ȜȏȜșȜȥȘȓ /XD ȐȩȝȜșțȖ ȘȜȚȎțȒȩ turtle.select(16) Ȗ turtle.craft(): lua> turtle.select(16) true lua> turtle.craft() true

ǻȎ ȞȖȟ ȝȜȘȎȕȎț ȑȞȎȢȖȥȓȟȘȖȗ ȖțȠȓȞȢȓȗȟ ȥȓȞȓȝȎȦȘȖ ȒȜ Ȗ ȝȜȟșȓ ȘȞȎȢȠȎ ȘȎȚȓțțȩȣ ȘȖȞȝȖȥȓȗ ǼȏȞȎȠȖ ȐțȖȚȎțȖȓ

ǽǾǼǶǵǰǼDzǿȀǰǼ ǸǮǺdzǻǻȉȃ ǸǶǾǽǶȅdzǷ

181


ȥȠȜ țȎ ȫȠȜȚ ȞȖȟȡțȘȓ Ȑ ȘȎȥȓȟȠȐȓ ȠȓȘȡȧȓȗ țȎȟȠȞȜȓțȎ ȭȥȓȗȘȎ ȝȜȒ țȜȚȓȞȜȚ Ȗ ȟȜȕȒȎțțȩȗ ȏșȜȘ ȝȜȚȓȧȎȓȠȟȭ ȠȡȒȎ

ˀ̛̭͘ ϭϬ͘ϰ͘ ʰ̦̖̦̯̬̏̌̽ ̸̡̛̖̬̖̪̹̌ ̨̔ ;̭̣̖̏̌Ϳ ̛ ̨̪̭̣̖ ;̭̪̬̌̏̌Ϳ ̨̼̏̏̌̚ ̴̶̡̛̱̦​̛ turtle.craft()

dzȟșȖ ȏșȜȘȖ Ȑ ȖțȐȓțȠȎȞȓ ȥȓȞȓȝȎȦȘȖ țȓ ȏȡȒȡȠ ȟȜȜȠȐȓȠ ȟȠȐȜȐȎȠȪ ȞȓȤȓȝȠȡ 0LQHFUDIW ȢȡțȘȤȖȭ turtle.craft() ȐȓȞ țȓȠ ȕțȎȥȓțȖȓ false Ȗ Ƞȩ ȡȐȖȒȖȦȪ ȟȜȜȏȧȓțȖȓ Ȝȏ ȜȦȖȏȘȓ lua> turtle.craft() false No matching recipes

ȀȓȝȓȞȪ ȘȜȑȒȎ țȎȟȠȞȜȗȘȎ Ȗ ȝȞȜȓȘȠȖȞȜȐȎțȖȓ ȝȞȜȑȞȎȚȚȩ ȐȠȜȞȜȗ ȥȓȞȓȝȎȦȘȖ ȕȎȐȓȞȦȓțȩ ȝȞȖȟȠȡȝȖȚ Ș țȎȝȖȟȎțȖȬ ȘȜ ȒȎ ǻȜȐȡȬ ȝȞȜȑȞȎȚȚȡ țȎȕȜȐȓȚ brickcrafter.

ĖĚĐ ěĜĚďĜČĘĘħ *:1+3+:).<-: ǰ ȜȏȜșȜȥȘȓ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ȐȩȝȜșțȖ ȘȜȚȎțȒȡ e d it brickcrafter Ȗ ȐȐȓȒȖ ȟșȓȒȡȬȧȖȗ ȘȜȒ brickcrafter >>ɉɪɨɝɪɚɦɦɚ ɝɟɧɟɪɚɬɨɪɚ ɛɭɥɵɠɧɢɤɚ ɗɥɚ ɋɜɟɣɝɚɪɬɚ Ʉɪɚɮɬ ɤɚɦɟɧɧɵɯ ɤɢɪɩɢɱɟɣ ɢɡ ɤɚɦɧɹ ɜ ɩɟɱɚɯ ɱɟɪɟɩɚɲɤɚ ɢɡ @@ 3. 4. print('Starting stone brick crafting program...') 5. 6. local NUM_FURNACES = 5

182

DZǹǮǰǮ


7. local brickCount = 0 8. while true do ɩɪɨÉœÉ&#x;ɪɤÉš É¡ÉšɩɪɚɜɥÉ&#x;ɧÉš ɥɢ ɬɨɩɥɢÉœɨɦ ɱÉ&#x;ɪÉ&#x;É©ÉšɲɤÉš 10. if turtle.getFuelLevel() < (2 * NUM_FURNACES) then 11. error('Turtle needs more fuel!') 12. end 13. WXUWOH VHOHFW ɩɨɦÉ&#x;ɳÉ&#x;ɧɢÉ&#x; ɤÉšɦɧɹ Éœ ɹɱÉ&#x;ɣɤɭ 15. É«É›ɨɪ ɤÉšɦɧɹ ɢɡ É©É&#x;ɱÉ&#x;É£ 17. for i = 1, NUM_FURNACES do 18. turtle.suckUp(64 - turtle.getItemCount(1)) -get stone from furnace 19. if turtle.getItemCount(1) == 64 then EUHDN ɨɫɬÉšɧɨÉœɤÉš É&#x;ɫɥɢ ɫɨÉ›ɪÉšɧɨ É›ɥɨɤÉš ɤÉšɦɧɹ 21. end 22. if i ~= NUM_FURNACES then WXUWOH EDFN É©É&#x;ɪÉ&#x;ɦÉ&#x;ɳÉ&#x;ɧɢÉ&#x; ɤ É«É¥É&#x;ÉžɭɸɳÉ&#x;É£ É©É&#x;ɱɢ 24. end 25. end 26. ɨÉ›ɪɚɛɨɬɤÉš É›ɥɨɤɨÉœ ɤÉšɦɧɹ 28. if turtle.getItemCount(1) == 64 then WXUWOH WUDQVIHU7R ɩɨɦÉ&#x;ɳÉ&#x;ɧɢÉ&#x; ɤÉšɦɧɹ Éœ ɹɱÉ&#x;ɣɤɭ WXUWOH WUDQVIHU7R ɩɨɦÉ&#x;ɳÉ&#x;ɧɢÉ&#x; ɤÉšɦɧɹ Éœ ɹɱÉ&#x;ɣɤɭ WXUWOH WUDQVIHU7R ɩɨɦÉ&#x;ɳÉ&#x;ɧɢÉ&#x; ɤÉšɦɧɹ Éœ ɹɱÉ&#x;ɣɤɭ WXUWOH VHOHFW ɩɨɦÉ&#x;ɳÉ&#x;ɧɢÉ&#x; ɤÉšɦÉ&#x;ɧɧɵɯ ɤɢɪɩɢɱÉ&#x;É£ Éœ ɹɱÉ&#x;ɣɤɭ WXUWOH FUDIW ɤɪÉšɮɬ ɤÉšɦÉ&#x;ɧɧɵɯ ɤɢɪɩɢɱÉ&#x;É£ 34. brickCount = brickCount + 64 35. print('Total stone bricks: ' .. brickCount) 36. else 37. print('Not enough stone yet. Sleeping...') RV VOHHS É¨É É¢ÉžÉšɧɢÉ&#x; ɦɢɧɭɬɵ 39. end 40. É©É&#x;ɪÉ&#x;ɦÉ&#x;ɳÉ&#x;ɧɢÉ&#x; ɤ ɫɭɧÉžɭɤɭ ɨɤɨɥɨ É©É&#x;ɪÉœɨɣ É©É&#x;ɱɢ

42. for i = 1, NUM_FURNACES - 1 do 43. turtle.forward()

ǽǾǼǶǵǰǼDzǿÈ€ǰǼ ǸǮǺdzǻǻȉȃ ǸǶǾǽǶÈ…dzǷ

183


44. end WXUWOH WXUQ/HIW ɩɨɜɨɪɨɬ ɥɢɰɟɜɨɣ ɫɬɨɪɨɧɨɣ ɤ ɫɭɧɞɭɤɭ WXUWOH VHOHFW ɜɵɛɨɪ ɤɚɦɟɧɧɵɯ ɤɢɪɩɢɱɟɣ WXUWOH GURS ɩɨɦɟɳɟɧɢɟ ɤɚɦɟɧɧɵɯ ɤɢɪɩɢɱɟɣ ɜ ɫɭɧɞɭɤ WXUWOH WXUQ5LJKW ɩɨɜɨɪɨɬ ɤ ɝɟɧɟɪɚɬɨɪɭ 49. end

ǿȜȣȞȎțȖ ȝȞȜȑȞȎȚȚȡ ȝȜȟșȓ ȐȐȜȒȎ Ȑȟȓȣ ȖțȟȠȞȡȘȤȖȗ ǻȎȔȎȐ ȘșȎȐȖȦȡ Ctrl ȜȠȘȞȜȗ ȚȓțȬ ǰȩȏȓȞȖ ȝȡțȘȠ [Save] Ȗ țȎȔȚȖ ȘșȎȐȖȦȡ Enter ǵȎȠȓȚ ȐȩȗȒȖ Ȗȕ ȞȓȒȎȘȠȜȞȎ țȎȔȎȐ ȘșȎȐȖȦȡ Ctrl ȐȩȏȞȎȐ ȝȡțȘȠ [Exit] Ȗ țȎȔȎȐ ȘșȎȐȖȦȡ Enter.

ēČěğĝĖ ěĜĚďĜČĘĘħ *:1+3+:).<-: ȅȠȜȏȩ țȎȥȎȠȪ ȞȎȏȜȠȡ ȟ ȝȞȜȑȞȎȚȚȜȗ brickcrafter ȝȜțȎȒȜ ȏȖȠȟȭ ȥȓȞȓȝȎȦȘȎ ȡȝȞȎȐșȭȓȚȎȭ ȝȞȜȑȞȎȚȚȜȗ cobminer Ȗ ȑȓțȓȞȎȠȜȞ ȏȡșȩȔțȖȘȎ ȟ ȝȓȥȎȚȖ Ȗȕ ȑșȎȐȩ ǽȜțȎȒȜȏȖȠȟȭ ȠȎȘȔȓ ȟȡțȒȡȘ Ȝȏȩȥțȩȗ ȖșȖ ȏȜșȪȦȜȗ Ȗ ȐȠȜȞȎȭ ȥȓȞȓȝȎȦ ȘȎ ȘȜȠȜȞȜȗ ȏȡȒȓȠ ȡȝȞȎȐșȭȠȪ ȝȞȜȑȞȎȚȚȎ brickcrafter. ȁȟȠȎțȜȐȖ ȟȡțȒȡȘ ȞȭȒȜȚ ȟ ȑȓțȓȞȎȠȜȞȜȚ Ȏ ȐȠȜȞȡȬ ȥȓȞȓȝȎȦȘȡ ȝȜȚȓȟȠȖ ȝȜȒ ȝȓȞȐȡȬ ȝȓȥȪ ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ ǰ ȟȡț ȒȡȘ ȏȡȒȡȠ ȟȘșȎȒȩȐȎȠȪȟȭ Ȑȟȓ ȟȜȕȒȎțțȩȓ ȘȎȚȓțțȩȓ ȘȖȞȝȖȥȖ ȁȒȜȟȠȜȐȓȞȪȟȭ ȥȠȜ ȖțȐȓțȠȎȞȪ ȥȓȞȓȝȎȦȘȖ ȝȡȟȠ ȖțȎȥȓ ȝȞȜȑȞȎȚȚȎ brickcrafter țȓ ȏȡȒȓȠ ȞȎȏȜȠȎȠȪ ȘȜȞȞȓȘȠțȜ

Стекло (нижний уровень генератора булыжника)

Черепашка Сундук

ˀ̛̭͘ ϭϬ͘ϱ͘ ˄̨̡̭̯̦̌̏̌ ̡̭̱̦̱̔̌ ̛ ̨̨̯̬̜̏ ̸̡̛̖̬̖̪̹̌͘ ʥ̖̣̌́ ̡̭̯̬̖̣̌ ̨̡̪̼̌̏̌̚Ͳ ̖̯͕ ̏ ̡̡̨̥̌ ̛̦̪̬̣̖̦̌̌̏​̛ ̨̣̙̦̔̌ ̼̯̍̽ ̨̨̛̛̬̖̦̯̬̦̏̌̌ ̸̡̖̬̖̪̹̌̌͘ ʿ̡̛̱̦̯̬Ͳ ̦̼̖ ̛̛̣̦​̛ ̨̡̪̼̯͕̌̏̌̀̚ ̖̐̔ ̨̨̬̭̪̣̙̖̦̼̌ ̸̛̪̖ ̨̭̬̖̦̖̔̐ ̨̭̣́ ̨̖̦̖̬̯̬̐̌̌ ̡̛̱̣̼̙̦̍̌

184

DZǹǮǰǮ


ǻȎ ȞȖȟ ȖȕȜȏȞȎȔȓț ȑȓțȓȞȎȠȜȞ ȏȡșȩȔțȖȘȎ ȝȜșțȜ ȟȠȪȬ țȎȟȠȞȜȓțțȩȗ țȎ ȝȞȜȖȕȐȜȒȟȠȐȜ ȘȎȚȓțțȜȑȜ ȘȖȞȝȖȥȎ

ˀ̛̭ ϭ0.6. ˀ̨̥́̔ ̭ ̨̨̖̦̖̬̯̬̥̐̌ ̡̛̱̣̼̙̦̍̌ ̨̪̭̯̌̏̽ ̡̭̱̦̱̔ ̣̔́ ̵̛̬̦̖̦̌́ ̡̥̖̦̌​̵̦̼ ̸̡̛̛̬̪̖̜

ǽȜȒ ȡȝȞȎȐșȓțȖȓȚ ȝȞȜȑȞȎȚȚȩ brickcrafter ȥȓȞȓȝȎȦ ȘȎ ȝȓȞȓȚȓȧȎȓȠȟȭ ȝȜȒ ȝȓȥȎȚȖ Ȗ ȐȩțȖȚȎȓȠ ȝȓȞȓȝșȎȐșȓțțȩȗ ȘȎȚȓțȪ Ȗȕ Ȑȟȓȣ ȝȓȥȓȗ ǵȎȠȓȚ ȜțȎ ȜȏȞȎȏȎȠȩȐȎȓȠ ȘȎȚȓțțȩȓ ȏșȜȘȖ Ȑ ȟȜȜȠȐȓȠȟȠȐȖȖ ȟ ȞȓȤȓȝȠȜȚ ȘȞȎȢȠȎ ȘȎȚȓțțȜȑȜ ȘȖȞȝȖ ȥȎ ȐȩȕȩȐȎȭ ȢȡțȘȤȖȬ turtle.craft() Ȏ ȑȜȠȜȐȩȓ ȘȖȞȝȖȥȖ ȟȘșȎȒȩȐȎȓȠ Ȑ ȟȡțȒȡȘ ȞȎȟȝȜșȜȔȓțțȩȗ ȞȭȒȜȚ ȟ ȑȓțȓȞȎȠȜȞȜȚ ǽȜȟȘȜșȪȘȡ ȥȓȞȓȝȎȦȘȎ ȒȜșȔțȎ ȒȐȖȑȎȠȪȟȭ ȐȝȓȞȓȒ Ȗ țȎȕȎȒ ȝȞȜȑȞȎȚȚȎ ȝȞȜȐȓȞȭȓȠ ȡȞȜȐȓțȪ ȓȓ ȠȜȝșȖȐȎ Ȗ ȜȟȠȎțȎȐșȖȐȎȓȠ ȞȎȏȜȠȡ ȓȟșȖ ȠȜȝșȖȐȎ țȓȒȜȟȠȎȠȜȥțȜ dzȟșȖ ȝȞȖ ȕȎȝȡȟȘȓ ȝȞȜȑȞȎȚȚȩ ȐȜȕțȖȘȎȬȠ ȜȦȖȏȘȖ ȠȧȎ ȠȓșȪțȜ ȟȞȎȐțȖ ȟȐȜȗ ȘȜȒ ȟ șȖȟȠȖțȑȜȚ Ȑ ȫȠȜȗ ȘțȖȑȓ ȐȜȕȚȜȔ țȜ ȏȩșȖ ȐȜȕȚȜȔțȩȓ ȜȝȓȥȎȠȘȖ dzȟșȖ ȜȝȓȥȎȠȜȘ țȓȠ țȜ ȜȦȖȏ ȘȖ ȐȜȕțȖȘȎȬȠ ȡȒȎșȖ ȢȎȗș ȐȩȝȜșțȖȐ ȘȜȚȎțȒȡ delete brickcrafter Ȏ ȕȎȠȓȚ ȕȎȑȞȡȕȖ ȘȜȒ ȟ ȝȜȚȜȧȪȬ ȘȜȚȎțȒȩ pastebin get 1zS07K3U brickcrafter.

ǽǾǼǶǵǰǼDzǿȀǰǼ ǸǮǺdzǻǻȉȃ ǸǶǾǽǶȅdzǷ

185


ęČĝĞĜĚĕĖČ ěĜĚďĜČĘĘħ *:1+3+:).<-: ǽȓȞȐȩȓ țȓȟȘȜșȪȘȜ ȟȠȞȜȘ ȝȞȜȑȞȎȚȚȩ ȟȜȒȓȞȔȎȠ Ȝȏȩȥțȩȓ ȜȝȖȟȩȐȎȬȧȖȓ ȘȜȒ ȘȜȚȚȓțȠȎȞȖȖ Ȗ ȐȩȕȜȐ print() ȘȜȠȜȞȩȗ ȐȩȐȜȒȖȠ ȖȑȞȜȘȡ ȟȜȜȏȧȓțȖȓ Ȝ ȠȜȚ ȥȠȜ ȝȞȜȑȞȎȚȚȎ ȕȎȝȡȧȓțȎ ǵȎȠȓȚ ȜȏȨȭȐșȭȬȠȟȭ ȒȐȓ ȝȓȞȓȚȓțțȩȓ ȘȜȠȜȞȩȓ Țȩ Ȑ ȒȎșȪ țȓȗȦȓȚ ȏȡȒȓȚ ȖȟȝȜșȪȕȜȐȎȠȪ Ȑ ȝȞȜȑȞȎȚȚȓ brickcrafter >>ɉɪɨɝɪɚɦɦɚ ɝɟɧɟɪɚɬɨɪɚ ɛɭɥɵɠɧɢɤɚ ɗɥɚ ɋɜɟɣɝɚɪɬɚ Ʉɪɚɮɬ ɤɚɦɟɧɧɵɯ ɤɢɪɩɢɱɟɣ ɢɡ ɤɚɦɧɹ ɜ ɩɟɱɚɯ ɱɟɪɟɩɚɲɤɚ ɢɡ @@ 3. 4. print('Starting stone brick crafting program...') 5. 6. local NUM_FURNACES = 5 7. local brickCount = 0

ǸȜțȟȠȎțȠȎ NUM _ FURNACES Ȑ ȫȠȜȗ ȝȞȜȑȞȎȚȚȓ ȐȩȝȜșțȭȓȠ Ƞȡ Ȕȓ ȕȎȒȎȥȡ ȥȠȜ Ȗ Ȑ ȝȞȜȑȞȎȚȚȓ cob m iner Ȗȕ ȑșȎȐȩ ǽȓȞȓȚȓț țȎȭ b r i c k C o u n t Ȝ Ƞ ȟșȓȔȖ ȐȎȓ Ƞ ȘȜș Ȗ ȥȓȟ Ƞ ȐȜ ȟȜȕȒȎțțȩȣ ȥȓȞȓȝȎȦȘȜȗ ȘȎȚȓțțȩȣ ȘȖȞȝȖȥȓȗ

ěĜĚĎđĜĖČ ®ĝħĞĚĝĞĔ¯ ģđĜđěČĤĖĔ ǿȜ ȟȠȞȜȘȖ țȎȥȖțȎȓȠȟȭ ȏȓȟȘȜțȓȥțȩȗ ȤȖȘș ȜȟțȜȐțȜȗ ȥȎȟȠȖ ȝȞȜȑȞȎȚȚȩ Ǽț ȝȞȜȒȜșȔȎȓȠȟȭ ȒȜ Ƞȓȣ ȝȜȞ ȝȜȘȎ ȡ ȥȓȞȓȝȎȦȘȖ ȓȟȠȪ ȠȜȝșȖȐȜ ȖșȖ ȝȜȘȎ ȖȑȞȜȘ țȓ țȎȔȚȓȠ ȟȜȥȓȠȎțȖȓ ȘșȎȐȖȦ Ctrl+T ȥȠȜȏȩ ȕȎȐȓȞȦȖȠȪ ȝȞȜȑȞȎȚȚȡ brickcrafter 8. while true do ɩɪɨɜɟɪɤɚ ɡɚɩɪɚɜɥɟɧɚ ɥɢ ɬɨɩɥɢɜɨɦ ɱɟɪɟɩɚɲɤɚ 10. if turtle.getFuelLevel() < (2 * NUM_FURNACES) then 11. error('Turtle needs more fuel!') 12. end

ǰ Ƞȓșȓ ȫȠȜȑȜ ȤȖȘșȎ ȝȞȜȑȞȎȚȚȎ ȟțȎȥȎșȎ ȝȞȜȐȓȞȭȓȠ ȥȠȜ ȡ ȥȓȞȓȝȎȦȘȖ ȒȜȟȠȎȠȜȥțȜ ȠȜȝșȖȐȎ ȥȠȜȏȩ ȒȜȏȞȎȠȪȟȭ ȒȜ ȘȎȔ ȒȜȗ ȝȓȥȖ Ȗ ȕȎȠȓȚ ȐȓȞțȡȠȪȟȭ Ș ȟȡțȒȡȘȡ ǿȠȞȜȘȖ ȘȜȒȎ ²

186

DZǹǮǰǮ


ȎțȎșȜȑȖȥțȩ ȟȠȞȜȘȎȚ ² Ȑ ȝȞȜȑȞȎȚȚȓ cob m iner Ȗȕ ȑșȎȐȩ ǸȜȒ ȟȠȞȜȘȖ ȝȞȜȐȓȞȭȓȠ ȥȠȜ ȘȜșȖȥȓȟȠȐȜ ȠȜȝșȖȐȎ ȡ ȥȓȞȓȝȎȦȘȖ ȘȎȘ ȚȖțȖȚȡȚ ȐȒȐȜȓ ȏȜșȪȦȓ ȥȖȟșȎ ȝȓȥȓȗ dzȟșȖ ȫȠȜ țȓ ȠȎȘ ȐȩȕȜȐ ȢȡțȘȤȖȖ error() Ȑ ȟȠȞȜȘȓ ȕȎȐȓȞȦȖȠ ȞȎȏȜȠȡ ȝȞȜȑȞȎȚȚȩ

ĝčĚĜ ĖČĘęī Ĕē ěđģđĕ dzȟșȖ ȡ ȥȓȞȓȝȎȦȘȖ ȒȜȟȠȎȠȜȥțȜ ȠȜȝșȖȐȎ ȥȠȜȏȩ ȝȞȜȗȠȖ ȝȜȒȜ ȐȟȓȚȖ ȝȓȥȎȚȖ Ȗ ȐȓȞțȡȠȪȟȭ ȜțȎ ȐȩȏȖȞȎȓȠ ȭȥȓȗȘȡ ȖțȐȓț ȠȎȞȭ Ȓșȭ ȣȞȎțȓțȖȭ ȟȜȏȞȎțțȩȣ ȏșȜȘȜȐ ȠȎȘ ȥȠȜ ȘȜȑȒȎ ȜțȎ ȏȡȒȓȠ ȐȩțȖȚȎȠȪ ȘȎȚȓțȪ Ȗȕ ȝȓȥȖ Ȝț ȏȡȒȓȠ ȞȎȕȚȓȧȓț ȖȚȓțțȜ Ȑ ȫȠȜȗ ȭȥȓȗȘȓ brickcrafter 14.

turtle.select(1) --

ɩɨɦɟɳɟɧɢɟ ɤɚɦɧɹ ɜ ɹɱɟɣɤɭ

ǵȎȠȓȚ ȖȟȝȜșțȓțȖȓ ȝȓȞȓȣȜȒȖȠ Ș ȤȖȘșȡ for Ȑ ȟȠȞȜȘȓ ǻȎ ȘȎȔȒȜȗ ȖȠȓȞȎȤȖȖ ȤȖȘșȎ ȥȓȞȓȝȎȦȘȎ ȐȩȠȎȟȘȖȐȎȓȠ ȝȓ ȞȓȝșȎȐșȓțțȩȗ ȘȎȚȓțȪ Ȗȕ ȝȓȥȖ ȝȜȒ ȘȜȠȜȞȜȗ țȎȣȜȒȖȠȟȭ Ȗ ȝȜȚȓȧȎȓȠ ȓȑȜ Ȑ ȭȥȓȗȘȡ ǸȜȑȒȎ ȥȓȞȓȝȎȦȘȎ ȝȜșțȜȟȠȪȬ ȕȎ ȝȜșțȖȠ ȭȥȓȗȘȡ ȏșȜȘȎ ȤȖȘș ȕȎȐȓȞȦȖȠȟȭ ȥȠȜȏȩ ȚȜȔțȜ ȏȩșȜ ȘȞȎȢȠȖȠȪ ȘȎȚȓțțȩȗ ȘȖȞȝȖȥ Ȗȕ ȟȜȏȞȎțțȩȣ ȏșȜȘȜȐ Ǯ ȝȜȘȎ ȭȥȓȗȘȎ ȖțȐȓțȠȎȞȭ țȓ ȕȎȝȜșțȓțȎ ȖȟȝȜșțȓțȖȓ ȤȖȘșȎ ȝȞȜȒȜșȔȎȓȠȟȭ Ȗ ȥȓȞȓȝȎȦȘȎ ȝȓȞȓȣȜȒȖȠ Ș ȟșȓȒȡȬȧȓȗ ȝȓȥȖ Ȗ ȠȎȘ ȒȎșȓȓ brickcrafter 16. -- ɫɛɨɪ ɤɚɦɧɹ ɢɡ ɩɟɱɟɣ 17. for i = 1, NUM_FURNACES do 18. turtle.suckUp(64 - turtle.getItemCount(1)) -get stone from furnace 19. if turtle.getItemCount(1) == 64 then 20. break -- ɨɫɬɚɧɨɜɤɚ ɟɫɥɢ ɫɨɛɪɚɧɨ ɛɥɨɤɚ ɤɚɦɧɹ 21. end 22. if i ~= NUM_FURNACES then 23. turtle.back() -- ɩɟɪɟɦɟɳɟɧɢɟ ɤ ɫɥɟɞɭɸɳɟɣ ɩɟɱɢ 24. end 25. end

ǽǾǼǶǵǰǼDzǿȀǰǼ ǸǮǺdzǻǻȉȃ ǸǶǾǽǶȅdzǷ

187


ȂȡțȘȤȖȭ turtle.suckUp() ȐȩțȖȚȎȓȠ ȘȎȚȓțțȩȓ ȏșȜ ȘȖ Ȗȕ ȝȓȥȖ țȎȒ ȥȓȞȓȝȎȦȘȜȗ Ȗ ȟȜȣȞȎțȭȓȠ Ȗȣ Ȑ ȐȩȏȞȎțțȜȗ ȭȥȓȗȘȓ ǺȜȔțȜ ȝȓȞȓȒȎȠȪ ȫȠȜȗ ȢȡțȘȤȖȖ ȥȖȟșȜ Ȗ ȜȑȞȎțȖȥȖȠȪ ȘȜșȖȥȓȟȠȐȜ ȏșȜȘȜȐ ȝȜȚȓȧȎȓȚȩȣ Ȑ ȐȩȏȞȎțțȡȬ ȭȥȓȗȘȡ ȥȓȞȓ ȝȎȦȘȖ ȀȎȘȔȓ ȚȜȔțȜ ȐȜȟȝȜșȪȕȜȐȎȠȪȟȭ ȢȡțȘȤȖȭȚȖ turtle. suck() Ȗ turtle.suckDown() ȥȠȜȏȩ ȝȞȖțȖȚȎȠȪ ȏșȜȘȖ Ȗȕ ȝȓȥȓȗ ȘȜȠȜȞȩȓ țȎȣȜȒȭȠȟȭ ȝȓȞȓȒ ȖșȖ ȝȜȒ ȥȓȞȓȝȎȦȘȜȗ ȟȜȜȠ ȐȓȠȟȠȐȓțțȜ ǰ țȎȦȓȚ ȟșȡȥȎȓ ȝȜȟȘȜșȪȘȡ ȥȓȞȓȝȎȦȘȎ țȎȣȜȒȖȠȟȭ ȝȜȒ ȝȓȥȎȚȖ ȜțȎ ȐȩȠȎȟȘȖȐȎȓȠ ȝȞȓȒȚȓȠȩ Ȗȕ ȐȩȐȜȒțȜȗ ȭȥȓȗȘȖ ȝȓȥȖ ȅȓȞȓȝȎȦȘȎ ȚȜȔȓȠ ȣȞȎțȖȠȪ țȓ ȏȜșȓȓ ȘȎȚȓțțȩȣ ȏșȜ ȘȜȐ Ȑ ȭȥȓȗȘȓ ȖțȐȓțȠȎȞȭ ȝȜȫȠȜȚȡ ȥȠȜȏȩ ȖȟȘșȬȥȖȠȪ ȝȓȞȓ ȝȜșțȓțȖȓ Țȩ ȐȩȝȜșțȭȓȚ țȓȘȜȠȜȞȩȓ ȚȎȠȓȚȎȠȖȥȓȟȘȖȓ Ȑȩ ȥȖȟșȓțȖȭ ȂȡțȘȤȖȭ turtle.getItemCount(1) ȐȜȕȐȞȎȧȎȓȠ ȘȜșȖȥȓȟȠȐȜ ȏșȜȘȜȐ ȘȜȠȜȞȩȓ ȡȔȓ ȓȟȠȪ Ȑ ȭȥȓȗȘȓ ȖțȐȓțȠȎȞȭ. ǽȜșȡȥȓțțȜȓ ȥȖȟșȜ Țȩ ȐȩȥȖȠȎȓȚ Ȗȕ ȥȠȜȏȩ ȝȜșȡȥȖȠȪ ȘȜ șȖȥȓȟȠȐȜ ȏșȜȘȜȐ ȘȜȠȜȞȩȓ ȥȓȞȓȝȎȦȘȎ ȓȧȓ ȒȜșȔțȎ ȒȜȟȠȎȠȪ Ȗȕ ȝȓȥȓȗ ǻȎȝȞȖȚȓȞ ȓȟșȖ Ȑ ȭȥȓȗȘȓ ȖțȐȓțȠȎȞȭ ȡȔȓ ȓȟȠȪ ȘȎȚȓțțȩȣ ȏșȜȘȜȐ Ȏ Ȑ ȝȓȥȖ țȎȣȜȒȖȠȟȭ ȘȎȚȓțțȩȣ ȏșȜ ȘȎ ȥȓȞȓȝȎȦȘȎ țȓ ȒȜșȔțȎ ȐȩțȖȚȎȠȪ Ȑȟȓ ȏșȜȘȎ ǰȚȓȟȠȜ ȫȠȜȑȜ ȜțȎ ȒȜșȔțȎ ȐȩțȡȠȪ șȖȦȪ ȏșȜȘȎ dzȟșȖ Ȑ ȭȥȓȗȘȓ ȖțȐȓțȠȎȞȭ țȎȣȜȒȖȠȟȭ ȏșȜȘȎ ȒȜ ȏȎȐșȓțȖȓ ȏșȜȘȜȐ ȝȞȓȘȞȎȧȎȓȠȟȭ ǶțȟȠȞȡȘȤȖȭ if Ȑ ȟȠȞȜȘȓ ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ true Ȗ ȐȩȝȜșțȓțȖȓ ȤȖȘșȎ for ȝȞȓȘȞȎȧȎȓȠȟȭ. dzȟșȖ ȭȥȓȗȘȎ ȖțȐȓțȠȎȞȭ ȓȧȓ țȓ ȕȎȝȜșțȓțȎ ȥȓȞȓȝȎȦ ȘȎ ȝȞȜȒȜșȔȎȓȠ ȒȐȖȔȓțȖȓ Ȗ ȝȓȞȓȣȜȒȖȠ Ș ȟșȓȒȡȬȧȓȗ ȝȓȥȖ ȀȎȘ ȝȞȜȒȜșȔȎȓȠȟȭ ȒȜ Ƞȓȣ ȝȜȞ ȝȜȘȎ ȥȓȞȓȝȎȦȘȎ țȓ ȒȜȟȠȖȑ țȓȠ ȝȜȟșȓȒțȓȗ ȝȓȥȖ ȋȠȜ ȝȞȜȖȕȜȗȒȓȠ ȘȜȑȒȎ i ² ȝȓȞȓȚȓțțȎȭ ȤȖȘșȎ for ² ȟȠȎțȓȠ ȞȎȐțȎ ȕțȎȥȓțȖȬ ȘȜțȟȠȎțȠȩ NUM _ FURNACES ȀȎȘȖȚ ȜȏȞȎȕȜȚ ȖȟȝȜșțȓțȖȓ ȤȖȘșȎ ȝȞȜȒȜșȔȎȓȠ ȟȭ ȝȜȘȎ ȐȩȝȜșțȭȓȠȟȭ ȡȟșȜȐȖȓ ȖțȟȠȞȡȘȤȖȖ if Ȑ ȟȠȞȜȘȓ ȓȟșȖ ȕțȎȥȓțȖȓ ȝȓȞȓȚȓțțȜȗ i țȓ ȞȎȐțȜ ȕțȎȥȓțȖȬ ȘȜțȟȠȎțȠȩ NUM _ FURNACES dzȟșȖ ȡȟșȜȐȖȓ țȓ ȐȩȝȜșțȭȓȠȟȭ ȖȟȝȜșțȓ țȖȓ ȤȖȘșȎ ȝȞȓȘȞȎȧȎȓȠȟȭ

188

DZǹǮǰǮ


ĔēďĚĞĚĎėđęĔđ ĖĔĜěĔģđĕ ǸȜȑȒȎ ȥȓȞȓȝȎȦȘȎ ȟȜȏȓȞȓȠ ȘȎȚȓțțȩȣ ȏșȜȘȎ Ȗȣ țȡȔțȜ ȝȓ ȞȓȞȎȏȜȠȎȠȪ Ȑ ȘȖȞȝȖȥȖ ǻȎȝȜȚțȬ ȥȠȜ ȥȓȞȓȝȎȦȘȎ ȝȞȜȖȕȐȜ ȒȖȠ ȘȎȚȓțțȩȓ ȘȖȞȝȖȥȖ ȝȞȖȚȓțȭȭ ȞȓȤȓȝȠ ȘȎȘ Ƞȩ ȫȠȜ ȒȓșȎ ȓȦȪ țȎ ȐȓȞȟȠȎȘȓ țȜ ȘȞȎȢȠȖȠ Ȗȣ Ȑ ȟȜȏȟȠȐȓțțȜȚ ȖțȐȓțȠȎȞȓ Dzșȭ ȝȓȞȓȞȎȏȜȠȘȖ ȘȎȚȓțțȩȣ ȏșȜȘȜȐ Ȑ ȘȎȚȓțțȩȓ ȘȖȞȝȖȥȖ țȡȔțȜ ȝȜȚȓȟȠȖȠȪ ȜȒȖțȎȘȜȐȜȓ ȘȜșȖȥȓȟȠȐȜ ȘȎȚȓțțȩȣ ȏșȜȘȜȐ Ȑ ȥȓȠȩȞȓ ȭȥȓȗȘȖ ȖțȐȓțȠȎȞȭ ȥȠȜȏȩ ȟȢȜȞȚȖȞȜȐȎȠȪ ȘȐȎȒȞȎȠ ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ

ˀ̛̭͘ ϭϬ͘ϳ͘ ˀ̶̖̖̪̯ ̴̡̬̯̌̌ ̡̥̖̦̌​̵̦̼ ̸̡̛̛̬̪̖̜ ̏ ̛̬̖̐ ;̭̣̖̏̌Ϳ ̛ ̛̦̖̦̯̬̖̏̌ ̸̡̛̖̬̖̪̹̌ ;̭̪̬̌̏̌Ϳ

ǸȜȑȒȎ ȏșȜȘȖ ȟȜȏȞȎțȩ Ȗ ȞȎȕȚȓȧȓțȩ Ȑ ȟȜȜȠȐȓȠȟȠȐȖȖ ȟ Ȟȓ ȤȓȝȠȜȚ ȘȞȎȢȠȎ ȐȩȕȜȐ ȢȡțȘȤȖȖ turtle.craft() ȝȞȖȐȜȒȖȠ Ș ȟȜȕȒȎțȖȬ ȘȎȚȓțțȩȣ ȘȖȞȝȖȥȓȗ Ȗ ȟȜȣȞȎțȓțȖȬ Ȗȣ Ȑ ȠȓȘȡȧȓȗ ȭȥȓȗȘȓ dzȟșȖ Ƞȩ ȣȜȥȓȦȪ ȥȠȜȏȩ ȥȓȞȓȝȎȦȘȎ ȟȜȕȒȎȐȎșȎ ȠȜșȪȘȜ ȜȝȞȓȒȓșȓțțȜȓ ȘȜșȖȥȓȟȠȐȜ ȘȖȞȝȖȥȓȗ ȒȎȔȓ ȓȟșȖ ȡ țȓȓ ȒȜȟȠȎȠȜȥțȜ ȏșȜȘȜȐ Ȓșȭ ȏȜșȪȦȓȑȜ ȘȜșȖȥȓȟȠȐȎ ȝȓȞȓȒȎȗ Ȑ ȢȡțȘȤȖȬ turtle.craft() ȤȓșȜȥȖȟșȓțțȩȗ ȎȞȑȡȚȓțȠ. ǻȎȝȞȖȚȓȞ ȢȡțȘȤȖȭ turtle.craft(1) ȏȡȒȓȠ ȒȜȏȎȐșȭȠȪ ȠȜșȪȘȜ ȜȒȖț ȘȎȚȓțțȩȗ ȏșȜȘ Ȑ ȘȎȔȒȡȬ Ȗȕ ȥȓȠȩȞȓȣ ȭȥȓȓȘ Ȗ ȟȜȕȒȎȐȎȠȪ ȜȒȖț ȘȎȚȓțțȩȗ ȘȖȞȝȖȥ ǸȜȒ Ȑ ȟȠȞȜȘȓ ȝȞȜȐȓȞȭȓȠ țȎșȖȥȖȓ ȘȎȚȓțțȩȣ ȏșȜȘȜȐ Ȑ ȭȥȓȗȘȓ ȖțȐȓțȠȎȞȭ dzȟșȖ ȫȠȜ ȠȎȘ ȖȟȝȜșțȓțȖȓ ȝȓȞȓȣȜȒȖȠ Ș ȟȠȞȜȘȓ brickcrafter ɨɛɪɚɛɨɬɤɚ ɛɥɨɤɨɜ ɤɚɦɧɹ 28. if turtle.getItemCount(1) == 64 then WXUWOH WUDQVIHU7R ɩɨɦɟɳɟɧɢɟ ɤɚɦɧɹ ɜ

ǽǾǼǶǵǰǼDzǿȀǰǼ ǸǮǺdzǻǻȉȃ ǸǶǾǽǶȅdzǷ

189


ɹɱɟɣɤɭ WXUWOH WUDQVIHU7R ɩɨɦɟɳɟɧɢɟ ɤɚɦɧɹ ɜ ɹɱɟɣɤɭ WXUWOH WUDQVIHU7R ɩɨɦɟɳɟɧɢɟ ɤɚɦɧɹ ɜ ɹɱɟɣɤɭ WXUWOH VHOHFW ɩɨɦɟɳɟɧɢɟ ɤɚɦɟɧɧɵɯ ɤɢɪɩɢɱɟɣ ɜ ɹɱɟɣɤɭ WXUWOH FUDIW ɤɪɚɮɬ ɤɚɦɟɧɧɵɯ ɤɢɪɩɢɱɟɣ 34. brickCount = brickCount + 64 35. print('Total stone bricks: ' .. brickCount)

ȂȡțȘȤȖȭ turtle.transferTo() ȝȓȞȓȚȓȧȎȓȠ ȏșȜȘȖ Ȗȕ ȠȓȘȡȧȓȗ ȭȥȓȗȘȖ Ȑ ȒȞȡȑȡȬ. Ȁȩ ȚȜȔȓȦȪ ȡȘȎȕȎȠȪ Ȑ ȘȎȘȡȬ ȖȚȓțțȜ ȝȓȞȓȒȎȐ ȤȓșȜȓ ȥȖȟșȜ Ȑ ȘȎȥȓȟȠȐȓ ȝȓȞȐȜȑȜ ȝȎȞȎȚȓȠȞȎ Ȣȡ ț Ș Ȥ Ȗ Ȗ. ǰ Ƞ ȜȞȜȗ ȝȎȞȎ Țȓ Ƞ Ȟ Ȝȝ ȞȓȒȓș ȭȓ Ƞ ȘȜș Ȗ ȥȓ ȟ Ƞ ȐȜ ȝȓȞȓȚȓȧȎȓȚȩȣ ȏșȜȘȜȐ ǰȩȕȜȐ ȢȡțȘȤȖȖ turtle.transferTo(2, 16) Ȑ ȟȠȞȜȘȓ ȝȓȞȓȚȓȧȎȓȠ ȘȎȚȓțțȩȣ ȏșȜȘȜȐ Ȗȕ ȠȓȘȡȧȓȗ ȭȥȓȗȘȖ (ȝȜȒ țȜȚȓȞȜȚ ȘȎȘ ȡȘȎȕȎțȜ Ȑ ȟȠȞȜȘȓ Ȑ ȭȥȓȗȘȡ ǸȜȒ Ȑ ȟȠȞȜȘȎȣ Ȗ ȝȓȞȓȚȓȧȎȓȠ ȘȎȚȓț țȩȣ ȏșȜȘȜȐ Ȑ ȭȥȓȗȘȖ Ȗ ȀȓȝȓȞȪ ȞȎȟȝȜșȜȔȓțȖȓ ȏșȜȘȜȐ Ȑ ȖțȐȓțȠȎȞȓ ȥȓȞȓȝȎȦȘȖ ȟȜȜȠȐȓȠȟȠȐȡȓȠ ȞȓȤȓȝȠȡ ȝȜȘȎȕȎțțȜ Țȡ țȎ ȞȖȟ ǵȎȠȓȚ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȐȩȕȩȐȎȓȠ ȢȡțȘȤȖȬ turtle.select(16) Ȓșȭ ȐȩȏȜȞȎ ȭȥȓȗȘȖ Ȑ ȘȎȥȓȟȠȐȓ Ƞȓ Șȡȧȓȗ ȝȜȫȠȜȚȡ ȘȜȑȒȎ Ȑ ȟȠȞȜȘȓ ȐȩȕȩȐȎȓȠȟȭ ȢȡțȘȤȖȭ turtle.craft() ȜȏȞȎȏȜȠȎțțȩȓ ȘȎȚȓțțȩȓ ȘȖȞȝȖȥȖ ȏȡȒȡȠ ȝȜȚȓȧȓțȩ Ȑ ȭȥȓȗȘȡ 16. ǰ ȟȠȞȜȘȎȣ Ȗ ȝȞȜȖȕȐȜȒȖȠȟȭ ȝȜȒȟȥȓȠ Ȗ ȐȩȐȜȒ țȎ ȫȘȞȎț ȘȜșȖȥȓȟȠȐȎ ȖȕȑȜȠȜȐșȓțțȩȣ ȥȓȞȓȝȎȦȘȜȗ ȘȖȞȝȖȥȓȗ dzȟșȖ ȥȓȞȓȝȎȦȘȎ ȝȜȟșȓ ȝȞȜȣȜȔȒȓțȖȭ Ȑȟȓȣ ȝȓȥȓȗ țȓ ȟȜ ȏȞȎșȎ ȘȎȚȓțțȩȣ ȏșȜȘȎ Ȑ ȭȥȓȗȘȡ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȝȞȖ ȜȟȠȎțȎȐșȖȐȎȓȠ ȖȟȝȜșțȓțȖȓ ȝȞȜȑȞȎȚȚȩ țȎ ȟȓȘȡțȒ ȒȐȓ ȚȖțȡȠȩ ȥȠȜȏȩ ȝȓȥȖ ȝȓȞȓȝșȎȐȖșȖ ȒȜȝȜșțȖȠȓșȪțȩȓ ȘȎ Țȓțțȩȓ ȏșȜȘȖ brickcrafter 36. else 37. print('Not enough stone yet. Sleeping...') RV VOHHS ɨɠɢɞɚɧɢɟ ɦɢɧɭɬɵ 39. end

190

DZǹǮǰǮ


ǽȜȟșȓ ȐȜȕȜȏțȜȐșȓțȖȭ ȞȎȏȜȠȩ ȝȞȜȑȞȎȚȚȩ ȥȓȞȓȝȎȦȘȎ ȐȓȞțȓȠȟȭ Ș ȝȓȞȐȜȗ ȝȓȥȖ ǻȓȕȎȐȖȟȖȚȜ ȜȠ ȠȜȑȜ ȏȩșȖ șȖ ȟȜȕ ȒȎțȩ ȘȎȚȓțțȩȓ ȘȖȞȝȖȥȖ ȥȓȞȓȝȎȦȘȓ țȡȔțȜ ȐȓȞțȡȠȪȟȭ Ș ȝȓȞȐȜȗ ȏșȖȔȎȗȦȓȗ Ș ȑȓțȓȞȎȠȜȞȡ ȏȡșȩȔțȖȘȎ ȝȓȥȖ ȥȠȜȏȩ țȎȦ ȞȜȏȜȠ ȚȜȑ ȟȜȏȞȎȠȪ ȘȎȘ ȚȜȔțȜ ȏȜșȪȦȓ ȝȓȞȓȝșȎȐșȓțțȩȣ ȘȎȚțȓȗ

ĎĚēĎĜČĥđęĔđ ģđĜđěČĤĖĔ ęČ ĔĝġĚĐęğĪ ěĚēĔĢĔĪ ȅȠȜȏȩ ȝȓȞȓȚȓȟȠȖȠȪ ȥȓȞȓȝȎȦȘȡ Ȑ ȖȟȣȜȒțȜȓ ȝȜșȜȔȓțȖȓ țȎȚ țȡȔțȜ ȒȐȖȑȎȠȪ ȓȓ Ȑ ȟȠȜȞȜțȡ ȝȓȞȐȜȗ ȝȓȥȖ ȝȜȘȎ țȎȦ ȞȜȏȜȠ țȓ ȜȘȎȔȓȠȟȭ ȝȞȭȚȜ ȝȜȒ țȓȗ ȀȎȚ ȥȓȞȓȝȎȦȘȎ ȟșȜȔȖȠ Ȑ ȟȡțȒȡȘ ȟȐȜȖ ȘȖȞȝȖȥȖ ǵȎ ȫȠȖ ȒȐȖȔȓțȖȭ ȜȠȐȓȥȎȓȠ ȤȖȘș for țȎȥȖ țȎȬȧȖȗȟȭ Ȑ ȟȠȞȜȘȓ brickcrafter ɩɟɪɟɦɟɳɟɧɢɟ ɤ ɫɭɧɞɭɤɭ ɨɤɨɥɨ ɩɟɪɜɨɣ ɩɟɱɢ

42. for i = 1, NUM_FURNACES - 1 do 43. turtle.forward() 44. end WXUWOH WXUQ/HIW ɩɨɜɨɪɨɬ ɥɢɰɟɜɨɣ ɫɬɨɪɨɧɨɣ ɤ ɫɭɧɞɭɤɭ WXUWOH VHOHFW ɜɵɛɨɪ ɤɚɦɟɧɧɵɯ ɤɢɪɩɢɱɟɣ WXUWOH GURS ɩɨɦɟɳɟɧɢɟ ɤɚɦɟɧɧɵɯ ɤɢɪɩɢɱɟɣ ɜ ɫɭɧɞɭɤ WXUWOH WXUQ5LJKW ɩɨɜɨɪɨɬ ɤ ɝɟɧɟɪɚɬɨɪɭ 49. end

ǸȜȒ Ȑ ȟȠȞȜȘȎȣ ² ȡȝȞȎȐșȭȓȠ ȝȓȞȓȚȓȧȓțȖȓȚ ȥȓȞȓ ȝȎȦȘȖ ȐȝȓȞȓȒ ȠȎȘȖȚ ȜȏȞȎȕȜȚ ȥȠȜȏȩ ȜțȎ ȐȓȞțȡșȎȟȪ Ȑ Ȗȟ ȣȜȒțȜȓ ȝȜșȜȔȓțȖȓ ȀȜ ȓȟȠȪ ȥȓȞȓȝȎȦȘȎ ȟȜȐȓȞȦȎȓȠ NUM _ FURNACES - 1 ȝȜȟșȓȒȜȐȎȠȓșȪțȩȣ ȝȓȞȓȚȓȧȓțȖȗ ȝȜȘȎ țȓ ȜȘȎȔȓȠȟȭ țȖȔȓ ȝȓȞȐȜȗ ȝȓȥȖ ǰ ȟȠȞȜȘȓ ȘȜțȟȠȎțȠȓ NUM _ FURNACES ȏȩșȜ ȝȞȖȟȐȜȓțȜ ȕțȎȥȓțȖȓ 5 ȝȜȫȠȜȚȡ ȥȓȞȓȝȎȦȘȎ ȟȜȐȓȞȦȖȠ ȥȓȠȩȞȓ ȝȜȟșȓȒȜȐȎȠȓșȪțȩȣ ȝȓȞȓȚȓȧȓțȖȭ ǸȜȒ Ȑ ȟȠȞȜȘȓ ȝȜȐȜȞȎȥȖȐȎȓȠ ȥȓȞȓȝȎȦȘȡ șȖȤȓȐȜȗ ȟȠȜȞȜțȜȗ Ș ȟȡț ȒȡȘȡ Ȏ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȐȩȏȖȞȎȓȠ Ȑȟȓ ȖȚȓȬȧȖȓȟȭ ȘȎȚȓțțȩȓ ȘȖȞȝȖȥȖ ȘȜȠȜȞȩȓ ȏȩșȖ ȟȜȕȒȎțȩ Ȗ ȟȜȣȞȎțȓțȩ Ȑ ȭȥȓȗȘȓ

ǽǾǼǶǵǰǼDzǿȀǰǼ ǸǮǺdzǻǻȉȃ ǸǶǾǽǶȅdzǷ

191


ȖțȐȓțȠȎȞȭ ǵȎȠȓȚ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȝȜȚȓȧȎȓȠ ȐȩȏȞȎțțȩȓ ȘȎ Țȓțțȩȓ ȘȖȞȝȖȥȖ Ȑ ȟȡțȒȡȘ ȖșȖ țȖȥȓȑȜ țȓ ȒȓșȎȓȠ ȓȟșȖ ȘȖȞ ȝȖȥȖ țȓ ȏȩșȖ ȖȕȑȜȠȜȐșȓțȩ Ȏ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȝȜȐȜȞȎȥȖȐȎȓȠ ȥȓȞȓȝȎȦȘȡ șȖȤȓȐȜȗ ȟȠȜȞȜțȜȗ Ș ȑȓțȓȞȎȠȜȞȡ ȏȡșȩȔțȖȘȎ ȂȖțȎșȪțȎȭ ȖțȟȠȞȡȘȤȖȭ end Ȑ ȟȠȞȜȘȓ ȕȎȐȓȞȦȎȓȠ ȏȓȟȘȜțȓȥțȩȗ ȤȖȘș while țȎȥȎȐȦȖȗȟȭ Ȑ ȟȠȞȜȘȓ ȝȜȫȠȜ Țȡ ȘȜȑȒȎ ȝȞȜȑȞȎȚȚȎ ȒȜȟȠȖȑȎȓȠ ȫȠȜȗ ȠȜȥȘȖ ȖȟȝȜșțȓțȖȓ ȟțȜȐȎ ȝȓȞȓȣȜȒȖȠ Ș ȟȠȞȜȘȓ ȀȎȘȖȚ ȜȏȞȎȕȜȚ ȐȓȟȪ ȝȞȜȤȓȟȟ ȟȏȜȞȎ ȘȎȚțȭ ȝȓȞȓȞȎȏȜȠȘȎ ȓȑȜ Ȑ ȘȎȚȓțțȩȓ ȘȖȞȝȖȥȖ Ȗ ȟȜ ȣȞȎțȓțȖȓ ȑȜȠȜȐȩȣ ȘȖȞȝȖȥȓȗ Ȑ ȟȡțȒȡȘȓ ȝȜȐȠȜȞȭȬȠȟȭ ȟțȜȐȎ Ȗ ȟțȜȐȎ ĐĚěĚėęĔĞđėĨęĚđ ēČĐČęĔđ" ĖĚęĐĔĞđĜĝĖČī ĠČčĜĔĖČ

Dzșȭ ȝȞȖȑȜȠȜȐșȓțȖȭ ȠȜȞȠȎ Ȑ 0LQHFUDIW țȓȜȏȣȜȒȖȚȜ ȟșȓȒȜ ȐȎȠȪ ȜȒțȜȚȡ Ȗȕ ȟȎȚȩȣ ȟșȜȔțȩȣ ȞȓȤȓȝȠȜȐ Ȑ ȖȑȞȓ ȘȜȠȜȞȩȗ ȠȞȓȏȡȓȠ ȚȜșȜȘȜ ȭȗȤȜ ȟȎȣȎȞ Ȗ ȝȦȓțȖȤȡ ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ

ˀ̛̭͘ ϭϬ͘ϴ͘ ˀ̶̖̖̪̯ ̴̡̬̯̌̌ ̨̯̬̯̌ ̏ ̛̬̖̐ DŝŶĞĐƌĂŌ

Создай программу, которая научит черепашку печь торты. Размести ингредиенты в отдельных сундуках, а затем запрограммируй черепашку так, чтобы она двигалась вдоль ряда сундуков, выбирала ингредиенты для торта из каждого сундука, делала торт и помещала готовый торт в отдельный сундук. Если какой-нибудь сундук с ингредиентом, окажется пуст, пусть черепашка ожидает пару минут, прежде чем снова проверить, не появился ли в сундуке нужный ингредиент.

192

DZǹǮǰǮ


ĝĞĜĚĔĞđėĨĝĞĎĚ ēĐČęĔī ēČĎĚĐĔĖČ ǻȎȦ ȑȓțȓȞȎȠȜȞ ȏȡșȩȔțȖȘȎ Ȗ ȥȓȞȓȝȎȦȘȖ ȠȜ ȓȟȠȪ ȜȟțȜȐțȎȭ ȝȞȜȖȕȐȜȒȟȠȐȓțțȎȭ șȖțȖȭ ȒȜ ȟȖȣ ȝȜȞ ȜȟȠȎȬȠȟȭ țȎ ȡșȖȤȓ ȑȒȓ ȜțȖ ȝȜȒȐȓȞȑȎȬȠȟȭ ȐȜȕȒȓȗȟȠȐȖȬ ȒȜȔȒȭ Ȗ ȐȓȠȞȎ ȋȠȜ ȟșȜȔțȜ țȎȕȐȎȠȪ ȕȎȐȜȒȜȚ ȀȓȝȓȞȪ ȘȜȑȒȎ ȡ Ƞȓȏȭ ȓȟȠȪ țȓȜȑȞȎțȖȥȓțțȩȗ ȖȟȠȜȥțȖȘ ȏȡșȩȔțȖȘȎ Ȗ ȘȎȚȓțțȩȣ ȘȖȞȝȖȥȓȗ ȚȜȔțȜ ȝȜ ȟȠȞȜȖȠȪ ȕȎȐȜȒȟȘȜȓ ȕȒȎțȖȓ ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ Ȗ

ˀ̛̭͘ ϭϬ͘ϵ͘ ʯ̛̦̖̔̌ ̣̔́ ̛̬̥̖̺̖̦̌́̚ ̨̖̦̖̬̯̬̐̌̌ ̡̛̱̣̼̙̦̍̌ ̛ ̸̡̖̬̖̪̹̖͕̌ ̨̨̪̭̯̬̖̦​̨̦̖ ̛̚ ̨̭̭̯̖̦̍̏​̨̦̜ ̶̨̡̛̪̬̱̔​̛

ˀ̛̭͘ ϭϬ͘ϭϬ͘ ʰ̦̯̖̬̖̬̽ ̭ ̱̥̔̏́ ̨̛̖̦̖̬̯̬̥̐̌̌ ̡̛̱̣̼̙̦̍̌ ̛ ̡̨̛̖̬̯̦̼̥̔̌̏ ̨̨̨̪̥̏̔̌̔ ̣̼̌̏

ǽǾǼǶǵǰǼDzǿȀǰǼ ǸǮǺdzǻǻȉȃ ǸǶǾǽǶȅdzǷ

193


DzȜȐȜșȪțȜ ȟȘȜȞȜ ȠȐȜȖ ȥȓȞȓȝȎȦȘȖ ȝȞȜȖȕȐȓȒȡȠ ȚțȜȔȓȟȠȐȜ ȘȎȚȓțțȩȣ ȘȖȞȝȖȥȓȗ ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ

ˀ̛̭͘ ϭϬ͘ϭϭ͘ ʿ̨̬̣̖̥̍ ̭ ̸̡̨̛̛̬̪̥ ̨̣̹̖̍̽ ̦̖̯ ̨̣̬̍̌̐̔̌́ ̨̨̨̥̙̦̭̯̥̏́̚ ̨̪̬̬̥̐̌​̨̛̛̥̬̦̏̌́͊

ǿȠȞȜȖȠȓșȪȟȠȐȜ ȕȒȎțȖȭ Ȓșȭ ȑȓțȓȞȎȠȜȞȎ ȏȡșȩȔțȖȘȎ țȓ ȜȏȭȕȎȠȓșȪțȜ țȜ ȝȜ ȘȞȎȗțȓȗ ȚȓȞȓ Ƞȓȏȓ țȓ ȝȞȖȒȓȠȟȭ ȒȜȏȩ ȐȎȠȪ ȘȎȚȓțțȩȓ ȏșȜȘȖ ȐȞȡȥțȡȬ ȓȟșȖ Ƞȩ ȞȓȦȖȦȪȟȭ țȎ ȓȑȜ ȝȜȟȠȞȜȗȘȡ ǰ ȑșȎȐȎȣ Ȗ Ƞȩ ȡȕțȎȓȦȪ ȘȎȘ ȕȎȝȞȜȑȞȎȚȚȖ ȞȜȐȎȠȪ ȥȓȞȓȝȎȦȓȘ ȥȠȜȏȩ ȜțȖ ȐȜȕȐȜȒȖșȖ ȟȠȓțȩ Ȗ ȟȠȞȜȖșȖ ȘȜȚțȎȠȩ

ģĞĚ Ęħ ğēęČėĔ ǰ ȫȠȜȗ ȑșȎȐȓ Ƞȩ ȡȕțȎș ȘȎȘ ȟȚȓțȖȠȪ ȖțȟȠȞȡȚȓțȠ ȥȓȞȓȝȎȦ ȘȖ țȎ ȐȓȞȟȠȎȘ ȖȟȝȜșȪȕȡȭ ȢȡțȘȤȖȖ turtle.equipLeft() Ȗ turtle.equipRight() ǼȟțȎȧȓțȖȓ ȥȓȞȓȝȎȦȘȖ ȐȓȞȟȠȎȘȜȚ ȝȜȕȐȜșȭȓȠ ȓȗ ȘȞȎȢȠȖȠȪ ȝȞȖ ȝȜȚȜȧȖ ȢȡțȘȤȖȖ turtle. craft(). ȅȠȜȏȩ ȐȩțȖȚȎȠȪ ȘȎȘȖȓ șȖȏȜ ȝȞȓȒȚȓȠȩ ȖșȖ ȏșȜȘȖ Ȗȕ ȘȜțȠȓȗțȓȞȜȐ ȠȎȘȖȣ ȘȎȘ ȟȡțȒȡȘȖ ȖșȖ ȝȓȥȖ ȟșȓȒȡȓȠ Ȗȟ ȝȜșȪȕȜȐȎȠȪ ȢȡțȘȤȖȬ turtle.suck() ȋȠȜȗ ȢȡțȘȤȖȖ ȚȜȔ

194

DZǹǮǰǮ


țȜ ȝȓȞȓȒȎȠȪ ȥȖȟșȜȐȜȗ ȎȞȑȡȚȓțȠ ȥȠȜȏȩ ȜȑȞȎțȖȥȖȠȪ ȘȜșȖ ȥȓȟȠȐȜ ȖȕȩȚȎȓȚȩȣ ȝȞȓȒȚȓȠȜȐ ȏșȜȘȜȐ ȂȡțȘȤȖȖ turtle. suckUp() Ȗ turtle.suckDown() ȝȜȕȐȜșȭȬȠ ȥȓȞȓȝȎȦȘȓ ȐȕȎȖȚȜȒȓȗȟȠȐȜȐȎȠȪ ȟ ȘȜțȠȓȗțȓȞȎȚȖ ȐȩȦȓ ȖșȖ țȖȔȓ țȓȓ ȟȜȜȠȐȓȠȟȠȐȓțțȜ ǽȓȞȓȒ ȐȩȕȜȐȜȚ ȢȡțȘȤȖȖ turtle.craft() țȡȔțȜ ȞȎȟ ȝȜșȜȔȖȠȪ ȘȜȚȝȜțȓțȠȩ Ȑ ȖțȐȓțȠȎȞȓ ȥȓȞȓȝȎȦȘȖ Ȑ ȟȜȜȠȐȓȠ ȟȠȐȖȖ ȟ ȞȓȤȓȝȠȜȚ ȠȎȘ Ȕȓ ȘȎȘ Ƞȩ ȫȠȜ ȒȓșȎș ȏȩ țȎ ȐȓȞȟȠȎȘȓ Dzșȭ ȞȎȕȚȓȧȓțȖȭ ȖțȑȞȓȒȖȓțȠȜȐ ȞȓȤȓȝȠȎ Ȑ ȞȎȕțȩȣ ȭȥȓȗȘȎȣ ȚȜȔțȜ ȖȟȝȜșȪȕȜȐȎȠȪ ȢȡțȘȤȖȬ turtle.transferTo() ǽȜ ȟșȓ ȐȩȕȜȐȎ ȢȡțȘȤȖȖ turtle.craft() ȟȜȕȒȎȐȎȓȚȩȓ ȝȞȓȒȚȓ Ƞȩ ȝȜȭȐȭȠȟȭ Ȑ ȠȓȘȡȧȓȗ ȭȥȓȗȘȓ ȥȓȞȓȝȎȦȘȖ ǰ ȟșȓȒȡȬȧȓȗ ȑșȎȐȓ ȕȎȖȚȓȐ ȘȎȚȓțțȩȓ ȘȖȞȝȖȥȖ ȒȎȐȎȗ țȎȥțȓȚ ȝȞȜȑȞȎȚȚȖȞȜȐȎȠȪ ȥȓȞȓȝȎȦȓȘ ȠȎȘ ȥȠȜȏȩ ȜțȖ țȎȥȎ șȖ ȟȠȞȜȖȠȪ Ȓșȭ țȎȟ ȑȖȑȎțȠȟȘȖȓ ȕȒȎțȖȭ


11 ĎĚēĎđĐđęĔđ ĝĞđę ǿȠȞȜȖȠȓșȪȟȠȐȜ Ȗȕ ȏșȜȘȜȐ ȚȜȔȓȠ ȜȘȎȕȎȠȪȟȭ ȜȝȎȟțȩȚ Ȗ ȒȜșȑȖȚ ȝȞȜȤȓȟȟȜȚ ǼȝȎȟțȩȚ ȝȜȠȜ Țȡ ȥȠȜ ȚȜȔțȜ ȡȝȎȟȠȪ ȟ ȏȜșȪȦȜȗ ȐȩȟȜȠȩ ȓȟșȖ ȟȠȞȜȖȠȪ ȐȩȟȜȘȖȓ ȕȒȎțȖȭ Ȑ ȞȓȔȖȚȓ ȐȩȔȖȐȎ țȖȭ ǰȚȓȟȠȜ ȠȜȑȜ ȥȠȜȏȩ ȟȠȞȜȖȠȪ ȟȠȓțȩ ȟȎȚȜȟȠȜȭȠȓșȪ țȜ ȚȜȔțȜ ȕȎȝȞȜȑȞȎȚȚȖȞȜȐȎȠȪ ȥȓȞȓȝȎȦȘȡ Ȗ ȝȜȞȡȥȖȠȪ ȓȗ ȫȠȖ ȜȝȎȟțȩȓ Ȗ țȡȒțȩȓ ȟȠȞȜȖȠȓșȪțȩȓ ȞȎȏȜȠȩ ǰ ȫȠȜȗ ȑșȎ Ȑȓ Țȩ ȞȎȕȞȎȏȜȠȎȓȚ ȎșȑȜȞȖȠȚ Ȓșȭ ȟȠȞȜȖȠȓșȪȟȠȐȎ ȟȠȓț șȬ ȏȜȑȜ ȞȎȕȚȓȞȎ ȒȜȏȎȐȖȐ țȓȟȘȜșȪȘȜ țȜȐȩȣ ȢȡțȘȤȖȗ Ȑ ȚȜȒȡșȪ hare ȃȜȠȭ Țȩ Ȗ ȟȜȟȞȓȒȜȠȜȥȖȚȟȭ țȎ ȟȠȞȜȖȠȓșȪȟȠȐȓ ȟȠȓț Ȗȕ ȘȎȚȓțțȩȣ ȘȖȞȝȖȥȓȗ ȫȠȖ ȢȡțȘȤȖȖ ȝȞȖȑȜȒțȩ Ȓșȭ ȞȎȏȜȠȩ ȟ șȬȏȩȚȖ ȏșȜȘȎȚȖ țȎȝȞȖȚȓȞ ȕȓȚșȓȗ ȟȠȓȘșȜȚ ȖșȖ ȒȎȔȓ ȎȞ ȏȡȕȎȚȖ ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ ǻȎȥțȓȚ ȟ ȒȜȏȎȐșȓțȖȭ ȒȐȡȣ ȢȡțȘȤȖȗ Ȑ ȚȜȒȡșȪ hare ȜȒ țȎ ȏȡȒȓȠ ȝȜȒȟȥȖȠȩȐȎȠȪ ȘȜșȖȥȓȟȠȐȜ ȏșȜȘȜȐ Ȑ ȖțȐȓțȠȎȞȓ ȥȓ ȞȓȝȎȦȘȖ Ȏ ȒȞȡȑȎȭ ² ȐȜȕȐȜȒȖȠȪ ȟȠȓțȩ

196

DZǹǮǰǮ


ˀ̛̭͘ ϭϭ͘ϭ͘ ˋ̡̛̖̬̖̪̹̌ ̨̭̯̬̯́ ̭̯̖̦̼ ̛̚ ̨̡̨̣̍̏ ̛̖̥̣͕̚ ̡̥̖̦̌​̵̦̼ ̸̡̛̛̬̪̖̜͕ ̡̭̯̖̣̌ ̛ ̨̬̱̌̍̏̚

ĐĚĜČčĚĞĖČ ĘĚĐğėī 0):Ǻȩ ȒȜȏȎȐȖȚ ȠȞȖ țȜȐȩȓ ȢȡțȘȤȖȖ ȘȜȠȜȞȩȓ ȏȡȒȡȠ ȟȥȖȠȎȠȪ ȏșȜȘȖ Ȑ ȖțȐȓțȠȎȞȓ ȐȩȏȖȞȎȠȪ Ȗ ȞȎȕȚȓȧȎȠȪ ȏșȜȘȖ Ȗ ȐȜȕȐȜ ȒȖȠȪ ȟȠȓțȩ Ǻȩ ȏȡȒȓȚ ȖȟȝȜșȪȕȜȐȎȠȪ ȫȠȖ ȢȡțȘȤȖȖ Ȗ Ȑ ȒȞȡ ȑȖȣ ȝȞȜȑȞȎȚȚȎȣ Ȗȕ ȫȠȜȗ ȘțȖȑȖ ȝȜȫȠȜȚȡ ȝȜȚȓȟȠȖȚ Ȗȣ Ȑ ȚȜ ȒȡșȪ hare ȘȜȠȜȞȩȗ Țȩ ȟȜȕȒȎșȖ Ȑ ȑșȎȐȓ ǽȓȞȐȩȓ ȟȠȞȜȘ ȚȜȒȡșȭ hare ȜȟȠȎțȡȠȟȭ ȏȓȕ ȖȕȚȓțȓțȖȗ ǽȜȫȠȜȚȡ ȭ ȝȜȘȎȔȡ ȘȜȒ ȠȜșȪȘȜ Ȓșȭ ȟȠȞȜȘ ² ǰ ȜȏȜșȜȥȘȓ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ȐȩȝȜșțȖ ȘȜȚȎțȒȡ edit hare ǽȓȞȓȚȓȟȠȖ ȘȡȞȟȜȞ Ȑ țȖȔțȬȬ ȥȎȟȠȪ ȢȎȗșȎ Ȗ ȝȞȜȒȜș ȔȖ ȘȜȒ ȐȐȜȒȭ ȟșȓȒȡȬȧȓȓ hare ...ɩɪɨɩɭɫɤ... 36. 37. 38. -- countInventory ɜɨɡɜɪɚɳɚɟɬ ɤɨɥɢɱɟɫɬɜɨ 39. -- ɜɫɟɯ ɛɥɨɤɨɜ ɜ ɢɧɜɟɧɬɚɪɟ ɱɟɪɟɩɚɲɤɢ 40. function countInventory()

ǰǼǵǰdzDzdzǻǶdz ǿȀdzǻ

197


41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80.

198

DZǹǮǰǮ

local total = 0 for slot = 1, 16 do total = total + turtle.getItemCount(slot) end return total end

-- selectAndPlaceDown() ɜɵɛɢɪɚɟɬ ɧɟɩɭɫɬɭɸ ɹɱɟɣɤɭ -- ɢ ɩɨɦɟɳɚɟɬ ɛɥɨɤ ɢɡ ɧɟɟ ɩɨɞ ɱɟɪɟɩɚɲɤɭ function selectAndPlaceDown() for slot = 1, 16 do if turtle.getItemCount(slot) > 0 then turtle.select(slot) turtle.placeDown() return end end end

-- buildWall() ɫɨɡɞɚɟɬ ɫɬɟɧɭ, -- ɪɚɫɩɨɥɨɠɟɧɧɭɸ ɩɟɪɟɞ ɱɟɪɟɩɚɲɤɨɣ function buildWall(length, height) if hare.countInventory() < length * height then return false -- ɧɟɞɨɫɬɚɬɨɱɧɨ ɛɥɨɤɨɜ end turtle.up() local movingForward = true for currentHeight = 1, height do for currentLength = 1, length do selectAndPlaceDown() -- ɪɚɡɦɟɳɟɧɢɟ ɛɥɨɤɚ if movingForward and currentLength ~= length then turtle.forward() elseif not movingForward and currentLength ~= length then


81. turtle.back() 82. end 83. end 84. if currentHeight ~= height then 85. turtle.up() 86. end 87. movingForward = not movingForward 88. end 89. 90. -- ÉŤÉŹÉ&#x;ɧÉš É?ɨɏɨɜɚ ÉŠÉ&#x;ÉŞÉ&#x;ɯɨÉž ɤ ɎɢɧÉšɼɜɧɨɣ Ɋɨɥɢɰɢɢ 91. if movingForward then 92. -- ÉąÉ&#x;ÉŞÉ&#x;ÉŠÉšɲɤÉš ɨɤɨɼɨ ɧɚɹɚɼɜɧɨɣ Ɋɨɥɢɰɢɢ 93. for currentLength = 1, length do 94. turtle.forward() 95. end 96. else 97. -- ÉąÉ&#x;ÉŞÉ&#x;ÉŠÉšɲɤÉš ɨɤɨɼɨ ɎɢɧÉšɼɜɧɨɣ Ɋɨɥɢɰɢɢ 98. turtle.forward() 99. end 100. 101. -- ɍɊɭɍɤ ɧÉš ÉĄÉ&#x;Ɍɼɸ 102. for currentHeight = 1, height do 103. turtle.down() 104. end 105. 106. return true 107. end

ÇżČœČŁČžČŽČ›Č– Č?ČžČœČ‘ČžČŽČšČšČĄ Č– Č?ČŠČ—Č’Č– Č–Č• ČžČ“Č’ČŽČ˜Č ČœČžČŽ Č?ČœČ&#x;șȓ Č?Č?ČœČ’ČŽ Č?Č&#x;Č“ČŁ Č–Č›Č&#x;Č ČžČĄČ˜ȤČ–Č— ǜșȖ ȕȎȑȞȥȕȖ ČŤČ ČœČ ČšČœČ’ČĄČ™ČŞ Č?ČŠČ?ČœČ™Č›Č–Č? Č˜Čœ ȚȎțȒȥ pastebin get wwzvaKuW hare.

ěĚÄ?Ä?ÄŁÄ‘Äž Ä?ėĚĖĚĎ ÄŽ ĔęĎđęĞČĜđ Ä? ěĚĘĚļĨĪ Ä Ä&#x;ęĖĢĔĔ +7=6<16>-6<7:A ǽȞȓȔȒȓ ČĽČ“Čš ȼȓȞȓČ?ČŽČŚČ˜ČŽ Č›ČŽČĽČ›Č“Č Č&#x;Č ČžČœČ–Č ČŞ Č›ČĄČ”Č›Čœ Č?ČžČœČ?Č“ČžČ–Č ČŞ ČĽČ Čœ Č? Č“Č“ Č–Č›Č?Č“Č›Č ČŽČžČ“ Č’ČœČ&#x;Č ČŽČ ČœČĽČ›Čœ Č?Č™ČœČ˜ČœČ? Ȓșȭ Č&#x;Č ČžČœČ–Č Č“Č™ČŞČ&#x;Č Č?ČŽ ǽȞȓȒČ?ČœČ™ČœČ”Č–Čš ČĽČ Čœ Č˜ČŽČ”Č’ČŠČ— ČŤČ™Č“ČšČ“Č›Č Č? Č–Č›Č?Č“Č›Č ČŽČžČ“ ȼȓȞȓČ?ČŽČŚČ˜Č– Č­Č?Č™Č­Č“Č Č&#x;Č­ Č?Č™ČœČ˜ČœČš Č˜ČœČ ČœČžČŠČ— Č?ČĄČ’Č“Č Č–Č&#x;Č?ČœČ™ČŞČ•ČœČ?ČŽČ› Č?ȞȖ Č?ČœČ•Č?Č“Č’Č“ țȖȖ Č&#x;Č Č“Č›ČŠ Č‚ČĄČ›Č˜ȤČ–Č­ countInventory() Č?ČœČ•Č?ȞȎȧČŽČ“Č ČœČ?ȧČ“Č“ Č˜ČœČ™Č–ČĽČ“Č&#x;Č Č?Čœ Č?Č™ČœČ˜ČœČ? Č?Čœ Č?Č&#x;Č“ČŁ Č­ČĽČ“Č—Č˜ČŽČŁ Č–Č›Č?Č“Č›Č ČŽČžČ­ ȼȓȞȓČ?ČŽČŚČ˜Č–

ǰǟǾǰdzDzdzǝǜdz ǿȀdzǝ

199


hare 38. -- countInventory ɜɨɡɜɪɚɳɚɟɬ ɤɨɥɢɱɟɫɬɜɨ 39. -- ɜɫɟɯ ɛɥɨɤɨɜ ɜ ɢɧɜɟɧɬɚɪɟ ɱɟɪɟɩɚɲɤɢ 40. function countInventory() 41. local total = 0

Ǻȩ ȟȜȣȞȎțȖȚ Ȝȏȧȓȓ ȘȜșȖȥȓȟȠȐȜ ȏșȜȘȜȐ Ȑ ȝȓȞȓȚȓțțȜȗ ȘȜȠȜȞȜȗ ȖȕțȎȥȎșȪțȜ ȝȞȖȟȐȜȖșȖ ȕțȎȥȓțȖȓ 0 ǵȎȠȓȚ Țȩ ȜȏȨ ȭȐȖȚ ȝȓȞȓȚȓțțȡȬ slot ȘȜȠȜȞȎȭ ȏȡȒȓȠ ȜȠȟșȓȔȖȐȎȠȪ ȘȎȘȎȭ Ȗȕ ȭȥȓȓȘ ȖțȐȓțȠȎȞȭ ȝȞȜȐȓȞȭȓȠȟȭ ǵȎȠȓȚ ȤȖȘș for țȎȥȖțȎȬȧȖȗȟȭ Ȑ ȟȠȞȜȘȓ ȐȩȝȜșțȖȠ ȝȞȜȐȓȞȘȡ Ȑȟȓȣ ȭȥȓȓȘ ȖțȐȓțȠȎȞȭ ȖȟȝȜșȪȕȡȭ ȝȓȞȓȚȓțțȡȬ slot. hare 43. for slot = 1, 16 do 44. total = total + turtle.getItemCount(slot) 45. end 46. return total 47. end

Dzșȭ ȘȎȔȒȜȗ ȭȥȓȗȘȖ ȝȞȜȑȞȎȚȚȎ ȐȩȕȩȐȎȓȠ ȢȡțȘȤȖȬ turtle.getItemCount() Ȗ ȝȓȞȓȒȎȓȠ ȓȗ ȕțȎȥȓțȖȓ ȝȓȞȓȚȓț țȜȗ slot ǸȜșȖȥȓȟȠȐȜ ȏșȜȘȜȐ țȎȣȜȒȭȧȓȓȟȭ Ȑ ȘȎȔȒȜȗ ȭȥȓȗ Șȓ ȖțȐȓțȠȎȞȭ ȒȜȏȎȐșȭȓȠȟȭ Ș Ȝȏȧȓȗ ȟȡȚȚȓ ǽȜȟșȓ ȜȘȜț ȥȎțȖȭ ȤȖȘșȎ Ȑ ȟȠȞȜȘȓ ȢȡțȘȤȖȭ ȐȜȕȐȞȎȧȎȓȠ ȖȠȜȑȜȐȜȓ ȕțȎȥȓțȖȓ ȘȜȠȜȞȜȓ ȠȓȝȓȞȪ ȟȜȒȓȞȔȖȠ ȘȜșȖȥȓȟȠȐȜ Ȑȟȓȣ ȏșȜȘȜȐ Ȑ ȖțȐȓțȠȎȞȓ ȥȓȞȓȝȎȦȘȖ ǼȏȞȎȠȖ ȐțȖȚȎțȖȓ ȥȠȜ ȢȡțȘȤȖȭ tu r tle.g etIte mCount() ȝȜȒȟȥȖȠȩȐȎȓȠ Ȑȟȓ ȟȜȒȓȞȔȖȚȜȓ ȖțȐȓțȠȎȞȭ Ȏ țȓ ȠȜșȪȘȜ ȘȎȚȓțțȩȓ ȏșȜȘȖ

ĎħčĚĜ Ĕ ĜČēĘđĥđęĔđ čėĚĖČ ȅȠȜȏȩ țȎȥȎȠȪ ȟȠȞȜȖȠȪ țȎȚ țȡȔțȎ ȥȓȞȓȝȎȦȘȎ ȘȜȠȜȞȎȭ ȏȡȒȓȠ ȐȩȘșȎȒȩȐȎȠȪ ȏșȜȘȖ Ȗȕ ȟȐȜȓȑȜ ȖțȐȓțȠȎȞȭ Dzșȭ ȫȠȜ ȑȜ ȒȜȏȎȐȖȚ ȢȡțȘȤȖȬ ȟ ȖȚȓțȓȚ selectAndPlaceDown() Ȑ ȚȜȒȡșȪ hare ȋȠȎ ȢȡțȘȤȖȭ ȐȩȏȖȞȎȓȠ ȝȓȞȐȡȬ țȓȝȡȟȠȡȬ ȭȥȓȗȘȡ Ȏ ȕȎȠȓȚ ȡȟȠȎțȎȐșȖȐȎȓȠ ȏșȜȘ Ȗȕ ȫȠȜȗ ȭȥȓȗȘȖ ȝȜȒ ȥȓȞȓȝȎȦȘȜȗ

200

DZǹǮǰǮ


hare 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61.

-- selectAndPlaceDown ɜɵɛɢɪɚɟɬ ɧɟɩɭɫɬɭɸ ɹɱɟɣɤɭ -- ɢ ɩɨɦɟɳɚɟɬ ɛɥɨɤ ɢɡ ɧɟɟ ɩɨɞ ɱɟɪɟɩɚɲɤɭ function selectAndPlaceDown() for slot = 1, 16 do if turtle.getItemCount(slot) > 0 then turtle.select(slot) turtle.placeDown() return end end end

ǰ ȟȠȞȜȘȓ țȎȥȖțȎȓȠȟȭ ȤȖȘș for ȘȜȠȜȞȩȗ ȝȞȖȟȐȎȖȐȎ ȓȠ ȝȓȞȓȚȓțțȜȗ slot ȕțȎȥȓțȖȓ 1 Ȑ ȝȓȞȐȜȗ ȖȠȓȞȎȤȖȖ 2 ² ȐȜ ȐȠȜȞȜȗ Ȗ Ƞ Ȓ ȒȜ 16 ȀȎȘȖȚ ȜȏȞȎȕȜȚ ȢȡțȘȤȖȭ selectAndPlaceDown() ȟȘȎțȖȞȡȓȠ Ȑȟȓ ȭȥȓȗȘȖ ȖțȐȓțȠȎȞȭ ȥȓȞȓȝȎȦȘȖ ǰțȡȠȞȖ ȫȠȜȑȜ ȤȖȘșȎ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȝȞȜȐȓȞȭȓȠ ȟȘȜșȪȘȜ ȫșȓȚȓțȠȜȐ țȎȣȜȒȖȠȟȭ Ȑ ȭȥȓȗȘȓ ȐȩȕȩȐȎȭ ȢȡțȘȤȖȬ turtle. getItemCount(slot) dzȟșȖ Ȑ ȭȥȓȗȘȓ țȎȣȜȒȖȠȟȭ ȣȜȠȭ ȏȩ ȜȒȖț ȏșȜȘ ȢȡțȘȤȖȭ turtle.select(slot) Ȑ ȟȠȞȜȘȓ ȐȩȏȖȞȎȓȠ ȫȠȜȠ ȭȥȓȗȘȡ Ȏ ȢȡțȘȤȖȭ turtle.placeDown() Ȗȕ ȟȠȞȜȘȖ ȞȎȕȚȓȧȎȓȠ ȏșȜȘ ȝȜȒ ȥȓȞȓȝȎȦȘȜȗ DzȎșȓȓ ȘȜȒ Ȑ ȟȠȞȜȘȓ Ȑȩ ȕȩȐȎȓȠ ȢȡțȘȤȖȬ selectAndPlaceDown(). ȋȠȎ ȢȡțȘȤȖȭ selectAndPlaceDown() ȞȎȏȜȠȎȓȠ țȓȕȎȐȖ ȟȖȚȜ ȜȠ ȠȜȑȜ ȘȎȘȖȓ ȟȠȞȜȖȠȓșȪțȩȓ ȏșȜȘȖ țȎȣȜȒȭȠȟȭ Ȑ ȖțȐȓț ȠȎȞȓ ȥȓȞȓȝȎȦȘȖ Ȗ Ȑ ȘȎȘȖȣ ȭȥȓȗȘȎȣ ȜțȖ ȞȎȟȝȜșȜȔȓțȩ dzȟșȖ Ȑ ȖțȐȓțȠȎȞȓ ȥȓȞȓȝȎȦȘȖ țȖȥȓȑȜ țȓȠ ȤȖȘș ȕȎȐȓȞȦȎȓȠȟȭ Ȗ țȖȘȎȘȖȣ ȒȓȗȟȠȐȖȗ țȓ ȝȞȜȖȕȐȜȒȖȠȟȭ ȂȡțȘȤȖȖ buildWall() Ȗ buildRoom() ȏȡȒȡȠ ȐȩȕȩȐȎȠȪ selectAndPlaceDown() ȘȎȘ ȝȜȒȢȡțȘȤȖȬ

ĜČēĜČčĚĞĖČ ČėďĚĜĔĞĘČ ĎĚēĎđĐđęĔī ĝĞđę ȀȓȝȓȞȪ ȟȜȕȒȎȒȖȚ ȢȡțȘȤȖȬ buildWall() ȘȜȠȜȞȜȗ ȝȓȞȓȒȎ ȒȖȚ ȒȐȎ ȝȎȞȎȚȓȠȞȎ Ȓșȭ ȡȝȞȎȐșȓțȖȭ ȞȎȕȚȓȞȎȚȖ ȐȜȕȐȜȒȖȚȜȗ ȟȠȓțȩ ȜȒȖț ² ȫȠȜ ȒșȖțȎ ȟȠȓțȩ length ȒȞȡȑȜȗ ² ȓȓ ȐȩȟȜȠȎ (height ǽȞȓȔȒȓ ȥȓȚ ȝȖȟȎȠȪ ȘȜȒ ȢȡțȘȤȖȖ ȒȎȐȎȗ ȞȎȕȞȎȏȜ

ǰǼǵǰdzDzdzǻǶdz ǿȀdzǻ

201


ȠȎȓȚ ȓȓ ȎșȑȜȞȖȠȚ ȘȜȠȜȞȜȚȡ Ȗ ȏȡȒȓȠ ȟșȓȒȜȐȎȠȪ ȥȓȞȓȝȎȦȘȎ ȥȠȜȏȩ ȝȜȟȠȞȜȖȠȪ ȟȠȓțȡ ǸȜȑȒȎ ȥȓȞȓȝȎȦȘȎ țȎȥȖțȎȓȠ ȟȠȞȜȖȠȪ ȜțȎ ȟȠȜȖȠ țȎ ȕȓȚșȓ ȕȎȠȓȚ ȓȗ țȎȒȜ ȝȜȒțȭȠȪȟȭ ȐȐȓȞȣ Ȗ ȝȜșȜȔȖȠȪ ȏșȜȘ ȝȜȒ ȟȓȏȭ DzȎșȓȓ ȓȗ țȎȒȜ ȒȐȖȑȎȠȪȟȭ ȐȝȓȞȓȒ Ȗ ȝȞȜȒȜșȔȎȠȪ ȝȜȒȘșȎȒȩ ȐȎȠȪ ȝȜȒ ȟȓȏȭ ȏșȜȘȖ ȒȜ Ƞȓȣ ȝȜȞ ȝȜȘȎ țȓ ȝȜșȡȥȖȠȟȭ ȤȓȝȜȥȘȎ ȏșȜȘȜȐ ȕȎȒȎțțȜȗ ȒșȖțȩ length ǸȜȑȒȎ ȤȓȝȜȥȘȎ ȑȜȠȜȐȎ ȥȓ ȞȓȝȎȦȘȎ ȝȜȐȠȜȞȖȠ ȫȠȜȠ ȝȞȜȤȓȟȟ țȜ ȡȔȓ Ȑ ȝȞȜȠȖȐȜȝȜșȜȔțȜȚ țȎȝȞȎȐșȓțȖȖ ǼțȎ ȏȡȒȓȠ ȝȞȜȒȜșȔȎȠȪ ȒȐȖȔȓțȖȓ ȐȝȓȞȓȒ Ȗ țȎȕȎȒ Ȑȩ ȟȠȞȎȖȐȎȭ ȤȓȝȜȥȘȖ ȏșȜȘȜȐ ȝȜȘȎ țȓ ȒȜȟȠȖȑțȓȠ ȡȘȎȕȎțțȜȗ ȐȩȟȜȠȩ height ǽȞȓȒȝȜșȜȔȖȚ ȥȠȜ ȕțȎȥȓțȖȓ ȝȓȞȓȚȓțțȜȗ length ȞȎȐțȜ 4 Ȏ ȝȓȞȓȚȓțțȜȗ height ² 2 ǻȎ ȞȖȟ ȝȜ ȘȎȕȎțȎ ȏȡȒȡȧȎȭ ȟȠȓțȎ ȞȎȕȚȓȞȜȚ ð ȏșȜȘȎ Ȗ ȠȜ ȘȎȘ ȥȓȞȓ ȝȎȦȘȎ țȎȥȖțȎȓȠ ȓȓ ȟȠȞȜȖȠȪ

Конец

Начало

ˀ̛̭͘ ϭϭ͘Ϯ͘ ʦ̛̔ ̨̡̭̱̍ ̸̡̛̖̬̖̪̹̌ ̛ ̱̱̺̖̜̍̔ ̭̯̖̦̼ ̨̬̥̖̬̥̌̚ ϰ п Ϯ ̨̡̣̍̌

Dzșȭ țȎȥȎșȎ ȥȓȞȓȝȎȦȘȎ ȒȜșȔțȎ ȝȜȒțȭȠȪȟȭ Ȗ ȝȜȚȓȟȠȖȠȪ ȏșȜȘ ȝȜȒ ȟȓȏȭ ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ

Конец

Начало

ˀ̛̭͘ ϭϭ͘ϯ͘ ˋ̡̖̬̖̪̹̌̌ ̨̛̪̦̥̖̯̭̔̌́ ̛ ̨̪̥̖̺̖̯̌ ̨̡̣̍ ̨̪̔ ̭̖̍́

202

DZǹǮǰǮ


ǽȜȟȘȜșȪȘȡ ȥȓȞȓȝȎȦȘȎ ȟȠȞȜȖȠ ȟȠȓțȡ ȒșȖțȜȗ Ȑ ȥȓȠȩȞȓ ȏșȜȘȎ ȥȓȞȓȝȎȦȘȎ ȝȓȞȓȚȓȧȎȓȠȟȭ ȐȝȓȞȓȒ țȎ ȠȞȖ ȝȞȜșȓȠȎ ȘȎȔȒȩȗ ȞȎȕ ȝȜȚȓȧȎȭ ȝȜȒ ȟȓȏȭ ȏșȜȘ dzȟșȖ ȏȩ ȥȓȞȓȝȎȦȘȎ ȟȠȞȜȖșȎ ȟȠȓțȡ ȒșȖțȜȗ Ȑ ȦȓȟȠȪ ȏșȜȘȜȐ ȜțȎ ȝȞȜȒȐȖȑȎșȎȟȪ ȏȩ ȐȝȓȞȓȒ țȎ ȝȭȠȪ ȝȞȜșȓȠȜȐ ǼȏȞȎȠȖ ȐțȖȚȎțȖȓ țȎ ȦȎȏșȜț ȘȜșȖȥȓȟȠȐȜ ȝȓȞȓȚȓȧȓțȖȗ ȥȓȞȓȝȎȦȘȖ ȞȎȐțȜ length - 1. ȅȠȜȏȩ ȡșȜȔȖȠȪ length ȏșȜȘȜȐ ȥȓȞȓȝȎȦȘȎ ȒȜșȔțȎ ȝȓȞȓȚȓ ȟȠȖȠȪȟȭ țȎ ȜȒȖț ȦȎȑ Ȓșȭ ȡȘșȎȒȘȖ ȘȎȔȒȜȑȜ ȏșȜȘȎ ȘȞȜȚȓ ȝȜ ȟșȓȒțȓȑȜ Ȑ ȞȓȕȡșȪȠȎȠȓ ȥȓȑȜ ȓȗ țȎȒȜ ȟȜȐȓȞȦȖȠȪ length - 1 ȝȓȞȓȚȓȧȓțȖȗ ȀȎȘȖȚ ȜȏȞȎȕȜȚ ȢȡțȘȤȖȭ buildWall() ȝȜ ȕȐȜșȭȓȠ ȟȠȞȜȖȠȪ ȟȠȓțȩ șȬȏȜȗ ȒșȖțȩ ǸȜȑȒȎ ȥȓȞȓȝȎȦȘȎ ȝȜȟȠȞȜȖȠ ȝȓȞȐȡȬ ȤȓȝȜȥȘȡ ȏșȜȘȜȐ Ȓșȭ țȎȦȓȗ ȟȠȓțȩ ȞȎȕȚȓȞȜȚ ð ȏșȜȘȎ ȞȓȕȡșȪȠȎȠ ȏȡȒȓȠ Ȑȩȑșȭ ȒȓȠȪ ȠȎȘ ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ

Конец

Начало

ˀ̛̭͘ ϭϭ͘ϰ͘ ˋ̡̖̬̖̪̹̌̌ ̛̙̖̯̭̔̏́ ̪̖̬̖͕̏̔ ̬̥̖̺̌̌́̚ ̨̡̛̣̍ ̨̪̔ ̨̨̭̜̍

ȅȓȞȓȝȎȦȘȎ ȝȜȐȠȜȞȭȓȠ ȫȠȜȠ ȝȞȜȤȓȟȟ ȕȎ ȖȟȘșȬȥȓțȖȓȚ ȠȜȑȜ ȥȠȜ țȎ ȫȠȜȠ ȞȎȕ ȜțȎ ȒȐȖȔȓȠȟȭ țȎȕȎȒ ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ

Конец

Начало

ˀ̛̭͘ ϭϭ͘ϱ͘ ˋ̡̖̬̖̪̹̌̌ ̛̙̖̯̭̔̏́ ̏​̵̖̬͕̏ ̌ ̯̖̥̌̚ ̦͕̌̌̔̚ ̬̥̖̺̌̌́̚ ̨̡̛̣̍ ̨̪̔ ̨̨̭̜̍

ǰǼǵǰdzDzdzǻǶdz ǿȀdzǻ

203


dzȟșȖ ȏȩ ȥȓȞȓȝȎȦȘȓ ȏȩșȜ ȕȎȒȎțȜ ȏȜșȪȦȓȓ ȘȜșȖȥȓȟȠȐȜ ȞȭȒȜȐ ȜțȎ ȝȜȐȠȜȞȖșȎ ȏȩ ȐȓȟȪ ȝȞȜȤȓȟȟ ȟȜȜȠȐȓȠȟȠȐȡȬȧȓȓ ȘȜ șȖȥȓȟȠȐȜ ȞȎȕ ȒȐȖȑȎȭȟȪ ȐȝȓȞȓȒ Ȗ țȎȕȎȒ ǻȜ ȝȜȟȘȜșȪȘȡ ȥȓȞȓ ȝȎȦȘȎ ȝȜȟȠȞȜȖșȎ ȕȎȒȎțțȜȓ ȘȜșȖȥȓȟȠȐȜ ȞȭȒȜȐ ȡȘȎȕȎțțȜȓ Ȑ țȎȦȓȚ ȝȞȖȚȓȞȓ ȜțȎ ȜȟȠȎțȎȐșȖȐȎȓȠȟȭ ǰ ȑșȎȐȓ Țȩ ȐȜȕ ȐȓȒȓȚ ȥȓȠȩȞȓ ȟȠȓțȩ ȥȠȜȏȩ ȝȜȟȠȞȜȖȠȪ ȘȜȚțȎȠȡ ȝȜȫȠȜȚȡ Ȏș ȑȜȞȖȠȚ ȒȜșȔȓț ȐȟȓȑȒȎ ȐȜȕȐȞȎȧȎȠȪ ȥȓȞȓȝȎȦȘȡ țȎ ȕȓȚșȬ țȎ ȝȞȜȠȖȐȜȝȜșȜȔțȜȚ ȘȜțȤȓ ȜȠ țȎȥȎșȎ ȟȠȞȜȖȠȓșȪȟȠȐȎ ȀȎȘȖȚ ȜȏȞȎȕȜȚ ȥȓȞȓȝȎȦȘȎ ȟȚȜȔȓȠ țȎȥȎȠȪ ȝȜȟȠȞȜȗȘȡ ȟșȓȒȡȬȧȓȗ ȟȠȓțȩ ǿȡȧȓȟȠȐȡȓȠ ȒȐȎ ȐȎȞȖȎțȠȎ ȝȓȞȓȚȓȧȓțȖȭ ȥȓȞȓȝȎȦȘȖ Ȑ ȘȜțȓȤ ȟȠȓțȩ Ȑ ȕȎȐȖȟȖȚȜȟȠȖ ȜȠ ȠȜȑȜ Ȑ ȘȎȘȜȚ țȎȝȞȎȐșȓ țȖȖ ȜțȎ ȒȐȖȑȎșȎȟȪ Ȑ ȝȜȟșȓȒțȖȗ ȞȎȕ dzȟșȖ ȥȓȞȓȝȎȦȘȎ Ȑ ȝȜ ȟșȓȒțȖȗ ȞȎȕ ȒȐȖȑȎșȎȟȪ ȐȝȓȞȓȒ ȓȓ țȎȒȜ ȝȓȞȓȚȓȟȠȖȠȪ ȐțȖȕ height ȞȎȕ dzȟșȖ ȥȓȞȓȝȎȦȘȎ Ȑ ȝȜȟșȓȒțȖȗ ȞȎȕ ȒȐȖȑȎșȎȟȪ Ȑ ȜȏȞȎȠțȜȚ țȎȝȞȎȐșȓțȖȖ ȓȓ țȡȔțȜ ȝȓȞȓȚȓȟȠȖȠȪ ȐȝȓȞȓȒ length ȞȎȕ Ȏ ȕȎȠȓȚ ȜȝȡȟȠȖȠȪ height ȞȎȕ ǼȏȎ ȐȎȞȖȎțȠȎ ȝȜ ȚȓȟȠȭȠ ȥȓȞȓȝȎȦȘȡ țȎ ȕȓȚșȓ Ȑ ȘȜțȤȓ ȟȠȓțȩ ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ

Начало

ˀ̛̭͘ ϭϭ͘ϲ͘ ˋ̡̖̬̖̪̹̌̌ ̸̡̛̦̖̯̌̌̏̌̚ ̨̨̛̭̯̬̯̖̣̭̯̽̏ ̦̌ ̖̥̣̖̚ ̏ ̣̦̖̥̔̌̽ ̶̡̨̦̖ ̭̯̖̦̼

ȂȡțȘȤȖȭ buildWall() ȝȜȕȐȜșȭȓȠ ȟȠȞȜȖȠȪ ȟȠȓțȩ șȬȏȜȗ ȒșȖțȩ Ȗ ȐȩȟȜȠȩ ǻȎȝȞȖȚȓȞ ȓȟșȖ ȡ Ƞȓȏȭ ȒȜȟȠȎȠȜȥțȜ ȏșȜ ȘȜȐ Ƞȩ ȚȜȔȓȦȪ ȟȒȓșȎȠȪ ȐȩȟȜȘȡȬ ȟȠȓțȡ ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ Dzșȭ ȥȓȞȓȝȎȦȘȖ ȫȠȜ țȓ ȖȚȓȓȠ ȕțȎȥȓțȖȭ

204

DZǹǮǰǮ


ˀ̛̭͘ ϭϭ͘ϳ͘ ʦ̨̡̼̭̌́ ̭̯̖̦̌ ̨̬̥̖̬̥̌̚ ϰ п ϭϮ ̨̡̨̣̍̏ ̨̨̪̭̯̬̖̦̌ ̨̪ ̨̯̥̱ ̙̖ ̨̛̣̬̯̥̱͕̌̐ ̸̨̯ ̛ ̭̯̖̦̌ ̨̬̥̖̬̥̌̚ ϰ п Ϯ ̨̡̣̍̌

DzȎȐȎȗ ȞȎȟȟȚȜȠȞȖȚ ȢȡțȘȤȖȬ ȘȜȠȜȞȎȭ ȞȓȎșȖȕȡȓȠ ȫȠȜȠ ȎșȑȜȞȖȠȚ

ĠğęĖĢĔī *=14,?)44 ȂȡțȘȤȖȭ buildWall() țȎȥȖțȎȓȠȟȭ ȟ ȝȜȒȟȥȓȠȎ ȘȜșȖȥȓȟȠȐȎ ȝȞȓȒȚȓȠȜȐ Ȑ ȖțȐȓțȠȎȞȓ ȥȓȞȓȝȎȦȘȖ ǽȞȓȒȝȜșȎȑȎȓȠȟȭ ȥȠȜ Ȑȟȓ ȫȠȖ ȫșȓȚȓțȠȩ ² ȫȠȜ ȏșȜȘȖ ȘȜȠȜȞȩȓ ȏȡȒȡȠ ȖȟȝȜșȪȕȜȐȎȠȪȟȭ Ȓșȭ ȟȠȞȜȖȠȓșȪȟȠȐȎ ȟȠȓțȩ ǸȜșȖȥȓȟȠȐȜ ȏșȜȘȜȐ țȓȜȏȣȜȒȖȚȜȓ Ȓșȭ ȝȜȟȠȞȜȓțȖȭ ȟȠȓțȩ ȒșȖțȜȗ length Ȗ ȐȩȟȜȠȜȗ height ȟȜȟȠȎȐșȭȓȠ length * height ȦȠȡȘ ȥȠȜ Ȗ ȝȞȜȐȓȞȭȓȠȟȭ Ȑ ȟȠȞȜȘȓ hare 64. -- buildWall ɫɨɡɞɚɟɬ ɫɬɟɧɭ 65. -- ɪɚɫɩɨɥɨɠɟɧɧɭɸ ɩɟɪɟɞ ɱɟɪɟɩɚɲɤɨɣ

ǰǼǵǰdzDzdzǻǶdz ǿȀdzǻ

205


66. function buildWall(length, height) 67. if hare.countInventory() < length * height then 68. return false -- ɧɟɞɨɫɬɚɬɨɱɧɨ ɛɥɨɤɨɜ 69. end

dzȟșȖ ȡ ȥȓȞȓȝȎȦȘȖ țȓȒȜȟȠȎȠȜȥțȜ ȏșȜȘȜȐ Ȓșȭ ȝȜȟȠȞȜȓțȖȭ ȟȠȓțȩ ȢȡțȘȤȖȭ Ȑ ȟȠȞȜȘȓ ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ false Ȏ ȕȎȠȓȚ ȕȎȐȓȞȦȎȓȠ ȐȩȝȜșțȓțȖȓ ȢȡțȘȤȖȖ dzȟșȖ ȏșȜȘȜȐ ȒȜȟȠȎȠȜȥțȜ ȖȟȝȜșțȓțȖȓ ȝȓȞȓȣȜȒȖȠ Ș ȟȠȞȜ Șȓ Ȗ ȥȓȞȓȝȎȦȘȎ ȝȓȞȓȚȓȧȎȓȠȟȭ ȐȐȓȞȣ țȎ ȜȒȖț ȏșȜȘ ȥȠȜ ȏȩ țȎȥȎȠȪ ȟȠȞȜȖȠȓșȪȟȠȐȜ ȤȓȝȜȥȘȖ ȏșȜȘȜȐ ǵȎȠȓȚ ȝȓȞȓȚȓț țȜȗ movingForward ȝȞȖȟȐȎȖȐȎȓȠȟȭ ȕțȎȥȓțȖȓ true. hare 71. 72. 73.

turtle.up() local movingForward = true

ȋȠȎ ȝȓȞȓȚȓțțȎȭ ȜȠȟșȓȔȖȐȎȓȠ țȎȝȞȎȐșȓțȖȓ ȒȐȖȔȓțȖȭ ȥȓȞȓȝȎȦȘȖ ǽȞȖ ȟȠȞȜȖȠȓșȪȟȠȐȓ ȝȓȞȐȜȑȜ ȞȭȒȎ ȥȓȞȓȝȎȦȘȎ ȒȐȖȔȓȠȟȭ ȐȝȓȞȓȒ ȝȜȫȠȜȚȡ ȕțȎȥȓțȖȓ ȝȓȞȓȚȓțțȜȗ movingForward ȡȟȠȎțȎȐșȖȐȎȓȠȟȭ ȞȎȐțȩȚ true ǻȜ Ȓșȭ ȝȜȟȠȞȜȗ ȘȖ ȟșȓȒȡȬȧȓȑȜ ȞȭȒȎ ȥȓȞȓȝȎȦȘȓ țȡȔțȜ ȒȐȖȑȎȠȪȟȭ țȎȕȎȒ ȝȜȫȠȜȚȡ ȕțȎȥȓțȖȓ ȝȓȞȓȚȓțțȜȗ ȖȕȚȓțȭȓȠȟȭ țȎ false ǵțȎ ȥȓțȖȓ ȝȓȞȓȚȓțțȜȗ ȏȡȒȓȠ ȥȓȞȓȒȜȐȎȠȪȟȭ Ȑ ȘȎȔȒȜȗ ȤȓȝȜȥȘȓ ȏșȜȘȜȐ ȝȜȟȘȜșȪȘȡ ȥȓȞȓȝȎȦȘȎ ȏȡȒȓȠ ȚȓțȭȠȪ țȎȝȞȎȐșȓțȖȓ ȒȐȖȔȓțȖȭ ȅȠȜȏȩ ȟșȓȒȖȠȪ ȕȎ ȐȩȟȜȠȜȗ ȟȠȓțȩ ȝȜȟȠȞȜȓțțȜȗ ȥȓȞȓȝȎȦ ȘȜȗ ȝȞȜȑȞȎȚȚȓ țȡȔțȎ ȓȧȓ ȜȒțȎ ȝȓȞȓȚȓțțȎȭ ȘȜȠȜȞȡȬ Țȩ țȎȕȜȐȓȚ currentHeight ǰ ȟȠȞȜȘȓ ȕȎȝȡȟȘȎȓȠȟȭ ȤȖȘș for Ȑ ȘȜȠȜȞȜȚ ȝȓȞȓȚȓțțȎȭ currentHeight ȐȩȝȜșțȭȓȠ ȖȠȓȞȎ ȤȖȖ ȜȠ 1 ȒȜ height ǻȎ ȝȓȞȐȜȗ ȖȠȓȞȎȤȖȖ ȝȓȞȓȚȓțțȜȗ currentHeight ȝȞȖȟȐȎȖȐȎȓȠȟȭ ȕțȎȥȓțȖȓ 1 țȎ ȟșȓȒȡȬȧȓȗ ² ȕțȎȥȓțȖȓ 2 Ȗ ȠȎȘ ȒȎșȓȓ ȒȜ ȝȜȟșȓȒțȓȗ ȖȠȓȞȎȤȖȖ ȑȒȓ ȝȓȞȓ ȚȓțțȜȗ currentHeight ȝȞȖȟȐȎȖȐȎȓȠȟȭ ȕțȎȥȓțȖȓ ȝȓȞȓȚȓț țȜȗ height. hare 75. 76.

206

DZǹǮǰǮ

for currentHeight = 1, height do for currentLength = 1, length do


77. 78. 79. 80. 81. 82. 83.

selectAndPlaceDown() -- ɪɚɡɦɟɳɟɧɢɟ ɛɥɨɤɚ if movingForward and currentLength ~= length then turtle.forward() elseif not movingForward and currentLength ~= length then turtle.back() end end

ǻȜ ȝȜ ȚȓȞȓ ȡȐȓșȖȥȓțȖȭ ȐȩȟȜȠȩ ȟȠȓțȩ ȠȎȘȔȓ țȓȜȏȣȜȒȖȚȜ ȜȠȟșȓȔȖȐȎȠȪ ȒșȖțȡ ȘȎȔȒȜȑȜ ȞȭȒȎ țȎ ȘȎȔȒȜȚ ȦȎȑȓ ȐȩȟȜ Ƞȩ Dzșȭ ȫȠȜȑȜ Țȩ ȏȡȒȓȚ ȖȟȝȜșȪȕȜȐȎȠȪ ȒȞȡȑȡȬ ȝȓȞȓȚȓțțȡȬ țȎȕȩȐȎȓȚȡȬ currentLength ȘȜȠȜȞȎȭ ȜȏȨȭȐșȭȓȠȟȭ ȐȜ ȐșȜ ȔȓțțȜȚ ȤȖȘșȓ for Ȑ ȟȠȞȜȘȓ ȋȠȜȠ ȤȖȘș ȐșȜȔȓț Ȑ ȤȖȘș for țȎȥȎȐȦȖȗȟȭ Ȑ ȟȠȞȜȘȓ ǻȎ ȘȎȔȒȜȗ ȖȠȓȞȎȤȖȖ ȜȟțȜȐțȜ ȑȜ ȤȖȘșȎ for ȝȞȜȑȞȎȚȚȎ ȕȎȝȡȟȘȎȓȠ Ȗ ȐșȜȔȓțțȩȗ ȤȖȘș for. ǶȠȓȞȎȤȖȖ ȫȠȜȑȜ ȐșȜȔȓțțȜȑȜ ȤȖȘșȎ ȝȞȜȖȕȐȜȒȭȠȟȭ ȟȜȑșȎȟțȜ ȕțȎȥȓțȖȬ ȝȓȞȓȚȓțțȜȗ currentLength ȜȠ 1 ȒȜ length ǻȎ ȞȖȟ ȝȜȘȎȕȎțȜ ȘȎȘȖȓ ȕțȎȥȓțȖȭ ȝȓȞȓȚȓțțȩȓ currentHeight Ȗ currentLength ȝȞȖțȖȚȎȬȠ Ȑ ȘȎȔȒȜȗ ȠȜȥȘȓ ȝȜ ȟȠȞȜȓțȖȭ ȟȠȓțȩ ȞȎȕȚȓȞȜȚ ð ȏșȜȘȎ ǸȞȎȟțȎȭ ȟȠȞȓșȘȎ ȡȘȎ ȕȩȐȎȓȠ țȎȝȞȎȐșȓțȖȓ ȒȐȖȔȓțȖȭ ȥȓȞȓȝȎȦȘȖ currentHeight

Start

currentLength

4

1

2

3

4

3

4

3

2

1

2

1

2

3

4

1

4

3

2

1

Start

ˀ̛̭͘ ϭϭ͘ϴ͘ ʯ̸̛̦̖̦̌́ ̪̖̬̖̥̖̦​̵̦̼ currentHeight ̛ currentLength ̏ ̡̨̙̜̌̔ ̶̨̛̛̪̚​̛ ̨̨̛̪̭̯̬̖̦́ ̭̯̖̦̼ ̨̬̥̖̬̥̌̚ ϰ п ϰ ̨̡̣̍̌

ǰțȡȠȞȖ ȤȖȘșȎ Ȑ ȟȠȞȜȘȓ ȐȩȕȩȐȎȓȠȟȭ ȢȡțȘȤȖȭ selectAndPlaceDown() ȥȠȜȏȩ ȡȟȠȎțȜȐȖȠȪ ȏșȜȘ ȝȜȒ ȥȓȞȓȝȎȦȘȜȗ ǸȜȒ Ȑ ȟȠȞȜȘȎȣ ² ȝȓȞȓȚȓȧȎȓȠ ȥȓȞȓȝȎȦȘȡ ȐȝȓȞȓȒ ȖșȖ țȎ

ǰǼǵǰdzDzdzǻǶdz ǿȀdzǻ

207


ȕȎȒ Ȑ ȕȎȐȖȟȖȚȜȟȠȖ ȜȠ ȕțȎȥȓțȖȭ ȝȓȞȓȚȓțțȜȗ movingForward Ȗ ȠȓȘȡȧȓȑȜ ȝȜșȜȔȓțȖȭ ȥȓȞȓȝȎȦȘȖ ǽȓȞȓȚȓțțȎȭ currentLength ȝȜȒȟȥȖȠȩȐȎȓȠ ȟȘȜșȪȘȜ ȏșȜȘȜȐ ȝȜ Ȑȟȓȗ ȒșȖțȓ ȞȭȒȎ ȡȔȓ ȝȜșȜȔȓțȜ ǸȜȑȒȎ ȓȓ ȕțȎȥȓțȖȓ ȒȜȟȠȖȑȎȓȠ length ȥȓȞȓ ȝȎȦȘȎ ȜȟȠȎțȎȐșȖȐȎȓȠȟȭ ȥȠȜȏȩ țȓ ȐȩȗȠȖ ȕȎ ȘȞȎȗ ȟȠȓțȩ ǻȎȝȜȚțȬ ȥȠȜ ȥȓȞȓȝȎȦȘȓ țȓ țȡȔțȜ ȒȐȖȑȎȠȪȟȭ țȎ ȝȜ ȟșȓȒțȓȗ ȖȠȓȞȎȤȖȖ ǽȜȟȘȜșȪȘȡ ȤȖȘș for țȎȥȎȐȦȖȗȟȭ Ȑ ȟȠȞȜȘȓ ȝȞȜȖȕȐȜȒȖȠ ȖȠȓȞȎȤȖȖ ȜȠ 1 ȒȜ length țȎ ȝȜȟșȓȒ țȓȚ ȦȎȑȓ ȝȓȞȓȚȓțțȎȭ currentLength ȝȞȖțȖȚȎȓȠ ȕțȎȥȓțȖȓ length ǽȜȫȠȜȚȡ ȡȟșȜȐȖȭ Ȑ ȟȠȞȜȘȎȣ Ȗ ȐȩȝȜșțȭȬȠȟȭ ȠȜșȪȘȜ Ȑ ȠȜȚ ȟșȡȥȎȓ ȓȟșȖ ȕțȎȥȓțȖȓ ȝȓȞȓȚȓțțȜȗ currentLength țȓ ȞȎȐțȜ ~= length. ǶțȟȠȞȡȘȤȖȭ end Ȑ ȟȠȞȜȘȓ ȕȎȐȓȞȦȎȓȠ ȤȖȘș for țȎȥȎȐ ȦȖȗȟȭ Ȑ ȟȠȞȜȘȓ ȋȠȜȠ ȤȖȘș ȕȎȐȓȞȦȎȓȠȟȭ ȘȜȑȒȎ ȝȜșțȜ ȟȠȪȬ ȕȎȘȎțȥȖȐȎȓȠȟȭ ȟȠȞȜȖȠȓșȪȟȠȐȜ ȞȭȒȎ DzȎșȓȓ ȓȟșȖ ȥȓȞȓȝȎȦȘȎ țȓ țȎȣȜȒȖȠȟȭ țȎ ȝȜȟșȓȒțȓȗ ȖȠȓ ȞȎȤȖȖ ȤȖȘșȎ for țȎȥȎȐȦȓȑȜȟȭ Ȑ ȟȠȞȜȘȓ ȓȗ țȎȒȜ ȝȓȞȓ ȚȓȟȠȖȠȪȟȭ țȎ ȜȒțȡ ȝȜȕȖȤȖȬ ȐȐȓȞȣ ǰȩȕȜȐ ȢȡțȘȤȖȖ turtle. up() Ȑ ȟȠȞȜȘȓ ȐȩȝȜșțȖȠ ȫȠȜ ȝȓȞȓȚȓȧȓțȖȓ ȠȜșȪȘȜ Ȑ ȠȜȚ ȟșȡȥȎȓ ȓȟșȖ ȕțȎȥȓțȖȓ ȝȓȞȓȚȓțțȜȗ currentHeight țȓ ȞȎȐ țȜ height ȠȜ ȓȟȠȪ ȓȟșȖ ȤȖȘș for țȓ ȟȜȐȓȞȦȎȓȠ ȝȜȟșȓȒțȬȬ ȖȠȓȞȎȤȖȬ hare 84. 85. 86. 87. 88.

if currentHeight ~= height then turtle.up() end movingForward = not movingForward end

ǸȜȒ Ȑ ȟȠȞȜȘȓ ȝȓȞȓȘșȬȥȎȓȠ ² ȝȞȖȟȐȎȖȐȎȓȠ ȝȞȜȠȖȐȜȝȜ șȜȔțȜȓ ȕțȎȥȓțȖȓ ² șȜȑȖȥȓȟȘȜȗ ȝȓȞȓȚȓțțȜȗ movingForward. dzȟșȖ ȝȓȞȓȚȓțțȜȗ ȝȞȖȟȐȜȓțȜ ȕțȎȥȓțȖȓ true ȘȜȒ ȝȞȖȟȐȎȖȐȎ ȓȠ ȓȗ ȕțȎȥȓțȖȓ false Ȗ țȎȜȏȜȞȜȠ dzȟșȖ ȥȓȞȓȝȎȦȘȎ ȒȐȖȑȎ șȎȟȪ ȐȝȓȞȓȒ ȥȠȜȏȩ ȝȜȟȠȞȜȖȠȪ ȟȎȚȩȗ ȐȩȟȜȘȖȗ ȞȭȒ ȏșȜȘȜȐ ȠȜ ȝȓȞȓȘșȬȥȎȠȓșȪ ȝȞȖȟȐȜȖȠ ȝȓȞȓȚȓțțȜȗ movingForward ȕțȎȥȓțȖȓ false dzȟșȖ ȥȓȞȓȝȎȦȘȎ ȒȐȖȑȎșȎȟȪ țȎȕȎȒ ȥȠȜȏȩ ȝȜȟȠȞȜȖȠȪ ȟȎȚȩȗ ȐȩȟȜȘȖȗ ȞȭȒ ȏșȜȘȜȐ ȠȜ ȝȓȞȓȘșȬȥȎȠȓșȪ Ȑ ȟȠȞȜȘȓ ȝȞȖȟȐȜȖȠ ȝȓȞȓȚȓțțȜȗ moveForward ȕțȎȥȓțȖȓ

208

DZǹǮǰǮ


true ǸȜȒ Ȑ ȟȠȞȜȘȓ ȖȕȚȓțȭȓȠ șȜȑȖȥȓȟȘȜȓ ȕțȎȥȓțȖȓ ȝȓȞȓ ȚȓțțȜȗ movingForward țȎ ȝȞȜȠȖȐȜȝȜșȜȔțȜȓ ȟ ȝȜȚȜȧȪȬ ȝȞȜȟȠȜȗ ȘȜȚȎțȒȩ not movingForward. ǶțȟȠȞȡȘȤȖȭ end Ȑ ȟȠȞȜȘȓ ȕȎȐȓȞȦȎȓȠ ȤȖȘș for ȘȜ ȠȜȞȩȗ țȎȥȎșȟȭ Ȑ ȟȠȞȜȘȓ ȋȠȜȠ ȤȖȘș ȕȎȐȓȞȦȎȓȠȟȭ ȓȟșȖ ȝȜȟȠȞȜȗȘȎ ȟȠȓțȩ ȕȎȐȓȞȦȓțȎ ȀȓȝȓȞȪ ȥȓȞȓȝȎȦȘȓ țȡȔțȜ ȐȓȞ țȡȠȪȟȭ țȎ ȕȓȚșȬ Dzșȭ ȫȠȜȑȜ ȓȗ țȡȔțȜ ȝȜȝȎȟȠȪ țȎ ȟȠȜȞȜțȡ ȝȞȜȠȖȐȜȝȜșȜȔțȡȬ țȎȥȎșȡ ȟȠȞȜȖȠȓșȪȟȠȐȎ Ȏ ȕȎȠȓȚ ȟȝȡȟȠȖȠȪ ȟȭ țȎ ȕȓȚșȬ ǻȎȝȜȚțȬ ȥȠȜ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȝȓȞȓȘșȬȥȎȓȠ ȕțȎȥȓțȖȓ ȝȓȞȓȚȓțțȜȗ movingForward ȥȠȜȏȩ ȖȕȚȓțȖȠȪ țȎȝȞȎȐșȓțȖȓ ȒȐȖȔȓțȖȭ ȥȓȞȓȝȎȦȘȖ ȀȎȘ ȓȟșȖ ȝȓȞȓȚȓțțȜȗ movingForward ȝȞȖȟȐȜȓțȜ ȕțȎȥȓțȖȓ true ȥȓȞȓȝȎȦȘȎ ȏșȖȔȓ ȐȟȓȑȜ Ș ȖȟȣȜȒțȜȗ ȠȜȥȘȓ ǽȜȫȠȜȚȡ ȥȠȜȏȩ ȟȜȗȠȖ ȟȜ ȟȠȓțȩ ȥȓȞȓȝȎȦȘȓ țȓȜȏȣȜȒȖȚȜ ȝȓȞȓȚȓȟȠȖȠȪȟȭ ȐȝȓȞȓȒ length ȞȎȕ ȥȠȜ ȜțȎ Ȗ Ȓȓ șȎȓȠ Ȑ ȟȠȞȜȘȎȣ Ȗ hare 90. 91. 92. 93. 94. 95.

-- ɫɬɟɧɚ ɝɨɬɨɜɚ ɩɟɪɟɯɨɞ ɤ ɮɢɧɚɥɶɧɨɣ ɩɨɡɢɰɢɢ if movingForward then -- ɱɟɪɟɩɚɲɤɚ ɨɤɨɥɨ ɧɚɱɚɥɶɧɨɣ ɩɨɡɢɰɢɢ for currentLength = 1, length do turtle.forward() end

ǻȜ ȓȟșȖ ȝȓȞȓȚȓțțȜȗ movingForward ȝȞȖȟȐȜȓțȜ ȕțȎȥȓ țȖȓ false ȥȓȞȓȝȎȦȘȎ ȡȔȓ țȎȣȜȒȖȠȟȭ țȎ ȝȞȜȠȖȐȜȝȜșȜȔțȜȚ ȘȜțȤȓ ȟȠȓțȩ Ȗ ȝȜȫȠȜȚȡ ȓȗ ȒȜȟȠȎȠȜȥțȜ ȝȓȞȓȚȓȟȠȖȠȪȟȭ ȠȜșȪ ȘȜ țȎ ȜȒȖț ȦȎȑ ȐȝȓȞȓȒ ȥȠȜ Ȗ ȝȞȜȖȟȣȜȒȖȠ Ȑ ȟȠȞȜȘȓ hare 96. 97. 98. 99.

else -- ɱɟɪɟɩɚɲɤɚ ɨɤɨɥɨ ɮɢɧɚɥɶɧɨɣ ɩɨɡɢɰɢɢ turtle.forward() end

ǻȓȕȎȐȖȟȖȚȜ ȜȠ ȠȜȑȜ ȒȐȖȑȎșȎȟȪ ȥȓȞȓȝȎȦȘȎ ȐȝȓȞȓȒ ȖșȖ țȎȕȎȒ ȥȠȜȏȩ ȜȝȡȟȠȖȠȪȟȭ țȎ ȕȓȚșȬ ȓȗ țȡȔțȜ ȝȓȞȓȚȓȟȠȖȠȪ ȟȭ țȎ height ȦȎȑȜȐ ȐțȖȕ ȝȜȫȠȜȚȡ ȤȖȘș for Ȑ ȟȠȞȜȘȓ

ǰǼǵǰdzDzdzǻǶdz ǿȀdzǻ

209


ȐȩȕȩȐȎȓȠ ȢȡțȘȤȖȬ turtle.dow n() ȟȜȐȓȞȦȎȭ height ȖȠȓȞȎȤȖȗ. hare 101. -- ɫɩɭɫɤ ɧɚ ɡɟɦɥɸ 102. for currentHeight = 1, height do 103. turtle.down() 104. end 105. 106. return true 107. end

ǸȜȑȒȎ ȟȠȓțȎ ȝȜȟȠȞȜȓțȎ Ȏ ȥȓȞȓȝȎȦȘȎ țȎȣȜȒȖȠȟȭ Ȑ ȢȖ țȎșȪțȜȗ ȝȜȕȖȤȖȖ ȢȡțȘȤȖȭ buildWall() ȐȜȕȐȞȎȧȎȓȠ ȕțȎ ȥȓțȖȓ true Ȑ ȟȠȞȜȘȓ ȡȘȎȕȩȐȎȭ țȎ ȠȜ ȥȠȜ ȟȠȓțȎ ȡȟȝȓȦ țȜ ȝȜȟȠȞȜȓțȎ ǶțȟȠȞȡȘȤȖȭ end Ȑ ȟȠȞȜȘȓ ȕȎȐȓȞȦȎȓȠ ȘȜȒ ȢȡțȘȤȖȖ buildWall(). ȂȡțȘȤȖȭ buildWall() ȘȜȠȜȞȡȬ Țȩ ȒȜȏȎȐȖșȖ Ȑ ȚȜȒȡșȪ hare ȜȥȓțȪ ȝȜșȓȕțȎ ȝȜȠȜȚȡ ȥȠȜ ȐȜȕȐȓȒȓțȖȓ ȟȠȓț ² ȫȠȜ ȝȞȜ Ȥȓȟȟ ȘȜȠȜȞȩȗ Ƞȩ ȐȜȕȚȜȔțȜ ȕȎȣȜȥȓȦȪ ȝȜȐȠȜȞȖȠȪ ȐȜ ȚțȜ ȑȖȣ ȝȞȜȑȞȎȚȚȎȣ ǻȜ ȓȟșȖ Ƞȩ ȝȞȜȟȠȜ ȣȜȥȓȦȪ ȝȜȟȠȞȜȖȠȪ ȟȠȓ țȡ Ȗ țȓ țȎȚȓȞȓț ȕȎȝȡȟȘȎȠȪ ȜȏȜșȜȥȘȡ /XD ȝȜȠȜȚ țȎȏȖȞȎȠȪ ȘȜȚȎțȒȩ os.loadAPI('hare') Ȗ hare.buildWall(4, 2) ȚȜȔțȜ țȎȝȖȟȎȠȪ ȝȞȜȑȞȎȚȚȡ ȘȜȠȜȞȎȭ Ȑȟȓ ȫȠȜ ȟȒȓșȎȓȠ ȟȎȚȜ ȟȠȜȭȠȓșȪțȜ DzȎȐȎȗ ȟȜȕȒȎȒȖȚ ȠȎȘȡȬ ȝȞȜȑȞȎȚȚȡ Ȗ țȎȕȜȐȓȚ ȓȓ buildwall.

ĜČēĜČčĚĞĖČ Ĕ ēČěğĝĖ ěĜĚďĜČĘĘħ *=14,?)44 ǰ ȜȏȜșȜȥȘȓ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ȐȩȝȜșțȖ ȘȜȚȎțȒȡ e d it buildwall Ȗ ȐȐȓȒȖ ȟșȓȒȡȬȧȖȗ ȘȜȒ buildwall >>ɉɪɨɝɪɚɦɦɚ ɞɥɹ ɫɬɪɨɢɬɟɥɶɫɬɜɚ ɫɬɟɧ ɗɥɚ ɋɜɟɣɝɚɪɬɚ ɋɬɪɨɢɬ ɫɬɟɧɵ @@ 3. 4. os.loadAPI('hare') 5.

210

DZǹǮǰǮ


ɨɛɪɚɛɨɏɤÉš ɚɪÉ?É­ÉŚÉ&#x;ɧɏɨÉœ ɤɨɌÉšɧÉžɧɨɣ ɍɏɪɨɤɢ 7. local cliArgs = {...} 8. local length = tonumber(cliArgs[1]) 9. local height = tonumber(cliArgs[2]) 10. 11. if length == nil or height == nil or cliArgs[1] == " WKHQ 12. print('Usage: buildwall <length> <height>') 13. return 14. end 15. 16. print('Building...') 17. if hare.buildWall(length, height) == false then HUURU ɇÉ&#x;ÉžɨɍɏÉšɏɨɹɧɨ É›ɼɨɤɨÉœ ž

19. end 20. print('Done.')

ÇżČœČŁČžČŽČ›Č– Č?ČžČœČ‘ČžČŽČšČšČĄ Č– Č?ČŠČ—Č’Č– Č–Č• ČžČ“Č’ČŽČ˜Č ČœČžČŽ Č?ČœČ&#x;șȓ Č?Č?ČœČ’ČŽ Č?Č&#x;Č“ČŁ Č–Č›Č&#x;Č ČžČĄČ˜ȤČ–Č— Č Č&#x;Č ČŽČ›ČœČ?Č–Č? ȼȓȞȓČ?ČŽČŚČ˜ČĄ Č– Č?ČœČšČ“Č&#x;Č Č–Č? Č?Č™ČœČ˜Č– Č˜ČŽČšČ“Č›Č›ČœČ‘Čœ Č˜Č–Čž Č?Č–ČĽČŽ ȖșȖ șȏČ?ČœČ‘Čœ Č’ČžČĄČ‘ČœČ‘Čœ Č&#x;Č ČžČœČ–Č Č“Č™ČŞČ›ČœČ‘Čœ Č?Č™ČœČ˜ČŽ Č? Č“Č“ Č–Č›Č?Č“Č› Č ČŽČžČŞ ȧČ“Č™Č˜Č›Č– Č?Čœ țȓȗ Č?ȞȎČ?ČœČ— Č˜Č›ČœČ?Č˜ČœČ— ȚȊȌȖ Ȓșȭ ČœČ Č˜ČžČŠČ Č–Č­ Č“Č“ ȑȞȎȢČ–ČĽČ“Č&#x;Č˜ČœČ‘Čœ Č–Č›Č Č“ČžȢČ“Č—Č&#x;ČŽ Č…Č ČœČ?ČŠ Č?ČœČ&#x;ČšČœČ ČžČ“Č ČŞ Č˜ČŽČ˜ ȼȓȞȓ Č?ČŽČŚČ˜ČŽ Č&#x;Č ČžČœČ–Č Č&#x;Č Č“Č›ČĄ Č? ČĽČ“Č ČŠČžČ“ Č?Č™ČœČ˜ČŽ Č’Č™Č–Č›ČœČ— Č– Č’Č?ČŽ Č?Č™ČœČ˜ČŽ Č?ČŠ Č&#x;ČœČ ČœČ— Č? ČœČ?ČœČ™ČœČĽČ˜Č“ Č˜ČœČšČŽČ›Č’Č›ČœČ— Č&#x;Č ČžČœČ˜Č– Č?Č?Č“Č’Č– edit buildwall 4 2 Č– Č›ČŽČ”ČšČ–Č Č“ Č˜Č™ČŽČ?Č–ČŚČĄ Enter. ÇłČ&#x;șȖ Č?ȞȖ Č•ČŽČ?ČĄČ&#x;Č˜Č“ ČŤČ ČœČ— Č?ČžČœČ‘ČžČŽČšČšČŠ Č?ČœČ•Č›Č–Č˜ČŽČŹČ ČœČŚČ–Č?Č˜Č– Č Č§ČŽČ Č“Č™ČŞČ›Čœ Č&#x;ȞȎČ?țȖ Č&#x;Č?ČœČ— Č˜ČœČ’ Č&#x; șȖČ&#x;Č Č–Č›Č‘ČœČš Č? ČŤČ ČœČ— Č˜Č›Č–Č‘Č“ ČĽČ Čœ Č?ČŠ Č–Č&#x;Č˜Č™ČŹČĽČ–Č ČŞ Č?ČœČ•ČšČœČ”Č›ČŠČ“ ČœČ?Č“ČĽČŽČ Č˜Č– ÇłČ&#x;șȖ Č–Č&#x;Č?ȞȎČ?Č–Č ČŞ Č?ČžČœ ȑȞȎȚȚȥ țȓ ČĄČ’ČŽČ“Č Č&#x;Č­ ȥȒȎșȖ ȢČŽČ—Č™ Č?ČŠČ?ČœČ™Č›Č–Č? Č˜ČœČšČŽČ›Č’ČĄ delete buildwall ČŽ Č•ČŽČ Č“Čš ȕȎȑȞȥȕȖ Č˜ČœČ’ Č?ČŠČ?ČœČ™Č›Č–Č? Č˜ČœČšČŽČ›Č’ČĄ pastebin get 1aZ8BhNX buildwall.

Ä“ÄŒÄ?ÄœÄ&#x;Ä“Ä–ÄŒ ĘĚÄ?Ä&#x;Ä—ÄŤ 0):ɉÉ&#x;ÉŞÉœÉšÉš ɹɚɍɏɜ ɊɪɨÉ?ɪɚɌɌɾ buildwall ÉĄÉšÉ?ÉŞÉ­É ÉšÉ&#x;ÉŹ Ɍɨɞɭɼɜ hare ɢ ÉœɾɥɾɜɚÉ&#x;ÉŹ Ɏɭɧɤɰɢɸ hare.buildWall() buildwall >>ɉɪɨÉ?ɪɚɌɌɚ ɞɼɚ ɍɏɪɨɢɏÉ&#x;ɼɜɍɏɜɚ ÉŤÉŹÉ&#x;ɧ É—ÉĽÉš É‹ÉœÉ&#x;ÉŁÉ?ɚɪɏɚ É‹ɏɪɨɢɏ ÉŤÉŹÉ&#x;ɧɾ @@

ǰǟǾǰdzDzdzǝǜdz ǿȀdzǝ

211


3. 4. os.loadAPI('hare')

ȃȜȠȭ ȕțȎȥȖȠȓșȪțȎȭ ȥȎȟȠȪ ȞȎȏȜȠȩ ȐȩȝȜșțȭȓȠȟȭ ȟ ȝȜȚȜ ȧȪȬ ȘȜȒȎ ȚȜȒȡșȭ hare ȝȞȜȑȞȎȚȚȎ buildwall ȟȜȒȓȞȔȖȠ țȓȘȜȠȜȞȩȓ ȒȜȝȜșțȖȠȓșȪțȩȓ ȢȡțȘȤȖȖ ǽȞȖ ȐȩȕȜȐȓ ȢȡțȘ ȤȖȖ hare.buildWall() ȝȞȜȑȞȎȚȚȎ ȒȜșȔțȎ ȕțȎȠȪ ȘȎȘȖȓ ȕțȎȥȓțȖȭ ȟșȓȒȡȓȠ ȝȓȞȓȒȎȐȎȠȪ Ȑ ȐȖȒȓ ȝȎȞȎȚȓȠȞȜȐ length Ȗ height ǽȞȜȑȞȎȚȚȎ buildwall ȚȜȔȓȠ ȝȜșȡȥȎȠȪ ȫȠȖ ȕțȎȥȓ țȖȭ Ȗȕ ȎȞȑȡȚȓțȠȜȐ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ȘȜȠȜȞȩȓ ȐȐȓȒȓȠ ȖȑȞȜȘ ȝȞȖ ȕȎȝȡȟȘȓ ȝȞȜȑȞȎȚȚȩ buildwall Ȗȕ ȜȏȜșȜȥȘȖ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ǾȎțȓȓ Ƞȩ ȝȓȞȓȒȎș ȝȞȜȑȞȎȚȚȓ buildwall Ȑ ȘȎȥȓȟȠȐȓ ȎȞȑȡȚȓțȠȜȐ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ȕțȎȥȓțȖȭ 4 Ȗ 2 ǮȞȑȡȚȓțȠȩ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ Ƞȩ ȡȔȓ ȖȟȝȜșȪȕȜȐȎș ȝȞȖ ȕȎȝȡȟȘȓ ȒȞȡȑȖȣ ȝȞȜȑȞȎȚȚ ǻȎȝȞȖȚȓȞ Ȑ ȑșȎȐȓ ȘȜȑȒȎ Ƞȩ ȕȎȝȡȟȘȎș ȝȞȜ ȑȞȎȚȚȡ label Ƞȩ țȎȕțȎȥȎș ȖȚȭ ȥȓȞȓȝȎȦȘȓ ȘȜȚȎțȒȜȗ set Sofonisba Ȑ ȟȠȞȜȘȓ label set Sofonisba ǮȞȑȡȚȓțȠȩ ȘȜ ȚȎțȒțȜȗ ȟȠȞȜȘȖ ȟȜȣȞȎțȭȬȠȟȭ ȘȎȘ ȟȝȓȤȖȎșȪțȩȓ ȠȎȏșȖȥțȩȓ ȕțȎȥȓțȖȭ țȎȕȩȐȎȓȚȩȓ ȚȎȟȟȖȐȜȚ ȋȠȜ ȜȏȨȓȘȠ /XD ȟ ȖȚȓțȓȚ {...} ȘȜȠȜȞȩȗ ȟȜȟȠȜȖȠ Ȗȕ ȒȐȡȣ ȢȖȑȡȞțȩȣ ȟȘȜȏȜȘ ȟ ȠȞȓȚȭ ȝȞȜȏȓșȎȚȖ ȚȓȔȒȡ țȖȚȖ ǽȞȓȔȒȓ ȥȓȚ ȞȎȟȟȚȜȠȞȓȠȪ ȘȜȒ ȘȜ ȠȜȞȩȗ ȜȏȞȎȏȎȠȩȐȎȓȠ ȎȞȑȡȚȓțȠȩ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ȒȎȐȎȗ ȝȜȟȚȜȠȞȖȚ ȘȎȘ ȞȎȏȜȠȎȬȠ ȚȎȟȟȖȐȩ

ĔĝěĚėĨēĚĎČęĔđ ĘČĝĝĔĎĚĎ ȀȎȏșȖȤȩ Ȝ ȘȜȠȜȞȩȣ Ƞȩ ȡȕțȎș Ȗȕ ȑșȎȐȩ ȚȜȑȡȠ ȣȞȎțȖȠȪ țȓȟȘȜșȪȘȜ ȕțȎȥȓțȖȗ ǺȎȟȟȖȐȩ ² ȫȠȜ ȒȞȡȑȜȗ ȠȖȝ ȒȎțțȩȣ ȘȜȠȜȞȩȗ ȠȜȔȓ ȚȜȔȓȠ ȟȜȣȞȎțȭȠȪ țȓȟȘȜșȪȘȜ ȕțȎȥȓțȖȗ ȜȒțȜ ȐȞȓȚȓțțȜ ǵțȎȥȓțȖȭ Ȑ ȠȎȏșȖȤȓ ȣȞȎțȭȠȟȭ Ȑ ȐȖȒȓ ȝȎȞ ȘșȬȥ ȕțȎȥȓțȖȓ ȠȜȑȒȎ ȘȎȘ ȕțȎȥȓțȖȭ Ȑ ȚȎȟȟȖȐȎȣ ȣȞȎțȭȠȟȭ ȡȝȜȞȭȒȜ ȥȓțțȜ ǵțȎȥȓțȖȭ Ȑ ȚȎȟȟȖȐȓ ȠȎȘȔȓ țȎȕȩȐȎȬȠȟȭ ȫșȓȚȓțȠȎȚȖ ȚȎȟȟȖȐȎ ȅȠȜȏȩ ȝȜșȡȥȖȠȪ ȒȜȟȠȡȝ Ș ȘȎȘȜȚȡ șȖȏȜ ȕțȎȥȓțȖȬ ȣȞȎțȭȧȓȚȡȟȭ Ȑ ȚȎȟȟȖȐȓ țȡȔțȜ ȡȘȎȕȎȠȪ ȥȖȟșȜȐȜȓ ȕțȎȥȓțȖȓ ȘȜȠȜȞȜȓ ȜȝȞȓȒȓșȭȓȠ ȞȎȟȝȜșȜȔȓțȖȓ ȫȠȜȑȜ ȫșȓȚȓțȠȎ ȚȎȟȟȖȐȎ Ȗ țȎȕȩȐȎȓȠȟȭ ȖțȒȓȘȟȜȚ. ǽȞȖȚȓȥȎțȖȓ ȀȓȣțȖȥȓȟȘȖ ȚȎȟȟȖȐȩ Ȑ Lua ² ȫȠȜ ȓȧȓ ȜȒȖț ȠȖȝ ȠȎȏșȖȥțȩȣ ȒȎțțȩȣ ȀȎȏșȖȤȩ ȟ ȝȎȞȎȚȖ ȘșȬȥ ȕțȎȥȓțȖȓ

212

DZǹǮǰǮ


ȘȜȠȜȞȩȓ Țȩ ȖȟȝȜșȪȕȜȐȎ șȖ Ȑ ȝȞȓȒȩȒȡȧȖȣ ȑșȎȐȎȣ țȎȕȩȐȎȬȠȟȭ ȘȎȞȠȜȝȜȒȜȏțȩȚȖ ȠȎȏșȖȤȎȚȖ Ȏ ȚȎȟȟȖȐȩ ² ȚȎȟȟȖȐȜȝȜȒȜȏțȩȚȖ ȠȎȏșȖȤȎȚȖ. ǸȜȒ Ȓșȭ ȚȎȟȟȖȐȜȐ ȎțȎșȜȑȖȥȓț ȘȜȒȡ Ȓșȭ ȠȎȏșȖȤ ǽȞȖ ȟȜȕ ȒȎțȖȖ ȚȎȟȟȖȐȎ ȖȟȝȜșȪȕȡȗ ȢȖȑȡȞțȩȓ ȟȘȜȏȘȖ {} ȘȎȘ Ȗ ȝȞȖ ȟȜȕȒȎțȖȖ ȠȎȏșȖȤ țȜ ȜȝȡȟȠȖ ȘșȬȥȖ ǸșȬȥȖ ȐȐȜȒȖȠȪ țȓ țȡȔ țȜ ȝȜȠȜȚȡ ȥȠȜ Ȑ ȚȎȟȟȖȐȓ ȝȜȕȖȤȖȭ ȕțȎȥȓțȖȭ ² ȫȠȜ ȓȑȜ ȖțȒȓȘȟ ȅȠȜȏȩ ȟȜȕȒȎȠȪ ȟȜȏȟȠȐȓțțȩȗ ȚȎȟȟȖȐ Ȑ ȖțȠȓȞȎȘȠȖȐțȜȗ ȜȏȜșȜȥȘȓ ȐȐȓȒȖ ȟșȓȒȡȬȧȡȬ ȘȜȚȎțȒȡ lua> pets = {'mouse', 'cat', 'dog'}

ȅȠȜȏȩ ȝȜșȡȥȖȠȪ ȒȜȟȠȡȝ Ș ȘȎȘȜȚȡ șȖȏȜ ȕțȎȥȓțȖȬ ȟȜȣȞȎ țȓțțȜȚȡ Ȑ ȚȎȟȟȖȐȓ ȐȐȓȒȖ ȖȚȭ ȚȎȟȟȖȐȎ Ȗ ȡȘȎȔȖ Ȑ ȘȐȎȒȞȎȠ țȩȣ ȟȘȜȏȘȎȣ [] ȖțȒȓȘȟ țȡȔțȜȑȜ ȫșȓȚȓțȠȎ lua> pets[1] mouse lua> pets[2] cat lua> 'I have a pet ' .. pets[3] I have a pet dog

ǰ ȭȕȩȘȓ /XD Ȑ ȜȠșȖȥȖȓ ȜȠ ȒȞȡȑȖȣ ȭȕȩȘȜȐ ȝȞȜȑȞȎȚȚȖ ȞȜȐȎțȖȭ țȡȚȓȞȎȤȖȭ ȫșȓȚȓțȠȜȐ ȚȎȟȟȖȐȎ țȎȥȖțȎȓȠȟȭ ȟ ȝȜȫȠȜȚȡ Ȓșȭ ȒȜȟȠȡȝȎ Ș ȝȓȞȐȜȚȡ ȕțȎȥȓțȖȬ Ȑ ȚȎȟȟȖȐȓ pets țȡȔțȜ ȐȐȓȟȠȖ ȘȜȚȎțȒȡ pets[1].

ĔĝěĚėĨēĚĎČęĔđ ČĜďğĘđęĞĚĎ ĖĚĘČęĐęĚĕ ĝĞĜĚĖĔ ǰȜȕȐȞȎȧȎȭȟȪ Ș ȝȞȜȑȞȎȚȚȓ buildwall ȟȘȎȔȡ ȥȠȜ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȟȜȣȞȎțȭȓȠ ȕțȎȥȓțȖȭ ȚȎȟȟȖȐȎ ȎȞȑȡȚȓțȠȜȐ ȘȜȚȎțȒ țȜȗ ȟȠȞȜȘȖ Ȑ ȝȓȞȓȚȓțțȜȗ ȟ ȖȚȓțȓȚ cliArgs ȋȠȎ ȝȓȞȓȚȓț țȎȭ ȝȜȕȐȜșȭȓȠ ȝȜșȡȥȎȠȪ ȒȜȟȠȡȝ Ș ȜȠȒȓșȪțȩȚ ȕțȎȥȓțȖȭȚ ȐțȡȠȞȖ ȚȎȟȟȖȐȎ ȟ ȝȜȚȜȧȪȬ ȘȐȎȒȞȎȠțȩȣ ȟȘȜȏȜȘ cliArgs [1] ² ȫȠȜ ȝȓȞȐȩȗ ȎȞȑȡȚȓțȠ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ cliArgs [2] ² ȐȠȜȞȜȗ Ȗ Ƞ Ȓ

ǰǼǵǰdzDzdzǻǶdz ǿȀdzǻ

213


buildwall ɨɛɪɚɛɨɬɤɚ ɚɪɝɭɦɟɧɬɨɜ ɤɨɦɚɧɞɧɨɣ ɫɬɪɨɤɢ 7. local cliArgs = {...} 8. local length = tonumber(cliArgs[1]) 9. local height = tonumber(cliArgs[2])

ǰȟȓ ȕțȎȥȓțȖȭ ȎȞȑȡȚȓțȠȜȐ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ȟȜȣȞȎțȭȬȠ ȟȭ Ȑ ȐȖȒȓ ȟȠȞȜȘ ȒȎȔȓ ȓȟșȖ ȜțȖ ȐȩȑșȭȒȭȠ ȘȎȘ ȥȖȟșȎ țȎȝȞȖ ȚȓȞ '4' ȖșȖ '2' ȅȠȜȏȩ ȝȞȓȜȏȞȎȕȜȐȎȠȪ ȕțȎȥȓțȖȭ Ȗȕ ȟȠȞȜȘȜȐȜ ȑȜ ȠȖȝȎ Ȑ ȥȖȟșȜȐȜȗ ȘȜȒ Ȑ ȟȠȞȜȘȎȣ Ȗ ȝȓȞȓȒȎȓȠ ȎȞȑȡȚȓțȠȩ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ Ȑ ȢȡțȘȤȖȬ tonumber() ȘȜȠȜȞȎȭ ȐȜȕȐȞȎ ȧȎȓȠ ȥȖȟșȜȐȩȓ ȕțȎȥȓțȖȭ ȝȓȞȓȒȎțțȩȣ ȟȠȞȜȘ Ǻȩ ȟȜȣȞȎțȖȚ ȫȠȖ ȥȖȟșȜȐȩȓ ȕțȎȥȓțȖȭ Ȑ ȝȓȞȓȚȓțțȩȣ length Ȗ height.

ĎħĎĚĐ ĝĚĚčĥđęĔĕ ěĚėĨēĚĎČĞđėĪ dzȟșȖ ȖȑȞȜȘ țȓ ȐȐȜȒȖȠ ȎȞȑȡȚȓțȠȩ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ȖșȖ ȐȐȜȒȖȠ ȠȜșȪȘȜ ȜȒȖț ȐȚȓȟȠȜ ȒȐȡȣ ȖțȢȜȞȚȎȤȖȖ Ȓșȭ ȕȎȝȡȟȘȎ ȝȞȜȑȞȎȚȚȩ ȏȡȒȓȠ țȓȒȜȟȠȎȠȜȥțȜ ǰȜȕȚȜȔțȜ ȖȑȞȜȘ țȓ ȕțȎ ȓȠ ȥȠȜ ȒȜșȔȓț ȐȐȓȟȠȖ ȕțȎȥȓțȖȭ Ȓșȭ ȝȓȞȓȚȓțțȩȣ length Ȗ height ȖșȖ ȚȜȔȓȠ ȏȩȠȪ Ȝț ȕȎȏȩș țȎȏȞȎȠȪ Ȗȣ ǰ ȠȎȘȖȣ ȟșȡȥȎȭȣ ȝȜșȓȕțȜ ȥȠȜȏȩ ȝȞȜȑȞȎȚȚȎ ȜȠȜȏȞȎȔȎșȎ ȟȜȜȏȧȓțȖȓ ȘȜȠȜȞȜȓ țȎȝȜȚțȖȠ ȖȑȞȜȘȡ ȘȎȘ ȓȓ ȝȞȎȐȖșȪțȜ ȕȎȝȡȟȠȖȠȪ dzȟ șȖ ȖȑȞȜȘ ȡȘȎȔȓȠ ȟȖȚȐȜș " Ȑ ȘȎȥȓȟȠȐȓ ȝȓȞȐȜȑȜ ȎȞȑȡȚȓțȠȎ ȘȜ ȚȎțȒțȜȗ ȟȠȞȜȘȖ ȠȎȘȔȓ ȝȜȭȐȖȠȟȭ ȟȜȜȏȧȓțȖȓ buildwall 11. if length == nil or height == nil or cliArgs[1] == " WKHQ 12. print('Usage: buildwall <length> <height>') 13. return 14. end

dzȟșȖ ȎȞȑȡȚȓțȠȩ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ȜȠȟȡȠȟȠȐȡȬȠ ȖșȖ țȓ ȭȐșȭȬȠȟȭ ȥȖȟșȎȚȖ ȝȓȞȓȚȓțțȩȚ cliArgs[1] Ȗ cliArgs[2] ȏȡȒȓȠ ȝȞȖȟȐȜȓțȜ ȕțȎȥȓțȖȓ nil dzȟșȖ Ȑ ȢȡțȘȤȖȬ tonumber() ȝȓȞȓȒȎȠȪ ȕțȎȥȓțȖȓ nil ȖșȖ ȟȠȞȜȘȡ ȘȜȠȜȞȎȭ țȓ ȟȜȒȓȞȔȖȠ ȥȖȟșȎ ȜțȎ ȐȓȞțȓȠ nil ǻȎȝȞȖȚȓȞ ȓȟșȖ ȖȑȞȜȘ țȓ ȡȘȎȔȓȠ ȎȞ ȑȡȚȓțȠȩ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ Ȑ ȟȠȞȜȘȓ ȝȓȞȓȚȓțțȜȗ length ȏȡȒȓȠ ȝȞȖȟȐȜȓțȜ ȕțȎȥȓțȖȓ nil dzȟșȖ ȖȑȞȜȘ ȝȓȞȓȒȎȓȠ ȠȜșȪȘȜ

214

DZǹǮǰǮ


ȜȒȖț ȎȞȑȡȚȓțȠ Ȑ ȟȠȞȜȘȓ ȕțȎȥȓțȖȓ nil ȏȡȒȓȠ ȝȞȖȟȐȜȓțȜ ȝȓȞȓ ȚȓțțȜȗ height ȁȟșȜȐȖȓ Ȑ ȟȠȞȜȘȓ ȝȞȜȐȓȞȭȓȠ ȝȞȖȟȐȜȓțȜ șȖ ȝȓȞȓȚȓțțȜȗ length ȖșȖ height ȕțȎȥȓțȖȓ nil Ȗ țȓ ȡȘȎȕȎț șȖ ȟȖȚȐȜș " Ȑ ȘȎȥȓȟȠȐȓ ȝȓȞȐȜȑȜ ȎȞȑȡȚȓțȠȎ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ǰ ȟȖȠȡȎȤȖȭȣ ȘȜȑȒȎ ȖȑȞȜȘ ȐȐȜȒȖȠ țȓȝȞȎȐȖșȪțȩȓ ȎȞȑȡ ȚȓțȠȩ ȖșȖ țȓ ȐȐȜȒȖȠ Ȗȣ ȐȜȐȟȓ ȢȡțȘȤȖȭ print() ȐȩȐȜȒȖȠ ȟȜȜȏȧȓțȖȓ ȘȜȠȜȞȜȓ ȝȞȓȒșȎȑȎȓȠ ȖȑȞȜȘȡ ȐȐȓȟȠȖ ȖȚȭ buildwall Ȗ ȎȞȑȡȚȓțȠȩ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ² length Ȗ height. ȁȑșȜȐȩȓ ȟȘȜȏȘȖ <> Ȑ ȘȜȠȜȞȩȓ ȕȎȘșȬȥȓțȩ ȟșȜȐȎ length Ȗ height ȡȘȎȕȩȐȎȬȠ țȎ ȠȜ ȥȠȜ ȖȑȞȜȘ țȓ ȒȜșȔȓț ȐȐȜȒȖȠȪ ȟȎ ȚȖ ȟșȜȐȎ length Ȗ height Ȏ ȡȘȎȕȎȠȪ ȥȖȟșȜȐȩȓ ȕțȎȥȓțȖȭ

ĎħēĚĎ ĠğęĖĢĔĔ 0):- *=14,?)44 Đėī ěĚĝĞĜĚĕĖĔ ĝĞđęħ ǰȟȬ ȞȎȏȜȠȡ Ȑ ȝȞȜȑȞȎȚȚȓ buildwall ȐȩȝȜșțȭȬȠ ȢȡțȘȤȖȖ buildWall() selectAndPlaceDown() Ȗ countInventory() ȚȜȒȡșȭ hare ȀȎȘȖȚ ȜȏȞȎȕȜȚ ȘȜȒ ȝȞȜȑȞȎȚȚȩ buildwall ȜȥȓțȪ ȝȞȜȟȠ ǽȜȟșȓ ȜȏȞȎȏȜȠȘȖ ȎȞȑȡȚȓțȠȜȐ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ Ȝț ȝȞȜȟȠȜ ȐȩȕȩȐȎȓȠ ȢȡțȘȤȖȬ hare.buildWall() Ȑ ȟȠȞȜȘȓ Ȗ ȝȞȖȟȐȎȖȐȎȓȠ ȕțȎȥȓțȖȭ ȝȓȞȓȚȓțțȩȚ length Ȗ height. buildwall 16. print('Building...') 17. if hare.buildWall(length, height) == false then HUURU ɇɟɞɨɫɬɚɬɨɱɧɨ ɛɥɨɤɨɜ ¾

19. end 20. print('Done.')

ǸȜȒ Ȑ ȟȠȞȜȘȓ ȐȩȕȩȐȎȓȠ ȢȡțȘȤȖȬ print() ȐȩȐȜȒȭ ȧȡȬ ȟȜȜȏȧȓțȖȓ ȖțȢȜȞȚȖȞȡȬȧȓȓ ȝȜșȪȕȜȐȎȠȓșȭ Ȝ ȕȎȝȡȟȘȓ ȝȞȜȑȞȎȚȚȩ dzȟșȖ ȏșȜȘȜȐ țȓȒȜȟȠȎȠȜȥțȜ ȢȡțȘȤȖȭ hare. buildWall() ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ false Ȗ ȝȞȜȑȞȎȚȚȎ țȓ ȕȎȝȡȟȘȎȓȠȟȭ ȋȠȜ ȝȞȜȐȓȞȭȓȠȟȭ Ȑ ȟȠȞȜȘȓ Ȑ ȫȠȜȚ ȟșȡȥȎȓ ȝȜșȪȕȜȐȎȠȓșȪ ȐȖȒȖȠ ȟȜȜȏȧȓțȖȓ Ȝȏ ȜȦȖȏȘȓ ǸȜȒ Ȑ ȟȠȞȜȘȓ ȐȩȐȜȒȖȠ ȟȜȜȏȧȓțȖȓ Ȝ ȠȜȚ ȥȠȜ ȝȞȜȑȞȎȚȚȎ ȕȎȐȓȞȦȖșȎ ȝȜ ȟȠȞȜȗȘȡ ȟȠȓțȩ ȖșȖ ȟȜȜȏȧȎȓȠ Ȝȏ ȜȦȖȏȘȓ

ǰǼǵǰdzDzdzǻǶdz ǿȀdzǻ

215


ǰȜȠ Ȗ ȐȓȟȪ ȘȜȒ ȝȞȜȑȞȎȚȚȩ buildwall ǵȎ Ȑȟȓ ȜȟȠȎșȪțȜȓ ȜȠȐȓȥȎȓȠ ȘȜȒ ȚȜȒȡșȭ hare. ĐĚěĚėęĔĞđėĨęĚđ ēČĐČęĔđ" ěĜĚďĜČĘĘČ 5A4)*-4 ĝ ČĜďğĘđęĞČĘĔ ĖĚĘČęĐęĚĕ ĝĞĜĚĖĔ

Вернись к программе mylabel из главы 3 и измени код так, чтобы игрок мог указать имя черепашки не с помощью функции io.read(), а с помощью аргумента командной строки. Для этого добавь строку кода local cliArgs = {...}. Теперь записать новое имя черепашки можно, используя код cliArgs[1] вместо функции io.read(). Обязательно добавь вывод сообщения пользователю, если он не укажет новое имя в качестве аргумента командной строки. Обрати внимание: встроенная программа label также поддерживает работу аргументов командной строки. Использование аргументов командной строки ускоряет выполнение программ, так как игрок может вводить значения параметров непосредственно при запуске программы.

ģĞĚ Ęħ ğēęČėĔ ǰ ȫȠȜȗ ȑșȎȐȓ Țȩ ȒȜȝȜșțȖșȖ ȚȜȒȡșȪ hare țȜȐȩȚȖ ȢȡțȘȤȖ ȭȚȖ ȂȡțȘȤȖȭ countInventory() ȐȜȕȐȞȎȧȎȓȠ Ȝȏȧȓȓ ȘȜ șȖȥȓȟȠȐȜ ȏșȜȘȜȐ ȝȞȓȒȚȓȠȜȐ Ȑ ȖțȐȓțȠȎȞȓ ȥȓȞȓȝȎȦȘȖ ȋȠȜ ȝȜșȓȕțȜ ȠȎȘ ȘȎȘ ȚȜȔțȜ ȝȞȜȐȓȞȖȠȪ ȒȜȟȠȎȠȜȥțȜ șȖ ȡ ȥȓȞȓ ȝȎȦȘȖ ȏșȜȘȜȐ Ȓșȭ ȟȠȞȜȖȠȓșȪȟȠȐȎ ȂȡțȘȤȖȭ selectAndPlaceDown() ȝȜȕȐȜșȭȓȠ ȥȓȞȓȝȎȦȘȓ ȐȩȏȞȎȠȪ ȜȝȞȓȒȓșȓț țȩȗ ȏșȜȘ Ȑ ȖțȐȓțȠȎȞȓ Ȗ ȖȟȝȜșȪȕȜȐȎȠȪ ȓȑȜ Ȑ ȚȖȞȓ 0LQHFUDIW. ǿ ȝȜȚȜȧȪȬ ȫȠȖȣ ȢȡțȘȤȖȗ Ƞȩ ȚȜȔȓȦȪ țȎȝȖȟȎȠȪ ȘȜȒ Ȓșȭ ȝȜ ȟȠȞȜȗȘȖ ȟȠȓț șȬȏȜȑȜ ȞȎȕȚȓȞȎ Ȁȩ ȡȕțȎș ȘȎȘ ȝȖȟȎȠȪ ȝȞȜȑȞȎȚȚȩ ȘȜȠȜȞȩȓ ȝȞȖțȖȚȎȬȠ ȎȞȑȡȚȓțȠȩ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ Ȁȩ ȡȔȓ ȖȟȝȜșȪȕȜȐȎș ȎȞȑȡ ȚȓțȠȩ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ Ȑ ȑșȎȐȓ țȎȝȞȖȚȓȞ ȘȜȑȒȎ ȐȐȜ ȒȖș ȘȜȚȎțȒȡ set Sofonisba Ȑ ȟȠȞȜȘȓ label set Sofonisba ǻȜ Ȑ ȫȠȜȗ ȑșȎȐȓ Ƞȩ ȡȕțȎș ȥȠȜ ȚȜȔȓȦȪ ȝȜșȡȥȖȠȪ ȒȜȟȠȡȝ Ș ȠȎȏșȖȥțȩȚ ȕțȎȥȓțȖȭȚ ȜȏȨȓȘȠȎ {...} Ȗ ȝȞȜȥȖȠȎȠȪ ȎȞȑȡ ȚȓțȠȩ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ȘȜȠȜȞȩȓ ȖȑȞȜȘ ȐȐȓș ȝȞȖ ȕȎȝȡȟȘȓ ȝȞȜȑȞȎȚȚȩ

216

DZǹǮǰǮ


dzȟșȖ ȠȐȜȖ ȝȞȜȑȞȎȚȚȩ ȏȡȒȡȠ ȕȎȝȡȟȘȎȠȪ ȒȞȡȑȖȓ ȝȜșȪȕȜ ȐȎȠȓșȖ ȜțȖ ȐȓȞȜȭȠțȜ țȓ ȏȡȒȡȠ ȥȖȠȎȠȪ ȘȜȒ /XD ȥȠȜȏȩ Ȑȩ ȭȟțȖȠȪ ȘȎȘȖȓ ȎȞȑȡȚȓțȠȩ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ țȓȜȏȣȜȒȖȚȜ ȝȓȞȓȒȎȠȪ ȠȐȜȓȗ ȝȞȜȑȞȎȚȚȓ ǽȜȫȠȜȚȡ ȝȞȜȑȞȎȚȚȎ ȚȜȔȓȠ Ȑȩ ȐȜȒȖȠȪ ȟȜȜȏȧȓțȖȓ ȘȜȠȜȞȜȓ ȝȞȓȒȜȟȠȎȐȖȠ ȘȞȎȠȘȜȓ ȜȝȖȟȎțȖȓ țȓȜȏȣȜȒȖȚȩȣ ȎȞȑȡȚȓțȠȜȐ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ǰ ȑșȎȐȓ Țȩ ȟȜȕȒȎȒȖȚ ȟȠȓțȜȟȠȞȜȖȠȓșȪțȡȬ ȝȞȜȑȞȎȚȚȡ ȐȜȠ ȠȎȘȖȓ ȡ Țȓțȭ ȘȎșȎȚȏȡȞȩ ȥȠȜȏȩ ȟȠȞȜȖȠȪ ȘȜȚțȎȠȩ ȟ ȥȓ ȠȩȞȪȚȭ ȟȠȓțȎȚȖ


12 ĝĞĜĚĔĞđėĨĝĞĎĚ ĖĚĘęČĞ dzȟșȖ ȟȜȓȒȖțȖȠȪ ȥȓȠȩȞȓ ȟȠȓțȩ ȝȜșȡ ȥȖȠȟȭ ȘȜȚțȎȠȎ ǰ ȫȠȜȗ ȑșȎȐȓ Țȩ ȟȜȕȒȎȒȖȚ ȢȡțȘȤȖȬ buildRoom() ȘȜȠȜȞȎȭ ȏȡȒȓȠ ȐȩȕȩȐȎȠȪ ȢȡțȘ ȤȖȬ buildWall() ȥȓȠȩȞȓ ȞȎȕȎ ȥȠȜȏȩ ȝȜȟȠȞȜ ȖȠȪ ȘȜȚțȎȠȡ ȝȜȒȜȏțȡȬ ȠȜȗ ȥȠȜ ȝȜȘȎȕȎțȎ țȎ ȞȖȟ ȋȠȎ ȑșȎȐȎ ȘȜȞȜȠȘȎȭ Ȗ ȝȞȜȟȠȎȭ ȝȜȠȜȚȡ ȥȠȜ Ƞȩ ȡȔȓ ȐȩȝȜșțȖș ȕțȎȥȖȠȓșȪțȡȬ ȥȎȟȠȪ ȞȎȏȜȠȩ ȘȜȑȒȎ ȝȖȟȎș ȢȡțȘȤȖȬ buildWall() Ȑ ȑșȎȐȓ Ǯ ȘȜȑȒȎ Ƞȩ ȕȎȘȜț ȥȖȦȪ ȞȎȏȜȠȡ țȎȒ ȢȡțȘȤȖȓȗ buildRoom() ȠȜ ȟ ȓȓ ȝȜȚȜȧȪȬ ȟȚȜȔȓȦȪ ȝȜȟȠȞȜȖȠȪ ȟșȜȔțȜȓ ȟȜȜȞȡȔȓțȖȓ țȎȝȞȖȚȓȞ ȕȎȚȜȘ

ˀ̛̭͘ ϭϮ͘ϭ͘ ʶ̨̥̦̯̌̌ ̛̚ ̡̥̖̦̌​̨̨̦̐ ̸̡̛̛̬̪͕̌ ̨̬̥̖̬̥̌̚ ϱ п ϲ п ϰ ̨̡̨̣̍̏

218

DZǹǮǰǮ


ěĜĚđĖĞĔĜĚĎČęĔđ ČėďĚĜĔĞĘČ ěĚĝĞĜĚđęĔī ĖĚĘęČĞ DzȎȐȎȗ ȞȎȕȞȎȏȜȠȎȓȚ ȎșȑȜȞȖȠȚ ȘȜȠȜȞȩȗ ȝȜȕȐȜșȖȠ ȟȠȞȜȖȠȪ ȘȜȚțȎȠȩ șȬȏȜȑȜ ȞȎȕȚȓȞȎ ǸȜȒ ȫȠȜȑȜ ȎșȑȜȞȖȠȚȎ ȝȜȚȓȟȠȖȚ Ȑ ȢȡțȘȤȖȬ ȟ ȖȚȓțȓȚ buildRoom() Ȑ ȚȜȒȡșȪ hare ǻȎȝȞȖ ȚȓȞ ȓȟșȖ ȥȓȞȓȝȎȦȘȓ țȡȔțȜ ȝȜȟȠȞȜȖȠȪ ȘȜȚțȎȠȡ ȒșȖțȜȗ Ȑ ȠȞȖ ȏșȜȘȎ Ȗ ȦȖȞȖțȜȗ Ȑ ȥȓȠȩȞȓ ȏșȜȘȎ ȜțȎ ȚȜȔȓȠ ȝȜȟȠȞȜȖȠȪ ȥȓȠȩȞȓ ȟȠȓțȩ ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ ȅȓȞȓȝȎȦȘȎ țȎȥȖ țȎȓȠ ȟ șȓȐȜȑȜ țȖȔțȓȑȜ ȡȑșȎ ȘȜȚțȎȠȩ Ȏ ȕȎȠȓȚ ȟȠȞȜȖȠ ȟȠȓțȩ ȒȐȖȑȎȭȟȪ ȝȜ ȥȎȟȜȐȜȗ ȟȠȞȓșȘȓ

ˀ̛̭͘ ϭϮ͘Ϯ͘ ʦ̛̔ ̵̭̖̬̱̏ ̦̌ ̸̡̖̬̖̪̹̱͕̌ ̨̭̯̬̺̱́̀ ̡̨̥̦̯̱̌ ̨̬̥̖̬̥̌̚ ϯ п ϰ ̨̡̣̍̌͘ ʻ̸̌̌̏ ̨̨̛̭̯̬̯̖̣̭̯͕̽̏ ̸̡̖̬̖̪̹̌̌ ̨̪̖̬̦̱̯̏̌ ̏ ̛̦̪̬̣̖̦̌̌̏​̛ ̨̖̣̜̍ ̡̛̭̯̬̖̣

ǽȜȟȘȜșȪȘȡ ȟȠȓțȩ ȝȓȞȓȘȞȩȐȎȬȠȟȭ Ȑ ȡȑșȎȣ ȘȜȚțȎȠȩ ȒșȖțȎ Ȗ ȦȖȞȖțȎ ȘȜȚțȎȠȩ ȜȠșȖȥȎȬȠȟȭ ȜȠ ȞȎȕȚȓȞȜȐ ȓȓ ȟȠȓț ǻȎȝȞȖȚȓȞ ȥȠȜȏȩ ȝȜȟȠȞȜȖȠȪ ȘȜȚțȎȠȡ ȞȎȕȚȓȞȜȚ ð ȏșȜȘȎ ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ Ƞȩ țȓ ȟȚȜȔȓȦȪ ȝȞȜȟȠȜ ȝȜȟȠȞȜ ȖȠȪ ȒȐȓ ȟȠȓțȩ ȒșȖțȜȗ Ȑ ȠȞȖ ȏșȜȘȎ Ȗ ȒȐȓ ȟȠȓțȩ ȒșȖțȜȗ Ȑ ȥȓȠȩȞȓ ȏșȜȘȎ ȠȎȘ ȘȎȘ ȡȑșȩ ȒȜșȔțȩ ȝȓȞȓȘȞȩȐȎȠȪȟȭ ȅȠȜ ȏȩ ȝȞȎȐȖșȪțȜ ȕȎȒȎȠȪ ȒșȖțȡ ȟȠȓț ȘȜȚțȎȠȩ țȎȒȜ ȡȥȖȠȩ ȐȎȠȪ ȝȓȞȓȘȞȩȠȖȓ ȡȑșȜȐ ǰȕȑșȭțȖ țȎ ȞȎȕȚȓȞ ȘȎȔȒȜȗ ȟȠȓțȩ țȎ ȞȖȟ ȑȒȓ ȖȕȜȏȞȎȔȓțȩ ȘȜȚțȎȠȩ ȟ ȞȎȕȚȓȞȎȚȖ ð Ȗ ð ȏșȜȘȜȐ ǸȎȘ ȐȖȒȖȦȪ ȘȜȚțȎȠȎ ȞȎȕȚȓȞȜȚ ð ȏșȜȘȎ ȟȜȟȠȜȖȠ Ȗȕ ȒȐȡȣ ȟȠȓț ȒșȖțțȜȬ Ȑ ȏșȜȘȎ Ȗ ȒȐȡȣ ȟȠȓț ȒșȖțȜȗ Ȑ ȏșȜȘȎ ǸȜȚțȎȠȎ ȞȎȕȚȓȞȜȚ ð ȏșȜȘȜȐ ȟȜȟȠȜȖȠ Ȗȕ ȒȐȡȣ ȟȠȓț ȒșȖțȜȗ ȏșȜȘȎ Ȗ ȒȐȡȣ ȟȠȓț ȒșȖțȜȗ ȏșȜȘȜȐ

ǿȀǾǼǶȀdzǹȊǿȀǰǼ ǸǼǺǻǮȀ

219


6 5 4 3 3 4 3 2

Комната размером 3 έ 4 блока

Комната размером 4 έ 6 блоков

ˀ̛̭͘ ϭϮ͘ϯ͘ ʶ̨̥̦̯̼̌ ̭ ̛̬̥̖̬̥̌̌̚ ϯ п ϰ ;̭̣̖̏̌Ϳ ̛ ϰ п ϲ ;̭̪̬̌̏̌Ϳ ̨̡̨̣̍̏

ǼȏȞȎȠȖ ȐțȖȚȎțȖȓ țȎ ȦȎȏșȜț țȜȐȜȑȜ ȎșȑȜȞȖȠȚȎ ȅȓȠȩ Ȟȓ ȟȠȓțȩ ȖȚȓȬȠ ȒȐȎ ȞȎȕțȩȣ ȞȎȕȚȓȞȎ ȜȒȖț ȞȎȕȚȓȞ ² ȦȖȞȖ țȎ ȘȜȚțȎȠȩ ȚȖțȡȟ ȜȒȖț Ȗ ȐȠȜȞȜȗ ² ȒșȖțȎ ȘȜȚțȎȠȩ ȚȖțȡȟ ȜȒȖț ǮșȑȜȞȖȠȚ ȐȩȕȩȐȎȓȠ ȢȡțȘȤȖȬ buildWall() ȘȜȠȜȞȡȬ Țȩ ȟȜȕȒȎșȖ Ȑ ȑșȎȐȓ ȅȓȞȓȝȎȦȘȎ țȎȥȖțȎȓȠ ȒȐȖȔȓțȖȓ Ȑ șȓȐȜȚ țȖȔțȓȚ ȡȑșȡ ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ Ȗ țȎȥȖțȎ ȓȠ ȟȠȞȜȖȠȓșȪȟȠȐȜ ȟ șȓȐȜȗ ȟȠȜȞȜțȩ ȘȜȚțȎȠȩ ȜțȎ ȝȜȘȎȕȎțȎ ȘȞȎȟțȩȚ ȤȐȓȠȜȚ ǵȎȠȓȚ Ȑ șȓȐȜȚ ȐȓȞȣțȓȚ ȡȑșȡ ȞȖȟȡțȘȎ ȥȓȞȓȝȎȦȘȎ ȝȜȐȜȞȎȥȖȐȎȓȠ țȎȝȞȎȐȜ Ȑ ȟȜȜȠȐȓȠȟȠȐȖȖ ȟ ȎșȑȜ ȞȖȠȚȜȚ Ȗ ȟȠȞȜȖȠ ȒȞȡȑȡȬ ȟȠȓțȡ ȝȜȘȎȕȎțȎ ȟȖțȖȚ ȤȐȓȠȜȚ ǵȎȠȓȚ țȎȦ ȞȜȏȜȠ ȟțȜȐȎ ȝȜȐȜȞȎȥȖȐȎȓȠ țȎȝȞȎȐȜ ȟȠȞȜȖȠ ȘȞȎȟțȡȬ ȟȠȓțȡ ȟ ȝȞȎȐȜȗ ȟȠȜȞȜțȩ ȘȜȚțȎȠȩ Ȗ țȎȘȜțȓȤ ȝȜ ȐȜȞȎȥȖȐȎȭ țȎȝȞȎȐȜ ȟȠȞȜȖȠ ȟȖțȬȬ ȟȠȓțȡ ȐțȖȕȡ ȘȜȚțȎȠȩ ǸȜȑȒȎ ȥȓȞȓȝȎȦȘȎ ȕȎȘȎțȥȖȐȎȓȠ ȟȠȞȜȖȠȓșȪȟȠȐȜ ȥȓȠȐȓȞȠȜȗ ȟȠȓțȩ ȠȜ ȜȘȎȕȩȐȎȓȠȟȭ ȠȎȚ ȜȠȘȡȒȎ ȜțȎ țȎȥȖțȎșȎ ǶȟȝȜșȪ ȕȡȭ ȫȠȜȠ ȦȎȏ șȜț Ȑ ȘȎȥȓȟȠȐȓ ȎșȑȜȞȖȠȚȎ ȢȡțȘȤȖȭ buildRoom() ȝȜȕȐȜșȭȓȠ ȟȜȕȒȎȐȎȠȪ ȘȜȚțȎȠȩ șȬȏȜȑȜ ȞȎȕȚȓȞȎ

ĐĚĜČčĚĞĖČ ĘĚĐğėī 0):ǽȜȚȓȟȠȖȚ ȢȡțȘȤȖȬ buildRoom() Ȑ ȚȜȒȡșȪ hare ȘȎȘ ȫȠȜ ȏȩșȜ ȟȒȓșȎțȜ ȟ ȢȡțȘȤȖȓȗ buildWall() ȥȠȜȏȩ ȓȓ ȚȜȑșȖ Ȗȟ ȝȜșȪȕȜȐȎȠȪ Ȗ ȒȞȡȑȖȓ ȝȞȜȑȞȎȚȚȩ ǰ ȜȏȜșȜȥȘȓ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ȐȩȝȜșțȖ ȘȜȚȎțȒȡ edit hare ǽȓȞȓȚȓȟȠȖ ȘȡȞȟȜȞ Ȑ ȘȜțȓȤ ȢȎȗșȎ Ȗ ȒȜȏȎȐȪ ȟșȓȒȡȬȧȖȗ ȘȜȒ

220

DZǹǮǰǮ


hare ɊɪɨɊɭɍɤ EXLOG5RRP ɍɏɪɨɢɏ ÉąÉ&#x;ɏɾɪÉ&#x; ÉŤÉŹÉ&#x;ɧɾ ɢ Ɋɨɏɨɼɨɤ 112. function buildRoom(length, width, height) 113. if hare.countInventory() < (((length - 1) * height * 2) + ((width - 1) * height * 2)) then UHWXUQ IDOVH ɧÉ&#x;ÉžɨɍɏÉšɏɨɹɧɨ É›ɼɨɤɨÉœ 115. end 116. ɍɏɪɨɢɏÉ&#x;ɼɜɍɏÉœɨ ÉąÉ&#x;ɏɾɪÉ&#x;ÉŻ ÉŤÉŹÉ&#x;ɧ 118. buildWall(length - 1, height) 119. turtle.turnRight() 120. 121. buildWall(width - 1, height) 122. turtle.turnRight() 123. 124. buildWall(length - 1, height) 125. turtle.turnRight() 126. 127. buildWall(width - 1, height) 128. turtle.turnRight() 129. 130. return true 131. end

ÇżČœČŁČžČŽČ›Č– Č?ČžČœČ‘ČžČŽČšČšČĄ Č– Č?ČŠČ—Č’Č– Č–Č• ČžČ“Č’ČŽČ˜Č ČœČžČŽ Č?ČœČ&#x;șȓ Č?Č?ČœČ’ČŽ Č?Č&#x;Č“ČŁ Č–Č›Č&#x;Č ČžČĄČ˜ȤČ–Č— Č‹Č ČœČ ČšČœČ’ČĄČ™ČŞ ČšČœČ”Č›Čœ Č ČŽČ˜Č”Č“ Č•ČŽČ‘ČžČĄČ•Č–Č ČŞ Č?ČŠ Č?ČœČ™Č›Č–Č? Č˜ČœČšČŽČ›Č’ČĄ pastebin get wwzvaKuW hare.

ÄŽħģÄ”Ä?ėđęĔđ ÄšÄ?ÄĽÄ‘Ä?Äš ĖĚėĔģđÄ?ĞĎČ Ä?ėĚĖĚĎ ęđĚÄ?ÄĄÄšÄ?ĔĘĚÄ?Äš Ä?Ä—ÄŤ Ä?ĞĜĚĔĞđėĨÄ?ĞĎČ ĖĚĘęČĞħ ǽȞȓȔȒȓ ČĽČ“Čš ȢȥČ›Č˜ȤČ–Č­ buildRoom() Č›ČŽČĽČ›Č“Č Č&#x;Č ČžČœČ–Č Č“Č™ČŞČ&#x;Č Č?Čœ Č˜ČœČšČ›ČŽČ ČŠ Č›Č“ČœČ?ČŁČœČ’Č–ČšČœ Č?ČžČœČ?Č“ČžČ–Č ČŞ ČĽČ Čœ Č? Č–Č›Č?Č“Č›Č ČŽČžČ“ ȼȓȞȓČ?ČŽČŚ Č˜Č– Č’ČœČ&#x;Č ČŽČ ČœČĽČ›Čœ Č&#x;Č ČžČœČ–Č Č“Č™ČŞČ›ČŠČŁ Č?Č™ČœČ˜ČœČ? Dzșȭ ČŤČ ČœČ‘Čœ Č›ČĄČ”Č›Čœ Č?ČŠ ČĽČ–Č&#x;Č™Č–Č ČŞ Č˜ČœČ™Č–ČĽČ“Č&#x;Č Č?Čœ Č?Č™ČœČ˜ČœČ? Č›Č“ČœČ?ČŁČœČ’Č–ČšČœČ“ Ȓșȭ Č?ČœČ•Č?ȓȒȓțȖȭ Č?Č&#x;Č“ČŁ ČĽČ“Č ČŠČžČ“ČŁ Č&#x;Č Č“Č› Č˜ČœČšČ›ČŽČ ČŠ ǸČœČ™Č–ČĽČ“Č&#x;Č Č?Čœ Č?Č™ČœČ˜ČœČ? Č›Č“ČœČ?ČŁČœČ’Č–

ǿȀǞǟǜČ€dzǚȊǿȀǰǟ ǸǟǺǝǎČ€

221


ȚȜȓ Ȓșȭ ȜȒțȜȗ ȟȠȓțȩ ȞȎȟȟȥȖȠȩȐȎȓȠȟȭ Ȑ ȟȠȞȜȘȓ ȚȜȒȡșȭ hare ȐȜȠ ȠȎȘ length * height

ǻȜ țȎ ȫȠȜȠ ȞȎȕ ȒșȖțȎ ȟȠȓțȩ țȎ ȜȒȖț ȏșȜȘ ȘȜȞȜȥȓ ȒșȖ țȩ ȘȜȚțȎȠȩ ǽȓȞȐȎȭ Ȗȕ ȥȓȠȩȞȓȣ ȟȠȓț ȒȜșȔțȎ ȏȩȠȪ ȒșȖțȜȗ length – 1 ȝȜȫȠȜȚȡ țȎȦȖ ȐȩȥȖȟșȓțȖȭ ȝȞȖțȖȚȎȬȠ ȐȖȒ (length – 1) * height

Ƕ ȝȜȟȘȜșȪȘȡ ȥȓȞȓȝȎȦȘȎ ȝȜȟȠȞȜȖȠ ȒȐȓ ȠȎȘȖȣ ȟȠȓțȩ Țȩ ȡȚțȜȔȖȚ ȫȠȜ ȥȖȟșȜ țȎ 2: (length – 1) * height * 2

ǼȟȠȎșȪțȩȓ ȒȐȓ ȟȠȓțȩ ȏȡȒȡȠ țȎ ȜȒȖț ȏșȜȘ ȘȜȞȜȥȓ ȦȖ ȞȖțȩ ȘȜȚțȎȠȩ ȠȜ ȓȟȠȪ ȒșȖțȜȗ Ȑ width – 1 ȏșȜȘ ȝȜȫȠȜȚȡ Țȩ ȒȜȏȎȐȖȚ ȏșȜȘȖ Ȓșȭ ȫȠȖȣ ȟȠȓț Ȑ ȞȎȟȥȓȠ ȟșȓȒȡȬȧȖȚ Ȝȏ ȞȎȕȜȚ ((length – 1) * height * 2) + ((width – 1) * height * 2)

ȋȠȜ ȜȘȜțȥȎȠȓșȪțȎȭ ȢȜȞȚȡșȎ Ȓșȭ ȐȩȥȖȟșȓțȖȭ ȘȜșȖȥȓ ȟȠȐȎ ȏșȜȘȜȐ ȘȜȠȜȞȜȓ ȝȜȠȞȓȏȡȓȠȟȭ Ȓșȭ ȟȠȞȜȖȠȓșȪȟȠȐȎ ȘȜȚ țȎȠȩ dzȓ Țȩ ȏȡȒȓȚ ȖȟȝȜșȪȕȜȐȎȠȪ Ȑ ȢȡțȘȤȖȖ buildRoom().

ĖĚĐ ĠğęĖĢĔĔ *=14,:775 ȅȠȜȏȩ ȡȕțȎȠȪ ȟȘȜșȪȘȜ ȏșȜȘȜȐ țȎȣȜȒȖȠȟȭ Ȑ ȖțȐȓțȠȎȞȓ ȥȓȞȓȝȎȦȘȖ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȐȩȕȩȐȎȓȠ ȢȡțȘȤȖȬ hare. countInventory() dzȟșȖ ȫȠȜ ȥȖȟșȜ ȚȓțȪȦȓ țȓȜȏȣȜȒȖȚȜ ȑȜ ȘȜșȖȥȓȟȠȐȎ ȏșȜȘȜȐ ȘȜȠȜȞȜȓ ȞȎȟȟȥȖȠȩȐȎȓȠȟȭ ȝȜ ȢȜȞ Țȡșȓ Ȗȕ ȝȞȓȒȩȒȡȧȓȑȜ ȞȎȕȒȓșȎ ȖȟȝȜșțȓțȖȓ ȝȓȞȓȣȜȒȖȠ Ș ȟȠȞȜȘȓ ǰ ȫȠȜȗ ȟȠȞȜȘȓ ȢȡțȘȤȖȭ buildRoom() ȐȜȕȐȞȎ ȧȎȓȠ ȕțȎȥȓțȖȓ false ǸȜȒ ȢȡțȘȤȖȖ ȖȟȝȜșȪȕȡȓȠ ȫȠȜ ȐȜȕ ȐȞȎȧȎȓȚȜȓ ȕțȎȥȓțȖȓ Ȓșȭ ȜȝȜȐȓȧȓțȖȭ Ȝ ȠȜȚ ȥȠȜ ȘȜȚțȎȠȎ țȓ ȏȩșȎ ȝȜȟȠȞȜȓțȎ hare EXLOG5RRP ɫɬɪɨɢɬ ɱɟɬɵɪɟ ɫɬɟɧɵ

222

DZǹǮǰǮ


ɢ ɩɨɬɨɥɨɤ 112. function buildRoom(length, width, height) 113. if hare.countInventory() < (((length - 1) * height * 2) + ((width - 1) * height * 2)) then UHWXUQ IDOVH ɧɟɞɨɫɬɚɬɨɱɧɨ ɛɥɨɤɨɜ 115. end

ǰ ȝȞȜȠȖȐțȜȚ ȟșȡȥȎȓ ȖȟȝȜșțȓțȖȓ ȝȓȞȓȣȜȒȖȠ Ș ȘȜȒȡ ȟșȓ ȒȡȬȧȓȚȡ ȕȎ ȫȠȜȗ ȢȡțȘȤȖȓȗ ȀȎȘȖȚ ȜȏȞȎȕȜȚ ȓȟșȖ ȏșȜȘȜȐ ȒȜȟȠȎȠȜȥțȜ ȝȞȜȖȟȣȜȒȖȠ ȐȩȕȜȐ ȢȡțȘȤȖȖ buildWall() Ȗ ȘȜȒ Ȑ ȟȠȞȜȘȓ țȎȥȖțȎȓȠ ȟȠȞȜȖȠȓșȪȟȠȐȜ ȝȓȞȐȜȗ ȟȠȓțȩ hare 118.

buildWall(length - 1, height)

ǸȜȑȒȎ ȥȓȞȓȝȎȦȘȎ ȝȜȟȠȞȜȖȠ ȜȒțȡ ȟȠȓțȡ ȝȜ ȜȘȜțȥȎțȖȖ ȟȠȞȜȖȠȓșȪȟȠȐȎ ȢȡțȘȤȖȭ buildWall() ȝȓȞȓȚȓȧȎȓȠ ȥȓȞȓ ȝȎȦȘȡ ȜȏȞȎȠțȜ țȎ ȕȓȚșȬ dzȟșȖ ȥȓȞȓȝȎȦȘȎ ȟȠȞȜȖȠ ȘȜȚ țȎȠȡ ȞȎȕȚȓȞȜȚ ð ȏșȜȘȎ ȠȜ ȝȜȟșȓ ȖȟȝȜșțȓțȖȭ ȘȜȒȎ Ȑ ȟȠȞȜȘȓ ȟȠȞȜȓțȖȓ ȏȡȒȓȠ ȐȩȑșȭȒȓȠȪ ȠȎȘ ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ

ˀ̛̭͘ ϭϮ͘ϰ͘ ʦ̛̔ ̡̨̥̦̯̼̌ ̨̬̥̖̬̥̌̚ ϯ п ϰ ̨̡̣̍̌ ̨̪̭̣̖ ̛̖̬̹̖̦̌̏́̚ ̨̛̭̯̬̯̖̣̭̯̽̏̌ ̨̪̖̬̜̏ ̭̯̖̦̼

ǽȞȓȔȒȓ ȥȓȚ ȥȓȞȓȝȎȦȘȎ ȟȚȜȔȓȠ ȝȜȟȠȞȜȖȠȪ ȐȠȜȞȡȬ ȟȠȓțȡ ȜțȎ ȒȜșȔțȎ ȝȜȐȓȞțȡȠȪ țȎȝȞȎȐȜ ȀȎȘȜȗ ȝȜȐȜȞȜȠ ȝȞȜȖȕȐȜȒȖȠ ȟȭ Ȑ ȟȠȞȜȘȓ ȟ ȝȜȚȜȧȪȬ ȢȡțȘȤȖȖ turtle.turnRight() Ȏ ȘȜȒ Ȑ ȟȠȞȜȘȓ țȎȥȖțȎȓȠ ȟȠȞȜȖȠȓșȪȟȠȐȜ ȐȠȜȞȜȗ ȟȠȓțȩ

ǿȀǾǼǶȀdzǹȊǿȀǰǼ ǸǼǺǻǮȀ

223


hare 119. 120. 121.

turtle.turnRight() buildWall(width - 1, height)

ǼȏȞȎȠȖ ȐțȖȚȎțȖȓ ȥȠȜ ȒșȖțȎ ȫȠȜȗ ȟȠȓțȩ ȞȎȐțȎ width – 1 ȑȒȓ width ² ȦȖȞȖțȎ ȘȜȚțȎȠȩ dzȟșȖ ȥȓȞȓȝȎȦȘȎ ȟȠȞȜȖȠ ȘȜȚțȎȠȡ ȞȎȕȚȓȞȜȚ ð ȏșȜȘȎ ȝȜȟșȓ ȖȟȝȜșțȓțȖȭ ȘȜȒȎ Ȑ ȟȠȞȜȘȓ ȘȜȚțȎȠȎ ȏȡȒȓȠ ȐȩȑșȭȒȓȠȪ ȠȎȘ ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ

ˀ̛̭͘ ϭϮ͘ϱ͘ ʦ̛̔ ̡̨̥̦̯̼̌ ̨̬̥̖̬̥̌̚ ϯ п ϰ ̨̡̣̍̌ ̨̪̭̣̖ ̨̨̡̛̪̭̯̬̜ ̨̨̯̬̜̏ ̭̯̖̦̼

ǰ ȟȠȞȜȘȎȣ ² ȝȞȜȖȟȣȜȒȖȠ ȟȠȞȜȖȠȓșȪȟȠȐȜ ȒȐȡȣ ȒȞȡ ȑȖȣ ȟȠȓț hare 122. turtle.turnRight() 123. 124. buildWall(length - 1, height) 125. turtle.turnRight() 126. 127. buildWall(width - 1, height) 128. turtle.turnRight() 129. 130. return true 131. end

224

DZǹǮǰǮ


ǽȜȟșȓ ȖȟȝȜșțȓțȖȭ ȫȠȜȑȜ ȘȜȒȎ ȟȠȞȜȖȠȓșȪȟȠȐȜ ȘȜȚțȎȠȩ ȕȎ ȐȓȞȦȎȓȠȟȭ Ȗ ȢȡțȘȤȖȭ buildRoom() ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ true Ȑ ȟȠȞȜȘȓ ȟȜȜȏȧȎȭ Ȝȏ ȡȟȝȓȦțȜȗ ȝȜȟȠȞȜȗȘȓ ȘȜȚțȎ Ƞȩ ȅȓȞȓȝȎȦȘȎ ȐȜȕȐȞȎȧȎȓȠȟȭ Ȑ ȖȟȣȜȒțȡȬ ȝȜȕȖȤȖȬ țȎȥȎșȎ ȟȠȞȜȖȠȓșȪȟȠȐȎ ȝȜȐȜȞȎȥȖȐȎȓȠȟȭ Ȑ ȝȓȞȐȜțȎȥȎșȪțȜȚ țȎȝȞȎȐ șȓțȖȖ țȜ ȜȟȠȎțȓȠȟȭ țȎȐȓȞȣȡ ȟȠȓț ȘȜȠȜȞȩȓ ȜțȎ ȝȜȟȠȞȜȖșȎ ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ

ˀ̛̭͘ ϭϮ͘ϲ͘ ʶ̨̥̦̯̌̌ ̨̬̥̖̬̥̌̚ ϯ п ϰ ̨̡̣̍̌ ̨̨̪̭̯̬̖̦͕̌ ̸̡̖̬̖̪̹̌̌ ̨̬̺̖̯̭̏̏̌̌́̚ ̡ ̵̨̨̛̭̦̜̔ ̶̨̛̛̪̚​̛͕ ̨̦ ̨̭̯̖̯̭̌́ ̵̦̖̬̱̌̏

ǶțȟȠȞȡȘȤȖȭ end Ȑ ȟȠȞȜȘȓ ȕȎȘȎțȥȖȐȎȓȠ ȏșȜȘ ȘȜȒȎ ȢȡțȘȤȖȖ buildRoom().

ĖĚĐ ěĜĚďĜČĘĘħ *=14,?)44 ǰ ȑșȎȐȓ Țȩ ȟȜȕȒȎșȖ ȝȞȜȑȞȎȚȚȡ buildwall ȘȜȠȜȞȎȭ Ȑȩ ȕȩȐȎȓȠ ȢȡțȘȤȖȬ hare.buildWall() ȥȠȜȏȩ ȖȑȞȜȘ ȚȜȑ șȓȑȘȜ ȝȜȟȠȞȜȖȠȪ ȟȠȓțȡ Ȑ ȜȏȜșȜȥȘȓ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ȀȓȝȓȞȪ ȟȜȕ ȒȎȒȖȚ ȝȞȜȑȞȎȚȚȡ ȎțȎșȜȑȖȥțȡȬ buildroom ȥȠȜȏȩ Ȑȩȕȩ ȐȎȠȪ ȢȡțȘȤȖȬ hare.buildRoom() ǰ ȜȏȜșȜȥȘȓ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ȐȩȝȜșțȖ ȘȜȚȎțȒȡ edit buildroom Ȗ ȐȐȓȒȖ ȟșȓȒȡ ȬȧȖȗ ȘȜȒ buildroom >>ɉɪɨɝɪɚɦɦɚ ɞɥɹ ɫɬɪɨɢɬɟɥɶɫɬɜɚ ɤɨɦɧɚɬ ɗɥɚ ɋɜɟɣɝɚɪɬɚ

ǿȀǾǼǶȀdzǹȊǿȀǰǼ ǸǼǺǻǮȀ

225


É‹ɏɪɨɢɏ ɤɨɌɧɚɏɾ ɢɥ ÉąÉ&#x;ɏɾɪÉ&#x;ÉŻ ÉŤÉŹÉ&#x;ɧ @@ 3. 4. os.loadAPI('hare') 5. ɨɛɪɚɛɨɏɤÉš ɚɪÉ?É­ÉŚÉ&#x;ɧɏɨÉœ ɤɨɌÉšɧÉžɧɨɣ ɍɏɪɨɤɢ 7. local cliArgs = {...} 8. local length = tonumber(cliArgs[1]) 9. local width = tonumber(cliArgs[2]) 10. local height = tonumber(cliArgs[3]) 11. 12. if length == nil or width == nil or height == nil or FOL$UJV> @ " WKHQ 13. print('Usage: buildroom <length> <width> <height>') 14. return 15. end 16. 17. print('Building...') 18. if hare.buildRoom(length, width, height) == false then HUURU ɇÉ&#x;ÉžɨɍɏÉšɏɨɹɧɨ É›ɼɨɤɨÉœ ž

20. end 21. print('Done.')

ÇżČœČŁČžČŽČ›Č– Č?ČžČœČ‘ČžČŽČšČšČĄ Č– Č?ČŠČ—Č’Č– Č–Č• ČžČ“Č’ČŽČ˜Č ČœČžČŽ Č?ČœČ&#x;șȓ Č?Č?ČœČ’ČŽ Č?Č&#x;Č“ČŁ Č–Č›Č&#x;Č ČžČĄČ˜ȤČ–Č— ȀȓČ?Č“ Č ČŽČ˜Č”Č“ Č?ČœČ›ČŽČ’ČœČ?Č–Č Č&#x;Č­ ČšČœČ’ČĄČ™ČŞ hare Č˜Čœ Č ČœČžČŠČ— ČšČœČ”Č›Čœ Č&#x;Č˜ČŽČĽČŽČ ČŞ Č?ČŠČ?ČœČ™Č›Č–Č? Č˜ČœČšČŽČ›Č’ČĄ pastebin get wwzvaKuW hare. ǸČŽČ˜ Č– buildwall Č?ČžČœČ‘ČžČŽČšČšČŽ buildroom ČœČ&#x;Č›ČœČ?ČŠČ?ČŽČ“Č Č&#x;Č­ ȑșȎČ?țȊȚ ČœČ?ČžČŽČ•ČœČš țȎ ȢȥČ›Č˜ȤČ–Č­ČŁ ČšČœČ’ČĄČ™Č­ hare ǟțȎ Č?ČœČ™ČĄČĽČŽ Č“Č ČŽČžČ‘ČĄČšČ“Č›Č ČŠ Č˜ČœČšČŽČ›Č’Č›ČœČ— Č&#x;Č ČžČœČ˜Č– Č–Č• ȚȎČ&#x;Č&#x;Č–Č?ČŽ {...} Č?ČŠČ?ČœČ’Č–Č Č&#x;ČœČœČ?ȧȓțȖȓ Č?ČœČ™ČŞČ•ČœČ?ČŽČ Č“Č™ČŹ Č“Č&#x;șȖ ČŤČ Čœ Č›Č“ČœČ?ČŁČœČ’Č–ČšČœ ČŽ Č•ČŽČ Č“Čš Č?ČŠ Č•ČŠČ?ČŽČ“Č Č˘ČĄČ›Č˜ȤČ–ČŹ hare.buildRoom() ǝȎȌȎ Č?ČžČœČ‘ČžČŽČšČšČŽ Č?ČœČĽ Č Č– Č–Č’Č“Č›Č Č–ČĽČ›ČŽ Č?ČžČœČ‘ČžČŽČšČšČ“ buildwall Č•ČŽ Č–Č&#x;Č˜Č™ČŹČĽČ“Č›Č–Č“Čš Č Čœ Č‘Čœ ČĽČ Čœ ȚȊ Č–Č&#x;Č?ČœČ™ČŞČ•ČĄČ“Čš ȢȥČ›Č˜ȤČ–ČŹ hare.buildRoom() Č?ȚȓČ&#x;Č Čœ hare.buildWall().

ēČěÄ&#x;Ä?Ä– ěĜĚÄ?ĜČĘĘħ *=14,?)44 Č Č&#x;Č ČŽČ›ČœČ?Č–Č? ȼȓȞȓČ?ČŽČŚČ˜ČĄ Č– Č?ČœČ™ČœČ”Č–Č? Č? Č“Č“ Č–Č›Č?Č“Č›Č ČŽČžČŞ Č?Č™ČœČ˜ČŽ Č˜ČŽČšČ“Č›Č›ČŠČŁ Č˜Č–ČžČ?Č–ČĽČ“Č— ȖșȖ șȏČ?ČŠČŁ ȒȞȥȑȖȣ Č&#x;Č ČžČœČ–Č Č“Č™ČŞČ›ČŠČŁ Č?Č™Čœ Č˜ČŽ ȧČ“Č™Č˜Č›Č– Č?Čœ țȓȗ Č?ȞȎČ?ČœČ— Č˜Č›ČœČ?Č˜ČœČ— ȚȊȌȖ ČĽČ ČœČ?ČŠ ČœČ Č˜ČžČŠČ ČŞ

226

ǹǚǎǰǎ


ȑȞȎȢȖȥȓȟȘȖȗ ȖțȠȓȞȢȓȗȟ ȅȠȜȏȩ ȝȜȟȚȜȠȞȓȠȪ ȘȎȘ ȥȓȞȓȝȎȦ ȘȎ ȟȠȞȜȖȠ ȘȜȚțȎȠȡ Ȗȕ ȝȭȠȖ ȏșȜȘȜȐ Ȑ ȒșȖțȡ ȦȓȟȠȖ ȏșȜȘȜȐ Ȑ ȦȖȞȖțȡ Ȗ ȥȓȠȩȞȓȣ ȏșȜȘȜȐ Ȑ ȐȩȟȜȠȡ Ȑ ȜȏȜșȜȥȘȓ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ȐȩȝȜșțȖ ȘȜȚȎțȒȡ buildroom 5 6 4. ǿ ȝȜȚȜȧȪȬ ȝȞȜȑȞȎȚȚ buildwall Ȗ buildroom Ƞȩ ȚȜ ȔȓȦȪ ȏȩȟȠȞȜ ȐȜȕȐȜȒȖȠȪ ȐȩȟȜȘȖȓ ȕȎȚȘȖ ȖșȖ ȒȞȡȑȖȓ ȟȠȞȡȘ ȠȡȞȩ țȓ ȡȘșȎȒȩȐȎȭ ȐȞȡȥțȡȬ țȖ ȜȒțȜȑȜ ȏșȜȘȎ Ȁȩ ȚȜȔȓȦȪ ȟȜȕȒȎȠȪ țȓȟȘȜșȪȘȜ ȥȓȞȓȝȎȦȓȘ ȕȎȝȡȟȘȎȬȧȖȣ șȖȏȜ ȝȞȜȑȞȎȚ Țȡ buildRoom șȖȏȜ buildWall Ȓșȭ ȟȜȐȚȓȟȠțȜȗ ȞȎȏȜȠȩ ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ

ˀ̛̭͘ ϭϮ͘ϳ͘ ˋ̡̛̖̬̖̪̹͕̌ ̨̛̭̯̬̺̖́ ̨̡̥͕̌̚ ̨̪̔ ̛̱̪̬̣̖̦̖̥̌̏ ̨̪̬̬̥̐̌​̥ buildwall ̛ buildroom

dzȟșȖ ȝȞȖ ȕȎȝȡȟȘȓ ȫȠȜȗ ȝȞȜȑȞȎȚȚȩ ȐȜȕțȖȘȎȬȠ ȜȦȖȏȘȖ ȠȧȎȠȓșȪțȜ ȟȞȎȐțȖ ȟȐȜȗ ȘȜȒ ȟ șȖȟȠȖțȑȜȚ Ȑ ȫȠȜȗ ȘțȖȑȓ ȥȠȜȏȩ țȎȗȠȖ ȐȜȕȚȜȔțȩȓ ȜȝȓȥȎȠȘȖ dzȟșȖ ȖȟȝȞȎȐȖȠȪ ȝȞȜȑȞȎȚȚȡ țȓ ȡȒȎȓȠȟȭ ȡȒȎșȖ ȢȎȗș ȐȩȝȜșțȖȐ ȘȜȚȎțȒȡ delete buildroom Ȏ ȕȎȠȓȚ ȕȎȑȞȡȕȖ ȓȓ ȟțȜȐȎ ȐȩȝȜșțȖȐ ȘȜȚȎțȒȡ pastebin get U0WVM4wg buildroom.

ǿȀǾǼǶȀdzǹȊǿȀǰǼ ǸǼǺǻǮȀ

227


ĐĚěĚėęĔĞđėĨęĚđ ēČĐČęĔđ" ĖĚĘęČĞČ Ď ĠĚĜĘđ ĖĜđĝĞČ

Попробуй создать программу, которая построит комнату в форме креста, а не прямоугольную, как показано на рис. 12.8. Такая программа будет похожа на buildroom, но будет включать двенадцать вызовов функции hare.buildWall() вместо четырех, а также нужно будет просчитать все повороты, которые должна совершить черепашка.

ˀ̛̭͘ ϭϮ͘ϴ͘ ˋ̡̖̬̖̪̹̌̌ ̨̨̛̪̭̯̬̣̌ ̡̨̥̦̯̱̌ ̏ ̴̨̬̥̖ ̡̬̖̭̯̌

ģĞĚ Ęħ ğēęČėĔ ȃȜȠȭ Ȑ ȫȠȜȗ ȑșȎȐȓ ȭ Ȗ țȓ ȜȏȨȭȟțȖș țȜȐȩȣ ȘȜțȤȓȝȤȖȗ ȝȞȜ ȑȞȎȚȚȖȞȜȐȎțȖȭ ȫȠȜ ȏȩșȎ ȣȜȞȜȦȎȭ ȝȞȎȘȠȖȘȎ ȝȜ ȞȎȕȞȎȏȜȠȘȓ ȎșȑȜȞȖȠȚȜȐ ȅȓȚ ȏȜșȪȦȓ ȖȒȓȗ Ȝ ȠȜȚ ȥȠȜ Ƞȩ ȣȜȥȓȦȪ ȝȜșȡ ȥȖȠȪ ȜȠ ȥȓȞȓȝȎȦȘȖ ȝȞȓȐȞȎȧȎȓȠȟȭ Ȑ ȘȜțȘȞȓȠțȩȓ ȜȝȖȟȎțȖȭ ȒȓȗȟȠȐȖȗ Ȓșȭ țȓȓ ȠȓȚ șȡȥȦȖȚ ȝȞȜȑȞȎȚȚȖȟȠȜȚ Ƞȩ ȟȠȎțȜ ȐȖȦȪȟȭ ǰ ȑșȎȐȓ Ƞȩ țȎȝȖȟȎș ȢȡțȘȤȖȬ Ȓșȭ ȝȜȟȠȞȜȗȘȖ ȟȠȓț Ȑ ȫȠȜȗ ȑșȎȐȓ ² ȢȡțȘȤȖȬ Ȓșȭ ȟȠȞȜȖȠȓșȪȟȠȐȎ ȘȜȚțȎȠ Ǯ Ȑ ȟșȓ ȒȡȬȧȓȗ ȑșȎȐȓ ȞȎȕȞȎȏȜȠȎȓȦȪ ȎșȑȜȞȖȠȚ ȝȜȟȠȞȜȓțȖȭ ȝȜșȜȐ Ȗ ȝȜȠȜșȘȜȐ


13 ĝĞĜĚĔĞđėĨĝĞĎĚ ěĚėČ Ĕ ěĚĞĚėĖČ ǸȜȚțȎȠȩ ȘȜȠȜȞȩȓ Țȩ ȝȜȟȠȞȜȖșȖ ȟ ȝȜȚȜȧȪȬ ȢȡțȘȤȖȖ buildRoom() Ȑ ȑșȎȐȓ ȘȞȓȝȘȖ țȜ țȓ ȕȎȧȖȧȎȬȠ ȜȠ ȒȜȔȒȭ ǰ ȫȠȜȗ ȑșȎȐȓ Țȩ țȎȝȖ ȦȓȚ ȢȡțȘȤȖȬ buildFloor() Ȓșȭ ȟȠȞȜȖȠȓșȪ ȟȠȐȎ ȝȜșȜȐ Ȗ ȝȜȠȜșȘȜȐ Ȏ ȠȎȘȔȓ ȞȎȕȞȎȏȜȠȎȓȚ ȝȞȜȑȞȎȚȚȡ EXLOGÀRRU Ȓșȭ ȐȩȕȜȐȎ ȫȠȜȗ ȢȡțȘȤȖȖ Dzșȭ ȟȠȞȜȖȠȓșȪȟȠȐȎ ȝȜșȎ Ȗ ȝȜȠȜșȘȎ ȏȡȒȓȠ ȖȟȝȜșȪȕȜ ȐȎȠȪȟȭ ȜȒțȎ Ȗ ȠȎ Ȕȓ ȢȡțȘȤȖȭ ȝȜȠȜȚȡ ȥȠȜ ȝȜȠȜșȜȘ ² ȫȠȜ ȐȟȓȑȜ șȖȦȪ ȝȜș ȝȜȟȠȞȜȓțțȩȗ ȟȐȓȞȣȡ ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ ǿȜȑșȎȟțȜ ȎșȑȜȞȖȠȚȡ ȟȜȕȒȎțȖȭ ȝȜșȜȐ ȥȓȞȓȝȎȦȘȎ ȏȡ ȒȓȠ ȝȓȞȓȚȓȧȎȠȪȟȭ ȐȒȜșȪ Ȗ ȝȜȝȓȞȓȘ ȝȞȭȚȜȡȑȜșȪțȜȗ ȜȏșȎ ȟȠȖ ȐȩȝȜșțȭȭ ȜȝȞȓȒȓșȓțțȩȓ ȒȓȗȟȠȐȖȭ Ȑ ȘȎȔȒȜȗ ȓȓ ȠȜȥȘȓ ǰ ȫȠȜȗ ȑșȎȐȓ ȥȓȞȓȝȎȦȘȎ ȏȡȒȓȠ ȞȎȕȚȓȧȎȠȪ ȏșȜȘȖ ȝȜ Ȑȟȓȗ ȝșȜȧȎȒȖ ȝȞȭȚȜȡȑȜșȪțȜȗ ȜȏșȎȟȠȖ țȜ ȫȠȜȠ ȎșȑȜȞȖȠȚ ȒȜȟȠȎ ȠȜȥțȜ ȑȖȏȜȘ ȥȠȜȏȩ ȐȩȝȜșțȭȠȪ Ȗ ȒȞȡȑȖȓ ȕȎȒȎȥȖ Ǹ ȝȞȖȚȓȞȡ Ȑ ȑșȎȐȓ Țȩ ȖȟȝȜșȪȕȡȓȚ ȫȠȜȠ ȎșȑȜȞȖȠȚ Ȓșȭ ȞȎȕȞȎȏȜȠȘȖ ȝȞȜȑȞȎȚȚȩ ȥȓȞȓȝȎȦȘȖ ȢȓȞȚȓȞȎ ȘȜȠȜȞȎȭ ȏȡȒȓȠ ȕȎȟȓȖȐȎȠȪ ȝȜșȭ ȝȞȭȚȜȡȑȜșȪțȜȗ ȢȜȞȚȩ ǶȟȝȜșȪȕȜȐȎțȖȓ ȑȖȏȘȖȣ ȎșȑȜ ȞȖȠȚȜȐ ȐȚȓȟȠȜ ȔȓȟȠȘȜ ȕȎȝȞȜȑȞȎȚȚȖȞȜȐȎțțȩȣ ȞȓȦȓțȖȗ ȝȜ ȕȐȜșȭȓȠ ȖȟȝȜșȪȕȜȐȎȠȪ ȜȒȖț Ȗ ȠȜȠ Ȕȓ ȘȜȒ Ȓșȭ ȞȓȦȓțȖȭ ȚțȜ ȔȓȟȠȐȎ ȕȎȒȎȥ

ǿȀǾǼǶȀdzǹȊǿȀǰǼ ǽǼǹǮ Ƕ ǽǼȀǼǹǸǮ

229


ˀ̛̭͘ ϭϯ͘ϭ͘ ʶ̨̔ ̣̔́ ̨̛̭̯̬̯̖̣̭̯̽̏̌ ̨̪̣̌ ̨̥̙̖̯ ̨̛̭̯̬̯̽ ̛ ̨̨̡̛̪̯̣

ěĜĚđĖĞĔĜĚĎČęĔđ ČėďĚĜĔĞĘČ ĎħĖėČĐħĎČęĔī ěđĜđĖĜħĞĔī ǽȜȟȠȞȜȓțȖȓ ȑȜȞȖȕȜțȠȎșȪțȜȗ ȝȜȐȓȞȣțȜȟȠȖ ȝȜȒȜȏțȜ ȟȠȞȜ ȖȠȓșȪȟȠȐȡ ȟȠȓțȩ țȜ ȐȚȓȟȠȜ ȠȜȑȜ ȥȠȜȏȩ ȒȐȖȑȎȠȪȟȭ ȐȐȓȞȣ ȝȜȟșȓ ȡȘșȎȒȘȖ ȞȭȒȎ ȟȠȞȜȘȖ ȏșȜȘȜȐ Ȓșȭ ȟȠȞȜȖȠȓșȪȟȠȐȎ ȟșȓȒȡȬȧȓȑȜ ȞȭȒȎ ȥȓȞȓȝȎȦȘȎ ȏȡȒȓȠ ȝȓȞȓȚȓȧȎȠȪȟȭ Ȑșȓ ȐȜ ȖșȖ ȐȝȞȎ ȐȜ ȝȓȞȓȣȜȒȭ Ș ȟșȓȒ ȡ ȬȧȓȚ ȡ Ȟȭ Ȓ ȡ ȟȠ Ȝșȏ Ȥȡ ǽȞȜȤȓȟȟ ȞȎȕȚȓȧȓțȖȭ ȏșȜȘȜȐ ȝȜșȎ ȝȜȠȜșȘȎ ȭ țȎȕȜȐȡ ȐȩȘșȎȒȩȐȎțȖȓȚ Ȏ ȐȩȟȠȞȎȖȐȎȓȚȡȬ ȑȜȞȖȕȜțȠȎșȪțȡȬ ȝȜ ȐȓȞȣțȜȟȠȪ ² ȝȓȞȓȘȞȩȠȖȓȚ. ǿȘȜțȟȠȞȡȖȞȡȓȚ ȢȡțȘȤȖȬ sweepField() ȘȜȠȜȞȎȭ ȏȡȒȓȠ ȝȞȖțȖȚȎȠȪ ȠȞȖ ȝȎȞȎȚȓȠȞȎ length width Ȗ sweepFunc. ǽȎȞȎȚȓȠȞȩ length Ȗ width ȏȡȒȡȠ ȜȝȞȓȒȓșȭȠȪ ȞȎȕȚȓȞ ȝȓȞȓ ȘȞȩȠȖȭ ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ ȍȕȩȘ ȝȞȜȑȞȎȚȚȖȞȜȐȎțȖȭ /XD ȒȜȝȡȟȘȎȓȠ ȖȟȝȜșȪȕȜȐȎțȖȓ ȢȡțȘȤȖȗ Ȑ ȐȖȒȓ ȝȎȞȎȚȓȠȞȜȐ ǽȎȞȎȚȓȠȞȡ sweepFunc ȏȡȒȓȠ ȝȓȞȓȒȎȐȎȠȪȟȭ ȢȡțȘȤȖȭ ȘȜȠȜȞȎȭ ȏȡȒȓȠ ȐȩȕȩȐȎȠȪȟȭ Ȑ ȘȎȔ ȒȜȗ ȝȜȕȖȤȖȖ ȝȓȞȓȘȞȩȠȖȭ ȑȒȓ ȝȜȠȞȓȏȡȓȠȟȭ ȐȩȝȜșțȓțȖȓ ȘȎ ȘȖȣ șȖȏȜ ȒȓȗȟȠȐȖȗ

230

DZǹǮǰǮ


ǸȜȑȒȎ ȢȡțȘȤȖȭ buildFloor() ȏȡȒȓȠ ȐȩȕȩȐȎȠȪ ȢȡțȘȤȖȬ sweepField() Ȓșȭ ȟȠȞȜȖȠȓșȪȟȠȐȎ ȝȓȞȓȘȞȩȠȖȭ ȠȜ Ȑ ȐȖȒȓ ȝȎȞȎȚȓȠȞȎ sweepFunc ȏȡȒȓȠ ȝȓȞȓȒȎțȎ ȢȡțȘȤȖȭ ȘȜȠȜȞȎȭ ȡȘșȎȒȩȐȎȓȠ ȏșȜȘȖ ȝȜȒ ȥȓȞȓȝȎȦȘȜȗ ȝȞȖ ȘȎȔȒȜȚ ȓȓ ȝȓȞȓȚȓ ȧȓțȖȖ ǰ ȘȎȥȓȟȠȐȓ ȕțȎȥȓțȖȗ ȝȎȞȎȚȓȠȞȜȐ ȚȜȔțȜ ȝȓȞȓȒȎȐȎȠȪ șȬȏȩȓ ȢȡțȘȤȖȖ ȠȎȘȖȚ ȜȏȞȎȕȜȚ ȢȡțȘȤȖȬ sweepField() ȚȜȔțȜ țȎȟȠȞȜȖȠȪ țȎ ȐȩȝȜșțȓțȖȓ șȬȏȩȣ ȒȓȗȟȠȐȖȗ ǻȜ ȝȜ ȟȘȜșȪȘȡ ȜȟțȜȐțȜȓ ȐțȖȚȎțȖȓ Ȑ ȫȠȜȗ ȑșȎȐȓ ȡȒȓșȭȓȠȟȭ ȟȜȕȒȎ țȖȬ ȝȓȞȓȘȞȩȠȖȗ Țȩ ȞȎȟȟȚȜȠȞȖȚ ȎșȑȜȞȖȠȚ ȝȞȜȑȞȎȚȚȩ EXLOGÀRRU ȘȜȠȜȞȎȭ ȏȡȒȓȠ ȟȠȞȜȖȠȪ ȖȚȓțțȜ ȝȓȞȓȘȞȩȠȖȭ ² ȝȜ șȩ Ȗ ȝȜȠȜșȘȖ

Длина Ширина

ˀ̛̭͘ ϭϯ͘Ϯ͘ ˁ̨̨̛̯̬̯̖̣̭̯̽̏ ̡̛̪̖̬̖̬̼̯́͗ ̪̬̥̖̯̬̌̌ length ʹ ̨̯̾ ̬̭̌​̨̛̭̯̦̖́ ̪̖̬̖̔ ̸̡̨̖̬̖̪̹̜͕̌ ̌ ̪̬̥̖̯̬̌̌ width ʹ ̨̯̾ ̬̭̌​̨̛̭̯̦̖́ ̭̪̬̌̏̌ ̨̯ ̸̡̛̖̬̖̪̹̌

ĝĞĜĚĔĞđėĨĝĞĎĚ ěđĜđĖĜħĞĔĕ ǽȞȜȑȞȎȚȚȎ EXLOG ÀRRU ȏȡȒȓȠ ȝȞȖțȖȚȎȠȪ ȒȐȎ ȎȞȑȡȚȓțȠȎ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ length Ȗ width ǸȎȘ ȡȝȜȚȖțȎșȜȟȪ ȞȎ țȓȓ ȫȠȖ ȎȞȑȡȚȓțȠȩ ȜȝȞȓȒȓșȭȬȠ ȞȎȕȚȓȞ țȎȦȓȑȜ ȝȓȞȓȘȞȩ ȠȖȭ

ǿȀǾǼǶȀdzǹȊǿȀǰǼ ǽǼǹǮ Ƕ ǽǼȀǼǹǸǮ

231


ǻȎ ȞȖȟ ȟȠȞȓșȘȜȗ ȟȐȓȞȣȡ ȐțȖȕ ȜȏȜȕțȎȥȓț ȝȡȠȪ ȘȜȠȜȞȩȗ ȝȞȜȒȓșȎȓȠ ȥȓȞȓȝȎȦȘȎ ȥȠȜȏȩ ȐȩșȜȔȖȠȪ ȝȓȞȓȘȞȩȠȖȓ ȞȎȕȚȓ ȞȜȚ ð ȏșȜȘȎ

ˀ̛̭͘ ϭϯ͘ϯ͘ ʿ̱̯͕̽ ̡̨̨̯̬̼̜ ̨̪̬̖̣̖̯̔̌ ̸̡̖̬̖̪̹͕̌̌ ̸̨̯̼̍ ̨̛̼̣̙̯̏̽ ̡̛̪̖̬̖̬̼̯̖ ̨̬̥̖̬̥̌̚ ϯ п ϰ ̨̡̣̍̌

ȅȠȜȏȩ ȝȜȟȠȞȜȖȠȪ ȝȓȞȓȘȞȩȠȖȓ ȥȓȞȓȝȎȦȘȎ ȟțȎȥȎșȎ ȒȐȖ ȔȓȠȟȭ ȐȝȓȞȓȒ ȐȒȜșȪ ȝȓȞȐȜȑȜ ȞȭȒȎ ȟȠȜșȏȤȎ ȓȟșȖ ȟȚȜȠȞȓȠȪ țȎ ȞȖȟȡțȜȘ ȝȜȚȓȧȎȭ ȝȜȒ ȟȓȏȭ ȘȎȚȓțȪ ȝȞȖ ȘȎȔȒȜȚ ȝȓȞȓȚȓ ȧȓțȖȖ Dzșȭ ȐȩȏȜȞȎ ȢȡțȘȤȖȖ ȘȜȠȜȞȎȭ ȏȡȒȓȠ ȝȞȜȖȕȐȜȒȖȠȪ ȠȞȓȏȡȓȚȩȓ ȒȓȗȟȠȐȖȭ ȖȟȝȜșȪȕȡȓȠȟȭ ȝȎȞȎȚȓȠȞ sweepFunc ȘȜȠȜȞȩȗ Țȩ ȞȎȟȟȚȜȠȞȖȚ ȏȜșȓȓ ȝȜȒȞȜȏțȜ Ȑ ȞȎȕȒȓșȓ «ǰȩȕȜȐ ȢȡțȘȤȖȖ sweepFunc()ª ȒȎșȓȓ Ȑ ȫȠȜȗ ȑșȎȐȓ ǽȜȘȎ ȝȞȜȟȠȜ ȕȎ ȝȜȚțȖ ȥȠȜ Ȑ ȫȠȜȠ ȝȎȞȎȚȓȠȞ ȝȓȞȓȒȎȓȠȟȭ ȢȡțȘȤȖȭ ȘȜȠȜȞȎȭ ȏȡȒȓȠ ȐȩȕȩȐȎȠȪȟȭ ȝȞȖ ȘȎȔȒȜȚ ȝȓȞȓȚȓȧȓțȖȖ ȥȓȞȓȝȎȦȘȖ Ȑ ȝȞȓȒȓșȎȣ ȟȠȞȜȭȧȓȑȜȟȭ ȝȓȞȓȘȞȩȠȖȭ ǰ ȝȞȜȑȞȎȚȚȓ buildÀRRU ȢȡțȘȤȖȭ ȝȓȞȓȒȎȐȎȓȚȎȭ ȝȎȞȎȚȓȠȞȡ sweepFunc ² ȫȠȜ selectAndPlaceDown() ȋȠȜ ȢȡțȘȤȖȭ ȚȜȒȡșȭ hare ȘȜȠȜȞȎȭ ȐȩȏȖȞȎȓȠ țȓȝȡȟȠȡȬ ȭȥȓȗȘȡ ȖțȐȓțȠȎȞȭ ȥȓȞȓȝȎȦȘȖ Ȗ ȡȟȠȎ țȎȐșȖȐȎȓȠ ȏșȜȘ Ȗȕ ȐȩȏȞȎțțȜȗ ȭȥȓȗȘȖ ȝȜȒ ȥȓȞȓȝȎȦȘȜȗ ȀȎȘ ȘȎȘ ȥȓȞȓȝȎȦȘȎ țȎȥȖțȎȓȠ ȒȐȖȔȓțȖȓ Ȑ șȓȐȜȚ țȖȔțȓȚ ȡȑșȡ ȓȟșȖ ȟȚȜȠȞȓȠȪ ȟȐȓȞȣȡ ȓȗ țȡȔțȜ ȟȜȐȓȞȦȖȠȪ length - 1 ȝȓȞȓȚȓȧȓțȖȗ ȐȒȜșȪ ȝȓȞȐȜȑȜ ȞȭȒȎ ȟȠȜșȏȤȎ ȥȠȜȏȩ ȒȜȟȠȖȑ țȡȠȪ ȝȜȟșȓȒțȓȑȜ ȏșȜȘȎ ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ

232

DZǹǮǰǮ


ˀ̛̭͘ ϭϯ͘ϰ͘ ʿ̨̭̣̖ length - 1 ̛̪̖̬̖̥̖̺̖̦̜ ̸̡̖̬̖̪̹̌̌ ̵̨̛̦̯̭̌̔́ ̦̌̔ ̨̛̪̭̣̖̦̥̔ ̨̡̨̣̥̍ ̨̨̪̖̬̏̐ ̬́̔̌ ;̶̨̭̯̣̍̌Ϳ

ȅȠȜȏȩ ȝȓȞȓȗȠȖ Ș ȟșȓȒȡȬȧȓȚȡ ȞȭȒȡ ȟȠȜșȏȤȡ ȥȓȞȓȝȎȦ ȘȎ ȒȜșȔțȎ ȝȜȐȓȞțȡȠȪ țȎȝȞȎȐȜ Ȗ ȝȓȞȓȒȐȖțȡȠȪȟȭ țȎ ȜȒțȡ ȝȜ ȕȖȤȖȬ Ȏ ȕȎȠȓȚ ȟțȜȐȎ ȝȜȐȓȞțȡȠȪ țȎȝȞȎȐȜ ȥȠȜȏȩ ȜȘȎȕȎȠȪȟȭ Ȑ ȝȜșȜȔȓțȖȖ ȝȜȘȎȕȎțțȜȚ țȎ ȞȖȟ ȟȝȞȎȐȎ

ˀ̛̭͘ ϭϯ͘ϱ͘ ˋ̡̖̬̖̪̹̌̌ ̸̨̨̛̪̬̖̯̭̏̌̏̌́ ̨̦̪̬͕̌̌̏ ̛̙̖̯̭̔̏́ ̪̖̬̖̏̔ ̛ ̨̭̦̏̌ ̸̨̨̛̪̬̖̯̭͕̏̌̏̌́ ̸̨̯̼̍ ̨̨̨̛̪̯̯̭̔̐̏̽́ ̡ ̨̨̛̪̭̯̬̖̦̀ ̨̭̣̖̱̺̖̔̀̐ ̬́̔̌ ;̶̨̭̯̣̍̌Ϳ

DzȎșȓȓ ȥȓȞȓȝȎȦȘȎ ȐȩȝȜșțȭȓȠ ȘȜȒ ȎțȎșȜȑȖȥțȩȗ ȖȟȝȜșȪ ȕȜȐȎțțȜȚȡ ȝȞȖ ȟȠȞȜȖȠȓșȪȟȠȐȓ ȝȓȞȐȜȑȜ ȞȭȒȎ ȟȠȜșȏȤȎ ǼțȎ ȝȓȞȓȚȓȧȎȓȠȟȭ ȐȝȓȞȓȒ length - 1 ȞȎȕ ȐȩȕȩȐȎȭ ȢȡțȘȤȖȬ selectAndPlaceDown() ȝȞȖ ȘȎȔȒȜȚ ȝȓȞȓȒȐȖȔȓțȖȖ ȥȠȜȏȩ ȡȟȠȎțȜȐȖȠȪ ȝȜȒ ȟȜȏȜȗ ȏșȜȘ ȀȎȘȖȚ ȜȏȞȎȕȜȚ ȐȩȟȠȞȎȖȐȎȓȠȟȭ ȒȐȎ ȞȭȒȎ ȟȠȜșȏȤȎ ȏșȜȘȜȐ ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ

ǿȀǾǼǶȀdzǹȊǿȀǰǼ ǽǼǹǮ Ƕ ǽǼȀǼǹǸǮ

233


ˀ̛̭͘ ϭϯ͘ϲ͘ ʿ̨̨̛̣̙̖̦̖ ̸̡̛̖̬̖̪̹̌ ̨̪̭̣̖ ̛̖̬̹̖̦̌̏́̚ ̨̛̭̯̬̯̖̣̭̯̽̏̌ ̨̨̨̯̬̏̐ ̬́̔̌ ;̶̨̭̯̣̍̌Ϳ

ȀȓȝȓȞȪ ȥȠȜȏȩ ȝȓȞȓȗȠȖ Ș ȟșȓȒȡȬȧȓȚȡ ȞȭȒȡ ȟȠȜșȏȤȡ ȥȓ ȞȓȝȎȦȘȎ ȒȜșȔțȎ ȝȜȐȓȞțȡȠȪ țȎșȓȐȜ ȝȓȞȓȒȐȖțȡȠȪȟȭ ȐȝȓȞȓȒ Ȗ ȟțȜȐȎ ȝȜȐȓȞțȡȠȪ țȎșȓȐȜ ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ

ˀ̛̭͘ ϭϯ͘ϳ͘ ʿ̨̭̣̖ ̨̨̯͕̐ ̡̡̌ ̨̨̪̭̯̬̖̦ ̨̨̯̬̜̏ ̬́̔ ;̶̨̭̯̣̖̍Ϳ͕ ̸̡̖̬̖̪̹̌̌ ̨̣̙̦̔̌ ̨̪̖̬̦̱̯̏̽ ̨̦̣̖͕̌̏ ̹̦̱̯̌̐̽ ̪̖̬̖͕̏̔ ̛ ̨̭̦̏̌ ̨̪̖̬̦̱̯̏̽ ̨̦̣̖̌̏

ȀȎȘ ȥȓȞȓȝȎȦȘȎ ȝȞȜȒȜșȔȎȓȠ ȒȐȖȑȎȠȪȟȭ ȐȝȓȞȓȒ Ȗ țȎȕȎȒ ȝȜ ȞȭȒȎȚ ȒȜ Ƞȓȣ ȝȜȞ ȝȜȘȎ ȘȜșȖȥȓȟȠȐȜ ȝȜȟȠȞȜȓțțȩȣ ȞȭȒȜȐ ȟȠȜșȏȤȜȐ țȓ ȟȠȎțȓȠ ȞȎȐțȩȚ ȕȎȒȎțțȜȗ ȦȖȞȖțȓ ȝȓȞȓȘȞȩ ȠȖȭ ǸȜȑȒȎ ȥȓȞȓȝȎȦȘȎ ȕȎȐȓȞȦȖȠ ȐȩȝȜșțȓțȖȓ ȫȠȜȗ ȥȎȟȠȖ ȎșȑȜȞȖȠȚȎ ȝȓȞȓȘȞȩȠȖȓ ȏȡȒȓȠ ȝȜȟȠȞȜȓțȜ țȜ ȞȎȏȜȠȎ ȓȧȓ țȓ ȏȡȒȓȠ ȕȎȘȜțȥȓțȎ ǽȜȟșȓ ȠȜȑȜ ȘȎȘ ȝȓȞȓȘȞȩȠȖȓ ȑȜȠȜȐȜ ȚȜȔțȜ ȏȩșȜ ȏȩ ȕȎȝȡȟȠȖȠȪ ȝȞȜȑȞȎȚȚȡ buildroom ȥȠȜȏȩ ȝȜȟȠȞȜȖȠȪ ȘȜȚțȎȠȡ ǻȜ Ȑ ȠȎȘȜȚ ȟșȡȥȎȓ țȎȚ țȡȔțȜ ȥȠȜȏȩ ȥȓȞȓȝȎȦȘȎ țȎȣȜȒȖșȎȟȪ Ȑ ȠȜȗ Ȕȓ ȝȜȕȖȤȖȖ Ȗ ȏȩșȎ ȜȞȖȓțȠȖȞȜȐȎțȎ Ȑ ȠȜȚ

234

DZǹǮǰǮ


Ȕȓ țȎȝȞȎȐșȓțȖȖ ȥȠȜ Ȗ ȝȞȖ țȎȥȎșȓ ȟȠȞȜȖȠȓșȪȟȠȐȎ ȝȓȞȓ ȘȞȩȠȖȭ ǰȜȕȐȞȎȧȓțȖȓ ȥȓȞȓȝȎȦȘȖ Ȑ ȖȟȣȜȒțȜȓ ȝȜșȜȔȓțȖȓ ȑȎȞȎțȠȖȞȡȓȠ ȥȠȜ ȟȠȓțȩ ȘȜȠȜȞȩȓ ȜțȎ ȝȜȟȠȞȜȖȠ ȝȞȖ ȝȜȚȜȧȖ ȝȞȜȑȞȎȚȚȩ buildroom ȏȡȒȡȠ ȠȜȥțȜ ȟȜȜȠȐȓȠȟȠȐȜȐȎȠȪ ȝȜ ȟȠȞȜȓțțȜȚȡ ȝȓȞȓȘȞȩȠȖȬ

ĎĚēĎĜČĞ Ė ĔĝġĚĐęĚĕ ěĚēĔĢĔĔ ǰȜȕȐȞȎȠ ȥȓȞȓȝȎȦȘȖ Ȑ ȖȟȣȜȒțȜȓ ȝȜșȜȔȓțȖȓ Ȗ țȎȝȞȎȐșȓțȖȓ ȟȜȜȠȐȓȠȟȠȐȡȬȧȖȓ țȎȥȎșȡ ȟȠȞȜȖȠȓșȪȟȠȐȎ ȐȜȕȚȜȔțȜ ȒȐȡȚȭ ȝȡȠȭȚȖ Ȑ ȕȎȐȖȟȖȚȜȟȠȖ ȜȠ ȠȜȑȜ Ȗȕ ȥȓȠțȜȑȜ ȖșȖ țȓȥȓȠțȜȑȜ ȘȜșȖȥȓȟȠȐȎ ȏșȜȘȜȐ ȟȜȟȠȎȐșȓțȎ ȦȖȞȖțȎ ȝȓȞȓȘȞȩȠȖȭ dzȟșȖ ȝȓȞȓȘȞȩȠȖȓ ȝȜ ȦȖȞȖțȓ ȟȜȟȠȜȖȠ Ȗȕ ȥȓȠțȜȑȜ ȘȜșȖȥȓ ȟȠȐȎ ȏșȜȘȜȐ ȥȓȞȓȝȎȦȘȎ ȏȡȒȓȠ țȎȣȜȒȖȠȪȟȭ Ȑ ȝȞȎȐȜȚ țȖȔțȓȚ ȡȑșȡ ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ

ˀ̛̭͘ ϭϯ͘ϴ͘ ˋ̡̖̬̖̪̹̌̌ ̵̨̛̦̯̭̌̔́ ̏ ̨̭̥̥̌ ̨̪̬̥̌̏ ̨̡̣̖̍ ̨̛̦̙̦̖̐ ̬́̔̌ ;̨̡̛̭̯̬Ϳ͕ ̛̖̭̣ ̡̛̪̖̬̖̬̼̯̖ ̨̪ ̛̛̹̬̦̖ ̨̨̛̭̭̯̯ ̛̚ ̸̨̨̖̯̦̐ ̸̡̨̛̣̖̭̯̏̌ ̨̡̨̣̍̏

ǸȞȎȟțȎȭ șȖțȖȭ țȎ ȞȖȟ ȝȜȘȎȕȩȐȎȓȠ ȝȡȠȪ ȘȜȠȜȞȩȗ ȒȜșȔțȎ ȟȜȐȓȞȦȖȠȪ ȥȓȞȓȝȎȦȘȎ ȥȠȜȏȩ ȐȓȞțȡȠȪȟȭ Ȑ ȖȟȣȜȒțȜȓ ȝȜșȜȔȓțȖȓ Ȗ ȝȜȐȓȞțȡȠȪȟȭ Ȑ ȖȟȣȜȒțȜȚ țȎȝȞȎȐșȓțȖȖ ǰ ȫȠȜȚ ȟșȡȥȎȓ ȥȓȞȓȝȎȦȘȎ ȒȜșȔțȎ 1. ȝȜȐȓȞțȡȠȪ țȎȝȞȎȐȜ

ǿȀǾǼǶȀdzǹȊǿȀǰǼ ǽǼǹǮ Ƕ ǽǼȀǼǹǸǮ

235


2. ȝȓȞȓȚȓȟȠȖȠȪȟȭ ȐȝȓȞȓȒ width - 1 ȞȎȕ 3. ȝȜȐȓȞțȡȠȪ țȎȝȞȎȐȜ ǼȒțȎȘȜ ȓȟșȖ ȝȓȞȓȘȞȩȠȖȓ ȝȜ ȦȖȞȖțȓ ȟȜȟȠȜȖȠ Ȗȕ țȓȥȓȠ țȜȑȜ ȘȜșȖȥȓȟȠȐȎ ȏșȜȘȜȐ ȥȓȞȓȝȎȦȘȎ ȕȎȘȎțȥȖȐȎȓȠ Ȑ ȐȓȞȣțȓȗ ȥȎȟȠȖ ȝȓȞȓȘȞȩȠȖȭ ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ

ˀ̛̭͘ ϭϯ͘ϵ͘ ˋ̡̖̬̖̪̹̌̌ ̵̨̛̦̯̭̌̔́ ̏ ̨̭̥̥̌ ̨̪̬̥̌̏ ̨̡̣̖̍ ̵̨̖̬̦̖̏̐ ̬́̔̌ ;̨̡̛̭̯̬Ϳ͕ ̛̖̭̣ ̡̛̪̖̬̖̬̼̯̖ ̨̪ ̛̛̹̬̦̖ ̨̨̛̭̭̯̯ ̛̚ ̸̨̨̦̖̖̯̦̐ ̸̡̨̛̣̖̭̯̏̌ ̨̡̨̣̍̏

ǸȞȎȟțȎȭ șȖțȖȭ țȎ ȞȖȟ ȝȜȘȎȕȩȐȎȓȠ ȝȡȠȪ ȘȜȠȜȞȩȗ ȒȜșȔțȎ ȟȜȐȓȞȦȖȠȪ ȥȓȞȓȝȎȦȘȎ ȥȠȜȏȩ ȐȓȞțȡȠȪȟȭ Ș ȖȟȣȜȒțȜ Țȡ ȝȜșȜȔȓțȖȬ Ȗ țȎȝȞȎȐșȓțȖȬ ǰ ȫȠȜȚ ȟșȡȥȎȓ ȥȓȞȓȝȎȦȘȎ ȒȜșȔțȎ 1. ȝȓȞȓȚȓȟȠȖȠȪȟȭ țȎȕȎȒ length - 1 ȞȎȕ 2. ȝȜȐȓȞțȡȠȪ țȎșȓȐȜ 3. ȝȓȞȓȚȓȟȠȖȠȪȟȭ ȐȝȓȞȓȒ width - 1 ȞȎȕ 4. ȝȜȐȓȞțȡȠȪ țȎȝȞȎȐȜ Ǯ ș ȑ ȜȞȖ Ƞ Ț ȐȜȕȐȞȎ ȧȓț Ȗȭ Ƞ ȩ ȕȎ șȜȔȖ Ȧ Ȫ Ȑ Ȣȡ ț ȘȤ Ȗ Ȭ sweepField() țȜ ȝȞȓȔȒȓ ȥȓȚ ȝȖȟȎȠȪ ȟȎȚȡ ȢȡțȘȤȖȬ țȡȔ țȜ ȝȜțȭȠȪ ȘȎȘ ȝȓȞȓȒȎȐȎȠȪ ȜȒțȡ ȢȡțȘȤȖȬ ȒȞȡȑȜȗ

236

DZǹǮǰǮ


ěđĜđĐČģČ ĚĐęĚĕ ĠğęĖĢĔĔ Ď ĐĜğďğĪ ȂȡțȘȤȖȖ buildWall() Ȗ buildRoom() ȘȜȠȜȞȩȓ Țȩ ȖȟȝȜșȪ ȕȜȐȎșȖ Ȑ ȑșȎȐȎȣ Ȗ țȎȟȠȞȎȖȐȎȓȚȩȓ Ȗ ȝȜȕȐȜșȭȬȠ ȟȠȞȜ ȖȠȪ ȟȠȓțȩ Ȗ ȘȜȚțȎȠȩ șȬȏȜȑȜ ȞȎȕȚȓȞȎ ȝȜȠȜȚȡ ȥȠȜ ȝȞȖțȖȚȎ ȬȠ ȝȎȞȎȚȓȠȞȩ ȒșȖțȩ ȦȖȞȖțȩ Ȗ ȐȩȟȜȠȩ ² length width Ȗ height ȋȠȖ ȝȎȞȎȚȓȠȞȩ ȝȜȕȐȜșȭȬȠ ȟȜȕȒȎȐȎȠȪ ȟȠȓțȩ Ȗ ȘȜȚ țȎȠȩ ȞȎȕțȩȣ ȞȎȕȚȓȞȜȐ ȏȓȕ ȖȕȚȓțȓțȖȭ ȖȟȣȜȒțȜȑȜ ȘȜȒȎ ǰ ȫȠȜȗ ȑșȎȐȓ Țȩ ȒȜȏȎȐȖȚ Ȑ ȚȜȒȡșȪ h a r e ȢȡțȘȤȖȬ sweepField() Ȗ țȎȝȖȦȓȚ ȝȞȜȑȞȎȚȚȡ buildFloor Ȓșȭ Ȑȩ ȕȜȐȎ ȒȎțțȜȗ ȢȡțȘȤȖȖ ǰ țȎȟȠȜȭȧȓȓ ȐȞȓȚȭ ȢȡțȘȤȖȭ sweepField() ȝȓȞȓȚȓȧȎȓȠ ȥȓȞȓȝȎȦȘȡ ȝȜ ȝȞȭȚȜȡȑȜșȪțȜȚȡ ȝȓȞȓ ȘȞȩȠȖȬ ȝȜȚȓȧȎȭ ȝȜȒ ȥȓȞȓȝȎȦȘȡ ȘȎȚȓțțȩȗ ȘȖȞȝȖȥ ȝȞȖ ȘȎȔȒȜȚ ȓȓ ȝȓȞȓȚȓȧȓțȖȖ ǻȜ ȢȡțȘȤȖȬ sweepField() ȚȜȔțȜ ȖȕȚȓțȖȠȪ ȠȎȘ ȥȠȜȏȩ ȥȓȞȓȝȎȦȘȎ ȝȓȞȓȚȓȧȎȭȟȪ ȝȜ ȝȞȭȚȜȡȑȜșȪțȜȗ ȢȓȞȚȓ ȟȎȔȎ șȎ ȟȓȚȓțȎ ȟȜȏȖȞȎșȎ ȝȦȓțȖȤȡ șȖȏȜ ȞȩșȎ ȝȜȒ ȟȜȏȜȗ ȝȞȭȚȜ ȡȑȜșȪțȩȓ ȦȎȣȠȩ ǸȜȒ ȘȜȠȜȞȩȗ ȝȓȞȓȚȓȧȎȓȠ ȥȓȞȓȝȎȦȘȡ ȝȜ ȦȎȏșȜțȡ ȐȩȘșȎȒȩȐȎțȖȭ ȜȟȠȎȓȠȟȭ țȓȖȕȚȓțțȩȚ țȜ Ȓȓȗ ȟȠȐȖȭ ȥȓȞȓȝȎȦȘȖ ȚȜȑȡȠ ȏȩȠȪ ȞȎȕșȖȥțȩȚȖ ȀȎȘȡȬ ȑȖȏȘȜȟȠȪ Ȑ țȎȟȠȞȜȗȘȓ ȢȡțȘȤȖȖ sweepField() ȜȏȓȟȝȓȥȖȐȎȓȠ ȝȎȞȎȚȓȠȞ sweepFunc Ȑ ȘȜȠȜȞȩȗ ȝȓȞȓȒȎȓȠȟȭ ȢȡțȘȤȖȭ ȜȝȞȓȒȓșȭȬȧȎȭ ȒȓȗȟȠȐȖȭ ȝȞȜȖȕȐȜȒȖȚȩȓ ȥȓȞȓ ȝȎȦȘȜȗ ȝȞȖ ȓȓ ȝȓȞȓȒȐȖȔȓțȖȖ ȝȜ ȝȞȭȚȜȡȑȜșȪțȜȚȡ ȝȜșȬ ǰ /XD Ƞȩ ȚȜȔȓȦȪ ȝȓȞȓȒȎȐȎȠȪ Ȑ ȐȖȒȓ ȎȞȑȡȚȓțȠȜȐ ȢȡțȘȤȖȖ ȠȎȘ Ȕȓ ȘȎȘ Ƞȩ ȝȓȞȓȒȎȐȎș ȢȡțȘȤȖȭȚ Ȥȓșȩȓ ȥȖȟșȎ ȖșȖ ȟȠȞȜȘȖ DzȎȐȎȗ Ȓșȭ ȝȞȖȚȓȞȎ ȟȜȕȒȎȒȖȚ ȝȞȜȟȠȡȬ ȝȞȜȑȞȎȚȚȡ ȘȜȠȜȞȎȭ ȝȓȞȓȒȎȓȠ ȢȡțȘȤȖȬ Ȑ ȐȖȒȓ ȝȎȞȎȚȓȠȞȎ ȒȞȡȑȜȗ ȢȡțȘȤȖȖ ǰ ȜȏȜșȜȥȘȓ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ȐȐȓȒȖ ȘȜȚȎțȒȡ edit announce Ȓșȭ ȟȜȕȒȎțȖȭ țȜȐȜȗ ȝȞȜȑȞȎȚȚȩ Ȗ ȐȐȓȒȖ ȟșȓȒȡȬȧȖȗ ȘȜȒ announce 1. function hello() 2. print('Hello there!') 3. end 4. 5. function goodbye() 6. print('Goodbye!')

ǿȀǾǼǶȀdzǹȊǿȀǰǼ ǽǼǹǮ Ƕ ǽǼȀǼǹǸǮ

237


7. end 8. 9. function announce(func) 10. print('About to call the function.') 11. func() 12. print('Function called.') 13. end 14. DQQRXQFH KHOOR ± ɩɨɫɥɟ ɢɦɟɧɢ KHOOR ɧɟɬ ɤɪɭɝɥɵɯ ɫɤɨɛɨɤ DQQRXQFH JRRGE\H ɩɨɫɥɟ ɢɦɟɧɢ JRRGE\H ɧɟɬ ɤɪɭɝɥɵɯ ɫɤɨɛɨɤ

ǿȜȣȞȎțȖ ȝȞȜȑȞȎȚȚȡ Ȗ ȐȩȗȒȖ Ȗȕ ȞȓȒȎȘȠȜȞȎ ȝȜȟșȓ ȐȐȜ ȒȎ Ȑȟȓȣ ȖțȟȠȞȡȘȤȖȗ Ȁȩ ȠȎȘȔȓ ȚȜȔȓȧȪ ȕȎȑȞȡȕȖȠȪ ȫȠȡ ȝȞȜ ȑȞȎȚȚȡ ȐȩȝȜșțȖȐ ȘȜȚȎțȒȡ pastebin get sML2CbZ3 announce. ǽȜȟșȓ ȕȎȝȡȟȘȎ ȫȠȜȗ ȝȞȜȑȞȎȚȚȩ Ȑ ȜȏȜșȜȥȘȓ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ Ƞȩ ȡȐȖȒȖȦȪ ȟȜȜȏȧȓțȖȓ > announce About to call the function. Hello there! Function called. About to call the function. Goodbye! Function called.

ȁ ȢȡțȘȤȖȖ announce() ȓȟȠȪ ȜȒȖț ȝȎȞȎȚȓȠȞ ² func. ǽȞȖ ȝȓȞȐȜȚ ȐȩȕȜȐȓ ȫȠȜȗ ȢȡțȘȤȖȖ Ȑ ȟȠȞȜȘȓ Ȑ ȘȎȥȓȟȠȐȓ ȎȞȑȡȚȓțȠȎ ȓȗ ȝȓȞȓȒȎȓȠȟȭ ȢȡțȘȤȖȭ hello() ȘȎȘ ȕțȎȥȓțȖȓ ȝȎȞȎȚȓȠȞȎ func ǼȏȞȎȠȖ ȐțȖȚȎțȖȓ ȥȠȜ ȟȘȜȏȘȖ Ȑ ȖȚȓțȖ ȝȓȞȓȒȎȐȎȓȚȜȗ ȢȡțȘȤȖȖ țȓ ȡȘȎȕȩȐȎȬȠȟȭ ǿȘȜȏȘȖ ȡȘȎȕȩȐȎ ȬȠ /XD ȥȠȜ ȟșȓȒȡȓȠ ©ȐȩȕȐȎȠȪ ȫȠȡ ȢȡțȘȤȖȬª țȜ ȓȟșȖ ȘȞȡȑ șȩȣ ȟȘȜȏȜȘ țȓȠ ȠȜ ȐȚȓȟȠȜ ȐȩȕȜȐȎ /XD ȝȓȞȓȒȎȓȠ ȢȡțȘȤȖȬ hello() ȝȎȞȎȚȓȠȞȡ func ȢȡțȘȤȖȖ announce() ȂȡțȘȤȖȭ hello() ȟȜȣȞȎțȭȓȠȟȭ Ȑ ȐȖȒȓ ȝȎȞȎȚȓȠȞȎ func ȠȜȥțȜ ȠȎȘ Ȕȓ ȘȎȘ ȟȜȣȞȎțȭșȖȟȪ ȏȩ ȤȓșȜȓ ȥȖȟșȜ ȖșȖ ȟȠȞȜȘȎ ǵȎȠȓȚ Ȑ ȟȠȞȜ Șȓ ȐȩȕȩȐȎȓȠȟȭ ȢȡțȘȤȖȭ func() ȝȜȟȘȜșȪȘȡ ȜțȎ ȖȚȓȓȠ ȘȞȡȑșȩȓ ȟȘȜȏȘȖ ǻȡ Ȗ ȝȜȟȘȜșȪȘȡ Ȑ ȘȎȥȓȟȠȐȓ ȕțȎȥȓțȖȭ ȝȎ ȞȎȚȓȠȞȎ func ȏȩșȜ ȝȓȞȓȒȎțȜ ȕțȎȥȓțȖȓ hello ȐȩȕȩȐȎȓȠȟȭ

238

DZǹǮǰǮ


ȢȡțȘȤȖȭ hello() Ȗ ȝȞȜȑȞȎȚȚȎ ȐȩȐȜȒȖȠ ȟȜȜȏȧȓțȖȓ Hello there!. ǵȎȠȓȚ Ȑ ȟȠȞȜȘȓ ȝȞȜȖȟȣȜȒȖȠ ȝȜȐȠȜȞțȩȗ ȐȩȕȜȐ ȢȡțȘ ȤȖȖ announce() țȜ țȎ ȫȠȜȠ ȞȎȕ ȝȎȞȎȚȓȠȞȡ func ȝȓȞȓȒȎȓȠȟȭ ȕțȎȥȓțȖȓ goodbye Ȏ ȕțȎȥȖȠ Ȑ ȟȠȞȜȘȓ ȐȩȕȩȐȎȓȠȟȭ ȢȡțȘ ȤȖȭ goodbye() Ȗ ȐȩȐȜȒȖȠȟȭ ȟȜȜȏȧȓțȖȓ Goodbye!. ǸȜȒ ȢȡțȘȤȖȖ announce() țȓ ȖȕȚȓțȭȓȠȟȭ ǽȞȜȟȠȜ Ȝț ȚȜ ȔȓȠ ȐȩȕȩȐȎȠȪ șȬȏȡȬ ȢȡțȘȤȖȬ ȝȓȞȓȒȎțțȡȬ ȝȎȞȎȚȓȠȞȡ func ǮțȎșȜȑȖȥțȜ ȢȡțȘȤȖȭ sweepField() ȘȜȠȜȞȡȬ Țȩ ȟȜȕȒȎȒȖȚ ȏȡȒȓȠ ȐȩȕȩȐȎȠȪ ȢȡțȘȤȖȬ ȝȓȞȓȒȎțțȡȬ ȝȎȞȎȚȓ ȠȞȡ sweepFunc ȂȡțȘȤȖȭ buildFloor() ȏȡȒȓȠ ȝȓȞȓȒȎȐȎȠȪ ȢȡțȘȤȖȬ hare.selectAndPlaceDown() Ȑ ȘȎȥȓȟȠȐȓ ȝȎȞȎȚȓ ȠȞȎ ȢȡțȘȤȖȖ sweepField() ȝȜȫȠȜȚȡ ȥȓȞȓȝȎȦȘȎ ȏȡȒȓȠ ȞȎȕ ȚȓȧȎȠȪ ȝȜȒ ȟȜȏȜȗ ȏșȜȘȖ ȝȓȞȓȚȓȧȎȭȟȪ ȝȜ ȝȞȭȚȜȡȑȜșȪțȜȚȡ ȝȓȞȓȘȞȩȠȖȬ

ĐĚĜČčĚĞĖČ ĘĚĐğėī 0):ǽȜȟȘȜșȪȘȡ ȢȡțȘȤȖȭ sweepField() ȝȜșȓȕțȎ Ȓșȭ ȚțȜȑȖȣ ȒȞȡȑȖȣ ȝȞȜȑȞȎȚȚ Țȩ ȝȜȚȓȟȠȖȚ ȓȓ Ȑ ȚȜȒȡșȪ hare ȘȜȠȜȞȩȗ țȎȥȎșȖ ȞȎȕȞȎȏȎȠȩȐȎȠȪ Ȑ ȑșȎȐȓ ȂȡțȘȤȖȭ buildFloor() ȘȜȠȜȞȡȬ Țȩ ȠȎȘȔȓ ȒȜȏȎȐȖȚ Ȑ ȫȠȜȠ ȚȜȒȡșȪ ȏȡȒȓȠ ȐȩȕȩȐȎȠȪ ȢȡțȘȤȖȬ sweepField() ǰ ȜȏȜșȜȥȘȓ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ Ȑȩ ȝȜșțȖ ȘȜȚȎțȒȡ edit hare ǽȓȞȓȚȓȟȠȖ ȘȡȞȟȜȞ Ȑ țȖȔțȬȬ ȥȎȟȠȪ ȢȎȗșȎ Ȗ ȝȞȜȒȜșȔȖ ȘȜȒ ȐȐȓȒȭ ȟșȓȒȡȬȧȓȓ hare 134. 135. 136. 137. 138. 139. 140. 141. 142. 143. 144.

...ɩɪɨɩɭɫɤ... -- sweepField() ɩɟɪɟɦɟɳɚɟɬɫɹ ɩɨ –- ɫɬɪɨɤɚɦ ɢ ɫɬɨɥɛɰɚɦ ɨɛɥɚɫɬɢ ɫɩɟɪɟɞɢ -- ɢ ɫɩɪɚɜɚ ɨɬ ɱɟɪɟɩɚɲɤɢ ɨɛɪɚɳɚɹɫɶ ɤ -- ɩɚɪɚɦɟɬɪɭ sweepFunc ɜ ɤɚɠɞɨɣ ɩɨɡɢɰɢɢ function sweepField(length, width, sweepFunc) local turnRightNext = true for x = 1, width do for y = 1, length do sweepFunc()

ǿȀǾǼǶȀdzǹȊǿȀǰǼ ǽǼǹǮ Ƕ ǽǼȀǼǹǸǮ

239


145. -- ɧɟ ɩɟɪɟɦɟɳɚɬɶɫɹ ɜɩɟɪɟɞ ɜ ɩɨɫɥɟɞɧɟɣ ɫɬɪɨɤɟ 146. if y ~= length then 147. turtle.forward() 148. end 149. end 150. 151. -- ɧɟ ɩɨɜɨɪɚɱɢɜɚɬɶɫɹ ɜ ɩɨɫɥɟɞɧɟɦ ɫɬɨɥɛɰɟ 152. if x ~= width then 153. -- ɩɟɪɟɯɨɞ ɤ ɫɥɟɞɭɸɳɟɦɭ ɫɬɨɥɛɰɭ 154. if turnRightNext then 155. turtle.turnRight() 156. turtle.forward() 157. turtle.turnRight() 158. else 159. turtle.turnLeft() 160. turtle.forward() 161. turtle.turnLeft() 162. end 163. 164. turnRightNext = not turnRightNext 165. end 166. end 167. 168. -- ɜɨɡɜɪɚɳɟɧɢɟ ɤ ɢɫɯɨɞɧɨɣ ɩɨɡɢɰɢɢ 169. if width % 2 == 0 then 170. turtle.turnRight() 171. else 172. for y = 1, length - 1 do 173. turtle.back() 174. end 175. turtle.turnLeft() 176. end 177. 178. for x = 1, width - 1 do 179. turtle.forward() 180. end 181. turtle.turnRight() 182. 183. return true 184. end 185.

240

DZǹǮǰǮ


186. 187. 188. 189. 190. 191. 192. 193. 194. 195. 196. 197.

-- buildFloor() ÉœɾɤɼÉšÉžÉľÉœÉšÉ&#x;ÉŹ -- ɊɪɚɌɨɭÉ?ɨɼɜɧɨÉ&#x; ÉŠÉ&#x;ÉŞÉ&#x;ɤɪɾɏɢÉ&#x; -- ɢɥ É›ɼɨɤɨÉœ Éœ ɢɧÉœÉ&#x;ɧɏɚɪÉ&#x; function buildFloor(length, width) if countInventory() < length * width then return false -- ɧÉ&#x;ÉžɨɍɏÉšɏɨɹɧɨ É›ɼɨɤɨÉœ end turtle.up() sweepField(length, width, selectAndPlaceDown) end

ÇżČœČŁČžČŽČ›Č– Č?ČžČœČ‘ČžČŽČšČšČĄ Č– Č?ČŠČ—Č’Č– Č–Č• ČžČ“Č’ČŽČ˜Č ČœČžČŽ Č?ČœČ&#x;șȓ Č?Č?ČœČ’ČŽ Č?Č&#x;Č“ČŁ Č–Č›Č&#x;Č ČžČĄČ˜ȤČ–Č— ȀȊ Č ČŽČ˜Č”Č“ ČšČœČ”Č“ČŚČŞ Č&#x;Č˜ČŽČĽČŽČ ČŞ ČŤČ ČœČ ČšČœČ’ČĄČ™ČŞ Č?ČŠČ?ČœČ™Č›Č–Č? Č˜ČœČšČŽČ›Č’ČĄ pastebin get wwzvaKuW hare.

ÄŽħēĚĎ Ä Ä&#x;ęĖĢĔĔ ;?--8.=6+ DzČŽČ?ČŽČ— ȞȎČ&#x;Č&#x;ČšČœČ ČžČ–Čš Č›ČœČ?ČŠČ“ ȢȥČ›Č˜ȤČ–Č– Č? ČšČœČ’ČĄČ™Č“ hare Č– țȎȼțȓȚ Č&#x; sweepField() Č‹Č ČŽ ȢȥČ›Č˜ȤČ–Č­ Č?ȓȞȓȚȓȧČŽČ“Č ČĽČ“ČžČ“Č?ČŽČŚČ˜ČĄ Č?Čœ Č?Č&#x;ȓȚȥ Č?ČŠČ˜Č™ČŽČ’ČŠČ?ČŽČ“ČšČœČšČĄ Č?Č“ČžČ“Č˜ČžČŠČ Č–ČŹ Č?ČŠČ•ČŠČ?ČŽČ­ ȢȥČ›Č˜ȤČ–ČŹ Č?ȓȞȓȒȎțțȥȏ Č? Č?Č–Č’Č“ Č?ČŽČžČŽČšČ“Č ČžČŽ Ç˝ČŽČžČŽČšČ“Č ČžČŠ length Č– width ČĄČ˜ČŽČ•ČŠČ?ČŽČŹČ Č˘ČĄČ›Č˜ȤČ–Č– sweepField() Č&#x;Č˜ČœČ™ČŞČ˜Čœ Č&#x;Č ČžČœČ˜ Č– Č&#x;Č ČœČ™Č? ȤČœČ? Č&#x;ČœČ&#x;Č ČŽČ?Č™Č­Č“Č Č?Č“ČžČ“Č˜ČžČŠČ Č–Č“ Č…Č ČœČ?ČŠ ȢȥČ›Č˜ȤČ–Č­ sweepField() Č’Č“Č—Č&#x;Č Č?ČœČ?ȎșȎ țȎ Č?Č&#x;Č“Čš Č•ČŽČ’ČŽČ›Č›ČœČš Č?ČžČœČ&#x;Č ČžČŽČ›Č&#x;Č Č?Č“ ȚȊ Č–Č&#x;Č?ČœČ™ČŞČ•ČĄČ“Čš ČœČ’Č–Č› ȤČ–Č˜Č™ Ȓșȭ Č?ČžČœČŁČœČ’ČŽ Č?Čœ Č&#x;Č ČœČ™Č?ȤČŽČš ČŽ Č’ČžČĄČ‘ČœČ— ² Ȓșȭ Č?ČžČœČŁČœČ’ČŽ Č?Čœ Č&#x;Č ČžČœČ˜ČŽČš hare 134. -- sweepField() ÉŠÉ&#x;ÉŞÉ&#x;ÉŚÉ&#x;ɳɚÉ&#x;ÉŹÉŤÉš Ɋɨ É?ɨɪɢɥɨɧɏÉšɼɜɧɾɌ 135. -- ɢ ÉœÉ&#x;ɪɏɢɤÉšɼɜɧɾɌ ɪɚɞɚɌ ÉŤÉŠÉ&#x;ÉŞÉ&#x;Éžɢ ɢ ÉŤÉŠÉŞÉšÉœÉš ɨɏ ÉąÉ&#x;ÉŞÉ&#x;ÉŠÉšɲɤɢ 136. -- to the right of the turtle, calling 137. -- ɨɛɪɚɳɚɚɍɜ ɤ ɊɚɪɚɌÉ&#x;ÉŹÉŞÉ­ sweepFunc Éœ ɤÉšÉ Éžɨɣ Ɋɨɥɢɰɢɢ 138. function sweepField(length, width, sweepFunc) 139. local turnRightNext = true 140. 141. for x = 1, width do 142. for y = 1, length do 143. sweepFunc()

ǿȀǞǟǜČ€dzǚȊǿȀǰǟ ǽǟǚǎ Çś ǽǟČ€ǟǚǸǎ

241


ǰ ȘȜțȤȓ ȘȎȔȒȜȑȜ ȟȠȜșȏȤȎ ȥȓȞȓȝȎȦȘȎ ȥȓȞȓȒȡȓȠ ȝȜȐȜȞȜȠ țȎȝȞȎȐȜ Ȗ țȎșȓȐȜ ȝȜȫȠȜȚȡ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȖȕțȎȥȎșȪțȜ ȝȞȖȟȐȎȖȐȎȓȠ ȝȓȞȓȚȓțțȜȗ turnRightNext ȕțȎȥȓțȖȓ true. DzȎșȓȓ ȟșȓȒȡȬȠ ȒȐȎ ȐșȜȔȓțțȩȣ ȤȖȘșȎ ȝȜȕȐȜșȭȬȧȖȓ ȜȠȟșȓȒȖȠȪ Ȑ ȘȎȘȜȚ ȟȠȜșȏȤȓ Ȗ Ȑ ȘȎȘȜȗ ȟȠȞȜȘȓ țȎȣȜȒȖȠȟȭ ȥȓȞȓȝȎȦȘȎ ǽȓȞȓȚȓțțȎȭ x ȜȠȟșȓȔȖȐȎȓȠ ȟȠȜșȏȤȩ Ȏ ȝȓȞȓ ȚȓțțȎȭ y ² ȟȠȞȜȘȖ ǸȜȑȒȎ ȕțȎȥȓțȖȓ ȝȓȞȓȚȓțțȜȗ y ȞȎȐțȜ ȕțȎȥȓțȖȬ le ng t h ȥȓȞȓȝȎȦȘȎ țȎȣȜȒȖȠȟȭ Ȑ ȝȜȟșȓȒțȓȗ ȟȠȞȜȘȓ ȠȓȘȡȧȓȑȜ ȟȠȜșȏȤȎ ǸȜȑȒȎ ȕțȎȥȓțȖȓ ȝȓȞȓȚȓțțȜȗ x ȞȎȐțȜ ȕțȎȥȓțȖȬ width ȥȓȞȓȝȎȦȘȎ țȎȣȜȒȖȠȟȭ Ȑ ȝȜȟșȓȒțȓȚ ȟȠȜșȏȤȓ ȠȓȘȡȧȓȗ ȟȠȞȜȘȖ ǻȎ ȞȖȟ ȝȜȘȎȕȎțȩ ȕțȎȥȓțȖȭ ȝȓȞȓȚȓțțȩȣ x Ȗ y Ȓșȭ Ȑȟȓȣ ȏșȜȘȜȐ Ȗȕ ȘȜȠȜȞȩȣ ȥȓȞȓȝȎȦȘȎ ȟȠȞȜȖȠ ȝȓȞȓȘȞȩȠȖȓ ǼȏȞȎȠȖ ȐțȖȚȎțȖȓ ȥȠȜ ȕțȎȥȓțȖȭ ȝȓȞȓ ȚȓțțȜȗ y țȎȥȖțȎȬȠȟȭ ȟ 1 ȟ ȜȏȓȖȣ ȟȠȜȞȜț ȝȜȠȜȚȡ ȥȠȜ ȥȓȞȓ ȝȎȦȘȎ ȥȓȞȓȒȡȓȠ ȒȐȖȔȓțȖȓ ȐȐȓȞȣ Ȗ ȐțȖȕ ȝȞȖ ȝȓȞȓȚȓȧȓțȖȖ ȝȜ ȟȠȜșȏȤȎȚ x=1 y=3

x=2 y=1

x=3 y=3

x=4 y=1

x=1 y=2

x=2 y=2

x=3 y=2

x=4 y=2

x=1 y=1

x=2 y=3

x=3 y=1

x=4 y=3

ˀ̛̭͘ ϭϯ͘ϭϬ͘ ʿ̱̯͕̽ ̨̪ ̡̨̨̨̯̬̥̱ ̛̙̖̯̭̔̏́ ̸̡̖̬̖̪̹͕̌̌ ̡̨̐̔̌ ̨̦̌ ̡̼̣̼̖̯̏̌̔̏̌ ̡̛̪̖̬̖̬̼̯̖ ;̭̣̖̏̌Ϳ͕ ̛ ̸̛̦̖̦̌́̚ ̪̖̬̖̥̖̦​̵̦̼ x ̛ y ̡̨̨̙̌̔̐ ̨̡̣̍̌ ;̭̪̬̌̏̌Ϳ

ǰțȡȠȞȖ ȐșȜȔȓțțȜȑȜ ȤȖȘșȎ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȐȩȕȩȐȎȓȠ ȢȡțȘȤȖȬ sweepFunc() ǻȎȝȜȚțȬ ȥȠȜ sweepFunc ² ȫȠȜ ȝȎ ȞȎȚȓȠȞ Ȏ țȓ ȖȚȭ ȢȡțȘȤȖȖ ǰ țȎȦȓȗ ȝȞȜȑȞȎȚȚȓ țȓȠ ȢȡțȘ ȤȖȖ sweepFunc() ȝȜȫȠȜȚȡ ȥȠȜȏȩ ȜȝȞȓȒȓșȖȠȪ ȢȡțȘȤȖȬ ȟ ȠȎȘȖȚ ȖȚȓțȓȚ țȎȒȜ ȝȓȞȓȒȎȠȪ ȘȎȘȡȬ șȖȏȜ ȢȡțȘȤȖȬ ȝȎȞȎ ȚȓȠȞȡ sweepFunc ȀȎȘȖȚ ȜȏȞȎȕȜȚ Ȑ sweepField() ȚȜȔȓȠ ȏȩȠȪ ȝȓȞȓȒȎțȎ șȬȏȎȭ ȢȡțȘȤȖȭ ȘȜȠȜȞȎȭ Ȗ ȏȡȒȓȠ ȐȩȕȩȐȎȠȪ ȟȭ Ȑ ȟȠȞȜȘȓ ȘȎȘ sweepFunc().

242

DZǹǮǰǮ


ěđĜđĘđĥđęĔđ ěĚ ĝĞĜĚĖČĘ Ĕ ĝĞĚėčĢČĘ ǽȜȟșȓ ȐȩȕȜȐȎ ȢȡțȘȤȖȖ sweepFunc() ȥȓȞȓȝȎȦȘȓ țȡȔțȜ ȝȞȜȗȠȖ Ș ȝȜȕȖȤȖȖ ȟșȓȒȡȬȧȓȑȜ ȐȩȘșȎȒȩȐȎȓȚȜȑȜ ȏșȜȘȎ ǰțȡȠȞȓțțȖȗ ȤȖȘș for țȎȥȖțȎȬȧȖȗȟȭ Ȑ ȟȠȞȜȘȓ ȏȡȒȓȠ ȟȜȐȓȞȦȎȠȪ ȖȠȓȞȎȤȖȖ ȝȜ ȝȓȞȓȚȓțțȜȗ y ȜȠ 1 ȒȜ length ȅȓȞȓ ȝȎȦȘȓ țȡȔțȜ ȝȓȞȓȚȓȧȎȠȪȟȭ ȐȐȓȞȣ ȖșȖ ȐțȖȕ ȝȜ length - 1 ȟȠȞȜȘȓ Ȑ ȘȎȔȒȜȚ ȟȠȜșȏȤȓ ȀȎȘȖȚ ȜȏȞȎȕȜȚ Ȑ ȟȠȞȜȘȎȣ ² ȏȡȒȓȠ ȝȞȜȖȟȣȜȒȖȠȪ ȐȩȕȜȐ ȢȡțȘȤȖȖ turtle.forward() ȝȞȖ ȘȎȔȒȜȗ ȖȠȓȞȎȤȖȖ ȤȖȘșȎ for ȕȎ ȖȟȘșȬȥȓțȖȓȚ ȝȜȟșȓȒ țȓȗ ȘȜȑȒȎ ȕțȎȥȓțȖȓ ȝȓȞȓȚȓțțȜȗ y ȞȎȐțȜ length hare 145. 146. 147. 148. 149.

-- ɧɟ ɩɟɪɟɦɟɳɚɬɶɫɹ ɜɩɟɪɟɞ ɜ ɩɨɫɥɟɞɧɟɣ ɫɬɪɨɤɟ if y ~= length then turtle.forward() end end

ǸȜȑȒȎ ȖȟȝȜșțȓțȖȓ ȒȜȟȠȖȑȎȓȠ ȟȠȞȜȘȖ ȤȖȘș for ȘȜ ȠȜȞȩȗ țȎȥȎșȟȭ Ȑ ȟȠȞȜȘȓ ȕȎȐȓȞȦȎȓȠȟȭ Ȏ ȥȓȞȓȝȎȦȘȎ țȎ ȣȜȒȖȠȟȭ Ȑ ȝȜȟșȓȒțȓȗ ȟȠȞȜȘȓ ȠȓȘȡȧȓȑȜ ȟȠȜșȏȤȎ dzȟșȖ ȥȓȞȓ ȝȎȦȘȎ ȓȧȓ țȓ ȒȜȟȠȖȑșȎ ȝȜȟșȓȒțȓȑȜ ȟȠȜșȏȤȎ ȫȠȜ ȠȎȘ ȓȟșȖ ȕțȎȥȓțȖȓ ȝȓȞȓȚȓțțȜȗ x țȓ ȞȎȐțȜ ȕțȎȥȓțȖȬ width ȓȗ țȡȔ țȜ ȝȓȞȓȚȓȟȠȖȠȪȟȭ Ȑ ȟșȓȒȡȬȧȖȗ ȟȠȜșȏȓȤ ǻȎȝȞȎȐșȓțȖȓ Ȑ ȘȜȠȜȞȜȚ ȥȓȞȓȝȎȦȘȎ ȒȜșȔțȎ ȝȜȐȓȞțȡȠȪ ȥȠȜȏȩ ȝȓȞȓȗȠȖ Ș ȟșȓȒȡȬȧȓȚȡ ȟȠȜșȏȤȡ ȕȎȐȖȟȖȠ ȜȠ ȠȜȑȜ ȘȎ ȘȜȓ ȕțȎȥȓțȖȓ ȝȞȖȟȐȜȓțȜ ȝȓȞȓȚȓțțȜȗ turnRightNext true ȖșȖ false ǿȚ ȞȖȟ Ȗ ȥȠȜȏȩ ȝȜțȭȠȪ ȘȡȒȎ ȒȜșȔțȎ ȝȜȐȜȞȎȥȖȐȎȠȪ ȥȓȞȓȝȎȦȘȎ dzȟșȖ ȝȓȞȓȚȓțțȜȗ turnRightNext ȝȞȖȟȐȜȓțȜ ȕțȎȥȓțȖȓ true Ȑ ȟȠȞȜȘȎȣ ² ȝȞȜȖȟ ȣȜȒȖȠ ȝȜȐȜȞȜȠ ȥȓȞȓȝȎȦȘȖ țȎȝȞȎȐȜ ȝȓȞȓȚȓȧȓțȖȓ ȐȝȓȞȓȒ Ȗ ȟțȜȐȎ ȝȜȐȜȞȜȠ țȎȝȞȎȐȜ dzȟșȖ ȝȓȞȓȚȓțțȜȗ turnRightNext ȝȞȖȟȐȜȓțȜ ȕțȎȥȓțȖȓ false Ȑ ȟȠȞȜȘȎȣ ² ȥȓȞȓȝȎȦȘȎ ȝȜȐȜȞȎȥȖȐȎȓȠ țȎșȓȐȜ ȝȞȜȒȐȖȑȎȓȠȟȭ ȐȝȓȞȓȒ Ȗ ȜȝȭȠȪ ȝȜȐȜȞȎ ȥȖȐȎȓȠ țȎșȓȐȜ ǰ ȜȏȜȖȣ ȟșȡȥȎȭȣ ȥȓȞȓȝȎȦȘȎ ȜȘȎȕȩȐȎȓȠȟȭ Ȑ țȎȥȎșȓ ȟșȓȒȡȬȧȓȑȜ ȟȠȜșȏȤȎ

ǿȀǾǼǶȀdzǹȊǿȀǰǼ ǽǼǹǮ Ƕ ǽǼȀǼǹǸǮ

243


hare 151. 152. 153. 154. 155. 156. 157. 158. 159. 160. 161. 162. 163. 164. 165. 166.

-- ɧɟ ɩɨɜɨɪɚɱɢɜɚɬɶɫɹ ɜ ɩɨɫɥɟɞɧɟɦ ɫɬɨɥɛɰɟ if x ~= width then -- ɩɟɪɟɯɨɞ ɤ ɫɥɟɞɭɸɳɟɦɭ ɫɬɨɥɛɰɭ if turnRightNext then turtle.turnRight() turtle.forward() turtle.turnRight() else turtle.turnLeft() turtle.forward() turtle.turnLeft() end turnRightNext = not turnRightNext end end

ǰȟȭȘȖȗ ȞȎȕ ȘȜȑȒȎ ȥȓȞȓȝȎȦȘȎ ȝȓȞȓȣȜȒȖȠ Ș ȟșȓȒȡȬȧȓȚȡ ȟȠȜșȏȤȡ ȜțȎ ȒȜșȔțȎ ȖȕȚȓțȖȠȪ țȎȝȞȎȐșȓțȖȓ ȝȜȐȜȞȜȠȎ ȝȜ ȫȠȜȚȡ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȝȓȞȓȘșȬȥȎȓȠ șȜȑȖȥȓȟȘȜȓ ȕțȎȥȓțȖȓ ȝȓȞȓȚȓțțȜȗ turnRightNext ǶțȟȠȞȡȘȤȖȭ end Ȑ ȟȠȞȜȘȓ ȕȎȐȓȞȦȎȓȠ ȘȜțȟȠȞȡȘȤȖȬ if țȎȥȎȐȦȡȬȟȭ Ȑ ȟȠȞȜȘȓ Ȏ Ȗț ȟȠȞȡȘȤȖȭ end Ȑ ȟȠȞȜȘȓ 166 ȕȎȐȓȞȦȎȓȠ ȤȖȘș for țȎȥȎȐȦȖȗ ȟȭ Ȑ ȟȠȞȜȘȓ dzȟșȖ ȖȟȝȜșțȓțȖȓ ȝȞȜȑȞȎȚȚȩ ȒȜȟȠȖȑșȜ ȟȠȞȜ ȘȖ ȕțȎȥȖȠ ȥȓȞȓȝȎȦȘȎ ȝȞȜȦșȎ Ȑȟȓ ȝȓȞȓȘȞȩȠȖȓ Ȗ ȑȜȠȜȐȎ ȐȓȞțȡȠȪȟȭ țȎ ȖȟȣȜȒțȡȬ ȝȜȕȖȤȖȬ

ĚěĜđĐđėđęĔđ ģđĞęĚĝĞĔ ģĔĝėČ ĝ ěĚĘĚĥĨĪ ĚěđĜČĞĚĜČ ĐđėđęĔī ěĚ ĘĚĐğėĪ ǰȓȞțȡȠȪ ȥȓȞȓȝȎȦȘȡ țȎ ȖȟȣȜȒțȡȬ ȝȜȕȖȤȖȬ ȝȜȟșȓ ȠȜȑȜ ȘȎȘ ȜțȎ ȕȎȘȜțȥȖȠ ȐȩȘșȎȒȩȐȎȠȪ ȝȓȞȓȘȞȩȠȖȓ ȚȜȔțȜ ȒȐȡȚȭ ȝȡ ȠȭȚȖ ǻȎȝȜȚțȬ ȥȠȜ ȫȠȖ ȝȡȠȖ ȏȩșȖ ȝȜȘȎȕȎțȩ țȎ ȞȖȟ Ȗ Ȗ ȥȠȜ ȝȡȠȪ ȘȜȠȜȞȩȗ ȒȜșȔțȎ ȟȜȐȓȞȦȖȠȪ ȥȓȞȓȝȎȦȘȎ ȕȎȐȖȟȖȠ ȜȠ ȘȜșȖȥȓȟȠȐȎ ȏșȜȘȜȐ ȝȜ ȦȖȞȖțȓ ȝȓȞȓȘȞȩȠȖȭ ² ȥȓȠ țȜȓ ȜțȜ ȖșȖ țȓȥȓȠțȜȓ ȅȠȜȏȩ ȜȝȞȓȒȓșȖȠȪ ȥȓȠțȜȓ ȖșȖ țȓȥȓȠ țȜȓ ȒȎțțȜȓ ȕțȎȥȓțȖȓ țȡȔțȜ ȝȞȜȐȓȞȖȠȪ ȒȓșȖȠȟȭ șȖ ȜțȜ țȎ ȏȓȕ ȜȟȠȎȠȘȎ dzȟșȖ ȒȎ ȠȜ ȥȖȟșȜ ȥȓȠțȜȓ dzȟșȖ Ȕȓ ȒȓșȓțȖȓ țȎ ȒȎȓȠ Ȑ ȜȟȠȎȠȘȓ ² ȥȖȟșȜ țȓȥȓȠțȜȓ

244

DZǹǮǰǮ


ǽȜȫȠȜȚȡ ȥȠȜȏȩ ȜȝȞȓȒȓșȖȠȪ ȥȓȠțȜȓ ȖșȖ țȓȥȓȠțȜȓ ȒȎț țȜȓ ȕțȎȥȓțȖȓ țȡȔțȜ ȝȞȜȟȠȜ țȎȗȠȖ ȜȟȠȎȠȜȘ ȝȜȟșȓ ȒȓșȓțȖȭ țȎ ȒȐȎ Ǻȩ ȚȜȔȓȚ ȫȠȜ ȟȒȓșȎȠȪ ȖȟȝȜșȪȕȡȭ ȜȝȓȞȎȠȜȞ ȒȓșȓțȖȭ ȝȜ ȚȜȒȡșȬ (% ȋȠȜ țȎȕȐȎțȖȓ țȓ ȟȐȭȕȎțȜ ȟ ȚȜȒȡșȭȚȖ /XD

ȅȠȜȏȩ ȝȜȟȚȜȠȞȓȠȪ ȘȎȘ ȞȎȏȜȠȎȓȠ ȜȝȓȞȎȠȜȞ ȒȓșȓțȖȭ ȝȜ ȚȜ ȒȡșȬ Ȑ ȜȏȜșȜȥȘȓ /XD ȐȐȓȒȖ ȟșȓȒȡȬȧȓȓ hare lua> 6 % 2 0 lua> 7 % 2 1 lua> 8 % 2 0

ǼȝȓȞȎȠȜȞ ȒȓșȓțȖȭ ȝȜ ȚȜȒȡșȬ ȖȟȝȜșȪȕȡȓȠȟȭ ȝȜȒȜȏțȜ ȜȏȩȥțȜȚȡ ȜȝȓȞȎȠȜȞȡ ȒȓșȓțȖȭ / ȡȘȎȔȖ ȒȓșȖȚȜȓ ȜȝȓȞȎȠȜȞ % Ȗ ȒȓșȖȠȓșȪ Ȑ țȎȦȓȚ ȟșȡȥȎȓ ȫȠȜ ȥȖȟșȜ 2 ȅȓȠțȩȓ ȥȖȟșȎ ȝȞȖ ȒȓșȓțȖȖ ȝȜ ȚȜȒȡșȬ țȎ 2 Ȑ ȜȟȠȎȠȘȓ ȐȟȓȑȒȎ ȏȡȒȡȠ ȒȎȐȎȠȪ ȕțȎȥȓțȖȓ 0 ȝȜȠȜȚȡ ȥȠȜ ȒȓșȭȠȟȭ țȎ 2 ȏȓȕ ȜȟȠȎȠȘȎ ǻȓȥȓȠțȩȓ ȥȖȟșȎ Ȑ ȜȟȠȎȠȘȓ ȐȟȓȑȒȎ ȏȡȒȡȠ ȖȚȓȠȪ ȕțȎȥȓțȖȓ 1. ǶȟȝȜșȪȕȡȭ ȫȠȜȠ ȠȞȬȘ Țȩ ȟȚȜȔȓȚ ȜȝȞȓȒȓșȖȠȪ ȥȓȠțȜȓ ȖșȖ țȓȥȓȠțȜȓ ȘȜșȖȥȓȟȠȐȜ ȏșȜȘȜȐ ȖȟȝȜșȪȕȜȐȎțȜ ȝȜ ȦȖȞȖțȓ ȝȓȞȓȘȞȩȠȖȭ

ĚčĜČĞęħĕ ěğĞĨ Ď ĝėğģČđ ģđĞęĚďĚ Ĕ ęđģđĞęĚďĚ ĖĚėĔģđĝĞĎČ čėĚĖĚĎ ěĚ ĤĔĜĔęđ ɉɭɬɶ ɤɨɬɨɪɵɣ ɞɨɥɠɧɚ ɩɪɨɞɟɥɚɬɶ ɱɟɪɟɩɚɲɤɚ ɱɬɨɛɵ ɜɟɪɧɭɬɶɫɹ ɜ ɢɫɯɨɞɧɨɟ ɩɨɥɨɠɟɧɢɟ ɡɚɜɢɫɢɬ ɨɬ ɬɨɝɨ ɱɟɬɧɨɟ ɢɥɢ ɧɟɱɟɬɧɨɟ ɤɨɥɢɱɟɫɬɜɨ ɛɥɨɤɨɜ ɢɫɩɨɥɶɡɨɜɚɧɨ ɩɨ ɲɢɪɢɧɟ ɩɟɪɟɤɪɵɬɢɹ ɩɨɷɬɨɦɭ ɦɵ ɛɭɞɟɦ ɢɫɩɨɥɶɡɨɜɚɬɶ ɢɧɫɬɪɭɤɰɢɸ if hare 168. 169. 170. 171. 172.

-- ɜɨɡɜɪɚɳɟɧɢɟ ɤ ɢɫɯɨɞɧɨɣ ɩɨɡɢɰɢɢ if width % 2 == 0 then turtle.turnRight() else for y = 1, length - 1 do

ǿȀǾǼǶȀdzǹȊǿȀǰǼ ǽǼǹǮ Ƕ ǽǼȀǼǹǸǮ

245


173. 174. 175. 176.

turtle.back() end turtle.turnLeft() end

dzȟșȖ ȝȜ ȦȖȞȖțȓ ȝȓȞȓȘȞȩȠȖȭ ȖȟȝȜșȪȕȜȐȎțȜ ȥȓȠțȜȓ ȘȜșȖ ȥȓȟȠȐȜ ȏșȜȘȜȐ ȠȜ ȐȩȞȎȔȓțȖȓ width % 2 ȏȡȒȓȠ ȞȎȐțȜ 0 Ȏ ȕțȎȥȖȠ ȡȟșȜȐȖȓ ȖțȟȠȞȡȘȤȖȖ if Ȑ ȟȠȞȜȘȓ ȐȩȝȜșțȭȓȠȟȭ (true ǰ ȫȠȜȚ ȟșȡȥȎȓ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȝȜȐȜȞȎȥȖȐȎȓȠ ȥȓȞȓ ȝȎȦȘȡ țȎȝȞȎȐȜ ǰ ȝȞȜȠȖȐțȜȚ ȟșȡȥȎȓ ȓȟșȖ ȝȜ ȦȖȞȖțȓ ȝȓȞȓ ȘȞȩȠȖȭ ȖȟȝȜșȪȕȜȐȎțȜ țȓȥȓȠțȜȓ ȘȜșȖȥȓȟȠȐȜ ȏșȜȘȜȐ ȘȜȒ Ȑ ȟȠȞȜȘȎȣ ² ȝȓȞȓȚȓȧȎȬȠ ȥȓȞȓȝȎȦȘȡ țȎȕȎȒ țȎ ȒȞȡȑȜȗ ȘȜțȓȤ ȞȭȒȎ Ȏ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȝȜȐȜȞȎȥȖȐȎȓȠ ȥȓȞȓȝȎȦȘȡ țȎ șȓȐȜ ǰ ȜȏȜȖȣ ȟșȡȥȎȭȣ ȥȓȞȓȝȎȦȘȎ ȜȘȎȕȩȐȎȓȠȟȭ Ȑ țȎȥȎșȓ ȝȜ ȟșȓȒțȓȑȜ ȟȠȜșȏȤȎ ȜȏȞȎȧȓțțȜȗ țȎșȓȐȜ ǵȎȠȓȚ ȘȜȒ Ȑ ȟȠȞȜȘȎȣ ² ȝȓȞȓȚȓȧȎȬȠ ȥȓȞȓȝȎȦȘȡ ȐȝȓȞȓȒ țȎ width - 1 ȏșȜȘȜȐ ȥȠȜȏȩ ȐȓȞțȡȠȪ ȥȓȞȓȝȎȦȘȡ Ȑ ȖȟȣȜȒțȜȓ ȝȜșȜȔȓțȖȓ Ǯ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȝȜȐȜȞȎȥȖȐȎȓȠ ȓȓ țȎ ȝȞȎȐȜ ȥȠȜȏȩ ȐȓȞțȡȠȪ Ș ȝȓȞȐȜțȎȥȎșȪțȜȚȡ țȎȝȞȎȐșȓțȖȬ hare 178. for x = 1, width - 1 do 179. turtle.forward() 180. end 181. turtle.turnRight() 182. 183. return true 184. end

ǰ ȫȠȜȠ ȚȜȚȓțȠ ȥȓȞȓȝȎȦȘȎ țȎȣȜȒȖȠȟȭ Ȑ ȖȟȣȜȒțȜȚ ȝȜșȜȔȓ țȖȖ ȝȜȫȠȜȚȡ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ true. ǶțȟȠȞȡȘȤȖȭ end Ȑ ȟȠȞȜȘȓ ȕȎȐȓȞȦȎȓȠ ȘȜȒ ȢȡțȘȤȖȖ sweepField(). ǻȎȝȜȚțȬ ȥȠȜ ȢȡțȘȤȖȭ sweepField()țȎȝȖȟȎțȎ țȓ ȠȜșȪ ȘȜ Ȓșȭ ȝȜȟȠȞȜȓțȖȭ ȝȜșȎ ȖșȖ ȝȜȠȜșȘȎ Ǻȩ ȏȡȒȓȚ ȖȟȝȜșȪ ȕȜȐȎȠȪ ȫȠȡ ȢȡțȘȤȖȬ Ȓșȭ ȒȜȟȠȖȔȓțȖȭ ȞȎȕșȖȥțȩȣ Ȥȓșȓȗ ȝȜȠȜȚȡ ȥȠȜ ȟ ȓȓ ȝȜȚȜȧȪȬ ȥȓȞȓȝȎȦȘȎ ȐȩȘșȎȒȩȐȎȬȧȎȭ ȝȓ ȞȓȘȞȩȠȖȓ ȚȜȔȓȠ ȐȩȕȩȐȎȠȪ ȞȎȕșȖȥțȩȓ ȢȡțȘȤȖȖ Ȗ ȝȞȖȚȓ țȭȠȪ Ȗȣ Ȑ ȘȎȔȒȜȗ ȝȜȕȖȤȖȖ ȝȓȞȓȘȞȩȠȖȭ Ǯ ȐȜȠ ȥȠȜȏȩ ȟȠȞȜȖȠȪ ȖȚȓțțȜ ȝȓȞȓȘȞȩȠȖȭ Țȩ ȟȜȕȒȎȒȖȚ ȢȡțȘȤȖȬ buildFloor().

246

DZǹǮǰǮ


ĝĚēĐČęĔđ ĠğęĖĢĔĔ *=14,.477: ǿ ȝȜȚȜȧȪȬ ȢȡțȘȤȖȖ sweepField() ȢȡțȘȤȖȭ buildFloor() ȟȠȞȜȖȠ ȝȞȭȚȜȡȑȜșȪțȜȓ ȝȓȞȓȘȞȩȠȖȓ ȏȓȞȭ ȏșȜȘȖ Ȗȕ ȖțȐȓț ȠȎȞȭ ȥȓȞȓȝȎȦȘȖ ȂȡțȘȤȖȭ buildFloor() ȝȞȖțȖȚȎȓȠ ȕțȎ ȥȓțȖȭ ȝȓȞȓȚȓțțȩȣ length Ȗ width Ȑ ȘȎȥȓȟȠȐȓ ȎȞȑȡȚȓțȠȜȐ Ȓșȭ ȜȝȞȓȒȓșȓțȖȭ ȞȎȕȚȓȞȜȐ ȐȩȘșȎȒȩȐȎȓȚȜȑȜ ȝȓȞȓȘȞȩȠȖȭ hare 187. 188. 189. 190. 191. 192. 193.

-- buildFloor() ɜɵɤɥɚɞɵɜɚɟɬ -- ɩɪɹɦɨɭɝɨɥɶɧɨɟ ɩɟɪɟɤɪɵɬɢɟ -- ɢɡ ɛɥɨɤɨɜ ɜ ɢɧɜɟɧɬɚɪɟ function buildFloor(length, width) if countInventory() < length * width then return false -- ɧɟɞɨɫɬɚɬɨɱɧɨ ɛɥɨɤɨɜ end

ǸȜȒ Ȑ ȟȠȞȜȘȓ ȐȩȕȩȐȎȓȠ ȢȡțȘȤȖȬ countInventory() Ȗ ȟȞȎȐțȖȐȎȓȠ ȘȜșȖȥȓȟȠȐȜ ȏșȜȘȜȐ Ȑ ȖțȐȓțȠȎȞȓ ȥȓȞȓȝȎȦȘȖ ȟ ȘȜșȖȥȓȟȠȐȜȚ ȏșȜȘȜȐ țȓȜȏȣȜȒȖȚȩȣ Ȓșȭ ȟȠȞȜȖȠȓșȪȟȠȐȎ ȝȓȞȓ ȘȞȩȠȖȭ Dzșȭ ȝȓȞȓȘȞȩȠȖȭ ȒșȖțȜȗ length Ȗ ȦȖȞȖțȜȗ width ȏșȜȘȜȐ ȝȜȠȞȓȏȡȓȠȟȭ length * width ȏșȜȘȜȐ dzȟșȖ ȡ ȥȓȞȓ ȝȎȦȘȖ țȓȒȜȟȠȎȠȜȥțȜ ȏșȜȘȜȐ Ȓșȭ ȟȠȞȜȖȠȓșȪȟȠȐȎ ȝȓȞȓȘȞȩȠȖȭ ȕȎȒȎțțȩȣ ȞȎȕȚȓȞȜȐ ȐȩȝȜșțȓțȖȓ ȢȡțȘȤȖȖ ȝȞȓȘȞȎȧȎȓȠȟȭ dzȟșȖ Ȕȓ ȏșȜȘȜȐ ȒȜȟȠȎȠȜȥțȜ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȝȓȞȓȚȓȧȎȓȠ ȥȓȞȓȝȎȦȘȡ ȐȐȓȞȣ țȎ ȜȒțȡ ȝȜȕȖȤȖȬ ȠȎȘ ȥȠȜȏȩ ȥȓȞȓȝȎȦȘȎ ȚȜȑșȎ ȞȎȕȚȓȧȎȠȪ ȝȜȒ ȟȜȏȜȗ ȏșȜȘȖ ȘȜȑȒȎ țȎȥțȓȠ ȐȩȘșȎȒȩ ȐȎȠȪ ȝȓȞȓȘȞȩȠȖȓ hare 195. turtle.up() 196. sweepField(length, width, selectAndPlaceDown) 197. end

ǸȜȒ Ȑ ȟȠȞȜȘȓ 196 ȝȓȞȓȒȎȓȠ Ȑ ȢȡțȘȤȖȬ sweepField() ȕțȎȥȓțȖȭ ȒșȖțȩ (length ȦȖȞȖțȩ (width Ȗ ȢȡțȘȤȖȬ selectAndPlaceDown(). ǶȚȓțțȜ ȐȩȕȜȐ ȢȡțȘȤȖȖ selectAndPlaceDown() Ȑ ȘȎȔȒȜȗ ȝȜȕȖȤȖȖ ȝȓȞȓȘȞȩȠȖȭ ȏȡȒȓȠ Ȑȩ ȏȖȞȎȠȪ ȏșȜȘ Ȗȕ ȖțȐȓțȠȎȞȭ ȥȓȞȓȝȎȦȘȖ Ȗ ȞȎȕȚȓȧȎȠȪ ȓȑȜ ȝȜȒ ȥȓȞȓȝȎȦȘȜȗ

ǿȀǾǼǶȀdzǹȊǿȀǰǼ ǽǼǹǮ Ƕ ǽǼȀǼǹǸǮ

247


ȋȠȜ Ȑȟȓ ȥȠȜ ȘȎȟȎȓȠȟȭ ȢȡțȘȤȖȖ buildFloor() ȂȡțȘȤȖȭ ȘȜȞȜȠȘȎȭ ȝȜȠȜȚȡ ȥȠȜ ȕțȎȥȖȠȓșȪțȎȭ ȥȎȟȠȪ ȞȎȏȜȠȩ ȐȩȝȜșțȭ ȓȠȟȭ ȢȡțȘȤȖȓȗ sweepField().

ĝĚēĐČęĔđ ěĜĚďĜČĘĘħ *=14,.477: Ǻȩ ȝȜȚȓȟȠȖșȖ ȢȡțȘȤȖȖ buildFloor() Ȗ sweepField() Ȑ ȚȜȒȡșȪ hare ȥȠȜȏȩ ȒȞȡȑȖȓ ȝȞȜȑȞȎȚȚȩ ȚȜȑșȖ ȐȩȕȩȐȎȠȪ ȫȠȖ ȢȡțȘȤȖȖ ǻȜ ȏȩșȜ ȏȩ ȡȒȜȏțȜ ȖȚȓȠȪ ȝȞȜȑȞȎȚȚȡ ȠȜșȪȘȜ Ȓșȭ ȝȜȟȠȞȜȓțȖȭ ȝȓȞȓȘȞȩȠȖȗ ȀȎȘ Ȕȓ ȘȎȘ ȝȞȜȑȞȎȚȚȩ buildwall Ȗ buildroom Ȗȕ ȑșȎȐ Ȗ ȝȞȜȑȞȎȚȚȎ EXLOGÀRRU ȏȡȒȓȠ ȜȏȞȎȏȎȠȩȐȎȠȪ ȎȞȑȡȚȓțȠȩ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ȐȩȐȜ ȒȖȠȪ ȟȜȜȏȧȓțȖȓ ȝȜșȪȕȜȐȎȠȓșȬ Ȗ ȐȩȕȩȐȎȠȪ ȢȡțȘȤȖȬ hare. buildFloor() Ȓșȭ ȝȜȟȠȞȜȓțȖȭ ȝȓȞȓȘȞȩȠȖȭ ǰ ȜȏȜșȜȥȘȓ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ȐȩȝȜșțȖ ȘȜȚȎțȒȡ edit EXLOGÀRRU Ȗ ȐȐȓȒȖ ȟșȓȒȡȬȧȖȗ ȘȜȒ EXLOGÀRRU 1. --[[ɉɪɨɝɪɚɦɦɚ ɫɬɪɨɢɬɟɥɶɫɬɜɚ ɩɟɪɟɤɪɵɬɢɣ ɗɥɚ ɋɜɟɣɝɚɪɬɚ 2. ɜɵɤɥɚɞɵɜɚɟɬ ɩɟɪɟɤɪɵɬɢɟ.]] 3. 4. os.loadAPI('hare') 5. 6. -- ɨɛɪɚɛɨɬɤɚ ɚɪɝɭɦɟɧɬɨɜ ɤɨɦɚɧɞɧɨɣ ɫɬɪɨɤɢ 7. local cliArgs = {...} 8. local length = tonumber(cliArgs[1]) 9. local width = tonumber(cliArgs[2]) 10. 11. if length == nil or width == nil or cliArgs[1] == " WKHQ 12. print('Usage: buildwall <length> <width>') 13. return 14. end 15. 16. hare.buildFloor(length, width)

ǿȜȣȞȎțȖ ȝȞȜȑȞȎȚȚȡ Ȗ ȐȩȗȒȖ Ȗȕ ȞȓȒȎȘȠȜȞȎ ȝȜȟșȓ ȐȐȜȒȎ Ȑȟȓȣ ȖțȟȠȞȡȘȤȖȗ ǽȜȟȘȜșȪȘȡ ȝȞȜȑȞȎȚȚȎ EXLOGÀRRU ȎțȎșȜȑȖȥțȎ ȝȞȜȑȞȎȚ ȚȎȚ buildwall Ȗ buildroom ȭ țȓ ȏȡȒȡ ȓȧȓ ȞȎȕ ȜȏȨȭȟțȭȠȪ

248

DZǹǮǰǮ


ȘȜȒ ǽȞȜȑȞȎȚȚȎ ȝȞȜȟȠȜ ȝȞȖțȖȚȎȓȠ ȎȞȑȡȚȓțȠȩ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ Ȓșȭ ȜȝȞȓȒȓșȓțȖȭ ȒșȖțȩ Ȗ ȦȖȞȖțȩ ȝȓȞȓȘȞȩȠȖȭ ȘȜȠȜȞȩȓ ȢȡțȘȤȖȭ hare.buildFloor() ȝȓȞȓȒȎȓȠ ȢȡțȘȤȖȖ sweepField().

ēČěğĝĖ ěĜĚďĜČĘĘħ *=14,.477: ǾȎȕȚȓȟȠȖ ȥȓȞȓȝȎȦȘȡ Ȗ ȧȓșȘțȖ ȝȜ țȓȗ ȝȞȎȐȜȗ ȘțȜȝȘȜȗ ȚȩȦȖ ȥȠȜȏȩ ȜȠȘȞȩȠȪ ȓȓ ȑȞȎȢȖȥȓȟȘȖȗ ȖțȠȓȞȢȓȗȟ ǵȎȑȞȡȕȖ ȝȜ ȚȓțȪȦȓȗ ȚȓȞȓ ȘȎȚȓțțȩȣ ȘȖȞȝȖȥȓȗ ȖșȖ șȬȏȩȣ ȒȞȡ ȑȖȣ ȟȠȞȜȖȠȓșȪțȩȣ ȏșȜȘȜȐ Ȑ ȓȓ ȖțȐȓțȠȎȞȪ ǰ ȜȏȜșȜȥȘȓ ȘȜ ȚȎțȒțȜȗ ȟȠȞȜȘȖ ȐȩȝȜșțȖ ȘȜȚȎțȒȡ EXLOGÀRRU 5 6 ȥȠȜȏȩ ȡȐȖȒȓȠȪ ȘȎȘ ȥȓȞȓȝȎȦȘȎ ȝȜȟȠȞȜȖȠ ȝȓȞȓȘȞȩȠȖȓ ȝȭȠȪ ȏșȜȘȜȐ ȒșȖțȜȗ Ȗ ȦȓȟȠȪ ȏșȜȘȜȐ ȦȖȞȖțȜȗ ǽȜȟșȓ ȫȠȜȑȜ ȚȜȔȓȦȪ ȐȩȝȜșțȖȠȪ ȘȜȚȎțȒȡ buildroom 5 6 4 ȥȠȜȏȩ ȝȜȟȠȞȜȖȠȪ ȟȠȓțȩ țȎȒ ȝȜșȜȚ ǸȜȑȒȎ ȫȠȎ ȘȜȚțȎȠȎ ȏȡȒȓȠ ȕȎȘȜțȥȓțȎ ȝȜȐȓȞțȖ ȥȓȞȓȝȎȦȘȡ țȎȝȞȎȐȜ Ȗ ȟțȜȐȎ Ȑȩ ȝȜșțȖ ȘȜȚȎțȒȡ EXLOGÀRRU 5 6 ȥȠȜȏȩ ȝȜȟȠȞȜȖȠȪ ȝșȜȟȘȡȬ ȘȞȩȦȡ Ȓșȭ ȫȠȜȗ ȘȜȚțȎȠȩ ȀȓȝȓȞȪ ȡ Ƞȓȏȭ ȓȟȠȪ Ȑȟȓ țȓȜȏȣȜȒȖ ȚȜȓ Ȓșȭ ȟȜȕȒȎțȖȭ ȝȞȭȚȜȡȑȜșȪțȩȣ ȘȜȚțȎȠ dzȟșȖ ȝȞȖ ȕȎȝȡȟȘȓ ȫȠȜȗ ȝȞȜȑȞȎȚȚȩ ȐȜȕțȖȘȎȬȠ ȜȦȖȏȘȖ ȠȧȎȠȓșȪțȜ ȟȞȎȐțȖ ȟȐȜȗ ȘȜȒ ȟ șȖȟȠȖțȑȜȚ Ȑ ȫȠȜȗ ȘțȖȑȓ ² ȐȜȕ ȚȜȔțȜ Ƞȩ țȎȗȒȓȦȪ ȜȝȓȥȎȠȘȖ dzȟșȖ ȖȟȝȞȎȐȖȠȪ ȝȞȜȑȞȎȚ Țȡ țȓ ȡȒȎȓȠȟȭ Ȗ ȜȦȖȏȘȖ ȝȜ ȝȞȓȔțȓȚȡ ȐȜȕțȖȘȎȬȠ ȡȒȎșȖ ȢȎȗș ȐȩȝȜșțȖȐ ȘȜȚȎțȒȡ delete EXLOGÀRRU Ȏ ȕȎȠȓȚ ȕȎ ȑȞȡȕȖ ȝȞȜȑȞȎȚȚȡ ȕȎțȜȐȜ ȐȩȝȜșțȖȐ ȘȜȚȎțȒȡ pastebin get Epr9CndN EXLOGÀRRU.

ĝĚēĐČęĔđ ğēĚĜģČĞĚďĚ ěđĜđĖĜħĞĔī ǸȎȘ ȡȝȜȚȖțȎșȜȟȪ ȞȎțȓȓ ȢȡțȘȤȖȭ sweepField() ȜȥȓțȪ ȑȖȏȘȎ Ȑ țȎȟȠȞȜȗȘȓ Ȗ ȝȜȕȐȜșȭȓȠ ȝȓȞȓȒȎȠȪ ȝȎȞȎȚȓȠȞȡ sweepFunc șȬȏȡȬ ȢȡțȘȤȖȬ DzȎȐȎȗ țȎȝȖȦȓȚ ȝȞȜȑȞȎȚȚȡ buildcheckerboard ȘȜȠȜȞȎȭ ȝȜȟȠȞȜȖȠ ȘșȓȠȥȎȠȜȓ ȝȓȞȓȘȞȩȠȖȓ Ȗȕ ȡȑȜșȪțȩȣ Ȗ ȘȐȎȞȤȓȐȩȣ ȏșȜȘȜȐ Ȁȩ ȚȜȔȓȦȪ ȟȜȕȒȎȠȪ ȡȑȜșȪțȩȓ ȏșȜȘȖ Ȗȕ ȒȓȐȭȠȖ ȘȡȟȘȜȐ ȡȑșȭ Ȏ ȘȐȎȞȤȓȐȩȓ ² Ȗȕ ȥȓȠȩȞȓȣ ȘȡȟȘȜȐ ȘȐȎȞȤȎ ǻȎ ȞȖȟ ȝȜȘȎȕȎțȩ Ȗȣ ȞȓȤȓȝȠȩ ǼȏȞȎȠȖ ȐțȖȚȎțȖȓ ȥȠȜ ȚȜȔțȜ

ǿȀǾǼǶȀdzǹȊǿȀǰǼ ǽǼǹǮ Ƕ ǽǼȀǼǹǸǮ

249


ȖȟȝȜșȪȕȜȐȎȠȪ ȠȜșȪȘȜ ǻȓȕȓȞ ȘȐȎȞȤ Ȗȕ ȖȕȚȓȞȓțȖȭ ǻȓȕȓȞ ȟȚ PLQHFUDIW UX JDPHSHGLD FRP ǸȐȎȞȤBǻȖȔțȓȑȜBȚȖȞȎ

ˀ̛̭͘ ϭϯ͘ϭϭ͘ ˁ̨̛̦̖̔̌̚ ̵̨̱̣̦̼̐̽ ;̭̣̖̏̌Ϳ ̛ ̶̵̡̬̖̼̏̌̏ ̨̡̨̣̍̏ ;̭̪̬̌̏̌Ϳ

ǽȜȟȘȜșȪȘȡ Țȩ ȒȓșȎȓȚ ȘșȓȠȥȎȠȜȓ ȝȓȞȓȘȞȩȠȖȓ ȒȎȐȎȗ ȟȒȓ șȎȓȚ ȓȑȜ Ȑ ȐȖȒȓ ȦȎȣȚȎȠțȜȗ ȒȜȟȘȖ ȥȠȜȏȩ ȚȜȔțȜ ȏȩșȜ ȟȩ ȑȞȎȠȪ Ȑ 0LQHFUDIW Ȑ ȦȎȦȘȖ ȟ ȥȓȞȓȝȎȦȘȎȚȖ

ĖĚĐ ěĜĚďĜČĘĘħ *=14,+0-+3-:*7):, ȅȠȜȏȩ ȟȒȓșȎȠȪ ȦȎȣȚȎȠțȡȬ ȒȜȟȘȡ ȞȎȕȚȓȞȜȚ ð ȏșȜȘȜȐ țȎȚ țȡȔțȜ ȟȘȞȎȢȠȖȠȪ ȡȑȜșȪțȩȣ Ȗ ȘȐȎȞȤȓȐȩȣ ȏșȜȘȎ ǽȜȟșȓ ȠȜȑȜ ȘȎȘ Țȩ ȟȜȕȒȎȒȖȚ ȝȞȜȑȞȎȚȚȡ buildcheckerboard Țȩ ȖȕȚȓțȖȚ Ȗ ȤȐȓȠȎ ȥȓȞȓȝȎȦȓȘ ȥȠȜȏȩ ȚȜȔțȜ ȏȩ șȜ ȟȩȑȞȎȠȪ ȝȎȞȠȖȬ Ȑ ȦȎȦȘȖ țȎ ȒȜȟȘȓ ȞȎȕȚȓȞȜȚ ð ȏșȜ ȘȜȐ ǰ ȜȏȜșȜȥȘȓ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ȐȩȝȜșțȖ ȘȜȚȎțȒȡ edit buildcheckerboard Ȗ ȐȐȓȒȖ ȟșȓȒȡȬȧȖȗ ȘȜȒ buildcheckerboard >>ɉɪɨɝɪɚɦɦɚ ɞɥɹ ɭɡɨɪɱɚɬɨɝɨ ɫɬɪɨɢɬɟɥɶɫɬɜɚ ɗɥɚ ɋɜɟɣɝɚɪɬɚ ɋɬɪɨɢɬ ɤɥɟɬɱɚɬɨɟ ɩɟɪɟɤɪɵɬɢɟ @@ 3. 4. os.loadAPI('hare') 5. ɨɛɪɚɛɨɬɤɚ ɚɪɝɭɦɟɧɬɨɜ ɤɨɦɚɧɞɧɨɣ ɫɬɪɨɤɢ 7. local cliArgs = {...} 8. local length = tonumber(cliArgs[1]) 9. local width = tonumber(cliArgs[2]) 10. 11. if length == nil or width == nil or cliArgs[1] ==

250

DZǹǮǰǮ


" WKHQ 12. print('Usage: buildcheckerboard <length> <width>') 13. return 14. end 15. 16. local placeBlack = true 17. 18. function placeCheckerboard() 19. -- ÉœÉľÉ›ɨɪ É­É?ÉĽÉš ɢɼɢ ɤÉœÉšÉŞÉ°Éš Éœ ÉĄÉšÉœɢɍɢɌɨɍɏɢ ɨɏ ɥɧɚɹÉ&#x;ɧɢɚ ÉŠÉ&#x;ÉŞÉ&#x;ÉŚÉ&#x;ɧɧɨɣ placeBlack 20. if placeBlack then 21. hare.selectItem('minecraft:coal_block') 22. else 23. hare.selectItem('minecraft:quartz_block') 24. end 25. 26. turtle.placeDown() 27. placeBlack = not placeBlack 28. end 29. 30. turtle.up() 31. hare.sweepField(length, width, placeCheckerboard)

ÇżČœČŁČžČŽČ›Č– Č?ČžČœČ‘ČžČŽČšČšČĄ Č– Č?ČŠČ—Č’Č– Č–Č• ČžČ“Č’ČŽČ˜Č ČœČžČŽ Č?ČœČ&#x;șȓ Č?Č?ČœČ’ČŽ Č?Č&#x;Č“ČŁ Č–Č›Č&#x;Č ČžČĄČ˜ȤČ–Č—

ēČěÄ&#x;Ä?Ä– ěĜĚÄ?ĜČĘĘħ *=14,+0-+3-:*7):, Ç˝ČœČšČ“Č&#x;Č Č– ČĄČ‘ČœČ™ČŞČ›ČŠČŁ Č– Č˜Č?ČŽČžȤČ“Č?ČŠČŁ Č?Č™ČœČ˜ČŽ Č? Č–Č›Č?Č“Č›Č ČŽČžČŞ ȼȓȞȓČ?ČŽČŚČ˜Č– ČŽ Č•ČŽČ Č“Čš Č? ČœČ?ČœČ™ČœČĽČ˜Č“ Č˜ČœČšČŽČ›Č’Č›ČœČ— Č&#x;Č ČžČœČ˜Č– Č?ČŠČ?ČœČ™ țȖ Č˜ČœČšČŽČ›Č’ČĄ buildcheckerboard 8 8 ȅȓȞȓČ?ČŽČŚČ˜ČŽ Č?ČœČ&#x;Č ČžČœČ–Č ČŚČŽČŁČšČŽČ Č›ČœČ“ Č?ČœČ˜ČžČŠČ Č–Č“ ČžČŽČ•ČšČ“ČžČœČš Ă° Č?Č™ČœČ˜ČœČ? Č˜ČœČ ČœČžČœČ“ Č–Č•Čœ Č?ČžČŽČ”Č“Č›Čœ țȎ ȞȖČ&#x; ÇłČ&#x;șȖ Č?ȞȖ Č•ČŽČ?ČĄČ&#x;Č˜Č“ Č›ČœČ?ČœČ— Č?ČžČœČ‘ČžČŽČšČšČŠ Č?ČœČ•Č›Č–Č˜ČŽČŹČ ČœČŚČ–Č?Č˜Č– Č Č§ČŽČ Č“Č™ČŞČ›Čœ Č&#x;ȞȎČ?țȖ Č&#x;Č?ČœČ— Č˜ČœČ’ Č&#x; șȖČ&#x;Č Č–Č›Č‘ČœČš Č? ČŤČ ČœČ— Č˜Č›Č–Č‘Č“ Č?ČœČ• ČšČœČ”Č›Čœ țȎȗȒȓȌȪ ČœČ?Č“ČĽČŽČ Č˜Č– ÇłČ&#x;șȖ Č–Č&#x;Č?ȞȎČ?Č–Č ČŞ Č?ČžČœČ‘ČžČŽČšČšČĄ țȓ ČĄČ’ČŽČ“Č Č&#x;Č­ Č– ČœČŚČ–Č?Č˜Č– Č?Čœ Č?ȞȓȔțȓȚȥ Č?ČœČ•Č›Č–Č˜ČŽČŹČ ČĄČ’ČŽČ™Č– ȢČŽČ—Č™ Č?ČŠČ?ČœČ™Č›Č–Č? Č˜ČœČšČŽČ›Č’ČĄ delete buildcheckerboard ČŽ Č•ČŽČ Č“Čš ȕȎȑȞȥȕȖ Č?ČžČœČ‘ČžČŽČšČšČĄ Č•ČŽČ›ČœČ?Čœ Č?ČŠČ?ČœČ™Č›Č–Č? Č˜ČœČšČŽČ›Č’ČĄ pastebin get QQQK3mqk buildcheckerboard.

ǿȀǞǟǜČ€dzǚȊǿȀǰǟ ǽǟǚǎ Çś ǽǟČ€ǟǚǸǎ

251


ˀ̛̭͘ ϭϯ͘ϭϮ͘ ˋ̡̖̬̖̪̹̌̌ ̏ ̶̨̪̬̖̭​̭̖ ̨̨̛̛̯̣̖̦̐̏́̚ ̵̨̹̥̯̦̜̌̌ ̨̡̛̭̔

Ǻȩ țȎȝȖȟȎșȖ ȝȞȜȑȞȎȚȚȡ buildcheckerboard ȥȠȜȏȩ ȟȒȓșȎȠȪ ȘșȓȠȥȎȠȜȓ ȝȓȞȓȘȞȩȠȖȓ Ȑ ȐȖȒȓ ȟȠȎțȒȎȞȠțȜȗ ȦȎȣ ȚȎȠțȜȗ ȒȜȟȘȖ țȜ Ƞȩ ȚȜȔȓȦȪ ȟȜȕȒȎȐȎȠȪ ȘșȓȠȥȎȠȩȓ ȝȜȠȜșȘȖ Ȗ ȝȜșȩ șȬȏȜȑȜ ȞȎȕȚȓȞȎ ǼțȖ ȚȜȑȡȠ ȏȩȠȪ ȥȎȟȠȪȬ ȝȞȖȥȡȒșȖ ȐȜȑȜ ȕȎȚȘȎ ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ

ˀ̛̭͘ ϭϯ͘ϭϯ͘ ˌ̵̥̯̦̼̜̌̌ ̨̪̣ ̏ ̡̥̖͕̌̚ ̨̨̪̭̯̬̖̦​̨̦̥ ̸̡̨̖̬̖̪̹̜̌

dzȟșȖ Ƞȩ ȟȜȕȒȎȦȪ ȥȓȞȓȝȎȦȘȖ Ȏ ȠȎȘȔȓ ȝȜȒȑȜȠȜȐȖȦȪ ȘȞȎȟțȩȗ ȘȞȎȟȖȠȓșȪ Ȗ ȘȜȟȠțȡȬ ȚȡȘȡ ȠȜ ȧȓșȘȎȭ ȝȞȎȐȜȗ ȘțȜȝȘȜȗ ȚȩȦȖ ȝȜ ȥȓȞȓȝȎȦȘȎȚ Ȗȣ ȚȜȔțȜ ȝȜȘȞȎȟȖȠȪ Ȑ ȘȞȎȟțȩȗ Ȗ ȏȓșȩȗ ȤȐȓȠȎ ȟȜȜȠȐȓȠȟȠȐȓțțȜ ȀȎȘȖȚ ȜȏȞȎȕȜȚ Ƞȩ ȟȜȕȒȎȦȪ ȘȜȚȝșȓȘȠ Ȓșȭ ȖȑȞȩ Ȑ ȦȎȦȘȖ ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ

252

DZǹǮǰǮ


ˀ̛̭͘ ϭϯ͘ϭϰ͘ ʰ̬̐̌ ̏ ̸̛̖̬̖̪̹̌̽ ̡̛̹̹̌

ȀȓȝȓȞȪ ȒȎȔȓ ȟȜȕȒȎțȖȓ ȑȖȑȎțȠȟȘȜȑȜ ȝȜșȭ Ȓșȭ ȦȎȦȓȘ ȞȎȕȚȓȞȜȚ ð ȏșȜȘȎ ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ ȟȠȎșȜ ȝȞȜȟȠȜȗ ȕȎȒȎȥȓȗ ȐȓȒȪ ȥȓȞȓȝȎȦȘȎ ȟȒȓșȎȓȠ Ȑȟȓ ȕȎ Ƞȓȏȭ

ˀ̛̭͘ ϭϯ͘ϭϱ͘ ʿ̨̣̖ ̣̔́ ̡̹̹̖̌ ̨̬̥̖̬̥̌̚ ϯϮ п ϯϮ ̨̡̣͕̍̌ ̨̨̪̭̯̬̖̦​̨̦̖ ̸̡̨̖̬̖̪̹̜̌

ĖĚĐ ĠğęĖĢĔĔ 84)+-+0-+3-:*7):, ǰ ȜȠșȖȥȖȓ ȜȠ ȢȡțȘȤȖȖ hare.selectAndPlaceDown() ȘȜ ȠȜȞȎȭ ȝȞȜȟȠȜ ȐȩȏȖȞȎȓȠ șȬȏȡȬ ȭȥȓȗȘȡ ȟȜȒȓȞȔȎȧȡȬ ȘȎ ȘȖȓ șȖȏȜ ȏșȜȘȖ Ȗ ȝȜȚȓȧȎȓȠ ȜȒȖț Ȗȕ ȏșȜȘȜȐ ȝȜȒ ȥȓȞȓȝȎȦ ȘȜȗ ȢȡțȘȤȖȭ placeCheckerboard() ȟțȎȥȎșȎ ȝȞȜȐȓȞȭȓȠ

ǿȀǾǼǶȀdzǹȊǿȀǰǼ ǽǼǹǮ Ƕ ǽǼȀǼǹǸǮ

253


ȕțȎȥȓțȖȓ ȝȓȞȓȚȓțțȜȗ placeBlack ȥȠȜȏȩ ȜȝȞȓȒȓșȖȠȪ ȘȎ ȘȜȗ ȏșȜȘ ȟșȓȒȡȓȠ ȐȩȏȞȎȠȪ ȡȑȜșȪțȩȗ ȖșȖ ȘȐȎȞȤȓȐȩȗ ǽȓȞȓȚȓțțȎȭ placeBlack ȜȏȨȭȐșȭȓȠȟȭ Ȑ ȟȠȞȜȘȓ ȟ ȝȜȚȜ ȧȪȬ ȖțȟȠȞȡȘȤȖȖ local Ȑțȓ ȘȎȘȖȣ șȖȏȜ ȢȡțȘȤȖȗ buildcheckerboard 16. local placeBlack = true

DzȎșȓȓ ȢȡțȘȤȖȭ placeCheckerboard() ȝȞȜȐȓȞȭȓȠ Ȗȟ ȠȖțțȜ true ȖșȖ șȜȔțȜ false ȕțȎȥȓțȖȓ ȫȠȜȗ ȝȓȞȓȚȓțțȜȗ ȥȠȜȏȩ ȜȝȞȓȒȓșȖȠȪ ȘȎȘȜȗ ȏșȜȘ ȐȩȏȞȎȠȪ buildcheckerboard 18. function placeCheckerboard() ɜɵɛɨɪ ɭɝɥɹ ɢɥɢ ɤɜɚɪɰɚ ɜ ɡɚɜɢɫɢɦɨɫɬɢ ɨɬ ɡɧɚɱɟɧɢɹ ɩɟɪɟɦɟɧɧɨɣ SODFH%ODFN 20. if placeBlack then 21. hare.selectItem('minecraft:coal_block') 22. else 23. hare.selectItem('minecraft:quartz_block') 24. end 25. 26. turtle.placeDown()

dzȟșȖ ȝȓȞȓȚȓțțȜȗ placeBlack ȝȞȖȟȐȜȓțȜ ȕțȎȥȓțȖȓ true ȝȞȜȑȞȎȚȚȎ ȐȩȕȩȐȎȓȠ ȢȡțȘȤȖȬ hare.selectItem() ȥȠȜȏȩ ȐȩȏȞȎȠȪ ȭȥȓȗȘȡ ȖțȐȓțȠȎȞȭ ȟȜȒȓȞȔȎȧȡȬ ȡȑȜșȪțȩȓ ȏșȜȘȖ. dzȟșȖ ȝȓȞȓȚȓțțȜȗ placeBlack ȝȞȖȟȐȜȓțȜ ȕțȎȥȓțȖȓ false ȝȞȜȑȞȎȚȚȎ ȐȩȏȖȞȎȓȠ ȭȥȓȗȘȡ ȖțȐȓțȠȎȞȭ ȟȜȒȓȞȔȎȧȡȬ ȘȐȎȞ ȤȓȐȩȓ ȏșȜȘȖ ǽȜȟșȓ ȠȜȑȜ ȘȎȘ ȟ ȝȜȚȜȧȪȬ ȖțȟȠȞȡȘȤȖȗ if Ȗ else ȜȝȞȓȒȓșȓț ȠȖȝ ȏșȜȘȎ ȘȜȠȜȞȩȗ țȡȔțȜ ȐȩȏȞȎȠȪ ȟ ȝȜȚȜ ȧȪȬ ȢȡțȘȤȖȖ hare.selectItem() ȘȜȒ Ȑ ȟȠȞȜȘȓ ȞȎȕȚȓ ȧȎȓȠ ȐȩȏȞȎțțȩȗ ȏșȜȘ ȝȜȒ ȥȓȞȓȝȎȦȘȜȗ ǵȎȠȓȚ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȝȓȞȓȘșȬȥȎȓȠ șȜȑȖȥȓȟȘȜȓ ȕțȎȥȓțȖȓ ȝȓȞȓȚȓțțȜȗ placeBlack. buildcheckerboard 27. placeBlack = not placeBlack 28. end

254

DZǹǮǰǮ


dzȟșȖ ȝȓȞȓȚȓțțȜȗ ȏȩșȜ ȝȞȖȟȐȜȓțȜ ȕțȎȥȓțȖȓ true ȠȜ ȝȞȖȟȐȎȖȐȎȓȠȟȭ false Ƕ țȎȜȏȜȞȜȠ ȋȠȜ ȕțȎȥȖȠ ȥȠȜ ȝȞȖ ȟșȓ ȒȡȬȧȓȚ ȐȩȕȜȐȓ ȢȡțȘȤȖȖ placeCheckerboard() ȢȡțȘȤȖȓȗ sweepField() ȏȡȒȓȠ ȐȩȏȞȎț ȏșȜȘ ȟ ȝȞȜȠȖȐȜȝȜșȜȔțȩȚ ȤȐȓ ȠȜȚ ȀȎȘȖȚ ȜȏȞȎȕȜȚ ȫȠȜȠ ȘȜȒ ȟȜȕȒȎȓȠ ȦȎȣȚȎȠțȜȓ ȝȜȘȞȩȠȖȓ

ĎħēĚĎ ĠğęĖĢĔĔ ;?--8.1-4, ǽȜȟșȓ ȕȎȐȓȞȦȓțȖȭ ȢȡțȘȤȖȖ placeCheckerboard() Ȑ ȟȠȞȜ Șȓ ȖȟȝȜșțȓțȖȓ ȝȓȞȓȣȜȒȖȠ Ș ȟȠȞȜȘȓ ȋȠȎ ȟȠȞȜȘȎ ȝȓȞȓ ȚȓȧȎȓȠ țȎȦȓȑȜ ȞȜȏȜȠȎ țȎ ȜȒțȡ ȝȜȕȖȤȖȬ ȐȐȓȞȣ ȥȠȜȏȩ ȥȓȞȓ ȝȎȦȘȎ ȚȜȑșȎ ȞȎȕȚȓȧȎȠȪ ȝȜȒ ȟȜȏȜȗ ȏșȜȘȖ buildcheckerboard 30. turtle.up() 31. hare.sweepField(length, width, placeCheckerboard)

ǵȎȠȓȚ ȝȞȜȖȟȣȜȒȖȠ ȐȩȕȜȐ ȢȡțȘȤȖȖ hare.sweepField() ȘȜȠȜȞȜȗ ȝȓȞȓȒȎȬȠȟȭ ȕțȎȥȓțȖȭ ȎȞȑȡȚȓțȠȜȐ ȘȜȚȎțȒțȜȗ ȟȠȞȜ ȘȖ length width Ȗ ȢȡțȘȤȖȭ placeCheckerboard ǶȚȭ ȝȓȞȓȒȎȐȎȓȚȜȗ ȢȡțȘȤȖȖ ȕȎȝȖȟȩȐȎȓȠȟȭ ȏȓȕ ȘȞȡȑșȩȣ ȟȘȜȏȜȘ ȠȎȘ ȘȎȘ ȝȞȜȑȞȎȚȚȎ țȓ ȐȩȕȩȐȎȓȠ ȢȡțȘȤȖȬ placeCheckerboard() Ȏ ȝȓȞȓȒȎȓȠ ȓȓ Ȑ ȘȎȥȓȟȠȐȓ ȕțȎȥȓțȖȭ ȎȞȑȡȚȓțȠȎ ĐĚěĚėęĔĞđėĨęĚđ ēČĐČęĔđ" ĜČēęĚĢĎđĞęČī ĤČġĘČĞęČī ĐĚĝĖČ

Нет необходимости использовать исключительно черный уголь и белый кварц, чтобы построить шахматную доску. Попробуй загрузить другие блоки для создания разных стилей шахматной доски: золотые и железные блоки, синюю и красную шерсть либо арбузы с тыквами. Тебе придется изменить вызовы функции hare.selectItem(), чтобы выбирать различные типы блоков.

ģĞĚ Ęħ ğēęČėĔ ǰ ȫȠȜȗ ȑșȎȐȓ Țȩ ȟȜȕȒȎșȖ ȜȏȧȖȗ ȎșȑȜȞȖȠȚ Ȓșȭ ȐȩȘșȎȒȩ ȐȎțȖȭ ȝȓȞȓȘȞȩȠȖȭ ǽȜ ȫȠȜȚȡ ȎșȑȜȞȖȠȚȡ ȥȓȞȓȝȎȦȘȎ ȝȞȜ

ǿȀǾǼǶȀdzǹȊǿȀǰǼ ǽǼǹǮ Ƕ ǽǼȀǼǹǸǮ

255


ȣȜȒȖȠ ȝȜ ȐȟȓȚ ȝȜȕȖȤȖȭȚ ȝȞȭȚȜȡȑȜșȪțȜȗ ȜȏșȎȟȠȖ ȐȩȝȜș țȭȭ Ȑ ȘȎȔȒȜȗ ȝȜȕȖȤȖȖ ȜȝȞȓȒȓșȓțțȜȓ ȒȓȗȟȠȐȖȓ ǽȞȜȑȞȎȚȚȎ EXLOGÀRRU ȖȟȝȜșȪȕȡȓȠ ȫȠȜȠ ȎșȑȜȞȖȠȚ Ȓșȭ ȝȜȟȠȞȜȓțȖȭ ȝȜșȜȐ Ȗ ȝȜȠȜșȘȜȐ țȜ Ƞȩ ȟȚȜȔȓȦȪ ȝȞȖȚȓțȭȠȪ ȫȠȜȠ ȎșȑȜȞȖȠȚ Ȓșȭ ȞȓȦȓțȖȭ ȚțȜȔȓȟȠȐȎ ȒȞȡȑȖȣ ȕȎȒȎȥ ȋȠȜ ȐȜȕȚȜȔțȜ ȝȜȠȜȚȡ ȥȠȜ /XD ȝȜȕȐȜșȭȓȠ ȝȓȞȓȒȎȐȎȠȪ ȢȡțȘȤȖȖ ȒȞȡȑȖȚ ȢȡțȘȤȖȭȚ ȠȎȘ Ȕȓ șȓȑȘȜ ȘȎȘ Ƞȩ ȝȓȞȓȒȎȓȦȪ ȟȠȞȜȘȜȐȩȓ ȖșȖ ȤȓșȜȥȖȟ șȓțțȩȓ ȎȞȑȡȚȓțȠȩ ǻȎȝȞȖȚȓȞ ȘȜȑȒȎ ȢȡțȘȤȖȭ selectAndPlaceDown() ȏȩșȎ ȝȓȞȓȒȎțȎ ȢȡțȘȤȖȖ sweepField() Ȑ ȝȞȜ ȑȞȎȚȚȓ EXLOGÀRRU ȥȓȞȓȝȎȦȘȎ ȝȜȟȠȞȜȖșȎ ȝȓȞȓȘȞȩȠȖȓ ǻȜ ȘȜȑȒȎ ȏȜșȓȓ ȟȝȓȤȖȎșȖȕȖȞȜȐȎțțȎȭ ȢȡțȘȤȖȭ placeCheckerboard() ȏȩșȎ ȝȓȞȓȒȎțȎ ȢȡțȘȤȖȖ sweepField() Ȑ ȝȞȜȑȞȎȚ Țȓ buildcheckerboard ȥȓȞȓȝȎȦȘȎ ȝȜȟȠȞȜȖșȎ ȦȎȣȚȎȠțȡȬ ȒȜȟȘȡ ȀȎȘ ȘȎȘ ȢȡțȘȤȖȭ sweepField() țȎȟȠȜșȪȘȜ ȑȖȏȘȎ Ȑ țȎ ȟȠȞȜȗȘȓ Ȓșȭ ȝȞȜȑȞȎȚȚȖȞȜȐȎțȖȭ țȜȐȩȣ ȒȓȗȟȠȐȖȗ țȓ ȠȞȓ ȏȡȓȠȟȭ ȚțȜȑȜ ȒȜȝȜșțȖȠȓșȪțȜȑȜ ȘȜȒȎ ǰ ȑșȎȐȓ Țȩ ȏȡȒȓȚ ȖȟȝȜșȪȕȜȐȎȠȪ ȢȡțȘȤȖȬ sweepField() Ȓșȭ ȟȜȕȒȎțȖȭ ȎȐȠȜ ȚȎȠȖȕȖȞȜȐȎțțȜȗ ȢȓȞȚȩ țȎ ȘȜȠȜȞȜȗ Ȑȟȓ ȜȝȓȞȎȤȖȖ ȝȜ ȝȜȟȎȒ Șȓ Ȗ ȡȏȜȞȘȓ ȡȞȜȔȎȭ ȏȡȒȡȠ ȎȐȠȜȚȎȠȖȕȖȞȜȐȎțȩ


14 ěĜĚďĜČĘĘĔĜĚĎČęĔđ ģđĜđěČĤĖĔ ĠđĜĘđĜČ ǰ ȞȓȔȖȚȓ ȐȩȔȖȐȎțȖȭ țȓȜȏȣȜȒȖȚȜ ȕȎȏȜȠȖȠȪ ȟȭ Ȝ ȝȞȜȝȖȠȎțȖȖ țȜ ȜȣȜȠȎ Ȗ ȟȏȜȞ ȝȖȧȖ ȜȠțȖ ȚȎȬȠ ȚțȜȑȜ ȐȞȓȚȓțȖ ǿȓșȪȟȘȜȓ ȣȜȕȭȗȟȠȐȜ Ȗ ȟȏȜȞ ȡȞȜȔȎȭ ² șȡȥȦȓȓ ȞȓȦȓțȖȓ țȜ ȟȜȒȓȞȔȎȠȪ ȘȞȡȝțȡȬ ȢȓȞȚȡ ȒȜȐȜșȪțȜ ȣșȜȝȜȠțȜ DzȎȐȎȗ Ȑȩ ȞȎȧȖȐȎȠȪ Ȗ ȟȜȏȖȞȎȠȪ ȜȑȞȜȚțȩȗ ȡȞȜȔȎȗ ȟ ȝȜȚȜ ȧȪȬ ȜȒțȜȗ ȕȎȝȞȜȑȞȎȚȚȖȞȜȐȎțțȜȗ ȥȓȞȓȝȎȦȘȖ ȢȓȞȚȓȞȎ ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ

ˀ̛̭͘ ϭϰ͘ϭ͘ ʻ̌ ̡̨̬̱̪̦̜ ̸̨̛̪̹̖̦̦̜ ̴̖̬̥̖ ̨̥̙̖̯ ̨̬̯̯̌̍̌̽ ̨̭̖̏̐ ̨̦̔̌ ̸̡̖̬̖̪̹̌̌

ǽǾǼDZǾǮǺǺǶǾǼǰǮǻǶdz ȅdzǾdzǽǮȆǸǶ ȂdzǾǺdzǾǮ

257


ǰ ȫȠȜȗ ȑșȎȐȓ Țȩ ȟȜȕȒȎȒȖȚ ȎșȑȜȞȖȠȚ ȘȜȠȜȞȩȗ ȝȜȕȐȜșȖȠ ȠȐȜȖȚ ȥȓȞȓȝȎȦȘȎȚ ȐȩȞȎȧȖȐȎȠȪ ȟȜȏȖȞȎȠȪ Ȗ ȟȒȎȐȎȠȪ ȡȞȜ ȔȎȗ țȎ ȣȞȎțȓțȖȓ

ěĚĐďĚĞĚĎĖČ ěĤđęĔģęĚďĚ ěĚėī ȅȠȜȏȩ ȐȩȞȎȧȖȐȎȠȪ ȝȦȓțȖȤȡ Ȑ 0LQHFUDIW ȟțȎȥȎșȎ țȡȔțȜ ȝȜȒȑȜȠȜȐȖȠȪ ȝȜșȓ Dzșȭ ȫȠȜȑȜ ȝȜțȎȒȜȏȖȠȟȭ ȚȜȠȩȑȎ ȞȜȐțȩȗ ȡȥȎȟȠȜȘ ȕȓȚșȭțȩȣ ȖșȖ ȠȞȎȐȭțȩȣ ȏșȜȘȜȐ ȐȓȒȞȜ ȒȜȟȠȡȝ Ș ȖȟȠȜȥțȖȘȡ ȐȜȒȩ țȎȝȞȖȚȓȞ Ș ȜȘȓȎțȡ ȖșȖ ȞȓȘȓ ȖȟȠȜȥțȖȘ ȐȜ Ȓȩ țȓ ȜȏȭȕȎȠȓșȪțȜ ȒȜșȔȓț țȎȣȜȒȖȠȪȟȭ ȞȭȒȜȚ ȟ ȡȥȎȟȠȘȜȚ ȏșȜȘȖ ȕȎȏȜȞȎ Ȗ ȟȡțȒȡȘ ǿțȎȥȎșȎ ȝȓȞȓȗȒȖ Ș ȖȟȠȜȥțȖȘȡ ȐȜȒȩ ȟ ȝȡȟȠȩȚ ȐȓȒȞȜȚ Ȗ ȟ ȐȓȒȞȜȚ Ȑ ȞȡȘȓ ȧȓșȘțȖ ȝȞȎȐȜȗ ȘțȜȝȘȜȗ ȚȩȦȖ ȝȜ ȐȜȒȓ ȥȠȜ ȏȩ țȎȝȜșțȖȠȪ ȐȓȒȞȜ ǵȎȠȓȚ ȝȜȒȜȗȒȖ Ș ȟȐȜȓȚȡ ȡȥȎȟȠȘȡ ȕȓȚșȖ ȖșȖ ȠȞȎȐȩ ǼȏȞȎȏȜȠȎȗ ȡȥȎȟȠȜȘ ȚȜȠȩȑȜȗ Ȗ ȝȜȒȑȜȠȜȐȪ ȝȎȦțȬ ȞȎȕȚȓȞȜȚ ð ȏșȜȘȜȐ ǽȜȟȘȜșȪȘȡ ȝȎȦțȭ ȏȓȕ ȏșȖȕȜȟȠȖ ȐȜ Ȓȩ ȏȩȟȠȞȜ ȝȞȓȐȞȎȧȎȓȠȟȭ ȜȏȞȎȠțȜ Ȑ țȓȜȏȞȎȏȜȠȎțțȡȬ ȕȓȚșȬ Ƞȓȏȓ țȎȒȜ ȐȩȘȜȝȎȠȪ ȭȚȡ Ȑ ȤȓțȠȞȓ ȝȜșȭ Ȏ ȕȎȠȓȚ ȧȓșȘ ț ȡȠȪ ȝȜ țȓȗ ȝȞȎȐȜȗ ȘțȜȝȘȜȗ ȚȩȦȖ ȟ ȝȜșțȩȚ ȐȜȒȩ ȐȓȒȞȜȚ Ȑ Ȟȡ ȘȎȣ Ȗ ȐȩșȖȠȪ ȐȜȒȡ Ȑ ȭȚȡ ȀȎȘȖȚ ȜȏȞȎȕȜȚ Ƞȩ ȕȎȝȜșțȖȦȪ ȭȚȡ ȐȜȒȜȗ ǼȒțȜȑȜ ȠȎȘȜȑȜ ȏșȜȘȎ ȐȜȒȩ ȒȜȟȠȎȠȜȥțȜ Ȓșȭ ȡȐșȎȔțȓțȖȭ ȝȜșȭ țȎ ȞȎȟȟȠȜȭțȖȖ ȒȜ ȥȓȠȩȞȓȣ ȏșȜȘȜȐ Ȑ șȬȏȜȚ țȎȝȞȎȐșȓ țȖȖ ȠȜ ȓȟȠȪ ȡȥȎȟȠȘȎ ȞȎȕȚȓȞȜȚ ð ȏșȜȘȜȐ ȅȠȜȏȩ ȟȜȕȒȎȠȪ ȏȜșȓȓ ȘȞȡȝțȡȬ ȢȓȞȚȡ ȚȜȔțȜ ȞȎȕȚȓȟȠȖȠȪ țȓȟȘȜșȪȘȜ ȠȎȘȖȣ ȜȞȜȦȎȓȚȩȣ ȝȜșȓȗ ȞȭȒȜȚ ȒȞȡȑ ȟ ȒȞȡȑȜȚ ǽȜ ȝȓȞȖȚȓȠȞȡ ȢȓȞȚȩ țȎȒȜ ȡȟȠȎțȜȐȖȠȪ ȕȎȏȜȞ ȥȠȜȏȩ țȓ ȝȡȟȘȎȠȪ ȘȜȞȜȐ ȜȐȓȤ Ȗ ȐȞȎȔȒȓȏțȩȣ ȚȜȏȜȐ ȘȜȠȜȞȩȓ ȏȡȒȡȠ Țȓ ȦȎȠȪ ȥȓȞȓȝȎȦȘȎȚ ǰ șȓȐȜȚ țȖȔțȓȚ ȡȑșȡ ȡȟȠȎțȜȐȖ ȟȡțȒȡȘ țȎ ȐȩȟȜȠȓ ȜȒțȜȑȜ ȏșȜȘȎ țȎȒ ȕȓȚșȓȗ Ȑ ȫȠȜȠ ȟȡțȒȡȘ ȥȓȞȓȝȎȦ ȘȖ ȏȡȒȡȠ ȟȘșȎȒȩȐȎȠȪ ȡȞȜȔȎȗ ǻȎ ȞȖȟ ȝȜȘȎȕȎțȜ ȘȎȘ ȒȜșȔțȜ ȐȩȑșȭȒȓȠȪ ȝȜșȓ ǽȞȖȚȓȥȎțȖȓ Ɉɞɧɚ ɱɟɪɟɩɚɲɤɚ ɦɨɠɟɬ ɨɛɪɚɛɚɬɵɜɚɬɶ ɩɪɹɦɨɭɝɨɥɶɧɨɟ ɩɨɥɟ ɥɸɛɨɝɨ ɪɚɡɦɟɪɚ ɋɚɦɨɟ ɝɥɚɜɧɨɟ ɪɚɡɦɟɫɬɢ ɨɞɢɧ ɛɥɨɤ ɜɨɞɵ ɞɥɹ ɩɨɥɢɜɚ ɧɚ ɤɚɠɞɨɦ ɭɱɚɫɬɤɟ ɪɚɡɦɟɪɨɦ î ɛɥɨɤɨɜ

258

DZǹǮǰǮ


Ɍɚɤɠɟ ɩɨɧɚɞɨɛɢɬɫɹ ɡɚɛɨɪ ɩɨ ɩɟɪɢɦɟɬɪɭ ɜɫɟɝɨ ɩɪɹɦɨɭɝɨɥɶɧɨɝɨ ɩɨɥɹ ɧɟɡɚɜɢɫɢɦɨ ɨɬ ɟɝɨ ɪɚɡɦɟɪɚ ɱɬɨɛɵ ɧɟ ɩɭɫɤɚɬɶ ɜɪɚɠɞɟɛɧɵɯ ɦɨɛɨɜ ɢ ɠɢɜɨɬɧɵɯ

ˀ̛̭͘ ϭϰ͘Ϯ͘ ʿ̸̨̛̹̖̦̦̖ ̨̪̣̖ ̨̬̥̖̬̥̌̚ ϵ п ϵ ̨̡̨̣̍̏ ̭ ̸̨̡̨̛̛̭̯̦̥ ̨̼̏̔ ̨̛̪̭̖̬̖̦̖̔͘ ʦ ̨̣̖̥̏ ̛̦̙̦̖̥ ̱̣̱̐ ̵̨̦̯̭̌̔́́ ̸̡̖̬̖̪̹̌̌ ̛ ̡̭̱̦̱̔

ȀȓȝȓȞȪ ȘȜȑȒȎ ȝȜșȓ ȝȜȒȑȜȠȜȐșȓțȜ ȒȎȐȎȗ ȞȎȟȟȚȜȠȞȖȚ Ȏș ȑȜȞȖȠȚ țȎ ȜȟțȜȐȓ ȘȜȠȜȞȜȑȜ ȝȞȜȑȞȎȚȚȎ farmwheat ȏȡȒȓȠ ȡȝȞȎȐșȭȠȪ ȢȓȞȚȜȗ

ĜČēĜČčĚĞĖČ ČėďĚĜĔĞĘČ ğěĜČĎėđęĔī ěĤđęĔģęĚĕ ĠđĜĘĚĕ ǰ ȫȠȜȗ ȑșȎȐȓ Țȩ țȎȝȖȦȓȚ ȝȞȜȑȞȎȚȚȡ farmwheat ǻȜ ȟțȎ ȥȎșȎ țȡȔțȜ ȟȝȞȜȓȘȠȖȞȜȐȎȠȪ ȎșȑȜȞȖȠȚ ȫȠȜȗ ȝȞȜȑȞȎȚȚȩ ǽȞȓȔȒȓ ȥȓȚ ȥȓȞȓȝȎȦȘȎ țȎȥțȓȠ ȕȎțȖȚȎȠȪȟȭ ȝȜșȓȚ țȡȔțȜ ȝȞȜȐȓȞȖȠȪ ȒȐȎ ȚȜȚȓțȠȎ ǰȜ ȝȓȞȐȩȣ ȥȓȞȓȝȎȦȘȎ ȝȞȜȐȓȞȭȓȠ ȥȠȜ ȞȭȒȜȚ ȟ țȓȗ ȓȟȠȪ ȟȡțȒȡȘ dzȟșȖ ȜțȎ țȓ ȟȚȜȔȓȠ ȓȑȜ țȎȗ ȠȖ ȓȗ țȓȑȒȓ ȏȡȒȓȠ ȣȞȎțȖȠȪ ȟȜȏȞȎțțȡȬ ȝȦȓțȖȤȡ ǽȜȟȘȜșȪ Șȡ ȝȞȜȑȞȎȚȚȎ farmwheat ȏȡȒȓȠ ȟȜȒȓȞȔȎȠȪ ȢȡțȘȤȖȬ hare. sweepField() ȘȜȠȜȞȡȬ Țȩ țȎȝȖȟȎșȖ Ȑ ȑșȎȐȓ ȥȓȞȓȝȎȦȘȓ

ǽǾǼDZǾǮǺǺǶǾǼǰǮǻǶdz ȅdzǾdzǽǮȆǸǶ ȂdzǾǺdzǾǮ

259


ȠȎȘȔȓ țȓȜȏȣȜȒȖȚȜ ȝȞȜȐȓȞȖȠȪ ȥȠȜ ȡ țȓȓ ȒȜȟȠȎȠȜȥțȜ ȠȜȝșȖ ȐȎ ȥȠȜȏȩ ȝȜșțȜȟȠȪȬ ȜȏȞȎȏȜȠȎȠȪ ȝȜșȓ ǽȜȟșȓ ȠȜȑȜ ȘȎȘ ȥȓȞȓȝȎȦȘȎ ȡȏȓȒȖȠȟȭ ȥȠȜ ȡ țȓȓ ȓȟȠȪ ȒȜ ȟȠȡȝ Ș ȟȡțȒȡȘȡ Ȗ ȒȜȟȠȎȠȜȥțȜȓ ȘȜșȖȥȓȟȠȐȜ ȠȜȝșȖȐȎ ȜțȎ Ȑȩ ȕȜȐȓȠ ȢȡțȘȤȖȬ hare.sweepField() Ȗ țȎȥțȓȠ ȒȐȖȔȓțȖȓ ȝȜ ȐȟȓȚȡ ȝȞȜȟȠȞȎțȟȠȐȡ ȝȜșȭ ǽȜȟȘȜșȪȘȡ ȞȎȕțȩȓ ȏșȜȘȖ ȝȦȓțȖ Ȥȩ ȟȜȕȞȓȐȎȬȠ ȟ ȞȎȕțȜȗ ȟȘȜȞȜȟȠȪȬ Ȑ ȏȜșȪȦȖțȟȠȐȓ ȟșȡȥȎȓȐ Ȑ ȠȓȥȓțȖȓ ² ȚȖțȡȠ ² Ƞ ȓ ² ȖȑȞȜȐȩȣ Ȓțȭ 0LQHFUDIW Ȝȥȓ ȐȖȒțȜ ȥȠȜ țȓ țȎ ȐȟȓȚ ȝȜșȓ ȝȦȓțȖȤȎ ȟȜȕȞȓȓȠ ȜȒțȜȐȞȓȚȓț țȜ ǽȜȫȠȜȚȡ țȎȚ țȡȔțȜ ȟȜȕȒȎȠȪ ȢȡțȘȤȖȬ ȘȜȠȜȞȎȭ ȏȡȒȓȠ țȓ ȠȜșȪȘȜ ȐȩȕȩȐȎȠȪ ȢȡțȘȤȖȬ hare.sweepField() țȜ Ȗ ȜȝȞȓ ȒȓșȭȠȪ ȥȠȜ ȥȓȞȓȝȎȦȘȎ ȒȜșȔțȎ ȒȓșȎȠȪ țȎ ȘȎȔȒȜȚ ȘȜțȘȞȓȠ țȜȚ ȏșȜȘȓ ȝȜșȭ ȅȓȞȓȝȎȦȘȎ ȒȜșȔțȎ ȐȩȝȜșțȖȠȪ ȜȒțȜ Ȗȕ ȠȞȓȣ ȒȓȗȟȠȐȖȗ z ȝȜȟȓȭȠȪ ȟȓȚȓțȎ ȓȟșȖ ȡȥȎȟȠȜȘ țȓ ȕȎȟȎȔȓț z țȓ ȒȓșȎȠȪ țȖȥȓȑȜ ȓȟșȖ ȝȦȓțȖȤȎ ȝȜȟȎȔȓțȎ țȜ ȓȧȓ țȓ ȟȜȕȞȓșȎ z ȡȏȞȎȠȪ ȝȦȓțȖȤȡ ȓȟșȖ ȜțȎ ȟȜȕȞȓșȎ Ȗ ȐțȜȐȪ ȝȜȟȓȭȠȪ ȟȓ ȚȓțȎ ǽȜȟșȓ ȠȜȑȜ ȘȎȘ ȥȓȞȓȝȎȦȘȎ ȐȩȝȜșțȖȠ ȜȒțȜ Ȗȕ ȡȘȎȕȎțțȩȣ ȠȞȓȣ ȒȓȗȟȠȐȖȗ țȎ ȐȟȓȚ ȝȞȜȟȠȞȎțȟȠȐȓ ȝȜșȭ ȜțȎ ȐȓȞțȓȠȟȭ Ȑ ȖȟȣȜȒțȜȓ ȝȜșȜȔȓțȖȓ Ȑ ȟȜȜȠȐȓȠȟȠȐȖȖ ȟ ȎșȑȜȞȖȠȚȜȚ ȘȜȠȜȞȩȗ Țȩ ȕȎșȜȔȖșȖ Ȑ ȢȡțȘȤȖȬ hare.sweepField() Ȑ ȑșȎȐȓ ǰ ȒȎțțȜȚ ȟșȡȥȎȓ ȖȟȣȜȒțȜȓ ȝȜșȜȔȓțȖȓ ȥȓȞȓȝȎȦȘȖ țȎȣȜȒȖȠ ȟȭ ȞȭȒȜȚ ȟ ȟȡțȒȡȘȜȚ ȅȓȞȓȝȎȦȘȎ ȝȜȐȜȞȎȥȖȐȎȓȠȟȭ Ș ȟȡțȒȡ Șȡ ȟȘșȎȒȩȐȎȓȠ Ȑ țȓȑȜ ȟȜȏȞȎțțȡȬ ȝȦȓțȖȤȡ Ȏ ȕȎȠȓȚ ȟțȜȐȎ ȝȜȐȜȞȎȥȖȐȎȓȠȟȭ Ș ȝȜșȬ ǽȜȠȜȚ ȥȓȞȓȝȎȦȘȎ ȜȠȒȩȣȎȓȠ Ȑ Ƞȓ ȥȓțȖȓ ȚȖțȡȠ ȥȠȜȏȩ ȒȎȠȪ ȝȜȟȓȭțțȜȗ ȝȦȓțȖȤȓ ȐȞȓȚȭ ȟȜ ȕȞȓȠȪ Ȗ ȟțȜȐȎ ȜȏȞȎȏȎȠȩȐȎȓȠ ȝȜșȓ ȀȓȝȓȞȪ ȘȜȑȒȎ Ƞȩ ȝȜțȖȚȎȓȦȪ ȎșȑȜȞȖȠȚ Țȩ ȚȜȔȓȚ Ȗȟ ȝȜșȪȕȜȐȎȠȪ ȓȑȜ Ȓșȭ ȞȎȕȞȎȏȜȠȘȖ ȢȓȞȚȓȞȟȘȜȗ ȝȞȜȑȞȎȚȚȩ ǻȎȥțȓȚ ȟ ȒȜȏȎȐșȓțȖȭ ȐȟȝȜȚȜȑȎȠȓșȪțȜȗ ȢȡțȘȤȖȖ findBlock() Ȑ ȚȜȒȡșȪ hare Ǹ ȫȠȜȗ ȢȡțȘȤȖȖ ȥȓȞȓȝȎȦȘȎ ȏȡȒȓȠ ȜȏȞȎȧȎȠȪȟȭ ȥȠȜȏȩ ȡȏȓȒȖȠȪȟȭ ȥȠȜ ȜțȎ țȎȣȜȒȖȠȟȭ ȞȭȒȜȚ ȟ ȟȡțȒȡȘȜȚ

260

DZǹǮǰǮ


ĐĚĜČčĚĞĖČ ĘĚĐğėī 0):ȂȡțȘȤȖȭ ¿QG%ORFN() ȝȜȐȜȞȎȥȖȐȎȓȠ ȥȓȞȓȝȎȦȘȡ ȐȜȘȞȡȑ ȟȐȜȓȗ ȜȟȖ ȥȠȜȏȩ ȠȎ ȚȜȑșȎ ȞȎȟȟȚȜȠȞȓȠȪ țȎȣȜȒȖȠȟȭ șȖ ȞȭȒȜȚ ȜȝȞȓ Ȓȓșȓțțȩȗ ȏșȜȘ ȋȠȎ ȢȡțȘȤȖȭ ȝȜȚȜȔȓȠ țȎȦȓȗ ȥȓȞȓȝȎȦȘȓ ȢȓȞȚȓȞȡ țȎȗȠȖ ȏșȖȔȎȗȦȖȗ ȟȡțȒȡȘ Ȓșȭ ȣȞȎțȓțȖȭ ȟȜȏȞȎțțȜȗ ȝȦȓțȖȤȩ ȂȡțȘȤȖȭ ¿QG%ORFN()ȠȎȘȔȓ ȚȜȔȓȠ ȝȞȖȑȜȒȖȠȪȟȭ Ȗ Ȑ ȒȞȡȑȖȣ ȝȞȜȑȞȎȚȚȎȣ ȝȜȫȠȜȚȡ ȒȜȏȎȐȖȚ ȓȓ Ȑ ȚȜȒȡșȪ hare. ǰ ȜȏȜșȜȥȘȓ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ȐȩȝȜșțȖ ȘȜȚȎțȒȡ edit hare ǽȓȞȓȚȓȟȠȖ ȘȡȞȟȜȞ Ȑ țȖȔțȬȬ ȥȎȟȠȪ ȢȎȗșȎ Ȗ ȝȞȜȒȜș ȔȖ ȘȜȒ ȒȜȏȎȐȖȐ ȟșȓȒȡȬȧȖȓ ȟȠȞȜȘȖ hare ...ɩɪɨɩɭɫɤ... 200. -- ¿QG%ORFN() ɩɨɜɨɪɚɱɢɜɚɟɬ ɱɟɪɟɩɚɲɤɭ ɞɥɹ ± ɩɨɢɫɤɚ ɛɥɨɤɚ ɫ ɭɤɚɡɚɧɧɵɦ ɢɞɟɧɬɢɮɢɤɚɬɨɪɨɦ 202. function ¿QG%ORFN(name) 203. local result, block 204. 205. for i = 1, 4 do 206. result, block = turtle.inspect() 207. if block ~= nil and block['name'] == name then 208. return true 209. end 210. turtle.turnRight() 211. end 212. return false 213. end

ǿȜȣȞȎțȖ ȝȞȜȑȞȎȚȚȡ Ȗ ȐȩȗȒȖ Ȗȕ ȞȓȒȎȘȠȜȞȎ ȝȜȟșȓ ȐȐȜȒȎ Ȑȟȓȣ ȖțȟȠȞȡȘȤȖȗ dzȓ ȠȎȘȔȓ ȚȜȔțȜ ȟȘȎȥȎȠȪ ȐȩȝȜșțȖȐ ȘȜ ȚȎțȒȡ pastebin get wwzvaKuW hare. ȂȡțȘȤȖȭ findBlock() ȜȥȓțȪ ȝȞȜȟȠȎ Ȑ ȖȟȝȜșȪȕȜȐȎțȖȖ Ȁȩ ȝȓȞȓȒȎȓȦȪ ȢȡțȘȤȖȖ findBlock() ȟȠȞȜȘȡ ȟ ȖȒȓțȠȖȢȖ ȘȎȠȜȞȜȚ ȏșȜȘȎ ȘȜȠȜȞȩȗ ȟșȓȒȡȓȠ țȎȗȠȖ ǻȎȝȞȖȚȓȞ Ȓșȭ ȝȜȖȟȘȎ ȟȡțȒȡȘȎ Țȩ ȝȓȞȓȒȎȒȖȚ ȢȡțȘȤȖȖ ȖȒȓțȠȖȢȖȘȎȠȜȞ 'minecraft:chest' ȂȡțȘȤȖȭ ¿QG%ORFN() ȚȜȔȓȠ ȝȜȐȓȞ țȡȠȪ ȥȓȞȓȝȎȦȘȡ țȎȝȞȎȐȜ ȒȜ ȥȓȠȩȞȓȣ ȞȎȕ ȖȟȝȜșȪȕȡȭ ȤȖȘș for Ȑ ȟȠȞȜȘȓ Ȏ ȥȓȞȓȝȎȦȘȎ țȎ ȘȎȔȒȜȗ ȖȠȓȞȎȤȖȖ ȝȞȜ

ǽǾǼDZǾǮǺǺǶǾǼǰǮǻǶdz ȅdzǾdzǽǮȆǸǶ ȂdzǾǺdzǾǮ

261


ȐȓȞȭȓȠ ȖȒȓțȠȖȢȖȘȎȠȜȞ ȏșȜȘȎ ȞȎȟȝȜșȜȔȓțțȜȑȜ ȝȓȞȓȒ țȓȗ ȟ ȝȜȚȜȧȪȬ ȢȡțȘȤȖȖ turtle.inspect(). ȂȡțȘȤȖȭ turtle.inspect() ȐȜȕȐȞȎȧȎȓȠ ȜȒțȜ Ȗȕ ȒȐȡȣ ȕțȎȥȓțȖȗ șȜȑȖȥȓȟȘȜȓ ȕțȎȥȓțȖȓ true ȓȟșȖ ȏșȜȘ țȎȣȜȒȖȠȟȭ ȝȓȞȓȒ ȥȓȞȓȝȎȦȘȜȗ ȖșȖ false ȓȟșȖ ȏșȜȘȎ țȓȠ ǸȜȑȒȎ ȓȟȠȪ ȏșȜȘ Ȓșȭ ȝȞȜȐȓȞȘȖ ȢȡțȘȤȖȭ ȠȎȘȔȓ ȐȜȕȐȞȎȧȎȓȠ ȒȎțțȩȓ Ȝ ȏșȜȘȓ ǰ ȟȠȞȜȘȓ Țȩ ȟȜȣȞȎțȭȓȚ șȜȑȖȥȓȟȘȜȓ ȕțȎȥȓțȖȓ ȐȜȕȐȞȎȧȓțțȜȓ ȢȡțȘȤȖȓȗ turtle.inspect() Ȑ ȝȓȞȓȚȓțțȜȗ result Ȏ ȟȐȓȒȓțȖȭ Ȝ ȏșȜȘȓ Ȑ ȝȓȞȓȚȓțțȜȗ block ǻȎ ȘȎȔȒȜȗ ȖȠȓȞȎȤȖȖ ȤȖȘșȎ Ȑ ȟȠȞȜȘȓ ȝȞȜȐȓȞȭȓȠȟȭ ȟȡȧȓȟȠȐȡȓȠ șȖ ȏșȜȘ Ȗ ȓȟșȖ ȒȎ ȠȜ ȟȜȐȝȎȒȎȓȠ șȖ ȓȑȜ ȖȒȓțȠȖȢȖȘȎȠȜȞ ȟ ȝȓȞȓ ȒȎțțȩȚ ȢȡțȘȤȖȖ ¿QG%ORFN(). dzȟșȖ ȥȓȞȓȝȎȦȘȎ țȎȣȜȒȖȠ ȖȟȘȜȚȩȗ ȏșȜȘ ȜțȎ ȝȓȞȓȟȠȎȓȠ ȝȜȐȜȞȎȥȖȐȎȠȪȟȭ Ȗ ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ true ǰ ȝȞȜȠȖȐțȜȚ ȟșȡȥȎȓ ȥȓȞȓȝȎȦȘȎ ȝȞȜȒȜșȔȎȓȠ ȐȞȎȧȎȠȪȟȭ ȝȜȘȎ țȓ ȟȜȐȓȞ ȦȖȠ ȥȓȠȩȞȓ ȝȜȐȜȞȜȠȎ dzȟșȖ ȝȜȟșȓ ȥȓȠȩȞȓȣ ȝȜȐȜȞȜȠȜȐ ȥȓȞȓ ȝȎȦȘȎ țȓ țȎȣȜȒȖȠ ȕȎȒȎțțȩȗ ȏșȜȘ ȢȡțȘȤȖȭ ¿QG%ORFN() ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ false ȀȓȝȓȞȪ ȏșȎȑȜȒȎȞȭ ȫȠȜȗ ȐȟȝȜ ȚȜȑȎȠȓșȪțȜȗ ȢȡțȘȤȖȖ Țȩ ȚȜȔȓȚ țȎȝȖȟȎȠȪ ȘȜȒ ȜȟțȜȐțȜȗ ȝȞȜȑȞȎȚȚȩ ȡȝȞȎȐșȓțȖȭ ȢȓȞȚȜȗ ² farmwheat.

ĖĚĐ ěĜĚďĜČĘĘħ .):5?0-)< DzȎȐȎȗ țȎȝȖȦȓȚ ȝȞȜȑȞȎȚȚȡ ȟ țȎȦȖȚ ȎșȑȜȞȖȠȚȜȚ ǰ ȜȏȜ șȜȥȘȓ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ȐȩȝȜșțȖ ȘȜȚȎțȒȡ edit farmwheat Ȗ ȐȐȓȒȖ ȟșȓȒȡȬȧȖȗ ȘȜȒ farmwheat >>ɉɪɨɝɪɚɦɦɚ ɞɥɹ ɜɵɪɚɳɢɜɚɧɢɹ ɩɲɟɧɢɰɵ ɗɥɚ ɋɜɟɣɝɚɪɬɚ ȼɵɪɚɳɢɜɚɟɬ ɢ ɫɨɛɢɪɚɟɬ ɩɲɟɧɢɰɭ ɉɪɟɞɩɨɥɚɝɚɟɬɫɹ ɱɬɨ ɩɨɥɟ ɧɚɯɨɞɢɬɫɹ ɫɩɟɪɟɞɢ ɢ ɫɩɪɚɜɚ ɨɬ ɱɟɪɟɩɚɲɤɢ ɚ ɫɡɚɞɢɢ ɧɟɟ ɭɫɬɚɧɨɜɥɟɧ ɫɭɧɞɭɤ @@ 6. 7. os.loadAPI('hare') 8. ɨɛɪɚɛɨɬɤɚ ɚɪɝɭɦɟɧɬɨɜ ɤɨɦɚɧɞɧɨɣ ɫɬɪɨɤɢ 10. local cliArgs = {...} 11. local length = tonumber(cliArgs[1])

262

DZǹǮǰǮ


12. local width = tonumber(cliArgs[2]) 13. ɨɏɨÉ›ÉŞÉšÉ É&#x;ɧɢÉ&#x; ɢɧɎɨɪɌÉšɰɢɢ ɨÉ› ɢɍɊɨɼɜɥɨɜɚɧɢɢ LI OHQJWK QLO RU ZLGWK QLO RU FOL$UJV> @ "

then 16. print('Usage: farmwheat <length> <width>') 17. return 18. end 19. 20. print('Hold Ctrl-T to stop.') 21. ɊɪɨÉœÉ&#x;ɪɤÉš ÉžɨɍɏɭɊÉš ɤ ɍɭɧÉžɭɤɭ LI QRW KDUH ÂżQG%ORFN PLQHFUDIW FKHVW

WKHQ 24. error('Must start next to a chest.') 25. end 26. ɊɨÉœɨɪɨɏ ɤ Ɋɨɼɸ 28. turtle.turnLeft() 29. turtle.turnLeft() 30. 31. FKHFN:KHDW&URS ɍɨÉ›ɢɪÉšÉ&#x;ÉŹ É­ÉŞÉ¨É ÉšÉŁ ɢ ÉŤÉšÉ ÉšÉ&#x;ÉŹ ÉŤÉ&#x;ÉŚÉ&#x;ɧÉš 34. function checkWheatCrop() 35. local result, block = turtle.inspectDown() 36. 37. if not result then WXUWOH GLJ'RZQ ɊɨÉžÉ?ɨɏɨÉœɤÉš ÉŠÉšɲɧɢ 39. plantWheatSeed() 40. elseif block ~= nil and block['name'] == 'minecraft:wheat' and block['metadata'] == 7 then ÉŤÉ›ɨɪ É­ÉŞÉ¨É ÉšÉš ɢ ɊɨɍÉ&#x;Éœ ÉŤÉ&#x;Ɍɚɧ 42. turtle.digDown() 43. print('Collected wheat.') 44. plantWheatSeed() 45. end 46. end 47. 48. SODQW:KHDW6HHG ɊɪɨɛɭÉ&#x;ÉŹ Ɋɨɍɚɞɢɏɜ ÉŤÉ&#x;ÉŚÉ&#x;ɧÉš ɊɲÉ&#x;ɧɢɰɾ ɊɨÉž ÉąÉ&#x;ÉŞÉ&#x;ÉŠÉšɲɤɨɣ 51. function plantWheatSeed()

ǽǞǟǹǞǎǺǺǜǞǟǰǎǝǜdz Č…dzǞdzǽǎȆǸǜ Č‚dzǞǺdzǞǎ

263


52.

if not hare.selectItem('minecraft:wheat_seeds') then 53. print('Warning: Low on seeds.') 54. else WXUWOH SODFH'RZQ ɊɨɍÉ&#x;Éœ ÉŤÉ&#x;Ɍɚɧ 56. print('Planted seed.') 57. end 58. end 59. 60. VWRUH:KHDW ɊɨɌÉ&#x;ÉłÉ&#x;ɧɢÉ&#x; É­ÉŞÉ¨É ÉšÉš Éœ ɍɭɧÉžɭɤ 63. function storeWheat() ɊɨÉœɨɪɨɏ ɤ ɍɭɧÉžɭɤɭ LI QRW KDUH ÂżQG%ORFN PLQHFUDIW FKHVW

WKHQ HUURU &RXOG QRW ÂżQG FKHVW

67. end 68. ɊɨɌÉ&#x;ÉłÉ&#x;ɧɢÉ&#x; ɊɲÉ&#x;ɧɢɰɾ Éœ ɍɭɧÉžɭɤ 70. while hare.selectItem('minecraft:wheat') do 71. print('Dropping off ' .. turtle.getItemCount() .. ' wheat...') 72. if not turtle.drop() then 73. error('Wheat chest is full!') 74. end 75. end 76. ɊɨÉœɨɪɨɏ ɤ Ɋɨɼɸ ɍɧɨɜɚ 78. turtle.turnLeft() 79. turtle.turnLeft() 80. end 81. 82. ɧɚɹɚɼɨ ɪɚɛɨɏɾ ɧÉš ÉŽÉ&#x;ÉŞÉŚÉ&#x; 84. while true do ɊɪɨÉœÉ&#x;ɪɤÉš ɭɪɨÉœɧɚ ɏɨɊɼɢɜɚ 86. if turtle.getFuelLevel() < (length * width + length + width) then 87. error('Turtle needs more fuel!') 88. end 89.

264

ǹǚǎǰǎ


ɩɨɫɟɜ ɩɲɟɧɢɰɵ SULQW 6ZHHSLQJ ¿HOG

92. hare.sweepField(length, width, checkWheatCrop) 93. storeWheat() 94. 95. print('Sleeping for 10 minutes...') 96. os.sleep(600) 97. end

ǽȜȟșȓ ȐȐȜȒȎ Ȑȟȓȣ ȫȠȖȣ ȖțȟȠȞȡȘȤȖȗ ȟȜȣȞȎțȖ ȝȞȜȑȞȎȚȚȡ Ȗ ȐȩȗȒȖ Ȗȕ ȞȓȒȎȘȠȜȞȎ

ēČěğĝĖ ěĜĚďĜČĘĘħ .):5?0-)< ǽȓȞȓȒ ȕȎȝȡȟȘȜȚ ȝȞȜȑȞȎȚȚȩ farmwheat ȟșȓȒȡȓȠ ȡȏȓȒȖȠȪȟȭ ȥȠȜ ȞȎȟȟȠȜȭțȖȓ ȒȜ ȖȟȠȜȥțȖȘȎ ȐȜȒȩ ȟȜȟȠȎȐșȭȓȠ țȓ ȏȜșȓȓ ȥȓ ȠȩȞȓȣ ȏșȜȘȜȐ Ȗ ȥȠȜ ȟȡțȒȡȘ țȎȣȜȒȖȠȟȭ ȕȎ ȥȓȞȓȝȎȦȘȜȗ Ȑ ȓȓ ȖȟȣȜȒțȜȗ ȝȜȕȖȤȖȖ Ȑ șȓȐȜȚ țȖȔțȓȚ ȡȑșȡ ȝȜșȭ ȘȎȘ ȝȜȘȎ ȕȎțȜ țȎ ȞȖȟ ȅȓȞȓȝȎȦȘȡ țȎȒȜ ȜȏȜȞȡȒȜȐȎȠȪ ȎșȚȎȕțȜȗ ȚȜȠȩȑȜȗ ȥȠȜȏȩ ȜțȎ ȚȜȑșȎ ȝȞȓȐȞȎȧȎȠȪ Ȑ ȝȎȦțȬ ȕȓȚșȬ ȖșȖ ȠȞȎȐȡ ǽȜȟșȓ ȠȜȑȜ ȘȎȘ ȥȓȞȓȝȎȦȘȎ țȎȟȠȞȜȓțȎ Ȑ ȜȏȜșȜȥȘȓ ȘȜ ȚȎțȒțȜȗ ȟȠȞȜȘȖ ȐȐȓȒȖ ȘȜȚȎțȒȡ farmwheat 9 9 ȥȠȜȏȩ ȥȓ ȞȓȝȎȦȘȎ țȎȥȎșȎ ȜȏȞȎȏȎȠȩȐȎȠȪ ȝȜșȓ ȞȎȕȚȓȞȜȚ ð ȏșȜȘȜȐ

ˀ̛̭͘ ϭ4.3. ˋ̡̖̬̖̪̹̌̌ ̬̥̖̺̖̦̌̌̚ ̦̌ ̨̼̭̯̖̏ ̨̨̨̦̔̐ ̨̡̣̍̌ ̦̌̔ ̖̥̣̖̜͕̚ ̌ ̡̭̱̦̱̔ ̨̱̭̯̦̣̖̦̌̏ ̨̛̪̌̔̚ ̦̖​̖

ǽǾǼDZǾǮǺǺǶǾǼǰǮǻǶdz ȅdzǾdzǽǮȆǸǶ ȂdzǾǺdzǾǮ

265


ǶȚȓȗ Ȑ ȐȖȒȡ ȥȠȜ ȓȟșȖ Ƞȩ ȡȗȒȓȦȪ ȜȠ ȥȓȞȓȝȎȦȘȖ ȟșȖȦ ȘȜȚ ȒȎșȓȘȜ ȜțȎ ȝȓȞȓȟȠȎțȓȠ ȞȎȏȜȠȎȠȪ dzȟșȖ ȥȓȞȓȝȎȦȘȎ ȜȠ ȘșȬȥȖȠȟȭ țȎ ȟȓȞȓȒȖțȓ ȝȜșȭ ȓȓ țȡȔțȜ ȏȡȒȓȠ ȝȓȞȓȚȓȟȠȖȠȪ ȜȏȞȎȠțȜ Ȑ șȓȐȩȗ țȖȔțȖȗ ȡȑȜș ȝȜșȭ Ȗ ȟțȜȐȎ ȕȎȝȡȟȠȖȠȪ ȝȞȜ ȑȞȎȚȚȡ ȥȠȜȏȩ ȥȓȞȓȝȎȦȘȎ ȝȞȜȒȜșȔȖșȎ ȕȎțȖȚȎȠȪȟȭ ȢȓȞ ȚȜȗ ǻȎȦ ȞȜȏȜȠ ȝȞȜȒȜșȔȖȠ ȘȎȘ Ȗ ȞȎțȪȦȓ ȝȓȞȓȚȓȧȎȠȪȟȭ ȝȜ ȝȜșȬ ȝȞȜȐȓȞȭȠȪ ȕȞȓșȜȟȠȪ ȝȦȓțȖȤȩ ȟȜȏȖȞȎȠȪ ȓȓ Ȗ ȝȞȜ ȖȕȐȜȒȖȠȪ ȝȜȟȓȐ dzȟșȖ ȝȞȖ ȕȎȝȡȟȘȓ ȫȠȜȗ ȝȞȜȑȞȎȚȚȩ ȐȜȕțȖȘȎȬȠ ȜȦȖȏȘȖ ȠȧȎȠȓșȪțȜ ȟȞȎȐțȖ ȟȐȜȗ ȘȜȒ ȟ șȖȟȠȖțȑȜȚ Ȑ ȫȠȜȗ ȘțȖȑȓ ȥȠȜ ȏȩ țȎȗȠȖ ȐȜȕȚȜȔțȩȓ ȜȝȓȥȎȠȘȖ dzȟșȖ ȖȟȝȞȎȐȖȠȪ ȝȞȜȑȞȎȚȚȡ țȓ ȡȒȎȓȠȟȭ ȡȒȎșȖ ȢȎȗș ȐȩȝȜșțȖȐ ȘȜȚȎțȒȡ delete farmwheat Ȏ ȕȎȠȓȚ ȕȎȑȞȡȕȖ ȝȞȜȑȞȎȚȚȡ ȟțȜȐȎ ȐȩȝȜșțȖȐ ȘȜȚȎț Ȓȡ pastebin get SfcB8b55 farmwheat.

ĖĚęĠĔďğĜČĢĔī ěĜĚďĜČĘĘħ .):5?0-)< ǽȓȞȐȩȓ ȝȭȠȪ ȟȠȞȜȘ ȝȞȜȑȞȎȚȚȩ ȟȜȒȓȞȔȎȠ Ȝȏȩȥțȩȓ ȘȜȚȚȓț ȠȎȞȖȖ ȜȝȖȟȩȐȎȬȧȖȓ ȥȠȜ ȜțȎ ȒȓșȎȓȠ Ȗ ȘȠȜ ȞȎȕȞȎȏȜȠȎș ȝȞȜ ȑȞȎȚȚȡ ǸȜȒ Ȑ ȟȠȞȜȘȓ ȕȎȑȞȡȔȎȓȠ ȚȜȒȡșȪ hare ȥȠȜȏȩ ȝȞȜ ȑȞȎȚȚȎ ȚȜȑșȎ ȐȩȕȩȐȎȠȪ ȓȑȜ ȢȡțȘȤȖȖ ǵȎȠȓȚ ȝȞȜȑȞȎȚȚȎ ȟȥȖȠȩȐȎȓȠ ȎȞȑȡȚȓțȠȩ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ Ȓșȭ ȝȜșȡȥȓțȖȭ ȒșȖțȩ Ȗ ȦȖȞȖțȩ ȝȜșȭ dzȟșȖ ȎȞȑȡ ȚȓțȠȩ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ țȓ ȡȘȎȕȎțȩ ȝȞȜȑȞȎȚȚȎ ȐȩȐȜȒȖȠ ȟȜȜȏȧȓțȖȓ ȝȜșȪȕȜȐȎȠȓșȬ farmwheat 9. -- ɨɛɪɚɛɨɬɤɚ ɚɪɝɭɦɟɧɬɨɜ ɤɨɦɚɧɞɧɨɣ ɫɬɪɨɤɢ 10. local cliArgs = {...} 11. local length = tonumber(cliArgs[1]) 12. local width = tonumber(cliArgs[2]) 13. 14. -- ɨɬɨɛɪɚɠɟɧɢɟ ɢɧɮɨɪɦɚɰɢɢ ɨɛ ɢɫɩɨɥɶɡɨɜɚɧɢɢ 15. if length == nil or width == nil or cliArgs[1] == " WKHQ 16. print('Usage: farmwheat <length> <width>') 17. return 18. end

266

DZǹǮǰǮ


ǽȜȟȘȜșȪȘȡ ȎȞȑȡȚȓțȠȩ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ² ȫȠȜ ȐȟȓȑȒȎ ȟȠȞȜȘȜȐȩȓ ȕțȎȥȓțȖȭ Ȏ ȝȓȞȓȚȓțțȩȓ length Ȗ width ² Ȑȟȓȑ ȒȎ ȥȖȟșȎ ȘȜȒ Ȑ ȟȠȞȜȘȎȣ Ȗ ȝȓȞȓȒȎȓȠ ȝȓȞȐȩȗ Ȗ ȐȠȜȞȜȗ ȎȞȑȡȚȓțȠȩ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ȢȡțȘȤȖȖ tonumber() ǰȜȕ ȐȞȎȧȎȓȚȩȓ ȕțȎȥȓțȖȭ ȟȜȣȞȎțȭȬȠȟȭ Ȑ ȘȎȥȓȟȠȐȓ ȕțȎȥȓțȖȗ ȝȓȞȓȚȓțțȩȣ length Ȗ width. dzȟșȖ ȜȠȟȡȠȟȠȐȡȓȠ ȝȓȞȐȩȗ ȖșȖ ȐȠȜȞȜȗ ȎȞȑȡȚȓțȠ ȘȜȚȎțȒ țȜȗ ȟȠȞȜȘȖ ȠȜ ȢȡțȘȤȖȭ tonumber() ȐȓȞțȓȠ ȕțȎȥȓțȖȓ nil ȘȜȠȜȞȜȓ ȏȡȒȓȠ ȝȞȖȟȐȜȓțȜ ȝȓȞȓȚȓțțȜȗ length ȖșȖ width ȟȜ ȜȠȐȓȠȟȠȐȓțțȜ dzȟșȖ ȜȠȟȡȠȟȠȐȡȓȠ ȐȠȜȞȜȗ ȎȞȑȡȚȓțȠ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ȖșȖ ȓȟșȖ ȝȓȞȐȩȗ ȎȞȑȡȚȓțȠ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ȝȞȓȒ ȟȠȎȐșȭȓȠ ȟȜȏȜȗ ȕțȎȥȓțȖȓ " ȡȟșȜȐȖȓ ȖțȟȠȞȡȘȤȖȖ if Ȑ ȟȠȞȜȘȓ ȝȞȖțȖȚȎȓȠ ȕțȎȥȓțȖȓ true Ȗ ȐȩȝȜșțȭȓȠȟȭ ȘȜȒ Ȑ ȟȠȞȜȘȎȣ Ȗ ǸȜȒ Ȑ ȟȠȞȜȘȓ ȜȠȜȏȞȎȔȎȓȠ ȟȜȜȏȧȓțȖȓ ȝȜșȪȕȜȐȎȠȓșȬ Ȏ ȖțȟȠȞȡȘȤȖȭ end Ȑ ȟȠȞȜȘȓ ȕȎȐȓȞȦȎȓȠ ȞȎȏȜȠȡ ȝȞȜȑȞȎȚȚȩ ǵȎȠȓȚ ȝȞȜȑȞȎȚȚȎ ȐȩȝȜșțȭȓȠ ȒȜȝȜșțȖȠȓșȪțȩȓ ȦȎȑȖ ȝȜ ȝȜȒȑȜȠȜȐȘȓ ȝȞȜȐȓȞȭȭ ȥȠȜ ȡ ȥȓȞȓȝȎȦȘȖ ȓȟȠȪ Ȑȟȓ țȓȜȏȣȜȒȖ ȚȜȓ Ȓșȭ ȕȎȝȡȟȘȎ ȝȞȜȑȞȎȚȚȩ farmwheat. farmwheat 20. print('Hold Ctrl-T to stop.') 21. 22. -- ɩɪɨɜɟɪɤɚ ɞɨɫɬɭɩɚ ɤ ɫɭɧɞɭɤɭ LI QRW KDUH ¿QG%ORFN PLQHFUDIW FKHVW

WKHQ 24. error('Must start next to a chest.') 25. end 26. 27. -- ɩɨɜɨɪɨɬ ɤ ɩɨɥɸ 28. turtle.turnLeft() 29. turtle.turnLeft()

ǸȜȒ Ȑ ȟȠȞȜȘȓ ȐȩȐȜȒȖȠ ȟȜȜȏȧȓțȖȓ ȝȜșȪȕȜȐȎȠȓșȬ Ȝ ȠȜȚ ȥȠȜ Ȝț ȚȜȔȓȠ ȕȎȐȓȞȦȖȠȪ ȝȞȜȑȞȎȚȚȡ ȡȒȓȞȔȖȐȎȭ ȟȜȥȓȠȎțȖȓ ȘșȎȐȖȦ Ctrl+T ǵȎȠȓȚ ȥȓȞȓȝȎȦȘȎ ȝȩȠȎȓȠȟȭ țȎȗȠȖ ȟȡțȒȡȘ ȐȩȕȩȐȎȭ ȢȡțȘȤȖȬ hare.¿QG%ORFN('minecraft:chest'). dzȟșȖ ȜțȎ țȓ țȎȣȜȒȖȠ ȟȡțȒȡȘ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȕȎȐȓȞȦȎȓȠ ȝȞȜȑȞȎȚȚȡ ȟȜȜȏȧȓțȖȓȚ Ȝȏ ȜȦȖȏȘȓ ȝȜȠȜȚȡ ȥȠȜ țȓȠ țȓȜȏȣȜ ȒȖȚȜȟȠȖ ȝȞȜȒȜșȔȎȠȪ ȝȞȜȑȞȎȚȚȡ ȓȟșȖ țȓȠ ȟȡțȒȡȘȎ Ȓșȭ ȣȞȎ țȓțȖȭ ȝȦȓțȖȤȩ

ǽǾǼDZǾǮǺǺǶǾǼǰǮǻǶdz ȅdzǾdzǽǮȆǸǶ ȂdzǾǺdzǾǮ

267


ǽȜȟȘȜșȪȘȡ ȟȡțȒȡȘ țȎȣȜȒȖȠȟȭ ȕȎ ȥȓȞȓȝȎȦȘȜȗ Ȗ ȝȦȓțȖȥ țȩȚ ȝȜșȓȚ ȥȓȞȓȝȎȦȘȓ țȡȔțȜ ȒȐȎȔȒȩ ȝȜȐȓȞțȡȠȪ țȎșȓȐȜ ȟȠȞȜȘȖ Ȗ ȥȠȜȏȩ ȟțȜȐȎ ȜȘȎȕȎȠȪȟȭ ȝȜȐȓȞțȡȠȜȗ șȖȤȓȐȜȗ ȟȠȜȞȜțȜȗ Ș ȝȜșȬ

ĖĚĐ ĠğęĖĢĔĕ ĔĝěĚėĨēğđĘħġ Ď ĚĝęĚĎęĚĕ ěĜĚďĜČĘĘđ DzȎȐȎȗ țȎȝȖȦȓȚ ȢȡțȘȤȖȬ ȟ ȖȚȓțȓȚ checkWheatCrop() ȘȜȠȜȞȎȭ ȟȜȜȏȧȎȓȠ ȥȓȞȓȝȎȦȘȓ ȥȠȜ ȒȓșȎȠȪ țȎ ȘȎȔȒȜȚ ȡȥȎȟȠ Șȓ ȝȜșȭ ȘȜȠȜȞȜȓ ȜțȎ ȜȏȞȎȏȎȠȩȐȎȓȠ ǵȎȠȓȚ țȎȝȖȦȓȚ ȓȧȓ ȜȒțȡ ȢȡțȘȤȖȬ plantWheatSeed() ȘȜȠȜȞȎȭ ȟȜȒȓȞȔȖȠ Ȗț ȟȠȞȡȘȤȖȖ ȝȜ ȐȩȞȎȧȖȐȎțȖȬ ȟȓȚȭț ȝȦȓțȖȤȩ Ǻȩ țȎȝȖȦȓȚ ȓȧȓ Ȗ ȠȞȓȠȪȬ ȢȡțȘȤȖȬ ȟ ȖȚȓțȓȚ storeWheat() ȘȜȠȜȞȎȭ ȝȞȜȖțȟȠȞȡȘȠȖȞȡȓȠ ȥȓȞȓȝȎȦȘȡ Ȝ ȠȜȚ ȥȠȜ ȜțȎ ȒȜșȔțȎ ȒȓșȎȠȪ ȝȜȟșȓ ȟȏȜȞȎ ȡȞȜȔȎȭ ȋȠȖ ȠȞȖ ȢȡțȘȤȖȖ ȏȡȒȡȠ ȐȩȕȩȐȎȠȪȟȭ Ȗȕ ȜȟțȜȐțȜȗ ȥȎȟȠȖ ȝȞȜȑȞȎȚȚȩ farmwheat.

ĚĞĝėđĒĔĎČęĔđ ğĜĚĒČī ȂȡțȘȤȖȭ checkWheatCrop() ȝȞȜȐȓȞȭȓȠ ȝȞȜȟȠȞȎțȟȠȐȜ ȝȜȒ ȥȓȞȓȝȎȦȘȜȗ Ȗ ȜȝȞȓȒȓșȭȓȠ ȘȎȘȜȓ ȒȓȗȟȠȐȖȓ ȒȜșȔțȎ ȝȞȜȖȕ ȐȓȟȠȖ ȥȓȞȓȝȎȦȘȎ țȎȣȜȒȭȟȪ Ȑ ȒȎțțȜȗ ȝȜȕȖȤȖȖ Ǻȩ ȝȓȞȓȒȎ ȒȖȚ ȢȡțȘȤȖȬ checkWheatCrop() ȢȡțȘȤȖȖ sweepField() ȥȠȜȏȩ ȜțȎ ȐȩȕȩȐȎșȎȟȪ Ȑ ȘȎȔȒȜȗ ȝȜȕȖȤȖȖ ȝȜșȭ ȘȜȠȜȞȜȓ Ȝȏ ȞȎȏȎȠȩȐȎȓȠ ȥȓȞȓȝȎȦȘȎ ǽȜȘȎȕȎțțȩȗ țȖȔȓ ȘȜȒ ȖțȟȠȞȡȘȠȖȞȡȓȠ ȥȓȞȓȝȎȦȘȡ ȝȜȟȎ ȒȖȠȪ ȟȓȚȓțȎ ȓȟșȖ ȝȜȒ ȥȓȞȓȝȎȦȘȜȗ țȓȠ ȝȦȓțȖȤȩ farmwheat 32. -- checkWheatCrop() ɫɨɛɢɪɚɟɬ ɭɪɨɠɚɣ 33. -- ɢ ɫɚɠɚɟɬ ɫɟɦɟɧɚ 34. function checkWheatCrop() 35. local result, block = turtle.inspectDown() 36. 37. if not result then 38. turtle.digDown() -- ɩɨɞɝɨɬɨɜɤɚ ɩɚɲɧɢ 39. plantWheatSeed()

268

DZǹǮǰǮ


ȂȡțȘȤȖȭ turtle.inspectDown() ȜȟȡȧȓȟȠȐșȭȓȠ țȓȝȜ ȟȞȓȒȟȠȐȓțțȡȬ ȝȞȜȐȓȞȘȡ ȏșȜȘȎ ȝȜȒ ȥȓȞȓȝȎȦȘȜȗ dzȟșȖ ȠȎȚ țȓȠ ȏșȜȘȎ ȝȓȞȓȚȓțțȜȗ result Ȑ ȟȠȞȜȘȓ ȝȞȖȟȐȎȖȐȎȓȠȟȭ ȕțȎȥȓțȖȓ false Ȏ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȜȏȞȎȏȎȠȩȐȎȓȠ ȏșȜȘ ȕȓȚ șȖ ȖșȖ ȠȞȎȐȩ ǸȜȒ Ȑ ȟȠȞȜȘȓ ȐȩȕȩȐȎȓȠ ȢȡțȘȤȖȬ plantWheatSeed() ȘȜȠȜȞȡȬ Țȩ ȟȜȕȒȎȒȖȚ Ȑ ȟșȓȒȡȬȧȓȚ ȞȎȕȒȓșȓ ȂȡțȘȤȖȭ plantWheatSeed() ȟȓȓȠ ȟȓȚȓțȎ ȝȦȓțȖȤȩ țȎ ȏșȜ Șȓ ȝȎȦțȖ ȝȜȒ ȥȓȞȓȝȎȦȘȜȗ dzȟșȖ ȝȞȜȟȠȞȎțȟȠȐȜ ȝȜȒ ȥȓȞȓȝȎȦȘȜȗ țȓ ȝȡȟȠȜ ȠȜ ȓȟȠȪ ȟȜ ȒȓȞȔȖȠ ȝȦȓțȖȤȡ ȖșȖ ȟȓȚȓțȎ ȥȓȞȓȝȎȦȘȎ ȝȞȜȐȓȞȭȓȠ ȟȜȒȓȞ ȔȖȠ șȖ ȝȞȜȟȠȞȎțȟȠȐȜ ȕȞȓșȡȬ ȝȦȓțȖȤȡ farmwheat 40. elseif block ~= nil and block['name'] == 'minecraft:wheat' and block['metadata'] == 7 then 41. -- ɫɛɨɪ ɭɪɨɠɚɹ ɢ ɩɨɫɟɜ ɫɟɦɹɧ 42. turtle.digDown() 43. print('Collected wheat.') 44. plantWheatSeed() 45. end 46. end

ǸȜȒ Ȑ ȟȠȞȜȘȓ ȟțȎȥȎșȎ ȝȞȜȐȓȞȭȓȠ ȝȞȖȟȐȜȓțȜ șȖ ȝȓȞȓ ȚȓțțȜȗ block ȕțȎȥȓțȖȓ nil Ȏ ȕȎȠȓȚ ȝȞȜȐȓȞȭȓȠ ȟȜȐȝȎȒȎȓȠ șȖ ȕțȎȥȓțȖȓ block['name'] ȟ ȖȒȓțȠȖȢȖȘȎȠȜȞȜȚ ȏșȜȘȎ ȝȦȓ țȖȤȩ dzȟșȖ ȝȜȒ ȥȓȞȓȝȎȦȘȜȗ țȖȥȓȑȜ țȓȠ ȢȡțȘȤȖȭ turtle. inspectDown() Ȑ ȟȠȞȜȘȓ ȝȞȖȟȐȎȖȐȎȓȠ ȝȓȞȓȚȓțțȜȗ block ȕțȎȥȓțȖȓ nil ȋȠȜ ȚȜȑșȜ ȏȩ ȝȞȖȐȓȟȠȖ Ș ȠȜȚȡ ȥȠȜ block ['name'] Ȑ ȟȠȞȜȘȓ ȐȩȕȜȐȓȠ ȜȦȖȏȘȡ ȝȜȠȜȚȡ ȥȠȜ ȝȓȞȓȚȓț țȎȭ block ȏȡȒȓȠ ȖȚȓȠȪ ȕțȎȥȓțȖȓ nil ȐȚȓȟȠȜ ȒȜȝȡȟȠȖȚȜȑȜ ȠȎȏșȖȥțȜȑȜ ȕțȎȥȓțȖȭ Dzșȭ ȝȞȓȒȜȠȐȞȎȧȓțȖȭ ȫȠȜȗ ȜȦȖȏȘȖ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȟțȎȥȎșȎ ȝȞȜȐȓȞȭȓȠ ȥȠȜ ȝȓȞȓȚȓțțȜȗ block țȓ ȝȞȖȟȐȜȓțȜ ȕțȎȥȓțȖȓ nil. ȀȎȏșȖȥțȜȓ ȕțȎȥȓțȖȓ ȝȓȞȓȚȓțțȜȗ block ȠȎȘȔȓ ȟȜȒȓȞȔȖȠ ȘșȬȥ 'metadata' ȕțȎȥȓțȖȓ ȘȜȠȜȞȜȑȜ ȡȘȎȕȩȐȎȓȠ ȘȎȘ ȒȜșȑȜ ȞȜȟșȎ ȝȦȓțȖȤȎ dzȟșȖ ȟȓȚȓțȎ ȝȦȓțȖȤȩ ȏȩșȖ ȝȜȟȎȔȓțȩ ȠȜșȪȘȜ ȥȠȜ ȘșȬȥ 'metadata' ȖȚȓȓȠ ȕțȎȥȓțȖȓ 0 dzȟșȖ Ȕȓ Ȝț

ǽǾǼDZǾǮǺǺǶǾǼǰǮǻǶdz ȅdzǾdzǽǮȆǸǶ ȂdzǾǺdzǾǮ

269


ȖȚȓȓȠ ȕțȎȥȓțȖȓ 7 ȝȦȓțȖȤȎ ȟȜȕȞȓșȎ Ȗ ȝȜȟșȓȒțȓȓ ȡȟșȜȐȖȓ Ȑ ȟȠȞȜȘȓ ȐȩȝȜșțȭȓȠȟȭ true ǰ ȤȓșȜȚ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȝȞȜȐȓȞȭȓȠ ȟȜȏșȬȒȓțȖȓ ȠȞȓȣ ȞȎȕ țȩȣ ȡȟșȜȐȖȗ țȎȣȜȒȖȠȟȭ șȖ ȝȜȒ ȥȓȞȓȝȎȦȘȜȗ ȘȎȘȜȗ țȖȏȡȒȪ ȏșȜȘ ȭȐșȭȓȠȟȭ șȖ Ȝț ȏșȜȘȜȚ ȝȦȓțȖȤȩ Ȗ ȟȜȕȞȓș șȖ ȫȠȜȠ ȏșȜȘ ȝȦȓțȖȤȩ dzȟșȖ ȘȎȘȜȓ șȖȏȜ Ȗȕ ȫȠȖȣ ȡȟșȜȐȖȗ ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ false ȖȟȝȜșțȓțȖȓ ȝȓȞȓȣȜȒȖȠ Ș ȟȠȞȜȘȓ ȘȜȠȜȞȎȭ ȕȎȐȓȞȦȎȓȠ ȏșȜȘ ȘȜȒȎ Ȗ ȥȓȞȓȝȎȦȘȎ țȖȥȓȑȜ țȓ ȒȓșȎȓȠ dzȟșȖ Ȑ ȟȠȞȜȘȓ ȟȜȏșȬȒȓțȩ true Ȑȟȓ ȡȟșȜȐȖȭ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȟȜȏȖȞȎȓȠ ȝȦȓțȖȤȡ ȐȩȕȩȐȎȭ ȢȡțȘȤȖȬ turtle. digDown() ǻȓȕȎȐȖȟȖȚȜ ȜȠ ȠȜȑȜ ȒȜȏȩȐȎȬȠ șȖ ȥȓȞȓȝȎȦȘȖ ȞȡȒȡ ȞȡȏȭȠ ȒȓȞȓȐȜ ȖșȖ ȟȜȏȖȞȎȬȠ ȡȞȜȔȎȗ ȝȦȓțȖȤȩ ȢȡțȘ ȤȖȖ turtle.dig() ȝȞȜȟȠȜ ȟȜȏȖȞȎȬȠ ȏșȜȘȖ ȝȜȒ ȥȓȞȓȝȎȦȘȜȗ ȟ ȝȜȚȜȧȪȬ ȖțȟȠȞȡȚȓțȠȎ Ȗȕ ȓȓ ȖțȐȓțȠȎȞȭ Ǯ ȐȜȠ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȐȩȕȩȐȎȓȠ ȢȡțȘȤȖȬ plantWheatSeed() ȘȜȠȜȞȎȭ țȓ ȠȜșȪ ȘȜ ȟȜȏȖȞȎȓȠ ȝȦȓțȖȤȡ țȜ Ȗ ȕȎȟȓȖȐȎȓȠ țȎ ȓȓ ȚȓȟȠȓ țȜȐȡȬ DzȎ șȓȓ Țȩ ȞȎȟȟȚȜȠȞȖȚ ȫȠȡ ȢȡțȘȤȖȬ

ěĚĝđĎ ěĤđęĔĢħ ǽȜȟȘȜșȪȘȡ Ȑ ȟȠȞȜȘȎȣ Ȗ ȠȞȓȏȡȓȠȟȭ ȜȒȖț Ȗ ȠȜȠ Ȕȓ ȘȜȒ ȞȎȕȡȚțȜ ȝȜȚȓȟȠȖȠȪ ȓȑȜ Ȑ ȜȠȒȓșȪțȡȬ ȢȡțȘȤȖȬ plantWheatSeed() ȠȜȑȒȎ țȓ ȝȞȖȒȓȠȟȭ țȎȏȖȞȎȠȪ ȓȑȜ ȒȐȎȔȒȩ ǰȜȜȏȧȓ ȝȞȖ țȎȝȖȟȎțȖȖ ȝȞȜȑȞȎȚȚ țȎ ȭȕȩȘȓ /XD ȘȜȒ ȏȡȒȓȠ ȏȜșȓȓ ȥȖ ȠȎȏȓșȪțȩȚȖ ȓȟșȖ ȖȟȝȜșȪȕȜȐȎȠȪ ȢȡțȘȤȖȖ Ȓșȭ ȖȕȏȎȐșȓțȖȭ ȜȠ ȒȡȏșȖȞȡȬȧȓȑȜ ȘȜȒȎ ǽȓȞȐȎȭ ȕȎȒȎȥȎ ȘȜȠȜȞȡȬ ȐȩȝȜșțȭȓȠ ȢȡțȘȤȖȭ plantWheatSeed()Ȑ ȟȠȞȜȘȓ ² ȫȠȜ ȐȩȏȜȞ ȭȥȓȗȘȖ ȖțȐȓțȠȎȞȭ ȥȓ ȞȓȝȎȦȘȖ ȘȜȠȜȞȎȭ ȟȜȒȓȞȔȖȠ ȟȓȚȓțȎ ȝȦȓțȖȤȩ ȋȠȎ ȕȎȒȎȥȎ ȞȓȦȎȓȠȟȭ ȝȓȞȓȒȎȥȓȗ Ȑ ȢȡțȘȤȖȬ hare.selectItem() ȕțȎȥȓ țȖȭ 'minecraft:wheat _ seeds'. farmwheat 49. -- plantWheatSeed() ɩɪɨɛɭɟɬ ɩɨɫɚɞɢɬɶ 50. -- ɫɟɦɟɧɚ ɩɲɟɧɢɰɵ ɩɨɞ ɱɟɪɟɩɚɲɤɨɣ 51. function plantWheatSeed() 52. if not hare.selectItem('minecraft:wheat_seeds') then 53. print('Warning: Low on seeds.')

270

DZǹǮǰǮ


dzȟșȖ ȟȓȚȭț țȓȠ ȥȓȞȓȝȎȦȘȎ ȐȩȐȜȒȖȠ ȝȞȓȒȡȝȞȓȔȒȎȬȧȓȓ ȟȜȜȏȧȓțȖȓ ȝȜȟȓȐ țȓ ȝȞȜȖȕȐȜȒȖȠ Ȗ ȝȞȜȒȜșȔȎȓȠ ȞȎȏȜȠȡ Ȑ ȟȜ ȜȠȐȓȠȟȠȐȖȖ ȟ ȜȟȠȎșȪțȜȗ ȥȎȟȠȪȬ ȝȞȜȑȞȎȚȚȩ ǵȎȐȓȞȦȓțȖȓ ȝȞȜȑȞȎȚȚȩ Ȑ ȫȠȜȚ ȟșȡȥȎȓ țȓ ȠȞȓȏȡȓȠȟȭ ȝȜȠȜȚȡ ȥȠȜ ȥȓȞȓ ȝȎȦȘȎ ȝȜșȡȥȖȠ ȟȓȚȓțȎ ȟȜȏȞȎȐ ȕȞȓșȡȬ ȝȦȓțȖȤȡ ǻȜ ȓȟșȖ Ȑ ȟȠȞȜȘȓ ȢȡțȘȤȖȭ selectItem() ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ true ȟȓȚȓțȎ ȏȡȒȡȠ ȐȕȭȠȩ Ȗȕ ȖțȐȓțȠȎȞȭ ȥȓȞȓȝȎȦȘȖ ǯșȜȘ ȘȜȒȎ ȘȜȠȜȞȩȗ ȟșȓȒȡȓȠ ȕȎ ȖțȟȠȞȡȘȤȖȓȗ else Ȑ ȟȠȞȜ Șȓ ȕȎȟȓȐȎȓȠ ȟȓȚȓțȎ Ȗ ȜȠȜȏȞȎȔȎȓȠ ȖȑȞȜȘȡ ȟȜȜȏȧȓțȖȓ Ȝȏ ȫȠȜȚ farmwheat 54. else 55. turtle.placeDown() -- ɩɨɫɟɜ ɫɟɦɹɧ 56. print('Planted seed.') 57. end 58. end

ǰ ȟȠȞȜȘȓ ȢȡțȘȤȖȭ turtle.placeDown() ȕȎȟȓȐȎȓȠ ȟȓ ȚȓțȎ ȓȟșȖ ȜțȖ ȜȏțȎȞȡȔȓțȩ Ȑ ȠȓȘȡȧȓȗ ȭȥȓȗȘȓ ȖțȐȓțȠȎȞȭ Ȏ ȝȜȒ ȥȓȞȓȝȎȦȘȜȗ țȎȣȜȒȖȠȟȭ ȝȎȦțȭ ǵȎȠȓȚ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȐȩȐȜȒȖȠ ȟȜȜȏȧȓțȖȓ Ȝ ȠȜȚ ȥȠȜ ȟȓȚȓțȎ ȝȜȟȎȔȓțȩ Ȏ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȕȎȐȓȞȦȎȓȠ ȏșȜȘ ȘȜȒȎ ȢȡțȘȤȖȖ plantWheatSeed().

ġĜČęđęĔđ ěĤđęĔĢħ ǽȜȟșȓ ȠȜȑȜ ȘȎȘ ȥȓȞȓȝȎȦȘȎ ȜȏȞȎȏȜȠȎȓȠ Ȑȟȓ ȝȜșȓ ȓȗ țȡȔțȜ ȝȜȚȓȟȠȖȠȪ ȟȜȏȞȎțțȡȬ ȝȦȓțȖȤȡ Ȑ ȟȡțȒȡȘ Dzșȭ ȫȠȜȑȜ ȝȞȜ ȑȞȎȚȚȎ ȐȩȕȩȐȎȓȠ ȢȡțȘȤȖȬ storeWheat() ȋȠȎ ȢȡțȘȤȖȭ ȖțȟȠȞȡȘȠȖȞȡȓȠ ȥȓȞȓȝȎȦȘȡ țȎȗȠȖ ȟȡțȒȡȘ Ȗ ȝȜȐȓȞțȡȠȪȟȭ Ș țȓȚȡ șȖȤȓȐȜȗ ȟȠȜȞȜțȜȗ farmwheat 61. -- storeWheat() ɩɨɦɟɳɟɧɢɟ ɭɪɨɠɚɹ 62. -- ɜ ɫɭɧɞɭɤ 63. function storeWheat() 64. -- ɩɨɜɨɪɨɬ ɤ ɫɭɧɞɭɤɭ LI QRW KDUH ¿QG%ORFN PLQHFUDIW FKHVW

WKHQ HUURU &RXOG QRW ¿QG FKHVW

67. end

ǽǾǼDZǾǮǺǺǶǾǼǰǮǻǶdz ȅdzǾdzǽǮȆǸǶ ȂdzǾǺdzǾǮ

271


ǸȜȒ Ȑ ȟȠȞȜȘȓ ȐȩȕȩȐȎȓȠ ȢȡțȘȤȖȬ hare.¿QG%ORFN() Ȗ ȝȓȞȓȒȎȓȠ ȓȗ ȕțȎȥȓțȖȓ 'minecraft:chest' Ȗȕ ȕȎ ȥȓȑȜ ȥȓ ȞȓȝȎȦȘȎ țȎȥȖțȎȓȠ ȐȞȎȧȓțȖȓ ȐȜȘȞȡȑ ȟȐȜȓȗ ȜȟȖ Ȗ ȜȟȠȎțȎȐ șȖȐȎȓȠȟȭ ȘȜȑȒȎ ȜȏțȎȞȡȔȖȐȎȓȠ ȟȡțȒȡȘ dzȟșȖ ȥȓȞȓȝȎȦȘȎ țȓ ȚȜȔȓȠ țȎȗȠȖ ȟȡțȒȡȘ ȐȩȕȜȐ ȢȡțȘȤȖȖ hare.¿QG%ORFN() ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ false Ȏ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȕȎȐȓȞȦȎȓȠ ȝȞȜȑȞȎȚȚȡ ȟ ȟȜȜȏȧȓțȖȓȚ Ȝȏ ȜȦȖȏȘȓ dzȟșȖ ȟȡțȒȡȘ ȜȏțȎȞȡȔȓț ȐȩȝȜșțȓțȖȓ ȝȞȜȑȞȎȚȚȩ ȝȞȜ ȒȜșȔȎȓȠȟȭ ǽȞȖ ȫȠȜȚ ȥȓȞȓȝȎȦȘȎ ȜȘȎȕȩȐȎȓȠȟȭ ȜȏȞȎȧȓțțȜȗ Ș ȟȡțȒȡȘȡ DzȎșȓȓ ȜțȎ ȐȩȏȖȞȎȓȠ ȭȥȓȗȘȡ ȖțȐȓțȠȎȞȭ ȟȜȒȓȞ ȔȎȧȡȬ ȝȦȓțȖȤȡ Ȗ ȝȓȞȓȚȓȧȎȓȠ ȓȓ ȟȜȒȓȞȔȖȚȜȓ Ȑ ȟȡțȒȡȘ ȐȩȕȩȐȎȭ ȢȡțȘȤȖȬ turtle.drop(). farmwheat 69. -- ɩɨɦɟɳɟɧɢɟ ɩɲɟɧɢɰɵ ɜ ɫɭɧɞɭɤ 70. while hare.selectItem('minecraft:wheat') do 71. print('Dropping off ' .. turtle.getItemCount() .. ' wheat...') 72. if not turtle.drop() then 73. error('Wheat chest is full!') 74. end 75. end

ǰ ȟȠȞȜȘȓ țȎȥȖțȎȓȠȟȭ ȤȖȘș while ȡȟșȜȐȖȓ ȘȜȠȜȞȜ ȑȜ ȝȞȜȐȓȞȭȓȠ ȕțȎȥȓțȖȓ ȐȜȕȐȞȎȧȎȓȚȜȓ ȐȩȕȜȐȜȚ ȢȡțȘȤȖȖ hare.selectItem('minecraft:wheat') ǽȜȘȎ ȝȦȓțȖȤȎ țȎ ȣȜȒȖȠȟȭ Ȑ ȖțȐȓțȠȎȞȓ ȥȓȞȓȝȎȦȘȖ ȫȠȎ ȢȡțȘȤȖȖ ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ true Ȗ ȤȖȘș while ȐȩȝȜșțȭȓȠȟȭ ǸȜȒ Ȑ ȟȠȞȜȘȓ ȐțȡȠȞȖ ȫȠȜȑȜ ȤȖȘșȎ ȟȜȜȏȧȎȓȠ ȖȑȞȜȘȡ ȘȜșȖȥȓȟȠȐȜ ȝȦȓțȖȤȩ Ȑ ȠȓȘȡȧȓȗ ȭȥȓȗȘȓ Ȏ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȝȩȠȎȓȠȟȭ ȝȜȚȓȟȠȖȠȪ ȫȠȡ ȝȦȓțȖȤȡ Ȑ ȟȡțȒȡȘ ȝȓȞȓȒ ȥȓȞȓȝȎȦȘȜȗ dzȟșȖ ȟȡțȒȡȘ ȡȔȓ ȕȎȝȜșțȓț ȐȩȕȜȐ ȢȡțȘȤȖȖ turtle. drop() Ȑ ȟȠȞȜȘȓ ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ false ǰ ȫȠȜȚ ȟșȡ ȥȎȓ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȕȎȐȓȞȦȎȓȠ ȝȞȜȑȞȎȚȚȡ ȟ ȟȜȜȏȧȓțȖȓȚ Ȝȏ ȜȦȖȏȘȓ ǰ ȝȞȜȠȖȐțȜȚ ȟșȡȥȎȓ ȤȖȘș ȐȩȝȜșțȭȓȠȟȭ ȝȜȘȎ ȝȦȓ țȖȤȎ ȓȧȓ ȓȟȠȪ Ȏ ȕȎȠȓȚ ȖȟȝȜșțȓțȖȓ ȝȓȞȓȣȜȒȖȠ Ș ȟȠȞȜȘȓ ǸȜȑȒȎ ȥȓȞȓȝȎȦȘȎ ȐȕȎȖȚȜȒȓȗȟȠȐȡȓȠ ȟ ȟȡțȒȡȘȜȚ ȜțȎ ȝȜ ȐȓȞțȡȠȎ ȟȝȖțȜȗ Ș ȝȜșȬ ȅȠȜȏȩ ȟțȜȐȎ ȜȘȎȕȎȠȪȟȭ Ȑ ȝȜșȓ ȓȗ țȡȔțȜ ȞȎȕȐȓȞțȡȠȪȟȭ

272

DZǹǮǰǮ


farmwheat 77. -- ɩɨɜɨɪɨɬ ɤ ɩɨɥɸ ɫɧɨɜɚ 78. turtle.turnLeft() 79. turtle.turnLeft() 80. end

ǸȜȒ Ȑ ȟȠȞȜȘȎȣ Ȗ ȒȐȎȔȒȩ ȝȜȐȜȞȎȥȖȐȎȓȠ ȥȓȞȓȝȎȦȘȡ țȎșȓȐȜ ȥȠȜȏȩ ȜțȎ ȟțȜȐȎ ©ȟȚȜȠȞȓșȎª țȎ ȝȜșȓ ǸȜȒ Ȑ ȟȠȞȜȘȓ ȕȎȐȓȞȦȎȓȠ ȢȡțȘȤȖȬ storeWheat(). ȀȓȝȓȞȪ ȡ țȎȟ ȓȟȠȪ Ȑȟȓ ȠȞȖ ȢȡțȘȤȖȖ ȘȜȠȜȞȩȓ ȏȡȒȡȠ Ȑȩȕȩ ȐȎȠȪȟȭ Ȗȕ ȜȟțȜȐțȜȗ ȝȞȜȑȞȎȚȚȩ checkWheatCrop() plantWheatSeed() Ȗ storeWheat() DzȎȐȎȗ ȕȎȗȚȓȚȟȭ ȟȓșȪȟȘȖȚ ȣȜȕȭȗȟȠȐȜȚ

ĜČčĚĞČ Ď ĢĔĖėđ ǾȎȟȟȚȜȠȞȖȚ ȜȟțȜȐțȜȗ ȤȖȘș ȝȞȜȑȞȎȚȚȩ Ȑ ȟȠȞȜȘȎȣ ² ȘȜȠȜȞȩȗ ȏȡȒȓȠ ȐȩȕȩȐȎȠȪ Ȑȟȓ țȓȜȏȣȜȒȖȚȩȓ ȢȡțȘȤȖȖ ǰ ȫȠȜȚ ȤȖȘșȓ ȥȓȞȓȝȎȦȘȎ ȟțȎȥȎșȎ ȝȞȜȐȓȞȭȓȠ ȥȠȜ ȡ țȓȓ ȒȜȟȠȎȠȜȥ țȜ ȠȜȝșȖȐȎ dzȟșȖ Ȓșȭ ȜȏȞȎȏȜȠȘȖ ȝȜșȭ ȠȜȝșȖȐȎ ȒȜȟȠȎȠȜȥțȜ țȎȦ ȞȜȏȜȠ țȎȥȖțȎȓȠ ȐȩȞȎȧȖȐȎȠȪ Ȗ ȟȜȏȖȞȎȠȪ ȡȞȜȔȎȗ ȟȜ ȣȞȎțȭȠȪ ȟȜȏȞȎțțȡȬ ȝȦȓțȖȤȡ Ȑ ȟȡțȒȡȘȓ ȝȜȠȜȚ ȜȠȒȩȣȎȠȪ ȚȖțȡȠ ȥȠȜȏȩ ȝȦȓțȖȤȎ ȡȟȝȓșȎ ȟȜȕȞȓȠȪ Ȗ ȝȜȐȠȜȞȭȠȪ ȐȓȟȪ ȝȞȜȤȓȟȟ ȟ țȎȥȎșȎ ǻȎ ȝȓȞȐȜȚ ȦȎȑȓ ȤȖȘșȎ ȥȓȞȓȝȎȦȘȎ ȝȞȜȐȓȞȭȓȠ ȥȠȜ ȡ țȓȓ ȒȜȟȠȎȠȜȥțȜ ȠȜȝșȖȐȎ Ȓșȭ ȝȓȞȓȚȓȧȓțȖȭ ȝȜ ȐȟȓȚȡ ȝȜșȬ Ȗ ȐȜȕ ȐȞȎȧȓțȖȭ Ȑ ȖȟȣȜȒțȜȓ ȝȜșȜȔȓțȖȓ farmwheat 83. -- ɧɚɱɚɥɨ ɪɚɛɨɬɵ ɧɚ ɮɟɪɦɟ 84. while true do 85. -- ɩɪɨɜɟɪɤɚ ɭɪɨɜɧɹ ɬɨɩɥɢɜɚ 86. if turtle.getFuelLevel() < (length * width + length + width) then 87. error('Turtle needs more fuel!') 88. end

ȁȟșȜȐȖȓ ȤȖȘșȎ while Ȑ ȟȠȞȜȘȓ ȐȟȓȑȒȎ ȖȟȠȖțțȜ ȀȜ ȓȟȠȪ ȫȠȜ ȏȓȟȘȜțȓȥțȩȗ ȤȖȘș ȝȜȫȠȜȚȡ ȝȞȜȑȞȎȚȚȎ ȕȎȐȓȞȦȎ ȓȠȟȭ ȠȜșȪȘȜ ȓȟșȖ ȐȩȕȩȐȎȓȠȟȭ ȢȡțȘȤȖȭ error() ȖșȖ ȖȑȞȜȘ ȡȒȓȞȔȖȐȎȓȠ ȟȜȥȓȠȎțȖȓ ȘșȎȐȖȦ Ctrl+T.

ǽǾǼDZǾǮǺǺǶǾǼǰǮǻǶdz ȅdzǾdzǽǮȆǸǶ ȂdzǾǺdzǾǮ

273


ȅȠȜȏȩ ȐȩȝȜșțȖȠȪ ȝȓȞȐȩȗ ȦȎȑ țȎȚ țȡȔțȜ ȟȜȟȠȎȐȖȠȪ ȡȞȎȐțȓțȖȓ Ȓșȭ ȞȎȟȥȓȠȎ ȘȜșȖȥȓȟȠȐȎ ȠȜȝșȖȐȎ ȘȜȠȜȞȜȓ ȝȜȠȞȓ ȏȡȓȠȟȭ ȥȓȞȓȝȎȦȘȓ ȥȠȜȏȩ ȜȏȞȎȏȜȠȎȠȪ Ȑȟȓ ȝȜșȓ Dzșȭ ȡȝȞȜȧȓ țȖȭ ȞȎȟȥȓȠȎ Țȩ țȓȟȘȜșȪȘȜ ȝȓȞȓȜȤȓțȖȚ ȝȜȠȞȓȏțȜȟȠȖ ȥȓȞȓ ȝȎȦȘȖ Ȑ ȠȜȝșȖȐȓ ǰȜ ȝȓȞȐȩȣ ȜȝȞȓȒȓșȖȚ ȟȘȜșȪȘȜ ȠȜȝșȖȐȎ ȠȞȓȏȡȓȠȟȭ ȥȓȞȓ ȝȎȦȘȓ Ȓșȭ ȝȓȞȓȚȓȧȓțȖȭ ȝȜ ȘȎȔȒȜȚȡ ȟȠȜșȏȤȡ ȝȜșȭ ǼțȎ Ȗȟ ȝȜșȪȕȡȓȠ ȜȒțȡ ȓȒȖțȖȤȡ ȠȜȝșȖȐȎ ȝȞȖ ȘȎȔȒȜȚ ȝȓȞȓȚȓȧȓțȖȖ țȎ ȜȒȖț ȏșȜȘ ȠȎȘȖȚ ȜȏȞȎȕȜȚ Ȓșȭ ȝȓȞȓȚȓȧȓțȖȭ ȝȜ ȟȠȜșȏȤȡ ȒșȖțȎ ȘȜȠȜȞȜȑȜ ȟȜȟȠȎȐșȭȓȠ length ȏșȜȘȜȐ ȝȜȠȞȓȏȡȓȠȟȭ ȟȜ ȐȓȞȦȖȠȪ length - 1 ȦȎȑȜȐ Ȗ ȟȜȜȠȐȓȠȟȠȐȓțțȜ ȝȜȠȞȎȠȖȠȪ length - 1 ȓȒȖțȖȤ ȠȜȝșȖȐȎ ǻȜ ȥȓȞȓȝȎȦȘȎ ȖȟȝȜșȪȕȡȓȠ ȠȜȝșȖȐȜ Ȗ ȝȞȖ ȝȓȞȓȚȓȧȓțȖȖ Ȗȕ ȜȒțȜȑȜ ȟȠȜșȏȤȎ Ȑ ȒȞȡȑȜȗ ȠȜȑȒȎ Ȝȏȧȓȓ ȘȜșȖȥȓȟȠȐȜ țȓȜȏȣȜȒȖȚȜȓ Ȓșȭ ȝȓȞȓȒȐȖȔȓțȖȭ ȝȜ ȐȟȓȚȡ ȟȠȜșȏȤȡ ȟȜȟȠȎȐȖȠ length - 1 + 1 ȓȒȖțȖȤ ǵȎȠȓȚ ȝȜșȡȥȓțțȜȓ ȥȖȟșȜ ȡȚțȜȔȎȓȚ țȎ ȘȜșȖȥȓȟȠȐȜ ȟȠȞȜȘ Ȑ ȝȜșȓ ȀȎȘȖȚ ȜȏȞȎȕȜȚ Ȝȏȧȓȓ ȘȜșȖȥȓȟȠȐȜ ȝȓȞȓȚȓȧȓțȖȗ Ȗ ȟȜȜȠȐȓȠȟȠȐȓțțȜ ȓȒȖțȖȤ ȠȜȝșȖȐȎ țȓȜȏȣȜȒȖȚȩȣ Ȓșȭ ȜȏȞȎ ȏȜȠȘȖ ȝȜșȭ ȟȜȟȠȎȐȖȠ length * width. ǸȞȜȚȓ ȠȜȑȜ ȥȓȞȓȝȎȦȘȓ țȓȜȏȣȜȒȖȚȜ ȠȜȝșȖȐȜ ȥȠȜȏȩ ȐȓȞ țȡȠȪȟȭ Ȑ ȖȟȣȜȒțȜȓ ȝȜșȜȔȓțȖȓ dzȟșȖ ȥȓȞȓȝȎȦȘȎ ȕȎȐȓȞȦȎȓȠ ȞȎȏȜȠȡ Ȑ ȒȎșȪțȓȚ ȜȠ ȖȟȣȜȒțȜȑȜ ȝȜșȜȔȓțȖȭ ȘȜțȤȓ ȝȜșȭ ȓȗ țȡȔțȜ ȝȓȞȓȚȓȟȠȖȠȪȟȭ ȐțȖȕ ȐȒȜșȪ ȜȒțȜȑȜ ȟȠȜșȏȤȎ ȘȜșȖȥȓ ȟȠȐȜ ȦȎȑȜȐ Ȑ ȒșȖțȡ Ȗ țȎȕȎȒ ȐȒȜșȪ ȜȒțȜȗ ȟȠȞȜȘȖ ȘȜșȖȥȓ ȟȠȐȜ ȦȎȑȜȐ Ȑ ȦȖȞȖțȡ ȀȜȑȒȎ ȢȜȞȚȡșȎ Ȓșȭ ȞȎȟȥȓȠȎ țȓȜȏ ȣȜȒȖȚȜȑȜ ȘȜșȖȥȓȟȠȐȎ ȠȜȝșȖȐȎ ȝȞȖȜȏȞȓȠȎȓȠ ȐȖȒ length * width + length + width ǻȎ ȞȖȟ ȝȜȘȎȕȎțȎ ȒȖȎȑȞȎȚ ȚȎ ȫȠȜȗ ȢȜȞȚȡșȩ ȋȠȎ ȢȜȞȚȡșȎ ȞȎȟȟȥȖȠȎțȎ țȎ ȘȞȎȗțȖȗ ȟșȡȥȎȗ ȝȜȠȜȚȡ ȥȠȜ ȥȓȞȓȝȎȦȘȎ ȚȜȔȓȠ ȕȎȘȜțȥȖȠȪ ȞȎȏȜȠȡ țȓ Ȑ ȟȎȚȜȗ ȜȠȒȎ șȓțțȜȗ ȠȜȥȘȓ ȝȜșȭ Ȗ ȠȜȑȒȎ ȥȠȜȏȩ ȐȓȞțȡȠȪȟȭ Ȑ ȖȟȣȜȒțȜȓ ȝȜșȜȔȓțȖȓ ȓȗ ȏȡȒȓȠ ȒȜȟȠȎȠȜȥțȜ ȝȞȜȗȠȖ țȎȕȎȒ ȐȒȜșȪ ȜȒțȜȗ ȟȠȞȜȘȖ ǸȞȜȚȓ ȠȜȑȜ ȝȡȠȪ ȝȜ ȘȞȎȟțȜȗ ȟȠȞȓșȘȓ ȐȒȜșȪ ȘȞȎȗțȓ ȑȜ șȓȐȜȑȜ ȟȠȜșȏȤȎ ȟȜȟȠȎȐȖȠ length - 1 ȏșȜȘȜȐ ȟ ȡȥȓȠȜȚ țȎ ȥȎșȪțȜȗ ȝȜȕȖȤȖȖ ȒȎ Ȗ ȟȖțȭȭ ȟȠȞȓșȘȎ ȒȜșȔțȎ ȏȩȠȪ ȒșȖțȜȗ length - 1 ȏșȜȘȜȐ Ȓșȭ ȡȥȓȠȎ ȡȑșȜȐȜȑȜ ȏșȜȘȎ ǻȜ ȫȠȎ ȢȜȞȚȡ șȎ ȐȝȜșțȓ ȝȞȖȓȚșȓȚȎ ȝȜȠȜȚȡ ȥȠȜ șȡȥȦȓ ȝȓȞȓȜȤȓțȖȠȪ ȥȓȚ țȓȒȜȜȤȓțȖȠȪ ȘȜșȖȥȓȟȠȐȜ țȓȜȏȣȜȒȖȚȜȑȜ ȠȜȝșȖȐȎ

274

DZǹǮǰǮ


Начало length * width + length + width

ˀ̛̭͘ ϭϰ͘ϰ͘ ʪ̛̬̥̌̐̌​̥͕̌ ̨̡̪̼̺̌̏̌̀̌́̚ ̡̙̱̌̔̀ ̸̭̯̌̽ ̶̨̛̪̖̬̌​̛ length * width + length + width

dzȟșȖ ȡ ȥȓȞȓȝȎȦȘȖ țȓȒȜȟȠȎȠȜȥțȜ ȠȜȝșȖȐȎ ȡȟșȜȐȖȓ Ȑ ȟȠȞȜȘȓ ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ false Ȏ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȕȎ ȐȓȞȦȎȓȠ ȝȞȜȑȞȎȚȚȡ ȐȩȕȩȐȎȭ ȢȡțȘȤȖȬ error() Ȗ ȐȩȐȜȒȖȠ ȟȜȜȏȧȓțȖȓ ȜȝȜȐȓȧȎȬȧȓȓ ȖȑȞȜȘȎ ȥȠȜ ȥȓȞȓȝȎȦȘȓ ȠȞȓȏȡȓȠȟȭ ȏȜșȪȦȓ ȠȜȝșȖȐȎ dzȟșȖ Ȕȓ ȡȟșȜȐȖȓ Ȑ ȟȠȞȜȘȓ ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ true ȥȓȞȓȝȎȦȘȎ ȚȜȔȓȠ țȎȥȎȠȪ ȞȎȏȜȠȡ ȐȩȕȐȎȐ ȢȡțȘȤȖȬ hare.sweepField() Ȑ ȟȠȞȜȘȓ farmwheat ɩɨɫɟɜ ɩɲɟɧɢɰɵ SULQW 6ZHHSLQJ ¿HOG

92. hare.sweepField(length, width, checkWheatCrop) 93. storeWheat()

ǸȎȘ Ȗ ȢȡțȘȤȖȖ Ȗȕ ȝȞȓȒȩȒȡȧȖȣ ȑșȎȐ ȢȡțȘȤȖȭ hare. sweepField() ȝȞȖțȖȚȎȓȠ ȕțȎȥȓțȖȭ ȒșȖțȩ Ȗ ȦȖȞȖțȩ ȝȜ șȭ ȐȐȜȒȖȚȩȓ ȝȜșȪȕȜȐȎȠȓșȓȚ Ȗ ȡȝȞȎȐșȭȓȠ ȝȓȞȓȚȓȧȓțȖȓȚ ȥȓȞȓȝȎȦȘȖ ȝȜ ȐȟȓȚȡ ȝȞȜȟȠȞȎțȟȠȐȡ ȝȜșȭ ǸȜȒ Ȑ ȟȠȞȜȘȓ ȝȓȞȓȒȎȓȠ ȢȡțȘȤȖȬ checkWheatCrop() ȢȡțȘȤȖȖ sweepField(). ǻȓ ȕȎȏȩȐȎȗ ȥȠȜ ȝȞȖ ȡȘȎȕȎțȖȖ ȖȚȓțȖ ȢȡțȘȤȖȖ checkWheatCrop() Ȑ ȘȎȥȓȟȠȐȓ ȝȎȞȎȚȓȠȞȎ țȓ țȎȒȜ ȡȘȎȕȩȐȎȠȪ ȘȞȡȑșȩȓ ȟȘȜȏȘȖ ȖțȎȥȓ ȖțȠȓȞȝȞȓȠȎȠȜȞ /XD ȝȞȜȟȠȜ ȐȩȕȜ ȐȓȠ ȫȠȡ ȢȡțȘȤȖȬ Ȗ ȝȓȞȓȒȎȟȠ ȢȡțȘȤȖȖ hare.sweepField() ȕțȎȥȓțȖȓ ȐȜȕȐȞȎȧȎȓȚȜȓ checkWheatCrop() Ȏ țȓ ȟȎȚȡ ȢȡțȘȤȖȬ

ǽǾǼDZǾǮǺǺǶǾǼǰǮǻǶdz ȅdzǾdzǽǮȆǸǶ ȂdzǾǺdzǾǮ

275


ȂȡțȘȤȖȭ hare.sweepField() ȐȜȕȐȞȎȧȎȓȠ ȥȓȞȓȝȎȦȘȡ Ȑ ȖȟȣȜȒțȡȬ ȝȜȕȖȤȖȬ ȝȜȟșȓ ȟȏȜȞȎ ȡȞȜȔȎȭ ȟȜ ȐȟȓȑȜ ȝȜșȭ ǽȜ ȟșȓ ȠȜȑȜ ȘȎȘ ȥȓȞȓȝȎȦȘȎ ȕȎȘȜțȥȖȠ ȜȏȞȎȏȎȠȩȐȎȠȪ ȝȜșȓ ȓȗ țȓȜȏȣȜȒȖȚȜ ȝȓȞȓȚȓȟȠȖȠȪ ȟȜȏȞȎțțȡȬ ȝȦȓțȖȤȡ Ȗȕ ȟȐȜȓȑȜ Ȗț ȐȓțȠȎȞȭ Ȑ ȟȡțȒȡȘ ȘȜȠȜȞȩȗ țȎȣȜȒȖȠȟȭ ȞȭȒȜȚ ȟ ȖȟȣȜȒțȜȗ ȝȜ ȕȖȤȖȓȗ Dzșȭ ȫȠȜȑȜ Țȩ Ȗ țȎȝȖȟȎșȖ ȢȡțȘȤȖȬ storeWheat() ȘȜȠȜȞȡȬ ȐȩȕȩȐȎȓȚ Ȑ ȟȠȞȜȘȓ Ǻȩ ȣȜȠȖȚ ȥȠȜȏȩ ȥȓȞȓȝȎȦȘȎ ȟȎȔȎșȎ Ȗ ȟȜȏȖȞȎșȎ ȡȞȜȔȎȗ țȓȝȞȓȞȩȐțȜ țȜ ȝȜȟȓȭțțȜȗ ȝȦȓțȖȤȓ ȠȞȓȏȡȓȠȟȭ ȐȞȓȚȭ Ȓșȭ ȟȜȕȞȓȐȎțȖȭ ǽȜȫȠȜȚȡ ȓȟșȖ ȥȓȞȓȝȎȦȘȎ țȓȚȓȒșȓțțȜ țȎȥțȓȠ ȜȏȞȎȏȎȠȩȐȎȠȪ ȝȜșȓ ȟțȜȐȎ ȝȦȓțȖȤȎ țȓ ȡȟȝȓȓȠ ȐȩȞȎȟȠȖ Ȗ ȥȓȞȓȝȎȦȘȎ șȖȦȪ țȎȝȞȎȟțȜ ȝȜȠȞȎȠȖȠ ȠȜȝșȖȐȜ ȅȠȜȏȩ ȫȠȜȑȜ ȖȕȏȓȔȎȠȪ Ȑ ȟȠȞȜȘȓ Țȩ ȒȓșȎȓȚ ȚȖțȡȠțȡȬ ȝȎȡȕȡ Ȗ ȟȜ ȜȏȧȎȓȚ Ȝȏ ȫȠȜȚ ȖȑȞȜȘȡ ȐȩȐȜȒȭ ȟȜȜȏȧȓțȖȓ farmwheat 95. print('Sleeping for 10 minutes...') 96. os.sleep(600) 97. end

ǸȜȒ Ȑ ȟȠȞȜȘȓ ȐȩȕȩȐȎȓȠ ȢȡțȘȤȖȬ RV VOHHS ȝȓȞȓȒȎ ȐȎȭ Ȑ ȘȎȥȓȟȠȐȓ ȝȎȞȎȚȓȠȞȎ ȥȖȟșȓțțȜȓ ȕțȎȥȓțȖȓ ȥȠȜ ȏȩ ȥȓȞȓȝȎȦȘȎ ȜȟȠȎțȜȐȖșȎȟȪ țȎ ȟȓȘȡțȒ Ƞ ȓ ȚȖțȡȠ ǰ ȟȠȞȜȘȓ ȖțȟȠȞȡȘȤȖȭ HQG ȕȎȐȓȞȦȎȓȠ ȤȖȘș ZKLOH ȘȜȠȜȞȩȗ țȎȥȎșȟȭ Ȑ ȟȠȞȜȘȓ ĐĚěĚėęĔĞđėĨęĚđ ēČĐČęĔđ" ďĔďČęĞĝĖĔđ ěĤđęĔģęħđ ěĚėī

В этой главе мы создали ферму размером 9×9 блоков, но программа farmwheat позволяет обрабатывать пространства любого размера. Создай гигантское пшеничное поле, как показано на рис. 14.1. Затем запусти программу с аргументами командной строки, соответствующими размеру поля, чтобы черепашка обработала его!

276

DZǹǮǰǮ


ĝĚĎđĞħ ěĚ ČĎĞĚĘČĞĔēČĢĔĔ ĐĜğďĔġ ĎĔĐĚĎ ēđĘėđĐđėĔī ǵțȎȥȖȠȓșȪțȎȭ ȥȎȟȠȪ ȘȜȒȎ ȝȞȜȑȞȎȚȚȩ fa r m wheat țȎ ȣȜȒȖȠȟȭ Ȑ ȢȡțȘȤȖȖ hare.sweepField() ǻȜ ȝȜȟȘȜșȪȘȡ Ƞȩ ȚȜȔȓȦȪ șȬȏȡȬ ȢȡțȘȤȖȬ ȝȓȞȓȒȎȠȪ ȢȡțȘȤȖȖ hare. sweepField() ȜțȎ ȚȜȔȓȠ ȐȩȝȜșțȭȠȪ ȚțȜȔȓȟȠȐȜ ȒȞȡȑȖȣ ȕȎȒȎȥ dzȟșȖ Ƞȩ ȕȎȣȜȥȓȦȪ ȟȜȕȒȎȠȪ ȒȞȡȑȖȓ ȠȖȝȩ ȢȓȞȚ ȟ ȝȜȚȜȧȪȬ ȚȜȒȎ &RPSXWHU&UDIW Ƞȩ ȚȜȔȓȦȪ ȝȖȟȎȠȪ Ȗ ȝȓȞȓȒȎȐȎȠȪ ȢȡțȘ ȤȖȖ ȘȜȠȜȞȩȓ ȏȡȒȡȠ ȖȟȝȜșȪȕȜȐȎȠȪ ȘȜȒ hare.sweepField() țȎ ȢȓȞȚȎȣ ȟ ȒȞȡȑȖȚȖ ȞȎȟȠȓțȖȭȚȖ Ȗ ȒȎȔȓ ȔȖȐȜȠțȩȚȖ ǰ ȟșȓȒȡȬȧȖȣ ȝȜȒȞȎȕȒȓșȎȣ ȭ ȒȎȚ țȓȟȘȜșȪȘȜ ȟȜȐȓȠȜȐ ȝȜ ȞȎȕ ȞȎȏȜȠȘȓ ȝȞȜȑȞȎȚȚ Ȓșȭ ȢȓȞȚ ȞȎȕșȖȥțȜȑȜ ȠȖȝȎ

ĚĎĚĥęħđ ěėČęĞČĢĔĔ ǽȦȓțȖȤȡ ȚȜȔțȜ șȓȑȘȜ ȕȎȚȓțȖȠȪ ȜȐȜȧȎȚȖ ȝȞȜȟȠȜ ȖȕȚȓțȖȐ țȓȟȘȜșȪȘȜ ȕțȎȥȓțȖȗ Ȗ ȖȚȓț Ȑ ȖȚȓȬȧȓȚȟȭ ȘȜȒȓ ǻȎȝȞȖȚȓȞ ȢȡțȘȤȖȖ checkWheatCrop() Ȗ plantWheatSeed() ȚȜȔțȜ ȝȓȞȓȖȚȓțȜȐȎȠȪ Ȑ checkVegCrop() Ȗ plantVeg() Dzșȭ ȘȎȞ ȠȜȢȓșȭ Ȗ ȚȜȞȘȜȐȖ Ȑ ȖȑȞȓ 0LQHFUDIW țȓ ȖȟȝȜșȪȕȡȬȠȟȭ ȟȓȚȓ țȎ ǸȎȞȠȜȢȓșȪ Ȗ ȚȜȞȘȜȐȪ ȚȜȔțȜ ȟȎȔȎȠȪ țȓȝȜȟȞȓȒȟȠȐȓțțȜ Ȑ ȝȎȦțȬ ȖȟȝȜșȪȕȡȭ ȢȡțȘȤȖȬ turtle.placeDown() ȝȞȖ ȡȏȜȞȘȓ ȟȜȕȞȓȐȦȓȑȜ ȡȞȜȔȎȭ ǻȎ ȞȖȟ ȝȜȘȎȕȎțȎ ȥȓȞȓȝȎȦ ȘȎ ȐȩȞȎȧȖȐȎȬȧȎȭ ȚȜȞȘȜȐȪ Ȁȓȏȓ ȠȎȘȔȓ ȝȜȠȞȓȏȡȓȠȟȭ ȕȎȚȓțȖȠȪ ȖȒȓțȠȖȢȖȘȎȠȜȞȩ ȏșȜ ȘȜȐ 0LQHFUDIW ȖȟȝȜșȪȕȡȓȚȩȓ ȝȞȜȑȞȎȚȚȜȗ ǻȎȝȞȖȚȓȞ ȐȚȓ ȟȠȜ ȐȩȕȜȐȎ hare.selectItem('minecraft:wheat _ seeds') ȝȞȜȑȞȎȚȚȎ ȜȐȜȧȓȐȜȒȟȠȐȎ ȒȜșȔțȎ ȖȟȝȜșȪȕȜȐȎȠȪ ȘȜȒ hare. selectItem('minecraft:potato') Ȓșȭ ȐȩȞȎȧȖȐȎțȖȭ ȘȎȞ ȠȜȢȓșȭ Ȗ hare.selectItem('minecraft:carrot') Ȓșȭ Ȑȩ ȞȎȧȖȐȎțȖȭ ȚȜȞȘȜȐȖ ȅȓȞȓȝȎȦȘȎ țȓ ȒȜșȔțȎ ȝȓȞȓȘșȎȒȩȐȎȠȪ ȐȓȟȪ ȡȞȜȔȎȗ ȜȐȜ ȧȓȗ Ȑ ȟȡțȒȡȘ ȝȜȠȜȚȡ ȥȠȜ ȓȗ ȝȜțȎȒȜȏȖȠȟȭ ȝȜȟȎȒȜȥțȩȗ ȚȎ ȠȓȞȖȎș ȘȜȑȒȎ ȜțȎ ȐțȜȐȪ țȎȥțȓȠ ȜȏȞȎȏȎȠȩȐȎȠȪ ȝȜșȓ

ǽǾǼDZǾǮǺǺǶǾǼǰǮǻǶdz ȅdzǾdzǽǮȆǸǶ ȂdzǾǺdzǾǮ

277


ˀ̛̭͘ ϭϰ͘ϱ͘ ˋ̡̖̬̖̪̹͕̌̌ ̨̪̬̬̥̌̐̌̚​̨̛̥̬̦̏̌​̦̌́ ̦̌ ̛̛̼̬̺̦̖̏̌̏̌ ̨̡̨̛̥̬̏

ĐĚĕĖČ ĖĚĜĚĎ Ĕ ĝĞĜĔĒĖČ ĚĎđĢ ǿ ȝȡȟȠȩȚ ȐȓȒȞȜȚ ȥȓȞȓȝȎȦȘȎ ȚȜȔȓȠ ȒȜȖȠȪ ȘȜȞȜȐ ȀȎȘȔȓ țȎȦ ȞȜȏȜȠ ȚȜȔȓȠ ȟȠȞȖȥȪ ȦȓȞȟȠȪ ȟ ȜȐȓȤ ȓȟșȖ Ȑ ȓȑȜ ȖțȐȓț ȠȎȞȓ ȓȟȠȪ țȜȔțȖȤȩ ǼȟțȎȧȎȠȪ ȥȓȞȓȝȎȦȘȡ țȜȔțȖȤȎȚȖ ȖșȖ ȐȓȒȞȜȚ ȘȎȘ ȖțȟȠȞȡȚȓțȠȎȚȖ țȓ țȡȔțȜ ȒȜȟȠȎȠȜȥțȜ ȝȞȜȟȠȜ ȝȜȚȓȟȠȖȠȪ Ȗȣ Ȑ ȠȓȘȡȧȡȬ ȭȥȓȗȘȡ ȖțȐȓțȠȎȞȭ ȥȓȞȓȝȎȦȘȖ ȅȠȜȏȩ ȥȓȞȓȝȎȦȘȎ ȚȜȑșȎ ȞȎȏȜȠȎȠȪ ȓȓ țȎȒȜ ȝȞȖȝȜȒțȭȠȪ țȎȒ ȘȜȞȜȐȎȚȖ Ȗ ȜȐȤȎȚȖ țȎ ȐȩȟȜȠȡ ȒȐȡȣ ȏșȜȘȜȐ țȎȒ ȡȞȜȐțȓȚ ȕȓȚșȖ Ȑ ȜȠșȖȥȖȓ ȜȠ ȒȞȡȑȖȣ ȢȓȞȚ ȑȒȓ ȥȓȞȓȝȎȦȘȎ ȝȜȒțȖȚȎ ȓȠȟȭ țȎ ȜȒȖț ȏșȜȘ ǻȎ ȞȖȟ ȝȜȘȎȕȎțȎ ȥȓȞȓȝȎȦȘȎ ȝȜȒ țȭȠȎȭ țȎȒ ȕȓȚșȓȗ țȎ ȐȩȟȜȠȡ ȒȐȡȣ ȏșȜȘȜȐ ȥȠȜȏȩ ȜțȎ ȚȜȑșȎ ȐȕȎȖȚȜȒȓȗȟȠȐȜȐȎȠȪ ȟ ȘȜȞȜȐȎȚȖ Ȗ ȜȐȤȎȚȖ

ˀ̛̭͘ ϭϰ͘ϲ͘ ˋ̨̯̼̍ ̨̛̯̔̽ ̡̨̨̬̏ ̛̛̣ ̸̛̭̯̬̽ ̶̨̖͕̏ ̸̡̖̬̖̪̹̌̌ ̨̣̙̦̔̌ ̵̨̛̦̯̭̌̔̽́ ̦̌ ̨̼̭̯̖̏ ̵̱̔̏ ̨̡̨̣̍̏ ̦̌̔ ̨̱̬̦̖̥̏ ̛̖̥̣̚

278

DZǹǮǰǮ


ȅȠȜȏȩ ȝȜȒȜȖȠȪ ȘȜȞȜȐȡ Ȑ ȠȓȘȡȧȓȗ ȭȥȓȗȘȓ ȖțȐȓțȠȎȞȭ ȥȓȞȓ ȝȎȦȘȖ ȒȜșȔțȜ țȎȣȜȒȖȠȪȟȭ ȝȡȟȠȜȓ ȐȓȒȞȜ ǸȜȑȒȎ ȥȓȞȓȝȎȦȘȎ țȎȣȜȒȖȠȟȭ țȎȒ ȘȜȞȜȐȜȗ ȐȩȕȜȐȖ ȢȡțȘȤȖȬ turtle.placeDown() Ȗ ȜțȎ ȕȎȝȜșțȖȠ ȐȓȒȞȜ ȚȜșȜȘȜȚ Dzșȭ ȟȠȞȖȔȘȖ ȜȐȓȤ Ȑ ȠȓȘȡȧȓȗ ȭȥȓȗȘȓ ȒȜșȔțȩ ȏȩȠȪ țȜȔțȖȤȩ ǸȜȑȒȎ ȥȓȞȓȝȎȦȘȎ ȏȡȒȓȠ țȎȣȜȒȖȠȪȟȭ țȎȒ ȜȐȤȜȗ ȐȩȕȜȐȖ ȢȡțȘȤȖȬ turtle. placeDown() Ȗ ȜțȎ ȝȜȟȠȞȖȔȓȠ ȜȐȤȡ ǿȜȟȠȞȖȔȓțțȡȬ ȦȓȞȟȠȪ ȥȓȞȓȝȎȦȘȎ ȟȜȏȓȞȓȠ ȎȐȠȜȚȎȠȖȥȓȟȘȖ ǸȜȞȜȐȩ Ȗ ȜȐȤȩ ȏȡȒȡȠ ȞȎȕȏȞȓȒȎȠȪȟȭ țȜ Ƞȩ ȟȚȜȔȓȦȪ ȡȒȓȞ ȔȎȠȪ Ȗȣ Ȑ ȝȞȓȒȓșȎȣ ȢȓȞȚȩ ȝȜȟȠȞȜȖȐ ȝȜ ȝȓȞȖȚȓȠȞȡ ȕȎȏȜȞ ǰȜȕȚȜȔțȜ ȔȖȐȜȠțȩȓ ȏȡȒȡȠ ȝȩȠȎȠȪȟȭ ȡȏȓȔȎȠȪ ȜȠ ȥȓȞȓȝȎȦ ȘȖ țȜ ȖȚ ȐȞȭȒ șȖ ȫȠȜ ȡȒȎȟȠȟȭ ȠȎȘ ȘȎȘ ȥȓȞȓȝȎȦȘȎ ȝȞȜȐȜȞ țȓȓ ǸȞȜȚȓ ȠȜȑȜ ȝȜȟȘȜșȪȘȡ ȘȜȞȜȐȩ Ȗ ȜȐȤȩ țȓ ȭȐșȭȬȠȟȭ ȏșȜ ȘȎȚȖ ȐȩȕȜȐ ȢȡțȘȤȖȖ turtle.inspectDown() țȓ ȟȞȎȏȜȠȎȓȠ ǰȚȓȟȠȜ ȫȠȜȑȜ ȥȓȞȓȝȎȦȘȓ ȝȞȖȒȓȠȟȭ ȐȩȕȩȐȎȠȪ ȢȡțȘȤȖȬ turtle.placeDown() ȐȟșȓȝȡȬ Ȗ țȎȡȒȎȥȡ ȖȟȝȜșȪȕȜȐȎȠȪ ȝȡȟȠȜȓ ȐȓȒȞȜ ȖșȖ țȜȔțȖȤȩ Ȗȕ ȠȓȘȡȧȓȗ ȭȥȓȗȘȖ

ěĞĔĢđĠČčĜĔĖČ ǸȡȞȩ ȝȞȜȖȕȐȜȒȭȠ ȭȗȤȎ ȘȎȔȒȩȓ ȝȭȠȪ ȒȓȟȭȠȪ ȚȖțȡȠ țȜ ȘȎȘ Ȗ Ȑȟȓ ȒȞȜȝȩ ȓȟșȖ Ȗȣ țȓ ȝȜȒțȭȠȪ ȭȗȤȎ ȖȟȥȓȕȎȬȠ ȥȓȞȓȕ ȝȭȠȪ ȚȖțȡȠ ǺȜȔțȜ ȕȎȝȞȜȑȞȎȚȚȖȞȜȐȎȠȪ ȥȓȞȓȝȎȦȓȘ ȠȎȘ ȥȠȜȏȩ ȜțȖ ȜȏȞȎȏȎȠȩȐȎșȖ ȝȜșȓ ȑȒȓ ȝȎȟȡȠȟȭ ȘȡȞȩ Ȗ ȟȜȏȖȞȎ șȖ ȭȗȤȎ ȟ ȕȓȚșȖ

ˀ̛̭͘ ϭϰ͘ϳ͘ ˋ̡̖̬̖̪̹̌̌ ̨̛̭̬̖̯̍̌ ̶̜͕́̌ ̭̦̖̭̖̦​̦̼̖ ̡̛̱̬̥̌

ǽǾǼDZǾǮǺǺǶǾǼǰǮǻǶdz ȅdzǾdzǽǮȆǸǶ ȂdzǾǺdzǾǮ

279


Dzșȭ ȟȜȕȒȎțȖȭ ȝȠȖȤȓȢȓȞȚȩ ȕȎȑȜțȖ ȘȡȞ țȎ ȜȑȜȞȜȔȓțțȜȓ ȝȞȭȚȜȡȑȜșȪțȜȓ ȝȜșȓ ȜȏȟșȡȔȖȐȎȓȚȜȓ ȥȓȞȓȝȎȦȘȜȗ ǵȎȠȓȚ ȝȓȞȓȒȎȗ ȢȡțȘȤȖȬ turtle.suckDown() ȏȓȕ ȘȞȡȑșȩȣ ȟȘȜȏȜȘ ȢȡțȘȤȖȖ hare.sweepField() ȥȠȜȏȩ ȥȓȞȓȝȎȦȘȎ ȕȎȏȖȞȎșȎ șȬȏȩȓ ȝȞȓȒȚȓȠȩ ȘȜȠȜȞȩȓ ȐȎșȭȬȠȟȭ țȎ ȕȓȚșȓ ǻȎ ȞȖȟ ȖȕȜȏȞȎȔȓțȎ ȥȓȞȓȝȎȦȘȎ ȟȜȏȖȞȎȬȧȎȭ ȭȗȤȎ ǽȜȒȜȏțȜ ȔȖȐȜȠ țȩȚ ȭȗȤȎ țȓ ȭȐșȭȬȠȟȭ ȏșȜȘȎȚȖ ȝȜȫȠȜȚȡ ȢȡțȘȤȖȭ turtle.inspectDown() țȓ ȟȚȜȔȓȠ Ȗȣ ȖȒȓțȠȖȢȖȤȖȞȜȐȎȠȪ

ĎħĜČĥĔĎČęĔđ ĖČĖĞğĝĚĎ Ĕ ĝČġČĜęĚďĚ ĞĜĚĝĞęĔĖČ ǸȎȘȠȡȟȩ Ȗ ȟȎȣȎȞțȩȗ ȠȞȜȟȠțȖȘ ȠȞȓȏȡȬȠ ȜȟȜȏȩȣ ȡȟșȜȐȖȗ Ȓșȭ ȐȩȞȎȧȖȐȎțȖȭ ǻȎȝȞȖȚȓȞ țȡȔȓț ȘȎȘ ȚȖțȖȚȡȚ ȜȒȖț ȏșȜȘ ȟȐȜȏȜȒțȜȑȜ ȝȞȜȟȠȞȎțȟȠȐȎ ȞȎȕȒȓșȭȬȧȖȗ ȞȎȟȠȓțȖȭ ȥȠȜȏȩ ȜțȖ ȚȜȑșȖ ȟȐȜȏȜȒțȜ ȞȎȟȠȖ ǽȜȫȠȜȚȡ ȝȜȠȞȓȏȡȓȠȟȭ ȖȕȚȓțȖȠȪ ȘȜȒ ǻȎ ȢȓȞȚȓ Ȓșȭ ȐȩȞȎȧȖȐȎțȖȭ ȘȎȘȠȡȟȜȐ țȎȒȜ ȏȡȒȓȠ ȜȟȠȎȐ șȭȠȪ ȝȡȟȠȩȓ ȑȜȞȖȕȜțȠȎșȪțȩȓ Ȗ ȐȓȞȠȖȘȎșȪțȩȓ ȝȜșȜȟȩ ȕȓȚșȖ ǸȞȜȚȓ ȠȜȑȜ ȘȎȘȠȡȟȩ ȚȜȑȡȠ ȞȎȟȠȖ ȠȜșȪȘȜ țȎ ȝȓȟȥȎțȩȣ ȏșȜȘȎȣ ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ

ˀ̛̭͘ ϭϰ͘ϴ͘ ʶ̡̯̱̭̼̌ ̬̭̯̱̯̌ ̨̡̨̯̣̽ ̦̌ ̡̪̖̭̖ ̛ ̨̣̙̦̼̔ ̨̬̭̪̣̯̭̌̌̐̌̽́ ̦̌ ̬̭̌​̨̛̭̯̦́​̛ ̨̨̨̦̔̐ ̨̡̣̍̌ ̥̖̙̱̔ ̬̱̔̐ ̨̬̱̥̔̐

280

DZǹǮǰǮ


ǿȎȣȎȞțȩȗ ȠȞȜȟȠțȖȘ ȞȎȟȠȓȠ ȠȜșȪȘȜ țȎ ȝȓȟȥȎțȩȣ ȖșȖ ȕȓȚ șȭțȩȣ ȏșȜȘȎȣ ȘȜȠȜȞȩȓ ȝȞȖșȓȑȎȬȠ Ș ȐȜȒȓ ȝȜȫȠȜȚȡ ȘȎȔȒȩȗ ȞȭȒ ȚȓȔȒȡ ȞȭȒȎȚȖ ȠȞȜȟȠțȖȘȎ ȒȜșȔȓț ȟȜȟȠȜȭȠȪ Ȗȕ ȐȜȒȭțȩȣ ȏșȜȘȜȐ ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ

ˀ̛̭͘ ϭϰ͘ϵ͘ ˋ̡̖̬̖̪̹̌̌ ̛̼̬̺̖̯̏̌̏̌ ̵̭̬̦̼̜̌̌ ̨̡̛̯̬̭̯̦͘ ʽ̛̬̯̍̌ ̛̛̦̥̦̖͕̏̌ ̸̨̯ ̵̭̬̦̼̜̌̌ ̨̡̛̯̬̭̯̦ ̭̣̖̱̖̯̔ ̭̙̯̌̌̽ ̨̬̥́̔ ̭ ̨̨̜̏̔

Ǽȏȓ ȘȡșȪȠȡȞȩ ȐȩȞȎȟȠȎȬȠ țȎ ȐȩȟȜȠȡ ȒȜ ȠȞȓȣ ȏșȜȘȜȐ ǽȜȫ ȠȜȚȡ ȥȓȞȓȝȎȦȘȡ țȡȔțȜ ȝȜȒțȭȠȪ țȎ ȐȩȟȜȠȡ ȥȓȠȩȞȓȣ ȏșȜȘȜȐ ȥȠȜȏȩ ȜțȎ ȚȜȑșȎ ȐȩȕȩȐȎȠȪ ȢȡțȘȤȖȬ turtle.digDown() Ȓșȭ ȟȏȜȞȎ ȡȞȜȔȎȭ ȐȩȞȜȟȦȓȑȜ ȒȜ ȚȎȘȟȖȚȎșȪțȜȗ ȐȩȟȜȠȩ ǶȒȓțȠȖȢȖȘȎȠȜȞȩ 0LQHFUDIW Ȓșȭ ȘȎȘȠȡȟȎ Ȗ ȟȎȣȎȞțȜȑȜ ȠȞȜȟȠ țȖȘȎ ² ȫȠȜ 'minecraft:cactus' Ȗ 'minecraft:reeds'9 ȟȜ ȜȠȐȓȠȟȠȐȓțțȜ

ģĞĚ Ęħ ğēęČėĔ ǺțȜȑȜȘȞȎȠțȜ ȖȟȝȜșȪȕȡȭ ȘȜȒ hare.sweepField() Ƞȩ ȚȜ ȔȓȦȪ șȓȑȘȜ ȝȞȜȑȞȎȚȚȖȞȜȐȎȠȪ ȥȓȞȓȝȎȦȓȘ țȎ ȎȐȠȜȚȎȠȖȥȓ ȟȘȖȗ ȟȏȜȞ ȞȎȕșȖȥțȩȣ ȘȡșȪȠȡȞ ǰ ȫȠȜȗ ȑșȎȐȓ Ƞȩ ȡȕțȎș ȘȎȘ ȖȟȝȜșȪȕȜȐȎȠȪ ȥȓȞȓȝȎȦȓȘ Ȓșȭ ȜȏȞȎȏȜȠȘȖ ȕȓȚșȖ ȝȜȟȓȐȎ ȟȓ Țȭț Ȗ ȟȏȜȞȎ ȕȞȓșȜȗ ȝȦȓțȖȤȩ ǰȩȕȜȐ ȢȡțȘȤȖȖ turtle.inspectDown() ȐȜȕȐȞȎȧȎȓȠ ȠȎȏșȖȥțȜȓ ȕțȎȥȓțȖȓ ȟȜȒȓȞȔȎȧȓȓ ȘșȬȥ 'metadata' ȟȜ ȕțȎȥȓțȖȓȚ Ȑ ȒȖȎȝȎȕȜțȓ ȜȠ 0 ȒȜ 7 dzȟșȖ ȕțȎȥȓțȖȓ ȞȎȐțȜ 7 ȕțȎȥȖȠ ȝȦȓțȖȤȎ ȝȜșțȜȟȠȪȬ ȟȜȕȞȓșȎ ȅȓ 9

В версии 1.13 – 'minecraft:sugar_cane' (прим. перев.)

ǽǾǼDZǾǮǺǺǶǾǼǰǮǻǶdz ȅdzǾdzǽǮȆǸǶ ȂdzǾǺdzǾǮ

281


ȞȓȝȎȦȘȎ ȟ ȎșȚȎȕțȜȗ ȚȜȠȩȑȜȗ ȖȟȝȜșȪȕȡȓȠ ȫȠȜ ȕțȎȥȓțȖȓ ȥȠȜ ȏȩ ȜȝȞȓȒȓșȖȠȪ ȘȜȑȒȎ ȝȦȓțȖȤȎ ȑȜȠȜȐȎ Ș ȡȏȜȞȘȓ ȟȜȏȖȞȎȓȠ ȓȓ Ȗ ȝȞȜȖȕȐȜȒȖȠ ȝȜȟȓȐ ȟȓȚȭț ǮșȑȜȞȖȠȚ ȢȡțȘȤȖȖ hare.sweepField() ȏȩș ȖȟȝȜșȪ ȕȜȐȎț ȝȞȖ ȞȓȦȓțȖȖ ȚțȜȔȓȟȠȐȎ ȞȎȕșȖȥțȩȣ ȕȎȒȎȥ ǰ ȑșȎȐȓ Țȩ ȞȎȕȞȎȏȜȠȎȓȚ țȜȐȩȗ ȎșȑȜȞȖȠȚ ȘȜȠȜȞȩȗ ȝȜȕȐȜșȖȠ ȘȜ ȝȎȠȪ ȭȚȩ Ȑ ȢȜȞȚȓ șȓȟȠțȖȤȩ ȡȣȜȒȭȧȓȗ Ȑ ȕȓȚșȬ


15 ěĜĚďĜČĘĘĔĜĚĎČęĔđ ģđĜđěČĤĖĔ ĤČġĞđĜČ ȀȓȝȓȞȪ ȥȓȞȓȝȎȦȘȖ ȐȩȝȜșțȭȬȠ ȕțȎȥȖȠȓșȪțȡȬ ȥȎȟȠȪ țȓȜȏȣȜȒȖȚȩȣ Ƞȓȏȓ ȞȎȏȜȠ ȜȠ ȞȡȏȘȖ Ȓȓ ȞȓȐȪȓȐ Ȗ ȖȕȑȜȠȜȐșȓțȖȭ ȘȎȚȓțțȩȣ ȘȖȞȝȖȥȓȗ ȒȜ ȐȜȕȒȓșȩȐȎțȖȭ ȟȓșȪȟȘȜȣȜȕȭȗȟȠȐȓțțȩȣ ȡȑȜ ȒȖȗ ǻȜ ȓȧȓ ȓȟȠȪ ȞȓȟȡȞȟȩ ȘȜȠȜȞȩȓ țȓȜȏȣȜȒȖȚȜ ȒȜȏȩȐȎȠȪ Ȗȕ ȝȜȒ ȕȓȚșȖ ȞȎȕȞȎȏȎȠȩȐȎȭ ȞȡȒțȖȘȖ ȋȠȜ ȔȓșȓȕȜ ȕȜșȜȠȜ ȎșȚȎȕȩ ȡȑȜșȪ ȞȓȒȟȠȜȡț Ȗ șȎȕȡȞȖȠ ȅȓȞȓȝȎȦȘȖ ȚȜȑȡȠ Ȗ ȫȠȜ ȁ țȖȣ Ȑ ȝȎȚȭȠȖ ȓȟȠȪ ȝȞȓȒȡȟȠȎ țȜȐșȓțțȎȭ ȝȞȜȑȞȎȚȚȎ ȝȜȒ țȎȕȐȎțȖȓȚ excavate ȘȜȠȜȞȡȬ Ƞȩ ȚȜȔȓȦȪ ȖȟȝȜșȪȕȜȐȎȠȪ ȥȠȜȏȩ ȝȞȜȘȜȝȎȠȪ ȘȐȎȒȞȎȠțȜȓ ȜȠ ȐȓȞȟȠȖȓ ȝȞȭȚȜ Ș ȜȟțȜȐȎțȖȬ ȚȖȞȎ 0LQHFUDIW ǼȒțȎȘȜ ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ ȚȜȔțȜ șȓȑȘȜ ȡȝȎȟȠȪ Ȑ ȫȠȖ ȑșȡȏȜȘȖȓ ȘȜșȜȒȤȩ ȥȠȜ ȒȓșȎȓȠ Ȗȣ ȜȝȎȟțȩȚȖ ǰ ȫȠȜȗ ȑșȎȐȓ Țȩ țȎȝȖȦȓȚ ȝȞȜȑȞȎȚȚȡ ȒȜȏȩȥȖ ȝȜșȓȕ țȩȣ ȖȟȘȜȝȎȓȚȩȣ ȝȜȒ țȎȕȐȎțȖȓȚ stairminer ȘȜȠȜȞȎȭ Ȑȩ ȘȎȝȩȐȎȓȠ ȘȜșȜȒȓȤ ȟ șȓȟȠțȖȤȓȗ ȡȣȜȒȭȧȓȗ ȝȜȒ ȕȓȚșȬ ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ ǼȘȜșȜ ȝȜȐȓȞȣțȜȟȠȖ ȥȓȞȓȝȎȦȘȎ ȏȡȒȓȠ ȒȜȏȩȐȎȠȪ Ȑ ȜȟțȜȐțȜȚ ȕȓȚșȬ Ȗ ȏȡșȩȔțȖȘ țȜ ȝȜ ȚȓȞȓ ȞȎȕȞȎ

ǽǾǼDZǾǮǺǺǶǾǼǰǮǻǶdz ȅdzǾdzǽǮȆǸǶ ȆǮȃȀdzǾǮ

283


ȏȜȠȘȖ ȞȡȒțȖȘȎ ȐȑșȡȏȪ ȟȚȜȔȓȠ țȎȣȜȒȖȠȪ Ȗ ȒȜȏȩȐȎȠȪ ȞȎȕțȡȬ ȞȡȒȡ Ȗ ȎșȚȎȕȩ

ˀ̛̭͘ ϭϱ͘ϭ͘ ʿ̨̬̬̥̐̌​̥̌ excavate ̨̭̖̯̔̌̚ ̨̡̛̣̱̖͕̐̍ ̨̪̭̦̼̖̌ ̶̡̨̨̣̼̔

ˀ̛̭͘ ϭϱ͘Ϯ͘ ʿ̨̬̬̥̐̌​̥̌ stairminer ̨̭̖̯̔̌̚ ̶̛̣̖̭̯̦̱ ̣̔́ ̨̨̖̪̭̦̜̍̌̚ ̸̨̛̼̔̍ ̵̨̪̣̖̦̼̚ ̵̡̨̛̭̪̖̥̼̌

ǽȜȟșȓ ȠȜȑȜ ȘȎȘ Țȩ ȟȜȕȒȎȒȖȚ ȝȞȜȑȞȎȚȚȡ stairminer ȚȜȔțȜ ȏȡȒȓȠ ȒȜȏȩȐȎȠȪ ȞȡȒȡ țȓ ȜȝȎȟȎȭȟȪ ȡȝȎȟȠȪ Ȑ ȝȞȜȝȎȟȠȪ ȋȠȖ șȓȟȠțȖȤȩ ȠȎȘȔȓ ȝȜȕȐȜșȭȠ ȏȓȕȜȝȎȟțȜ ȟȝȡȟȘȎȠȪȟȭ țȎ ȒțȜ ȦȎȣȠ ȥȠȜȏȩ țȎȝȞȖȚȓȞ ȝȞȜȘȜȝȎȠȪ ȑȜȞȖȕȜțȠȎșȪțȩȓ Ƞȡțțȓ șȖ ȖșȖ ȝȜȟȠȞȜȖȠȪ ȝȜȒȕȓȚțȡȬ ȏȎȕȡ

284

DZǹǮǰǮ


ĜČēĜČčĚĞĖČ ČėďĚĜĔĞĘČ ĝĚēĐČęĔī ĤČġĞħ ĝ ėđĝĞęĔĢđĕ ǻȎȥ țȓȚ ȟ ȞȎȕȞȎȏ Ȝ Ƞ Ș Ȗ Ȏ ș ȑ ȜȞȖ Ƞ ȚȎ ȟȜȕȒȎ ț Ȗ ȭ ȦȎ ȣ Ƞ ȩ ȟ șȓȟȠțȖȤȓȗ ǰȚȓȟȠȜ ȠȜȑȜ ȥȠȜȏȩ ȝȞȜȟȠȜ ȘȜȝȎȠȪ ȐțȖȕ ȒȜ ȏȓ ȒȞȜȘȎ ȝȞȜȑȞȎȚȚȎ stairminer ȐȩȞȡȏȎȓȠ ȡȕȜȞ Ȑ ȢȜȞȚȓ șȓȟȠ țȖȤȩ ȀȎȘȖȚ ȜȏȞȎȕȜȚ ȥȓȞȓȝȎȦȘȎ țȓ țȎȒȓșȎȓȠ ȟȚȓȞȠȓșȪțȜ ȜȝȎȟțȩȣ ȒȩȞ Ȑ ȘȜȠȜȞȩȓ ȚȜȔțȜ ȡȝȎȟȠȪ ǾȎȕȞȎȏȜȠȘȎ ȑȞȡțȠȎ țȎȥȖțȎȓȠȟȭ ȟ ȝȜȐȓȞȣțȜȟȠȖ ȕȓȚșȖ ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ

ˀ̛̭͘ ϭϱ͘ϯ͘ ˋ̡̖̬̖̪̹̌̌ ̦̌ ̵̨̨̛̪̖̬̦̭̯̏ ̪̖̬̖̔ ̸̨̦̣̥̌̌ ̸̨̛̼̔̍ ̵̨̪̣̖̦̼̚ ̵̡̨̛̭̪̖̥̼̌

ǻȎȚ țȡȔțȜ ȥȠȜȏȩ ȥȓȞȓȝȎȦȘȎ ȝȞȜȘȜȝȎșȎ țȎ ȜȒȖț ȏșȜȘ ȐțȖȕ ȕȎȠȓȚ ȝȓȞȓȚȓȟȠȖșȎȟȪ țȎ ȜȒȖț ȏșȜȘ ȐȝȓȞȓȒ ȝȞȜȘȜȝȎșȎ țȎ ȏșȜȘȎ ȐțȖȕ ȕȎȠȓȚ ȜȝȭȠȪ ȝȓȞȓȒȐȖțȡșȎȟȪ țȎ ȏșȜȘ ȐȝȓȞȓȒ Ȗ ȐȩȘȜȝȎșȎ ȡȔȓ ȠȞȖ ȏșȜȘȎ Ȗ Ƞ Ȓ ȅȓȞȓȝȎȦȘȎ ȒȜșȔțȎ ȝȞȜ ȒȜșȔȎȠȪ ȘȜȝȎȠȪ ȒȜ Ƞȓȣ ȝȜȞ ȝȜȘȎ țȓ ȒȜȟȠȖȑțȓȠ ȏȓȒȞȜȘȎ ȖșȖ ȑșȡȏȖțȩ ȡȘȎȕȎțțȜȗ ȖȑȞȜȘȜȚ Dzșȭ ȞȎȕȞȎȏȜȠȘȖ ȫȢȢȓȘȠȖȐțȜȗ ȝȞȜȑȞȎȚȚȩ țȡȔțȜ ȜȝȞȓ ȒȓșȖȠȪ ȘȜțȘȞȓȠțȩȓ ȒȓȗȟȠȐȖȭ ȘȜȠȜȞȩȓ ȒȜșȔțȎ ȟȜȐȓȞȦȖȠȪ ȥȓȞȓȝȎȦȘȎ ȥȠȜȏȩ ȞȓȎșȖȕȜȐȎȠȪ ȜȝȖȟȎțțȩȗ ȎșȑȜȞȖȠȚ ȝȜȐȓ ȒȓțȖȭ ǸȎȔȒȩȗ ȞȎȕ ȝȜȟșȓ ȠȜȑȜ ȘȎȘ ȥȓȞȓȝȎȦȘȎ ȟȝȡȟȘȎȓȠȟȭ ȐțȖȕ ȜțȎ ȒȜșȔțȎ ȐȜȕȐȞȎȧȎȠȪȟȭ țȎ ȝȜȐȓȞȣțȜȟȠȪ ȝȞȓȔȒȓ ȥȓȚ

ǽǾǼDZǾǮǺǺǶǾǼǰǮǻǶdz ȅdzǾdzǽǮȆǸǶ ȆǮȃȀdzǾǮ

285


ȘȜȝȎȠȪ ȟțȜȐȎ ǽȜȟȘȜșȪȘȡ ȘȎȔȒȩȗ ȣȜȒ ȖȟȝȜșȪȕȡȓȠ ȠȜȝșȖȐȜ ȠȜ ȘȜșȖȥȓȟȠȐȜ ȣȜȒȜȐ ȟȜȐȓȞȦȎȓȚȩȣ ȥȓȞȓȝȎȦȘȜȗ ȣȜȠȓșȜȟȪ ȏȩ ȟȒȓșȎȠȪ ȚȖțȖȚȎșȪțȩȚ Ǻȩ ȟȒȓșȎȓȚ ȫȠȜ ȕȎȝȞȜȑȞȎȚȚȖ ȞȜȐȎȐ ȥȓȞȓȝȎȦȘȡ ȠȎȘ ȥȠȜȏȩ ȜțȎ ȘȜȝȎșȎ ȐȐȓȞȣ ȘȜȑȒȎ ȏȡȒȓȠ ȐȩȏȖȞȎȠȪȟȭ țȎ ȝȜȐȓȞȣțȜȟȠȪ ǰ ȞȓȕȡșȪȠȎȠȓ ȥȓȞȓȝȎȦȘȎ ȏȡȒȓȠ ȖȟȝȜșȪȕȜȐȎȠȪ ȠȜȝșȖȐȜ țȎȟȠȜșȪȘȜ ȫȢȢȓȘȠȖȐțȜ țȎȟȘȜșȪȘȜ ȫȠȜ ȐȜȜȏȧȓ ȐȜȕȚȜȔțȜ ȝȜȟȘȜșȪȘȡ ȏȡȒȓȠ țȓ ȠȜșȪȘȜ ȐȩȏȖȞȎȠȪȟȭ țȎ ȝȜȐȓȞȣțȜȟȠȪ țȜ Ȗ ȞȎȕȞȎȏȎȠȩȐȎȠȪ ȑȞȡțȠ țȎȒ ȟȜȏȜȗ DzȎȐȎȗ ȞȎȟȟȚȜȠȞȖȚ ȒȓȗȟȠȐȖȭ țȎ ȘȜȠȜȞȩȣ ȝȜȟȠȞȜȓț ȎșȑȜ ȞȖȠȚ ȟȜȕȒȎțȖȭ ȦȎȣȠȩ ȟ șȓȟȠțȖȤȓȗ Ȗ ȐȩȭȟțȖȚ ȘȎȘ ȚȜȔțȜ ȚȖțȖȚȖȕȖȞȜȐȎȠȪ ȞȎȟȣȜȒ ȠȜȝșȖȐȎ ȖȟȝȜșȪȕȡȓȚȜȑȜ ȥȓȞȓȝȎȦ ȘȜȗ țȎ ȘȎȔȒȜȚ ȫȠȎȝȓ ǸȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ ȥȓȞȓȝȎȦȘȎ țȎȥȖțȎȓȠ ȞȎȕȞȎ ȏȜȠȘȡ ȟ ȏșȜȘȎ ȜȠȚȓȥȓțțȜȑȜ ȟȖȚȐȜșȜȚ ð ȀȎȘȖȚ ȜȏȞȎȕȜȚ ȜțȎ ȟȜȕȒȎȓȠ ȝȓȞȐȡȬ ȟȠȡȝȓțȪ șȓȟȠțȖȤȩ ǽȜȟȘȜșȪȘȡ ȥȓȞȓȝȎȦȘȎ țȓ ȒȐȖȑȎȓȠȟȭ țȎ ȫȠȜȚ ȫȠȎȝȓ ȜțȎ țȓ ȖȟȝȜșȪȕȡȓȠ ȠȜȝșȖȐȜ ǽȓȞȐȩȗ ȦȎȑ șȓȟȠțȖȤȩ țȡȔțȜ ȐȩȘȜȝȎȠȪ ȜȒȖț ȞȎȕ Ȑ țȎȥȎșȓ ȝȞȜȑȞȎȚ Țȩ ȝȜȫȠȜȚȡ ȎșȑȜȞȖȠȚ ȏȜșȪȦȓ țȓ ȝȜȐȠȜȞȭȓȠ ȫȠȜȠ ȦȎȑ

ˀ̛̭͘ ϭϱ͘ϰ͘ ˋ̡̖̬̖̪̹̌̌ ̸̛̦̦̖̯̌̌ ̡̨̪̯̌̽ ̨̪̔ ̨̨̭̜̍

ǵȎȠȓȚ ȥȓȞȓȝȎȦȘȎ ȝȓȞȓȚȓȧȎȓȠȟȭ ȐȝȓȞȓȒ țȎ ȜȒȖț ȏșȜȘ Ș ȟșȓȒȡȬȧȓȚȡ ȏșȜȘȡ ȜȠ ȘȜȠȜȞȜȑȜ ȏȡȒȓȠ ȞȩȠȪ ȘȜșȜȒȓȤ ȐțȖȕ ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ ȋȠȜ ȒȓȗȟȠȐȖȓ ȜțȎ ȏȡȒȓȠ ȝȜȐȠȜȞȭȠȪ ȘȎȔ Ȓȩȗ ȞȎȕ ȘȜȑȒȎ ȏȡȒȓȠ țȎȥȖțȎȠȪ ȘȜȝȎȠȪ țȜȐȩȗ ȘȜșȜȒȓȤ ȟ ȝȜ ȐȓȞȣțȜȟȠȖ ȕȓȚșȖ

286

DZǹǮǰǮ


ˀ̛̭͘ ϭϱ͘ϱ͘ ʿ̨̭̣̖ ̡̛̼̪̼̦̏̌̏̌́ ̨̨̪̖̬̏̐ ̨̡̣̍̌ ̸̡̖̬̖̪̹̌̌ ̛̙̖̯̭̔̏́ ̪̖̬̖̏̔ ̦̌ ̨̛̦̔ ̨̡̣͕̍ ̸̨̯̼̍ ̸̦̯̌̌̽ ̡̨̪̯̌̽ ̛̭̣̖̱̺̜̔̀ ̶̡̨̨̣̖̔ ̛̦͕̏̚ ̱̙̖ ̦̌ ̔̏̌ ̨̡̣̍̌

ǸȜȑȒȎ ȥȓȞȓȝȎȦȘȎ țȎȥȖțȎȓȠ ȞȎȕȞȎȏȜȠȘȡ ȟșȓȒȡȬȧȓȑȜ ȘȜ șȜȒȤȎ ȜțȎ ȞȎȟȘȎȝȩȐȎȓȠ țȎ ȜȒȖț ȏșȜȘ ȏȜșȪȦȓ ȥȓȚ țȎ ȝȞȓ ȒȩȒȡȧȓȚ ȦȎȑȓ Ȗ ȜȝȡȟȘȎȓȠȟȭ țȎ ȒțȜ ȘȜșȜȒȤȎ ȘȜȠȜȞȩȗ ȞȎȕ ȞȎȏȎȠȩȐȎȓȠ ǻȎ ȞȖȟ ȝȜȘȎȕȎț ȫȠȜȠ ȝȞȜȤȓȟȟ

ˀ̛̭͘ ϭϱ͘ϲ͘ ˋ̡̖̬̖̪̹̌̌ ̡̨̪̖̯̌ ̛̭̣̖̱̺̜̔̀ ̶̡̨̨̣̖͕̔ ̸̛̦̦̌̌́ ̭ ̵̨̨̛̪̖̬̦̭̯̏

ǽȜȟșȓ ȠȜȑȜ ȘȎȘ ȥȓȞȓȝȎȦȘȎ ȕȎȘȜțȥȖȠ ȒȜȏȩȥȡ Ȑ ȫȠȜȚ ȘȜșȜȒ Ȥȓ ȞȎȕȞȎȏȜȠȘȡ ȟșȓȒȡȬȧȓȑȜ ȜțȎ țȎȥțȓȠ ȟ ȓȑȜ ȒțȎ ȅȓȞȓȝȎȦȘȎ ȒȜȏȡȒȓȠ ȏșȜȘ ȘȜȠȜȞȩȗ țȎȣȜȒȖȠȟȭ ȝȓȞȓȒ țȓȗ ȝȓȞȓȚȓȟȠȖȠȟȭ ȐȝȓȞȓȒ Ȗ ȜȘȎȔȓȠȟȭ Ȑ ȟșȓȒȡȬȧȓȚ ȘȜșȜȒȤȓ ȀȎȚ ȜțȎ ȒȜȏȩȐȎȓȠ ȏșȜȘ ȘȜȠȜȞȩȗ țȎȣȜȒȖȠȟȭ ȝȜȒ țȓȗ ȒȓșȎȭ ȫȠȜȠ ȘȜșȜȒȓȤ țȎ ȜȒ

ǽǾǼDZǾǮǺǺǶǾǼǰǮǻǶdz ȅdzǾdzǽǮȆǸǶ ȆǮȃȀdzǾǮ

287


țȡ ȝȜȕȖȤȖȬ ȑșȡȏȔȓ ȝȞȓȒȩȒȡȧȓȑȜ ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ DzȜȏȩȥȎ ȏșȜȘȎ ȝȜȒ ȥȓȞȓȝȎȦȘȜȗ țȓ ȠȞȓȏȡȓȠ ȠȜȝșȖȐȎ ȝȜȫȠȜȚȡ ȥȓȞȓȝȎȦȘȎ ȖȟȝȜșȪȕȡȓȠ ȠȜșȪȘȜ ȜȒțȡ ȓȒȖțȖȤȡ ȠȜȝșȖȐȎ Ȓșȭ ȒȜȏȩȥȖ ȒȐȡȣ ȏșȜȘȜȐ ȋȠȖ ȒȓȗȟȠȐȖȭ ȝȜȐȠȜȞȭȬȠȟȭ ȘȎȔȒȩȗ ȞȎȕ ȘȜȑȒȎ ȞȎȕȞȎȏȜȠȘȎ ȘȜșȜȒȤȎ țȎȥȖțȎȓȠȟȭ ȐțȡȠȞȖ ȦȎȣȠȩ

ˀ̛̭͘ ϭϱ͘ϳ͘ ˋ̡̖̬̖̪̹̌̌ ̡̼̪̼̖̯̏̌̏̌ ̨̡̣̍ ̪̖̬̖̔ ̨̨̭̜͕̍ ̪̖̬̖̥̖̺̖̯̭̌́ ̦̌ ̨̛̦̔ ̨̡̣̍ ̪̖̬̖͕̏̔ ̌ ̯̖̥̌̚ ̡̼̪̼̖̯̏̌̏̌ ̨̡̣̍ ̨̪̔ ̨̨̭̜̍

ǰ ȕȎȐȓȞȦȎȬȧȓȗ ȥȎȟȠȖ ȎșȑȜȞȖȠȚȎ ȥȓȞȓȝȎȦȘȎ ȒȜșȔțȎ ȐȩȗȠȖ țȎ ȝȜȐȓȞȣțȜȟȠȪ ȥȠȜȏȩ ȝȜșțȜȟȠȪȬ ȞȎȕȞȎȏȜȠȎȠȪ ȠȓȘȡ ȧȖȗ ȘȜșȜȒȓȤ ǻȎ ȞȖȟ ȢȖțȎșȪțȩȗ ȝȡȠȪ ȥȓȞȓȝȎȦȘȖ ȝȜ ȘȎȕȎț ȜȞȎțȔȓȐȜȗ ȟȠȞȓșȘȜȗ

ˀ̛̭͘ ϭϱ͘ϴ͘ ˋ̡̖̬̖̪̹̌̌ ̸̡̛̦̖̯̌̌̏̌̚ ̨̡̬̬̯̱̌̌̍̚ ̶̡̨̨̣͕̔̌ ̨̬̺̭̏̏̌̌́̽̚ ̦̌ ̵̨̨̪̖̬̦̭̯̏̽

ǰȟȓ ȜȝȖȟȎțțȩȓ ȒȓȗȟȠȐȖȭ ȘȞȜȚȓ țȎȥȎșȪțȜȑȜ ȥȓȞȓȝȎȦȘȎ ȝȜȐȠȜȞȭȓȠ ȤȖȘșȖȥȓȟȘȖ DzȞȡȑȖȚȖ ȟșȜȐȎȚȖ ȥȓȞȓȝȎȦȘȎ ȘȜ

288

DZǹǮǰǮ


ȝȎȓȠ ȐȝȓȞȓȒ țȎȥȖțȎȭ țȜȐȩȗ ȘȜșȜȒȓȤ Ȗ țȓ ȜȝȡȟȘȎȭȟȪ țȎ ȓȑȜ ȒțȜ ȕȎȘȎțȥȖȐȎȓȠ ȓȑȜ ȒȜȏȩȥȡ ȒȐȖȑȎȭȟȪ ȐȐȓȞȣ ȝȜȐȠȜȞȭȭ ȝȡȠȖ ȜȏȜȕțȎȥȓțțȩȓ țȎ ȞȖȟ ȢȖȜșȓȠȜȐȩȚȖ ȕȓșȓțȩȚȖ Ȗ ȜȞȎțȔȓȐȩȚȖ ȟȠȞȓșȘȎȚȖ ǽȜ ȫȠȜȚȡ ȦȎȏșȜțȡ ȝȞȜȖȟȣȜȒȖȠ ȞȎȕȞȎȏȜȠȘȎ ȑȜȞțȜȑȜ ȚȎȟȟȖȐȎ ȝȜ ȒȐȎ ȘȜșȜȒȤȎ ȕȎ ȜȒȖț ȝȞȜȣȜȒ ȐțȖȕ Ȏ ȕȎȠȓȚ ȐȐȓȞȣ ǰȩȝȜșțȓțȖȓ ȦȎȏșȜțȎ ȜȟȡȧȓȟȠȐșȭȓȠȟȭ ȒȜ Ƞȓȣ ȝȜȞ ȝȜȘȎ ȥȓȞȓȝȎȦȘȎ țȓ ȒȜȟȠȖȑțȓȠ ȏȓȒȞȜȘȎ ȖșȖ ȡȘȎ ȕȎțțȜȗ ȑșȡȏȖțȩ

ˀ̛̭͘ ϭϱ͘ϵ͘ ˌ̨̣̦̌̍ ̶̛̣̖̭̯̦̼͕ ̨̬̬̯̼̖̥̜̌̌̍̌̏̌̚ ̸̡̨̖̬̖̪̹̜̌

ǽȞȓȔ Ȓȓ ȥȓȚ ȝȞȖȟȠ ȡ ȝ Ȗ Ƞ Ȫ Ș ȞȎȕȞȎȏȜȠ Șȓ ȝȞȜȑ ȞȎ ȚȚȩ stairminer Ȑ ȘȜȠȜȞȜȗ ȖȟȝȜșȪȕȡȓȠȟȭ ȠȜșȪȘȜ ȥȠȜ ȜȝȖȟȎțțȩȗ ȎșȑȜȞȖȠȚ ȟȜȕȒȎțȖȭ ȦȎȣȠȩ ȟ șȓȟȠțȖȤȓȗ țȓȜȏȣȜȒȖȚȜ țȎȝȖ ȟȎȠȪ țȓȘȜȠȜȞȩȓ ȐȟȝȜȚȜȑȎȠȓșȪțȩȓ ȢȡțȘȤȖȖ ǼțȖ țȎȚ ȝȜțȎ ȒȜȏȭȠȟȭ Ȓșȭ ȜȏȞȎȏȜȠȘȖ ȟȖȠȡȎȤȖȗ ȘȜȑȒȎ ȥȓȞȓȝȎȦȘȓ ȏȡȒȡȠ ȝȜȝȎȒȎȠȪȟȭ ȝȓȟȥȎțȩȓ ȖșȖ ȑȞȎȐȖȗțȩȓ ȏșȜȘȖ

ǽǾǼDZǾǮǺǺǶǾǼǰǮǻǶdz ȅdzǾdzǽǮȆǸǶ ȆǮȃȀdzǾǮ

289


ĐĚĜČčĚĞĖČ ĘĚĐğėī 0):dzȟșȖ Ƞȩ ȒȡȚȎȓȦȪ ȥȠȜ ȐȩȕȜȐ ȢȡțȘȤȖȖ turtle.dig() Ȑȟȓȑ ȒȎ ȜȥȖȧȎȓȠ ȝȞȜȟȠȞȎțȟȠȐȜ ȝȓȞȓȒ ȥȓȞȓȝȎȦȘȜȗ ȠȜ ȫȠȜ țȓ ȠȎȘ ǽȓȟȥȎțȩȓ Ȗ ȑȞȎȐȖȗțȩȓ ȏșȜȘȖ țȎȒ ȏșȜȘȜȚ ȘȜȠȜȞȩȗ ȒȜȏȩȐȎȓȠ ȥȓȞȓȝȎȦȘȎ ȝȎȒȎȬȠ ȐțȖȕ Ȗ ȏșȜȘȖȞȡȬȠ ȓȓ Ƕ ȝȜ ȟȘȜșȪȘȡ ȞȎȕȞȎȏȜȠȎțțȩȗ țȎȚȖ ȎșȑȜȞȖȠȚ ȟȜȕȒȎțȖȭ ȦȎȣȠȩ ȟ șȓȟȠțȖȤȓȗ ȝȞȓȒȝȜșȎȑȎȓȠ ȥȠȜ ȥȓȞȓȝȎȦȘȎ ȝȓȞȖȜȒȖȥȓȟȘȖ ȏȡ ȒȓȠ ȜȥȖȧȎȠȪ ȝȞȜȟȠȞȎțȟȠȐȜ ȝȓȞȓȒ ȖșȖ țȎȒ ȟȜȏȜȗ țȎȚ țȡȔțȎ ȠȎȘȎȭ ȢȡțȘȤȖȭ ȟ ȝȜȚȜȧȪȬ ȘȜȠȜȞȜȗ ȥȓȞȓȝȎȦȘȎ ȏȡȒȓȠ ȞȎȟ ȘȎȝȩȐȎȠȪ ȠȎȘȖȓ ȝȎȒȎȬȧȖȓ ȏșȜȘȖ ȒȜ Ƞȓȣ ȝȜȞ ȝȜȘȎ ȠȞȓȏȡȓ ȚȜȓ ȝȞȜȟȠȞȎțȟȠȐȜ ȝȜșțȜȟȠȪȬ țȓ ȜȟȐȜȏȜȒȖȠȟȭ ǻȎ ȞȖȟ ȝȜȘȎȕȎțȩ ȠȞȖ ȝȓȟȥȎțȩȣ ȏșȜȘȎ ȡșȜȔȓțțȩȣ ȒȞȡȑ țȎ ȒȞȡȑȎ ȝȓȞȓȒ ȥȓȞȓȝȎȦȘȜȗ ȅȠȜȏȩ ȟȜȏȞȎȠȪ ȝȓȟȜȘ ȥȓ ȞȓȝȎȦȘȎ ȒȜșȔțȎ ȐȩȕȐȎȠȪ ȢȡțȘȤȖȬ turtle.dig() ȠȞȖ ȞȎȕȎ Dz ș ȭ ȫ Ƞ Ȗ ȣ Ȥȓ șȓȗ Ț ȩ țȎ ȝȖȦȓȚ ȢȡțȘȤȖȖ digUntilClear() Ȗ digUpUntilClear() ȘȜȠȜȞȩȓ ȝȜȥȠȖ ȖȒȓțȠȖȥțȩ țȜ ȞȎȕȞȎȏȎȠȩȐȎȬȠ ȝȞȜȟȠȞȎțȟȠȐȜ ȝȓȞȓȒ Ȗ țȎȒ ȥȓȞȓȝȎȦȘȜȗ ȟȜ ȜȠȐȓȠȟȠȐȓțțȜ

ˀ̛̭͘ ϭϱ͘ϭϬ͘ ˋ̡̖̬̖̪̹̌̌ ̨̣̙̦̔̌ ̨̼̯̔̍̽ ̨̡̣̍ ̛̯̬ ̬͕̌̌̚ ̸̨̯̼̍ ̸̨̛̛̭̯̯̽ ̨̨̪̬̭̯̬̦̭̯̌̏ ̪̖̬̖̔ ̨̨̭̜͕̍ ̨̨̪̯̥̱ ̸̨̯ ̸̪̖̭̦̼̖̌ ̨̡̛̣̍ ̱̱̯̍̔ ̪̯̌̔̌̽ ̛̦̏̚

ǽȜȟȘȜșȪȘȡ Țȩ ȟȚȜȔȓȚ Ȗȟ ȝȜșȪȕȜȐȎȠȪ ȫȠȖ ȢȡțȘȤȖȖ țȓ Ƞ Ȝ ș Ȫ Ș Ȝ Ȑ ȫ Ƞ Ȝȗ ȝ Ȟ Ȝȑ ȞȎ Ț Țȓ ȒȜȏȎȐȖȚ Ȗȣ Ȑ ȚȜȒȡșȪ h a re. ǰ ȜȏȜșȜȥȘȓ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ȐȩȝȜșțȖ ȘȜȚȎțȒȡ edit hare. ǽȓȞȓȚȓȟȠȖ ȘȡȞȟȜȞ Ȑ țȖȔțȬȬ ȥȎȟȠȪ ȢȎȗșȎ Ȗ ȝȞȜȒȜșȔȖ ȘȜȒ ȒȜȏȎȐȖȐ ȟșȓȒȡȬȧȖȓ ȟȠȞȜȘȖ

hare ...ɩɪɨɩɭɫɤ... 216. -- digUntilClear() ɩɪɨɞɨɥɠɚɟɬ ɞɨɛɵɱɭ ɩɟɪɟɞ ɱɟɪɟɩɚɲɤɨɣ 217. -- ɩɨɤɚ ɨɛɧɚɪɭɠɢɜɚɟɬ ɛɥɨɤɢ ɢɫɩɨɥɶɡɭɟɬɫɹ ɟɫɥɢ 218. -- ɩɟɫɨɤ ɢɥɢ ɝɪɚɜɢɣ ɩɚɞɚɸɬ ɧɚ ɩɭɬɢ ɪɚɡɪɚɛɨɬɤɢ

219. function digUntilClear()

290

DZǹǮǰǮ


220. while turtle.detect() do 221. if not turtle.dig() then 222. return false 223. end 224. end 225. return true 226. end 227. 228. -- digUpUntilClear() ɊɪɨÉžÉ¨ÉĽÉ ÉšÉ&#x;ÉŹ ÉžɨÉ›ɾɹɭ ɧɚɞ ÉąÉ&#x;ÉŞÉ&#x;ÉŠÉšɲɤɨɣ 229. -- ɊɨɤÉš ɨÉ›ɧÉšÉŞÉ­É É˘ÉœÉšÉ&#x;ÉŹ É›ɼɨɤɢ ɢɍɊɨɼɜɥɭÉ&#x;ÉŹÉŤÉš É&#x;ɍɼɢ 230. -- ÉŠÉ&#x;ɍɨɤ ɢɼɢ É?ÉŞÉšÉœɢɣ Ɋɚɞɚɸɏ ɧÉš Ɋɭɏɢ ɪɚɥɪɚɛɨɏɤɢ

231. function digUpUntilClear() 232. while turtle.detectUp() do 233. if not turtle.digUp() then 234. return false 235. end 236. end 237. return true 238. end

ÇżČœČŁČžČŽČ›Č– Č?ČžČœČ‘ČžČŽČšČšČĄ Č– Č?ČŠČ—Č’Č– Č–Č• ČžČ“Č’ČŽČ˜Č ČœČžČŽ Č?ČœČ&#x;șȓ Č?Č?ČœČ’ČŽ Č–Č›Č&#x;Č ČžČĄČ˜ȤČ–Č— Č‹Č ČĄ Č?ČžČœČ‘ČžČŽČšČšČĄ Č ČŽČ˜Č”Č“ ČšČœČ”Č›Čœ Č&#x;Č˜ČŽČĽČŽČ ČŞ Č?ČŠČ?ČœČ™ țȖČ? Č˜ČœČšČŽČ›Č’ČĄ pastebin get wwzvaKuW hare.

Ä–ÄšÄ? Ä Ä&#x;ęĖĢĔĕ ,1/=6<14+4-): Ä” ,1/=8=6<14+4-): Č‚ČĄČ›Č˜ȤČ–Č­ digUntilClear()Č?ČŠČ•ČŠČ?ČŽČ“Č Č˘ČĄČ›Č˜ȤČ–ČŹ turtle. dig() Č’Čœ Č Č“ČŁ Č?ČœČž Č?ČœČ˜ČŽ Č?ȓȞȓȒ ȼȓȞȓČ?ČŽČŚČ˜ČœČ— ČœČ?țȎȞȥȔȖČ?ČŽČŹČ Č&#x;Č­ Č?Č™ČœČ˜Č– Č‚ČĄČ›Č˜ȤČ–Č­ Č?ČœČ•Č?ȞȎȧČŽČ“Č Č•Č›ČŽČĽČ“Č›Č–Č“ true Č“Č&#x;șȖ Č?ČžČœČ&#x;Č ČžČŽČ› Č&#x;Č Č?Čœ Č?ȓȞȓȒ ȼȓȞȓČ?ČŽČŚČ˜ČœČ— Č?ČĄČ&#x;Č Čœ Č– false Č“Č&#x;șȖ Č?ČžČœČ&#x;Č ČžČŽČ›Č&#x;Č Č?Čœ țȓ ČšČœČ”Č“Č Č?ČŠČ ČŞ ČœČĽČ–ȧČ“Č›Čœ țȎČ?ȞȖȚȓȞ Č“Č&#x;șȖ ȼȓȞȓČ?ČŽČŚČ˜ČŽ Č&#x;Č ČŽČ™ Č˜Č–Č?ČŽČ“Č Č&#x;Č­ Č&#x; Č?Č“Č’ČžČœČ˜ČœČš Č˜ČœČ ČœČžČŠČ— țȓČ?ČœČ•ČšČœČ”Č›Čœ ČžČŽČ•ČžČĄČŚČ–Č ČŞ hare 216. -- digUntilClear() ɊɪɨÉžÉ¨ÉĽÉ ÉšÉ&#x;ÉŹ ÉžɨÉ›ɾɹɭ ÉŠÉ&#x;ÉŞÉ&#x;Éž ÉąÉ&#x;ÉŞÉ&#x;ÉŠÉšɲɤɨɣ 217. -- ɊɨɤÉš ɨÉ›ɧÉšÉŞÉ­É É˘ÉœÉšÉ&#x;ÉŹ É›ɼɨɤɢ ɢɍɊɨɼɜɥɭÉ&#x;ÉŹÉŤÉš É&#x;ɍɼɢ 218. -- ÉŠÉ&#x;ɍɨɤ ɢɼɢ É?ÉŞÉšÉœɢɣ Ɋɚɞɚɸɏ ɧÉš Ɋɭɏɢ ɪɚɥɪɚɛɨɏɤɢ

ǽǞǟǹǞǎǺǺǜǞǟǰǎǝǜdz Č…dzǞdzǽǎȆǸǜ Č†ÇŽČƒČ€dzǞǎ

291


219. function digUntilClear() 220. while turtle.detect() do 221. if not turtle.dig() then 222. return false 223. end 224. end 225. return true 226. end

ǻȎȦȎ ȢȡțȘȤȖȭ ȒȜșȔțȎ ȝȞȜȒȜșȔȎȠȪ ȐȩȕȩȐȎȠȪ ȢȡțȘ ȤȖȬ turtle.dig() ȝȜȘȎ ȝȓȞȓȒ ȥȓȞȓȝȎȦȘȜȗ ȓȟȠȪ ȘȎȘȜȗ șȖȏȜ ȏșȜȘ ȝȜȫȠȜȚȡ Ȑ ȟȠȞȜȘȓ țȎȥȖțȎȓȠȟȭ ȏȓȟȘȜțȓȥțȩȗ ȤȖȘș while ȋȠȜȠ ȤȖȘș ȝȞȜȒȜșȔȎȓȠȟȭ ȝȜȘȎ ȢȡțȘȤȖȭ turtle. detect() ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ true ȡȘȎȕȩȐȎȭ țȎ ȠȜ ȥȠȜ ȥȓȞȓȝȎȦȘȎ ȜȏțȎȞȡȔȖșȎ ȝȓȞȓȒ ȟȜȏȜȗ ȏșȜȘ ǸȜȒ Ȑ ȟȠȞȜȘȓ ȐȩȕȩȐȎȓȠ ȢȡțȘȤȖȬ turtle.dig() ȘȜ ȠȜȞȎȭ ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ false ȓȟșȖ ȥȓȞȓȝȎȦȘȎ țȓ ȚȜ ȔȓȠ ȞȎȕȞȡȦȖȠȪ ȏșȜȘ ȝȓȞȓȒ ȟȜȏȜȗ ȂȡțȘȤȖȭ turtle.dig() ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ false ȝȜ ȒȐȡȚ ȝȞȖȥȖțȎȚ ȓȟșȖ ȜȏțȎ ȞȡȔȓțȜ ȝȡȟȠȜȓ ȝȞȜȟȠȞȎțȟȠȐȜ Ȗ ȒȜȏȩȐȎȠȪ țȓȥȓȑȜ ȖșȖ ȓȟșȖ ȜȏțȎȞȡȔȓț ȏșȜȘ ȏȓȒȞȜȘȎ ȘȜȠȜȞȩȗ țȓșȪȕȭ ȒȜȏȩȠȪ ǽȞȖ Ȝȏ țȎȞȡȔȓțȖȖ ȝȡȟȠȜȑȜ ȝȞȜȟȠȞȎțȟȠȐȎ ȖȟȝȜșțȓțȖȓ țȓ ȝȓȞȓȣȜȒȖȠ Ȑ ȤȖȘș while ȝȜȠȜȚȡ ȥȠȜ ȢȡțȘȤȖȭ turtle.detect() ȐȓȞ țȡșȎ ȏȩ ȕțȎȥȓțȖȓ false Ȗ ȡȟșȜȐȖȓ not turtle.detect() ȟȠȎșȜ ȏȩ true ǰ ȟȐȜȬ ȜȥȓȞȓȒȪ ȓȟșȖ ȢȡțȘȤȖȭ turtle.dig() ȐțȡȠȞȖ ȤȖȘșȎ ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ false ȫȠȜ ȕțȎȥȖȠ ȥȠȜ ȥȓȞȓȝȎȦȘȎ ȐȟȠȞȓȠȖșȎ ȏșȜȘ ȘȜȠȜȞȩȗ ȜțȎ țȓ ȚȜȔȓȠ ȜȏȞȎȏȜ ȠȎȠȪ ǰ ȝȞȜȠȖȐțȜȚ ȟșȡȥȎȓ ȖȟȝȜșțȓțȖȓ ȤȖȘșȎ ȝȞȜȒȜșȔȎȓȠȟȭ ȝȜȘȎ ȝȞȜȟȠȞȎțȟȠȐȜ ȝȓȞȓȒ ȥȓȞȓȝȎȦȘȜȗ țȓ ȏȡȒȓȠ ȜȥȖȧȓțȜ Ƕ șȖȦȪ ȝȜȟșȓ ȫȠȜȑȜ ȤȖȘș ȕȎȐȓȞȦȎȓȠȟȭ Ȑ ȟȠȞȜȘȓ ǽȜ ȕȎ ȐȓȞȦȓțȖȖ ȤȖȘșȎ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ true. ǸȜȒ ȢȡțȘȤȖȖ digUpUntilClear() Ȑ ȟȠȞȜȘȎȣ ² ȝȜȥȠȖ ȖȒȓțȠȖȥȓț ȢȡțȘȤȖȖ digUntilClear() ȕȎ ȖȟȘșȬȥȓ țȖȓȚ ȠȜȑȜ ȥȠȜ ȐȚȓȟȠȜ ȢȡțȘȤȖȖ turtle.dig() ȖȟȝȜșȪȕȡȓȠȟȭ ȢȡțȘȤȖȭ turtle.digUp() Ȗ ȐȚȓȟȠȜ ȢȡțȘȤȖȖ turtle.detect() ² ȢȡțȘȤȖȭ turtle.detectUp().

292

DZǹǮǰǮ


ÇŻČ™ČŽČ‘ČœČ’ČŽČžČ­ ČŤČ Č–Čš Č?Č&#x;Č?ČœČšČœČ‘ČŽČ Č“Č™ČŞČ›ČŠČš ȢȥČ›Č˜ȤČ–Č­Čš Č&#x;Č ČŽČ›Čœ Č?Č–Č Č&#x;Č­ Č?ČœČ•ČšČœČ”Č›ČŽ ȞȓȎșȖȕȎȤČ–Č­ ČŽČ™Č‘ČœČžČ–Č ČšČŽ Č&#x;ČœČ•Č’ČŽČ›Č–Č­ ČŚČŽČŁČ ČŠ Č&#x; șȓČ&#x;Č Č›Č–ȤČ“Č— ȀȓČ?ȓȞȪ Č’ČŽČ?ČŽČ— Č?ȞȖČ&#x;Č ČĄČ?Č–Čš Č˜ țȎČ?Č–Č&#x;ȎțȖȏ Č?ČžČœ ȑȞȎȚȚȊ stairminer

Ä–ÄšÄ? ěĜĚÄ?ĜČĘĘħ ;<)1:516-: Ç˝ČžČœČ‘ČžČŽČšČšČŽ stairminer Č?ČŠČ˜ČŽČ?ČŠČ?ČŽČ“Č ČŚČŽČŁČ ČĄ Č? ȢČœČžČšČ“ șȓČ&#x;Č Č›Č–ȤȊ Č? țȎČ?ȞȎČ?șȓțȖȖ Č?ȓȞȓȒ ȼȓȞȓČ?ČŽČŚČ˜ČœČ— Ç° ČœČ?ČœČ™ČœČĽČ˜Č“ Č˜Čœ ČšČŽČ›Č’Č›ČœČ— Č&#x;Č ČžČœČ˜Č– Č?ČŠČ?ČœČ™Č›Č– Č˜ČœČšČŽČ›Č’ČĄ edit stairminer Č– Č?Č?Č“ Č’Č– Č&#x;șȓȒȥȏȧČ–Č— Č˜ČœČ’ stairminer 1. --[[ ɉɪɨÉ?ɪɚɌɌɚ ɍɨɥɞɚɧɢɚ ɲɚɯɏɾ ÉŤ ÉĽÉ&#x;ɍɏɧɢɰÉ&#x;ÉŁ É—ÉĽÉš É‹ÉœÉ&#x;ÉŁÉ?ɚɪɏɚ 2. ɊɚɥɪɚɛɨɏɤÉš ɍɨ ɍɏɪɨɢɏÉ&#x;ɼɜɍɏÉœɨɌ ÉŤÉŹÉ­ÉŠÉ&#x;ɧÉ&#x;ɤ.]] 3. 4. os.loadAPI('hare') 5. 6. local cliArgs, targetDepth, columnDepth, result, errorMessage 7. 8. cliArgs = {...} 9. targetDepth = tonumber(cliArgs[1]) 10. 11. -- ɨɏɨÉ›ÉŞÉšÉ É&#x;ɧɢÉ&#x; ɢɧɎɨɪɌÉšɰɢɢ ɨÉ› ɢɍɊɨɼɜɥɨɜɚɧɢɢ LI WDUJHW'HSWK QLO RU FOL$UJV> @ " WKHQ 13. print('Usage: stairminer <depth>') 14. return 15. end 16. 17. turtle.digDown() 18. 19. columnDepth = 2 20. while true do ÉžÉœÉ˘É É&#x;ɧɢÉ&#x; ɜɊÉ&#x;ÉŞÉ&#x;Éž 22. hare.digUntilClear() 23. turtle.forward() 24. 25. -- ɪɚɥɪɚɛɨɏɤÉš Éœɨ ÉœÉŞÉ&#x;ÉŚÉš ɍɊɭɍɤÉš

ǽǞǟǹǞǎǺǺǜǞǟǰǎǝǜdz Č…dzǞdzǽǎȆǸǜ Č†ÇŽČƒČ€dzǞǎ

293


26. 27. 28. 29.

for i = 1, columnDepth do -- ɊɪɨÉœÉ&#x;ɪɤÉš ɧÉš ɧÉšɼɢɹɢÉ&#x; É›É&#x;ÉžɪɨɤÉš result, errorMessage = turtle.digDown() if errorMessage == 'Unbreakable block detected' then print('Hit bedrock. Done.') return else turtle.down() end end

30. 31. 32. 33. 34. 35. 36. 37. -- ɊɪɨÉœÉ&#x;ɪɤÉš ɍɨÉ›ɼɸÉžÉ&#x;ɧɢɚ ɭɍɼɨÉœɢɚ 38. print('Current depth: ' .. columnDepth) LI FRɸÉ›ɭɤÉœ ÉžÉœÉ˘É É&#x;ɧɢÉ&#x; ɜɊÉ&#x;ÉŞÉ&#x;Éž 45. hare.digUntilClear() 46. turtle.forward() 47. turtle.digDown() 48. 49. -- ɊɪɨÉœÉ&#x;ɪɤÉš ÉžɨɍɏÉšɏɨɹɧɨ ɼɢ ɏɨɊɼɢɜɚ ɹɏɨɛɾ ɊɨÉžɧɚɏɜɍɚ ɢ ɍɧɨɜɚ ɨɊɭɍɏɢɏɜɍɚ 50. while turtle.getFuelLevel() < (columnDepth * 2) do 51. -- ɊɨɊɾɏɤÉš ɢɍɊɨɼɜɥɨÉœÉšÉŹÉś ɏɨɊɼɢÉœɨ Éœ ɢɧÉœÉ&#x;ɧɏɚɪÉ&#x; 52. for slot = 1, 16 do 53. turtle.select(slot) 54. turtle.refuel() 55. end 56. 57. if turtle.getFuelLevel() < (columnDepth * 2) then 58. print('Please load more fuel...') 59. os.sleep(10) 60. end 61. end 62. 63. -- ɊɪɨÉœÉ&#x;ɪɤÉš ÉĄÉšɊɨɼɧÉ&#x;ɧɧɨɍɏɢ ɢɧÉœÉ&#x;ɧɏɚɪɚ 64. while hare.selectEmptySlot() == false do 65. print('Please unload the inventory...') 66. os.sleep(10) 67. end 68.

294

ǹǚǎǰǎ


69. -- ɪɚɡɪɚɛɨɬɤɚ ɜɨ ɜɪɟɦɹ ɩɨɞɴɟɦɚ 70. for i = 1, columnDepth do 71. hare.digUpUntilClear() 72. turtle.up() 73. end 74. 75. columnDepth = columnDepth + 2 76. end

ǿȜȣȞȎțȖ ȝȞȜȑȞȎȚȚȡ Ȗ ȐȩȗȒȖ Ȗȕ ȞȓȒȎȘȠȜȞȎ ȝȜȟșȓ ȐȐȜȒȎ Ȑȟȓȣ ȖțȟȠȞȡȘȤȖȗ

ēČěğĝĖ ěĜĚďĜČĘĘħ ;<)1:516-: ȁȟȠȎțȜȐȖ ȥȓȞȓȝȎȦȘȡ țȎ ȕȓȚșȬ Ȗ ȕȎȝȡȟȠȖ ȝȞȜȑȞȎȚȚȡ stair miner ȝȓȞȓȒȎȐ ȓȗ ȤȓșȜȥȖȟșȓțțȩȗ ȎȞȑȡȚȓțȠ Ȓșȭ ȡȘȎȕȎțȖȭ ȚȎȘȟȖȚȎșȪțȜȗ ȑșȡȏȖțȩ ǻȎȝȞȖȚȓȞ ȘȜȚȎțȒȎ stairminer 6 ȟȜȕȒȎȟȠ ȟȠȡȝȓțȥȎȠȡȬ ȦȎȣȠȡ ȑșȡȏȖțȜȗ Ȑ ȦȓȟȠȪ ȏșȜȘȜȐ ǼȏȞȎȠȖ ȐțȖȚȎțȖȓ ȥȠȜ ȕțȎȥȓțȖȭ ȝȓȞȓȒȎȐȎȓȚȩȓ Ȑ ȝȞȜȑȞȎȚȚȡ ȜȘȞȡȑșȭȬȠȟȭ ȒȜ ȏșȖȔȎȗȦȓȑȜ ȥȓȠțȜȑȜ ȥȖȟșȎ ȠȎȘ ȘȎȘ ȥȓȞȓȝȎȦȘȎ ȐȟȓȑȒȎ ȝȓȞȓȚȓȧȎȓȠȟȭ ȐțȖȕ ȝȜ ȜȒțȜȚȡ ȘȜșȜȒȤ ȡ Ȏ ȕȎȠȓȚ ȝȓȞȓȚȓȧȎȓȠȟȭ ȐȐȓȞȣ ȝȜ ȟșȓȒȡȬȧȓȚȡ ȘȜșȜȒȤȡ ȀȎȘȖȚ ȜȏȞȎȕȜȚ ȘȜȚȎțȒȎ stairminer 9 ȝȞȖȐȓȒȓȠ Ș ȟȠȞȜȖȠȓșȪȟȠȐȡ ȦȎȣȠȩ ȑșȡȏȖțȜȗ Ȑ ȏșȜȘȜȐ ȠȎȘ Ȕȓ ȘȎȘ ȓȟșȖ ȏȩ ȏȩșȎ ȐȩȝȜșțȓțȎ ȘȜȚȎțȒȎ stairminer 10. dzȟșȖ ȝȞȖ ȕȎȝȡȟȘȓ ȫȠȜȗ ȝȞȜȑȞȎȚȚȩ ȐȜȕțȖȘȎȬȠ ȜȦȖȏȘȖ ȠȧȎȠȓșȪțȜ ȟȞȎȐțȖ ȟȐȜȗ ȘȜȒ ȟ șȖȟȠȖțȑȜȚ Ȑ ȫȠȜȗ ȘțȖȑȓ ȥȠȜ ȏȩ țȎȗȠȖ ȐȜȕȚȜȔțȩȓ ȜȝȓȥȎȠȘȖ dzȟșȖ ȖȟȝȞȎȐȖȠȪ ȝȞȜȑȞȎȚ Țȡ țȓ ȡȒȎȓȠȟȭ ȡȒȎșȖ ȢȎȗș ȐȩȝȜșțȖȐ ȘȜȚȎțȒȡ delete stairminer Ȏ ȕȎȠȓȚ ȕȎȑȞȡȕȖ ȝȞȜȑȞȎȚȚȡ ȐȩȝȜșțȖȐ ȘȜȚȎț Ȓȡ pastebin get PGH1WYpH stairminer.

ęČĝĞĜĚĕĖČ ěĜĚďĜČĘĘħ ;<)1:516-: ǽȓȞȐȩȓ ȥȓȠȩȞȓ ȟȠȞȜȘȖ ȘȜȒȎ ȝȞȜȑȞȎȚȚȩ stairminer ȟȜȒȓȞ ȔȎȠ ȘȜȚȚȓțȠȎȞȖȖ ȜȝȖȟȩȐȎȬȧȖȓ ȝȞȜȑȞȎȚȚȡ Ȗ ȐȩȕȜȐ ȢȡțȘ ȤȖȖ os.loadAPI() Ȓșȭ ȕȎȑȞȡȕȘȖ ȚȜȒȡșȭ hare ǽȜȟșȓ țȎ ȟȠȞȜȗȘȖ ȝȞȜȑȞȎȚȚȩ ȜȏȨȭȐșȭȬȠȟȭ țȓȟȘȜșȪȘȜ ȝȓȞȓȚȓțțȩȣ ȘȜȠȜȞȩȓ ȕȎȠȓȚ ȏȡȒȡȠ ȖȟȝȜșȪȕȜȐȎțȩ

ǽǾǼDZǾǮǺǺǶǾǼǰǮǻǶdz ȅdzǾdzǽǮȆǸǶ ȆǮȃȀdzǾǮ

295


stairminer 6. local cliArgs, targetDepth, columnDepth, result, errorMessage

ǿȠȞȜȘȎ ȟȜȒȓȞȔȖȠ ȖțȟȠȞȡȘȤȖȬ local Ȓșȭ ȟȜȕȒȎțȖȭ ȝȭ ȠȖ ȝȓȞȓȚȓțțȩȣ ǽȓȞȓȚȓțțȎȭ cliArgs ȟȜȒȓȞȔȖȠ ȎȞȑȡȚȓțȠȩ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ȘȜȠȜȞȩȓ ȝȞȜȑȞȎȚȚȎ ȖȟȝȜșȪȕȡȓȠ Ȑ ȝȞȜȤȓȟ ȟȓ ȖȟȝȜșțȓțȖȭ ǽȓȞȓȚȓțțȩȓ targetDepth Ȗ columnDepth ȜȠȟșȓȔȖȐȎȬȠ ȘȎȘ ȑșȡȏȜȘȜ ȟșȓȒȡȓȠ ȥȓȞȓȝȎȦȘȓ ȜȝȡȟȠȖȠȪȟȭ Ȗ ȘȎȘ ȑșȡȏȜȘȜ ȜțȎ ȡȔȓ ȜȝȡȟȠȖșȎȟȪ ȟȜȜȠȐȓȠȟȠȐȓțțȜ ǽȓȞȓ Țȓțțȩȓ result Ȗ errorMessage ȟȜȣȞȎțȭȬȠ ȕțȎȥȓțȖȭ ȐȜȕ ȐȞȎȧȎȓȚȩȓ ȝȞȖ ȐȩȕȜȐȓ ȢȡțȘȤȖȖ turtle.digDown(). ǵțȎȥȓțȖȓ ȎȞȑȡȚȓțȠȎ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ȝȓȞȓȒȎȓȠȟȭ ȝȓ ȞȓȚȓțțȜȗ targetDepth dzȟșȖ ȖȑȞȜȘ țȓ ȐȐȓș ȥȖȟșȜ ȖșȖ ȫȠȜ ȏȩș ȟȖȚȐȜș " ȝȞȜȑȞȎȚȚȎ ȜȠȜȏȞȎȔȎȓȠ ȟȜȜȏȧȓțȖȓ ȝȜșȪȕȜ ȐȎȠȓșȬ stairminer 8. cliArgs = {...} 9. targetDepth = tonumber(cliArgs[1]) 10. 11. -- ɨɬɨɛɪɚɠɟɧɢɟ ɢɧɮɨɪɦɚɰɢɢ ɨɛ ɢɫɩɨɥɶɡɨɜɚɧɢɢ 12. if targetDepth == nil or cliArgs> @ " then 13. print('Usage: stairminer <depth>') 14. return 15. end

ǮȞȑȡȚȓțȠȩ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ȣȞȎțȭȠȟȭ Ȑ ȠȎȏșȖȤȓ {...} ȘȜȠȜȞȎȭ ȟȜȕȒȎȓȠȟȭ Ȑ ȟȠȞȜȘȓ ȝȜȒ ȖȚȓțȓȚ cliArgs dzȟșȖ ȖȑȞȜȘ țȓ ȡȘȎȕȩȐȎȓȠ ȥȖȟșȓțțȩȗ ȎȞȑȡȚȓțȠ ȘȜȚȎțȒțȜȗ ȟȠȞȜ ȘȖ țȎȝȞȖȚȓȞ ȓȟșȖ ȖȑȞȜȘ ȐȩȝȜșțȭȓȠ ȘȜȚȎțȒȡ stairminer hello ȐȩȞȎȔȓțȖȓ tonumber(cliArgs [1]) Ȑ ȟȠȞȜȘȓ ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ nil ȘȜȠȜȞȜȓ ȝȞȖȟȐȎȖȐȎȓȠȟȭ ȝȓȞȓȚȓț țȜȗ targetDepth ǸȜȒ Ȑ ȟȠȞȜȘȓ ȝȞȜȐȓȞȭȓȠ ȝȞȖȟȐȜȓțȜ șȖ ȝȓȞȓȚȓțțȜȗ targetDepth ȕțȎȥȓțȖȓ nil ȖșȖ ȖȟȝȜșȪȕȡȓȠȟȭ ȎȞȑȡȚȓțȠ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ " dzȟșȖ ȐȩȝȜșțȭȓȠȟȭ ȡȟșȜȐȖȓ ȫȠȜȗ ȟȠȞȜȘȖ ȘȜȒ Ȑ ȟȠȞȜȘȎȣ Ȗ ȐȩȐȜȒȖȠ ȟȜȜȏȧȓțȖȓ ȝȜșȪ ȕȜȐȎȠȓșȬ

296

DZǹǮǰǮ


ĝĚēĐČęĔđ ěđĜĎĚĕ ėđĝĞęĔĢħ ǻȎȝȜȚțȬ ȥȠȜ ȥȓȞȓȝȎȦȘȓ țȓ țȡȔțȜ ȒȐȖȑȎȠȪȟȭ ȐțȖȕ ȥȠȜȏȩ ȐȩȘȜȝȎȠȪ ȝȓȞȐȩȗ ȏșȜȘ ǼțȎ țȎȥȖțȎȓȠ ȟ ȝȜȐȓȞȣțȜȟȠȖ ȐȩȘȎ ȝȩȐȎȓȠ ȝȓȞȐȩȗ ȏșȜȘ ȕȎȠȓȚ ȝȓȞȓȣȜȒȖȠ Ș ȟșȓȒȡȬȧȓȚȡ ȘȜșȜȒ Ȥȡ ǸȜȒ Ȑ ȟȠȞȜȘȓ ȐȩȘȎȝȩȐȎȓȠ ȜȒȖț ȏșȜȘ ȋȠȜ ȝȓȞȐȩȗ ȦȎȑ Ȑ ȝȜȟȠȞȜȓțȖȖ șȓȟȠțȖȤȩ stairminer 17. turtle.digDown()

ǰ ȝȓȞȐȜȚ ȘȜșȜȒȤȓ țȡȔțȜ ȐȩȘȜȝȎȠȪ ȠȜșȪȘȜ ȜȒȖț ȏșȜȘ ȝȜȫȠȜȚȡ ȫȠȜ ȒȓȗȟȠȐȖȓ Ȑ ȎșȑȜȞȖȠȚȓ ȏȜșȪȦȓ țȓ ȡȥȎȟȠȐȡȓȠ ǼȟȠȎșȪțȡȬ ȥȎȟȠȪ șȓȟȠțȖȤȩ ȥȓȞȓȝȎȦȘȎ ȟȜȕȒȎȓȠ ȖȟȝȜșȪȕȡȭ ȤȖȘș while ȟ ȝȜȚȜȧȪȬ ȘȜȠȜȞȜȑȜ ȜțȎ ȝȜȜȥȓȞȓȒțȜ ȘȜȝȎȓȠ ȠȜ ȐȐȓȞȣ ȠȜ ȐțȖȕ ǽȓȞȐȩȓ ȒȐȎ ȘȜșȜȒȤȎ ȥȓȞȓȝȎȦȘȎ ȘȜȝȎȓȠ ȐțȖȕ Ȏ ȠȞȓȠȖȗ ȐȐȓȞȣ ǽȜȟșȓ ȝȓȞȐȩȣ ȠȞȓȣ ȘȜșȜȒȤȓȐ ȜțȎ ȘȜȝȎȓȠ ȐțȖȕ ȘȎȔ Ȓȩȗ ȥȓȠțȩȗ ȘȜșȜȒȓȤ Ȗ ȐȐȓȞȣ ȘȎȔȒȩȗ țȓȥȓȠțȩȗ DzȎȐȎȗ ȞȎȟ ȟȚȜȠȞȖȚ ȘȜȒ ȘȜȠȜȞȩȗ ȥȓȞȓȝȎȦȘȎ ȖȟȝȜșȪȕȡȓȠ ȥȠȜȏȩ ȘȜȝȎȠȪ ȥȓȠțȩȓ ȘȜșȜȒȤȩ

ĜČēĜČčĚĞĖČ ĎęĔē ǽȓȞȓȚȓțțȎȭ columnDepth ȣȞȎțȖȠ ȘȜșȖȥȓȟȠȐȜ ȏșȜȘȜȐ ȘȜȠȜȞȩȓ ȥȓȞȓȝȎȦȘȎ ȒȜșȔțȎ ȐȩȘȜȝȎȠȪ Ȑ ȠȓȘȡȧȓȚ ȘȜșȜȒȤȓ stairminer 19. columnDepth = 2 20. while true do 21. -- ɞɜɢɠɟɧɢɟ ɜɩɟɪɟɞ 22. hare.digUntilClear() 23. turtle.forward()

ǽȜȟȘȜșȪȘȡ ȥȓȞȓȝȎȦȘȎ ȘȜȝȎȓȠ ȝȓȞȐȩȗ ȘȜșȜȒȓȤ Ȑțȓ ȤȖȘ șȎ ȕțȎȥȓțȖȓ ȝȓȞȓȚȓțțȜȗ columnDepth țȎȥȖțȎȓȠȟȭ ȟ 2 Ȗ ȡȐȓșȖȥȖȐȎȓȠȟȭ Ȑ ȘȜțȤȓ ȘȎȔȒȜȗ ȖȠȓȞȎȤȖȖ ȤȖȘșȎ while ȘȜ ȠȜȞȩȗ țȎȥȖțȎȓȠȟȭ Ȑ ȟȠȞȜȘȓ ǰțȡȠȞȖ ȤȖȘșȎ while ȘȜȒ Ȑ ȟȠȞȜȘȓ ȐȩȘȎȝȩȐȎȓȠ ȏșȜȘ ȝȓȞȓȒ ȥȓȞȓȝȎȦȘȜȗ ȟ ȝȜȚȜȧȪȬ ȢȡțȘȤȖȖ hare.digUntilClear() dzȟșȖ țȎ ȫȠȜ ȚȓȟȠȜ ȝȎȒȎȬȠ

ǽǾǼDZǾǮǺǺǶǾǼǰǮǻǶdz ȅdzǾdzǽǮȆǸǶ ȆǮȃȀdzǾǮ

297


ȝȓȟȥȎțȩȓ ȖșȖ ȑȞȎȐȖȗțȩȓ ȏșȜȘȖ ȫȠȎ ȢȡțȘȤȖȭ ȐȩȘȜȝȎȓȠ Ȗȣ Ȑȟȓ ȒȜ ȠȜȑȜ ȘȎȘ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȝȓȞȓȚȓȟȠȖȠ ȥȓȞȓȝȎȦȘȡ Ȑȝȓ ȞȓȒ țȎ ȜȒțȡ ȝȜȕȖȤȖȬ ǸȜȑȒȎ ȖțȠȓȞȝȞȓȠȎȠȜȞ ȐȩȝȜșțȖȠ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȥȓȞȓȝȎȦȘȎ ȟȚȜȔȓȠ ȐȩȘȜȝȎȠȪ ȏșȜȘ ȝȜȒ ȟȜȏȜȗ ȡȔȓ țȎȣȜȒȭȟȪ Ȑ ȟșȓȒȡȬȧȓȚ ȘȜșȜȒȤȓ ǽȜȟșȓ ȝȓȞȓȚȓȧȓțȖȭ ȥȓȞȓȝȎȦȘȖ ȐȝȓȞȓȒ ȐțȡȠȞȖ ȤȖȘșȎ while țȎȥȖțȎȓȠȟȭ ȤȖȘș for. stairminer 25. -- ɪɚɡɪɚɛɨɬɤɚ ɜɨ ɜɪɟɦɹ ɫɩɭɫɤɚ 26. for i = 1, columnDepth do 27. -- ɩɪɨɜɟɪɤɚ ɧɚ ɧɚɥɢɱɢɟ ɛɟɞɪɨɤɚ 28. result, errorMessage = turtle.digDown() 29. if errorMessage == 'Unbreakable block detected' then 30. print('Hit bedrock. Done.') 31. return 32. else 33. turtle.down() 34. end 35. end

ȄȖȘș for țȎȥȖțȎȬȧȖȗȟȭ Ȑ ȟȠȞȜȘȓ ȖțȟȠȞȡȘȠȖȞȡ ȓȠ ȥȓȞȓȝȎȦȘȡ ȘȜȝȎȠȪ ȐțȖȕ ȐȩȕȩȐȎȭ ȢȡțȘȤȖȬ turtle. digDown() Ȑ ȟȠȞȜȘȓ ǼȒțȎȘȜ ȒȜȏȩȥȎ ȚȜȔȓȠ ȕȎȐȓȞȦȖȠȪ ȟȭ țȓȝȞȓȒȐȖȒȓțțȜ ȓȟșȖ ȥȓȞȓȝȎȦȘȎ ȒȜȟȠȖȑțȓȠ ȒțȎ ȚȖȞȎ 0LQHFUDIW ȘȜȠȜȞȩȗ ȟȜȟȠȜȖȠ Ȗȕ ȏȓȒȞȜȘȎ țȓ ȝȜȒȒȎȬȧȓȑȜȟȭ ȜȏȞȎȏȜȠȘȓ ǰ ȫȠȜȚ ȟșȡȥȎȓ ȓȟșȖ ȝȜȒ ȥȓȞȓȝȎȦȘȜȗ țȎȣȜȒȖȠ ȟȭ ȏȓȒȞȜȘ Ȑ ȟȠȞȜȘȓ ȢȡțȘȤȖȭ turtle.digDown() ȐȜȕȐȞȎ ȧȎȓȠ ȕțȎȥȓțȖȓ false Ȓșȭ ȟȐȜȓȑȜ ȝȓȞȐȜȑȜ ȐȜȕȐȞȎȧȎȓȚȜȑȜ ȕțȎȥȓțȖȭ ȘȜȠȜȞȜȓ Țȩ ȟȜȣȞȎțȭȓȚ Ȑ ȝȓȞȓȚȓțțȜȗ result Ȗ ȟȠȞȜȘȡ 'Unbreakable block detected' Ȓșȭ ȐȠȜȞȜȑȜ ȐȜȕ ȐȞȎȧȎȓȚȜȑȜ ȕțȎȥȓțȖȭ ȘȜȠȜȞȜȓ Țȩ ȟȜȣȞȎțȭȓȚ Ȑ ȝȓȞȓȚȓțțȜȗ errorMessage ǸȜȒ Ȑ ȟȠȞȜȘȓ ȝȞȜȐȓȞȭȓȠ țȎșȖȥȖȓ ȟȠȞȜȘȖ 'Unbreakable block detected' Ȑ ȝȓȞȓȚȓțțȜȗ errorMessage Ȗ ȓȟșȖ ȫȠȎ ȟȠȞȜȘȎ ȠȎȚ ȓȟȠȪ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȜȠȜȏȞȎȔȎȓȠ ȟȜȜȏȧȓțȖȓ ȖȑȞȜȘȡ 'Hit bedrock. Done.'. dzȟșȖ ȥȓȞȓȝȎȦȘȎ ȐȟȠȞȓȥȎȓȠ ȏȓȒȞȜȘ ȜțȎ țȓ ȚȜȔȓȠ ȝȞȜȒȜșȔȎȠȪ ȒȜȏȩȥȡ ȏșȜȘȜȐ ȝȜȫȠȜȚȡ ȝȞȜȑȞȎȚȚȎ ȕȎȐȓȞȦȎȓȠȟȭ Ȑ ȟȠȞȜȘȓ

298

DZǹǮǰǮ


ǰ ȝȞȜȠȖȐțȜȚ ȟșȡȥȎȓ ȓȟșȖ ȝȜȒ ȥȓȞȓȝȎȦȘȜȗ țȓ ȜȏțȎȞȡȔȓț ȏȓȒȞȜȘ ȜțȎ ȚȜȔȓȠ ȜȝȡȟȠȖȠȪȟȭ ȐțȖȕ Ȗ ȝȞȜȑȞȎȚȚȎ ȝȞȜȒȜș ȔȖȠ ȐȩȝȜșțȓțȖȓ ȘȜȒȎ ȝȜȟșȓ ȖțȟȠȞȡȘȤȖȖ else Ȑ ȟȠȞȜȘȓ ǿȠȞȜȘȎ țȎȣȜȒȖȠȟȭ ȐțȡȠȞȖ ȏșȜȘȎ ȖțȟȠȞȡȘȤȖȖ else Ȗ ȝȓȞȓ ȚȓȧȎȓȠ ȥȓȞȓȝȎȦȘȡ ȐțȖȕ Ȑ ȝȞȜȟȠȞȎțȟȠȐȜ ȜȥȖȧȓțțȜȓ ȝȜȟșȓ ȒȜȏȩȥȖ ȏșȜȘȎ ǸȜȒ Ȑ ȟȠȞȜȘȓ ȕȎȐȓȞȦȎȓȠ ȏșȜȘ ȖțȟȠȞȡȘȤȖȖ else Ȏ ȟȠȞȜȘȎ ȕȎȐȓȞȦȎȓȠ ȤȖȘș for ǸȜȒ ȐțȡȠȞȖ ȤȖȘșȎ for Ȑ ȟȠȞȜȘȎȣ ² ȝȞȜȖȕȐȜȒȖȠ columnDepth ȖȠȓȞȎȤȖȗ ȓȟșȖ Ȑ ȝȞȜȤȓȟȟȓ ȓȑȜ ȖȟȝȜșțȓțȖȭ ȥȓȞȓȝȎȦȘȎ țȓ ȒȜȟȠȖȑțȓȠ ȏȓȒȞȜȘȎ ǽȜȟșȓ ȕȎȐȓȞȦȓțȖȭ ȤȖȘșȎ for ȝȞȜȑȞȎȚȚȎ ȝȓȞȓȣȜȒȖȠ Ș ȖȟȝȜșțȓțȖȬ ȜȟȠȎșȪțȜȗ ȥȎȟȠȖ ȤȖȘșȎ while. stairminer 37. -- ɩɪɨɜɟɪɤɚ ɫɨɛɥɸɞɟɧɢɹ ɭɫɥɨɜɢɹ 38. print('Current depth: ' .. columnDepth) 39. if columnDepth >= targetDepth then 40. print('Done.') 41. return 42. end

ǸȜȒ Ȑ ȟȠȞȜȘȓ ȐȩȐȜȒȖȠ ȟȜȜȏȧȓțȖȓ ȟȜȒȓȞȔȎȧȓȓ ȕțȎ ȥȓțȖȓ ȝȓȞȓȚȓțțȜȗ columnDepth ȘȜȠȜȞȜȓ ȡȘȎȕȩȐȎȓȠ țȎ ȘȎȘȜȓ ȘȜșȖȥȓȟȠȐȜ ȏșȜȘȜȐ ȜȝȡȟȠȖșȎȟȪ ȥȓȞȓȝȎȦȘȎ ȠȜ ȓȟȠȪ ȟȘȜșȪȘȜ ȖȠȓȞȎȤȖȗ ȟȜȐȓȞȦȓțȜ Ȑ ȤȖȘșȓ for Ȑ ȟȠȞȜȘȎȣ ² ǶțȟȠȞȡȘȤȖȭ if Ȑ ȟȠȞȜȘȓ ȝȞȜȐȓȞȭȓȠ ȒȜȟȠȖȑșȜ șȖ ȕțȎ ȥȓțȖȓ ȝȓȞȓȚȓțțȜȗ columnDepth ȑșȡȏȖțȎ ȘȜșȜȒȤȎ ȘȜȠȜ Ȟȩȗ ȘȜȝȎȓȠ ȥȓȞȓȝȎȦȘȎ ȐȓșȖȥȖțȩ ȏȜșȪȦȓȗ ȖșȖ ȞȎȐțȜȗ ȥȓȚ ȕțȎȥȓțȖȓ ȝȓȞȓȚȓțțȜȗ targetDepth dzȟșȖ ȡȟșȜȐȖȓ Ȗȟ ȠȖțțȜ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȟȜȜȏȧȎȓȠ ȖȑȞȜȘȡ ȥȠȜ ȝȞȜȑȞȎȚȚȎ ȐȩȝȜșțȓțȎ Ȏ ȖțȟȠȞȡȘȤȖȭ return Ȑ ȟȠȞȜȘȓ ȕȎȐȓȞȦȎȓȠ ȝȞȜȑȞȎȚȚȡ ǻȎȝȜȚțȬ ȥȠȜ ȖțȟȠȞȡȘȤȖȭ return Ȑțȓ ȘȎȘȜȗ șȖȏȜ ȢȡțȘȤȖȖ țȎȝȞȖȚȓȞ Ȑ ȟȠȞȜȘȓ ȕȎȐȓȞȦȎȓȠ ȞȎȏȜȠȡ ȝȞȜȑȞȎȚȚȩ &RPSXWHU&UDIW. dzȟșȖ ȥȓȞȓȝȎȦȘȎ Ȑ ȝȞȜȤȓȟȟȓ ȘȜȝȎțȖȭ țȓ ȐȟȠȞȓȠȖșȎ ȏȓ ȒȞȜȘ ȜțȎ ȒȜșȔțȎ ȜȥȖȟȠȖȠȪ ȝȞȜȟȠȞȎțȟȠȐȜ ȐȝȓȞȓȒȖ ȝȓȞȓȚȓ ȟȠȖȠȪȟȭ Ȗ ȐȩȘȜȝȎȠȪ ȏșȜȘ ȝȜȒ ȟȜȏȜȗ ǿ ȐȩȝȜșțȓțȖȭ ȫȠȖȣ Ȓȓȗ ȟȠȐȖȗ țȎȥȖțȎȓȠȟȭ ȐȩȞȎȏȜȠȘȎ ȟșȓȒȡȬȧȓȑȜ ȘȜșȜȒȤȎ

ǽǾǼDZǾǮǺǺǶǾǼǰǮǻǶdz ȅdzǾdzǽǮȆǸǶ ȆǮȃȀdzǾǮ

299


stairminer ɞɜɢɠɟɧɢɟ ɜɩɟɪɟɞ 45. hare.digUntilClear() 46. turtle.forward() 47. turtle.digDown()

ǰ ȟȠȞȜȘȓ ȥȓȞȓȝȎȦȘȎ ȐȩȕȩȐȎȓȠ ȢȡțȘȤȖȬ hare.digUntilClear() ȥȠȜȏȩ ȐȩȘȜȝȎȠȪ ȏșȜȘ ȝȓȞȓȒ ȟȜȏȜȗ ǸȜȒ Ȑ ȟȠȞȜȘȓ ȝȓȞȓȚȓȧȎȓȠ ȥȓȞȓȝȎȦȘȡ ȐȝȓȞȓȒ ȐȩȕȩȐȎȭ ȢȡțȘȤȖȬ turtle.forward() ǸȜȒ Ȑ ȟȠȞȜȘȓ ȐȩȘȎȝȩȐȎȓȠ ȏșȜȘ ȘȜȠȜȞȩȗ țȎȣȜȒȖȠȟȭ ȝȜȒ ȥȓȞȓȝȎȦȘȜȗ ȐȩȕȩȐȎȭ ȢȡțȘȤȖȬ turtle. digDown() ǻȎ ȞȖȟ ȝȜȘȎȕȎțȜ ȟȜȟȠȜȭțȖȓ șȓȟȠțȖȤȩ ȘȜ ȠȜȞȡȬ ȐȩȘȜȝȎșȎ ȥȓȞȓȝȎȦȘȎ ȝȜȟșȓ ȖȟȝȜșțȓțȖȭ ȘȜȒȎ Ȑ ȟȠȞȜ Șȓ DzȎșȓȓ ȥȓȞȓȝȎȦȘȎ țȎȥțȓȠ ȘȜȝȎȠȪ ȠȓȘȡȧȖȗ ȘȜșȜȒȓȤ ȟțȖȕȡ ȐȐȓȞȣ ǻȜ ȝȞȓȔȒȓ ȥȓȚ ȥȓȞȓȝȎȦȘȎ țȎȥțȓȠ ȒȐȖȔȓțȖȓ ȐȐȓȞȣ țȡȔ țȜ ȝȞȜȐȓȞȖȠȪ ȥȠȜ ȡ țȓȓ ȒȜȟȠȎȠȜȥțȜ ȠȜȝșȖȐȎ Ȓșȭ ȝȜȒȨȓȚȎ DzȎȐȎȗ ȞȎȟȟȚȜȠȞȖȚ ȘȎȘ ȝȞȜȖȟȣȜȒȖȠ ȝȞȜȐȓȞȘȎ ȡȞȜȐțȭ ȠȜ ȝșȖȐȎ

ˀ̛̭͘ ϭϱ͘ϭϭ͘ ʸ̸̛̖̭̯̦̦̌́ ̵̹̯̌̌ ̨̪̭̣̖ ̨̛̛̭̪̣̦̖̦́ ̡̨̔̌ ̏ ̨̡̭̯̬̖ ϰϳ

ěĜĚĎđĜĖČ ®ĝħĞĚĝĞĔ¯ ģđĜđěČĤĖĔ dzȟșȖ ȡ ȥȓȞȓȝȎȦȘȖ ȕȎȘȎțȥȖȐȎȓȠȟȭ ȠȜȝșȖȐȜ ȘȜȑȒȎ ȜțȎ ȘȜȝȎ ȓȠ ȐțȖȕ ȥȓȠțȩȗ ȘȜșȜȒȓȤ ȕȎ țȓȗ ȚȜȔțȜ șȓȑȘȜ ȝȜȟșȓȒȜȐȎȠȪ

300

DZǹǮǰǮ


Ȗ ȐȩȠȎȧȖȠȪ țȎ ȝȜȐȓȞȣțȜȟȠȪ ǻȜ ȓȟșȖ ȠȜȝșȖȐȜ ȕȎȘȜțȥȖȠȟȭ Ȑ ȠȜȠ ȚȜȚȓțȠ ȘȜȑȒȎ ȜțȎ ȝȞȜȏȖȐȎȓȠ ȐȐȓȞȣ țȓȥȓȠțȩȗ ȘȜșȜ ȒȓȤ ȒȜȏȞȎȠȪȟȭ ȒȜ țȓȓ ȏȡȒȓȠ ȡȔȓ țȓ ȠȎȘ ȝȞȜȟȠȜ ǻȎȝȞȖȚȓȞ ȘȞȎȗțȓ țȓȝȞȖȭȠțȜ ȝȜȐȠȜȞȓțȖȓ ȟȖȠȡȎȤȖȖ ȖȕȜȏȞȎȔȓțțȜȗ țȎ ȞȖȟ 15.12.

ˀ̛̭͘ ϭϱ͘ϭϮ͘ ʫ̛̭̣ ̱ ̸̡̛̖̬̖̪̹̌ ̸̡̛̦̖̯̭̌̌̏̌́̚ ̨̨̛̯̪̣̏ ̦̌ ̨̛̪̣̪̱̯ ̏​̵̖̬̏ ̛̦̱̯̬̏ ̨̡̨̨̣̱̐̍̐ ̸̨̨̦̖̖̯̦̐ ̶̡̨̨̣͕̔̌ ̖​̖ ̨̥̙̖̯ ̼̯̍̽ ̨̯̬̱̦̔ ̨̭̯̯̔̌̽

ǽȜȫȠȜȚȡ țȡȔțȜ ȝȞȜȐȓȞȖȠȪ ȥȠȜ ȡ ȥȓȞȓȝȎȦȘȖ ȒȜȟȠȎȠȜȥ țȜ ȠȜȝșȖȐȎ ȥȠȜȏȩ ȒȜȟȠȖȥȪ ȒțȎ ȘȜșȜȒȤȎ Ȏ ȕȎȠȓȚ ȐȓȞțȡȠȪȟȭ ȜȏȞȎȠțȜ ǽȜȟȘȜșȪȘȡ ȤȖȘș for Ȑ ȟȠȞȜȘȎȣ ² ȝȓȞȓȚȓȧȎȓȠ ȥȓȞȓȝȎȦȘȡ ȐțȖȕ columnDepth ȞȎȕ ȠȜ ȥȠȜȏȩ ȒȜȏȞȎȠȪȟȭ ȒȜ ȝȜȐȓȞȣțȜȟȠȖ ȓȗ țȎȒȜ ȝȓȞȓȚȓȟȠȖȠȪȟȭ ȠȎȘȜȓ Ȕȓ ȘȜșȖȥȓȟȠȐȜ ȞȎȕ ȐȐȓȞȣ ǿșȓȒȜȐȎȠȓșȪțȜ Ȑ Ȝȏȧȓȗ ȟșȜȔțȜȟȠȖ ȥȓȞȓȝȎȦȘȎ ȒȜșȔțȎ ȟȜȐȓȞȦȖȠȪ columnDepth * 2 ȝȓȞȓȚȓȧȓțȖȗ ǻȎ ȝȜȚțȬ ȥȠȜ Ȓșȭ ȝȓȞȓȚȓȧȓțȖȭ țȎ ȜȒțȡ ȝȜȕȖȤȖȬ ȥȓȞȓȝȎȦȘȎ ȖȟȝȜșȪȕȡȓȠ ȜȒțȡ ȓȒȖțȖȤȡ ȠȜȝșȖȐȎ ȒȜȏȩȥȎ ȏșȜȘȎ Ȗ ȝȜȐȜȞȜȠ ȠȜȝșȖȐȎ țȓ ȠȞȓȏȡȬȠ

ǽǾǼDZǾǮǺǺǶǾǼǰǮǻǶdz ȅdzǾdzǽǮȆǸǶ ȆǮȃȀdzǾǮ

301


dzȟșȖ ȡ ȥȓȞȓȝȎȦȘȖ țȓȠ ȝȜ ȘȞȎȗțȓȗ ȚȓȞȓ columnDepth * 2 ȓȒȖțȖȤ ȠȜȝșȖȐȎ ȜțȎ ȒȜșȔțȎ ȝȜȝȩȠȎȠȪȟȭ ȖȟȝȜșȪȕȜȐȎȠȪ Ȑ ȘȎȥȓȟȠȐȓ ȠȜȝșȖȐȎ șȬȏȩȓ ȫșȓȚȓțȠȩ ȘȜȠȜȞȩȓ ȟȜȒȓȞȔȎȠȟȭ Ȑ ȓȓ ȖțȐȓțȠȎȞȓ ǸȜȑȒȎ ȥȓȞȓȝȎȦȘȎ ȐȩȞȡȏȎȓȠ ȦȎȣȠȡ ȜțȎ ȥȎȟȠȜ ȒȜȏȩȐȎȓȠ ȡȑȜșȪ ȖșȖ ȒȞȡȑȖȓ ȏșȜȘȖ ȘȜȠȜȞȩȓ ȚȜȔȓȠ ȖȟȝȜșȪ ȕȜȐȎȠȪ Ȑ ȘȎȥȓȟȠȐȓ ȠȜȝșȖȐȎ dzȟșȖ ȠȜȝșȖȐȜ țȎ ȖȟȣȜȒȓ Țȩ ȚȜ ȔȓȚ ȖțȟȠȞȡȘȠȖȞȜȐȎȠȪ ȥȓȞȓȝȎȦȘȡ ȖȟȝȜșȪȕȜȐȎȠȪ ȒȜȏȩȠȩȗ ȡȑȜșȪ ǰ ȟȠȞȜȘȓ țȎȥȖțȎȓȠȟȭ ȤȖȘș while ȘȜȠȜȞȩȗ ȝȞȜȐȓ ȞȭȓȠ ȡȞȜȐȓțȪ ȠȜȝșȖȐȎ ȥȓȞȓȝȎȦȘȖ ȐȩȕȩȐȎȭ ȢȡțȘȤȖȬ getFuelLevel(). stairminer 49. -- ɩɪɨɜɟɪɤɚ ɞɨɫɬɚɬɨɱɧɨ ɥɢ ɬɨɩɥɢɜɚ ɱɬɨɛɵ ɩɨɞɧɹɬɶɫɹ ɢ ɫɧɨɜɚ ɨɩɭɫɬɢɬɶɫɹ 50. while turtle.getFuelLevel() < (columnDepth * 2) do

dzȟșȖ ȡ ȥȓȞȓȝȎȦȘȖ ȚȓțȪȦȓ ȠȜȝșȖȐȎ ȥȓȚ columnDepth * 2 ȓȒȖțȖȤ ȖȟȝȜșțȓțȖȓ ȝȓȞȓȣȜȒȖȠ Ș ȤȖȘșȡ while Ȑ ȘȜȠȜȞȜȚ ȝȞȜȖȟȣȜȒȖȠ ȝȜȖȟȘ ȠȜȝșȖȐȎ Ȑ ȖțȐȓțȠȎȞȓ ȥȓȞȓȝȎȦȘȖ ǰșȜȔȓțțȩȗ ȤȖȘș for ȖȧȓȠ ȠȜȝșȖȐȜ Ȑ ȘȎȔȒȜȗ ȭȥȓȗȘȓ ȖțȐȓțȠȎȞȭ ȥȓȞȓȝȎȦȘȖ stairminer 51. -- ɩɨɩɵɬɤɚ ɢɫɩɨɥɶɡɨɜɚɬɶ ɬɨɩɥɢɜɨ ɜ ɢɧɜɟɧɬɚɪɟ 52. for slot = 1, 16 do 53. turtle.select(slot) 54. turtle.refuel() 55. end

ǰ ȟȠȞȜȘȓ ȫȠȜȑȜ ȤȖȘșȎ ȝȓȞȓȚȓțțȎȭ slot ȝȞȖțȖȚȎ ȓȠ ȕțȎȥȓțȖȭ ȜȠ 1 ȒȜ 16 ǻȎ ȘȎȔȒȜȗ ȖȠȓȞȎȤȖȖ ȤȖȘșȎ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȐȩȏȖȞȎȓȠ ȭȥȓȗȘȡ Ȑ ȖțȐȓțȠȎȞȓ ȥȓȞȓȝȎȦȘȖ Ȏ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȝȩȠȎȓȠȟȭ ȖȟȝȜșȪȕȜȐȎȠȪ ȓȓ ȟȜȒȓȞȔȖȚȜȓ Ȑ ȘȎȥȓȟȠȐȓ ȠȜȝșȖȐȎ dzȟșȖ ȟȜȒȓȞȔȖȚȜȓ ȐȩȏȞȎțțȜȗ ȭȥȓȗȘȖ țȓȝȞȖȑȜȒțȜ Ȓșȭ ȖȟȝȜșȪȕȜȐȎțȖȭ Ȑ ȘȎȥȓȟȠȐȓ ȠȜȝșȖȐȎ ȢȡțȘȤȖȭ turtle. refuel() țȖȥȓȑȜ țȓ ȒȓșȎȓȠ ǶȕȞȎȟȣȜȒȜȐȎȐ ȐȓȟȪ ȖțȐȓțȠȎȞȪ ȘȜȠȜȞȩȗ ȡȒȎșȜȟȪ ȖȟȝȜșȪ ȕȜȐȎȠȪ Ȑ ȘȎȥȓȟȠȐȓ ȠȜȝșȖȐȎ ȥȓȞȓȝȎȦȘȎ ȟțȜȐȎ ȝȓȞȓȝȞȜȐȓȞȭȓȠ ȠȜȝșȖȐțȩȓ ȜȟȠȎȠȘȖ dzȟșȖ ȠȜȝșȖȐȎ Ȑȟȓ ȞȎȐțȜ țȓ ȣȐȎȠȎȓȠ ȥȓ ȞȓȝȎȦȘȎ ȐȩȐȜȒȖȠ ȟȜȜȏȧȓțȖȓ 'Please load more fuel...'

302

DZǹǮǰǮ


Ȗ ȔȒȓȠ ȟȓȘȡțȒ ȥȠȜȏȩ ȖȑȞȜȘ ȐȞȡȥțȡȬ ȝȜȚȓȟȠȖș ȠȜȝșȖȐȜ Ȑ ȓȓ ȖțȐȓțȠȎȞȪ stairminer 57. if turtle.getFuelLevel() < (columnDepth * 2) then 58. print('Please load more fuel...') 59. os.sleep(10) 60. end 61. end

ǸȜȒ Ȑ ȟȠȞȜȘȓ ȝȞȜȐȓȞȭȓȠ ȡȞȜȐȓțȪ ȠȜȝșȖȐȎ ȥȓȞȓȝȎȦȘȖ ȖȟȝȜșȪȕȡȭ ȠȜ Ȕȓ ȡȟșȜȐȖȓ ȥȠȜ Ȗ ȤȖȘș while Ȑ ȟȠȞȜȘȓ dzȟ șȖ ȡ ȥȓȞȓȝȎȦȘȖ ȠȜȝșȖȐȎ ȏȜșȪȦȓ ȥȓȚ columnDepth * 2 ȓȒȖțȖȤ ȝȞȜȑȞȎȚȚȎ ȝȞȜȝȡȟȘȎȓȠ ȏșȜȘ ȘȜȒȎ ȘȜțȟȠȞȡȘȤȖȖ if. ȀȜȑȒȎ ȖȟȝȜșțȓțȖȓ ȒȜȟȠȖȑțȡȐ ȟȠȞȜȘȖ ȐȜȕȐȞȎȧȎȓȠȟȭ Ș ȟȠȞȜȘȓ ȥȠȜȏȩ ȝȓȞȓȝȞȜȐȓȞȖȠȪ ȡȟșȜȐȖȓ ȤȖȘșȎ while ȋȠȜ ȡȟșȜȐȖȓ ȠȜ Ȕȓ ȟȎȚȜȓ ȥȠȜ Ȗ Ȑ ȟȠȞȜȘȓ ȝȜȫȠȜȚȡ ȠȜȔȓ ȏȡȒȓȠ șȜȔțȩȚ false ȀȎȘȖȚ ȜȏȞȎȕȜȚ ȝȞȖ ȒȜȟȠȎȠȜȥțȜȚ ȘȜșȖȥȓ ȟȠȐȓ ȠȜȝșȖȐȎ ȖȟȝȜșțȓțȖȓ ȤȖȘșȎ while țȓ ȝȞȜȖȟȣȜȒȖȠ dzȟșȖ Ȕȓ ȡȟșȜȐȖȓ Ȑ ȟȠȞȜȘȓ ȐȩȝȜșțȭȓȠȟȭ true Ȗ ȠȜȝ șȖȐȎ țȓȒȜȟȠȎȠȜȥțȜ ȠȜ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȜȠȜȏȞȎȔȎȓȠ ȟȜȜȏȧȓ țȖȓ 'Please load more fuel...' Ȗ ȔȒȓȠ ȟȓȘȡțȒ ȝȞȖ ȝȜȚȜȧȖ ȐȩȕȜȐȎ ȢȡțȘȤȖȖ os.sleep(10) Ȑ ȟȠȞȜȘȓ ǵȎȠȓȚ ȝȜȟșȓ ȒȜȟȠȖȔȓțȖȭ ȘȜțȤȎ ȤȖȘșȎ while ȝȞȜȖȟȣȜȒȖȠ ȐȜȕȐȞȎ ȧȓțȖȓ Ș ȟȠȞȜȘȓ ȥȠȜȏȩ ȝȓȞȓȝȞȜȐȓȞȖȠȪ ȡȟșȜȐȖȓ dzȟșȖ ȠȜȝșȖȐȜ ȝȜȚȓȧȎȓȠȟȭ Ȑ ȖțȐȓțȠȎȞȪ ȥȓȞȓȝȎȦȘȖ ȜțȜ ȝȜȠȞȓȏșȭȓȠȟȭ țȎ ȟșȓȒȡȬȧȓȗ ȖȠȓȞȎȤȖȖ ȤȖȘșȎ while dzȟșȖ ȖȑȞȜȘ țȓ ȕȎȑȞȡȕȖș ȠȜȝșȖȐȜ Ȗ ȓȑȜ ȡȞȜȐȓțȪ ȜȟȠȎȓȠȟȭ ȝȞȓȔ țȖȚ ȝȞȜȑȞȎȚȚȎ ȟțȜȐȎ ȐȜȕȐȞȎȧȎȓȠȟȭ Ș ȤȖȘșȡ while ǸȜȑȒȎ Ȝț ȕȎȝȡȟȠȖȠȟȭ ȜȝȭȠȪ ȜȠȜȏȞȎȕȖȠȟȭ ȟȜȜȏȧȓțȖȓ 'Please load more fuel...' Ȗ ȜȝȭȠȪ ȏȡȒȓȠ ȝȎȡȕȎ Ȑ ȟȓȘȡțȒ ȀȎȘ ȏȡȒȓȠ ȝȞȜȒȜșȔȎȠȪȟȭ ȒȜ Ƞȓȣ ȝȜȞ ȝȜȘȎ ȖȑȞȜȘ țȓ ȕȎȑȞȡȕȖȠ ȒȜȟȠȎȠȜȥ țȜ ȠȜȝșȖȐȎ ȥȠȜȏȩ ȢȡțȘȤȖȭ getFuelLevel() ȐȓȞțȡșȎ ȥȖȟ șȜ ȏȜșȪȦȓȓ ȥȓȚ columnDepth * 2. ǽȜȟșȓ ȠȜȑȜ ȘȎȘ ȝȞȜȑȞȎȚȚȎ ȡȏȓȒȖȠȟȭ ȥȠȜ ȡ ȥȓȞȓȝȎȦȘȖ ȒȜȟȠȎȠȜȥțȜ ȠȜȝșȖȐȎ țȓȜȏȣȜȒȖȚȜ ȝȞȜȐȓȞȖȠȪ ȥȠȜȏȩ ȖțȐȓț ȠȎȞȪ ȥȓȞȓȝȎȦȘȖ țȓ ȏȩș ȝȓȞȓȝȜșțȓț ȖțȎȥȓ ȜțȎ țȓ ȟȚȜȔȓȠ

ǽǾǼDZǾǮǺǺǶǾǼǰǮǻǶdz ȅdzǾdzǽǮȆǸǶ ȆǮȃȀdzǾǮ

303


ȒȜȏȩȠȪ ȟșȓȒȡȬȧȖȗ ȏșȜȘ DzȎȐȎȗ ȝȜȟȚȜȠȞȖȚ ȘȎȘ ȫȠȜ ȝȞȜ ȐȓȞȭȓȠȟȭ

ěĜĚĎđĜĖČ ĔęĎđęĞČĜī ģđĜđěČĤĖĔ ǽȜȟșȓ ȠȜȑȜ ȘȎȘ ȥȓȞȓȝȎȦȘȎ ȐȩȝȜșțȖșȎ ȝȞȜȐȓȞȘȡ ȡȞȜȐțȭ ȠȜȝșȖȐȎ ȝȞȜȑȞȎȚȚȎ ȜȟȠȎȐșȭȓȠ ȤȖȘș while Ȗ ȐȩȝȜșțȭȓȠ ȝȞȜȐȓȞȘȡ ȕȎȝȜșțȓțțȜȟȠȖ ȖțȐȓțȠȎȞȭ dzȟșȖ Ȝț ȝȜșțȜȟȠȪȬ ȕȎ ȝȜșțȓț Ȑȟȓ ȒȜȏȩȠȩȓ ȏșȜȘȖ ȥȓȞȓȝȎȦȘȎ ȏȡȒȓȠ ȝȜȝȞȜȟȠȡ Ȑȩ ȏȞȎȟȩȐȎȠȪ ȠȜ ȓȟȠȪ ȞȎȏȜȠȎȠȪ ȟȜȐȓȞȦȓțțȜ ȐȝȡȟȠȡȬ ǵȎȝȜșțȓ țȖȓ ȖțȐȓțȠȎȞȭ ȥȓȞȓȝȎȦȘȎ ȝȞȜȐȓȞȭȓȠ țȎ Ȓțȓ ȐȩȘȜȝȎțțȜȑȜ ȘȜșȜȒȤȎ ȝȜȫȠȜȚȡ ȓȟșȖ ȖțȐȓțȠȎȞȪ ȕȎȝȜșțȓț ȖȑȞȜȘ ȚȜȔȓȠ ȒȜȏȞȎȠȪȟȭ ȒȜ ȥȓȞȓȝȎȦȘȖ ȥȠȜȏȩ ȞȎȕȑȞȡȕȖȠȪ ȓȓ ȂȡțȘȤȖȭ selectEmptySlot() Ȑ ȚȜȒȡșȓ hare ȐȩȏȖȞȎȓȠ ȝȓȞȐȡȬ ȝȡȟȠȡȬ ȭȥȓȗȘȡ Ȑ ȖțȐȓțȠȎȞȓ ȥȓȞȓȝȎȦȘȖ ǻȜ Ȓșȭ ȣȞȎ țȓțȖȭ ȏșȜȘȜȐ ȐȩȘȜȝȎțțȩȣ ȝȞȖ ȟȠȞȜȖȠȓșȪȟȠȐȓ șȓȟȠțȖȤȩ ȐȩȏȖȞȎȠȪ ȝȡȟȠȡȬ ȭȥȓȗȘȡ țȓ țȡȔțȜ Ƕ ȝȜȟȘȜșȪȘȡ ȢȡțȘȤȖȭ selectEmptySlot() ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ false ȓȟșȖ țȓȠ ȟȐȜȏȜȒțȩȣ ȭȥȓȓȘ Ȑ ȖțȐȓțȠȎȞȓ Țȩ ȚȜȔȓȚ ȖȟȝȜșȪȕȜȐȎȠȪ ȓȓ ȥȠȜȏȩ ȜȝȞȓȒȓșȖȠȪ ȕȎȝȜșțȓț șȖ ȖțȐȓțȠȎȞȪ ȥȓȞȓȝȎȦȘȖ stairminer 63. -- ɩɪɨɜɟɪɤɚ ɡɚɩɨɥɧɟɧɧɨɫɬɢ ɢɧɜɟɧɬɚɪɹ 64. while hare.selectEmptySlot() == false do 65. print('Please unload the inventory...') 66. os.sleep(10) 67. end

ȄȖȘș while Ȑ ȟȠȞȜȘȓ ȟȜȒȓȞȔȖȠ ȢȡțȘȤȖȬ selectEmptySlot() ȥȠȜȏȩ ȝȞȜȐȓȞȖȠȪ ȓȟȠȪ șȖ Ȑ ȖțȐȓțȠȎȞȓ ȣȜȠȭ ȏȩ ȜȒțȎ ȝȡȟȠȎȭ ȭȥȓȗȘȎ dzȟșȖ țȓȠ ȖȟȝȜșțȓțȖȓ ȝȓȞȓȣȜȒȖȠ Ș ȟȠȞȜȘȓ ȘȜȠȜȞȎȭ ȜȠȜȏȞȎȔȎȓȠ ȟȜȜȏȧȓțȖȓ 'Please unload the inventory...' Ȏ ȘȜȒ Ȑ ȟȠȞȜȘȓ ȐȩȕȩȐȎȓȠ ȜȔȖȒȎțȖȓ ȝȞȜȒȜș ȔȖȠȓșȪțȜȟȠȪȬ ȟȓȘȡțȒ ȋȠȜȠ ȘȜȒ ȎțȎșȜȑȖȥȓț ȟȠȞȜȘȎȚ Ȗ Ȓșȭ ȝȞȜȐȓȞȘȖ ȠȜȝșȖȐȎ ȄȖȘș while ȜȟȠȎțȎȐșȖȐȎȓȠȟȭ ȠȜșȪȘȜ ȝȜȟșȓ ȠȜȑȜ ȘȎȘ ȖȑȞȜȘ ȐȩȑȞȡȕȖȠ ȏșȜȘȖ Ȗȕ ȖțȐȓțȠȎȞȭ ȥȓȞȓȝȎȦȘȖ Ȗ ȢȡțȘȤȖȭ selectEmptySlot() ȐȓȞțȓȠ ȕțȎȥȓ țȖȓ true ǽȜȟșȓ ȝȞȜȐȓȞȘȖ ȖțȐȓțȠȎȞȭ ȖȟȝȜșțȓțȖȓ ȝȞȜȒȜș ȔȎȓȠȟȭ ȟȜ ȟȠȞȜȘȖ Ȏ ȥȓȞȓȝȎȦȘȎ țȎȥȖțȎȓȠ ȘȜȝȎȠȪ ȐȐȓȞȣ

304

DZǹǮǰǮ


ĜČēĜČčĚĞĖČ ĎĎđĜġ ǽȜȟȘȜșȪȘȡ ȥȓȞȓȝȎȦȘȎ țȎȣȜȒȖȠȟȭ țȎ ȑșȡȏȖțȓ Ȑ columnDepth ȏșȜȘȜȐ țȖȔȓ ȝȜȐȓȞȣțȜȟȠȖ ȓȗ țȓȜȏȣȜȒȖȚȜ ȝȞȜȘȜȝȎȠȪ Ȥȓșȩȗ ȘȜșȜȒȓȤ ȥȠȜȏȩ ȐȓȞțȡȠȪȟȭ țȎȐȓȞȣ ǽȓȞȓȚȓȧȓțȖȓ ȐȐȓȞȣ Ȗ ȒȜ ȏȩȥȎ ȏșȜȘȜȐ ȝȞȜȖȕȐȜȒȭȠȟȭ Ȑ ȤȖȘșȓ for ȘȜȠȜȞȩȗ țȎȥȖțȎȓȠ ȟȭ Ȑ ȟȠȞȜȘȓ stairminer 69. -- ɪɚɡɪɚɛɨɬɤɚ ɜɨ ɜɪɟɦɹ ɩɨɞɴɟɦɚ 70. for i = 1, columnDepth do 71. hare.digUpUntilClear() 72. turtle.up() 73. end

ǸȜȒ Ȑ ȟȠȞȜȘȓ ȐȩȕȩȐȎȓȠ ȢȡțȘȤȖȬ digUpUntilClear() Ȏ ȟșȓȒȡȬȧȎȭ ȟȠȞȜȘȎ ȝȓȞȓȚȓȧȎȓȠ ȥȓȞȓȝȎȦȘȡ ȐȐȓȞȣ Ǻȩ Ȗȟ ȝȜșȪȕȡȓȚ ȢȡțȘȤȖȬ hare.digUpUntilClear() ȐȚȓȟȠȜ turtle.digUp() ȝȜȠȜȚȡ ȥȠȜ ȐȩȦȓ ȥȓȞȓȝȎȦȘȖ ȚȜȔȓȠ țȎȣȜ ȒȖȠȪȟȭ ȝȓȟȜȘ ȖșȖ ȑȞȎȐȖȗ ǿ ȜȘȜțȥȎțȖȓȚ ȤȖȘșȎ ȥȓȞȓȝȎȦȘȎ ȐȜȕȐȞȎȧȎȓȠȟȭ țȎ ȝȜȐȓȞȣțȜȟȠȪ ǸȜȒ Ȑ ȟȠȞȜȘȓ ȡȐȓșȖȥȖȐȎȓȠ ȕțȎȥȓțȖȓ ȝȓȞȓȚȓțțȜȗ columnDepth țȎ 2 ȝȜȠȜȚȡ ȥȠȜ ȜȒțȎ ȖȠȓȞȎȤȖȭ ȤȖȘșȎ Ȑȩ ȟȠȞȎȖȐȎȓȠ ȒȐȎ ȘȜșȜȒȤȎ ȘȎȔȒȩȗ Ȗȕ ȘȜȠȜȞȩȣ ȑșȡȏȔȓ ȝȞȓ ȒȩȒȡȧȓȑȜ țȎ ȜȒȖț ȏșȜȘ ȟșȓȒȜȐȎȠȓșȪțȜ ȥȓȞȓȕ ȒȐȎ ȘȜșȜȒȤȎ ȑșȡȏȖțȎ ȡȐȓșȖȥȖȐȎȓȠȟȭ țȎ ȒȐȎ ȏșȜȘȎ stairminer 75. columnDepth = columnDepth + 2 76. end

ȁȐȓșȖȥȖȐȎȭ ȕțȎȥȓțȖȓ ȝȓȞȓȚȓțțȜȗ columnDepth țȎ 2 ȥȓȞȓȝȎȦȘȎ ȝȓȞȓȚȓȧȎȓȠȟȭ țȎ ȒȐȎ ȏșȜȘȎ ȑșȡȏȔȓ ȘȎȔȒȩȗ ȞȎȕ ȘȜȑȒȎ ȘȜȝȎȓȠ ȐțȖȕ ǿȠȞȜȘȎ ȕȎȐȓȞȦȎȓȠ ȤȖȘș while țȎȥȎȐȦȖȗȟȭ Ȑ ȟȠȞȜȘȓ ǸȜȑȒȎ ȖȟȝȜșțȓțȖȓ ȐȜȕȐȞȎȧȎȓȠȟȭ Ș ȟȠȞȜȘȓ ȟȠȞȜȘȖ Ȗ ȝȓȞȓȚȓȟȠȭȠ ȥȓȞȓȝȎȦȘȡ ȐȝȓȞȓȒ Ș ȟșȓȒȡȬȧȓȚȡ ȘȜșȜȒȤȡ ȘȜȠȜȞȩȗ ȓȗ țȎȒȜ ȝȞȜȘȜȝȎȠȪ ȐțȖȕ Ȗ ȕȎ ȠȓȚ ȐȓȞțȡȠȪȟȭ țȎ ȝȜȐȓȞȣțȜȟȠȪ ȅȓȞȓȝȎȦȘȎ ȜȟȠȎțȎȐșȖȐȎȓȠ ȟȭ ȠȜșȪȘȜ ȠȜȑȒȎ ȘȜȑȒȎ ȕțȎȥȓțȖȓ ȝȓȞȓȚȓțțȜȗ columnDepth ȞȎȐțȜ ȖșȖ ȏȜșȪȦȓ ȕțȎȥȓțȖȭ targetDepth ȘȜȠȜȞȜȓ ȖȑȞȜȘ

ǽǾǼDZǾǮǺǺǶǾǼǰǮǻǶdz ȅdzǾdzǽǮȆǸǶ ȆǮȃȀdzǾǮ

305


ȕȎȒȎș Ȑ ȘȎȥȓȟȠȐȓ ȎȞȑȡȚȓțȠȎ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ȖșȖ ȘȜȑȒȎ ȥȓȞȓȝȎȦȘȎ țȎȠȩȘȎȓȠȟȭ țȎ ȏȓȒȞȜȘ ǽȜȟșȓ ȐȩȝȜșțȓțȖȭ ȝȞȜȑȞȎȚȚȩ stairminer ȡ Ƞȓȏȭ ȏȡȒȓȠ ȦȎȣȠȎ Ȑ ȢȜȞȚȓ șȓȟȠțȖȤȩ ȘȜȠȜȞȎȭ ȜȏȓȟȝȓȥȖȠ ȏȓȕȜȝȎȟțȩȗ ȒȜȟȠȡȝ ȑșȡȏȜȘȜ ȝȜȒ ȕȓȚșȬ Ȏ ȖțȐȓțȠȎȞȪ ȥȓȞȓȝȎȦȘȖ ȏȡȒȓȠ ȕȎȝȜșțȓț ȏșȜȘȎȚȖ ȒȜȏȩȠȩȚȖ ȝȞȖ ȞȎȕȞȎȏȜȠȘȓ ĐĚěĚėęĔĞđėĨęĚđ ēČĐČęĔđ" ĎħĝĚĖĔĕ ĞĚęęđėĨ

Возможно, на дне шахты с лестницей тебе захочется выкопать туннель. В памяти черепашки записана готовая программа с именем tunnel, которая добывает пространство размером 3 × 2 блока перед черепашкой и длиной, которую ты укажешь в виде аргумента командной строки. Например, ты можешь выполнить команду tunnel 10, и черепашка прокопает туннель размером 3 × 2 × 10 блоков. Эти туннели достаточно высоки, чтобы игрок мог пройти, но могут вызывать клаустрофобию. Попробуй создать собственную программу hightunnel, которая тоже будет копать туннель, но уже высотой в четыре блока.

ģĞĚ Ęħ ğēęČėĔ ǽȞȜȑȞȎȚȚȎ stairminer ȖȟȝȜșȪȕȡȓȠ ȟșȜȔțȩȗ ȎșȑȜȞȖȠȚ țȜ ȘȎȘ ȠȜșȪȘȜ Ƞȩ ȓȑȜ țȎȝȖȦȓȦȪ ȐȟȬ ȠȭȔȓșȡȬ ȞȎȏȜȠȡ ȝȜ ȒȜȏȩ ȥȓ ȝȜșȓȕțȩȣ ȖȟȘȜȝȎȓȚȩȣ ȐȜȕȪȚȓȠ țȎ ȟȓȏȭ ȥȓȞȓȝȎȦȘȎ DzȎȔȓ ȓȟșȖ Ƞȓȏȓ țȓ țȡȔțȩ ȏșȜȘȖ ȘȜȠȜȞȩȓ ȟȜȏȓȞȓȠ ȥȓȞȓȝȎȦȘȎ ȝȞȖ ȟȠȞȜȖȠȓșȪȟȠȐȓ ȦȎȣȠȩ Ƞȩ ȟȚȜȔȓȦȪ ȖȟȝȜșȪȕȜȐȎȠȪ ȫȠȡ ȝȞȜ ȑȞȎȚȚȡ ȥȠȜȏȩ ȟȠȞȜȖȠȪ șȓȟȠțȖȤȩ Ȓșȭ ȝȜȒȕȓȚțȜȑȜ șȜȑȜȐȎ ȟȜ ȟȠȓțȎȚȖ Ȗȕ ȘȎȚȓțțȜȑȜ ȘȖȞȝȖȥȎ Ȗȣ ȖȕȑȜȠȜȐȖȠ ȑȓțȓȞȎȠȜȞ ȏȡ șȩȔțȖȘȎ ǿ Ƞȓȣ ȝȜȞ ȘȎȘ Ƞȩ țȎȡȥȖșȟȭ ȝȞȜȑȞȎȚȚȖȞȜȐȎȠȪ ȥȓȞȓȝȎȦȓȘ ȠȐȜȖ ȐȜȕȚȜȔțȜȟȠȖ ȟȠȎșȖ ȝȜ țȎȟȠȜȭȧȓȚȡ ȏȓȕ ȑȞȎțȖȥțȩȚȖ ǶȕȡȥȎȭ ȝȞȜȑȞȎȚȚȖȞȜȐȎțȖȓ Ȗ ȡȥȎȟȪ ȑȜȐȜȞȖȠȪ țȎ ȭȕȩȘȓ ȘȜȚȝȪȬȠȓȞȎ Ƞȩ ȚȜȔȓȦȪ ȐȩȟȠȞȎȖȐȎȠȪ ȎȞȚȖȖ ȥȓȞȓȝȎȦȓȘ Ȓșȭ ȎȐȠȜȚȎȠȖȕȎȤȖȖ ȚțȜȑȖȣ ȕȎȒȎȥ Ȑ ȖȑȞȓ 0LQHFUDIW ǽȞȜ ȑȞȎȚȚȖȞȜȐȎțȖȓ ² ȫȠȜ ȝȜșȓȕțȜȓ Ȗ ȕȎȏȎȐțȜȓ ȡȚȓțȖȓ Ȗ ȭ țȎ ȒȓȬȟȪ ȥȠȜ Ƞȩ ȝȞȜȒȜșȔȖȦȪ ȫȘȟȝȓȞȖȚȓțȠȖȞȜȐȎȠȪ țȜ ȡȔȓ ȝȜ

306

DZǹǮǰǮ


ȟȐȜȓȚȡ ȡȟȚȜȠȞȓțȖȬ ǸȜȑȒȎ ȒȓșȜ ȒȜȣȜȒȖȠ ȒȜ ȝȞȜȑȞȎȚȚȖȞȜȐȎ țȖȭ ȐȟȓȑȒȎ ȓȟȠȪ ȥȓȚȡ ȝȜȡȥȖȠȪȟȭ ȝȜȫȠȜȚȡ ȝȜȝȞȜȏȡȗ ȝȞȖȒȡ ȚȎȠȪ ȟȐȜȖ ȟȜȏȟȠȐȓțțȩȓ ȝȞȜȑȞȎȚȚȩ ȁȒȎȥȖ


ěĜĔėĚĒđęĔđ Č ĝěĔĝĚĖ ĠğęĖĢĔĕ ǰ ȫȠȜȚ ȞȎȕȒȓșȓ Ƞȩ țȎȗȒȓȦȪ ȘȞȎȠȘȜȓ ȜȝȖȟȎțȖȓ ȢȡțȘȤȖȗ ȖȟȝȜșȪȕȡȓȚȩȣ Ȑ ȫȠȜȗ ȘțȖȑȓ ȋȠȖ ȢȡțȘȤȖȖ ȟȑȞȡȝȝȖȞȜȐȎțȩ ȝȜ ȝȞȜȑȞȎȚȚțȩȚ ȖțȠȓȞȢȓȗȟȎȚ $SSOLFDWLRQ 3URJUDPPLQJ ,QWHU IDFH ² $3, ȖȕȐȓȟȠțȩȚ ȠȎȘȔȓ ȘȎȘ ȚȜȒȡșȖ ȋȠȜ țȓȝȜșțȩȗ ȟȝȖȟȜȘ ȢȡțȘȤȖȗ &RPSXWHU&UDIW ǯȜșȓȓ ȝȜșțȜȓ Ȗ ȝȜȒȞȜȏțȜȓ ȜȝȖȟȎțȖȓ Ȑȟȓȣ ȒȜȟȠȡȝțȩȣ ȢȡțȘ ȤȖȗ ȚȜȔțȜ ȝȜșȡȥȖȠȪ ȝȜ ȎȒȞȓȟȡ www.computercraft.info/ wiki/Category APIs. dzȟșȖ Ƞȩ ȕȎȣȜȥȓȦȪ ȡȕțȎȠȪ ȏȜșȪȦȓ Ȝ /XD ȐȜȟȝȜșȪȕȡȗȟȭ ȟȝȞȎȐȜȥțȩȚ ȞȡȘȜȐȜȒȟȠȐȜȚ ȘȜȠȜȞȜȓ ȒȜȟȠȡȝțȜ Ȑ ǶțȠȓȞțȓȠȓ ȝȜ ȎȒȞȓȟȡ lua.org.ru/contents_ru.html ǼȏȞȎȠȖ ȐțȖȚȎțȖȓ ȥȠȜ Ȑ ȚȜȒȓ &RPSXWHU&UDIW ȖȟȝȜșȪȕȡȓȠȟȭ ȭȕȩȘ /XD ȣȜȠȭ ȒȜȟȠȡȝțȩ țȜȐȩȓ ȐȓȞȟȖȖ /XD. ǽȞȖȚȓȥȎțȖȓ ǻȓȘȜȠȜȞȩȓ ȫșȓȚȓțȠȩ ȟȖțȠȎȘȟȖȟȎ ȢȡțȘȤȖȗ Ȑ ȫȠȜȚ ȞȎȕȒȓșȓ ȜȠȢȜȞȚȎȠȖȞȜȐȎțȩ ȘȡȞȟȖȐȜȚ ȡȘȎȕȩȐȎȭ ȑȒȓ ȒȜșȔȓț țȎȣȜȒȖȠȪȟȭ ȝȎȞȎȚȓȠȞ Ȗ ȝȞȖ țȓȜȏȣȜȒȖȚȜȟȠȖ ȓȑȜ ȠȖȝ

308

ǽǾǶǹǼǴdzǻǶdz Ǯ


ĔęĞđĜĠđĕĝ .; ĠČĕėĚĎČī ĝĔĝĞđĘČ ȅȓȞȓȝȎȦȘȖ ȖȟȝȜșȪȕȡȬȠ ȢȎȗșȜȐȡȬ ȟȖȟȠȓȚȡ ȟȜȐȚȓȟȠȖȚȡȬ ȟ ȠȜȗ ȥȠȜ ȡȟȠȎțȜȐșȓțȎ țȎ ȠȐȜȓȚ ȘȜȚȝȪȬȠȓȞȓ ȀȎȘȖȚ ȜȏȞȎȕȜȚ Ƞȩ ȚȜȔȓȦȪ ȜȏȞȎȧȎȠȪȟȭ Ș ȫȠȖȚ ȢȎȗșȎȚ ȖȟȝȜșȪȕȡȭ ȖțȠȓȞ Ȣȓȗȟ fs Ȗ ȖȚȭ ȢȎȗșȎ z fs.d elet e ( ɢ ɦ ɹɮɚ ɣ ɥɚ ȡȒȎșȭȓȠ ȢȎȗș ȟ ȖȚȓțȓȚ ɢɦɹɮɚɣɥɚ z fs.exists (ɢɦɹɮɚɣɥɚ ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ true ȓȟ șȖ ȟȡȧȓȟȠȐȡȓȠ ȢȎȗș ȟ ȖȚȓțȓȚ ɢɦɹɮɚɣɥɚ Ȑ ȝȞȜȠȖȐțȜȚ ȟșȡ ȥȎȓ ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ false ǽȞȖȚȓȥȎțȖȓ ǽȞȜȑȞȎȚȚȩ ȜȝȖȟȎțțȩȓ Ȑ ȫȠȜȗ ȘțȖȑȓ ȚȜȑȡȠ ȐȕȎȖȚȜȒȓȗȟȠȐȜȐȎȠȪ ȟ ȢȎȗșȎȚȖ ȕȎȑȞȡȔȎȓȚȩȚȖ Ȑ ȝȎȚȭȠȪ ȥȓȞȓȝȎȦȘȖ țȜ țȓ ȟ ȐțȓȦțȖȚȖ ȢȎȗșȎȚȖ ȘȜȚȝȪȬȠȓȞȎ țȎ ȘȜȠȜȞȜȚ ȡȟȠȎțȜȐșȓțȎ ȖȑȞȎ Minecraft.

ĔęĞđĜĠđĕĝ 0):ȅȖȠȎȭ ȫȠȡ ȘțȖȑȡ Ƞȩ ȝȖȟȎș ȝȞȜȑȞȎȚȚȩ Ȓșȭ ȚȜȒȡșȭ $3, ȟ ȖȚȓțȓȚ hare ǰ ȜȠșȖȥȖȓ ȜȠ ȒȞȡȑȖȣ ȚȜȒȡșȓȗ ȝȓȞȓȥȖȟșȓț țȩȣ Ȑ ȫȠȜȚ ȞȎȕȒȓșȓ hare țȓ ȝȞȓȒȡȟȠȎțȜȐșȓț Ȑ ȚȜȒȓ &RP SXWHU&UDIW ȝȜȫȠȜȚȡ ȥȠȜȏȩ ȓȑȜ ȕȎȑȞȡȕȖȠȪ țȎȒȜ Ȑ ȜȏȜșȜȥȘȓ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ȐȩȝȜșțȖȠȪ ȘȜȚȎțȒȡ pastebin get wwzvaKuW hare ǹȬȏȎȭ ȝȞȜȑȞȎȚȚȎ ȝȞȓȒȝȜșȎȑȎȬȧȎȭ ȖȟȝȜșȪ ȕȜȐȎțȖȓ ȚȜȒȡșȭ $3, ȖțȠȓȞȢȓȗȟȎ hare ȒȜșȔțȎ ȟȜȒȓȞȔȎȠȪ ȐȩȕȜȐ os.load API('hare') ȠȜȑȒȎ ȝȞȜȑȞȎȚȚȎ ȟȚȜȔȓȠ Ȗȟ ȝȜșȪȕȜȐȎȠȪ ȢȡțȘȤȖȖ ȫȠȜȑȜ ȚȜȒȡșȭ z hare.buiOG)ORRU ɞɥɢɧɚ ɲɢɪɢɧɚ Ȗȕ ȏșȜȘȜȐ Ȑ Ȗț ȐȓțȠȎȞȓ ȥȓȞȓȝȎȦȘȖ ȟȠȞȜȖȠ ȝȜș Ȓșȭ ȘȜȠȜȞȜȑȜ ȥȖȟșȎȚȖ ȡȘȎ ȕȎțȩ ȓȑȜ ɞɥɢɧɚ Ȗ ɲɢɪɢɧɚ. z hare.buildRoom (ɞɥɢɧɚ ɲɢɪɢɧɚ ɜɵɫɨɬɚ) Ȗȕ ȏșȜ ȘȜȐ Ȑ ȖțȐȓțȠȎȞȓ ȥȓȞȓȝȎȦȘȖ ȟȠȞȜȖȠ ȘȜȚțȎȠȡ Ȓșȭ ȘȜȠȜȞȜȗ ȥȖȟșȎȚȖ ȡȘȎȕȎțȩ ȓȓ ɞɥɢɧɚ ɲɢɪɢɧɚ ɢ ɜɵɫɨɬɚ.

ǿǽǶǿǼǸ ȂȁǻǸȄǶǷ

309


z hare.buildWall (ɞɥɢɧɚ ɜɵɫɨɬɚ) Ȗȕ ȏșȜȘȜȐ Ȑ Ȗț ȐȓțȠȎȞȓ ȥȓȞȓȝȎȦȘȖ ȟȠȞȜȖȠ ȟȠȓțȡ Ȓșȭ ȘȜȠȜȞȜȗ ȥȖȟșȎȚȖ ȡȘȎȕȎțȩ ȓȓ ɞɥɢɧɚ Ȗ ɜɵɫɨɬɚ. z hare.countInventory() ȐȜȕȐȞȎȧȎȓȠ Ȝȏȧȓȓ ȘȜșȖȥȓ ȟȠȐȜ ȏșȜȘȜȐ Ȗ ȝȞȓȒȚȓȠȜȐ ȐȜ Ȑȟȓȣ ȭȥȓȗȘȎȣ ȖțȐȓțȠȎȞȭ ȥȓȞȓ ȝȎȦȘȖ z hare.digUntilClear() ȝȞȜȒȜșȔȎȓȠ ȒȜȏȩȐȎȠȪ ȏșȜȘ ȝȓ ȞȓȒ ȥȓȞȓȝȎȦȘȜȗ ȝȜȘȎ țȓ ȜȥȖȟȠȖȠ ȓȑȜ ȝȜșțȜȟȠȪȬ ȋȠȎ ȢȡțȘ ȤȖȭ ȖȟȝȜșȪȕȡȓȠȟȭ ȘȜȑȒȎ ȑȞȎȐȖȗ ȖșȖ ȝȓȟȜȘ ȜȟȩȝȎȬȠȟȭ țȎ ȚȓȟȠȜ ȐȩȘȜȝȎțțȜȑȜ ȏșȜȘȎ z hare.digUpUntilClear() ȎțȎșȜȑȖȥțȎ ȢȡțȘȤȖȖ hare. digUntilClear() ȕȎ ȖȟȘșȬȥȓțȖȓȚ ȠȜȑȜ ȥȠȜ ȜțȎ ȜȥȖȧȎȓȠ ȝȞȜȟȠȞȎțȟȠȐȜ țȎȒ Ȏ țȓ ȝȓȞȓȒ ȥȓȞȓȝȎȦȘȜȗ z hare.¿QG%ORFN (ɢɞɟɧɬɢɮɢɤɚɬɨɪ) ȐȞȎȧȎȓȠ ȥȓȞȓȝȎȦ Șȡ ȐȜȘȞȡȑ ȟȐȜȓȗ ȜȟȖ Ȑ ȝȜȖȟȘȎȣ ȏșȜȘȎ ȟ ȡȘȎȕȎțțȩȚ ȟȠȞȜȘȜ ȐȩȚ ɢɞɟɧɬɢɮɢɤɚɬɨɪɨɦ Ȗ ȜȟȠȎțȎȐșȖȐȎȓȠȟȭ ȓȟșȖ țȎȣȜȒȖȠ ȓȑȜ dzȟșȖ ȥȓȞȓȝȎȦȘȎ țȓ ȚȜȔȓȠ țȎȗȠȖ ȡȘȎȕȎțțȩȗ ȏșȜȘ ȜțȎ ȜȟȠȎțȎȐșȖȐȎȓȠȟȭ Ȑ ȖȟȣȜȒțȜȚ țȎȝȞȎȐșȓțȖȖ dzȟșȖ ȏșȜȘ țȎȗ Ȓȓț ȢȡțȘȤȖȭ ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ true Ȏ Ȑ ȝȞȜȠȖȐțȜȚ ȟșȡȥȎȓ ² false. z hare.select AndPlaceDown() ȐȩȏȖȞȎȓȠ țȓȝȡȟȠȡȬ ȭȥȓȗȘȡ ȖțȐȓțȠȎȞȭ Ȗ ȝȜȚȓȧȎȓȠ ȏșȜȘ Ȗȕ ȫȠȜȗ ȭȥȓȗȘȖ ȝȜȒ ȥȓ ȞȓȝȎȦȘȡ z hare.selectEmptySlot() ȐȩȏȖȞȎȓȠ ȝȡȟȠȡȬ ȭȥȓȗȘȡ ȖțȐȓțȠȎȞȭ Ȗ ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ true ȓȟșȖ ȠȎȘȎȭ ȭȥȓȗ ȘȎ ȜȏțȎȞȡȔȓțȎ Ȑ ȝȞȜȠȖȐțȜȚ ȟșȡȥȎȓ ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ false. z hare.selectItem (ɢɞɟɧɬɢɮɢɤɚɬɨɪ) ȐȩȏȖȞȎȓȠ ȭȥȓȗ Șȡ ȖțȐȓțȠȎȞȭ ȟȜȒȓȞȔȎȧȡȬ ȏșȜȘ ȖșȖ ȝȞȓȒȚȓȠ ȟ ȡȘȎȕȎțțȩȚ ȟȠȞȜȘȜȐȩȚ ɢɞɟɧɬɢɮɢɤɚɬɨɪɨɦ ǰȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ true ȓȟșȖ ȖȟȘȜȚȩȗ ȏșȜȘ ȖșȖ ȝȞȓȒȚȓȠ țȎȗȒȓț Ȑ ȝȞȜȠȖȐțȜȚ ȟșȡ ȥȎȓ ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ false. z hare.sweepField (ɞɥɢɧɚ ɲɢɪɢɧɚ VZHHS)XQF) ȝȓȞȓȚȓȧȎȓȠ ȥȓȞȓȝȎȦȘȡ ȝȜ ȘȎȔȒȜȚȡ ȏșȜȘȡ Ȑ ȝȞȭȚȜȡȑȜșȪțȜȗ ȜȏșȎȟȠȖ Ȓșȭ ȘȜȠȜȞȜȗ ȥȖȟșȎȚȖ ȡȘȎȕȎțȩ ȓȓ ɞɥɢɧɚ ɲɢɪɢɧɚ Ȗ ȐȩȕȩȐȎȓȠ ȢȡțȘȤȖȬ sweepFunc() ȝȜȟșȓ ȘȎȔȒȜȑȜ ȝȓȞȓȚȓ ȧȓțȖȭ

310

ǽǾǶǹǼǴdzǻǶdz Ǯ


ĔęĞđĜĠđĕĝ 17 ĎĎĚĐČ ĎħĎĚĐČ ǶȟȝȜșȪȕȜȐȎțȖȓ ȖțȠȓȞȢȓȗȟȎ io ȜȠȜȏȞȎȔȎȠȪ țȎ ȫȘȞȎțȓ Ȗ Ȝȏ ȞȎȏȎȠȩȐȎȠȪ ȠȓȘȟȠ ȐȐȓȒȓțțȩȗ ȟ ȘșȎȐȖȎȠȡȞȩ ǿȡȧȓȟȠȐȡȓȠ țȓȟȘȜșȪȘȜ ȠȎȘȖȣ ȢȡțȘȤȖȗ țȜ țȎȖȏȜșȓȓ ȐȎȔțȜȗ Ȗȕ țȖȣ ȭȐ șȭȓȠȟȭ io.read(): z io.read() ǸȜȑȒȎ ȖȑȞȜȘ ȐȐȜȒȖȠ ȟ ȘșȎȐȖȎȠȡȞȩ ȘȎȘȜȓ șȖȏȜ ȕțȎȥȓțȖȓ ȝȜȟșȓ țȎȔȎȠȖȭ ȘșȎȐȖȦȖ Enter ȢȡțȘȤȖȭ ȐȜȕȐȞȎȧȎȓȠ ȫȠȜ ȕțȎȥȓțȖȓ ȘȎȘ ȟȠȞȜȘȜȐȡȬ ȝȓȞȓȚȓțțȡȬ

ĔęĞđĜĠđĕĝ 5)<0 ĘČĞđĘČĞĔģđĝĖĔđ ĠğęĖĢĔĔ ȍȕȩȘ /XD ȟȜȒȓȞȔȖȠ ȐȟȠȞȜȓțțȩȓ ȚȎȠȓȚȎȠȖȥȓȟȘȖȓ ȢȡțȘȤȖȖ ȘȜȠȜȞȩȓ ȚȜȔțȜ ȐȩȕȩȐȎȠȪ ȒȎȔȓ Ȗȕ ȝȞȜȑȞȎȚȚ țȓ ȟȐȭȕȎțțȩȣ ȟ /XD Ȑ ȚȜȒȓ &RPSXWHU&UDIW ȋȠȜȠ ȚȜȒȡșȪ ȐȘșȬȥȎȓȠ ȟșȓȒȡȬ ȧȖȓ ȢȡțȘȤȖȖ z math.ceil(ɱɢɫɥɨ) ȐȜȕȐȞȎȧȎȓȠ ɱɢɫɥɨ ȜȘȞȡȑșȓțțȜȓ Ȑ ȏȜȩșȪȦȡȬ ȟȠȜȞȜțȡ z math.ÀRRU(ɱɢɫɥɨ) ȐȜȕȐȞȎȧȎȓȠ ɱɢɫɥɨ ȜȘȞȡȑșȓțțȜȓ Ȑ ȚȓțȪȦȡȬ ȟȠȜȞȜțȡ z math.random(ɱɢɫɥɨ ɱɢɫɥɨ ) ȐȜȕȐȞȎȧȎȓȠ ȟșȡȥȎȗ țȜȓ ȤȓșȜȓ Ȑ ȒȖȎȝȎȕȜțȓ ȚȓȔȒȡ ɱɢɫɥɨ Ȗ ɱɢɫɥɨ ȐȘșȬȥȖȠȓșȪ țȜ ȁȘȎȕȎțȖȓ ȎȞȑȡȚȓțȠȜȐ ɱɢɫɥɨ Ȗ ɱɢɫɥɨ țȓȜȏȭȕȎȠȓșȪțȜ ǰȩȕȜȐ ȢȡțȘȤȖȖ ȏȓȕ ȎȞȑȡȚȓțȠȜȐ ȐȜȕȐȞȎȧȎȓȠ ȟșȡȥȎȗțȜȓ Ȓȓ ȟȭȠȖȥțȜȓ ȥȖȟșȜ Ȑ ȒȖȎȝȎȕȜțȓ ȜȠ 0.0 ȒȜ 1.0 dzȟșȖ țȓ ȡȘȎȕȎțȜ ɱɢɫɥɨ ȢȡțȘȤȖȭ ȐȜȕȐȞȎȧȎȓȠ ȤȓșȜȓ ȥȖȟșȜ Ȑ ȒȖȎȝȎȕȜțȓ ȜȠ 1 ȒȜ ɱɢɫɥɨ .

ĔęĞđĜĠđĕĝ 7; ĚěđĜČĢĔĚęęČī ĝĔĝĞđĘČ ǼȝȓȞȎȤȖȜțțȎȭ ȟȖȟȠȓȚȎ &RPSXWHU&UDIW ȝȞȓȒȜȟȠȎȐșȭȓȠ ȟșȓ ȒȡȬȧȖȓ ȢȡțȘȤȖȖ ȘȜȠȜȞȩȓ ȚȜȑȡȠ ȖȟȝȜșȪȕȜȐȎȠȪȟȭ ȥȓȞȓȝȎȦ ȘȎȚȖ Ȗ ȐțȡȠȞȖȖȑȞȜȐȩȚȖ ȘȜȚȝȪȬȠȓȞȎȚȖ z os.getComputerLabel() ȐȜȕȐȞȎȧȎȓȠ ȚȓȠȘȡ ȖȚȭ ȥȓ ȞȓȝȎȦȘȖ Ȑ ȐȖȒȓ ȟȠȞȜȘȜȐȜȗ ȝȓȞȓȚȓțțȜȗ

ǿǽǶǿǼǸ ȂȁǻǸȄǶǷ

311


z os.load API(ɢɦɹɮɚɣɥɚ) ȕȎȑȞȡȔȎȓȠ ȝȞȜȑȞȎȚȚȡ ȟȜ ȟȠȞȜȘȜȐȩȚ ȖȚȓțȓȚ ɢɦɹɮɚɣɥɚ Ȑ ȘȎȥȓȟȠȐȓ ȚȜȒȡșȭ ȥȠȜȏȩ Ƞȓ ȘȡȧȎȭ ȝȞȜȑȞȎȚȚȎ ȚȜȑșȎ ȐȩȕȩȐȎȠȪ ȓȓ ȢȡțȘȤȖȖ z RV VHW&RPSXWHU/DEHO ɦɟɬɤɚ QLO) ǽȞȖȟȐȎȖȐȎȓȠ ȥȓ ȞȓȝȎȦȘȓ ȖȚȭ ȡȘȎȕȎțțȜȓ Ȑ ȘȎȥȓȟȠȐȓ ȟȠȞȜȘȜȐȜȑȜ ȕțȎȥȓțȖȭ ɦɟɬɤɚ dzȟșȖ ȐȚȓȟȠȜ ɦɟɬɤɢ ȡȘȎȕȎțȜ ȕțȎȥȓțȖȓ nil ȢȡțȘȤȖȭ ȟȠȖȞȎȓȠ ȖȚȭ ȥȓȞȓȝȎȦȘȖ z RV VOHHS ɜɪɟɦɹ ǽȞȖȜȟȠȎțȎȐșȖȐȎȓȠ ȐȩȝȜșțȓțȖȓ ȝȞȜ ȑȞȎȚȚȩ țȎ ɜɪɟɦɹ ȟȓȘȡțȒ ǵțȎȥȓțȖȓ ȡȘȎȕȩȐȎȓȠȟȭ ȥȖȟșȜȚ

ĔęĞđĜĠđĕĝ ;0-44 ĚčĚėĚģĖČ ĖĚĘČęĐęĚĕ ĝĞĜĚĖĔ ȅȓȞȓȝȎȦȘȖ ȘȎȘ Ȗ ȖȑȞȜȘ ȚȜȑȡȠ ȐȩȝȜșțȭȠȪ ȘȜȚȎțȒȩ Ȑ ȜȏȜ șȜȥȘȓ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ǵȎȝȡȟȘȎȠȪ ȠȎȘȖȓ ȘȜȚȎțȒȩ Ȗȕ ȟȐȜ Ȗȣ ȝȞȜȑȞȎȚȚ Ƞȩ ȟȚȜȔȓȦȪ ȖȟȝȜșȪȕȡȭ ȢȡțȘȤȖȬ shell.run(ɤɨɦɚɧɞɚ) ȐȩȝȜșțȭȓȠ ɤɨɦɚɧɞɭ ȘȎȘ ȓȟșȖ ȏȩ ȖȑȞȜȘ ȐȐȓș ȎțȎșȜȑȖȥțȡȬ ȟȠȞȜȘȡ Ȑ ȜȏȜșȜȥȘȓ ȘȜȚȎțȒțȜȗ ȟȠȞȜȘȖ ȂȡțȘȤȖȭ ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ false ȓȟșȖ ȡȘȎȕȎț țȎȭ ɤɨɦɚɧɞɚ țȓ ȟȡȧȓȟȠȐȡȓȠ ȝȞȖ ȓȓ ȐȩȝȜșțȓțȖȖ ȝȞȜȖȕȜȦȓș ȟȏȜȗ ȖșȖ ȝȞȜȖȕȜȦȓș ȐȩȕȜȐ ȢȡțȘȤȖȖ error() Ȑ ȝȞȜȠȖȐțȜȚ ȟșȡȥȎȓ ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ true.

ĔęĞđĜĠđĕĝ ;<:16/ ĝĞĜĚĖĚĎħđ ĠğęĖĢĔĔ ǶțȠȓȞȢȓȗȟ string ȭȐșȭȓȠȟȭ ȥȎȟȠȪȬ /XD Ȗ Ƞȩ ȚȜȔȓȦȪ Ȑȩ ȕȩȐȎȠȪ ȫȠȖ ȢȡțȘȤȖȖ Ȗȕ ȝȞȜȑȞȎȚȚ țȓ ȟȐȭȕȎțțȩȣ ȟ &RPSXW HU&UDIW ȃȜȠȭ ȫȠȖ ȢȡțȘȤȖȖ Ȗ țȓ ȜȝȖȟȎțȩ Ȑ ȫȠȜȗ ȘțȖȑȓ ȭ ȐȘșȬȥȖș Ȗȣ Ȑ ȒȎțțȩȗ ȞȎȕȒȓș ȝȜȠȜȚȡ ȥȠȜ ȜțȖ ȝȜșȓȕțȩ z string.¿QG ɫɬɪɨɤɚ ɫɬɪɨɤɚ ) ȖȧȓȠ ɫɬɪɨɤɭ Ȑțȡ ȠȞȖ ɫɬɪɨɤɢ Ȗ ȐȜȕȐȞȎȧȎȓȠ ȒȐȎ Ȥȓșȩȣ ȥȖȟșȎ țȎȥȎșȜ Ȗ ȘȜțȓȤ ɫɬɪɨɤɢ Ȑ ȟȠȞȜȘȓ ɫɬɪɨɤɟ ǻȎȝȞȖȚȓȞ ȐȩȞȎȔȓțȖȓ string. ¿QG KHOOR HO

ȐȜȕȐȞȎȧȎȓȠ Ȗ ȝȜȠȜȚȡ ȥȠȜ HO țȎ ȥȖțȎȓȠȟȭ ȟȜ ȐȠȜȞȜȑȜ ȟȖȚȐȜșȎ ȟȠȞȜȘȖ KHOOR Ȗ ȕȎȘȎțȥȖȐȎȓȠȟȭ Ȑ ȠȞȓȠȪȓȚ dzȟșȖ ȟɬɪɨɤɚ țȓ ȟȜȒȓȞȔȖȠȟȭ Ȑ ɫɬɪɨɤɟ ȢȡțȘ ȤȖȭ ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ QLO ǮȞȑȡȚȓțȠ ɫɬɪɨɤɚ ȚȜȔȓȠ ȟȜ

312

ǽǾǶǹǼǴdzǻǶdz Ǯ


ȒȓȞȔȎȠȪ ȠȓȘȟȠȜȐȩȓ ȦȎȏșȜțȩ ȜȝȖȟȎțȖȓ ȘȜȠȜȞȩȣ ȐȩȣȜȒȖȠ ȕȎ ȞȎȚȘȖ ȫȠȜȗ ȘțȖȑȖ ǽȜȒȞȜȏțȓȓ Ȝ ȠȓȘȟȠȜȐȩȣ ȦȎȏșȜțȎȣ ȚȜȔțȜ ȡȕțȎȠȪ țȎ ȟȠȞȎțȖȤȓ OXD RUJ UX FRQWHQWVBUX KWPO ȞȎȕȒȓș z string.sub (ɫɬɪɨɤɚ ɧɚɱɚɥɨ ɞɥɢɧɚ ǰȜȕȐȞȎȧȎ ȓȠ ȥȎȟȠȪ ɫɬɪɨɤɢ Ȓșȭ ȘȜȠȜȞȜȗ ȥȖȟșȎȚȖ ȡȘȎȕȎțȩ ȝȜȕȖȤȖȭ ɧɚɱɚɥɚ Ȗ ɞɥɢɧɚ ² ȘȜșȖȥȓȟȠȐȜ ȟȖȚȐȜșȜȐ ǮȞȑȡȚȓțȠ ɞɥɢɧɚ țȓȜȏȭȕȎȠȓșȓț dzȟșȖ Ȝț țȓ ȝȓȞȓȒȎȓȠȟȭ ȝȜȒȟȠȞȜȘȎ țȎȥȖțȎ ȓȠȟȭ ȟ ȝȜȕȖȤȖȖ ɧɚɱɚɥɨ Ȗ ȝȞȜȒȜșȔȎȓȠȟȭ ȒȜ ȘȜțȤȎ ȟȠȞȜȘȖ ǻȎȝȞȖȚȓȞ ȐȩȞȎȔȓțȖȓ string.sub('hello', 3, 2) ȐȜȕ ȐȞȎȧȎȓȠ 'll' Ȏ ȐȩȞȎȔȓțȖȓ string.sub('hello', 2) ȐȜȕ ȐȞȎȧȎȓȠ 'ello'.

ĔęĞđĜĠđĕĝ <-@<=<14; ĞđĖĝĞĚĎħđ ĩĠĠđĖĞħ ǶȟȝȜșȪȕȡȭ ȖțȠȓȞȢȓȗȟ textutils Ƞȩ ȚȜȔȓȦȪ ȜȠȜȏȞȎȔȎȠȪ ȠȓȘȟȠ ȝȜ ȜȒțȜȚȡ ȟȖȚȐȜșȡ ȟȜȕȒȎȐȎȭ ȫȢȢȓȘȠ ȝȖȦȡȧȓȗ ȚȎ ȦȖțȘȖ z WH[WXWLOV VORZ3ULQW ɫɬɪɨɤɚ ɫɤɨɪɨɫɬɶ ȎțȎșȜ ȑȖȥțȎ ȢȡțȘȤȖȖ print() ȕȎ ȖȟȘșȬȥȓțȖȓȚ ȠȜȑȜ ȥȠȜ ȐȩȐȜ ȒȖȠ ɫɬɪɨɤɭ ȝȜȜȥȓȞȓȒțȜ ȝȓȥȎȠȎȭ ȝȜ ȜȒțȜȚȡ ȟȖȚȐȜșȡ ǮȞȑȡ ȚȓțȠ ɫɤɨɪɨɫɬɶ țȓ ȜȏȭȕȎȠȓșȓț Ȝț șȖȦȪ ȡȘȎȕȩȐȎȓȠ ȟȘȜȞȜȟȠȪ ȝȓȥȎȠȖ ȘȜșȖȥȓȟȠȐȜ ȟȖȚȐȜșȜȐ Ȑ ȟȓȘȡțȒȡ

ĔęĞđĜĠđĕĝ <=:<4- ğěĜČĎėđęĔđ ģđĜđěČĤĖĚĕ ǶțȠȓȞȢȓȗȟ turtle ȟȜȒȓȞȔȖȠ ȢȡțȘȤȖȖ ȘȜȠȜȞȩȓ ȠȐȜȖ ȝȞȜ ȑȞȎȚȚȩ ȚȜȑȡȠ ȐȩȕȩȐȎȠȪ ȥȠȜȏȩ ȥȓȞȓȝȎȦȘȎ ȐȩȝȜșțȭșȎ ȜȝȞȓȒȓșȓțțȩȓ ȒȓȗȟȠȐȖȭ DzȎȐȎȗ ȞȎȟȟȚȜȠȞȖȚ ȫȠȖ ȢȡțȘȤȖȖ Ȗ ȒȓȗȟȠȐȖȭ ȟȜȐȓȞȦȎȓȚȩȓ ȖȚȖ

ĝĞĜĚĔĞđėĨęħđ ĠğęĖĢĔĔ ǰȩȕȩȐȎȭ ȫȠȖ ȢȡțȘȤȖȖ ȥȓȞȓȝȎȦȘȖ ȚȜȑȡȠ ȟȠȞȜȖȠȪ ȡȘșȎ ȒȩȐȎȭ ȏșȜȘȖ ǻȜ ȜȒțȎ Ȗ ȠȎ Ȕȓ ȢȡțȘȤȖȭ ȚȜȔȓȠ ȐȩȝȜșțȭȠȪ ȞȎȕșȖȥțȩȓ ȒȓȗȟȠȐȖȭ Ȑ ȕȎȐȖȟȖȚȜȟȠȖ ȜȠ ȠȜȑȜ ȘȎȘȜȗ ȖȚȓțțȜ

ǿǽǶǿǼǸ ȂȁǻǸȄǶǷ

313


ȝȞȓȒȚȓȠ ȖșȖ ȏșȜȘ țȎȣȜȒȖȠȟȭ Ȑ ȠȓȘȡȧȓȗ ȭȥȓȗȘȓ ȖțȐȓțȠȎȞȭ ȥȓȞȓȝȎȦȘȖ z turtle.place() ȐȩȝȜșțȭȓȠ ȒȓȗȟȠȐȖȓ ȟ ȝȞȓȒȚȓȠȜȚ ȏșȜȘȜȚ Ȗȕ ȠȓȘȡȧȓȗ ȭȥȓȗȘȖ ȖțȐȓțȠȎȞȭ ȥȓȞȓȝȎȦȘȖ Dzșȭ ȟȠȞȜȖȠȓșȪțȩȣ ȏșȜȘȜȐ ȫȠȎ ȢȡțȘȤȖȭ ȡȘșȎȒȩȐȎȓȠ ȏșȜȘ Ȑ ȚȖ Ȟȓ 0LQHFUDIW ǼȒțȎȘȜ ȓȟșȖ ȫȠȜ ȜȒȖț Ȗȕ ȟȝȓȤȖȎșȪțȩȣ ȝȞȓȒ ȚȓȠȜȐ ȝȓȞȓȥȖȟșȓțțȩȣ Ȑ ȠȎȏș ȠȜ Ȝț ȏȡȒȓȠ ȖȟȝȜșȪȕȜȐȎț ȟȝȜȟȜȏȜȚ ȡȘȎȕȎțțȩȚ Ȑ ȫȠȜȗ ȠȎȏșȖȤȓ ȂȡțȘȤȖȭ ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ false ȓȟșȖ ȥȓȞȓȝȎȦȘȎ țȓ ȚȜȔȓȠ ȡșȜȔȖȠȪ ȏșȜȘ ȖșȖ ȐȩȝȜșțȖȠȪ ȟ ȏșȜȘȜȚ ȝȞȓȒȝȖȟȎțțȩȓ ȒȓȗȟȠȐȖȭ z turtle.placeDown() ȎțȎșȜȑȖȥțȎ ȢȡțȘȤȖȖ turtle. place() țȜ ȐȩȝȜșțȭȓȠ ȒȓȗȟȠȐȖȓ Ȑ ȝȞȜȟȠȞȎțȟȠȐȓ ȝȜȒ ȥȓȞȓ ȝȎȦȘȜȗ z turtle.placeUp() ȎțȎșȜȑȖȥțȎ ȢȡțȘȤȖȖ turtle. place() țȜ ȐȩȝȜșțȭȓȠ ȒȓȗȟȠȐȖȓ Ȑ ȝȞȜȟȠȞȎțȟȠȐȓ țȎȒ ȥȓȞȓ ȝȎȦȘȜȗ ˃̣̌̍͘ ϭ͘ ˁ̶̛̪̖̣̦̼̖̌̽ ̪̬̖̥̖̯̼͕̔ ̡̨̨̯̬̼̖ ̨̥̱̯̐ ̨̨̛̭̪̣̯̽̏̌̽̚ ̴̶̡̛̱̦​̛ place. ʿ̬̖̥̖̯̔ ʪ̛̖̜̭̯̖̏ ʥ̨̬̦́ ˄̛̭̯̦̣̖̯̌̌̏̏̌ ̨̬̦̍̀ ̦̌ ̵̨̛̭̪̖̔͘ ʸ̨̡̔̌ ʿ̨̥̖̺̖̯̌ ̨̡̣̱̔ ̦̌ ̨̱̏̔͘ ʶ̛̛̬̭̯̖̣̌ ʽ̡̛̬̹̖̯̌̏̌ ̹̖̬̭̯̽͘ ˁ̨̛̬̖̯̍̌ ̣̱̌̏ ̛̛̣ ̨̱̏̔͘ ʺ̨̙̖̯ ̡̯̙̖̌ ̨̨̪̔ʿ̨̱̭̯̖ ̨̖̬̏̔ ̛̯̽ ̡̨̨̬̱̏͘ ˇ̡̖̜̖̬̖̬̏ ʯ̡̪̱̭̖̯̌̌ ̴̡̖̜̖̬̖̬̏͘ ʿ̨̛̙̖̯̔̐̌ ̸̨̛̬̜̐̀ ̨̡̣̍ ̛̛̣ ̡̛̛̯̬̱̖̯̌̏ ʽ̨̛̦̐̏ ̨̪̬̯̣̌ ̏ ʻ̖̖̬̚͘ ʦ̨̡̦̖̯̌̐̌ ʿ̨̥̖̺̖̯̌ ̨̡̦̖̯̱̏̌̐ ̦̌ ̬̖̣̭̼̽͘ ˁ̶̙̖̦̼͕̌ ̶̖̯̼̏ ʦ̛̼̬̺̖̯̌̏̌ ̶̖̯̼̏ ̛̛̣ ̭̖̥̖̦̌͘ ̛̛̣ ̭̖̥̖̦̌ ʻ̶̨̛̙̦̼ ˁ̛̯̬̙̖̯ ̶̨̖̏ ̛ ̨̛̭̬̖̯̍̌ ̹̖̬̭̯̽͘ ˄̛̭̯̦̣̖̯̌̌̏̏̌ ̸̡̛̯̣̱̌̍ ̭ ̡̨̯̖̭̯̥͘ ˋ̨̯̼̍ ̛̦̪̭̯̌̌̽ ̡̯̖̭̯ ̦̌ ̸̡̛̯̣̖͕̌̍ ̪̖̬̖̜̔̌ ˃̸̡̛̣̌̍̌ ̏ ̴̶̡̛̱̦̀ ̨̡̭̯̬̱͘ ʻ̛̪̬̥̖̬͕̌ turtle. place('This\nis a\nsign.'). ˔̶̜̌ ̛̪̬̼̏̌̚ ˁ̛̪̱̦̯̌ ̨̥̍̌͘

314

ǽǾǶǹǼǴdzǻǶdz Ǯ


ĞĚěėĔĎęħđ ĠğęĖĢĔĔ ȅȓȞȓȝȎȦȘȎ ȠȞȎȠȖȠ ȓȒȖțȖȤȡ ȠȜȝșȖȐȎ ȘȎȔȒȩȗ ȞȎȕ ȘȜȑȒȎ ȝȓȞȓȚȓȧȎȓȠȟȭ țȎ ȞȎȟȟȠȜȭțȖȓ Ȑ ȜȒȖț ȏșȜȘ dzȟșȖ ȠȜȝșȖȐȜ ȕȎ ȘȎțȥȖȐȎȓȠȟȭ ȥȓȞȓȝȎȦȘȎ țȓ ȚȜȔȓȠ ȝȓȞȓȒȐȖȑȎȠȪȟȭ ǽȜ ȫȠȜȗ ȝȞȖȥȖțȓ ȐȎȔțȜ ȡȥȖȠȩȐȎȠȪ țȓȜȏȣȜȒȖȚȜȟȠȪ ȒȜȕȎȝȞȎȐȘȖ Ȗ ȒȞȡȑȖȓ ȢȡțȘȤȖȖ ȟȐȭȕȎțțȩȓ ȟ ȠȜȝșȖȐȜȚ z turtle.getFuelLevel() ȐȜȕȐȞȎȧȎȓȠ ȘȜșȖȥȓȟȠȐȜ ȠȜȝ șȖȐȎ ȘȜȠȜȞȜȓ Ȑ țȎȟȠȜȭȧȓȓ ȐȞȓȚȭ ȓȟȠȪ ȡ ȥȓȞȓȝȎȦȘȖ ǰȜȕȐȞȎ ȧȎȓȠ ȕțȎȥȓțȖȓ 'unlimited' ȓȟșȖ Ȑ ȢȎȗșȓ ȘȜțȢȖȑȡȞȎȤȖȖ &RPSXWHU&UDIW FIJ ȜȠȘșȬȥȓțȎ țȓȜȏȣȜȒȖȚȜȟȠȪ ȖȟȝȜșȪȕȜȐȎ țȖȭ ȠȜȝșȖȐȎ z turtle.getFuelLimit() ȐȜȕȐȞȎȧȎȓȠ ȚȎȘȟȖȚȎșȪțȜȓ ȘȜșȖȥȓȟȠȐȜ ȠȜȝșȖȐȎ ȘȜȠȜȞȜȓ ȚȜȔȓȠ ȣȞȎțȖȠȪ ȥȓȞȓȝȎȦȘȎ Dzșȭ ȏȜșȪȦȖțȟȠȐȎ ȥȓȞȓȝȎȦȓȘ ȝȞȓȒȓș ȟȜȟȠȎȐșȭȓȠ ȓȒȖțȖȤ Ȓșȭ țȓȘȜȠȜȞȩȣ ȒȞȡȑȖȣ șȖȚȖȠ ȟȜȟȠȎȐșȭȓȠ ȓȒȖțȖȤ ǰȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ 'unlimited' ȓȟșȖ Ȑ ȢȎȗșȓ ȘȜțȢȖȑȡȞȎȤȖȖ ŽŵƉƵƚĞƌ ƌĂĨƚ͘ĐĨŐ ȜȠȘșȬȥȓțȎ țȓȜȏȣȜȒȖȚȜȟȠȪ ȖȟȝȜșȪȕȜȐȎțȖȭ ȠȜȝșȖȐȎ z WXUWOH UHIXHO ɤɨɥɢɱɟɫɬɜɨ ȒȜȏȎȐșȭȓȠ Ȑ ȘȎȥȓ ȟȠȐȓ ȠȜȝșȖȐȎ ȟȜȒȓȞȔȖȚȜȓ ȠȓȘȡȧȓȗ ȭȥȓȗȘȖ Ȑ ȡȘȎȕȎțțȜȚ ɤɨɥɢɱɟɫɬɜɟ ȅȖȟșȓțțȩȗ ȎȞȑȡȚȓțȠ ɤɨɥɢɱɟɫɬɜɨ țȓȜȏȭȕȎȠȓ șȓț dzȟșȖ Ȝț țȓ ȡȘȎȕȎț ȢȡțȘȤȖȭ ȒȜȏȎȐșȭȓȠ Ȑȟȓ ȟȜȒȓȞȔȖ ȚȜȓ ȠȓȘȡȧȓȗ ȭȥȓȗȘȖ

ĠğęĖĢĔĔ ĝĎīēČęęħđ ĝ ĔęĎđęĞČĜđĘ ǶțȐȓțȠȎȞȪ ȥȓȞȓȝȎȦȘȖ ȟȜȟȠȜȖȠ Ȗȕ ȝȞȜțȡȚȓȞȜȐȎțțȩȣ ȭȥȓȓȘ Ȁȩ ȚȜȔȓȦȪ ȖȟȝȜșȪȕȜȐȎȠȪ ȢȡțȘȤȖȖ ȟȐȭȕȎțțȩȓ ȟ ȖțȐȓțȠȎȞȓȚ ȥȠȜȏȩ ȥȓȞȓȝȎȦȘȎ ȐȩȝȜșțȭșȎ ȞȎȕșȖȥțȩȓ Ȓȓȗ ȟȠȐȖȭ ȋȠȖ ȢȡțȘȤȖȖ ȥȎȟȠȜ ȝȞȖțȖȚȎȬȠ ȥȖȟșȓțțȩȓ ȝȎȞȎȚȓ ȠȞȩ ȥȠȜȏȩ ȜȝȞȓȒȓșȖȠȪ Ȑ ȘȎȘȜȗ Ȗȕ ȝȞȜțȡȚȓȞȜȐȎțțȩȣ ȭȥȓȓȘ ȟșȓȒȡȓȠ ȐȩȝȜșțȖȠȪ ȒȓȗȟȠȐȖȓ z turtle.compareTo(ɧɨɦɟɪɹɱɟɣɤɢ) ȐȜȕȐȞȎȧȎȓȠ ȕțȎ ȥȓțȖȓ true ȓȟșȖ ȏșȜȘ ȝȞȓȒȚȓȠ Ȑ ȠȓȘȡȧȓȗ ȭȥȓȗȘȓ ȟȜȐȝȎ ȒȎȓȠ ȟ ȏșȜȘȜȚ ȝȞȓȒȚȓȠȜȚ Ȑ ȭȥȓȗȘȓ ȟ ȡȘȎȕȎțțȩȚ ȥȖȟșȜȚ ɧɨɦɟɪɹɱɟɣɤɢ Ȑ ȝȞȜȠȖȐțȜȚ ȟșȡȥȎȓ ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ false.

ǿǽǶǿǼǸ ȂȁǻǸȄǶǷ

315


z turtle.drop(ɤɨɥɢɱɟɫɬɜɨ ǽȓȞȓȚȓȧȎȓȠ ɤɨɥɢɱɟɫɬɜɨ ȏșȜȘȜȐ ȝȞȓȒȚȓȠȜȐ Ȗȕ ȠȓȘȡȧȓȗ ȭȥȓȗȘȖ Ȑ ȚȖȞ 0LQHFUDIW ȖșȖ Ȑ ȘȜțȠȓȗțȓȞ ȝȓȞȓȒ ȥȓȞȓȝȎȦȘȜȗ Ʉɨɥɢɱɟɫɬɜɨ ȡȘȎȕȩȐȎȠȪ țȓ ȜȏȭȕȎȠȓșȪțȜ dzȟșȖ ȜțȜ țȓ ȡȘȎȕȎțȜ ȢȡțȘȤȖȭ ȐȩțȖȚȎȓȠ Ȑȟȓ ȏșȜȘȖ ȝȞȓȒȚȓȠȩ Ȗȕ ȠȓȘȡȧȓȗ ȭȥȓȗȘȖ ǰȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ true ȓȟșȖ ȘȎȘȖȓ șȖȏȜ ȏșȜȘȖ ȝȞȓȒȚȓȠȩ ȏȩșȖ ȖȕȐșȓȥȓțȩ Ȑ ȝȞȜȠȖȐțȜȚ ȟșȡȥȎȓ ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ false. z turtle.dropDown (ɤɨɥɢɱɟɫɬɜɨ ȎțȎșȜȑȖȥțȎ ȢȡțȘ ȤȖȖ WXUWOH GURS ȕȎ ȖȟȘșȬȥȓțȖȓȚ ȠȜȑȜ ȥȠȜ ȫȠȎ ȢȡțȘȤȖȭ Ȗȕ ȐșȓȘȎȓȠ ȝȞȓȒȚȓȠȩ Ȑ ȝȞȜȟȠȞȎțȟȠȐȜ ȖșȖ ȘȜțȠȓȗțȓȞ ȝȜȒ ȥȓȞȓ ȝȎȦȘȜȗ z WXUWOH GURS8S ɤɨɥɢɱɟɫɬɜɨ ȎțȎșȜȑȖȥțȎ turtle. drop() ȕȎ ȖȟȘșȬȥȓțȖȓȚ ȠȜȑȜ ȥȠȜ ȫȠȎ ȢȡțȘȤȖȭ ȖȕȐșȓȘȎȓȠ ȝȞȓȒȚȓȠȩ Ȑ ȝȞȜȟȠȞȎțȟȠȐȜ ȖșȖ ȘȜțȠȓȗțȓȞ țȎȒ ȥȓȞȓȝȎȦȘȜȗ z turtle.equipLeft() ȜȟțȎȧȎȓȠ ȥȓȞȓȝȎȦȘȡ ȖțȟȠȞȡ ȚȓțȠȜȚ ȟ șȓȐȜȗ ȟȠȜȞȜțȩ ȓȟșȖ Ȝț ȟȜȒȓȞȔȖȠȟȭ Ȑ ȠȓȘȡȧȓȗ ȭȥȓȗȘȓ ǰȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ true ȓȟșȖ ȫȘȖȝȖȞȜȐȘȎ ȝȞȜ ȖȕȐȓȒȓțȎ Ȑ ȝȞȜȠȖȐțȜȚ ȟșȡȥȎȓ ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ false. z turtle.equipRight() ȜȟțȎȧȎȓȠ ȥȓȞȓȝȎȦȘȡ ȖțȟȠȞȡ ȚȓțȠȜȚ ȟ ȝȞȎȐȜȗ ȟȠȜȞȜțȩ ȓȟșȖ Ȝț ȟȜȒȓȞȔȖȠȟȭ Ȑ ȠȓȘȡȧȓȗ ȭȥȓȗȘȓ ǰȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ true ȓȟșȖ ȫȘȖȝȖȞȜȐȘȎ ȝȞȜ ȖȕȐȓȒȓțȎ Ȑ ȝȞȜȠȖȐțȜȚ ȟșȡȥȎȓ ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ false. z WXUWOH JHW,WH P &RX QW ɧɨɦɟɪɹɱɟɣɤɢ ȐȜȕȐȞȎ ȧȎȓȠ ȘȜșȖȥȓȟȠȐȜ ȏșȜȘȜȐ ȝȞȓȒȚȓȠȜȐ Ȑ ȭȥȓȗȘȓ ȟ țȜȚȓȞȜȚ ɧɨɦɟɪɹɱɟɣɤɢ ǶȟȝȜșȪȕȡȓȠȟȭ ȠȓȘȡȧȎȭ ȭȥȓȗȘȎ ȓȟșȖ țȜȚȓ ȞȭȥȓȗȘȖ țȓ ȡȘȎȕȎț z turtle.getItemDetail(ɧɨɦɟɪɹɱɟɣɤɢ ȐȜȕȐȞȎȧȎȓȠ ȠȎȏșȖȥțȜȓ ȕțȎȥȓțȖȓ ȟ ȖțȢȜȞȚȎȤȖȓȗ Ȝ ȟȜȒȓȞȔȖȚȜȚ ȭȥȓȗȘȖ ȟ țȜȚȓȞȜȚ ɧɨɦɟɪɹɱɟɣɤɢ ǰȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ nil ȓȟșȖ ȭȥȓȗȘȎ ȝȡȟȠȎ ǶȟȝȜșȪȕȡȓȠȟȭ ȠȓȘȡȧȎȭ ȭȥȓȗȘȎ ȓȟșȖ țȜȚȓȞȭ ȥȓȗȘȖ țȓ ȡȘȎȕȎț z turtle.getItemSpace(ɧɨɦɟɪɹɱɟɣɤɢ ǰȜȕȐȞȎȧȎȓȠ ȘȜ șȖȥȓȟȠȐȜ ȟȐȜȏȜȒțȜȑȜ ȚȓȟȠȎ Ȑ ȭȥȓȗȘȓ ȟ țȜȚȓȞȜȚ ɧɨɦɟɪɹɱɟɣɤɢ. ǶȟȝȜșȪȕȡȓȠȟȭ ȠȓȘȡȧȎȭ ȭȥȓȗȘȎ ȓȟșȖ țȜȚȓȞȭȥȓȗȘȖ țȓ ȡȘȎȕȎț z turtle.getSelectedSlot() ȐȜȕȐȞȎȧȎȓȠ țȜȚȓȞ ȠȓȘȡ ȧȓȗ ȭȥȓȗȘȖ ȜȠ 1 ȒȜ 16

316

ǽǾǶǹǼǴdzǻǶdz Ǯ


z turtle.select (ɧɨɦɟɪɹɱɟɣɤɢ ȒȓșȎȓȠ ȡȘȎȕȎțțȡȬ ȭȥȓȗȘȡ ȠȓȘȡȧȓȗ z turWOe.suck(ɤɨɥɢɱɟɫɬɜɨ ȟȜȏȖȞȎȓȠ ɤɨɥɢɱɟɫɬɜɨ ȝȞȓȒ ȚȓȠȜȐ Ȗȕ ȝȞȜȟȠȞȎțȟȠȐȎ ȖșȖ ȘȜțȠȓȗțȓȞȎ ȝȓȞȓȒ ȥȓȞȓȝȎȦȘȜȗ Ȗ ȝȜȚȓȧȎȓȠ Ȗȣ șȖȏȜ Ȑ ȠȓȘȡȧȡȬ ȭȥȓȗȘȡ ȓȟșȖ ȜțȎ ȝȡȟȠȎ șȖȏȜ Ȑ ȏșȖȔȎȗȦȡȬ ȝȡȟȠȡȬ ȭȥȓȗȘȡ ȅȖȟșȓțțȩȗ ȎȞȑȡȚȓțȠ ɤɨɥɢɱɟɫɬɜɨ țȓȜȏȭȕȎȠȓșȓț dzȟșȖ Ȝț țȓ ȡȘȎȕȎț ȕȎȑȞȡȔȎ ȓȠȟȭ ȝȜșțȩȗ ȟȠȓȘ Dzșȭ ȏȜșȪȦȖțȟȠȐȎ ȏșȜȘȜȐ ȝȜșțȩȗ ȟȠȓȘ ȞȎȐȓț ȫȘȕȓȚȝșȭȞȎȚ ȣȜȠȭ țȓȘȜȠȜȞȩȓ ȝȞȓȒȚȓȠȩ ȠȎȘȖȓ ȘȎȘ ȭȗȤȎ ȟțȓȔȘȖ ȖșȖ ȝȡȟȠȩȓ ȐȓȒȞȎ ȚȜȑȡȠ ȟȘșȎȒȖȞȜȐȎȠȪȟȭ ȠȜșȪȘȜ Ȑ ȘȜșȖȥȓȟȠȐȓ ȒȜ ȦȠȡȘ Ȏ ȜȞȡȔȖȓ Ȗ ȖțȟȠȞȡȚȓțȠȩ Ȗ ȐȜȐȟȓ ȝȜ ȜȒțȜȚȡ ȫȘȕȓȚȝșȭȞȡ ǰȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ true ȓȟșȖ ȘȎȘȖȓ șȖȏȜ ȏșȜȘȖ ȝȞȓȒȚȓȠȩ ȏȩșȖ ȐȕȭȠȩ Ȑ ȝȞȜȠȖȐțȜȚ ȟșȡȥȎȓ ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ false. z turtle.suckDown (ɤɨɥɢɱɟɫɬɜɨ ȎțȎșȜȑȖȥțȎ ȢȡțȘ ȤȖȖ turtle.suck() ȕȎ ȖȟȘșȬȥȓțȖȓȚ ȠȜȑȜ ȥȠȜ ȫȠȎ ȢȡțȘȤȖȭ ȝȞȖțȖȚȎȓȠ ȏșȜȘȖ ȝȞȓȒȚȓȠȩ Ȗȕ ȝȞȜȟȠȞȎțȟȠȐȎ ȖșȖ ȘȜțȠȓȗ țȓȞȎ ȝȜȒ ȥȓȞȓȝȎȦȘȜȗ z turtle.suckUp (ɤɨɥɢɱɟɫɬɜɨ ȎțȎșȜȑȖȥțȎ ȢȡțȘȤȖȖ turtle.suck() ȕȎ ȖȟȘșȬȥȓțȖȓȚ ȠȜȑȜ ȥȠȜ ȫȠȎ ȢȡțȘȤȖȭ ȝȞȖțȖȚȎȓȠ ȏșȜȘȖ ȝȞȓȒȚȓȠȩ Ȗȕ ȝȞȜȟȠȞȎțȟȠȐȎ ȖșȖ ȘȜțȠȓȗ țȓȞȎ țȎȒ ȥȓȞȓȝȎȦȘȜȗ z turtle.transferTo (ɧɨɦɟɪɹɱɟɣɤɢ ɤɨɥɢɱɟɫɬɜɨ ǽȓȞȓțȜȟȖȠ ȘȜșȖȥȓȟȠȐȜ ȏșȜȘȜȐ ȝȞȓȒȚȓȠȜȐ Ȗȕ ȠȓȘȡȧȓȗ ȭȥȓȗ ȘȖ Ȑ ȭȥȓȗȘȡ ȟ țȜȚȓȞȜȚ ɧɨɦɟɪɹɱɟɣɤɢ ȅȖȟșȓțțȩȗ ȎȞȑȡȚȓțȠ ɤɨɥɢɱɟɫɬɜɨ țȓȜȏȭȕȎȠȓșȓț dzȟșȖ Ȝț țȓ ȡȘȎȕȎț ȢȡțȘȤȖȭ ȝȩȠȎȓȠȟȭ ȝȓȞȓȒȎȠȪ Ȑȟȓ ȏșȜȘȖ ȝȞȓȒȚȓȠȩ Ȗȕ ȠȓȘȡȧȓȗ ȭȥȓȗȘȖ ǰȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ true ȓȟșȖ ȘȎȘȖȓ șȖȏȜ ȏșȜȘȖ ȝȞȓȒ ȚȓȠȩ ȏȩșȖ ȝȓȞȓțȓȟȓțȩ Ȑ ȝȞȜȠȖȐțȜȚ ȟșȡȥȎȓ ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ false.

ĠğęĖĢĔĔ ĐĎĔĒđęĔī ȅȓȞȓȝȎȦȘȖ ȚȜȑȡȠ ȒȐȖȑȎȠȪȟȭ Ȑ șȬȏȜȚ țȎȝȞȎȐșȓțȖȖ ȓȟ șȖ ȝȞȜȟȠȞȎțȟȠȐȜ țȎ ȝȡȠȖ ȟȐȜȏȜȒțȜ ǽȓȞȓȥȖȟșȓțțȩȓ țȖȔȓ ȢȡțȘȤȖȖ Ƞȩ ȚȜȔȓȦȪ ȖȟȝȜșȪȕȜȐȎȠȪ ȥȠȜȏȩ ȝȓȞȓȚȓȧȎȠȪ ȥȓ ȞȓȝȎȦȘȡ Ȑ ȞȎȕțȩȣ țȎȝȞȎȐșȓțȖȭȣ ǰȟȓ ȢȡțȘȤȖȖ ȒȐȖȔȓțȖȭ

ǿǽǶǿǼǸ ȂȁǻǸȄǶǷ

317


ȐȜȕȐȞȎȧȎȬȠ ȕțȎȥȓțȖȓ true ȓȟșȖ ȥȓȞȓȝȎȦȘȎ ȟȜȐȓȞȦȖșȎ ȝȓȞȓȚȓȧȓțȖȓ Ȑ ȝȞȜȠȖȐțȜȚ ȟșȡȥȎȓ ȜțȖ ȐȜȕȐȞȎȧȎȬȠ false. z turtle.back() ȝȓȞȓȚȓȧȎȓȠ ȥȓȞȓȝȎȦȘȡ țȎ ȜȒȖț ȏșȜȘ țȎȕȎȒ z turtle.down() ȝȓȞȓȚȓȧȎȓȠ ȥȓȞȓȝȎȦȘȡ țȎ ȜȒȖț ȏșȜȘ ȐțȖȕ z turtle.forward() ȝȓȞȓȚȓȧȎȓȠ ȥȓȞȓȝȎȦȘȡ țȎ ȜȒȖț ȏșȜȘ ȐȝȓȞȓȒ z turtle.turnLeft() ȝȜȐȜȞȎȥȖȐȎȓȠ ȥȓȞȓȝȎȦȘȡ țȎșȓȐȜ ȠȜȝșȖȐȜ ȝȞȖ ȫȠȜȚ țȓ ȖȟȝȜșȪȕȡȓȠȟȭ z turtle.turnRight() ȝȜȐȜȞȎȥȖȐȎȓȠ ȥȓȞȓȝȎȦȘȡ țȎ ȝȞȎȐȜ ȠȜȝșȖȐȜ ȝȞȖ ȫȠȜȚ țȓ ȖȟȝȜșȪȕȡȓȠȟȭ z turtle.up() ȝȓȞȓȚȓȧȎȓȠ ȥȓȞȓȝȎȦȘȡ țȎ ȜȒȖț ȏșȜȘ ȐȐȓȞȣ

ĠğęĖĢĔĔ ĎĚĝěĜĔīĞĔī ȅȓȞȓȝȎȦȘȖ ȚȜȑȡȠ ȜȝȞȓȒȓșȭȠȪ ȏșȜȘȖ ȞȎȟȝȜșȜȔȓțțȩȓ ȝȓȞȓȒ țȖȚȖ Ȏ ȠȎȘȔȓ ȐȩȦȓ ȖșȖ țȖȔȓ Ȗȣ ȟȎȚȖȣ ȖȟȝȜșȪȕȡȭ ȟșȓȒȡ ȬȧȖȓ ȢȡțȘȤȖȖ z turtle.compare() ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ true ȓȟșȖ ȏșȜȘ ȝȓȞȓȒ ȥȓȞȓȝȎȦȘȜȗ ȖȚȓȓȠ ȠȜȠ Ȕȓ ȠȖȝ ȥȠȜ Ȗ ȏșȜȘ Ȑ Ƞȓ Șȡȧȓȗ ȭȥȓȗȘȓ Ȑ ȝȞȜȠȖȐțȜȚ ȟșȡȥȎȓ ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ false. z turtle.compareDown() ȎțȎșȜȑȖȥțȎ turtle.compare() țȜ ȟȞȎȐțȖȐȎȓȠ ȏșȜȘ ȝȜȒ ȥȓȞȓȝȎȦȘȜȗ ȟ ȏșȜȘȜȚ Ȑ Ƞȓ Șȡȧȓȗ ȭȥȓȗȘȓ z turtle.com pareUp() ȎțȎșȜȑȖȥțȎ turtle.compare() țȜ ȟȞȎȐțȖȐȎȓȠ ȏșȜȘ țȎȒ ȥȓȞȓȝȎȦȘȜȗ ȟ ȏșȜȘȜȚ Ȑ Ƞȓ Șȡȧȓȗ ȭȥȓȗȘȓ z turtle.detect() ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ true ȓȟșȖ ȝȓȞȓȒ ȥȓȞȓȝȎȦȘȜȗ țȎȣȜȒȖȠȟȭ ȏșȜȘ Ȑ ȝȞȜȠȖȐțȜȚ ȟșȡȥȎȓ ȐȜȕ ȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ false. z turtle.detectDown() ȎțȎșȜȑȖȥțȎ ȢȡțȘȤȖȖ turtle. detect() țȜ ȝȞȜȐȓȞȭȓȠ țȎșȖȥȖȓ ȏșȜȘȎ ȝȜȒ ȥȓȞȓȝȎȦȘȜȗ

318

ǽǾǶǹǼǴdzǻǶdz Ǯ


z turtle.detectUp()ȎțȎșȜȑȖȥțȎ ȢȡțȘȤȖȖ turtle. detect() țȜ ȝȞȜȐȓȞȭȓȠ țȎșȖȥȖȓ ȏșȜȘȎ țȎȒ ȥȓȞȓȝȎȦȘȜȗ z turtle.inspect() ȐȜȕȐȞȎȧȎȓȠ ȒȐȎ ȕțȎȥȓțȖȭ true Ȗ ȠȎȏșȖȥțȜȓ ȕțȎȥȓțȖȓ ȟ ȖțȢȜȞȚȎȤȖȓȗ Ȝ ȏșȜȘȓ ȝȓȞȓȒ ȥȓȞȓ ȝȎȦȘȜȗ dzȟșȖ țȖ ȜȒȖț ȏșȜȘ țȓ țȎȣȜȒȖȠȟȭ ȝȓȞȓȒ ȥȓȞȓȝȎȦ ȘȜȗ ȐȜȕȐȞȎȧȎȓȠȟȭ ȕțȎȥȓțȖȓ false. z turtle.inspectDown() ȎțȎșȜȑȖȥțȎ ȢȡțȘȤȖȖ turtle.inspect() țȜ ȐȜȕȐȞȎȧȎȓȠ ȖțȢȜȞȚȎȤȖȬ Ȝ ȏșȜȘȓ ȝȜȒ ȥȓȞȓȝȎȦȘȜȗ z turtle.inspectUp() ȎțȎșȜȑȖȥțȎ ȢȡțȘȤȖȖ turtle. inspect() țȜ ȐȜȕȐȞȎȧȎȓȠ ȖțȢȜȞȚȎȤȖȬ Ȝ ȏșȜȘȓ țȎȒ ȥȓȞȓ ȝȎȦȘȜȗ

ĠğęĖĢĔĔ ĝĎīēČęęħđ ĝ ĔęĝĞĜğĘđęĞČĘĔ ȅȓȞȓȝȎȦȘȖ ȚȜȑȡȠ ȐȩȝȜșțȭȠȪ ȒȓȗȟȠȐȖȭ ȟ ȖȟȝȜșȪȕȜȐȎțȖȓȚ ȖțȟȠȞȡȚȓțȠȜȐ ȘȜȠȜȞȩȚȖ ȜțȖ ȜȏȜȞȡȒȜȐȎțȩ Dzșȭ ȘȎȔȒȜ ȑȜ ȖțȟȠȞȡȚȓțȠȎ ȜȝȞȓȒȓșȓțȩ ȟȜȏȟȠȐȓțțȩȓ ȢȡțȘȤȖȖ Ȗ Ȓȓȗ ȟȠȐȖȭ ȘȜȠȜȞȩȓ ȥȓȞȓȝȎȦȘȎ ȚȜȔȓȠ ȐȩȝȜșțȭȠȪ Ȁȩ ȚȜȔȓȦȪ ȜȏȜȞȡȒȜȐȎȠȪ ȥȓȞȓȝȎȦȓȘ țȜȐȩȚȖ ȎșȚȎȕțȩȚȖ ȘȖȞȘȎȚȖ șȜ ȝȎȠȎȚȖ ȠȜȝȜȞȎȚȖ ȚȓȥȎȚȖ ȚȜȠȩȑȎȚȖ Ȗ ȐȓȞȟȠȎȘȎȚȖ Dzșȭ ȫȠȜȑȜ ȝȞȓȒȡȟȚȜȠȞȓțȩ ȟșȓȒȡȬȧȖȓ ȢȡțȘȤȖȖ z turtle.attack(): ȓȟșȖ ȥȓȞȓȝȎȦȘȎ ȫȘȖȝȖȞȜȐȎțȎ Țȓ ȥȜȚ ȜțȎ ȎȠȎȘȡȓȠ țȎȣȜȒȭȧȓȓȟȭ ȝȓȞȓȒ țȓȗ ȂȡțȘȤȖȭ ȐȜȕȐȞȎ ȧȎȓȠ ȕțȎȥȓțȖȓ true ȓȟșȖ ȎȠȎȘȎ ȝȞȜȖȕȐȓȒȓțȎ Ȑ ȝȞȜȠȖȐțȜȚ ȟșȡȥȎȓ ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ false țȎȝȞȖȚȓȞ ȓȟșȖ ȎȠȎȘȜ ȐȎȠȪ ȏȩșȜ țȓȥȓȑȜ z turtle.attackDown() ȎțȎșȜȑȖȥțȎ ȢȡțȘȤȖȖ turtle.attack() țȜ ȥȓȞȓȝȎȦȘȎ ȎȠȎȘȡȓȠ ȝȞȜȟȠȞȎțȟȠȐȜ ȝȜȒ ȟȜȏȜȗ z turtle.attackUp() ȎțȎșȜȑȖȥțȎ ȢȡțȘȤȖȖ turtle. attack() țȜ ȥȓȞȓȝȎȦȘȎ ȎȠȎȘȡȓȠ ȝȞȜȟȠȞȎțȟȠȐȜ țȎȒ ȟȜȏȜȗ z WXUWOH FUDIW ɤɨɥɢɱɟɫɬɜɨ ǽȞȜȖȕȐȜȒȖȠ ɤɨɥɢ ɱɟɫɬɜɨ ȝȞȓȒȚȓȠȜȐ ȖșȖ ȏșȜȘȜȐ Ȗȕ ȏșȜȘȜȐ ȟȜȒȓȞȔȎȧȖȣȟȭ Ȑ ȖțȐȓțȠȎȞȓ ȥȓȞȓȝȎȦȘȖ Ȏ ȑȜȠȜȐȡȬ ȝȞȜȒȡȘȤȖȬ ȝȜȚȓȧȎȓȠ Ȑ ȠȓȘȡȧȡȬ ȭȥȓȗȘȡ ȀȎȘ ȘȎȘ ȘȞȎȢȠ ȝȞȜȖȕȐȜȒȖȠȟȭ ȝȜ ȟȜȜȠȐȓȠ

ǿǽǶǿǼǸ ȂȁǻǸȄǶǷ

319


ȟȠȐȡȬȧȓȚȡ ȞȓȤȓȝȠȡ Ȓșȭ ȞȎȏȜȠȩ ȫȠȜȗ ȢȡțȘȤȖȖ țȓȜȏȣȜȒȖ ȚȜ ȞȎȕȚȓȧȎȠȪ ȏșȜȘȖ Ȑ ȖțȐȓțȠȎȞȓ Ȑ ȟȜȜȠȐȓȠȟȠȐȖ ȟ ȞȓȤȓȝȠȜȚ ȅȖȟșȓțțȩȗ ȎȞȑȡȚȓțȠ ɤɨɥɢɱɟɫɬɜɨ țȓȜȏȭȕȎȠȓșȓț dzȟșȖ Ȝț țȓ ȡȘȎȕȎț ȢȡțȘȤȖȭ ȖȕȑȜȠȜȐȖȠ ȟȠȜșȪȘȜ ȝȞȓȒȚȓȠȜȐ ȖșȖ ȏșȜ ȘȜȐ țȎ ȟȘȜșȪȘȜ ȣȐȎȠȖȠ ȖțȑȞȓȒȖȓțȠȜȐ Ȑ ȖțȐȓțȠȎȞȓ ǰȜȕȐȞȎ ȧȎȓȠ ȕțȎȥȓțȖȓ true ȓȟșȖ ȘȞȎȢȠ ȏȩș ȐȩȝȜșțȓț ȡȟȝȓȦțȜ Ȑ ȝȞȜȠȖȐțȜȚ ȟșȡȥȎȓ ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ false țȎȝȞȖȚȓȞ ȓȟșȖ ȖțȑȞȓȒȖȓțȠȩ țȓ ȟȜȜȠȐȓȠȟȠȐȡȬȠ ȞȓȤȓȝȠȡ z turtle.dig() ȐȩȘȎȝȩȐȎȓȠ ȖșȖ ȒȜȏȩȐȎȓȠ ȏșȜȘ ȝȓȞȓȒ ȥȓȞȓȝȎȦȘȜȗ dzȟșȖ ȥȓȞȓȝȎȦȘȎ ȜȏȜȞȡȒȜȐȎțȎ ȘȖȞȘȜȗ ȠȜ ȜțȎ ȒȜȏȩȐȎȓȠ ȏșȜȘȖ dzȟșȖ ȚȜȠȩȑȜȗ ȠȜ ȜȏȞȎȏȎȠȩȐȎȓȠ ȕȓȚșȬ Ȑ ȝȎȦțȬ ǰȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ true ȓȟșȖ ȜȝȓȞȎȤȖȭ ȕȎȐȓȞ ȦȖșȎȟȪ ȡȟȝȓȦțȜ Ȑ ȝȞȜȠȖȐțȜȚ ȟșȡȥȎȓ ȐȜȕȐȞȎȧȎȓȠ ȕțȎȥȓțȖȓ false. z turtle.digDown() ȎțȎșȜȑȖȥțȎ ȢȡțȘȤȖȖ turtle. dig() țȜ ȥȓȞȓȝȎȦȘȎ ȜȏȞȎȏȎȠȩȐȎȓȠ ȏșȜȘ ȝȜȒ ȟȜȏȜȗ z turtle.digUp() ȎțȎșȜȑȖȥțȎ ȢȡțȘȤȖȖ turtle.dig() țȜ ȥȓȞȓȝȎȦȘȎ ȜȏȞȎȏȎȠȩȐȎȓȠ ȏșȜȘ țȎȒ ȟȜȏȜȗ ǼȏȞȎȠȖ ȐțȖȚȎ țȖȓ ȥȠȜ ȫȠȎ ȢȡțȘȤȖȭ țȓ ȝȜȕȐȜșȭȓȠ ȜȏȞȎȏȎȠȩȐȎȠȪ ȕȓȚșȬ

ĠğęĖĢĔĔ 4=) ǿșȓȒȡȬȧȖȓ ȢȡțȘȤȖȖ ȜȠțȜȟȭȠȟȭ Ș ȐțȡȠȞȓțțȖȚ ȘȜȚȎțȒȎȚ ȖțȠȓȞȝȞȓȠȎȠȜȞȎ /XD ȝȜȫȠȜȚȡ ȐȐȜȒȖȠȪ ȖȚȭ ȚȜȒȡșȭ ȝȓȞȓȒ ȖȚȓțȓȚ ȢȡțȘȤȖȖ Ȓșȭ ȐȩȕȜȐȎ țȓ țȎȒȜ z error(ɫɨɨɛɳɟɧɢɟ) ȕȎȐȓȞȦȎȓȠ ȞȎȏȜȠȡ ȝȞȜȑȞȎȚȚȩ Ȗ ȐȩȐȜȒȖȠ ȠȓȘȟȠȜȐȜȓ ɫɨɨɛɳɟɧɢɟ ǿȠȞȜȘȜȐȩȗ ȎȞȑȡȚȓțȠ ɫɨɨɛɳɟɧɢɟ ȡȘȎȕȩȐȎȠȪ țȓȜȏȭȕȎȠȓșȪțȜ z exit() ȐȩȣȜȒȖȠ Ȗȕ ȖțȠȓȞȎȘȠȖȐțȜȗ ȜȏȜșȜȥȘȖ Ȁȩ ȚȜ ȔȓȦȪ ȖȟȝȜșȪȕȜȐȎȠȪ ȫȠȡ ȢȡțȘȤȖȬ ȠȜșȪȘȜ țȎȣȜȒȭȟȪ Ȑ ȖțȠȓ ȞȎȘȠȖȐțȜȗ ȜȏȜșȜȥȘȓ z print(ɫɬɪɨɤɚ ɱɢɫɥɨ ȜȠȜȏȞȎȔȎȓȠ ȕțȎȥȓțȖȓ ȎȞȑȡȚȓț ȠȎ ȟȠȞȜȘȎ ȥȖȟșȜ țȎ ȫȘȞȎțȓ Ȏ ȕȎȠȓȚ țȎȥȖțȎȓȠ țȜȐȡȬ ȟȠȞȜȘȡ ǮȞȑȡȚȓțȠ ɫɬɪɨɤɚ/ɱɢɫɥɨ ȡȘȎȕȩȐȎȠȪ țȓȜȏȭȕȎȠȓșȪțȜ ǰ ȫȠȜȚ ȟșȡȥȎȓ ȢȡțȘȤȖȭ ȝȞȜȟȠȜ țȎȥȖțȎȓȠ țȜȐȡȬ ȟȠȞȜȘȡ

320

ǽǾǶǹǼǴdzǻǶdz Ǯ


ěĜĔėĚĒđęĔđ č ĝěĔĝĚĖ ĔĐđęĞĔĠĔĖČĞĚĜĚĎ ǰ ȫȠȜȗ ȘțȖȑȓ ȝȞȖ țȎȝȖȟȎțȖȖ ȝȞȜȑȞȎȚȚ Țȩ ȖȟȝȜșȪȕȜȐȎșȖ ȖȒȓțȠȖȢȖȘȎȠȜȞȩ ȏșȜȘȜȐ 0LQH FUDIW. ǰ ȫȠȜȚ ȝȞȖșȜȔȓțȖȖ ȝȓȞȓȥȖȟșȓțȩ ȖȒȓțȠȖ ȢȖȘȎȠȜȞȩ ȏșȜȘȜȐ ȘȜȠȜȞȩȓ Ƞȩ ȚȜȔȓȦȪ ȖȟȝȜșȪ ȕȜȐȎȠȪ ȝȞȖ ȐțȓȟȓțȖȖ ȖȕȚȓțȓțȖȗ Ȑ ȞȎȟȟȚȜȠȞȓț țȩȗ țȎȚȖ ȘȜȒ ȖșȖ ȝȞȖ țȎȝȖȟȎțȖȖ țȜȐȩȣ ȝȞȜȑȞȎȚȚ ǽȞȓȔȒȓ ȥȓȚ ȞȎȟȟȚȜȠȞȓȠȪ ȟȝȖȟȜȘ ȖȒȓțȠȖȢȖȘȎȠȜȞȜȐ ȒȎȐȎȗ ȡȕțȎȓȚ ȘȎȘ ȚȜȔțȜ ȜȝȞȓȒȓșȖȠȪ ȖȒȓțȠȖȢȖȘȎȠȜȞ țȡȔțȜȑȜ ȏșȜȘȎ

ěĚĔĝĖ ĔĐđęĞĔĠĔĖČĞĚĜČ čėĚĖČ ȅȠȜȏȩ ȐȜȟȝȜșȪȕȜȐȎȠȪȟȭ ȘȎȘȖȚ șȖȏȜ ȏșȜȘȜȚ țȡȔțȜ ȕțȎȠȪ ȓȑȜ ȖȒȓțȠȖȢȖȘȎȠȜȞ ȐȓȒȪ ȞȎȕșȖȥțȩȓ ȠȖȝȩ ȏșȜȘȜȐ ȠȞȓȏȡ ȬȠ ȞȎȕșȖȥțȩȣ ȒȓȗȟȠȐȖȗ ǸȜȑȒȎ ȥȓȞȓȝȎȦȘȎ ȟȠȎșȘȖȐȎȓȠȟȭ ȟ ȘȎȘȖȚ țȖȏȡȒȪ ȏșȜȘȜȚ ȘȎȘ ȝȜȘȎȕȎțȜ țȎ ȞȖȟ ȥȠȜȏȩ ȜȝȞȓ ȒȓșȖȠȪ ȠȖȝ ȫȠȜȑȜ ȏșȜȘȎ ȖȟȝȜșȪȕȡȗ ȢȡțȘȤȖȬ turtle.inspect().

ǿǽǶǿǼǸ ǶDzdzǻȀǶȂǶǸǮȀǼǾǼǰ

321


ˀ̛̭͘ 1͘ ˋ̡̖̬̖̪̹͕̌̌ ̨̬̺̖̦̍̌​̦̌́ ̡ ̨̡̣̱̍ ̯̬̼̌̏ ̪̖̬̖̔ ̨̨̼̥̏̏̚ ̴̶̡̛̱̦​̛ turtle.inspect()

Ȁȩ ȚȜȔȓȦȪ ȝȜșȡȥȖȠȪ ȐȟȬ ȖțȢȜȞȚȎȤȖȬ ȟȐȭȕȎțțȡȬ ȟ ȏșȜȘȜȚ ȐȩȕȐȎȐ ȢȡțȘȤȖȬ turtle.inspect() Ȗ ȜȕțȎȘȜȚȖȐ ȦȖȟȪ ȟ ȠȎȏșȖȥțȩȚ ȕțȎȥȓțȖȓȚ ȘȜȠȜȞȜȓ ȐȓȞțȓȠ ȢȡțȘȤȖȭ ǸșȬȥ 'name' Ȑ ȐȜȕȐȞȎȧȓțțȜȗ ȠȎȏșȖȤȓ ȟȜȒȓȞȔȖȠ ȕțȎȥȓțȖȓ ȖȒȓțȠȖȢȖȘȎȠȜȞȎ ȏșȜȘȎ ȟ ȘȜȠȜȞȩȚ ȟȠȜșȘțȡșȎȟȪ ȥȓȞȓȝȎȦȘȎ ǻȎȝȞȖȚȓȞ ȓȟșȖ ȥȓȞȓȝȎȦȘȎ țȎȣȜȒȖȠȟȭ ȝȓȞȓȒ ȏșȜȘȜȚ ȠȞȎȐȩ Ȗ Ƞȩ ȐȩȕȩȐȎȓȦȪ ȢȡțȘȤȖȬ turtle.inspect() Ȑ ȜȏȜșȜȥȘȓ /XD ȐȜȕȐȞȎȧȎȓȚȎȭ ȠȎȏșȖȤȎ ȏȡȒȓȠ ȐȩȑșȭȒȓȠȪ ȠȎȘ lua> turtle.inspect() true { state = { snowy = false, }, name = «minecraft:grass», metadata = 0, }

ǶȒȓțȠȖȢȖȘȎȠȜȞ ȏșȜȘȎ ȠȞȎȐȩ ² "minecraft:grass". ǰ ȏȜșȪȦȖțȟȠȐȓ ȟșȡȥȎȓȐ ȖȒȓțȠȖȢȖȘȎȠȜȞȎ ȐȝȜșțȓ ȒȜȟȠȎȠȜȥ țȜ ȥȠȜȏȩ ȖȟȝȜșȪȕȜȐȎȠȪ țȡȔțȩȓ ȏșȜȘȖ ǻȜ Ȑ țȓȘȜȠȜȞȩȣ ȟșȡ ȥȎȭȣ ȚȜȑȡȠ ȝȜȠȞȓȏȜȐȎȠȪȟȭ Ȗ ȒȞȡȑȖȓ ȘșȬȥȖ ȠȎȏșȖȤȩ ȘȜȠȜ ȞȡȬ ȐȜȕȐȞȎȧȎȓȠ ȢȡțȘȤȖȭ turtle.inspect().

322

ǽǾǶǹǼǴdzǻǶdz ǯ


ĜČēėĔģĔī ĘđĒĐğ čėĚĖČĘĔ ĝ ĚĐĔęČĖĚĎħĘ ĔĐđęĞĔĠĔĖČĞĚĜĚĘ10 ǻȓȘȜȠȜȞȩȓ ȏșȜȘȖ ȖȚȓȬȠ ȜȒȖț Ȗ ȠȜȠ Ȕȓ ȖȒȓțȠȖȢȖȘȎȠȜȞ Ȗ ȠȎ ȘȖȚ ȜȏȞȎȕȜȚ Ȓșȭ Ȗȣ ȜȒțȜȕțȎȥțȜȗ ȖȒȓțȠȖȢȖȘȎȤȖȖ țȓȜȏȣȜ ȒȖȚȩ ȒȞȡȑȖȓ ȘșȬȥȖ Ȗȕ ȟȜȜȠȐȓȠȟȠȐȡȬȧȓȗ ȠȎȏșȖȤȩ ȒȎțțȩȣ ǻȎȝȞȖȚȓȞ ȒȡȏȜȐȩȓ ȒȜȟȘȖ Ȗ ȓșȜȐȩȓ ȒȜȟȘȖ ȖȚȓȬȠ ȜȒȖțȎȘȜ Ȑȩȗ ȖȒȓțȠȖȢȖȘȎȠȜȞ11 "minecraft:planks" țȜ Ȗȣ ȘșȬȥȖ metadata ȖȚȓȬȠ ȞȎȕțȩȓ ȕțȎȥȓțȖȭ dzȟșȖ ȐȩȕȐȎȠȪ ȢȡțȘȤȖȬ turtle.inspect() ȘȜȑȒȎ ȥȓȞȓȝȎȦȘȎ țȎȣȜȒȖȠȟȭ ȝȓȞȓȒ ȒȡȏȜ ȐȩȚȖ ȒȜȟȘȎȚȖ ȢȡțȘȤȖȭ ȐȜȕȐȞȎȧȎȓȠ ȟșȓȒȡȬȧȡȬ ȠȎȏșȖȤȡ lua> turtle.inspect() true { state = { variant = "oak", }, name = "minecraft:planks", metadata = 0, }

ǻȜ ȓȟșȖ ȥȓȞȓȝȎȦȘȎ țȎȣȜȒȖȠȟȭ ȝȓȞȓȒ ȓșȜȐȩȚȖ ȒȜȟȘȎȚȖ ȢȡțȘȤȖȭ ȐȜȕȐȞȎȧȎȓȠ ȟșȓȒȡȬȧȡȬ ȠȎȏșȖȤȡ lua> turtle.inspect() true { state = { variant = "spruce", }, name = "minecraft:grass", metadata = 1, }

ȃȜȠȭ ȖȒȓțȠȖȢȖȘȎȠȜȞ ȜȏȜȖȣ ȏșȜȘȜȐ ȜȒȖț Ȗ ȠȜȠ Ȕȓ ² "minecraft:planks" ȕțȎȥȓțȖȭ ȘșȬȥȎ metadata ȞȎȕțȩȓ 10 11

С версии 1.13 разные (прим. перев.) Идентификаторы в списке приведены для версии Minecraft 1.13 (прим. перев.).

ǿǽǶǿǼǸ ǶDzdzǻȀǶȂǶǸǮȀǼǾǼǰ

323


(0 Ȓșȭ ȒȡȏȎ Ȗ 1 Ȓșȭ ȓșȖ ȀȎȘȖȚ ȜȏȞȎȕȜȚ ȫȠȖ ȒȐȎ ȠȖȝȎ ȏșȜ ȘȜȐ ȚȜȔțȜ ȞȎȕșȖȥȎȠȪ ȀȎȏșȖȤȎ ȒȎțțȩȣ ȟȜȒȓȞȔȖȠ ȓȧȓ ȜȒȖț ȘșȬȥ state ȘȜȠȜȞȜȚȡ ȟȜȜȠȐȓȠȟȠȐȡȓȠ ȝȓȞȓȚȓțțȎȭ variant. ǵțȎȥȓțȖȓ ȫȠȜȗ ȝȓȞȓȚȓțțȜȗ ȠȎȘȔȓ ȝȞȓȒȜȟȠȎȐșȭȓȠ ȒȜȝȜșțȖ ȠȓșȪțȡȬ ȖțȢȜȞȚȎȤȖȬ Ȝ ȕȎȝȞȎȦȖȐȎȓȚȜȚ ȏșȜȘȓ

ĝ ěĔĝĚĖ ĔĐđęĞĔĠĔĖČĞĚĜĚĎ čėĚĖĚĎ ǰ ȠȎȏș ȝȓȞȓȥȖȟșȓțȩ ȖȒȓțȠȖȢȖȘȎȠȜȞȩ ȏȜșȪȦȖțȟȠȐȎ ȏșȜ ȘȜȐ ȟ ȘȜȠȜȞȩȚȖ ȚȜȔȓȠ ȐȕȎȖȚȜȒȓȗȟȠȐȜȐȎȠȪ ȠȐȜȭ ȥȓȞȓȝȎȦ ȘȎ ǼȒțȎȘȜ Ȑ ȫȠȜȗ ȠȎȏșȖȤȓ țȓ ȡȘȎȕȎțȩ ȞȎȕșȖȥȖȭ ȚȓȔȒȡ ȏșȜȘȎȚȖ ȘȜȠȜȞȩȓ ȖȟȝȜșȪȕȡȬȠ ȜȒȖțȎȘȜȐȩȓ ȖȒȓțȠȖȢȖȘȎ ȠȜȞȩ ǻȎȝȞȖȚȓȞ Ȑ ȠȎȏșȖȤȓ ȡȘȎȕȎț ȖȒȓțȠȖȢȖȘȎȠȜȞ ȒȜȟȜȘ țȜ țȓ ȡȘȎȕȎțȩ ȘșȬȥȖ ȝȜ ȘȜȠȜȞȩȚ ȞȎȕșȖȥȎȬȠȟȭ ȒȡȏȜȐȩȓ Ȗ ȓșȜȐȩȓ ȒȜȟȘȖ ȀȎȘȖȚ ȜȏȞȎȕȜȚ ȓȟșȖ Ƞȓȏȓ ȝȜțȎȒȜȏȖȠȟȭ țȎȗȠȖ ȞȎȕțȖȤȡ ȚȓȔȒȡ ȏșȜȘȎȚȖ ȟ ȜȒȖțȎȘȜȐȩȚ ȖȒȓțȠȖȢȖ ȘȎȠȜȞȜȚ ȝȞȖȒȓȠȟȭ ȐȜȟȝȜșȪȕȜȐȎȠȪȟȭ ȢȡțȘȤȖȓȗ turtle.inspect(). ˃̣̌̍͘ ϭ͘ ʰ̴̡̨̛̛̖̦̯̯̬̼̔̌ ̨̡̨̣̍̏ ̛ ̨̪̬̖̥̖̯̔̏ ̏ ̛̬̖̐ DŝŶĞĐƌĂŌ 12 ʯ̸̨̡̦̌

ʻ̛̦̖̌̏̌̚

ʰ̴̡̨̛̛̖̦̯̯̬̔̌

ʤ̶̡̛̖̌̏̌́ ̖̬̔̏̽

'minecraft:acacia _ door'

ʤ̶̡̛̖̼̜̌̏ ̨̬̌̍̚

'minecraft:acacia _ fence'

ʤ̶̡̛̖̌̏̌́ ̡̡̛̣̯̌̌

'minecraft:acacia _ fence _ gate'

ʤ̶̡̛̖̼̖̌̏ ̡̛̭̯̱̪̖̦̽

'minecraft:acacia _ stairs'

ʤ̡̛̛̛̯̬̱̺̖̏̀ ̬̖̣̭̼̽

'minecraft:activator _ rail'

ʤ̣̥̦̌̌́̚ ̬̱̔̌

'minecraft:diamond _ ore'

Идентификаторы в списке приведены для версии Minecraft 1.13 (прим. перев.). 12

324

ǽǾǶǹǼǴdzǻǶdz ǯ


ʯ̸̨̡̦̌

ʻ̛̦̖̌̏̌̚

ʰ̴̡̨̛̛̖̦̯̯̬̔̌

ʤ̣̥̦̼̜̌̚ ̨̡̣̍

'minecraft:diamond _ block'

ʤ̬̱̍̚

'minecraft:melon'

ʥ̨̡̖̬̔

'minecraft:bedrock'

'minecraft:white _

ʥ̖̣̌́ ̨̣̱̬̦̐̌̏̌̚​̦̌́ ̡̡̛̖̬̥̌̌ glazed _ terracotta' ʥ̖̣̼̜ ̡̨̹̣̖̬̼̜̌̏ ̡̛̺́

'minecraft:white _ shulker _ box'

ʥ̨̖̬̖̏̌́̚ ̖̬̔̏̽

'minecraft:birch _ door'

ʥ̨̖̬̖̼̜̏̚ ̨̬̌̍̚

'minecraft:birch _ fence'

ʥ̨̖̬̖̏̌́̚ ̡̡̛̣̯̌̌

'minecraft:birch _ fence _ gate'

ʥ̨̖̬̖̼̖̏̚ ̡̛̭̯̱̪̖̦̽

'minecraft:birch _ stairs'

ʥ̨̖̯̦ ;̖̣̼̜̍Ϳ

'minecraft:white _ concrete'

ʥ̨̛̬̀̏̌́̚ ̨̣̱̬̦̐̌̏̌̚​̦̌́ ̡̡̛̖̬̥̌̌

'minecraft:cyan _ glazed _ terracotta'

ʥ̨̛̬̼̜̀̏̚ ̡̨̹̣̖̬̼̜̌̏ ̡̛̺́

'minecraft:cyan _ shulker _ box'

ʥ̨̡̣ ̸̡̨̨̨̛̬̦̖̏̐ ̛̬̐̍̌

'minecraft:brown _ mushroom _ block'

ʥ̨̡̣ ̡̨̨̬̭̦̌̐ ̛̬̐̍̌

'minecraft:red _ mushroom _ block'

ʥ̨̡̣ ̨̦̬̭̯̌̌ ̛̚ ʻ̖̖̬̌̚

'minecraft:nether _ wart _ block'

ǿǽǶǿǼǸ ǶDzdzǻȀǶȂǶǸǮȀǼǾǼǰ

325


ʯ̸̨̡̦̌

ʻ̛̦̖̌̏̌̚

ʰ̴̡̨̛̛̖̦̯̯̬̔̌

ʥ̨̡̣ ̨̪̬̯̣̌̌ ̏ ˑ̦̔

'minecraft:end _ gateway'

ʥ̨̡̣ ̛̛̭̣̚

'minecraft:slime _ block'

ʥ̨̡̣ ̭̦̖̐̌

'minecraft:snow _ block'

ʥ̨̣̹̖̬̱̦̽̐̌́̚ ̨̖̭̏̏̌́ ̛̪̣̭̯̦̌̌

'minecraft:heavy _ weighted _ pressure _ plate' 'minecraft:acacia _ log'

ʥ̨̬̖̦̏ ;ʤ̶̡̛̌́ͬ˃̖̥̦̼̜ ̱̔̍Ϳ

'minecraft:dark _ oak _ log'

ʥ̱̣̼̙̦̌́ ̨̬̐̌̔̌

'minecraft:cobblestone _ wall'

ʥ̡̛̱̣̼̙̦

'minecraft:cobblestone'

ʥ̱̣̼̙̦̼̖ ̡̛̭̯̱̪̖̦̽

'minecraft:cobblestone _ stairs'

ʦ̡̖̬̭̯̌

'minecraft:crafting _ table'

ʦ̵̨̱̔̚

'minecraft:light _ weighted _ pressure _ plate' 'minecraft:air'

ʦ̨̨̡̬̦̌

'minecraft:hopper'

ʦ̼̬̭̼̯̖̣̍̌̏̌̽

'minecraft:dropper'

ʦ̨̡̼̭̌́ ̯̬̌̏̌

'minecraft:tall _ grass'

ʦ̨̖̭̏̌́ ̛̪̣̭̯̦̌̌

PLQHFUDIW VXQÀ RZHU

'minecraft:lilac'

ʦ̨̡̛̼̭̖ ̶̖̯̼̏ ;̬̦̼̖̌̚Ϳ

'minecraft:tall _ grass' 'minecraft:large _ fern' 'minecraft:rose _ bush' 'minecraft:peony'

326

ǽǾǶǹǼǴdzǻǶdz ǯ


ʯ̸̨̡̦̌

ʻ̛̦̖̌̏̌̚

ʰ̴̡̨̛̛̖̦̯̯̬̔̌

ʧ̛̣̦̌ ;̨̡̣̍Ϳ

'minecraft:clay'

ʧ̨̨̣̏̌ ̨̥̍̌ ;̬̦̼̖̌̚Ϳ

'minecraft:skeleton _ skull' 'minecraft:skeleton _ wall _ skull' 'minecraft:wither _ skeleton _ skull' 'minecraft:wither _ skeleton _ wall _ skull' 'minecraft:zombie _ head' 'minecraft:zombie _ wall _ head' 'minecraft:player _ head' 'minecraft:player _ wall _ head' 'minecraft:creeper _ head' 'minecraft:creeper _ wall _ head' 'minecraft:dragon _ head' 'minecraft:dragon _ wall _ head'

ʧ̨̣̱̍̌́ ̨̣̱̬̦̐̌̏̌̚​̦̌́ ̡̡̛̖̬̥̌̌

'minecraft:light _ blue _ glazed _ terracotta'

ʧ̨̨̣̱̜̍ ̡̨̹̣̖̬̼̜̌̏ ̡̛̺́

'minecraft:light _ blue _ shulker _ box'

ʧ̛̬̜̌̏

'minecraft:gravel'

ʧ̡̱̍̌

'minecraft:sponge'

ʪ̸̡̛̯̌ ̨̨̦̖̦̔̏̐ ̭̖̯̏̌

'minecraft:daylight _ detector'

ʪ̖̬̏̽ ̛̚ ̨̨̯̖̥̦̐ ̱̔̍̌

'minecraft:dark _ oak _ door'

ʪ̖̬̏̽ ̛̚ ̸̨̡̨̨̛̯̬̪̖̭̐ ̖̬̖̔̏̌

'minecraft:jungle _ door'

ǿǽǶǿǼǸ ǶDzdzǻȀǶȂǶǸǮȀǼǾǼǰ

327


ʯ̸̨̡̦̌

ʻ̛̦̖̌̏̌̚

ʰ̴̡̨̛̛̖̦̯̯̬̔̌

ʪ̖̬̖̦̏́​̦̌́ ̡̨̡̦̪̌

'minecraft:oak _ button' 'minecraft:oak _ slab' 'minecraft:spruce _ slab'

ʪ̖̬̖̦̏́​̦̌́ ̛̪̣̯̌

'minecraft:birch _ slab' 'minecraft:jungle _ slab' 'minecraft:acacia _ slab' 'minecraft:dark _ oak _ slab'

ʪ̛̛̦̥̯̌

'minecraft:tnt' 'minecraft:oak _ planks' 'minecraft:spruce _ planks'

ʪ̨̡̛̭ ;̬̦̼̖̌̚Ϳ

'minecraft:birch _ planks' 'minecraft:jungle _ planks' 'minecraft:acacia _ planks' 'minecraft:dark _ oak _ planks' 'minecraft:oak _ log' 'minecraft:spruce _ log'

ʪ̛̬̖̖̭̦̏̌ ;ʥ̨̬̖̦̏Ϳ

'minecraft:birch _ log' 'minecraft:jungle _ log' 'minecraft:acacia _ log' 'minecraft:dark _ oak _ log'

328

ʪ̨̱̍̏̌́ ̖̬̔̏̽

'minecraft:oak _ door'

ʪ̨̱̍̏̌́ ̛̦̙̥̦̌̌́ ̛̪̣̯̌

'minecraft:oak _ pressure _ plate'

ʪ̨̱̼̜̍̏ ̨̬̌̍̚

'minecraft:oak _ fence'

ʪ̨̱̼̖̍̏ ̡̛̭̯̱̪̖̦̽

'minecraft:oak _ stairs'

ǽǾǶǹǼǴdzǻǶdz ǯ


ʯ̸̨̡̦̌

ʻ̛̦̖̌̏̌̚

ʰ̴̡̨̛̛̖̦̯̯̬̔̌

ʪ̨̱̼̜̍̏ ̡̣̀

'minecraft:oak _ trapdoor'

ʫ̨̣̏̌́ ̖̬̔̏̽

'minecraft:spruce _ door'

ʫ̨̣̏̌́ ̡̡̛̣̯̌̌

'minecraft:spruce _ fence _ gate'

ʫ̨̣̼̜̏ ̨̬̌̍̚

'minecraft:spruce _ fence'

ʫ̨̣̼̖̏ ̡̛̭̯̱̪̖̦̽

'minecraft:spruce _ stairs'

ʮ̖̣̖̦̌́̚ ̖̬̔̏̽

'minecraft:iron _ door'

ʮ̖̣̖̦̌́̚ ̬̱̔̌

'minecraft:iron _ ore'

ʮ̖̣̖̦̼̖̚ ̪̬̱̯̽́

'minecraft:iron _ bars'

ʮ̖̣̖̦̼̜̚ ̨̡̣̍

'minecraft:iron _ block'

ʮ̖̣̖̦̼̜̚ ̡̣̀

'minecraft:iron _ trapdoor'

ʮ̖̣̯̌́ ̨̣̱̬̦̐̌̏̌̚​̦̌́ ̡̡̛̖̬̥̌̌

'minecraft:yellow _ glazed _ terracotta'

ʮ̖̣̯̼̜ ̡̨̹̣̖̬̼̜̌̏ ̡̛̺́

'minecraft:yellow _ shulker _ box'

ʯ̨̬̌̍ ̛̚ ̨̨̯̖̥̦̐ ̱̔̍̌

'minecraft:dark _ oak _ fence'

ʯ̨̬̌̍ ̛̚ ̸̨̡̨̨̛̯̬̪̖̭̐ ̖̬̖̔̏̌

'minecraft:jungle _ fence'

ǿǽǶǿǼǸ ǶDzdzǻȀǶȂǶǸǮȀǼǾǼǰ

329


ʯ̸̨̡̦̌

330

ʻ̛̦̖̌̏̌̚

ʰ̴̡̨̛̛̖̦̯̯̬̔̌

ʯ̬̙̖̦̌̌​̦̼̖ ̨̡̛̣̍ ;̬̦̼̖̌̚Ϳ

'minecraft:infested _ stone' 'minecraft:infested _ cobblestone' 'minecraft:infested _ stone _ bricks' 'minecraft:infested _ mossy _ stone _ bricks' 'minecraft:infested _ cracked _ stone _ bricks' 'minecraft:infested _ chiseled _ stone _ bricks'

ʯ̖̣̖̦̌́ ̨̣̱̬̦̐̌̏̌̚​̦̌́ ̡̡̛̖̬̥̌̌

'minecraft:green _ glazed _ terracotta'

ʯ̖̣̖̦̼̜ ̡̨̹̣̖̬̼̜̌̏ ̡̛̺́

'minecraft:green _ shulker _ box'

ʯ̡̖̣̖̬̽̏̌̌

'minecraft:brewing _ stand'

ʯ̖̥̣́

'minecraft:dirt'

ʯ̨̨̣̯̌́ ̬̱̔̌

'minecraft:gold _ ore'

ʯ̨̨̨̣̯̜ ̨̡̣̍

'minecraft:gold _ block'

ʰ̱̥̬̱̦̔̌́̚ ̬̱̔̌

'minecraft:emerald _ ore'

ʰ̱̥̬̱̦̼̜̔̚ ̨̡̣̍

'minecraft:emerald _ block'

ʶ̡̨̌̌

'minecraft:cocoa'

ʶ̡̯̱̭̌

'minecraft:cactus'

ʶ̡̛̣̯̌̌

'minecraft:fence _ gate'

ǽǾǶǹǼǴdzǻǶdz ǯ


ʯ̸̨̡̦̌

ʻ̛̦̖̌̏̌̚

ʰ̴̡̨̛̛̖̦̯̯̬̔̌

ʶ̡̛̣̯̌̌ ̛̚ ̨̨̯̖̥̦̐ ̱̔̍̌

'minecraft:dark _ oak _ fence _ gate'

ʶ̡̛̣̯̌̌ ̛̚ ̸̨̡̨̨̛̯̬̪̖̭̐ ̖̬̖̔̏̌

'minecraft:jungle _ fence _ gate'

ʶ̥̖̦̌​̦̌́ ̡̨̡̦̪̌

'minecraft:stone _ button'

ʶ̥̖̦̌​̦̌́ ̛̦̙̥̦̌̌́ ̛̪̣̯̌

'minecraft:stone _ pressure _ plate'

ʶ̥̖̦̌​̦̌́ ̛̪̣̯̌

'minecraft:stone _ slab'

ʶ̥̖̦̌​̦̌́ ̛̪̣̯̌

ʶ̥̖̦̌​̦̼̖ ̸̡̛̛̛̬̪

'minecraft:stone _ brick _ slab' 'minecraft:nether _ brick _ slab' 'minecraft:quartz _ slab' 'minecraft:stone _ bricks' 'minecraft:mossy _ stone _ bricks' 'minecraft:cracked _ stone _ bricks' 'minecraft:chiseled _ stone _ bricks'

ʶ̥̖̦̌​̦̼̜ ̨̱̣̐̽

'minecraft:coal _ ore'

ʶ̥̖̦̌̽

'minecraft:stone'

ʶ̴̨̬̯̖̣̌̽

'minecraft:potato'

ʶ̶̬̖̼̖̏̌̏ ̡̛̭̯̱̪̖̦̽

'minecraft:quartz _ stairs'

ʶ̶̬̖̼̜̏̌̏ ̨̡̣̍

'minecraft:quartz _ block'

ʶ̡̛̖̬̥̌̌ ;̖̣̍̌́Ϳ

'minecraft:white _ terracotta'

ʶ̸̛̛̛̬̪

'minecraft:bricks'

ǿǽǶǿǼǸ ǶDzdzǻȀǶȂǶǸǮȀǼǾǼǰ

331


ʯ̸̨̡̦̌

ʻ̛̦̖̌̏̌̚

ʰ̴̡̨̛̛̖̦̯̯̬̔̌

ʶ̸̛̛̬̪̦̼̖ ̡̛̭̯̱̪̖̦̽

'minecraft:brick _ stairs'

ʶ̛̦̙̦̌́ ̨̡̪̣̌

'minecraft:bookshelf'

ʶ̨̖̬̏ ;̖̣̼̜̍Ϳ

'minecraft:white _ carpet'

ʶ̨̨̥̪̬̯̬̌̌

'minecraft:comparator'

ʶ̸̨̛̬̦̖̏̌́ ̨̣̱̬̦̐̌̏̌̚​̦̌́ ̡̡̛̖̬̥̌̌

'minecraft:brown _ glazed _ terracotta'

ʶ̸̨̛̬̦̖̼̜̏ ̛̬̐̍

'minecraft:brown _ mushroom' 'minecraft:brown _ shulk-

ʶ̸̨̛̬̦̖̼̜̏ ̡̨̹̣̖̬̼̜̌̏ ̡̛̺́ er _ box' ʶ̨̭̯̦̼̜ ̨̡̣̍

'minecraft:bone _ block'

ʶ̨̯̖̣

'minecraft:cauldron'

ʶ̬̭̦̌̌́ ̨̣̱̬̦̐̌̏̌̚​̦̌́ ̡̡̛̖̬̥̌̌

'minecraft:red _ glazed _ terracotta' 'minecraft:red _ nether _

ʶ̬̭̦̼̖̌ ̨̛̦̖̖̬̯̼̖̏̚ ̸̡̛̛̛̬̪ bricks'

332

ʶ̬̭̦̼̜̌ ̛̬̐̍

'minecraft:red _ mushroom'

ʶ̬̭̦̼̜̌ ̸̡̛̪̖̭̦̌

'minecraft:red _ sandstone'

ʶ̬̭̦̼̜̌ ̡̨̹̣̖̬̼̜̌̏ ̡̛̺́

'minecraft:red _ shulker _ box'

ʶ̨̬̯̏̌̽ ;̖̣̍̌́Ϳ

'minecraft:white _ bed'

ǽǾǶǹǼǴdzǻǶdz ǯ


ʯ̸̨̡̦̌

ʻ̛̦̖̌̏̌̚

ʰ̴̡̨̛̛̖̦̯̯̬̔̌

ʶ̡̬̀

'minecraft:tripwire _ hook'

ʶ̡̛̱̹̦̏̌

'minecraft:lily _ pad'

ʸ̨̛̱̬̯̌̏̌́̚ ̬̱̔̌

'minecraft:lapis _ ore'

ʸ̨̛̱̬̯̼̜̌̏̚ ̨̡̣̍

'minecraft:lapis _ block'

ʸ̨̜̥̌̏̌́ ̨̣̱̬̦̐̌̏̌̚​̦̌́ ̡̡̛̖̬̥̌̌

'minecraft:lime _ glazed _ terracotta'

ʸ̨̜̥̼̜̌̏ ̡̨̹̣̖̬̼̜̌̏ ̡̛̺́

'minecraft:lime _ shulker _ box'

ʸ̖̔

'minecraft:ice'

ʸ̶̛̖̭̯̦̌

'minecraft:ladder'

ʸ̛̦̼̌

'minecraft:vine'

ʸ̡̛̛̪̜ ̨̪̬̹̖̦̽

'minecraft:sticky _ piston' 'minecraft:oak _ leaves' 'minecraft:spruce _ leaves' 'minecraft:birch _ leaves'

ʸ̛̭̯̽́

'minecraft:jungle _ leaves' 'minecraft:acacia _ leaves' 'minecraft:dark _ oak _ leaves'

ʺ̥̌̐̌

'minecraft:magma _ block'

ǿǽǶǿǼǸ ǶDzdzǻȀǶȂǶǸǮȀǼǾǼǰ

333


ʯ̸̨̡̦̌

334

ʻ̛̦̖̌̏̌̚

ʰ̴̡̨̛̛̖̦̯̯̬̔̌

ʺ̡̌

'minecraft:poppy'

ʺ̡̌́

'minecraft:beacon'

ʺ̖̬̯̼̜̏ ̡̱̭̯

'minecraft:dead _ bush'

ʺ̶̛̛̖̣̜

'minecraft:mycelium'

ʺ̨̡̨̬̏̽

'minecraft:carrot'

ʺ̨̡̨̬̭̜ ̴̨̦̬̌̽

'minecraft:sea _ lantern'

ʻ̣̯̖̣̌̍̀̔̌̽

'minecraft:observer'

ʻ̡̨̣̦̌̏̌̽́

'minecraft:anvil'

ʻ̨̬̭̯̌ ̛̚ ʻ̖̖̬̌̚

'minecraft:nether _ wart'

ʻ̖̖̬̚Ͳ̶̡̬̖̏̌̏̌́ ̬̱̔̌

'minecraft:nether _ quartz _ ore'

ʻ̖̖̬̚Ͳ̨̪̬̯̣̌

'minecraft:nether _ portal'

ʻ̛̖̖̬̯̚

'minecraft:netherrack'

ʻ̨̛̖̖̬̯̼̖̏̚ ̸̡̛̛̛̬̪

'minecraft:nether _ bricks'

ʻ̨̛̖̖̬̯̼̜̏̚ ̨̬̌̍̚

'minecraft:nether _ brick _ fence'

ʻ̨̛̖̖̬̯̼̖̏̚ ̡̛̭̯̱̪̖̦̽

'minecraft:nether _ brick _ stairs'

ǽǾǶǹǼǴdzǻǶdz ǯ


ʯ̸̨̡̦̌

ʻ̛̦̖̌̏̌̚

ʰ̴̡̨̛̛̖̦̯̯̬̔̌

ʻ̨̯̦̼̜ ̨̡̣̍

'minecraft:note _ block'

ʽ̨̙̍​̙̖̦​̦̌́ ̛̣̦̐̌

'minecraft:hardened _ clay'

ʽ̛̛̭̦̍̔̌

'minecraft:obsidian'

ʽ̨̦̐̽

PLQHFUDIW ¿ UH

ʽ̸̡̛̱̦̔̏̌

'minecraft:dandelion'

ʽ̬̦̙̖̌̏̌́ ̨̣̱̬̦̐̌̏̌̚​̦̌́ ̡̡̛̖̬̥̌̌

'minecraft:orange _ glazed _ terracotta'

ʽ̬̦̙̖̼̜̌̏ ̡̨̹̣̖̬̼̜̌̏ ̡̛̺́

'minecraft:orange _ shulker _ box'

ʿ̛̱̯̦̌̌

'minecraft:cobweb'

ʿ̹̦̌́

'minecraft:farmland'

ʿ̨̡̖̭

'minecraft:sand'

ʿ̨̡̖̭ ̱̹̔

'minecraft:soul _ sand'

ʿ̸̡̛̖̭̦̌

'minecraft:sandstone'

ʿ̸̡̨̛̖̭̦̼̖̌̏ ̡̛̭̯̱̪̖̦̽

'minecraft:sandstone _ stairs'

ʿ̸̖̽

'minecraft:furnace'

ʿ̛̣̯̌ ̛̚ ̡̨̨̬̭̦̌̐ ̸̡̛̪̖̭̦̌̌

'minecraft:smooth _ red _ sandstone'

ǿǽǶǿǼǸ ǶDzdzǻȀǶȂǶǸǮȀǼǾǼǰ

335


ʯ̸̨̡̦̌

336

ʻ̛̦̖̌̏̌̚

ʰ̴̡̨̛̛̖̦̯̯̬̔̌

ʿ̨̣̯̦̼̜ ̣̖̔

'minecraft:packed _ ice'

ʿ̨̨̛̯̬̯̖̣̏̽

'minecraft:repeater'

ʿ̨̬̯̣̌ ̏ ˑ̦̔

'minecraft:end _ portal'

ʿ̨̬̹̖̦̽

'minecraft:piston'

ʿ̛̛̬̥̬̦̌̚

'minecraft:prismarine'

ʿ̨̛̬̬̼̯̖̣̐̏̌̽

'minecraft:jukebox'

ʿ̱̬̪̱̬

'minecraft:purpur _ block'

ʿ̱̬̪̱̬̦̌́ ̨̣̱̬̦̐̌̏̌̚​̦̌́ ̡̡̛̖̬̥̌̌

'minecraft:magenta _ glazed _ terracotta'

ʿ̱̬̪̱̬̦̼̜ ̡̨̹̣̖̬̼̜̌̏ ̡̛̺́

'minecraft:magenta _ shulker _ box'

ʿ̨̱̬̪̱̬̏̌́ ̛̪̣̯̌

'minecraft:purpur _ slab'

ʿ̨̱̬̪̱̬̼̖̏ ̡̛̭̯̱̪̖̦̽

'minecraft:purpur _ stairs'

ʿ̨̱̬̪̱̬̼̜̏ ̨̛̪̣̦

'minecraft:purpur _ pillar'

ʿ̶̛̹̖̦̌

'minecraft:wheat'

ˀ̸̡̛̯̌̔̌̚

'minecraft:dispenser'

ˀ̡̥̌̌ ̨̪̬̯̣̌̌ ̏ ˑ̦̔

'minecraft:end _ portal _ frame'

ˀ̭̌​̡̛̭̦̌̔

'minecraft:mob _ spawner'

ǽǾǶǹǼǴdzǻǶdz ǯ


ʯ̸̨̡̦̌

ʻ̛̦̖̌̏̌̚

ʰ̴̡̨̛̛̖̦̯̯̬̔̌

ˀ̛̭̯̖̦̖̌ ̵̨̬̱̭̌

'minecraft:chorus _ plant'

ˀ̨̨̖̭̯̱̦̔̏̌́ ̬̱̔̌

'minecraft:redstone _ ore'

ˀ̨̨̖̭̯̱̦̼̜̔̏ ̨̡̣̍

'minecraft:redstone _ block'

ˀ̨̨̖̭̯̱̦̼̜̔̏ ̴̡̖̣̌ ;̡̛̯̦̼̜̌̏Ϳ

'minecraft:redstone _ torch'

ˀ̨̨̖̭̯̱̦̼̜̔̏ ̴̡̖̣̌ ;̡̛̦̖̯̦̼̜̌̏Ϳ

'minecraft:redstone _ wall _ torch'

ˀ̨̨̖̭̯̱̦̼̜̔̏ ̴̨̦̬̌̽

'minecraft:redstone _ lamp'

ˀ̖̣̭̼̽

'minecraft:rail'

ˀ̖̣̭̼̽ ̭ ̸̡̨̛̯̥̔̌

'minecraft:detector _ rail'

ˀ̨̨̏̌́̚ ̨̣̱̬̦̐̌̏̌̚​̦̌́ ̡̡̛̖̬̥̌̌

'minecraft:pink _ glazed _ terracotta'

ˀ̨̨̼̜̏̚ ̡̨̹̣̖̬̼̜̌̏ ̡̛̺́

'minecraft:pink _ shulker _ box'

ˀ̸̼̌̐

'minecraft:lever' 'minecraft:oak _ sapling' 'minecraft:spruce _ sapling'

ˁ̶̙̖̦̖̌ ;̬̦̼̖̌̚Ϳ

'minecraft:birch _ sapling' 'minecraft:jungle _ sapling' 'minecraft:acacia _ sapling' 'minecraft:dark _ oak _ sapling'

ǿǽǶǿǼǸ ǶDzdzǻȀǶȂǶǸǮȀǼǾǼǰ

337


ʯ̸̨̡̦̌

ʻ̛̦̖̌̏̌̚

ʰ̴̡̨̛̛̖̦̯̯̬̔̌

ˁ̵̬̦̼̜̌̌ ̨̡̛̯̬̭̯̦

'minecraft:sugar _ can'

ˁ̡̖̣̏̌

'minecraft:beetroot'

ˁ̡̛̛̖̯̣̦̏̽ ʪ̡̙̖̌

'minecraft:jack _ o _ lantern'

ˁ̨̡̖̯̥̖̦̏̌̽

'minecraft:glowstone' 'minecraft:lit _ red-

ˁ̖̯̺̭̏́̌́́ ̨̨̬̖̭̯̱̦̔̏̌́ ̬̱̔̌ stone _ ore'

'minecraft:gray _

ˁ̖̬̌́ ̨̣̱̬̦̐̌̏̌̚​̦̌́ ̡̡̛̖̬̥̌̌ glazed _ terracotta' 'minecraft:light _ gray _

ˁ̖̬̌́ ̨̣̱̬̦̐̌̏̌̚​̦̌́ ̡̡̛̖̬̥̌̌ glazed _ terracotta' ˁ̖̬̼̜ ̡̨̹̣̖̬̼̜̌̏ ̡̛̺́

'minecraft:gray _ shulker _ box'

ˁ̖̬̼̜ ̡̨̹̣̖̬̼̜̌̏ ̡̛̺́

'minecraft:light _ gray _ shulker _ box'

ˁ̛̛̦̜ ̣̖̔

'minecraft:blue _ ice'

ˁ̛̛̦̜ ̡̨̹̣̖̬̼̜̌̏ ̡̛̺́

'minecraft:blue _ shulker _ box' 'minecraft:blue _

ˁ̛̦́​́ ̨̣̱̬̦̐̌̏̌̚​̦̌́ ̡̡̛̖̬̥̌̌ glazed _ terracotta'

338

ˁ̦̖̐

'minecraft:snow'

ˁ̨̦̪ ̭̖̦̌

'minecraft:hay _ block'

ˁ̡̨̯̖̣

'minecraft:glass'

ǽǾǶǹǼǴdzǻǶdz ǯ


ʯ̸̨̡̦̌

ʻ̛̦̖̌̏̌̚

ʰ̴̡̨̛̛̖̦̯̯̬̔̌

ˁ̡̨̯̖̣ ;̨̖̣̖̍Ϳ

'minecraft:white _ stained _ glass'

ˁ̡̯̖̣̦́​̦̌́ ̪̦̖̣̌̽

'minecraft:glass _ pane'

ˁ̡̯̖̣̦́​̦̌́ ̪̦̖̣̌̽ ;̖̣̍̌́Ϳ

'minecraft:white _ stained _ glass _ pane'

ˁ̯̖̬̙̖̦̽ ˑ̦̔̌

'minecraft:end _ rod'

ˁ̸̨̯́̌́ ̨̏̔̌

'minecraft:water'

ˁ̸̨̯́̌́ ̣̌̏̌

'minecraft:lava'

ˁ̡̛̯̱̪̖̦̽ ̛̚ ̡̥̖̦̌​̨̨̦̐ ̸̡̛̛̬̪̌

'minecraft:stone _ brick _ stairs'

ˁ̡̛̯̱̪̖̦̽ ̛̚ ̡̨̨̬̭̦̌̐ ̸̡̛̪̖̭̦̌̌

'minecraft:red _ sandstone _ stairs'

ˁ̡̛̯̱̪̖̦̽ ̛̚ ̨̨̯̖̥̦̐ ̱̔̍̌

'minecraft:dark _ oak _ stairs'

ˁ̡̛̯̱̪̖̦̽ ̛̚ ̸̨̡̨̨̛̯̬̪̖̭̐ ̖̬̖̔̏̌

'minecraft:jungle _ stairs'

ˁ̡̱̦̱̔

'minecraft:chest'

ˁ̡̱̦̱̔Ͳ̨̡̣̱̹̏̌

'minecraft:trapped _ chest'

˃̸̡̛̣̌̍̌

'minecraft:sign'

˃̡̖̱̺̌́ ̨̏̔̌

PLQHFUDIW À RZLQJ B ZD ter'

˃̡̖̱̺̌́ ̣̌̏̌

PLQHFUDIW À RZLQJ B ODYD

ǿǽǶǿǼǸ ǶDzdzǻȀǶȂǶǸǮȀǼǾǼǰ

339


ʯ̸̨̡̦̌

340

ʻ̛̦̖̌̏̌̚

ʰ̴̡̨̛̛̖̦̯̯̬̔̌

˃̨̬̯

'minecraft:cake'

˃̬̌̏̌

'minecraft:grass'

˃̨̬̪̌

'minecraft:grass _ path'

˃̡̼̏̌

'minecraft:pumpkin'

˄̨̣̦̼̜̐̽ ̨̡̣̍

'minecraft:coal _ block'

ˇ̡̖̣̌

'minecraft:torch'

ˇ̨̨̛̣̖̯̏̌́ ̨̣̱̬̦̐̌̏̌̚​̦̌́ ̡̡̛̖̬̥̌̌

'minecraft:purple _ glazed _ terracotta'

ˇ̨̨̛̣̖̯̼̜̏ ̡̨̹̣̖̬̼̜̌̏ ̡̛̺́

'minecraft:purple _ shulker _ box'

ˇ̣̌̐ ;̖̣̼̜̍Ϳ

'minecraft:white _ banner'

ˉ̨̡̖̯̏ ̵̨̬̱̭̌

PLQHFUDIW FKRUXV B À RZ er'

ˉ̸̨̖̯̦̼̜̏ ̨̨̡̬̹̐

PLQHFUDIW À RZHU B SRW

ˉ̖̥̖̦̯ ;̖̣̼̜̍Ϳ

'minecraft:white _ concrete _ powder'

ˋ̨̡̛̬̖̜̭̜̌̔ ̨̭̯̣

'minecraft:enchanting _ table'

ˋ̖̬̦̌́ ̨̣̱̬̦̐̌̏̌̚​̦̌́ ̡̡̛̖̬̥̌̌

'minecraft:black _ glazed _ terracotta'

ˋ̖̬̦̼̜ ̡̨̹̣̖̬̼̜̌̏ ̡̛̺́

'minecraft:black _ shulker _ box'

ǽǾǶǹǼǴdzǻǶdz ǯ


ʯ̸̨̡̦̌

ʻ̛̦̖̌̏̌̚

ʰ̴̡̨̛̛̖̦̯̯̬̔̌

ˌ̖̬̭̯̽ ;̖̣̍̌́Ϳ

'minecraft:white _ wool'

ˑ̦̖̬̔Ͳ̡̭̱̦̱̔

'minecraft:ender _ chest'

ˑ̡̦̖̬̦̔́

'minecraft:end _ stone'

ˑ̡̨̦̖̬̦̼̖̔́̏ ̸̡̛̛̛̬̪

'minecraft:end _ stone _ bricks'

ˑ̨̦̖̬̬̖̣̭̼̐̽

'minecraft:powered _ rail'

˔̶̨̜ ̡̨̬̦̔̌̌

'minecraft:dragon _ egg'

ǿǽǶǿǼǸ ǶDzdzǻȀǶȂǶǸǮȀǼǾǼǰ

341


ēČďĜğēĖČ ěĜĔĘđĜĚĎ

Загрузить программы можно прямо в интерфейсе черепашки с сайта pastebin.com. Для этого нужно следовать инструкциям, приведенным в разделе «Публикация и загрузка программ в Интернете» главы 4. На сайте turtleappstore.com можно найти как программы из этой книги, так и приложения, созданные другими пользователями. Требования Вот что тебе потребуется, чтобы следовать указаниям этой книги. (Программное обеспечение используется одинаковое, независимо от того, какая операционная система установлена на твоем компьютере – Windows, macOS или Linux.) z Официальная платная версия игры Minecraft доступна по адресу minecraft.net. z Пакет Java доступен для бесплатной загрузки по адресу www.java.com/ru/download/. z Программное обеспечение ATLauncher доступно для бесплатного скачивания по адресу www.atlauncher.com. z Модуль ComputerCraft доступен для бесплатного скачивания по адресу www.computercraft.info. Подробные инструкции по установке приведены в главе 1. Также тебе понадобится компьютер под управлением операционной системы Windows 7 или macOS 10.10 либо более поздней версии. Мод ComputerCraft несовместим с версиями игры Minecraft Pocket Edition или Minecraft Raspberry Pi Edition.

342

ǽǾǶǹǼǴdzǻǶdz ǯ


ČėĠČĎĔĞęħĕ ğĖČēČĞđėĨ A ƉƉůŝĐĂƟŽŶ WƌŽŐƌĂŵŵŝŶŐ /ŶƚĞƌĨĂĐĞ 308 ATLauncher 23–24

C ŽŵƉƵƚĞƌ ƌĂŌ ϭϱ͕ 23͕ 35

J Java 23

N nil 92

ʤ ʤ̨̛̣̬̯̥̐ ϭϬϳ ʤ̣̥̦̌̌́̚ ̡̡̛̬̌ ϭϬϳ ʤ̬̱̥̖̦̯̼̐ ̡̨̨̥̦̦̜̌̔ ̨̡̛̭̯̬ ϮϭϮ ʤ̬̱̥̖̦̯̼̐ ̴̶̡̛̱̦​̛ ϭϮϱ

ʥ ʥ̸̡̨̖̭̦̖̦̼̜ ̶̡̛̣ ϵϰ͕ 104͕ 151͕ ϭϴϲ͕ 192͕ 273͕ 292

ʦ ʦ̨̏̔ ̭ ̡̛̣̯̱̬̼̌̏̌ ϳϬ ʦ̨̣̙̖̦​̦̼̖ ̨̡̛̣̍ ϵϴ ʦ̨̨̬̺̖̥̖̏̌̌̚ ̸̛̦̖̦̖̌̚ ϭϮϳ ʦ̛̼̬̙̖̦̖̌ ϱϬ

ʧ

ʰ̦̖̦̯̬̏̌̽ ϯϵ͕ ϭϬϲ͕ 187 ʰ̶̡̛̦̭̯̬̱́ ďƌĞĂŬ ϭϱϱ ʰ̶̡̛̦̭̯̬̱́ ĞůƐĞ ϭϬϬ͕ 102͕ 155 ʰ̶̡̛̦̭̯̬̱́ ĞůƐĞŝĨ ϵϳ ʰ̶̡̛̦̭̯̬̱́ ŝĨ ϵϰ͕ 99͕ 101͕ 138͕ 154 ʰ̶̡̛̦̭̯̬̱́ ƌĞƚƵƌŶ ϭϮϳ ʰ̦̭̯̬̱̥̖̦̯ ϭϬϲ ʰ̦̭̯̬̱̥̖̦̯̼ ϯϴ ʰ̨̦̯̖̬̪̬̖̯̯̬̌ >ƵĂ ϲϰ ʰ̶̛̯̖̬̌́ ϴϬ͕ 171͕ 305

ʶ ʶ̨̥̦̌̔̌ ůƐ ϲϱ ʶ̨̥​̛̥̖̦̯̬̌​̛ ϳϲ ʶ̶̨̡̛̦̯̖̦̌̌́ ϲϴ ʶ̨̦̭̯̦̯̌̌ ϭϲϳ

ʸ ʸ̸̨̡̛̛̖̭̜̐ ̨̨̪̖̬̯̬̌ ĂŶĚ ϭϭϰ ʸ̸̨̡̛̛̖̭̜̐ ̨̨̪̖̬̯̬̌ ŶŽƚ ϭϭϯ ʸ̸̨̡̛̛̖̭̜̐ ̨̨̪̖̬̯̬̌ Žƌ ϭϭϱ ʸ̸̨̡̛̛̖̭̜̐ ̛̯̪ ̦̔̌​̵̦̼ ϵϭ ʸ̨̡̣̦̼̖̌̽ ̪̖̬̖̥̖̦​̦̼̖ ϭϯϴ

ʺ ʺ̭̌​̛̭̏ ϮϭϮ ʺ̨̛̱̣̔ ϭϮϯ ʺ̨̱̣̔̽ ϭϮϴ͕ 143͕ 211 ʺ̨̼̔ ϭϱ

ʽ

ʯ̸̛̦̖̦̖̌ ϱϬ͕ ϭϯϲ

ʽ̣̭̯̍̌̽ ̨̛̛̛̥̭̯̏̔ ϭϯϵ ʽ̸̨̨̡̣̍̌ ̡̨̨̥̦̦̜̌̔ ̨̡̛̭̯̬ ϲϭ ʽ̡̛̬̱̣̖̦̖̐ ϭϳϮ ʽ̨̪̖̬̯̬̌ ̛̖̣̖̦̔́ ̨̪ ̨̥̱̣̔̀ Ϯϰϱ ʽ̨̪̖̬̯̬̼̌ ̛̭̬̦̖̦̌̏́ ϵϱ ʽ̡̛̹̍̌ ϱϮ͕ ϲϰ

ʰ

ʿ

ʰ̨̬̼̖̐̏ ̛̬̖̙̥̼ ϯϭ ʰ̥̖̦̌ ̪̖̬̖̥̖̦​̵̦̼ ϱϴ

ʿ̬̼̌ ̸̡̣̀Ͳ̸̛̦̖̦̖̌̚ ϭϯϲ ʿ̨̛̛̖̬̖̥̖̦̦̖̏̌ ̸̡̖̬̖̪̹̖̌ ϳϭ

ʧ̨̖̦̖̬̯̬̌ ̡̛̱̣̼̙̦̍̌ ϭϲϮ ʧ̴̸̡̛̛̬̖̭̜̌ ̴̛̦̯̖̬̖̜̭ ϯϴ͕ 181

ʯ

ǮǹȂǮǰǶȀǻȉǷ ȁǸǮǵǮȀdzǹȊ

343


ʿ̖̬̖̥̖̦​̦̼̖ ϱϱ ʿ̨̨̡̬́̔ ̛̖̜̭̯̜̔̏ ϱϮ

ˁ ˁ̸̣̱̜̦̼̖̌ ̸̛̭̣̌ ϱϯ ˁ̨​̨̛̺̖̦̖̍ ̨̍ ̨̡̛̹̖̍ ϭϭϳ ˁ̨̡̛̯̬ ϲϳ ˁ̡̱̦̱̔ ϭϰϳ

˃ ˃̸̨̛̣̦̖̌̍ ̸̛̦̖̦̖̌̚ ϭϱϯ ˃̸̛̣̦̼̖̌̍ ̸̛̦̖̦̌́̚ ϭϯϲ ˃̛̪̼ ̦̔̌​̵̦̼ ϲϳ ˃̨̨̛̪̣̏ ϰϭ͕ 59

ˇ ˇ̶̡̛̱̦​̛ ϭϮϯ

344

ǮǹȂǮǰǶȀǻȉǷ ȁǸǮǵǮȀdzǹȊ

ˇ̶̡̛̱̦́ ƉƌŝŶƚ ϲϲ

ˉ ˉ̡̛̣ ĨŽƌ ϴϬ͕ 140͕ 171͕ 305 ˉ̡̛̣ ǁŚŝůĞ ϵϮ͕ 103͕ 119͕ 151͕ 192͕ 305

ˋ ˋ̡̦̌ ϭϰϵ ˋ̡̖̬̖̪̹̌̌ ϯϰ

ˌ ˌ̌̐ ̶̡̛̣̌ ϴϭ

ˑ ˑ̴​̴̡̖̯ ̛̪̹̱̺̖̜ ̡̛̛̥̹̦̌ ϳϬ


https://eksmo.ru/b2b/



Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.