04.02.2013, 16:56
Buenas, SAMP. Desde hace tiempo tengo un problema, bastante molesto. No he podido encontrar la causa pero es bastante molesto. El tema es el siguiente: Cuando spawneo un coche con mi comando (/car), algunas veces ( no siempre), me teletransporta a la granja con el coche y todo. Ademas de eso, si spawneo varios coches, cuando uso mi comando para respawn todos los coches ninguno respawnea, por lo que se acumulan mas y mas coches hasta hacer todo injugable, etc. Sin embargo, todos los demas coches re-spawnean, pero solo pasa con /car. Bueno, mejor quedarнa diciendo que son varios los problemas, pero sin nada mas que decir ya he expresado todo.
Estos son los codigos:
Debe ser algo fбcil tal vez, pero todavнa estoy aprendiendo y me cuesta. Espero una respuesta que resuelva esto de una vez.
Estos son los codigos:
pawn Код:
dcmd_car(playerid,params[])
{
if(AccInfo[playerid][Level] >= 3 || AccInfo[playerid][pVip] >= 3)
{
new Index;
new tmp[256]; tmp = strtok(params,Index);
new tmp2[256]; tmp2 = strtok(params,Index);
new tmp3[256]; tmp3 = strtok(params,Index);
if(!strlen(tmp)) return
SendClientMessage(playerid, LIGHTBLUE2, "Usage: /car [ModelID/Name] [Colour1] [Colour2]") &&
SendClientMessage(playerid, orange, "Function: Will create a Car with specified Colours");
new car;
new string[128];
new colour1, colour2;
if(!IsNumeric(tmp))
car = GetVehicleModelIDFromName(tmp);
else car = strval(tmp);
if(car < 400 || car > 611) return SendClientMessage(playerid, red, "ERROR: Invalid Vehicle Model ID!");
if(!strlen(tmp2)) colour1 = random(126); else colour1 = strval(tmp2);
if(!strlen(tmp3)) colour2 = random(126); else colour2 = strval(tmp3);
new LVehicleID;
new Float:X,Float:Y,Float:Z;
new Float:Angle,int1;
if(AccInfo[playerid][pCar] != -1 && !IsPlayerAdmin(playerid))
GetPlayerPos(playerid, X,Y,Z);
GetPlayerFacingAngle(playerid,Angle);
int1 = GetPlayerInterior(playerid);
LVehicleID = CreateVehicle(car, X,Y,Z+1, Angle, colour1, colour2, 60);
LinkVehicleToInterior(LVehicleID,int1);
AccInfo[playerid][pCar] = LVehicleID;
PutPlayerInVehicle(playerid,AccInfo[playerid][pCar], 0);
SendCommandToAdmins(playerid,"Car");
format(string, sizeof(string), "%s Spawned a \"%s\" (Model:%d) Colours (%d, %d), Pos: X:%0.2f, Y:%0.2f, Z:%0.2f", pName(playerid), VehicleNames[car-400], car, colour1, colour2, X, Y, Z);
SaveIn("CarSpawns",string);
format(string, sizeof(string), "|- You have Spawned a \"%s\" (Model: %d) with Colours: %d,%d -|", VehicleNames[car-400], car, colour1, colour2);
return SendClientMessage(playerid,LIGHTBLUE, string);
}
else return ErrorMessages(playerid, 6);
}
pawn Код:
dcmd_respawncars(playerid,params[])
{
#pragma unused params
if(AccInfo[playerid][Level] >= 5 || IsPlayerAdmin(playerid))
{
SendClientMessage(playerid, green, "|- Your have Successfully Respawned all Vehicles! -|");
GameTextForAll("~n~~n~~n~~n~~n~~n~~r~Vehicles ~g~Respawned!", 3000,1);
for(new i = 1; i <= MAX_VEHICLES; i++)
{
if(!VehicleOccupied(i))
{
SetVehicleToRespawn(i);
}
}
return 1;
}
else return ErrorMessages(playerid, 1);
}