# SOME DESCRIPTIVE TITLE # Copyright (C) YEAR Free Software Foundation, Inc. # This file is distributed under the same license as the PACKAGE package. # FIRST AUTHOR , YEAR. # # msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "POT-Creation-Date: 2013-11-11 09:56+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \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 #: train207.languagecode:1 #, no-wrap msgid "E" msgstr "R" #. type: Title-text #: train207/scene.txt:1 #, no-wrap msgid "train207:Wasp Hunter 2" msgstr "train207:Охотник на ос 2" #. type: Resume-text #: train207/scene.txt:2 #, no-wrap msgid "train207:Get better at shooting down the wasps." msgstr "train207:Улучшите технику стрельбы по осам." #. type: ScriptName-text #: train207/scene.txt:3 #, no-wrap msgid "train207:Wasp2" msgstr "train207:Wasp2" #. type: \b; header #: train207-help/twasp2.txt:1 #, no-wrap msgid "Objective" msgstr "" #. type: Plain text #: train207-help/twasp2.txt:3 #, no-wrap msgid "Bring down the flying wasps in a more efficient way than with the previous program." msgstr "" #. type: \b; header #: train207-help/twasp2.txt:4 #, no-wrap msgid "Program" msgstr "" #. type: Plain text #: train207-help/twasp2.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) #: train207-help/twasp2.txt:39 #, no-wrap msgid "" "extern void object::Wasp1()\n" "{\n" "\tobject item;\n" "\t\n" "\taim(0);\n" "\t\n" "\twhile (true)\n" "\t{\n" "\t\twhile (radar(AlienWasp, 0, 360, 0, 20) == null)\n" "\t\t{\n" "\t\t\titem = radar(AlienWasp);\n" "\t\t\tturn(direction(item.position));\n" "\t\t\tmotor(1,1);\n" "\t\t\t\n" "\t\t\tjet(0);\n" "\t\t\tif (position.z > item.position.z)\n" "\t\t\t{\n" "\t\t\t\tjet(-0.3);\n" "\t\t\t}\n" "\t\t\t\n" "\t\t\tif (position.z < item.position.z - 1)\n" "\t\t\t{\n" "\t\t\t\tjet(0.3);\n" "\t\t\t}\n" "\t\t\t\n" "\t\t\twait(0.2);\n" "\t\t}\n" "\t\titem = radar(AlienWasp);\n" "\t\tturn(direction(item.position));\n" "\t\tfire(1);\n" "\t}\n" "}" msgstr "" #. type: Plain text #: train207-help/twasp2.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 #: train207-help/twasp2.txt:43 #, no-wrap msgid "Just before the shot, the program adjusts a last time the direction with turn(direction(item.position));. 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 #: train207-help/twasp2.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 angle, we must define the variable with the following line at the beginning of the program:" msgstr "" #. type: \s; block (usually verbatim code) #: train207-help/twasp2.txt:47 #, no-wrap msgid "\tfloat angle;" msgstr "" #. type: Plain text #: train207-help/twasp2.txt:49 #, no-wrap msgid "The variable type float is the variable type that can contain any number, i.e. whole numbers or real numbers. Please refer to the text about variable types if you want to know more about the different types of variables and what they can contain." msgstr "" #. type: Plain text #: train207-help/twasp2.txt:51 #, no-wrap msgid "Just before the instruction fire(1);, instead of writing turn(direction(item.position));, we will put the rotation angle into the variable angle:" msgstr "" #. type: \s; block (usually verbatim code) #: train207-help/twasp2.txt:53 #, no-wrap msgid "\tangle = direction(item.position);" msgstr "" #. type: Plain text #: train207-help/twasp2.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) #: train207-help/twasp2.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 #: train207-help/twasp2.txt:67 #, no-wrap msgid "The instruction else determines what instructions the program should execute if the condition stated in the if instruction is false." msgstr "" #. type: Plain text #: train207-help/twasp2.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) #: train207-help/twasp2.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 #: train207-help/twasp2.txt:82 #, no-wrap msgid "As you will see, this program is much more efficient than the previous one!" msgstr "" #. type: \t; header #: train207-help/twasp2.txt:83 #, no-wrap msgid "See also" msgstr "" #. type: Plain text #: train207-help/twasp2.txt:84 #, no-wrap msgid "Programming, types and categories." msgstr ""