Beiträge von Jeffry

    Lass dir die Werte mal per Print ausgeben:
    if(tfrage[playerid]==GetPVarInt(playerid,string))
    zu:
    printf("%d == %d", tfrage[playerid], GetPVarInt(playerid,string));
    if(tfrage[playerid]==GetPVarInt(playerid,string))

    format(string1,sizeof(string1),"Name: {FFBE00}%s\n{FEFEFE}Frage: {FFBE00}%s\n\nDie Nachricht wird an den Spieler gesendet sobald du auf Absenden klickst.",PlayerInfo[playerid][pName],buffer[i]);
    zu:
    format(string1,sizeof(string1),"Name: {FFBE00}%s\n{FEFEFE}Frage: {FFBE00}%s\n\nDie Nachricht wird an den Spieler gesendet sobald du auf Absenden klickst.",PlayerInfo[playerid][pName],buffer);


    format(string,sizeof(string),"[Report System] %s: %s",PlayerInfo[playerid],inputtext);
    zu:
    format(string,sizeof(string),"[Report System] %s: %s",PlayerInfo[playerid][pName],inputtext);

    Laut Log müsste das Label korrekt gelöscht werden.


    Sicher, dass das Label nicht gespeichert wird, und gewollt nach dem Neustart des Servers wieder erstellt wird?


    Ist es denn weg, wenn du die Konsole schließt?

    Lass es dir so mal per Print ausgeben, was steht so im Server Log?
    for(new i=0;i<MAX_OFFLINEPICKUPS;i++)
    {
    printf("i: %d / Created: %d / Label: %d / Pickup: %d", i, OfflineInfo[i][pickCreated], OfflineLable[i], OfflineInfo[i][pickID]);
    if(OfflineInfo[i][pickCreated] == true)
    {
    Delete3DTextLabel(OfflineLable[i]); //Hier
    DestroyPickup(OfflineInfo[i][pickID]); //Hier
    }
    }


    Versuche es einmal beim GMX und einmal im Befehl (Befehl vor GMX eingeben).

    Gehen die Labels denn weg, wenn du das mal in einen Test-Befehl einfügst und den Befehl eingibst?
    for(new i=0;i<MAX_OFFLINEPICKUPS;i++)
    {
    if(OfflineInfo[i][pickCreated] == true)
    {
    Delete3DTextLabel(OfflineLable[i]); //Hier
    DestroyPickup(OfflineInfo[i][pickID]); //Hier
    }
    }


    Vor dem GMX.

    Wo wird das h,m,s ausgelesen?


    In dem Code wird es nur genutzt. Die Zuweisung scheint woanders zu sein.
    Falls du nicht weist wo, mache es so:
    stock CreateOfflineInfo(playerid, reason)
    {
    new string[128],hr,mn,sc;
    if(sServerGMX == 1)return 1;
    for(new i=0;i<MAX_OFFLINEPICKUPS;i++)
    {
    if(Spieler[playerid][pLoggedIn])
    {
    if(OfflineInfo[i][pickCreated] == false)
    {
    OfflineInfo[i][pickCreated] = true;
    GetPlayerPos(playerid, OfflineInfo[i][pickPos][0], OfflineInfo[i][pickPos][1], OfflineInfo[i][pickPos][2]);
    OfflineInfo[i][pickVirtualWorld] = GetPlayerVirtualWorld(playerid);
    format(OfflineInfo[i][pickName], MAX_PLAYER_NAME+1, GetName(playerid));
    OfflineInfo[i][pickDeleteTime] = gettime() + (60);
    OfflineInfo[i][pickID] = CreatePickup(1275, 0, OfflineInfo[i][pickPos][0], OfflineInfo[i][pickPos][1], OfflineInfo[i][pickPos][2], OfflineInfo[i][pickVirtualWorld]);
    static const dc[3][] ={"(Timeout/Crash)","(Verlassen)","(Kick/Ban)"};
    gettime(hr, mn, sc);
    format(string, sizeof(string), "%s\n%s\n%02d:%02d:%02d", OfflineInfo[i][pickName], dc[reason], hr,mn,sc);
    OfflineLable[i] = Create3DTextLabel(string, COLOR_ALPHA_WHITE, OfflineInfo[i][pickPos][0], OfflineInfo[i][pickPos][1], OfflineInfo[i][pickPos][2], 10.0, 0);
    OfflineInfo[i][pickWanteds] = Spieler[playerid][pWanteds];
    OfflineInfo[i][pickContract] = Spieler[playerid][pContract];
    return i;
    }
    }
    }
    return 0;
    }

    Eine Frage habe ich allerdings dazu noch, wie setze ich den Wert wieder auf 0 wenn er geupdatet hat ?

    Das kannst du dann so machen:
    forward HausUpdat();
    public HausUpdat()
    {
    new num_rows, hid, tmp_name[MAX_PLAYER_NAME],id,query[128];
    cache_get_row_count(num_rows);
    if(!num_rows)return 1;
    for(new i=0; i<num_rows; i++)
    {
    cache_get_value_name_int(i, "id",hid);
    id=getHausID(hid);
    if(id == -1) continue; //Haus existiert nicht
    cache_get_value_name_float(i, "h_x", hInfo[id][h_x]); //Float
    cache_get_value_name_float(i, "h_y", hInfo[id][h_y]); //Float
    cache_get_value_name_float(i, "h_z", hInfo[id][h_z]); //Float
    cache_get_value_name_float(i, "ih_x", hInfo[id][ih_x]); //Float
    cache_get_value_name_float(i, "ih_y", hInfo[id][ih_y]); //Float
    cache_get_value_name_float(i, "ih_z", hInfo[id][ih_z]); //Float
    cache_get_value_name_int(i, "h_interior", hInfo[id][h_interior]); //Float
    cache_get_value_name(i, "besitzer", tmp_name); //String
    strmid(hInfo[id][h_besitzer], tmp_name, 0, sizeof(tmp_name), sizeof(tmp_name));
    cache_get_value_name_int(i, "h_preis",hInfo[id][h_preis]); //Float
    updateHaus(id);
    format(query, sizeof(query), "UPDATE haus SET `update1` = 0 WHERE id = %d AND `update1` = 1", hid);
    mysql_pquery(handle, query);
    }
    return 1;
    }

    Was wird dir so im Server Log ausgegeben?
    forward HausUpdat();
    public HausUpdat()
    {
    printf("HausUpdat aufgerufen.");
    new num_rows, hid, tmp_name[MAX_PLAYER_NAME],id;
    cache_get_row_count(num_rows);
    printf("rows: %d", num_rows);
    if(!num_rows)return 1;
    for(new i=0; i<num_rows; i++)
    {
    printf("i: %d", i);
    cache_get_value_name_int(i, "id",hid);
    printf("hid: %d", hid);
    id=getHausID(hid);
    printf("id: %d", id);
    if(id == -1) continue; //Haus existiert nicht
    cache_get_value_name_float(i, "h_x", hInfo[id][h_x]); //Float
    cache_get_value_name_float(i, "h_y", hInfo[id][h_y]); //Float
    cache_get_value_name_float(i, "h_z", hInfo[id][h_z]); //Float
    printf("Koordinaten");
    cache_get_value_name_float(i, "ih_x", hInfo[id][ih_x]); //Float
    cache_get_value_name_float(i, "ih_y", hInfo[id][ih_y]); //Float
    cache_get_value_name_float(i, "ih_z", hInfo[id][ih_z]); //Float
    printf("Koordinaten2");
    cache_get_value_name_int(i, "h_interior", hInfo[id][h_interior]); //Float
    printf("Interior");
    cache_get_value_name(i, "besitzer", tmp_name); //String
    printf("Name: %s", tmp_name);
    strmid(hInfo[id][h_besitzer], tmp_name, 0, sizeof(tmp_name), sizeof(tmp_name));
    printf("Besitzer: %s", hInfo[id][h_besitzer]);
    cache_get_value_name_int(i, "h_preis",hInfo[id][h_preis]); //Float
    printf("Preis: %d", hInfo[id][h_preis]);
    updateHaus(id);
    printf("Updated.");
    }
    printf("Fertig.");
    return 1;
    }

    Ändere
    cache_get_value_name(i, "besitzer", hInfo[id][h_besitzer]); //Float
    zu:
    cache_get_value_name(i, "besitzer", tmp_name); //String




    Oder alternativ:


    Ah, stimmt, habe ich übersehen.
    Ändere in den Queries jeweils das
    update
    Zu
    `update`


    Dann geht es.
    Oder benenne die Spalte update um.



    Zwecks dem Fehler:
    Bekommst du beim kompilieren Meldungen im Compiler?