Beiträge von Dev

    Hey,


    ich habe dies bei OnGameModInit stehen.


    for(new i = 0; i <= NUMBER_OF_VEH; i++)
    {
    Vehicle[i] = AddStaticVehicle(CreateCar[i][carid],CreateCar[i][eX],CreateCar[i][eY],CreateCar[i][eZ],CreateCar[i][eA],CreateCar[i][farbe1],CreateCar[i][farbe2]);
    }


    Danach wird nichts mehr geladen.
    Woran könnte das liegen?

    Du musst in das forward die playerid mit rein nehmen.


    forward arrestzeit(playerid);


    Logischerweise muss es dan auch hier hin:


    public arrestzeit(playerid)
    {
    SendClientMessage(playerid,ROT,"Hi");
    KillTimer(arrest);
    }

    Guten Abend,


    ich habe da eine kleine Frage. Und zwar würde ich gerne wissen ob es Checkpoints als Objekte gibt.
    Ich hab bisher nur ein Objekt/Pickup als Checkpoint gesehen und dieser war leider Buggy. andere habe ich noch nicht gefunden.
    Kennt ihr evt welche? Bzw gibt es überhaupt noch andere?


    MfG
    Dev

    Hallo,


    ich habe einen indirekten Fehler gefunden.


    stock mysql_SetInt(Table[], Field[], To, Where[], Where2[])
    {
    new query[128];
    mysql_real_escape_string(Table, Table);
    mysql_real_escape_string(Field, Field);
    mysql_real_escape_string(Where, Where);
    mysql_real_escape_string(Where2, Where2);
    format(query, 128, "UPDATE %s SET %s = '%d' WHERE %s = '%s'", Table, Field, To, Where, Where2);
    mysql_query(query);
    return true;
    }


    Mit dieser Funktion werden Variablen nicht immer richtig gespeichert habe ich festgestellt.
    Setze ich z.B. den Wert von
    new zahl = 1;
    BizzInfo[bizid][bPrice] = zahl
    und speichere ihn dan ab speichert er nicht richtig


    mysql_SetInt("business", "Price", BizzInfo[bid][bPrice], "bID", BizzInfo[bid][bID]);


    So speichert er immer in der ersten Zeile von mysql.
    Kopiere ich den stock allerdings und mache eine kleine änderung:


    stock mysql_SetInt2(Table[], Field[], To, Where[], Where2) // [] weg gemacht
    {
    new query[128];
    mysql_real_escape_string(Table, Table);
    mysql_real_escape_string(Field, Field);
    mysql_real_escape_string(Where, Where);
    // den 4ten mysql_real_escape_String entfernt !
    format(query, 128, "UPDATE %s SET %s = '%d' WHERE %s = '%d'", Table, Field, To, Where, Where2);
    mysql_query(query);
    return true;
    }


    Klappt alles reibungslos.


    Ich habe jetzt eine gefühlte ewigkeit versucht meine Biz Funktion zu reparieren und es hat nie richtig geklappt.
    Ich hoffe ihr müsst nicht ewig suchen und dieser Pos hilft euch.. bzw den newbies

    Genau das ist das Problem.
    Ich habe mir eine kleine Funktion eingebaut das bei jedem neuen GUI von Createbiz angezeigt der Wert von bizid und BizzInfo[bizid][BizzID] angezeigt wird..
    und dieser wert stimmt jedes mal.
    die funktion gibt auch immer den richtigen wert in der konsole aus.



    Edit: ( PAstebin hinzugefügt )


    aber hier mal der mysql debug log.. irgendwas stimmt da glaub ich auch nicht!


    http://pastebin.com/vQDw2hGc


    Edit3: Das PRoblem Besteht weiterhin!


    Wenn es hilft könntet ihr mir auch über teamviewer oder so helfen...
    ich will nur dieses doofe system zum laufen bringen, den wenn ich das hab kann ich das autohaussystem und häusersystem fertigstellen..


    Könnte es eventuell an Navicat liegen, das ich dort irgendetwas einstellen muss?

    Bei if(listitem == Wert) wird allerdings immer mit 0 Angefangen.
    D.h. du musst erst if(listitem == 0) machen, nicht mit 1 anfangen.

    So habs selbst geschafft.


    Musste bei Maddins weg nur noch
    mysql_store_result();
    zwischenpacken und jetzt klappt es.
    Danke.


    So nun habe ich ein anderes Problem


    Edit²:
    Edit³: Bild eingefügt:



    Immer wenn ich ein neues Biz erstelle, werden die Variablen in die Tabellenreihe der BizzID 0 gepackt und nicht in die richtige Spalten.


    dcmd_createbusiness(playerid, params[])
    {
    #pragma unused params
    if(PlayerInfo[playerid][pAdmin] >= 2000)
    {
    mysql_query("SELECT * FROM business");
    mysql_store_result();
    bizid = mysql_num_rows();
    ShowPlayerDialog(playerid, DIALOG_CREATEBIZ, DIALOG_STYLE_INPUT,"Erstellen eines Geschäftes.","Bitte gib den Namen ein, den das Geschäft tragen soll.","Weiter","Abbrechen");
    return 1;
    }
    return 1;
    }


    case DIALOG_CREATEBIZ:
    {
    if(response)
    {
    if(strlen(inputtext) == 0)
    {
    ShowPlayerDialog(playerid, DIALOG_CREATEBIZ, DIALOG_STYLE_INPUT,"Erstellen eines Geschäftes.","Bitte gib den Namen ein, den das Geschäft tragen soll.","Weiter","Abbrechen");
    return 1;
    }
    else
    {
    new Float:X, Float:Y, Float:Z;
    CreateBizz(bizid, inputtext);
    printf("ID: %d", bizid);
    GetPlayerPos(playerid, X,Y,Z);
    BizzInfo[bizid][BizzID] = bizid;
    BizzInfo[bizid][Name] = strlen(inputtext);
    BizzInfo[bizid][Einnahmen] = 0;
    BizzInfo[bizid][Owned] = 0;
    BizzInfo[bizid][Owner] = strlen("Niemand");
    BizzInfo[bizid][XKoord] = X;
    BizzInfo[bizid][YKoord] = Y;
    BizzInfo[bizid][ZKoord] = Z;
    new lolz[256];
    format(lolz, sizeof(lolz),"bizid: %d, BizzID: %d", bizid, BizzInfo[bizid][BizzID]);
    SendClientMessage(playerid, COLOR_BLUE, lolz);
    mysql_SetString("business","Owner",BizzInfo[bizid][Owner],"BizzID",BizzInfo[bizid][BizzID]);
    mysql_SetInt("business","Einnahmen",BizzInfo[bizid][Einnahmen],"BizzID",BizzInfo[bizid][BizzID]);
    mysql_SetInt("business","Owned",BizzInfo[bizid][Owned],"BizzID",BizzInfo[bizid][BizzID]);
    mysql_SetFloat("business","XKoord",BizzInfo[bizid][XKoord],"BizzID",BizzInfo[bizid][BizzID]);
    mysql_SetFloat("business","YKoord",BizzInfo[bizid][YKoord],"BizzID",BizzInfo[bizid][BizzID]);
    mysql_SetFloat("business","ZKoord",BizzInfo[bizid][ZKoord],"BizzID",BizzInfo[bizid][BizzID]);
    ShowPlayerDialog(playerid, DIALOG_CREATEBIZ2, DIALOG_STYLE_INPUT,"Erstellen eines Geschäftes.","Gib nun die Menge an Prdoukten an.","Weiter","Abbrechen");
    return 1;
    }
    }
    else
    {
    // Delete
    }
    }



    stock CreateBizz(buid,buname[])
    {
    new query[256];
    mysql_real_escape_string(buname, buname);
    format(query, sizeof(query), "INSERT INTO business (BizzID,Name) VALUES ('%d','%s')", buid,buname);
    mysql_query(query);
    return true;
    }


    Vielleicht seht ihr ja den Fehler :O

    Indem du dir es gemütlich machst, dir was zu essen und zu trinken holst und du Zeile für Zeile durchgehst :)