Question

Команда:

 

Спойлер

CMD:kick(playerid,params[])
{
    if(antiflood[playerid] > 0) return SendClientMessage(playerid, COLOR_WHITE,"Не флуди!");
    antiflood[playerid]++;
    if(PLAYER_DATA[playerid][data_LOGGED] == false) return SendClientMessage(playerid,COLOR_WHITE,"Вы не авторизованы на сервере!");
    if(PLAYER_DATA[playerid][data_ADMLVL] < 2) return true;
	if(sscanf(params,"us[100]",params[0],params[1])) return SendClientMessage(playerid,COLOR_WHITE,"Используйте: /kick [ид] [причина]");
	if(!IsPlayerConnected(params[0]))return  SendClientMessage(playerid,COLOR_WHITE,"Данного ID нет на сервере!");
    //if(playerid == params[0]) return SendClientMessage(playerid,COLOR_WHITE,"Нельзя применить на себе!");
    if(PLAYER_DATA[params[0]][data_ADMLVL] > PLAYER_DATA[playerid][data_ADMLVL]) return SendClientMessage(playerid, COLOR_WHITE, "Нельзя применить к старшей администрации!");
    for(new i = 0; i < MAX_PLAYERS; i++)
	{
		if(!IsPlayerConnected(i)) continue;
		if(GetPVarInt(i,"gPlayerAaction") == 0)
	    {
	        new string[145];
			format(string, sizeof(string), "Администратор %s кикнул %s. Причина: %s",PLAYER_DATA[playerid][data_NAME],PLAYER_DATA[params[0]][data_NAME],params[1]);
			SendClientMessage(i,COLOR_BLUE,string);
		}
	}
	ShowPlayerDialog(playerid, dialog_OK, DIALOG_STYLE_MSGBOX, "{00BFFF}Уведомление", "{FFFFFF}Вы были {00BFFF}кикнуты {FFFFFF}по решению администрации.\nЕсли произошла ошибка вы можете написать в тех. поддержку\nГруппа: {00BFFF}vk.com/revin.helps", "Выход", "");
	{
		Kick(params[0]);
	}
	return true;
}

 

При кике игроку должен будет вылезать диалог

Share this post


Link to post

12 answers to this question

  • 0

@Remmi_Feed красное примечание читайте и исправляйте код http://wiki.sa-mp.com/wiki/Kick_RU

Share this post


Link to post
  • 0
2 минуты назад, Remmi_Feed сказал:

Команда:

 

  команда (закрыть спойлер)


CMD:kick(playerid,params[])
{
    if(antiflood[playerid] > 0) return SendClientMessage(playerid, COLOR_WHITE,"Не флуди!");
    antiflood[playerid]++;
    if(PLAYER_DATA[playerid][data_LOGGED] == false) return SendClientMessage(playerid,COLOR_WHITE,"Вы не авторизованы на сервере!");
    if(PLAYER_DATA[playerid][data_ADMLVL] < 2) return true;
	if(sscanf(params,"us[100]",params[0],params[1])) return SendClientMessage(playerid,COLOR_WHITE,"Используйте: /kick [ид] [причина]");
	if(!IsPlayerConnected(params[0]))return  SendClientMessage(playerid,COLOR_WHITE,"Данного ID нет на сервере!");
    //if(playerid == params[0]) return SendClientMessage(playerid,COLOR_WHITE,"Нельзя применить на себе!");
    if(PLAYER_DATA[params[0]][data_ADMLVL] > PLAYER_DATA[playerid][data_ADMLVL]) return SendClientMessage(playerid, COLOR_WHITE, "Нельзя применить к старшей администрации!");
    for(new i = 0; i < MAX_PLAYERS; i++)
	{
		if(!IsPlayerConnected(i)) continue;
		if(GetPVarInt(i,"gPlayerAaction") == 0)
	    {
	        new string[145];
			format(string, sizeof(string), "Администратор %s кикнул %s. Причина: %s",PLAYER_DATA[playerid][data_NAME],PLAYER_DATA[params[0]][data_NAME],params[1]);
			SendClientMessage(i,COLOR_BLUE,string);
		}
	}
	ShowPlayerDialog(playerid, dialog_OK, DIALOG_STYLE_MSGBOX, "{00BFFF}Уведомление", "{FFFFFF}Вы были {00BFFF}кикнуты {FFFFFF}по решению администрации.\nЕсли произошла ошибка вы можете написать в тех. поддержку\nГруппа: {00BFFF}vk.com/revin.helps", "Выход", "");
	{
		Kick(params[0]);
	}
	return true;
}

 

При кике игроку должен будет вылезать диалог

Пробуй так:

Спойлер

CMD:kick(playerid,params[])
{
    if(antiflood[playerid] > 0) return SendClientMessage(playerid, COLOR_WHITE,"Не флуди!");
    antiflood[playerid]++;
    if(PLAYER_DATA[playerid][data_LOGGED] == false) return SendClientMessage(playerid,COLOR_WHITE,"Вы не авторизованы на сервере!");
    if(PLAYER_DATA[playerid][data_ADMLVL] < 2) return true;
    if(sscanf(params,"us[100]",params[0],params[1])) return SendClientMessage(playerid,COLOR_WHITE,"Используйте: /kick [ид] [причина]");
    if(!IsPlayerConnected(params[0]))return  SendClientMessage(playerid,COLOR_WHITE,"Данного ID нет на сервере!");
    //if(playerid == params[0]) return SendClientMessage(playerid,COLOR_WHITE,"Нельзя применить на себе!");
    if(PLAYER_DATA[params[0]][data_ADMLVL] > PLAYER_DATA[playerid][data_ADMLVL]) return SendClientMessage(playerid, COLOR_WHITE, "Нельзя применить к старшей администрации!");
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
        if(!IsPlayerConnected(i)) continue;
        if(GetPVarInt(i,"gPlayerAaction") == 0)
        {
            new string[145];
            format(string, sizeof(string), "Администратор %s кикнул %s. Причина: %s",PLAYER_DATA[playerid][data_NAME],PLAYER_DATA[params[0]][data_NAME],params[1]);
            SendClientMessage(i,COLOR_BLUE,string);
            ShowPlayerDialog(params[0], dialog_OK, DIALOG_STYLE_MSGBOX, "{00BFFF}Уведомление", "{FFFFFF}Вы были {00BFFF}кикнуты {FFFFFF}по решению администрации.\nЕсли произошла ошибка вы можете написать в тех. поддержку\nГруппа: {00BFFF}vk.com/revin.helps", "Выход", "");
            Kick(params[0]);
        }
    }
    return true;
}

 

Share this post


Link to post
  • 0

@Покемон все равно не вылезает

Share this post


Link to post
  • 0
10 минут назад, Remmi_Feed сказал:

@Покемон все равно не вылезает

Пишет вообще что администратор кикнул ? 
И ещё вопрос зачем вот это ? 
if(GetPVarInt(i,"gPlayerAaction") == 0)

Share this post


Link to post
  • 0

@Покемон просто пишет "Сервер закрыл соединение".

Share this post


Link to post
  • 0
2 минуты назад, Remmi_Feed сказал:

@Покемон просто пишет "Сервер закрыл соединение".

По пробуй так:
 

Спойлер

CMD:kick(playerid,params[])
{
    new string[145];
    if(antiflood[playerid] > 0) return SendClientMessage(playerid, COLOR_WHITE,"Не флуди!");
    antiflood[playerid]++;
    if(PLAYER_DATA[playerid][data_LOGGED] == false) return SendClientMessage(playerid,COLOR_WHITE,"Вы не авторизованы на сервере!");
    if(PLAYER_DATA[playerid][data_ADMLVL] < 2) return true;
    if(sscanf(params,"us[100]",params[0],params[1])) return SendClientMessage(playerid,COLOR_WHITE,"Используйте: /kick [ид] [причина]");
    if(!IsPlayerConnected(params[0]))return  SendClientMessage(playerid,COLOR_WHITE,"Данного ID нет на сервере!");
    //if(playerid == params[0]) return SendClientMessage(playerid,COLOR_WHITE,"Нельзя применить на себе!");
    if(PLAYER_DATA[params[0]][data_ADMLVL] > PLAYER_DATA[playerid][data_ADMLVL]) return SendClientMessage(playerid, COLOR_WHITE, "Нельзя применить к старшей администрации!");
    format(string, sizeof(string), "Администратор %s кикнул %s. Причина: %s",PLAYER_DATA[playerid][data_NAME],PLAYER_DATA[params[0]][data_NAME],params[1]);
    SendClientMessageToAll(COLOR_BLUE,string);
    ShowPlayerDialog(params[0], dialog_OK, DIALOG_STYLE_MSGBOX, "{00BFFF}Уведомление", "{FFFFFF}Вы были {00BFFF}кикнуты {FFFFFF}по решению администрации.\nЕсли произошла ошибка вы можете написать в тех. поддержку\nГруппа: {00BFFF}vk.com/revin.helps", "Выход", "");
    Kick(params[0]);
    return 1;
}

 

Share this post


Link to post
  • 0

@Покемон к сожалению нет

Share this post


Link to post
  • 0
3 минуты назад, Remmi_Feed сказал:

@Покемон к сожалению нет

Странно почему жее не чего не пишет . .... 

 По пробуй string сделать больше 

Edited by Покемон

Share this post


Link to post
  • 0

@Remmi_Feed в игре на самом себе тестишь? 

Share this post


Link to post
  • 0

@DEST Да, однако ранее был тест на человеке, так же ничего не писало

Share this post


Link to post
  • 0

Хакай функцию kick и делай вызов ей через 1-2 сек что-бы вся инфа успела вывестися

Share this post


Link to post
  • 0

Не успевает вылезти диалог,а ты сервер кикает. Выше тебе написали как
Если не можешь посмотри на других модах реализацию 

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

    • Danila_Fazz
      By Danila_Fazz
      что делать если место 3д номеров знак вопроса крмп
       
    • MaximumHot
      By MaximumHot
      *Проект в разработке*

      Maximum Russia — онлайн игра про Криминальную Россию (CRMP) в твоём компьютере.
      Нами создан реалистичный мир, где Вы встретите Автомобили со своих улиц, Известных персонажей, Реалистичные работы и группировки, а также многое другое.
       
      Наши преимущества? - Сайт, Форум, лаунчер, FULL RolePlay.

      *Кто хочет в Beta-Test, пишите - ВК*

      Сайт

      ВК
       
      ТГ
    • MaximumHot
      By MaximumHot
      Здравствуйте, я основатель одного проекта(проект). Когда игрок умирает, он спавниться в больнице(Так и должно быть),но после этого его отключает от сервера(Кикает). Помогите пожалуйста решить проблему. 
      Mode.pwn