И так, многие спрашивали меня, как ты снимаешь бампера у машин?
Ну поскольку это не так уж и сложно делается, давайте я раскрою вам карты.
PHP код:
CMD:russianboycar(playerid,params[])
{
#define vehicleid GetPlayerVehicleID(playerid)
if(!IsPlayerInAnyVehicle(playerid)) return true;
new bumper,other[3];
GetVehicleDamageStatus(vehicleid,bumper,other[0],other[1],other[2]);
bumper ^= ((3<<20)|(3<<24));
SendClientMessage(playerid,-1, ((bumper & (3<<24)) != 0) ? ("Пацанский таз радует глаз!") : ("Пацанский таз уже не радует глаз..."));
UpdateVehicleDamageStatus(GetPlayerVehicleID(playerid),bumper,other[0],other[1],other[2]);
AddVehicleComponent(vehicleid,1087), AddVehicleComponent(vehicleid,1079);
#undef vehicleid
return true;
}
И так, чтож за диво это спросите вы. Как вы знаете функция GetVehicleDamageStatus вовсе не возвращает нам состояние автомобиля, то бишь его здоровье, а возвращает состояние его компонентов.
Здесь нам потребуется первый компонент - это панели. Я наименовал его как бампера, поскольку мы будем обрезать только их.
Сир Калькор замаскировал состояние каждого из компонентов под биты. 1 - есть, 0 - нет. Но не в этом прикол, каждый компонент контролирует 3 бита, это его состояние. Самые последние 6 бит - это наши бампера. И так, мы узнаем состояние и ставим\удаляем бампер. Ну и чтобы не было скучно - я добавил диски и гидравлику.
Приятного веселья!