[Ajuda] Sistema de loteria 10 minutos apуs payday
#1

Eae galera do forum samp blz?

queria um sitema de quando desse o payday dez minutos dopois vinhece a loteria sei que tenho que usar o settime e uma public mais es a questгo nгo sei trabalhar com settimer e a public faзo com playerid ou uso o for new i?


meu sistema de payday

HTML Code:
public PayDay()
{
	new Conta,interest;
	new rent = 0;
	new string[256];
	for(new i = 0; i < MAX_PLAYERS; i++)
	{
		if(IsPlayerConnected(i) && !IsPlayerNPC(i))
		{
		    if(PlayerInfo[i][pLevel] > 0)
		    {
		    	if(MoneyMessage[i]==1)
				{
				    SendClientMessage(i, COR_TRIADS, "Vocк devia ter debitado suas dнvidas, lhe enviaram um pedido de prisгo.");
				    GameTextForPlayer(i, "~r~apreendido !", 2000, 1);
				    SetPlayerInterior(i, 6);
			   		XXAirBreak[i] += 3;SetPlayerPos(i, 264.6288,77.5742,1001.0391);
		            PlayerInfo[i][pJailed] = 1;
		            ResetPlayerWeaponsBPH(i);
					WantedPoints[i] = 0;
					PlayerInfo[i][pJailTime] = 240;
					format(string, sizeof(string), "Vocк foi preso por %d segundos.   Fianзa: Desativada", PlayerInfo[i][pJailTime]);
					SendClientMessage(i, COLOR_LIGHTBLUE, string);
				}
				if(Multa[i] > 1)
				{
				    SendClientMessage(i, COR_TRIADS, "Vocк devia ter debitado suas dнvidas, lhe enviaram um pedido de prisгo.");
				    GameTextForPlayer(i, "~r~apreendido !", 2000, 1);
				    SetPlayerInterior(i, 6);
			   		XXAirBreak[i] += 3;SetPlayerPos(i, 264.6288,77.5742,1001.0391);
		            PlayerInfo[i][pJailed] = 1;
		            ResetPlayerWeaponsBPH(i);
					WantedPoints[i] = 0;
					PlayerInfo[i][pJailTime] = 240;
					format(string, sizeof(string), "Vocк foi preso por %d segundos.   Fianзa: Desativada", PlayerInfo[i][pJailTime]);
					SendClientMessage(i, COLOR_LIGHTBLUE, string);
				}
			    if(MoneyMessage[i]==1)
				{
				    SendClientMessage(i, COLOR_LIGHTRED, "Vocк nгo pagou a sua dнvida e foi preso.");
				    GameTextForPlayer(i, "~r~Preso!", 2000, 1);
				    SetPlayerInterior(i, 6);
			   		XXAirBreak[i] += 3;SetPlayerPos(i, 264.6288,77.5742,1001.0391);
		            PlayerInfo[i][pJailed] = 1;
		            ResetPlayerWeaponsBPH(i);
                    WantedPoints[i] = 0;
      				SetPlayerWantedLevel(i, 0);
					PlayerInfo[i][pJailTime] = 600;
					format(string, sizeof(string), "Vocк foi preso por %d segundos.", PlayerInfo[i][pJailTime]);
					SendClientMessage(i, COLOR_LIGHTBLUE, string);
				}
				new playername2[MAX_PLAYER_NAME];
				GetPlayerName(i, playername2, sizeof(playername2));
				Conta = PlayerInfo[i][pConta];
				new key = PlayerInfo[i][pPHousekey];
				if(key != 500)
				{
					rent = HouseInfo[key][hRent];
					if(strcmp(playername2, HouseInfo[key][hOwner], true) == 0)
					{
						rent = 0;
					}
					else if(rent > GetPlayerMoneyEx(i))
					{
						PlayerInfo[i][pPHousekey] = 500;
						SendClientMessage(i, COLOR_WHITE, "Vocк foi expulso(a).");
						rent = 0;
					}
					HouseInfo[key][hTakings] = HouseInfo[key][hTakings]+rent;
				}
				new tmpintrate;
			    if(PlayerInfo[i][pVIP] == 1)
				{
					tmpintrate = 3;
				}
			    else if(PlayerInfo[i][pVIP] == 2)
				{
					tmpintrate = 4;
				}
				else
				{
					tmpintrate = 1;
				}
				if(PlayerInfo[i][pPayDay] >= 3)
				{
				    Tax += TaxValue;//Shorld work for every player online
				    PlayerInfo[i][pConta] -= TaxValue;
					new checks = PlayerInfo[i][pSalario];
				    new ebill = (PlayerInfo[i][pConta]/30000)*(PlayerInfo[i][pLevel]);
				    ConsumingMoney[i] = 1;
				    GivePlayerMoneyEx(i, checks);
				    if(PlayerInfo[i][pConta] > 0)
				    {
				    	PlayerInfo[i][pConta] -= ebill;
				    	SBizzInfo[4][sbTill] += ebill;
					}
					else
					{
					    ebill = 0;
					}
					if(CHitman == CTriad && Avisouc == 0)
					{

					Avisouc = 1;
					}
					if(CHitman > CTriad && Avisouc == 0)
					{

					CHitman = 0;
					CTriad = 0;
					Avisouc = 1;
					GanhouArmamento = 8;
					}
					if(CTriad > CHitman && Avisouc == 0)
					{

					CHitman = 0;
					CTriad = 0;
					Avisouc = 1;
					GanhouArmamento = 26;
                    }
					interest = (PlayerInfo[i][pConta]/1000)*(tmpintrate);
					PlayerInfo[i][pExp]++;
					//PlayerPlayMusic(i);
					PlayerPlaySound(i, 1185, 0.0, 0.0, 0.0);
					PlayerInfo[i][pConta] = Conta+interest;
					SendClientMessage(i, COLOR_BRANCOM, "|___  Seu Pagamento  ___|");
					format(string, sizeof(string), "  Salario: R$%d   Despesas: -R$%d", checks, TaxValue);
					SendClientMessage(i, COLOR_AVISO, string);
					format(string, sizeof(string), "  Medico: R$300   Imposto: -R$%d", Tax);
                    SendClientMessage(i, COLOR_AVISO, string);
					if(PlayerInfo[i][pPHousekey] != 500 || PlayerInfo[i][pPbiskey] != 255)
					{
					    format(string, sizeof(string), "  Energia: -R$%d", ebill);
						SendClientMessage(i, COLOR_AVISO, string);
					}
					format(string, sizeof(string), "  Conta Bancaria: R$%d ", Conta);
					SendClientMessage(i, COLOR_AVISO, string);
					format(string, sizeof(string), "  Juros: 0.%d  por cento",tmpintrate);
					SendClientMessage(i, COLOR_AVISO, string);
					format(string, sizeof(string), "  Valor ganho com Juros R$%d", interest);
					SendClientMessage(i, COLOR_AVISO, string);
					SendClientMessage(i, COLOR_BRANCOM, "|_________________________________|");
					format(string, sizeof(string), "  Novo Saldo Bancario: R$%d", PlayerInfo[i][pConta]);
					SendClientMessage(i, COLOR_AVISO, string);
					format(string, sizeof(string), "  Aluguel: -R$%d", rent);
					SendClientMessage(i, COLOR_AVISO, string);
                    SalarioPlayer(i);
					Checkprop();
					SaveBoxer();
					SaveCars();
					SetTimerEx("PararMusica", 7900, 0, "i", i);
                    format(string, sizeof(string), "~r~PayDay~n~~w~Salario");
					GameTextForPlayer(i, string, 5000, 1);
					GivePlayerMoney(i,- 100);
					rent = 0;
					PlayerInfo[i][pPayDay] = 0;
					PlayerInfo[i][pSalario] = 0;
					PlayerInfo[i][pConnectTime] += 1;
                    PlayerInfo[i][pCaixinha] = 0;
					pban[i] = 0;
     				if(PlayerInfo[i][pEmprego] > 0)
        			{
	    	    		if(PlayerInfo[i][pContractTime] < 25)
	    	    		{
							PlayerInfo[i][pContractTime] ++;
						}
	    			}
				}
				else
				{
				    SendClientMessage(i, COLOR_LIGHTRED, "* Vocк nгo jogou tempo suficiente para receber salбrio!.");
				}
			}
		}
    	new lolbagui;
		lolbagui = PlayerInfo[i][pExp];
		new nxtlevel = PlayerInfo[i][pLevel]+1;
		if(lolbagui >= nxtlevel*levelexp)
		{
		    GameTextForPlayer(i, "~w~~h~Respeito Adquirido~n~~g~Digite /comprarnivel", 5000, 1);
		}
	}
}
Me ajudem por favor!!!!!!!!
Reply
#2

Manda o timer do PayDay no OnGameModeInit...
Reply
#3

Nгo cara ele й assim deu hora ex : 12,00 ele da entendeu й por hora creio que nгo tem settimer
Reply
#4

Quote:
Originally Posted by vitorluiz96
View Post
Nгo cara ele й assim deu hora ex : 12,00 ele da entendeu й por hora creio que nгo tem settimer
tem settimer a cada 1h, mas de qualquer forma simplesmente adiciona no fim da callback PayDay:
PHP Code:
SetTimer("loteria",10*60*1000,false); 
10*60*1000 vai dar os 10 minutos, em que 1000 й um segundo, 60 й um minuto e 10 sгo os tais 10 muitos, mais simplificado:

1000 = 1s
1000*60 = 1min
1000*60*10 = 10min
Reply
#5

entгo mais tem um bug ae cara tipo um payday aparece normal mais no segundo aparece duas mensagem falando da loteria no terceiro payday aparece 3 mensagem e assim por diante me ajuda pf
Reply
#6

Coloca o cуdigo
Reply
#7

Code:
public Lotto(number)
{
	new JackpotFallen = 0;
	format(gstring, sizeof(gstring), "Loterica: Hoje o numero sorteado foi o nє %d.", number);
    OOCNews(TEAM_BALLAS_COLOR, gstring);
    for(new i = 0; i < MAX_PLAYERS; i++)
	{
		if(IsPlayerConnected(i))
		{
		    if(PlayerInfo[i][pLottoNr] > 0)
		    {
			    if(PlayerInfo[i][pLottoNr] == number)
			    {
			        JackpotFallen = 1;
					format(gstring, sizeof(gstring), "Loterica: %s ganhou R$%d com seu bilhete.", PlayerName(i), Jackpot);
					OOCNews(COLOR_LIGHTRED, gstring);
					format(gstring, sizeof(gstring), "* Vocк ganhou R$%d com seu bilhete de loteria.", Jackpot);
					SendClientMessage(i, COLOR_LIGHTBLUE, gstring);
					ConsumingMoney[i] = 1;
					GivePlayerMoney(i, Jackpot);
			    }
			    else
			    {
                    SendClientMessage(i, COLOR_AVISO, " Nгo foi dessa Vez que vocк Ganhou na Loteria.");
			    }
			}
			PlayerInfo[i][pLottoNr] = 0;
		}
	}
	if(JackpotFallen)
	{
	    new rand = random(125000);
		rand += 15789;
	    Jackpot = rand;
	    SaveStuff();
	    format(gstring, sizeof(gstring), "Loterica: O prкmio acumulou para: R$%d.", Jackpot);
		OOCNews(COLOR_BRANCOM, gstring);
	}
	else
	{
	    new rand = random(15000);
		rand += 2158;
	    Jackpot += rand;
	    SaveStuff();
	    format(gstring, sizeof(gstring), "Loterica: O prкmio acumulou para: R$%d.", Jackpot);
		OOCNews(COLOR_BRANCOM, gstring);
	}
	return true;
}
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)