Pickup Bug [Wird nicht gelöscht]

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
  • Hallo,


    ich arbeite gerade an meinem Haussystem, was seht gut funktioniert, jedoch einen schwerwiegenden, nervenden Bug aufweist:
    Das hier ist mein Code:

    <- Script
    if(use_state == true){
    if(buyed_selled == true){
    DestroyPickup(HousePickup[houseid]);
    HousePickup[houseid] = CreatePickup(1273,0,HausInfo[houseid][PosX],HausInfo[houseid][PosY],HausInfo[houseid][PosZ],0);
    Delete3DTextLabel(House3D[houseid]);
    House3D[houseid] = Create3DTextLabel(string,0xFFFFFFFF,HausInfo[houseid][PosX],HausInfo[houseid][PosY],HausInfo[houseid][PosZ]+0.2,35,0,0);
    return 1;
    }
    }


    Also bei dem Code wird mein derzeitiges Pickup "HousePickup[houseid]" gelöscht und durch ein neues ersetzt.
    ___________________________________


    1. Ich erstelle ein Haus.
    2. Ich kaufe es.
    3. Pickup wird ersetzt, und neu erstellt
    4. Funktioniert. Keine Probleme!
    ___________________________________


    1. Ich erstelle zwei oder mehr Häuser.
    2. Ich kaufe das 2. Haus.
    3. Pickup wird nicht gelöscht.
    4. Neues Pickup wird erstellt. (Sind ineinander)
    5. Funktioniert nicht! ;<


    Auch nach dem Restart sind die Pickups noch da, die zuvor nicht gelöscht werden konnten.
    Aber unter OnGameModeExit wird mit einer for-Schleife jedes Pickup gelöscht!

  • houseid
    wie setzt du diese?

    stock UpdateHouseData(houseid,bool:use_state = false,bool:buyed_selled = false)


    Erstellt werden sie mit einer Schleife:
    for(new i=0; i<MAX_HOUSES; i++)
    {
    HausInfo[i][Level] = level;
    HausInfo[i][Preis] = preis;
    HausInfo[i][Miete] = 250;
    HausInfo[i][Locked] = 1;
    HausInfo[i][Mietbar] = 0;
    HausInfo[i][vWorld] = 0;
    // usw

  • Mehr Code ist nicht möglich?
    Aufgrund von dem Codeschnipsel kann man deine Reihenfolge auf keinen Fall nachvollziehen!


    HousePickup[houseid] = CreatePickup(1273,0


    0? Das heißt, dass das Pickup nicht angezeigt wird!
    Siehe Wiki:
    http://wiki.sa-mp.com/wiki/PickupTypes