248 lines
6.8 KiB
Plaintext
248 lines
6.8 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.
|
|
#
|
|
#, fuzzy
|
|
msgid ""
|
|
msgstr ""
|
|
"Project-Id-Version: PACKAGE VERSION\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: \n"
|
|
"MIME-Version: 1.0\n"
|
|
"Content-Type: text/plain; charset=UTF-8\n"
|
|
"Content-Transfer-Encoding: 8bit\n"
|
|
|
|
#. type: One-char language identifier
|
|
#: levels-po/exercises/chapter002/level007/scene_langchar.txt:1
|
|
#, no-wrap
|
|
msgid "E"
|
|
msgstr ""
|
|
|
|
#. type: Title-text
|
|
#: levels/exercises/chapter002/level007/scene.txt:1
|
|
#, no-wrap
|
|
msgid "Wasp Hunter 2"
|
|
msgstr ""
|
|
|
|
#. type: Resume-text
|
|
#: levels/exercises/chapter002/level007/scene.txt:2
|
|
#, no-wrap
|
|
msgid "Get better at shooting down the wasps."
|
|
msgstr ""
|
|
|
|
#. type: ScriptName-text
|
|
#: levels/exercises/chapter002/level007/scene.txt:3
|
|
#, no-wrap
|
|
msgid "Wasp2"
|
|
msgstr ""
|
|
|
|
#. type: \b; header
|
|
#: levels/exercises/chapter002/level007/help/help.E.txt:1
|
|
#, no-wrap
|
|
msgid "Objective"
|
|
msgstr ""
|
|
|
|
#. type: Plain text
|
|
#: levels/exercises/chapter002/level007/help/help.E.txt:3
|
|
#, no-wrap
|
|
msgid ""
|
|
"Bring down the flying wasps in a more efficient way than with the previous "
|
|
"program."
|
|
msgstr ""
|
|
|
|
#. type: \b; header
|
|
#: levels/exercises/chapter002/level007/help/help.E.txt:4
|
|
#, no-wrap
|
|
msgid "Program"
|
|
msgstr ""
|
|
|
|
#. type: Plain text
|
|
#: levels/exercises/chapter002/level007/help/help.E.txt:6
|
|
#, no-wrap
|
|
msgid ""
|
|
"Here is again the program of the previous exercise that shoots down all the "
|
|
"wasps after many, many unsuccessful attempts:"
|
|
msgstr ""
|
|
|
|
#. type: \s; block (usually verbatim code)
|
|
#: levels/exercises/chapter002/level007/help/help.E.txt:39
|
|
#, no-wrap
|
|
msgid ""
|
|
"extern void object::Wasp1()\n"
|
|
"{\n"
|
|
"\t<a cbot|type>object</a> item;\n"
|
|
"\t\n"
|
|
"\t<a cbot|aim>aim</a>(0);\n"
|
|
"\t\n"
|
|
"\t<a cbot|while>while</a> (true)\n"
|
|
"\t{\n"
|
|
"\t\t<a cbot|while>while</a> (<a cbot|radar>radar</a>(AlienWasp, 0, 360, 0, "
|
|
"20) == null)\n"
|
|
"\t\t{\n"
|
|
"\t\t\titem = <a cbot|radar>radar</a>(AlienWasp);\n"
|
|
"\t\t\t<a cbot|turn>turn</a>(<a cbot|direct>direction</a>(item.position));\n"
|
|
"\t\t\t<a cbot|motor>motor</a>(1,1);\n"
|
|
"\t\t\t\n"
|
|
"\t\t\t<a cbot|jet>jet</a>(0);\n"
|
|
"\t\t\t<a cbot|if>if</a> (position.z > item.position.z)\n"
|
|
"\t\t\t{\n"
|
|
"\t\t\t\t<a cbot|jet>jet</a>(-0.3);\n"
|
|
"\t\t\t}\n"
|
|
"\t\t\t\n"
|
|
"\t\t\t<a cbot|if>if</a> (position.z < item.position.z - 1)\n"
|
|
"\t\t\t{\n"
|
|
"\t\t\t\t<a cbot|jet>jet</a>(0.3);\n"
|
|
"\t\t\t}\n"
|
|
"\t\t\t\n"
|
|
"\t\t\t<a cbot|wait>wait</a>(0.2);\n"
|
|
"\t\t}\n"
|
|
"\t\titem = <a cbot|radar>radar</a>(AlienWasp);\n"
|
|
"\t\t<a cbot|turn>turn</a>(<a cbot|direct>direction</a>(item.position));\n"
|
|
"\t\t<a cbot|fire>fire</a>(1);\n"
|
|
"\t}\n"
|
|
"}"
|
|
msgstr ""
|
|
|
|
#. type: Plain text
|
|
#: levels/exercises/chapter002/level007/help/help.E.txt:41
|
|
#, no-wrap
|
|
msgid ""
|
|
"The many failures are due to the fact that the wasp is already gone before "
|
|
"the bullets can reach it. The only way to improve the program consists in "
|
|
"setting the power of the two motors and of the jet in such a way that the "
|
|
"bot follows the movement of the target during the burst."
|
|
msgstr ""
|
|
|
|
#. type: Plain text
|
|
#: levels/exercises/chapter002/level007/help/help.E.txt:43
|
|
#, no-wrap
|
|
msgid ""
|
|
"Just before the shot, the program adjusts a last time the direction with "
|
|
"<c/>turn(direction(item.position));<n/>. In order to follow the wasp during "
|
|
"the burst, you have to \"remember\" the angle of this last rotation: if the "
|
|
"angle was positive (rotation to the left), the bot must continue to turn "
|
|
"left during the burst; if the angle was negative, the bot must continue to "
|
|
"turn right."
|
|
msgstr ""
|
|
|
|
#. type: Plain text
|
|
#: levels/exercises/chapter002/level007/help/help.E.txt:45
|
|
#, no-wrap
|
|
msgid ""
|
|
"In order to \"remember\" the angle of the last rotation, we need a variable "
|
|
"that can contain just one number. If we choose to call it "
|
|
"<code>angle</code>, we must define the variable with the following line at "
|
|
"the beginning of the program:"
|
|
msgstr ""
|
|
|
|
#. type: \s; block (usually verbatim code)
|
|
#: levels/exercises/chapter002/level007/help/help.E.txt:47
|
|
#, no-wrap
|
|
msgid "\t<a cbot|type>float</a> angle;"
|
|
msgstr ""
|
|
|
|
#. type: Plain text
|
|
#: levels/exercises/chapter002/level007/help/help.E.txt:49
|
|
#, no-wrap
|
|
msgid ""
|
|
"The variable type <a cbot|type>float</a> is the variable type that can "
|
|
"contain any number, i.e. whole numbers or real numbers. Please refer to the "
|
|
"<a cbot|type>text about variable types</a> if you want to know more about "
|
|
"the different types of variables and what they can contain."
|
|
msgstr ""
|
|
|
|
#. type: Plain text
|
|
#: levels/exercises/chapter002/level007/help/help.E.txt:51
|
|
#, no-wrap
|
|
msgid ""
|
|
"Just before the instruction <c/>fire(1);<n/>, instead of writing <c/><a "
|
|
"cbot|turn>turn</a>(<a cbot|direct>direction</a>(item.position));<n/>, we "
|
|
"will put the rotation angle into the variable <code>angle</code>:"
|
|
msgstr ""
|
|
|
|
#. type: \s; block (usually verbatim code)
|
|
#: levels/exercises/chapter002/level007/help/help.E.txt:53
|
|
#, no-wrap
|
|
msgid "\tangle = direction(item.position);"
|
|
msgstr ""
|
|
|
|
#. type: Plain text
|
|
#: levels/exercises/chapter002/level007/help/help.E.txt:55
|
|
#, no-wrap
|
|
msgid ""
|
|
"Then we perform the rotation, and we set the power of the motors so that the "
|
|
"bot continues the movement:"
|
|
msgstr ""
|
|
|
|
#. type: \s; block (usually verbatim code)
|
|
#: levels/exercises/chapter002/level007/help/help.E.txt:65
|
|
#, no-wrap
|
|
msgid ""
|
|
"\tturn(angle);\n"
|
|
"\tif (angle < 0)\n"
|
|
"\t{\n"
|
|
"\t\tmotor(1,0.5);\n"
|
|
"\t}\n"
|
|
"\telse\n"
|
|
"\t{\n"
|
|
"\t\tmotor(0.5,1);\n"
|
|
"\t}"
|
|
msgstr ""
|
|
|
|
#. type: Plain text
|
|
#: levels/exercises/chapter002/level007/help/help.E.txt:67
|
|
#, no-wrap
|
|
msgid ""
|
|
"The instruction <code>else</code> determines what instructions the program "
|
|
"should execute if the condition stated in the <code>if</code> instruction is "
|
|
"false."
|
|
msgstr ""
|
|
|
|
#. type: Plain text
|
|
#: levels/exercises/chapter002/level007/help/help.E.txt:69
|
|
#, no-wrap
|
|
msgid ""
|
|
"Then we must set the power of the jet so that the bot follows the wasp also "
|
|
"in the vertical direction:"
|
|
msgstr ""
|
|
|
|
#. type: \s; block (usually verbatim code)
|
|
#: levels/exercises/chapter002/level007/help/help.E.txt:80
|
|
#, no-wrap
|
|
msgid ""
|
|
"\tjet(0);\n"
|
|
"\tif(position.z > item.position.z)\n"
|
|
"\t{\n"
|
|
"\t\tjet(-0.3);\n"
|
|
"\t}\n"
|
|
"\t\n"
|
|
"\tif(position.z < item.position.z - 1)\n"
|
|
"\t{\n"
|
|
"\t\tjet(0.3);\n"
|
|
"\t}"
|
|
msgstr ""
|
|
|
|
#. type: Plain text
|
|
#: levels/exercises/chapter002/level007/help/help.E.txt:82
|
|
#, no-wrap
|
|
msgid "As you will see, this program is much more efficient than the previous one!"
|
|
msgstr ""
|
|
|
|
#. type: \t; header
|
|
#: levels/exercises/chapter002/level007/help/help.E.txt:83
|
|
#, no-wrap
|
|
msgid "See also"
|
|
msgstr ""
|
|
|
|
#. type: Plain text
|
|
#: levels/exercises/chapter002/level007/help/help.E.txt:84
|
|
#, no-wrap
|
|
msgid ""
|
|
"<a cbot>Programming</a>, <a cbot|type>types</a> and <a "
|
|
"cbot|category>categories</a>."
|
|
msgstr ""
|