Es Wird Keine User.ini Erstellen

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
  • format(UserDatei,sizeof(UserDatei),"/Acc/%s.ini",Spieler[playerid][pName]); dini_Create(UserDatei);


    Schau mal ,du liest den Namen aus einer Variable aus.. pName.. aber da noch keine User.ini erstellt ist, kann er die schlecht auslesen?
    Oder täusche ich mich?

    ehm. Administration StateV ~ Domi

  • Ja, eigentlich kein wunder.
    Du lässt die .ini so heißen wie der Spieler iG sich nennt.. das ist auch alles gut.
    Jedoch mach das pName da weg, die komplette Abfrage kann da raus.
    Ersetz das durch GetPlayerName

    Damit funktionierts auch.

    ehm. Administration StateV ~ Domi

  • Es herrschen mehrere Lösungsansätze:


    1. Bist du sicher, das auch "SpielerRegister" ausgeführt wird? - Kann gut getestet werden mit print()
    2. Ist der Name auch in Spieler[playerid][pName] gespeichert? - Am besten unter OnPlayerConnect folgenden Code eingeben:

    GetPlayerName(playerid, MAX_PLAYER_NAME, Spieler[playerid][pName] //Bitte überprüfen, schreibe gerade ohne nachzuschauen

    3. dini richtig includiert, neueste Version etc.?


    Das müsste erstmal reichen, falls es immer noch nicht klappt, sag dann Bescheid :D

    Mit freundlichen Grüßen
    Zeuto


  • Danke dir, deswegen sagte ich, bitte zu überprüfen :)



    C:\Users\Dominik\Desktop\Samp Server\gamemodes\Reallife.pwn(136) : error 035: argument type mismatch (argument 2)
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase


    Ja, mach das was MrPawn geschrieben hat, dann müsste es funktionieren ;)

    Mit freundlichen Grüßen
    Zeuto

  • Windows



    public OnPlayerConnect(playerid)
    {
    new UserDatei[128];
    new SName1[25];
    GetPlayerName(playerid,SName1,25);
    format(Spieler[playerid][pName],25,SName1);
    format(UserDatei,sizeof(UserDatei),"/Acc/%s.ini",Spieler[playerid][pName]);
    GetPlayerName(playerid, MAX_PLAYER_NAME, Spieler[playerid][pName]);
    if(dini_Exists(UserDatei)) return ShowPlayerDialog(playerid,LOGIN,DIALOG_STYLE_INPUT,"Login","Bitte Login Dich Ein\nGeben Sie ihr Passwort ein. Viel Spaß auf Neo Reallife.","Registrieren","Abbrechen");
    ShowPlayerDialog(playerid,REGISTER,DIALOG_STYLE_INPUT,"Registrieren","Bitte registrieren Sie sich, um sich einen Account anzulegen.\nGeben Sie ihr Passwort ein. Viel Spaß auf Neo Reallife.","Registrieren","Abbrechen");
    SendClientMessage(playerid,BLACK,"Du Hast Du Dich Nun Register.");
    SetPlayerMapIcon(playerid,12, 2121.8020,1481.2535,10.8203, 12, 0, NOOBSPAWN );
    SetPlayerMapIcon(playerid,38, 1953.3124,1343.2147,15.3746, 38, 0, ST );
    SetPlayerMapIcon(playerid,52, 2089.6914,1450.9739,10.8203, 52, 0, BANK );
    return 1;
    }

  • Oder einfach so, dann brauchst du keine zwischenspeicherung mehr machen ;)
    public OnPlayerConnect(playerid)
    {
    new UserDatei[128];
    GetPlayerName(playerid,Spieler[playerid][pName],MAX_PLAYER_NAME);
    format(UserDatei,sizeof UserDatei,"/Acc/%s.ini",Spieler[playerid][pName]);
    if(dini_Exists(UserDatei)) return ShowPlayerDialog(playerid,LOGIN,DIALOG_STYLE_INPUT,"Login","Bitte Login Dich Ein\nGeben Sie ihr Passwort ein. Viel Spaß auf Neo Reallife.","Registrieren","Abbrechen");
    ShowPlayerDialog(playerid,REGISTER,DIALOG_STYLE_INPUT,"Registrieren","Bitte registrieren Sie sich, um sich einen Account anzulegen.\nGeben Sie ihr Passwort ein. Viel Spaß auf Neo Reallife.","Registrieren","Abbrechen");
    SendClientMessage(playerid,BLACK,"Du Hast Du Dich Nun Register.");
    SetPlayerMapIcon(playerid,12, 2121.8020,1481.2535,10.8203, 12, 0, NOOBSPAWN );
    SetPlayerMapIcon(playerid,38, 1953.3124,1343.2147,15.3746, 38, 0, ST );
    SetPlayerMapIcon(playerid,52, 2089.6914,1450.9739,10.8203, 52, 0, BANK );
    return 1;
    }
    Und das hier so ;)
    enum UserDat{
    pName[MAX_PLAYER_NAME],
    Alter,
    Admin,
    Geld,
    Bank,
    Member,
    Leader,
    Autoschein
    };

  • Hilfreich wäre es, wenn du uns mal die Zeile von dem Fehler zeigst ;)