Поиск
 
 

Результаты :
 


Rechercher Расширенный поиск

Аккаунты | Вирты | Все сервера CRMP-RP

Вс Авг 14, 2016 12:15 am автор Прародитель форума

Рекомендуем отличную группу по продаже виртов на серверах CRMP RP. Быстрая доставка, хорошие отзывы, активные продавцы, не дорогие цены.
https://vk.com/donate_crmp_rp

Комментарии: 0

Последние темы
» интерьер мэрии
Сб Авг 27, 2016 2:49 am автор Прародитель форума

» интерьер фсб
Сб Авг 27, 2016 2:38 am автор Прародитель форума

» колесо обозрение
Чт Авг 25, 2016 2:40 am автор Прародитель форума

» система установки мигалки
Чт Авг 25, 2016 2:36 am автор Прародитель форума

» салон гопкар
Чт Авг 25, 2016 2:32 am автор Прародитель форума

» выдыхание пара
Чт Авг 25, 2016 2:29 am автор Прародитель форума

» онлайн рекорд
Чт Авг 25, 2016 2:25 am автор Прародитель форума

» сгорание колес
Чт Авг 25, 2016 2:22 am автор Прародитель форума

» система викторины
Чт Авг 25, 2016 2:19 am автор Прародитель форума


/lmenu - меню лидера. [MySQL]

Перейти вниз

/lmenu - меню лидера. [MySQL]

Сообщение автор Прародитель форума в Вс Авг 14, 2016 1:06 pm

Функциональность данной панели:
- Увольнение в оффлайне
- Понижение/Повышение в оффлайне
- Выговоры в оффлайне
- Список всех сотрудников.

Ну что-же,приступим.
Ко всем командам:
CMD:lmenu(playerid) // Сама команда
{
if(gPlayerLogged[playerid] == 0) return 1; // Проверка на авторизация игрока. (Поменяйте на свою)
if(Player[playerid][pLeader] <= 0) return SendClientMessage(playerid, 0x009999FF, "Вы не являетесь руководителем"); // Проверка на лидерку (Поменяйте на свою)
return ShowPlayerDialog(playerid, 5379, DIALOG_STYLE_LIST, "Меню лидера", "1. Список сотрудников в оффлайне\n2. Выдать выговор в оффлайне\n3. Уволить в оффлайне\n4. Понизить/Повысить в оффлайне", "Выбрать", "Закрыть"); // Диалог с функциями
}

В OnDialogResponse:
//------------------------------------------------------------------------------
if(dialogid == 5379)
{
if(!response) return 1;
switch(listitem)
{
case 0: new string[64],mysql_format(handle,string,sizeof(string),"SELECT * FROM `acc` WHERE `Team` = '%d'",Player[playerid][pTeam]),mysql_function_query(handle, string, true, "OFFmembers", "d",playerid);
case 1: ShowPlayerDialog(playerid, 5380, DIALOG_STYLE_INPUT, "Меню лидера: Выговор", "Для того что-бы выдавать выговор,необходимо указать ник.\nУкажите Имя_Фамилия сотрудника:", "Выдать", "Закрыть");
case 2: ShowPlayerDialog(playerid, 5381, DIALOG_STYLE_INPUT, "Меню лидера: Увольнение", "Для того что-бы уволить,необходимо указать ник.\nУкажите Имя_Фамилия сотрудника:", "Выдать", "Закрыть");
case 3: ShowPlayerDialog(playerid, 5382, DIALOG_STYLE_INPUT, "Меню лидера: Повышение/Понижение", "Для того что-бы повысить/понизить,необходимо указать ник и ранг\nПример: Nick_Name,9\n\nУкажите Имя_Фамилия,Ранг:", "Выдать", "Закрыть");
}
}
//------------------------------------------------------------------------------
if(dialogid == 5380)
{
if(!response) return 1;
if(!strlen(inputtext)) return SendClientMessage(playerid,-1,"Укажите Имя_Фамилия"),ShowPlayerDialog(playerid, 5380, DIALOG_STYLE_INPUT, "Меню лидера: Выговор", "Для того что-бы выдавать выговор,необходимо указать ник.\nУкажите Имя_Фамилия сотрудника:", "Выдать", "Закрыть");
new qstring[64];
format(qstring,sizeof(qstring), "SELECT * FROM "TABLE_ACCOUNT" WHERE `Name`='%s'", inputtext);
mysql_function_query(handle, qstring, true, "VigovorOffline", "is", playerid, inputtext);
}
//------------------------------------------------------------------------------
if(dialogid == 5381)
{
if(!response) return 1;
if(!strlen(inputtext)) return SendClientMessage(playerid,-1,"Укажите Имя_Фамилия"),ShowPlayerDialog(playerid, 5381, DIALOG_STYLE_INPUT, "Меню лидера: Увольнение", "Для того что-бы уволить,необходимо указать ник.\nУкажите Имя_Фамилия сотрудника:", "Выдать", "Закрыть");
new qstring[64];
format(qstring,sizeof(qstring), "SELECT * FROM "TABLE_ACCOUNT" WHERE `Name`='%s'", inputtext);
mysql_function_query(handle, qstring, true, "UvalOffline", "is", playerid, inputtext);
}
//------------------------------------------------------------------------------
if(dialogid == 5382)
{
if(!response) return 1;
if(!strlen(inputtext)) return SendClientMessage(playerid,-1,"Укажите Имя_Фамилия,Ранг"),ShowPlayerDialog(playerid, 5382, DIALOG_STYLE_INPUT, "Меню лидера: Повышение/Понижение", "Для того что-бы повысить/понизить,необходимо указать ник и ранг\nПример: Dmitriy_Grishin,9\n\nУкажите Имя_Фамилия,Ранг:", "Выдать", "Закрыть");
new qstring[64],name, rang;
if(sscanf(inputtext, "p<,>si", name, rang)) return SCM(playerid,-1,"Укажите Имя_Фамилия,Ранг через запятую"),ShowPlayerDialog(playerid, 5382, DIALOG_STYLE_INPUT, "Меню лидера: Повышение/Понижение", "Для того что-бы повысить/понизить,необходимо указать ник и ранг\nПример: Dmitriy_Grishin,9\n\nУкажите Имя_Фамилия,Ранг:", "Выдать", "Закрыть");
format(qstring,sizeof(qstring), "SELECT * FROM "TABLE_ACCOUNT" WHERE `Name`='%s'", name);
mysql_function_query(handle, qstring, true, "PonPovOffline", "isi", playerid,name,rang);
}
//------------------------------------------------------------------------------

В конец мода:
forward OFFmembers(playerid);
public OFFmembers(playerid)
{
new rows, fields,i,string2[64],string[1256],name[MAX_PLAYER_NAME];
cache_get_data(rows, fields);
for(i = 0; i < rows; i++)
{
cache_get_field_content(i, "Name", string2),strmid(name, string2, 0, strlen(string2), MAX_PLAYER_NAME); // Достём имя Name,у Вас может быть подругому.
new rang = cache_get_field_content_int(i, "Rang"); // У Вас в БД Rang может означаться подругому (Ранг)
new vigovor = cache_get_field_content_int(i, "Fwarns"); // У Вас в БД Fwarns может означаться подругому (Выговоры)
new time = cache_get_field_content_int(i, "PlayerDTimers"); // У Вас в БД Rang может означаться подругому (Отыграно за день)
format(string,sizeof(string),"%s | Ранг: %d | Выговоры: %d/3 | За день: %d мин\n%s",name,rang,vigovor,time,string); // Форматируем диалог
ShowPlayerDialog(playerid, 0, DIALOG_STYLE_LIST, "Меню лидера: Сотрудники",string, "", "Закрыть"); // Выводим диалог
}
return true;
}
//------------------------------------------------------------------------------
forward VigovorOffline(playerid,name[]);
public VigovorOffline(playerid,name[])
{
new query[128];
new teams = cache_get_field_content_int(0, "Team"); // У Вас в БД Team может означаться подругому (Организация)
new vigovor = cache_get_field_content_int(0, "Fwarns"); // У Вас в БД Fwarns может означаться подругому (Выговоры)
if(Player[playerid][pTeam] != teams) return SCM(playerid,-1,"Данный игрок не в Вашей фракции."); // Проверяем на фракцию
if(vigovor >= 3) return SCM(playerid,-1,"У сотрудника больше 3-ёх выговоров."); // Проверка на выговоры
mysql_format(handle,query,sizeof(query),"UPDATE `acc` SET `Fwarns` = (`Fwarns` + '1') WHERE `Name` = '%s'",name); // Форматируем запрос
mysql_function_query(handle, query, true, "", ""); // Отправляем
format(strcom, 156, "[R] Руководитель %s[%d] выдал выговор[%d/3] %s[OFFLINE]",Player[playerid][pName], playerid,vigovor+1,name); // Форматируем текст для всех
SendRadioMessage(Player[playerid][pLeader], 0x429252FF, strcom); // Отправляем в чат организации (у Вас может быть подругому)
return true;
}
//------------------------------------------------------------------------------
forward UvalOffline(playerid,name[]);
public UvalOffline(playerid,name[])
{
new query[128];
new teams = cache_get_field_content_int(0, "Team"); // У Вас в бд Team может быть подругому. (Организация)
if(Player[playerid][pTeam] != teams) return SCM(playerid,-1,"Данный игрок не в Вашей фракции."); // Проверка на фракцию
format(query,sizeof(query),"UPDATE "TABLE_ACCOUNT" SET `Leader` = '0',`Member` = '0',`Rang` = '0',`Team` = '0',`Fskin` = '0' WHERE `Name` = '%s'",name); // Обнляем все переменные. (Заменяем на свои)
mysql_function_query(handle, query, true, "", ""); // Отправляем запрос выше
format(strcom, 156, "[R] Руководитель %s[%d] уволил %s[OFFLINE]",Player[playerid][pName], playerid,name); // Форматируем текст для всех
SendRadioMessage(Player[playerid][pLeader], 0x429252FF, strcom); // Отправляем в чат организации (у Вас может быть подругому)
return true;
}
//------------------------------------------------------------------------------
forward PonPovOffline(playerid,name[],rang);
public PonPovOffline(playerid,name[],rang)
{
new query[128];
new teams = cache_get_field_content_int(0, "Team"); // Достаём инфу о фракции
if(Player[playerid][pTeam] != teams) return SCM(playerid,-1,"Данный игрок не в Вашей фракции."); // Проверка на фракцию
if(rang >= Player[playerid][pRang]) // Проверяем на ранг
{
SendMes(playerid, COLOR_GRAD1, "{009999} Ранг не должен быть больше %d и меньше 0", Player[playerid][pRang]-1);
return 1;
}
if(rang < 0) return SCM(playerid, 0x009999FF, "Ранг не должен быть меньше 0"); // Проверяем на ранг
format(strcom, 156, "[R] Руководитель %s[%d] установил %d ранг для %s[OFFLINE]",Player[playerid][pName], playerid,rang,name); // Форматируем текст для всех
SendRadioMessage(Player[playerid][pLeader], 0x429252FF, strcom); // Отправляем в чат организации (у Вас может быть подругому)
format(query,sizeof(query),"UPDATE "TABLE_ACCOUNT" SET `Rang` = '%d' WHERE `Name` = '%s'",rang,name); // Форматируем запрос (Rang может быть подругому)
mysql_function_query(handle, query, true, "", ""); // Отправляем запрос
return true;
}


автор:мангал228

Прародитель форума
Прародитель форума

Сообщения : 67
Очки : 2685
Репутация : 0
Дата регистрации : 2016-08-13

Посмотреть профиль http://allforcrmp.forum2x2.ru

Вернуться к началу Перейти вниз

Вернуться к началу


 
Права доступа к этому форуму:
Вы не можете отвечать на сообщения