Доступ к архиву

Переход в группу "Пользователь"

300.00 ₽
Одноразовый платёж
Быстрый переход в группу "Пользователи", без надобности написания постов и ожидания.

Покупка дает возможность:
Быть полноправным участником форума
Нормальное копирование кода
Создавать темы
Скачивать файлы
Доступ к архиву Pawno-Info

Акценты для мафий.

Статус
В этой теме нельзя размещать новые ответы.

Frezy J

Умник
Пример в использовании:
Член ЛКН пишет /ita [text] - этот текст видят только члены ЛКН, для других будет "Nick_Name что-то сказал на итальянском языке"
Итак, приступим.

В public OnPlayerCommandText(playerid, cmdtext[]):


PHP:
  if(strcmp(cmd, "/jap", true) == 0 || strcmp(cmd, "/japanese", true) == 0)// /jap - команда
    {
        if(IsPlayerConnected(playerid))
        {
            if(gPlayerLogged[playerid] == 0)
            {
                SendClientMessage(playerid, COLOR_GREY, "Вы не авторизованы!");
                return 1;
            }
            if(PlayerInfo[playerid][pLeader] == 6 || PlayerInfo[playerid][pMember] == 6) // для какой банды\мафии
            {
                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_GRAD2, "Используйте: (/jap)anese [chat]"); //подсказка
                    return 1;
                }
                new Float:x, Float:y, Float:z;
                GetPlayerPos(playerid,x,y,z);
                   for(new i = 0; i < MAX_PLAYERS; i++)
                {
                    if(IsPlayerConnected(i))
                    {
                        if(PlayerToPoint(20, i, x, y, z))
                        {
                            if(PlayerInfo[i][pMember] == 6 || PlayerInfo[i][pLeader] == 6)
                            {
                                format(string, sizeof(string), "%s сказал: [c японским акцентом] %s", sendername, result); // то что будет писать в чате
                                SendClientMessage(i, COLOR_FADE3, string);
                            }
                            else
                            {
                                format(string, sizeof(string), "%s что-то говорит на Японском языке", sendername);
                                SendClientMessage(i, COLOR_PURPLE, string);
                            }
                        }
                    }
                }
            }
            else
            {
                SendClientMessage(playerid, COLOR_GREY, "Вы не знаете японский!"); // если вы не состоите во фракции
            }
        }
        return 1;
    }
if(strcmp(cmd, "/ita", true) == 0 || strcmp(cmd, "/italian", true) == 0) // аналогично таму что указано выше
    {
        if(IsPlayerConnected(playerid))
        {
            if(gPlayerLogged[playerid] == 0)
            {
                SendClientMessage(playerid, COLOR_GREY, "Вы не авторизованы!");
                return 1;
            }
            if(PlayerInfo[playerid][pLeader] == 5 || PlayerInfo[playerid][pMember] == 5)
            {
                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_GRAD2, "Используйте: (/ita)lian [chat]");
                    return 1;
                }
                new Float:x, Float:y, Float:z;
                GetPlayerPos(playerid,x,y,z);
                   for(new i = 0; i < MAX_PLAYERS; i++)
                {
                    if(IsPlayerConnected(i))
                    {
                        if(PlayerToPoint(20, i, x, y, z))
                        {
                            if(PlayerInfo[i][pMember] == 5 || PlayerInfo[i][pLeader] == 5)
                            {
                                format(string, sizeof(string), "%s говорит: [с итальянским акцентом] %s", sendername, result);
                                SendClientMessage(i, COLOR_FADE3, string);
                            }
                            else
                            {
                                format(string, sizeof(string), "%s что-то говорит на Итальянском языке", sendername);
                                SendClientMessage(i, COLOR_PURPLE, string);
                            }
                        }
                    }
                }
            }
            else
            {
                SendClientMessage(playerid, COLOR_GREY, "Вы не знаете итальянский!");
            }
        }
        return 1;
    }
 if(strcmp(cmd, "/rus", true) == 0 || strcmp(cmd, "/russian", true) == 0)
    {
        if(IsPlayerConnected(playerid))
        {
            if(gPlayerLogged[playerid] == 0)
            {
                SendClientMessage(playerid, COLOR_GREY, "Вы не авторизованы!");
                return 1;
            }
            if(PlayerInfo[playerid][pLeader] == 14 || PlayerInfo[playerid][pMember] == 14)
            {
                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_GRAD2, "Используйте: (/rus)sian [chat]");
                    return 1;
                }
                new Float:x, Float:y, Float:z;
                GetPlayerPos(playerid,x,y,z);
                   for(new i = 0; i < MAX_PLAYERS; i++)
                {
                    if(IsPlayerConnected(i))
                    {
                        if(PlayerToPoint(20, i, x, y, z))
                        {
                            if(PlayerInfo[i][pMember] == 14 || PlayerInfo[i][pLeader] == 14)
                            {
                                format(string, sizeof(string), "%s говорит: [по русски] %s", sendername, result);
                                SendClientMessage(i, COLOR_FADE3, string);
                            }
                            else
                            {
                                format(string, sizeof(string), "%s что-то говорит на Русском языке", sendername);
                                SendClientMessage(i, COLOR_PURPLE, string);
                            }
                        }
                    }
                }
            }
            else
            {
                SendClientMessage(playerid, COLOR_GREY, "Вы не знаете русский!");
            }
        }
        return 1;
    }
Кто автор не знаю, вырезал давно. Если было - извиняюсь. )
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу