Доброго времени суток. Выкладываю две команды для спавна/удаления транспортных средств. Работают так:
/car <цвет 1> <цвет 2> — заспавнит машину с основным цветом <цвет 1> и дополнительным <цвет 2>
/remcar — удалит машину
[b]Обратите внимание![/b] Каждый игрок может заспавнить только одну машину.
Ко всем командам:
[code]CMD:car(playerid, params[]) { // /car
if(GetPVarInt(playerid, !»created_veh») != 0) return SendClientMessage(playerid, 0xbfbfbfff, !»Сначала удалите предыдущий транспорт.»); // Если одна машина уже создана
if(sscanf(params, «iii», params[0], params[1], params[2])) return SendClientMessage(playerid, -1, !»Используйте/car <цвет 1> <цвет 2>«); // Если недостаточно параметров
if(params[0] < 400 | params[0] > 611) return SendClientMessage(playerid, 0xbfbfbfff, !»ID транспорта должен быть от 400 до 611.»); // Если ID транспорта вне диапазона 400-611
if(params[1] < 0 || params[1] > 255 | params[2] < 0 || params[2] > 255) return SendClientMessage(playerid, 0xbfbfbfff, !»Цвета ТС должны быть от 0 до 255.»); // Если цвет ТС вне 0-255
new Float:pos_x_veh, Float:pos_y_veh, Float:pos_z_veh, Float:rot_veh; // Переменные для координат
GetPlayerPos(playerid, pos_x_veh, pos_y_veh, pos_z_veh); // Получаем позицию игрока
GetPlayerFacingAngle(playerid, rot_veh); // Получаем угол поворота игрока
SetPVarInt(playerid, !»created_veh», AddStaticVehicleEx(params[0], pos_x_veh, pos_y_veh, pos_z_veh, rot_veh, params[1], params[2], -1)); // Переменная игрока (PVar) для машины, а заодно создаём её
PutPlayerInVehicle(playerid, GetPVarInt(playerid, !»created_veh»), 0); // Сажаем игрока в машину на место 0 (водительское сиденье)
return SendClientMessage(playerid, -1, !»Вы успешно создали транспорт. Для удаления введите (/remcar).»); // Машина создана
}

CMD:remcar(playerid) { // /remcar
if(GetPVarInt(playerid, !»created_veh») == 0) return SendClientMessage(playerid, 0xbfbfbfff, !»Вы не создавали транспорт.»); // Если машина не создана, выводим сообщение
else {
DestroyVehicle(GetPVarInt(playerid, !»created_veh»)); // Или удаляем её,
DeletePVar(playerid, !»created_veh»); // Удаляем переменную игрока
return SendClientMessage(playerid, -1, !»Транспорт был успешно удалён.»); // И выводим сообщение
}
}[/code]

Автор: Vladimir_Kulkov
Исправил баги и немного улучшил: [b][color=#BF0000]danilasar[/color][/b] (я)

От danilasar

Это я

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *