PDA

Просмотр полной версии : [CMD] /ao Общий чат администрации



Rais
04.11.2013, 16:08
Здравствуйте ув. пользователи Pro-Pawn! Сделал команду /ao для общего чата администрации. Сообщения будут видеть все.



if(strcmp(cmd, "/aooc", true) == 0 || strcmp(cmd, "/ao", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(gPlayerLogged[playerid] == 0)
{
SendClientMessage(playerid, COLOR_GREY, "Вы не вошли");
return 1;
}
if (PlayerInfo[playerid][pAdmin] < 1)
{
SendClientMessage(playerid, COLOR_GRAD2, "Ты не админ");
return 1;
}
GetPlayerName(playerid, sendername, sizeof(sendername));
new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= ' '))
{
idx++;
}
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(!strlen(result))
{
SendClientMessage(playerid, COLOR_RED, "Используй: (/ao)oc [?????]");
return 1;
}
new arank[64];
if(PlayerInfo[playerid][pAdmin] == 1) { arank = "Стажер"; }
else if(PlayerInfo[playerid][pAdmin] == 2) { arank = "Мл. Модератор"; }
else if(PlayerInfo[playerid][pAdmin] == 3) { arank = "Модератор"; }
else if(PlayerInfo[playerid][pAdmin] == 4) { arank = "Старший Модератор"; }
else if(PlayerInfo[playerid][pAdmin] == 5) { arank = "Младший администратор"; }
else if(PlayerInfo[playerid][pAdmin] == 6) { arank = "Администратор"; }
else if(PlayerInfo[playerid][pAdmin] == 7) { arank = "Администратор 1 lvl"; }
else if(PlayerInfo[playerid][pAdmin] == 8) { arank = "Администратор 2 lvl"; }
else if(PlayerInfo[playerid][pAdmin] == 9) { arank = "Игровой администратор"; }
else if(PlayerInfo[playerid][pAdmin] == 10) { arank = "Зам. Гл. админов"; }
else if(PlayerInfo[playerid][pAdmin] == 11) { arank = "Главный администратор"; }
else if(PlayerInfo[playerid][pAdmin] == 12) { arank = "Разработчик"; }
else if(PlayerInfo[playerid][pAdmin] == 13) { arank = "Основатель проекта"; }
else { arank = "Ìëàäøèé Ìîäåðàòîð"; }
format(string, sizeof(string), "[Îáùèé ÷àò] %s %s[ID:%d]: %s", arank, sendername, playerid, result);
OOCOff(0x9EC73DAA,string);
printf("%s", string);
}
return 1;
}

Еще и ранги хорошо оформленны

Kot™
04.11.2013, 16:14
А почему нельзя использовать просто /a чат?

Rais
04.11.2013, 16:18
/a чат видят только админы.
/ao чат видят все, допустим я пишу вот так: /ao Внимание сейчас МП кто хочет /report +, то это увидят все.

Kot™
04.11.2013, 16:21
Ну значит можно /aad использовать

Rais
04.11.2013, 16:32
/aad пишет так "Администратор: Текст" А у меня пишет так по рангам "[Общий чат][Ранг админа][Ник]:Текст"

Roo
04.11.2013, 17:48
Такая команда ради ранга и ника?

Rais
04.11.2013, 17:52
А что тут такого? Ну и красиво вообще-то.

Kot™
04.11.2013, 17:55
/aad пишет так "Администратор: Текст" А у меня пишет так по рангам "[Общий чат][Ранг админа][Ник]:Текст"

Так же можно было модифицировать команду /aad

Roo
04.11.2013, 17:57
Команда не о чем....

Rais
04.11.2013, 18:01
Ниочем. Ты хотя-бы такой сделай...

L0ndl3m
04.11.2013, 22:15
Немного оптимизации:

Ко всем new:




new const RankNames[][] = {
"Стажёр", "Мл. Модератор", "Модератор", "Старший Модератор", "Младший администратор", "Администратор", "Администратор 1 lvl", "Администратор 2 lvl", "Игровой администратор", "Зам. гл. админов", "Главный администратор", "Разработчик", "Основатель проекта"
};



В public OnPlayerCommandText:




if(!strcmp(cmdtext, "/ao", true, 3) && PlayerInfo[playerid][pAdmin] > 0)
{
if(!Logged[playerid])
{
SendClientMessage(playerid, 0xFF0000FF, "Вы не вошли.");
return true;
}
if(!cmdtext[3])
{
SendClientMessage(playerid, 0xFF0000FF, "Используйте: /ao [текст]");
return true;
}
new string[145], sendername[MAX_PLAYER_NAME];
GetPlayerName(playerid, sendername, MAX_PLAYER_NAME);
format(string, 145, "[Общий чат] %s %s [ID:%d]: %s", RankNames[PlayerInfo[playerid][pAdmin] - 1], sendername, playerid, cmdtext[4]);
OOCOff(0x9EC73DAA, string);
printf(string);
return true;
}


Автор: Londlem

Salvacore
04.11.2013, 22:28
Отлично!

#JetLee
06.11.2013, 19:52
Зачем лишний раз нагружать мод? Есть же команда /a, чем они отличаются?

Accord
12.12.2013, 20:38
Зачем лишний раз нагружать мод? Есть же команда /a, чем они отличаются?

Это общий чат, ибо его видят все. К примеру нужны участники для МП, пиши /ao Ув. Игроки, сейчас пройдет мероприятие.. и т.д..

TimoXa32
12.12.2013, 22:07
Норм команда +