SA-MP Forums Archive
How to remove player from car? - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: SA-MP Scripting and Plugins (https://sampforum.blast.hk/forumdisplay.php?fid=8)
+--- Forum: Scripting Help (https://sampforum.blast.hk/forumdisplay.php?fid=12)
+--- Thread: How to remove player from car? (/showthread.php?tid=547244)



How to remove player from car? - Delgad0 - 21.11.2014

Hello!
I want to make, that with Infernus could drive only admins. I tried everything, and its not working... Maybe I'm doing something wrong. Please help me.
This is my code:
Код HTML:
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
	new vhid = GetPlayerVehicleID(playerid);

	if(vhid == 411 && sInfo[playerid][admin] < 1)
	{
		SendClientMessage(playerid, -1, "This car is for ADMINS!");
   		RemovePlayerFromVehicle(playerid);
	}

	return 1;
}



Re: How to remove player from car? - DavidBilla - 21.11.2014

Код HTML:
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
	new vhid = GetPlayerVehicleID(playerid);

	if(vhid == 411 && sInfo[playerid][admin] < 1)
	{
		SendClientMessage(playerid, -1, "This car is for ADMINS!");
   		RemovePlayerFromVehicle(playerid);
	}

	return 1;
}



Re: How to remove player from car? - BigGroter - 21.11.2014

Код:
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
	if(vehicleid == 411 && sInfo[playerid][admin] < 1)
	{
		SendClientMessage(playerid, -1, "This car is for ADMINS!");
   		RemovePlayerFromVehicle(playerid);
	}

	return 1;
}
Try that.


Re : How to remove player from car? - Dutheil - 21.11.2014

Use OnPlayerStateChange :
pawn Код:
public OnPlayerStateChange(playerid, newstate, oldstate)
{
    if(oldstate == PLAYER_STATE_ONFOOT && newstate == PLAYER_STATE_DRIVER)
    {
        new vehicleid = GetPlayerVehicleID(playerid);
        if(vhid == 411 && sInfo[playerid][admin] < 1)
        {
            SendClientMessage(playerid, -1, "This car is for ADMINS!");
            RemovePlayerFromVehicle(playerid);
        }
    }
    return 1;
}



Re: How to remove player from car? - Delgad0 - 21.11.2014

Quote:
Originally Posted by BigGroter
Посмотреть сообщение
Код:
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
	if(vehicleid == 411 && sInfo[playerid][admin] < 1)
	{
		SendClientMessage(playerid, -1, "This car is for ADMINS!");
   		RemovePlayerFromVehicle(playerid);
	}

	return 1;
}
Try that.
Not working :/


Re: How to remove player from car? - Pawnify - 21.11.2014

I think the onplayerstatechange is an inefficient way of doing it.

Код:
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
	new vhid = GetPlayerVehicleID(playerid);

	if(vhid == 411 && sInfo[playerid][admin] < 1)
	{
		SendClientMessage(playerid, -1, "This car is for ADMINS!");
   		TogglePlayerControllable(playerid, 1);
	}

	return 1;
}
Using TogglePlayerControllable will just not let that player even enter the car.. they can't even open the door of the car if they aren't admin. Give it a try.


Re: How to remove player from car? - Larceny - 21.11.2014

411 is the vehicle ID or the vehicle MODEL?


Re: Re : How to remove player from car? - Delgad0 - 21.11.2014

Quote:
Originally Posted by Dutheil
Посмотреть сообщение
Use OnPlayerStateChange :
pawn Код:
public OnPlayerStateChange(playerid, newstate, oldstate)
{
    if(oldstate == PLAYER_STATE_ONFOOT && newstate == PLAYER_STATE_DRIVER)
    {
        new vehicleid = GetPlayerVehicleID(playerid);
        if(vhid == 411 && sInfo[playerid][admin] < 1)
        {
            SendClientMessage(playerid, -1, "This car is for ADMINS!");
            RemovePlayerFromVehicle(playerid);
        }
    }
    return 1;
}
It's not working too. :/ But thanks


Re: How to remove player from car? - Delgad0 - 21.11.2014

Quote:
Originally Posted by Larceny
Посмотреть сообщение
411 is the vehicle ID or the vehicle MODEL?
Omg.. Lol. I'm so stupid... Now its working, but not removing player from car. Thanks a lot!


Re : How to remove player from car? - Dutheil - 21.11.2014

Try it and say me
pawn Код:
public OnPlayerStateChange(playerid, newstate, oldstate)
{
    if(oldstate == PLAYER_STATE_ONFOOT && newstate == PLAYER_STATE_DRIVER)
    {
        new model = GetVehicleModel(GetPlayerVehicleID(playerid));
        if(model == 411 && sInfo[playerid][admin] < 1)
        {
            SendClientMessage(playerid, -1, "This car is for ADMINS!");
            RemovePlayerFromVehicle(playerid);
        }
    }
    return 1;
}