Вопросы

Новичок
c:jail;
{
    if(pData[playerid][pAdmin] < 2 || !GetPVarInt(playerid,"AdminLogin")) return 1;
    if(sscanf(params,"u[100]ds[100]",params[0],params[1],params[2])) return SCM(playerid,0xFFa500AA"Используйте: /jail [id игрока\nick игрока] [минуты] [причина]");
    new string[128], query[128];
    if(!IsPlayerConnected(params[0])) return SCM(playerid,CR,"Игрок не найден");
    if(params[1] < 1 || params[1] > 300return SendClientMessage(playerid,CR,"Введите от 1 до 300 минут");
    if(pData[params[0]][pJail] == 1return SendClientMessage(playerid,CR,"Игрок уже находится в тюрьме");
    if(pData[params[0]][pAdmin]) return SendClientMessage(playerid,COLOR_WHITE, "Вы не можете посадить администратора в тюрьму!");
    if(AntiBan[playerid] >= 60)
    {
        new string11[128];
        format(string11,sizeof(string11),"[А] %s[%d] подозревается во взломе, проверьте его и авторизуйте [/aunban]", pData[playerid][pNickname], playerid);
        StAdminChat(CGRAY, string11);
        SendClientMessage(playerid,CR,"В данный момент Вы не можете использовать эту команду. Обратитесь к Основателю.");
        AntiBan[playerid] = 9999;
        return false;
    }
    AntiBan[playerid] += 20;
    ResetWeapon(params[0]);
    new camid = RandomEx(1,3);
    SetPlayerVirtualWorld(params[0], camid);
    SetPlayerInterior(params[0],15);
    TogglePlayerControllable(params[0],0);
    SetPlayerPosEx(params[0],149.6038,1245.5891,-71.3464);
    SetCameraBehindPlayer(params[0]);
    pData[params[0]][pJail] = params[1]*60;
    pData[params[0]][pPrison] = 1;
    SetPlayerSkin(params[0], 42);
    format(string, sizeof(string), "Администратор %s посадил вас в тюрьму на %d минут. Причина: %s", pData[playerid][pNickname], params[1], params[2]);
    SendClientMessage(params[0], -1, string);
    SCM(params[0], CR, "Чтобы узнать сколько Вам осталось сидеть, используйте: {FFFFFF}/jailtime");
    format(string,sizeof(string),"Администратор %s посадил игрока %s в тюрьму на %d минут. Причина: %s",pData[playerid][pNickname],pData[params[0]][pNickname],params[1],params[2]);
    AdminChat(COLOR_LIGHTRED,string);
    format(query,sizeof(query),"UPDATE `accounts` SET `jail` = '%d', `prison` = '1' WHERE `nickname` = '%s'",pData[playerid][pJail],pData[playerid][pNickname]);
    mysql_query(MySQLGo, query);
    FreezePlayer(params[0], 1);
    gAdmin[playerid][ADMIN_JAIL] += 1;
    format(query,sizeof(query),"UPDATE `admin` SET `jail` = '%d' WHERE `Name` = '%s'", gAdmin[playerid][ADMIN_JAIL], pData[playerid][pNickname]);
    mysql_query(MySQLGo, query);
    return 1;
}

Помогите сделать команду /offjail , я уже много методов перепробовал не один не сохраняет в базу. Помогите пожалуйста)!

Поделиться сообщением


Ссылка на сообщение

2 ответа на этот вопрос

  • 0
Завсегдатый

@maksimov maksim  попробуйте так

c:offjail;
{
    if(pData[playerid][pAdmin] < 2 || !GetPVarInt(playerid,"AdminLogin")) return 1;
    if(sscanf(params,"s[100]ds[100]",params[0],params[1],params[2])) return SCM(playerid,0xFFa500AA"Используйте: /offjail [nick игрока] [минуты] [причина]");
    new string[128], query[128];
    if(params[1] < 1 || params[1] > 300return SendClientMessage(playerid,CR,"Введите от 1 до 300 минут");
    format(query,sizeof(query),"SELECT `%s`,`jail` FROM `accounts` WHERE `nickname` = '%s'",
        "admin"// столбец с уровнем админки игрока, заменить на свой
        params[0]);
    new Cache:cGetPlData = mysql_query(MySQLGo, query);
    if(!cache_get_row_count(MySQLGo)) return SCM(playerid,CR,"Игрок не найден");
    if(cache_get_field_content_int(0"jail", MySQLGo) == 1return SendClientMessage(playerid,CR,"Игрок уже находится в тюрьме");
    if(cache_get_field_content_int(0"admin"/*заменить на своё*/, MySQLGo)) return SendClientMessage(playerid,COLOR_WHITE, "Вы не можете посадить администратора в тюрьму!");
    if(AntiBan[playerid] >= 60)
    {
        new string11[128];
        format(string11,sizeof(string11),"[А] %s[%d] подозревается во взломе, проверьте его и авторизуйте [/aunban]", pData[playerid][pNickname], playerid);
        StAdminChat(CGRAY, string11);
        SendClientMessage(playerid,CR,"В данный момент Вы не можете использовать эту команду. Обратитесь к Основателю.");
        AntiBan[playerid] = 9999;
        return false;
    }
    AntiBan[playerid] += 20;
    format(string,sizeof(string),"Администратор %s посадил игрока %s в тюрьму на %d минут. Причина: %s",pData[playerid][pNickname],params[0],params[1],params[2]);
    AdminChat(COLOR_LIGHTRED,string);
    format(query,sizeof(query),"UPDATE `accounts` SET `jail` = '%d', `prison` = '1' WHERE `nickname` = '%s'",1,params[0]);
    mysql_query(MySQLGo, query);
    gAdmin[playerid][ADMIN_JAIL] += 1;
    format(query,sizeof(query),"UPDATE `admin` SET `jail` = '%d' WHERE `Name` = '%s'", gAdmin[playerid][ADMIN_JAIL], pData[playerid][pNickname]);
    mysql_query(MySQLGo, query);
    return 1;
}

 

Поделиться сообщением


Ссылка на сообщение
Эта тема закрыта для публикации ответов.
  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

  • Похожий контент

    • От xDetik
      Приветствую.
      Сделал небольшой островок на некотором расстоянии от карты Сан-Андреса, хотел поставить там пикап, добавил пикап в мод, и после того как приехал на остров, пикап не видно. Но если на этом же пикапе поменять координаты на те, которые находятся на карте Сан-Андреса, то он становится виден. В чем может быть проблема?