Entrar
Últimos assuntos
» player não consegue andarpor lovn7 Qui 21 Nov 2024, 13:33
» É possível fazer istó no game maker
por William Lima Qui 21 Nov 2024, 10:56
» Rio Rise - novo launcher do Gta San Andreas SAMP Brasil
por Lua Sáb 16 Nov 2024, 20:22
» (Resolvido) Cenario longo x Texture Pages
por josuedemoraes Sáb 16 Nov 2024, 15:31
» Kids' band
por Adilson Lucindo Santos Sex 15 Nov 2024, 12:23
» (RESOLVIDO) Engasgos-Troca de Sprites/animações
por josuedemoraes Ter 12 Nov 2024, 01:49
» Block Room - DEMO
por Joton Qua 06 Nov 2024, 22:58
» Game Infinito vertical (subindo)
por macmilam Sáb 26 Out 2024, 12:36
» Retorno da GMBR!!!
por Dancity Ter 22 Out 2024, 16:36
» Máquina de estados
por aminaro Qui 10 Out 2024, 13:33
» como faço pra um objeto colidir com o outro e diminuir a vida do player ?
por josuedemoraes Qui 03 Out 2024, 16:51
» RESOLVIDO: Colisão com objetos moveis
por josuedemoraes Qua 02 Out 2024, 20:28
» Crypt of the Blood Moon
por divin sphere Qua 11 Set 2024, 18:18
» como fazer um objeto seguir?
por divin sphere Dom 18 Ago 2024, 18:08
» Procuro de alguém para Modelar/Texturizar/Animar objetos 3D
por un00brn Dom 11 Ago 2024, 11:10
» Destruição de cenário (estilo DD Tank)
por CoronelZeg Sex 09 Ago 2024, 17:16
» RESOLVIDO-Como destruir uma instancia especifica de um objeto
por josuedemoraes Ter 23 Jul 2024, 00:40
» Automatizar a coleta de id
por GabrielXavier Seg 22 Jul 2024, 18:01
» Preciso de ajuda para concluir um pequeno projeto
por lmoura Qui 27 Jun 2024, 15:45
» ANGULO ACOMPANHAR O OBJETO
por Klinton Rodrigues Qui 27 Jun 2024, 08:34
» Musica reinicia quando sala reinicia
por GabrielXavier Ter 18 Jun 2024, 07:28
» como fazer uma copia de gd
por generico_cube Sex 14 Jun 2024, 15:48
» Square Adventure
por guilherme551 Ter 11 Jun 2024, 09:54
» como posso definir limite de uma variavel
por GabrielXavier Sex 07 Jun 2024, 14:14
» [Resolvido] Dúvida, colisão única de objeto
por vdm842 Sex 24 maio 2024, 09:50
Duvidas
3 participantes
Página 1 de 1
Duvidas
Olá a todos, tenho umas duvidas de código, agradeço desde já a quem me poder ajudar:
1- Sempre que vejo isto mesmo num tutorial não entendo, gostaria que alguém me explicasse isto linha por linha:
ordem = 0;
for(i=0;i<5;i+=1) {
if letras[i] == true {
draw_text(0, ordem * 16, chr(55+i));
ordem += 1;
}
}
Este código refere-se ao meu post:
https://gmbr.forumeiros.com/t28238-preciso-de-ajuda-para-sistema
2- Como posso fazer algo se repetir até atingir o valor desejado? exemplo:
global.numero = irandomrange (0,7) ((((quaquer coisa assim,não interessa))))
if global.numero = global.numero 2
{
aqui eu queria que ele volta-se á primeira linha (por ser igual) e volta-se a gerar o numero
}
3- Tem alguma maneira de organizar a estrutura do "if dentro de if"? exemplo:
if qualquer coisa {
if outra qualquer coisa também {
resultado
}}
Queria saber se tem maneira de fazer isto mais fácil porque eu tiver que meter um monte de condiçoes então fica confuso.
Obrigado pela atenção.
1- Sempre que vejo isto mesmo num tutorial não entendo, gostaria que alguém me explicasse isto linha por linha:
ordem = 0;
for(i=0;i<5;i+=1) {
if letras[i] == true {
draw_text(0, ordem * 16, chr(55+i));
ordem += 1;
}
}
Este código refere-se ao meu post:
https://gmbr.forumeiros.com/t28238-preciso-de-ajuda-para-sistema
2- Como posso fazer algo se repetir até atingir o valor desejado? exemplo:
global.numero = irandomrange (0,7) ((((quaquer coisa assim,não interessa))))
if global.numero = global.numero 2
{
aqui eu queria que ele volta-se á primeira linha (por ser igual) e volta-se a gerar o numero
}
3- Tem alguma maneira de organizar a estrutura do "if dentro de if"? exemplo:
if qualquer coisa {
if outra qualquer coisa também {
resultado
}}
Queria saber se tem maneira de fazer isto mais fácil porque eu tiver que meter um monte de condiçoes então fica confuso.
Obrigado pela atenção.
jose rocha- Data de inscrição : 06/10/2013
Reputação : 3
Número de Mensagens : 76
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: Duvidas
O 1 e o 2 infelizmente não sei te responder mas no caso do 3 pode sim fazer, por exemplo:
if keyboard_check(vk_right){
if sprite_index = spr_personagem_esq{
sprite_index = spr_personagem_dir
}
}
Espero ter ajudado:)
if keyboard_check(vk_right){
if sprite_index = spr_personagem_esq{
sprite_index = spr_personagem_dir
}
}
Espero ter ajudado:)
manobrother- Data de inscrição : 31/10/2013
Reputação : 10
Número de Mensagens : 206
Prêmios :
x 0 x 0 x 0
x 0 x 1 x 0
x 0 x 0 x 0
Re: Duvidas
Obrigado pela resposta mas isso sei eu, talvez eu me tenha explicado mal:
Quero fazer isso mas de outro maneira porque se eu tiver muitos "if" vira confusão.
qualquer coisa do tipo:
if keyboard_check(vk_right) and sprite_index = spr_personagem_esq and sprite_index = spr_personagem_dir
{
qualquer coisa aqui
}
Quero fazer isso mas de outro maneira porque se eu tiver muitos "if" vira confusão.
qualquer coisa do tipo:
if keyboard_check(vk_right) and sprite_index = spr_personagem_esq and sprite_index = spr_personagem_dir
{
qualquer coisa aqui
}
jose rocha- Data de inscrição : 06/10/2013
Reputação : 3
Número de Mensagens : 76
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: Duvidas
Vou tentar explicar :
---------------------------------------------------------------------
1.:
"ordem = 0;" declaração(criação) da variável ordem.
---------------------------------------------------------------------
"for(i=0;i<5,i+=1) { laço }"
o laço "for" possui três argumentos divididos por ";"(ponto e vírgula):
for(argumento1;argumento2;argumento3)
argumento1:Este argumento acontece uma vez, dá um valor a uma variável, neste caso "i=0"( i recebe 0 )
argumento2:condição para o laço continuar repetindo, ou seja, o laço({}) vai repetir enqüanto "i<5"(i for menor que 5)
argumento 3: acontece cada vez que o laço se repetir "i += 1" (i adicionará mais 1)
inicialmente "i=0",e enqüanto "i<5" o que está dentro das chaves({aqui}) irá se repetir, e cada vez que repetir "i += 1";(repetirá 6 vezes)
Isso é muito útil em certas situações, depois que se aprende a usar o for muitas coisas ficam mais fáceis.
---------------------------------------------------------------------
"if (letras[i] == true) { laço }"
'if' significa 'se'
'letras[i]' isso é um vetor, é mais ou menos assim:
letras[5] ([0]=true [1]=true [2]=false [3]=true [4]=false [5]=false)
é como se fosse um monte de variáveis numa só. O "i" nesse caso indica qual valor será acessado.
----------------------------------------------------------------------
"draw_text(0, ordem * 16, chr(55+i));"
draw ( x , y , text )
desenha (ou escreve ) um texto na posição (x,y).
----------------------------------------------------------------------
"ordem += 1"
ordem adiciona mais 1.
----------------------------------------------------------------------
---------------------------------------------------------------------
2.:
Use o laço for falado acima:
for ( numero = 2 ; numero <7 ; numero +=1 )
{
laço de comando
}
neste caso o que estiver dentro do laço se repetirá cinco veses.
---------------------------------------------------------------------
3.:
Sim!
compare:
&& ---------- and (e)
|| ---------- or (ou)
! ---------- not (não)
para testar duas condições:
if (qualquer_coisa == 0)&&(outra_coisa ==0) { laço }
ou
if (qualquer_coisa == 0)and(outra_coisa ==0) { laço }
se qualquer_coisa e outra_coisa forem 0.
if (qualquer_coisa == 0)||(outra_coisa ==0) { laço }
ou
if (qualquer_coisa == 0)or(outra_coisa ==0) { laço }
se qualquer_coisa ou outra_coisa forem 0.
---------------------------------------------------------------------
Uma dica que pode ser útil: colocar comentários próximos ao fim do laço.
veja a situação por exemplo:
if (alguma_coisa == 0)
{
if ((outra_coisa)&&(mais_outra_coisa)>0)
{
if ((maisOutraCoisaAinda)||(SebeDeusOque)<80)
{
for (troco = 0; troco < coisa ; troco += 1)
{
SabeDeusOque += 3;
}//fim de FOR
if ( tu ) != ( ele )
{
tu +=1;
}// fim de tu és diferente dele
}//fim de +outracoisa e SabeDeus
}//fim de outra e mais outra coisa!
if (Alguma_coisinha == 0)
{
algo +=1;
}//fim de alguma coisinha!
}//fim de alguma_coisa!
usando comentários facilitam quando se possui um carnaval de IFs.
Desculpe qualquer coisa, quis deixar o mais bem explicado possível.
Se tiver mais alguma dúvida escreva.
---------------------------------------------------------------------
1.:
ordem = 0;
for(i=0;i<5;i+=1) {
if letras[i] == true {
draw_text(0, ordem * 16, chr(55+i));
ordem += 1;
}
}
"ordem = 0;" declaração(criação) da variável ordem.
---------------------------------------------------------------------
"for(i=0;i<5,i+=1) { laço }"
o laço "for" possui três argumentos divididos por ";"(ponto e vírgula):
for(argumento1;argumento2;argumento3)
argumento1:Este argumento acontece uma vez, dá um valor a uma variável, neste caso "i=0"( i recebe 0 )
argumento2:condição para o laço continuar repetindo, ou seja, o laço({}) vai repetir enqüanto "i<5"(i for menor que 5)
argumento 3: acontece cada vez que o laço se repetir "i += 1" (i adicionará mais 1)
inicialmente "i=0",e enqüanto "i<5" o que está dentro das chaves({aqui}) irá se repetir, e cada vez que repetir "i += 1";(repetirá 6 vezes)
Isso é muito útil em certas situações, depois que se aprende a usar o for muitas coisas ficam mais fáceis.
---------------------------------------------------------------------
"if (letras[i] == true) { laço }"
'if' significa 'se'
'letras[i]' isso é um vetor, é mais ou menos assim:
letras[5] ([0]=true [1]=true [2]=false [3]=true [4]=false [5]=false)
é como se fosse um monte de variáveis numa só. O "i" nesse caso indica qual valor será acessado.
----------------------------------------------------------------------
"draw_text(0, ordem * 16, chr(55+i));"
draw ( x , y , text )
desenha (ou escreve ) um texto na posição (x,y).
----------------------------------------------------------------------
"ordem += 1"
ordem adiciona mais 1.
----------------------------------------------------------------------
---------------------------------------------------------------------
2.:
Use o laço for falado acima:
for ( numero = 2 ; numero <7 ; numero +=1 )
{
laço de comando
}
neste caso o que estiver dentro do laço se repetirá cinco veses.
---------------------------------------------------------------------
3.:
Sim!
compare:
&& ---------- and (e)
|| ---------- or (ou)
! ---------- not (não)
para testar duas condições:
if (qualquer_coisa == 0)&&(outra_coisa ==0) { laço }
ou
if (qualquer_coisa == 0)and(outra_coisa ==0) { laço }
se qualquer_coisa e outra_coisa forem 0.
if (qualquer_coisa == 0)||(outra_coisa ==0) { laço }
ou
if (qualquer_coisa == 0)or(outra_coisa ==0) { laço }
se qualquer_coisa ou outra_coisa forem 0.
---------------------------------------------------------------------
Uma dica que pode ser útil: colocar comentários próximos ao fim do laço.
veja a situação por exemplo:
if (alguma_coisa == 0)
{
if ((outra_coisa)&&(mais_outra_coisa)>0)
{
if ((maisOutraCoisaAinda)||(SebeDeusOque)<80)
{
for (troco = 0; troco < coisa ; troco += 1)
{
SabeDeusOque += 3;
}//fim de FOR
if ( tu ) != ( ele )
{
tu +=1;
}// fim de tu és diferente dele
}//fim de +outracoisa e SabeDeus
}//fim de outra e mais outra coisa!
if (Alguma_coisinha == 0)
{
algo +=1;
}//fim de alguma coisinha!
}//fim de alguma_coisa!
usando comentários facilitam quando se possui um carnaval de IFs.
Desculpe qualquer coisa, quis deixar o mais bem explicado possível.
Se tiver mais alguma dúvida escreva.
Camin- Data de inscrição : 26/03/2011
Reputação : 9
Número de Mensagens : 101
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: Duvidas
caraças, a sua explicação é melhor que um tutorial. Estou exclarecido mais uma vez obrigado.
jose rocha- Data de inscrição : 06/10/2013
Reputação : 3
Número de Mensagens : 76
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Tópicos semelhantes
» [Duvidas]Algumas duvidas que estou querendo respostas
» [Duvidas] RPG
» 2 dúvidas...
» 3 duvidas ?????
» Duvidas
» [Duvidas] RPG
» 2 dúvidas...
» 3 duvidas ?????
» Duvidas
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos