PDA

Просмотр полной версии : [Вопрос] Команда



iDiego
25.12.2014, 21:06
Ребят, в общем, столкнулся с такой проблемой, что когда ввожу команду, она отписывается два раза.
Принцип команды вообще должен быть таков:
Администратор No_Name[2] для (Тут как бы должен быть Ник игрока, кому приходит это сообщение, а сообщение приходит всем, ну вы поняли)
Система отправки SendClientMessageToAll
Как так сделать?
Я как бы основу уже сделал
Но я не понимаю как сделать последний вариант
Команда:

CMD:hi(playerid,params[])
{
foreach(Player, i)
{
new str[120];
format(str,120,"Администратор %s[%d] для %s[%d]: Администрация Quotes Project желает Вам приятной игры :)",Name[playerid], i, Name[i],i);
SendClientMessageToAll(0xFF9945FF,str);
PlayerPlaySound(params[0], 1085, 0.0, 0.0, 10.0);
}
return true;
}

$continue$
25.12.2014, 21:48
Вы хотите на весь сервер или для каждого игрока отдельно?

L0ndl3m
25.12.2014, 21:52
Для 1 игрока:


CMD:hi(playerid, params[])
{
extract params -> new player: targetid; else
return SendClientMessage(playerid, -1, "Используйте: /hi [targetid]");

if(!IsPlayerConnected(targetid))
return SendClientMessage(playerid, -1, "Указанного игрока нет на сервере.");

PlayerPlaySound(targetid, 1085, 0.0, 0.0, 10.0);

new
str[120];

format(str, 120, "Администратор %s[%d] для %s[%d]: Администрация Quotes Project желает Вам приятной игры :)", Name[playerid], playerid, Name[targetid], targetid);
return SendClientMessageToAll(0xFF9945FF, str);
}


Для всех:


CMD:hi(playerid, params[])
{
new
str[120];

foreach(Player, i)
{
PlayerPlaySound(i, 1085, 0.0, 0.0, 10.0);

format(str, 120, "Администратор %s[%d] для %s[%d]: Администрация Quotes Project желает Вам приятной игры :)", Name[playerid], playerid, Name[i], i);
SendClientMessage(i, 0xFF9945FF, str);
}
return 1;
}

iDiego
25.12.2014, 21:53
На весь сервер, надо чтобы в конце, т.е. для кого, писало Ник игрока

L0ndl3m
25.12.2014, 22:21
Добавил вторую версию.

- - - Добавлено - - -

Проблема решена. Тема закрыта.