register_clcmd("say /test", "say");Да, вы можете обойтись без "туземцев", эмулируя отправку клиентом команды на сервер.
You don't understand me. I want the server to send a command to the client. This method only works for sending commands to the serverKiperek, useamxclient_cmd
Не совем-то понятно, ограничть количество использования этой команды игроку?client_cmd(id, "say /menu") заблокирован
+register_clcmd("menu", "cmdMenu")
register_clcmd("say /menu", "cmdMenu")
....
public cmdxxx(id) {
-client_cmd(id, "say /menu")
+client_cmd(id, "menu")
+return PLUGIN_HANDLED
}
public cmdMenu(id) {
sendCmd(id, "say /menu");
return PLUGIN_HANDLED;
}
sendCmd(const id, const cmd[]) {
#define MAX_ARG_LENGTH 64
new args[3][MAX_ARG_LENGTH];
for (new i = 0, pos = 0; i < 3; i++) {
arrayset(args[i], 0, MAX_ARG_LENGTH);
if (pos >= 0) {
pos = argparse(cmd, pos, args[i], MAX_ARG_LENGTH - 1);
}
}
amxclient_cmd(id, args[0], args[1], args[2]);
}
[UŻYTKOWNIK=6164] Kiperek[/USER], 1) Какую цель вы преследуете? Почему требуется именно отправка клиенту, а не эмуляция (amxclient_cmd), чтобы сервер думал, что клиент выполнил команду. 2) Какую команду конкретно вы хотите отправить? Приведите пример.