Hallo Community,
ich hab da ein problem, wenn ich das Fahrzeug kaufe geht alles wunderbar, sobald ich es neu parke, dann spawnt es nicht mehr, ist aber in der Datenbank richtig,
sobald ich den Server restarte dann kommen die Fahrzeuge wieder richtig... Es spinnt nur rum beim Parken...
Hier mein Speichern und laden:
stock LoadFrakAuto(i){
new var[256],var2[128];
format(var2, sizeof(var2),"SELECT * FROM `frakautos` WHERE `autoid` = '%d'", i);
self_mysql_queryEx(var2);
mysql_store_result();
while(mysql_fetch_row_format(var2,"|")){
mysql_get_field("autoid",var); FAutos[i][autoid] = strval(var);
mysql_get_field("autogestell",var ); FAutos[i][autogestell] = strval(var);
mysql_get_field("fraktion",var); FAutos[i][fraktionsnummer] = strval(var);
mysql_get_field("preis",var); FAutos[i][fraktionspreis] = strval(var);
mysql_get_field("farbe1",var); FAutos[i][farbe1] = strval(var);
mysql_get_field("farbe2",var); FAutos[i][farbe2] = strval(var);
mysql_get_field("autox",var); FAutos[i][autox] = floatstr(var);
mysql_get_field("autoy",var); FAutos[i][autoy] = floatstr(var);
mysql_get_field("autoz",var); FAutos[i][autoz] = floatstr(var);
mysql_get_field("autoa",var); FAutos[i][autoa] = floatstr(var);
FAutos[i][Fahrzeugfraku] = CreateVehicle(FAutos[i][autogestell],FAutos[i][autox],FAutos[i][autoy],FAutos[i][autoz],FAutos[i][autoa],FAutos[i][farbe1],FAutos[i][farbe2],-1);
}
return 1;
}
stock SaveFrakauto(i){
new query[900];
format(query,sizeof query,"UPDATE `frakautos` SET `autoid`='%d',`autogestell`='%d',`fraktion`='%d',`preis`='%d',`farbe1`='%d',`farbe2`='%d',`autox`='%.2f',`autoy`='%.2f',`autoz`='%.2f',`autoa`='%.2f' WHERE `autoid`='%d'",
i,FAutos[i][autogestell],FAutos[i][fraktionsnummer],FAutos[i][fraktionspreis],FAutos[i][farbe1],FAutos[i][farbe2],FAutos[i][autox],FAutos[i][autoy],FAutos[i][autoz],FAutos[i][autoa],i);
mysql_query(query);
return 1;
}
Mein parksystem:
dcmd_fpark(playerid,params[])
{
if(PlayerInfo[playerid][pLeader] > 0)
{
if(IsPlayerInAnyVehicle(playerid) && autoidfrakauto[playerid] > -1)
{
new Float:carx,Float:cary,Float:carz,Float:cara;
GetVehiclePos(GetPlayerVehicleID(playerid),carx,cary,carz);
GetVehicleZAngle(GetPlayerVehicleID(playerid),cara);
FAutos[autoidfrakauto[playerid]][autox] = carx;
FAutos[autoidfrakauto[playerid]][autoy] = cary;
FAutos[autoidfrakauto[playerid]][autoz] = carz;
FAutos[autoidfrakauto[playerid]][autoa] = cara;
SaveFrakauto(autoidfrakauto[playerid]);
DestroyVehicle(autoidfrakauto[playerid]);
LoadFrakAuto(autoidfrakauto[playerid]);
autoidfrakauto[playerid] = -1;
SendClientMessage(playerid,COLOR_YELLOW,"Du hast das Fraktionsauto umgeparkt.");
}
else{
SendClientMessage(playerid,COLOR_RED,"Du sitzt in keinem Fraktionsauto.");
}
}
else{
SendClientMessage(playerid,COLOR_RED,"Du bist nicht befugt dieses Fahrzeug zu parken.");
}
}
"autoidfrakauto" entnehme ich von hier:
onplayerentervehicle
for(new i=0; i<MAX_FAUTOS; i++)
{
if(vehicleid == FAutos[i][Fahrzeugfraku])
{
if(FAutos[vehicleid][fraktionsnummer] == PlayerInfo[playerid][pLeader] || FAutos[vehicleid][fraktionsnummer] == PlayerInfo[playerid][pMember])
{ autoidfrakauto[playerid] = FAutos[vehicleid][autoid];}
else{
SendClientMessage(playerid,COLOR_RED,"Das Auto darfst du nicht verwenden");
TogglePlayerControllable(playerid,false);
TogglePlayerControllable(playerid,true);
return 1;
}
}
}
Bitte um hilfe
MfG
Moritz