Spielerdaten werden nicht geladen

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
  • Beitrag von Kriegerbeere ()

    Dieser Beitrag wurde vom Autor gelöscht ().
  • Also das ist eine sehr interessante Art da ran zu gehen, aber gut. So wie das aussieht fehlt das GivePlayerMoney, schreibe es mal so:
    RewardPlayer(playerid, Money, Points)
    {
    APlayerData[playerid][PlayerMoney] = APlayerData[playerid][PlayerMoney] + Money;
    APlayerData[playerid][PlayerScore] = APlayerData[playerid][PlayerScore] + Points;
    GivePlayerMoney(playerid, Money);
    return 1;
    }

  • Beitrag von Kriegerbeere ()

    Dieser Beitrag wurde vom Autor gelöscht ().
  • Ich würde das RewardPlayer ganz weg lassen, denn wenn du 20 Stats hast, dann musst du es mit 20 Parametern machen, und das wird irgendwann einfach nur chaotisch.
    Schreibe die Werte direkt beim Laden in die Variable:
    PlayerFile_Load(playerid)
    {
    new file[100], File:PFile, Name[24], LineFromFile[100], ParameterName[50], ParameterValue[50];
    format(Name, sizeof(Name), APlayerData[playerid][PlayerName]);
    format(file, sizeof(file), PlayerFile, Name);

    if (fexist(file))
    {
    PFile = fopen(file, io_read);
    fread(PFile, LineFromFile);
    while (strlen(LineFromFile) > 0)
    {
    StripNewLine(LineFromFile);
    sscanf(LineFromFile, "s[50]s[50]", ParameterName, ParameterValue);

    if (strcmp(ParameterName, "Password", false) == 0)
    {
    format(APlayerData[playerid][PlayerPassword], 50, ParameterValue);
    }
    if (strcmp(ParameterName, "Money", false) == 0)
    {
    APlayerData[playerid][PlayerMoney] = strval(ParameterValue);
    GivePlayerMoney(playerid, APlayerData[playerid][PlayerMoney]);
    }
    if (strcmp(ParameterName, "Score", false) == 0)
    {
    APlayerData[playerid][PlayerScore] = strval(ParameterValue);
    SetPlayerScore(playerid, APlayerData[playerid][PlayerScore]);
    }
    fread(PFile, LineFromFile);
    }
    fclose(PFile);
    return 1;
    }
    return 0;
    }

  • Beitrag von Kriegerbeere ()

    Dieser Beitrag wurde vom Autor gelöscht ().