26.03.2013, 15:19
(
Последний раз редактировалось [..MonTaNa..]; 30.04.2013 в 04:47.
)
....
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;
}