Jump to content

Recommended Posts

Posted (edited)

Olá novamente ?, alguém poderia me ensinar por favor como utilizo loop for, queria que esse retangulo troca-se de cor a cada um certo tempo, fiz isso abaixo mas fiz errado demais, se alguém poder me ajudar ficarei muito grato

(OBS: Sou apenas um scripter iniciante ?)

local sx, sy = guiGetScreenSize()
local x, y = (sx/1366), (sy/768)

cor = {}
function dxLoginS()
  	local rectangle = dxDrawRectangle(x*0, y*70, x*500, y*5, cor)
  	
	cor[1] = tocolor(10, 85, 230, 255)
	cor[2] = tocolor(255, 140, 0, 255)
	cor[3] = tocolor(190, 255, 0, 255)
  	
  	for i = cor do
    	return rectangle
	end
  
  	setTimer(function ()
  		if rectangle then
    end, 2500, 1)
end
addEventHandler("onClientRender", root, dxLoginS)

 

Edited by +Sommer
  • Moderators
Posted

Uma explicação sobre loops: 

 

Eu te ajudei ou achou meu comentário útil? Não esqueça de deixar um Thanksspacer.png

Minhas contribuições para a comunidade: LordHenry - MTA Wiki Profile
Inscreva-se no meu canal do YouTube: Lord Henry - Entertainment
Discord Oficial do MTA: https://mtasa.com/discord
Blacklist e Whitelist de Scripters: Planilha

Por favor, não me envie mensagens privadas solicitando suporte. Crie um tópico no fórum em vez disso.

Posted (edited)

Certo Fiz Assim :

cor = {tocolor(10, 85, 230, 255), tocolor(255, 140, 0, 255), tocolor(190, 255, 0, 255)}
function dxLoginS()
	function rectangle()
		for _, i in pairs (cor) do
			dxDrawRectangle(x*0, y*70, x*500, y*5, cor)
		end
	end
	
	setTimer(function()
		if rectangle then
			return true
		end
	end, 50, 0)
end
addEventHandler("onClientRender", root, dxLoginS)

Aparece o resto do elementos todos apenas esse retangulo não aparece, utilizei o debug e da o seguinte erro: [Expected number at argument 5, got table]

(OBS: Não Entendi muito sobre FOR, meio complicado,  utilizei alguns exemplos mas nada tão proximo e eu tbm n entendi kkk... não postei o codigo completo por motivos de ser exclusivo)

Edited by +Sommer
  • Moderators
Posted

Hum... vc editou o post pra outra coisa totalmente sem relação...

Quais cores vc quer usar em cada tempo? E a cada quanto tempo vc quer mudar a cor?

Eu te ajudei ou achou meu comentário útil? Não esqueça de deixar um Thanksspacer.png

Minhas contribuições para a comunidade: LordHenry - MTA Wiki Profile
Inscreva-se no meu canal do YouTube: Lord Henry - Entertainment
Discord Oficial do MTA: https://mtasa.com/discord
Blacklist e Whitelist de Scripters: Planilha

Por favor, não me envie mensagens privadas solicitando suporte. Crie um tópico no fórum em vez disso.

  • Moderators
Posted

Então tipo, o retângulo é criado em azul

Depois de 10 segundos ele deve ficar verde-lima

Depois de mais 10 segundos, ele deve ficar laranja, é isso?

Eu te ajudei ou achou meu comentário útil? Não esqueça de deixar um Thanksspacer.png

Minhas contribuições para a comunidade: LordHenry - MTA Wiki Profile
Inscreva-se no meu canal do YouTube: Lord Henry - Entertainment
Discord Oficial do MTA: https://mtasa.com/discord
Blacklist e Whitelist de Scripters: Planilha

Por favor, não me envie mensagens privadas solicitando suporte. Crie um tópico no fórum em vez disso.

Posted (edited)
2 minutes ago, Lord Henry said:

Então tipo, o retângulo é criado em azul

Depois de 10 segundos ele deve ficar verde-lima

Depois de mais 10 segundos, ele deve ficar laranja, é isso?

Exatamente isso, deve ser um sistema fácil, porem não sei usar loop e nem sei se é necessário um loop

Edited by +Sommer
  • Moderators
Posted (edited)

Loop geralmente se usa para repetições.

Depois que chegar na cor laranja, após 10 segundos deve voltar ao azul?

Edited by Lord Henry

Eu te ajudei ou achou meu comentário útil? Não esqueça de deixar um Thanksspacer.png

Minhas contribuições para a comunidade: LordHenry - MTA Wiki Profile
Inscreva-se no meu canal do YouTube: Lord Henry - Entertainment
Discord Oficial do MTA: https://mtasa.com/discord
Blacklist e Whitelist de Scripters: Planilha

Por favor, não me envie mensagens privadas solicitando suporte. Crie um tópico no fórum em vez disso.

Posted
Just now, Lord Henry said:

Loop geralmente se usa para repetições.

Depois que chegar na cor laranja, após 10 segundos deve voltar ao azul?

Sim, ai ele fica nessa repetição até a pessoa fechar o painel no caso

 

  • Moderators
Posted (edited)
cores = {
	tocolor(10, 85, 230, 255), -- roxo
	tocolor(190, 255, 0, 255), -- verde-amarelado
	tocolor(255, 140, 0, 255) -- laranja
}

function dxLoginS()
	dxDrawRectangle(x*0, y*70, x*500, y*5, cores[cor]) -- Supondo que esses 4 primeiros parâmetros estejam corretos...
end
addEventHandler("onClientRender", root, dxLoginS)

cor = 1
local theTimer = setTimer (function()
	if (cor < #cores) then
		cor = cor + 1
	else
		cor = 1
	end
end, 10000, 0)

Obs: Não testado.

Edited by Lord Henry

Eu te ajudei ou achou meu comentário útil? Não esqueça de deixar um Thanksspacer.png

Minhas contribuições para a comunidade: LordHenry - MTA Wiki Profile
Inscreva-se no meu canal do YouTube: Lord Henry - Entertainment
Discord Oficial do MTA: https://mtasa.com/discord
Blacklist e Whitelist de Scripters: Planilha

Por favor, não me envie mensagens privadas solicitando suporte. Crie um tópico no fórum em vez disso.

Posted (edited)
6 minutes ago, Lord Henry said:

cores = {
	tocolor(10, 85, 230, 255), -- roxo
	tocolor(190, 255, 0, 255), -- verde-amarelado
	tocolor(255, 140, 0, 255) -- laranja
}

function dxLoginS()
	dxDrawRectangle(x*0, y*70, x*500, y*5, cores[cor]) -- Supondo que esses 4 primeiros parâmetros estejam corretos...
end
addEventHandler("onClientRender", root, dxLoginS)

cor = 1
local theTimer = setTimer (function()
	if (cor < #cores) then
		cor = cor + 1
	else
		cor = 1
	end
end, 10, 0)

Obs: Não testado.

Ok , vou testar aqui

2 minutes ago, +Sommer said:

Ok , vou testar aqui

Esta dando este erro Mod/cliente.lua:12: ')' expected near '

Edited by +Sommer
  • Moderators
Posted

Troque aquele 10 por 10000. Ali no final do código.

Eu te ajudei ou achou meu comentário útil? Não esqueça de deixar um Thanksspacer.png

Minhas contribuições para a comunidade: LordHenry - MTA Wiki Profile
Inscreva-se no meu canal do YouTube: Lord Henry - Entertainment
Discord Oficial do MTA: https://mtasa.com/discord
Blacklist e Whitelist de Scripters: Planilha

Por favor, não me envie mensagens privadas solicitando suporte. Crie um tópico no fórum em vez disso.

Posted
3 minutes ago, Lord Henry said:

Troque aquele 10 por 10000. Ali no final do código.

Ainda continua com o mesmo erro na linha 12, no parêntese do rectangle só não sei como arrumar

  • Moderators
Posted

Vc deve ter copiado errado então. Acabei de testar aqui no meu e está funcionando. A única diferença é que não estou usando aqueles valores de x e y no dxDraw, estou usando valores inteiros.

cores = {
	tocolor(10, 85, 230, 255), -- roxo
	tocolor(190, 255, 0, 255), -- verde-amarelado
	tocolor(255, 140, 0, 255) -- laranja
}

function dxLoginS()
	dxDrawRectangle(0, 70, 500, 50, cores[cor])
end
addEventHandler("onClientRender", root, dxLoginS)

cor = 1
local theTimer = setTimer (function()
	if (cor < #cores) then
		cor = cor + 1
	else
		cor = 1
	end
end, 10000, 0)

Obs: Foi testado.

Eu te ajudei ou achou meu comentário útil? Não esqueça de deixar um Thanksspacer.png

Minhas contribuições para a comunidade: LordHenry - MTA Wiki Profile
Inscreva-se no meu canal do YouTube: Lord Henry - Entertainment
Discord Oficial do MTA: https://mtasa.com/discord
Blacklist e Whitelist de Scripters: Planilha

Por favor, não me envie mensagens privadas solicitando suporte. Crie um tópico no fórum em vez disso.

Posted
2 minutes ago, Lord Henry said:

Vc deve ter copiado errado então. Acabei de testar aqui no meu e está funcionando. A única diferença é que não estou usando aqueles valores de x e y no dxDraw, estou usando valores inteiros.

Ué? estou copiando exatamente igual e da esse erro na linha do dxDrawRectangle

 

  • Moderators
Posted

Teste com aqueles números que eu coloquei.

Se não der certo então vc tem outras coisas no seu código que estão dando erro e vc não quer me mostrar.

Eu te ajudei ou achou meu comentário útil? Não esqueça de deixar um Thanksspacer.png

Minhas contribuições para a comunidade: LordHenry - MTA Wiki Profile
Inscreva-se no meu canal do YouTube: Lord Henry - Entertainment
Discord Oficial do MTA: https://mtasa.com/discord
Blacklist e Whitelist de Scripters: Planilha

Por favor, não me envie mensagens privadas solicitando suporte. Crie um tópico no fórum em vez disso.

Posted
14 minutes ago, Lord Henry said:

Teste com aqueles números que eu coloquei.

Se não der certo então vc tem outras coisas no seu código que estão dando erro e vc não quer me mostrar.

mexendo aq era isso mesmo era uma outra parte do meu script que estava interferindo no script, mano vlw ae pelo help funcionou e por mais questão de estética mesmo mas outra parte para aprender também, vlw msm

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

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