Problem mit return

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
  • hi all


    ich bin gerade dabei, mir ein eigenes geldsystem zu erstellen, aber dabei bin ich auf ein problem gestoßen.
    ich habe mir eine funktion GetPlayerCash(playerid) gebastelt, aber dabei habe ich einen fehler bei dem wert, der
    zurückgegeben werden soll.


    hier mal der code von dem stock:
    stock GetPlayerCash(playerid)
    {
    new name[MAX_PLAYER_NAME];
    new save[40];
    GetPlayerName(playerid,name,sizeof(name));
    format(save,sizeof(save),Ordner, name);
    new Float: geld;
    geld = dini_Float(save,"Geld");
    return geld;
    }


    bis dahin funktioniert alles ohne warnings oder errors, aber wenn ich jetzt diese funktion anwenden will
    if(GetPlayerCash(playerid) >= 1200)
    bekomme ich ein "tag mismatch" in der zeile mit dem return.


    kann mir jemand auf die sprünge helfen, was ich ändern müsste? :D


    mfg Marshall

    Die deutsche Rechtschreibung ist Freeware, sprich, du kannst sie kostenlos nutzen. Allerdings ist sie nicht Open Source, d.h. du darfst sie nicht verändern oder in veränderter Form veröffentlichen.


    _____________________________________________________________________________


    Einige Filterscripts von mir...

    Einmal editiert, zuletzt von [XfS]Marshall ()

  • das geld wird nirgends gespeichert, deswegen habe ich ja diesen stock erstellt.


    wäre es sinnvoller, es in einer Float zu speichern?

    Die deutsche Rechtschreibung ist Freeware, sprich, du kannst sie kostenlos nutzen. Allerdings ist sie nicht Open Source, d.h. du darfst sie nicht verändern oder in veränderter Form veröffentlichen.


    _____________________________________________________________________________


    Einige Filterscripts von mir...

  • jetzt habe ich es so
    stock Float:GetPlayerCash(playerid)
    {
    new name[MAX_PLAYER_NAME];
    new save[40];
    GetPlayerName(playerid,name,sizeof(name));
    format(save,sizeof(save),Ordner, name);
    new Float: geld = 0;
    geld = dini_Float(save,"Geld");
    return geld;
    }


    aber ich erhalte diese warnung:

    Zitat

    C:\Server\gamemodes\dorf-rl.pwn(2066) : warning 208: function with tag result used before definition, forcing reparse

    betrifft die zeile mit stock Float:GetPlayerCash(playerid)

    Die deutsche Rechtschreibung ist Freeware, sprich, du kannst sie kostenlos nutzen. Allerdings ist sie nicht Open Source, d.h. du darfst sie nicht verändern oder in veränderter Form veröffentlichen.


    _____________________________________________________________________________


    Einige Filterscripts von mir...

  • ok hat funktioniert. danke :thumbup:


    aber noch ne andere frage:


    wie kann man bei einer float feste stellen setzten?
    ich habe gesehen, dass es bei einer dezimalzahl mit %06d geht, aber bei der float funktioniert das nicht.
    wie müsste ich das machen?

    Die deutsche Rechtschreibung ist Freeware, sprich, du kannst sie kostenlos nutzen. Allerdings ist sie nicht Open Source, d.h. du darfst sie nicht verändern oder in veränderter Form veröffentlichen.


    _____________________________________________________________________________


    Einige Filterscripts von mir...

  • ich habe es so, aber es zeigt mir trotzdem nur das an, was ich habe. hinter dem komma sind 2 stellen, aber davor keine 6 feste:
    format(neu_geld,sizeof(neu_geld),"%6.2f",dini_Float(save,"Geld"));

    Die deutsche Rechtschreibung ist Freeware, sprich, du kannst sie kostenlos nutzen. Allerdings ist sie nicht Open Source, d.h. du darfst sie nicht verändern oder in veränderter Form veröffentlichen.


    _____________________________________________________________________________


    Einige Filterscripts von mir...