Vehicle problem
#1

....
Reply
#2

CMD:veh(playerid, params[], cmdtext[]) {

new pff[256];
new idx[256];
new vehicle = GetVehicleModelIDFromName(pff);
new String[256];

idx = strtok(cmdtext, idx);
pff = strtok(cmdtext);
if(sscanf(params, "i", vehicle)) SendClientMessage(playerid, 0xFFFFFF, "{D68F31}Usage: {FFFFFF}/veh [vehicleid/name]");
if(vehicle < 400 || vehicle > 611) SendClientMessage(playerid, 0xFFFFFF, "{D68F31}Error: {FFFFFF}Invalid vehicle name! [ Car ID's range from 400 - 611 ]");
else
{
if(vCar[playerid] != -1)
{
DestroyVehicle(vCar[playerid]);
}
new Float, Float:y, Float:z;
GetPlayerPos(playerid, x, y, z);
vCar[playerid] = CreateVehicle(vehicle, x + 3, y, z, 0, 0,0, -1);
format(String, sizeof(String), "You have spawned a %s", aVehicleNames[vehicle - 400]);
SendClientMessage(playerid, 0xFFFFFF, String);
}
return 1;
}
Reply
#3

Try this;
pawn Код:
CMD:veh(playerid, params[])
{
    // Also a tip, if you are using ZCMD, and it is a single parameter command, don't clog up lines with sscanf, using sscanf for one parameter (unless it's a player) is pretty useless.
    if(isnull(params)) return SendClientMessage(playerid, COLOR_RED, "USAGE: /veh (Vehicle Name)");
    // I removed the if(IsPlayerInAnyVehicle, it isn't needed, it will eject the player if they are in a vehicle upon PutPlayerInVehicle
    if(ReturnVehicleID(params) == INVALID_VEHICLE_ID) return SendClientMessage(playerid, COLOR_RED, "Invalid Vehicle Model.");
    if(IsVehicleAdminModel(GetPlayerVehicleID(playerid))) // Instead of making a huge if statement, create a stock function
        return SendClientMessage(playerid, COLOR_RED, "You Must Be An Admin To Spawn This Vehicle.");
    else
    {
        new Float:pPos[4], vid;
        GetPlayerPos(playerid, pPos[0], pPos[1], pPos[2]);
        GetPlayerFacingAngle(playerid, pPos[3]);
        vid = CreateVehicle(ReturnVehicleID(params), pPos[0], pPos[1], pPos[2] + 1.00, pPos[3], 0, 0, 60);
        PutPlayerInVehicle(playerid, vid, 0);
    }
    return 1;
}
   
stock IsVehicleAdminModel(vehicleid)
{
    switch(GetVehicleModel(vehicleid))
    {
        case 432: return true;
        case 520: return true;
        case 425: return true;
        case 441: return true;
        case 464: return true;
        case 465: return true;
        case 501: return true;
        case 564: return true;
        case 594: return true;
        case 447: return true;
        case 449: return true;
        case 537: return true;
        case 538: return true;
        case 539: return true;
        case 577: return true;
        case 592: return true;
        case 601: return true;
        case 604: return true;
        case 605: return true;
    }
    return false;
}
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)