diff --git a/help/cbot/E/cond.txt b/help/cbot/E/cond.txt
index 08f5be4b..737a1f3c 100644
--- a/help/cbot/E/cond.txt
+++ b/help/cbot/E/cond.txt
@@ -1,29 +1,5 @@
\b;Conditions
-A condition is a special \l;expression\u cbot\expr; that returns a \l;boolean\u cbot\bool; value, that can only be either \c;\l;true\u cbot\true;\n; or \c;\l;false\u cbot\false;\n;. With a condition, you can choose f. ex. if the instructions in a \c;\l;while\u cbot\while;\n; loop must be repeated again, or if the instruction in a \c;\l;if\u cbot\if;\n; bloc must be executed.
-Here are some operators that you can use in conditions to compare two values :
-
-\c;a == b \n;\c;a\n; equals \c;b\n;
-\c;a != b \n;\c;a\n; is different from \c;b\n;
-\c;a < b \n;\c;a\n; smaller than \c;b\n;
-\c;a <= b \n;\c;a\n; smaller than or equal to \c;b\n;
-\c;a > b \n;\c;a\n; greater than \c;b\n;
-\c;a >= b \n;\c;a\n; greater than or equal to \c;b\n;
-
-For example :
-
-\c;12 == 12 \n;returns true
-\c;45 != 47 \n;returns true
-\c;99 == 98 \n;returns false
-\c;12 < -1 \n;returns false
-\c;12 >= 10 \n;returns true
-\c;12 >= 12 \n;returns true
-
-\t;Remark
-Be careful not to confuse the equality comparison \c;==\n; with the assignment of a \l;variable\u cbot\var; \c;=\n;.
-
-\c;a == b\n; is an expression that compares \c;a\n; with \c;b\n;.
-\c;a = b\n; is an expression that copies the value of \c;b\n; into \c;a\n;.
+A condition is a special \l;expression\u cbot\expr; that returns a \l;boolean\u cbot\bool; value, that can only be either \c;\l;true\u cbot\true;\n; or \c;\l;false\u cbot\false;\n;. With a condition, you can choose f. ex. if the instructions in a \c;\l;while\u cbot\while;\n; loop must be repeated again, or if the instruction in a \c;\l;if\u cbot\if;\n; bloc must be executed. Condition must contain at least one logical operation.
\t;See also
\l;Programming\u cbot;, \l;types\u cbot\type; and \l;categories\u cbot\category;.
-
diff --git a/help/cbot/E/expr.txt b/help/cbot/E/expr.txt
index 646923af..24a5f8d6 100644
--- a/help/cbot/E/expr.txt
+++ b/help/cbot/E/expr.txt
@@ -47,7 +47,6 @@ This example is actually really confusing, but this property is actually useful,
\s; float a, b, c, d, e;
\s; a = b = c = d = e = 1.0; // a == b == c == d == e == 1.0
\n;
-
\b;Basic arithmetic operations
Binary operators below are working with fundamental number types (\c;\l;int\u cbot\int;\n;, \c;\l;float\u cbot\float;\n;).
@@ -110,6 +109,31 @@ Tip: the properties of the concatenation \c;+\n; operator is useful with the \l;
\s; // message(pi); // does not work
\s; message(""+pi);
\n;
+\b;Logical operators
+Logical operators work with values of type \l;bool\u cbot\bool; and they always return a \l;bool\u cbot\bool;. They are mainly used in \l;conditions\u cbot\cond;.
+
+\t;List
+\c;a == b \n;\c;a\n; equals \c;b\n;
+\c;a != b \n;\c;a\n; is different from \c;b\n;
+\c;a < b \n;\c;a\n; smaller than \c;b\n;
+\c;a <= b \n;\c;a\n; smaller than or equal to \c;b\n;
+\c;a > b \n;\c;a\n; greater than \c;b\n;
+\c;a >= b \n;\c;a\n; greater than or equal to \c;b\n;
+
+\t;Examples
+\c;12 == 12 \n;returns true
+\c;45 != 47 \n;returns true
+\c;99 == 98 \n;returns false
+\c;12 < -1 \n;returns false
+\c;12 >= 10 \n;returns true
+\c;12 >= 12 \n;returns true
+
+\t;Remark
+Be careful not to confuse the equality comparison \c;==\n; with the assignment of a \l;variable\u cbot\var; \c;=\n;.
+
+\c;a == b\n; is an expression that compares \c;a\n; with \c;b\n;.
+\c;a = b\n; is an expression that copies the value of \c;b\n; into \c;a\n;.
+
\b;Prefix and postfix increment- and decrement operators
The operators \c;++\n; and \c;--\n; allow you to increment (++) or to decrement (--) a variable in very compact and efficient manner.
@@ -130,6 +154,5 @@ The result of the operation \c;a++\n; is the value of the variable \c;a\n; *befo
\s; b = ++a;
\s; // now b contains 3 and a contains 3
\n;
-
\t;See also
\l;Programming\u cbot;, \l;types\u cbot\type; and \l;categories\u cbot\category;.
diff --git a/help/cbot/po/cbot.pot b/help/cbot/po/cbot.pot
index e7d69972..dea00907 100644
--- a/help/cbot/po/cbot.pot
+++ b/help/cbot/po/cbot.pot
@@ -53,13 +53,13 @@ msgid "Time in seconds."
msgstr ""
#. type: \t; header
-#: ../E/abstime.txt:10 ../E/acos.txt:11 ../E/aim.txt:23 ../E/array.txt:30 ../E/asin.txt:11 ../E/atan.txt:11 ../E/atan2.txt:16 ../E/bloc.txt:48 ../E/bool.txt:4 ../E/break.txt:24 ../E/build.txt:27 ../E/buildingenabled.txt:22 ../E/busy.txt:14 ../E/canbuild.txt:22 ../E/canresearch.txt:14 ../E/category.txt:107 ../E/ceil.txt:12 ../E/class.txt:70 ../E/close.txt:6 ../E/cond.txt:27 ../E/continue.txt:24 ../E/cos.txt:11 ../E/deletef.txt:9 ../E/delinfo.txt:13 ../E/destroy.txt:15 ../E/detect.txt:27 ../E/direct.txt:13 ../E/dist.txt:29 ../E/dist2d.txt:13 ../E/do.txt:27 ../E/drop.txt:28 ../E/eof.txt:13 ../E/errmode.txt:32 ../E/expr.txt:134 ../E/extern.txt:29 ../E/factory.txt:21 ../E/false.txt:4 ../E/file.txt:16 ../E/fire.txt:30 ../E/flatgrnd.txt:16 ../E/flatspace.txt:25 ../E/float.txt:24 ../E/floor.txt:12 ../E/for.txt:38 ../E/function.txt:129 ../E/goto.txt:34 ../E/grab.txt:28 ../E/if.txt:39 ../E/int.txt:18 ../E/jet.txt:14 ../E/message.txt:24 ../E/motor.txt:38 ../E/move.txt:21 ../E/nan.txt:14 ../E/new.txt:20 ../E/null.txt:4 ../E/object.txt:79 ../E/open.txt:18 ../E/openfile.txt:10 ../E/pencolor.txt:14 ../E/pendown.txt:17 ../E/penup.txt:11 ../E/penwidth.txt:14 ../E/point.txt:35 ../E/pointer.txt:51 ../E/pow.txt:14 ../E/private.txt:17 ../E/produce.txt:30 ../E/public.txt:49 ../E/radar.txt:80 ../E/rand.txt:8 ../E/readln.txt:18 ../E/receive.txt:16 ../E/recycle.txt:12 ../E/research.txt:18 ../E/researched.txt:14 ../E/researches.txt:27 ../E/retobj.txt:13 ../E/return.txt:29 ../E/round.txt:12 ../E/search.txt:25 ../E/send.txt:17 ../E/shield.txt:18 ../E/sin.txt:11 ../E/sizeof.txt:21 ../E/sniff.txt:16 ../E/space.txt:22 ../E/sqrt.txt:11 ../E/static.txt:20 ../E/strfind.txt:18 ../E/string.txt:32 ../E/strleft.txt:14 ../E/strlen.txt:12 ../E/strlower.txt:10 ../E/strmid.txt:18 ../E/strright.txt:14 ../E/strupper.txt:10 ../E/strval.txt:17 ../E/switch.txt:70 ../E/synchro.txt:23 ../E/takeoff.txt:15 ../E/tan.txt:11 ../E/term.txt:30 ../E/testinfo.txt:16 ../E/this.txt:52 ../E/thump.txt:12 ../E/topo.txt:13 ../E/true.txt:4 ../E/trunc.txt:12 ../E/turn.txt:32 ../E/type.txt:32 ../E/var.txt:66 ../E/void.txt:10 ../E/wait.txt:21 ../E/while.txt:46 ../E/writeln.txt:19
+#: ../E/abstime.txt:10 ../E/acos.txt:11 ../E/aim.txt:23 ../E/array.txt:30 ../E/asin.txt:11 ../E/atan.txt:11 ../E/atan2.txt:16 ../E/bloc.txt:48 ../E/bool.txt:4 ../E/break.txt:24 ../E/build.txt:27 ../E/buildingenabled.txt:22 ../E/busy.txt:14 ../E/canbuild.txt:22 ../E/canresearch.txt:14 ../E/category.txt:107 ../E/ceil.txt:12 ../E/class.txt:70 ../E/close.txt:6 ../E/cond.txt:4 ../E/continue.txt:24 ../E/cos.txt:11 ../E/deletef.txt:9 ../E/delinfo.txt:13 ../E/destroy.txt:15 ../E/detect.txt:27 ../E/direct.txt:13 ../E/dist.txt:29 ../E/dist2d.txt:13 ../E/do.txt:27 ../E/drop.txt:28 ../E/eof.txt:13 ../E/errmode.txt:32 ../E/expr.txt:157 ../E/extern.txt:29 ../E/factory.txt:21 ../E/false.txt:4 ../E/file.txt:16 ../E/fire.txt:30 ../E/flatgrnd.txt:16 ../E/flatspace.txt:25 ../E/float.txt:24 ../E/floor.txt:12 ../E/for.txt:38 ../E/function.txt:129 ../E/goto.txt:34 ../E/grab.txt:28 ../E/if.txt:39 ../E/int.txt:18 ../E/jet.txt:14 ../E/message.txt:24 ../E/motor.txt:38 ../E/move.txt:21 ../E/nan.txt:14 ../E/new.txt:20 ../E/null.txt:4 ../E/object.txt:79 ../E/open.txt:18 ../E/openfile.txt:10 ../E/pencolor.txt:14 ../E/pendown.txt:17 ../E/penup.txt:11 ../E/penwidth.txt:14 ../E/point.txt:35 ../E/pointer.txt:51 ../E/pow.txt:14 ../E/private.txt:17 ../E/produce.txt:30 ../E/public.txt:49 ../E/radar.txt:80 ../E/rand.txt:8 ../E/readln.txt:18 ../E/receive.txt:16 ../E/recycle.txt:12 ../E/research.txt:18 ../E/researched.txt:14 ../E/researches.txt:27 ../E/retobj.txt:13 ../E/return.txt:29 ../E/round.txt:12 ../E/search.txt:25 ../E/send.txt:17 ../E/shield.txt:18 ../E/sin.txt:11 ../E/sizeof.txt:21 ../E/sniff.txt:16 ../E/space.txt:22 ../E/sqrt.txt:11 ../E/static.txt:20 ../E/strfind.txt:18 ../E/string.txt:32 ../E/strleft.txt:14 ../E/strlen.txt:12 ../E/strlower.txt:10 ../E/strmid.txt:18 ../E/strright.txt:14 ../E/strupper.txt:10 ../E/strval.txt:17 ../E/switch.txt:70 ../E/synchro.txt:23 ../E/takeoff.txt:15 ../E/tan.txt:11 ../E/term.txt:30 ../E/testinfo.txt:16 ../E/this.txt:52 ../E/thump.txt:12 ../E/topo.txt:13 ../E/true.txt:4 ../E/trunc.txt:12 ../E/turn.txt:32 ../E/type.txt:32 ../E/var.txt:66 ../E/void.txt:10 ../E/wait.txt:21 ../E/while.txt:46 ../E/writeln.txt:19
#, no-wrap
msgid "See also"
msgstr ""
#. type: Plain text
-#: ../E/abstime.txt:11 ../E/aim.txt:24 ../E/array.txt:31 ../E/bool.txt:5 ../E/break.txt:25 ../E/busy.txt:15 ../E/cond.txt:28 ../E/continue.txt:25 ../E/deletef.txt:10 ../E/destroy.txt:16 ../E/detect.txt:28 ../E/direct.txt:14 ../E/dist.txt:30 ../E/dist2d.txt:14 ../E/drop.txt:29 ../E/errmode.txt:33 ../E/expr.txt:135 ../E/extern.txt:30 ../E/false.txt:5 ../E/fire.txt:31 ../E/flatgrnd.txt:17 ../E/flatspace.txt:26 ../E/float.txt:25 ../E/for.txt:39 ../E/function.txt:130 ../E/goto.txt:35 ../E/grab.txt:29 ../E/if.txt:40 ../E/int.txt:19 ../E/jet.txt:15 ../E/message.txt:25 ../E/move.txt:22 ../E/nan.txt:15 ../E/object.txt:80 ../E/openfile.txt:11 ../E/pencolor.txt:15 ../E/pendown.txt:18 ../E/penup.txt:12 ../E/penwidth.txt:15 ../E/point.txt:36 ../E/produce.txt:31 ../E/radar.txt:81 ../E/recycle.txt:13 ../E/retobj.txt:14 ../E/return.txt:30 ../E/search.txt:26 ../E/shield.txt:19 ../E/sizeof.txt:22 ../E/sniff.txt:17 ../E/space.txt:23 ../E/string.txt:33 ../E/switch.txt:71 ../E/takeoff.txt:16 ../E/term.txt:31 ../E/thump.txt:13 ../E/topo.txt:14 ../E/true.txt:5 ../E/turn.txt:33 ../E/type.txt:33 ../E/var.txt:67 ../E/void.txt:11 ../E/wait.txt:22
+#: ../E/abstime.txt:11 ../E/aim.txt:24 ../E/array.txt:31 ../E/bool.txt:5 ../E/break.txt:25 ../E/busy.txt:15 ../E/cond.txt:5 ../E/continue.txt:25 ../E/deletef.txt:10 ../E/destroy.txt:16 ../E/detect.txt:28 ../E/direct.txt:14 ../E/dist.txt:30 ../E/dist2d.txt:14 ../E/drop.txt:29 ../E/errmode.txt:33 ../E/expr.txt:158 ../E/extern.txt:30 ../E/false.txt:5 ../E/fire.txt:31 ../E/flatgrnd.txt:17 ../E/flatspace.txt:26 ../E/float.txt:25 ../E/for.txt:39 ../E/function.txt:130 ../E/goto.txt:35 ../E/grab.txt:29 ../E/if.txt:40 ../E/int.txt:19 ../E/jet.txt:15 ../E/message.txt:25 ../E/move.txt:22 ../E/nan.txt:15 ../E/object.txt:80 ../E/openfile.txt:11 ../E/pencolor.txt:15 ../E/pendown.txt:18 ../E/penup.txt:12 ../E/penwidth.txt:15 ../E/point.txt:36 ../E/produce.txt:31 ../E/radar.txt:81 ../E/recycle.txt:13 ../E/retobj.txt:14 ../E/return.txt:30 ../E/search.txt:26 ../E/shield.txt:19 ../E/sizeof.txt:22 ../E/sniff.txt:17 ../E/space.txt:23 ../E/string.txt:33 ../E/switch.txt:71 ../E/takeoff.txt:16 ../E/term.txt:31 ../E/thump.txt:13 ../E/topo.txt:14 ../E/true.txt:5 ../E/turn.txt:33 ../E/type.txt:33 ../E/var.txt:67 ../E/void.txt:11 ../E/wait.txt:22
#, no-wrap
msgid "Programming, types and categories."
msgstr ""
@@ -661,15 +661,7 @@ msgid "Conditions"
msgstr ""
#. type: Plain text
-#: ../E/cond.txt:2
-#, no-wrap
-msgid ""
-"A condition is a special expression that returns a boolean value, that can only be either true
or false
. With a condition, you can choose f. ex. if the instructions in a while
loop must be repeated again, or if the instruction in a if
bloc must be executed.\n"
-"Here are some operators that you can use in conditions to compare two values :"
-msgstr ""
-
-#. type: Plain text
-#: ../E/cond.txt:5
+#: ../E/expr.txt:116
#, no-wrap
msgid ""
"a == b
a
equals b
\n"
@@ -681,13 +673,7 @@ msgid ""
msgstr ""
#. type: Plain text
-#: ../E/cond.txt:12
-#, no-wrap
-msgid "For example :"
-msgstr ""
-
-#. type: Plain text
-#: ../E/cond.txt:14
+#: ../E/expr.txt:124
#, no-wrap
msgid ""
"12 == 12
returns true\n"
@@ -699,13 +685,13 @@ msgid ""
msgstr ""
#. type: Plain text
-#: ../E/cond.txt:22
+#: ../E/expr.txt:132
#, no-wrap
msgid "Be careful not to confuse the equality comparison ==
with the assignment of a variable =
."
msgstr ""
#. type: Plain text
-#: ../E/cond.txt:24
+#: ../E/expr.txt:134
#, no-wrap
msgid ""
"a == b
is an expression that compares a
with b
.\n"
@@ -1245,13 +1231,13 @@ msgid "Expressions"
msgstr ""
#. type: Plain text
-#: ../E/expr.txt:87
+#: ../E/expr.txt:86
#, no-wrap
msgid "is equivalent to"
msgstr ""
#. type: Plain text
-#: ../E/expr.txt:91
+#: ../E/expr.txt:90
#, no-wrap
msgid ""
"+=
addition\n"
@@ -1262,7 +1248,7 @@ msgid ""
msgstr ""
#. type: Plain text
-#: ../E/expr.txt:114
+#: ../E/expr.txt:138
#, no-wrap
msgid "The operators ++
and --
allow you to increment (++) or to decrement (--) a variable in very compact and efficient manner."
msgstr ""
@@ -2410,7 +2396,7 @@ msgid "This information also returns the description of a whole object: the desc
msgstr ""
#. type: \t; header, \b; header
-#: ../E/expr.txt:100 ../E/expr.txt:123 ../E/object.txt:66
+#: ../E/expr.txt:99 ../E/expr.txt:123 ../E/expr.txt:147 ../E/object.txt:66
#, no-wrap
msgid "Examples"
msgstr ""
@@ -2987,7 +2973,7 @@ msgid "Returns the first object found that corresponds to the specified category
msgstr ""
#. type: \t; header
-#: ../E/cond.txt:21 ../E/radar.txt:68
+#: ../E/expr.txt:131 ../E/radar.txt:68
#, no-wrap
msgid "Remark"
msgstr ""
@@ -7119,25 +7105,25 @@ msgid ""
msgstr ""
#. type: \b; header
-#: ../E/expr.txt:51
+#: ../E/expr.txt:50
#, no-wrap
msgid "Basic arithmetic operations"
msgstr ""
#. type: Plain text
-#: ../E/expr.txt:52
+#: ../E/expr.txt:51
#, no-wrap
msgid "Binary operators below are working with fundamental number types (int
, float
)."
msgstr ""
#. type: \t; header
-#: ../E/expr.txt:54 ../E/expr.txt:90
+#: ../E/expr.txt:53 ../E/expr.txt:89 ../E/expr.txt:115
#, no-wrap
msgid "List"
msgstr ""
#. type: Plain text
-#: ../E/expr.txt:55
+#: ../E/expr.txt:54
#, no-wrap
msgid ""
"+
addition\n"
@@ -7148,73 +7134,73 @@ msgid ""
msgstr ""
#. type: \t; header
-#: ../E/expr.txt:61
+#: ../E/expr.txt:60
#, no-wrap
msgid "Notes"
msgstr ""
#. type: Bullet: 'o'
-#: ../E/expr.txt:62
+#: ../E/expr.txt:61
#, no-wrap
msgid "The *
, /
, %
are all stronger than +
and -
."
msgstr ""
#. type: Bullet: 'o'
-#: ../E/expr.txt:63
+#: ../E/expr.txt:62
#, no-wrap
msgid "The result type is always float
. If a
or b
are of type int
, they are automatically converted to float
. Note: this means that results of intermediate calculations tends to be as precise as possible, the precision is lost only during converting the final (float
) result to int
, for example by the assignment =
operator."
msgstr ""
#. type: \t; header
-#: ../E/expr.txt:65
+#: ../E/expr.txt:64
#, no-wrap
msgid "Real life examples"
msgstr ""
#. type: \t; header
-#: ../E/expr.txt:82
+#: ../E/expr.txt:81
#, no-wrap
msgid "Compound assignment operators"
msgstr ""
#. type: Plain text
-#: ../E/expr.txt:83
+#: ../E/expr.txt:82
#, no-wrap
msgid "Besides the =
operator for variable assignment there are several compound-assignment operators."
msgstr ""
#. type: Plain text
-#: ../E/expr.txt:85
+#: ../E/expr.txt:84
#, no-wrap
msgid "The compound-assignment operators combine the =
assignment operator with another binary operator such as +
or -
. 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: Source code
-#: ../E/expr.txt:86
+#: ../E/expr.txt:85
#, no-wrap
msgid "lvalue += expression
"
msgstr ""
#. type: Source code
-#: ../E/expr.txt:88
+#: ../E/expr.txt:87
#, no-wrap
msgid "lvalue = lvalue + expression
"
msgstr ""
#. type: \b; header
-#: ../E/expr.txt:97
+#: ../E/expr.txt:96
#, no-wrap
msgid "String concatenation"
msgstr ""
#. type: Plain text
-#: ../E/expr.txt:98
+#: ../E/expr.txt:97
#, no-wrap
msgid "If at least one of the values used with the +
operator is a string, then the operation of concatenation is performed. The result of the operator is then a string, which is created by joining end-to-end the string and the other value. If the other value is not a string, then it is converted to string beforehand."
msgstr ""
#. type: Source code
-#: ../E/expr.txt:102
+#: ../E/expr.txt:101
#, no-wrap
msgid ""
"\tstring s = \"a\" + \"bc\"; // returns \"abc\"\n"
@@ -7224,43 +7210,43 @@ msgid ""
msgstr ""
#. type: Plain text
-#: ../E/expr.txt:107
+#: ../E/expr.txt:106
#, no-wrap
msgid "Tip: the properties of the concatenation +
operator is useful with the message(); function, because it does not work with other types than string. An empty string can be used together with a value in order to create a string, which actually can be passed to the message(); function:"
msgstr ""
#. type: \b; header
-#: ../E/expr.txt:113
+#: ../E/expr.txt:137
#, no-wrap
msgid "Prefix and postfix increment- and decrement operators"
msgstr ""
#. type: Plain text
-#: ../E/expr.txt:116
+#: ../E/expr.txt:140
#, no-wrap
msgid "For example to increment the variable a
you can write"
msgstr ""
#. type: Source code
-#: ../E/expr.txt:117
+#: ../E/expr.txt:141
#, no-wrap
msgid "a++;"
msgstr ""
#. type: Plain text
-#: ../E/expr.txt:118
+#: ../E/expr.txt:142
#, no-wrap
msgid "instead of"
msgstr ""
#. type: Source code
-#: ../E/expr.txt:119
+#: ../E/expr.txt:143
#, no-wrap
msgid "a = a + 1;"
msgstr ""
#. type: Plain text
-#: ../E/expr.txt:121
+#: ../E/expr.txt:145
#, no-wrap
msgid "The result of the operation a++
is the value of the variable a
*before* the increment. If you use the prefix operator ++a
the result of the operation is the value of the variable a
*after* the increment. The same holds for the --
decrement operator."
msgstr ""
@@ -7284,7 +7270,7 @@ msgid "Note: it may be not obvious at first, but notice that =
is a
msgstr ""
#. type: Source code
-#: ../E/expr.txt:67
+#: ../E/expr.txt:66
#, no-wrap
msgid ""
" int i = 12 + 3; // i == 15\n"
@@ -7304,7 +7290,7 @@ msgid ""
msgstr ""
#. type: Source code
-#: ../E/expr.txt:109
+#: ../E/expr.txt:108
#, no-wrap
msgid ""
" float pi = 3.14;\n"
@@ -7313,7 +7299,7 @@ msgid ""
msgstr ""
#. type: Source code
-#: ../E/expr.txt:125
+#: ../E/expr.txt:149
#, no-wrap
msgid ""
" a = 2;\n"
@@ -7322,10 +7308,28 @@ msgid ""
msgstr ""
#. type: Source code
-#: ../E/expr.txt:129
+#: ../E/expr.txt:153
#, no-wrap
msgid ""
" a = 2;\n"
" b = ++a;\n"
" // now b contains 3 and a contains 3"
msgstr ""
+
+#. type: Plain text
+#: ../E/cond.txt:2
+#, no-wrap
+msgid "A condition is a special expression that returns a boolean value, that can only be either true
or false
. With a condition, you can choose f. ex. if the instructions in a while
loop must be repeated again, or if the instruction in a if
bloc must be executed. Condition must contain at least one logical operation."
+msgstr ""
+
+#. type: \b; header
+#: ../E/expr.txt:112
+#, no-wrap
+msgid "Logical operators"
+msgstr ""
+
+#. type: Plain text
+#: ../E/expr.txt:113
+#, no-wrap
+msgid "Logical operators work with values of type bool and they always return a bool. They are mainly used in conditions."
+msgstr ""
diff --git a/help/cbot/po/de.po b/help/cbot/po/de.po
index 280a194d..3a9d7b9f 100644
--- a/help/cbot/po/de.po
+++ b/help/cbot/po/de.po
@@ -53,13 +53,13 @@ msgid "Time in seconds."
msgstr "Zeit in Sekunden."
#. type: \t; header
-#: ../E/abstime.txt:10 ../E/acos.txt:11 ../E/aim.txt:23 ../E/array.txt:30 ../E/asin.txt:11 ../E/atan.txt:11 ../E/atan2.txt:16 ../E/bloc.txt:48 ../E/bool.txt:4 ../E/break.txt:24 ../E/build.txt:27 ../E/buildingenabled.txt:22 ../E/busy.txt:14 ../E/canbuild.txt:22 ../E/canresearch.txt:14 ../E/category.txt:107 ../E/ceil.txt:12 ../E/class.txt:70 ../E/close.txt:6 ../E/cond.txt:27 ../E/continue.txt:24 ../E/cos.txt:11 ../E/deletef.txt:9 ../E/delinfo.txt:13 ../E/destroy.txt:15 ../E/detect.txt:27 ../E/direct.txt:13 ../E/dist.txt:29 ../E/dist2d.txt:13 ../E/do.txt:27 ../E/drop.txt:28 ../E/eof.txt:13 ../E/errmode.txt:32 ../E/expr.txt:134 ../E/extern.txt:29 ../E/factory.txt:21 ../E/false.txt:4 ../E/file.txt:16 ../E/fire.txt:30 ../E/flatgrnd.txt:16 ../E/flatspace.txt:25 ../E/float.txt:24 ../E/floor.txt:12 ../E/for.txt:38 ../E/function.txt:129 ../E/goto.txt:34 ../E/grab.txt:28 ../E/if.txt:39 ../E/int.txt:18 ../E/jet.txt:14 ../E/message.txt:24 ../E/motor.txt:38 ../E/move.txt:21 ../E/nan.txt:14 ../E/new.txt:20 ../E/null.txt:4 ../E/object.txt:79 ../E/open.txt:18 ../E/openfile.txt:10 ../E/pencolor.txt:14 ../E/pendown.txt:17 ../E/penup.txt:11 ../E/penwidth.txt:14 ../E/point.txt:35 ../E/pointer.txt:51 ../E/pow.txt:14 ../E/private.txt:17 ../E/produce.txt:30 ../E/public.txt:49 ../E/radar.txt:80 ../E/rand.txt:8 ../E/readln.txt:18 ../E/receive.txt:16 ../E/recycle.txt:12 ../E/research.txt:18 ../E/researched.txt:14 ../E/researches.txt:27 ../E/retobj.txt:13 ../E/return.txt:29 ../E/round.txt:12 ../E/search.txt:25 ../E/send.txt:17 ../E/shield.txt:18 ../E/sin.txt:11 ../E/sizeof.txt:21 ../E/sniff.txt:16 ../E/space.txt:22 ../E/sqrt.txt:11 ../E/static.txt:20 ../E/strfind.txt:18 ../E/string.txt:32 ../E/strleft.txt:14 ../E/strlen.txt:12 ../E/strlower.txt:10 ../E/strmid.txt:18 ../E/strright.txt:14 ../E/strupper.txt:10 ../E/strval.txt:17 ../E/switch.txt:70 ../E/synchro.txt:23 ../E/takeoff.txt:15 ../E/tan.txt:11 ../E/term.txt:30 ../E/testinfo.txt:16 ../E/this.txt:52 ../E/thump.txt:12 ../E/topo.txt:13 ../E/true.txt:4 ../E/trunc.txt:12 ../E/turn.txt:32 ../E/type.txt:32 ../E/var.txt:66 ../E/void.txt:10 ../E/wait.txt:21 ../E/while.txt:46 ../E/writeln.txt:19
+#: ../E/abstime.txt:10 ../E/acos.txt:11 ../E/aim.txt:23 ../E/array.txt:30 ../E/asin.txt:11 ../E/atan.txt:11 ../E/atan2.txt:16 ../E/bloc.txt:48 ../E/bool.txt:4 ../E/break.txt:24 ../E/build.txt:27 ../E/buildingenabled.txt:22 ../E/busy.txt:14 ../E/canbuild.txt:22 ../E/canresearch.txt:14 ../E/category.txt:107 ../E/ceil.txt:12 ../E/class.txt:70 ../E/close.txt:6 ../E/cond.txt:4 ../E/continue.txt:24 ../E/cos.txt:11 ../E/deletef.txt:9 ../E/delinfo.txt:13 ../E/destroy.txt:15 ../E/detect.txt:27 ../E/direct.txt:13 ../E/dist.txt:29 ../E/dist2d.txt:13 ../E/do.txt:27 ../E/drop.txt:28 ../E/eof.txt:13 ../E/errmode.txt:32 ../E/expr.txt:157 ../E/extern.txt:29 ../E/factory.txt:21 ../E/false.txt:4 ../E/file.txt:16 ../E/fire.txt:30 ../E/flatgrnd.txt:16 ../E/flatspace.txt:25 ../E/float.txt:24 ../E/floor.txt:12 ../E/for.txt:38 ../E/function.txt:129 ../E/goto.txt:34 ../E/grab.txt:28 ../E/if.txt:39 ../E/int.txt:18 ../E/jet.txt:14 ../E/message.txt:24 ../E/motor.txt:38 ../E/move.txt:21 ../E/nan.txt:14 ../E/new.txt:20 ../E/null.txt:4 ../E/object.txt:79 ../E/open.txt:18 ../E/openfile.txt:10 ../E/pencolor.txt:14 ../E/pendown.txt:17 ../E/penup.txt:11 ../E/penwidth.txt:14 ../E/point.txt:35 ../E/pointer.txt:51 ../E/pow.txt:14 ../E/private.txt:17 ../E/produce.txt:30 ../E/public.txt:49 ../E/radar.txt:80 ../E/rand.txt:8 ../E/readln.txt:18 ../E/receive.txt:16 ../E/recycle.txt:12 ../E/research.txt:18 ../E/researched.txt:14 ../E/researches.txt:27 ../E/retobj.txt:13 ../E/return.txt:29 ../E/round.txt:12 ../E/search.txt:25 ../E/send.txt:17 ../E/shield.txt:18 ../E/sin.txt:11 ../E/sizeof.txt:21 ../E/sniff.txt:16 ../E/space.txt:22 ../E/sqrt.txt:11 ../E/static.txt:20 ../E/strfind.txt:18 ../E/string.txt:32 ../E/strleft.txt:14 ../E/strlen.txt:12 ../E/strlower.txt:10 ../E/strmid.txt:18 ../E/strright.txt:14 ../E/strupper.txt:10 ../E/strval.txt:17 ../E/switch.txt:70 ../E/synchro.txt:23 ../E/takeoff.txt:15 ../E/tan.txt:11 ../E/term.txt:30 ../E/testinfo.txt:16 ../E/this.txt:52 ../E/thump.txt:12 ../E/topo.txt:13 ../E/true.txt:4 ../E/trunc.txt:12 ../E/turn.txt:32 ../E/type.txt:32 ../E/var.txt:66 ../E/void.txt:10 ../E/wait.txt:21 ../E/while.txt:46 ../E/writeln.txt:19
#, no-wrap
msgid "See also"
msgstr "Siehe auch"
#. type: Plain text
-#: ../E/abstime.txt:11 ../E/aim.txt:24 ../E/array.txt:31 ../E/bool.txt:5 ../E/break.txt:25 ../E/busy.txt:15 ../E/cond.txt:28 ../E/continue.txt:25 ../E/deletef.txt:10 ../E/destroy.txt:16 ../E/detect.txt:28 ../E/direct.txt:14 ../E/dist.txt:30 ../E/dist2d.txt:14 ../E/drop.txt:29 ../E/errmode.txt:33 ../E/expr.txt:135 ../E/extern.txt:30 ../E/false.txt:5 ../E/fire.txt:31 ../E/flatgrnd.txt:17 ../E/flatspace.txt:26 ../E/float.txt:25 ../E/for.txt:39 ../E/function.txt:130 ../E/goto.txt:35 ../E/grab.txt:29 ../E/if.txt:40 ../E/int.txt:19 ../E/jet.txt:15 ../E/message.txt:25 ../E/move.txt:22 ../E/nan.txt:15 ../E/object.txt:80 ../E/openfile.txt:11 ../E/pencolor.txt:15 ../E/pendown.txt:18 ../E/penup.txt:12 ../E/penwidth.txt:15 ../E/point.txt:36 ../E/produce.txt:31 ../E/radar.txt:81 ../E/recycle.txt:13 ../E/retobj.txt:14 ../E/return.txt:30 ../E/search.txt:26 ../E/shield.txt:19 ../E/sizeof.txt:22 ../E/sniff.txt:17 ../E/space.txt:23 ../E/string.txt:33 ../E/switch.txt:71 ../E/takeoff.txt:16 ../E/term.txt:31 ../E/thump.txt:13 ../E/topo.txt:14 ../E/true.txt:5 ../E/turn.txt:33 ../E/type.txt:33 ../E/var.txt:67 ../E/void.txt:11 ../E/wait.txt:22
+#: ../E/abstime.txt:11 ../E/aim.txt:24 ../E/array.txt:31 ../E/bool.txt:5 ../E/break.txt:25 ../E/busy.txt:15 ../E/cond.txt:5 ../E/continue.txt:25 ../E/deletef.txt:10 ../E/destroy.txt:16 ../E/detect.txt:28 ../E/direct.txt:14 ../E/dist.txt:30 ../E/dist2d.txt:14 ../E/drop.txt:29 ../E/errmode.txt:33 ../E/expr.txt:158 ../E/extern.txt:30 ../E/false.txt:5 ../E/fire.txt:31 ../E/flatgrnd.txt:17 ../E/flatspace.txt:26 ../E/float.txt:25 ../E/for.txt:39 ../E/function.txt:130 ../E/goto.txt:35 ../E/grab.txt:29 ../E/if.txt:40 ../E/int.txt:19 ../E/jet.txt:15 ../E/message.txt:25 ../E/move.txt:22 ../E/nan.txt:15 ../E/object.txt:80 ../E/openfile.txt:11 ../E/pencolor.txt:15 ../E/pendown.txt:18 ../E/penup.txt:12 ../E/penwidth.txt:15 ../E/point.txt:36 ../E/produce.txt:31 ../E/radar.txt:81 ../E/recycle.txt:13 ../E/retobj.txt:14 ../E/return.txt:30 ../E/search.txt:26 ../E/shield.txt:19 ../E/sizeof.txt:22 ../E/sniff.txt:17 ../E/space.txt:23 ../E/string.txt:33 ../E/switch.txt:71 ../E/takeoff.txt:16 ../E/term.txt:31 ../E/thump.txt:13 ../E/topo.txt:14 ../E/true.txt:5 ../E/turn.txt:33 ../E/type.txt:33 ../E/var.txt:67 ../E/void.txt:11 ../E/wait.txt:22
#, no-wrap
msgid "Programming, types and categories."
msgstr "Die CBOT-Sprache, Variablentypen und Kategorien."
@@ -779,17 +779,7 @@ msgid "Conditions"
msgstr "Die Bedingungen"
#. type: Plain text
-#: ../E/cond.txt:2
-#, no-wrap
-msgid ""
-"A condition is a special expression that returns a boolean value, that can only be either true
or false
. With a condition, you can choose f. ex. if the instructions in a while
loop must be repeated again, or if the instruction in a if
bloc must be executed.\n"
-"Here are some operators that you can use in conditions to compare two values :"
-msgstr ""
-"Eine Bedingung ist ein besonderer Ausdruck, der einen boolschen Wert zurückgibt, der nur true(wahr)
oder false(falsch)
sein kann. Mit einer Bedingung können Sie z.B. auswählen, ob die Anweisungen in einer while
-Schleife noch einmal ausgeführt werden sollen, oder ob die Anweisungen in einem if
-Block ausgeführt werden müssen.\n"
-"Hier sind einige Operatoren, die Sie in Bedingungen benutzen können, um zwei Werte zu vergleichen:"
-
-#. type: Plain text
-#: ../E/cond.txt:5
+#: ../E/expr.txt:116
#, no-wrap
msgid ""
"a == b
a
equals b
\n"
@@ -807,13 +797,7 @@ msgstr ""
"a >= b
a
größer oder gleich b
"
#. type: Plain text
-#: ../E/cond.txt:12
-#, no-wrap
-msgid "For example :"
-msgstr "Zum Beispiel:"
-
-#. type: Plain text
-#: ../E/cond.txt:14
+#: ../E/expr.txt:124
#, no-wrap
msgid ""
"12 == 12
returns true\n"
@@ -831,13 +815,13 @@ msgstr ""
"12 >= 12
ergibt wahr "
#. type: Plain text
-#: ../E/cond.txt:22
+#: ../E/expr.txt:132
#, no-wrap
msgid "Be careful not to confuse the equality comparison ==
with the assignment of a variable =
."
msgstr "Bitte verwechseln Sie nicht den Gleich-Operator ==
mit der Zuweisung einer Variable =
."
#. type: Plain text
-#: ../E/cond.txt:24
+#: ../E/expr.txt:134
#, no-wrap
msgid ""
"a == b
is an expression that compares a
with b
.\n"
@@ -1445,13 +1429,13 @@ msgid "Expressions"
msgstr "Ausdrücke"
#. type: Plain text
-#: ../E/expr.txt:87
+#: ../E/expr.txt:86
#, no-wrap
msgid "is equivalent to"
msgstr "entspricht folgendem Ausdruck ohne Kurzform:"
#. type: Plain text
-#: ../E/expr.txt:91
+#: ../E/expr.txt:90
#, no-wrap
msgid ""
"+=
addition\n"
@@ -1467,7 +1451,7 @@ msgstr ""
"%=
Rest der Division (nur für den Typ int
)"
#. type: Plain text
-#: ../E/expr.txt:114
+#: ../E/expr.txt:138
#, no-wrap
msgid "The operators ++
and --
allow you to increment (++) or to decrement (--) a variable in very compact and efficient manner."
msgstr "Mit den Operatore ++
und --
können Sie eine Variable mit einer sehr kurzen Schreibform inkrementieren (1 addieren) bzw. dekrementieren (1 subtrahieren)."
@@ -2772,7 +2756,7 @@ msgid "This information also returns the description of a whole object: the desc
msgstr "Diese Information gibt ebenfalls die Beschreibung eines ganzen Gegenstands zurück, in diesem Fall des Objekts, das ein Greifer trägt. Wenn er nichts trägt, gibt load
den Wert null
zurück."
#. type: \t; header, \b; header
-#: ../E/expr.txt:100 ../E/expr.txt:123 ../E/object.txt:66
+#: ../E/expr.txt:99 ../E/expr.txt:123 ../E/expr.txt:147 ../E/object.txt:66
#, no-wrap
msgid "Examples"
msgstr "Beispiel"
@@ -5762,7 +5746,7 @@ msgstr ""
"\tAnweisung 3;"
#. type: \t; header
-#: ../E/cond.txt:21 ../E/radar.txt:68
+#: ../E/expr.txt:131 ../E/radar.txt:68
#, no-wrap
msgid "Remark"
msgstr "Bemerkung"
@@ -7892,25 +7876,25 @@ msgid ""
msgstr ""
#. type: \b; header
-#: ../E/expr.txt:51
+#: ../E/expr.txt:50
#, no-wrap
msgid "Basic arithmetic operations"
msgstr ""
#. type: Plain text
-#: ../E/expr.txt:52
+#: ../E/expr.txt:51
#, no-wrap
msgid "Binary operators below are working with fundamental number types (int
, float
)."
msgstr ""
#. type: \t; header
-#: ../E/expr.txt:54 ../E/expr.txt:90
+#: ../E/expr.txt:53 ../E/expr.txt:89 ../E/expr.txt:115
#, no-wrap
msgid "List"
msgstr ""
#. type: Plain text
-#: ../E/expr.txt:55
+#: ../E/expr.txt:54
#, no-wrap
msgid ""
"+
addition\n"
@@ -7921,73 +7905,73 @@ msgid ""
msgstr ""
#. type: \t; header
-#: ../E/expr.txt:61
+#: ../E/expr.txt:60
#, no-wrap
msgid "Notes"
msgstr ""
#. type: Bullet: 'o'
-#: ../E/expr.txt:62
+#: ../E/expr.txt:61
#, no-wrap
msgid "The *
, /
, %
are all stronger than +
and -
."
msgstr ""
#. type: Bullet: 'o'
-#: ../E/expr.txt:63
+#: ../E/expr.txt:62
#, no-wrap
msgid "The result type is always float
. If a
or b
are of type int
, they are automatically converted to float
. Note: this means that results of intermediate calculations tends to be as precise as possible, the precision is lost only during converting the final (float
) result to int
, for example by the assignment =
operator."
msgstr ""
#. type: \t; header
-#: ../E/expr.txt:65
+#: ../E/expr.txt:64
#, no-wrap
msgid "Real life examples"
msgstr ""
#. type: \t; header
-#: ../E/expr.txt:82
+#: ../E/expr.txt:81
#, no-wrap
msgid "Compound assignment operators"
msgstr ""
#. type: Plain text
-#: ../E/expr.txt:83
+#: ../E/expr.txt:82
#, no-wrap
msgid "Besides the =
operator for variable assignment there are several compound-assignment operators."
msgstr ""
#. type: Plain text
-#: ../E/expr.txt:85
+#: ../E/expr.txt:84
#, no-wrap
msgid "The compound-assignment operators combine the =
assignment operator with another binary operator such as +
or -
. 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: Source code
-#: ../E/expr.txt:86
+#: ../E/expr.txt:85
#, no-wrap
msgid "lvalue += expression
"
msgstr ""
#. type: Source code
-#: ../E/expr.txt:88
+#: ../E/expr.txt:87
#, no-wrap
msgid "lvalue = lvalue + expression
"
msgstr ""
#. type: \b; header
-#: ../E/expr.txt:97
+#: ../E/expr.txt:96
#, no-wrap
msgid "String concatenation"
msgstr ""
#. type: Plain text
-#: ../E/expr.txt:98
+#: ../E/expr.txt:97
#, no-wrap
msgid "If at least one of the values used with the +
operator is a string, then the operation of concatenation is performed. The result of the operator is then a string, which is created by joining end-to-end the string and the other value. If the other value is not a string, then it is converted to string beforehand."
msgstr ""
#. type: Source code
-#: ../E/expr.txt:102
+#: ../E/expr.txt:101
#, no-wrap
msgid ""
"\tstring s = \"a\" + \"bc\"; // returns \"abc\"\n"
@@ -7997,43 +7981,43 @@ msgid ""
msgstr ""
#. type: Plain text
-#: ../E/expr.txt:107
+#: ../E/expr.txt:106
#, no-wrap
msgid "Tip: the properties of the concatenation +
operator is useful with the message(); function, because it does not work with other types than string. An empty string can be used together with a value in order to create a string, which actually can be passed to the message(); function:"
msgstr ""
#. type: \b; header
-#: ../E/expr.txt:113
+#: ../E/expr.txt:137
#, no-wrap
msgid "Prefix and postfix increment- and decrement operators"
msgstr ""
#. type: Plain text
-#: ../E/expr.txt:116
+#: ../E/expr.txt:140
#, no-wrap
msgid "For example to increment the variable a
you can write"
msgstr ""
#. type: Source code
-#: ../E/expr.txt:117
+#: ../E/expr.txt:141
#, no-wrap
msgid "a++;"
msgstr ""
#. type: Plain text
-#: ../E/expr.txt:118
+#: ../E/expr.txt:142
#, no-wrap
msgid "instead of"
msgstr ""
#. type: Source code
-#: ../E/expr.txt:119
+#: ../E/expr.txt:143
#, no-wrap
msgid "a = a + 1;"
msgstr ""
#. type: Plain text
-#: ../E/expr.txt:121
+#: ../E/expr.txt:145
#, no-wrap
msgid "The result of the operation a++
is the value of the variable a
*before* the increment. If you use the prefix operator ++a
the result of the operation is the value of the variable a
*after* the increment. The same holds for the --
decrement operator."
msgstr ""
@@ -8057,7 +8041,7 @@ msgid "Note: it may be not obvious at first, but notice that =
is a
msgstr ""
#. type: Source code
-#: ../E/expr.txt:67
+#: ../E/expr.txt:66
#, no-wrap
msgid ""
" int i = 12 + 3; // i == 15\n"
@@ -8077,7 +8061,7 @@ msgid ""
msgstr ""
#. type: Source code
-#: ../E/expr.txt:109
+#: ../E/expr.txt:108
#, no-wrap
msgid ""
" float pi = 3.14;\n"
@@ -8086,7 +8070,7 @@ msgid ""
msgstr ""
#. type: Source code
-#: ../E/expr.txt:125
+#: ../E/expr.txt:149
#, no-wrap
msgid ""
" a = 2;\n"
@@ -8095,10 +8079,28 @@ msgid ""
msgstr ""
#. type: Source code
-#: ../E/expr.txt:129
+#: ../E/expr.txt:153
#, no-wrap
msgid ""
" a = 2;\n"
" b = ++a;\n"
" // now b contains 3 and a contains 3"
msgstr ""
+
+#. type: Plain text
+#: ../E/cond.txt:2
+#, no-wrap
+msgid "A condition is a special expression that returns a boolean value, that can only be either true
or false
. With a condition, you can choose f. ex. if the instructions in a while
loop must be repeated again, or if the instruction in a if
bloc must be executed. Condition must contain at least one logical operation."
+msgstr ""
+
+#. type: \b; header
+#: ../E/expr.txt:112
+#, no-wrap
+msgid "Logical operators"
+msgstr ""
+
+#. type: Plain text
+#: ../E/expr.txt:113
+#, no-wrap
+msgid "Logical operators work with values of type bool and they always return a bool. They are mainly used in conditions."
+msgstr ""
diff --git a/help/cbot/po/fr.po b/help/cbot/po/fr.po
index 7d1f1871..50a4ce4c 100644
--- a/help/cbot/po/fr.po
+++ b/help/cbot/po/fr.po
@@ -53,13 +53,13 @@ msgid "Time in seconds."
msgstr "Temps en secondes."
#. type: \t; header
-#: ../E/abstime.txt:10 ../E/acos.txt:11 ../E/aim.txt:23 ../E/array.txt:30 ../E/asin.txt:11 ../E/atan.txt:11 ../E/atan2.txt:16 ../E/bloc.txt:48 ../E/bool.txt:4 ../E/break.txt:24 ../E/build.txt:27 ../E/buildingenabled.txt:22 ../E/busy.txt:14 ../E/canbuild.txt:22 ../E/canresearch.txt:14 ../E/category.txt:107 ../E/ceil.txt:12 ../E/class.txt:70 ../E/close.txt:6 ../E/cond.txt:27 ../E/continue.txt:24 ../E/cos.txt:11 ../E/deletef.txt:9 ../E/delinfo.txt:13 ../E/destroy.txt:15 ../E/detect.txt:27 ../E/direct.txt:13 ../E/dist.txt:29 ../E/dist2d.txt:13 ../E/do.txt:27 ../E/drop.txt:28 ../E/eof.txt:13 ../E/errmode.txt:32 ../E/expr.txt:134 ../E/extern.txt:29 ../E/factory.txt:21 ../E/false.txt:4 ../E/file.txt:16 ../E/fire.txt:30 ../E/flatgrnd.txt:16 ../E/flatspace.txt:25 ../E/float.txt:24 ../E/floor.txt:12 ../E/for.txt:38 ../E/function.txt:129 ../E/goto.txt:34 ../E/grab.txt:28 ../E/if.txt:39 ../E/int.txt:18 ../E/jet.txt:14 ../E/message.txt:24 ../E/motor.txt:38 ../E/move.txt:21 ../E/nan.txt:14 ../E/new.txt:20 ../E/null.txt:4 ../E/object.txt:79 ../E/open.txt:18 ../E/openfile.txt:10 ../E/pencolor.txt:14 ../E/pendown.txt:17 ../E/penup.txt:11 ../E/penwidth.txt:14 ../E/point.txt:35 ../E/pointer.txt:51 ../E/pow.txt:14 ../E/private.txt:17 ../E/produce.txt:30 ../E/public.txt:49 ../E/radar.txt:80 ../E/rand.txt:8 ../E/readln.txt:18 ../E/receive.txt:16 ../E/recycle.txt:12 ../E/research.txt:18 ../E/researched.txt:14 ../E/researches.txt:27 ../E/retobj.txt:13 ../E/return.txt:29 ../E/round.txt:12 ../E/search.txt:25 ../E/send.txt:17 ../E/shield.txt:18 ../E/sin.txt:11 ../E/sizeof.txt:21 ../E/sniff.txt:16 ../E/space.txt:22 ../E/sqrt.txt:11 ../E/static.txt:20 ../E/strfind.txt:18 ../E/string.txt:32 ../E/strleft.txt:14 ../E/strlen.txt:12 ../E/strlower.txt:10 ../E/strmid.txt:18 ../E/strright.txt:14 ../E/strupper.txt:10 ../E/strval.txt:17 ../E/switch.txt:70 ../E/synchro.txt:23 ../E/takeoff.txt:15 ../E/tan.txt:11 ../E/term.txt:30 ../E/testinfo.txt:16 ../E/this.txt:52 ../E/thump.txt:12 ../E/topo.txt:13 ../E/true.txt:4 ../E/trunc.txt:12 ../E/turn.txt:32 ../E/type.txt:32 ../E/var.txt:66 ../E/void.txt:10 ../E/wait.txt:21 ../E/while.txt:46 ../E/writeln.txt:19
+#: ../E/abstime.txt:10 ../E/acos.txt:11 ../E/aim.txt:23 ../E/array.txt:30 ../E/asin.txt:11 ../E/atan.txt:11 ../E/atan2.txt:16 ../E/bloc.txt:48 ../E/bool.txt:4 ../E/break.txt:24 ../E/build.txt:27 ../E/buildingenabled.txt:22 ../E/busy.txt:14 ../E/canbuild.txt:22 ../E/canresearch.txt:14 ../E/category.txt:107 ../E/ceil.txt:12 ../E/class.txt:70 ../E/close.txt:6 ../E/cond.txt:4 ../E/continue.txt:24 ../E/cos.txt:11 ../E/deletef.txt:9 ../E/delinfo.txt:13 ../E/destroy.txt:15 ../E/detect.txt:27 ../E/direct.txt:13 ../E/dist.txt:29 ../E/dist2d.txt:13 ../E/do.txt:27 ../E/drop.txt:28 ../E/eof.txt:13 ../E/errmode.txt:32 ../E/expr.txt:157 ../E/extern.txt:29 ../E/factory.txt:21 ../E/false.txt:4 ../E/file.txt:16 ../E/fire.txt:30 ../E/flatgrnd.txt:16 ../E/flatspace.txt:25 ../E/float.txt:24 ../E/floor.txt:12 ../E/for.txt:38 ../E/function.txt:129 ../E/goto.txt:34 ../E/grab.txt:28 ../E/if.txt:39 ../E/int.txt:18 ../E/jet.txt:14 ../E/message.txt:24 ../E/motor.txt:38 ../E/move.txt:21 ../E/nan.txt:14 ../E/new.txt:20 ../E/null.txt:4 ../E/object.txt:79 ../E/open.txt:18 ../E/openfile.txt:10 ../E/pencolor.txt:14 ../E/pendown.txt:17 ../E/penup.txt:11 ../E/penwidth.txt:14 ../E/point.txt:35 ../E/pointer.txt:51 ../E/pow.txt:14 ../E/private.txt:17 ../E/produce.txt:30 ../E/public.txt:49 ../E/radar.txt:80 ../E/rand.txt:8 ../E/readln.txt:18 ../E/receive.txt:16 ../E/recycle.txt:12 ../E/research.txt:18 ../E/researched.txt:14 ../E/researches.txt:27 ../E/retobj.txt:13 ../E/return.txt:29 ../E/round.txt:12 ../E/search.txt:25 ../E/send.txt:17 ../E/shield.txt:18 ../E/sin.txt:11 ../E/sizeof.txt:21 ../E/sniff.txt:16 ../E/space.txt:22 ../E/sqrt.txt:11 ../E/static.txt:20 ../E/strfind.txt:18 ../E/string.txt:32 ../E/strleft.txt:14 ../E/strlen.txt:12 ../E/strlower.txt:10 ../E/strmid.txt:18 ../E/strright.txt:14 ../E/strupper.txt:10 ../E/strval.txt:17 ../E/switch.txt:70 ../E/synchro.txt:23 ../E/takeoff.txt:15 ../E/tan.txt:11 ../E/term.txt:30 ../E/testinfo.txt:16 ../E/this.txt:52 ../E/thump.txt:12 ../E/topo.txt:13 ../E/true.txt:4 ../E/trunc.txt:12 ../E/turn.txt:32 ../E/type.txt:32 ../E/var.txt:66 ../E/void.txt:10 ../E/wait.txt:21 ../E/while.txt:46 ../E/writeln.txt:19
#, no-wrap
msgid "See also"
msgstr "Voir aussi"
#. type: Plain text
-#: ../E/abstime.txt:11 ../E/aim.txt:24 ../E/array.txt:31 ../E/bool.txt:5 ../E/break.txt:25 ../E/busy.txt:15 ../E/cond.txt:28 ../E/continue.txt:25 ../E/deletef.txt:10 ../E/destroy.txt:16 ../E/detect.txt:28 ../E/direct.txt:14 ../E/dist.txt:30 ../E/dist2d.txt:14 ../E/drop.txt:29 ../E/errmode.txt:33 ../E/expr.txt:135 ../E/extern.txt:30 ../E/false.txt:5 ../E/fire.txt:31 ../E/flatgrnd.txt:17 ../E/flatspace.txt:26 ../E/float.txt:25 ../E/for.txt:39 ../E/function.txt:130 ../E/goto.txt:35 ../E/grab.txt:29 ../E/if.txt:40 ../E/int.txt:19 ../E/jet.txt:15 ../E/message.txt:25 ../E/move.txt:22 ../E/nan.txt:15 ../E/object.txt:80 ../E/openfile.txt:11 ../E/pencolor.txt:15 ../E/pendown.txt:18 ../E/penup.txt:12 ../E/penwidth.txt:15 ../E/point.txt:36 ../E/produce.txt:31 ../E/radar.txt:81 ../E/recycle.txt:13 ../E/retobj.txt:14 ../E/return.txt:30 ../E/search.txt:26 ../E/shield.txt:19 ../E/sizeof.txt:22 ../E/sniff.txt:17 ../E/space.txt:23 ../E/string.txt:33 ../E/switch.txt:71 ../E/takeoff.txt:16 ../E/term.txt:31 ../E/thump.txt:13 ../E/topo.txt:14 ../E/true.txt:5 ../E/turn.txt:33 ../E/type.txt:33 ../E/var.txt:67 ../E/void.txt:11 ../E/wait.txt:22
+#: ../E/abstime.txt:11 ../E/aim.txt:24 ../E/array.txt:31 ../E/bool.txt:5 ../E/break.txt:25 ../E/busy.txt:15 ../E/cond.txt:5 ../E/continue.txt:25 ../E/deletef.txt:10 ../E/destroy.txt:16 ../E/detect.txt:28 ../E/direct.txt:14 ../E/dist.txt:30 ../E/dist2d.txt:14 ../E/drop.txt:29 ../E/errmode.txt:33 ../E/expr.txt:158 ../E/extern.txt:30 ../E/false.txt:5 ../E/fire.txt:31 ../E/flatgrnd.txt:17 ../E/flatspace.txt:26 ../E/float.txt:25 ../E/for.txt:39 ../E/function.txt:130 ../E/goto.txt:35 ../E/grab.txt:29 ../E/if.txt:40 ../E/int.txt:19 ../E/jet.txt:15 ../E/message.txt:25 ../E/move.txt:22 ../E/nan.txt:15 ../E/object.txt:80 ../E/openfile.txt:11 ../E/pencolor.txt:15 ../E/pendown.txt:18 ../E/penup.txt:12 ../E/penwidth.txt:15 ../E/point.txt:36 ../E/produce.txt:31 ../E/radar.txt:81 ../E/recycle.txt:13 ../E/retobj.txt:14 ../E/return.txt:30 ../E/search.txt:26 ../E/shield.txt:19 ../E/sizeof.txt:22 ../E/sniff.txt:17 ../E/space.txt:23 ../E/string.txt:33 ../E/switch.txt:71 ../E/takeoff.txt:16 ../E/term.txt:31 ../E/thump.txt:13 ../E/topo.txt:14 ../E/true.txt:5 ../E/turn.txt:33 ../E/type.txt:33 ../E/var.txt:67 ../E/void.txt:11 ../E/wait.txt:22
#, no-wrap
msgid "Programming, types and categories."
msgstr "Programmation, types et catégories."
@@ -820,17 +820,7 @@ msgid "Conditions"
msgstr "Les conditions"
#. type: Plain text
-#: ../E/cond.txt:2
-#, no-wrap
-msgid ""
-"A condition is a special expression that returns a boolean value, that can only be either true
or false
. With a condition, you can choose f. ex. if the instructions in a while
loop must be repeated again, or if the instruction in a if
bloc must be executed.\n"
-"Here are some operators that you can use in conditions to compare two values :"
-msgstr ""
-"Une condition est une expression particulière, qui prend une valeur booléenne, c'est-à-dire pouvant être vraie ou fausse (true
ou false
). Une condition détermine par exemple s'il faut continuer ou non une boucle while
.\n"
-"Les opérateurs de comparaison sont:"
-
-#. type: Plain text
-#: ../E/cond.txt:5
+#: ../E/expr.txt:116
#, no-wrap
msgid ""
"a == b
a
equals b
\n"
@@ -848,13 +838,7 @@ msgstr ""
"a >= b
a
plus grand ou égal à b
"
#. type: Plain text
-#: ../E/cond.txt:12
-#, no-wrap
-msgid "For example :"
-msgstr "Par exemple:"
-
-#. type: Plain text
-#: ../E/cond.txt:14
+#: ../E/expr.txt:124
#, no-wrap
msgid ""
"12 == 12
returns true\n"
@@ -872,13 +856,13 @@ msgstr ""
"12 >= 12
retourne vrai"
#. type: Plain text
-#: ../E/cond.txt:22
+#: ../E/expr.txt:132
#, no-wrap
msgid "Be careful not to confuse the equality comparison ==
with the assignment of a variable =
."
msgstr "Il faut faire très attention à ne pas confondre la comparaison d'égalité ==
avec l'affectation d'une variable =
."
#. type: Plain text
-#: ../E/cond.txt:24
+#: ../E/expr.txt:134
#, no-wrap
msgid ""
"a == b
is an expression that compares a
with b
.\n"
@@ -1483,13 +1467,13 @@ msgid "Expressions"
msgstr "Les expressions"
#. type: Plain text
-#: ../E/expr.txt:87
+#: ../E/expr.txt:86
#, no-wrap
msgid "is equivalent to"
msgstr ""
#. type: Plain text
-#: ../E/expr.txt:91
+#: ../E/expr.txt:90
#, no-wrap
msgid ""
"+=
addition\n"
@@ -1500,7 +1484,7 @@ msgid ""
msgstr ""
#. type: Plain text
-#: ../E/expr.txt:114
+#: ../E/expr.txt:138
#, no-wrap
msgid "The operators ++
and --
allow you to increment (++) or to decrement (--) a variable in very compact and efficient manner."
msgstr ""
@@ -2794,7 +2778,7 @@ msgid "This information also returns the description of a whole object: the desc
msgstr "Cette information est spéciale, comme la précédente. Elle contient les caractéristiques de l'objet transporté par le robot déménageur. S'il ne transporte rien, load
vaut null
."
#. type: \t; header, \b; header
-#: ../E/expr.txt:100 ../E/expr.txt:123 ../E/object.txt:66
+#: ../E/expr.txt:99 ../E/expr.txt:123 ../E/expr.txt:147 ../E/object.txt:66
#, no-wrap
msgid "Examples"
msgstr "Examples"
@@ -3485,7 +3469,7 @@ msgid "Returns the first object found that corresponds to the specified category
msgstr "Objet trouvé le plus proche. La valeur null
indique que rien n'a été trouvé."
#. type: \t; header
-#: ../E/cond.txt:21 ../E/radar.txt:68
+#: ../E/expr.txt:131 ../E/radar.txt:68
#, no-wrap
msgid "Remark"
msgstr "Remarque"
@@ -7860,25 +7844,25 @@ msgid ""
msgstr ""
#. type: \b; header
-#: ../E/expr.txt:51
+#: ../E/expr.txt:50
#, no-wrap
msgid "Basic arithmetic operations"
msgstr ""
#. type: Plain text
-#: ../E/expr.txt:52
+#: ../E/expr.txt:51
#, no-wrap
msgid "Binary operators below are working with fundamental number types (int
, float
)."
msgstr ""
#. type: \t; header
-#: ../E/expr.txt:54 ../E/expr.txt:90
+#: ../E/expr.txt:53 ../E/expr.txt:89 ../E/expr.txt:115
#, no-wrap
msgid "List"
msgstr ""
#. type: Plain text
-#: ../E/expr.txt:55
+#: ../E/expr.txt:54
#, no-wrap
msgid ""
"+
addition\n"
@@ -7889,73 +7873,73 @@ msgid ""
msgstr ""
#. type: \t; header
-#: ../E/expr.txt:61
+#: ../E/expr.txt:60
#, no-wrap
msgid "Notes"
msgstr ""
#. type: Bullet: 'o'
-#: ../E/expr.txt:62
+#: ../E/expr.txt:61
#, no-wrap
msgid "The *
, /
, %
are all stronger than +
and -
."
msgstr ""
#. type: Bullet: 'o'
-#: ../E/expr.txt:63
+#: ../E/expr.txt:62
#, no-wrap
msgid "The result type is always float
. If a
or b
are of type int
, they are automatically converted to float
. Note: this means that results of intermediate calculations tends to be as precise as possible, the precision is lost only during converting the final (float
) result to int
, for example by the assignment =
operator."
msgstr ""
#. type: \t; header
-#: ../E/expr.txt:65
+#: ../E/expr.txt:64
#, no-wrap
msgid "Real life examples"
msgstr ""
#. type: \t; header
-#: ../E/expr.txt:82
+#: ../E/expr.txt:81
#, no-wrap
msgid "Compound assignment operators"
msgstr ""
#. type: Plain text
-#: ../E/expr.txt:83
+#: ../E/expr.txt:82
#, no-wrap
msgid "Besides the =
operator for variable assignment there are several compound-assignment operators."
msgstr ""
#. type: Plain text
-#: ../E/expr.txt:85
+#: ../E/expr.txt:84
#, no-wrap
msgid "The compound-assignment operators combine the =
assignment operator with another binary operator such as +
or -
. 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: Source code
-#: ../E/expr.txt:86
+#: ../E/expr.txt:85
#, no-wrap
msgid "lvalue += expression
"
msgstr ""
#. type: Source code
-#: ../E/expr.txt:88
+#: ../E/expr.txt:87
#, no-wrap
msgid "lvalue = lvalue + expression
"
msgstr ""
#. type: \b; header
-#: ../E/expr.txt:97
+#: ../E/expr.txt:96
#, no-wrap
msgid "String concatenation"
msgstr ""
#. type: Plain text
-#: ../E/expr.txt:98
+#: ../E/expr.txt:97
#, no-wrap
msgid "If at least one of the values used with the +
operator is a string, then the operation of concatenation is performed. The result of the operator is then a string, which is created by joining end-to-end the string and the other value. If the other value is not a string, then it is converted to string beforehand."
msgstr ""
#. type: Source code
-#: ../E/expr.txt:102
+#: ../E/expr.txt:101
#, no-wrap
msgid ""
"\tstring s = \"a\" + \"bc\"; // returns \"abc\"\n"
@@ -7965,43 +7949,43 @@ msgid ""
msgstr ""
#. type: Plain text
-#: ../E/expr.txt:107
+#: ../E/expr.txt:106
#, no-wrap
msgid "Tip: the properties of the concatenation +
operator is useful with the message(); function, because it does not work with other types than string. An empty string can be used together with a value in order to create a string, which actually can be passed to the message(); function:"
msgstr ""
#. type: \b; header
-#: ../E/expr.txt:113
+#: ../E/expr.txt:137
#, no-wrap
msgid "Prefix and postfix increment- and decrement operators"
msgstr ""
#. type: Plain text
-#: ../E/expr.txt:116
+#: ../E/expr.txt:140
#, no-wrap
msgid "For example to increment the variable a
you can write"
msgstr ""
#. type: Source code
-#: ../E/expr.txt:117
+#: ../E/expr.txt:141
#, no-wrap
msgid "a++;"
msgstr ""
#. type: Plain text
-#: ../E/expr.txt:118
+#: ../E/expr.txt:142
#, no-wrap
msgid "instead of"
msgstr ""
#. type: Source code
-#: ../E/expr.txt:119
+#: ../E/expr.txt:143
#, no-wrap
msgid "a = a + 1;"
msgstr ""
#. type: Plain text
-#: ../E/expr.txt:121
+#: ../E/expr.txt:145
#, no-wrap
msgid "The result of the operation a++
is the value of the variable a
*before* the increment. If you use the prefix operator ++a
the result of the operation is the value of the variable a
*after* the increment. The same holds for the --
decrement operator."
msgstr ""
@@ -8025,7 +8009,7 @@ msgid "Note: it may be not obvious at first, but notice that =
is a
msgstr ""
#. type: Source code
-#: ../E/expr.txt:67
+#: ../E/expr.txt:66
#, no-wrap
msgid ""
" int i = 12 + 3; // i == 15\n"
@@ -8045,7 +8029,7 @@ msgid ""
msgstr ""
#. type: Source code
-#: ../E/expr.txt:109
+#: ../E/expr.txt:108
#, no-wrap
msgid ""
" float pi = 3.14;\n"
@@ -8054,7 +8038,7 @@ msgid ""
msgstr ""
#. type: Source code
-#: ../E/expr.txt:125
+#: ../E/expr.txt:149
#, no-wrap
msgid ""
" a = 2;\n"
@@ -8063,10 +8047,28 @@ msgid ""
msgstr ""
#. type: Source code
-#: ../E/expr.txt:129
+#: ../E/expr.txt:153
#, no-wrap
msgid ""
" a = 2;\n"
" b = ++a;\n"
" // now b contains 3 and a contains 3"
msgstr ""
+
+#. type: Plain text
+#: ../E/cond.txt:2
+#, no-wrap
+msgid "A condition is a special expression that returns a boolean value, that can only be either true
or false
. With a condition, you can choose f. ex. if the instructions in a while
loop must be repeated again, or if the instruction in a if
bloc must be executed. Condition must contain at least one logical operation."
+msgstr ""
+
+#. type: \b; header
+#: ../E/expr.txt:112
+#, no-wrap
+msgid "Logical operators"
+msgstr ""
+
+#. type: Plain text
+#: ../E/expr.txt:113
+#, no-wrap
+msgid "Logical operators work with values of type bool and they always return a bool. They are mainly used in conditions."
+msgstr ""
diff --git a/help/cbot/po/pl.po b/help/cbot/po/pl.po
index 6d22f2a9..37577ffd 100644
--- a/help/cbot/po/pl.po
+++ b/help/cbot/po/pl.po
@@ -53,13 +53,13 @@ msgid "Time in seconds."
msgstr "Czas w sekundach."
#. type: \t; header
-#: ../E/abstime.txt:10 ../E/acos.txt:11 ../E/aim.txt:23 ../E/array.txt:30 ../E/asin.txt:11 ../E/atan.txt:11 ../E/atan2.txt:16 ../E/bloc.txt:48 ../E/bool.txt:4 ../E/break.txt:24 ../E/build.txt:27 ../E/buildingenabled.txt:22 ../E/busy.txt:14 ../E/canbuild.txt:22 ../E/canresearch.txt:14 ../E/category.txt:107 ../E/ceil.txt:12 ../E/class.txt:70 ../E/close.txt:6 ../E/cond.txt:27 ../E/continue.txt:24 ../E/cos.txt:11 ../E/deletef.txt:9 ../E/delinfo.txt:13 ../E/destroy.txt:15 ../E/detect.txt:27 ../E/direct.txt:13 ../E/dist.txt:29 ../E/dist2d.txt:13 ../E/do.txt:27 ../E/drop.txt:28 ../E/eof.txt:13 ../E/errmode.txt:32 ../E/expr.txt:134 ../E/extern.txt:29 ../E/factory.txt:21 ../E/false.txt:4 ../E/file.txt:16 ../E/fire.txt:30 ../E/flatgrnd.txt:16 ../E/flatspace.txt:25 ../E/float.txt:24 ../E/floor.txt:12 ../E/for.txt:38 ../E/function.txt:129 ../E/goto.txt:34 ../E/grab.txt:28 ../E/if.txt:39 ../E/int.txt:18 ../E/jet.txt:14 ../E/message.txt:24 ../E/motor.txt:38 ../E/move.txt:21 ../E/nan.txt:14 ../E/new.txt:20 ../E/null.txt:4 ../E/object.txt:79 ../E/open.txt:18 ../E/openfile.txt:10 ../E/pencolor.txt:14 ../E/pendown.txt:17 ../E/penup.txt:11 ../E/penwidth.txt:14 ../E/point.txt:35 ../E/pointer.txt:51 ../E/pow.txt:14 ../E/private.txt:17 ../E/produce.txt:30 ../E/public.txt:49 ../E/radar.txt:80 ../E/rand.txt:8 ../E/readln.txt:18 ../E/receive.txt:16 ../E/recycle.txt:12 ../E/research.txt:18 ../E/researched.txt:14 ../E/researches.txt:27 ../E/retobj.txt:13 ../E/return.txt:29 ../E/round.txt:12 ../E/search.txt:25 ../E/send.txt:17 ../E/shield.txt:18 ../E/sin.txt:11 ../E/sizeof.txt:21 ../E/sniff.txt:16 ../E/space.txt:22 ../E/sqrt.txt:11 ../E/static.txt:20 ../E/strfind.txt:18 ../E/string.txt:32 ../E/strleft.txt:14 ../E/strlen.txt:12 ../E/strlower.txt:10 ../E/strmid.txt:18 ../E/strright.txt:14 ../E/strupper.txt:10 ../E/strval.txt:17 ../E/switch.txt:70 ../E/synchro.txt:23 ../E/takeoff.txt:15 ../E/tan.txt:11 ../E/term.txt:30 ../E/testinfo.txt:16 ../E/this.txt:52 ../E/thump.txt:12 ../E/topo.txt:13 ../E/true.txt:4 ../E/trunc.txt:12 ../E/turn.txt:32 ../E/type.txt:32 ../E/var.txt:66 ../E/void.txt:10 ../E/wait.txt:21 ../E/while.txt:46 ../E/writeln.txt:19
+#: ../E/abstime.txt:10 ../E/acos.txt:11 ../E/aim.txt:23 ../E/array.txt:30 ../E/asin.txt:11 ../E/atan.txt:11 ../E/atan2.txt:16 ../E/bloc.txt:48 ../E/bool.txt:4 ../E/break.txt:24 ../E/build.txt:27 ../E/buildingenabled.txt:22 ../E/busy.txt:14 ../E/canbuild.txt:22 ../E/canresearch.txt:14 ../E/category.txt:107 ../E/ceil.txt:12 ../E/class.txt:70 ../E/close.txt:6 ../E/cond.txt:4 ../E/continue.txt:24 ../E/cos.txt:11 ../E/deletef.txt:9 ../E/delinfo.txt:13 ../E/destroy.txt:15 ../E/detect.txt:27 ../E/direct.txt:13 ../E/dist.txt:29 ../E/dist2d.txt:13 ../E/do.txt:27 ../E/drop.txt:28 ../E/eof.txt:13 ../E/errmode.txt:32 ../E/expr.txt:157 ../E/extern.txt:29 ../E/factory.txt:21 ../E/false.txt:4 ../E/file.txt:16 ../E/fire.txt:30 ../E/flatgrnd.txt:16 ../E/flatspace.txt:25 ../E/float.txt:24 ../E/floor.txt:12 ../E/for.txt:38 ../E/function.txt:129 ../E/goto.txt:34 ../E/grab.txt:28 ../E/if.txt:39 ../E/int.txt:18 ../E/jet.txt:14 ../E/message.txt:24 ../E/motor.txt:38 ../E/move.txt:21 ../E/nan.txt:14 ../E/new.txt:20 ../E/null.txt:4 ../E/object.txt:79 ../E/open.txt:18 ../E/openfile.txt:10 ../E/pencolor.txt:14 ../E/pendown.txt:17 ../E/penup.txt:11 ../E/penwidth.txt:14 ../E/point.txt:35 ../E/pointer.txt:51 ../E/pow.txt:14 ../E/private.txt:17 ../E/produce.txt:30 ../E/public.txt:49 ../E/radar.txt:80 ../E/rand.txt:8 ../E/readln.txt:18 ../E/receive.txt:16 ../E/recycle.txt:12 ../E/research.txt:18 ../E/researched.txt:14 ../E/researches.txt:27 ../E/retobj.txt:13 ../E/return.txt:29 ../E/round.txt:12 ../E/search.txt:25 ../E/send.txt:17 ../E/shield.txt:18 ../E/sin.txt:11 ../E/sizeof.txt:21 ../E/sniff.txt:16 ../E/space.txt:22 ../E/sqrt.txt:11 ../E/static.txt:20 ../E/strfind.txt:18 ../E/string.txt:32 ../E/strleft.txt:14 ../E/strlen.txt:12 ../E/strlower.txt:10 ../E/strmid.txt:18 ../E/strright.txt:14 ../E/strupper.txt:10 ../E/strval.txt:17 ../E/switch.txt:70 ../E/synchro.txt:23 ../E/takeoff.txt:15 ../E/tan.txt:11 ../E/term.txt:30 ../E/testinfo.txt:16 ../E/this.txt:52 ../E/thump.txt:12 ../E/topo.txt:13 ../E/true.txt:4 ../E/trunc.txt:12 ../E/turn.txt:32 ../E/type.txt:32 ../E/var.txt:66 ../E/void.txt:10 ../E/wait.txt:21 ../E/while.txt:46 ../E/writeln.txt:19
#, no-wrap
msgid "See also"
msgstr "Zobacz również"
#. type: Plain text
-#: ../E/abstime.txt:11 ../E/aim.txt:24 ../E/array.txt:31 ../E/bool.txt:5 ../E/break.txt:25 ../E/busy.txt:15 ../E/cond.txt:28 ../E/continue.txt:25 ../E/deletef.txt:10 ../E/destroy.txt:16 ../E/detect.txt:28 ../E/direct.txt:14 ../E/dist.txt:30 ../E/dist2d.txt:14 ../E/drop.txt:29 ../E/errmode.txt:33 ../E/expr.txt:135 ../E/extern.txt:30 ../E/false.txt:5 ../E/fire.txt:31 ../E/flatgrnd.txt:17 ../E/flatspace.txt:26 ../E/float.txt:25 ../E/for.txt:39 ../E/function.txt:130 ../E/goto.txt:35 ../E/grab.txt:29 ../E/if.txt:40 ../E/int.txt:19 ../E/jet.txt:15 ../E/message.txt:25 ../E/move.txt:22 ../E/nan.txt:15 ../E/object.txt:80 ../E/openfile.txt:11 ../E/pencolor.txt:15 ../E/pendown.txt:18 ../E/penup.txt:12 ../E/penwidth.txt:15 ../E/point.txt:36 ../E/produce.txt:31 ../E/radar.txt:81 ../E/recycle.txt:13 ../E/retobj.txt:14 ../E/return.txt:30 ../E/search.txt:26 ../E/shield.txt:19 ../E/sizeof.txt:22 ../E/sniff.txt:17 ../E/space.txt:23 ../E/string.txt:33 ../E/switch.txt:71 ../E/takeoff.txt:16 ../E/term.txt:31 ../E/thump.txt:13 ../E/topo.txt:14 ../E/true.txt:5 ../E/turn.txt:33 ../E/type.txt:33 ../E/var.txt:67 ../E/void.txt:11 ../E/wait.txt:22
+#: ../E/abstime.txt:11 ../E/aim.txt:24 ../E/array.txt:31 ../E/bool.txt:5 ../E/break.txt:25 ../E/busy.txt:15 ../E/cond.txt:5 ../E/continue.txt:25 ../E/deletef.txt:10 ../E/destroy.txt:16 ../E/detect.txt:28 ../E/direct.txt:14 ../E/dist.txt:30 ../E/dist2d.txt:14 ../E/drop.txt:29 ../E/errmode.txt:33 ../E/expr.txt:158 ../E/extern.txt:30 ../E/false.txt:5 ../E/fire.txt:31 ../E/flatgrnd.txt:17 ../E/flatspace.txt:26 ../E/float.txt:25 ../E/for.txt:39 ../E/function.txt:130 ../E/goto.txt:35 ../E/grab.txt:29 ../E/if.txt:40 ../E/int.txt:19 ../E/jet.txt:15 ../E/message.txt:25 ../E/move.txt:22 ../E/nan.txt:15 ../E/object.txt:80 ../E/openfile.txt:11 ../E/pencolor.txt:15 ../E/pendown.txt:18 ../E/penup.txt:12 ../E/penwidth.txt:15 ../E/point.txt:36 ../E/produce.txt:31 ../E/radar.txt:81 ../E/recycle.txt:13 ../E/retobj.txt:14 ../E/return.txt:30 ../E/search.txt:26 ../E/shield.txt:19 ../E/sizeof.txt:22 ../E/sniff.txt:17 ../E/space.txt:23 ../E/string.txt:33 ../E/switch.txt:71 ../E/takeoff.txt:16 ../E/term.txt:31 ../E/thump.txt:13 ../E/topo.txt:14 ../E/true.txt:5 ../E/turn.txt:33 ../E/type.txt:33 ../E/var.txt:67 ../E/void.txt:11 ../E/wait.txt:22
#, no-wrap
msgid "Programming, types and categories."
msgstr "Programowanie, typy i kategorie."
@@ -831,17 +831,7 @@ msgid "Conditions"
msgstr "Warunki"
#. type: Plain text
-#: ../E/cond.txt:2
-#, no-wrap
-msgid ""
-"A condition is a special expression that returns a boolean value, that can only be either true
or false
. With a condition, you can choose f. ex. if the instructions in a while
loop must be repeated again, or if the instruction in a if
bloc must be executed.\n"
-"Here are some operators that you can use in conditions to compare two values :"
-msgstr ""
-"Warunek, to wyrażenie dające w wyniku wartość logiczną, którą może być true
(prawda) lub false
(fałsz). Używając warunku można wybrać czy instrukcje w pętli while
powinny być wykonane jeszcze raz lub czy instrukcje w bloku if
powinny być wykonywane.\n"
-"Oto kilka operatorów, których można używać do porównywania dwóch wartości:"
-
-#. type: Plain text
-#: ../E/cond.txt:5
+#: ../E/expr.txt:116
#, no-wrap
msgid ""
"a == b
a
equals b
\n"
@@ -859,13 +849,7 @@ msgstr ""
"a >= b
a
wi��ksze od lub równe b
"
#. type: Plain text
-#: ../E/cond.txt:12
-#, no-wrap
-msgid "For example :"
-msgstr "Na przykład:"
-
-#. type: Plain text
-#: ../E/cond.txt:14
+#: ../E/expr.txt:124
#, no-wrap
msgid ""
"12 == 12
returns true\n"
@@ -883,13 +867,13 @@ msgstr ""
"12 >= 12
daje w wyniku true "
#. type: Plain text
-#: ../E/cond.txt:22
+#: ../E/expr.txt:132
#, no-wrap
msgid "Be careful not to confuse the equality comparison ==
with the assignment of a variable =
."
msgstr "Nie należy mylić operatora porównania ==
z operatorem przypisania wartości zmiennej =
."
#. type: Plain text
-#: ../E/cond.txt:24
+#: ../E/expr.txt:134
#, no-wrap
msgid ""
"a == b
is an expression that compares a
with b
.\n"
@@ -1489,13 +1473,13 @@ msgid "Expressions"
msgstr "Wyrażenia"
#. type: Plain text
-#: ../E/expr.txt:87
+#: ../E/expr.txt:86
#, no-wrap
msgid "is equivalent to"
msgstr "jest równoważne"
#. type: Plain text
-#: ../E/expr.txt:91
+#: ../E/expr.txt:90
#, no-wrap
msgid ""
"+=
addition\n"
@@ -1511,7 +1495,7 @@ msgstr ""
"%=
reszta z dzielenia (tylko dla typu całkowitego int
)"
#. type: Plain text
-#: ../E/expr.txt:114
+#: ../E/expr.txt:138
#, no-wrap
msgid "The operators ++
and --
allow you to increment (++) or to decrement (--) a variable in very compact and efficient manner."
msgstr "Operatory ++
i --
umożliwiają wygodny i zwarty zapis zwiększania (++) lub zmiejszania (--) zmiennych."
@@ -2817,7 +2801,7 @@ msgid "This information also returns the description of a whole object: the desc
msgstr "Ta informacja również zwraca opis całego obiektu, a mianowicie opis obiektu trzymanego przez transporter. Jeśli nie niesie on niczego, load
jest równe null
."
#. type: \t; header, \b; header
-#: ../E/expr.txt:100 ../E/expr.txt:123 ../E/object.txt:66
+#: ../E/expr.txt:99 ../E/expr.txt:123 ../E/expr.txt:147 ../E/object.txt:66
#, no-wrap
msgid "Examples"
msgstr "Przykłady"
@@ -3515,7 +3499,7 @@ msgid "Returns the first object found that corresponds to the specified category
msgstr "Zwraca pierwszy znaleziony obiekt odpowiadający podanej kategorii w podanej strefie. Jeśli nie znaleziono obiektu, zwracana jest wartość null
."
#. type: \t; header
-#: ../E/cond.txt:21 ../E/radar.txt:68
+#: ../E/expr.txt:131 ../E/radar.txt:68
#, no-wrap
msgid "Remark"
msgstr "Uwaga"
@@ -8077,25 +8061,25 @@ msgid ""
msgstr ""
#. type: \b; header
-#: ../E/expr.txt:51
+#: ../E/expr.txt:50
#, no-wrap
msgid "Basic arithmetic operations"
msgstr ""
#. type: Plain text
-#: ../E/expr.txt:52
+#: ../E/expr.txt:51
#, no-wrap
msgid "Binary operators below are working with fundamental number types (int
, float
)."
msgstr ""
#. type: \t; header
-#: ../E/expr.txt:54 ../E/expr.txt:90
+#: ../E/expr.txt:53 ../E/expr.txt:89 ../E/expr.txt:115
#, no-wrap
msgid "List"
msgstr ""
#. type: Plain text
-#: ../E/expr.txt:55
+#: ../E/expr.txt:54
#, no-wrap
msgid ""
"+
addition\n"
@@ -8106,73 +8090,73 @@ msgid ""
msgstr ""
#. type: \t; header
-#: ../E/expr.txt:61
+#: ../E/expr.txt:60
#, no-wrap
msgid "Notes"
msgstr ""
#. type: Bullet: 'o'
-#: ../E/expr.txt:62
+#: ../E/expr.txt:61
#, no-wrap
msgid "The *
, /
, %
are all stronger than +
and -
."
msgstr ""
#. type: Bullet: 'o'
-#: ../E/expr.txt:63
+#: ../E/expr.txt:62
#, no-wrap
msgid "The result type is always float
. If a
or b
are of type int
, they are automatically converted to float
. Note: this means that results of intermediate calculations tends to be as precise as possible, the precision is lost only during converting the final (float
) result to int
, for example by the assignment =
operator."
msgstr ""
#. type: \t; header
-#: ../E/expr.txt:65
+#: ../E/expr.txt:64
#, no-wrap
msgid "Real life examples"
msgstr ""
#. type: \t; header
-#: ../E/expr.txt:82
+#: ../E/expr.txt:81
#, no-wrap
msgid "Compound assignment operators"
msgstr ""
#. type: Plain text
-#: ../E/expr.txt:83
+#: ../E/expr.txt:82
#, no-wrap
msgid "Besides the =
operator for variable assignment there are several compound-assignment operators."
msgstr ""
#. type: Plain text
-#: ../E/expr.txt:85
+#: ../E/expr.txt:84
#, no-wrap
msgid "The compound-assignment operators combine the =
assignment operator with another binary operator such as +
or -
. 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: Source code
-#: ../E/expr.txt:86
+#: ../E/expr.txt:85
#, no-wrap
msgid "lvalue += expression
"
msgstr ""
#. type: Source code
-#: ../E/expr.txt:88
+#: ../E/expr.txt:87
#, no-wrap
msgid "lvalue = lvalue + expression
"
msgstr ""
#. type: \b; header
-#: ../E/expr.txt:97
+#: ../E/expr.txt:96
#, no-wrap
msgid "String concatenation"
msgstr ""
#. type: Plain text
-#: ../E/expr.txt:98
+#: ../E/expr.txt:97
#, no-wrap
msgid "If at least one of the values used with the +
operator is a string, then the operation of concatenation is performed. The result of the operator is then a string, which is created by joining end-to-end the string and the other value. If the other value is not a string, then it is converted to string beforehand."
msgstr ""
#. type: Source code
-#: ../E/expr.txt:102
+#: ../E/expr.txt:101
#, no-wrap
msgid ""
"\tstring s = \"a\" + \"bc\"; // returns \"abc\"\n"
@@ -8182,43 +8166,43 @@ msgid ""
msgstr ""
#. type: Plain text
-#: ../E/expr.txt:107
+#: ../E/expr.txt:106
#, no-wrap
msgid "Tip: the properties of the concatenation +
operator is useful with the message(); function, because it does not work with other types than string. An empty string can be used together with a value in order to create a string, which actually can be passed to the message(); function:"
msgstr ""
#. type: \b; header
-#: ../E/expr.txt:113
+#: ../E/expr.txt:137
#, no-wrap
msgid "Prefix and postfix increment- and decrement operators"
msgstr ""
#. type: Plain text
-#: ../E/expr.txt:116
+#: ../E/expr.txt:140
#, no-wrap
msgid "For example to increment the variable a
you can write"
msgstr ""
#. type: Source code
-#: ../E/expr.txt:117
+#: ../E/expr.txt:141
#, no-wrap
msgid "a++;"
msgstr ""
#. type: Plain text
-#: ../E/expr.txt:118
+#: ../E/expr.txt:142
#, no-wrap
msgid "instead of"
msgstr ""
#. type: Source code
-#: ../E/expr.txt:119
+#: ../E/expr.txt:143
#, no-wrap
msgid "a = a + 1;"
msgstr ""
#. type: Plain text
-#: ../E/expr.txt:121
+#: ../E/expr.txt:145
#, no-wrap
msgid "The result of the operation a++
is the value of the variable a
*before* the increment. If you use the prefix operator ++a
the result of the operation is the value of the variable a
*after* the increment. The same holds for the --
decrement operator."
msgstr ""
@@ -8242,7 +8226,7 @@ msgid "Note: it may be not obvious at first, but notice that =
is a
msgstr ""
#. type: Source code
-#: ../E/expr.txt:67
+#: ../E/expr.txt:66
#, no-wrap
msgid ""
" int i = 12 + 3; // i == 15\n"
@@ -8262,7 +8246,7 @@ msgid ""
msgstr ""
#. type: Source code
-#: ../E/expr.txt:109
+#: ../E/expr.txt:108
#, no-wrap
msgid ""
" float pi = 3.14;\n"
@@ -8271,7 +8255,7 @@ msgid ""
msgstr ""
#. type: Source code
-#: ../E/expr.txt:125
+#: ../E/expr.txt:149
#, no-wrap
msgid ""
" a = 2;\n"
@@ -8280,10 +8264,28 @@ msgid ""
msgstr ""
#. type: Source code
-#: ../E/expr.txt:129
+#: ../E/expr.txt:153
#, no-wrap
msgid ""
" a = 2;\n"
" b = ++a;\n"
" // now b contains 3 and a contains 3"
msgstr ""
+
+#. type: Plain text
+#: ../E/cond.txt:2
+#, no-wrap
+msgid "A condition is a special expression that returns a boolean value, that can only be either true
or false
. With a condition, you can choose f. ex. if the instructions in a while
loop must be repeated again, or if the instruction in a if
bloc must be executed. Condition must contain at least one logical operation."
+msgstr ""
+
+#. type: \b; header
+#: ../E/expr.txt:112
+#, no-wrap
+msgid "Logical operators"
+msgstr ""
+
+#. type: Plain text
+#: ../E/expr.txt:113
+#, no-wrap
+msgid "Logical operators work with values of type bool and they always return a bool. They are mainly used in conditions."
+msgstr ""
diff --git a/help/cbot/po/ru.po b/help/cbot/po/ru.po
index 7ea9b814..a550c5f3 100644
--- a/help/cbot/po/ru.po
+++ b/help/cbot/po/ru.po
@@ -53,13 +53,13 @@ msgid "Time in seconds."
msgstr ""
#. type: \t; header
-#: ../E/abstime.txt:10 ../E/acos.txt:11 ../E/aim.txt:23 ../E/array.txt:30 ../E/asin.txt:11 ../E/atan.txt:11 ../E/atan2.txt:16 ../E/bloc.txt:48 ../E/bool.txt:4 ../E/break.txt:24 ../E/build.txt:27 ../E/buildingenabled.txt:22 ../E/busy.txt:14 ../E/canbuild.txt:22 ../E/canresearch.txt:14 ../E/category.txt:107 ../E/ceil.txt:12 ../E/class.txt:70 ../E/close.txt:6 ../E/cond.txt:27 ../E/continue.txt:24 ../E/cos.txt:11 ../E/deletef.txt:9 ../E/delinfo.txt:13 ../E/destroy.txt:15 ../E/detect.txt:27 ../E/direct.txt:13 ../E/dist.txt:29 ../E/dist2d.txt:13 ../E/do.txt:27 ../E/drop.txt:28 ../E/eof.txt:13 ../E/errmode.txt:32 ../E/expr.txt:134 ../E/extern.txt:29 ../E/factory.txt:21 ../E/false.txt:4 ../E/file.txt:16 ../E/fire.txt:30 ../E/flatgrnd.txt:16 ../E/flatspace.txt:25 ../E/float.txt:24 ../E/floor.txt:12 ../E/for.txt:38 ../E/function.txt:129 ../E/goto.txt:34 ../E/grab.txt:28 ../E/if.txt:39 ../E/int.txt:18 ../E/jet.txt:14 ../E/message.txt:24 ../E/motor.txt:38 ../E/move.txt:21 ../E/nan.txt:14 ../E/new.txt:20 ../E/null.txt:4 ../E/object.txt:79 ../E/open.txt:18 ../E/openfile.txt:10 ../E/pencolor.txt:14 ../E/pendown.txt:17 ../E/penup.txt:11 ../E/penwidth.txt:14 ../E/point.txt:35 ../E/pointer.txt:51 ../E/pow.txt:14 ../E/private.txt:17 ../E/produce.txt:30 ../E/public.txt:49 ../E/radar.txt:80 ../E/rand.txt:8 ../E/readln.txt:18 ../E/receive.txt:16 ../E/recycle.txt:12 ../E/research.txt:18 ../E/researched.txt:14 ../E/researches.txt:27 ../E/retobj.txt:13 ../E/return.txt:29 ../E/round.txt:12 ../E/search.txt:25 ../E/send.txt:17 ../E/shield.txt:18 ../E/sin.txt:11 ../E/sizeof.txt:21 ../E/sniff.txt:16 ../E/space.txt:22 ../E/sqrt.txt:11 ../E/static.txt:20 ../E/strfind.txt:18 ../E/string.txt:32 ../E/strleft.txt:14 ../E/strlen.txt:12 ../E/strlower.txt:10 ../E/strmid.txt:18 ../E/strright.txt:14 ../E/strupper.txt:10 ../E/strval.txt:17 ../E/switch.txt:70 ../E/synchro.txt:23 ../E/takeoff.txt:15 ../E/tan.txt:11 ../E/term.txt:30 ../E/testinfo.txt:16 ../E/this.txt:52 ../E/thump.txt:12 ../E/topo.txt:13 ../E/true.txt:4 ../E/trunc.txt:12 ../E/turn.txt:32 ../E/type.txt:32 ../E/var.txt:66 ../E/void.txt:10 ../E/wait.txt:21 ../E/while.txt:46 ../E/writeln.txt:19
+#: ../E/abstime.txt:10 ../E/acos.txt:11 ../E/aim.txt:23 ../E/array.txt:30 ../E/asin.txt:11 ../E/atan.txt:11 ../E/atan2.txt:16 ../E/bloc.txt:48 ../E/bool.txt:4 ../E/break.txt:24 ../E/build.txt:27 ../E/buildingenabled.txt:22 ../E/busy.txt:14 ../E/canbuild.txt:22 ../E/canresearch.txt:14 ../E/category.txt:107 ../E/ceil.txt:12 ../E/class.txt:70 ../E/close.txt:6 ../E/cond.txt:4 ../E/continue.txt:24 ../E/cos.txt:11 ../E/deletef.txt:9 ../E/delinfo.txt:13 ../E/destroy.txt:15 ../E/detect.txt:27 ../E/direct.txt:13 ../E/dist.txt:29 ../E/dist2d.txt:13 ../E/do.txt:27 ../E/drop.txt:28 ../E/eof.txt:13 ../E/errmode.txt:32 ../E/expr.txt:157 ../E/extern.txt:29 ../E/factory.txt:21 ../E/false.txt:4 ../E/file.txt:16 ../E/fire.txt:30 ../E/flatgrnd.txt:16 ../E/flatspace.txt:25 ../E/float.txt:24 ../E/floor.txt:12 ../E/for.txt:38 ../E/function.txt:129 ../E/goto.txt:34 ../E/grab.txt:28 ../E/if.txt:39 ../E/int.txt:18 ../E/jet.txt:14 ../E/message.txt:24 ../E/motor.txt:38 ../E/move.txt:21 ../E/nan.txt:14 ../E/new.txt:20 ../E/null.txt:4 ../E/object.txt:79 ../E/open.txt:18 ../E/openfile.txt:10 ../E/pencolor.txt:14 ../E/pendown.txt:17 ../E/penup.txt:11 ../E/penwidth.txt:14 ../E/point.txt:35 ../E/pointer.txt:51 ../E/pow.txt:14 ../E/private.txt:17 ../E/produce.txt:30 ../E/public.txt:49 ../E/radar.txt:80 ../E/rand.txt:8 ../E/readln.txt:18 ../E/receive.txt:16 ../E/recycle.txt:12 ../E/research.txt:18 ../E/researched.txt:14 ../E/researches.txt:27 ../E/retobj.txt:13 ../E/return.txt:29 ../E/round.txt:12 ../E/search.txt:25 ../E/send.txt:17 ../E/shield.txt:18 ../E/sin.txt:11 ../E/sizeof.txt:21 ../E/sniff.txt:16 ../E/space.txt:22 ../E/sqrt.txt:11 ../E/static.txt:20 ../E/strfind.txt:18 ../E/string.txt:32 ../E/strleft.txt:14 ../E/strlen.txt:12 ../E/strlower.txt:10 ../E/strmid.txt:18 ../E/strright.txt:14 ../E/strupper.txt:10 ../E/strval.txt:17 ../E/switch.txt:70 ../E/synchro.txt:23 ../E/takeoff.txt:15 ../E/tan.txt:11 ../E/term.txt:30 ../E/testinfo.txt:16 ../E/this.txt:52 ../E/thump.txt:12 ../E/topo.txt:13 ../E/true.txt:4 ../E/trunc.txt:12 ../E/turn.txt:32 ../E/type.txt:32 ../E/var.txt:66 ../E/void.txt:10 ../E/wait.txt:21 ../E/while.txt:46 ../E/writeln.txt:19
#, no-wrap
msgid "See also"
msgstr "См. также"
#. type: Plain text
-#: ../E/abstime.txt:11 ../E/aim.txt:24 ../E/array.txt:31 ../E/bool.txt:5 ../E/break.txt:25 ../E/busy.txt:15 ../E/cond.txt:28 ../E/continue.txt:25 ../E/deletef.txt:10 ../E/destroy.txt:16 ../E/detect.txt:28 ../E/direct.txt:14 ../E/dist.txt:30 ../E/dist2d.txt:14 ../E/drop.txt:29 ../E/errmode.txt:33 ../E/expr.txt:135 ../E/extern.txt:30 ../E/false.txt:5 ../E/fire.txt:31 ../E/flatgrnd.txt:17 ../E/flatspace.txt:26 ../E/float.txt:25 ../E/for.txt:39 ../E/function.txt:130 ../E/goto.txt:35 ../E/grab.txt:29 ../E/if.txt:40 ../E/int.txt:19 ../E/jet.txt:15 ../E/message.txt:25 ../E/move.txt:22 ../E/nan.txt:15 ../E/object.txt:80 ../E/openfile.txt:11 ../E/pencolor.txt:15 ../E/pendown.txt:18 ../E/penup.txt:12 ../E/penwidth.txt:15 ../E/point.txt:36 ../E/produce.txt:31 ../E/radar.txt:81 ../E/recycle.txt:13 ../E/retobj.txt:14 ../E/return.txt:30 ../E/search.txt:26 ../E/shield.txt:19 ../E/sizeof.txt:22 ../E/sniff.txt:17 ../E/space.txt:23 ../E/string.txt:33 ../E/switch.txt:71 ../E/takeoff.txt:16 ../E/term.txt:31 ../E/thump.txt:13 ../E/topo.txt:14 ../E/true.txt:5 ../E/turn.txt:33 ../E/type.txt:33 ../E/var.txt:67 ../E/void.txt:11 ../E/wait.txt:22
+#: ../E/abstime.txt:11 ../E/aim.txt:24 ../E/array.txt:31 ../E/bool.txt:5 ../E/break.txt:25 ../E/busy.txt:15 ../E/cond.txt:5 ../E/continue.txt:25 ../E/deletef.txt:10 ../E/destroy.txt:16 ../E/detect.txt:28 ../E/direct.txt:14 ../E/dist.txt:30 ../E/dist2d.txt:14 ../E/drop.txt:29 ../E/errmode.txt:33 ../E/expr.txt:158 ../E/extern.txt:30 ../E/false.txt:5 ../E/fire.txt:31 ../E/flatgrnd.txt:17 ../E/flatspace.txt:26 ../E/float.txt:25 ../E/for.txt:39 ../E/function.txt:130 ../E/goto.txt:35 ../E/grab.txt:29 ../E/if.txt:40 ../E/int.txt:19 ../E/jet.txt:15 ../E/message.txt:25 ../E/move.txt:22 ../E/nan.txt:15 ../E/object.txt:80 ../E/openfile.txt:11 ../E/pencolor.txt:15 ../E/pendown.txt:18 ../E/penup.txt:12 ../E/penwidth.txt:15 ../E/point.txt:36 ../E/produce.txt:31 ../E/radar.txt:81 ../E/recycle.txt:13 ../E/retobj.txt:14 ../E/return.txt:30 ../E/search.txt:26 ../E/shield.txt:19 ../E/sizeof.txt:22 ../E/sniff.txt:17 ../E/space.txt:23 ../E/string.txt:33 ../E/switch.txt:71 ../E/takeoff.txt:16 ../E/term.txt:31 ../E/thump.txt:13 ../E/topo.txt:14 ../E/true.txt:5 ../E/turn.txt:33 ../E/type.txt:33 ../E/var.txt:67 ../E/void.txt:11 ../E/wait.txt:22
#, no-wrap
msgid "Programming, types and categories."
msgstr "Программирование, типы и категории."
@@ -830,17 +830,7 @@ msgid "Conditions"
msgstr "Условия"
#. type: Plain text
-#: ../E/cond.txt:2
-#, no-wrap
-msgid ""
-"A condition is a special expression that returns a boolean value, that can only be either true
or false
. With a condition, you can choose f. ex. if the instructions in a while
loop must be repeated again, or if the instruction in a if
bloc must be executed.\n"
-"Here are some operators that you can use in conditions to compare two values :"
-msgstr ""
-"Условие - это специальное выражение которое возвращает булевое значение, которое может быть либо true
либо false
. Имея условия, вы можете выбирать Ф. экс. если инструкции в цикле while
должын повторяться снова, или если нужно выполнить инструкцию в блоке if
.\n"
-"Here are some operators that you can use in conditions to compare two values :"
-
-#. type: Plain text
-#: ../E/cond.txt:5
+#: ../E/expr.txt:116
#, no-wrap
msgid ""
"a == b
a
equals b
\n"
@@ -858,13 +848,7 @@ msgstr ""
"a >= b
a
больше или равно b
"
#. type: Plain text
-#: ../E/cond.txt:12
-#, no-wrap
-msgid "For example :"
-msgstr "Например:"
-
-#. type: Plain text
-#: ../E/cond.txt:14
+#: ../E/expr.txt:124
#, no-wrap
msgid ""
"12 == 12
returns true\n"
@@ -882,13 +866,13 @@ msgstr ""
"12 >= 12
возвращает да"
#. type: Plain text
-#: ../E/cond.txt:22
+#: ../E/expr.txt:132
#, no-wrap
msgid "Be careful not to confuse the equality comparison ==
with the assignment of a variable =
."
msgstr "Будьте внимательны и не путайте сравнение равенства ==
с присвоением переменной =
."
#. type: Plain text
-#: ../E/cond.txt:24
+#: ../E/expr.txt:134
#, no-wrap
msgid ""
"a == b
is an expression that compares a
with b
.\n"
@@ -1494,13 +1478,13 @@ msgid "Expressions"
msgstr "Выражения"
#. type: Plain text
-#: ../E/expr.txt:87
+#: ../E/expr.txt:86
#, no-wrap
msgid "is equivalent to"
msgstr ""
#. type: Plain text
-#: ../E/expr.txt:91
+#: ../E/expr.txt:90
#, no-wrap
msgid ""
"+=
addition\n"
@@ -1511,7 +1495,7 @@ msgid ""
msgstr ""
#. type: Plain text
-#: ../E/expr.txt:114
+#: ../E/expr.txt:138
#, no-wrap
msgid "The operators ++
and --
allow you to increment (++) or to decrement (--) a variable in very compact and efficient manner."
msgstr ""
@@ -2806,7 +2790,7 @@ msgid "This information also returns the description of a whole object: the desc
msgstr "Эта информация также вернет описание целого объекта: описание объекта, который несет несущий. Если он ничего не несет, то load
вернет null
."
#. type: \t; header, \b; header
-#: ../E/expr.txt:100 ../E/expr.txt:123 ../E/object.txt:66
+#: ../E/expr.txt:99 ../E/expr.txt:123 ../E/expr.txt:147 ../E/object.txt:66
#, no-wrap
msgid "Examples"
msgstr "Примеры"
@@ -3502,7 +3486,7 @@ msgid "Returns the first object found that corresponds to the specified category
msgstr "Возвращает первый найденный объект, который соответствует указанной категории в указанной зоне. Если объект найден не был, то возвращается значение null
."
#. type: \t; header
-#: ../E/cond.txt:21 ../E/radar.txt:68
+#: ../E/expr.txt:131 ../E/radar.txt:68
#, no-wrap
msgid "Remark"
msgstr "Замечание"
@@ -7871,25 +7855,25 @@ msgid ""
msgstr ""
#. type: \b; header
-#: ../E/expr.txt:51
+#: ../E/expr.txt:50
#, no-wrap
msgid "Basic arithmetic operations"
msgstr ""
#. type: Plain text
-#: ../E/expr.txt:52
+#: ../E/expr.txt:51
#, no-wrap
msgid "Binary operators below are working with fundamental number types (int
, float
)."
msgstr ""
#. type: \t; header
-#: ../E/expr.txt:54 ../E/expr.txt:90
+#: ../E/expr.txt:53 ../E/expr.txt:89 ../E/expr.txt:115
#, no-wrap
msgid "List"
msgstr ""
#. type: Plain text
-#: ../E/expr.txt:55
+#: ../E/expr.txt:54
#, no-wrap
msgid ""
"+
addition\n"
@@ -7900,73 +7884,73 @@ msgid ""
msgstr ""
#. type: \t; header
-#: ../E/expr.txt:61
+#: ../E/expr.txt:60
#, no-wrap
msgid "Notes"
msgstr ""
#. type: Bullet: 'o'
-#: ../E/expr.txt:62
+#: ../E/expr.txt:61
#, no-wrap
msgid "The *
, /
, %
are all stronger than +
and -
."
msgstr ""
#. type: Bullet: 'o'
-#: ../E/expr.txt:63
+#: ../E/expr.txt:62
#, no-wrap
msgid "The result type is always float
. If a
or b
are of type int
, they are automatically converted to float
. Note: this means that results of intermediate calculations tends to be as precise as possible, the precision is lost only during converting the final (float
) result to int
, for example by the assignment =
operator."
msgstr ""
#. type: \t; header
-#: ../E/expr.txt:65
+#: ../E/expr.txt:64
#, no-wrap
msgid "Real life examples"
msgstr ""
#. type: \t; header
-#: ../E/expr.txt:82
+#: ../E/expr.txt:81
#, no-wrap
msgid "Compound assignment operators"
msgstr ""
#. type: Plain text
-#: ../E/expr.txt:83
+#: ../E/expr.txt:82
#, no-wrap
msgid "Besides the =
operator for variable assignment there are several compound-assignment operators."
msgstr ""
#. type: Plain text
-#: ../E/expr.txt:85
+#: ../E/expr.txt:84
#, no-wrap
msgid "The compound-assignment operators combine the =
assignment operator with another binary operator such as +
or -
. 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: Source code
-#: ../E/expr.txt:86
+#: ../E/expr.txt:85
#, no-wrap
msgid "lvalue += expression
"
msgstr ""
#. type: Source code
-#: ../E/expr.txt:88
+#: ../E/expr.txt:87
#, no-wrap
msgid "lvalue = lvalue + expression
"
msgstr ""
#. type: \b; header
-#: ../E/expr.txt:97
+#: ../E/expr.txt:96
#, no-wrap
msgid "String concatenation"
msgstr ""
#. type: Plain text
-#: ../E/expr.txt:98
+#: ../E/expr.txt:97
#, no-wrap
msgid "If at least one of the values used with the +
operator is a string, then the operation of concatenation is performed. The result of the operator is then a string, which is created by joining end-to-end the string and the other value. If the other value is not a string, then it is converted to string beforehand."
msgstr ""
#. type: Source code
-#: ../E/expr.txt:102
+#: ../E/expr.txt:101
#, no-wrap
msgid ""
"\tstring s = \"a\" + \"bc\"; // returns \"abc\"\n"
@@ -7976,43 +7960,43 @@ msgid ""
msgstr ""
#. type: Plain text
-#: ../E/expr.txt:107
+#: ../E/expr.txt:106
#, no-wrap
msgid "Tip: the properties of the concatenation +
operator is useful with the message(); function, because it does not work with other types than string. An empty string can be used together with a value in order to create a string, which actually can be passed to the message(); function:"
msgstr ""
#. type: \b; header
-#: ../E/expr.txt:113
+#: ../E/expr.txt:137
#, no-wrap
msgid "Prefix and postfix increment- and decrement operators"
msgstr ""
#. type: Plain text
-#: ../E/expr.txt:116
+#: ../E/expr.txt:140
#, no-wrap
msgid "For example to increment the variable a
you can write"
msgstr ""
#. type: Source code
-#: ../E/expr.txt:117
+#: ../E/expr.txt:141
#, no-wrap
msgid "a++;"
msgstr ""
#. type: Plain text
-#: ../E/expr.txt:118
+#: ../E/expr.txt:142
#, no-wrap
msgid "instead of"
msgstr ""
#. type: Source code
-#: ../E/expr.txt:119
+#: ../E/expr.txt:143
#, no-wrap
msgid "a = a + 1;"
msgstr ""
#. type: Plain text
-#: ../E/expr.txt:121
+#: ../E/expr.txt:145
#, no-wrap
msgid "The result of the operation a++
is the value of the variable a
*before* the increment. If you use the prefix operator ++a
the result of the operation is the value of the variable a
*after* the increment. The same holds for the --
decrement operator."
msgstr ""
@@ -8036,7 +8020,7 @@ msgid "Note: it may be not obvious at first, but notice that =
is a
msgstr ""
#. type: Source code
-#: ../E/expr.txt:67
+#: ../E/expr.txt:66
#, no-wrap
msgid ""
" int i = 12 + 3; // i == 15\n"
@@ -8056,7 +8040,7 @@ msgid ""
msgstr ""
#. type: Source code
-#: ../E/expr.txt:109
+#: ../E/expr.txt:108
#, no-wrap
msgid ""
" float pi = 3.14;\n"
@@ -8065,7 +8049,7 @@ msgid ""
msgstr ""
#. type: Source code
-#: ../E/expr.txt:125
+#: ../E/expr.txt:149
#, no-wrap
msgid ""
" a = 2;\n"
@@ -8074,10 +8058,28 @@ msgid ""
msgstr ""
#. type: Source code
-#: ../E/expr.txt:129
+#: ../E/expr.txt:153
#, no-wrap
msgid ""
" a = 2;\n"
" b = ++a;\n"
" // now b contains 3 and a contains 3"
msgstr ""
+
+#. type: Plain text
+#: ../E/cond.txt:2
+#, no-wrap
+msgid "A condition is a special expression that returns a boolean value, that can only be either true
or false
. With a condition, you can choose f. ex. if the instructions in a while
loop must be repeated again, or if the instruction in a if
bloc must be executed. Condition must contain at least one logical operation."
+msgstr ""
+
+#. type: \b; header
+#: ../E/expr.txt:112
+#, no-wrap
+msgid "Logical operators"
+msgstr ""
+
+#. type: Plain text
+#: ../E/expr.txt:113
+#, no-wrap
+msgid "Logical operators work with values of type bool and they always return a bool. They are mainly used in conditions."
+msgstr ""