17.10.2014, 00:39
Hello, quisiera saber si hay alguna funciуn para obtener la id de un vehнculo sin estar ocupado, muchas gracias.
new vVehicleID[3];
vVehicleID[0] = AddStaticVehicleEx(model, Float:x, Float:y, Float:z, Float:angle, color1, color2, respawn_delay);
vVehicleID[1] = AddStaticVehicleEx(model, Float:x, Float:y, Float:z, Float:angle, color1, color2, respawn_delay);
vVehicleID[2] = AddStaticVehicleEx(model, Float:x, Float:y, Float:z, Float:angle, color1, color2, respawn_delay);
CMD:abrir(playerid, params[])
{
new engine, lights, alarm, doors, bonnet, boot, objective, Float:x, Float:y, Float:z, text[64];
foreach(aAutos, i)
{
GetVehiclePos(i, x, y, z);
if(IsPlayerInRangeOfPoint(playerid, 2.0, x, y, z)) return 1;
if(Informacion[playerid][pLlaves1] == i || Informacion[playerid][pLlaves2] == i)
{
format(text, sizeof(text), "%s abriу las puertas de su vehнculo");
ProxDetector(30, playerid, text, Color_Purpura);
GetVehicleParamsEx(i, engine, lights, alarm, doors, bonnet, boot, objective);
SetVehicleParamsEx(i, engine, lights, alarm, true, bonnet, boot, objective);
}
}
return 1;
}
#define MAX_OWNED_VEHICLES 3
new vVehicleID[3];
public OnGameModeInit()
{
vVehicleID[0] = AddStaticVehicleEx(model, Float:x, Float:y, Float:z, Float:angle, color1, color2, respawn_delay);
vVehicleID[1] = AddStaticVehicleEx(model, Float:x, Float:y, Float:z, Float:angle, color1, color2, respawn_delay);
vVehicleID[2] = AddStaticVehicleEx(model, Float:x, Float:y, Float:z, Float:angle, color1, color2, respawn_delay);
return 1;
}
CMD:abrir(playerid, params[])
{
new engine, lights, alarm, doors, bonnet, boot, objective, Float:x, Float:y, Float:z, text[64];
for(new i = 0; i < MAX_OWNED_VEHICLES; i ++)
{
GetVehiclePos(vVehicleID[i], x, y, z);
if(!IsPlayerInRangeOfPoint(playerid, 2.0, x, y, z)) return 1;
if(Informacion[playerid][pLlaves1] == i || Informacion[playerid][pLlaves2] == i)
{
format(text, sizeof(text), "%s abriу las puertas de su vehнculo");
ProxDetector(30, playerid, text, Color_Purpura);
GetVehicleParamsEx(vVehicleID[i], engine, lights, alarm, doors, bonnet, boot, objective);
SetVehicleParamsEx(vVehicleID[i], engine, lights, alarm, true, bonnet, boot, objective);
}
}
return 1;
}
#define MAX_CARS 500
new Iterator:aAutos<MAX_CARS>;
CMD:crearauto(playerid, params[])
{
new modelo, precio, color1, color2;
new Float:x, Float:y, Float:z, Float:angulo;
new i = SlotAutoLibre();
if(Informacion[playerid][pAdmin] < 5) return SendClientMessage(playerid, -1, "No eres administrador");
if(sscanf(params,"iiii",modelo,precio,color1,color2)) return SendClientMessage(playerid, -1, "/crearauto (Modelo) (Precio) (Color1) (Color2)");
if(modelo < 400 || modelo > 611) return SendClientMessage(playerid, -1, "El modelo ingresado es invalido.");
if(i == -1) return SendClientMessage(playerid, -1, "No se pueden crear mбs coches");
GetPlayerPos(playerid, x, y, z);
GetPlayerFacingAngle(playerid, angulo);
InformacionA[i][aModelo] = modelo;
InformacionA[i][aPrecio] = precio;
InformacionA[i][aPosX] = x;
InformacionA[i][aPosY] = y;
InformacionA[i][aPosZ] = z;
InformacionA[i][aRotacion] = angulo;
InformacionA[i][aColor1] = color1;
InformacionA[i][aColor2] = color2;
InformacionA[i][aComprado] = false;
CreateVehicle(modelo, x, y, z, angulo, color1, color2, -1);
Iter_Add(aAutos,i);
ActualizarAutos(i);
return 1;
}
#define MAX_CARS 500
new Iterator:vVehicleID<MAX_CARS>;
public OnGameModeInit()
{
new vehicleid;
vehicleid = AddStaticVehicle(400, 1015.3524, -1343.9974, 13.0929, 88.6509, -1, -1);
Iter_Add(vVehicleID, vehicleid);
vehicleid = AddStaticVehicle(400, 1015.3524, -1343.9974, 13.0929, 88.6509, -1, -1);
Iter_Add(vVehicleID, vehicleid);
vehicleid = AddStaticVehicle(400, 1015.3524, -1343.9974, 13.0929, 88.6509, -1, -1);
Iter_Add(vVehicleID, vehicleid);
vehicleid = AddStaticVehicle(400, 1015.3524, -1343.9974, 13.0929, 88.6509, -1, -1);
Iter_Add(vVehicleID, vehicleid);
vehicleid = AddStaticVehicle(400, 1015.3524, -1343.9974, 13.0929, 88.6509, -1, -1);
Iter_Add(vVehicleID, vehicleid);
return 1;
}
CMD:abrir(playerid, params[])
{
new string[144], Float:x, Float:y, Float:z, engine, lights, alarm, doors, bonnet, boot, objective;
foreach(new vehicleid: vVehicleID)
{
GetVehiclePos(vehicleid, x, y, z);
if(IsPlayerInRangeOfPoint(playerid, 5.0, x, y, z))
{
GetVehicleParamsEx(vehicleid, engine, lights, alarm, doors, bonnet, boot, objective);
SetVehicleParamsEx(vehicleid, engine, lights, alarm, true, bonnet, boot, objective);
format(string, sizeof(string), "%s (%d) abrio las puertas de su vehiculo!", PlayerName(playerid), playerid);
SendClientMessage(playerid, 0xFFFF00FF, string);
break;
}
}
return 1;
}
stock PlayerName(playerid)
{
new name[25];
GetPlayerName(playerid, name, sizeof(name));
return name;
}