Beiträge von Truuper

    public OnPlayerTakeDamage(playerid, issuerid, Float:amount, weaponid)
    {
    if(IsACop(issuerid))
    {
    GetPlayerWeapon(issuerid == 23)
    {
    TogglePlayerControllable(playerid,0);
    SendClientMessage(playerid, RED, "Du wurdest getazert.");
    }
    }
    return 1;
    }


    //edit 2 kleine fehler



    so wohl eher. du willst ja nich, dass man sich selbst tazert und pid war ja vorher 0, weil nicht anders definiert wurde

    hi


    warum bekomme ich diesen warning?
    warning 208: function with tag result used before definition, forcing reparse.


    die zeilen
    stock Float:mysql_GetFloat(Table[], Field[], Where[], Is[])//Zeile wo der warning is
    {
    new query[128], Float:sqlfloat;
    mysql_real_escape_string(Table, Table);
    mysql_real_escape_string(Field, Field);
    mysql_real_escape_string(Where, Where);
    mysql_real_escape_string(Is, Is);
    format(query, 128, "SELECT %s FROM %s WHERE %s = '%s'", Field, Table, Where, Is);
    mysql_query(query);
    mysql_store_result();
    mysql_fetch_float(sqlfloat);
    mysql_free_result();
    return sqlfloat;
    }

    hi


    ich habe bei mysql den Sinn von mysql_real_escape_string, mysql_store_result, mysql_free_result, und dann das return
    nicht verstanden. Also bei return halt das, mit dem es returnt.


    ich hoffe ihr könnt da ein wenig Licht ins Dunkel bringen.


    mfg
    /edit
    und was bringt der Primary Key?

    ich bin auch noch neu im Gebiet mysql.
    Also meine Tabelle autos sieht genau so aus wie accounts nur eben mit anderen "Überschriften".
    Ich denke doch, dass genau wie bei CheckAccount 0 wenn es keinen gibt und 1 wenn es einen gibt zurückgegeben wird.


    CheckAccount habe ich aus dem mysql Tutorial

    hää?
    also ich kann damit nicht soo viel anfangen.
    und in check car ist leider ein fehler weil /kaufen geht (ausser halt auto in tabelle eintragen)
    wenn ich checkcar weg mache.


    aso also %s und %d sind vertauscht,
    das habe ich schon x-mal getauscht deshalb war das gerade falsch. natürlich weis ich wies eig. sein muss ;)


    //edit es geht!! C: also der fehler war ganz komisch hab paar sachen geändert naja jez gehts. ausser checkcar

    isPlayerAnAdmin fragt ab ob man als rcon eingeloggt ist.
    wie ist denn dein Account enum oben im script. mach doch statt if(!isPlayerAnAdmin...) z.B. if(PlayerInfo[playerid][pAdmin] >= 5) so wärs im GF

    Hi


    ich arbeite an einem Selfmade, welches ich auf mysql schreiben möchte.
    Die Accounts funktionieren auch (fast) ohne fehler.
    Aber das ganze wollte ich auf ein Autosystem übertragen. Resultat:
    Autosystem geht nicht mehr. vorher war es dini und ging Problemlos aber egal.
    Ich konnte den Fehler auf 2 Funktionen eingrenzen. Diese Funktionen habe ich erstellt,
    indem ich eine für Accounts einfach angepasst habe.
    Die Funktionen sind CheckAccount was ich versucht habe zu CheckCar zu machen:
    stock mysql_CheckAccount(playerid)
    {
    new Query[128],Name[MAX_PLAYER_NAME];
    GetPlayerName(playerid, Name, MAX_PLAYER_NAME);
    mysql_real_escape_string(Name, Name);
    format(Query, sizeof(Query), "SELECT * FROM accounts WHERE Name = '%s'", Name);
    mysql_query(Query);
    mysql_store_result();
    return mysql_num_rows();
    }
    stock mysql_CheckCar(playerid,i)
    {
    new Query[128], name[32], pname[32];
    GetPlayerName(playerid, name, sizeof(name));
    format(pname, sizeof(pname), "%s%d", name,i);//i ist der Schlüssel.also 1-MAX_CARS. es wird dann also aus Heinz Heinz1
    mysql_real_escape_string(pname, pname);
    format(Query, sizeof(Query), "SELECT * FROM autos WHERE Besitzer = '%s'", pname);
    mysql_query(Query);
    mysql_store_result();
    return mysql_num_rows();
    }


    und dann CreateAccount und CreateCar
    stock CreateAccount(playerid, pass[])
    {
    new query[256],Name[MAX_PLAYER_NAME];
    GetPlayerName(playerid, Name, MAX_PLAYER_NAME);
    mysql_real_escape_string(Name,Name);
    mysql_real_escape_string(pass,pass);
    format(query, sizeof(query), "INSERT INTO accounts (Name, Passwort) VALUES ('%s', '%s')", Name, pass);
    mysql_query(query);
    return true;
    }
    stock CreateCar(name[], carmodel)
    {
    new query[256];
    mysql_real_escape_string(name,name);// name wird hier schon im format z.b. "Heinz1" weitergegeben.
    format(query, sizeof(query), "INSERT INTO autos (Besitzer, Model) VALUES ('%d', '%s')", name, carmodel);
    mysql_query(query);
    return true;
    }


    ich komme schon seit Tagen nicht weiter und wende mich nun als lezte Hoffnung an euch.


    Mit freundlichen Grüßen

    Hi


    also ich finde das Tutorial echt gut.
    Was mir fehlt ist eine Funktion, mit der ich eine Zeile Lösche.


    Ausserdem bekomme ich folgenden Warning:
    (1748) : warning 208: function with tag result used before definition, forcing reparse
    stock Float:mysql_GetFloat(Table[], Field[], Where[], Is[])// Zeile 1748
    {
    new query[128], Float:sqlfloat;
    mysql_real_escape_string(Table, Table);
    mysql_real_escape_string(Field, Field);
    mysql_real_escape_string(Where, Where);
    mysql_real_escape_string(Is, Is);
    format(query, 128, "SELECT %s FROM %s WHERE %s = '%s'", Field, Table, Where, Is);
    mysql_query(query);
    mysql_store_result();
    mysql_fetch_float(sqlfloat);
    mysql_free_result();
    return sqlfloat;
    }


    MfG

    Hi


    nachdem ich erfolgreich ein Autohaus für mein Selfmade gescriptet habe C: ,
    möchte ich nun ein Haus sowie Bizsystem erstellen. Da ich das nicht mit dini machen möchte,
    weils zu viele Dateien werden würden, möchte ich alle Häuser in eine Datei schreiben.
    Ich habe gelesen, dass das mit fread und fwrite geht, habe aber noch kein tutorial
    dafür gefunden. Weil ich auch nicht einfach alles abschreiben bzw. kopieren will und
    ich ja meine Scriptkünste weiter ausbauen möchte, möchte ich den Umgang mit fread/write
    lernen.


    Ich hoffe es macht sich jemand die Mühe dafür ein Tutorial zu schreiben.


    MfG

    hi


    wie speichere ich die Id eines Autos, welcches ich in z.B. einem Befehl erstelle?



    //ganz oben
    new autoid;


    //cmd
    if(strcmp(cmd, "/kaufen", true) == 0)
    {
    new car;
    car = AddStaticVehicle(542,0.0,0.0,0.0,0.0,1,1);
    autoid = ???; // sowas wie GetVehicleID wäre gefragt, was es aber nicht gibt
    }


    MfG