ко всем переменным

enum vInfo
{,
    Float:AntiVehPos[4],
    bool:AntiPropalCar
};
new pCars[MAX_VEHICLES][vInfo];

==========================================================================================
                                                                                   В секундный таймер
    for(new c=0;c<MAX_VEHICLES+1;c++)
    {
        if(GetVehicleDistanceFromPoint(c,pCars[c][AntiVehPos][0],pCars[c][AntiVehPos][1],pCars[c][AntiVehPos][2]) > 2 && !UseCar(c))
        {
            SetVehiclePosEx(c,pCars[c][AntiVehPos][0],pCars[c][AntiVehPos][1],pCars[c][AntiVehPos][2],pCars[c][AntiVehPos][3]);
        }
    } 

========================================================================================
                                                                                     в конец мода

public OnGameMode()
{
    for(new car=0;car<MAX_VEHICLES+1;car++)
    {
        GetVehiclePos(car,pCars[car][AntiVehPos][0],pCars[car][AntiVehPos][1],pCars[car][AntiVehPos][2]);
        GetVehicleZAngle(car,pCars[car][AntiVehPos][3]);
        pCars[car][AntiPropalCar] = false;
    }

========================================================================================
                                                                                            В конец мода

public OnVehicleSpawn(vehicleid)
{
    if(pCars[vehicleid][AntiPropalCar] == false)
    {
        SetVehiclePosEx(vehicleid,pCars[vehicleid][AntiVehPos][0],pCars[vehicleid][AntiVehPos][1],pCars[vehicleid][AntiVehPos][2],pCars[vehicleid][AntiVehPos][3]);
        return 1;
    }
    pCars[vehicleid][AntiPropalCar] = false;
    return 1;
}

========================================================================================
                                                                                             в конец мода

public OnPlayerUpdate(playerid)
{
    if(GetPlayerState(playerid) == 2)
    {
        GetVehiclePos(carid,pCars[carid][AntiVehPos][0],pCars[carid][AntiVehPos][1],pCars[carid][AntiVehPos][2]);
        GetVehicleZAngle(carid,pCars[carid][AntiVehPos][3]);
    }

========================================================================================
                                                                                                В конец мода

stock UseCar(vehicleid)
{
    for(new i = GetMaxPlayers() - 1; i != -1; i--)
     {
        if(!IsPlayerConnected(i) || IsPlayerNPC(i) || !IsPlayerInVehicle(i, vehicleid)) continue;
        return 1;
    }
    return 0;
}
stock SetVehiclePosEx(vehicleid,Float:X,Float:Y,Float:Z,Float:AngleS = 0.0)
{
    pCars[vehicleid][AntiVehPos][0] = X;
    pCars[vehicleid][AntiVehPos][1] = Y;
    pCars[vehicleid][AntiVehPos][2] = Z;
    pCars[vehicleid][AntiVehPos][3] = AngleS;
    SetVehiclePos(vehicleid,X,Y,Z);
    SetVehicleZAngle(vehicleid,AngleS);
    return 1;
}
stock SetVehicleToRespawnEx(vehicleid)
{
    pCars[vehicleid][AntiPropalCar] = true;
    SetVehicleToRespawn(vehicleid);
    GetVehiclePos(vehicleid,pCars[vehicleid][AntiVehPos][0],pCars[vehicleid][AntiVehPos][1],pCars[vehicleid][AntiVehPos][2]);
    GetVehicleZAngle(vehicleid,pCars[vehicleid][AntiVehPos][3]);
    return 1;
}

========================================================================================
А теперь разберём в чём смысл где минусы а где плюсы

Минус:
1) если игрок выпрыгнет из машины,машина встанет на то место за 2 метра от него где он выпрыгнул (не знаю как доработать)
2) Если есть водитель, а его машину телепортирует читом, то античит не сработает из-за того что есть за рулём водитель (позже доработаю)
Плюсы:
1) машину не возможно телепортировать  к себе или респавнить её читом
2) игрока невозможно будет столкнуть в воду если он сидит на пассажирском сидении, а водителя нету
3) машину вообще нельзя стронуть с места если нету водителя
4) Если есть водитель, а его машину респавнили, то она вернёться и встанет рядом с ним

эта переменная
PHP код:
pCars[vehicleid][AntiPropalCar]