Frage zum PayDay (Lohn)

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
  • Abend




    Ich habe mal eine kleine simpele Frage zum PayDay System, und zwar habe ich einen Job (Farmer) Gemacht,
    Wenn ein Spieler seine 12 Checkpoints abfährt kriegt der Spieler direkt 4500€.
    Aber ich will das so machen das er nicht direkt die 4500€ bekommen soll, sondern erst zu seinem PayDay.




    Währe echt nett wenn mir das mal einer erklären könnte :)




    Grüße

  • Ich frage mich was es da noch zu erklären gibt... :whistling:


    Spieler hat bei Job a 3245$ verdient.


    Sprich seine Variable Gehalt sieht so aus:


    Gehalt[playerid] = 3245;


    so jetzt arbeitet er bei job b & bekommt dort 4500$.. somit ist dein neuer code so:


    Gehalt[playerid] += 4500;


    somit sieht sein neuer Gehaltsstand so aus:


    7745$



    & das gibtst du ihm einfach beim PayDay ^^


    Greetz 8)

  • Okay,



    Ich habe es soweit verstanden,




    Ganz oben im Script:
    new ArbeitsGehalt;
    Und dann unter "OnPlayerEnterCheckPoint" Das:
    ArbeitsGehalt[playerid] += 4500; // Der Error liegt hier drine.



    nur kriege ich dann Errors:


    C:\Users\Equu\Desktop\ProjektSelfmade - Stand 25.06.2013\gamemodes\ProjektScript.pwn(5256) : warning 219: local variable "ArbeitsGehalt" shadows a variable at a preceding level
    C:\Users\Equu\Desktop\ProjektSelfmade - Stand 25.06.2013\gamemodes\ProjektScript.pwn(5268) : error 012: invalid function call, not a valid address
    C:\Users\Equu\Desktop\ProjektSelfmade - Stand 25.06.2013\gamemodes\ProjektScript.pwn(5268) : warning 215: expression has no effect
    C:\Users\Equu\Desktop\ProjektSelfmade - Stand 25.06.2013\gamemodes\ProjektScript.pwn(5268) : error 001: expected token: ";", but found ")"
    C:\Users\Equu\Desktop\ProjektSelfmade - Stand 25.06.2013\gamemodes\ProjektScript.pwn(5268) : error 029: invalid expression, assumed zero
    C:\Users\Equu\Desktop\ProjektSelfmade - Stand 25.06.2013\gamemodes\ProjektScript.pwn(5268) : fatal error 107: too many error messages on one line


    Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    4 Errors.

  • So ich habe nun unter meinen "public PayDay" dies eingefügt:

    new string[100];
    if(isPlayerJob(playerid,1))
    {
    format(string,sizeof(string),"Lohn: %d",ArbeitsGehalt);
    SendClientMessage(playerid,BLAU,string);
    SetPVarInt(playerid,"Kontostand",GetPVarInt(playerid,"Kontostand")+ArbeitsGehalt);
    }



    Aber kriege irgend wie einen Error ?



    C:\Users\Equu\Desktop\ProjektSelfmade - Stand 25.06.2013\gamemodes\ProjektScript.pwn(622) : error 033: array must be indexed (variable "ArbeitsGehalt")
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    1 Error.

  • Also ich hab das nun so stehen:


    public Payday(playerid)
    {
    new string[100],ArbeitsGehalt[playerid];
    if(isPlayerJob(playerid,2))
    {
    format(string,sizeof(string),"Lohn: %d",ArbeitsGehalt);
    SendClientMessage(playerid,BLAU,string);
    SetPVarInt(playerid,"Kontostand",GetPVarInt(playerid,"Kontostand")+ArbeitsGehalt);
    }
    return 1;
    }




    Aber erhalte nun diese Errors:



    C:\Users\Equu\Desktop\ProjektSelfmade - Stand 25.06.2013\gamemodes\ProjektScript.pwn(618) : error 008: must be a constant expression; assumed zero
    C:\Users\Equu\Desktop\ProjektSelfmade - Stand 25.06.2013\gamemodes\ProjektScript.pwn(618) : error 009: invalid array size (negative, zero or out of bounds)
    C:\Users\Equu\Desktop\ProjektSelfmade - Stand 25.06.2013\gamemodes\ProjektScript.pwn(618) : error 036: empty statement
    C:\Users\Equu\Desktop\ProjektSelfmade - Stand 25.06.2013\gamemodes\ProjektScript.pwn(618) : fatal error 107: too many error messages on one line


    Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    4 Errors.

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • SetPVarInt(playerid,"Kontostand",GetPVarInt(playerid,"Kontostand")+ArbeitsGehalt);


    =


    new Keks = GetPVarInt(playerid,"Kontostand");
    new cookie = Keks+ArbeitsGehalt;
    SetPVarInt(playerid,"Kontostand",cookie);


    btw du hast ArbeitsGehalt auch falsch deklariert. MAX_PLAYERS & dann [playerid]

    KleineHilfe 2.0