ini SetString Problem

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 habe folgendes Schnippsel:


    public OnPlayerRegister( playerid, password[ ] )
    {
    new p_str[ 48 ], str[ 32 ], playerFile;
    format( p_str, sizeof( p_str ), PLAYER_FILE, PlayerName( playerid ) );
    if( !fexist( p_str ) )
    {
    new hour, minute, second;
    getdate( gYear, gMonth, gDay );
    gettime( hour, minute, second );
    playerFile = ini_createFile ( p_str );
    format( str, sizeof( str ), "%i/%s/%i - %02d:%02d:%02d", gDay, Months[ gMonth-1 ], gYear, hour, minute, second );
    ini_setString ( playerFile, "Date_Registered", str );
    ini_setString ( playerFile, "Password_hash", Whirlpool_hash( password ) );
    //ini_setString ( playerFile, "Admin", 0);
    //ini_setString ( playerFile, "Admin", Account[playerid][Admin] = 0);
    ini_closeFile ( playerFile );
    SendClientMessage( playerid, RULE, "Dein Account wurde erfolgreich erstellt" );
    PlayerPlaySound( playerid, 1058, 0.0, 0.0, 0.0 );
    SetPVarInt( playerid, "pLogged", 1 );


    Jetzt möchte ich das er in die Datei noch ein Adminlevel schreibt hbs auf 2 arten versucht die die Grün sind was ist da falsch bekomme immer folgende fehlermeldung:



    möhte das danach abrufen können ob ein spieler level 0 oder 1 hat
    C:\AV.pwn(4819) : error 035: argument type mismatch (argument 3)
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    1 Error.


    /edit ich bringe es nicht hin das er in die datei schreibt :pinch: /bin jetzt schon die gane zeit da dran bringe denn error aber nicht weg was muss ich denn ändern damit das geht damit ich es danach in den befehlen abrufen kann ob jmd admin ist?

    2 Mal editiert, zuletzt von Manuel20 ()

  • Die Funktion braucht 'n String, kein Integer.
    Wenn du eine Zahl speichern willst, dann musst du 'ne andere Funktion nutzen, probier's mal mit
    ini_setInt ( playerFile, "Admin", 0);

    Bin weg, Tschau! (Account kann gelöscht werden)

  • Da kommt das:


    error 017: undefined symbol "ini_setInt"


    ich möchte einfach das wenn sich einer registriert in die userdatei noch ein admin = 0 reingeschrieben wird damit ich es danach abfragen kann bei befehlen


    // das kanns ja nicht sein weil das "Date_Registered" schreibt er mir auch in die datei warum den nicht Admin = 0 ??



    so habe es jetzt so


    public OnPlayerRegister( playerid, password[ ] )
    {
    new p_str[ 48 ], str[ 32 ], playerFile;
    format( p_str, sizeof( p_str ), PLAYER_FILE, PlayerName( playerid ) );
    if( !fexist( p_str ) )
    {
    new hour, minute, second;
    getdate( gYear, gMonth, gDay );
    gettime( hour, minute, second );
    playerFile = ini_createFile ( p_str );
    format( str, sizeof( str ), "%i/%s/%i - %02d:%02d:%02d", gDay, Months[ gMonth-1 ], gYear, hour, minute, second );
    ini_setString ( playerFile, "Date_Registered", str );
    ini_setString ( playerFile, "Password_hash", Whirlpool_hash( password ) );
    ini_setString(playerFile,"AdminLevel", "0");
    ini_closeFile ( playerFile );
    SendClientMessage( playerid, RULE, "Dein Account wurde erfolgreich erstellt" );
    PlayerPlaySound( playerid, 1058, 0.0, 0.0, 0.0 );
    SetPVarInt( playerid, "pLogged", 1 );





    wie kan ich jetzt eine abfrage machen wen sich einer einloggt oder bei einem befehl ?


    stock LoadPlayerData( playerid, file[ ] )
    {
    new explode_str[ 128 ], str[ 28 ], data[ 2 ];
    new playerFile = ini_openFile( file );
    format( str, sizeof ( str ), "Month_kills_%i", gYear );
    ini_getString ( playerFile, str, explode_str );
    explodevalue( p_month_kills[ playerid ], explode_str, "|" );
    format( str, sizeof( str ), "Month_deaths_%i", gYear );
    ini_getString ( playerFile, str, explode_str );
    explodevalue( p_month_deaths[ playerid ], explode_str, "|" );
    ini_getString ( playerFile, "Total_kills_deaths", explode_str );
    explodevalue( data, explode_str, "|" );
    SetPVarInt( playerid, "pKills", data[ 0 ] );
    SetPVarInt( playerid, "pDeaths", data [ 1 ] );
    ini_closeFile ( playerFile );
    }

    2 Mal editiert, zuletzt von Manuel20 ()