Geldproblem mit Setplayermoney oder giveplayermoney

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, ich hab folgendes Problem.
    Ich habe mir das My Login System (siehe hier geladen aber wenn ich es compilen will, entstehen 3 errors und zwar die hier


    C:\Users\Virus\Desktop\Neuer Ordner\samp02Xserver.win32\MyLogin.pwn(84) : error 017: undefined symbol "SetPlayerMoney"
    C:\Users\Virus\Desktop\Neuer Ordner\samp02Xserver.win32\MyLogin.pwn(274) : error 017: undefined symbol "SetPlayerMoney"
    C:\Users\Virus\Desktop\Neuer Ordner\samp02Xserver.win32\MyLogin.pwn(337) : error 017: undefined symbol "SetPlayerMoney"
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    3 Errors.


    hier die Zeilen dazu:


    SetPlayerMoney(playerid,dini_Int(file,"Money"));
    SetPlayerMoney(playerid,dini_Int(file,"Money"));
    SetPlayerMoney(playerid,dini_Int(file,"Money"));


    Nun zu miner Frage, wie kann ich SetPlayerMoney definieren, da der support zu dem Script scheinbar net mehr antwortet.

  • Ich denke,dass du dies

    stock SetPlayerMoney(playerid, money)
    {
    ResetPlayerMoney(playerid);
    GivePlayerMoney(playerid, money);
    }

    außerhalb eines CallBack´s in dein Script einfügen musst !

    Suche Scriptlehrer :rolleyes:

  • arg klappt doch net so wie ichs dachte... denn wenn ich Geld bekomme, durch Stunts oder so, wird es net angerechnet... also wird wieder resetett

  • Könnte vllt. daran liegen:
    SetPlayerMoney(playerid,dini_Int(file,"Money"));
    Durch dies wird dein Geld zunächst auf 0 gesetzt, dann liest er aus einer File (wahrscheinlich Userdatei ;) ) wie viel Geld du hast und gibt es dir.
    Wenn du es beim Connecten oder ggf. Spawen wiederhaben willst, musst du es vor dem (bzw. beim ) Verlassen des Servers speichern.


    Unter "OnPlayerDisconnect" könntest du zum Beispiel dies schreiben:

    new name[MAX_PLAYER_NAME];
    new file[100];
    GetPlayerName(playerid,name,sizeof name);
    format(file,sizeof file,"%s.ini",name);
    if(!dini_Exists(file))//Wenn die Datei mit dem Name des Users nicht existiert...
    {
    dini_Create(file);// ... macht er das - er erstellt sie.
    }
    dini_IntSet(file,"Geld",GetPlayerMoney(playerid)); // Allgemein speichert er das Geld.


    Bei OnPlayerConnecten könntest du machen:

    new name[MAX_PLAYER_NAME];
    new file[100];
    GetPlayerName(playerid, name,sizeof name);
    format(file,sizeof file, "%s.ini",name);
    if(dini_Exists(file))//Wenn es die Datei gibt...
    {
    SetPlayerMoney(playerid,dini_Int(file,"Geld"));// ... liest er das Geld raus und gibt dir Geld....wäre hier nicht unbedingt nötig, da man beim Connecten sowieso 0 $ hat
    }
    else
    {
    SendClientMessage(playerid,0x000080AA,"Beim Verlassen wird für dich eine Datei angelegt,damit dein Geld gespeichert bleibt");//Wenn du das erste Mal drauf bist, konnte er ja keine erstellen,wird es aber
    }

    Suche Scriptlehrer :rolleyes:

  • das habe ich so drin und das klappt auch nur mein Problem ist wenn ich jetzt beispielsweise mit 10000 connecte und dann nen Stunt mache wo ich sagen wir 17$ bekomme, dann steht bei meinem Geld 10017 und dann werden die 17 abgezogen und ich habe wieder 10000

  • hat sich erledigt, hatte noch eine andere Funktion die der hier wiedersprochen hat :)


    Danke an alle