[Pomoc] PayDay nesto radi a nesto ne, sigurno nisu na mestu zagrade


Započeo Infinity, Novembar 09, 2014, 20:25:32 POSLE PODNE

prethodna tema - sledeća tema

0 članova i 1 gost pregledaju ovu temu.

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):
Poslednja Izmena: Novembar 09, 2014, 20:27:31 POSLE PODNE od Dusan_Antic


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...