Payday...

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
  • Moin,


    Ich hatte schon mal Individuelen Payday gehabt und auch selber gescriptet jedoch hatt ich das Scripten aufgegeben und Scripte nun wieder für ein Server.
    Nun ist mein Problemm ich hab keine Ahnung wie ich das damals gemacht hatte...


    Aso man bekommt nicht Payday in den man 60 Minuten gespielt hat sondern bissl später, Es können 5 min aber auch 10 Min sein Y.Y


    /EDIT Hatte mehr mals jetzt alles Versucht jedoch funktioniert es einfach nich!!!!!!!!!!!! X(


    Code:


    OnGameModeInit:
    SetTimer("pday", 60000, 1);


    Public pday:


    public pday(playerid)
    {
    for (new i = 0; i < MAX_PLAYERS; i++)
    {
    PlayerInfo[i][pPayPoints]++;
    if(PlayerInfo[i][pPayPoints] >= 59)
    {
    {
    PayDay(i);
    }
    }
    }
    return 1;
    }


    Ich hoffe Ihr könnt mir helfen.


    mfg GabbaFreaK, :thumbup:

    Einmal editiert, zuletzt von GabbaFreaK ()

  • Er setzt die Punkte halt zurück aber ich bekomme trozem kein Payday:
    Hier noch mal mein public Payday:


    public PayDay(playerid)
    {
    new string[128];
    new account,interest;
    new rent = 0;
    if(IsPlayerConnected(playerid))
    {
    if(M_Bot[playerid][PAFK] == 0)
    {
    new playername2[MAX_PLAYER_NAME];
    GetPlayerName(playerid, playername2, sizeof(playername2));
    account = PlayerInfo[playerid][pAccount];
    new key = PlayerInfo[playerid][pPhousekey];
    if(key != 255)
    {
    rent = HouseInfo[key][hRent];
    if(strcmp(playername2, HouseInfo[key][hOwner], true) == 0)
    {
    rent = 0;
    }
    else if(rent > GetPlayerMoney(playerid))
    {
    PlayerInfo[playerid][pPhousekey] = 255;
    SendClientMessage(playerid, COLOR_WHITE, "You have been evicted.");
    rent = 0;
    }
    HouseInfo[key][hTakings] = HouseInfo[key][hTakings]+rent;
    }
    new tmpintrate;
    if (key != 255 && strcmp(playername2, HouseInfo[key][hOwner], true) == 0)
    {
    if(PlayerInfo[playerid][pDonateRank] > 0) { tmpintrate = intrate+4; }
    else { tmpintrate = intrate+2; }//HouseInfo[key][hLevel]
    }
    else
    {
    if(PlayerInfo[playerid][pDonateRank] > 0) { tmpintrate = 3; }
    else { tmpintrate = 1; }
    }
    if(PlayerInfo[playerid][pPayDay] >= 3)
    {
    Tax += TaxValue;//Should work for every player online
    PlayerInfo[playerid][pAccount] -= TaxValue;
    if(PlayerInfo[playerid][pDonateRank] > 0)
    {
    new bonus = PlayerInfo[playerid][pPayCheck] / 2;
    PlayerInfo[playerid][pPayCheck] += bonus;
    }
    new checks = PlayerInfo[playerid][pPayCheck];
    new ebill = random(180);
    //new oil = (PlayerInfo[i][pPhousekey]*100);
    ConsumingMoney[playerid] = 1;
    PlayerInfo[playerid][pAccount] -= ebill;
    PlayerInfo[playerid][pAccount] = checks;
    if(PlayerInfo[playerid][pAccount] > 0)
    {
    PlayerInfo[playerid][pAccount] -= ebill;
    SBizzInfo[4][sbTill] += ebill;
    }
    else
    {
    ebill = 0;
    }
    if(PlayerInfo[playerid][pPhousekey] != 255)
    {
    //PlayerInfo[i][pAccount] -= oil;
    //SBizzInfo[3][sbTill] += oil;
    }
    else
    {
    //oil = 0;
    }
    if(PlayerInfo[playerid][pMember] == 0 && PlayerInfo[playerid][pLeader] == 0)
    {
    checks = 0;
    }
    if(PlayerInfo[playerid][pHarz4] == 1)
    {
    checks = 750;
    } interest = (PlayerInfo[playerid][pAccount]/1000)*(tmpintrate);
    PlayerInfo[playerid][pExp]++;
    PlayerPlayMusic(playerid);
    PlayerInfo[playerid][pAccount] = account+interest;
    SendClientMessage(playerid, COLOR_WHITE, "|==========Zahltag==========|");
    format(string, sizeof(string), "Gehalt: $%d Miete: -$%d ", checks, rent);
    SendClientMessage(playerid, COLOR_GRAD1, string);
    PlayerInfo[playerid][pAccount] += checks;
    if(PlayerInfo[playerid][pPhousekey] != 255 || PlayerInfo[playerid][pPbiskey] != 255)
    {
    format(string, sizeof(string), "Strom Kosten: -$%d Steuern: -$%d", ebill, TaxValue);
    SendClientMessage(playerid, COLOR_GRAD1, string);
    }
    if(PlayerInfo[playerid][pHandyVer] == 1)
    {
    SendClientMessage(playerid,COLOR_GRAD2,"Handyvertragskosten: -$100");
    PlayerInfo[playerid][pAccount] -= 100;
    }
    if(Dtc_PlayerHaveCar[playerid][Dtc_PlayerKey[playerid]])
    {
    SendClientMessage(playerid,COLOR_GRAD2,"Kfz-Steuern : -315$");
    PlayerInfo[playerid][pAccount] -= 315;
    }
    // if(PlayerInfo[playerid][pHotel] == 2 || PlayerInfo[playerid][pHotel] == 1 )
    // {
    // PlayerInfo[playerid][pAccount] -= 200;
    // format(string, sizeof(string), "Hotel: -$200");
    // SendClientMessage(playerid, COLOR_GRAD2, string);
    // }
    format(string, sizeof(string), "Zinsen: $%d", interest);
    SendClientMessage(playerid, COLOR_GRAD2, string);
    SendClientMessage(playerid, COLOR_WHITE, "|===========================|");
    format(string, sizeof(string), "Alter Kontostand: $%d", account);
    SendClientMessage(playerid, COLOR_GRAD5, string);
    format(string, sizeof(string), "Neuer Kontostand: $%d", PlayerInfo[playerid][pAccount]);
    SendClientMessage(playerid, COLOR_GRAD5, string);
    format(string, sizeof(string), "~g~PayDay~y~!!!");
    GameTextForPlayer(playerid, string, 5000, 1);
    rent = 0;
    PlayerInfo[playerid][pPayDay] = 0;
    PlayerInfo[playerid][pPayCheck] = 0;
    PlayerInfo[playerid][pConnectTime] += 1;
    PlayerInfo[playerid][pPayPoints] = 0;


    }
    }


    }


    return 1;
    }
    ist Gekürz dazwischen sind noch die gehälter der Fraktionen

  • Ja jeder Spieler eine eigene, d.h. ich geh online ich bekomme bei 60 minuten spielzeit payday die Zeit speichert sich^^ ich hate es schon ma aber :( ka weg

  • Schade :( Du kennst das bestimmt von paar servern bei den stats Spielzeit seit Payday [%d Minuten] das will ich auch haben nur ich bekomme bei 60 kein payday -.- sonst alles wenn ich gametext rein mache bekomm ich den auch aber kein PAYDAY


  • public pday() //kein playerid ;)
    {
    for (new i = 0; i < MAX_PLAYERS; i++)
    {
    PlayerInfo[i][pPayPoints]++;
    if(PlayerInfo[i][pPayPoints] >= 60)
    { //hier braucht es nur eine Klammer
    PayDay(i);
    } //hier auch
    }
    return 1;
    }


    und nimm bei PayDay das raus: if(PlayerInfo[playerid][pPayDay] >= 3)


    Dann geht der Payday nur, wenn man level 3 oder höher ist ;)