Jump to content

[REZOLVAT] PayDay


SorinELCapo2
 Share

Recommended Posts

Salut, am facut un sistem de pet si l-am adaugat la PayDay sa se dea cate-un RollPoint, si cand e ora fixa nu se mai da payday-ul la server

[/code]

function PayDay() {
    new hour,minn,sec;
    gettime(hour,minn,sec);
    if(minn == 0 && Paydaydat == 0) {
        SetTimer("ResetPD", 60000, false);
        Paydaydat = 1;
        new string[128];
        new interest,account[MAX_PLAYERS];

        new rent[MAX_PLAYERS];
        SetTimer("ScadeLicentele", 4000, false);
        foreach(Player,i) {
            if(IsPlayerConnected(i) && IsPlayerLogged == 1) {
                new key = PlayerInfo[pHouse];
                if(key != 999)
                {
                    rent = HouseInfo[key][hRent];
                    HouseInfo[key][hTakings] += rent;
                }
                new tmpintrate;
                SendClientMessage(i, COLOR_SERVER, "------------------------------------------------------------------------------------------------");
                if(PlayerInfo[pPremiumAccount] == 1)
                {
                    tmpintrate = 2;
                    PlayerInfo[pPayDayHad] += 1;
                    if(PlayerInfo[pPayDayHad] >= 5) {
                        PlayerInfo[pExp]++;
                        PlayerInfo[pPayDayHad] = 0;
                    }
                    new bonus = PlayerInfo[pPayCheck] / 2;
                    PlayerInfo[pPayCheck] += bonus;
                }
                else
                {
                    tmpintrate = 1;
                }
                account = PlayerInfo[pAccount];
                Tax += TaxValue;
                
                //PlayerInfo[pAccount] -= TaxValue;
                new checks = PlayerInfo[pLevel]*2500+random(3000);
                if(PlayerInfo[pDailyLogin] == 0) checks = checks*2;            
                GivePlayerCash(i, checks);
                interest = (PlayerInfo[pAccount]/5000)*(tmpintrate);
                if(PlayerInfo[pDailyLogin] == 0) interest = interest*2;
                if(PlayerInfo[pDailyLogin] == 0) PlayerInfo[pExp] += 2;
                else PlayerInfo[pExp] += 1;
                UpdateProgress(i, 0);
                PlayerInfo[pAccount] += interest+1000;
                    
                
                SCM(i, COLOR_WHITE, "Salariul tau a sosit! Viziteaza banca pentru a retrage banii.");            
                format(string, sizeof(string), "Ai primit %0.2f ore jucate. (%.0f minute)", PlayerInfo[pSeconds]/3600, PlayerInfo[pSeconds]/60);
                SendClientMessage(i, COLOR_WHITE, string);
                PlayerInfo[pConnectTime] += PlayerInfo[pSeconds]/3600;
                if(PlayerInfo[pSeconds] >= 1800) {
                    new query[180];
                    format(query, sizeof(query), "UPDATE `users` SET `DayHours`=`DayHours`+1 WHERE `ID`='%d'", PlayerInfo[pSQLID]);
                    mysql_query(SQL, query);
                    format(query, sizeof(query), "UPDATE `users` SET `HoursMonth`=`HoursMonth`+1 WHERE `ID`='%d'", PlayerInfo[pSQLID]);
                    mysql_query(SQL, query);
                
                    if(PlayerInfo[pGiftPoints] < 5) {
                        PlayerInfo[pGiftPoints] ++;
                        Update(i, pGiftPointsx);
                    }                    
                }
                if(PlayerInfo[pRollPoints] < 20) {

                    PlayerInfo[pRollPoints] ++, Update(i, pRollPointsx); 
                    SCMf(i, COLOR_LIGHTBLUE, "Ai primit un roll points, acum ai %d/20 puncte pentru a da /roll.", PlayerInfo[pRollPoints]);

                    if(PlayerInfo[pRollPoints] >= 10) SCMf(i, COLOR_LIGHTBLUE, "Acum poti folosi comanda /roll pentru ca ai %d/10", PlayerInfo[pRollPoints]);

                    else SendClientMessage(i, COLOR_LIGHTBLUE, "Ai peste 20 roll points, foloseste comanda /roll pentru a putea primi puncte.");
                }
                if(PlayerInfo[pDailyLogin] == 0) {
                    PlayerInfo[pDailyLogin] = 1;
                    UpdateVar(i, "DailyLogin", 1);
                    SCM(i, COLOR_LIGHTBLUE, "Ai primit de doua ori mai multe respect points si bani pentru primul tau payday de astazi.");
                }
                PlayerInfo[pSeconds] = 0;

                if(PlayerInfo[pHouse] != 999) {
                    format(string, sizeof(string), "Paycheck: $%s | Tax: -$%d | Rent: -$%d | Old Balance: $%s", FormatNumber(checks), FormatNumber(TaxValue), HouseInfo[PlayerInfo[pHouse]][hRent], FormatNumber(account));
                    SendClientMessage(i, COLOR_GREY, string);
                    format(string, sizeof(string), "Interest rate: 0.%d% | Interest: $%s | New balance: $%s", tmpintrate, FormatNumber(interest), FormatNumber(PlayerInfo[pAccount]));
                    SendClientMessage(i, COLOR_GREY, string);
                }
                else {
                    format(string, sizeof(string), "Paycheck: $%s | Tax: -$%d | Rent: -$0 | Old Balance: $%s", FormatNumber(checks), FormatNumber(TaxValue), FormatNumber(account));
                    SendClientMessage(i, COLOR_GREY, string);
                    format(string, sizeof(string), "Interest rate: 0.%d% | Interest: $%s | New balance: $%s", tmpintrate, FormatNumber(interest), FormatNumber(PlayerInfo[pAccount]));
                    SendClientMessage(i, COLOR_GREY, string);
                }
            
                PlayerInfo[pPayDay] = 0;
                PlayerInfo[pPayCheck] = 0;            
                SendClientMessage(i, COLOR_SERVER, "------------------------------------------------------------------------------------------------");
            }
        }
        if(hour == 21) {
            new gold = 1 + random(10);
            new money = 10000 + random(5000);
            for(new h = 0; h < MAX_CLANS; h++) {
                if(strlen(ClanInfo[h][clName]) != 0) {
                    if(GetClanTurfs(h) >= 10) {
                        foreach(Player, i) {
                            if(PlayerInfo[pClan] == h && h != 0) {
                                PlayerInfo[pPremiumPoints] += gold;
                                Update(i, pPremiumPointsx);
                                GivePlayerCash(i, money);
                                format(string, sizeof(string), "Ai primit %d puncte premium si $%s deoarece clanul tau are peste 10 teriotrii.", gold, FormatNumber(money));
                                SCM(i, COLOR_MONEY, string);
                            }
                        }                
                    }
                }
            }
        }
        if(RestartPayday == 1) {
            SendClientMessageToAll(COLOR_CLIENT, "Server-ul a fost restartat! Va rugam sa reveniti.");
            GameModeExit();
        }    
    }    
    return 1;
}

Help =[

Link to comment
Share on other sites

Variabila "Paydaydat" ai avut grija sa o resetezi dupa un anumit timp? (Paydaydat = 0;)

Respecta si vei fi respectat.

 

BigInt Pawn:

Pacman C++: 

Snake C++:

Minesweeper C++:

 

mattbb.cash

leaks.ro

Link to comment
Share on other sites

Just now, SorinELCapo2 said:

Man, se da prima oara PayDay-ul, si a 2-a oara nu se mai da.. 

Nu mi-ai raspuns la intrebare...

Respecta si vei fi respectat.

 

BigInt Pawn:

Pacman C++: 

Snake C++:

Minesweeper C++:

 

mattbb.cash

leaks.ro

Link to comment
Share on other sites

  • Administrator
1 oră în urmă, SorinELCapo2 a spus:

A, mai am o problema de Teleport-Hack, cand sta unplayer pe masina mea, si dau cu speed ii da Kick pentru teleport-hack Help

Nu prea ai ce face in legatura cu asta, deoarece el sta pe masina si cand dai cu speed automat server-ul vede ca el isi schimba pozitia foarte rapid si primeste kick.

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...