1# SOME DESCRIPTIVE TITLE
2# Copyright (C) YEAR Free Software Foundation, Inc.
3# This file is distributed under the same license as the PACKAGE package.
4# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
5msgid ""
6msgstr ""
7"Project-Id-Version: PACKAGE VERSION\n"
8"Report-Msgid-Bugs-To: \n"
9"POT-Creation-Date: DATE\n"
10"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
11"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
12"Language-Team: LANGUAGE <LL@li.org>\n"
13"Language: ru\n"
14"MIME-Version: 1.0\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
17"X-Generator: Translate Toolkit 1.11.0\n"
18
19#. type: \b; header
20#: ../E/1_SwitchCell.txt:1
21#, no-wrap
22msgid "Programs dispatched by Houston"
23msgstr "Программы, отправленные Хьюстоном"
24
25#. type: Plain text
26#: ../E/1_SwitchCell1.txt:2
27#, no-wrap
28msgid "Following is a program that has been developed by our engineers. It allows you to switch <a object|power>power cells</a>. A charged cell needs to be placed on the ground in front of the bot."
29msgstr "Ниже приведен текст программы, написанной нашими инженерами. Она позволяет вам переключать <a object|power>энергетические батарейки</a>. Заряженные батарейки необходимо разместить на земле около бота."
30
31#. type: Plain text
32#: ../E/1_SwitchCell1.txt:4
33#, no-wrap
34msgid "In order to execute this program, select the program <code>SwitchCell1</code> in the list of the programs available on the bot (on the lower left-hand corner of your screen), and click on the arrow symbol <button 21/>."
35msgstr "Чтобы запустить программу, выберите программу <code>SwitchCell1</code> из списка программ, доступных для бота (в левом нижнем углу экрана), и щелкните на стрелке <button 21/>"
36
37#. type: Source code
38#: ../E/1_SwitchCell1.txt:6
39#, no-wrap
40msgid ""
41"extern void object::SwitchCell1()\n"
42"{\n"
43"\t<a cbot|grab>grab</a>(InFront);     // take the new cell in front\n"
44"\t<a cbot|drop>drop</a>(Behind);      // and drop it behind\n"
45"\t\n"
46"\t<a cbot|grab>grab</a>(EnergyCell);  // take the cell from the bot\n"
47"\t<a cbot|drop>drop</a>(InFront);     // and drop it in front\n"
48"\t\n"
49"\t<a cbot|grab>grab</a>(Behind);      // take the new cell\n"
50"\t<a cbot|drop>drop</a>(EnergyCell);  // and drop it on the bot\n"
51"}"
52msgstr ""
53"extern void object::SwitchCell1()\n"
54"{\n"
55"\t<a cbot|grab>grab</a>(InFront);     // взять новыю батарейку\n"
56"\t<a cbot|drop>drop</a>(Behind);      // бросить ее за собой\n"
57"\t\n"
58"\t<a cbot|grab>grab</a>(EnergyCell);  // взять у бота батарейку\n"
59"\t<a cbot|drop>drop</a>(InFront);     // сбросить ее перед собой\n"
60"\t\n"
61"\t<a cbot|grab>grab</a>(Behind);      // взять новую батарейку\n"
62"\t<a cbot|drop>drop</a>(EnergyCell);  // установить ее в боте\n"
63"}"
64
65#. type: \b; header
66#: ../E/10_FollowPhazer.txt:1 ../E/1_SwitchCell1.txt:1 ../E/1_SwitchCell1_link.txt:1 ../E/2_Recharge1.txt:1 ../E/2_Recharge1_link.txt:1 ../E/3_Recharge2.txt:1 ../E/3_Recharge2_link.txt:1 ../E/4_CollectTitanium1.txt:1 ../E/5_CollectTitanium2.txt:1 ../E/5_CollectTitanium2_link.txt:1 ../E/6_KillAnt1.txt:1 ../E/6_KillAnt1_link.txt:1 ../E/7_CollectTitanium3.txt:1 ../E/7_CollectTitanium3_link.txt:1 ../E/8_ServiceTower1.txt:1 ../E/8_ServiceTower1_link.txt:1 ../E/9_terranova.txt:1
67#, no-wrap
68msgid "Programs dispatched by Houston"
69msgstr "Программы, отправленные Хьюстоном"
70
71#. type: Plain text
72#: ../E/1_SwitchCell1_link.txt:2 ../E/2_Recharge1_link.txt:2 ../E/3_Recharge2_link.txt:2 ../E/5_CollectTitanium2_link.txt:2 ../E/6_KillAnt1_link.txt:2 ../E/7_CollectTitanium3_link.txt:2 ../E/8_ServiceTower1_link.txt:2
73#, no-wrap
74msgid "We did not develop a specific program for this mission. However, you can develop your own programs if you think it would be useful."
75msgstr "Для этой миссии мы не разрабатвали специальных программ. Тем не менее, вы можете сами написать свою собственную программу, если вы считаете, что это может вам понадобиться."
76
77#. type: \b; header
78#: ../E/10_FollowPhazer.txt:40 ../E/1_SwitchCell1_link.txt:4 ../E/2_Recharge1.txt:20 ../E/2_Recharge1_link.txt:4 ../E/3_Recharge2.txt:23 ../E/3_Recharge2_link.txt:4 ../E/4_CollectTitanium1.txt:24 ../E/5_CollectTitanium2.txt:32 ../E/5_CollectTitanium2_link.txt:4 ../E/6_KillAnt1.txt:23 ../E/6_KillAnt1_link.txt:4 ../E/7_CollectTitanium3.txt:53 ../E/7_CollectTitanium3_link.txt:4 ../E/8_ServiceTower1.txt:43 ../E/8_ServiceTower1_link.txt:4 ../E/9_terranova.txt:20
79#, no-wrap
80msgid "Archives"
81msgstr "Архивы"
82
83#. type: Plain text
84#: ../E/10_FollowPhazer.txt:41 ../E/1_SwitchCell1_link.txt:5 ../E/2_Recharge1.txt:21 ../E/2_Recharge1_link.txt:5 ../E/3_Recharge2.txt:24 ../E/3_Recharge2_link.txt:5 ../E/4_CollectTitanium1.txt:25 ../E/5_CollectTitanium2.txt:33 ../E/5_CollectTitanium2_link.txt:5 ../E/6_KillAnt1.txt:24 ../E/6_KillAnt1_link.txt:5 ../E/7_CollectTitanium3.txt:54 ../E/7_CollectTitanium3_link.txt:5 ../E/8_ServiceTower1.txt:44 ../E/8_ServiceTower1_link.txt:5 ../E/9_terranova.txt:21
85#, no-wrap
86msgid "Index of the programs dispatched in former missions:"
87msgstr "Список программ, отправленных в предыдущих миссиях"
88
89#. type: Bullet: 'o'
90#: ../E/10_FollowPhazer.txt:50 ../E/1_SwitchCell1_link.txt:7 ../E/2_Recharge1.txt:23 ../E/2_Recharge1_link.txt:8 ../E/3_Recharge2.txt:26 ../E/3_Recharge2_link.txt:9 ../E/4_CollectTitanium1.txt:29 ../E/5_CollectTitanium2.txt:38 ../E/5_CollectTitanium2_link.txt:11 ../E/6_KillAnt1.txt:30 ../E/6_KillAnt1_link.txt:12 ../E/7_CollectTitanium3.txt:61 ../E/7_CollectTitanium3_link.txt:13 ../E/8_ServiceTower1.txt:52 ../E/8_ServiceTower1_link.txt:14 ../E/9_terranova.txt:30
91#, no-wrap
92msgid "<code><a programs/1_SwitchCell1>SwitchCell1</a></code>"
93msgstr ""
94
95#. type: Plain text
96#: ../E/2_Recharge1.txt:2
97#, no-wrap
98msgid "Below is a program that has been developed by our engineers. It allows you to recharge the <a object|power>power cell</a> of a bot: it goes to the closest <a object|station>power station</a>, waits 5 seconds, and comes back to the initial position."
99msgstr "Ниже приведена программа, разработанная нашими инженерами. Она позволяет вам подзарядить <a object|power>батарейку</a> бота: она направляет бота к ближайшей <a object|station>электростанции</a>, заставляет его подождать 5 секунд, и вернуться к начальной позиции."
100
101#. type: Plain text
102#: ../E/2_Recharge1.txt:4
103#, no-wrap
104msgid "Remark: If you click on an element of the program underlined in blue, your SatCom will display a text that explains this element. The texts that follow a double slash <code>//</code> are not part of the program, but are comments that help you to understand the program."
105msgstr "Сноска: Если вы щелкните на элеменете программы, выделенном синим цветом, ваш Сатком отобразит текст, описывающий этот элемент. Текст, идущий после двух косых <code>//</code> не является частью программы. Он просто комментирует содержание программы, чтобы вы могли понять ее суть."
106
107#. type: Source code
108#: ../E/2_Recharge1.txt:6
109#, no-wrap
110msgid ""
111"extern void object::Recharge1()\n"
112"{\n"
113"\t<a cbot|type>point</a>  start;          // variable for initial pos.\n"
114"\t<a cbot|type>object</a> item;           // info. about power station\n"
115"\t\n"
116"\tstart = position;      // store initial position\n"
117"\t\n"
118"\titem = <a cbot|radar>radar</a>(<a cbot|category>PowerStation</a>); // look for station\n"
119"\t<a cbot|goto>goto</a>(item.position);   // go to the power station\n"
120"\t<a cbot|wait>wait</a>(5);               // wait 5 seconds\n"
121"\t\n"
122"\t<a cbot|goto>goto</a>(start);           // go back to initial pos.\n"
123"}"
124msgstr ""
125"extern void object::Recharge1()\n"
126"{\n"
127"\t<a cbot|type>point</a>  start;          // переменная начальной позиции.\n"
128"\t<a cbot|type>object</a> item;           // информация об электростанции\n"
129"\t\n"
130"\tstart = position;      // сохранить начальную позицию\n"
131"\t\n"
132"\titem = <a cbot|radar>radar</a>(<a cbot|category>PowerStation</a>); // искать станцию\n"
133"\t<a cbot|goto>goto</a>(item.position);   // идти к электростанции\n"
134"\t<a cbot|wait>wait</a>(5);               // подождать 5 секунд\n"
135"\t\n"
136"\t<a cbot|goto>goto</a>(start);           // возвратиться к начальной позиции.\n"
137"}"
138
139#. type: Plain text
140#: ../E/3_Recharge2.txt:2
141#, no-wrap
142msgid "We have improved the recharge program. When it arrives at the <a object|station>power station</a>, the bot does not wait exactly 5 seconds, but only until the <a object|power>power cell</a> is fully charged. After the bot is back at the initial position, it displays a message on the screen."
143msgstr "Мы улучшили программу подзарядки. Когда он прибывает на <a object|station>электростанцию</a>, бот не ждет именно 5 секунд, а только до того момента, когда <a object|power>батареи</a> полностью зарядятся. После того, как бот вернется в начальную позицию, на экране появляется сообщение."
144
145#. type: Source code
146#: ../E/3_Recharge2.txt:4
147#, no-wrap
148msgid ""
149"extern void object::Recharge2()\n"
150"{\n"
151"\t<a cbot|type>point</a>  start;          // variable for initial pos.\n"
152"\t<a cbot|type>object</a> item;           // info. about power station\n"
153"\t\n"
154"\tstart = position;      // store initial position\n"
155"\t\n"
156"\titem = <a cbot|radar>radar</a>(<a cbot|category>PowerStation</a>); // look for station\n"
157"\t<a cbot|goto>goto</a>(item.position);   // go to the power station\n"
158"\t\n"
159"\t<a cbot|while>while</a> ( <a cbot|object>energyCell.energyLevel</a> < 1 )\n"
160"\t{\n"
161"\t\t<a cbot|wait>wait</a>(1);           // wait until recharged\n"
162"\t}\n"
163"\t\n"
164"\t<a cbot|goto>goto</a>(start);           // go back to initial pos.\n"
165"\t<a cbot|message>message</a>(\"Recharge completed\");\n"
166"}"
167msgstr ""
168"extern void object::Recharge2()\n"
169"{\n"
170"\t<a cbot|type>point</a>  start;          // переменная начальной позиции.\n"
171"\t<a cbot|type>object</a> item;           // информация об электростанции\n"
172"\t\n"
173"\tstart = position;      // сохранить начальную позицию\n"
174"\t\n"
175"\titem = <a cbot|radar>radar</a>(<a cbot|category>PowerStation</a>); // искать станцию\n"
176"\t<a cbot|goto>goto</a>(item.position);   // идти к электростанции\n"
177"\t\n"
178"\t<a cbot|while>while</a> ( <a cbot|object>energyCell.energyLevel</a> < 1 )\n"
179"\t{\n"
180"\t\t<a cbot|wait>wait</a>(1);           // ждать окончания зарядки\n"
181"\t}\n"
182"\t\n"
183"\t<a cbot|goto>goto</a>(start);           // вернуться в начальную позицию.\n"
184"\t<a cbot|message>message</a>(\"Зарядка проведена\");\n"
185"}"
186
187#. type: Bullet: 'o'
188#: ../E/10_FollowPhazer.txt:49 ../E/2_Recharge1_link.txt:7 ../E/3_Recharge2.txt:27 ../E/3_Recharge2_link.txt:8 ../E/4_CollectTitanium1.txt:28 ../E/5_CollectTitanium2.txt:37 ../E/5_CollectTitanium2_link.txt:10 ../E/6_KillAnt1.txt:29 ../E/6_KillAnt1_link.txt:11 ../E/7_CollectTitanium3.txt:60 ../E/7_CollectTitanium3_link.txt:12 ../E/8_ServiceTower1.txt:51 ../E/8_ServiceTower1_link.txt:13 ../E/9_terranova.txt:29
189#, no-wrap
190msgid "<code><a programs/2_Recharge1>Recharge1</a></code>"
191msgstr ""
192
193#. type: Bullet: 'o'
194#: ../E/10_FollowPhazer.txt:48 ../E/3_Recharge2_link.txt:7 ../E/4_CollectTitanium1.txt:27 ../E/5_CollectTitanium2.txt:36 ../E/5_CollectTitanium2_link.txt:9 ../E/6_KillAnt1.txt:28 ../E/6_KillAnt1_link.txt:10 ../E/7_CollectTitanium3.txt:59 ../E/7_CollectTitanium3_link.txt:11 ../E/8_ServiceTower1.txt:50 ../E/8_ServiceTower1_link.txt:12 ../E/9_terranova.txt:28
195#, no-wrap
196msgid "<code><a programs/3_Recharge2>Recharge2</a></code>"
197msgstr ""
198
199#. type: Plain text
200#: ../E/4_CollectTitanium1.txt:2
201#, no-wrap
202msgid ""
203"Below is one of the programs that has been developed by our engineers.\n"
204"It instructs a <a object|botgr>grabber</a> to retrieve the nearest chunk of <a object|titanore>titanium ore</a> and place it on the <a object|convert>converter</a>."
205msgstr ""
206"Ниже приведен текст программы, написанной одним из наших инженеров.\n"
207"Она инструктирует <a object|botgr>сборщика</a> взять ближайший кусок <a object|titanore>титановой руды</a> и разместить его в <a object|convert>преобразователе</a>."
208
209#. type: Plain text
210#: ../E/4_CollectTitanium1.txt:5
211#, no-wrap
212msgid "In order to execute this program, select the program <code>CollectTitanium1</code> in the list of the programs available on the bot (on the lower left-hand corner of your screen), and click on the arrow symbol <button 21/>. At any moment you can stop the program and take over at the controls with the stop button <button 8/>."
213msgstr "Чтобы запустить программу, выберите программу <code>CollectTitanium1</code> из списка программ, доступных для бота (в левом нижнем углу экрана), и щелкните на стрелке <button 21/>. Вы можете в любой момент остановить программу и взять управление в свои руки, нажав кнопку стоп <button 8/>."
214
215#. type: Source code
216#: ../E/4_CollectTitanium1.txt:7
217#, no-wrap
218msgid ""
219"extern void object::CollectTitanium1()\n"
220"{\n"
221"\t// 1) Variable definition.\n"
222"\t<a cbot|type>object</a>  item;            // info. about objects\n"
223"\t\n"
224"\t// 2) Go to the titanium ore and grab it.\n"
225"\titem = <a cbot|radar>radar</a>(<a cbot|category>TitaniumOre</a>);// look for titanium ore\n"
226"\t<a cbot|goto>goto</a>(item.position);     // go to the position\n"
227"\t<a cbot|grab>grab</a>();                  // grab the titanium\n"
228"\t\n"
229"\t// 3) Go to the converter and drop it.\n"
230"\titem = <a cbot|radar>radar</a>(<a cbot|category>Converter</a>); // look for converter\n"
231"\t<a cbot|goto>goto</a>(item.position);     // go to the position\n"
232"\t<a cbot|drop>drop</a>();                  // drop the titanium\n"
233"\t<a cbot|move>move</a>(-2.5);              // step back 2.5 m\n"
234"}"
235msgstr ""
236"extern void object::CollectTitanium1()\n"
237"{\n"
238"\t// 1) Задание переменной.\n"
239"\t<a cbot|type>object</a>  item;            // информация об объектах\n"
240"\t\n"
241"\t// 2) Перейти к тиатновой руде и взять ее.\n"
242"\titem = <a cbot|radar>radar</a>(<a cbot|category>TitaniumOre</a>);// искать титановую руду\n"
243"\t<a cbot|goto>goto</a>(item.position);     // перейти к месту\n"
244"\t<a cbot|grab>grab</a>();                  // взять титан\n"
245"\t\n"
246"\t// 3) Перейти к преобразователю и сбросить руду.\n"
247"\titem = <a cbot|radar>radar</a>(<a cbot|category>Converter</a>); // искать преобразователь\n"
248"\t<a cbot|goto>goto</a>(item.position);     // перейти к месту\n"
249"\t<a cbot|drop>drop</a>();                  // сбросить титан\n"
250"\t<a cbot|move>move</a>(-2.5);              // отойти назад на 2.5 м\n"
251"}"
252
253#. type: Plain text
254#: ../E/5_CollectTitanium2.txt:2
255#, no-wrap
256msgid ""
257"Below is one of the programs that has been developed by our engineers.\n"
258"An upgrade on the previous program: the <a object|botgr>grabber</a>, on its way back from the converter, makes a stop, if necessary, at the <a object|station>power station</a> to recharge its power cell."
259msgstr ""
260"Ниже приведен текст программы, написанной одним из наших инженеров.\n"
261"Улучшение предыдущей программы: <a object|botgr>сборщик</a> на своем пути от преобразователя останавливается, если в этом возникает необходимость, около <a object|station>электростанции</a>, чтобы подзарядить свою энергетическую батарейку."
262
263#. type: Plain text
264#: ../E/5_CollectTitanium2.txt:5
265#, no-wrap
266msgid "This program also works on <a object|botgj>winged grabbers</a>, if the <a object|derrick>derrick</a> is on another island than the <a object|convert>converter</a>."
267msgstr "Эта программа также работает для <a object|botgj>крылатых сборщиков</a>, если <a object|derrick>деррики</a> расположены не на том же самом острове, что и <a object|convert>преобразователь</a>."
268
269#. type: Source code
270#: ../E/5_CollectTitanium2.txt:7
271#, no-wrap
272msgid ""
273"extern void object::CollectTitanium2()\n"
274"{\n"
275"\t// 1) Variable definition.\n"
276"\t<a cbot|type>object</a>  item;            // info. about objects\n"
277"\t\n"
278"\t// 2) Go to the titanium ore and grab it.\n"
279"\titem = <a cbot|radar>radar</a>(<a cbot|category>TitaniumOre</a>);// look for titanium ore\n"
280"\t<a cbot|goto>goto</a>(item.position);     // go to the position\n"
281"\t<a cbot|grab>grab</a>();                  // grab the titanium\n"
282"\t\n"
283"\t// 3) Go to the converter and drop it.\n"
284"\titem = <a cbot|radar>radar</a>(<a cbot|category>Converter</a>); // look for converter\n"
285"\t<a cbot|goto>goto</a>(item.position);     // go to the position\n"
286"\t<a cbot|drop>drop</a>();                  // drop the titanium\n"
287"\t<a cbot|move>move</a>(-2.5);              // step back 2.5 m\n"
288"\t\t\n"
289"\t// 4) If power cell half empty, recharges.\n"
290"\tif ( energyCell.energyLevel < 0.5 )\n"
291"\t{                               // if so:\n"
292"\t\titem = <a cbot|radar>radar</a>(<a cbot|category>PowerStation</a>); // look for station\n"
293"\t\t<a cbot|goto>goto</a>(item.position);        // go there\n"
294"\t\t<a cbot|wait>wait</a>(5);                    // wait\n"
295"\t}\n"
296"}"
297msgstr ""
298"extern void object::CollectTitanium2()\n"
299"{\n"
300"\t// 1) Задание переменной.\n"
301"\t<a cbot|type>object</a>  item;            // информация об объектах\n"
302"\t\n"
303"\t// 2) Перейти к тиатновой руде и взять ее.\n"
304"\titem = <a cbot|radar>radar</a>(<a cbot|category>TitaniumOre</a>);// искать титановую руду\n"
305"\t<a cbot|goto>goto</a>(item.position);     // перейти к месту\n"
306"\t<a cbot|grab>grab</a>();                  // взять титан\n"
307"\t\n"
308"\t// 3) Перейти к преобразователю и сбросить руду.\n"
309"\titem = <a cbot|radar>radar</a>(<a cbot|category>Converter</a>); // искать преобразователь\n"
310"\t<a cbot|goto>goto</a>(item.position);     // перейти к месту\n"
311"\t<a cbot|drop>drop</a>();                  // сбросить титан\n"
312"\t<a cbot|move>move</a>(-2.5);              // отойти назад на 2.5 м\n"
313"\t\t\n"
314"\t// 4) Если энергетическая батарейка пуста, подзарядить.\n"
315"\tif ( energyCell.energyLevel < 0.5 )\n"
316"\t{                               // если так:\n"
317"\t\titem = <a cbot|radar>radar</a>(<a cbot|category>PowerStation</a>); // искать станцию\n"
318"\t\t<a cbot|goto>goto</a>(item.position);        // перейти туда\n"
319"\t\t<a cbot|wait>wait</a>(5);                    // ждать\n"
320"\t}\n"
321"}"
322
323#. type: Bullet: 'o'
324#: ../E/10_FollowPhazer.txt:47 ../E/5_CollectTitanium2.txt:35 ../E/5_CollectTitanium2_link.txt:8 ../E/6_KillAnt1.txt:27 ../E/6_KillAnt1_link.txt:9 ../E/7_CollectTitanium3.txt:58 ../E/7_CollectTitanium3_link.txt:10 ../E/8_ServiceTower1.txt:49 ../E/8_ServiceTower1_link.txt:11 ../E/9_terranova.txt:27
325#, no-wrap
326msgid "<code><a programs/4_CollectTitanium1>CollectTitanium1</a></code>"
327msgstr ""
328
329#. type: Bullet: 'o'
330#: ../E/10_FollowPhazer.txt:46 ../E/5_CollectTitanium2_link.txt:7 ../E/6_KillAnt1.txt:26 ../E/6_KillAnt1_link.txt:8 ../E/7_CollectTitanium3.txt:57 ../E/7_CollectTitanium3_link.txt:9 ../E/8_ServiceTower1.txt:48 ../E/8_ServiceTower1_link.txt:10 ../E/9_terranova.txt:26
331#, no-wrap
332msgid "<code><a programs/5_CollectTitanium2>CollectTitanium2</a></code>"
333msgstr ""
334
335#. type: Plain text
336#: ../E/6_KillAnt1.txt:2
337#, no-wrap
338msgid "Execute the program <code>KillAnt1</code> immediately on your <a object|botfr>wheeled shooter</a>, it will protect your west flank. Meantime you can elaborate your defense strategy."
339msgstr "Немедленно запустите программу <code>KillAnt1</code> на вашем <a object|botfr>колесном стрелке</a>, он будет защищать ваш западный фланг. Тем временем вы можете детально разработать свою оборонительную стратегию."
340
341#. type: Source code
342#: ../E/6_KillAnt1.txt:4
343#, no-wrap
344msgid ""
345"extern void object::KillAnt1()\n"
346"{\n"
347"\t<a cbot|type>object</a> item;             // info. about object\n"
348"\t\n"
349"\t<a cbot|goto>goto</a>(-30, 0);            // go west\n"
350"\t<a cbot|aim>aim</a>(0);                  // aim straight\n"
351"\t\n"
352"\t<a cbot|while>while</a> ( true )           // repeat forever:\n"
353"\t{\n"
354"\t\titem = <a cbot|radar>radar</a>(<a cbot|category>AlienAnt</a>, 0, 360, 0, 40);\n"
355"\t\t<a cbot|if>if</a> ( item != null )  // ant detected ?\n"
356"\t\t{\n"
357"\t\t\t<a cbot|turn>turn</a>(<a cbot|direct>direction</a>(item.position));\n"
358"\t\t\t<a cbot|fire>fire</a>(0.5);       // shoot 0.5 s\n"
359"\t\t}\n"
360"\t\t<a cbot|wait>wait</a>(1);             // wait 1 second\n"
361"\t}\n"
362"}"
363msgstr ""
364"extern void object::KillAnt1()\n"
365"{\n"
366"\t<a cbot|type>object</a> item;             // информация об объекте\n"
367"\t\n"
368"\t<a cbot|goto>goto</a>(-30, 0);            // идти на запад\n"
369"\t<a cbot|aim>aim</a>(0);                  // прицелиться прямо\n"
370"\t\n"
371"\t<a cbot|while>while</a> ( true )           // повторять всегда:\n"
372"\t{\n"
373"\t\titem = <a cbot|radar>radar</a>(<a cbot|category>AlienAnt</a>, 0, 360, 0, 40);\n"
374"\t\t<a cbot|if>if</a> ( item != null )  // замечен муравей ?\n"
375"\t\t{\n"
376"\t\t\t<a cbot|turn>turn</a>(<a cbot|direct>direction</a>(item.position));\n"
377"\t\t\t<a cbot|fire>fire</a>(0.5);       // выстрел 0.5 с\n"
378"\t\t}\n"
379"\t\t<a cbot|wait>wait</a>(1);             // ждать 1 секунду\n"
380"\t}\n"
381"}"
382
383#. type: Bullet: 'o'
384#: ../E/10_FollowPhazer.txt:45 ../E/6_KillAnt1_link.txt:7 ../E/7_CollectTitanium3.txt:56 ../E/7_CollectTitanium3_link.txt:8 ../E/8_ServiceTower1.txt:47 ../E/8_ServiceTower1_link.txt:9 ../E/9_terranova.txt:25
385#, no-wrap
386msgid "<code><a programs/6_KillAnt1>KillAnt1</a></code>"
387msgstr ""
388
389#. type: Plain text
390#: ../E/7_CollectTitanium3.txt:2
391#, no-wrap
392msgid "As you will need lots of titanium for this mission, we have made the program <code>CollectTitanium</code> still more efficient. It gathers a whole series of titanium cubes on a free surface, so you can let it work on its own. It also recharges itself at the <a object|station>power station</a> if necessary."
393msgstr "Так как вам в этой миссии будет необходимо много титана, мы написали очень эффективную программу <code>CollectTitanium</code>. Она одновременно собирает все титановые слитки на свободной поверхности, поэтому вы можете позволить ей самой выполнить всю работу. Она также сама себя подзаряжает у <a object|station>электростанции</a>, если в этом возникает необходимость."
394
395#. type: Source code
396#: ../E/7_CollectTitanium3.txt:4
397#, no-wrap
398msgid ""
399"extern void object::CollectTitanium3()\n"
400"{\n"
401"\t// 1) Variable definition.\n"
402"\t<a cbot|type>object</a>  item;            // info. about objects\n"
403"\t\n"
404"\t<a cbot|while>while</a> (true)             // repeat forever\n"
405"\t{\n"
406"\t\t\n"
407"\t\t// 2) Go to the titanium ore and grab it.\n"
408"\t\titem = <a cbot|radar>radar</a>(<a cbot|category>TitaniumOre</a>);// look for titanium\n"
409"\t\t<a cbot|goto>goto</a>(item.position);     // go to the position\n"
410"\t\t<a cbot|grab>grab</a>();                  // grab the titanium\n"
411"\t\t\n"
412"\t\t// 3) Go to the converter and drop it.\n"
413"\t\titem = <a cbot|radar>radar</a>(<a cbot|category>Converter</a>); // look for converter\n"
414"\t\t<a cbot|goto>goto</a>(item.position);     // go to the position\n"
415"\t\t<a cbot|drop>drop</a>();                  // drop the titanium\n"
416"\t\t<a cbot|move>move</a>(-2.5);              // step back 2.5 m\n"
417"\t\t\n"
418"\t\t// 4) Wait until titanium converted and grab it\n"
419"\t\t<a cbot|do>do</a>\n"
420"\t\t{\n"
421"\t\t\t<a cbot|wait>wait</a>(1);              // wait for cube\n"
422"\t\t\titem = <a cbot|radar>radar</a>(<a cbot|category>Titanium</a>, 0, 45, 0, 5);\n"
423"\t\t}\n"
424"\t\t<a cbot|while>while</a> ( item == null );\n"
425"\t\t<a cbot|goto>goto</a>(item.position);\n"
426"\t\t<a cbot|grab>grab</a>();                   // grab it\n"
427"\t\t\n"
428"\t\t// 5) Drop on a free space\n"
429"\t\t<a cbot|goto>goto</a>(<a cbot|space>space</a>(position));    // go to free space\n"
430"\t\t<a cbot|drop>drop</a>();                   // drop titanium\n"
431"\t\t\n"
432"\t\t// 6) If power cell half empty, recharges.\n"
433"\t\t<a cbot|if>if</a> ( energyCell.energyLevel < 0.5 )\n"
434"\t\t{                         // if so:\n"
435"\t\t\titem = <a cbot|radar>radar</a>(<a cbot|category>PowerStation</a>);\n"
436"\t\t\t<a cbot|if>if</a> ( item != null )   // station found ?\n"
437"\t\t\t{\n"
438"\t\t\t\t<a cbot|goto>goto</a>(item.position); // go there\n"
439"\t\t\t\t<a cbot|while>while</a> ( energyCell.energyLevel < 1 )\n"
440"\t\t\t\t{                 // until recharged:\n"
441"\t\t\t\t\t<a cbot|wait>wait</a>(1);      // wait\n"
442"\t\t\t\t}\n"
443"\t\t\t}\n"
444"\t\t}\n"
445"\t}\n"
446"}"
447msgstr ""
448"extern void object::CollectTitanium3()\n"
449"{\n"
450"\t// 1) Задание переменной.\n"
451"\t<a cbot|type>object</a>  item;            // информация об объектах\n"
452"\t\n"
453"\t<a cbot|while>while</a> (true)             // повторять всегда\n"
454"\t{\n"
455"\t\t\n"
456"\t\t// 2) Перейти к титановой руде и взять ее.\n"
457"\t\titem = <a cbot|radar>radar</a>(<a cbot|category>TitaniumOre</a>);// искать титан\n"
458"\t\t<a cbot|goto>goto</a>(item.position);     // перейти к позиции\n"
459"\t\t<a cbot|grab>grab</a>();                  // взять титан\n"
460"\t\t\n"
461"\t\t// 3) Перейти к преобразователю и сбросить его.\n"
462"\t\titem = <a cbot|radar>radar</a>(<a cbot|category>Converter</a>); // искать преобразователь\n"
463"\t\t<a cbot|goto>goto</a>(item.position);     // перейти к позиции\n"
464"\t\t<a cbot|drop>drop</a>();                  // сбросить титан\n"
465"\t\t<a cbot|move>move</a>(-2.5);              // отойти назад на 2,5 метра\n"
466"\t\t\n"
467"\t\t// 4) Подождать пока титан будет преобразован и забрать его\n"
468"\t\t<a cbot|do>do</a>\n"
469"\t\t{\n"
470"\t\t\t<a cbot|wait>wait</a>(1);              // ждать слиток\n"
471"\t\t\titem = <a cbot|radar>radar</a>(<a cbot|category>Titanium</a>, 0, 45, 0, 5);\n"
472"\t\t}\n"
473"\t\t<a cbot|while>while</a> ( item == null );\n"
474"\t\t<a cbot|goto>goto</a>(item.position);\n"
475"\t\t<a cbot|grab>grab</a>();                   // взять его\n"
476"\t\t\n"
477"\t\t// 5) Drop on a free space\n"
478"\t\t<a cbot|goto>goto</a>(<a cbot|space>space</a>(position));    // выйти на свободное место\n"
479"\t\t<a cbot|drop>drop</a>();                   // сбросить титан\n"
480"\t\t\n"
481"\t\t// 6) Если батарея разряжена, зарядить ее.\n"
482"\t\t<a cbot|if>if</a> ( energyCell.energyLevel < 0.5 )\n"
483"\t\t{                         // if so:\n"
484"\t\t\titem = <a cbot|radar>radar</a>(<a cbot|category>PowerStation</a>);\n"
485"\t\t\t<a cbot|if>if</a> ( item != null )   // станция найдена ?\n"
486"\t\t\t{\n"
487"\t\t\t\t<a cbot|goto>goto</a>(item.position); // идти туда\n"
488"\t\t\t\t<a cbot|while>while</a> ( energyCell.energyLevel < 1 )\n"
489"\t\t\t\t{                 // пока идет зарядка:\n"
490"\t\t\t\t\t<a cbot|wait>wait</a>(1);      // ждать\n"
491"\t\t\t\t}\n"
492"\t\t\t}\n"
493"\t\t}\n"
494"\t}\n"
495"}"
496
497#. type: Plain text
498#: ../E/8_ServiceTower1.txt:2
499#, no-wrap
500msgid "We have developed a program that takes care of recharging the power cell of a <a object|tower>defense tower</a>:"
501msgstr "Мы написали программу, которая отвечает за подзарядку батарей <a object|tower>оборонной башни</a>:"
502
503#. type: Bullet: '1)'
504#: ../E/8_ServiceTower1.txt:4
505#, no-wrap
506msgid "Go to a <a object|tower>defense tower</a>."
507msgstr "Перейти к <a object|tower>оборонной башни</a>."
508
509#. type: Bullet: '2)'
510#: ../E/8_ServiceTower1.txt:5
511#, no-wrap
512msgid "Wait until the <a object|power>power cell</a> is 80% empty."
513msgstr "Подождать пока <a object|power>батарея</a> разрядится на 80%."
514
515#. type: Bullet: '3)'
516#: ../E/8_ServiceTower1.txt:6
517#, no-wrap
518msgid "Grab the <a object|power>power cell</a> and recharge it on a <a object|station>power station</a>."
519msgstr "Взять <a object|power>батарея</a> и зарядить ее на <a object|station>электростанции</a>."
520
521#. type: Bullet: '4)'
522#: ../E/8_ServiceTower1.txt:7
523#, no-wrap
524msgid "Put it back on the <a object|tower>defense tower</a>."
525msgstr "Вернуть ее обратно на  <a object|tower>оборонную башню</a>."
526
527#. type: Plain text
528#: ../E/8_ServiceTower1.txt:9
529#, no-wrap
530msgid "Build the <a object|station>power station</a> as close as possible to the tower in order to reduce the time when the tower has got no power cell. A good trick is to place a power cell on the ground in front of the tower. The wasp will attack the power cell, and if the first shoot misses or a wasp arrives when the defense tower has got no energy, only the power cell is destroyed and not the defense tower."
531msgstr "Постройте <a object|station>электростанцию</a> как можно ближе к башне, чтобы уменьшить время, пока башня стоит без батареи. Неплохо было бы разместить батарею на земле около башни. На батарею нападет оса, и если первый выстрел будет неточным, или оса прилетит в тот момент, когда оборонная башня будет обесточена, уничтожена будет только батарея, а не оборонная башня."
532
533#. type: Source code
534#: ../E/8_ServiceTower1.txt:11
535#, no-wrap
536msgid ""
537"extern void object::ServiceTower1()\n"
538"{\n"
539"\t<a cbot|object>object</a>  tower;               // info. about tower\n"
540"\t<a cbot|object>object</a>  station;             // info. about station\n"
541"\t\n"
542"\t// 1) go to the defense tower\n"
543"\ttower = <a cbot|radar>radar</a>(DefenseTower); // look for tower\n"
544"\t<a cbot|goto>goto</a>(tower.position);        // go there\n"
545"\t\n"
546"\t<a cbot|while>while</a> ( true )               // repeat forever\n"
547"\t{\n"
548"\t\t// 2) wait until power cell is empty\n"
549"\t\t<a cbot|while>while</a> ( tower.energyCell.energyLevel > 0.2 )\n"
550"\t\t{\n"
551"\t\t\t<a cbot|wait>wait</a>(2);\n"
552"\t\t}\n"
553"\t\t<a cbot|grab>grab</a>();                  // grab the power cell\n"
554"\t\t\n"
555"\t\t// 3) go to the power station to recharge\n"
556"\t\tstation = <a cbot|radar>radar</a>(PowerStation);\n"
557"\t\t<a cbot|goto>goto</a>(station.position);  // go there\n"
558"\t\t<a cbot|while>while</a> ( load.energyLevel < 1 )\n"
559"\t\t{\n"
560"\t\t\t<a cbot|wait>wait</a>(1);             // wait until recharged\n"
561"\t\t}\n"
562"\t\t\n"
563"\t\t// 4) go back to defense tower\n"
564"\t\t<a cbot|goto>goto</a>(tower.position);    // go to tower\n"
565"\t\t<a cbot|drop>drop</a>();                  // drop the power cell\n"
566"\t}\n"
567"}"
568msgstr ""
569"extern void object::ServiceTower1()\n"
570"{\n"
571"\t<a cbot|object>object</a>  tower;               // информация о башне\n"
572"\t<a cbot|object>object</a>  station;             // информация о станции\n"
573"\t\n"
574"\t// 1) перейти к оборонной башне\n"
575"\ttower = <a cbot|radar>radar</a>(DefenseTower); // искать башню\n"
576"\t<a cbot|goto>goto</a>(tower.position);        // идти туда\n"
577"\t\n"
578"\t<a cbot|while>while</a> ( true )               // повторять всегда\n"
579"\t{\n"
580"\t\t// 2) подождать пока разрядится батарея\n"
581"\t\t<a cbot|while>while</a> ( tower.energyCell.energyLevel > 0.2 )\n"
582"\t\t{\n"
583"\t\t\t<a cbot|wait>wait</a>(2);\n"
584"\t\t}\n"
585"\t\t<a cbot|grab>grab</a>();                  // взять батарею\n"
586"\t\t\n"
587"\t\t// 3) отправится к электростанции для подзарядки\n"
588"\t\tstation = <a cbot|radar>radar</a>(PowerStation);\n"
589"\t\t<a cbot|goto>goto</a>(station.position);  // идти туда\n"
590"\t\t<a cbot|while>while</a> ( load.energyLevel < 1 )\n"
591"\t\t{\n"
592"\t\t\t<a cbot|wait>wait</a>(1);             // ждать пока пройдет зарядка\n"
593"\t\t}\n"
594"\t\t\n"
595"\t\t// 4) вернуться к оборонной башне\n"
596"\t\t<a cbot|goto>goto</a>(tower.position);    // идти к башне\n"
597"\t\t<a cbot|drop>drop</a>();                  // бросить батарею\n"
598"\t}\n"
599"}"
600
601#. type: Bullet: 'o'
602#: ../E/10_FollowPhazer.txt:44 ../E/7_CollectTitanium3_link.txt:7 ../E/8_ServiceTower1.txt:46 ../E/8_ServiceTower1_link.txt:8 ../E/9_terranova.txt:24
603#, no-wrap
604msgid "<code><a programs/7_CollectTitanium3>CollectTitanium3</a></code>"
605msgstr ""
606
607#. type: Bullet: 'o'
608#: ../E/10_FollowPhazer.txt:43 ../E/8_ServiceTower1_link.txt:7 ../E/9_terranova.txt:23
609#, no-wrap
610msgid "<code><a programs/8_ServiceTower1>ServiceTower1</a></code>"
611msgstr ""
612
613#. type: Plain text
614#: ../E/9_terranova.txt:2
615#, no-wrap
616msgid "According to the data transmitted by the satellite, our engineers have developed two programs. The first one guides the <a object|botshld>shielder bot</a> through the narrow valley north close to the place where the key has been located. You can follow it without fearing any attack:"
617msgstr "Согласно данным, переданными со спутника, наши инженеры разработали две программы. Первая управляет перемещением <a object|botshld>бронированного бота</a> по узкой долине недалеко на север от того места, где был обнаружен ключ. Вы можете продвигаться по этому пути не опасаясь атак:"
618
619#. type: Source code
620#: ../E/9_terranova.txt:4
621#, no-wrap
622msgid ""
623"extern void object::Outward()\n"
624"{\n"
625"\t<a cbot|shield>shield</a>(1,15);   // activate the shield\n"
626"\t<a cbot|goto>goto</a>(6,160);    // go close to the key\n"
627"\t<a cbot|shield>shield</a>(0,15);   // deactivate the shield\n"
628"}"
629msgstr ""
630"extern void object::Outward()\n"
631"{\n"
632"\t<a cbot|shield>shield</a>(1,15);   // активировать щит\n"
633"\t<a cbot|goto>goto</a>(6,160);    // подойти вплотную к ключу\n"
634"\t<a cbot|shield>shield</a>(0,15);   // отключить щит\n"
635"}"
636
637#. type: Plain text
638#: ../E/9_terranova.txt:11
639#, no-wrap
640msgid "The second program guides the <a object|botshld>shielder bot</a> back to the <a object|base>spaceship</a>:"
641msgstr "Вторая программа ведет <a object|botshld>бронированного бота</a> обратно к  <a object|base>космическому кораблю</a>:"
642
643#. type: Source code
644#: ../E/9_terranova.txt:13
645#, no-wrap
646msgid ""
647"extern void object::Return()\n"
648"{\n"
649"\t<a cbot|shield>shield</a>(1,15);   // activate the shield\n"
650"\t<a cbot|goto>goto</a>(8,60);     // go to the spaceship\n"
651"\t<a cbot|shield>shield</a>(0,15);   // deactivate the shield\n"
652"}"
653msgstr ""
654"extern void object::Return()\n"
655"{\n"
656"\t<a cbot|shield>shield</a>(1,15);   // активировать щит\n"
657"\t<a cbot|goto>goto</a>(8,60);     // идти к космическому кораблю\n"
658"\t<a cbot|shield>shield</a>(0,15);   // отключить щит\n"
659"}"
660
661#. type: Plain text
662#: ../E/10_FollowPhazer.txt:2
663#, no-wrap
664msgid "Below is a program that has been developed by our engineers."
665msgstr "Ниже приведена программа, разработанная нашими инженерами."
666
667#. type: Plain text
668#: ../E/10_FollowPhazer.txt:4
669#, no-wrap
670msgid "It instructs the <a object|botshld>shielder</a> to follow and protect the <a object|botphaz>phazer</a>."
671msgstr "Она приказывает <a object|botshld>бронеботу</a> следовать за <a object|botphaz>фазером</a> и защищать его."
672
673#. type: Source code
674#: ../E/10_FollowPhazer.txt:6
675#, no-wrap
676msgid ""
677"extern void object::FollowPhazer()\n"
678"{\n"
679"\t<a cbot|type>object</a>    item;              // info. about phazer\n"
680"\t<a cbot|type>point</a>     dest;              // position where to go\n"
681"\t<a cbot|type>float</a>     dist;              // distance to phazer\n"
682"\t\n"
683"\titem = <a cbot|radar>radar</a>(<a cbot|category>PhazerShooter</a>);\n"
684"\t<a cbot|if>if</a> ( item == null )\n"
685"\t{\n"
686"\t\t<a cbot|message>message</a>(\"No phazer found\");\n"
687"\t\t<a cbot|return>return</a>;                  // stop the program\n"
688"\t}\n"
689"\t<a cbot|shield>shield</a>(1, 25);               // activate the shield\n"
690"\t\n"
691"\t<a cbot|while>while</a> ( true )               // repeat forever\n"
692"\t{\n"
693"\t\titem = <a cbot|radar>radar</a>(PhazerShooter);// look for phazer\n"
694"\t\t<a cbot|if>if</a> ( item == null )  break;\n"
695"\t\t\n"
696"\t\tdist = <a cbot|dist>distance</a>(item.position, position);\n"
697"\t\t<a cbot|if>if</a> ( dist < 5 )\n"
698"\t\t{                        // if closer than 5 m:\n"
699"\t\t\t<a cbot|wait>wait</a>(1);             // wait\n"
700"\t\t}\n"
701"\t\t<a cbot|if>else</a>                     // otherwise:\n"
702"\t\t{ // Calculate a position 5 m before the phazer\n"
703"\t\t\tdest.x = (item.position.x-position.x)*((dist-5)/dist)+position.x;\n"
704"\t\t\tdest.y = (item.position.y-position.y)*((dist-5)/dist)+position.y;\n"
705"\t\t\tdest.z = (item.position.z-position.z)*((dist-5)/dist)+position.z;\n"
706"\t\t\t<a cbot|goto>goto</a>(dest, 0, 1, 1); // and go there\n"
707"\t\t}\n"
708"\t}\n"
709"}"
710msgstr ""
711"extern void object::FollowPhazer()\n"
712"{\n"
713"\t<a cbot|type>object</a>    item;              // информация о фазере\n"
714"\t<a cbot|type>point</a>     dest;              // место назначения\n"
715"\t<a cbot|type>float</a>     dist;              // расстояние до фазера\n"
716"\t\n"
717"\titem = <a cbot|radar>radar</a>(<a cbot|category>PhazerShooter</a>);\n"
718"\t<a cbot|if>if</a> ( item == null )\n"
719"\t{\n"
720"\t\t<a cbot|message>message</a>(\"Фазер не найден\");\n"
721"\t\t<a cbot|return>return</a>;                  // остановить программу\n"
722"\t}\n"
723"\t<a cbot|shield>shield</a>(1, 25);               // включить щит\n"
724"\t\n"
725"\t<a cbot|while>while</a> ( true )               // повторять всегда\n"
726"\t{\n"
727"\t\titem = <a cbot|radar>radar</a>(PhazerShooter);// искать фазер\n"
728"\t\t<a cbot|if>if</a> ( item == null )  break;\n"
729"\t\t\n"
730"\t\tdist = <a cbot|dist>distance</a>(item.position, position);\n"
731"\t\t<a cbot|if>if</a> ( dist < 5 )\n"
732"\t\t{                        // если ближе 5 метров:\n"
733"\t\t\t<a cbot|wait>wait</a>(1);             // ждать\n"
734"\t\t}\n"
735"\t\t<a cbot|if>else</a>                     // иначе:\n"
736"\t\t{ // Рассчитать расстояние в 5 м. перед фазером\n"
737"\t\t\tdest.x = (item.position.x-position.x)*((dist-5)/dist)+position.x;\n"
738"\t\t\tdest.y = (item.position.y-position.y)*((dist-5)/dist)+position.y;\n"
739"\t\t\tdest.z = (item.position.z-position.z)*((dist-5)/dist)+position.z;\n"
740"\t\t\t<a cbot|goto>goto</a>(dest, 0, 1, 1); // перейти туда\n"
741"\t\t}\n"
742"\t}\n"
743"}"
744