Beiträge von RFT

    Hallo,


    da meine Satz erfolgreich ignoriert wurde.
    Wir brauchen mal nen ausschnitt aus der Server.log sowas solch eine Regel sollte man aufstellen in den meisten fällen wird der Fehler dort aufgezeichnet.


    MFG RFT

    also ich finde es nciht so toll, selbst wenn es erst dein erstes ist, da geht doch noch einiges mehr...


    02/9999


    Übertreibt es nicht immer so.


    Schlecht ist es nicht aber ich würde helle Farben verwenden passt optisch zu Windows 7 besser =)


    Von mir 6/10 vielleicht hast du ja nochmal Lust ein helles zu machen.


    MFG RFT



    Was sollen wir unter sehr Langsam verstehen ? Extrem langsam oder wie wenn ja kann es nen Technischer Schaden sein ne Defekte Software und vieles mehr.


    MFG RFT

    Einmal die Forenregeln lesen. Solche IDs hier zu fragen sind verboten genauso wie Object IDs da es dazu ein Wiki gibt.


    *Closed*


    MFG RFT


    //edit:
    RFT: Das soll ja auch für Anfänger sein :)


    Ist ja schön und gut die Anfänger freuen sich darüber. Aber die meisten denken sich wenns so eine vereinfachung gibt kann ich auch gleich die schnellere Variante nehmen.
    Daher mein Tipp mach es mit CallRemoteFunction und nicht mit strcmp oder so.


    MFG RFT

    Achso du möchtest es von MySql in INI umschreiben sag das doch gleich =).
    Beim speichern INI_WriteInt / WriteString / WriteFloat benutzen.
    Beim laden INI_ReadInt / ReadString / ReadFloat benutzen.



    sprich:



    GetSpielerPasswort(playerid)
    {
    format(CacheString, sizeof(CacheString), "SELECT Passwort FROM gf_players WHERE SpielerName = '%s';",GetName(playerid));
    mysql_query(CacheString);
    mysql_store_result();
    mysql_retrieve_row();
    mysql_fetch_field_row(PlayerInfo[playerid][pKey],"Passwort");
    mysql_free_result();
    }



    zu



    GetSpielerPasswort(playerid)
    {
    new STR[32];
    format(STR, 32, "%s.ini", GetName(playerid));
    if(INI_Open(STR))
    {
    PlayerInfo[playerid][pKey] = INI_ReadInt("Passwort");
    }
    }


    usw. Aber zum laden kannst du es gleich in die Login Funktion tuhen wozu für jede Spalte ne neue Funktion benutze ?



    //edit:


    Und beim speichern ist es ganz wichtig nach dem Speichern "INI_Save();" zu benutzen da die File sonst nicht gespeichert wird.


    MFG RFT

    Werden die funktionen per Dialog aufgerufen oder per Befehl??


    2. Zeig mal dein PlayerUpdate also da wo der Spieler gespeichert wird^^


    Man sieht das es per DIALOG aufgerufen wird.
    Und poste uns mal die Update Funktion. Bei dem Chaos entdecke ich auf Ansatz keinen Fehler ich frage mich eh wieso manche immer den kompletten Code in eine Zeile posten.


    MFG RFT


    ReturnUser(text[], playerid = INVALID_PLAYER_ID)
    {
    new pos = 0;
    while (text[pos] < 0x21) // Strip out leading spaces
    {
    if (text[pos] == 0) return INVALID_PLAYER_ID; // No passed text
    pos++;
    }
    new userid = INVALID_PLAYER_ID;
    if (IsNumeric(text[pos])) // Check whole passed string
    {
    // If they have a numeric name you have a problem (although names are checked on id failure)
    userid = strval(text[pos]);
    if (userid >=0 && userid < MAX_PLAYERS)
    {
    if(!IsPlayerConnected(userid))
    {
    /*if (playerid != INVALID_PLAYER_ID)
    {
    SendClientMessage(playerid, 0xFF0000AA, "User not connected");
    }*/
    userid = INVALID_PLAYER_ID;
    }
    else
    {
    return userid; // A player was found
    }
    }
    /*else
    {
    if (playerid != INVALID_PLAYER_ID)
    {
    SendClientMessage(playerid, 0xFF0000AA, "Invalid user ID");
    }
    userid = INVALID_PLAYER_ID;
    }
    return userid;*/
    // Removed for fallthrough code
    }
    // They entered [part of] a name or the id search failed (check names just incase)
    new len = strlen(text[pos]);
    new count = 0;
    new name[MAX_PLAYER_NAME];
    for (new i = 0; i < MAX_PLAYERS; i++)
    {
    if (IsPlayerConnected(i))
    {
    GetPlayerName(i, name, sizeof (name));
    if (strcmp(name, text[pos], true, len) == 0) // Check segment of name
    {
    if (len == strlen(name)) // Exact match
    {
    return i; // Return the exact player on an exact match
    // Otherwise if there are two players:
    // Me and MeYou any time you entered Me it would find both
    // And never be able to return just Me's id
    }
    else // Partial match
    {
    count++;
    userid = i;
    }
    }
    }
    }
    if (count != 1)
    {
    if (playerid != INVALID_PLAYER_ID)
    {
    if (count)
    {
    SendClientMessage(playerid, 0xFF0000AA, "Multiple users found, please narrow earch");
    }
    else
    {
    SendClientMessage(playerid, 0xFF0000AA, "No matching user found");
    }
    }
    userid = INVALID_PLAYER_ID;
    }
    return userid; // INVALID_USER_ID for bad return
    }
    IsNumeric(const string[])
    {
    for (new i = 0, j = strlen(string); i < j; i++)
    {
    if (string[i] > '9' || string[i] < '0') return 0;
    }
    return 1;
    }


    MFG RFT

    warum muss scripten nur so schwer sein :(


    Was möchtest du uns damit erzählen ?
    Ist das Problem gelöst ? Wenn nicht Fehlercode + Zeile posten.
    Sonst können wir dir auch nicht weiter helfen falls es gelöst ist bitte beim nächsten mal bescheit sagen sonst wird hier im Thread grundlos weiter geschrieben.


    MFG RFT