Skripta koju koristim: /
Detaljan opis problema: Ovako, gde gresim? Pravio sam neki payday, i kao sto se vidi u kodu ispred je lotto i neaktivnost, to sve lepo odradi, al ovaj deo ispod, gde treba da da platu, da pokaze dialog, i sve ostalo nece da radi, al kad nemam dovoljno ovih poena kao koji su potrebni da se primi plata, tad mi ispise, a kad imam, tad nista...
Dio skripte: public PayDay()
{
new string[128];
for(new kucaid = 0; kucaid < sizeof(HouseInfo); kucaid++)
{
if(HouseInfo[kucaid][hOwned] == 1)
{
HouseInfo[kucaid][hTimer]++;
if(HouseInfo[kucaid][hTimer] >= 500)
{
HouseInfo[kucaid][hOwned] = 0;
strmid(HouseInfo[kucaid][hOwner], "Drzava", 0, strlen("Drzava"), 255);
strmid(HouseInfo[kucaid][hOwner], "Prodata Zbog Neaktivnosti", 0, strlen("Prodata Zbog Neaktivnosti"), 255);
HouseInfo[kucaid][hTimer] = 0;
OnPropUpdate();
OnPropTextdrawUpdate();
}
}
}
SaveAccounts();
Checkprop();
format(string, sizeof(string), "Lutrija: Pocinjemo izvlacenje.");
OOCOff(COLOR_DBLUE, string);
new rand = random(80);
if(rand <= 77) { rand += 3; }
Lotto(rand);
SBizzInfo[12][sbTill] += 10000;
ExtortionSBiz(12, 1500);
SBizzInfo[15][sbTill] += 15000;
ExtortionSBiz(15, 2000);
SBizzInfo[0][sbTill] += 20000;
ExtortionSBiz(4, 50000);
///////////////
new coordstring[128];
new coordstring1[128];
new coordstring2[128];
new coordstring3[128];
new coordstring4[180];
new coordstring5[128];
new coordstring6[128];
new coordstring7[128];
new coordstring8[128];
new coordstring9[128];
new coordstring10[128];
new coordstring11[128];
new coordstring12[128];
new coordstring13[128];
new coordstring14[128];
new coordstring15[128];
new coordstring16[128];
new payday[1250];
new account;
new rent = 0;
foreach (Player, i)
{
if(IsPlayerConnected(i))
{
new nxtlevel = PlayerInfo[i][pLevel]+1;
new expamount = nxtlevel*levelexp;
new infostring[128];
if(PlayerInfo[i][pLevel] > 0)
{
if(MoneyMessage[i]==1)
{
SendClientMessage(i, COLOR_LIGHTRED, "Niste odplatili ratu za kredit, idete u zatvor.");
GameTextForPlayer(i, "~r~Uhapsen!", 2000, 1);
SetPlayerInterior(i, 6);
PlayerInfo[i][pInt] = 6;
SetPlayerPos(i, 264.6288,77.5742,1001.0391);
PlayerInfo[i][pJailed] = 1;
ResetPlayerWeapons(i);
WantedPoints[i] = 0;
PlayerInfo[i][pJailTime] = 240;
format(string, sizeof(string), "Uhapseni ste na %d sekundi. Kaucija: Nedostupna", PlayerInfo[i][pJailTime]);
SendClientMessage(i, COLOR_WHITE, string);
}
if(PlayerInfo[i][pViptime] != 0)
{
PlayerInfo[i][pViptime]--;
if(PlayerInfo[i][pViptime] <= 0)
{
PlayerInfo[i][pViptime] = 0;
PlayerInfo[i][pVip] = 0;
SendClientMessage(i, COLOR_GRAD1,"Obavestenje: Ovo je obavestenje o isteku vaseg donatorskog paketa.");
SendClientMessage(i, COLOR_GRAD1,"Hvala vam sto ste donirali. Ukoliko zelite da produzite VIP Status posetite forum.");
format(string, sizeof(string), "Vas BS Admin Team!!!");
GameTextForPlayer(i, string, 5000, 1);
if(gTeam[i] == 4) { gTeam[i] = 3; }
ClearCrime(i);
SetPlayerToTeamColor(i);
}
}
new playername2[MAX_PLAYER_NAME];
GetPlayerName(i, playername2, sizeof(playername2));
account = PlayerInfo[i][pAccount];
new key = PlayerInfo[i][pPhousekey];
if(key != 999)
{
rent = HouseInfo[key][hRent];
if(strcmp(playername2, HouseInfo[key][hOwner], true) == 0)
{
rent = 0;
}
else if(rent > GetPlayerMoney(i))
{
PlayerInfo[i][pPhousekey] = 999;
SendClientMessage(i, COLOR_WHITE, "Iseljeni ste.");
rent = 0;
}
HouseInfo[key][hTakings] = HouseInfo[key][hTakings]+rent;
}
if(PlayerInfo[i][pPayDay] >= 5)
{
Tax += TaxValue;//Should work for every player online
PlayerInfo[i][pAccount] -= TaxValue;
new checks = (PlayerInfo[i][pPayCheck] + 150);
//__________________________________________________________
new porezbogastvo;
new struja, voda, komunalije;
new ent = HouseInfo[key][hInt];
if(ent == 1 || ent == 2 || ent == 3 || ent == 4)
{
struja = 100 + (random(25));
voda = 80 + (random(21));
komunalije = 60 + (random(10));
}
else if(ent == 6 || ent == 9 || ent == 10 || ent == 12)
{
struja = 300 + (random(80));
voda = 100 + (random(35));
komunalije = 75 + (random(15));
}
else if(ent == 5 || ent == 15 || ent == 7)
{
struja = 800 + (random(170));
voda = 150 + (random(23));
komunalije = 130 + (random(27));
}
else
{
struja = 0;
voda = 0;
komunalije = 0;
}
if(PlayerInfo[i][pPbiskey] != 255)
{
struja = struja + (50 + (random(34)));
voda = voda + (35 + (random(21)));
}
if(PlayerInfo[i][pPhousekey] == 999)
{
struja = 0;
voda = 0;
komunalije = 0;
}
new kamatnastopa, interes;
if(PlayerInfo[i][pVip] == 4 || PlayerInfo[i][pAdmin] >= 2 || PlayerInfo[i][pGm] >= 1)
{
PlayerInfo[i][pExp]++;
kamatnastopa = 5;
}
else
{
kamatnastopa = 3;
}
interes = (PlayerInfo[i][pAccount]/1250)*(kamatnastopa);
porezbogastvo = (PlayerInfo[i][pAccount]/450);
account += checks;
account += interes;
account -= porezbogastvo;
account -= struja;
account -= voda;
account -= komunalije;
account -= rent;
PlayerInfo[i][pAccount] = account;
PlayerInfo[i][pExp]++;
format(coordstring, sizeof(coordstring)," {0049FF}|___BANKARSKI IZVESTAJ___|{FFFFFF}");
format(coordstring1, sizeof(coordstring1),"\n{F3FF02}Plata: $%d{FFFFFF}", checks);
format(coordstring2, sizeof(coordstring2),"\n{F3FF02}Stecen interes od para u banci:$%d{FFFFFF}",interes);
format(coordstring3, sizeof(coordstring3),"\nKamatna stopa: {F3FF02}0.%d posto",kamatnastopa);
format(coordstring4, sizeof(coordstring4),"\n{0049FF}|---------- Racuni ----------|{FFFFFF}");
format(coordstring5, sizeof(coordstring5), "\n{00C0FF}Racun za struju: $%d",struja);
format(coordstring6, sizeof(coordstring6),"\nRacun za vodu(Vodovod): $%d",voda);
format(coordstring7, sizeof(coordstring7),"\nRacun za komunalije(Gradska Cistoca): $%d{FFFFFF}",komunalije);
format(coordstring8, sizeof(coordstring8),"\n\n{0049FF}|--------------------|{FFFFFF}");
format(coordstring9, sizeof(coordstring9),"\n{0049FF}Rent: -$%d{FFFFFF}", rent);
format(coordstring10, sizeof(coordstring10),"\nPorez na bogatstvo: $%d\n",porezbogastvo);
format(coordstring11, sizeof(coordstring11),"\n{0049FF}|------------------------|{FFFFFF}");
format(coordstring12, sizeof(coordstring12),"\n{F3FF02}Staro Stanje: $%d{FFFFFF}", account - checks - interes + (porezbogastvo + struja + voda + komunalije + rent));
format(coordstring13, sizeof(coordstring13),"\n{6EF83C}Novo Stanje: $%d",PlayerInfo[i][pAccount]);
format(coordstring14, sizeof(coordstring14),"\n{F3FF02}= Proverite stanje vasih levela /levelup ={FFFFFF}");
format(coordstring15, sizeof(coordstring15),"\n{0049FF}|----------------------------------------|{FFFFFF}");
format(coordstring16, sizeof(coordstring16),"\n");
format(payday, 1250," %s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s",coordstring,coordstring1,coordstring2,coordstring3,coordstring4,coordstring5,coordstring6,coordstring7,coordstring8,coordstring9,coordstring10,coordstring11,coordstring12,coordstring13,coordstring14,coordstring15,coordstring16);
ShowPlayerDialog(i, 800, DIALOG_STYLE_MSGBOX, "Bankarski izvestaj gradjana!", payday , "OK", "OK");
format(string, sizeof(string), "~y~Plata~n~~w~Plata je stigla na vas racun");
GameTextForPlayer(i, string, 5000, 1);
rent = 0;
PlayerInfo[i][pPayDay] = 0;
PlayerInfo[i][pPayCheck] = 0;
PlayerInfo[i][pConnectTime] += 1;
if(PlayerInfo[i][pVip] > 0)
{
PlayerInfo[i][pPayDayHad] += 1;
if(PlayerInfo[i][pPayDayHad] >= 5)
{
PlayerInfo[i][pExp]++;
PlayerInfo[i][pPayDayHad] = 0;
}
}
if (PlayerInfo[i][pExp] >= expamount)
{
PlayerInfo[i][pLevel]++;
PlayerInfo[i][pExp] = 0;
PlayerInfo[i][gPupgrade] = PlayerInfo[i][gPupgrade]+2;
GameTextForPlayer(i, string, 5000, 1);
format(infostring, 256, "[LEVEL UP]Cestitamo! Sada ste level %d. Kucajte /nadogradnja", nxtlevel);
SendClientMessage(i, COLOR_WHITE, infostring);
format(infostring, 256, "Imate %d nepotrosenih Upgrade Poena",PlayerInfo[i][gPupgrade]);
SendClientMessage(i, COLOR_WHITE, infostring);
}
}
else
{
SendClientMessage(i, COLOR_WHITE, "* Niste igrali dovoljno dugo da biste dobili platu.");
}
}
}
}
return 1;
}
Neke slike/video za lakse dobivanje pomoci(neobavezno):
bump
Probaj ovako:
public PayDay()
{
new string[128];
for(new kucaid = 0; kucaid < sizeof(HouseInfo); kucaid++)
{
if(HouseInfo[kucaid][hOwned] == 1)
{
HouseInfo[kucaid][hTimer]++;
if(HouseInfo[kucaid][hTimer] >= 500)
{
HouseInfo[kucaid][hOwned] = 0;
strmid(HouseInfo[kucaid][hOwner], "Drzava", 0, strlen("Drzava"), 255);
strmid(HouseInfo[kucaid][hOwner], "Prodata Zbog Neaktivnosti", 0, strlen("Prodata Zbog Neaktivnosti"), 255);
HouseInfo[kucaid][hTimer] = 0;
OnPropUpdate();
OnPropTextdrawUpdate();
}
}
}
SaveAccounts();
Checkprop();
format(string, sizeof(string), "Lutrija: Pocinjemo izvlacenje.");
OOCOff(COLOR_DBLUE, string);
new rand = random(80);
if(rand <= 77) { rand += 3; }
Lotto(rand);
SBizzInfo[12][sbTill] += 10000;
ExtortionSBiz(12, 1500);
SBizzInfo[15][sbTill] += 15000;
ExtortionSBiz(15, 2000);
SBizzInfo[0][sbTill] += 20000;
ExtortionSBiz(4, 50000);
///////////////
new coordstring[128];
new coordstring1[128];
new coordstring2[128];
new coordstring3[128];
new coordstring4[180];
new coordstring5[128];
new coordstring6[128];
new coordstring7[128];
new coordstring8[128];
new coordstring9[128];
new coordstring10[128];
new coordstring11[128];
new coordstring12[128];
new coordstring13[128];
new coordstring14[128];
new coordstring15[128];
new coordstring16[128];
new payday[1250];
new account;
new rent = 0;
foreach (Player, i)
{
if(IsPlayerConnected(i))
{
new nxtlevel = PlayerInfo[i][pLevel]+1;
new expamount = nxtlevel*levelexp;
new infostring[128];
if(PlayerInfo[i][pLevel] > 0)
{
if(MoneyMessage[i]==1)
{
SendClientMessage(i, COLOR_LIGHTRED, "Niste odplatili ratu za kredit, idete u zatvor.");
GameTextForPlayer(i, "~r~Uhapsen!", 2000, 1);
SetPlayerInterior(i, 6);
PlayerInfo[i][pInt] = 6;
SetPlayerPos(i, 264.6288,77.5742,1001.0391);
PlayerInfo[i][pJailed] = 1;
ResetPlayerWeapons(i);
WantedPoints[i] = 0;
PlayerInfo[i][pJailTime] = 240;
format(string, sizeof(string), "Uhapseni ste na %d sekundi. Kaucija: Nedostupna", PlayerInfo[i][pJailTime]);
SendClientMessage(i, COLOR_WHITE, string);
}
if(PlayerInfo[i][pViptime] != 0)
{
PlayerInfo[i][pViptime]--;
if(PlayerInfo[i][pViptime] <= 0)
{
PlayerInfo[i][pViptime] = 0;
PlayerInfo[i][pVip] = 0;
SendClientMessage(i, COLOR_GRAD1,"Obavestenje: Ovo je obavestenje o isteku vaseg donatorskog paketa.");
SendClientMessage(i, COLOR_GRAD1,"Hvala vam sto ste donirali. Ukoliko zelite da produzite VIP Status posetite forum.");
format(string, sizeof(string), "Vas BS Admin Team!!!");
GameTextForPlayer(i, string, 5000, 1);
if(gTeam[i] == 4) { gTeam[i] = 3; }
ClearCrime(i);
SetPlayerToTeamColor(i);
}
}
new playername2[MAX_PLAYER_NAME];
GetPlayerName(i, playername2, sizeof(playername2));
account = PlayerInfo[i][pAccount];
new key = PlayerInfo[i][pPhousekey];
if(key != 999)
{
rent = HouseInfo[key][hRent];
if(strcmp(playername2, HouseInfo[key][hOwner], true) == 0)
{
rent = 0;
}
else if(rent > GetPlayerMoney(i))
{
PlayerInfo[i][pPhousekey] = 999;
SendClientMessage(i, COLOR_WHITE, "Iseljeni ste.");
rent = 0;
}
HouseInfo[key][hTakings] = HouseInfo[key][hTakings]+rent;
}
if(PlayerInfo[i][pPayDay] < 5)return SendClientMessage(i, COLOR_WHITE, "* Niste igrali dovoljno dugo da biste dobili platu.");
Tax += TaxValue;//Should work for every player online
PlayerInfo[i][pAccount] -= TaxValue;
new checks = (PlayerInfo[i][pPayCheck] + 150);
//__________________________________________________________
new porezbogastvo;
new struja, voda, komunalije;
new ent = HouseInfo[key][hInt];
if(ent == 1 || ent == 2 || ent == 3 || ent == 4)
{
struja = 100 + (random(25));
voda = 80 + (random(21));
komunalije = 60 + (random(10));
}
else if(ent == 6 || ent == 9 || ent == 10 || ent == 12)
{
struja = 300 + (random(80));
voda = 100 + (random(35));
komunalije = 75 + (random(15));
}
else if(ent == 5 || ent == 15 || ent == 7)
{
struja = 800 + (random(170));
voda = 150 + (random(23));
komunalije = 130 + (random(27));
}
else
{
struja = 0;
voda = 0;
komunalije = 0;
}
if(PlayerInfo[i][pPbiskey] != 255)
{
struja = struja + (50 + (random(34)));
voda = voda + (35 + (random(21)));
}
if(PlayerInfo[i][pPhousekey] == 999)
{
struja = 0;
voda = 0;
komunalije = 0;
}
new kamatnastopa, interes;
if(PlayerInfo[i][pVip] == 4 || PlayerInfo[i][pAdmin] >= 2 || PlayerInfo[i][pGm] >= 1)
{
PlayerInfo[i][pExp]++;
kamatnastopa = 5;
}
else
{
kamatnastopa = 3;
}
interes = (PlayerInfo[i][pAccount]/1250)*(kamatnastopa);
porezbogastvo = (PlayerInfo[i][pAccount]/450);
account += checks;
account += interes;
account -= porezbogastvo;
account -= struja;
account -= voda;
account -= komunalije;
account -= rent;
PlayerInfo[i][pAccount] = account;
PlayerInfo[i][pExp]++;
format(coordstring, sizeof(coordstring)," {0049FF}|___BANKARSKI IZVESTAJ___|{FFFFFF}");
format(coordstring1, sizeof(coordstring1),"\n{F3FF02}Plata: $%d{FFFFFF}", checks);
format(coordstring2, sizeof(coordstring2),"\n{F3FF02}Stecen interes od para u banci:$%d{FFFFFF}",interes);
format(coordstring3, sizeof(coordstring3),"\nKamatna stopa: {F3FF02}0.%d posto",kamatnastopa);
format(coordstring4, sizeof(coordstring4),"\n{0049FF}|---------- Racuni ----------|{FFFFFF}");
format(coordstring5, sizeof(coordstring5), "\n{00C0FF}Racun za struju: $%d",struja);
format(coordstring6, sizeof(coordstring6),"\nRacun za vodu(Vodovod): $%d",voda);
format(coordstring7, sizeof(coordstring7),"\nRacun za komunalije(Gradska Cistoca): $%d{FFFFFF}",komunalije);
format(coordstring8, sizeof(coordstring8),"\n\n{0049FF}|--------------------|{FFFFFF}");
format(coordstring9, sizeof(coordstring9),"\n{0049FF}Rent: -$%d{FFFFFF}", rent);
format(coordstring10, sizeof(coordstring10),"\nPorez na bogatstvo: $%d\n",porezbogastvo);
format(coordstring11, sizeof(coordstring11),"\n{0049FF}|------------------------|{FFFFFF}");
format(coordstring12, sizeof(coordstring12),"\n{F3FF02}Staro Stanje: $%d{FFFFFF}", account - checks - interes + (porezbogastvo + struja + voda + komunalije + rent));
format(coordstring13, sizeof(coordstring13),"\n{6EF83C}Novo Stanje: $%d",PlayerInfo[i][pAccount]);
format(coordstring14, sizeof(coordstring14),"\n{F3FF02}= Proverite stanje vasih levela /levelup ={FFFFFF}");
format(coordstring15, sizeof(coordstring15),"\n{0049FF}|----------------------------------------|{FFFFFF}");
format(coordstring16, sizeof(coordstring16),"\n");
format(payday, 1250," %s%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s",coordstring,coordstring1,coordstring2,coordstring3,coordstring4,coordstring5,coordstring6,coordstring7,coordstring8,coordstring9,coordstring10,coordstring11,coordstring12,coordstring13,coordstring14,coordstring15,coordstring16);
ShowPlayerDialog(i, 800, DIALOG_STYLE_MSGBOX, "Bankarski izvestaj gradjana!", payday , "OK", "OK");
format(string, sizeof(string), "~y~Plata~n~~w~Plata je stigla na vas racun");
GameTextForPlayer(i, string, 5000, 1);
rent = 0;
PlayerInfo[i][pPayDay] = 0;
PlayerInfo[i][pPayCheck] = 0;
PlayerInfo[i][pConnectTime] += 1;
if(PlayerInfo[i][pVip] > 0)
{
PlayerInfo[i][pPayDayHad] += 1;
if(PlayerInfo[i][pPayDayHad] >= 5)
{
PlayerInfo[i][pExp]++;
PlayerInfo[i][pPayDayHad] = 0;
}
}
if (PlayerInfo[i][pExp] >= expamount)
{
PlayerInfo[i][pLevel]++;
PlayerInfo[i][pExp] = 0;
PlayerInfo[i][gPupgrade] = PlayerInfo[i][gPupgrade]+2;
GameTextForPlayer(i, string, 5000, 1);
format(infostring, 256, "[LEVEL UP]Cestitamo! Sada ste level %d. Kucajte /nadogradnja", nxtlevel);
SendClientMessage(i, COLOR_WHITE, infostring);
format(infostring, 256, "Imate %d nepotrosenih Upgrade Poena",PlayerInfo[i][gPupgrade]);
SendClientMessage(i, COLOR_WHITE, infostring);
}
}
}
}
}
return 1;
}
naso sam problem, problem je bio u new key = PlayerInfo[pPhousekey];
i new ent...
Znaci ja jos uvek ne mogu da shvatim sto, samo sam stavio posle skoro svakog dela SCM i neku poruku da znam dokle ucitava i on ucita do toga i posle nista nece, kad sam obrisao to i stavio sam uslov da se ima kuca, sve radi kako treba...