What is wrong with it?
#1

I made a cmd which it appears the box you write anything you want for change the vehicle plate.
The box appears to write input, but after this, the vehicle doesn't respawn. So the plate doesn't change.
Is anything wrong
pawn Код:
CMD:vplate(playerid, params[])
{
    new Float:x,Float:y,Float:z,Float:ang;
    GetVehiclePos(GetPlayerVehicleID(playerid),x,y,z);
    GetVehicleZAngle(GetPlayerVehicleID(playerid),ang);
    if(!IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid,COLOR_RED,"ERROR: {FFFFFF}You're not in a vehicle!");
    ShowPlayerDialog(playerid,5,DIALOG_STYLE_INPUT,"{FFFFFF}Vehicle Plate","{FFFF00}Input the vehicle plate you want below.","Yes","Cancel");
    return 1;
}
pawn Код:
if(dialogid == 5) {
        if(response) {
            new Float:x,Float:y,Float:z,Float:ang;
            SetVehicleNumberPlate(GetPlayerVehicleID(playerid), inputtext);
            GetVehiclePos(GetPlayerVehicleID(playerid),x,y,z);
            GetVehicleZAngle(GetPlayerVehicleID(playerid),ang);
            SetVehicleToRespawn(GetPlayerVehicleID(playerid));
            SetVehiclePos(GetPlayerVehicleID(playerid),x,y,z);
            PutPlayerInVehicle(playerid,GetPlayerVehicleID(playerid),0);
            SetVehicleZAngle(GetPlayerVehicleID(playerid),ang);
        }
    }
Reply
#2

You can't use GetPlayerVehicleID( ) after SetVehicleToRespawn( ) because the player isn't anymore in the vehicle.

Change
Код:
if(dialogid == 5) {
        if(response) {
            new Float:x,Float:y,Float:z,Float:ang;
            SetVehicleNumberPlate(GetPlayerVehicleID(playerid), inputtext);
            GetVehiclePos(GetPlayerVehicleID(playerid),x,y,z);
            GetVehicleZAngle(GetPlayerVehicleID(playerid),ang);
            SetVehicleToRespawn(GetPlayerVehicleID(playerid));
            SetVehiclePos(GetPlayerVehicleID(playerid),x,y,z);
            PutPlayerInVehicle(playerid,GetPlayerVehicleID(playerid),0);
            SetVehicleZAngle(GetPlayerVehicleID(playerid),ang);
        }
    }
with this:
Код:
if(dialogid == 5) 
{
	if( !response ) 
		return 1;

	new Float:x, Float:y, Float:z, Float:ang, vehicleid;
	vehicleid = GetPlayerVehicleID( playerid );

	SetVehicleNumberPlate( vehicleid, inputtext );
	GetVehiclePos( vehicleid, x, y, z );
	GetVehicleZAngle( vehicleid, ang );
	SetVehicleToRespawn( vehicleid );
	SetVehiclePos( vehicleid, x, y, z );
	PutPlayerInVehicle( playerid, vehicleid, 0 );
	SetVehicleZAngle( vehicleid, ang );

}
Reply
#3

Try this:
pawn Код:
CMD:vplate(playerid, params[])
{
    if(!IsPlayerInAnyVehicle(playerid))
        return SendClientMessage(playerid,COLOR_RED,"ERROR: {FFFFFF}You're not in a vehicle!");

    ShowPlayerDialog(playerid,5,DIALOG_STYLE_INPUT,"{FFFFFF}Vehicle Plate","{FFFF00}Input the vehicle plate you want below.","Yes","Cancel");
    return 1;
}

if(dialogid == 5)
{
    if(response)
    {
        new
            Float: iPos[4], iVehicleID;

        iVehicleID = GetPlayerVehicleID(playerid);

        GetVehiclePos(iVehicleID, iPos[0], iPos[1], iPos[2]);
        GetVehicleZAngle(iVehicleID, iPos[3]);

        SetVehicleNumberPlate(iVehicleID, inputtext);
        SetVehicleToRespawn(iVehicleID);
        PutPlayerInVehicle(playerid, iVehicleID, 0);

        SetVehiclePos(iVehicleID, iPos[0], iPos[1], iPos[2]);
        SetVehicleZAngle(iVehicleID, iPos[3]);
    }
}
Reply
#4

Thank you both!
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)