Abkürzung

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
  • Hey, kann man das irgendwie machen, dass man nicht soviel eingeben muss?:


    new Spielerdatei[64];
    format(Spielerdatei,64,"/Accounts/%s.ini",SpielerName(playerid));


    Nervt immer, dass man das eingeben muss :)


    Ist das iwi möglich? und wenn ja, kann mir das bitte jemand erklären, wie es geht?


    Danke!

  • Problem ist halt, das Funktionen wie dinicreate mit diesem Pfad arbeiten demnach ist es kaum vorstellbar das du es in ein Stock o.ä packen kannst und zeitgleich damit arbeiten kannst.
    Vielleicht Spielerdatei global setzen und den pfad in ein Stock.

    KleineHilfe 2.0

  • Das ist ja das Problem...


    Also denke mal nicht machbar oder? Leider kann man das nicht Global setzen, da man bei dem format playerid braucht... :/


    Nicht machbar?


    Ich sprach von der Spielerdatei als String, irgendwie lässt sich das bestimmt basteln, aber da der Versuch x Minuten länger dauert als es hinzuschreiben, mache ich mir nicht die Mühe :)
    Aber sollte es wer herausgefunden haben, so wäre ich erfreut wenn er es hier posten könnte. :thumbup:

    KleineHilfe 2.0

  • Einfach nen stock erstellen and done ><


    stock PathToSave(playerid)
    {
    new Spielerdatei[64];
    format(Spielerdatei,64,"/Accounts/%s.ini",SpielerName(playerid));
    }


    Verwendung nun:


    PathToSave(playerid); //für den eigenen Spieler
    PathToSave(pID); //Für einen anderen Speieler


    Ihr seit doch sonst nicht so sparsam mit den stocks...

  • So könnte man es machen
    stock UserPfad(playerid)
    {
    new Pfad[64],Username[MAX_PLAYER_NAME];
    GetPlayerName(playerid,Username,MAX_PLAYER_NAME);
    format(Pfad,64,"/Accounts/%s.ini",Username);
    return Pfad;
    }
    Ich habs per define versucht half aber nicht daher das
    Anwenden dann so
    dini_Int(UserPfad(playerid),"Zahl",1);
    Viel halte ich davon nicht da es eher müll ist aber jeder muss es für sich selber wissen


    @ulbi1990: Dir ist klar das dein Zeug nicht geht oder?

    All in all it's just another brick in the wall

  • stock PathToSave(playerid)
    {
    new Spielerdatei[64];
    format(Spielerdatei,64,"/Accounts/%s.ini",SpielerName(playerid));
    }


    Wo gibst du hier den string raus?
    stimmt nirgends wie soll es dann gehen?


    Das ist von der Logik her richtig nur falsch in der Umsetung
    "Das ist das selbe als wenn du mit einen leeren Kuli schreiben willst. Da kommt auch nix raus"


    Und den "stock SpielerName" würde ich sowiso löschen da es einfach lahm ist

    All in all it's just another brick in the wall


  • Ist ja schön und gut, und wie fungiert man nun damit wenn man weiter mit der Spielerdatei(Bei dir Pfad) arbeiten möchte sprich beispielsweise dini_create..
    wie handhabt man dann das?

    KleineHilfe 2.0

  • dini_Create(UserPfad(playerid))
    dini_Set(UserPfad(playerid),..)
    dini_Get(UserPfad(playerid),...)


    Wo is das Problem?
    Nur ich würd es einmal bei der Funktion auslesen da es schneller ist und dini ist sowiso lahm

    All in all it's just another brick in the wall

  • dini_Create(UserPfad(playerid))
    dini_Set(UserPfad(playerid),..)
    dini_Get(UserPfad(playerid),...)


    Wo is das Problem?
    Nur ich würd es einmal bei der Funktion auslesen da es schneller ist und dini ist sowiso lahm


    Dazu habe ich noch eine Frage zu der schnelligkeit mit SII mysql und dini, wodran merkt man denn das es langsam ist? Wie äußert sich das und welche Probleme bringt es im späteren verlauf mit sich diese "langsamkeit"?

    KleineHilfe 2.0

  • Merken tut man das eher weniger aber wenn man mit gettickcout arbeitet wird man deutlich sehen wie lahm das ist
    Darum würd ich auch kein stock nehmen sondern lieber alles direkt auslesen und als kleinen Tipp


    Alles ist schneller als Dini, da dini alt ist das gab es schon zu den Vice City servern

    All in all it's just another brick in the wall

  • Merken tut man das eher weniger aber wenn man mit gettickcout arbeitet wird man deutlich sehen wie lahm das ist
    Darum würd ich auch kein stock nehmen sondern lieber alles direkt auslesen und als kleinen Tipp


    Alles ist schneller als Dini, da dini alt ist das gab es schon zu den Vice City servern


    dini ist aber sehr bequem und gemütlich wie ich persönlich finde :) Und nicht jeder hat die Zeit sich mit einem neuen Speichersystem anzufreunden.
    Na, wenn die Schnelligkeit nur durch's auslesen erkennbar ist, ist es doch echt käse das es so viele schreiben und so viele schlecht machen :pinch:

    KleineHilfe 2.0



  • stock SD(playerid)
    {
    new Spielerdatei[64];
    format(Spielerdatei,64,"/Accounts/%s.ini",SpielerName(playerid));
    }


    ocmd:lol(playerid)
    {
    dini_IntSet(SD(playerid),"Lol",1);//Hier error
    return 1;
    }


    Zitat

    error 035: argument type mismatch (argument 1)


    Iwas falsch? :o


    //Habe return beim Stock vergessen...


    Klappt alles wunderbar, Danke!