Лазил в интернете и нашёл урок "Создание интерьера авто".
Для начала создаём переменную для того, чтобы мы выходили из того автомобиля в который вошли
Добавляем ко всем new нашу
new GetBuritoID[MAX_PLAYERS]
В public OnPlayerStateChange (playerid, newstate, oldstate) кидаем
if (newstate == PLAYER_STATE_PASSENGER) //если игрок как пасажир
{
if((GetPlayerVehicleSeat(playerid)==2 || GetPlayerVehicleSeat(playerid)==3) && GetVehicleModel(GetPlayerVehicleID(playerid)) == 482)//если игрок сел именно в зади и модел = бурито
{
SetPlayerVirtualWorld(playerid,GetPlayerVehicleID(playerid));//зададим ему виртуальный мир под номером того автомобиля в который сел.
GetBuritoID[playerid] = GetPlayerVehicleID(playerid);//запишем в переменную ид автомобиля
SetPlayerPos(playerid, X, Y, Z);//координаты появления ставим свои
SetPlayerFacingAngle(playerid, 273.3243);
SetCameraBehindPlayer(playerid);
}
}
В public OnPlayerKeyStateChange(playerid, newkeys, oldkeys) добавляем
if(newkeys == 16 && GetBuritoID[playerid] >-1)//если игрок нажал энтер или f и он в автомобиле
{
new Float:X, Float:Y, Float:Z;
GetVehiclePos(GetBuritoID[playerid], X, Y, Z);//узнаем координаты автомобиля в катором игрок (не трогаем)
SetPlayerPos(playerid, X+4, Y, Z);//зададим координаты игроку рядом с авто (не трогаем)
SetPlayerInterior(playerid, 0);
SetPlayerVirtualWorld(playerid,0);
GetBuritoID[playerid] = -1;
return 1;
}
Чтобы при уничтожении машины игрок тоже умирал добавляем в public OnVehicleDeath(vehicleid, killerid)
if(GetVehicleModel(vehicleid)==482) BuritoDestroy(vehicleid);
{
for(new i=0; i<MAX_PLAYERS; i++)
if(IsPlayerConnected(i))
if(GetBuritoID[playerid]==vehicleid)
{ SetPlayerHealth(i,0.0);
GetBuritoID[playerid] = -1;
}
}
Ну и в public OnPlayerConnect(playerid) добавляем
GetBuritoID[playerid] = -1;
Урок не мой нашёл на просторах интернета. Автор неизвестен!
Для начала создаём переменную для того, чтобы мы выходили из того автомобиля в который вошли
Добавляем ко всем new нашу
new GetBuritoID[MAX_PLAYERS]
В public OnPlayerStateChange (playerid, newstate, oldstate) кидаем
if (newstate == PLAYER_STATE_PASSENGER) //если игрок как пасажир
{
if((GetPlayerVehicleSeat(playerid)==2 || GetPlayerVehicleSeat(playerid)==3) && GetVehicleModel(GetPlayerVehicleID(playerid)) == 482)//если игрок сел именно в зади и модел = бурито
{
SetPlayerVirtualWorld(playerid,GetPlayerVehicleID(playerid));//зададим ему виртуальный мир под номером того автомобиля в который сел.
GetBuritoID[playerid] = GetPlayerVehicleID(playerid);//запишем в переменную ид автомобиля
SetPlayerPos(playerid, X, Y, Z);//координаты появления ставим свои
SetPlayerFacingAngle(playerid, 273.3243);
SetCameraBehindPlayer(playerid);
}
}
В public OnPlayerKeyStateChange(playerid, newkeys, oldkeys) добавляем
if(newkeys == 16 && GetBuritoID[playerid] >-1)//если игрок нажал энтер или f и он в автомобиле
{
new Float:X, Float:Y, Float:Z;
GetVehiclePos(GetBuritoID[playerid], X, Y, Z);//узнаем координаты автомобиля в катором игрок (не трогаем)
SetPlayerPos(playerid, X+4, Y, Z);//зададим координаты игроку рядом с авто (не трогаем)
SetPlayerInterior(playerid, 0);
SetPlayerVirtualWorld(playerid,0);
GetBuritoID[playerid] = -1;
return 1;
}
Чтобы при уничтожении машины игрок тоже умирал добавляем в public OnVehicleDeath(vehicleid, killerid)
if(GetVehicleModel(vehicleid)==482) BuritoDestroy(vehicleid);
{
for(new i=0; i<MAX_PLAYERS; i++)
if(IsPlayerConnected(i))
if(GetBuritoID[playerid]==vehicleid)
{ SetPlayerHealth(i,0.0);
GetBuritoID[playerid] = -1;
}
}
Ну и в public OnPlayerConnect(playerid) добавляем
GetBuritoID[playerid] = -1;
Урок не мой нашёл на просторах интернета. Автор неизвестен!
Последнее редактирование модератором: