Blitzer werde nicht richtig geladen

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Guten Morgen Com,


    Und zwar habe ich ein Blitzer System geschrieben aber die Blitzer laden nicht richtig .
    Wenn ich die Ingame erstelle funktioniert alles perfekt, sobald ich Restarte geht gar nicht mehr mit dem Blitzer


    Spoiler anzeigen
    public LoadBlitzer()
    {
    new rows, fields, count, result[64];
    cache_get_data(rows, fields);
    for(new i=0;i<rows;i++)
    {
    if(i < MAX_BLITZER)
    {
    Blitzer[i][ID] = cache_get_field_content_int(i, "ID");
    cache_get_field_content(i,"SperreX",result);
    Blitzer[i][sperreX] = floatstr(result);
    cache_get_field_content(i,"SperreY",result);
    Blitzer[i][sperreY] = floatstr(result);
    cache_get_field_content(i,"SperreZ",result);
    Blitzer[i][sperreZ] = floatstr(result);
    cache_get_field_content(i,"BlitzerGeschwindigkeit",result);
    Blitzer[i][BlitzerGeschwindigkeit] = strval(result);
    cache_get_field_content(i, "BlitzerOrt", Blitzer[i][BlitzerOrt], myCon, 64);
    Blitzer[i][ID] = CreateDynamicObject(18880,Blitzer[i][sperreX],Blitzer[i][sperreY],Blitzer[i][sperreZ]-2.0,0.0,0.0,10);
    count++;
    }
    }
    printf("[LOAD] Blitzer geladen: %d/%d", count, MAX_BLITZER);
    return 1;
    }



    Ich hoffe es kann jemand helfen Jeffry:

  • Versuche es mal so:


    Spoiler anzeigen

    public LoadBlitzer()
    {
    new rows, fields, count = 0;
    cache_get_data(rows, fields);
    if(!rows) return 1;
    while(count<num_rows)
    {
    new result[64];
    Blitzer[i][ID] = cache_get_field_content_int(i, "ID");
    cache_get_field_content(i,"SperreX",result);
    Blitzer[i][sperreX] = floatstr(result);
    cache_get_field_content(i,"SperreY",result);
    Blitzer[i][sperreY] = floatstr(result);
    cache_get_field_content(i,"SperreZ",result);
    Blitzer[i][sperreZ] = floatstr(result);
    cache_get_field_content(i,"BlitzerGeschwindigkeit",result);
    Blitzer[i][BlitzerGeschwindigkeit] = strval(result);
    cache_get_field_content(i, "BlitzerOrt", Blitzer[i][BlitzerOrt], myCon, 64);
    Blitzer[i][ID] = CreateDynamicObject(18880,Blitzer[i][sperreX],Blitzer[i][sperreY],Blitzer[i][sperreZ]-2.0,0.0,0.0,10);
    count++;
    }
    printf("[LOAD] Blitzer geladen: %d/%d", count, MAX_BLITZER);
    return 1;
    }

    Mit freundlichen Grüßen,


    Fabi.StaR :love::saint:


  • Jeffry:


    Query:


    Spoiler anzeigen
    stock CreateBlitzer(playerid,geschwinigkeit,ortschaft[])
    {
    new string[128],query[256];
    for(new i=0;i<MAX_BLITZER;i++)
    {
    GetPlayerPos(playerid,Blitzer[i][sperreX],Blitzer[i][sperreY],Blitzer[i][sperreZ]);
    Blitzer[i][EGmBhHp] = 100;
    Blitzer[i][EGmBhTstamp] = gettime() + ((random(10) + 10)*60);
    Blitzer[i][BlitzerGeschwindigkeit] = geschwinigkeit;
    Blitzer[i][EGmBhRubbishObject] = -1;
    Blitzer[i][Erstellt] = 1;
    strmid(Blitzer[i][BlitzerOrt],ortschaft,0,strlen(ortschaft),64);
    Blitzer[i][ID] = CreateDynamicObject(18880,Blitzer[i][sperreX],Blitzer[i][sperreY],Blitzer[i][sperreZ]-2.0,0.0,0.0,10);
    format(string,sizeof(string),"Du hast ein Blitzer mit der Geschwindigkeit von %i Km/h an dem Ort %s erstellt.",geschwinigkeit,ortschaft);
    SendClientMessage(playerid,COLOR_YELLOW,string);
    format(query, sizeof(query), "INSERT INTO `script_blitzer` (id, Erstellt, SperreX, SperreY, SperreZ, BlitzerGeschwindigkeit, BlitzerOrt) VALUES ('%d','%d','%f','%f','%f','%d','%s')",Blitzer[i][ID],Blitzer[i][Erstellt],Blitzer[i][sperreX],Blitzer[i][sperreY],Blitzer[i][sperreZ],Blitzer[i][BlitzerGeschwindigkeit],Blitzer[i][BlitzerOrt]);
    mysql_function_query(myCon, query, true,"LoadNewBlitzer","i",i);
    return i;
    }
    return -1;
    }


    Datenbank:


  • Jeffry:


    MySQL Log:



    Server Log:


    [13:47:08] MySQL: Die Verbindung wurde erfolgreich hergestellt.
    [13:47:08] ----------------------------------
    [13:47:08] Number of vehicle models: 52
    [13:47:09] [LOAD] Fraktions Fahrzeuge wurden geladen (80/400)
    [13:47:09] [LOAD] Häuser geladen: 80/150
    [13:47:09] [LOAD] BIZes geladen: 1/120
    [13:47:09] [LOAD] Tankstellen geladen: 1/100
    [13:47:09] [LOAD] Gutscheine geladen: 0/150
    [13:47:09] [LOAD] Blitzer geladen: 2/250

  • Jeffry:


    Ich habe auch 2 Stück aufgestellt. und die gehen nicht.
    Es darf bis 250 Blitzer aufgestellt werden.


    public OnBlitzer(playerid)
    {
    new vehicleid = GetPlayerVehicleID(playerid),string[128];
    for(new blitzerid=0;blitzerid<MAX_BLITZER;blitzerid++)
    {
    if(Blitzer[blitzerid][Erstellt] == 1)
    {
    if(IsVehicleInRangeOfPoint(vehicleid,25.0,Blitzer[blitzerid][sperreX],Blitzer[blitzerid][sperreY],Blitzer[blitzerid][sperreZ]))
    {


    if(GetVehicleSpeed(vehicleid) > (Blitzer[blitzerid][BlitzerGeschwindigkeit]))
    {
    PlayerPlaySound(playerid,1132,0.0,0.0,0.0);
    format(string,sizeof(string),"Du wurdest wegen einer überhöhten Geschwindigkeit (%i/%i Km/h) geblitzt.",GetVehicleSpeed(GetPlayerVehicleID(playerid)),Blitzer[blitzerid][BlitzerGeschwindigkeit]);
    SendClientMessage(playerid,0xFF444BFF,string);
    SendClientMessage(playerid,0xFF444BFF,"Du hast 2 Punkte & -400$ für den Vertoß gegen die StVo erhalten.");

    }
    }
    }
    }
    return 1;
    }

  • Achso, laden klappt, aber die funktionieren dann nicht, da in dem Screenshot 4 Blitzer waren bin ich davon ausgegangen er lädt sie nicht. Gut, dass du den Code gepostet hast.
    Beim Laden setzt du
    Blitzer[blitzerid][Erstellt]
    nicht auf 1.

  • Jeffry:


    Doch wird auf 1 Erstellt.


    Spoiler anzeigen
    stock CreateBlitzer(playerid,geschwinigkeit,ortschaft[])
    {
    new string[128],query[256];
    for(new i=0;i<MAX_BLITZER;i++)
    {
    GetPlayerPos(playerid,Blitzer[i][sperreX],Blitzer[i][sperreY],Blitzer[i][sperreZ]);
    Blitzer[i][EGmBhHp] = 100;
    Blitzer[i][EGmBhTstamp] = gettime() + ((random(10) + 10)*60);
    Blitzer[i][BlitzerGeschwindigkeit] = geschwinigkeit;
    Blitzer[i][EGmBhRubbishObject] = -1;
    Blitzer[i][Erstellt] = 1;
    strmid(Blitzer[i][BlitzerOrt],ortschaft,0,strlen(ortschaft),64);
    Blitzer[i][ID] = CreateDynamicObject(18880,Blitzer[i][sperreX],Blitzer[i][sperreY],Blitzer[i][sperreZ]-2.0,0.0,0.0,10);
    format(string,sizeof(string),"Du hast ein Blitzer mit der Geschwindigkeit von %i Km/h an dem Ort %s erstellt.",geschwinigkeit,ortschaft);
    SendClientMessage(playerid,COLOR_YELLOW,string);
    format(query, sizeof(query), "INSERT INTO `script_blitzer` (id, Erstellt, SperreX, SperreY, SperreZ, BlitzerGeschwindigkeit, BlitzerOrt) VALUES ('%d','%d','%f','%f','%f','%d','%s')",Blitzer[i][ID],Blitzer[i][Erstellt],Blitzer[i][sperreX],Blitzer[i][sperreY],Blitzer[i][sperreZ],Blitzer[i][BlitzerGeschwindigkeit],Blitzer[i][BlitzerOrt]);
    mysql_function_query(myCon, query, true,"LoadNewBlitzer","i",i);
    return i;
    }
    return -1;
    }