RU/Resource:Runcode: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 5: Line 5:
Для выполнения кода могут быть использованы три команды:
Для выполнения кода могут быть использованы три команды:


'''/run <lua code>''': executes a chunk of server-side code and notifies all players.
'''/run <lua code>''': выполняет кусок серверного кода и информирует всех игроков.


'''/srun <lua code>''': executes a chunk of server-side code silently (only outputs the command's results to the player who input it).
'''/srun <lua code>''': выполняет кусок серверного кода тихо (только выводит результат команды для игрока, который ввел команду).


'''/crun <lua code>''': executes a chunk of client-side code for the player who input the command.
'''/crun <lua code>''': выполняет кусок клиентского кода для игрока, который ввел команду.


Please note that, more often that not, we want to get the value returned by our code, and due to this, the value of the input expression is automatically returned by runcode for all of these commands (this is, "return " is appended to the beginning of the code). While this saves constant typing of the "return" expression, it will produce an error when the code consists in a language construct that does not yield a value (e.g an assignment or a for statement). For these cases, you can input the following statement:
Please note that, more often that not, we want to get the value returned by our code, and due to this, the value of the input expression is automatically returned by runcode for all of these commands (this is, "return " is appended to the beginning of the code). While this saves constant typing of the "return" expression, it will produce an error when the code consists in a language construct that does not yield a value (e.g an assignment or a for statement). For these cases, you can input the following statement:
Line 16: Line 16:
</syntaxhighlight>
</syntaxhighlight>


This will load your code chunk as a new function and calls it, so returning its value is possible.
Это позволит загрузить кусок вашего кода как новую функцию и выполнить ее, так что возможно вернуть результат.


==Web interface==
==Веб-интерфейс==
A http interface page is also provided where admins can run server side snippets in a more convenient way. It uses [http://codepress.org CodePress] for syntax highlighting, including all available Lua and MTA functions.
HTTP интерфейс также дает возможность админам запускать куски кода серверно, что более удобно. Он использует [http://codepress.org CodePress] для подсветки синтаксиса, включая все используемые Lua и MTA функции.


[[en:Resource:Runcode]]
[[en:Resource:Runcode]]

Revision as of 11:54, 25 April 2009

runcode - ресурс, который позволяет динамически выполнять код Lua, введенны из игровой консоли, серверной консоли или через веб-интерфейс. Эту возможность следует ограничить для серверных админов.

Console commands

Для выполнения кода могут быть использованы три команды:

/run <lua code>: выполняет кусок серверного кода и информирует всех игроков.

/srun <lua code>: выполняет кусок серверного кода тихо (только выводит результат команды для игрока, который ввел команду).

/crun <lua code>: выполняет кусок клиентского кода для игрока, который ввел команду.

Please note that, more often that not, we want to get the value returned by our code, and due to this, the value of the input expression is automatically returned by runcode for all of these commands (this is, "return " is appended to the beginning of the code). While this saves constant typing of the "return" expression, it will produce an error when the code consists in a language construct that does not yield a value (e.g an assignment or a for statement). For these cases, you can input the following statement:

loadstring("your code here as a string")()

Это позволит загрузить кусок вашего кода как новую функцию и выполнить ее, так что возможно вернуть результат.

Веб-интерфейс

HTTP интерфейс также дает возможность админам запускать куски кода серверно, что более удобно. Он использует CodePress для подсветки синтаксиса, включая все используемые Lua и MTA функции.