744 lines
36 KiB
Plaintext
744 lines
36 KiB
Plaintext
![]() |
# SOME DESCRIPTIVE TITLE
|
||
|
# Copyright (C) YEAR Free Software Foundation, Inc.
|
||
|
# This file is distributed under the same license as the PACKAGE package.
|
||
|
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
|
||
|
msgid ""
|
||
|
msgstr ""
|
||
|
"Project-Id-Version: PACKAGE VERSION\n"
|
||
|
"Report-Msgid-Bugs-To: \n"
|
||
|
"POT-Creation-Date: DATE\n"
|
||
|
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||
|
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||
|
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||
|
"Language: pl\n"
|
||
|
"MIME-Version: 1.0\n"
|
||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||
|
"Content-Transfer-Encoding: 8bit\n"
|
||
|
"X-Generator: Translate Toolkit 1.11.0\n"
|
||
|
|
||
|
#. type: \b; header
|
||
|
#: ../E/1_SwitchCell.txt:1
|
||
|
#, no-wrap
|
||
|
msgid "Programs dispatched by Houston"
|
||
|
msgstr "Programy przysłane z Houston"
|
||
|
|
||
|
#. type: Plain text
|
||
|
#: ../E/1_SwitchCell1.txt:2
|
||
|
#, no-wrap
|
||
|
msgid "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."
|
||
|
msgstr "Poniżej znajdziesz jeden z programów napisanych przez naszych inżynierów. Umożliwia on prostszą wymianę <a object|power>ogniw elektrycznych</a>. Naładowane ogniwo elektryczne powinno znajdować się przed robotem, na ziemi."
|
||
|
|
||
|
#. type: Plain text
|
||
|
#: ../E/1_SwitchCell1.txt:4
|
||
|
#, no-wrap
|
||
|
msgid "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/>."
|
||
|
msgstr "Aby uruchomić ten program, zaznacz program <code>SwitchCell1</code> na liście dostępnych dla robota programów (w lewej dolnej części ekranu), a następnie kliknij symbol strzałki <button 21/>."
|
||
|
|
||
|
#. type: Source code
|
||
|
#: ../E/1_SwitchCell1.txt:6
|
||
|
#, no-wrap
|
||
|
msgid ""
|
||
|
"extern void object::SwitchCell1()\n"
|
||
|
"{\n"
|
||
|
"\t<a cbot|grab>grab</a>(InFront); // take the new cell in front\n"
|
||
|
"\t<a cbot|drop>drop</a>(Behind); // and drop it behind\n"
|
||
|
"\t\n"
|
||
|
"\t<a cbot|grab>grab</a>(EnergyCell); // take the cell from the bot\n"
|
||
|
"\t<a cbot|drop>drop</a>(InFront); // and drop it in front\n"
|
||
|
"\t\n"
|
||
|
"\t<a cbot|grab>grab</a>(Behind); // take the new cell\n"
|
||
|
"\t<a cbot|drop>drop</a>(EnergyCell); // and drop it on the bot\n"
|
||
|
"}"
|
||
|
msgstr ""
|
||
|
"extern void object::SwitchCell1()\n"
|
||
|
"{\n"
|
||
|
"\t<a cbot|grab>grab</a>(InFront); // podnieś nowe ogniwo z przodu\n"
|
||
|
"\t<a cbot|drop>drop</a>(Behind); // i zostaw je z tyłu\n"
|
||
|
"\t\n"
|
||
|
"\t<a cbot|grab>grab</a>(EnergyCell); // wyjmij ogniwo z robota\n"
|
||
|
"\t<a cbot|drop>drop</a>(InFront); // i zostaw je z przodu\n"
|
||
|
"\t\n"
|
||
|
"\t<a cbot|grab>grab</a>(Behind); // podnieś nowe ogniwo\n"
|
||
|
"\t<a cbot|drop>drop</a>(EnergyCell); // i włóż je do robota\n"
|
||
|
"}"
|
||
|
|
||
|
#. type: \b; header
|
||
|
#: ../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/8_ServiceTower1.txt:1 ../E/8_ServiceTower1_link.txt:1 ../E/9_terranova.txt:1
|
||
|
#, no-wrap
|
||
|
msgid "Programs dispatched by Houston"
|
||
|
msgstr "Programy przysłane z Houston"
|
||
|
|
||
|
#. type: Plain text
|
||
|
#: ../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/8_ServiceTower1_link.txt:2
|
||
|
#, no-wrap
|
||
|
msgid "We did not develop a specific program for this mission. However, you can develop your own programs if you think it would be useful."
|
||
|
msgstr "Nie napisaliśmy żadnego programu specjalnie dla tej misji. Jednakże możesz napisać własny program, jeśli uważasz, że przyda się on podczas tej misji."
|
||
|
|
||
|
#. type: \b; header
|
||
|
#: ../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/8_ServiceTower1.txt:43 ../E/8_ServiceTower1_link.txt:4 ../E/9_terranova.txt:20
|
||
|
#, no-wrap
|
||
|
msgid "Archives"
|
||
|
msgstr "Archiwum"
|
||
|
|
||
|
#. type: Plain text
|
||
|
#: ../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/8_ServiceTower1.txt:44 ../E/8_ServiceTower1_link.txt:5 ../E/9_terranova.txt:21
|
||
|
#, no-wrap
|
||
|
msgid "Index of the programs dispatched in former missions:"
|
||
|
msgstr "Lista programów przysłanych w poprzednich misjach:"
|
||
|
|
||
|
#. type: Bullet: 'o'
|
||
|
#: ../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/8_ServiceTower1.txt:52 ../E/8_ServiceTower1_link.txt:14 ../E/9_terranova.txt:30
|
||
|
#, no-wrap
|
||
|
msgid "<code><a programs/1_SwitchCell1>SwitchCell1</a></code>"
|
||
|
msgstr ""
|
||
|
|
||
|
#. type: Plain text
|
||
|
#: ../E/2_Recharge1.txt:2
|
||
|
#, no-wrap
|
||
|
msgid "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."
|
||
|
msgstr "Poniżej znajdziesz jeden z programów napisanych przez naszych inżynierów. Umożliwia on naładowanie <a object|power>ogniwa elektrycznego</a> robota: idzie on do najbliższej <a object|station>stacji energetycznej</a>, czeka 5 sekund, a następnie wraca do pozycji wyjściowej."
|
||
|
|
||
|
#. type: Plain text
|
||
|
#: ../E/2_Recharge1.txt:4
|
||
|
#, no-wrap
|
||
|
msgid "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."
|
||
|
msgstr "Wskazówka: Kliknięcie elementu programu podkreślonego na niebiesko spowoduje wyświetlenie tekstu opisującego ten element na komunikatorze SatCom. Teksty po podwójnych ukośnikach <code>//</code> nie są częścią programu ale komentarzem pozwalającym na lepsze zrozumienie programu."
|
||
|
|
||
|
#. type: Source code
|
||
|
#: ../E/2_Recharge1.txt:6
|
||
|
#, no-wrap
|
||
|
msgid ""
|
||
|
"extern void object::Recharge1()\n"
|
||
|
"{\n"
|
||
|
"\t<a cbot|type>point</a> start; // variable for initial pos.\n"
|
||
|
"\t<a cbot|type>object</a> item; // info. about power station\n"
|
||
|
"\t\n"
|
||
|
"\tstart = position; // store initial position\n"
|
||
|
"\t\n"
|
||
|
"\titem = <a cbot|radar>radar</a>(<a cbot|category>PowerStation</a>); // look for station\n"
|
||
|
"\t<a cbot|goto>goto</a>(item.position); // go to the power station\n"
|
||
|
"\t<a cbot|wait>wait</a>(5); // wait 5 seconds\n"
|
||
|
"\t\n"
|
||
|
"\t<a cbot|goto>goto</a>(start); // go back to initial pos.\n"
|
||
|
"}"
|
||
|
msgstr ""
|
||
|
"extern void object::Recharge1()\n"
|
||
|
"{\n"
|
||
|
"\t<a cbot|type>point</a> start; // zmienna pozycji startowej\n"
|
||
|
"\t<a cbot|type>object</a> item; // informacja o stacji energetycznej\n"
|
||
|
"\t\n"
|
||
|
"\tstart = position; // zachowaj pozycję startową\n"
|
||
|
"\t\n"
|
||
|
"\titem = <a cbot|radar>radar</a>(<a cbot|category>PowerStation</a>); // znajdź stację\n"
|
||
|
"\t<a cbot|goto>goto</a>(item.position); // idź do stacji\n"
|
||
|
"\t<a cbot|wait>wait</a>(5); // poczekaj 5 sekund\n"
|
||
|
"\t\n"
|
||
|
"\t<a cbot|goto>goto</a>(start); // wróć do pozycji startowej\n"
|
||
|
"}"
|
||
|
|
||
|
#. type: Plain text
|
||
|
#: ../E/3_Recharge2.txt:2
|
||
|
#, no-wrap
|
||
|
msgid "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."
|
||
|
msgstr "Usprawniliśmy program ładowania ogniw. Po dotarciu do <a object|station>stacji energetycznej</a> robot nie czeka już dokładnie 5 sekund, ale tylko do czasu pełnego naładowania <a object|power>ogniwa elektrycznego</a>. Po powrocie na pozycję wyjściową robot wyświetla komunikat na ekranie."
|
||
|
|
||
|
#. type: Source code
|
||
|
#: ../E/3_Recharge2.txt:4
|
||
|
#, no-wrap
|
||
|
msgid ""
|
||
|
"extern void object::Recharge2()\n"
|
||
|
"{\n"
|
||
|
"\t<a cbot|type>point</a> start; // variable for initial pos.\n"
|
||
|
"\t<a cbot|type>object</a> item; // info. about power station\n"
|
||
|
"\t\n"
|
||
|
"\tstart = position; // store initial position\n"
|
||
|
"\t\n"
|
||
|
"\titem = <a cbot|radar>radar</a>(<a cbot|category>PowerStation</a>); // look for station\n"
|
||
|
"\t<a cbot|goto>goto</a>(item.position); // go to the power station\n"
|
||
|
"\t\n"
|
||
|
"\t<a cbot|while>while</a> ( <a cbot|object>energyCell.energyLevel</a> < 1 )\n"
|
||
|
"\t{\n"
|
||
|
"\t\t<a cbot|wait>wait</a>(1); // wait until recharged\n"
|
||
|
"\t}\n"
|
||
|
"\t\n"
|
||
|
"\t<a cbot|goto>goto</a>(start); // go back to initial pos.\n"
|
||
|
"\t<a cbot|message>message</a>(\"Recharge completed\");\n"
|
||
|
"}"
|
||
|
msgstr ""
|
||
|
"extern void object::Recharge2()\n"
|
||
|
"{\n"
|
||
|
"\t<a cbot|type>point</a> start; // zmienna pozycji startowej\n"
|
||
|
"\t<a cbot|type>object</a> item; // informacja o stacji energetycznej\n"
|
||
|
"\t\n"
|
||
|
"\tstart = position; // zachowaj pozycję startową\n"
|
||
|
"\t\n"
|
||
|
"\titem = <a cbot|radar>radar</a>(<a cbot|category>PowerStation</a>); // znajdź stację\n"
|
||
|
"\t<a cbot|goto>goto</a>(item.position); // idź do stacji energetycznej\n"
|
||
|
"\t\n"
|
||
|
"\t<a cbot|while>while</a> ( <a cbot|object>energyCell.energyLevel</a> < 1 )\n"
|
||
|
"\t{\n"
|
||
|
"\t\t<a cbot|wait>wait</a>(1); // poczekaj aż się naładuje\n"
|
||
|
"\t}\n"
|
||
|
"\t\n"
|
||
|
"\t<a cbot|goto>goto</a>(start); // wróć do pozycji startowej\n"
|
||
|
"\t<a cbot|message>message</a>(\"Ładowanie zakończone\");\n"
|
||
|
"}"
|
||
|
|
||
|
#. type: Bullet: 'o'
|
||
|
#: ../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/8_ServiceTower1.txt:51 ../E/8_ServiceTower1_link.txt:13 ../E/9_terranova.txt:29
|
||
|
#, no-wrap
|
||
|
msgid "<code><a programs/2_Recharge1>Recharge1</a></code>"
|
||
|
msgstr ""
|
||
|
|
||
|
#. type: Bullet: 'o'
|
||
|
#: ../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/8_ServiceTower1.txt:50 ../E/8_ServiceTower1_link.txt:12 ../E/9_terranova.txt:28
|
||
|
#, no-wrap
|
||
|
msgid "<code><a programs/3_Recharge2>Recharge2</a></code>"
|
||
|
msgstr ""
|
||
|
|
||
|
#. type: Plain text
|
||
|
#: ../E/4_CollectTitanium1.txt:2
|
||
|
#, no-wrap
|
||
|
msgid ""
|
||
|
"Below is one of the programs that has been developed by our engineers.\n"
|
||
|
"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>."
|
||
|
msgstr ""
|
||
|
"Poniżej znajdziesz jeden z programów napisanych przez naszych inżynierów.\n"
|
||
|
"Poleca on <a object|botgr>transporterowi</a> wziąć najbliższą porcję <a object|titanore>rudy </a> i dostarczyć ją do <a object|convert>huty</a>."
|
||
|
|
||
|
#. type: Plain text
|
||
|
#: ../E/4_CollectTitanium1.txt:5
|
||
|
#, no-wrap
|
||
|
msgid "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/>."
|
||
|
msgstr "Aby uruchomić ten program, zaznacz program <code>CollectTitanium1</code> na liście dostępnych dla robota programów (w lewej dolnej części ekranu), a następnie kliknij symbol strzałki <button 21/>. W każdej chwili można zatrzymać program i przejąć nad nim kontrolę, klikając przycisk stop <button 8/>."
|
||
|
|
||
|
#. type: Source code
|
||
|
#: ../E/4_CollectTitanium1.txt:7
|
||
|
#, no-wrap
|
||
|
msgid ""
|
||
|
"extern void object::CollectTitanium1()\n"
|
||
|
"{\n"
|
||
|
"\t// 1) Variable definition.\n"
|
||
|
"\t<a cbot|type>object</a> item; // info. about objects\n"
|
||
|
"\t\n"
|
||
|
"\t// 2) Go to the titanium ore and grab it.\n"
|
||
|
"\titem = <a cbot|radar>radar</a>(<a cbot|category>TitaniumOre</a>);// look for titanium ore\n"
|
||
|
"\t<a cbot|goto>goto</a>(item.position); // go to the position\n"
|
||
|
"\t<a cbot|grab>grab</a>(); // grab the titanium\n"
|
||
|
"\t\n"
|
||
|
"\t// 3) Go to the converter and drop it.\n"
|
||
|
"\titem = <a cbot|radar>radar</a>(<a cbot|category>Converter</a>); // look for converter\n"
|
||
|
"\t<a cbot|goto>goto</a>(item.position); // go to the position\n"
|
||
|
"\t<a cbot|drop>drop</a>(); // drop the titanium\n"
|
||
|
"\t<a cbot|move>move</a>(-2.5); // step back 2.5 m\n"
|
||
|
"}"
|
||
|
msgstr ""
|
||
|
"extern void object::CollectTitanium1()\n"
|
||
|
"{\n"
|
||
|
"\t// 1) Definicja zmiennej\n"
|
||
|
"\t<a cbot|type>object</a> item; // informacja o obiekcie\n"
|
||
|
"\t\n"
|
||
|
"\t// 2) Idź do rudy tytanu i podnieś ją\n"
|
||
|
"\titem = <a cbot|radar>radar</a>(<a cbot|category>TitaniumOre</a>);// znajdź rudę tytanu\n"
|
||
|
"\t<a cbot|goto>goto</a>(item.position); // idź do pozycji\n"
|
||
|
"\t<a cbot|grab>grab</a>(); // podnieś porcję rudy\n"
|
||
|
"\t\n"
|
||
|
"\t// 3) Idź do huty i zostaw rudę\n"
|
||
|
"\titem = <a cbot|radar>radar</a>(<a cbot|category>Converter</a>); // znajdź hutę\n"
|
||
|
"\t<a cbot|goto>goto</a>(item.position); // idź do pozycji\n"
|
||
|
"\t<a cbot|drop>drop</a>(); // zostaw rudę\n"
|
||
|
"\t<a cbot|move>move</a>(-2.5); // cofnij się o 2,5 m\n"
|
||
|
"}"
|
||
|
|
||
|
#. type: Plain text
|
||
|
#: ../E/5_CollectTitanium2.txt:2
|
||
|
#, no-wrap
|
||
|
msgid ""
|
||
|
"Below is one of the programs that has been developed by our engineers.\n"
|
||
|
"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."
|
||
|
msgstr ""
|
||
|
"Poniżej znajdziesz jeden z programów napisanych przez naszych inżynierów.\n"
|
||
|
"Poprzedni program został usprawniony: jeśli to konieczne <a object|botgr>transporter</a> w drodze powrotnej odwiedza <a object|station>stację energetyczną</a> w celu naładowania ogniwa elektrycznego."
|
||
|
|
||
|
#. type: Plain text
|
||
|
#: ../E/5_CollectTitanium2.txt:5
|
||
|
#, no-wrap
|
||
|
msgid "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>."
|
||
|
msgstr "Program ten działa również na <a object|botgj>transporterze latającym</a>, co może być konieczne jeśli <a object|derrick>kopalnia</a> jest na innej wyspie niż <a object|convert>huta</a>."
|
||
|
|
||
|
#. type: Source code
|
||
|
#: ../E/5_CollectTitanium2.txt:7
|
||
|
#, no-wrap
|
||
|
msgid ""
|
||
|
"extern void object::CollectTitanium2()\n"
|
||
|
"{\n"
|
||
|
"\t// 1) Variable definition.\n"
|
||
|
"\t<a cbot|type>object</a> item; // info. about objects\n"
|
||
|
"\t\n"
|
||
|
"\t// 2) Go to the titanium ore and grab it.\n"
|
||
|
"\titem = <a cbot|radar>radar</a>(<a cbot|category>TitaniumOre</a>);// look for titanium ore\n"
|
||
|
"\t<a cbot|goto>goto</a>(item.position); // go to the position\n"
|
||
|
"\t<a cbot|grab>grab</a>(); // grab the titanium\n"
|
||
|
"\t\n"
|
||
|
"\t// 3) Go to the converter and drop it.\n"
|
||
|
"\titem = <a cbot|radar>radar</a>(<a cbot|category>Converter</a>); // look for converter\n"
|
||
|
"\t<a cbot|goto>goto</a>(item.position); // go to the position\n"
|
||
|
"\t<a cbot|drop>drop</a>(); // drop the titanium\n"
|
||
|
"\t<a cbot|move>move</a>(-2.5); // step back 2.5 m\n"
|
||
|
"\t\t\n"
|
||
|
"\t// 4) If power cell half empty, recharges.\n"
|
||
|
"\tif ( energyCell.energyLevel < 0.5 )\n"
|
||
|
"\t{ // if so:\n"
|
||
|
"\t\titem = <a cbot|radar>radar</a>(<a cbot|category>PowerStation</a>); // look for station\n"
|
||
|
"\t\t<a cbot|goto>goto</a>(item.position); // go there\n"
|
||
|
"\t\t<a cbot|wait>wait</a>(5); // wait\n"
|
||
|
"\t}\n"
|
||
|
"}"
|
||
|
msgstr ""
|
||
|
"extern void object::CollectTitanium2()\n"
|
||
|
"{\n"
|
||
|
"\t// 1) Definicja zmiennej\n"
|
||
|
"\t<a cbot|type>object</a> item; // informacja o obiekcie\n"
|
||
|
"\t\n"
|
||
|
"\t// 2) Idź do rudy tytanu i podnieś ją\n"
|
||
|
"\titem = <a cbot|radar>radar</a>(<a cbot|category>TitaniumOre</a>);// znajdź rudę tytanu\n"
|
||
|
"\t<a cbot|goto>goto</a>(item.position); // idź do pozycji\n"
|
||
|
"\t<a cbot|grab>grab</a>(); // podnieś porcję rudy\n"
|
||
|
"\t\n"
|
||
|
"\t// 3) Idź do huty i zostaw rudę\n"
|
||
|
"\titem = <a cbot|radar>radar</a>(<a cbot|category>Converter</a>); // znajdź hutę\n"
|
||
|
"\t<a cbot|goto>goto</a>(item.position); // idź do pozycji\n"
|
||
|
"\t<a cbot|drop>drop</a>(); // zostaw rudę\n"
|
||
|
"\t<a cbot|move>move</a>(-2.5); // cofnij się o 2,5 m\n"
|
||
|
"\t\t\n"
|
||
|
"\t// 4) Naładuj ogniwo elektryczne, jeśli jest w połowie zużyte\n"
|
||
|
"\tif ( energyCell.energyLevel < 0.5 )\n"
|
||
|
"\t{ // jeśli tak:\n"
|
||
|
"\t\titem = <a cbot|radar>radar</a>(<a cbot|category>PowerStation</a>); // znajdź stację energetyczną\n"
|
||
|
"\t\t<a cbot|goto>goto</a>(item.position); // idź tam\n"
|
||
|
"\t\t<a cbot|wait>wait</a>(5); // poczekaj\n"
|
||
|
"\t}\n"
|
||
|
"}"
|
||
|
|
||
|
#. type: Bullet: 'o'
|
||
|
#: ../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/8_ServiceTower1.txt:49 ../E/8_ServiceTower1_link.txt:11 ../E/9_terranova.txt:27
|
||
|
#, no-wrap
|
||
|
msgid "<code><a programs/4_CollectTitanium1>CollectTitanium1</a></code>"
|
||
|
msgstr ""
|
||
|
|
||
|
#. type: Bullet: 'o'
|
||
|
#: ../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/8_ServiceTower1.txt:48 ../E/8_ServiceTower1_link.txt:10 ../E/9_terranova.txt:26
|
||
|
#, no-wrap
|
||
|
msgid "<code><a programs/5_CollectTitanium2>CollectTitanium2</a></code>"
|
||
|
msgstr ""
|
||
|
|
||
|
#. type: Plain text
|
||
|
#: ../E/6_KillAnt1.txt:2
|
||
|
#, no-wrap
|
||
|
msgid "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."
|
||
|
msgstr "Uruchom natychmiast program <code>KillAnt1</code> na Twoim <a object|botfr>dziale na kołach</a>, zabezpieczy on Twoją zachodnią flankę. W międzyczasie możesz opracować strategię obrony."
|
||
|
|
||
|
#. type: Source code
|
||
|
#: ../E/6_KillAnt1.txt:4
|
||
|
#, no-wrap
|
||
|
msgid ""
|
||
|
"extern void object::KillAnt1()\n"
|
||
|
"{\n"
|
||
|
"\t<a cbot|type>object</a> item; // info. about object\n"
|
||
|
"\t\n"
|
||
|
"\t<a cbot|goto>goto</a>(-30, 0); // go west\n"
|
||
|
"\t<a cbot|aim>aim</a>(0); // aim straight\n"
|
||
|
"\t\n"
|
||
|
"\t<a cbot|while>while</a> ( true ) // repeat forever:\n"
|
||
|
"\t{\n"
|
||
|
"\t\titem = <a cbot|radar>radar</a>(<a cbot|category>AlienAnt</a>, 0, 360, 0, 40);\n"
|
||
|
"\t\t<a cbot|if>if</a> ( item != null ) // ant detected ?\n"
|
||
|
"\t\t{\n"
|
||
|
"\t\t\t<a cbot|turn>turn</a>(<a cbot|direct>direction</a>(item.position));\n"
|
||
|
"\t\t\t<a cbot|fire>fire</a>(0.5); // shoot 0.5 s\n"
|
||
|
"\t\t}\n"
|
||
|
"\t\t<a cbot|wait>wait</a>(1); // wait 1 second\n"
|
||
|
"\t}\n"
|
||
|
"}"
|
||
|
msgstr ""
|
||
|
"extern void object::KillAnt1()\n"
|
||
|
"{\n"
|
||
|
"\t<a cbot|type>object</a> item; // informacja o obiekcie\n"
|
||
|
"\t\n"
|
||
|
"\t<a cbot|goto>goto</a>(-30, 0); // idź na zachód\n"
|
||
|
"\t<a cbot|aim>aim</a>(0); // celuj w poziomie\n"
|
||
|
"\t\n"
|
||
|
"\t<a cbot|while>while</a> ( true ) // powtarzaj w nieskończoność:\n"
|
||
|
"\t{\n"
|
||
|
"\t\titem = <a cbot|radar>radar</a>(<a cbot|category>AlienAnt</a>, 0, 360, 0, 40);\n"
|
||
|
"\t\t<a cbot|if>if</a> ( item != null ) // wykryto mrówkę?\n"
|
||
|
"\t\t{\n"
|
||
|
"\t\t\t<a cbot|turn>turn</a>(<a cbot|direct>direction</a>(item.position));\n"
|
||
|
"\t\t\t<a cbot|fire>fire</a>(0.5); // strzelaj przez 0,5 s\n"
|
||
|
"\t\t}\n"
|
||
|
"\t\t<a cbot|wait>wait</a>(1); // czekaj 1 sekundę\n"
|
||
|
"\t}\n"
|
||
|
"}"
|
||
|
|
||
|
#. type: Bullet: 'o'
|
||
|
#: ../E/10_FollowPhazer.txt:45 ../E/6_KillAnt1_link.txt:7 ../E/7_CollectTitanium3.txt:56 ../E/8_ServiceTower1.txt:47 ../E/8_ServiceTower1_link.txt:9 ../E/9_terranova.txt:25
|
||
|
#, no-wrap
|
||
|
msgid "<code><a programs/6_KillAnt1>KillAnt1</a></code>"
|
||
|
msgstr ""
|
||
|
|
||
|
#. type: Plain text
|
||
|
#: ../E/7_CollectTitanium3.txt:2
|
||
|
#, no-wrap
|
||
|
msgid "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."
|
||
|
msgstr "Ponieważ w tej misji potrzebne będzie mnóstwo tytanu, po raz kolejny usprawniliśmy program <code>CollectTitanium</code>. Gromadzi on całą serię kostek tytanu na wolnej powierzchni, więc możesz mu już pozwolić pracować zupełnie samodzielnie. Ładuje on również swoje ogniwo elektryczne w <a object|station>stacji energetycznej</a> jeśli jest to konieczne."
|
||
|
|
||
|
#. type: Source code
|
||
|
#: ../E/7_CollectTitanium3.txt:4
|
||
|
#, no-wrap
|
||
|
msgid ""
|
||
|
"extern void object::CollectTitanium3()\n"
|
||
|
"{\n"
|
||
|
"\t// 1) Variable definition.\n"
|
||
|
"\t<a cbot|type>object</a> item; // info. about objects\n"
|
||
|
"\t\n"
|
||
|
"\t<a cbot|while>while</a> (true) // repeat forever\n"
|
||
|
"\t{\n"
|
||
|
"\t\t\n"
|
||
|
"\t\t// 2) Go to the titanium ore and grab it.\n"
|
||
|
"\t\titem = <a cbot|radar>radar</a>(<a cbot|category>TitaniumOre</a>);// look for titanium\n"
|
||
|
"\t\t<a cbot|goto>goto</a>(item.position); // go to the position\n"
|
||
|
"\t\t<a cbot|grab>grab</a>(); // grab the titanium\n"
|
||
|
"\t\t\n"
|
||
|
"\t\t// 3) Go to the converter and drop it.\n"
|
||
|
"\t\titem = <a cbot|radar>radar</a>(<a cbot|category>Converter</a>); // look for converter\n"
|
||
|
"\t\t<a cbot|goto>goto</a>(item.position); // go to the position\n"
|
||
|
"\t\t<a cbot|drop>drop</a>(); // drop the titanium\n"
|
||
|
"\t\t<a cbot|move>move</a>(-2.5); // step back 2.5 m\n"
|
||
|
"\t\t\n"
|
||
|
"\t\t// 4) Wait until titanium converted and grab it\n"
|
||
|
"\t\t<a cbot|do>do</a>\n"
|
||
|
"\t\t{\n"
|
||
|
"\t\t\t<a cbot|wait>wait</a>(1); // wait for cube\n"
|
||
|
"\t\t\titem = <a cbot|radar>radar</a>(<a cbot|category>Titanium</a>, 0, 45, 0, 5);\n"
|
||
|
"\t\t}\n"
|
||
|
"\t\t<a cbot|while>while</a> ( item == null );\n"
|
||
|
"\t\t<a cbot|goto>goto</a>(item.position);\n"
|
||
|
"\t\t<a cbot|grab>grab</a>(); // grab it\n"
|
||
|
"\t\t\n"
|
||
|
"\t\t// 5) Drop on a free space\n"
|
||
|
"\t\t<a cbot|goto>goto</a>(<a cbot|space>space</a>(position)); // go to free space\n"
|
||
|
"\t\t<a cbot|drop>drop</a>(); // drop titanium\n"
|
||
|
"\t\t\n"
|
||
|
"\t\t// 6) If power cell half empty, recharges.\n"
|
||
|
"\t\t<a cbot|if>if</a> ( energyCell.energyLevel < 0.5 )\n"
|
||
|
"\t\t{ // if so:\n"
|
||
|
"\t\t\titem = <a cbot|radar>radar</a>(<a cbot|category>PowerStation</a>);\n"
|
||
|
"\t\t\t<a cbot|if>if</a> ( item != null ) // station found ?\n"
|
||
|
"\t\t\t{\n"
|
||
|
"\t\t\t\t<a cbot|goto>goto</a>(item.position); // go there\n"
|
||
|
"\t\t\t\t<a cbot|while>while</a> ( energyCell.energyLevel < 1 )\n"
|
||
|
"\t\t\t\t{ // until recharged:\n"
|
||
|
"\t\t\t\t\t<a cbot|wait>wait</a>(1); // wait\n"
|
||
|
"\t\t\t\t}\n"
|
||
|
"\t\t\t}\n"
|
||
|
"\t\t}\n"
|
||
|
"\t}\n"
|
||
|
"}"
|
||
|
msgstr ""
|
||
|
"extern void object::CollectTitanium3()\n"
|
||
|
"{\n"
|
||
|
"\t// 1) Deklaracje zmiennych.\n"
|
||
|
"\t<a cbot|type>object</a> item; // informacja o obiekcie\n"
|
||
|
"\t\n"
|
||
|
"\t<a cbot|while>while</a> (true) // informacja o obiekcie\n"
|
||
|
"\t{\n"
|
||
|
"\t\t\n"
|
||
|
"\t\t// 2) Idź do rudy tytanu i podnieś ją\n"
|
||
|
"\t\titem = <a cbot|radar>radar</a>(<a cbot|category>TitaniumOre</a>);// znajdź rudę tytanu\n"
|
||
|
"\t\t<a cbot|goto>goto</a>(item.position); // idź do pozycji\n"
|
||
|
"\t\t<a cbot|grab>grab</a>(); // podnieś porcję rudy\n"
|
||
|
"\t\t\n"
|
||
|
"\t\t// 3) Idź do huty i zostaw rudę\n"
|
||
|
"\t\titem = <a cbot|radar>radar</a>(<a cbot|category>Converter</a>); // znajdź hutę\n"
|
||
|
"\t\t<a cbot|goto>goto</a>(item.position); // idź do pozycji\n"
|
||
|
"\t\t<a cbot|drop>drop</a>(); // zostaw rudę\n"
|
||
|
"\t\t<a cbot|move>move</a>(-2.5); // cofnij się o 2,5 m\n"
|
||
|
"\t\t\n"
|
||
|
"\t\t// 4) Poczekaj na przetopienie rudy i zabierz tytan\n"
|
||
|
"\t\t<a cbot|do>do</a>\n"
|
||
|
"\t\t{\n"
|
||
|
"\t\t\t<a cbot|wait>wait</a>(1); // poczekaj na kostkę tytanu\n"
|
||
|
"\t\t\titem = <a cbot|radar>radar</a>(<a cbot|category>Titanium</a>, 0, 45, 0, 5);\n"
|
||
|
"\t\t}\n"
|
||
|
"\t\t<a cbot|while>while</a> ( item == null );\n"
|
||
|
"\t\t<a cbot|goto>goto</a>(item.position);\n"
|
||
|
"\t\t<a cbot|grab>grab</a>(); // weź ją\n"
|
||
|
"\t\t\n"
|
||
|
"\t\t// 5) Idź do wolnego miejsca i zostaw ją\n"
|
||
|
"\t\t<a cbot|goto>goto</a>(<a cbot|space>space</a>(position)); // idź do wolnego miejsca\n"
|
||
|
"\t\t<a cbot|drop>drop</a>(); // zostaw tytan\n"
|
||
|
"\t\t\n"
|
||
|
"\t\t// 6) Naładuj ogniwo elektryczne, jeśli jest w połowie zużyte\n"
|
||
|
"\t\t<a cbot|if>if</a> ( energyCell.energyLevel < 0.5 )\n"
|
||
|
"\t\t{ // jeśli tak:\n"
|
||
|
"\t\t\titem = <a cbot|radar>radar</a>(<a cbot|category>PowerStation</a>);\n"
|
||
|
"\t\t\t<a cbot|if>if</a> ( item != null ) // czy znaleziono stację \n"
|
||
|
"\t\t\t{\n"
|
||
|
"\t\t\t\t<a cbot|goto>goto</a>(item.position); // idź tam\n"
|
||
|
"\t\t\t\t<a cbot|while>while</a> ( energyCell.energyLevel < 1 )\n"
|
||
|
"\t\t\t\t{ // do czasu naładowania:\n"
|
||
|
"\t\t\t\t\t<a cbot|wait>wait</a>(1); // czekaj\n"
|
||
|
"\t\t\t\t}\n"
|
||
|
"\t\t\t}\n"
|
||
|
"\t\t}\n"
|
||
|
"\t}\n"
|
||
|
"}"
|
||
|
|
||
|
#. type: Plain text
|
||
|
#: ../E/8_ServiceTower1.txt:2
|
||
|
#, no-wrap
|
||
|
msgid "We have developed a program that takes care of recharging the power cell of a <a object|tower>defense tower</a>:"
|
||
|
msgstr "Napisaliśmy program zajmujący się ładowaniem ogniwa elektrycznego <a object|tower>wieży obronnej</a>:"
|
||
|
|
||
|
#. type: Bullet: '1)'
|
||
|
#: ../E/8_ServiceTower1.txt:4
|
||
|
#, no-wrap
|
||
|
msgid "Go to a <a object|tower>defense tower</a>."
|
||
|
msgstr "Idź do <a object|tower>wieży obronnej</a>."
|
||
|
|
||
|
#. type: Bullet: '2)'
|
||
|
#: ../E/8_ServiceTower1.txt:5
|
||
|
#, no-wrap
|
||
|
msgid "Wait until the <a object|power>power cell</a> is 80% empty."
|
||
|
msgstr "Poczekaj aż <a object|power>ogniwo elektryczne</a> będzie w 80% puste."
|
||
|
|
||
|
#. type: Bullet: '3)'
|
||
|
#: ../E/8_ServiceTower1.txt:6
|
||
|
#, no-wrap
|
||
|
msgid "Grab the <a object|power>power cell</a> and recharge it on a <a object|station>power station</a>."
|
||
|
msgstr "Zabierz <a object|power>ogniwo elektryczne</a> i doładuj je w <a object|station>stacji energetycznej</a>."
|
||
|
|
||
|
#. type: Bullet: '4)'
|
||
|
#: ../E/8_ServiceTower1.txt:7
|
||
|
#, no-wrap
|
||
|
msgid "Put it back on the <a object|tower>defense tower</a>."
|
||
|
msgstr "Odnieś je do <a object|tower>wieży obronnej</a>."
|
||
|
|
||
|
#. type: Plain text
|
||
|
#: ../E/8_ServiceTower1.txt:9
|
||
|
#, no-wrap
|
||
|
msgid "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."
|
||
|
msgstr "W celu zredukowania czasu gdy wieża pozostaje bez zasilania, zbuduj <a object|station>stację energetyczną</a> możliwie najbliżej wieży. Przydatną sztuczką jest zostawienie ogniwa elektrycznego na ziemi przed wieżą. Osy będą atakowały ogniwo i jeśli pierwszy strzał będzie niecelny lub osa przybędzie gdy wieża będzie bez zasilania, zniszczone zostanie tylko ogniw, a nie wieża obronna."
|
||
|
|
||
|
#. type: Source code
|
||
|
#: ../E/8_ServiceTower1.txt:11
|
||
|
#, no-wrap
|
||
|
msgid ""
|
||
|
"extern void object::ServiceTower1()\n"
|
||
|
"{\n"
|
||
|
"\t<a cbot|object>object</a> tower; // info. about tower\n"
|
||
|
"\t<a cbot|object>object</a> station; // info. about station\n"
|
||
|
"\t\n"
|
||
|
"\t// 1) go to the defense tower\n"
|
||
|
"\ttower = <a cbot|radar>radar</a>(DefenseTower); // look for tower\n"
|
||
|
"\t<a cbot|goto>goto</a>(tower.position); // go there\n"
|
||
|
"\t\n"
|
||
|
"\t<a cbot|while>while</a> ( true ) // repeat forever\n"
|
||
|
"\t{\n"
|
||
|
"\t\t// 2) wait until power cell is empty\n"
|
||
|
"\t\t<a cbot|while>while</a> ( tower.energyCell.energyLevel > 0.2 )\n"
|
||
|
"\t\t{\n"
|
||
|
"\t\t\t<a cbot|wait>wait</a>(2);\n"
|
||
|
"\t\t}\n"
|
||
|
"\t\t<a cbot|grab>grab</a>(); // grab the power cell\n"
|
||
|
"\t\t\n"
|
||
|
"\t\t// 3) go to the power station to recharge\n"
|
||
|
"\t\tstation = <a cbot|radar>radar</a>(PowerStation);\n"
|
||
|
"\t\t<a cbot|goto>goto</a>(station.position); // go there\n"
|
||
|
"\t\t<a cbot|while>while</a> ( load.energyLevel < 1 )\n"
|
||
|
"\t\t{\n"
|
||
|
"\t\t\t<a cbot|wait>wait</a>(1); // wait until recharged\n"
|
||
|
"\t\t}\n"
|
||
|
"\t\t\n"
|
||
|
"\t\t// 4) go back to defense tower\n"
|
||
|
"\t\t<a cbot|goto>goto</a>(tower.position); // go to tower\n"
|
||
|
"\t\t<a cbot|drop>drop</a>(); // drop the power cell\n"
|
||
|
"\t}\n"
|
||
|
"}"
|
||
|
msgstr ""
|
||
|
"extern void object::ServiceTower1()\n"
|
||
|
"{\n"
|
||
|
"\t<a cbot|object>object</a> tower; // informacje o wieży\n"
|
||
|
"\t<a cbot|object>object</a> station; // informacje o stacji\n"
|
||
|
"\t\n"
|
||
|
"\t// 1) idź do wieży obronnej\n"
|
||
|
"\ttower = <a cbot|radar>radar</a>(DefenseTower); // znajdź wieżę\n"
|
||
|
"\t<a cbot|goto>goto</a>(tower.position); // i idź tam\n"
|
||
|
"\t\n"
|
||
|
"\t<a cbot|while>while</a> ( true ) // powtarzaj w nieskończoność\n"
|
||
|
"\t{\n"
|
||
|
"\t\t// 2) poczekaj na wyczerpanie ogniwa elektrycznego\n"
|
||
|
"\t\t<a cbot|while>while</a> ( tower.energyCell.energyLevel > 0.2 )\n"
|
||
|
"\t\t{\n"
|
||
|
"\t\t\t<a cbot|wait>wait</a>(2);\n"
|
||
|
"\t\t}\n"
|
||
|
"\t\t<a cbot|grab>grab</a>(); // weź ogniwo elektryczne\n"
|
||
|
"\t\t\n"
|
||
|
"\t\t// 3) idź do elektrowni i naładuj je\n"
|
||
|
"\t\tstation = <a cbot|radar>radar</a>(PowerStation);\n"
|
||
|
"\t\t<a cbot|goto>goto</a>(station.position); // idź tam\n"
|
||
|
"\t\t<a cbot|while>while</a> ( load.energyLevel < 1 )\n"
|
||
|
"\t\t{\n"
|
||
|
"\t\t\t<a cbot|wait>wait</a>(1); // poczekaj aż się naładuje\n"
|
||
|
"\t\t}\n"
|
||
|
"\t\t\n"
|
||
|
"\t\t// 4) wróć do wieży obronnej\n"
|
||
|
"\t\t<a cbot|goto>goto</a>(tower.position); // idź do wieży\n"
|
||
|
"\t\t<a cbot|drop>drop</a>(); // zostaw ogniwo elektryczne\n"
|
||
|
"\t}\n"
|
||
|
"}"
|
||
|
|
||
|
#. type: Bullet: 'o'
|
||
|
#: ../E/10_FollowPhazer.txt:44 ../E/8_ServiceTower1.txt:46 ../E/8_ServiceTower1_link.txt:8 ../E/9_terranova.txt:24
|
||
|
#, no-wrap
|
||
|
msgid "<code><a programs/7_CollectTitanium3>CollectTitanium3</a></code>"
|
||
|
msgstr ""
|
||
|
|
||
|
#. type: Bullet: 'o'
|
||
|
#: ../E/10_FollowPhazer.txt:43 ../E/8_ServiceTower1_link.txt:7 ../E/9_terranova.txt:23
|
||
|
#, no-wrap
|
||
|
msgid "<code><a programs/8_ServiceTower1>ServiceTower1</a></code>"
|
||
|
msgstr ""
|
||
|
|
||
|
#. type: Plain text
|
||
|
#: ../E/9_terranova.txt:2
|
||
|
#, no-wrap
|
||
|
msgid "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:"
|
||
|
msgstr "Zgodnie z danymi dostarczonymi przez satelitę, nasi inżynierowie napisali dwa programy. Pierwszy z nich prowadzi <a object|botshld>robota osłaniacza</a> przez wąską dolinę na północ, w pobliże klucza. Możesz za nim iść nie obawiając się żadnego ataku:"
|
||
|
|
||
|
#. type: Source code
|
||
|
#: ../E/9_terranova.txt:4
|
||
|
#, no-wrap
|
||
|
msgid ""
|
||
|
"extern void object::Outward()\n"
|
||
|
"{\n"
|
||
|
"\t<a cbot|shield>shield</a>(1,15); // activate the shield\n"
|
||
|
"\t<a cbot|goto>goto</a>(6,160); // go close to the key\n"
|
||
|
"\t<a cbot|shield>shield</a>(0,15); // deactivate the shield\n"
|
||
|
"}"
|
||
|
msgstr ""
|
||
|
"extern void object::Outward()\n"
|
||
|
"{\n"
|
||
|
"\t<a cbot|shield>shield</a>(1,15); // uaktywnij osłonę\n"
|
||
|
"\t<a cbot|goto>goto</a>(6,160); // podejdź do klucza\n"
|
||
|
"\t<a cbot|shield>shield</a>(0,15); // wyłącz osłonę\n"
|
||
|
"}"
|
||
|
|
||
|
#. type: Plain text
|
||
|
#: ../E/9_terranova.txt:11
|
||
|
#, no-wrap
|
||
|
msgid "The second program guides the <a object|botshld>shielder bot</a> back to the <a object|base>spaceship</a>:"
|
||
|
msgstr "Drugi program kieruje <a object|botshld>robota osłaniacza</a> z powrotem do <a object|base>statku kosmicznego</a>:"
|
||
|
|
||
|
#. type: Source code
|
||
|
#: ../E/9_terranova.txt:13
|
||
|
#, no-wrap
|
||
|
msgid ""
|
||
|
"extern void object::Return()\n"
|
||
|
"{\n"
|
||
|
"\t<a cbot|shield>shield</a>(1,15); // activate the shield\n"
|
||
|
"\t<a cbot|goto>goto</a>(8,60); // go to the spaceship\n"
|
||
|
"\t<a cbot|shield>shield</a>(0,15); // deactivate the shield\n"
|
||
|
"}"
|
||
|
msgstr ""
|
||
|
"extern void object::Return()\n"
|
||
|
"{\n"
|
||
|
"\t<a cbot|shield>shield</a>(1,15); // uaktywnij osłonę\n"
|
||
|
"\t<a cbot|goto>goto</a>(8,60); // wróć na statek kosmiczny\n"
|
||
|
"\t<a cbot|shield>shield</a>(0,15); // wyłącz osłonę\n"
|
||
|
"}"
|
||
|
|
||
|
#. type: Plain text
|
||
|
#: ../E/10_FollowPhazer.txt:2
|
||
|
#, no-wrap
|
||
|
msgid "Below is a program that has been developed by our engineers."
|
||
|
msgstr "Poniżej znajdziesz jeden z programów napisanych przez naszych inżynierów."
|
||
|
|
||
|
#. type: Plain text
|
||
|
#: ../E/10_FollowPhazer.txt:4
|
||
|
#, no-wrap
|
||
|
msgid "It instructs the <a object|botshld>shielder</a> to follow and protect the <a object|botphaz>phazer</a>."
|
||
|
msgstr "Poleca on <a object|botshld>osłaniaczowi</a> śledzenie i ochronę <a object|botphaz>działa fazowego</a>."
|
||
|
|
||
|
#. type: Source code
|
||
|
#: ../E/10_FollowPhazer.txt:6
|
||
|
#, no-wrap
|
||
|
msgid ""
|
||
|
"extern void object::FollowPhazer()\n"
|
||
|
"{\n"
|
||
|
"\t<a cbot|type>object</a> item; // info. about phazer\n"
|
||
|
"\t<a cbot|type>point</a> dest; // position where to go\n"
|
||
|
"\t<a cbot|type>float</a> dist; // distance to phazer\n"
|
||
|
"\t\n"
|
||
|
"\titem = <a cbot|radar>radar</a>(<a cbot|category>PhazerShooter</a>);\n"
|
||
|
"\t<a cbot|if>if</a> ( item == null )\n"
|
||
|
"\t{\n"
|
||
|
"\t\t<a cbot|message>message</a>(\"No phazer found\");\n"
|
||
|
"\t\t<a cbot|return>return</a>; // stop the program\n"
|
||
|
"\t}\n"
|
||
|
"\t<a cbot|shield>shield</a>(1, 25); // activate the shield\n"
|
||
|
"\t\n"
|
||
|
"\t<a cbot|while>while</a> ( true ) // repeat forever\n"
|
||
|
"\t{\n"
|
||
|
"\t\titem = <a cbot|radar>radar</a>(PhazerShooter);// look for phazer\n"
|
||
|
"\t\t<a cbot|if>if</a> ( item == null ) break;\n"
|
||
|
"\t\t\n"
|
||
|
"\t\tdist = <a cbot|dist>distance</a>(item.position, position);\n"
|
||
|
"\t\t<a cbot|if>if</a> ( dist < 5 )\n"
|
||
|
"\t\t{ // if closer than 5 m:\n"
|
||
|
"\t\t\t<a cbot|wait>wait</a>(1); // wait\n"
|
||
|
"\t\t}\n"
|
||
|
"\t\t<a cbot|if>else</a> // otherwise:\n"
|
||
|
"\t\t{ // Calculate a position 5 m before the phazer\n"
|
||
|
"\t\t\tdest.x = (item.position.x-position.x)*((dist-5)/dist)+position.x;\n"
|
||
|
"\t\t\tdest.y = (item.position.y-position.y)*((dist-5)/dist)+position.y;\n"
|
||
|
"\t\t\tdest.z = (item.position.z-position.z)*((dist-5)/dist)+position.z;\n"
|
||
|
"\t\t\t<a cbot|goto>goto</a>(dest, 0, 1, 1); // and go there\n"
|
||
|
"\t\t}\n"
|
||
|
"\t}\n"
|
||
|
"}"
|
||
|
msgstr ""
|
||
|
"extern void object::FollowPhazer()\n"
|
||
|
"{\n"
|
||
|
"\t<a cbot|type>object</a> item; // informacje o dziale fazowym\n"
|
||
|
"\t<a cbot|type>point</a> dest; // pozycja docelowa\n"
|
||
|
"\t<a cbot|type>float</a> dist; // odległość do działa fazowego\n"
|
||
|
"\t\n"
|
||
|
"\titem = <a cbot|radar>radar</a>(<a cbot|category>PhazerShooter</a>);\n"
|
||
|
"\t<a cbot|if>if</a> ( item == null )\n"
|
||
|
"\t{\n"
|
||
|
"\t\t<a cbot|message>message</a>(\"Nie znaleziono działa fazowego\");\n"
|
||
|
"\t\t<a cbot|return>return</a>; // zatrzymaj program\n"
|
||
|
"\t}\n"
|
||
|
"\t<a cbot|shield>shield</a>(1, 25); // aktywuj osłonę\n"
|
||
|
"\t\n"
|
||
|
"\t<a cbot|while>while</a> ( true ) // powtarzaj w nieskończoność\n"
|
||
|
"\t{\n"
|
||
|
"\t\titem = <a cbot|radar>radar</a>(PhazerShooter);// znajdź działo fazowe\n"
|
||
|
"\t\t<a cbot|if>if</a> ( item == null ) break;\n"
|
||
|
"\t\t\n"
|
||
|
"\t\tdist = <a cbot|dist>distance</a>(item.position, position);\n"
|
||
|
"\t\t<a cbot|if>if</a> ( dist < 5 )\n"
|
||
|
"\t\t{ // jeśli jest bliżej niż 5 m:\n"
|
||
|
"\t\t\t<a cbot|wait>wait</a>(1); // czekaj\n"
|
||
|
"\t\t}\n"
|
||
|
"\t\t<a cbot|if>else</a> // w przeciwnym przypadku:\n"
|
||
|
"\t\t{ // Oblicz pozycję 5 m przed działem fazowym\n"
|
||
|
"\t\t\tdest.x = (item.position.x-position.x)*((dist-5)/dist)+position.x;\n"
|
||
|
"\t\t\tdest.y = (item.position.y-position.y)*((dist-5)/dist)+position.y;\n"
|
||
|
"\t\t\tdest.z = (item.position.z-position.z)*((dist-5)/dist)+position.z;\n"
|
||
|
"\t\t\t<a cbot|goto>goto</a>(dest, 0, 1, 1); // i idź tam\n"
|
||
|
"\t\t}\n"
|
||
|
"\t}\n"
|
||
|
"}"
|