PDA

Просмотр полной версии : [Вопрос] Сохранение аккаунта [RLS]



~N1cE
28.06.2014, 18:10
Доброго времени суток, возникла проблемка...
Не могу написать нормальную, рабочую команду для репортеров (/news)
На данный момент сделал только основу. Получается что-то типо:
News: Nick_Name [ID 0]: .
То есть, не отображается набираемый текст + перед текстом постоянно "используйте /news [текст]".
Если кто-нибудь поможет, буду благодарен)

if(strcmp(cmd, "/news", true) == 0)
{
new pname[24];
GetPlayerName(playerid,pname,24);
new length = strcmp(cmd, "/news");
new offset = idx;
new result[64];
while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
{
result[idx - offset] = cmdtext[idx];
idx++;
}
result[idx - offset] = EOS;

if(Player[playerid][pMember] == 8 || Player[playerid][pLeader] == 8)
{
if(!IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, COLOR_GREY, "Вы не в авто");
if(GetPlayerVehicleID(playerid) < ReporterCar[0] && GetPlayerVehicleID(playerid) > ReporterCar[1]) return SendClientMessage(playerid, COLOR_GREY, "Вы не в вертолете");
SendClientMessage(playerid, COLOR_NEWS, "Используйте: /news [текст]");
format(string, sizeof(string), "•News %s[%d]:%s.",pname, playerid,result);
OOCNews(TEAM_GROVE_COLOR,string);
return true;
}
else return SendClientMessage(playerid,COLOR_GREY,"Вы не репортер");
}

Osetin
28.06.2014, 18:12
А как название темы относится к самой теме?

DeimoS
28.06.2014, 18:15
Хоть вы и упоролись чем-то перед написанием названия для темы, отвечу

if(!strcmp(cmdtext, "/news", true, 5))
{
if(Player[playerid][pMember] != 8 && Player[playerid][pLeader] != 8) return SendClientMessage(playerid,COLOR_GREY,"Вы не репортер");
if(!strlen(cmdtext[5])) return SendClientMessage(playerid, COLOR_NEWS, "Используйте: /news [текст]");
new vehicle_id = GetPlayerVehicleID(playerid);
if(!vehicle_id) return SendClientMessage(playerid, COLOR_GREY, "Вы не в авто");
if(ReporterCar[0] < vehicle_id < ReporterCar[1]) return SendClientMessage(playerid, COLOR_GREY, "Вы не в вертолете");
new player_name[MAX_PLAYER_NAME];
GetPlayerName(playerid, player_name, MAX_PLAYER_NAME);
format(string, sizeof(string), "•News %s[%d]:%s.", player_name, playerid, cmdtext[6]);
OOCNews(TEAM_GROVE_COLOR,string);
return true;
}

~N1cE
28.06.2014, 18:35
Воу-воу, извиняюсь, писал вообще другое, но пока писал тему - нашел ошибку и все нормально теперь)

underwoker
28.06.2014, 19:45
В лс отпиши что куришь. Попробывать хочу.