ZeRik
Компетентный
Всем привет!
Собственно, данная команда является обновленным, исправленным и дополненным аналогом этой темы - http://pawno-info.ru/showthread.php?t=230897. Я также постарался сохранить исходные значения (как во всех модах с основой RLS), дабы не возникало проблем при адаптации команды под свой мод.
ВАЖНО:
Собственно, данная команда является обновленным, исправленным и дополненным аналогом этой темы - http://pawno-info.ru/showthread.php?t=230897. Я также постарался сохранить исходные значения (как во всех модах с основой RLS), дабы не возникало проблем при адаптации команды под свой мод.
ВАЖНО:
- Команда написана под любой современный командный процессор + sscanf;
- Используются MySQL R40+ (что бы перевести на R39 и ниже, достаточно изменить две строчки);
- При использовании foreach - он будет задействован, при отсутствии редактировать код не придется;
- Отмеченные "//" в команде строчки необходимо изменить под себя.
PHP:
#define TABLE_ACCOUNT "accounts"
#define publics: %0(%1) forward %0(%1); public %0(%1)
CMD:rasform(playerid, params[])
{
if(PlayerInfo[playerid][pAdmin] < 6) return true; //
if(sscanf(params, "d", params[0])) return SendClientMessage(playerid, COLOR_WHITE, "Введите: /rasform [ID фракции]");
if(params[0] <= 0) return SendClientMessage(playerid, COLOR_WHITE, "Недопустимое значение.");
new mysql_query[60];
format(mysql_query, sizeof(mysql_query), "SELECT 1 FROM `"TABLE_ACCOUNT"` WHERE `pMember` = '%d'", params[0]); //
mysql_tquery(connects, mysql_query, "Rasform", "dd", playerid, params[0]);
return true;
}
publics: Rasform(playerid, member)
{
new rows;
cache_get_row_count(rows);
if(!rows) return SendClientMessage(playerid, COLOR_WHITE, "Указанная Вами фракция не найдена.");
#if defined foreach
foreach (new i : Player) {
#else
for (new i = GetPlayerPoolSize(); i != -1; i--) {
#endif
if(PlayerInfo[i][pMember] != member) continue; //
SendClientMessage(i, COLOR_WHITE, "Ваша организация расформирована администрацией.");
PlayerInfo[i][pMember] = 0; //
PlayerInfo[i][pLeader] = 0; //
PlayerInfo[i][pRank] = 0; //
SetPlayerSkinEx(i, PlayerInfo[i][pChar]); //
SetPlayerArmour(i, 0); //
SetPlayerHealthAC(i, 100); //
ResetWeapons(i); //
SetPlayerToTeamColor(i); //
}
new mysql_query[100];
format(mysql_query, sizeof(mysql_query), "UPDATE `"TABLE_ACCOUNT"` SET `pMember` = '0', `pLeader` = '0', `pRank` = '0' WHERE `pMember` = '%d'", member); //
mysql_tquery(connects, mysql_query, "", "");
format(mysql_query, sizeof(mysql_query), "Администратор: %s расформировал организацию №%d",PlayerInfo[playerid][pNames], member);
SendClientMessageToAll(COLOR_LIGHTRED, mysql_query);
return true;
}
Последнее редактирование:
