Sasha_Black
Умник
Здравствуйте,сегодня я вам покажу как запретить ездить на крыши машины,может кому нибудь понадобится
И так начнем.
Ко всем Forward добавим:
В public OnPlayerUpdate(playerid) добавим:
Далее добавляем в конец мода:
Далее надо показать вторую animky,создать ее также надо через public.
Вставляем в конец мода,это получения скорости авто:
Спасибо за внимания с вами был Sasha_Black
И так начнем.
Ко всем Forward добавим:
PHP:
forward NoRoof(playerid);
forward anim2(playerid);
PHP:
NoRoof(playerid);
PHP:
public NoRoof(playerid)
{
new carid = GetPlayerSurfingVehicleID(playerid); // получаем ID авто на котором игрок
if(carid != INVALID_VEHICLE_ID ) // если ID правильный(то значит игрок находится на авто)
{
new Float:speed = GetVehicleSpeed(carid); // Скорость Авто
new cm=GetVehicleModel(carid); // Модель Авто
switch(cm)
{
case 430,446,452,453,454,472,473,484,493,595:{return 1;} // Если это Моторная лодка то не надо скидывать.)
default:{}
}
if(speed > 30) // Если скорость больше 30 км\час
{
new Float:slx, Float:sly, Float:slz;
GetPlayerPos(playerid, slx, sly, slz);
SetPlayerPos(playerid, slx, sly, slz+2.5); // Немного подкинем игрока чтоб он не остался на авто
ApplyAnimation(playerid, "ped", "BIKE_fallR", 4.0, 0, 1, 0, 0, 0,0); // Применим anim падения
new Float:hp;
GetPlayerHealth(playerid, hp);
SetPlayerHealth(playerid, hp-15); // Отнимем 15 hp
SetTimerEx("anim2", 1100, 0, "d", playerid); // Поставим на таймер anim чтобы игрок нормально встал
}
}
return 1;
}
PHP:
public anim2(playerid)
{
ApplyAnimation(playerid, "ped", "getup", 4.0, 0, 1, 0, 0, 0,0);
return 1;
}
PHP:
stock GetVehicleSpeed(vehicleid)
{
new Float:Px,Float:Py,Float:Pz;
GetVehicleVelocity(vehicleid,Px,Py,Pz);
return floatround(floatsqroot(Px*Px+Py*Py+Pz*Pz) * 100.0);
}
Последнее редактирование:
