Доступ к архиву

Переход в группу "Пользователь"

300.00 ₽
Одноразовый платёж
Быстрый переход в группу "Пользователи", без надобности написания постов и ожидания.

Покупка дает возможность:
Быть полноправным участником форума
Нормальное копирование кода
Создавать темы
Скачивать файлы
Доступ к архиву Pawno-Info

[C.M.D] /dcar | Сломать автомобиль игроку. [С объяснениями]

Статус
В этой теме нельзя размещать новые ответы.

Jeka1999

Умник
Итак, команда чтобы поломать автомобиль:
PHP:
CMD:dcar(playerid, params[])
{
    new stringins[128];
    if(PlayerInfo[playerid][pAdmin] < 1) return SendMes(playerid, COLOR_GREY, "{ff0000}x {afafaf}Вы не можете использовать эту команду.");
        if(sscanf(params, "u", params[0])) return SendMes(playerid, COLOR_GREY, "{00FF00}Используйте: {FFFFFF}/dcar [ид игрока/часть ника]");
    if(!IsPlayerConnected(params[0])) return SendMes(playerid, COLOR_GREY, "{ff0000}x {afafaf}Игрок не в игре.");
    if(!IsPlayerInAnyVehicle(params[0])) return SendMes(playerid, COLOR_GREY, "{ff0000}x {afafaf}Игрок не в транспорте!");
    if(GetPlayerState(params[0]) != PLAYER_STATE_DRIVER) return SendMes(playerid, COLOR_GREY, "{ff0000}x {afafaf}Игрок не водитель!");
    SetVehicleHealth(GetPlayerVehicleID(params[0]), 340);
    format(stringins, sizeof(stringins), "* Вы сломали %s авто.", sendername(params[0])); SendMes(playerid, COLOR_GREY, stringins);
    format(stringins, sizeof(stringins), "* [A] %s[%d] использовал команду [/dcar] к игроку %s[%d].", sendername(playerid), playerid, sendername(params[0]), params[0]); SendAdminMessage(COLOR_YELLOW, stringins);
    return 1;
}
Пояснение структуры команды.
PHP:
CMD:dcar(playerid, params[])
Используется в движке ZCMD, а также параметр(sscanf).
PHP:
new stringins[128];
Думаю понятно, делаем переменную и создаем массив в 128 ячеек.
PHP:
if(PlayerInfo[playerid][pAdmin] < 1) return SendMes(playerid, COLOR_GREY, "{ff0000}x {afafaf}Вы не можете использовать эту команду.");
Если администраторский уровень ниже 1, то отправляем сообщение: "Вы не можете использовать эту команду."
PHP:
if(sscanf(params, "u", params[0])) return SendMes(playerid, COLOR_GREY, "{00FF00}Используйте: {FFFFFF}/dcar [ид игрока/часть ника]");
Используя sscanf, мы устанавливаем параметры. u в данной команде - ид игрока/часть имени. Если вы не написали ИД - то выводится сообщение.
PHP:
if(!IsPlayerConnected(params[0])) return SendMes(playerid, COLOR_GREY, "{ff0000}x {afafaf}Игрок не в игре.");
Если игрок не подключен к серверу(восклицательный знак обозначает НЕ в павно) отправляем сообщение.
PHP:
if(!IsPlayerInAnyVehicle(params[0])) return SendMes(playerid, COLOR_GREY, "{ff0000}x {afafaf}Игрок не в транспорте!");
Аналогично, если игрок не в транспорте - отправляем сообщение.
PHP:
if(GetPlayerState(params[0]) != PLAYER_STATE_DRIVER) return SendMes(playerid, COLOR_GREY, "{ff0000}x {afafaf}Игрок не водитель!");
Опять же, если положение игрока НЕ за рулем, тогда отправляем сообщение.
PHP:
SetVehicleHealth(GetPlayerVehicleID(params[0]), 340);
Тут же показана функция именно не внешних повреждений, а повреждений автомобиля вообщем(дым из-под капота). Настраивайте под себя хп, в данном случае 340 - черный дым.
PHP:
format(stringins, sizeof(stringins), "* Вы сломали %s авто.", sendername(params[0])); SendMes(playerid, COLOR_GREY, stringins);
format(stringins, sizeof(stringins), "* [A] %s[%d] использовал команду [/dcar] к игроку %s[%d].", sendername(playerid), playerid, sendername(params[0]), params[0]); SendAdminMessage(COLOR_YELLOW, stringins);
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу