Question

Screenshot_14.png.6e80b6cbaa6e252589c7b824110a4e5a.png

что может быть проблема кода в игре появляется смс что администратор ххх кикнул игрока ххх по такой такой причине, но всего лишь только текст появляется а игрок всё ещё в игре. В коде при компилирвоание не дает ошибки, получается команд не работает только появляется текст и всё

Share this post


Link to post

8 answers to this question

  • 0

проверял, что возвращает функция Kick() и что хранится в id?

Share this post


Link to post
  • 0
forward Kicker(playerid);

CMD:kick(playerid, params[])
{
    if(p_info[playerid][pAdmin] < 2return 1;
    if(sscanf(params, "us[32]", params[0], params[1])) return SendClientMessage(playerid,col_gray,"/kick [ID èãðîêà] [Ïðè÷èíà]");
    if(!IsPlayerConnected(params[0])) return SendClientMessage(playerid,col_gray,"Âû óêàçàëè íåâåðíûé ID");
    if(p_info[playerid][pAdmin] > p_info[playerid][pAdmin]) return SendClientMessage(playerid,col_gray,"Âû íå ìîæåòå êèêíóòü àäìèíèñòðàòîðà âûøå óðîâíåì");
    new string [124],name [MAX_PLAYER_NAME], name2 [MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof (name));
    GetPlayerName(params[0],name2,sizeof (name2));
    format(string,sizeof(string),"Àäìèíèñòðàòîð %s êèêíóë èãðîêà %s. Ïðè÷èíà: %s",name, name2, params [1]);
    SendClientMessageToAll(col_red_2,string);
    KickEx(params[0]);
    return 1;
}

public Kicker(playerid)
{
    DeletePVar (playerid, "kick");
    Kick(playerid);
}
stock KickEx(playerid)
{
    SetTimerEx("Kicker",950,0,"%d",playerid);
    SetPVarInt(playerid,"Kick",1);
}


 

так же при выдаче варна игрока не кикает с сервера

 

CMD:warn(playerid, params[])
{
    if(p_info[playerid][pAdmin] < 4return 1;
    if(sscanf(params, "ds[48]", params[0],params[1])) return SendClientMessage(playerid,col_gray,"/warn [ID èãðîêà] [Ïðè÷èíà]");
    new id = params[0];
    if(!IsPlayerConnected(id) || id == playerid) return SendClientMessage(playerid,col_gray,"Íåâåðíûé ID");
    if(!p_info[id][pMysqlID]) return SendClientMessage(playerid,col_gray,"Ýòîò èãðîê íå çàðåãèñòðèðîâàí");
    new mes[256];
    if(p_info[playerid][pAdmin] < p_info[params[0]][pAdmin])
    {
        format(mes,sizeof(mes),"Àäìèíèñòðàòîð %s ïîïûòàëñÿ çàâàðíèòü Àäìèíèñòðàòîðà %s",p_info[playerid][pNickname],p_info[id][pNickname]);
        AdminChat(col_gray,mes);
        return 1;
    }
    new kol = p_info[id][pWarnc]+1;
    if(kol < 3) format(mes,sizeof(mes),"Àäìèíèñòðàòîð %s âûäàë ïðåäóïðåæäåíèå èãðîêó %s [%d/3]. Ïðè÷èíà: %s",p_info[playerid][pNickname],p_info[id][pNickname],kol,params[1]);
    if(kol-1 > 0) p_info[id][pWarn] += WARN_TIME;
    else p_info[id][pWarn] = WARN_TIME;
    p_info[id][pWarnc] = kol;
    new houseid = p_info[id][pHouse]-1;
    if(!(houseid+1) || ((houseid+1) > 0 && p_info[id][pMysqlID] != gHouses[houseid][houseOwnerID])) SetPlayerSkinEx(id,p_info[id][p_skin]);
    else if(!gHouses[houseid][houseImprove][3]) SetPlayerSkinEx(id,p_info[id][p_skin]);
    else
    {
        for(new x; x < 3; x ++) {
            if(!gHouses[houseid][houseSkin]) continue;
            p_info[id][p_skin] = gHouses[houseid][houseSkin];
            if(GetPlayerSkin(id) == gHouses[houseid][houseSkin][3]) SetPlayerSkinEx(id,p_info[id][p_skin]);
        }
        gHouses[houseid][houseSkin][3] = 0;
    }
    UpdatePlayerData(id,"warn",p_info[id][pWarn]);
    UpdatePlayerData(id,"warnc",p_info[id][pWarnc]);
    //SendLogs("Àäìèí %s âûäàë âàðí èãðîêó %s (%d/3). Ïðè÷èíà: %s",p_info[playerid][pNickname],p_info[id][pNickname],kol,params[1]);
    if(kol == 3)
    {
        p_info[id][pWarn] = 0;
        p_info[id][pWarnc] = 0;
        UpdatePlayerData(id,"warn",p_info[id][pWarn]);
        UpdatePlayerData(id,"warnc",p_info[id][pWarnc]);
        if(!(houseid+1) || ((houseid+1) > 0 && p_info[id][pMysqlID] != gHouses[houseid][houseOwnerID])) SetPlayerSkinEx(id,p_info[id][p_skin]);
        else if(!gHouses[houseid][houseImprove][3]) SetPlayerSkinEx(id,p_info[id][p_skin]);
        else
        {
            for(new x; x < 3; x ++) {
                if(!gHouses[houseid][houseSkin]) continue;
                p_info[id][p_skin] = gHouses[houseid][houseSkin];
                if(GetPlayerSkin(id) == gHouses[houseid][houseSkin][3]) SetPlayerSkinEx(id,p_info[id][p_skin]);
            }
            gHouses[houseid][houseSkin][3] = 0;
        }
        //SendLogs("Àäìèí %s çàáàíèë èãðîêà %s íà 15 äíåé. Ïðè÷èíà: %s",p_info[playerid][pNickname],p_info[id][pNickname],params[1]);
        format(mes,sizeof(mes),"Àäìèíèñòðàòîð %s çàáàíèë èãðîêà %s (3 Ïðåäóïðåæäåíèÿ). Ïðè÷èíà: %s",p_info[playerid][pNickname],p_info[id][pNickname],params[1]);
        ServerBan(playerid,id,15,params[1]);

        UpdatePlayerData(id,"status",2);
        
    }
    SendClientMessageToAll(col_red_2,mes);
    new f_str[256];
    format(f_str,sizeof(f_str),"UPDATE `accounts` SET `fraction` = '0', `rank` = '0', `fractionskin` = '0', `subfraction` = '0' WHERE `id` = '%d'",p_info[id][pMysqlID]);
    mysql_query(dbHandle, f_str);
    p_info[id][pFraction] = 0;
    p_info[id][pRank] = 0;
    p_info[id][pFractionSkin] = 0;
    p_info[id][pSubfraction] = 0;
    SetPlayerColor(id,0xFFFFFF11);
    Kick(id);
    return 1;
}

 

Edited by amazonite

Share this post


Link to post
  • 0

UP 

Share this post


Link to post
  • 0

UP

Share this post


Link to post
  • 0

@amazonite тот код что ты приложил, является рабочим, видимо проблема кроется на другой стороне
Проверял на пустом моде, кикает корректно

Share this post


Link to post
  • 0

@user408337  что делать теперь? как исправить

Share this post


Link to post
  • 0

@amazonite давай попробуем разобраться, могу предположить что у тебя задефайнена функция Kick, попробуй найти в начале мода подобную строчку - #define Kick(%0)

Share this post


Link to post
  • 0

@user408337 можно ваш ВК? 

 

@Cawfee помогите пожалуйста :(

Share this post


Link to post
Guest
This topic is now closed to further replies.
Sign in to follow this  
Followers 0
  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • shedexx
      By shedexx
      PERFONSE RP | 2025
      Скачать файл Всем привет. Возвращаюсь в сферу Pawno-разработчика и ютубера по сампу. Ранее Вы могли узнать меня по нику "Minekaev Play", но теперь мой новый ник - shedexx.
       
      Perfonse Role Play:
      Уже не помню у кого я брал основу, этот мод должен был работать только через специальный addon-ключ, который использует лаунчер Arizona RP. Я убрал систему этого лаунчера / ключа, и мод заработал на обычном SAMP лаунчере. Я даже открывал проект с этим модом, но к сожалению или к счастью, никто не хотел у нас играть. Разработка мода велась где-то в начале 2025 года.
       
      Уникальный этот мод тем, что в нём есть система Air-Drop'а, система крафта аксессуаров на TextDraw, система выбора семейных автомобилей на TextDraw. В общем, у меня уже были загружены скрины с этого мода, я их выложил на imgur, и Вы сможете сами посмотреть визуально, что в этом моде имеется.
       
      Строчек в моде: [ 57.370 ]
      Быстрая компиляция: [ Да ]
      Варнингов: [ 3 шт. ] - Не влияют на работу мода.
       
      Скриншоты: *кликабельно*
      Видео-Слив: *кликабельно*
      Добавил shedexx Добавлено 17.03.2025 Категория Моды Автор shedexx  
    • shedexx
      By shedexx
      Всем привет. Возвращаюсь в сферу Pawno-разработчика и ютубера по сампу. Ранее Вы могли узнать меня по нику "Minekaev Play", но теперь мой новый ник - shedexx.
       
      Perfonse Role Play:
      Уже не помню у кого я брал основу, этот мод должен был работать только через специальный addon-ключ, который использует лаунчер Arizona RP. Я убрал систему этого лаунчера / ключа, и мод заработал на обычном SAMP лаунчере. Я даже открывал проект с этим модом, но к сожалению или к счастью, никто не хотел у нас играть. Разработка мода велась где-то в начале 2025 года.
       
      Уникальный этот мод тем, что в нём есть система Air-Drop'а, система крафта аксессуаров на TextDraw, система выбора семейных автомобилей на TextDraw. В общем, у меня уже были загружены скрины с этого мода, я их выложил на imgur, и Вы сможете сами посмотреть визуально, что в этом моде имеется.
       
      Строчек в моде: [ 57.370 ]
      Быстрая компиляция: [ Да ]
      Варнингов: [ 3 шт. ] - Не влияют на работу мода.
       
      Скриншоты: *кликабельно*
      Видео-Слив: *кликабельно*
    • Sams0n0v
      By Sams0n0v
      Приветствую! Есть ```SetPlayerChatBubble```, оно выводит какой либо текст над головой ИГРОКА, и этот текст абсолютно динамичен, он следует всем движениям игрока, включая анимации. Так вот вопрос, а как сделать так, но с NPC (Актером), чтобы не обычный каменный статичный 3д текст, а чтобы было наподобии текста над головой при отправке сообщения в чат. Надеюсь, меня поняли, с нетерпением жду ответа, этот форум, моя последняя надежда) Спасибо!