diff --git a/help/cbot/E/build.txt b/help/cbot/E/build.txt
index 77812f44..c9d5cec4 100644
--- a/help/cbot/E/build.txt
+++ b/help/cbot/E/build.txt
@@ -1,5 +1,5 @@
\b;Instruction \c;build\n;
-The instruction \c;build();\n; instructs the bot to build a building of the given \l;category\u cbot\category;. Currently works for every bot.
+The instruction \c;build();\n; instructs the bot to build a building of the given \l;category\u cbot\category;. Currently works for \l;Grabbers\u object\botgc;, \l;Me\u object\human; and \l;Tech\u object\tech;.
\b;Basic use
This command is mostly useful in an attempt to build a fully automatised base, where an \l;astronaut\u object\human; does not need to do anything except starting a program and watching bots working. What is more, it makes beating the game by using only programming a possible task (however, it is a challenge rather for experienced gamers, who beat the whole game at least once).
@@ -17,7 +17,7 @@ Syntax:
Tells the robot to build a building using a titanium cube placed on a flat ground nearby.
\t;cat: \c;\l;int\u cbot\int;\n;
-The \l;category\u cbot\category; of a building.
+\l;Category\u cbot\category; of a building.
\t;Return value: \c;\l;int\u cbot\int;\n;
Normally an error stops the program. You can prevent the program from stopping on errors by using the \c;\l;errmode\u cbot\errmode;(0)\n; instruction. A value different from zero if an error occurred is then returned by \c;build()\n;.
@@ -25,4 +25,4 @@ Normally an error stops the program. You can prevent the program from stopping o
\c;!= 0 \n;Impossible to build (for example, the nearest titanium cube is too far away or the specified building is not available in the mission)
\t;See also
-\l;Programming\u cbot;, \l;types\u cbot\type; and \l;categories\u cbot\category;.
+\l;canbuild\u cbot\canbuild;, \l;buildingenabled\u cbot\buildingenabled;, \l;programming\u cbot;, \l;types\u cbot\type; and \l;categories\u cbot\category;.
diff --git a/help/cbot/E/buildingenabled.txt b/help/cbot/E/buildingenabled.txt
new file mode 100644
index 00000000..7dcfcab8
--- /dev/null
+++ b/help/cbot/E/buildingenabled.txt
@@ -0,0 +1,23 @@
+\b;Instruction \c;buildingenabled\n;
+The instruction \c;buildingenabled();\n; lets you know if a building of the given \l;category\u cbot\category; can be built in the level.
+
+\b;Basic use
+It is similar to the \c;\l;canbuild();\u cbot\canbuild;\n; instruction. However, it does not check if a required research has been done.
+\c;
+\s; \l;if\u cbot\if; (buildingenabled(\l;BotFactory\u object\factory;))
+\s; {
+\s; build(\l;BotFactory\u object\factory;);
+\s; }
+\n;
+\b;For specialists
+Syntax:
+\s;\c;buildingenabled ( cat );\n;
+
+\t;cat: \c;\l;int\u cbot\int;\n;
+\l;Category\u cbot\category; of a building.
+
+\t;Return value: \c;\l;bool\u cbot\bool;\n;
+\c;true\n; if the building can be built in the level even if required research has not been done, \c;false\n; otherwise.
+
+\t;See also
+\l;build\u cbot\build;, \l;canbuild\u cbot\canbuild;, \l;ResearchCenter\u object\research;, \l;programming\u cbot;, \l;types\u cbot\type; and \l;categories\u cbot\category;.
diff --git a/help/cbot/E/canbuild.txt b/help/cbot/E/canbuild.txt
new file mode 100644
index 00000000..de507dc8
--- /dev/null
+++ b/help/cbot/E/canbuild.txt
@@ -0,0 +1,23 @@
+\b;Instruction \c;canbuild\n;
+The instruction \c;canbuild();\n; lets you know if \l;Grabbers\u object\botgc;, \l;Me\u object\human; or \l;Tech\u object\human; can build a building of the given \l;category\u cbot\category;.
+
+\b;Basic use
+It helps to prevent errors in programs using the \c;\l;build();\u cbot\build;\n; instruction. Here is an example:
+\c;
+\s; \l;if\u cbot\if; (canbuild(\l;BotFactory\u object\factory;))
+\s; {
+\s; build(\l;BotFactory\u object\factory;);
+\s; }
+\n;
+\b;For specialists
+Syntax:
+\s;\c;canbuild ( cat );\n;
+
+\t;cat: \c;\l;int\u cbot\int;\n;
+\l;Category\u cbot\category; of a building.
+
+\t;Return value: \c;\l;bool\u cbot\bool;\n;
+\c;true\n; if the building can be built, \c;false\n; otherwise.
+
+\t;See also
+\l;build\u cbot\build;, \l;buildingenabled\u cbot\buildingenabled;, \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 250adfd0..57ee656e 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/bloc.txt:48 ../E/bool.txt:4 ../E/break.txt:24 ../E/build.txt:27 ../E/category.txt:107 ../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/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:74 ../E/extern.txt:29 ../E/factory.txt:27 ../E/false.txt:4 ../E/file.txt:16 ../E/fire.txt:30 ../E/flatgrnd.txt:16 ../E/float.txt:24 ../E/for.txt:38 ../E/function.txt:84 ../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:68 ../E/open.txt:18 ../E/openfile.txt:10 ../E/point.txt:35 ../E/pointer.txt:51 ../E/pow.txt:14 ../E/private.txt:17 ../E/public.txt:49 ../E/radar.txt:58 ../E/rand.txt:8 ../E/readln.txt:18 ../E/receive.txt:16 ../E/recycle.txt:12 ../E/retobj.txt:13 ../E/return.txt:29 ../E/search.txt:16 ../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/synchro.txt:23 ../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/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/bloc.txt:48 ../E/bool.txt:4 ../E/break.txt:24 ../E/build.txt:27 ../E/buildingenabled.txt:22 ../E/canbuild.txt:22 ../E/category.txt:107 ../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/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:74 ../E/extern.txt:29 ../E/false.txt:4 ../E/file.txt:16 ../E/fire.txt:30 ../E/flatgrnd.txt:16 ../E/float.txt:24 ../E/for.txt:38 ../E/function.txt:84 ../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:68 ../E/open.txt:18 ../E/openfile.txt:10 ../E/point.txt:35 ../E/pointer.txt:51 ../E/pow.txt:14 ../E/private.txt:17 ../E/public.txt:49 ../E/radar.txt:58 ../E/rand.txt:8 ../E/readln.txt:18 ../E/receive.txt:16 ../E/recycle.txt:12 ../E/retobj.txt:13 ../E/return.txt:29 ../E/search.txt:16 ../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/synchro.txt:23 ../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/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/build.txt:28 ../E/cond.txt:28 ../E/continue.txt:25 ../E/deletef.txt:10 ../E/direct.txt:14 ../E/dist.txt:30 ../E/dist2d.txt:14 ../E/drop.txt:29 ../E/errmode.txt:33 ../E/expr.txt:75 ../E/extern.txt:30 ../E/factory.txt:28 ../E/false.txt:5 ../E/fire.txt:31 ../E/flatgrnd.txt:17 ../E/float.txt:25 ../E/for.txt:39 ../E/function.txt:85 ../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:69 ../E/openfile.txt:11 ../E/point.txt:36 ../E/radar.txt:59 ../E/recycle.txt:13 ../E/retobj.txt:14 ../E/return.txt:30 ../E/search.txt:17 ../E/shield.txt:19 ../E/sizeof.txt:22 ../E/sniff.txt:17 ../E/space.txt:23 ../E/string.txt:33 ../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/cond.txt:28 ../E/continue.txt:25 ../E/deletef.txt:10 ../E/direct.txt:14 ../E/dist.txt:30 ../E/dist2d.txt:14 ../E/drop.txt:29 ../E/errmode.txt:33 ../E/expr.txt:75 ../E/extern.txt:30 ../E/false.txt:5 ../E/fire.txt:31 ../E/flatgrnd.txt:17 ../E/float.txt:25 ../E/for.txt:39 ../E/function.txt:85 ../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:69 ../E/openfile.txt:11 ../E/point.txt:36 ../E/radar.txt:59 ../E/recycle.txt:13 ../E/retobj.txt:14 ../E/return.txt:30 ../E/search.txt:17 ../E/shield.txt:19 ../E/sizeof.txt:22 ../E/sniff.txt:17 ../E/space.txt:23 ../E/string.txt:33 ../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 ""
@@ -113,7 +113,7 @@ msgid "Angle in degrees of the gun relative to the robot. A positive value orien
msgstr ""
#. type: \t; header
-#: ../E/aim.txt:18 ../E/build.txt:22 ../E/drop.txt:23 ../E/factory.txt:22 ../E/fire.txt:25 ../E/goto.txt:29 ../E/grab.txt:23 ../E/move.txt:16 ../E/recycle.txt:7 ../E/sniff.txt:11 ../E/thump.txt:7 ../E/turn.txt:27
+#: ../E/aim.txt:18 ../E/build.txt:22 ../E/drop.txt:23 ../E/fire.txt:25 ../E/goto.txt:29 ../E/grab.txt:23 ../E/move.txt:16 ../E/recycle.txt:7 ../E/sniff.txt:11 ../E/thump.txt:7 ../E/turn.txt:27
#, no-wrap
msgid "Return value: int
"
msgstr ""
@@ -958,7 +958,7 @@ msgid "With the instruction distance( , )
you can calculate the dis
msgstr ""
#. type: \b; header
-#: ../E/build.txt:4 ../E/dist.txt:4 ../E/drop.txt:4 ../E/factory.txt:4 ../E/fire.txt:4 ../E/goto.txt:4 ../E/grab.txt:4 ../E/if.txt:4 ../E/motor.txt:4 ../E/move.txt:4 ../E/radar.txt:4 ../E/turn.txt:4 ../E/wait.txt:4 ../E/while.txt:4
+#: ../E/build.txt:4 ../E/buildingenabled.txt:4 ../E/canbuild.txt:4 ../E/dist.txt:4 ../E/drop.txt:4 ../E/fire.txt:4 ../E/goto.txt:4 ../E/grab.txt:4 ../E/if.txt:4 ../E/motor.txt:4 ../E/move.txt:4 ../E/radar.txt:4 ../E/turn.txt:4 ../E/wait.txt:4 ../E/while.txt:4
#, no-wrap
msgid "Basic use"
msgstr ""
@@ -998,13 +998,13 @@ msgid ""
msgstr ""
#. type: \b; header, \t; header
-#: ../E/build.txt:13 ../E/dist.txt:17 ../E/drop.txt:11 ../E/errmode.txt:4 ../E/factory.txt:13 ../E/file.txt:10 ../E/fire.txt:9 ../E/float.txt:19 ../E/goto.txt:11 ../E/grab.txt:11 ../E/if.txt:22 ../E/int.txt:13 ../E/motor.txt:14 ../E/move.txt:7 ../E/radar.txt:13 ../E/return.txt:9 ../E/turn.txt:18 ../E/wait.txt:9 ../E/while.txt:19
+#: ../E/build.txt:13 ../E/buildingenabled.txt:12 ../E/canbuild.txt:12 ../E/dist.txt:17 ../E/drop.txt:11 ../E/errmode.txt:4 ../E/file.txt:10 ../E/fire.txt:9 ../E/float.txt:19 ../E/goto.txt:11 ../E/grab.txt:11 ../E/if.txt:22 ../E/int.txt:13 ../E/motor.txt:14 ../E/move.txt:7 ../E/radar.txt:13 ../E/return.txt:9 ../E/turn.txt:18 ../E/wait.txt:9 ../E/while.txt:19
#, no-wrap
msgid "For specialists"
msgstr ""
#. type: Plain text
-#: ../E/acos.txt:2 ../E/asin.txt:2 ../E/atan.txt:2 ../E/build.txt:14 ../E/cos.txt:2 ../E/dist.txt:18 ../E/dist2d.txt:2 ../E/do.txt:2 ../E/drop.txt:12 ../E/factory.txt:14 ../E/fire.txt:10 ../E/for.txt:2 ../E/goto.txt:12 ../E/grab.txt:12 ../E/if.txt:23 ../E/jet.txt:2 ../E/message.txt:2 ../E/move.txt:8 ../E/pow.txt:2 ../E/radar.txt:14 ../E/rand.txt:2 ../E/receive.txt:2 ../E/recycle.txt:2 ../E/retobj.txt:2 ../E/search.txt:2 ../E/shield.txt:2 ../E/sin.txt:2 ../E/sniff.txt:2 ../E/sqrt.txt:2 ../E/tan.txt:2 ../E/thump.txt:2 ../E/topo.txt:2 ../E/turn.txt:19 ../E/wait.txt:10
+#: ../E/acos.txt:2 ../E/asin.txt:2 ../E/atan.txt:2 ../E/build.txt:14 ../E/buildingenabled.txt:13 ../E/canbuild.txt:13 ../E/cos.txt:2 ../E/dist.txt:18 ../E/dist2d.txt:2 ../E/do.txt:2 ../E/drop.txt:12 ../E/fire.txt:10 ../E/for.txt:2 ../E/goto.txt:12 ../E/grab.txt:12 ../E/if.txt:23 ../E/jet.txt:2 ../E/message.txt:2 ../E/move.txt:8 ../E/pow.txt:2 ../E/radar.txt:14 ../E/rand.txt:2 ../E/receive.txt:2 ../E/recycle.txt:2 ../E/retobj.txt:2 ../E/search.txt:2 ../E/shield.txt:2 ../E/sin.txt:2 ../E/sniff.txt:2 ../E/sqrt.txt:2 ../E/tan.txt:2 ../E/thump.txt:2 ../E/topo.txt:2 ../E/turn.txt:19 ../E/wait.txt:10
#, no-wrap
msgid "Syntax:"
msgstr ""
@@ -5478,31 +5478,31 @@ msgid ""
msgstr ""
#. type: Source code
-#: ../E/build.txt:15 ../E/factory.txt:15
+#: ../E/build.txt:15
#, no-wrap
msgid "build ( cat );"
msgstr ""
#. type: Plain text
-#: ../E/build.txt:17 ../E/factory.txt:17
+#: ../E/build.txt:17
#, no-wrap
msgid "Tells the robot to build a building using a titanium cube placed on a flat ground nearby."
msgstr ""
#. type: \t; header
-#: ../E/build.txt:19 ../E/factory.txt:19
+#: ../E/build.txt:19 ../E/buildingenabled.txt:16 ../E/canbuild.txt:16
#, no-wrap
msgid "cat: int
"
msgstr ""
#. type: \b; header
-#: ../E/build.txt:1 ../E/factory.txt:1
+#: ../E/build.txt:1
#, no-wrap
msgid "Instruction build
"
msgstr ""
#. type: Plain text
-#: ../E/build.txt:23 ../E/factory.txt:23
+#: ../E/build.txt:23
#, no-wrap
msgid ""
"Normally an error stops the program. You can prevent the program from stopping on errors by using the errmode(0)
instruction. A value different from zero if an error occurred is then returned by build()
.\n"
@@ -5511,19 +5511,13 @@ msgid ""
msgstr ""
#. type: Plain text
-#: ../E/build.txt:2 ../E/factory.txt:2
-#, no-wrap
-msgid "The instruction build(); instructs the bot to build a building of the given category. Currently works for every bot."
-msgstr ""
-
-#. type: Plain text
-#: ../E/build.txt:7 ../E/factory.txt:7
+#: ../E/build.txt:7
#, no-wrap
msgid "Here is an example of a program that looks for the nearest titanium cube, goes to the position and builds a bot factory."
msgstr ""
#. type: Source code
-#: ../E/build.txt:9 ../E/factory.txt:9
+#: ../E/build.txt:9
#, no-wrap
msgid ""
" object item = radar(Titanium);\n"
@@ -5532,13 +5526,7 @@ msgid ""
msgstr ""
#. type: Plain text
-#: ../E/build.txt:20 ../E/factory.txt:20
-#, no-wrap
-msgid "The category of a building."
-msgstr ""
-
-#. type: Plain text
-#: ../E/build.txt:5 ../E/factory.txt:5
+#: ../E/build.txt:5
#, no-wrap
msgid "This command is mostly useful in an attempt to build a fully automatised base, where an astronaut does not need to do anything except starting a program and watching bots working. What is more, it makes beating the game by using only programming a possible task (however, it is a challenge rather for experienced gamers, who beat the whole game at least once)."
msgstr ""
@@ -5795,6 +5783,159 @@ msgstr ""
msgid "Angle in degrees (except multiples of 90)."
msgstr ""
+#. type: Plain text
+#: ../E/build.txt:28
+#, no-wrap
+msgid "canbuild, buildingenabled, programming, types and categories."
+msgstr ""
+
+#. type: \b; header
+#: ../E/canbuild.txt:1
+#, no-wrap
+msgid "Instruction canbuild
"
+msgstr ""
+
+#. type: Source code
+#: ../E/canbuild.txt:14
+#, no-wrap
+msgid "canbuild ( cat );"
+msgstr ""
+
+#. type: \t; header
+#: ../E/buildingenabled.txt:19 ../E/canbuild.txt:19
+#, no-wrap
+msgid "Return value: bool
"
+msgstr ""
+
+#. type: Plain text
+#: ../E/canbuild.txt:20
+#, no-wrap
+msgid "true
if the building can be built, false
otherwise."
+msgstr ""
+
+#. type: Plain text
+#: ../E/canbuild.txt:23
+#, no-wrap
+msgid "build, buildingenabled, programming, types and categories."
+msgstr ""
+
+#. type: Plain text
+#: ../E/build.txt:20 ../E/buildingenabled.txt:17 ../E/canbuild.txt:17
+#, no-wrap
+msgid "Category of a building."
+msgstr ""
+
+#. type: \b; header
+#: ../E/buildingenabled.txt:1
+#, no-wrap
+msgid "Instruction buildingenabled
"
+msgstr ""
+
+#. type: Plain text
+#: ../E/buildingenabled.txt:2
+#, no-wrap
+msgid "The instruction buildingenabled(); lets you know if a building of the given category can be built in the level."
+msgstr ""
+
+#. type: Source code
+#: ../E/buildingenabled.txt:7
+#, no-wrap
+msgid ""
+" if (buildingenabled(BotFactory))\n"
+" {\n"
+" \tbuild(BotFactory);\n"
+" }"
+msgstr ""
+
+#. type: Source code
+#: ../E/buildingenabled.txt:14
+#, no-wrap
+msgid "buildingenabled ( cat );"
+msgstr ""
+
+#. type: Plain text
+#: ../E/buildingenabled.txt:20
+#, no-wrap
+msgid "true
if the building can be built in the level even if required research has not been done, false
otherwise."
+msgstr ""
+
+#. type: Plain text
+#: ../E/buildingenabled.txt:23
+#, no-wrap
+msgid "build, canbuild, ResearchCenter, programming, types and categories."
+msgstr ""
+
+#. type: Source code
+#: ../E/canbuild.txt:7
+#, no-wrap
+msgid ""
+" if (canbuild(BotFactory))\n"
+" {\n"
+" \tbuild(BotFactory);\n"
+" }"
+msgstr ""
+
+#. type: Plain text
+#: ../E/build.txt:2
+#, no-wrap
+msgid "The instruction build(); instructs the bot to build a building of the given category. Currently works for Grabbers, Me and Tech."
+msgstr ""
+
+#. type: Plain text
+#: ../E/buildingenabled.txt:5
+#, no-wrap
+msgid "It is similar to the canbuild(); instruction. However, it does not check if a required research has been done."
+msgstr ""
+
+#. type: Plain text
+#: ../E/canbuild.txt:2
+#, no-wrap
+msgid "The instruction canbuild(); lets you know if Grabbers, Me or Tech can build a building of the given category. "
+msgstr ""
+
+#. type: Plain text
+#: ../E/canbuild.txt:5
+#, no-wrap
+msgid "It helps to prevent errors in programs using the build(); instruction. Here is an example:"
+msgstr ""
+
+#~ msgid "The instruction build(); instructs the bot to build a building of the given category. Currently works for Grabbers, Me and Tech."
+#~ msgstr ""
+
+#~ msgid "The instruction canbuild(); lets you know if Grabbers, Me or Tech can build a building of the given category. "
+#~ msgstr ""
+
+#~ msgid "It is similar to the canbuild
instruction. However, it does not check if a required research has been done."
+#~ msgstr ""
+
+#~ msgid "It helps to prevent errors in programs using the build instruction. Here is an example:"
+#~ msgstr ""
+
+#~ msgid "The category of a building."
+#~ msgstr ""
+
+#~ msgid "It helps to prevent errors in programs using build instruction. Here is an example:"
+#~ msgstr ""
+
+#~ msgid ""
+#~ " if (canbuild(BotFactory))\n"
+#~ " {\n"
+#~ " build(BotFactory);\n"
+#~ " }"
+#~ msgstr ""
+
+#~ msgid "The instruction canbuild(); instructs the bot to build a building of the given category. Currently works for Grabbers, Me and Tech"
+#~ msgstr ""
+
+#~ msgid "The instruction build(); instructs the bot to build a building of the given category. Currently works for Grabbers, Me and Tech"
+#~ msgstr ""
+
+#~ msgid "canbuild, buildingenabled,programming, types and categories."
+#~ msgstr ""
+
+#~ msgid "The instruction build(); instructs the bot to build a building of the given category. Currently works for every bot."
+#~ msgstr ""
+
#~ msgid "Arcus cosine of the value."
#~ msgstr ""
diff --git a/help/cbot/po/de.po b/help/cbot/po/de.po
index 619f77f8..fc5dffb8 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/bloc.txt:48 ../E/bool.txt:4 ../E/break.txt:24 ../E/build.txt:27 ../E/category.txt:107 ../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/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:74 ../E/extern.txt:29 ../E/factory.txt:27 ../E/false.txt:4 ../E/file.txt:16 ../E/fire.txt:30 ../E/flatgrnd.txt:16 ../E/float.txt:24 ../E/for.txt:38 ../E/function.txt:84 ../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:68 ../E/open.txt:18 ../E/openfile.txt:10 ../E/point.txt:35 ../E/pointer.txt:51 ../E/pow.txt:14 ../E/private.txt:17 ../E/public.txt:49 ../E/radar.txt:58 ../E/rand.txt:8 ../E/readln.txt:18 ../E/receive.txt:16 ../E/recycle.txt:12 ../E/retobj.txt:13 ../E/return.txt:29 ../E/search.txt:16 ../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/synchro.txt:23 ../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/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/bloc.txt:48 ../E/bool.txt:4 ../E/break.txt:24 ../E/build.txt:27 ../E/buildingenabled.txt:22 ../E/canbuild.txt:22 ../E/category.txt:107 ../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/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:74 ../E/extern.txt:29 ../E/false.txt:4 ../E/file.txt:16 ../E/fire.txt:30 ../E/flatgrnd.txt:16 ../E/float.txt:24 ../E/for.txt:38 ../E/function.txt:84 ../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:68 ../E/open.txt:18 ../E/openfile.txt:10 ../E/point.txt:35 ../E/pointer.txt:51 ../E/pow.txt:14 ../E/private.txt:17 ../E/public.txt:49 ../E/radar.txt:58 ../E/rand.txt:8 ../E/readln.txt:18 ../E/receive.txt:16 ../E/recycle.txt:12 ../E/retobj.txt:13 ../E/return.txt:29 ../E/search.txt:16 ../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/synchro.txt:23 ../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/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/build.txt:28 ../E/cond.txt:28 ../E/continue.txt:25 ../E/deletef.txt:10 ../E/direct.txt:14 ../E/dist.txt:30 ../E/dist2d.txt:14 ../E/drop.txt:29 ../E/errmode.txt:33 ../E/expr.txt:75 ../E/extern.txt:30 ../E/factory.txt:28 ../E/false.txt:5 ../E/fire.txt:31 ../E/flatgrnd.txt:17 ../E/float.txt:25 ../E/for.txt:39 ../E/function.txt:85 ../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:69 ../E/openfile.txt:11 ../E/point.txt:36 ../E/radar.txt:59 ../E/recycle.txt:13 ../E/retobj.txt:14 ../E/return.txt:30 ../E/search.txt:17 ../E/shield.txt:19 ../E/sizeof.txt:22 ../E/sniff.txt:17 ../E/space.txt:23 ../E/string.txt:33 ../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/cond.txt:28 ../E/continue.txt:25 ../E/deletef.txt:10 ../E/direct.txt:14 ../E/dist.txt:30 ../E/dist2d.txt:14 ../E/drop.txt:29 ../E/errmode.txt:33 ../E/expr.txt:75 ../E/extern.txt:30 ../E/false.txt:5 ../E/fire.txt:31 ../E/flatgrnd.txt:17 ../E/float.txt:25 ../E/for.txt:39 ../E/function.txt:85 ../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:69 ../E/openfile.txt:11 ../E/point.txt:36 ../E/radar.txt:59 ../E/recycle.txt:13 ../E/retobj.txt:14 ../E/return.txt:30 ../E/search.txt:17 ../E/shield.txt:19 ../E/sizeof.txt:22 ../E/sniff.txt:17 ../E/space.txt:23 ../E/string.txt:33 ../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."
@@ -113,7 +113,7 @@ msgid "Angle in degrees of the gun relative to the robot. A positive value orien
msgstr "Gewünschter Winkel der Kanone in Grad relativ zum Roboter. Ein positiver Winkel dreht die Kanone nach oben. Für Shooter und Orgashooter muss der Winkel zwischen -20
und +10
Grad liegen. Für einen Phazershooter liegt der Bereich zwischen -20
und +45
Grad."
#. type: \t; header
-#: ../E/aim.txt:18 ../E/build.txt:22 ../E/drop.txt:23 ../E/factory.txt:22 ../E/fire.txt:25 ../E/goto.txt:29 ../E/grab.txt:23 ../E/move.txt:16 ../E/recycle.txt:7 ../E/sniff.txt:11 ../E/thump.txt:7 ../E/turn.txt:27
+#: ../E/aim.txt:18 ../E/build.txt:22 ../E/drop.txt:23 ../E/fire.txt:25 ../E/goto.txt:29 ../E/grab.txt:23 ../E/move.txt:16 ../E/recycle.txt:7 ../E/sniff.txt:11 ../E/thump.txt:7 ../E/turn.txt:27
#, no-wrap
msgid "Return value: int
"
msgstr "Rückgabe: int
"
@@ -1129,7 +1129,7 @@ msgid "With the instruction distance( , )
you can calculate the dis
msgstr "Mit der Anweisung distance( , )
können Sie die Distanz zwischen zwei Positionen berechnen."
#. type: \b; header
-#: ../E/build.txt:4 ../E/dist.txt:4 ../E/drop.txt:4 ../E/factory.txt:4 ../E/fire.txt:4 ../E/goto.txt:4 ../E/grab.txt:4 ../E/if.txt:4 ../E/motor.txt:4 ../E/move.txt:4 ../E/radar.txt:4 ../E/turn.txt:4 ../E/wait.txt:4 ../E/while.txt:4
+#: ../E/build.txt:4 ../E/buildingenabled.txt:4 ../E/canbuild.txt:4 ../E/dist.txt:4 ../E/drop.txt:4 ../E/fire.txt:4 ../E/goto.txt:4 ../E/grab.txt:4 ../E/if.txt:4 ../E/motor.txt:4 ../E/move.txt:4 ../E/radar.txt:4 ../E/turn.txt:4 ../E/wait.txt:4 ../E/while.txt:4
#, no-wrap
msgid "Basic use"
msgstr "Grundlagen"
@@ -1173,13 +1173,13 @@ msgstr ""
"\tmove(distance(position, item.position) - 40);"
#. type: \b; header, \t; header
-#: ../E/build.txt:13 ../E/dist.txt:17 ../E/drop.txt:11 ../E/errmode.txt:4 ../E/factory.txt:13 ../E/file.txt:10 ../E/fire.txt:9 ../E/float.txt:19 ../E/goto.txt:11 ../E/grab.txt:11 ../E/if.txt:22 ../E/int.txt:13 ../E/motor.txt:14 ../E/move.txt:7 ../E/radar.txt:13 ../E/return.txt:9 ../E/turn.txt:18 ../E/wait.txt:9 ../E/while.txt:19
+#: ../E/build.txt:13 ../E/buildingenabled.txt:12 ../E/canbuild.txt:12 ../E/dist.txt:17 ../E/drop.txt:11 ../E/errmode.txt:4 ../E/file.txt:10 ../E/fire.txt:9 ../E/float.txt:19 ../E/goto.txt:11 ../E/grab.txt:11 ../E/if.txt:22 ../E/int.txt:13 ../E/motor.txt:14 ../E/move.txt:7 ../E/radar.txt:13 ../E/return.txt:9 ../E/turn.txt:18 ../E/wait.txt:9 ../E/while.txt:19
#, no-wrap
msgid "For specialists"
msgstr "Für Spezialisten"
#. type: Plain text
-#: ../E/acos.txt:2 ../E/asin.txt:2 ../E/atan.txt:2 ../E/build.txt:14 ../E/cos.txt:2 ../E/dist.txt:18 ../E/dist2d.txt:2 ../E/do.txt:2 ../E/drop.txt:12 ../E/factory.txt:14 ../E/fire.txt:10 ../E/for.txt:2 ../E/goto.txt:12 ../E/grab.txt:12 ../E/if.txt:23 ../E/jet.txt:2 ../E/message.txt:2 ../E/move.txt:8 ../E/pow.txt:2 ../E/radar.txt:14 ../E/rand.txt:2 ../E/receive.txt:2 ../E/recycle.txt:2 ../E/retobj.txt:2 ../E/search.txt:2 ../E/shield.txt:2 ../E/sin.txt:2 ../E/sniff.txt:2 ../E/sqrt.txt:2 ../E/tan.txt:2 ../E/thump.txt:2 ../E/topo.txt:2 ../E/turn.txt:19 ../E/wait.txt:10
+#: ../E/acos.txt:2 ../E/asin.txt:2 ../E/atan.txt:2 ../E/build.txt:14 ../E/buildingenabled.txt:13 ../E/canbuild.txt:13 ../E/cos.txt:2 ../E/dist.txt:18 ../E/dist2d.txt:2 ../E/do.txt:2 ../E/drop.txt:12 ../E/fire.txt:10 ../E/for.txt:2 ../E/goto.txt:12 ../E/grab.txt:12 ../E/if.txt:23 ../E/jet.txt:2 ../E/message.txt:2 ../E/move.txt:8 ../E/pow.txt:2 ../E/radar.txt:14 ../E/rand.txt:2 ../E/receive.txt:2 ../E/recycle.txt:2 ../E/retobj.txt:2 ../E/search.txt:2 ../E/shield.txt:2 ../E/sin.txt:2 ../E/sniff.txt:2 ../E/sqrt.txt:2 ../E/tan.txt:2 ../E/thump.txt:2 ../E/topo.txt:2 ../E/turn.txt:19 ../E/wait.txt:10
#, no-wrap
msgid "Syntax:"
msgstr "Syntax:"
@@ -6367,31 +6367,31 @@ msgstr ""
"for ( i = 1 ; i <= 4 ; i++ )"
#. type: Source code
-#: ../E/build.txt:15 ../E/factory.txt:15
+#: ../E/build.txt:15
#, no-wrap
msgid "build ( cat );"
msgstr ""
#. type: Plain text
-#: ../E/build.txt:17 ../E/factory.txt:17
+#: ../E/build.txt:17
#, no-wrap
msgid "Tells the robot to build a building using a titanium cube placed on a flat ground nearby."
msgstr ""
#. type: \t; header
-#: ../E/build.txt:19 ../E/factory.txt:19
+#: ../E/build.txt:19 ../E/buildingenabled.txt:16 ../E/canbuild.txt:16
#, no-wrap
msgid "cat: int
"
msgstr ""
#. type: \b; header
-#: ../E/build.txt:1 ../E/factory.txt:1
+#: ../E/build.txt:1
#, no-wrap
msgid "Instruction build
"
msgstr ""
#. type: Plain text
-#: ../E/build.txt:23 ../E/factory.txt:23
+#: ../E/build.txt:23
#, no-wrap
msgid ""
"Normally an error stops the program. You can prevent the program from stopping on errors by using the errmode(0)
instruction. A value different from zero if an error occurred is then returned by build()
.\n"
@@ -6400,19 +6400,13 @@ msgid ""
msgstr ""
#. type: Plain text
-#: ../E/build.txt:2 ../E/factory.txt:2
-#, no-wrap
-msgid "The instruction build(); instructs the bot to build a building of the given category. Currently works for every bot."
-msgstr ""
-
-#. type: Plain text
-#: ../E/build.txt:7 ../E/factory.txt:7
+#: ../E/build.txt:7
#, no-wrap
msgid "Here is an example of a program that looks for the nearest titanium cube, goes to the position and builds a bot factory."
msgstr ""
#. type: Source code
-#: ../E/build.txt:9 ../E/factory.txt:9
+#: ../E/build.txt:9
#, no-wrap
msgid ""
" object item = radar(Titanium);\n"
@@ -6421,13 +6415,7 @@ msgid ""
msgstr ""
#. type: Plain text
-#: ../E/build.txt:20 ../E/factory.txt:20
-#, no-wrap
-msgid "The category of a building."
-msgstr ""
-
-#. type: Plain text
-#: ../E/build.txt:5 ../E/factory.txt:5
+#: ../E/build.txt:5
#, no-wrap
msgid "This command is mostly useful in an attempt to build a fully automatised base, where an astronaut does not need to do anything except starting a program and watching bots working. What is more, it makes beating the game by using only programming a possible task (however, it is a challenge rather for experienced gamers, who beat the whole game at least once)."
msgstr ""
@@ -6684,6 +6672,159 @@ msgstr ""
msgid "Angle in degrees (except multiples of 90)."
msgstr ""
+#. type: Plain text
+#: ../E/build.txt:28
+#, no-wrap
+msgid "canbuild, buildingenabled, programming, types and categories."
+msgstr ""
+
+#. type: \b; header
+#: ../E/canbuild.txt:1
+#, no-wrap
+msgid "Instruction canbuild
"
+msgstr ""
+
+#. type: Source code
+#: ../E/canbuild.txt:14
+#, no-wrap
+msgid "canbuild ( cat );"
+msgstr ""
+
+#. type: \t; header
+#: ../E/buildingenabled.txt:19 ../E/canbuild.txt:19
+#, no-wrap
+msgid "Return value: bool
"
+msgstr ""
+
+#. type: Plain text
+#: ../E/canbuild.txt:20
+#, no-wrap
+msgid "true
if the building can be built, false
otherwise."
+msgstr ""
+
+#. type: Plain text
+#: ../E/canbuild.txt:23
+#, no-wrap
+msgid "build, buildingenabled, programming, types and categories."
+msgstr ""
+
+#. type: Plain text
+#: ../E/build.txt:20 ../E/buildingenabled.txt:17 ../E/canbuild.txt:17
+#, no-wrap
+msgid "Category of a building."
+msgstr ""
+
+#. type: \b; header
+#: ../E/buildingenabled.txt:1
+#, no-wrap
+msgid "Instruction buildingenabled
"
+msgstr ""
+
+#. type: Plain text
+#: ../E/buildingenabled.txt:2
+#, no-wrap
+msgid "The instruction buildingenabled(); lets you know if a building of the given category can be built in the level."
+msgstr ""
+
+#. type: Source code
+#: ../E/buildingenabled.txt:7
+#, no-wrap
+msgid ""
+" if (buildingenabled(BotFactory))\n"
+" {\n"
+" \tbuild(BotFactory);\n"
+" }"
+msgstr ""
+
+#. type: Source code
+#: ../E/buildingenabled.txt:14
+#, no-wrap
+msgid "buildingenabled ( cat );"
+msgstr ""
+
+#. type: Plain text
+#: ../E/buildingenabled.txt:20
+#, no-wrap
+msgid "true
if the building can be built in the level even if required research has not been done, false
otherwise."
+msgstr ""
+
+#. type: Plain text
+#: ../E/buildingenabled.txt:23
+#, no-wrap
+msgid "build, canbuild, ResearchCenter, programming, types and categories."
+msgstr ""
+
+#. type: Source code
+#: ../E/canbuild.txt:7
+#, no-wrap
+msgid ""
+" if (canbuild(BotFactory))\n"
+" {\n"
+" \tbuild(BotFactory);\n"
+" }"
+msgstr ""
+
+#. type: Plain text
+#: ../E/build.txt:2
+#, no-wrap
+msgid "The instruction build(); instructs the bot to build a building of the given category. Currently works for Grabbers, Me and Tech."
+msgstr ""
+
+#. type: Plain text
+#: ../E/buildingenabled.txt:5
+#, no-wrap
+msgid "It is similar to the canbuild(); instruction. However, it does not check if a required research has been done."
+msgstr ""
+
+#. type: Plain text
+#: ../E/canbuild.txt:2
+#, no-wrap
+msgid "The instruction canbuild(); lets you know if Grabbers, Me or Tech can build a building of the given category. "
+msgstr ""
+
+#. type: Plain text
+#: ../E/canbuild.txt:5
+#, no-wrap
+msgid "It helps to prevent errors in programs using the build(); instruction. Here is an example:"
+msgstr ""
+
+#~ msgid "The instruction build(); instructs the bot to build a building of the given category. Currently works for Grabbers, Me and Tech."
+#~ msgstr ""
+
+#~ msgid "The instruction canbuild(); lets you know if Grabbers, Me or Tech can build a building of the given category. "
+#~ msgstr ""
+
+#~ msgid "It is similar to the canbuild
instruction. However, it does not check if a required research has been done."
+#~ msgstr ""
+
+#~ msgid "It helps to prevent errors in programs using the build instruction. Here is an example:"
+#~ msgstr ""
+
+#~ msgid "The category of a building."
+#~ msgstr ""
+
+#~ msgid "It helps to prevent errors in programs using build instruction. Here is an example:"
+#~ msgstr ""
+
+#~ msgid ""
+#~ " if (canbuild(BotFactory))\n"
+#~ " {\n"
+#~ " build(BotFactory);\n"
+#~ " }"
+#~ msgstr ""
+
+#~ msgid "The instruction canbuild(); instructs the bot to build a building of the given category. Currently works for Grabbers, Me and Tech"
+#~ msgstr ""
+
+#~ msgid "The instruction build(); instructs the bot to build a building of the given category. Currently works for Grabbers, Me and Tech"
+#~ msgstr ""
+
+#~ msgid "canbuild, buildingenabled,programming, types and categories."
+#~ msgstr ""
+
+#~ msgid "The instruction build(); instructs the bot to build a building of the given category. Currently works for every bot."
+#~ msgstr ""
+
#~ msgid "Arcus cosine of the value."
#~ msgstr ""
diff --git a/help/cbot/po/fr.po b/help/cbot/po/fr.po
index c9464e61..bd4ed9f7 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/bloc.txt:48 ../E/bool.txt:4 ../E/break.txt:24 ../E/build.txt:27 ../E/category.txt:107 ../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/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:74 ../E/extern.txt:29 ../E/factory.txt:27 ../E/false.txt:4 ../E/file.txt:16 ../E/fire.txt:30 ../E/flatgrnd.txt:16 ../E/float.txt:24 ../E/for.txt:38 ../E/function.txt:84 ../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:68 ../E/open.txt:18 ../E/openfile.txt:10 ../E/point.txt:35 ../E/pointer.txt:51 ../E/pow.txt:14 ../E/private.txt:17 ../E/public.txt:49 ../E/radar.txt:58 ../E/rand.txt:8 ../E/readln.txt:18 ../E/receive.txt:16 ../E/recycle.txt:12 ../E/retobj.txt:13 ../E/return.txt:29 ../E/search.txt:16 ../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/synchro.txt:23 ../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/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/bloc.txt:48 ../E/bool.txt:4 ../E/break.txt:24 ../E/build.txt:27 ../E/buildingenabled.txt:22 ../E/canbuild.txt:22 ../E/category.txt:107 ../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/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:74 ../E/extern.txt:29 ../E/false.txt:4 ../E/file.txt:16 ../E/fire.txt:30 ../E/flatgrnd.txt:16 ../E/float.txt:24 ../E/for.txt:38 ../E/function.txt:84 ../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:68 ../E/open.txt:18 ../E/openfile.txt:10 ../E/point.txt:35 ../E/pointer.txt:51 ../E/pow.txt:14 ../E/private.txt:17 ../E/public.txt:49 ../E/radar.txt:58 ../E/rand.txt:8 ../E/readln.txt:18 ../E/receive.txt:16 ../E/recycle.txt:12 ../E/retobj.txt:13 ../E/return.txt:29 ../E/search.txt:16 ../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/synchro.txt:23 ../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/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/build.txt:28 ../E/cond.txt:28 ../E/continue.txt:25 ../E/deletef.txt:10 ../E/direct.txt:14 ../E/dist.txt:30 ../E/dist2d.txt:14 ../E/drop.txt:29 ../E/errmode.txt:33 ../E/expr.txt:75 ../E/extern.txt:30 ../E/factory.txt:28 ../E/false.txt:5 ../E/fire.txt:31 ../E/flatgrnd.txt:17 ../E/float.txt:25 ../E/for.txt:39 ../E/function.txt:85 ../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:69 ../E/openfile.txt:11 ../E/point.txt:36 ../E/radar.txt:59 ../E/recycle.txt:13 ../E/retobj.txt:14 ../E/return.txt:30 ../E/search.txt:17 ../E/shield.txt:19 ../E/sizeof.txt:22 ../E/sniff.txt:17 ../E/space.txt:23 ../E/string.txt:33 ../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/cond.txt:28 ../E/continue.txt:25 ../E/deletef.txt:10 ../E/direct.txt:14 ../E/dist.txt:30 ../E/dist2d.txt:14 ../E/drop.txt:29 ../E/errmode.txt:33 ../E/expr.txt:75 ../E/extern.txt:30 ../E/false.txt:5 ../E/fire.txt:31 ../E/flatgrnd.txt:17 ../E/float.txt:25 ../E/for.txt:39 ../E/function.txt:85 ../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:69 ../E/openfile.txt:11 ../E/point.txt:36 ../E/radar.txt:59 ../E/recycle.txt:13 ../E/retobj.txt:14 ../E/return.txt:30 ../E/search.txt:17 ../E/shield.txt:19 ../E/sizeof.txt:22 ../E/sniff.txt:17 ../E/space.txt:23 ../E/string.txt:33 ../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."
@@ -113,7 +113,7 @@ msgid "Angle in degrees of the gun relative to the robot. A positive value orien
msgstr "Angle en degrés du canon. Un angle positif oriente le canon vers le haut. Pour les robots shooter, la valeur doit être comprise entre -10
et +20
degrés. Pour les robots orgaShooter, la valeur doit être comprise entre -20
et +20
degrés. Le robot phazer accepte des valeurs comprises entre -20
et 45
degrés."
#. type: \t; header
-#: ../E/aim.txt:18 ../E/build.txt:22 ../E/drop.txt:23 ../E/factory.txt:22 ../E/fire.txt:25 ../E/goto.txt:29 ../E/grab.txt:23 ../E/move.txt:16 ../E/recycle.txt:7 ../E/sniff.txt:11 ../E/thump.txt:7 ../E/turn.txt:27
+#: ../E/aim.txt:18 ../E/build.txt:22 ../E/drop.txt:23 ../E/fire.txt:25 ../E/goto.txt:29 ../E/grab.txt:23 ../E/move.txt:16 ../E/recycle.txt:7 ../E/sniff.txt:11 ../E/thump.txt:7 ../E/turn.txt:27
#, no-wrap
msgid "Return value: int
"
msgstr "Valeur retournée: int
"
@@ -1168,7 +1168,7 @@ msgid "With the instruction distance( , )
you can calculate the dis
msgstr "Avec l'instruction distance( , )
vous pouvez calculer la distance entre deux positions. "
#. type: \b; header
-#: ../E/build.txt:4 ../E/dist.txt:4 ../E/drop.txt:4 ../E/factory.txt:4 ../E/fire.txt:4 ../E/goto.txt:4 ../E/grab.txt:4 ../E/if.txt:4 ../E/motor.txt:4 ../E/move.txt:4 ../E/radar.txt:4 ../E/turn.txt:4 ../E/wait.txt:4 ../E/while.txt:4
+#: ../E/build.txt:4 ../E/buildingenabled.txt:4 ../E/canbuild.txt:4 ../E/dist.txt:4 ../E/drop.txt:4 ../E/fire.txt:4 ../E/goto.txt:4 ../E/grab.txt:4 ../E/if.txt:4 ../E/motor.txt:4 ../E/move.txt:4 ../E/radar.txt:4 ../E/turn.txt:4 ../E/wait.txt:4 ../E/while.txt:4
#, no-wrap
msgid "Basic use"
msgstr "Utilisation courante"
@@ -1212,13 +1212,13 @@ msgstr ""
"\tmove(distance(position, chose.position) - 40);"
#. type: \b; header, \t; header
-#: ../E/build.txt:13 ../E/dist.txt:17 ../E/drop.txt:11 ../E/errmode.txt:4 ../E/factory.txt:13 ../E/file.txt:10 ../E/fire.txt:9 ../E/float.txt:19 ../E/goto.txt:11 ../E/grab.txt:11 ../E/if.txt:22 ../E/int.txt:13 ../E/motor.txt:14 ../E/move.txt:7 ../E/radar.txt:13 ../E/return.txt:9 ../E/turn.txt:18 ../E/wait.txt:9 ../E/while.txt:19
+#: ../E/build.txt:13 ../E/buildingenabled.txt:12 ../E/canbuild.txt:12 ../E/dist.txt:17 ../E/drop.txt:11 ../E/errmode.txt:4 ../E/file.txt:10 ../E/fire.txt:9 ../E/float.txt:19 ../E/goto.txt:11 ../E/grab.txt:11 ../E/if.txt:22 ../E/int.txt:13 ../E/motor.txt:14 ../E/move.txt:7 ../E/radar.txt:13 ../E/return.txt:9 ../E/turn.txt:18 ../E/wait.txt:9 ../E/while.txt:19
#, no-wrap
msgid "For specialists"
msgstr "Pour spécialistes"
#. type: Plain text
-#: ../E/acos.txt:2 ../E/asin.txt:2 ../E/atan.txt:2 ../E/build.txt:14 ../E/cos.txt:2 ../E/dist.txt:18 ../E/dist2d.txt:2 ../E/do.txt:2 ../E/drop.txt:12 ../E/factory.txt:14 ../E/fire.txt:10 ../E/for.txt:2 ../E/goto.txt:12 ../E/grab.txt:12 ../E/if.txt:23 ../E/jet.txt:2 ../E/message.txt:2 ../E/move.txt:8 ../E/pow.txt:2 ../E/radar.txt:14 ../E/rand.txt:2 ../E/receive.txt:2 ../E/recycle.txt:2 ../E/retobj.txt:2 ../E/search.txt:2 ../E/shield.txt:2 ../E/sin.txt:2 ../E/sniff.txt:2 ../E/sqrt.txt:2 ../E/tan.txt:2 ../E/thump.txt:2 ../E/topo.txt:2 ../E/turn.txt:19 ../E/wait.txt:10
+#: ../E/acos.txt:2 ../E/asin.txt:2 ../E/atan.txt:2 ../E/build.txt:14 ../E/buildingenabled.txt:13 ../E/canbuild.txt:13 ../E/cos.txt:2 ../E/dist.txt:18 ../E/dist2d.txt:2 ../E/do.txt:2 ../E/drop.txt:12 ../E/fire.txt:10 ../E/for.txt:2 ../E/goto.txt:12 ../E/grab.txt:12 ../E/if.txt:23 ../E/jet.txt:2 ../E/message.txt:2 ../E/move.txt:8 ../E/pow.txt:2 ../E/radar.txt:14 ../E/rand.txt:2 ../E/receive.txt:2 ../E/recycle.txt:2 ../E/retobj.txt:2 ../E/search.txt:2 ../E/shield.txt:2 ../E/sin.txt:2 ../E/sniff.txt:2 ../E/sqrt.txt:2 ../E/tan.txt:2 ../E/thump.txt:2 ../E/topo.txt:2 ../E/turn.txt:19 ../E/wait.txt:10
#, no-wrap
msgid "Syntax:"
msgstr "Syntaxe:"
@@ -6323,31 +6323,31 @@ msgid ""
msgstr ""
#. type: Source code
-#: ../E/build.txt:15 ../E/factory.txt:15
+#: ../E/build.txt:15
#, no-wrap
msgid "build ( cat );"
msgstr ""
#. type: Plain text
-#: ../E/build.txt:17 ../E/factory.txt:17
+#: ../E/build.txt:17
#, no-wrap
msgid "Tells the robot to build a building using a titanium cube placed on a flat ground nearby."
msgstr ""
#. type: \t; header
-#: ../E/build.txt:19 ../E/factory.txt:19
+#: ../E/build.txt:19 ../E/buildingenabled.txt:16 ../E/canbuild.txt:16
#, no-wrap
msgid "cat: int
"
msgstr ""
#. type: \b; header
-#: ../E/build.txt:1 ../E/factory.txt:1
+#: ../E/build.txt:1
#, no-wrap
msgid "Instruction build
"
msgstr ""
#. type: Plain text
-#: ../E/build.txt:23 ../E/factory.txt:23
+#: ../E/build.txt:23
#, no-wrap
msgid ""
"Normally an error stops the program. You can prevent the program from stopping on errors by using the errmode(0)
instruction. A value different from zero if an error occurred is then returned by build()
.\n"
@@ -6356,19 +6356,13 @@ msgid ""
msgstr ""
#. type: Plain text
-#: ../E/build.txt:2 ../E/factory.txt:2
-#, no-wrap
-msgid "The instruction build(); instructs the bot to build a building of the given category. Currently works for every bot."
-msgstr ""
-
-#. type: Plain text
-#: ../E/build.txt:7 ../E/factory.txt:7
+#: ../E/build.txt:7
#, no-wrap
msgid "Here is an example of a program that looks for the nearest titanium cube, goes to the position and builds a bot factory."
msgstr ""
#. type: Source code
-#: ../E/build.txt:9 ../E/factory.txt:9
+#: ../E/build.txt:9
#, no-wrap
msgid ""
" object item = radar(Titanium);\n"
@@ -6377,13 +6371,7 @@ msgid ""
msgstr ""
#. type: Plain text
-#: ../E/build.txt:20 ../E/factory.txt:20
-#, no-wrap
-msgid "The category of a building."
-msgstr ""
-
-#. type: Plain text
-#: ../E/build.txt:5 ../E/factory.txt:5
+#: ../E/build.txt:5
#, no-wrap
msgid "This command is mostly useful in an attempt to build a fully automatised base, where an astronaut does not need to do anything except starting a program and watching bots working. What is more, it makes beating the game by using only programming a possible task (however, it is a challenge rather for experienced gamers, who beat the whole game at least once)."
msgstr ""
@@ -6640,6 +6628,159 @@ msgstr ""
msgid "Angle in degrees (except multiples of 90)."
msgstr ""
+#. type: Plain text
+#: ../E/build.txt:28
+#, no-wrap
+msgid "canbuild, buildingenabled, programming, types and categories."
+msgstr ""
+
+#. type: \b; header
+#: ../E/canbuild.txt:1
+#, no-wrap
+msgid "Instruction canbuild
"
+msgstr ""
+
+#. type: Source code
+#: ../E/canbuild.txt:14
+#, no-wrap
+msgid "canbuild ( cat );"
+msgstr ""
+
+#. type: \t; header
+#: ../E/buildingenabled.txt:19 ../E/canbuild.txt:19
+#, no-wrap
+msgid "Return value: bool
"
+msgstr ""
+
+#. type: Plain text
+#: ../E/canbuild.txt:20
+#, no-wrap
+msgid "true
if the building can be built, false
otherwise."
+msgstr ""
+
+#. type: Plain text
+#: ../E/canbuild.txt:23
+#, no-wrap
+msgid "build, buildingenabled, programming, types and categories."
+msgstr ""
+
+#. type: Plain text
+#: ../E/build.txt:20 ../E/buildingenabled.txt:17 ../E/canbuild.txt:17
+#, no-wrap
+msgid "Category of a building."
+msgstr ""
+
+#. type: \b; header
+#: ../E/buildingenabled.txt:1
+#, no-wrap
+msgid "Instruction buildingenabled
"
+msgstr ""
+
+#. type: Plain text
+#: ../E/buildingenabled.txt:2
+#, no-wrap
+msgid "The instruction buildingenabled(); lets you know if a building of the given category can be built in the level."
+msgstr ""
+
+#. type: Source code
+#: ../E/buildingenabled.txt:7
+#, no-wrap
+msgid ""
+" if (buildingenabled(BotFactory))\n"
+" {\n"
+" \tbuild(BotFactory);\n"
+" }"
+msgstr ""
+
+#. type: Source code
+#: ../E/buildingenabled.txt:14
+#, no-wrap
+msgid "buildingenabled ( cat );"
+msgstr ""
+
+#. type: Plain text
+#: ../E/buildingenabled.txt:20
+#, no-wrap
+msgid "true
if the building can be built in the level even if required research has not been done, false
otherwise."
+msgstr ""
+
+#. type: Plain text
+#: ../E/buildingenabled.txt:23
+#, no-wrap
+msgid "build, canbuild, ResearchCenter, programming, types and categories."
+msgstr ""
+
+#. type: Source code
+#: ../E/canbuild.txt:7
+#, no-wrap
+msgid ""
+" if (canbuild(BotFactory))\n"
+" {\n"
+" \tbuild(BotFactory);\n"
+" }"
+msgstr ""
+
+#. type: Plain text
+#: ../E/build.txt:2
+#, no-wrap
+msgid "The instruction build(); instructs the bot to build a building of the given category. Currently works for Grabbers, Me and Tech."
+msgstr ""
+
+#. type: Plain text
+#: ../E/buildingenabled.txt:5
+#, no-wrap
+msgid "It is similar to the canbuild(); instruction. However, it does not check if a required research has been done."
+msgstr ""
+
+#. type: Plain text
+#: ../E/canbuild.txt:2
+#, no-wrap
+msgid "The instruction canbuild(); lets you know if Grabbers, Me or Tech can build a building of the given category. "
+msgstr ""
+
+#. type: Plain text
+#: ../E/canbuild.txt:5
+#, no-wrap
+msgid "It helps to prevent errors in programs using the build(); instruction. Here is an example:"
+msgstr ""
+
+#~ msgid "The instruction build(); instructs the bot to build a building of the given category. Currently works for Grabbers, Me and Tech."
+#~ msgstr ""
+
+#~ msgid "The instruction canbuild(); lets you know if Grabbers, Me or Tech can build a building of the given category. "
+#~ msgstr ""
+
+#~ msgid "It is similar to the canbuild
instruction. However, it does not check if a required research has been done."
+#~ msgstr ""
+
+#~ msgid "It helps to prevent errors in programs using the build instruction. Here is an example:"
+#~ msgstr ""
+
+#~ msgid "The category of a building."
+#~ msgstr ""
+
+#~ msgid "It helps to prevent errors in programs using build instruction. Here is an example:"
+#~ msgstr ""
+
+#~ msgid ""
+#~ " if (canbuild(BotFactory))\n"
+#~ " {\n"
+#~ " build(BotFactory);\n"
+#~ " }"
+#~ msgstr ""
+
+#~ msgid "The instruction canbuild(); instructs the bot to build a building of the given category. Currently works for Grabbers, Me and Tech"
+#~ msgstr ""
+
+#~ msgid "The instruction build(); instructs the bot to build a building of the given category. Currently works for Grabbers, Me and Tech"
+#~ msgstr ""
+
+#~ msgid "canbuild, buildingenabled,programming, types and categories."
+#~ msgstr ""
+
+#~ msgid "The instruction build(); instructs the bot to build a building of the given category. Currently works for every bot."
+#~ msgstr ""
+
#~ msgid "Arcus cosine of the value."
#~ msgstr ""
diff --git a/help/cbot/po/pl.po b/help/cbot/po/pl.po
index 79a715d2..3250d76a 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/bloc.txt:48 ../E/bool.txt:4 ../E/break.txt:24 ../E/build.txt:27 ../E/category.txt:107 ../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/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:74 ../E/extern.txt:29 ../E/factory.txt:27 ../E/false.txt:4 ../E/file.txt:16 ../E/fire.txt:30 ../E/flatgrnd.txt:16 ../E/float.txt:24 ../E/for.txt:38 ../E/function.txt:84 ../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:68 ../E/open.txt:18 ../E/openfile.txt:10 ../E/point.txt:35 ../E/pointer.txt:51 ../E/pow.txt:14 ../E/private.txt:17 ../E/public.txt:49 ../E/radar.txt:58 ../E/rand.txt:8 ../E/readln.txt:18 ../E/receive.txt:16 ../E/recycle.txt:12 ../E/retobj.txt:13 ../E/return.txt:29 ../E/search.txt:16 ../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/synchro.txt:23 ../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/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/bloc.txt:48 ../E/bool.txt:4 ../E/break.txt:24 ../E/build.txt:27 ../E/buildingenabled.txt:22 ../E/canbuild.txt:22 ../E/category.txt:107 ../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/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:74 ../E/extern.txt:29 ../E/false.txt:4 ../E/file.txt:16 ../E/fire.txt:30 ../E/flatgrnd.txt:16 ../E/float.txt:24 ../E/for.txt:38 ../E/function.txt:84 ../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:68 ../E/open.txt:18 ../E/openfile.txt:10 ../E/point.txt:35 ../E/pointer.txt:51 ../E/pow.txt:14 ../E/private.txt:17 ../E/public.txt:49 ../E/radar.txt:58 ../E/rand.txt:8 ../E/readln.txt:18 ../E/receive.txt:16 ../E/recycle.txt:12 ../E/retobj.txt:13 ../E/return.txt:29 ../E/search.txt:16 ../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/synchro.txt:23 ../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/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/build.txt:28 ../E/cond.txt:28 ../E/continue.txt:25 ../E/deletef.txt:10 ../E/direct.txt:14 ../E/dist.txt:30 ../E/dist2d.txt:14 ../E/drop.txt:29 ../E/errmode.txt:33 ../E/expr.txt:75 ../E/extern.txt:30 ../E/factory.txt:28 ../E/false.txt:5 ../E/fire.txt:31 ../E/flatgrnd.txt:17 ../E/float.txt:25 ../E/for.txt:39 ../E/function.txt:85 ../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:69 ../E/openfile.txt:11 ../E/point.txt:36 ../E/radar.txt:59 ../E/recycle.txt:13 ../E/retobj.txt:14 ../E/return.txt:30 ../E/search.txt:17 ../E/shield.txt:19 ../E/sizeof.txt:22 ../E/sniff.txt:17 ../E/space.txt:23 ../E/string.txt:33 ../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/cond.txt:28 ../E/continue.txt:25 ../E/deletef.txt:10 ../E/direct.txt:14 ../E/dist.txt:30 ../E/dist2d.txt:14 ../E/drop.txt:29 ../E/errmode.txt:33 ../E/expr.txt:75 ../E/extern.txt:30 ../E/false.txt:5 ../E/fire.txt:31 ../E/flatgrnd.txt:17 ../E/float.txt:25 ../E/for.txt:39 ../E/function.txt:85 ../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:69 ../E/openfile.txt:11 ../E/point.txt:36 ../E/radar.txt:59 ../E/recycle.txt:13 ../E/retobj.txt:14 ../E/return.txt:30 ../E/search.txt:17 ../E/shield.txt:19 ../E/sizeof.txt:22 ../E/sniff.txt:17 ../E/space.txt:23 ../E/string.txt:33 ../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."
@@ -113,7 +113,7 @@ msgid "Angle in degrees of the gun relative to the robot. A positive value orien
msgstr "Kąt w stopniach w odniesieniu do robota. Wartość dodatnia ustawia lufę w górę. Dla dział i dział organicznych ograniczeniem jest przedział od -20
do +20
stopni. Dla działa fazowego kąt ten musi należeć do przedziału od -20
do 45
stopni."
#. type: \t; header
-#: ../E/aim.txt:18 ../E/build.txt:22 ../E/drop.txt:23 ../E/factory.txt:22 ../E/fire.txt:25 ../E/goto.txt:29 ../E/grab.txt:23 ../E/move.txt:16 ../E/recycle.txt:7 ../E/sniff.txt:11 ../E/thump.txt:7 ../E/turn.txt:27
+#: ../E/aim.txt:18 ../E/build.txt:22 ../E/drop.txt:23 ../E/fire.txt:25 ../E/goto.txt:29 ../E/grab.txt:23 ../E/move.txt:16 ../E/recycle.txt:7 ../E/sniff.txt:11 ../E/thump.txt:7 ../E/turn.txt:27
#, no-wrap
msgid "Return value: int
"
msgstr "Typ wyniku: int
"
@@ -1179,7 +1179,7 @@ msgid "With the instruction distance( , )
you can calculate the dis
msgstr "Za pomocą instrukcji distance( , )
można obliczyć odległość między dwoma punktami."
#. type: \b; header
-#: ../E/build.txt:4 ../E/dist.txt:4 ../E/drop.txt:4 ../E/factory.txt:4 ../E/fire.txt:4 ../E/goto.txt:4 ../E/grab.txt:4 ../E/if.txt:4 ../E/motor.txt:4 ../E/move.txt:4 ../E/radar.txt:4 ../E/turn.txt:4 ../E/wait.txt:4 ../E/while.txt:4
+#: ../E/build.txt:4 ../E/buildingenabled.txt:4 ../E/canbuild.txt:4 ../E/dist.txt:4 ../E/drop.txt:4 ../E/fire.txt:4 ../E/goto.txt:4 ../E/grab.txt:4 ../E/if.txt:4 ../E/motor.txt:4 ../E/move.txt:4 ../E/radar.txt:4 ../E/turn.txt:4 ../E/wait.txt:4 ../E/while.txt:4
#, no-wrap
msgid "Basic use"
msgstr "Podstawowe użycie"
@@ -1223,13 +1223,13 @@ msgstr ""
"\tmove(distance(position, item.position) - 40);"
#. type: \b; header, \t; header
-#: ../E/build.txt:13 ../E/dist.txt:17 ../E/drop.txt:11 ../E/errmode.txt:4 ../E/factory.txt:13 ../E/file.txt:10 ../E/fire.txt:9 ../E/float.txt:19 ../E/goto.txt:11 ../E/grab.txt:11 ../E/if.txt:22 ../E/int.txt:13 ../E/motor.txt:14 ../E/move.txt:7 ../E/radar.txt:13 ../E/return.txt:9 ../E/turn.txt:18 ../E/wait.txt:9 ../E/while.txt:19
+#: ../E/build.txt:13 ../E/buildingenabled.txt:12 ../E/canbuild.txt:12 ../E/dist.txt:17 ../E/drop.txt:11 ../E/errmode.txt:4 ../E/file.txt:10 ../E/fire.txt:9 ../E/float.txt:19 ../E/goto.txt:11 ../E/grab.txt:11 ../E/if.txt:22 ../E/int.txt:13 ../E/motor.txt:14 ../E/move.txt:7 ../E/radar.txt:13 ../E/return.txt:9 ../E/turn.txt:18 ../E/wait.txt:9 ../E/while.txt:19
#, no-wrap
msgid "For specialists"
msgstr "Dla specjalistów"
#. type: Plain text
-#: ../E/acos.txt:2 ../E/asin.txt:2 ../E/atan.txt:2 ../E/build.txt:14 ../E/cos.txt:2 ../E/dist.txt:18 ../E/dist2d.txt:2 ../E/do.txt:2 ../E/drop.txt:12 ../E/factory.txt:14 ../E/fire.txt:10 ../E/for.txt:2 ../E/goto.txt:12 ../E/grab.txt:12 ../E/if.txt:23 ../E/jet.txt:2 ../E/message.txt:2 ../E/move.txt:8 ../E/pow.txt:2 ../E/radar.txt:14 ../E/rand.txt:2 ../E/receive.txt:2 ../E/recycle.txt:2 ../E/retobj.txt:2 ../E/search.txt:2 ../E/shield.txt:2 ../E/sin.txt:2 ../E/sniff.txt:2 ../E/sqrt.txt:2 ../E/tan.txt:2 ../E/thump.txt:2 ../E/topo.txt:2 ../E/turn.txt:19 ../E/wait.txt:10
+#: ../E/acos.txt:2 ../E/asin.txt:2 ../E/atan.txt:2 ../E/build.txt:14 ../E/buildingenabled.txt:13 ../E/canbuild.txt:13 ../E/cos.txt:2 ../E/dist.txt:18 ../E/dist2d.txt:2 ../E/do.txt:2 ../E/drop.txt:12 ../E/fire.txt:10 ../E/for.txt:2 ../E/goto.txt:12 ../E/grab.txt:12 ../E/if.txt:23 ../E/jet.txt:2 ../E/message.txt:2 ../E/move.txt:8 ../E/pow.txt:2 ../E/radar.txt:14 ../E/rand.txt:2 ../E/receive.txt:2 ../E/recycle.txt:2 ../E/retobj.txt:2 ../E/search.txt:2 ../E/shield.txt:2 ../E/sin.txt:2 ../E/sniff.txt:2 ../E/sqrt.txt:2 ../E/tan.txt:2 ../E/thump.txt:2 ../E/topo.txt:2 ../E/turn.txt:19 ../E/wait.txt:10
#, no-wrap
msgid "Syntax:"
msgstr "Składnia:"
@@ -6373,31 +6373,31 @@ msgstr ""
"for ( i = 1 ; i <= 4 ; i++ )"
#. type: Source code
-#: ../E/build.txt:15 ../E/factory.txt:15
+#: ../E/build.txt:15
#, no-wrap
msgid "build ( cat );"
msgstr ""
#. type: Plain text
-#: ../E/build.txt:17 ../E/factory.txt:17
+#: ../E/build.txt:17
#, no-wrap
msgid "Tells the robot to build a building using a titanium cube placed on a flat ground nearby."
msgstr ""
#. type: \t; header
-#: ../E/build.txt:19 ../E/factory.txt:19
+#: ../E/build.txt:19 ../E/buildingenabled.txt:16 ../E/canbuild.txt:16
#, no-wrap
msgid "cat: int
"
msgstr ""
#. type: \b; header
-#: ../E/build.txt:1 ../E/factory.txt:1
+#: ../E/build.txt:1
#, no-wrap
msgid "Instruction build
"
msgstr ""
#. type: Plain text
-#: ../E/build.txt:23 ../E/factory.txt:23
+#: ../E/build.txt:23
#, no-wrap
msgid ""
"Normally an error stops the program. You can prevent the program from stopping on errors by using the errmode(0)
instruction. A value different from zero if an error occurred is then returned by build()
.\n"
@@ -6406,19 +6406,13 @@ msgid ""
msgstr ""
#. type: Plain text
-#: ../E/build.txt:2 ../E/factory.txt:2
-#, no-wrap
-msgid "The instruction build(); instructs the bot to build a building of the given category. Currently works for every bot."
-msgstr ""
-
-#. type: Plain text
-#: ../E/build.txt:7 ../E/factory.txt:7
+#: ../E/build.txt:7
#, no-wrap
msgid "Here is an example of a program that looks for the nearest titanium cube, goes to the position and builds a bot factory."
msgstr ""
#. type: Source code
-#: ../E/build.txt:9 ../E/factory.txt:9
+#: ../E/build.txt:9
#, no-wrap
msgid ""
" object item = radar(Titanium);\n"
@@ -6427,13 +6421,7 @@ msgid ""
msgstr ""
#. type: Plain text
-#: ../E/build.txt:20 ../E/factory.txt:20
-#, no-wrap
-msgid "The category of a building."
-msgstr ""
-
-#. type: Plain text
-#: ../E/build.txt:5 ../E/factory.txt:5
+#: ../E/build.txt:5
#, no-wrap
msgid "This command is mostly useful in an attempt to build a fully automatised base, where an astronaut does not need to do anything except starting a program and watching bots working. What is more, it makes beating the game by using only programming a possible task (however, it is a challenge rather for experienced gamers, who beat the whole game at least once)."
msgstr ""
@@ -6690,6 +6678,159 @@ msgstr ""
msgid "Angle in degrees (except multiples of 90)."
msgstr ""
+#. type: Plain text
+#: ../E/build.txt:28
+#, no-wrap
+msgid "canbuild, buildingenabled, programming, types and categories."
+msgstr ""
+
+#. type: \b; header
+#: ../E/canbuild.txt:1
+#, no-wrap
+msgid "Instruction canbuild
"
+msgstr ""
+
+#. type: Source code
+#: ../E/canbuild.txt:14
+#, no-wrap
+msgid "canbuild ( cat );"
+msgstr ""
+
+#. type: \t; header
+#: ../E/buildingenabled.txt:19 ../E/canbuild.txt:19
+#, no-wrap
+msgid "Return value: bool
"
+msgstr ""
+
+#. type: Plain text
+#: ../E/canbuild.txt:20
+#, no-wrap
+msgid "true
if the building can be built, false
otherwise."
+msgstr ""
+
+#. type: Plain text
+#: ../E/canbuild.txt:23
+#, no-wrap
+msgid "build, buildingenabled, programming, types and categories."
+msgstr ""
+
+#. type: Plain text
+#: ../E/build.txt:20 ../E/buildingenabled.txt:17 ../E/canbuild.txt:17
+#, no-wrap
+msgid "Category of a building."
+msgstr ""
+
+#. type: \b; header
+#: ../E/buildingenabled.txt:1
+#, no-wrap
+msgid "Instruction buildingenabled
"
+msgstr ""
+
+#. type: Plain text
+#: ../E/buildingenabled.txt:2
+#, no-wrap
+msgid "The instruction buildingenabled(); lets you know if a building of the given category can be built in the level."
+msgstr ""
+
+#. type: Source code
+#: ../E/buildingenabled.txt:7
+#, no-wrap
+msgid ""
+" if (buildingenabled(BotFactory))\n"
+" {\n"
+" \tbuild(BotFactory);\n"
+" }"
+msgstr ""
+
+#. type: Source code
+#: ../E/buildingenabled.txt:14
+#, no-wrap
+msgid "buildingenabled ( cat );"
+msgstr ""
+
+#. type: Plain text
+#: ../E/buildingenabled.txt:20
+#, no-wrap
+msgid "true
if the building can be built in the level even if required research has not been done, false
otherwise."
+msgstr ""
+
+#. type: Plain text
+#: ../E/buildingenabled.txt:23
+#, no-wrap
+msgid "build, canbuild, ResearchCenter, programming, types and categories."
+msgstr ""
+
+#. type: Source code
+#: ../E/canbuild.txt:7
+#, no-wrap
+msgid ""
+" if (canbuild(BotFactory))\n"
+" {\n"
+" \tbuild(BotFactory);\n"
+" }"
+msgstr ""
+
+#. type: Plain text
+#: ../E/build.txt:2
+#, no-wrap
+msgid "The instruction build(); instructs the bot to build a building of the given category. Currently works for Grabbers, Me and Tech."
+msgstr ""
+
+#. type: Plain text
+#: ../E/buildingenabled.txt:5
+#, no-wrap
+msgid "It is similar to the canbuild(); instruction. However, it does not check if a required research has been done."
+msgstr ""
+
+#. type: Plain text
+#: ../E/canbuild.txt:2
+#, no-wrap
+msgid "The instruction canbuild(); lets you know if Grabbers, Me or Tech can build a building of the given category. "
+msgstr ""
+
+#. type: Plain text
+#: ../E/canbuild.txt:5
+#, no-wrap
+msgid "It helps to prevent errors in programs using the build(); instruction. Here is an example:"
+msgstr ""
+
+#~ msgid "The instruction build(); instructs the bot to build a building of the given category. Currently works for Grabbers, Me and Tech."
+#~ msgstr ""
+
+#~ msgid "The instruction canbuild(); lets you know if Grabbers, Me or Tech can build a building of the given category. "
+#~ msgstr ""
+
+#~ msgid "It is similar to the canbuild
instruction. However, it does not check if a required research has been done."
+#~ msgstr ""
+
+#~ msgid "It helps to prevent errors in programs using the build instruction. Here is an example:"
+#~ msgstr ""
+
+#~ msgid "The category of a building."
+#~ msgstr ""
+
+#~ msgid "It helps to prevent errors in programs using build instruction. Here is an example:"
+#~ msgstr ""
+
+#~ msgid ""
+#~ " if (canbuild(BotFactory))\n"
+#~ " {\n"
+#~ " build(BotFactory);\n"
+#~ " }"
+#~ msgstr ""
+
+#~ msgid "The instruction canbuild(); instructs the bot to build a building of the given category. Currently works for Grabbers, Me and Tech"
+#~ msgstr ""
+
+#~ msgid "The instruction build(); instructs the bot to build a building of the given category. Currently works for Grabbers, Me and Tech"
+#~ msgstr ""
+
+#~ msgid "canbuild, buildingenabled,programming, types and categories."
+#~ msgstr ""
+
+#~ msgid "The instruction build(); instructs the bot to build a building of the given category. Currently works for every bot."
+#~ msgstr ""
+
#~ msgid "Arcus cosine of the value."
#~ msgstr ""
diff --git a/help/cbot/po/ru.po b/help/cbot/po/ru.po
index 4c136c48..7d91a7ba 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/bloc.txt:48 ../E/bool.txt:4 ../E/break.txt:24 ../E/build.txt:27 ../E/category.txt:107 ../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/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:74 ../E/extern.txt:29 ../E/factory.txt:27 ../E/false.txt:4 ../E/file.txt:16 ../E/fire.txt:30 ../E/flatgrnd.txt:16 ../E/float.txt:24 ../E/for.txt:38 ../E/function.txt:84 ../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:68 ../E/open.txt:18 ../E/openfile.txt:10 ../E/point.txt:35 ../E/pointer.txt:51 ../E/pow.txt:14 ../E/private.txt:17 ../E/public.txt:49 ../E/radar.txt:58 ../E/rand.txt:8 ../E/readln.txt:18 ../E/receive.txt:16 ../E/recycle.txt:12 ../E/retobj.txt:13 ../E/return.txt:29 ../E/search.txt:16 ../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/synchro.txt:23 ../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/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/bloc.txt:48 ../E/bool.txt:4 ../E/break.txt:24 ../E/build.txt:27 ../E/buildingenabled.txt:22 ../E/canbuild.txt:22 ../E/category.txt:107 ../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/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:74 ../E/extern.txt:29 ../E/false.txt:4 ../E/file.txt:16 ../E/fire.txt:30 ../E/flatgrnd.txt:16 ../E/float.txt:24 ../E/for.txt:38 ../E/function.txt:84 ../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:68 ../E/open.txt:18 ../E/openfile.txt:10 ../E/point.txt:35 ../E/pointer.txt:51 ../E/pow.txt:14 ../E/private.txt:17 ../E/public.txt:49 ../E/radar.txt:58 ../E/rand.txt:8 ../E/readln.txt:18 ../E/receive.txt:16 ../E/recycle.txt:12 ../E/retobj.txt:13 ../E/return.txt:29 ../E/search.txt:16 ../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/synchro.txt:23 ../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/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/build.txt:28 ../E/cond.txt:28 ../E/continue.txt:25 ../E/deletef.txt:10 ../E/direct.txt:14 ../E/dist.txt:30 ../E/dist2d.txt:14 ../E/drop.txt:29 ../E/errmode.txt:33 ../E/expr.txt:75 ../E/extern.txt:30 ../E/factory.txt:28 ../E/false.txt:5 ../E/fire.txt:31 ../E/flatgrnd.txt:17 ../E/float.txt:25 ../E/for.txt:39 ../E/function.txt:85 ../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:69 ../E/openfile.txt:11 ../E/point.txt:36 ../E/radar.txt:59 ../E/recycle.txt:13 ../E/retobj.txt:14 ../E/return.txt:30 ../E/search.txt:17 ../E/shield.txt:19 ../E/sizeof.txt:22 ../E/sniff.txt:17 ../E/space.txt:23 ../E/string.txt:33 ../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/cond.txt:28 ../E/continue.txt:25 ../E/deletef.txt:10 ../E/direct.txt:14 ../E/dist.txt:30 ../E/dist2d.txt:14 ../E/drop.txt:29 ../E/errmode.txt:33 ../E/expr.txt:75 ../E/extern.txt:30 ../E/false.txt:5 ../E/fire.txt:31 ../E/flatgrnd.txt:17 ../E/float.txt:25 ../E/for.txt:39 ../E/function.txt:85 ../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:69 ../E/openfile.txt:11 ../E/point.txt:36 ../E/radar.txt:59 ../E/recycle.txt:13 ../E/retobj.txt:14 ../E/return.txt:30 ../E/search.txt:17 ../E/shield.txt:19 ../E/sizeof.txt:22 ../E/sniff.txt:17 ../E/space.txt:23 ../E/string.txt:33 ../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 "Программирование, типы и категории."
@@ -113,7 +113,7 @@ msgid "Angle in degrees of the gun relative to the robot. A positive value orien
msgstr "Угол оружия относительно робота, в градусах. Положительное значение ориентирует ружье вперед. Для стрелков и орга-стрелков, угол должен быть от -20
до +20
градусов. Для фазовый стрелок стрелков, угол должен быть в пределах от -20
до 45
градусов."
#. type: \t; header
-#: ../E/aim.txt:18 ../E/build.txt:22 ../E/drop.txt:23 ../E/factory.txt:22 ../E/fire.txt:25 ../E/goto.txt:29 ../E/grab.txt:23 ../E/move.txt:16 ../E/recycle.txt:7 ../E/sniff.txt:11 ../E/thump.txt:7 ../E/turn.txt:27
+#: ../E/aim.txt:18 ../E/build.txt:22 ../E/drop.txt:23 ../E/fire.txt:25 ../E/goto.txt:29 ../E/grab.txt:23 ../E/move.txt:16 ../E/recycle.txt:7 ../E/sniff.txt:11 ../E/thump.txt:7 ../E/turn.txt:27
#, no-wrap
msgid "Return value: int
"
msgstr "Возвращаемое значение: int
"
@@ -1178,7 +1178,7 @@ msgid "With the instruction distance( , )
you can calculate the dis
msgstr "С помощью инструкции distance( , )
вы можете подсчитывать расстояние между двумя позициями."
#. type: \b; header
-#: ../E/build.txt:4 ../E/dist.txt:4 ../E/drop.txt:4 ../E/factory.txt:4 ../E/fire.txt:4 ../E/goto.txt:4 ../E/grab.txt:4 ../E/if.txt:4 ../E/motor.txt:4 ../E/move.txt:4 ../E/radar.txt:4 ../E/turn.txt:4 ../E/wait.txt:4 ../E/while.txt:4
+#: ../E/build.txt:4 ../E/buildingenabled.txt:4 ../E/canbuild.txt:4 ../E/dist.txt:4 ../E/drop.txt:4 ../E/fire.txt:4 ../E/goto.txt:4 ../E/grab.txt:4 ../E/if.txt:4 ../E/motor.txt:4 ../E/move.txt:4 ../E/radar.txt:4 ../E/turn.txt:4 ../E/wait.txt:4 ../E/while.txt:4
#, no-wrap
msgid "Basic use"
msgstr "Основное использование"
@@ -1222,13 +1222,13 @@ msgstr ""
"\tmove(distance(position, item.position) - 40);"
#. type: \b; header, \t; header
-#: ../E/build.txt:13 ../E/dist.txt:17 ../E/drop.txt:11 ../E/errmode.txt:4 ../E/factory.txt:13 ../E/file.txt:10 ../E/fire.txt:9 ../E/float.txt:19 ../E/goto.txt:11 ../E/grab.txt:11 ../E/if.txt:22 ../E/int.txt:13 ../E/motor.txt:14 ../E/move.txt:7 ../E/radar.txt:13 ../E/return.txt:9 ../E/turn.txt:18 ../E/wait.txt:9 ../E/while.txt:19
+#: ../E/build.txt:13 ../E/buildingenabled.txt:12 ../E/canbuild.txt:12 ../E/dist.txt:17 ../E/drop.txt:11 ../E/errmode.txt:4 ../E/file.txt:10 ../E/fire.txt:9 ../E/float.txt:19 ../E/goto.txt:11 ../E/grab.txt:11 ../E/if.txt:22 ../E/int.txt:13 ../E/motor.txt:14 ../E/move.txt:7 ../E/radar.txt:13 ../E/return.txt:9 ../E/turn.txt:18 ../E/wait.txt:9 ../E/while.txt:19
#, no-wrap
msgid "For specialists"
msgstr "Для специалистов"
#. type: Plain text
-#: ../E/acos.txt:2 ../E/asin.txt:2 ../E/atan.txt:2 ../E/build.txt:14 ../E/cos.txt:2 ../E/dist.txt:18 ../E/dist2d.txt:2 ../E/do.txt:2 ../E/drop.txt:12 ../E/factory.txt:14 ../E/fire.txt:10 ../E/for.txt:2 ../E/goto.txt:12 ../E/grab.txt:12 ../E/if.txt:23 ../E/jet.txt:2 ../E/message.txt:2 ../E/move.txt:8 ../E/pow.txt:2 ../E/radar.txt:14 ../E/rand.txt:2 ../E/receive.txt:2 ../E/recycle.txt:2 ../E/retobj.txt:2 ../E/search.txt:2 ../E/shield.txt:2 ../E/sin.txt:2 ../E/sniff.txt:2 ../E/sqrt.txt:2 ../E/tan.txt:2 ../E/thump.txt:2 ../E/topo.txt:2 ../E/turn.txt:19 ../E/wait.txt:10
+#: ../E/acos.txt:2 ../E/asin.txt:2 ../E/atan.txt:2 ../E/build.txt:14 ../E/buildingenabled.txt:13 ../E/canbuild.txt:13 ../E/cos.txt:2 ../E/dist.txt:18 ../E/dist2d.txt:2 ../E/do.txt:2 ../E/drop.txt:12 ../E/fire.txt:10 ../E/for.txt:2 ../E/goto.txt:12 ../E/grab.txt:12 ../E/if.txt:23 ../E/jet.txt:2 ../E/message.txt:2 ../E/move.txt:8 ../E/pow.txt:2 ../E/radar.txt:14 ../E/rand.txt:2 ../E/receive.txt:2 ../E/recycle.txt:2 ../E/retobj.txt:2 ../E/search.txt:2 ../E/shield.txt:2 ../E/sin.txt:2 ../E/sniff.txt:2 ../E/sqrt.txt:2 ../E/tan.txt:2 ../E/thump.txt:2 ../E/topo.txt:2 ../E/turn.txt:19 ../E/wait.txt:10
#, no-wrap
msgid "Syntax:"
msgstr "Синтаксис:"
@@ -6335,31 +6335,31 @@ msgid ""
msgstr ""
#. type: Source code
-#: ../E/build.txt:15 ../E/factory.txt:15
+#: ../E/build.txt:15
#, no-wrap
msgid "build ( cat );"
msgstr ""
#. type: Plain text
-#: ../E/build.txt:17 ../E/factory.txt:17
+#: ../E/build.txt:17
#, no-wrap
msgid "Tells the robot to build a building using a titanium cube placed on a flat ground nearby."
msgstr ""
#. type: \t; header
-#: ../E/build.txt:19 ../E/factory.txt:19
+#: ../E/build.txt:19 ../E/buildingenabled.txt:16 ../E/canbuild.txt:16
#, no-wrap
msgid "cat: int
"
msgstr ""
#. type: \b; header
-#: ../E/build.txt:1 ../E/factory.txt:1
+#: ../E/build.txt:1
#, no-wrap
msgid "Instruction build
"
msgstr ""
#. type: Plain text
-#: ../E/build.txt:23 ../E/factory.txt:23
+#: ../E/build.txt:23
#, no-wrap
msgid ""
"Normally an error stops the program. You can prevent the program from stopping on errors by using the errmode(0)
instruction. A value different from zero if an error occurred is then returned by build()
.\n"
@@ -6368,19 +6368,13 @@ msgid ""
msgstr ""
#. type: Plain text
-#: ../E/build.txt:2 ../E/factory.txt:2
-#, no-wrap
-msgid "The instruction build(); instructs the bot to build a building of the given category. Currently works for every bot."
-msgstr ""
-
-#. type: Plain text
-#: ../E/build.txt:7 ../E/factory.txt:7
+#: ../E/build.txt:7
#, no-wrap
msgid "Here is an example of a program that looks for the nearest titanium cube, goes to the position and builds a bot factory."
msgstr ""
#. type: Source code
-#: ../E/build.txt:9 ../E/factory.txt:9
+#: ../E/build.txt:9
#, no-wrap
msgid ""
" object item = radar(Titanium);\n"
@@ -6389,13 +6383,7 @@ msgid ""
msgstr ""
#. type: Plain text
-#: ../E/build.txt:20 ../E/factory.txt:20
-#, no-wrap
-msgid "The category of a building."
-msgstr ""
-
-#. type: Plain text
-#: ../E/build.txt:5 ../E/factory.txt:5
+#: ../E/build.txt:5
#, no-wrap
msgid "This command is mostly useful in an attempt to build a fully automatised base, where an astronaut does not need to do anything except starting a program and watching bots working. What is more, it makes beating the game by using only programming a possible task (however, it is a challenge rather for experienced gamers, who beat the whole game at least once)."
msgstr ""
@@ -6652,6 +6640,159 @@ msgstr ""
msgid "Angle in degrees (except multiples of 90)."
msgstr ""
+#. type: Plain text
+#: ../E/build.txt:28
+#, no-wrap
+msgid "canbuild, buildingenabled, programming, types and categories."
+msgstr ""
+
+#. type: \b; header
+#: ../E/canbuild.txt:1
+#, no-wrap
+msgid "Instruction canbuild
"
+msgstr ""
+
+#. type: Source code
+#: ../E/canbuild.txt:14
+#, no-wrap
+msgid "canbuild ( cat );"
+msgstr ""
+
+#. type: \t; header
+#: ../E/buildingenabled.txt:19 ../E/canbuild.txt:19
+#, no-wrap
+msgid "Return value: bool
"
+msgstr ""
+
+#. type: Plain text
+#: ../E/canbuild.txt:20
+#, no-wrap
+msgid "true
if the building can be built, false
otherwise."
+msgstr ""
+
+#. type: Plain text
+#: ../E/canbuild.txt:23
+#, no-wrap
+msgid "build, buildingenabled, programming, types and categories."
+msgstr ""
+
+#. type: Plain text
+#: ../E/build.txt:20 ../E/buildingenabled.txt:17 ../E/canbuild.txt:17
+#, no-wrap
+msgid "Category of a building."
+msgstr ""
+
+#. type: \b; header
+#: ../E/buildingenabled.txt:1
+#, no-wrap
+msgid "Instruction buildingenabled
"
+msgstr ""
+
+#. type: Plain text
+#: ../E/buildingenabled.txt:2
+#, no-wrap
+msgid "The instruction buildingenabled(); lets you know if a building of the given category can be built in the level."
+msgstr ""
+
+#. type: Source code
+#: ../E/buildingenabled.txt:7
+#, no-wrap
+msgid ""
+" if (buildingenabled(BotFactory))\n"
+" {\n"
+" \tbuild(BotFactory);\n"
+" }"
+msgstr ""
+
+#. type: Source code
+#: ../E/buildingenabled.txt:14
+#, no-wrap
+msgid "buildingenabled ( cat );"
+msgstr ""
+
+#. type: Plain text
+#: ../E/buildingenabled.txt:20
+#, no-wrap
+msgid "true
if the building can be built in the level even if required research has not been done, false
otherwise."
+msgstr ""
+
+#. type: Plain text
+#: ../E/buildingenabled.txt:23
+#, no-wrap
+msgid "build, canbuild, ResearchCenter, programming, types and categories."
+msgstr ""
+
+#. type: Source code
+#: ../E/canbuild.txt:7
+#, no-wrap
+msgid ""
+" if (canbuild(BotFactory))\n"
+" {\n"
+" \tbuild(BotFactory);\n"
+" }"
+msgstr ""
+
+#. type: Plain text
+#: ../E/build.txt:2
+#, no-wrap
+msgid "The instruction build(); instructs the bot to build a building of the given category. Currently works for Grabbers, Me and Tech."
+msgstr ""
+
+#. type: Plain text
+#: ../E/buildingenabled.txt:5
+#, no-wrap
+msgid "It is similar to the canbuild(); instruction. However, it does not check if a required research has been done."
+msgstr ""
+
+#. type: Plain text
+#: ../E/canbuild.txt:2
+#, no-wrap
+msgid "The instruction canbuild(); lets you know if Grabbers, Me or Tech can build a building of the given category. "
+msgstr ""
+
+#. type: Plain text
+#: ../E/canbuild.txt:5
+#, no-wrap
+msgid "It helps to prevent errors in programs using the build(); instruction. Here is an example:"
+msgstr ""
+
+#~ msgid "The instruction build(); instructs the bot to build a building of the given category. Currently works for Grabbers, Me and Tech."
+#~ msgstr ""
+
+#~ msgid "The instruction canbuild(); lets you know if Grabbers, Me or Tech can build a building of the given category. "
+#~ msgstr ""
+
+#~ msgid "It is similar to the canbuild
instruction. However, it does not check if a required research has been done."
+#~ msgstr ""
+
+#~ msgid "It helps to prevent errors in programs using the build instruction. Here is an example:"
+#~ msgstr ""
+
+#~ msgid "The category of a building."
+#~ msgstr ""
+
+#~ msgid "It helps to prevent errors in programs using build instruction. Here is an example:"
+#~ msgstr ""
+
+#~ msgid ""
+#~ " if (canbuild(BotFactory))\n"
+#~ " {\n"
+#~ " build(BotFactory);\n"
+#~ " }"
+#~ msgstr ""
+
+#~ msgid "The instruction canbuild(); instructs the bot to build a building of the given category. Currently works for Grabbers, Me and Tech"
+#~ msgstr ""
+
+#~ msgid "The instruction build(); instructs the bot to build a building of the given category. Currently works for Grabbers, Me and Tech"
+#~ msgstr ""
+
+#~ msgid "canbuild, buildingenabled,programming, types and categories."
+#~ msgstr ""
+
+#~ msgid "The instruction build(); instructs the bot to build a building of the given category. Currently works for every bot."
+#~ msgstr ""
+
#~ msgid "Arcus cosine of the value."
#~ msgstr ""
diff --git a/help/generic/E/cbot.txt b/help/generic/E/cbot.txt
index d7e89e89..128a6667 100644
--- a/help/generic/E/cbot.txt
+++ b/help/generic/E/cbot.txt
@@ -54,6 +54,8 @@ Constants like \l;categories\u cbot\category; are displayed with a red backgroun
\c;\l;fire\u cbot\fire; \n;Fires the cannon
\c;\l;aim\u cbot\aim; \n;Rotates the cannon
\c;\l;build\u cbot\build; \n;Builds a building
+\c;\l;canbuild\u cbot\canbuild; \n;Checks if a building can be built
+\c;\l;buildingenabled\u cbot\buildingenabled; \n;Checks if a building can be built in the level
\t;Specific instructions for exchange posts:
\c;\l;receive\u cbot\receive; \n;Receives an information
diff --git a/help/generic/po/de.po b/help/generic/po/de.po
index 22376150..a1b4df61 100644
--- a/help/generic/po/de.po
+++ b/help/generic/po/de.po
@@ -195,13 +195,13 @@ msgid "Instructions specific to some bots:"
msgstr "Befehle für bestimmte Roboter:"
#. type: \t; header
-#: ../E/cbot.txt:58
+#: ../E/cbot.txt:60
#, no-wrap
msgid "Specific instructions for exchange posts:"
msgstr "Befehle für den Austausch mit Infoservern:"
#. type: Plain text
-#: ../E/cbot.txt:59
+#: ../E/cbot.txt:61
#, no-wrap
msgid ""
"receive
Receives an information\n"
@@ -215,13 +215,13 @@ msgstr ""
"deleteinfo
Löscht eine Information"
#. type: \t; header
-#: ../E/cbot.txt:64
+#: ../E/cbot.txt:66
#, no-wrap
msgid "Specific instructions for classes:"
msgstr "Befehle für die Verwaltung von Klassen:"
#. type: Plain text
-#: ../E/cbot.txt:65
+#: ../E/cbot.txt:67
#, no-wrap
msgid ""
"class
Class declararion\n"
@@ -241,13 +241,13 @@ msgstr ""
"this
Bezieht sich auf die laufende Instanz"
#. type: \t; header
-#: ../E/cbot.txt:73
+#: ../E/cbot.txt:75
#, no-wrap
msgid "Specific instructions for strings:"
msgstr "Befehle für die Verarbeitung von Strings (Zeichenketten):"
#. type: Plain text
-#: ../E/cbot.txt:74
+#: ../E/cbot.txt:76
#, no-wrap
msgid ""
"strlen
Gets string length\n"
@@ -269,13 +269,13 @@ msgstr ""
"strlower
Umwandlung in Kleinbuchstaben"
#. type: \t; header
-#: ../E/cbot.txt:83
+#: ../E/cbot.txt:85
#, no-wrap
msgid "Specific instructions for files:"
msgstr "Befehle für die Dateiverwaltung:"
#. type: Plain text
-#: ../E/cbot.txt:84
+#: ../E/cbot.txt:86
#, no-wrap
msgid ""
"open
Opens a file\n"
@@ -293,13 +293,13 @@ msgstr ""
"deletefile
Löscht eine Datei"
#. type: \t; header
-#: ../E/cbot.txt:102 ../E/freehelp.txt:4
+#: ../E/cbot.txt:104 ../E/freehelp.txt:4
#, no-wrap
msgid "See also"
msgstr "Siehe auch"
#. type: Plain text
-#: ../E/cbot.txt:103
+#: ../E/cbot.txt:105
#, no-wrap
msgid "Types and categories."
msgstr "Variablentypen und Kategorien."
@@ -590,29 +590,14 @@ msgstr "Die Entwickler und interne Beta-Tester von Original COLOBOT spiel von EP
msgid "Colobot: Gold Edition developers"
msgstr "Die Colobot: Gold Edition Entwickler"
-#. type: Plain text
-#: ../E/cbot.txt:48
-#, no-wrap
-msgid ""
-"grab
Picks up an object\n"
-"drop
Puts down an object\n"
-"sniff
Sounds the subsoil\n"
-"thump
Overturns alien insects\n"
-"recycle
Recycles a derelict bot\n"
-"shield
Extends or withdraws the shield\n"
-"fire
Fires the cannon\n"
-"aim
Rotates the cannon\n"
-"build
Builds a building"
-msgstr ""
-
#. type: \t; header
-#: ../E/cbot.txt:91
+#: ../E/cbot.txt:93
#, no-wrap
msgid "Mathematical functions:"
msgstr ""
#. type: Plain text
-#: ../E/cbot.txt:92
+#: ../E/cbot.txt:94
#, no-wrap
msgid ""
"rand
Returns a random value\n"
@@ -626,6 +611,35 @@ msgid ""
"atan
Returns an arcus tangent"
msgstr ""
+#. type: Plain text
+#: ../E/cbot.txt:48
+#, no-wrap
+msgid ""
+"grab
Picks up an object\n"
+"drop
Puts down an object\n"
+"sniff
Sounds the subsoil\n"
+"thump
Overturns alien insects\n"
+"recycle
Recycles a derelict bot\n"
+"shield
Extends or withdraws the shield\n"
+"fire
Fires the cannon\n"
+"aim
Rotates the cannon\n"
+"build
Builds a building\n"
+"canbuild
Checks if a building can be built\n"
+"buildingenabled
Checks if a building can be built in the level"
+msgstr ""
+
+#~ msgid ""
+#~ "grab
Picks up an object\n"
+#~ "drop
Puts down an object\n"
+#~ "sniff
Sounds the subsoil\n"
+#~ "thump
Overturns alien insects\n"
+#~ "recycle
Recycles a derelict bot\n"
+#~ "shield
Extends or withdraws the shield\n"
+#~ "fire
Fires the cannon\n"
+#~ "aim
Rotates the cannon\n"
+#~ "build
Builds a building"
+#~ msgstr ""
+
#~ msgid ""
#~ "rand
Returns a random value\n"
#~ "pow
Returns a power\n"
diff --git a/help/generic/po/fr.po b/help/generic/po/fr.po
index 7a4ff95e..5cb6dc18 100644
--- a/help/generic/po/fr.po
+++ b/help/generic/po/fr.po
@@ -208,13 +208,13 @@ msgid "Instructions specific to some bots:"
msgstr "Instructions spécifiques à certains robots:"
#. type: \t; header
-#: ../E/cbot.txt:58
+#: ../E/cbot.txt:60
#, no-wrap
msgid "Specific instructions for exchange posts:"
msgstr "Instructions pour les bornes d'infomation:"
#. type: Plain text
-#: ../E/cbot.txt:59
+#: ../E/cbot.txt:61
#, no-wrap
msgid ""
"receive
Receives an information\n"
@@ -228,13 +228,13 @@ msgstr ""
"deleteinfo
Supprime une information"
#. type: \t; header
-#: ../E/cbot.txt:64
+#: ../E/cbot.txt:66
#, no-wrap
msgid "Specific instructions for classes:"
msgstr "Instructions pour les classes:"
#. type: Plain text
-#: ../E/cbot.txt:65
+#: ../E/cbot.txt:67
#, no-wrap
msgid ""
"class
Class declararion\n"
@@ -254,13 +254,13 @@ msgstr ""
"this
Référence l'instance courante"
#. type: \t; header
-#: ../E/cbot.txt:73
+#: ../E/cbot.txt:75
#, no-wrap
msgid "Specific instructions for strings:"
msgstr "Instructions pour les chaînes de caractères:"
#. type: Plain text
-#: ../E/cbot.txt:74
+#: ../E/cbot.txt:76
#, no-wrap
msgid ""
"strlen
Gets string length\n"
@@ -282,13 +282,13 @@ msgstr ""
"strlower
Convertit en minuscules."
#. type: \t; header
-#: ../E/cbot.txt:83
+#: ../E/cbot.txt:85
#, no-wrap
msgid "Specific instructions for files:"
msgstr "Instructions pour les fichiers:"
#. type: Plain text
-#: ../E/cbot.txt:84
+#: ../E/cbot.txt:86
#, no-wrap
msgid ""
"open
Opens a file\n"
@@ -306,13 +306,13 @@ msgstr ""
"deletefile
Supprime un fichier"
#. type: \t; header
-#: ../E/cbot.txt:102 ../E/freehelp.txt:4
+#: ../E/cbot.txt:104 ../E/freehelp.txt:4
#, no-wrap
msgid "See also"
msgstr "Voir aussi"
#. type: Plain text
-#: ../E/cbot.txt:103
+#: ../E/cbot.txt:105
#, no-wrap
msgid "Types and categories."
msgstr "Types et catégories."
@@ -586,29 +586,14 @@ msgstr ""
"Houston vous transmet au nom de l'humanité entière ses félicitations pour le succès de votre mission.\n"
"La Grande Migration va débuter très prochainement ..."
-#. type: Plain text
-#: ../E/cbot.txt:48
-#, no-wrap
-msgid ""
-"grab
Picks up an object\n"
-"drop
Puts down an object\n"
-"sniff
Sounds the subsoil\n"
-"thump
Overturns alien insects\n"
-"recycle
Recycles a derelict bot\n"
-"shield
Extends or withdraws the shield\n"
-"fire
Fires the cannon\n"
-"aim
Rotates the cannon\n"
-"build
Builds a building"
-msgstr ""
-
#. type: \t; header
-#: ../E/cbot.txt:91
+#: ../E/cbot.txt:93
#, no-wrap
msgid "Mathematical functions:"
msgstr ""
#. type: Plain text
-#: ../E/cbot.txt:92
+#: ../E/cbot.txt:94
#, no-wrap
msgid ""
"rand
Returns a random value\n"
@@ -622,6 +607,35 @@ msgid ""
"atan
Returns an arcus tangent"
msgstr ""
+#. type: Plain text
+#: ../E/cbot.txt:48
+#, no-wrap
+msgid ""
+"grab
Picks up an object\n"
+"drop
Puts down an object\n"
+"sniff
Sounds the subsoil\n"
+"thump
Overturns alien insects\n"
+"recycle
Recycles a derelict bot\n"
+"shield
Extends or withdraws the shield\n"
+"fire
Fires the cannon\n"
+"aim
Rotates the cannon\n"
+"build
Builds a building\n"
+"canbuild
Checks if a building can be built\n"
+"buildingenabled
Checks if a building can be built in the level"
+msgstr ""
+
+#~ msgid ""
+#~ "grab
Picks up an object\n"
+#~ "drop
Puts down an object\n"
+#~ "sniff
Sounds the subsoil\n"
+#~ "thump
Overturns alien insects\n"
+#~ "recycle
Recycles a derelict bot\n"
+#~ "shield
Extends or withdraws the shield\n"
+#~ "fire
Fires the cannon\n"
+#~ "aim
Rotates the cannon\n"
+#~ "build
Builds a building"
+#~ msgstr ""
+
#~ msgid ""
#~ "rand
Returns a random value\n"
#~ "pow
Returns a power\n"
diff --git a/help/generic/po/generic.pot b/help/generic/po/generic.pot
index 0d99e753..6d73326a 100644
--- a/help/generic/po/generic.pot
+++ b/help/generic/po/generic.pot
@@ -166,13 +166,13 @@ msgid "Instructions specific to some bots:"
msgstr ""
#. type: \t; header
-#: ../E/cbot.txt:58
+#: ../E/cbot.txt:60
#, no-wrap
msgid "Specific instructions for exchange posts:"
msgstr ""
#. type: Plain text
-#: ../E/cbot.txt:59
+#: ../E/cbot.txt:61
#, no-wrap
msgid ""
"receive
Receives an information\n"
@@ -182,13 +182,13 @@ msgid ""
msgstr ""
#. type: \t; header
-#: ../E/cbot.txt:64
+#: ../E/cbot.txt:66
#, no-wrap
msgid "Specific instructions for classes:"
msgstr ""
#. type: Plain text
-#: ../E/cbot.txt:65
+#: ../E/cbot.txt:67
#, no-wrap
msgid ""
"class
Class declararion\n"
@@ -201,13 +201,13 @@ msgid ""
msgstr ""
#. type: \t; header
-#: ../E/cbot.txt:73
+#: ../E/cbot.txt:75
#, no-wrap
msgid "Specific instructions for strings:"
msgstr ""
#. type: Plain text
-#: ../E/cbot.txt:74
+#: ../E/cbot.txt:76
#, no-wrap
msgid ""
"strlen
Gets string length\n"
@@ -221,13 +221,13 @@ msgid ""
msgstr ""
#. type: \t; header
-#: ../E/cbot.txt:83
+#: ../E/cbot.txt:85
#, no-wrap
msgid "Specific instructions for files:"
msgstr ""
#. type: Plain text
-#: ../E/cbot.txt:84
+#: ../E/cbot.txt:86
#, no-wrap
msgid ""
"open
Opens a file\n"
@@ -239,13 +239,13 @@ msgid ""
msgstr ""
#. type: \t; header
-#: ../E/cbot.txt:102 ../E/freehelp.txt:4
+#: ../E/cbot.txt:104 ../E/freehelp.txt:4
#, no-wrap
msgid "See also"
msgstr ""
#. type: Plain text
-#: ../E/cbot.txt:103
+#: ../E/cbot.txt:105
#, no-wrap
msgid "Types and categories."
msgstr ""
@@ -498,29 +498,14 @@ msgstr ""
msgid "Colobot: Gold Edition developers"
msgstr ""
-#. type: Plain text
-#: ../E/cbot.txt:48
-#, no-wrap
-msgid ""
-"grab
Picks up an object\n"
-"drop
Puts down an object\n"
-"sniff
Sounds the subsoil\n"
-"thump
Overturns alien insects\n"
-"recycle
Recycles a derelict bot\n"
-"shield
Extends or withdraws the shield\n"
-"fire
Fires the cannon\n"
-"aim
Rotates the cannon\n"
-"build
Builds a building"
-msgstr ""
-
#. type: \t; header
-#: ../E/cbot.txt:91
+#: ../E/cbot.txt:93
#, no-wrap
msgid "Mathematical functions:"
msgstr ""
#. type: Plain text
-#: ../E/cbot.txt:92
+#: ../E/cbot.txt:94
#, no-wrap
msgid ""
"rand
Returns a random value\n"
@@ -534,6 +519,35 @@ msgid ""
"atan
Returns an arcus tangent"
msgstr ""
+#. type: Plain text
+#: ../E/cbot.txt:48
+#, no-wrap
+msgid ""
+"grab
Picks up an object\n"
+"drop
Puts down an object\n"
+"sniff
Sounds the subsoil\n"
+"thump
Overturns alien insects\n"
+"recycle
Recycles a derelict bot\n"
+"shield
Extends or withdraws the shield\n"
+"fire
Fires the cannon\n"
+"aim
Rotates the cannon\n"
+"build
Builds a building\n"
+"canbuild
Checks if a building can be built\n"
+"buildingenabled
Checks if a building can be built in the level"
+msgstr ""
+
+#~ msgid ""
+#~ "grab
Picks up an object\n"
+#~ "drop
Puts down an object\n"
+#~ "sniff
Sounds the subsoil\n"
+#~ "thump
Overturns alien insects\n"
+#~ "recycle
Recycles a derelict bot\n"
+#~ "shield
Extends or withdraws the shield\n"
+#~ "fire
Fires the cannon\n"
+#~ "aim
Rotates the cannon\n"
+#~ "build
Builds a building"
+#~ msgstr ""
+
#~ msgid ""
#~ "rand
Returns a random value\n"
#~ "pow
Returns a power\n"
diff --git a/help/generic/po/pl.po b/help/generic/po/pl.po
index 9fd4abd2..0c7edb42 100644
--- a/help/generic/po/pl.po
+++ b/help/generic/po/pl.po
@@ -209,13 +209,13 @@ msgid "Instructions specific to some bots:"
msgstr "Instrukcje specyficzne dla niektórych robotów:"
#. type: \t; header
-#: ../E/cbot.txt:58
+#: ../E/cbot.txt:60
#, no-wrap
msgid "Specific instructions for exchange posts:"
msgstr "Instrukcje specyficzne dla stacji przekaźnikowych:"
#. type: Plain text
-#: ../E/cbot.txt:59
+#: ../E/cbot.txt:61
#, no-wrap
msgid ""
"receive
Receives an information\n"
@@ -229,13 +229,13 @@ msgstr ""
"deleteinfo
Usuwa istniejącą informację"
#. type: \t; header
-#: ../E/cbot.txt:64
+#: ../E/cbot.txt:66
#, no-wrap
msgid "Specific instructions for classes:"
msgstr "Instrukcje specyficzne dla klas:"
#. type: Plain text
-#: ../E/cbot.txt:65
+#: ../E/cbot.txt:67
#, no-wrap
msgid ""
"class
Class declararion\n"
@@ -255,13 +255,13 @@ msgstr ""
"this
Odwołanie do bieżącej instancji"
#. type: \t; header
-#: ../E/cbot.txt:73
+#: ../E/cbot.txt:75
#, no-wrap
msgid "Specific instructions for strings:"
msgstr "Instrukcje specyficzne dla łańcuchów:"
#. type: Plain text
-#: ../E/cbot.txt:74
+#: ../E/cbot.txt:76
#, no-wrap
msgid ""
"strlen
Gets string length\n"
@@ -283,13 +283,13 @@ msgstr ""
"strlower
Zamienia litery na małe"
#. type: \t; header
-#: ../E/cbot.txt:83
+#: ../E/cbot.txt:85
#, no-wrap
msgid "Specific instructions for files:"
msgstr "Instrukcje specyficzne dla plików:"
#. type: Plain text
-#: ../E/cbot.txt:84
+#: ../E/cbot.txt:86
#, no-wrap
msgid ""
"open
Opens a file\n"
@@ -307,13 +307,13 @@ msgstr ""
"deletefile
Usuwa plik"
#. type: \t; header
-#: ../E/cbot.txt:102 ../E/freehelp.txt:4
+#: ../E/cbot.txt:104 ../E/freehelp.txt:4
#, no-wrap
msgid "See also"
msgstr "Zobacz również"
#. type: Plain text
-#: ../E/cbot.txt:103
+#: ../E/cbot.txt:105
#, no-wrap
msgid "Types and categories."
msgstr "Typy i kategorie."
@@ -592,29 +592,14 @@ msgstr ""
"W imieniu całej ludzkości, Centrum Kontroli z Houston gratuluje pomyślnego zakończenia misji.\n"
"Niebawem roczpocznie się Wielka Migracja na Nową Ziemię."
-#. type: Plain text
-#: ../E/cbot.txt:48
-#, no-wrap
-msgid ""
-"grab
Picks up an object\n"
-"drop
Puts down an object\n"
-"sniff
Sounds the subsoil\n"
-"thump
Overturns alien insects\n"
-"recycle
Recycles a derelict bot\n"
-"shield
Extends or withdraws the shield\n"
-"fire
Fires the cannon\n"
-"aim
Rotates the cannon\n"
-"build
Builds a building"
-msgstr ""
-
#. type: \t; header
-#: ../E/cbot.txt:91
+#: ../E/cbot.txt:93
#, no-wrap
msgid "Mathematical functions:"
msgstr ""
#. type: Plain text
-#: ../E/cbot.txt:92
+#: ../E/cbot.txt:94
#, no-wrap
msgid ""
"rand
Returns a random value\n"
@@ -628,6 +613,35 @@ msgid ""
"atan
Returns an arcus tangent"
msgstr ""
+#. type: Plain text
+#: ../E/cbot.txt:48
+#, no-wrap
+msgid ""
+"grab
Picks up an object\n"
+"drop
Puts down an object\n"
+"sniff
Sounds the subsoil\n"
+"thump
Overturns alien insects\n"
+"recycle
Recycles a derelict bot\n"
+"shield
Extends or withdraws the shield\n"
+"fire
Fires the cannon\n"
+"aim
Rotates the cannon\n"
+"build
Builds a building\n"
+"canbuild
Checks if a building can be built\n"
+"buildingenabled
Checks if a building can be built in the level"
+msgstr ""
+
+#~ msgid ""
+#~ "grab
Picks up an object\n"
+#~ "drop
Puts down an object\n"
+#~ "sniff
Sounds the subsoil\n"
+#~ "thump
Overturns alien insects\n"
+#~ "recycle
Recycles a derelict bot\n"
+#~ "shield
Extends or withdraws the shield\n"
+#~ "fire
Fires the cannon\n"
+#~ "aim
Rotates the cannon\n"
+#~ "build
Builds a building"
+#~ msgstr ""
+
#~ msgid ""
#~ "rand
Returns a random value\n"
#~ "pow
Returns a power\n"
diff --git a/help/generic/po/ru.po b/help/generic/po/ru.po
index eee1f080..be810581 100644
--- a/help/generic/po/ru.po
+++ b/help/generic/po/ru.po
@@ -178,13 +178,13 @@ msgid "Instructions specific to some bots:"
msgstr ""
#. type: \t; header
-#: ../E/cbot.txt:58
+#: ../E/cbot.txt:60
#, no-wrap
msgid "Specific instructions for exchange posts:"
msgstr ""
#. type: Plain text
-#: ../E/cbot.txt:59
+#: ../E/cbot.txt:61
#, no-wrap
msgid ""
"receive
Receives an information\n"
@@ -194,13 +194,13 @@ msgid ""
msgstr ""
#. type: \t; header
-#: ../E/cbot.txt:64
+#: ../E/cbot.txt:66
#, no-wrap
msgid "Specific instructions for classes:"
msgstr ""
#. type: Plain text
-#: ../E/cbot.txt:65
+#: ../E/cbot.txt:67
#, no-wrap
msgid ""
"class
Class declararion\n"
@@ -213,13 +213,13 @@ msgid ""
msgstr ""
#. type: \t; header
-#: ../E/cbot.txt:73
+#: ../E/cbot.txt:75
#, no-wrap
msgid "Specific instructions for strings:"
msgstr ""
#. type: Plain text
-#: ../E/cbot.txt:74
+#: ../E/cbot.txt:76
#, no-wrap
msgid ""
"strlen
Gets string length\n"
@@ -233,13 +233,13 @@ msgid ""
msgstr ""
#. type: \t; header
-#: ../E/cbot.txt:83
+#: ../E/cbot.txt:85
#, no-wrap
msgid "Specific instructions for files:"
msgstr ""
#. type: Plain text
-#: ../E/cbot.txt:84
+#: ../E/cbot.txt:86
#, no-wrap
msgid ""
"open
Opens a file\n"
@@ -251,13 +251,13 @@ msgid ""
msgstr ""
#. type: \t; header
-#: ../E/cbot.txt:102 ../E/freehelp.txt:4
+#: ../E/cbot.txt:104 ../E/freehelp.txt:4
#, no-wrap
msgid "See also"
msgstr "См. также"
#. type: Plain text
-#: ../E/cbot.txt:103
+#: ../E/cbot.txt:105
#, no-wrap
msgid "Types and categories."
msgstr ""
@@ -536,29 +536,14 @@ msgstr ""
"Хьюстон поздравляет вас от имени всего человечества с успешным выполнением миссии.\n"
"Большое переселение на Терра Нову начнется очень скоро."
-#. type: Plain text
-#: ../E/cbot.txt:48
-#, no-wrap
-msgid ""
-"grab
Picks up an object\n"
-"drop
Puts down an object\n"
-"sniff
Sounds the subsoil\n"
-"thump
Overturns alien insects\n"
-"recycle
Recycles a derelict bot\n"
-"shield
Extends or withdraws the shield\n"
-"fire
Fires the cannon\n"
-"aim
Rotates the cannon\n"
-"build
Builds a building"
-msgstr ""
-
#. type: \t; header
-#: ../E/cbot.txt:91
+#: ../E/cbot.txt:93
#, no-wrap
msgid "Mathematical functions:"
msgstr ""
#. type: Plain text
-#: ../E/cbot.txt:92
+#: ../E/cbot.txt:94
#, no-wrap
msgid ""
"rand
Returns a random value\n"
@@ -572,6 +557,35 @@ msgid ""
"atan
Returns an arcus tangent"
msgstr ""
+#. type: Plain text
+#: ../E/cbot.txt:48
+#, no-wrap
+msgid ""
+"grab
Picks up an object\n"
+"drop
Puts down an object\n"
+"sniff
Sounds the subsoil\n"
+"thump
Overturns alien insects\n"
+"recycle
Recycles a derelict bot\n"
+"shield
Extends or withdraws the shield\n"
+"fire
Fires the cannon\n"
+"aim
Rotates the cannon\n"
+"build
Builds a building\n"
+"canbuild
Checks if a building can be built\n"
+"buildingenabled
Checks if a building can be built in the level"
+msgstr ""
+
+#~ msgid ""
+#~ "grab
Picks up an object\n"
+#~ "drop
Puts down an object\n"
+#~ "sniff
Sounds the subsoil\n"
+#~ "thump
Overturns alien insects\n"
+#~ "recycle
Recycles a derelict bot\n"
+#~ "shield
Extends or withdraws the shield\n"
+#~ "fire
Fires the cannon\n"
+#~ "aim
Rotates the cannon\n"
+#~ "build
Builds a building"
+#~ msgstr ""
+
#~ msgid ""
#~ "rand
Returns a random value\n"
#~ "pow
Returns a power\n"