6407 lines
163 KiB
Plaintext
6407 lines
163 KiB
Plaintext
# SOME DESCRIPTIVE TITLE
|
|
# Copyright (C) YEAR Free Software Foundation, Inc.
|
|
# This file is distributed under the same license as the PACKAGE package.
|
|
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
|
|
#
|
|
#, fuzzy
|
|
msgid ""
|
|
msgstr ""
|
|
"Project-Id-Version: PACKAGE VERSION\n"
|
|
"POT-Creation-Date: 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 ""
|