Hello community, you will see I am making a system of objects for the vehicle per player, the error is that they are erased when I charge them, for example I charge all the objects and as the 4 seconds are erased, this only happens when there are more players connected
thanks for your help.
Hola comunidad, veran estoy haciendo un sistema de objetos para el vehiculo por jugador, el error es que se me borran cuando los recargo, por ejemplo cargo todos los objetos y como a los 4 segundos se borran, esto solo me pasa cuando hay mas jugadores conectados.
Gracias por su ayuda.
PHP код:
stock LoadObjetcsVehicleForPlayer(playerid)
{
/**/
new Queri[365],DBResult:Results,Auto,AutoName[30];
format(Queri, sizeof(Queri), "SELECT `Vehiculo`,`UserName` FROM `Vehiculo` WHERE `UserName`='%s'",GetName(playerid));
Results = db_query(Database, Queri);
if(db_num_rows(Results))
{
Auto = db_get_field_assoc_int(Results, "Vehiculo");
db_get_field_assoc(Results, "UserName",AutoName, 30);
if(GetVehicleModel(GetPlayerVehicleID(playerid)) != Auto)
{
SendClientMessageEx(playerid, -1, "* Debes estar en el vehiculo '%s (ID: %d)'para poder generar los objetos.",VehicleName[Auto - 400], Auto);
return 1;
}
}
/**/
new Float:ofsetx,Float:ofsety,Float:ofsetz,Float:rotx,Float:roty,Float:rotz,modelxd,count,string[256],DBResult:R,colorxd,namegg[20];
new vID = GetPlayerVehicleID(playerid);
new Tamanog,Textog[30],negrillag,Cologr,Fontg[20],type,bandera,textura1[30],textura2[30],texturamodel;
if (!vID) return SendClientMessage(playerid,-1,"{CCCCCC}* Debes estar en un vehiculo.");
if(CargoObjetos[playerid]==true)
{
for(new a=0;a<GetCountOBS(playerid)+1;a++)
{
DestroyDynamicObject(OBJETODID[playerid][a]);
OBJETODID[playerid][a]=0;
printf("%d objetos destruidos",a);
}
}
format(string,sizeof(string),"SELECT * FROM `VehiculoObjetos` WHERE UserName ='%s'",GetName(playerid));
R=db_query(Database,string);
count = db_num_rows(R);
if(count == 0) return SendClientMessage(playerid,-1,"{CCCCCC}* Error interno: objetos no cargados, o no tienes objetos."), cmd_tuning(playerid,"");
CargoObjetos[playerid]=true;
for(new a; a < db_num_rows(R); a++)
{
db_get_field_assoc(R, "NAME",namegg, 30);
db_get_field_assoc(R, "TEXTURA1",textura1, 30);
db_get_field_assoc(R, "TEXTURA2",textura2, 30);
texturamodel = db_get_field_assoc_int(R, "TEXTURAMODEL");
type = db_get_field_assoc_int(R, "TYPE");
modelxd = db_get_field_assoc_int(R, "MODELID");
ofsetx = db_get_field_assoc_float(R, "OFF_X");
ofsety = db_get_field_assoc_float(R, "OFF_Y");
ofsetz = db_get_field_assoc_float(R, "OFF_Z");
rotx = db_get_field_assoc_float(R, "ROT_X");
roty = db_get_field_assoc_float(R, "ROT_Y");
rotz = db_get_field_assoc_float(R, "ROT_Z");
colorxd = db_get_field_assoc_int(R, "COLOR_1");
InfoOB[playerid][a][ObjetoName]=namegg;
InfoOB[playerid][a][Pos_x]=ofsetx;
InfoOB[playerid][a][Pos_y]=ofsety;
InfoOB[playerid][a][Pos_z]=ofsetz;
InfoOB[playerid][a][Pos_rx]=rotx;
InfoOB[playerid][a][Pos_ry]=roty;
InfoOB[playerid][a][Pos_rz]=rotz;
InfoOB[playerid][a][ObjetoModel]=modelxd;
db_get_field_assoc(R, "TEXTO",Textog, 30);
db_get_field_assoc(R, "FONT",Fontg, 30);
Tamanog = db_get_field_assoc_int(R, "TAMANO");
Cologr = db_get_field_assoc_int(R, "COLOR");
negrillag = db_get_field_assoc_int(R, "NEGRILLA");
bandera = db_get_field_assoc_int(R, "BANDERA");
//SendClientMessageEx(playerid,-1,"Objeto id %d",OBJETODID[playerid][a]);
if(type==0)
{
OBJETODID[playerid][a] = CreateDynamicObject(modelxd, 0.0,0.0,0.0, 0.0, 0.0, 0.0, GetPlayerVirtualWorld(playerid), GetPlayerInterior(playerid), -1, 200);
SetDynamicObjectMaterial(OBJETODID[playerid][a], 0, -1, "noone", "noone", colorxd);
AttachDynamicObjectToVehicle(OBJETODID[playerid][a], vID,ofsetx,ofsety,ofsetz,rotx,roty,rotz);
}
else if(type==1)
{
OBJETODID[playerid][a] = CreateDynamicObject(modelxd, 0.0,0.0,0.0, 0.0, 0.0, 0.0, GetPlayerVirtualWorld(playerid), GetPlayerInterior(playerid), -1, 200);
SetDynamicObjectMaterialText(OBJETODID[playerid][a],0,Textog,OBJECT_MATERIAL_SIZE_512x512,Fontg,Tamanog,negrillag,Cologr,0,0);
AttachDynamicObjectToVehicle(OBJETODID[playerid][a], vID,ofsetx,ofsety,ofsetz,rotx,roty,rotz);
}
else if(type==2)
{
OBJETODID[playerid][a] = CreateDynamicObject(modelxd, 0.0,0.0,0.0, 0.0, 0.0, 0.0, GetPlayerVirtualWorld(playerid), GetPlayerInterior(playerid), -1, 200);
TexturaBandera(OBJETODID[playerid][a],bandera);
AttachDynamicObjectToVehicle(OBJETODID[playerid][a], vID,ofsetx,ofsety,ofsetz,rotx,roty,rotz);
}
else if(type==3)
{
OBJETODID[playerid][a] = CreateDynamicObject(modelxd, 0.0,0.0,0.0, 0.0, 0.0, 0.0, GetPlayerVirtualWorld(playerid), GetPlayerInterior(playerid), -1, 200);
SetDynamicObjectMaterial(OBJETODID[playerid][a], 0, texturamodel, textura1, textura2, 0);
AttachDynamicObjectToVehicle(OBJETODID[playerid][a], vID,ofsetx,ofsety,ofsetz,rotx,roty,rotz);
}
printf("%d objeto creado",OBJETODID[playerid][a]);
db_next_row(R);
}
db_free_result(R);
return 1;
}