PawnWork
Нуль
- Регистрация
- 25 Окт 2017
- Сообщения
- 4
- Лучшие ответы
- 0
- Репутация
- 0
Всем привет! Первая работа, думаю кому-нибудь пригодится. Писал сам лично, не копировал
к переменным игрока
сама команда
MysqlUpdatePlayerStr
stock AntiFlood(для пояснения)
теперь можно добавлять в формат, когда администратор выполняет какое-либо действие. Например /a [текст]
к переменным игрока
PHP:
data_PREFIX[15]
PHP:
CMD:prefix(playerid, params[])
{
if(antiflood[playerid] > 0) return AntiFlood(playerid);
antiflood[playerid]++;
new ssd[15];
if(PLAYER_DATA[playerid][data_LOGGED] == false) return SendClientMessage(playerid,COLOR_WARNING,YouAreNotLoggedInAsAdmin); //заменяете на свое
if(PLAYER_DATA[playerid][data_ADMLVL] < 6) return true; //заменяете на свое
if(sscanf(params,"is[15]", params[0], ssd)) return SendClientMessage(playerid,COLOR_WARNING,!"Используйте: /prefix [ID] [текст]");
if(!PLAYER_DATA[params[0]][data_ADMLVL]) return SendClientMessage(playerid, COLOR_RED, !"[Ошибка] {FFFFFF}Данный игрок не администратор"); //заменяете на свое
strmid(PLAYER_DATA[params[0]][data_PREFIX], ssd, 0, 15, 15); SendClientMessage(playerid, COLOR_GREEN, !"[Успешно] {FFFFFF}Вы установили префикс администратору"); //заменяете на свое
MysqlUpdatePlayerStr(params[0], "prefix", PLAYER_DATA[params[0]][data_PREFIX]);
return true;
}
PHP:
stock MysqlUpdatePlayerStr(playerid, field[], data[])
{
new Query[128];
format(Query, sizeof(Query), "UPDATE `accounts` SET %s = '%s' WHERE id = '%i' LIMIT 1", field, data, PLAYER_DATA[playerid][data_ID]);//заменить на свое
return mysql_tquery(dbHandle, Query, "", "");
}
stock AntiFlood(для пояснения)
PHP:
stock AntiFlood(playerid)
{
ShowPlayerDialogFix(playerid, dialog_OK, DIALOG_STYLE_MSGBOX, ""D"АнтиФлуд", "Не флуди! Это против правил сервера. Приятной игры:)", "Выбрать", "");
return true;
}
PHP:
CMD:a(playerid, params[])
{
if(antiflood[playerid] > 0) return AntiFlood(playerid);
antiflood[playerid]++;
if(PLAYER_DATA[playerid][data_LOGGED] == false) return SendClientMessage(playerid,COLOR_WARNING,YouAreNotLoggedInAsAdmin);
if(PLAYER_DATA[playerid][data_ADMLVL] < 2) return true;
if(admin_ban_time[playerid] > 0) return SendClientMessage(playerid, COLOR_WARNING, !"Ваши действия на сервере заблокированы по подозрению во взломе");
if(sscanf(params, "s[96]", params[0])) return SendClientMessage(playerid, COLOR_LIME, !"Используйте /a [текст]");
new string[170];
format(string,sizeof(string),"[A-Chat]%s[%s %d]: %s", PLAYER_DATA[playerid][data_NAME], PLAYER_DATA[playerid][data_PREFIX], playerid, params[0]);
SendAdminMessage(COLOR_LIME, string);
return true;
}
PHP:
В загрузку из БД
cache_get_value_name(0, "prefix", PLAYER_DATA[playerid][data_PREFIX], 15);
PHP:
И обнуление при подключении
PLAYER_DATA[playerid][data_PREFIX] = EOS;
Последнее редактирование: