# 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: 2014-01-03 23:21+0600\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=CHARSET\n" "Content-Transfer-Encoding: 8bit\n" #. type: Plain text #: cbot.languagecode:1 msgid "E" msgstr "R" #. type: \b; header #: cbot-help/abstime.txt:1 #, no-wrap msgid "Instruction <code>abstime</code>" msgstr "" #. type: Plain text #: cbot-help/abstime.txt:3 cbot-help/deletef.txt:7 cbot-help/delinfo.txt:3 cbot-help/errmode.txt:6 cbot-help/flatgrnd.txt:3 cbot-help/readln.txt:9 cbot-help/send.txt:3 cbot-help/strfind.txt:5 cbot-help/strleft.txt:5 cbot-help/strlen.txt:5 cbot-help/strlower.txt:5 cbot-help/strmid.txt:5 cbot-help/strright.txt:5 cbot-help/strupper.txt:5 cbot-help/strval.txt:9 cbot-help/testinfo.txt:3 cbot-help/writeln.txt:9 #, no-wrap msgid "Syntax¦:" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/abstime.txt:4 #, no-wrap msgid "<c/>abstime ( );<n/>" msgstr "" #. type: Plain text #: cbot-help/abstime.txt:6 #, no-wrap msgid "Return the time in seconds elapsed since the beginning of the mission." msgstr "" #. type: \t; header #: cbot-help/abstime.txt:7 #, no-wrap msgid "Return: <code><a cbot|float>float</a></code>" msgstr "" #. type: Plain text #: cbot-help/abstime.txt:9 #, no-wrap msgid "Time in seconds." msgstr "" #. type: \t; header #: cbot-help/abstime.txt:10 cbot-help/aim.txt:20 cbot-help/array.txt:30 cbot-help/bloc.txt:48 cbot-help/bool.txt:4 cbot-help/break.txt:24 cbot-help/category.txt:107 cbot-help/class.txt:70 cbot-help/close.txt:6 cbot-help/cond.txt:27 cbot-help/continue.txt:24 cbot-help/deletef.txt:9 cbot-help/delinfo.txt:13 cbot-help/direct.txt:13 cbot-help/dist.txt:29 cbot-help/dist2d.txt:13 cbot-help/do.txt:27 cbot-help/drop.txt:28 cbot-help/eof.txt:13 cbot-help/errmode.txt:32 cbot-help/expr.txt:87 cbot-help/extern.txt:29 cbot-help/false.txt:4 cbot-help/file.txt:16 cbot-help/fire.txt:30 cbot-help/flatgrnd.txt:16 cbot-help/float.txt:24 cbot-help/for.txt:38 cbot-help/function.txt:84 cbot-help/goto.txt:34 cbot-help/grab.txt:28 cbot-help/if.txt:39 cbot-help/int.txt:18 cbot-help/jet.txt:14 cbot-help/message.txt:24 cbot-help/motor.txt:38 cbot-help/move.txt:21 cbot-help/nan.txt:14 cbot-help/new.txt:19 cbot-help/null.txt:4 cbot-help/object.txt:68 cbot-help/open.txt:18 cbot-help/openfile.txt:10 cbot-help/point.txt:35 cbot-help/pointer.txt:51 cbot-help/private.txt:17 cbot-help/public.txt:49 cbot-help/radar.txt:58 cbot-help/readln.txt:18 cbot-help/receive.txt:16 cbot-help/recycle.txt:12 cbot-help/retobj.txt:13 cbot-help/return.txt:29 cbot-help/search.txt:16 cbot-help/send.txt:17 cbot-help/shield.txt:18 cbot-help/sizeof.txt:21 cbot-help/sniff.txt:16 cbot-help/space.txt:22 cbot-help/static.txt:20 cbot-help/strfind.txt:18 cbot-help/string.txt:32 cbot-help/strleft.txt:14 cbot-help/strlen.txt:12 cbot-help/strlower.txt:10 cbot-help/strmid.txt:18 cbot-help/strright.txt:14 cbot-help/strupper.txt:10 cbot-help/strval.txt:17 cbot-help/synchro.txt:23 cbot-help/term.txt:30 cbot-help/testinfo.txt:16 cbot-help/this.txt:52 cbot-help/thump.txt:12 cbot-help/topo.txt:13 cbot-help/true.txt:4 cbot-help/turn.txt:32 cbot-help/type.txt:32 cbot-help/var.txt:66 cbot-help/void.txt:10 cbot-help/wait.txt:21 cbot-help/while.txt:46 cbot-help/writeln.txt:19 #, no-wrap msgid "See also" msgstr "" #. type: Plain text #: cbot-help/abstime.txt:11 cbot-help/aim.txt:21 cbot-help/array.txt:31 cbot-help/bool.txt:5 cbot-help/break.txt:25 cbot-help/cond.txt:29 cbot-help/continue.txt:25 cbot-help/deletef.txt:10 cbot-help/direct.txt:15 cbot-help/dist.txt:30 cbot-help/dist2d.txt:14 cbot-help/drop.txt:29 cbot-help/errmode.txt:33 cbot-help/expr.txt:88 cbot-help/extern.txt:30 cbot-help/false.txt:6 cbot-help/fire.txt:31 cbot-help/flatgrnd.txt:17 cbot-help/float.txt:25 cbot-help/for.txt:40 cbot-help/function.txt:85 cbot-help/goto.txt:35 cbot-help/grab.txt:29 cbot-help/if.txt:40 cbot-help/int.txt:20 cbot-help/jet.txt:16 cbot-help/message.txt:25 cbot-help/move.txt:22 cbot-help/nan.txt:16 cbot-help/object.txt:70 cbot-help/openfile.txt:11 cbot-help/point.txt:36 cbot-help/radar.txt:60 cbot-help/recycle.txt:14 cbot-help/retobj.txt:15 cbot-help/return.txt:31 cbot-help/search.txt:18 cbot-help/shield.txt:19 cbot-help/sizeof.txt:22 cbot-help/sniff.txt:17 cbot-help/space.txt:23 cbot-help/string.txt:33 cbot-help/term.txt:31 cbot-help/thump.txt:13 cbot-help/topo.txt:14 cbot-help/true.txt:5 cbot-help/turn.txt:33 cbot-help/type.txt:33 cbot-help/var.txt:67 cbot-help/void.txt:11 cbot-help/wait.txt:22 #, no-wrap msgid "" "<a cbot>Programming</a>, <a cbot|type>types</a> and <a " "cbot|category>categories</a>." msgstr "" #. type: \b; header #: cbot-help/aim.txt:1 #, no-wrap msgid "Instruction <code>aim</code>" msgstr "" #. type: Plain text #: cbot-help/aim.txt:3 cbot-help/break.txt:3 cbot-help/continue.txt:3 cbot-help/direct.txt:3 cbot-help/motor.txt:16 cbot-help/space.txt:3 cbot-help/while.txt:21 #, no-wrap msgid "Syntax :" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/aim.txt:4 #, no-wrap msgid "<c/>aim ( angle );<n/>" msgstr "" #. type: Plain text #: cbot-help/aim.txt:6 #, no-wrap msgid "" "This instruction sets the vertical angle of the cannon. The following robots " "are equipped with a cannon: \n" msgstr "" #. type: Bullet: 'o' #: cbot-help/aim.txt:6 cbot-help/fire.txt:14 #, no-wrap msgid "<a object|botfr>Shooter</a>" msgstr "" #. type: Bullet: 'o' #: cbot-help/aim.txt:7 cbot-help/fire.txt:15 #, no-wrap msgid "<a object|botor>Orga shooter</a>" msgstr "" #. type: Bullet: 'o' #: cbot-help/aim.txt:8 cbot-help/fire.txt:16 #, no-wrap msgid "<a object|botphaz>Phazer shooter</a>" msgstr "" #. type: Plain text #: cbot-help/aim.txt:11 cbot-help/fire.txt:19 #, no-wrap msgid "" "When controlling the robot through programming, the only way to turn the gun " "left or right is to turn the whole robot with the instruction <code><a " "cbot|turn>turn</a></code>." msgstr "" #. type: \t; header #: cbot-help/aim.txt:12 cbot-help/turn.txt:24 #, no-wrap msgid "angle: <code><a cbot|float>float</a></code>" msgstr "" #. type: Plain text #: cbot-help/aim.txt:14 #, no-wrap msgid "" "Angle in degrees of the gun relative to the robot. A positive value orients " "the gun upward. For shooters and orga shooters, the angle must range from " "<code>-20</code> to <code>+20</code> degrees. For phazer shooters, the angle " "must range from <code>-20</code> to <code>45</code> degrees." msgstr "" #. type: \t; header #: cbot-help/aim.txt:15 cbot-help/drop.txt:23 cbot-help/fire.txt:25 cbot-help/goto.txt:29 cbot-help/grab.txt:23 cbot-help/move.txt:16 cbot-help/recycle.txt:7 cbot-help/sniff.txt:11 cbot-help/thump.txt:7 cbot-help/turn.txt:27 #, no-wrap msgid "Return value: <code><a cbot|int>int</a></code>" msgstr "" #. type: Plain text #: cbot-help/aim.txt:19 #, no-wrap msgid "" "Zero if everything is OK, a value different from zero if the rotation could " "not be performed: \n" "<code>== 0 </code>The gun has now got the desired orientation\n" "<code>!= 0 </code>rotation impossible" msgstr "" #. type: \b; header #: cbot-help/array.txt:1 #, no-wrap msgid "Arrays" msgstr "" #. type: Plain text #: cbot-help/array.txt:3 #, no-wrap msgid "" "An array is basically a collection of variables of the same type or " "class. You can use N dimensionnal arrays in the CBOT language. Each " "dimension is limited to 9999 elements. You must use square brackets " "<code>[]</code> after the type name or the variable name to declare an " "array." msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/array.txt:8 #, no-wrap msgid "" "int [ ] a; // an array of int\n" "int a [12]; // an array of int limited to 12 elements\n" "string s[3]; // an array of 3 strings\n" "float xy[][]; // an 2 dimensionnal array of floats" msgstr "" #. type: Plain text #: cbot-help/array.txt:10 #, no-wrap msgid "" "Actually when the CBOT interpreter encounters an array declaration, it just " "creates a <code><a cbot|null>null</a></code> <a cbot|pointer>reference</a>:" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/array.txt:12 #, no-wrap msgid "int a[5]; // a is now a null reference" msgstr "" #. type: Plain text #: cbot-help/array.txt:14 #, no-wrap msgid "" "As soon as you put values into the array, the elements are created and the " "reference is initialized:" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/array.txt:17 #, no-wrap msgid "" "a[2] = 213; // a points to\n" " // 3 élements [0], [1] et [2]" msgstr "" #. type: Plain text #: cbot-help/array.txt:19 #, no-wrap msgid "" "After this operation, <code>a</code> contains a reference to the elements of " "the array. Elements <code>[0]</code> and <code>[1]</code> are created but " "not initialized because an array cannot contain empty elements. The <code><a " "cbot|sizeof>sizeof</a></code> instruction allows you to obtain the number of " "elements contained in an array." msgstr "" #. type: Plain text #: cbot-help/array.txt:21 #, no-wrap msgid "" "When an array is declared with a maximum size, the program will stop as soon " "as there is an access beyond the maximum array size. No error is signalled " "during compilation even if the error is obvious:" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/array.txt:27 #, no-wrap msgid "" "{\n" "\tint a[5];\n" "\ta[7] = 123; // no error at compile time\n" "\t // but error at run time\n" "}" msgstr "" #. type: Plain text #: cbot-help/array.txt:29 #, no-wrap msgid "" "If you pass an array as parameter to a <a cbot|function>function</a>, the " "function only receives a <a cbot|pointer>reference</a> to the array. That " "means if you modify an array element in the function, the element of the " "array that has been passed the function will be actuallay modified." msgstr "" #. type: \b; header #: cbot-help/bloc.txt:1 #, no-wrap msgid "Blocks" msgstr "" #. type: Plain text #: cbot-help/bloc.txt:3 #, no-wrap msgid "" "You can use braces <code>{ }</code> to group a number of instructions " "together in order to make one single block out of them, for example: " msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/bloc.txt:10 #, no-wrap msgid "" "\t{\n" "\t\tfloat t;\n" "\t\tt = a;\n" "\t\ta = b;\n" "\t\tb = t; // switches round a and b\n" "\t}" msgstr "" #. type: Plain text #: cbot-help/bloc.txt:13 #, no-wrap msgid "" "Every instruction in the block is followed by a <a cbot|term>semicolon</a>, " "but the block itself is not. \n" "Let us take the following example with the instruction <code><a " "cbot|if>if</a></code> to illustrate the use of blocks in a program:" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/bloc.txt:18 #, no-wrap msgid "" "\tif ( a < b )\n" "\t\t<n/>instruction 1<c/>;\n" "\t\t<n/>instruction 2<c/>;\n" "\t<n/>instruction 3<c/>;" msgstr "" #. type: Plain text #: cbot-help/bloc.txt:21 #, no-wrap msgid "" "If the <a cbot|cond>condition</a> is true, instructions 1, 2 and 3 are " "performed. If the condition is false, only instruction 1 is ignored, " "instructions 2 and 3 are performed. The fact that instruction 2 is lined up " "with instruction 1 does not matter. \n" "If you want to perform instructions 1 and 2 only if the condition is true, " "you have to bracket them together in a block: " msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/bloc.txt:28 #, no-wrap msgid "" "\tif ( a < b )\n" "\t{\n" "\t\t<n/>instruction 1<c/>;\n" "\t\t<n/>instruction 2<c/>;\n" "\t}\n" "\t<n/>instruction 3<c/>;" msgstr "" #. type: Plain text #: cbot-help/bloc.txt:31 #, no-wrap msgid "" "Blocks may be needed with instructions <code><a cbot|if>if</a></code>, " "<code><a cbot|while>while</a></code> and <code><a cbot|for>for</a></code>, " "in order to group several instructions that should be performed only if a " "condition is true, or repeated several times. \n" "You can fit blocks into other blocks, on as many levels as you need. Here is " "an example of imbrication on two levels :" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/bloc.txt:42 #, no-wrap msgid "" "\tif ( a > b )\n" "\t{\n" "\t\tint i = 0;\n" "\t\twhile ( i < 18 )\n" "\t\t{\n" "\t\t\tmove(10);\n" "\t\t\tturn(5);\n" "\t\t\ti = i+1;\n" "\t\t}\n" "\t}" msgstr "" #. type: Plain text #: cbot-help/bloc.txt:44 #, no-wrap msgid "" "You had better line up the open brace <code>{</code> with the closing brace " "<code>}</code> in order to improve readability, but it is not " "compulsory. The following example takes less space, is equivalent to the " "previous example, but it is not advisable to write your programs in the " "following style : " msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/bloc.txt:47 #, no-wrap msgid "" "\tif(a>b) { int i=0; while(i<18) {\n" "\tmove(10);turn(5);i=i+1; }}" msgstr "" #. type: Plain text #: cbot-help/bloc.txt:49 cbot-help/do.txt:28 cbot-help/motor.txt:39 cbot-help/while.txt:47 #, no-wrap msgid "" "<a cbot>Instructions</a>, <a cbot|type>types</a> and <a " "cbot|category>categories</a>." msgstr "" #. type: \b; header #: cbot-help/bool.txt:1 #, no-wrap msgid "Type <code>bool</code>" msgstr "" #. type: Plain text #: cbot-help/bool.txt:3 #, no-wrap msgid "" "In a variable of this type you can put a boolean value, that is a value that " "can take only two states: true or false. " msgstr "" #. type: \b; header #: cbot-help/break.txt:1 #, no-wrap msgid "Instruction <code>break</code>" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/break.txt:7 #, no-wrap msgid "" "<c/>while ( condition )\n" "{\n" "\tbreak;\n" "}" msgstr "" #. type: Plain text #: cbot-help/break.txt:9 #, no-wrap msgid "" "With this instruction, you can get out immediately of a <code><a " "cbot|while>while</a></code> or <code><a cbot|for>for</a></code> loop." msgstr "" #. type: Plain text #: cbot-help/break.txt:11 cbot-help/continue.txt:11 #, no-wrap msgid "Here is an example:" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/break.txt:22 #, no-wrap msgid "" "<c/>int i = 0;\n" "while ( true )\n" "{\n" "\t<n/>Instructions ...<c/>\n" "\ti = i+1;\n" "\tif ( i >= 10 )\n" "\t{\n" "\t\tbreak;\n" "\t}\n" "\t<n/>more instructions ...<c/>\n" "}" msgstr "" #. type: Plain text #: cbot-help/break.txt:23 #, no-wrap msgid "<n/> " msgstr "" #. type: \b; header #: cbot-help/category.txt:1 #, no-wrap msgid "Value <code>Categories</code>" msgstr "" #. type: Plain text #: cbot-help/category.txt:3 #, no-wrap msgid "" "Categories represent the names of objects in the CBOT language. Everything " "in COLOBOT is an object: robots, buildings, raw materials, etc., even " "yourself." msgstr "" #. type: Plain text #: cbot-help/category.txt:5 #, no-wrap msgid "" "In a program, categories are always displayed on a <format const>red " "background</format>. If a category isn't highlighted in red, it is " "misspelled. Caps and lower cases should be kept as is." msgstr "" #. type: Plain text #: cbot-help/category.txt:7 #, no-wrap msgid "Below are the different categories available :" msgstr "" #. type: \t; header #: cbot-help/category.txt:8 #, no-wrap msgid "Buildings :" msgstr "" #. type: Plain text #: cbot-help/category.txt:29 #, no-wrap msgid "" "<button 176/> <code><a object|Huston>Houston</a> </code>Mission " "Control\n" "<button 171/> <code><a object|base>SpaceShip</a> </code>Spaceship\n" "<button 160/> <code><a object|factory>BotFactory</a> </code>Robot " "Factory\n" "<button 163/> <code><a object|research>ResearchCenter</a> " "</code>Research Center\n" "<button 168/> <code><a object|radar>RadarStation</a> </code>Radar\n" "<button 172/> <code><a object|exchange>ExchangePost</a> " "</code>Information Exchange Post\n" "<button 169/> <code><a object|repair>RepairCenter</a> </code>Repair " "Center\n" "<button 165/> <code><a object|tower>DefenseTower</a> </code>Defense " "Tower\n" "<button 166/> <code><a object|labo>AutoLab</a> </code>Organic " "Matter Analyzer \n" "<button 164/> <code><a object|station>PowerStation</a> </code>Power " "Station\n" "<button 167/> <code><a object|energy>PowerPlant</a> </code>Power " "Cell Factory\n" "<button 170/> <code><a object|nuclear>NuclearPlant</a> </code>Nuclear " "Plant\n" "<button 162/> <code><a object|convert>Converter</a> </code>Titanium " "Converter\n" "<button 161/> <code><a object|derrick>Derrick</a> " "</code>Derrick\n" "<button 174/> <code><a object|captor>PowerCaptor</a> </code>Parabolic " "Lightning Conductor\n" "<button 175/> <code><a object|safe>Vault</a> </code>Vault\n" " <code><a object|start>StartArea</a> </code>Starting Pad\n" " <code><a object|goal>GoalArea</a> </code>Finishing Pad\n" " <code><a object|nest>AlienNest</a> </code>Alien Nest" msgstr "" #. type: \t; header #: cbot-help/category.txt:31 #, no-wrap msgid "Portable Objects :" msgstr "" #. type: Plain text #: cbot-help/category.txt:42 #, no-wrap msgid "" " <code><a object|titanore>TitaniumOre</a> </code>Titanium " "Ore\n" " <code><a object|uranore>UraniumOre</a> </code>Uranium Ore\n" " <code><a object|titan>Titanium</a> </code>Cube of " "converted Titanium\n" " <code><a object|power>PowerCell</a> </code>Regular Power " "Cell\n" " <code><a object|atomic>NuclearCell</a> </code>Nuclear Power " "Cell\n" " <code><a object|bullet>OrgaMatter</a> </code>Organic " "Matter\n" " <code><a object|bbox>BlackBox</a> </code>Black Box\n" " <code><a object|tnt>TNT</a> </code>Explosive " "device\n" " <code><a object|key>KeyA..D</a> </code>Keys A, B, C and " "D" msgstr "" #. type: \t; header #: cbot-help/category.txt:44 #, no-wrap msgid "Robots :" msgstr "" #. type: Plain text #: cbot-help/category.txt:48 #, no-wrap msgid "" "<button 158/> <code><a object|bottr>PracticeBot</a> " "</code>Practice Bot\n" "<button 173/> <code><a object|bottarg>TargetBot</a> " "</code>Target Bot" msgstr "" #. type: Plain text #: cbot-help/category.txt:53 #, no-wrap msgid "" "<button 137/> <code><a object|botgr>WheeledGrabber</a> " "</code>Wheeled Grabber\n" "<button 138/> <code><a object|botgc>TrackedGrabber</a> " "</code>Tracked Grabber\n" "<button 139/> <code><a object|botgj>WingedGrabber</a> " "</code>Winged Grabber\n" "<button 150/> <code><a object|botgs>LeggedGrabber</a> " "</code>Legged Grabber" msgstr "" #. type: Plain text #: cbot-help/category.txt:58 #, no-wrap msgid "" "<button 140/> <code><a object|botsr>WheeledSniffer</a> " "</code>Wheeled Sniffer\n" "<button 141/> <code><a object|botsc>TrackedSniffer</a> " "</code>Tracked Sniffer\n" "<button 142/> <code><a object|botsj>WingedSniffer</a> " "</code>Winged Sniffer\n" "<button 152/> <code><a object|botss>LeggedSniffer</a> " "</code>Legged Sniffer" msgstr "" #. type: Plain text #: cbot-help/category.txt:63 #, no-wrap msgid "" "<button 143/> <code><a object|botfr>WheeledShooter</a> " "</code>Wheeled Shooter\n" "<button 144/> <code><a object|botfc>TrackedShooter</a> " "</code>Tracked Shooter\n" "<button 145/> <code><a object|botfj>WingedShooter</a> " "</code>Winged Shooter\n" "<button 151/> <code><a object|botfs>LeggedShooter</a> " "</code>Legged Shooter" msgstr "" #. type: Plain text #: cbot-help/category.txt:68 #, no-wrap msgid "" "<button 153/> <code><a object|botor>WheeledOrgaShooter</a> " "</code>Wheeled Orga Shooter\n" "<button 154/> <code><a object|botoc>TrackedOrgaShooter</a> " "</code>Tracked Orga Shooter\n" "<button 155/> <code><a object|botoj>WingedOrgaShooter</a> " "</code>Winged Orga Shooter\n" "<button 156/> <code><a object|botos>LeggedOrgaShooter</a> " "</code>Legged Orga Shooter" msgstr "" #. type: Plain text #: cbot-help/category.txt:74 #, no-wrap msgid "" "<button 149/> <code><a object|botsub>Subber</a> " "</code>Subber\n" "<button 148/> <code><a object|botrecy>Recycler</a> " "</code>Recycler\n" "<button 157/> <code><a object|botshld>Shielder</a> " "</code>Shielder\n" "<button 146/> <code><a object|bottump>Thumper</a> " "</code>Thumper\n" "<button 147/> <code><a object|botphaz>PhazerShooter</a> " "</code>Phazer Shooter" msgstr "" #. type: \t; header #: cbot-help/category.txt:76 #, no-wrap msgid "Enemies :" msgstr "" #. type: Plain text #: cbot-help/category.txt:84 #, no-wrap msgid "" " <code><a object|mother>AlienQueen</a> </code>Alien Queen\n" " <code><a object|egg>AlienEgg</a> </code>Alien Egg\n" " <code><a object|ant>AlienAnt</a> </code>Ant\n" " <code><a object|spider>AlienSpider</a> </code>Spider\n" " <code><a object|wasp>AlienWasp</a> </code>Wasp\n" " <code><a object|worm>AlienWorm</a> </code>Worm" msgstr "" #. type: \t; header #: cbot-help/category.txt:86 #, no-wrap msgid "Miscellaneous :" msgstr "" #. type: Plain text #: cbot-help/category.txt:93 #, no-wrap msgid "" "<button 136/> <code><a object|human>Me</a> </code>You!\n" " <code><a object|mine>Mine</a> </code>Mine\n" " <code><a object|barrier>Barrier</a> </code>Barrier\n" " <code><a object|wreck>Wreck</a> </code>Derelict bot\n" " <code><a object|ruin>Ruin</a> </code>Derelict building" msgstr "" #. type: \t; header #: cbot-help/category.txt:95 #, no-wrap msgid "Flags and Other Indicators :" msgstr "" #. type: Plain text #: cbot-help/category.txt:106 #, no-wrap msgid "" " <code><a object|flag>BlueFlag</a> </code>Blue Flag\n" " <code><a object|flag>RedFlag</a> </code>Red Flag\n" " <code><a object|flag>GreenFlag</a> </code>Green Flag\n" " <code><a object|flag>YellowFlag</a> </code>Yellow Flag\n" " <code><a object|flag>VioletFlag</a> </code>Violet Flag\n" " <code><a object|waypoint>WayPoint</a> </code>Checkpoint\n" " <code><a object|enerspot>EnergySite</a> </code>Underground " "Energy Deposit\n" " <code><a object|stonspot>TitaniumSite</a> </code>Underground " "Titanium Deposit\n" " <code><a object|uranspot>UraniumSite</a> </code>Underground " "Uranium Deposit" msgstr "" #. type: Plain text #: cbot-help/category.txt:108 #, no-wrap msgid "<a cbot>CBOT Language</a> and <a cbot|type>Variables</a>." msgstr "" #. type: \b; header #: cbot-help/class.txt:1 #, no-wrap msgid "Instruction <code>class</code>" msgstr "" #. type: Plain text #: cbot-help/class.txt:3 #, no-wrap msgid "This allows you to declare a class definition using following syntax:" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/class.txt:8 #, no-wrap msgid "" "public class ClassName\n" "{\n" "\tdeclarations;\n" "}" msgstr "" #. type: Plain text #: cbot-help/class.txt:10 #, no-wrap msgid "" "Classes can only be <a cbot|public>public</a>, that is they can be used from " "all bots in a mission. Class members are also public, that is they are " "accessible from outside the class. Class members can be fields or functions " "(also called methods), for example the followin class <code>MyClass</code> " "contains 4 fields (a, b, x and s) and one method (MyFunction)." msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/class.txt:21 #, no-wrap msgid "" "public class MyClass\n" "{\n" "\tint a, b;\n" "\tfloat x = 3.33;\n" "\tstring s = \"hello\";\n" "\tfloat MyFunction( float value )\n" "\t{\n" "\t\treturn (value*x)-1;\n" "\t}\n" "}" msgstr "" #. type: Plain text #: cbot-help/class.txt:23 #, no-wrap msgid "" "As shown in this exemple the class members can be initialized " "(<code>x=3.33</code>). You can also define a constructor which is a special " "method having the same name as the class name. This method will be called " "automatically at creation time of a class instance. You can also declare " "more than one method with the same name but different parameters." msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/class.txt:36 #, no-wrap msgid "" "public class MyClass\n" "{\n" "\tint a, b;\n" "\tvoid MyClass( )\n" "\t{\n" "\t\ta = 2; b = 3;\n" "\t}\n" "\tvoid MyClass( int a, int b )\n" "\t{\n" "\t\tthis.a = a; this.b = b;\n" "\t}\n" "}" msgstr "" #. type: Plain text #: cbot-help/class.txt:38 #, no-wrap msgid "" "In this example two constructors are declared for <code>MyClass</code>, one " "without parameters and the other one with two parameters. As the names of " "the parameters of the second constructor are the same as the names of the " "two members <code>a</code> et <code>b</code> we must use the <code><a " "cbot|this>this</a>.a</code> and <code><a cbot|this>this</a>.b</code> to " "avoid confusion with the parameters. Another more simpler solution would be " "to give different names to the parameters." msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/class.txt:46 #, no-wrap msgid "" "void Test( )\n" "{\n" "\tMyClass item1(); // constr. w/o parameters\n" "\tMyClass item2(4, 5); // constr. with 2 parameters\n" "\tMyClass item3; // no constructor called,\n" " // therefore item3 == null\n" "}" msgstr "" #. type: Plain text #: cbot-help/class.txt:48 #, no-wrap msgid "" "You can also define a destructor. This must be a <code>void</code> fonction " "without parameters that has the same name as the class name but prefixed by " "the ~ character. The destructor is called automatically as soon as the class " "instance is no more referenced by anyone." msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/class.txt:67 #, no-wrap msgid "" "public class MyClass\n" "{\n" "\tstatic private int counter = 0; // instance counter\n" "\tvoid MyClass( )\n" "\t{\n" "\t\tcounter ++; // one instance more\n" "\t}\n" "\tvoid ~MyClass( )\n" "\t{\n" "\t\tcounter --; // one instance less\n" "\t}\n" "}\n" "void Test()\n" "{\n" "\tMyClass item1( ); // counter = 1\n" "\tMyClass item2( ); // counter = 2\n" "\titem1 = null; // counter = 1\n" "} // counter = 0" msgstr "" #. type: Plain text #: cbot-help/class.txt:69 #, no-wrap msgid "" "If you pass a class instance as parameter to a <a " "cbot|function>function</a>, the function only receives a <a " "cbot|pointer>reference</a> to the instance. That means if you modify the " "instance in the function, the instance that has been passed to the function " "will be actuallay modified." msgstr "" #. type: Plain text #: cbot-help/class.txt:72 #, no-wrap msgid "" "<code><a cbot|public>public</a></code>, <code><a " "cbot|private>private</a></code>, <code><a cbot|static>static</a></code>, " "<code><a cbot|synchro>synchronized</a></code>, <code><a " "cbot|new>new</a></code>, <code><a cbot|pointer>reference</a></code>, " "<code><a cbot|this>this</a></code>\n" "<a cbot>Programming</a>, <a cbot|type>types</a> and <a " "cbot|category>categories</a>." msgstr "" #. type: \b; header #: cbot-help/close.txt:1 #, no-wrap msgid "Instruction <code>close</code>" msgstr "" #. type: Plain text #: cbot-help/close.txt:3 #, no-wrap msgid "" "Close a file opened previously with <code><a cbot|open>open</a></code>. This " "is a method of the <code><a cbot|file>file</a></code> class; therefore you " "cannot write <code>close()</code> but only <code>handle.close()</code>¦:" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/close.txt:5 #, no-wrap msgid "\thandle.close();" msgstr "" #. type: Plain text #: cbot-help/close.txt:8 #, no-wrap msgid "" "<code><a cbot|file>file</a></code>, <code><a cbot|open>open</a></code>, " "<code><a cbot|readln>readln</a></code>, <code><a " "cbot|writeln>writeln</a></code> and <code><a cbot|eof>eof</a></code>.\n" "<a cbot>Programming</a>, <a cbot|type>types</a> and <a " "cbot|category>categories</a>." msgstr "" #. type: \b; header #: cbot-help/cond.txt:1 #, no-wrap msgid "Conditions" msgstr "" #. type: Plain text #: cbot-help/cond.txt:4 #, no-wrap msgid "" "A condition is a special <a cbot|expr>expression</a> that returns a <a " "cbot|bool>boolean</a> value, that can only be either <code><a " "cbot|true>true</a></code> or <code><a cbot|false>false</a></code>. With a " "condition, you can choose f. ex. if the instructions in a <code><a " "cbot|while>while</a></code> loop must be repeated again, or if the " "instruction in a <code><a cbot|if>if</a></code> bloc must be executed.\n" "Here are some operators that you can use in conditions to compare two values " ":" msgstr "" #. type: Plain text #: cbot-help/cond.txt:11 #, no-wrap msgid "" "<code>a == b </code><code>a</code> equals <code>b</code>\n" "<code>a != b </code><code>a</code> is different from <code>b</code>\n" "<code>a < b </code><code>a</code> smaller than <code>b</code>\n" "<code>a <= b </code><code>a</code> smaller than or equal to " "<code>b</code>\n" "<code>a > b </code><code>a</code> greater than <code>b</code>\n" "<code>a >= b </code><code>a</code> greater than or equal to <code>b</code>" msgstr "" #. type: Plain text #: cbot-help/cond.txt:13 #, no-wrap msgid "For example :" msgstr "" #. type: Plain text #: cbot-help/cond.txt:20 #, no-wrap msgid "" "<code>12 == 12 </code>returns true\n" "<code>45 != 47 </code>returns true \n" "<code>99 == 98 </code>returns false\n" "<code>12 < -1 </code>returns false\n" "<code>12 >= 10 </code>returns true \n" "<code>12 >= 12 </code>returns true " msgstr "" #. type: \t; header #: cbot-help/cond.txt:21 #, no-wrap msgid "Remarque" msgstr "" #. type: Plain text #: cbot-help/cond.txt:23 #, no-wrap msgid "" "Be careful not to confuse the equality comparison <code>==</code> with the " "assignment of a <a cbot|var>variable</a> <code>=</code>." msgstr "" #. type: Plain text #: cbot-help/cond.txt:26 #, no-wrap msgid "" "<code>a == b</code> is an expression that compares <code>a</code> with " "<code>b</code>.\n" "<code>a = b</code> is an expression that copies the value of <code>b</code> " "into <code>a</code>." msgstr "" #. type: \b; header #: cbot-help/continue.txt:1 #, no-wrap msgid "Instruction <code>continue</code>" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/continue.txt:7 #, no-wrap msgid "" "<c/>while ( condition )\n" "{\n" "\tcontinue;\n" "}" msgstr "" #. type: Plain text #: cbot-help/continue.txt:9 #, no-wrap msgid "" "With this instruction, you can jump over the rest of instructions in the " "<code><a cbot|bloc>bloc</a></code> of a <code><a cbot|while>while</a></code> " "or <code><a cbot|for>for</a></code> loop: The execution will resume at the " "beginning of the bloc, the next time the loop is repeated." msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/continue.txt:21 #, no-wrap msgid "" "<c/>int i = 0;\n" "while ( i < 5 )\n" "{\n" "\ti = i+1;\n" "\tif ( i == 3 )\n" "\t{\n" "\t\tcontinue;\n" "\t}\n" "\t<n/>Instructions ...<c/>\n" "}" msgstr "" #. type: Plain text #: cbot-help/continue.txt:23 #, no-wrap msgid "" "The instructions will only be executed for the values of <code>i</code> 1, " "2, 4 and 5." msgstr "" #. type: \b; header #: cbot-help/deletef.txt:1 #, no-wrap msgid "Instruction <code>deletefile</code>" msgstr "" #. type: Plain text #: cbot-help/deletef.txt:3 #, no-wrap msgid "The deletefile instruction deletes an existing file in the files/ folder. " msgstr "" #. type: Plain text #: cbot-help/deletef.txt:5 #, no-wrap msgid "" "Files can only be deleted in the files/ folder which is located in the " "folder where Colobot has been installed. You cannot not delete files that " "are located elsewhere than in the files/ folder." msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/deletef.txt:8 #, no-wrap msgid "<c/>deletefile ( filename );<n/>" msgstr "" #. type: \b; header #: cbot-help/delinfo.txt:1 #, no-wrap msgid "Instruction <code>deleteinfo</code>" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/delinfo.txt:4 #, no-wrap msgid "<c/>deleteinfo ( name, power );<n/>" msgstr "" #. type: Plain text #: cbot-help/delinfo.txt:6 #, no-wrap msgid "" "Delete an existing information in the closest <a object|exchange>information " "exchange post</a>." msgstr "" #. type: \t; header #: cbot-help/delinfo.txt:7 cbot-help/receive.txt:7 cbot-help/send.txt:7 cbot-help/testinfo.txt:7 #, no-wrap msgid "name: <code>string</code>" msgstr "" #. type: Plain text #: cbot-help/delinfo.txt:9 #, no-wrap msgid "" "Name of the information to be deleted. This name is a string: it must be " "written in quotation marks \"¦\"." msgstr "" #. type: \t; header #: cbot-help/delinfo.txt:10 cbot-help/receive.txt:10 cbot-help/send.txt:14 cbot-help/testinfo.txt:10 #, no-wrap msgid "power: <code>float</code>" msgstr "" #. type: Plain text #: cbot-help/delinfo.txt:12 #, no-wrap msgid "" "Power of the transmitter, which corresponds to the maximal distance between " "the sender and the exchange post. If the distance is longer, the information " "won't be deleted. Default value is 10 metres." msgstr "" #. type: Plain text #: cbot-help/delinfo.txt:15 #, no-wrap msgid "" "<code><a cbot|receive>receive</a></code>, <code><a cbot|send>send</a></code> " "and <code><a cbot|testinfo>testinfo</a></code>.\n" "<a cbot>Programming</a>, <a cbot|type>types</a> and <a " "cbot|category>categories</a>." msgstr "" #. type: \b; header #: cbot-help/direct.txt:1 #, no-wrap msgid "Instruction <code>direction</code>" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/direct.txt:4 #, no-wrap msgid "<c/>direction ( pos );<n/>" msgstr "" #. type: Plain text #: cbot-help/direct.txt:6 #, no-wrap msgid "" "Calculates the rotation that a robot must perform in order to point towards " "a given position. " msgstr "" #. type: \t; header #: cbot-help/direct.txt:7 cbot-help/goto.txt:17 #, no-wrap msgid "pos: <code><a cbot|point>point</a></code>" msgstr "" #. type: Plain text #: cbot-help/direct.txt:9 #, no-wrap msgid "Position towards which the robot must point." msgstr "" #. type: \t; header #: cbot-help/direct.txt:10 cbot-help/dist.txt:26 cbot-help/dist2d.txt:10 cbot-help/flatgrnd.txt:13 cbot-help/receive.txt:13 cbot-help/topo.txt:10 #, no-wrap msgid "Return value: <code><a cbot|float>float</a></code>" msgstr "" #. type: Plain text #: cbot-help/direct.txt:12 #, no-wrap msgid "" "Angle of the rotation that must be performed. -90 means f. ex. a rotation of " "90 degrees to the right. " msgstr "" #. type: \b; header #: cbot-help/dist.txt:1 #, no-wrap msgid "Instruction <code>distance</code>" msgstr "" #. type: Plain text #: cbot-help/dist.txt:3 #, no-wrap msgid "" "With the instruction <code>distance( , )</code> you can calculate the " "distance between two positions." msgstr "" #. type: \b; header #: cbot-help/dist.txt:4 cbot-help/drop.txt:4 cbot-help/fire.txt:4 cbot-help/goto.txt:4 cbot-help/grab.txt:4 cbot-help/if.txt:4 cbot-help/motor.txt:4 cbot-help/move.txt:4 cbot-help/radar.txt:4 cbot-help/turn.txt:4 cbot-help/wait.txt:4 cbot-help/while.txt:4 #, no-wrap msgid "Basic use" msgstr "" #. type: Plain text #: cbot-help/dist.txt:6 #, no-wrap msgid "" "If you write <code>position</code> alone, this gives you the position of the " "bot that executes the program. If you write the name of a variable followed " "by <code>.position</code>, this gives you the position of the object " "described in the variable." msgstr "" #. type: Plain text #: cbot-help/dist.txt:8 #, no-wrap msgid "" "Here is a program that moves forward, covering exactly the distance between " "the bot and the closest ant:" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/dist.txt:11 #, no-wrap msgid "" "\titem = <a cbot|radar>radar</a>(AlienAnt);\n" "\t<a cbot|move>move</a>(distance(position, item.position));" msgstr "" #. type: Plain text #: cbot-help/dist.txt:13 #, no-wrap msgid "" "This is of course pure suicide. Better to stop 40 meters before, in order to " "be at shooting range:" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/dist.txt:16 #, no-wrap msgid "" "\titem = radar(AlienAnt);\n" "\tmove(distance(position, item.position) - 40);" msgstr "" #. type: \b; header #: cbot-help/dist.txt:17 cbot-help/drop.txt:11 cbot-help/errmode.txt:4 cbot-help/file.txt:10 cbot-help/fire.txt:9 cbot-help/float.txt:19 cbot-help/goto.txt:11 cbot-help/grab.txt:11 cbot-help/if.txt:22 cbot-help/int.txt:13 cbot-help/motor.txt:14 cbot-help/move.txt:7 cbot-help/radar.txt:13 cbot-help/return.txt:9 cbot-help/turn.txt:18 cbot-help/wait.txt:9 cbot-help/while.txt:19 #, no-wrap msgid "For specialists" msgstr "" #. type: Plain text #: cbot-help/dist.txt:19 cbot-help/dist2d.txt:3 cbot-help/do.txt:3 cbot-help/drop.txt:13 cbot-help/fire.txt:11 cbot-help/for.txt:3 cbot-help/goto.txt:13 cbot-help/grab.txt:13 cbot-help/if.txt:24 cbot-help/jet.txt:3 cbot-help/message.txt:3 cbot-help/move.txt:9 cbot-help/radar.txt:15 cbot-help/receive.txt:3 cbot-help/recycle.txt:3 cbot-help/retobj.txt:3 cbot-help/search.txt:3 cbot-help/shield.txt:3 cbot-help/sniff.txt:3 cbot-help/thump.txt:3 cbot-help/topo.txt:3 cbot-help/turn.txt:20 cbot-help/wait.txt:11 #, no-wrap msgid "Syntax:" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/dist.txt:20 #, no-wrap msgid "<c/>distance ( pos1, pos2 );<n/>" msgstr "" #. type: Plain text #: cbot-help/dist.txt:22 #, no-wrap msgid "Calculates the distance between two positions. " msgstr "" #. type: \t; header #: cbot-help/dist.txt:23 cbot-help/dist2d.txt:7 #, no-wrap msgid "pos1, pos2: <code><a cbot|point>point</a></code>" msgstr "" #. type: Plain text #: cbot-help/dist.txt:25 cbot-help/dist2d.txt:9 #, no-wrap msgid "Coordinates of the two positions. " msgstr "" #. type: Plain text #: cbot-help/dist.txt:28 cbot-help/dist2d.txt:12 #, no-wrap msgid "Distance between the two positions." msgstr "" #. type: \b; header #: cbot-help/dist2d.txt:1 #, no-wrap msgid "Instruction <code>distance2d</code>" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/dist2d.txt:4 #, no-wrap msgid "<c/>distance2d ( pos1, pos2 );<n/>" msgstr "" #. type: Plain text #: cbot-help/dist2d.txt:6 #, no-wrap msgid "Calculates the distance between two positions (ignores the z coordinate)." msgstr "" #. type: \b; header #: cbot-help/do.txt:1 #, no-wrap msgid "Instruction <code>do - while</code>" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/do.txt:8 #, no-wrap msgid "" "<code>do\n" "{\n" "\t</code>Instructions ...<c/>\n" "}\n" "while ( condition );" msgstr "" #. type: Plain text #: cbot-help/do.txt:11 #, no-wrap msgid "" "This instruction allows you to perform several times the instructions inside " "the <a cbot|bloc>block</a>. The instructions are executed at least once, " "because the condition is tested only afterwards.\n" "Be careful not to confuse the instruction <c/>do { } while ( );<n/> with the " "instruction <code><a cbot|while>while</a> ( ) { }</code>; the latter tests " "the condition before the instructions in the block are executed. " msgstr "" #. type: \t; header #: cbot-help/do.txt:12 cbot-help/for.txt:13 cbot-help/while.txt:30 #, no-wrap msgid "<code>condition</code>" msgstr "" #. type: Plain text #: cbot-help/do.txt:14 cbot-help/while.txt:32 #, no-wrap msgid "" "The instructions in the block are performed over and over again, as long as " "the <a cbot|cond>condition</a> is true. " msgstr "" #. type: Plain text #: cbot-help/do.txt:16 cbot-help/while.txt:34 #, no-wrap msgid "Here is an example :" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/do.txt:21 #, no-wrap msgid "" "<c/>do\n" "{\n" "\tp = radar(TitaniumOre);\n" "}\n" "while ( p == null );" msgstr "" #. type: \t; header #: cbot-help/do.txt:22 cbot-help/float.txt:11 cbot-help/for.txt:33 cbot-help/if.txt:36 cbot-help/int.txt:10 cbot-help/while.txt:41 #, no-wrap msgid "Attention" msgstr "" #. type: Plain text #: cbot-help/do.txt:24 #, no-wrap msgid "" "Always put a <a cbot|term>semicolon</a> at the end of the line <code>while ( " ")</code>." msgstr "" #. type: Plain text #: cbot-help/do.txt:26 #, no-wrap msgid "" "The instructions <code><a cbot|break>break</a></code> and <code><a " "cbot|continue>continue</a></code> can be useful inside a block following the " "instruction <code>do { }</code>." msgstr "" #. type: \b; header #: cbot-help/drop.txt:1 #, no-wrap msgid "Instruction <code>drop</code>" msgstr "" #. type: Plain text #: cbot-help/drop.txt:3 #, no-wrap msgid "" "The instruction <c/>drop();<n/> instructs the bot to drop whatever the " "operating arm is carrying on the ground, on the platform of a building or on " "the power cell location of a bot." msgstr "" #. type: Plain text #: cbot-help/drop.txt:6 #, no-wrap msgid "" "The instruction <c/>drop();<n/> written in this form drops the object in " "front of the bot. Here is a short program that grabs an object in front of " "the bot and drops it 5 meters further:" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/drop.txt:10 #, no-wrap msgid "" "\t<a cbot|grab>grab</a>();\n" "\t<a cbot|move>move</a>(5);\n" "\tdrop();" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/drop.txt:14 #, no-wrap msgid "<c/>drop ( oper );<n/>" msgstr "" #. type: Plain text #: cbot-help/drop.txt:16 #, no-wrap msgid "" "This instruction appeals to the operating arm of a <a object|botgr>grabber " "bot</a>, in order to drop what it is holding." msgstr "" #. type: \t; header #: cbot-help/drop.txt:17 cbot-help/grab.txt:17 #, no-wrap msgid "oper: <code><a cbot|int>int</a></code> (default value<code>InFront</code>)" msgstr "" #. type: Plain text #: cbot-help/drop.txt:22 #, no-wrap msgid "" "Oper indicates where the robot should drop the object. If no indication is " "given, the object is dropped in front of the bot. \n" "<code>InFront </code> Drops in front (default value).\n" "<code>Behind </code> Drops behind.\n" "<code>EnergyCell</code> Drops on the bot's own power cell location." msgstr "" #. type: Plain text #: cbot-help/drop.txt:27 #, no-wrap msgid "" "Normally an error stops the program. You can prevent the program from " "stopping on errors by using the <code><a cbot|errmode>errmode</a>(0)</code> " "instruction. A value different from zero if an error occurred is then " "returned by <c/>drop();<n/>.\n" "<code>== 0 </code>object was dropped\n" "<code>!= 0 </code>error, no object was dropped" msgstr "" #. type: \b; header #: cbot-help/eof.txt:1 #, no-wrap msgid "Instruction <code>eof</code>" msgstr "" #. type: Plain text #: cbot-help/eof.txt:3 #, no-wrap msgid "" "Test the end of file condition of an open file. This is a method of the " "<code><a cbot|file>file</a></code> class; therefore you cannot write " "<code>eof()</code> but only <code>handle.eof()</code>¦:" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/eof.txt:5 #, no-wrap msgid "\tif ( handle.eof() ) " msgstr "" #. type: Plain text #: cbot-help/eof.txt:7 cbot-help/readln.txt:12 #, no-wrap msgid "Example¦:" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/eof.txt:12 #, no-wrap msgid "" "\twhile ( not handle.eof() )\n" "\t{\n" "\t\ts = handle.readln();\n" "\t}" msgstr "" #. type: Plain text #: cbot-help/eof.txt:15 #, no-wrap msgid "" "<code><a cbot|file>file</a></code>, <code><a cbot|open>open</a></code>, " "<code><a cbot|close>close</a></code>, <code><a cbot|readln>readln</a></code> " "and <code><a cbot|writeln>writeln</a></code>.\n" "<a cbot>Programming</a>, <a cbot|type>types</a> and <a " "cbot|category>categories</a>." msgstr "" #. type: \b; header #: cbot-help/errmode.txt:1 #, no-wrap msgid "Instruction <code>errmode</code>" msgstr "" #. type: Plain text #: cbot-help/errmode.txt:3 #, no-wrap msgid "" "The <c/>errmode();<n/> instruction allows you to chose if the program should " "stop when an error occurs in one of the following instructions: <code><a " "cbot|goto>goto</a></code>, <code><a cbot|move>move</a></code>, <code><a " "cbot|grab>grab</a></code>, <code><a cbot|drop>drop</a></code>, etc." msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/errmode.txt:7 #, no-wrap msgid "<c/>errmode ( mode );<n/>" msgstr "" #. type: Plain text #: cbot-help/errmode.txt:9 #, no-wrap msgid "" "Normally the program is stopped when an error occurs. If you use the " "instruction <c/>errmode(0);<n/> at the beginning of the program, the " "instructions listed above return a value different from zero if the " "instruction could not be performed." msgstr "" #. type: \t; header #: cbot-help/errmode.txt:10 #, no-wrap msgid "mode: <code><a cbot|float>float</a></code> (<code>1</code> per default)" msgstr "" #. type: Plain text #: cbot-help/errmode.txt:14 #, no-wrap msgid "" "Error treatment mode.\n" "<code>0</code> -> continues program execution and returns a non zero value\n" "<code>1</code> -> stops the program (default behavior)" msgstr "" #. type: Plain text #: cbot-help/errmode.txt:16 #, no-wrap msgid "Exemple 1¦:" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/errmode.txt:21 #, no-wrap msgid "" "<c/>errmode(0);\n" "while ( goto(pos) != 0 )\n" "{\n" "\twait(2);\n" "}" msgstr "" #. type: Plain text #: cbot-help/errmode.txt:23 #, no-wrap msgid "Exemple 2¦:" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/errmode.txt:31 #, no-wrap msgid "" "<c/>errmode(0);\n" "int err;\n" "err = goto(pos);\n" "if ( err != 0 )\n" "{\n" "\t<n/>goto did not perform correctly ...<code>\n" "\t</code>take some appropriate action ...<c/>\n" "}" msgstr "" #. type: \b; header #: cbot-help/expr.txt:1 #, no-wrap msgid "Expressions" msgstr "" #. type: Plain text #: cbot-help/expr.txt:3 #, no-wrap msgid "Expressions can include the following operators: " msgstr "" #. type: Plain text #: cbot-help/expr.txt:9 #, no-wrap msgid "" "<code>+</code> addition\n" "<code>-</code> subtraction\n" "<code>*</code> multiplication\n" "<code>/</code> division\n" "<code>%</code> remainder of the division (only for the type <code><a " "cbot|int>int</a></code>)" msgstr "" #. type: Plain text #: cbot-help/expr.txt:11 #, no-wrap msgid "" "With the addition operator <code>+</code>, you can not only add numbers, you " "can also append <a cbot|string>strings</a>." msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/expr.txt:21 #, no-wrap msgid "" "\tint i = 12+3; // returns 15\n" "\tstring s = \"a\"+\"bc\"; // returns \"abc\"\n" "\tint i = 2-5; // returns -3\n" "\tfloat f = 3.01*10; // returns 30.1\n" "\tint i = 5/3; // returns 1\n" "\tfloat f = 5/3; // returns 1.67\n" "\tfloat f = 5/0; // returns an error\n" "\tint i = 13%5; // returns 3\n" "\tint i = -8%3; // returns -2" msgstr "" #. type: Plain text #: cbot-help/expr.txt:23 #, no-wrap msgid "" "An expression can include constants or <a cbot|var>variables</a>. For " "example:" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/expr.txt:25 #, no-wrap msgid "<code>\t12+dist</code>" msgstr "" #. type: Plain text #: cbot-help/expr.txt:27 #, no-wrap msgid "" "Multiplications and divisions are performed before additions and " "subtractions. In order to be sure that the operations are performed in the " "right order, use brackets: " msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/expr.txt:30 #, no-wrap msgid "" "\t12*a+b/c <n/>is equivalent to<c/> (12*a)+(b/c)\n" "\t2.5*(dist+range)" msgstr "" #. type: Plain text #: cbot-help/expr.txt:32 #, no-wrap msgid "In order to improve readability, you can put as many spaces as you want: " msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/expr.txt:35 #, no-wrap msgid "" "\t12*a + b/c\n" "\t2.5 * (dist+range)" msgstr "" #. type: Plain text #: cbot-help/expr.txt:37 #, no-wrap msgid "Here is a list of mathematical functions: " msgstr "" #. type: Plain text #: cbot-help/expr.txt:47 #, no-wrap msgid "" "<code>sin(angle) </code>sinus\n" "<code>cos(angle) </code>cosinus\n" "<code>tan(angle) </code>tangent\n" "<code>asin(value) </code>arc-sinus\n" "<code>acos(value) </code>arc-cosinus\n" "<code>atan(value) </code>arc-tangente\n" "<code>sqrt(value) </code>square root\n" "<code>pow(x, y) </code>x power y\n" "<code>rand() </code>random value ranging between 0 and 1" msgstr "" #. type: Plain text #: cbot-help/expr.txt:49 #, no-wrap msgid "Angles are in degrees." msgstr "" #. type: \t; header #: cbot-help/expr.txt:50 #, no-wrap msgid "Compound assignment operators (for specialists)" msgstr "" #. type: Plain text #: cbot-help/expr.txt:52 #, no-wrap msgid "" "Besides the <code>=</code> operators for variable assignment there are " "several compound-assignment operators." msgstr "" #. type: Plain text #: cbot-help/expr.txt:54 #, no-wrap msgid "" "The compound-assignment operators combine the <code>=</code> assignment " "operator with another binary operator such as <code>+</code> or " "<code>-</code>. Compound-assignment operators perform the operation " "specified by the additional operator and then assign the result to the left " "operand. For example, a compound-assignment expression such as " msgstr "" #. type: Plain text #: cbot-help/expr.txt:56 #, no-wrap msgid "<c/><s/>expression1 += expression2" msgstr "" #. type: Plain text #: cbot-help/expr.txt:58 #, no-wrap msgid "is equivalent to" msgstr "" #. type: Plain text #: cbot-help/expr.txt:60 #, no-wrap msgid "<c/><s/>expression1 = expression1 + expression2" msgstr "" #. type: Plain text #: cbot-help/expr.txt:66 #, no-wrap msgid "" "<code>+=</code> addition\n" "<code>-=</code> subtraction\n" "<code>*=</code> multiplication\n" "<code>/=</code> division\n" "<code>%=</code> remainder of the division (only for the type <code><a " "cbot|int>int</a></code>)" msgstr "" #. type: \t; header #: cbot-help/expr.txt:67 #, no-wrap msgid "Prefix and posfix increment- and decrement operators (for specialists)" msgstr "" #. type: Plain text #: cbot-help/expr.txt:69 #, no-wrap msgid "" "The operators <code>++</code> and <code>--</code> allow you to increment " "(++) or to decrement (--) a variable in very compact and efficient manner." msgstr "" #. type: Plain text #: cbot-help/expr.txt:74 #, no-wrap msgid "" "For example to increment the variable <code>a</code> you can write\n" "<c/><s/>\ta++ ;\n" "<n/>instead of\n" "<c/><s/>\ta = a + 1 ;" msgstr "" #. type: Plain text #: cbot-help/expr.txt:76 #, no-wrap msgid "" "The value of the expression <code>a++</code> is the value of the variable " "<code>a</code> before the increment. If you use the prefix operator " "<code>++a</code> the value of the expression is the value of the variable " "<code>a</code> after the increment. The same holds for the <code>--</code> " "decrement operator." msgstr "" #. type: Plain text #: cbot-help/expr.txt:79 #, no-wrap msgid "" "Exemples:\n" "<c/><s/>\ta = 2 ;" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/expr.txt:81 #, no-wrap msgid "" "\tb = a++ ;\n" "\t// now b contains 2 and a contains 3" msgstr "" #. type: Plain text #: cbot-help/expr.txt:83 #, no-wrap msgid "<c/><s/>\ta = 2 ;" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/expr.txt:85 #, no-wrap msgid "" "\tb = ++a ;\n" "\t// now b contains 3 and a contains 3" msgstr "" #. type: \b; header #: cbot-help/extern.txt:1 #, no-wrap msgid "Instruction <code>extern</code>" msgstr "" #. type: Plain text #: cbot-help/extern.txt:3 #, no-wrap msgid "" "The <code>extern</code> instruction determines the <a " "cbot|function>function</a> that acts as main program of a robot. The name of " "the function declared with <code>extern</code> will apear in the program " "list in the lower left corner of the screen." msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/extern.txt:12 #, no-wrap msgid "" "extern void object::MowDown( )\n" "{\n" "\twhile ( true )\n" "\t{\n" "\t\tfire(1);\n" "\t\tturn(10);\n" "\t}\n" "}" msgstr "" #. type: Plain text #: cbot-help/extern.txt:14 #, no-wrap msgid "" "If the program contains other functions, only the main function must be " "preceded by <code>extern</code>." msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/extern.txt:28 #, no-wrap msgid "" "extern void object::Square( )\n" "{\n" "\tfor ( int i=0 ; i<4 ; i++ )\n" "\t{\n" "\t\tLine(10);\n" "\t}\n" "}\n" "\n" "void object::Line(float dist)\n" "{\n" "\tmove(dist);\n" "\tturn(90);\n" "}" msgstr "" #. type: \b; header #: cbot-help/false.txt:1 #, no-wrap msgid "Type <code>false</code>" msgstr "" #. type: Plain text #: cbot-help/false.txt:3 #, no-wrap msgid "" "This value means that a condition is not true; it is one of the two values " "that a <a cbot|bool>boolean</a> <a cbot|var>variable</a> can take." msgstr "" #. type: \b; header #: cbot-help/file.txt:1 #, no-wrap msgid "Type <code>file</code>" msgstr "" #. type: Plain text #: cbot-help/file.txt:3 #, no-wrap msgid "This type is used for accessing files in the files/ folder." msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/file.txt:5 #, no-wrap msgid "\tfile handle();" msgstr "" #. type: Plain text #: cbot-help/file.txt:7 #, no-wrap msgid "" "Use the syntax above for declaring a file handle. You must use () to create " "an instance of the <code>file</code> class. Without the () the handle would " "have the value <code><a cbot|null>null</a></code>." msgstr "" #. type: Plain text #: cbot-help/file.txt:9 #, no-wrap msgid "" "Files can only be created and opened in the files/ folder which is located " "in the folder where Colobot has been installed. You cannot not create or " "open files elsewhere than in the files/ folder." msgstr "" #. type: Plain text #: cbot-help/file.txt:12 #, no-wrap msgid "" "<code>file</code> is actually not a simple type but a " "class. <code>open</code>, <code>close</code>, <code>writeln</code> etc. are " "methods of the <code>file</code> class. This is the reason why we always " "write <code>handle.method()</code>¦:" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/file.txt:15 #, no-wrap msgid "" "\thandle.open(\"test.txt\", \"w\");\n" "\thandle.close();" msgstr "" #. type: Plain text #: cbot-help/file.txt:18 #, no-wrap msgid "" "<code><a cbot|open>open</a></code>, <code><a cbot|close>close</a></code>, " "<code><a cbot|readln>readln</a></code>, <code><a " "cbot|writeln>writeln</a></code> and <code><a cbot|eof>eof</a></code>.\n" "<a cbot>Programming</a>, <a cbot|type>types</a> and <a " "cbot|category>categories</a>." msgstr "" #. type: \b; header #: cbot-help/fire.txt:1 #, no-wrap msgid "Instruction <code>fire</code>" msgstr "" #. type: Plain text #: cbot-help/fire.txt:3 #, no-wrap msgid "The instruction <c/>fire();<n/> fires the bot's onboard cannon." msgstr "" #. type: Plain text #: cbot-help/fire.txt:6 #, no-wrap msgid "Generally this instruction is used to shoot one-second bursts:" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/fire.txt:8 #, no-wrap msgid "\tfire(1);" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/fire.txt:12 #, no-wrap msgid "<c/>fire ( time );<n/>" msgstr "" #. type: Plain text #: cbot-help/fire.txt:14 #, no-wrap msgid "" "Fires the gun, with a burst that lasts a certain time. The longer the burst, " "the more energy it needs. This instruction can be used with the following " "bot types: \n" msgstr "" #. type: Plain text #: cbot-help/fire.txt:21 #, no-wrap msgid "" "In order to move the gun upward or downward, use the instruction <code><a " "cbot|aim>aim</a></code>." msgstr "" #. type: \t; header #: cbot-help/fire.txt:22 cbot-help/wait.txt:15 #, no-wrap msgid "time: <code><a cbot|float>float</a></code>" msgstr "" #. type: Plain text #: cbot-help/fire.txt:24 #, no-wrap msgid "" "Duration of the burst. Generally, the value given is 1. Shorter bursts can " "also be performed in order to spare time and energy." msgstr "" #. type: Plain text #: cbot-help/fire.txt:29 #, no-wrap msgid "" "Zero if OK, or a value different from zero if an error occurred.\n" "<code>== 0 </code>the cannon has been fired\n" "<code>!= 0 </code>error, the cannon could not be fired" msgstr "" #. type: \b; header #: cbot-help/flatgrnd.txt:1 #, no-wrap msgid "Instruction <code>flatground</code>" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/flatgrnd.txt:4 #, no-wrap msgid "<c/>flatground ( center, rmax );<n/>" msgstr "" #. type: Plain text #: cbot-help/flatgrnd.txt:6 #, no-wrap msgid "" "Calculates the maximal radius of a flat zone on which a building ca be " "built." msgstr "" #. type: \t; header #: cbot-help/flatgrnd.txt:7 #, no-wrap msgid "center: <code><a cbot|point>point</a></code>" msgstr "" #. type: Plain text #: cbot-help/flatgrnd.txt:9 #, no-wrap msgid "Center of the circlular zone." msgstr "" #. type: \t; header #: cbot-help/flatgrnd.txt:10 #, no-wrap msgid "rmax: <code><a cbot|float>float</a></code>" msgstr "" #. type: Plain text #: cbot-help/flatgrnd.txt:12 #, no-wrap msgid "Maximal radius." msgstr "" #. type: Plain text #: cbot-help/flatgrnd.txt:15 #, no-wrap msgid "Radius of the flat zone (always between 0 and rmax)." msgstr "" #. type: \b; header #: cbot-help/float.txt:1 #, no-wrap msgid "Type <code>float</code>" msgstr "" #. type: Plain text #: cbot-help/float.txt:3 #, no-wrap msgid "" "Use this type for most variables that contains numbers. Variables of this " "type can contain positive and negative numbers, whole or real numbers, for " "example: " msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/float.txt:8 #, no-wrap msgid "" "\t12.9\n" "\t1.125\n" "\t0.002\n" "\t-4.1" msgstr "" #. type: Plain text #: cbot-help/float.txt:10 #, no-wrap msgid "" "If you need only whole numbers (f. ex. 12 or -5000), you should rather use " "the type <code><a cbot|int>int</a></code>." msgstr "" #. type: Plain text #: cbot-help/float.txt:13 #, no-wrap msgid "" "Do not insert space or colon characters into a number. To separate the whole " "part from the fractional part, use a dot. " msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/float.txt:18 #, no-wrap msgid "" " Write and not\n" " 12.56 12 . 56\n" " -54.34 -54,34\n" "12895.69 12,895.69" msgstr "" #. type: Plain text #: cbot-help/float.txt:23 #, no-wrap msgid "" "Floating point numbers are represented in Colobot with 32 bits.\n" "The highest value that can be represented is 3.4E+38.\n" "The smallest value that can be represented is 3.4E-38." msgstr "" #. type: \b; header #: cbot-help/for.txt:1 #, no-wrap msgid "Instruction <code>for</code>" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/for.txt:7 #, no-wrap msgid "" "<c/>for ( before ; condition ; end )\n" "{\n" "\t<n/>Instructions ...<c/>\n" "}" msgstr "" #. type: Plain text #: cbot-help/for.txt:9 #, no-wrap msgid "" "This instruction allows you to execute a certain number of times the " "instructions contained in the <a cbot|bloc>block</a>." msgstr "" #. type: \t; header #: cbot-help/for.txt:10 #, no-wrap msgid "<code>before</code>" msgstr "" #. type: Plain text #: cbot-help/for.txt:12 #, no-wrap msgid "This instruction is executed before the first loop instance." msgstr "" #. type: Plain text #: cbot-help/for.txt:15 #, no-wrap msgid "" "This <a cbot|cond>condition</a> determines if another instance of the loop " "must be executed. It is tested before every instance of the loop. " msgstr "" #. type: \t; header #: cbot-help/for.txt:16 #, no-wrap msgid "<code>end</code>" msgstr "" #. type: Plain text #: cbot-help/for.txt:18 #, no-wrap msgid "This instruction is executed at the end of every instance of the loop. " msgstr "" #. type: Plain text #: cbot-help/for.txt:21 #, no-wrap msgid "" "Example: count from 1 to 4\n" "<c/><s/><c/>for ( i = 0 ; i <= 4 ; i++ )" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/for.txt:24 #, no-wrap msgid "" "{\n" "\tmessage(i) ;\n" "}" msgstr "" #. type: Plain text #: cbot-help/for.txt:26 #, no-wrap msgid "" "The following example is strictly equivalent to a <code>for</code>-loop, but " "it uses the instruction <code><a cbot|while>while</a></code>:" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/for.txt:32 #, no-wrap msgid "" "<c/>before;\n" "while ( condition )\n" "{\n" "\t<n/>Instructions ...<c/>\n" "\tend;\n" "}" msgstr "" #. type: Plain text #: cbot-help/for.txt:35 #, no-wrap msgid "" "Do not put a <a cbot|term>semicolon</a> at the end of the line <code>for ( " ")</code>." msgstr "" #. type: Plain text #: cbot-help/for.txt:37 #, no-wrap msgid "" "The instructions <code><a cbot|break>break</a></code> and <code><a " "cbot|continue>continue</a></code> can be useful inside a block following the " "instruction <code>for </code>." msgstr "" #. type: \b; header #: cbot-help/function.txt:1 #, no-wrap msgid "Functions" msgstr "" #. type: Plain text #: cbot-help/function.txt:4 #, no-wrap msgid "" "With functions you can divide your program into several parts, each of them " "will execute a specific task.\n" "Let's imagine following program¦:" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/function.txt:16 #, no-wrap msgid "" "extern void object::Remote( )\n" "{\n" "\tsend(\"order\", 1, 100);\n" "\twait(5);\n" "\tsend(\"order\", 3, 100);\n" "\twait(5);\n" "\tsend(\"order\", 2, 100);\n" "\twait(5);\n" "\tsend(\"order\", 4, 100);\n" "\twait(5);\n" "}" msgstr "" #. type: Plain text #: cbot-help/function.txt:18 #, no-wrap msgid "" "<code>send</code> and <code>wait</code> are repeated several times. So it " "would be a good thing if we created a function that executes these two " "instructions:" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/function.txt:31 #, no-wrap msgid "" "void object::SendToPost( float op )\n" "{\n" "\tsend(\"order\", op, 100);\n" "\twait(5);\n" "}\n" "extern void object::Remote( )\n" "{\n" "\tSendToPost(1);\n" "\tSendToPost(3);\n" "\tSendToPost(2);\n" "\tSendToPost(4);\n" "}" msgstr "" #. type: Plain text #: cbot-help/function.txt:33 #, no-wrap msgid "A function can have paramteters¦:" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/function.txt:35 #, no-wrap msgid "void Example( int a, float x, string s )" msgstr "" #. type: Plain text #: cbot-help/function.txt:37 #, no-wrap msgid "" "The <code>Exemple</code> function will reveive un integer <code>a</code>, a " "floating point number <code>x</code> and a string <code>s</code>. Parameters " "are \"passed by value\", that is the values of parameter variables in a " "function are copies of the values the caller specified as variables. If you " "pass an <code>int</code> to a function, its parameter is a copy of whatever " "value was being passed as argument, and the function can change its " "parameter value without affecting values in the code that invoked the " "function." msgstr "" #. type: Plain text #: cbot-help/function.txt:39 #, no-wrap msgid "" "If you pass a <a cbot|class>class</a> instance or an <a cbot|array>array</a> " "as parameter to a function, the function only receives a <a " "cbot|pointer>reference</a> to the instance or the array. That means if you " "modify the instance or the array in the function, the instance or the array " "that has been specified by the caller will be actuallay modified." msgstr "" #. type: Plain text #: cbot-help/function.txt:41 #, no-wrap msgid "" "A function can also return a result with the <code><a " "cbot|return>return</a></code> instruction. Therefore the function must be " "declared no longer as void but as a type:" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/function.txt:53 #, no-wrap msgid "" "float Mean( float a, float b )\n" "{\n" "\treturn (a+b)/2;\n" "}\n" "\n" "extern void object::Test( )\n" "{\n" "\tfloat value;\n" "\tvalue = Mean(2, 6);\n" "\tmessage( value ); // will display 4\n" "}" msgstr "" #. type: Plain text #: cbot-help/function.txt:55 #, no-wrap msgid "Some other examples¦:" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/function.txt:67 #, no-wrap msgid "" "float Pi( )\n" "{\n" "\treturn 3.1415;\n" "}\n" "\n" "string Sign( float a )\n" "{\n" "\tif ( a > 0 ) return \"positive\";\n" "\tif ( a < 0 ) return \"négative\";\n" "\treturn \"null\";\n" "}" msgstr "" #. type: Plain text #: cbot-help/function.txt:69 #, no-wrap msgid "" "You can declare several functions with the same name but different " "parameters¦:" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/function.txt:79 #, no-wrap msgid "" "float Pythagoras( float a, float b )\n" "{\n" "\treturn sqrt((a*a)+(b*b));\n" "}\n" "\n" "float Pythagoras( float a, float b, float c )\n" "{\n" "\treturn sqrt((a*a)+(b*b)+(c*c));\n" "}" msgstr "" #. type: Plain text #: cbot-help/function.txt:81 #, no-wrap msgid "" "CBOT will call either the one or the other function depending on the " "paramteres passed." msgstr "" #. type: Plain text #: cbot-help/function.txt:83 #, no-wrap msgid "" "You can also declare a function <a cbot|public>public</a> so it can be used " "by other bots." msgstr "" #. type: \b; header #: cbot-help/goto.txt:1 #, no-wrap msgid "Instruction <code>goto</code>" msgstr "" #. type: Plain text #: cbot-help/goto.txt:3 #, no-wrap msgid "The instruction <c/>goto();<n/> instructs the bot to reach a given position." msgstr "" #. type: Plain text #: cbot-help/goto.txt:6 #, no-wrap msgid "" "The most current use consists in moving the bot to an object located with " "the instruction <c/><a cbot|radar>radar</a>();<n/>. If the information " "returned by the <c/><a cbot|radar>radar</a>();<n/> has been stored in a " "certain variable, write the name of the variable followed by " "<code>.position</code> in order to get the position of the object. Here is " "an example of a program that looks for a <a object|titan>titanium cube</a>, " "goes to the position and grabs it:" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/goto.txt:10 #, no-wrap msgid "" "\titem = <a cbot|radar>radar</a>(Titanium);\n" "\tgoto(item.position);\n" "\t<a cbot|grab>grab</a>();" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/goto.txt:14 #, no-wrap msgid "<c/>goto ( position, altitude, goal, crash );<n/>" msgstr "" #. type: Plain text #: cbot-help/goto.txt:16 #, no-wrap msgid "" "Tells the robot to go to the given position, avoiding all the obstacles if " "this is possible. " msgstr "" #. type: Plain text #: cbot-help/goto.txt:19 #, no-wrap msgid "Coordinates of the goal position." msgstr "" #. type: \t; header #: cbot-help/goto.txt:20 #, no-wrap msgid "altitude: <code><a cbot|float>float</a></code>" msgstr "" #. type: Plain text #: cbot-help/goto.txt:22 #, no-wrap msgid "" "Flight altitude for <a object|botgj>winged bots</a>. The altitude is useful " "only for <a object|botgj>winged bots</a>. From the initial altitude, the bot " "climbs higher until it reaches the specified hight. When arriving close to " "destination, it goes down to touch the ground at the given position. If no " "value is given, an altitude of 10 meters is the default value. On very short " "moves, even winged bot stay on the ground. For all bot except winged bots, " "this parameter is ignored. " msgstr "" #. type: \t; header #: cbot-help/goto.txt:23 #, no-wrap msgid "goal: <code><a cbot|int>int</a></code> (default value <code>0</code>)" msgstr "" #. type: Plain text #: cbot-help/goto.txt:28 #, no-wrap msgid "" "This parameter tells the bot how it must reach the goal: \n" "<code>0</code> stops exactly at the goal position\n" "<code>1</code> goes close to the goal position, without stopping.\n" "If no value is given, <code>1</code> (precision) is the default value. " msgstr "" #. type: Plain text #: cbot-help/goto.txt:33 #, no-wrap msgid "" "Normally an error stops the program. You can prevent the program from " "stopping on errors by using the <code><a cbot|errmode>errmode</a>(0)</code> " "instruction. A value different from zero if an error occurred is then " "returned by <code>goto()</code>.\n" "<code>== 0 </code>Goal position reached\n" "<code>!= 0 </code>Goal position impossible to reach" msgstr "" #. type: \b; header #: cbot-help/grab.txt:1 #, no-wrap msgid "Instruction <code>grab</code>" msgstr "" #. type: Plain text #: cbot-help/grab.txt:3 #, no-wrap msgid "" "The instruction <c/>grab();<n/> instructs the bot to use the operating arm " "to grab an object located on the ground, on the platform of a building or on " "the power cell location of a bot." msgstr "" #. type: Plain text #: cbot-help/grab.txt:6 #, no-wrap msgid "" "The instruction <c/>grab();<n/> written in this form grabs the object " "located in front of the bot. Here is a short program that grabs an object in " "front of the bot and drops it 5 meters further:" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/grab.txt:10 #, no-wrap msgid "" "\tgrab();\n" "\t<a cbot|move>move</a>(5);\n" "\t<a cbot|drop>drop</a>();" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/grab.txt:14 #, no-wrap msgid "<c/>grab ( oper );<n/>" msgstr "" #. type: Plain text #: cbot-help/grab.txt:16 #, no-wrap msgid "" "This instruction appeals to the operating arm of a <a object|botgr>grabber " "bot</a>, in order to grab the closest object." msgstr "" #. type: Plain text #: cbot-help/grab.txt:22 #, no-wrap msgid "" "Oper indicates where the bot should look for an object to grab. If no " "indication is given, the object is picked up in front of the bot.\n" "<code>InFront </code> Grabs in front (default value).\n" "<code>Behind </code> Grabs behind.\n" "<code>EnergyCell</code> Grabs the bot's own power cell." msgstr "" #. type: Plain text #: cbot-help/grab.txt:27 #, no-wrap msgid "" "Normally an error stops the program. You can prevent the program from " "stopping on errors by using the <code><a cbot|errmode>errmode</a>(0)</code> " "instruction. A value different from zero if an error occurred is then " "returned by <c/>grab();<n/>.\n" "<code>== 0 </code>an object was grabbed\n" "<code>!= 0 </code>error, no object was grabbed" msgstr "" #. type: \b; header #: cbot-help/if.txt:1 #, no-wrap msgid "Instructions <code>if</code> and <code>else</code>" msgstr "" #. type: Plain text #: cbot-help/if.txt:3 #, no-wrap msgid "" "With the instruction <code>if() {}</code> you can execute a set of " "instructions only if a certain condition is true. Write the condition in " "brackets <code>()</code>, and the instructions in braces <code>{}</code>." msgstr "" #. type: Plain text #: cbot-help/if.txt:6 #, no-wrap msgid "" "Here is a concrete example: The bot will shoot only if the target is closer " "than 40 meters:" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/if.txt:12 #, no-wrap msgid "" "\titem = <a cbot|radar>radar</a>(AlienAnt);\n" "\tif (<a cbot|dist>distance</a>(position, item.position) < 40)\n" "\t{\n" "\t\tfire(1);\n" "\t}" msgstr "" #. type: Plain text #: cbot-help/if.txt:14 #, no-wrap msgid "" "You can also test if an object exists at all. If the instruction <c/><a " "cbot|radar>radar</a>();<n/> does not find the requested object, it returns " "the value <code>null</code>. So you can test if an object does not exists " "with the condition <code>(item == null)</code>, or test if it exists with " "<code>(item != null)</code>. Two equal signs <code>==</code> test equality, " "an exclamation mark followed by an equal sign <code>!=</code> test " "inequality. Here is a test that will go to rechage the <a object|power>power " "cell</a> only if there is a <a object|station>power station</a>:" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/if.txt:21 #, no-wrap msgid "" "\titem = <a cbot|radar>radar</a>(PowerStation);\n" "\tif (item != null)\n" "\t{\n" "\t\t<a cbot|goto>goto</a>(item.position);\n" "\t\t<a cbot|wait>wait</a>(5);\n" "\t}" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/if.txt:32 #, no-wrap msgid "" "<code>if ( condition )\n" "{\n" "\t</code>Instructions A ...<code>\n" "}\n" "else\n" "{\n" "\t</code>Instructions B ...<c/>\n" "}" msgstr "" #. type: Plain text #: cbot-help/if.txt:35 #, no-wrap msgid "" "With this conditional structure you can execute a <a cbot|bloc>bloc</a> A or " "a <a cbot|bloc>bloc</a> B depending on a <a cbot|cond>condition</a>. If the " "condition is true, bloc A is executed. If the condition is false, bloc B is " "executed. \n" "Part <code>else { }</code> is not compulsory. " msgstr "" #. type: Plain text #: cbot-help/if.txt:38 #, no-wrap msgid "" "Do not put a <a cbot|term>semicolon</a> at the end of the line <code>if ( " ")</code>." msgstr "" #. type: \b; header #: cbot-help/int.txt:1 #, no-wrap msgid "Type <code>int</code>" msgstr "" #. type: Plain text #: cbot-help/int.txt:3 #, no-wrap msgid "" "Use this type for variables that contain only whole numbers, negative or " "positive. For example: " msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/int.txt:7 #, no-wrap msgid "" "\t12\n" "\t1000\n" "\t-4" msgstr "" #. type: Plain text #: cbot-help/int.txt:9 #, no-wrap msgid "" "To represent real numbers like 12.05 or -0.005, use the type <code><a " "cbot|float>float</a></code>." msgstr "" #. type: Plain text #: cbot-help/int.txt:12 #, no-wrap msgid "Do not put space or colon signs inside a number. " msgstr "" #. type: Plain text #: cbot-help/int.txt:17 #, no-wrap msgid "" "Numbers of the type <code>int</code> are represented with 32 bits.\n" "The highest number that can be represented is (2^31)-1, that is " "2'147'483'647.\n" "The smallest number that can be represented is -(2^31), that is " "-2'147'483'648." msgstr "" #. type: \b; header #: cbot-help/jet.txt:1 #, no-wrap msgid "Instruction <code>jet</code>" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/jet.txt:4 #, no-wrap msgid "<c/>jet ( power );<n/>" msgstr "" #. type: Plain text #: cbot-help/jet.txt:6 #, no-wrap msgid "" "Direct control of the jet of a <a object|botgj>winged bot</a>. The jet is " "what makes the bot fly. Use this instruction in order to take off, climb, " "descend or land." msgstr "" #. type: \t; header #: cbot-help/jet.txt:7 #, no-wrap msgid "power: <code><a cbot|float>float</a></code>" msgstr "" #. type: Plain text #: cbot-help/jet.txt:9 #, no-wrap msgid "" "Power of the jet, ranges between <code>-1</code> and " "<code>+1</code>. <c/>jet(1);<n/> instructs the bot to climb as fast as " "possible, <c/>jet(-1);<n/> descends as fast as possible, <c/>jet(0);<n/> " "stabilizes the altitude. In order to get slower altitude changes, use " "intermediate values, for example <c/>jet(0.3);<n/>." msgstr "" #. type: \t; header #: cbot-help/jet.txt:11 cbot-help/message.txt:21 cbot-help/motor.txt:35 cbot-help/shield.txt:15 cbot-help/wait.txt:18 #, no-wrap msgid "Return value: <code><a cbot|void>void</a></code>" msgstr "" #. type: Plain text #: cbot-help/jet.txt:13 cbot-help/message.txt:23 cbot-help/motor.txt:37 cbot-help/shield.txt:17 cbot-help/wait.txt:20 #, no-wrap msgid "None." msgstr "" #. type: \b; header #: cbot-help/message.txt:1 #, no-wrap msgid "Instruction <code>message</code>" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/message.txt:4 #, no-wrap msgid "<c/>message ( text, type );<n/>" msgstr "" #. type: Plain text #: cbot-help/message.txt:6 #, no-wrap msgid "" "Prints a message on top of the screen. After a few seconds, the message " "disappears automatically. " msgstr "" #. type: \t; header #: cbot-help/message.txt:7 #, no-wrap msgid "text: <code><a cbot|string>string</a></code>" msgstr "" #. type: Plain text #: cbot-help/message.txt:13 #, no-wrap msgid "" "Text that is to be displayed. It is possible to append several texts and/or " "values with the operator <code>+</code>:\n" "<c/>message(\"Not found\");<n/> \n" "<c/>message(angle);<n/> \n" "<c/>message(n + \" object(s) found\");<n/> \n" "<c/>message(\"Distance = \" + dist + \" meters\");<n/> " msgstr "" #. type: \t; header #: cbot-help/message.txt:14 #, no-wrap msgid "" "type: <code><a cbot|int>int</a></code> (default value " "<code>DisplayMessage</code>)" msgstr "" #. type: Plain text #: cbot-help/message.txt:16 #, no-wrap msgid "Type of the message, that determines the background color. \n" msgstr "" #. type: Bullet: 'o' #: cbot-help/message.txt:16 #, no-wrap msgid "<code>DisplayMessage</code> Standard message on yellow background." msgstr "" #. type: Bullet: 'o' #: cbot-help/message.txt:17 #, no-wrap msgid "<code>DisplayInfo </code> Information on green background." msgstr "" #. type: Bullet: 'o' #: cbot-help/message.txt:18 #, no-wrap msgid "<code>DisplayWarning</code> Warning on blue background." msgstr "" #. type: Bullet: 'o' #: cbot-help/message.txt:19 #, no-wrap msgid "<code>DisplayError </code> Error on red background." msgstr "" #. type: \b; header #: cbot-help/motor.txt:1 #, no-wrap msgid "Instruction <code>motor</code>" msgstr "" #. type: Plain text #: cbot-help/motor.txt:3 #, no-wrap msgid "" "The instruction <c/>motor( , );<n/> sets the speed for the left-hand and the " "right-hand motor of the bot." msgstr "" #. type: Plain text #: cbot-help/motor.txt:6 #, no-wrap msgid "" "The speed given to the motors will remain constant during the execution of " "the following instructions. Thanks to this characteristic it is possible to " "perform a rotation during the instruction <c/><a " "cbot|fire>fire</a>();<n/>. This will sweep a whole zone with only one " "burst. Here is an example that will sweep the zone in front of the bot:" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/motor.txt:11 #, no-wrap msgid "" "\t<a cbot|turn>turn</a>(45); // turns 45 degrees left\n" "\tmotor(0.5, -0.5); // slow rotation to the right\n" "\t<a cbot|fire>fire</a>(2); // fire\n" "\tmotor(0,0); // stops the rotation" msgstr "" #. type: Plain text #: cbot-help/motor.txt:13 #, no-wrap msgid "" "With the left-hand motor turning half-speed forward and the right-hand motor " "turning half-speed backward, the bot will turn slowly on itself during the " "2-second-burst." msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/motor.txt:17 #, no-wrap msgid "<c/>motor ( left, right );<n/>" msgstr "" #. type: Plain text #: cbot-help/motor.txt:19 #, no-wrap msgid "" "Gives speed instructions to the right and left motors of the robot. The " "motors will keep this speed until a new motor instruction is performed, or " "until a <code><a cbot|move>move</a></code>, <code><a " "cbot|turn>turn</a></code> or <code><a cbot|goto>goto</a></code> instruction " "is performed." msgstr "" #. type: \t; header #: cbot-help/motor.txt:20 #, no-wrap msgid "left: <code><a cbot|float>float</a></code>" msgstr "" #. type: Plain text #: cbot-help/motor.txt:22 #, no-wrap msgid "" "Speed instruction for the left motor; the value must range between -1 and " "1. " msgstr "" #. type: \t; header #: cbot-help/motor.txt:23 #, no-wrap msgid "right: <code><a cbot|float>float</a></code>" msgstr "" #. type: Plain text #: cbot-help/motor.txt:25 #, no-wrap msgid "" "Speed instruction for the right motor; the value must range between -1 and " "1. " msgstr "" #. type: Plain text #: cbot-help/motor.txt:30 #, no-wrap msgid "" "Examples :\n" "<c/>motor(1, 1);<n/> moves forward with highest possible speed.\n" "<c/>motor(-0.5, -0.5);<n/> moves backward with half speed.\n" "<c/>motor(1, -1);<n/> turns right as fast as possible. " msgstr "" #. type: Plain text #: cbot-help/motor.txt:34 #, no-wrap msgid "" "Note :\n" "<c/>motor(2, 2);<n/> will not move forward any faster than <code>motor(1, " "1)</code> \n" "<c/>motor(-2, -2);<n/> will not move backward any faster than " "<code>motor(-1, -1)</code>" msgstr "" #. type: \b; header #: cbot-help/move.txt:1 #, no-wrap msgid "Instruction <code>move</code>" msgstr "" #. type: Plain text #: cbot-help/move.txt:3 #, no-wrap msgid "" "The instruction <c/>move();<n/> instructs the bot to move forward or " "backward while keeping the same orientation. In brackets you must specify " "the length of the move in meters." msgstr "" #. type: Plain text #: cbot-help/move.txt:6 #, no-wrap msgid "" "If you want the bot to move forward 30 meters, write <c/>move(30);<n/>. In " "order to move the bot backward after it dropped a chunk of <a " "object|titanore>titanium ore</a> on the <a object|convert>converter</a>, " "write <c/>move(-2.5);<n/>." msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/move.txt:10 #, no-wrap msgid "<c/>move ( length );<n/>" msgstr "" #. type: Plain text #: cbot-help/move.txt:12 #, no-wrap msgid "" "Moves forward or backward of a given distance, always keeping the current " "orientation of the bot. " msgstr "" #. type: \t; header #: cbot-help/move.txt:13 #, no-wrap msgid "length: <code><a cbot|float>float</a></code>" msgstr "" #. type: Plain text #: cbot-help/move.txt:15 #, no-wrap msgid "" "Length of the move, in meters. A negative value makes the bot move " "backward. " msgstr "" #. type: Plain text #: cbot-help/move.txt:20 #, no-wrap msgid "" "Normally an error stops the program. You can prevent the program from " "stopping on errors by using the <code><a cbot|errmode>errmode</a>(0)</code> " "instruction. A value different from zero if an error occurred is then " "returned by <code>move()</code>.\n" "<code>== 0 </code>Move executed\n" "<code>!= 0 </code>error, the instruction was not performed correctly" msgstr "" #. type: \b; header #: cbot-help/nan.txt:1 #, no-wrap msgid "Type <code>nan</code>" msgstr "" #. type: Plain text #: cbot-help/nan.txt:4 #, no-wrap msgid "" "This special value indicates that a <a cbot|var>variable</a> of type " "<code><a cbot|int>int</a></code> or <code><a cbot|float>float</a></code> " "contains no number, but \"nothing\". \n" "For example, if the instruction <code><a cbot|receive>receive</a></code> can " "not get the requested information, it returns <code>nan</code> :" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/nan.txt:10 #, no-wrap msgid "" "\tvalue = receive(\"Length\");\n" "\tif ( value == nan ) // not found ?\n" "\t{\n" "\t\t\n" "\t}" msgstr "" #. type: \t; header #: cbot-help/nan.txt:11 #, no-wrap msgid "Dictionnary" msgstr "" #. type: Plain text #: cbot-help/nan.txt:13 #, no-wrap msgid "<code>nan</code> = Not A Number " msgstr "" #. type: \b; header #: cbot-help/new.txt:1 #, no-wrap msgid "Instruction <code>new</code> (for specialists)" msgstr "" #. type: Plain text #: cbot-help/new.txt:4 #, no-wrap msgid "" "The <code>new</code> operator creates a <a cbot|class>class</a> instance:\n" "<c/><s/>\tMyClass item; // now item is a null reference" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/new.txt:6 #, no-wrap msgid "" "\titem = new MyClass(); // now item is a reference\n" "\t // to a new class instance" msgstr "" #. type: Plain text #: cbot-help/new.txt:8 #, no-wrap msgid "" "If you want to create a new instance at declaration time you can ommit the " "new <code>new</code> operator by putting () after the declaration:" msgstr "" #. type: Plain text #: cbot-help/new.txt:13 #, no-wrap msgid "" "Instead of:\n" "<c/><s/>\tMyClass item = new MyClass();\n" "<n/>you can write:\n" "<c/><s/>\tMyClass item();" msgstr "" #. type: Plain text #: cbot-help/new.txt:18 #, no-wrap msgid "" "If your class has a constructor with parameters you can write:\n" "<c/><s/>\tMyClass item = new MyClass(2, 3);\n" "<n/>or:\n" "<c/><s/>\tMyClass item(2, 3);" msgstr "" #. type: Plain text #: cbot-help/new.txt:21 #, no-wrap msgid "" "<code><a cbot|class>class</a></code>, <code><a " "cbot|pointer>reference</a></code>\n" "<a cbot>Programming</a>, <a cbot|type>types</a> and <a " "cbot|category>categories</a>." msgstr "" #. type: \b; header #: cbot-help/null.txt:1 #, no-wrap msgid "Type <code>null</code>" msgstr "" #. type: Plain text #: cbot-help/null.txt:3 #, no-wrap msgid "" "This special value indicates that the variable containing it does not " "reference an instance." msgstr "" #. type: Plain text #: cbot-help/null.txt:7 #, no-wrap msgid "" "<a cbot|pointer>References</a>\n" "<a cbot>Programming</a>, <a cbot|type>types</a> and <a " "cbot|category>categories</a>." msgstr "" #. type: \b; header #: cbot-help/object.txt:1 #, no-wrap msgid "Type <code>object</code>" msgstr "" #. type: Plain text #: cbot-help/object.txt:3 #, no-wrap msgid "" "Use this type for variables that contain the characteristics of an object, " "be it a bot, a building, some raw material, an enemy, etc. " msgstr "" #. type: Plain text #: cbot-help/object.txt:16 #, no-wrap msgid "" "<code><a cbot|int>int</a> object.category </code><a " "cbot|category>Category</a> of the object\n" "<code><a cbot|point>point</a> object.position </code>Position of the " "object (x,y,z)\n" "<code><a cbot|float>float</a> object.orientation </code>Orientation of the " "object (0..360)\n" "<code><a cbot|float>float</a> object.pitch </code>Forward/backward " "angle of the object\n" "<code><a cbot|float>float</a> object.roll </code>Right/left angle " "of the object \n" "<code><a cbot|float>float</a> object.energyLevel </code>Energy level " "(0..1)\n" "<code><a cbot|float>float</a> object.shieldLevel </code>Shield level " "(0..1)\n" "<code><a cbot|float>float</a> object.temperature </code>Jet temperature " "(0..1)\n" "<code><a cbot|float>float</a> object.altitude </code>Altitude above " "ground\n" "<code><a cbot|float>float</a> object.lifeTime </code>Lifetime of the " "object\n" "<code>object object.energyCell </code>Power cell on the bot\n" "<code>object object.load </code>Object carried by the bot" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/object.txt:18 #, no-wrap msgid "<code>category</code>" msgstr "" #. type: Plain text #: cbot-help/object.txt:19 #, no-wrap msgid "" "The <n/><a cbot|category>category</a> of an object allows you to know what " "it is, f. ex. what kind of bot, building, enemy, etc. " msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/object.txt:21 #, no-wrap msgid "<code>position</code>" msgstr "" #. type: Plain text #: cbot-help/object.txt:22 #, no-wrap msgid "" "Position of the object on the planet, in meters. The coordinates " "<code>x</code> and <code>y</code> correspond to the location on a map, the " "<code>z</code> coordinate corresponds to the altitude above (respectively " "below) sea level. " msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/object.txt:24 #, no-wrap msgid "<code>orientation</code>" msgstr "" #. type: Plain text #: cbot-help/object.txt:25 #, no-wrap msgid "" "Orientation of the object, in degrees. The orientation tells you what " "direction the object is facing. An orientation of <code>0</code> corresponds " "to an object facing eastwards, thus following the positive <code>x</code> " "axis. The orientation is measured counterclockwise. " msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/object.txt:27 #, no-wrap msgid "<code>pitch</code>" msgstr "" #. type: Plain text #: cbot-help/object.txt:28 #, no-wrap msgid "" "Forward/backward angle of the robot. A pitch of <code>0</code> means that " "the bot is standing on flat ground. A positive inclination means that it is " "facing upwards, a negative inclination means that it is facing downwards. " msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/object.txt:30 #, no-wrap msgid "<code>roll</code>" msgstr "" #. type: Plain text #: cbot-help/object.txt:31 #, no-wrap msgid "" "Left/right angle of the bot, in degrees. A positive value means that the bot " "is leaning to the left side, a negative value means that it is leaning to " "the right side. " msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/object.txt:33 #, no-wrap msgid "<code>energyLevel</code>" msgstr "" #. type: Plain text #: cbot-help/object.txt:34 #, no-wrap msgid "" "Energy level, between 0 and 1. A normal <a object|power>power cell</a> that " "is fully charged returns the value <code>1</code>. A <a " "object|atomic>nuclear power cell</a> never returns a value higher than 1, it " "just lasts longer. Attention: The energy level of a bot is always zero, " "because the energy is not contained in the bot, but in the power cell. To " "know the energy level of the power cell of a bot, you must write " "<code>energyCell.energyLevel</code>. " msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/object.txt:36 #, no-wrap msgid "<code>shieldLevel</code>" msgstr "" #. type: Plain text #: cbot-help/object.txt:38 #, no-wrap msgid "" "Shield level of a robot or building. A level <code>1</code> indicates that " "the shield is still perfect. Every time that the bot or building gets a " "bullet or collides with another object, the shield level decreases. When the " "level reaches <code>0</code>, the next bullet or collision will destroy the " "bot or building. \n" "Bots can re-energize their shield on a <a object|repair>repair " "center</a>. The shield of a building is repaired if it lays inside the " "protection sphere of a <a object|botshld>shielder</a>." msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/object.txt:40 #, no-wrap msgid "<code>temperature</code>" msgstr "" #. type: Plain text #: cbot-help/object.txt:41 #, no-wrap msgid "" "Temperature of the jet of <a object|botgj>winged bots</a>. <code>0</code> " "corresponds to a cold jet. When used, the temperature increases " "progressively. When it reaches the value <code>1</code>, the jet is " "overheated and stops working, until it cooled down a little. " msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/object.txt:43 #, no-wrap msgid "<code>altitude</code>" msgstr "" #. type: Plain text #: cbot-help/object.txt:44 #, no-wrap msgid "" "The <code>z</code> coordinate of the position indicates the altitude above " "sea level, whereas the <code>altitude</code> indicates the height above " "ground. This value is meaningful only for <a object|botgj>winged bots</a> " "and for <a object|wasp>wasps</a>. For all other objects, this value is " "zero. " msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/object.txt:46 #, no-wrap msgid "<code>lifeTime</code>" msgstr "" #. type: Plain text #: cbot-help/object.txt:47 #, no-wrap msgid "The age of the object in seconds since it's creation." msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/object.txt:49 #, no-wrap msgid "<code>energyCell</code>" msgstr "" #. type: Plain text #: cbot-help/object.txt:52 #, no-wrap msgid "" "This information is special, because it returns the information about " "another object, in this case the power pack. This means that energyCell " "contains all the characteristics of a normal object, for example " "<code>category</code> (PowerCell or NuclearCell), <code>position</code> (the " "position of the cell), etc.\n" "If you want to know the energy level of a robot, you must not check " "<code>energyLevel</code>, but <code>energyCell.energyLevel</code>.\n" "If the bot has bot no power cell, <code>energyCell</code> returns " "<code>null</code>." msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/object.txt:54 #, no-wrap msgid "<code>load</code>" msgstr "" #. type: Plain text #: cbot-help/object.txt:55 #, no-wrap msgid "" "This information also returns the description of a whole object: the " "description of the object carried by a <a object|botgr>grabber</a>. If it " "carries nothing, <code>load</code> returns <code>null</code>." msgstr "" #. type: \b; header #: cbot-help/object.txt:56 #, no-wrap msgid "Examples" msgstr "" #. type: Plain text #: cbot-help/object.txt:58 #, no-wrap msgid "" "The type <code>object</code> returns the special value <code><a " "cbot|null>null</a></code> when the object does not exist. For example:" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/object.txt:67 #, no-wrap msgid "" "\tobject a;\n" "\ta = radar(BotGrabberRoller);\n" "\tif ( a == null ) // object does not exist ?\n" "\t{\n" "\t}\n" "\tif ( a.position.z > 50 ) // is it on a mountain ?\n" "\t{\n" "\t}" msgstr "" #. type: Plain text #: cbot-help/object.txt:68 #, no-wrap msgid "<n/> \n" msgstr "" #. type: \b; header #: cbot-help/open.txt:1 #, no-wrap msgid "Instruction <code>open</code>" msgstr "" #. type: Plain text #: cbot-help/open.txt:3 #, no-wrap msgid "" "Open a text file in the files/ folder. This is a method of the <code><a " "cbot|file>file</a></code> class. This is the reason why we always write " "<code>handle.open()</code>¦:" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/open.txt:5 #, no-wrap msgid "\thandle.open(\"test.txt\", \"w\");" msgstr "" #. type: Plain text #: cbot-help/open.txt:7 #, no-wrap msgid "To open a file, proceed as follows¦:" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/open.txt:12 #, no-wrap msgid "" "\tfile handle();\n" "\thandle.open(\"filename\", \"w\");\n" "\thandle.writeln(\"abc\");\n" "\thandle.close();" msgstr "" #. type: Plain text #: cbot-help/open.txt:15 cbot-help/openfile.txt:8 #, no-wrap msgid "" "<code>\"r\"</code> mode: open for reading.\n" "<code>\"w\"</code> mode: open for writing." msgstr "" #. type: Plain text #: cbot-help/open.txt:17 #, no-wrap msgid "" "Files can only be created and opened in the files/ folder which is located " "in the folder where Colobot has been installed. You cannot not create or " "open files that are located elsewhere than in the files/ folder." msgstr "" #. type: Plain text #: cbot-help/open.txt:20 #, no-wrap msgid "" "<code><a cbot|file>file</a></code>, <code><a cbot|close>close</a></code>, " "<code><a cbot|readln>readln</a></code>, <code><a " "cbot|writeln>writeln</a></code> and <code><a cbot|eof>eof</a></code>.\n" "<a cbot>Programming</a>, <a cbot|type>types</a> and <a " "cbot|category>categories</a>." msgstr "" #. type: \b; header #: cbot-help/openfile.txt:1 #, no-wrap msgid "Instruction <code>openfile</code>" msgstr "" #. type: Plain text #: cbot-help/openfile.txt:3 #, no-wrap msgid "" "<c/>openfile();<n/> opens an text file in the files/ folder. This is not a " "method of the <code><a cbot|file>file</a></code> class but openfile returne " "a <a cbot|pointer>reference</a> to a new instance of the file class. You " "must supply two parameters, the filename and the opening mode." msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/openfile.txt:5 #, no-wrap msgid "file handle = openfile(\"filename\", \"r\");" msgstr "" #. type: \b; header #: cbot-help/point.txt:1 #, no-wrap msgid "Type <code>point</code>" msgstr "" #. type: Plain text #: cbot-help/point.txt:5 #, no-wrap msgid "" "Variables of this type contain the coordinates of a point in space. This " "type is made of three values that represent the <code>x</code>, " "<code>y</code> and <code>z</code> coordinates.\n" "<code>x</code> and <code>y</code> correspond to the place on the ground. The " "positive <code>x</code> axis faces towards east, the positive <code>y</code> " "axis faces towards north. \n" "The <code>z</code> value corresponds to the altitude above sea level. " msgstr "" #. type: Plain text #: cbot-help/point.txt:7 #, no-wrap msgid "If you want to declare a variable of type point, you can write: " msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/point.txt:9 #, no-wrap msgid "\tpoint a (10, 20, 30);" msgstr "" #. type: Plain text #: cbot-help/point.txt:11 #, no-wrap msgid "You can also set the variable taking one value after another:" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/point.txt:16 #, no-wrap msgid "" "\tpoint b;\n" "\tb.x = 10;\n" "\tb.y = 20;\n" "\tb.z = 30;" msgstr "" #. type: Plain text #: cbot-help/point.txt:18 #, no-wrap msgid "With these examples, the following <a cbot|cond>condition</a> is true:" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/point.txt:22 #, no-wrap msgid "" "\tif ( a == b )\n" "\t{\n" "\t}" msgstr "" #. type: Plain text #: cbot-help/point.txt:24 #, no-wrap msgid "" "<n/> \n" "The following declaration :" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/point.txt:26 #, no-wrap msgid "\tpoint c (4, 7);" msgstr "" #. type: Plain text #: cbot-help/point.txt:28 #, no-wrap msgid "Is equivalent to :" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/point.txt:33 #, no-wrap msgid "" "\tpoint c;\n" "\tc.x = 4;\n" "\tc.y = 7;\n" "\tc.z = 0;" msgstr "" #. type: \b; header #: cbot-help/pointer.txt:1 #, no-wrap msgid "References (for specialists)" msgstr "" #. type: Plain text #: cbot-help/pointer.txt:3 #, no-wrap msgid "" "CBOT uses references for <a cbot|class>classes</a> and <a " "cbot|array>arrays</a>. Any class variable actually contains a reference to " "the instance. The instance actually contains the class fields. Several " "references can reference the same instance. A <code><a " "cbot|null>null</a></code> reference references nothing. You can compare an " "instance to a suitcase and a reference to a carrier. Each time we need a new " "suitcase we create a new instance with a carrier. But a suitcase can be " "carried by more than one carrier. A carrier who carries no suitcase is a " "<code><a cbot|null>null</a></code> reference." msgstr "" #. type: Plain text #: cbot-help/pointer.txt:6 #, no-wrap msgid "" "Example:\n" "<c/><s/>{" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/pointer.txt:16 #, no-wrap msgid "" "\tMyClass item1(); // create a new instance\n" "\t // referenced by item1\n" "\tMyClass item2; // create a null reference\n" "\titem2 = item1; // copy the reference,\n" "\t // item2 and item1 now reference\n" "\t // the same instance\n" "\titem1.a = 12; // modifies the instance\n" "\t // referenced by item1 (and item2)\n" "\tmessage(item2.a);// displays 12\n" "}" msgstr "" #. type: Plain text #: cbot-help/pointer.txt:18 #, no-wrap msgid "" "If you pass a <a cbot|class>class</a> instance as parameter to a function, " "the function only receives a reference to the instance. That means if you " "modify the instance in the function, the instance that has been specified by " "the caller will be actuallay modified." msgstr "" #. type: Plain text #: cbot-help/pointer.txt:20 #, no-wrap msgid "<c/><s/>void Test( MyClass item )" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/pointer.txt:25 #, no-wrap msgid "" "{\n" "\titem.a = 12; // modify the original instance\n" "\titem = new MyClass(); // new local instance\n" "\titem.a = 33; // modifie the local instance\n" "}" msgstr "" #. type: Plain text #: cbot-help/pointer.txt:28 #, no-wrap msgid "" "Calling the fucntion <code>Test()</code>¦:\n" "<c/><s/>{" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/pointer.txt:32 #, no-wrap msgid "" "\tMyClass toto();\n" "\tTest(toto);\n" "\tmessage(toto.a); // displays 12\n" "}" msgstr "" #. type: Plain text #: cbot-help/pointer.txt:34 #, no-wrap msgid "" "The instance containing the field <code>a = 33</code> is referenced only by " "the newly created instance <code>item</code> inside the fucntion " "<code>Test</code>. At the end of <code>Test</code> this newly created " "instance referenced by <code>item</code> is automatically deleted." msgstr "" #. type: Plain text #: cbot-help/pointer.txt:37 #, no-wrap msgid "" "A function can return an instance¦:\n" "<c/><s/>MyClass Test2( )" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/pointer.txt:42 #, no-wrap msgid "" "{\n" "\tMyClass item = new MyClass();\n" "\titem.x = 33;\n" "\treturn item;\n" "}" msgstr "" #. type: Plain text #: cbot-help/pointer.txt:45 #, no-wrap msgid "" "Call the function like this:\n" "<c/><s/>{" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/pointer.txt:50 #, no-wrap msgid "" "\tMyClass toto;\n" "\ttoto = Test2(); // toto will contain a reference to\n" "\t // the instance created by Test2()\n" "\tmessage(toto.a); // displays 33\n" "}" msgstr "" #. type: Plain text #: cbot-help/pointer.txt:53 #, no-wrap msgid "" "<code><a cbot|class>class</a></code>, <code><a cbot|new>new</a></code>\n" "<a cbot>Programming</a>, <a cbot|type>types</a> and <a " "cbot|category>categories</a>." msgstr "" #. type: \b; header #: cbot-help/private.txt:1 #, no-wrap msgid "Instruction <code>private</code> (for specialists)" msgstr "" #. type: Plain text #: cbot-help/private.txt:3 #, no-wrap msgid "" "<a cbot|class>Class</a> members can be <a cbot|public>public</a> (by " "default) or private. A member can be declared privat by putting " "<code>private</code> before the type declaration of the member. Private " "members are not accessible from outside the class definition." msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/private.txt:16 #, no-wrap msgid "" "public class MyClass\n" "{\n" "\tint b; // public by défault\n" "\tpublic int a; // als public \n" "\tprivate point position; // privat\n" "}\n" "void Test()\n" "{\n" "\tMyClass item;\n" "\titem.a = item.b = 12; // ok\n" "\tmessage( item.position ); // this is an error\n" "}" msgstr "" #. type: Plain text #: cbot-help/private.txt:19 #, no-wrap msgid "" "<code><a cbot|class>class</a></code>, <code><a " "cbot|public>public</a></code>\n" "<a cbot>Programming</a>, <a cbot|type>types</a> and <a " "cbot|category>categories</a>." msgstr "" #. type: \b; header #: cbot-help/public.txt:1 #, no-wrap msgid "Instruction <code>public</code> (for specialists)" msgstr "" #. type: Plain text #: cbot-help/public.txt:3 #, no-wrap msgid "This instruction has two distinct purposes¦:" msgstr "" #. type: Bullet: '1)' #: cbot-help/public.txt:4 #, no-wrap msgid "Make a function available to other bots." msgstr "" #. type: Bullet: '2)' #: cbot-help/public.txt:5 #, no-wrap msgid "Make a class member accessible from outside the class definition." msgstr "" #. type: \b; header #: cbot-help/public.txt:7 #, no-wrap msgid "Instruction <code>public</code> for functions" msgstr "" #. type: Plain text #: cbot-help/public.txt:9 #, no-wrap msgid "" "If you put <code>public</code> before a <a cbot|function>function</a> " "definition, you can make the function available to programs in other bots in " "the same mission." msgstr "" #. type: Plain text #: cbot-help/public.txt:11 #, no-wrap msgid "For example in the first bot we would have¦:" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/public.txt:17 #, no-wrap msgid "" "public void object::Segment(float dist, float angle)\n" "{\n" "\tmove(dist);\n" "\tturn(angle);\n" "}" msgstr "" #. type: Plain text #: cbot-help/public.txt:19 #, no-wrap msgid "And in another bot we would have¦:" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/public.txt:28 #, no-wrap msgid "" "extern void object::Square( )\n" "{\n" "\tfor ( int i=0 ; i<4 ; i++ )\n" "\t{\n" "\t\tSegment(10, 90);\n" "\t\tfire(1);\n" "\t}\n" "}" msgstr "" #. type: Plain text #: cbot-help/public.txt:30 #, no-wrap msgid "" "If you have declared a function <code>public</code>, you cannot define a " "function with the same name and arguments in another bot of the same " "mission." msgstr "" #. type: Plain text #: cbot-help/public.txt:32 #, no-wrap msgid "" "If a bot containing a <code>public</code> function is destroyed, the other " "bots that make use of this function will be stopped with an error." msgstr "" #. type: \b; header #: cbot-help/public.txt:33 #, no-wrap msgid "Instruction <code>public</code> for classes" msgstr "" #. type: Plain text #: cbot-help/public.txt:35 #, no-wrap msgid "" "<a cbot|class>Class</a> members can be public (by default) or <a " "cbot|private>privat</a>. A member can be declared private by putting " "<code>private</code> before the member type. Private members are not " "accessible from outside the class definition." msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/public.txt:48 #, no-wrap msgid "" "public class MyClass\n" "{\n" "\tint b; // public by default\n" "\tpublic int a; // also public \n" "\tprivate point position; // privat\n" "}\n" "void Test()\n" "{\n" "\tMyClass item;\n" "\titem.a = item.b = 12; // ok\n" "\tmessage( item.position ); // this is an error\n" "}" msgstr "" #. type: Plain text #: cbot-help/public.txt:51 #, no-wrap msgid "" "<code><a cbot|class>class</a></code>, <code><a " "cbot|private>private</a></code>, <code><a " "cbot|function>functions</a></code>\n" "<a cbot>Programming</a>, <a cbot|type>types</a> and <a " "cbot|category>categories</a>." msgstr "" #. type: \b; header #: cbot-help/radar.txt:1 #, no-wrap msgid "Instruction <code>radar</code>" msgstr "" #. type: Plain text #: cbot-help/radar.txt:3 #, no-wrap msgid "" "With the instruction <code>radar()</code>, you can look for objects like <a " "object|mother>enemies</a>, bots, buildings or raw materials." msgstr "" #. type: Plain text #: cbot-help/radar.txt:6 #, no-wrap msgid "" "Write in brackets the <a cbot|category>name of the object</a> that you look " "for. Put the result in a variable of the <a cbot|type>type</a> " "<code>object</code>. Here is an example that looks for the closest ant:" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/radar.txt:12 #, no-wrap msgid "" "// At the beginning of the program:\n" "object item; // variable declaration\n" "\n" "// Look for the closest ant\n" "item = radar(AlienAnt);" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/radar.txt:16 #, no-wrap msgid "<c/>radar ( category, angle, focus, min, max, way );<n/>" msgstr "" #. type: Plain text #: cbot-help/radar.txt:18 #, no-wrap msgid "Detects an object according to several parameters. " msgstr "" #. type: Image filename #: cbot-help/radar.txt:19 #, no-wrap msgid "radar1" msgstr "" #. type: Plain text #: cbot-help/radar.txt:21 #, no-wrap msgid "" "Seen from above, the purple zone corresponds to the zone where objects will " "be detected. " msgstr "" #. type: \t; header #: cbot-help/radar.txt:22 cbot-help/search.txt:7 #, no-wrap msgid "category: <code><a cbot|int>int</a></code>" msgstr "" #. type: Plain text #: cbot-help/radar.txt:24 #, no-wrap msgid "" "<a cbot|category>Category</a> of the objects that should be detected. For " "example, when you are looking for an ant, write <code>radar " "(AlienAnt)</code>. " msgstr "" #. type: \t; header #: cbot-help/radar.txt:25 #, no-wrap msgid "angle: <code><a cbot|float>float</a></code> (default value<code>0</code>)" msgstr "" #. type: Plain text #: cbot-help/radar.txt:30 #, no-wrap msgid "" "Direction that the radar is facing, in degrees. \n" "<code> 0</code> -> radar is facing straight ahead\n" "<code>-90</code> -> radar is facing a quarter turn right\n" "<code> 90</code> -> radar is facing a quarter turn left" msgstr "" #. type: \t; header #: cbot-help/radar.txt:31 #, no-wrap msgid "focus: <code><a cbot|float>float</a></code> (default value<code>360</code>)" msgstr "" #. type: Plain text #: cbot-help/radar.txt:33 #, no-wrap msgid "Opening angle of the radar, in degrees. " msgstr "" #. type: \t; header #: cbot-help/radar.txt:34 #, no-wrap msgid "min: <code><a cbot|float>float</a></code> (default value <code>0</code>)" msgstr "" #. type: Plain text #: cbot-help/radar.txt:36 #, no-wrap msgid "" "Minimum detection distance, in meters. Objects that are closer than the " "minimum distance will not be detected. " msgstr "" #. type: \t; header #: cbot-help/radar.txt:37 #, no-wrap msgid "max: <code><a cbot|float>float</a></code> (Default value<code>1000</code>)" msgstr "" #. type: Plain text #: cbot-help/radar.txt:39 #, no-wrap msgid "" "Maximum detection distance, in meters. Objects that are farther away than " "the maximum distance will not be detected. " msgstr "" #. type: \t; header #: cbot-help/radar.txt:40 #, no-wrap msgid "way: <code><a cbot|float>float</a></code> (default value<code>1</code>)" msgstr "" #. type: Plain text #: cbot-help/radar.txt:42 #, no-wrap msgid "" "Determines which way the objects are detected. With value <code>1</code>, " "returns the closest object found in the specified zone. With value " "<code>-1</code>, the farthest object in the zone will be returned. " msgstr "" #. type: \t; header #: cbot-help/radar.txt:43 cbot-help/retobj.txt:10 cbot-help/search.txt:13 #, no-wrap msgid "Return value: <code><a cbot|object>object</a></code>" msgstr "" #. type: Plain text #: cbot-help/radar.txt:45 #, no-wrap msgid "" "Returns the first object found that corresponds to the specified category in " "the specified zone. If no object was found, returns the value <code><a " "cbot|null>null</a></code>." msgstr "" #. type: \t; header #: cbot-help/radar.txt:46 #, no-wrap msgid "Remark" msgstr "" #. type: Plain text #: cbot-help/radar.txt:48 #, no-wrap msgid "" "You do not have to give all the parameters. Here are two examples of " "instructions that are equivalent: " msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/radar.txt:51 #, no-wrap msgid "" "\tradar(Titanium, 0, 360, 0, 1000);\n" "\tradar(Titanium); // equivalent" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/radar.txt:54 #, no-wrap msgid "" "\tradar(Titanium, 0, 90, 0, 1000);\n" "\tradar(Titanium, 0, 90); // equivalent" msgstr "" #. type: Plain text #: cbot-help/radar.txt:57 #, no-wrap msgid "" "When one or more parameters are not specified, the default values indicated " "above are used instead; only the first parameter is compulsory.\n" "Generally, only the first parameter is specified: f. ex. <code>radar " "(AlienAnt)</code> detects the closest ant, wherever it may be. " msgstr "" #. type: \b; header #: cbot-help/readln.txt:1 #, no-wrap msgid "Instruction <code>readln</code>" msgstr "" #. type: Plain text #: cbot-help/readln.txt:3 #, no-wrap msgid "" "Read one line from an open file in the files/ folder. This is a method of " "the <code><a cbot|file>file</a></code> class. This is the reason why we " "always write <code>handle.readln()</code>¦:" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/readln.txt:5 #, no-wrap msgid "\ts = handle.readln();" msgstr "" #. type: Plain text #: cbot-help/readln.txt:7 #, no-wrap msgid "" "The file must have been opened for reading (<code>\"r\"</code>) with the " "<code><a cbot|open>open</a></code> instruction. <code>readln</code> returns " "the string containing the whole line but without the end of line characters " "0x0D (CR) and 0x0A (LF)." msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/readln.txt:10 #, no-wrap msgid "<c/>string = handle.readln ( );<n/>" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/readln.txt:17 #, no-wrap msgid "" "\tstring s;\n" "\ts = handle.readln();\n" "\tif ( s == \"abc\" )\n" "\t..." msgstr "" #. type: Plain text #: cbot-help/readln.txt:20 #, no-wrap msgid "" "<code><a cbot|file>file</a></code>, <code><a cbot|open>open</a></code>, " "<code><a cbot|close>close</a></code>, <code><a " "cbot|writeln>writeln</a></code> and <code><a cbot|eof>eof</a></code>.\n" "<a cbot>Programming</a>, <a cbot|type>types</a> and <a " "cbot|category>categories</a>." msgstr "" #. type: \b; header #: cbot-help/receive.txt:1 #, no-wrap msgid "Instruction <code>receive</code>" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/receive.txt:4 #, no-wrap msgid "<c/>receive ( name, power );<n/>" msgstr "" #. type: Plain text #: cbot-help/receive.txt:6 #, no-wrap msgid "" "Retrieves an information from the closest <a object|exchange>information " "exchange post</a>." msgstr "" #. type: Plain text #: cbot-help/receive.txt:9 #, no-wrap msgid "" "Name of the information required from the exchange post. This name is a " "string: it must be written in quotation marks \"¦\"." msgstr "" #. type: Plain text #: cbot-help/receive.txt:12 #, no-wrap msgid "" "Power of the receiver, which corresponds to maximal distance between the " "receiver and the exchange post. If the distance is longer, no information is " "received. Default value is 10 metres." msgstr "" #. type: Plain text #: cbot-help/receive.txt:15 #, no-wrap msgid "" "Value of the retrieved information. If no exchange post is close enough, or " "if the name of the requested information does not exist in the exchange " "post, the value <code>nan</code> is returned." msgstr "" #. type: Plain text #: cbot-help/receive.txt:18 #, no-wrap msgid "" "<code><a cbot|send>send</a></code>, <code><a " "cbot|testinfo>testinfo</a></code> and <code><a " "cbot|delinfo>deleteinfo</a></code>.\n" "<a cbot>Programming</a>, <a cbot|type>types</a> and <a " "cbot|category>categories</a>." msgstr "" #. type: \b; header #: cbot-help/recycle.txt:1 #, no-wrap msgid "Instruction <code>recycle</code>" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/recycle.txt:4 #, no-wrap msgid "<c/>recycle ( );<n/>" msgstr "" #. type: Plain text #: cbot-help/recycle.txt:6 #, no-wrap msgid "" "Recycles the derelict bot in front of the <a object|botrecy>recycler</a> " "into a <a object|titan>titanium cube</a>." msgstr "" #. type: Plain text #: cbot-help/recycle.txt:11 #, no-wrap msgid "" "Zero if OK, or a value different from zero if an error occurred.\n" "<code>== 0 </code>the derelict bot has been recycled\n" "<code>!= 0 </code>error, no derelict bot could be recycled" msgstr "" #. type: \b; header #: cbot-help/retobj.txt:1 #, no-wrap msgid "Instruction <code>retobject</code>" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/retobj.txt:4 #, no-wrap msgid "<c/>retobject ( number );<n/>" msgstr "" #. type: Plain text #: cbot-help/retobj.txt:6 #, no-wrap msgid "Returns the object corresponding to the given number." msgstr "" #. type: \t; header #: cbot-help/retobj.txt:7 #, no-wrap msgid "number: <code><a cbot|int>int</a></code>" msgstr "" #. type: Plain text #: cbot-help/retobj.txt:9 #, no-wrap msgid "" "Number of the object, between 0 and n. \"n\" represents the total number of " "objects in the scene. " msgstr "" #. type: Plain text #: cbot-help/retobj.txt:12 #, no-wrap msgid "" "Object corresponding to the number. The return value <code><a " "cbot|null>null</a></code> means that no object corresponds to this number, " "because the number was too high, and there are not so many objects in the " "scene. " msgstr "" #. type: \b; header #: cbot-help/return.txt:1 #, no-wrap msgid "Instruction <code>return</code>" msgstr "" #. type: Plain text #: cbot-help/return.txt:3 #, no-wrap msgid "Returns from a function. Syntax:" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/return.txt:8 #, no-wrap msgid "" "void function ( )\n" "{\n" "\treturn;\n" "}" msgstr "" #. type: Plain text #: cbot-help/return.txt:11 #, no-wrap msgid "" "If the <a cbot|function>function</a> has a return type, the " "<code>return</code> instruction must be followed by the value to be " "returned:" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/return.txt:16 #, no-wrap msgid "" "float Pi ( )\n" "{\n" "\treturn 3.1415;\n" "}" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/return.txt:21 #, no-wrap msgid "" "float Mean (float a, float b)\n" "{\n" "\treturn (a+b)/2;\n" "}" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/return.txt:28 #, no-wrap msgid "" "string Sign (float a)\n" "{\n" "\tif ( a > 0 ) return \"positive\";\n" "\tif ( a < 0 ) return \"négative\";\n" "\treturn \"null\";\n" "}" msgstr "" #. type: \b; header #: cbot-help/search.txt:1 #, no-wrap msgid "Instruction <code>search</code>" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/search.txt:4 #, no-wrap msgid "<c/>search ( category, position );<n/>" msgstr "" #. type: Plain text #: cbot-help/search.txt:6 #, no-wrap msgid "" "Detects the object of the given category that is closest to the given " "position. " msgstr "" #. type: Plain text #: cbot-help/search.txt:9 #, no-wrap msgid "<a cbot|category>Category</a> of the requested object." msgstr "" #. type: \t; header #: cbot-help/search.txt:10 cbot-help/topo.txt:7 #, no-wrap msgid "position: <code><a cbot|point>point</a></code>" msgstr "" #. type: Plain text #: cbot-help/search.txt:12 #, no-wrap msgid "" "<code>search</code> returns the object of the given category that is closest " "to the position indicated here. " msgstr "" #. type: Plain text #: cbot-help/search.txt:15 #, no-wrap msgid "" "Characteristics of the object that has been found. The value <code><a " "cbot|null>null</a></code> means that no object of this category has been " "found. " msgstr "" #. type: \b; header #: cbot-help/send.txt:1 #, no-wrap msgid "Instruction <code>send</code>" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/send.txt:4 #, no-wrap msgid "<c/>send ( name, value, power );<n/>" msgstr "" #. type: Plain text #: cbot-help/send.txt:6 #, no-wrap msgid "" "Sends an information to the closest <a object|exchange>information exchange " "post</a>." msgstr "" #. type: Plain text #: cbot-help/send.txt:10 #, no-wrap msgid "" "Name of the information to be sent to the exchange post. This name is a " "string: it must be written in quotation marks \"¦\".\n" "If there is any information having this name, a new entry is created, as far " "as the total number of entries does not exceed 10. If there is already an " "information having this name, value is simply replaced by the new." msgstr "" #. type: \t; header #: cbot-help/send.txt:11 #, no-wrap msgid "value: <code>float</code>" msgstr "" #. type: Plain text #: cbot-help/send.txt:13 #, no-wrap msgid "Value of the information to be sent." msgstr "" #. type: Plain text #: cbot-help/send.txt:16 #, no-wrap msgid "" "Power of the transmitter, which corresponds to the maximal distance to where " "information can be the sent. Default value is 10 metres." msgstr "" #. type: Plain text #: cbot-help/send.txt:19 #, no-wrap msgid "" "<code><a cbot|receive>receive</a></code>, <code><a " "cbot|testinfo>testinfo</a></code> and <code><a " "cbot|delinfo>deleteinfo</a></code>.\n" "<a cbot>Programming</a>, <a cbot|type>types</a> and <a " "cbot|category>categories</a>." msgstr "" #. type: \b; header #: cbot-help/shield.txt:1 #, no-wrap msgid "Instruction <code>shield</code>" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/shield.txt:4 #, no-wrap msgid "<c/>shield ( oper );<n/>" msgstr "" #. type: Plain text #: cbot-help/shield.txt:6 #, no-wrap msgid "" "Activates or deactivates the shield of the <a " "object|botshld>ahielder</a>. You can of course move the shielder when the " "shield is active. It protects all objects that are inside the shielded " "sphere from enemy fire. The radius of the sphere can range between 10 and 25 " "meters." msgstr "" #. type: \t; header #: cbot-help/shield.txt:7 #, no-wrap msgid "oper: <code><a cbot|float>float</a></code>" msgstr "" #. type: Plain text #: cbot-help/shield.txt:11 #, no-wrap msgid "" "<code>1</code> activates the shield.\n" "<code>0</code> deactivates the shield\n" "A normal <a object|power>power cell</a> fully charged can maintain the " "shield active during 20 seconds. When the cell is empty, the shield " "deactivates." msgstr "" #. type: \t; header #: cbot-help/shield.txt:12 #, no-wrap msgid "radius: <code><a cbot|float>float</a></code>" msgstr "" #. type: Plain text #: cbot-help/shield.txt:14 #, no-wrap msgid "Radius of the shield, ranging between 10 and 25 meters." msgstr "" #. type: \b; header #: cbot-help/sizeof.txt:1 #, no-wrap msgid "Instruction <code>sizeof</code>" msgstr "" #. type: Plain text #: cbot-help/sizeof.txt:4 #, no-wrap msgid "" "The sizeof function lets you know the number of elements contained in an <a " "cbot|array>array</a>.\n" "That is the index of the last element plus one (\"empty\" elements are " "counted)." msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/sizeof.txt:10 #, no-wrap msgid "" "{\n" "\tint a[12];\n" "\ta[5] = 345;\n" "\tmessage( sizeof(a) ); // will display 6\n" "}" msgstr "" #. type: Plain text #: cbot-help/sizeof.txt:12 #, no-wrap msgid "" "In this example we have 6 elements in the array after " "<code>a[5]=345</code>. The non initialized elements <code>[0]</code>, " "<code>[1]</code>, <code>[2]</code>, <code>[3]</code> and <code>[4]</code> " "will be counted." msgstr "" #. type: Plain text #: cbot-help/sizeof.txt:14 #, no-wrap msgid "With multidimensionnal arrays you can get the size of a sub array:" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/sizeof.txt:20 #, no-wrap msgid "" "float xy[][]; // 2 dimensionnal array\n" "xy[5][10] = 67;\n" "message( sizeof(xy) ); // will display 6\n" "message( sizeof(xy[5]) ); // will display 11\n" msgstr "" #. type: \b; header #: cbot-help/sniff.txt:1 #, no-wrap msgid "Instruction <code>sniff</code>" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/sniff.txt:4 #, no-wrap msgid "<c/>sniff ( );<n/>" msgstr "" #. type: Plain text #: cbot-help/sniff.txt:6 #, no-wrap msgid "" "Sounds the underground in front of the <a " "object|botsr>sniffer</a>. According to what raw materials were detected, the " "following objects will be created: " msgstr "" #. type: Plain text #: cbot-help/sniff.txt:10 #, no-wrap msgid "" "<code>TitaniumSpot</code> -> <a object|stonspot>Red cross</a>\n" "<code>UraniumSpot </code> -> <a object|uranspot>Yellow circle</a>\n" "<code>PowerSpot </code> -> <a object|enerspot>Green cross</a>" msgstr "" #. type: Plain text #: cbot-help/sniff.txt:15 #, no-wrap msgid "" "Zero if everything is OK, or a value different from zero if an error " "occurred. \n" "<code>== 0 </code>sounding performed\n" "<code>!= 0 </code>sounding impossible" msgstr "" #. type: \b; header #: cbot-help/space.txt:1 #, no-wrap msgid "Instruction <code>space</code>" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/space.txt:4 #, no-wrap msgid "<c/>space ( center, rmin, rmax, dist );<n/>" msgstr "" #. type: Plain text #: cbot-help/space.txt:6 #, no-wrap msgid "Determines the position of the nearest free space around a given position." msgstr "" #. type: \t; header #: cbot-help/space.txt:7 #, no-wrap msgid "center: <code><a cbot|point>point</a></code> (default: bot position)" msgstr "" #. type: Plain text #: cbot-help/space.txt:9 #, no-wrap msgid "Desired position of the free space." msgstr "" #. type: \t; header #: cbot-help/space.txt:10 #, no-wrap msgid "rmin: <code><a cbot|float>float</a></code> (default value: <code>8</code>)" msgstr "" #. type: Plain text #: cbot-help/space.txt:12 #, no-wrap msgid "Minimum distance from the desired position." msgstr "" #. type: \t; header #: cbot-help/space.txt:13 #, no-wrap msgid "rmax: <code><a cbot|float>float</a></code> (default value: <code>50</code>)" msgstr "" #. type: Plain text #: cbot-help/space.txt:15 #, no-wrap msgid "Maximum distance from the desired position." msgstr "" #. type: \t; header #: cbot-help/space.txt:16 #, no-wrap msgid "dist: <code><a cbot|float>float</a></code> (default value: <code>4</code>)" msgstr "" #. type: Plain text #: cbot-help/space.txt:18 #, no-wrap msgid "Required distance between two free spaces." msgstr "" #. type: \t; header #: cbot-help/space.txt:19 #, no-wrap msgid "Return: <code><a cbot|point>point</a></code>" msgstr "" #. type: Plain text #: cbot-help/space.txt:21 #, no-wrap msgid "Position of the free space." msgstr "" #. type: \b; header #: cbot-help/static.txt:1 #, no-wrap msgid "Instruction <code>static</code> (for specialists)" msgstr "" #. type: Plain text #: cbot-help/static.txt:3 #, no-wrap msgid "" "<a cbot|class>Class</a> members declared with <code>static</code> are shared " "between all instances of the class." msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/static.txt:17 #, no-wrap msgid "" "public class MyClass\n" "{\n" "\tstatic int nb = 1;\n" "\tstatic string [ ] list = null;\n" "}\n" "void Test ()\n" "{\n" "\tMyClasse item1();\n" "\tMyClasse item2();\n" "\titem1.nb = 3;\n" "\titem1.list[item1.nb] = \"Hello\";\n" "\tmessage( item2.list[item2.nb] ); // display \"Hello\"\n" "}" msgstr "" #. type: Plain text #: cbot-help/static.txt:19 #, no-wrap msgid "" "<code>Static</code> members can be declared <code><a " "cbot|private>private</a></code> so they will be only acessible from within " "class members (including constructors and destructors)." msgstr "" #. type: Plain text #: cbot-help/static.txt:22 #, no-wrap msgid "" "<code><a cbot|class>class</a></code>, <code><a " "cbot|synchro>synchronized</a></code>\n" "<a cbot>Programming</a>, <a cbot|type>types</a> and <a " "cbot|category>categories</a>." msgstr "" #. type: \b; header #: cbot-help/strfind.txt:1 #, no-wrap msgid "Instruction <code>strfind</code>" msgstr "" #. type: Plain text #: cbot-help/strfind.txt:3 #, no-wrap msgid "" "Find a substring in a string and returns the position of the first substring " "found or <a cbot|nan>nan</a> if the substring has not been found." msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/strfind.txt:6 #, no-wrap msgid "<c/>strfind ( string, sub );<n/>" msgstr "" #. type: \t; header #: cbot-help/strfind.txt:7 #, no-wrap msgid "string: <code><a cbot|string>string</a></code>" msgstr "" #. type: Plain text #: cbot-help/strfind.txt:9 #, no-wrap msgid "String we are searching in." msgstr "" #. type: \t; header #: cbot-help/strfind.txt:10 #, no-wrap msgid "sub: <code><a cbot|string>string</a></code>" msgstr "" #. type: Plain text #: cbot-help/strfind.txt:12 #, no-wrap msgid "Substring we are searching for." msgstr "" #. type: Plain text #: cbot-help/strfind.txt:14 cbot-help/strleft.txt:11 cbot-help/strlen.txt:8 cbot-help/strlower.txt:8 cbot-help/strmid.txt:14 cbot-help/strright.txt:11 cbot-help/strupper.txt:8 cbot-help/strval.txt:5 cbot-help/strval.txt:12 cbot-help/writeln.txt:12 #, no-wrap msgid "Examples¦:" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/strfind.txt:17 #, no-wrap msgid "" "<c/>\tint pos = strfind(\"abcdef\", \"ab\"); // pos will be 0\n" "\tint pos = strfind(\"abcdef\", \"de\"); // pos will be 3\n" "\tint pos = strfind(\"abcdef\", \"xy\"); // pos will be <a cbot|nan>nan</a>" msgstr "" #. type: Plain text #: cbot-help/strfind.txt:20 #, no-wrap msgid "" "<code><a cbot|strlen>strlen</a></code>, <code><a " "cbot|strleft>strleft</a></code>, <code><a cbot|strright>strright</a></code>, " "<code><a cbot|strmid>strmid</a></code>, <code><a " "cbot|strval>strval</a></code>, <code><a cbot|strupper>strupper</a></code>, " "<code><a cbot|strlower>strlower</a></code>\n" "<a cbot>Programming</a>, <a cbot|type>types</a> and <a " "cbot|category>categories</a>." msgstr "" #. type: \b; header #: cbot-help/string.txt:1 #, no-wrap msgid "Type <code>string</code>" msgstr "" #. type: Plain text #: cbot-help/string.txt:3 #, no-wrap msgid "Use a variable of this type for storing characters or strings." msgstr "" #. type: Plain text #: cbot-help/string.txt:5 #, no-wrap msgid "For example: " msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/string.txt:9 #, no-wrap msgid "" "<c/>\t\"Hello!\"\n" "\t\"This is a string\"\n" "\t\"x\"\n" "\t\"\" // empty string" msgstr "" #. type: Plain text #: cbot-help/string.txt:11 #, no-wrap msgid "You can append two strings with the <code>+</code> operator :" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/string.txt:12 #, no-wrap msgid "<c/>\t\"Good morning,\" + \" \" + \"Sir\"" msgstr "" #. type: Plain text #: cbot-help/string.txt:14 #, no-wrap msgid "Returns the string:" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/string.txt:15 #, no-wrap msgid "<c/>\t\"Good morning, Sir\"" msgstr "" #. type: Plain text #: cbot-help/string.txt:17 #, no-wrap msgid "" "If you want to put a quotation mark (\") or a backslash (\\) in a string you " "must write¦:" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/string.txt:18 #, no-wrap msgid "<c/>\"This is \\\"very\\\" important\"" msgstr "" #. type: Plain text #: cbot-help/string.txt:19 #, no-wrap msgid "<n/>which will result in the string <c/> This is \"very\" important." msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/string.txt:20 #, no-wrap msgid "<c/>\"%user%\\\\ant.txt\"" msgstr "" #. type: Plain text #: cbot-help/string.txt:21 #, no-wrap msgid "<n/>will result in <c/>%user%\\ant.txt" msgstr "" #. type: Plain text #: cbot-help/string.txt:31 #, no-wrap msgid "" "Following instructions can be used with strings¦:\n" "<code><a cbot|strlen>strlen</a> </code>Get string length\n" "<code><a cbot|strleft>strleft</a> </code>Extract left part\n" "<code><a cbot|strright>strright</a> </code>Extract right part\n" "<code><a cbot|strmid>strmid</a> </code>Extract center part\n" "<code><a cbot|strfind>strfind</a> </code>Find a substring.\n" "<code><a cbot|strval>strval</a> </code>Convert string to number\n" "<code><a cbot|strupper>strupper</a> </code>Convert to upper case\n" "<code><a cbot|strlower>strlower</a> </code>Convert to lower case" msgstr "" #. type: \b; header #: cbot-help/strleft.txt:1 #, no-wrap msgid "Instruction <code>strleft</code>" msgstr "" #. type: Plain text #: cbot-help/strleft.txt:3 #, no-wrap msgid "Extracts the first (that is, leftmost) characters from a string." msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/strleft.txt:6 #, no-wrap msgid "<c/>strleft ( string, len );<n/>" msgstr "" #. type: \t; header #: cbot-help/strleft.txt:7 cbot-help/strmid.txt:10 cbot-help/strright.txt:7 #, no-wrap msgid "len: <code><a cbot|int>int</a></code>" msgstr "" #. type: Plain text #: cbot-help/strleft.txt:9 cbot-help/strmid.txt:12 cbot-help/strright.txt:9 #, no-wrap msgid "Number of characters to be extracted." msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/strleft.txt:13 #, no-wrap msgid "" "<c/>\tstring s = strleft(\"abcdef\", 2); // s is \"ab\"\n" "\tstring s = strleft(\"abc\", 10); // s is \"abc\"" msgstr "" #. type: Plain text #: cbot-help/strleft.txt:16 #, no-wrap msgid "" "<code><a cbot|strlen>strlen</a></code>, <code><a " "cbot|strright>strright</a></code>, <code><a cbot|strmid>strmid</a></code>, " "<code><a cbot|strfind>strfind</a></code>, <code><a " "cbot|strval>strval</a></code>, <code><a cbot|strupper>strupper</a></code>, " "<code><a cbot|strlower>strlower</a></code>\n" "<a cbot>Programming</a>, <a cbot|type>types</a> and <a " "cbot|category>categories</a>." msgstr "" #. type: \b; header #: cbot-help/strlen.txt:1 #, no-wrap msgid "Instruction <code>strlen</code>" msgstr "" #. type: Plain text #: cbot-help/strlen.txt:3 #, no-wrap msgid "Get the length of a string." msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/strlen.txt:6 #, no-wrap msgid "<c/>strlen ( string );<n/>" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/strlen.txt:11 #, no-wrap msgid "" "<c/>\tint len = strlen(\"abc\"); // len is 3\n" "\tint len = strlen(\"\"); // len is 0\n" "\tif ( strlen(s) == 0 ) // is string empty ?" msgstr "" #. type: Plain text #: cbot-help/strlen.txt:14 #, no-wrap msgid "" "<code><a cbot|strleft>strleft</a></code>, <code><a " "cbot|strright>strright</a></code>, <code><a cbot|strmid>strmid</a></code>, " "<code><a cbot|strfind>strfind</a></code>, <code><a " "cbot|strval>strval</a></code>, <code><a cbot|strupper>strupper</a></code>, " "<code><a cbot|strlower>strlower</a></code>\n" "<a cbot>Programming</a>, <a cbot|type>types</a> and <a " "cbot|category>categories</a>." msgstr "" #. type: \b; header #: cbot-help/strlower.txt:1 #, no-wrap msgid "Instruction <code>strlower</code>" msgstr "" #. type: Plain text #: cbot-help/strlower.txt:3 #, no-wrap msgid "Convert all characters in a string to lowercase." msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/strlower.txt:6 #, no-wrap msgid "<c/>strlower ( string );<n/>" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/strlower.txt:9 #, no-wrap msgid "<c/>\tstring s = strlower(\"Abc\"); // s is \"abc\"" msgstr "" #. type: Plain text #: cbot-help/strlower.txt:12 #, no-wrap msgid "" "<code><a cbot|strlen>strlen</a></code>, <code><a " "cbot|strleft>strleft</a></code>, <code><a cbot|strright>strright</a></code>, " "<code><a cbot|strmid>strmid</a></code>, <code><a " "cbot|strfind>strfind</a></code>, <code><a cbot|strval>strval</a></code>, " "<code><a cbot|strupper>strupper</a></code>\n" "<a cbot>Programming</a>, <a cbot|type>types</a> and <a " "cbot|category>categories</a>." msgstr "" #. type: \b; header #: cbot-help/strmid.txt:1 #, no-wrap msgid "Instruction <code>strmid</code>" msgstr "" #. type: Plain text #: cbot-help/strmid.txt:3 #, no-wrap msgid "" "Extracts a substring of a given length starting at a given position from a " "string." msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/strmid.txt:6 #, no-wrap msgid "<c/>strmid ( string, pos, len );<n/>" msgstr "" #. type: \t; header #: cbot-help/strmid.txt:7 #, no-wrap msgid "pos: <code><a cbot|int>int</a></code>" msgstr "" #. type: Plain text #: cbot-help/strmid.txt:9 #, no-wrap msgid "" "The index of the first character that is to be included in the extracted " "substring." msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/strmid.txt:17 #, no-wrap msgid "" "<c/>\tstring s = strmid(\"abcdef\", 1, 2); // s is \"bc\"\n" "\tstring s = strmid(\"abcdef\", 4, 5); // s is \"ef\"\n" "\tstring s = strmid(\"abcdef\", 9, 2); // s is \"\"" msgstr "" #. type: Plain text #: cbot-help/strmid.txt:20 #, no-wrap msgid "" "<code><a cbot|strlen>strlen</a></code>, <code><a " "cbot|strleft>strleft</a></code>, <code><a cbot|strright>strright</a></code>, " "<code><a cbot|strfind>strfind</a></code>, <code><a " "cbot|strval>strval</a></code>, <code><a cbot|strupper>strupper</a></code>, " "<code><a cbot|strlower>strlower</a></code>\n" "<a cbot>Programming</a>, <a cbot|type>types</a> and <a " "cbot|category>categories</a>." msgstr "" #. type: \b; header #: cbot-help/strright.txt:1 #, no-wrap msgid "Instruction <code>strright</code>" msgstr "" #. type: Plain text #: cbot-help/strright.txt:3 #, no-wrap msgid "Extracts the last (that is, rightmost) characters from a string." msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/strright.txt:6 #, no-wrap msgid "<c/>strright ( string, len );<n/>" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/strright.txt:13 #, no-wrap msgid "" "<c/>\tstring s = strright(\"abcdef\", 2); // s is \"ef\"\n" "\tstring s = strright(\"abc\", 10); // s is \"abc\"" msgstr "" #. type: Plain text #: cbot-help/strright.txt:16 #, no-wrap msgid "" "<code><a cbot|strlen>strlen</a></code>, <code><a " "cbot|strleft>strleft</a></code>, <code><a cbot|strmid>strmid</a></code>, " "<code><a cbot|strfind>strfind</a></code>, <code><a " "cbot|strval>strval</a></code>, <code><a cbot|strupper>strupper</a></code>, " "<code><a cbot|strlower>strlower</a></code>\n" "<a cbot>Programming</a>, <a cbot|type>types</a> and <a " "cbot|category>categories</a>." msgstr "" #. type: \b; header #: cbot-help/strupper.txt:1 #, no-wrap msgid "Instruction <code>strupper</code>" msgstr "" #. type: Plain text #: cbot-help/strupper.txt:3 #, no-wrap msgid "Convert all characters in a string to uppercase." msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/strupper.txt:6 #, no-wrap msgid "<c/>strupper ( string );<n/>" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/strupper.txt:9 #, no-wrap msgid "<c/>\tstring s = strupper(\"Abc\"); // s is \"ABC\"" msgstr "" #. type: Plain text #: cbot-help/strupper.txt:12 #, no-wrap msgid "" "<code><a cbot|strlen>strlen</a></code>, <code><a " "cbot|strleft>strleft</a></code>, <code><a cbot|strright>strright</a></code>, " "<code><a cbot|strmid>strmid</a></code>, <code><a " "cbot|strfind>strfind</a></code>, <code><a cbot|strval>strval</a></code>, " "<code><a cbot|strlower>strlower</a></code>\n" "<a cbot>Programming</a>, <a cbot|type>types</a> and <a " "cbot|category>categories</a>." msgstr "" #. type: \b; header #: cbot-help/strval.txt:1 #, no-wrap msgid "Instruction <code>strval</code>" msgstr "" #. type: Plain text #: cbot-help/strval.txt:3 #, no-wrap msgid "" "Convert a string to a number. Don't confuse the string <code>\"45\"</code> " "that contains actually the two characters <code>4</code> and <code>5</code> " "and the number <code>45</code>." msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/strval.txt:7 #, no-wrap msgid "" "<c/>\tstring s = \"45\"+\"12\"; // s contains \"4512\"\n" "\tfloat n = 45 + 12; // n contains 67" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/strval.txt:10 #, no-wrap msgid "<c/>strval ( string );<n/>" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/strval.txt:16 #, no-wrap msgid "" "<c/>\tfloat n = strval(\"1.23\"); // n is 1.23\n" "\tfloat n = strval(\"12abc45\"); // n is 12\n" "\tfloat n = strval(\"abc\"); // n is 0\n" "\tfloat n = strval(\"100\")+2; // n is 102" msgstr "" #. type: Plain text #: cbot-help/strval.txt:19 #, no-wrap msgid "" "<code><a cbot|strlen>strlen</a></code>, <code><a " "cbot|strleft>strleft</a></code>, <code><a cbot|strright>strright</a></code>, " "<code><a cbot|strmid>strmid</a></code>, <code><a " "cbot|strfind>strfind</a></code>, <code><a cbot|strupper>strupper</a></code>, " "<code><a cbot|strlower>strlower</a></code>\n" "<a cbot>Programming</a>, <a cbot|type>types</a> and <a " "cbot|category>categories</a>." msgstr "" #. type: \b; header #: cbot-help/synchro.txt:1 #, no-wrap msgid "Instruction <code>synchronized</code> (for specialists)" msgstr "" #. type: Plain text #: cbot-help/synchro.txt:3 #, no-wrap msgid "" "A <a cbot|class>class</a> method can be declared " "<code>synchronized</code>. This is to make sure that the method is never " "being executed by more than one bot at the same time." msgstr "" #. type: Plain text #: cbot-help/synchro.txt:5 #, no-wrap msgid "The following example illustrates the problem:" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/synchro.txt:17 #, no-wrap msgid "" "class blocking\n" "{\n" "\tstatic int nb = 33;\n" "\tsynchronized int inc( )\n" "\t{\n" "\t\tint val = nb;\n" "\t\twait ( 2 ); // wait 2 sec.\n" "\t\tnb = nb + 1;\n" "\t\treturn val;\n" "\t}\n" "}" msgstr "" #. type: Plain text #: cbot-help/synchro.txt:20 #, no-wrap msgid "" "What happens if two bots execute the <code>inc</code> method at the same " "time¦?\n" "Both of them will execute <code>val=nb</code> and wait 2 seconds so both of " "them will have <code>val=33</code>. With <code>synchronized</code> the first " "bot starts execution with <code>val=33</code> and then waits 2 seconds and " "returns. Only once the first bot has returned from the <code>inc</code> " "method, the second bot will be allowed to enter the <code>inc</code> method " "and therefore the second bot will always have <code>val=34</code>." msgstr "" #. type: Plain text #: cbot-help/synchro.txt:22 #, no-wrap msgid "" "You can have more than one synchronized method in your <a " "cbot|class>class</a> in order to prevent simultaneous execution across more " "than one method. In other words: as long as a bot's program is inside a " "synchronized method, no other bot can enter any synchronized method of the " "same class." msgstr "" #. type: Plain text #: cbot-help/synchro.txt:25 #, no-wrap msgid "" "<code><a cbot|class>class</a></code>, <code><a " "cbot|static>static</a></code>\n" "<a cbot>Programming</a>, <a cbot|type>types</a> and <a " "cbot|category>categories</a>." msgstr "" #. type: \b; header #: cbot-help/term.txt:1 #, no-wrap msgid "Semicolon" msgstr "" #. type: Plain text #: cbot-help/term.txt:3 #, no-wrap msgid "Always use a semicolon <c/>;<n/> after a simple expression. For example: " msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/term.txt:5 #, no-wrap msgid "\tint counter = 0;" msgstr "" #. type: Plain text #: cbot-help/term.txt:7 #, no-wrap msgid "However, after a <a cbot|bloc>bloc</a>, never put a semicolon:" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/term.txt:12 #, no-wrap msgid "" "\t{\n" "\t\tfloat dist;\n" "\t\tdist = distance(p1, p2);\n" "\t} <n/>// no semicolon here!<c/>" msgstr "" #. type: Plain text #: cbot-help/term.txt:14 #, no-wrap msgid "" "Do not use a semicolon either immediately after the instructions <code><a " "cbot|while>while</a></code>, <code><a cbot|if>if</a></code> or <code><a " "cbot|for>for</a></code>:" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/term.txt:19 #, no-wrap msgid "" "\tif ( a < b ) <n/>// no semicolon here!<c/>\n" "\t{\n" "\t\tb = 100-a;\n" "\t}" msgstr "" #. type: Plain text #: cbot-help/term.txt:21 #, no-wrap msgid "" "An instruction is always ended by a semicolon, and not by the end of the " "line. So you can very well put several instructions on the same line: " msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/term.txt:25 #, no-wrap msgid "" "\tint d=20;\n" "\tmove(d);\n" "\tturn(90);" msgstr "" #. type: Plain text #: cbot-help/term.txt:27 #, no-wrap msgid "Is equivalent to:" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/term.txt:29 #, no-wrap msgid "\tint d=20; move(d); turn(90);" msgstr "" #. type: \b; header #: cbot-help/testinfo.txt:1 #, no-wrap msgid "Instruction <code>testinfo</code>" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/testinfo.txt:4 #, no-wrap msgid "<c/>testinfo ( name, power );<n/>" msgstr "" #. type: Plain text #: cbot-help/testinfo.txt:6 #, no-wrap msgid "" "Tests if an information exists in the closest <a object|exchange>information " "exchange post</a>." msgstr "" #. type: Plain text #: cbot-help/testinfo.txt:9 #, no-wrap msgid "" "Name of the information to be tested in the exchange post. This name is a " "string: it must be written in quotation marks \"¦\"." msgstr "" #. type: Plain text #: cbot-help/testinfo.txt:12 #, no-wrap msgid "" "Power of the transmitter, which corresponds to the maximal distance between " "the transmitter and the exchange post. If the distance is longer, the " "function returns <code>false</code>. Default value is 10 metres." msgstr "" #. type: \t; header #: cbot-help/testinfo.txt:13 #, no-wrap msgid "Return: <code><a cbot|bool>bool</a></code>" msgstr "" #. type: Plain text #: cbot-help/testinfo.txt:15 #, no-wrap msgid "" "Return <code>true</code> if the information exists. Return and " "<code>false</code> if the information does not exist or if the receiver is " "too far away from the exchange post." msgstr "" #. type: Plain text #: cbot-help/testinfo.txt:18 #, no-wrap msgid "" "<code><a cbot|receive>receive</a></code>, <code><a cbot|send>send</a></code> " "and <code><a cbot|delinfo>deleteinfo</a></code>.\n" "<a cbot>Programming</a>, <a cbot|type>types</a> and <a " "cbot|category>categories</a>." msgstr "" #. type: \b; header #: cbot-help/this.txt:1 #, no-wrap msgid "Instruction <code>this</code>" msgstr "" #. type: Plain text #: cbot-help/this.txt:3 #, no-wrap msgid "" "Occasionally, a <a cbot|class>class</a> method needs to know the reference " "to the instance it is acting upon. For example the instance might want to " "pass it's own reference to another function. An implicit reference name " "<code>this</code> is available to methods and <code>this</code> is a " "reference to the current instance." msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/this.txt:26 #, no-wrap msgid "" "public class MyClass\n" "{\n" "\tint m_int;\n" "\tstring m_str;\n" "\tvoid MyFunction()\n" "\t{\n" "\t\tOtherFunction(this);\n" "\t\tm_int = 2;\n" "\t}\n" "}\n" "\n" "void OtherFunction(MyClass obj)\n" "{\n" "\tmessage(obj.m_str);\n" "}\n" "\n" "extern void object::Test()\n" "{\n" "\tMyClass item();\n" "\titem.m_str = \"Hello\";\n" "\titem.MyFunction(); // display \"Hello\"\n" "}" msgstr "" #. type: Plain text #: cbot-help/this.txt:28 #, no-wrap msgid "" "You can also put <code>this</code> before a field name in a method but this " "is not necessary. In the example above in the method " "<code>MyFunction()</code> following two lines have strictly the same " "meaning:" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/this.txt:31 #, no-wrap msgid "" "\tm_int = 2;\n" "\tthis.m_int = 2; // identical" msgstr "" #. type: Plain text #: cbot-help/this.txt:33 #, no-wrap msgid "" "In a method of the <code><a cbot|object>object</a></code> class, you can " "also use <code>this.</code> before a fieldname." msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/this.txt:40 #, no-wrap msgid "" "extern void object::Display()\n" "{\n" "\tmessage(orientation);\n" "\tmessage(this.orientation); // same thing but\n" "\t // more explicit\n" "}" msgstr "" #. type: Plain text #: cbot-help/this.txt:42 #, no-wrap msgid "" "However if a field name is hidden by a parameter declaration or a variable " "declaration you must use <code>this</code>. In the following example the " "name <code>value</code> of the parameter is the same as the name of the " "field <code>value</code> of the <a cbot|class>class</a> " "<code>MyClass</code>, we must therefore write <code>this.value</code> in " "order to distinguish the field from the parameter." msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/this.txt:51 #, no-wrap msgid "" "public class MyClass\n" "{\n" "\tint value;\n" "\tvoid Put( int value )\n" "\t{\n" "\t\tthis.value = value;\n" "\t}\n" "}" msgstr "" #. type: Plain text #: cbot-help/this.txt:54 #, no-wrap msgid "" "<code><a cbot|class>class</a></code>\n" "<a cbot>Programming</a>, <a cbot|type>types</a> et <a " "cbot|category>catégories</a>." msgstr "" #. type: \b; header #: cbot-help/thump.txt:1 #, no-wrap msgid "Instruction <code>thump</code>" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/thump.txt:4 #, no-wrap msgid "<c/>thump ( );<n/>" msgstr "" #. type: Plain text #: cbot-help/thump.txt:6 #, no-wrap msgid "" "Activates the weapon system of the <a object|bottump>thumper</a>, that turns " "ants and spiders belly up and makes them completely harmless for a while." msgstr "" #. type: Plain text #: cbot-help/thump.txt:11 #, no-wrap msgid "" "Zero if everything is OK, a value different from zero if an error " "occurred. \n" "<code>== 0 </code>Thumping performed\n" "<code>!= 0 </code>Operation impossible" msgstr "" #. type: \b; header #: cbot-help/topo.txt:1 #, no-wrap msgid "Instruction <code>topo</code>" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/topo.txt:4 #, no-wrap msgid "<c/>topo ( position );<n/>" msgstr "" #. type: Plain text #: cbot-help/topo.txt:6 #, no-wrap msgid "" "Returns the altitude of the ground at a give position. The altitude zero " "corresponds to sea level. A negative value indicates that at this position " "ground is covered with water. " msgstr "" #. type: Plain text #: cbot-help/topo.txt:9 #, no-wrap msgid "Coordinates of the position whose altitude you want to know. " msgstr "" #. type: Plain text #: cbot-help/topo.txt:12 #, no-wrap msgid "Altitude of the ground at the given position." msgstr "" #. type: \b; header #: cbot-help/true.txt:1 #, no-wrap msgid "Type <code>true</code>" msgstr "" #. type: Plain text #: cbot-help/true.txt:3 #, no-wrap msgid "" "This value means that a condition is true; it is one of the two values that " "a <a cbot|bool>boolean</a> <a cbot|var>variable</a> can take." msgstr "" #. type: \b; header #: cbot-help/turn.txt:1 #, no-wrap msgid "Instruction <code>turn</code>" msgstr "" #. type: Plain text #: cbot-help/turn.txt:3 #, no-wrap msgid "" "Use the instruction <c/>turn();<n/> to instruct the bot to perform a " "rotation on itself of a certain number of degrees." msgstr "" #. type: Plain text #: cbot-help/turn.txt:6 #, no-wrap msgid "" "90 degreed means a quarter turn, 180 degrees means a half turn. A positive " "angle will perform a counterclockwise rotation, a negative angle means a " "clockwise rotation. Here are some examples with <c/>turn();<n/>:" msgstr "" #. type: Plain text #: cbot-help/turn.txt:10 #, no-wrap msgid "" "<c/>turn(90);<n/> quarter turn to the left\n" "<c/>turn(-90);<n/> quarter turn to the right (negative angle)\n" "<c/>turn(180);<n/> half turn" msgstr "" #. type: Plain text #: cbot-help/turn.txt:12 #, no-wrap msgid "" "In order to turn the bot towards an object found with the instruction <c/><a " "cbot|radar>radar</a>();<n/>, you must calculate the rotation angle with the " "instruction <code><a cbot|direct>direction</a>()</code>:" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/turn.txt:15 #, no-wrap msgid "" "\titem = <a cbot|radar>radar</a>(AlienSpider);\n" "\tturn(<a cbot|direct>direction</a>(item.position));" msgstr "" #. type: Plain text #: cbot-help/turn.txt:17 #, no-wrap msgid "" "After these lines, just fire the cannon, and there is one hostile element " "less." msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/turn.txt:21 #, no-wrap msgid "<c/>turn ( angle );<n/>" msgstr "" #. type: Plain text #: cbot-help/turn.txt:23 #, no-wrap msgid "" "Turns the bot with a given angle, right or left, without moving either " "forward or backward. " msgstr "" #. type: Plain text #: cbot-help/turn.txt:26 #, no-wrap msgid "" "Angle of the required rotation, in degrees. A positive value turns left, a " "negative value turns right. <code>turn(180)</code> turns round completely. " msgstr "" #. type: Plain text #: cbot-help/turn.txt:31 #, no-wrap msgid "" "Zero if everything is OK, or a value different from zero if an error " "occurred. \n" "<code>== 0 </code>rotation performed\n" "<code>!= 0 </code>rotation impossible" msgstr "" #. type: \b; header #: cbot-help/type.txt:1 #, no-wrap msgid "Variable types" msgstr "" #. type: Plain text #: cbot-help/type.txt:3 #, no-wrap msgid "When you define a <a cbot|var>variable</a>, you must give two elements: " msgstr "" #. type: Bullet: '1)' #: cbot-help/type.txt:4 #, no-wrap msgid "a name" msgstr "" #. type: Bullet: '2)' #: cbot-help/type.txt:5 #, no-wrap msgid "a type" msgstr "" #. type: Plain text #: cbot-help/type.txt:8 #, no-wrap msgid "" "Once you defined a variable, you can use it to put information in " "it. However, the information that a variable can contain must always be of " "the correct type: a variable of type <a cbot|float>float</a> can not contain " "a string, etc." msgstr "" #. type: Plain text #: cbot-help/type.txt:10 #, no-wrap msgid "" "In a program, the name of a type is always written on <format type>green " "background</format>. If the name of a type is not colored, this means that " "the name is misspelled. Type names are always written with lower case " "characters. Here is a list of the different types: " msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/type.txt:12 #, no-wrap msgid "<code><a cbot|int>int</a></code>" msgstr "" #. type: Plain text #: cbot-help/type.txt:13 #, no-wrap msgid "For a whole number (12, -500, etc.)." msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/type.txt:15 #, no-wrap msgid "<code><a cbot|float>float</a></code>" msgstr "" #. type: Plain text #: cbot-help/type.txt:16 #, no-wrap msgid "For a real number (12, 3.14, 0.2, -99.98, etc.)." msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/type.txt:18 #, no-wrap msgid "<code><a cbot|bool>bool</a></code>" msgstr "" #. type: Plain text #: cbot-help/type.txt:19 #, no-wrap msgid "" "For a boolean variable, that can only take the values <code>true</code> or " "<code>false</code>." msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/type.txt:21 #, no-wrap msgid "<code><a cbot|string>string</a></code>" msgstr "" #. type: Plain text #: cbot-help/type.txt:22 #, no-wrap msgid "For texts (\"Hello!\", \"No object found\", etc.)" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/type.txt:24 #, no-wrap msgid "<code><a cbot|point>point</a></code>" msgstr "" #. type: Plain text #: cbot-help/type.txt:25 #, no-wrap msgid "" "For the coordinates of a point in space; a variable of this type consists of " "three parts named x, y and z." msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/type.txt:27 #, no-wrap msgid "<code><a cbot|object>object</a></code>" msgstr "" #. type: Plain text #: cbot-help/type.txt:28 #, no-wrap msgid "" "A variable of this type contains the information about an object (bot, " "building, enemy, etc.)." msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/type.txt:30 #, no-wrap msgid "<code><a cbot|void>void</a></code>" msgstr "" #. type: Plain text #: cbot-help/type.txt:31 #, no-wrap msgid "" "This type is an \"empty type\", that you use when you do not want to specify " "a type." msgstr "" #. type: \b; header #: cbot-help/var.txt:1 #, no-wrap msgid "Variables" msgstr "" #. type: Plain text #: cbot-help/var.txt:3 #, no-wrap msgid "" "A variable is like a box, where you can put some information. The content of " "the variable can change during the execution of the program." msgstr "" #. type: Plain text #: cbot-help/var.txt:5 #, no-wrap msgid "" "For example, you can use a variable to count the number of titanium ore " "units that the grabber has collected and carried to the converter. First, " "you must find a name for it: the name should not be too long, but explain by " "itself what the variable is used for. Let's call it " "<code>countTit</code>. This variable must contain only whole numbers, so " "choose the type <code>int</code>. At the beginning of the program, you must " "declare the variable. Then you put the value <code>0</code> into the " "variable, and every time you grab a titanium ore, you increase the variable " "by <code>1</code>. At every moment, the variable contains the number of " "titanium ore units that the grabber collected." msgstr "" #. type: Plain text #: cbot-help/var.txt:8 #, no-wrap msgid "" "For the declaration of the variable, write the following line: \n" "<c/><s/>\tint countTit;<n/>" msgstr "" #. type: Plain text #: cbot-help/var.txt:11 #, no-wrap msgid "" "To put <code>0</code> into the variable, write:\n" "<c/><s/>\tcountTit = 0;<n/>" msgstr "" #. type: Plain text #: cbot-help/var.txt:14 #, no-wrap msgid "" "At every titanium ore grabbed, write:\n" "<c/><s/>\tcountTit = countTit + 1<n/>" msgstr "" #. type: Plain text #: cbot-help/var.txt:18 #, no-wrap msgid "" "You have much freedom in the choice of the name for a variable, you can call " "them by any name, f. ex.: <code>dist</code>, <code>direct</code>, " "<code>p2</code>, <code>a</code>, <code>x</code>, " "<code>nothing_2_shoot_at</code>, etc.\n" "A variable name must always begin with a letter. It can be followed by any " "combination of letters, digits or the underscore character " "<code>_</code>. You can of course not use the keywords of the CBOT language " "like <code><a cbot|for>for</a></code>, <code><a cbot|while>while</a></code>, " "<code><a cbot|break>break</a></code>, <code><a " "cbot|continue>continue</a></code>, <code>do</code>, etc.\n" "You should be careful about the choice of the names that you give to " "variables; writing a program can become very difficult if you forget the " "names of variables or if you do not remember what they are used " "for. Elaborate your own system to find variable names, and do not use names " "like <code>Bmo45</code>, <code>a</code> or <code>tgBinX</code>." msgstr "" #. type: Plain text #: cbot-help/var.txt:20 #, no-wrap msgid "" "In the example above, the keyword <code>int</code> indicates that this " "variable can contain only whole numbers, which is adequate to counting " "objects. If you want to measure a distance, better use a variable that can " "contain also real numbers, with a fractional part (like 3.45 or 0.034): in " "this case, use the type <code>float</code>." msgstr "" #. type: Plain text #: cbot-help/var.txt:22 #, no-wrap msgid "In fact, a variable is made up of three parts:\n" msgstr "" #. type: \t; header #: cbot-help/var.txt:22 cbot-help/var.txt:26 #, no-wrap msgid "the name" msgstr "" #. type: Bullet: '2)' #: cbot-help/var.txt:23 #, no-wrap msgid "the type of the information stored inside" msgstr "" #. type: Bullet: '3)' #: cbot-help/var.txt:24 #, no-wrap msgid "the content, i.e. the information itself" msgstr "" #. type: Plain text #: cbot-help/var.txt:28 #, no-wrap msgid "" "You need the name to be able to distinguish the different variables from " "each other." msgstr "" #. type: \t; header #: cbot-help/var.txt:29 #, no-wrap msgid "the type" msgstr "" #. type: Plain text #: cbot-help/var.txt:32 #, no-wrap msgid "" "The <a cbot|type>type</a> determines what kind of information the variable " "can contain. According to the type, a variable can contain a whole number, a " "real number, a string, the coordinates of a point, information about an " "object, etc. \n" "Here is a list of the most common variable types:\n" msgstr "" #. type: Bullet: 'o' #: cbot-help/var.txt:32 #, no-wrap msgid "<code><a cbot|int>int</a></code> for a whole number (12, -500, etc.)" msgstr "" #. type: Bullet: 'o' #: cbot-help/var.txt:33 #, no-wrap msgid "" "<code><a cbot|float>float</a></code> for a real number (3.14, 0.2, -99.98, " "etc.)" msgstr "" #. type: Bullet: 'o' #: cbot-help/var.txt:34 #, no-wrap msgid "" "<code><a cbot|string>string</a></code> for a character string (\"Hello!\", " "\"No object found\", etc.)" msgstr "" #. type: Bullet: 'o' #: cbot-help/var.txt:35 #, no-wrap msgid "<code><a cbot|point>point</a></code> for a x,y,z-coordinate in space" msgstr "" #. type: Bullet: 'o' #: cbot-help/var.txt:36 #, no-wrap msgid "" "<code><a cbot|object>object</a></code> for information about an object (bot, " "building, etc.)" msgstr "" #. type: \t; header #: cbot-help/var.txt:38 #, no-wrap msgid "The content" msgstr "" #. type: Plain text #: cbot-help/var.txt:40 #, no-wrap msgid "" "The content of a variable is an information of the kind specified in the " "type. It can change during the execution of the program. " msgstr "" #. type: Plain text #: cbot-help/var.txt:43 #, no-wrap msgid "" "Once you declared a variable, it still does not contain any value. Before " "you can use it, you must put a value inside: \n" "<c/><s/>\tint i, j;" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/var.txt:45 #, no-wrap msgid "" "\tj = 25; // j takes the value 25\n" "\tj = i; // can not write this, because i has got no content yet." msgstr "" #. type: Plain text #: cbot-help/var.txt:51 #, no-wrap msgid "" "You can also declare a variable and put a value inside in the same line, " "writing: \n" "<c/><s/>\tint countTit = 0;\n" "<n/> \n" "When you assign a value to a variable with the equals sign <code>=</code>, " "the value on the right side is copied into the value on the left " "side. Consider the following example: \n" "<c/><s/>\tint i, j;" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/var.txt:54 #, no-wrap msgid "" "\ti = 5+2; // i takes the value 7\n" "\tj = i+6; // j takes the value of i plus 6, this is 13\n" "\ti = j; // i takes the value of j, this is 13" msgstr "" #. type: Plain text #: cbot-help/var.txt:56 #, no-wrap msgid "" "At the end of this example, both variables <code>i</code> and <code>j</code> " "contain the value <code>13</code>." msgstr "" #. type: Plain text #: cbot-help/var.txt:59 #, no-wrap msgid "" "The following assignment is not correct, because on the left side of the " "equals sign <code>=</code>, there can be only a variable name:\n" "<c/><s/>\ti+2 = j; // impossible" msgstr "" #. type: Plain text #: cbot-help/var.txt:62 #, no-wrap msgid "" "If you want to exchange the values of two variables, you must use a third " "variable. Here is an example to exchange the content of two variables " "<code>a</code> and <code>b</code> :\n" "<c/><s/>\tint temp;" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/var.txt:65 #, no-wrap msgid "" "\ttemp = a; // temp takes the value of a\n" "\ta = b; // the content of b is copied into a\n" "\tb = temp; // the content of temp is copied into b" msgstr "" #. type: \b; header #: cbot-help/void.txt:1 #, no-wrap msgid "Type <code>void</code>" msgstr "" #. type: Plain text #: cbot-help/void.txt:3 #, no-wrap msgid "Use this type when you want to declare a function that returns nothing." msgstr "" #. type: Plain text #: cbot-help/void.txt:6 #, no-wrap msgid "" "Example:\n" "<c/><s/>void MyFunction(int a)" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/void.txt:9 #, no-wrap msgid "" "{\n" "\t...\n" "}" msgstr "" #. type: \b; header #: cbot-help/wait.txt:1 #, no-wrap msgid "Instruction <code>wait</code>" msgstr "" #. type: Plain text #: cbot-help/wait.txt:3 #, no-wrap msgid "" "The instruction <c/>wait();<n/> instructs the bot to wait for some seconds, " "according to the value written in brackets." msgstr "" #. type: Plain text #: cbot-help/wait.txt:6 #, no-wrap msgid "" "In order to wait until the <a object|power>power cell</a> is recharged on a " "power station, wait 5 seconds with <c/>wait(5);<n/>." msgstr "" #. type: Plain text #: cbot-help/wait.txt:8 #, no-wrap msgid "" "In order to wait until the <a object|convert>converter</a> finished " "transforming some <a object|titanore>titanium ore</a> in a <a " "object|titan>titanium cube</a>, wait 15 seconds with <c/>wait(15);<n/>." msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/wait.txt:12 #, no-wrap msgid "<c/>wait ( time );<n/>" msgstr "" #. type: Plain text #: cbot-help/wait.txt:14 #, no-wrap msgid "Waits for a moment." msgstr "" #. type: Plain text #: cbot-help/wait.txt:17 #, no-wrap msgid "Specifies the time that the bot must wait." msgstr "" #. type: \b; header #: cbot-help/while.txt:1 #, no-wrap msgid "Instruction <code>while</code>" msgstr "" #. type: Plain text #: cbot-help/while.txt:3 #, no-wrap msgid "" "The instruction <code>while () {}</code> is used to repeat a set of " "instructions several times." msgstr "" #. type: Plain text #: cbot-help/while.txt:6 #, no-wrap msgid "" "The most frequent use of <code>while</code> consists in repeating a set of " "instructions again and again. In order to achieve this, write <code>while " "(true) {}</code> and put the instructions to be repeated in braces " "<code>{}</code>. As an example, here is a program that repeats again and " "again the following actions:\n" msgstr "" #. type: Bullet: 'o' #: cbot-help/while.txt:6 #, no-wrap msgid "look for a spider," msgstr "" #. type: Bullet: 'o' #: cbot-help/while.txt:7 #, no-wrap msgid "turn towards it," msgstr "" #. type: Bullet: 'o' #: cbot-help/while.txt:8 #, no-wrap msgid "shoot." msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/while.txt:16 #, no-wrap msgid "" "\twhile (true)\n" "\t{\n" "\t\titem = <a cbot|radar>radar</a>(AlienSpider);\n" "\t\t<a cbot|turn>turn</a>(direction(item.position));\n" "\t\t<a cbot|fire>fire</a>(1);\n" "\t}" msgstr "" #. type: Plain text #: cbot-help/while.txt:18 #, no-wrap msgid "Just execute this program once, and it will kill all spiders around it." msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/while.txt:25 #, no-wrap msgid "" "<code>while ( condition )\n" "{\n" "\t</code>Instructions ...<c/>\n" "}" msgstr "" #. type: Plain text #: cbot-help/while.txt:27 #, no-wrap msgid "" "This instruction allows you to perform the instructions inside the <a " "cbot|bloc>block</a> several times." msgstr "" #. type: Plain text #: cbot-help/while.txt:29 #, no-wrap msgid "" "Be careful not to confuse the instruction <code>while( ) { }</code> with the " "instruction <c/><a cbot|do>do</a> { } while( );<n/>; the latter tests the " "condition only after the instructions in the block have been performed a " "first time. " msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/while.txt:40 #, no-wrap msgid "" "<c/>int i = 0;\n" "while ( i < 10 )\n" "{\n" "\t<n/>Instructions ...<c/>\n" "\ti = i+1;\n" "}" msgstr "" #. type: Plain text #: cbot-help/while.txt:43 #, no-wrap msgid "" "Do not put a <a cbot|term>semicolon</a> at the end of the line <code>while ( " ")</code>." msgstr "" #. type: Plain text #: cbot-help/while.txt:45 #, no-wrap msgid "" "The instructions <code><a cbot|break>break</a></code> and <code><a " "cbot|continue>continue</a></code> can be useful inside a block following the " "instruction <code>while { }</code>." msgstr "" #. type: \b; header #: cbot-help/writeln.txt:1 #, no-wrap msgid "Instruction <code>writeln</code>" msgstr "" #. type: Plain text #: cbot-help/writeln.txt:3 #, no-wrap msgid "" "Write one line of text to an open file in the files/ folder. This is a " "method of the <code><a cbot|file>file</a></code> class. This is the reason " "why we always write <code>handle.writeln()</code>¦:" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/writeln.txt:5 #, no-wrap msgid "\thandle.writeln(\"abc\");" msgstr "" #. type: Plain text #: cbot-help/writeln.txt:7 #, no-wrap msgid "" "The file must have been opened for writing (<code>\"w\"</code>) with the " "<code><a cbot|open>open</a></code> instruction. The line will automatically " "be terminated by the end of line characters 0x0D (CR) and 0x0A (LF)." msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/writeln.txt:10 #, no-wrap msgid "<c/>handle.writeln ( string );<n/>" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/writeln.txt:14 #, no-wrap msgid "\twriteln(\"Line of text\");" msgstr "" #. type: \s; block (usually verbatim code) #: cbot-help/writeln.txt:18 #, no-wrap msgid "" "\tstring s1 = \"abc\";\n" "\tstring s2 = \"def\";\n" "\twriteln(s1 + \" \" + s2);" msgstr "" #. type: Plain text #: cbot-help/writeln.txt:21 #, no-wrap msgid "" "<code><a cbot|file>file</a></code>, <code><a cbot|open>open</a></code>, " "<code><a cbot|close>close</a></code>, <code><a cbot|readln>readln</a></code> " "and <code><a cbot|eof>eof</a></code>.\n" "<a cbot>Programming</a>, <a cbot|type>types</a> and <a " "cbot|category>categories</a>." msgstr ""