[Pomoc] Respekti i placa!

733
pregleda
6
postova
SeYziicH
4
Made Man
7. Avg. 2011.
Skripta koju koristim: GF Edit
Detaljan opis problema: Ovako nikako mi ne daje respekte i placu, ima sve normalno ono respekti 0/4, i sada kada bude npr. 16:00 i treba dobit respkt pise niste igrali dovoljno dugo, a bas sam jednom probao i bio citav sat na serveru i opet isto, a kada idem setstat sve je normalno
Dio skripte: public PayDay:
public PayDay()
{
new string;
new account,interest;
new rent = 0;
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
   if(PlayerInfo > 0)
   {
new playername2;
GetPlayerName(i, playername2, sizeof(playername2));
account = PlayerInfo;
new key = PlayerInfo;
if(key != 255)
{
rent = HouseInfo;
if(strcmp(playername2, HouseInfo, true) == 0)
{
rent = 0;
}
else if(rent > GetPlayerMoney(i))
{
PlayerInfo = 255;
SendClientMessage(i, COLOR_WHITE, "Iseljeni ste iz kuce.");
rent = 0;
}
HouseInfo = HouseInfo+rent;
}
new tmpintrate;
if (key != 255 && strcmp(playername2, HouseInfo, true) == 0)
{
   if(PlayerInfo > 0) { tmpintrate = intrate+4; }
else { tmpintrate = intrate+2; }//HouseInfo
}
else
{
   if(PlayerInfo > 0) { tmpintrate = 3; }
else { tmpintrate = 1; }
}
if(PlayerInfo >= 5)
{
   Tax += TaxValue;//Should work for every player online
   PlayerInfo -= TaxValue;
new checks = PlayerInfo / 5;
if(PlayerInfo > 0)
{
   new bonus = PlayerInfo / 10;
   checks += bonus;
}
   new ebill = (PlayerInfo/10000)*(PlayerInfo);
   //ConsumingMoney = 1;
   //GivePlayerMoney(i, checks);
   account += checks;
   if(PlayerInfo > 0)
   {
    PlayerInfo -= ebill;
    SBizzInfo += ebill;
}
else
{
   ebill = 0;
}
interest = (PlayerInfo/1000)*(tmpintrate);
PlayerInfo++;
PlayerPlayMusic(i);
PlayerInfo = account+interest;
                   new playerid;
   format(string,sizeof(string),"~y~Los Santos Banka:~n~~n~~w~ Iznos plate:~y~ %d~g~$~n~~w~ Racuni/Takse: ~r~-%d~g~$~n~~w~ Racun za struju: ~r~-%d~g~$~n~~w~ Racun renta: ~r~-%d~g~$~n~~y~Novi racun: ~g~$%d~n~~y~Stisni ~w~ENTER~y~ ukoliko zelis zatvoriti ovaj prozor",checks, TaxValue, ebill, rent,PlayerInfo);
   TextDrawSetString(ag, string);
   TextDrawShowForPlayer(playerid, ag);
   TextDrawShowForPlayer(playerid, paytextdraw);
format(string, sizeof(string), "~y~PayDay~n~~w~Placa");
GameTextForPlayer(i, string, 5000, 1);
rent = 0;
PlayerInfo = 0;
PlayerInfo = 0;
PlayerInfo += 1;
if(PlayerInfo > 0)
{
   PlayerInfo += 1;
   if(PlayerInfo >= 5)
   {
       PlayerInfo++;
       PlayerInfo = 0;
   }
}
}
else
{
   SendClientMessage(i, COLOR_LIGHTRED, "* Niste igrali dovoljno dugo da bi dobili payday.");
}
}
}
}
Checkprop();
return 1;
}

Neke slike/video za lakse dobivanje pomoci(neobavezno): //
mikec
4
Made Man
7. Avg. 2011.
Proveri na koliko minuta ti se povećava vrednost promenjive pPayDay, i onda na osnovu toga izmeni sledeći uslov:
if(PlayerInfo >= 5)
SeYziicH
4
Made Man
7. Avg. 2011.
a gdje da to promjenim nisam bas razumio :S
Mr.Lowrey
5
Godfather
7. Avg. 2011.
pa da kucas ctrl + f i onda nades omg
SeYziicH
4
Made Man
8. Avg. 2011.
Kolko sam shvatio ovo treba :S?
if(PlayerInfo >= 5)
{
    Tax += TaxValue;//Should work for every player online
    PlayerInfo -= TaxValue;
new checks = PlayerInfo / 5;
if(PlayerInfo > 0)
{
    new bonus = PlayerInfo / 10;
    checks += bonus;
}
    new ebill = (PlayerInfo/10000)*(PlayerInfo);
    //ConsumingMoney = 1;
    //GivePlayerMoney(i, checks);
    account += checks;
    if(PlayerInfo > 0)
    {
    PlayerInfo -= ebill;
    SBizzInfo += ebill;
}
else
{
    ebill = 0;
}
interest = (PlayerInfo/1000)*(tmpintrate);
PlayerInfo++;
PlayerPlayMusic(i);
PlayerInfo = account+interest;
                    new playerid;
    format(string,sizeof(string),"~y~Los Santos Banka:~n~~n~~w~ Iznos plate:~y~ %d~g~$~n~~w~ Racuni/Takse: ~r~-%d~g~$~n~~w~ Racun za struju: ~r~-%d~g~$~n~~w~ Racun renta: ~r~-%d~g~$~n~~y~Novi racun: ~g~$%d~n~~y~Stisni ~w~ENTER~y~ ukoliko zelis zatvoriti ovaj prozor",checks, TaxValue, ebill, rent,PlayerInfo);
    TextDrawSetString(ag, string);
    TextDrawShowForPlayer(playerid, ag);
    TextDrawShowForPlayer(playerid, paytextdraw);
format(string, sizeof(string), "~y~PayDay~n~~w~Placa");
GameTextForPlayer(i, string, 5000, 1);
rent = 0;
PlayerInfo = 0;
PlayerInfo = 0;
PlayerInfo += 1;
if(PlayerInfo > 0)
{
    PlayerInfo += 1;
    if(PlayerInfo >= 5)
    {
        PlayerInfo++;
        PlayerInfo = 0;
    }
}
}
else
{
    SendClientMessage(i, COLOR_LIGHTRED, "* Niste igrali dovoljno dugo da bi dobili payday.");
}
}
}
}
Checkprop();
return 1;
}
mikec
4
Made Man
8. Avg. 2011.
Da, to treba. Samo proveri na koliko minuta ti se menja pPayDay.

Ako ti se menja na svakih 15minuta, u navedenom uslovu umesto 5 napisi naprimer 2. (15x2 = 30minuta za dobijanje plate)
Ako se menja na svakih 2min, u uslovu namesto 5 napisi oko 10.  (2x10 = 20minuta za dobijanje plate)

Naravno, ovo su primeri, ako želiš da se platu igra 40minuta, stavi da se promenjiva pPayDay povećava naprimer na svaka 2minuta, i da se u uslovu nalazi:
if(PlayerInfo >= 20)
Zato što 2x20=40minuta

Koji deo nije jasan? 😄

Morate biti prijavljeni da biste odgovorili na ovu temu.

Prijava

© 2026 SmartShark. All rights reserved.

Powered by Momentum|v2026.3.001 Alpha